machines/moulds/container/resources/Bottom.html
2023-11-12 21:43:05 +01:00

8110 lines
7.3 MiB (Stored with Git LFS)
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<style>
html {
height: 100%;
width: inherit;
margin: 0px;
}
body {
box-sizing: border-box;
height: inherit;
width: inherit;
margin: 0px;
overflow: hidden;
}
/*! jQuery UI - v1.11.4 - 2018-08-29
* http://jqueryui.com
* Includes: core.css, draggable.css, resizable.css, button.css, dialog.css, menu.css, slider.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
* Copyright jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#2b2b2b;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:0 0 0 0;padding:5px;background:#666;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
body {
position: relative;
}
.edrawings-hr {
margin-top: 7px;
margin-bottom: 7px;
border-top-width: 1px;
border-top-style: solid;
border-top-color: gray;
}
.edrawings-viewer-regular {
box-sizing: border-box;
position: relative;
border: 0;
border-style: dashed;
padding: 0;
width: 100%;
height: 100%;
stroke: lightgray;
visibility: visible;
background-color: white;
}
.edrawings-viewer-timeout {
position: relative;
padding: 0;
width: 100%;
height: 100%;
opacity: 0.5;
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: 'alpha(opacity=0)';
filter: blur(5px);
}
.edrawings-viewer-ondrop {
box-sizing: border-box;
position: relative;
border: 10px;
border-color: gray;
border-radius: 15px;
border-width: 10px;
border-style: dashed;
padding: 0;
width: 100%;
height: 100%;
stroke: gray;
opacity: 0.5;
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: 'alpha(opacity=0)';
filter: blur(5px);
}
.edrawings-viewer-dropsuccess {
box-sizing: border-box;
position: relative;
border: 3px;
border-color: green;
border-style: dashed;
padding: 0;
width: 100%;
height: 100%;
stroke: green;
visibility: visible;
}
.edrawings-viewer-dropfail {
box-sizing: border-box;
position: relative;
border: 3px;
border-color: red;
border-style: dashed;
padding: 0;
width: 100%;
height: 100%;
stroke: red;
visibility: visible;
}
#edrawings-viewer {
box-sizing: border-box;
position: relative;
padding: 0;
width: 100%;
height: 100%;
overflow: hidden;
-ms-touch-action: none;
}
.edrawings-drop-title {
margin-left: auto;
margin-right: auto;
border: none;
border-radius: 5px;
border-color: gray;
border-width: 3px;
width: inherit;
height: inherit;
align-content: stretch;
font-family: "Arial";
font-size: 30px;
text-decoration-color: lightgray;
text-emphasis-color: lightgray;
text-align: center;
vertical-align: middle;
}
.edrawings-canvas-border {
border: solid 1px #969696;
}
#edrawings-canvas {
box-sizing: border-box;
position: absolute;
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
#edrawings-logo {
z-index: 100;
top: 1px;
left: 10px;
margin-top: 2px;
height: 40px;
width: 44px;
vertical-align: middle;
}
.edrawings-disabled {
background-color: #969696;
}
#edrawings-backtolist {
z-index: 100;
position: absolute;
top: 10px;
right: 10px;
cursor: pointer;
}
.edrawings-list-selected {
color: black;
background-color: rgba(149, 211, 11, 0.5);
}
.edrawings-button-links {
text-indent: 50px;
font-family: Arial;
font-size: 16px;
line-height: 30px;
}
.edrawings-list-title {
display: block;
top: 70%;
text-decoration-color: rgb(160,160,160);
font-family: "Book Antiqua", "Palatino Linotype", Georgia, serif;
font-size: 25px;
}
.edrawings-view-orientation {
width: 180px;
}
.edrawings-bar {
height: 44px;
color: rgb(66,66,66);
}
.edrawings-top-bar {
position: absolute;
z-index: 100;
width: 100%;
text-align: center;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
#edrawings-top-bar {
width: 100%;
}
#edrawings-top-bar-content {
position: absolute;
z-index: 100;
width: 100%;
height: 50px;
/* consolidate the alpha value 0.8 */
background-color: rgba(255, 255, 255, 0.8);
/* The children are inline-block. Use font-size to control the gap between inline-block children */
font-size: 2px;
line-height: 50px;
vertical-align: middle;
}
#edrawings-top-bar.edrawings-out-of-view #edrawings-top-bar-content,
#edrawings-top-bar-content.edrawings-out-of-view {
top: -10000px;
}
.edrawings-top-bar-left {
display: inline-block;
z-index: 100;
/* IE has no support of unset */
/* font-size: unset;*/
font-size: medium; /* default is either medium or 16px */
text-align: right;
vertical-align: inherit;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-tool-bar {
position: absolute;
z-index: 100;
left: 0px;
/* (top-bar height + top gap) */
top: 50px; /* calc(50px + 0px); */
/* bottom gap */
padding: 0px;
padding-bottom: 2px;
width: auto;
height: 100%;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px));
/* consolidate the alpha value 0.8 */
background-color: rgba(255, 255, 255, 0.8);
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px));
}
.edrawings-tool-bar.edrawings-out-of-view {
left: -10000px;
}
.edrawings-bottom-centered-icons {
display: block; /* inline-block; */
position: relative;
left: 0;
top: 0;
width: 50px;
height: 100%;
text-align: center;
}
.edrawings-bottom-centered-icons .edrawings-arrow-wrapper {
display: none;
width: inherit;
}
.edrawings-bottom-centered-icons .edrawings-tool-bar-content {
display: block;
}
.edrawings-tool-bar.edrawings-collided {
/* Keep 3 arrows visible + gap with bottom-bar */
/* top-arrow height + top-arrow padding + bottom-arrow padding + bottom-arrow height + gap height with bottom-bar */
min-height: calc((10px + 10px) + (10px + 10px) + 2px);
min-height: -o-calc((10px + 10px) + (10px + 10px) + 2px);
min-height: -webkit-calc((10px + 10px) + (10px + 10px) + 2px);
min-height: -moz-calc((10px + 10px) + (10px + 10px) + 2px);
}
.edrawings-tool-bar.edrawings-collided .edrawings-bottom-centered-icons .edrawings-arrow-wrapper {
display: block;
position: relative;
margin-left: 1px;
padding-top: 2px;
padding-bottom: 8px;
}
.edrawings-tool-bar.edrawings-collided .edrawings-bottom-centered-icons .edrawings-arrow-wrapper:nth-child(2) {
position: absolute;
bottom: 0px;
padding-top: 8px;
padding-bottom: 2px;
}
.edrawings-tool-bar.edrawings-collided .edrawings-bottom-centered-icons .edrawings-tool-bar-content {
position: absolute;
/* top-arrow height + top-arrow padding */
top: calc(10px + 10px);
top: -o-calc(10px + 10px);
top: -webkit-calc(10px + 10px);
top: -moz-calc(10px + 10px);
/* Keep 2 arrows visible */
/* 100% - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
height: calc(100% - (10px + 10px) - (10px + 10px));
height: -o-calc(100% - (10px + 10px) - (10px + 10px));
height: -webkit-calc(100% - (10px + 10px) - (10px + 10px));
height: -moz-calc(100% - (10px + 10px) - (10px + 10px));
overflow-x: hidden;
overflow-y: hidden;
}
.edrawings-tool-bar.edrawings-collided .edrawings-bottom-centered-icons .edrawings-arrow-wrapper.edrawings-disabled-button:nth-child(1) ~ .edrawings-tool-bar-content {
/* top-arrow height + top-arrow padding */
top: 0px;
/* 100% - (bottom-arrow padding + bottom-arrow height) */
height: calc(100% - (10px + 10px));
height: -o-calc(100% - (10px + 10px));
height: -webkit-calc(100% - (10px + 10px));
height: -moz-calc(100% - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided .edrawings-bottom-centered-icons .edrawings-arrow-wrapper.edrawings-disabled-button:nth-child(2) ~ .edrawings-tool-bar-content {
/* 100% - (top-arrow height + top-arrow padding) */
height: calc(100% - (10px + 10px));
height: -o-calc(100% - (10px + 10px));
height: -webkit-calc(100% - (10px + 10px));
height: -moz-calc(100% - (10px + 10px));
}
.edrawings-icon-set {
position: absolute;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-icon-set.right {
right: 1px;
}
.edrawings-icon-set.left {
left: 1px;
}
.edrawings-icon-set.center {
left: 160px;
}
.edrawings-icon-set.label {
right: 40px;
text-align: center;
font-family: sans-serif;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-sheets-control {
display: inline-block;
margin: 0;
border-color: gray;
border-style: solid;
border-width: 1px;
width: 44px;
text-align: center;
line-height: 48px;
}
.edrawings-sheets-wrap {
display: block;
text-align: center;
float: left;
}
.edrawings-sheets-arrow {
display: inline-block;
height: 35px;
cursor: pointer;
vertical-align: middle;
}
#edrawings-sheets-index {
display: inline-block;
width: 40px;
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
font-weight: bold;
vertical-align: middle;
text-align: right;
}
#edrawings-sheets-number {
display: inline-block;
width: 60px;
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
font-weight: bold;
vertical-align: middle;
white-space: pre;
}
#edrawings-sheets-name {
display: inline-block;
width: 60px;
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
font-weight: bold;
vertical-align: middle;
white-space: pre;
}
.edrawings-tool-button {
display: none;
float: none; /* left; */
text-align: center;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-icon {
width: 40px;
height: 40px;
vertical-align: middle;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
/* Override for buttons used to invoke some plugin. Initially set so the
* button doesn't display. The plugin will remove this when it loads. */
.edrawings-icon-plugin {
display: none !important;
}
.edrawings-help-icon {
width: auto;
height: auto;
}
.edrawings-tree-button {
display: inline-block;
margin: 0 1px 0 1px;
-webkit-border-radius: 0;
border-radius: 0;
padding: 1px 1px 1px 1px;
width: 72px;
height: 75px;
background-color: rgb(192, 192, 192);
text-align: center;
-moz-appearance: button; /* Firefox */
-webkit-appearance: none; /* Safari and Chrome */
-ms-appearance: button;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-tree-button:hover {
-moz-box-shadow: 0 0 1px #000;
-webkit-box-shadow: 0 0 1px #000;
-ms-box-shadow: 0 0 1px #000;
box-shadow: 0 0 1px #000;
}
.edrawings-hud-icon {
height: 40px;
vertical-align: middle;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-hud-dd-icon {
height: 40px;
vertical-align: middle;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-tree-icon {
display: inline-block;
width: 40px;
height: 40px;
align-content: stretch;
vertical-align: middle;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
pointer-events: none;
}
.edrawings-tree-icon-small {
width: 30px;
height: 30px;
align-content: stretch;
vertical-align: middle;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
pointer-events: none;
}
.edrawings-component-tree-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAb1BMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ2eHnR09STlZhub3COj4/ExcZ3eHmNj5KHiIhpamrKzM1wcXKpqqt9f4F7fX+AgoV+gINxcnS9v79zdHRzdHZpaWl6e3yVlpacnZ1b/PAIAAAAC3RSTlMAIJ+vYBDv348wgDxAgzEAAADDSURBVHgB7dGFbgQhFEbhdftxGAem9v7P2Etla3ctUj8J0Q+f/PfVLRdzzKbnKC365iRd4SoOVHeKwqHphqFP1RiOUijvoKvxNktpzSG63ayhlPKAsZKq77Bi2G5dpb5ABWtgchsQWjAQ5XSPsGxLqpaShd6heYZEaPCQjHfX50HqMmjPhDcwtsC6DSz0e+kdDEhpwcEN3GtKin6dg5Pp7DXFUCJ4gjKQoRzkKQ95SjAKveLJawqhMV8sefCGFvV1/XcP4pMV/zsBAlwAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-sheet-tree-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTRUMTQ6NDU6MjUtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE0VDE0OjUyOjIwLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE0VDE0OjUyOjIwLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjA2MzNkOGY0LWVkOWItNGEyZC1hZDEzLTZlNmJlMDk1NGYwMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDowNjMzZDhmNC1lZDliLTRhMmQtYWQxMy02ZTZiZTA5NTRmMDEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowNjMzZDhmNC1lZDliLTRhMmQtYWQxMy02ZTZiZTA5NTRmMDEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjA2MzNkOGY0LWVkOWItNGEyZC1hZDEzLTZlNmJlMDk1NGYwMSIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNFQxNDo0NToyNS0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+CKM2EwAAAKFJREFUWIXtmEEKwCAMBGPpW/VN5rP2KiKYdC0NsnM1yGRRA6bWmkTm+ltgBQVRKIhCQRQKotzWwlLK1pFTa02WOrOgiIiqmjZdkXM2N+sS9G6uqmms9zYZ/gxSECW8oPuSeA85evPPS7Bn9uSMiXmepRlnJ2gFSfW8BFfd9+s7Znf4BCmIEl7w81GH4hJ8OxWQaZL4uwVCQRQKolAQhYIoD9i8MIzAug4WAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-layer-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDYtMjhUMTQ6MzU6NDctMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA2LTI4VDIxOjEwOjQzLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA2LTI4VDIxOjEwOjQzLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjM0MDdkMzViLWJjMWEtNDJjMC05ODk3LTZlODVmMTFjOGY3ZCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNDA3ZDM1Yi1iYzFhLTQyYzAtOTg5Ny02ZTg1ZjExYzhmN2QiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozNDA3ZDM1Yi1iYzFhLTQyYzAtOTg5Ny02ZTg1ZjExYzhmN2QiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjM0MDdkMzViLWJjMWEtNDJjMC05ODk3LTZlODVmMTFjOGY3ZCIgc3RFdnQ6d2hlbj0iMjAxOC0wNi0yOFQxNDozNTo0Ny0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+L70o2wAAAP1JREFUWIXtl80NgzAMRr9UHaCjtCNkA0aAi9fpOb7ARmWTdgN6IVKKKmHXFcnB74KI4uRhm7+wLAta5lRbYA8XtOKCVlzQigtaaV7wLJ0YQvg4J6IRQF8MzQAiM78k60lfsWLBklWuA3Bj5rkYexKRdJmwPwUI0ivJGSzkYpaTQkQ9gDuAS0pJJKjqwT/IjQCiJk4suG7QwSY3ALhqYjU9OK7Hh6LPSobNOiJUNwkzi/pmCxHlRs9ZFEse+RzMcipUGSwy8QteYiteYi/xN2qVWCxapcTMPKWURLGHl5iZJ03QoSXWygGK78FaNP9P4oJWXNCKC1pxQSvNC74BmNZmSystDIoAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-configurations-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAUklEQVR4AWMYIWAUjIK0/yAI5zUAeQjYQA0DG6jgQlRXobtymBqICMPBayACDFIDKQajBhJO8lQxkEwX4obossPKQGwyg9dABKC9gSMDjIJRAAD/Xkq3wBMe1wAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-explode-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAAAAACpleexAAAAAnRSTlMAAHaTzTgAAAAqSURBVHgBYxgkYBSkQcCoQsoDD86gXCGUQWWFYD71FBJWhACjCgcAjAIA9ApZp1n0r6IAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-explode-up-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHlJREFUeNpiYBgFdAFpaWkGIEyMWkZiDANS+6Fcx1mzZl0g20AkwwSgQh8IGcpIgmEMxBjKSILLGIhxKSOx3oSyCXqfkZQwIyZMGUmNAELqGMmJTXzqmbCoJ5g0oHKOaJGlAGIwoSl4QEzixWJoIpC/YbRMGaQAIMAAtThb6yHjpQ0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-explode-down-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTE4VDA4OjU0OjI5LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xOFQwODo1NzoxOS0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xOFQwODo1NzoxOS0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2YmY4Y2ViMy0zZTUxLTQ2OTEtYThmMS0wNzFlNmVkMzE0ZDciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NmJmOGNlYjMtM2U1MS00NjkxLWE4ZjEtMDcxZTZlZDMxNGQ3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NmJmOGNlYjMtM2U1MS00NjkxLWE4ZjEtMDcxZTZlZDMxNGQ3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2YmY4Y2ViMy0zZTUxLTQ2OTEtYThmMS0wNzFlNmVkMzE0ZDciIHN0RXZ0OndoZW49IjIwMTgtMDQtMThUMDg6NTQ6MjktMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6xs4KZAAAAvElEQVQ4je3UwQ2DMAyF4d9VB2AUVmAElgjnjkNO3aBswAodoSOwgXuogzgkTqRya31AKJE/vZgIUVXOrMup2m+CVwARIYTQAw9gjDE+W5qtZwVuMca7qiKqyjRNaaMDNmCooQess6Vxnucld+QOWK2hFduAF9gMLc1gGy5awPYT7Qlb0BoGfGYoItUE9u5i+0c5gg4KDuaCBTRVFktg8WJnZupiqYoJM0mpYapqj0qFEHrvXh5B+f8Pv643SgqBm3WI3lAAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-section-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAABVElEQVR4Ae3RJ1z7QBTA8XgVr+pVvYpX8Qr12HDsvffee4Nhbzg2rrYO+KsOxUZF37+v89F998E177rH95L8NHvsyakBE8bgEcSv9QOPgU9NFc4dR8XDa+CQ4TzAoB1+MqDO7EFRZEVRPE1cibxHAnxjrW4QiC47+WNwsUoWj0qA9f+KrMUdRDWNi9DaMsCjfISDd29scafIioKMO+I4McC4njV4PVzlr/JPnkVAMOJDVTIuc4R4wm9s8I6ANJSn1+RuLqSiHM6WfZZ9EpCEAp3/4KdSUco+D2evhykYCoVHDQYXkuDk2Ru7HqZHSEKpgM8NeDzdLgqGQl0PK4Egul3PDfFRMBSWlwaxZJEVHyUUqv6fPIikjiiIMOhBMBRKgAJI0QCYF3htkFBKYDxuREIt7vwZGAqVKorK6WMoGuVIEYtHw+Aj15WpeLTWxFA5NPbY8x+O/NjOcBEt0gAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-measure-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA55GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOC0yNFQxMDo0NzowNC0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA4LTI0VDEwOjUwOjI3LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOC0yNFQxMDo1MDoyNy0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDphMWEwMzJjNS0zNDAyLTQyODctOGFiYy1iNGYyZGQ5NjI2MDM8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6YjhkNGVlYmEtNjVkNi00MTgyLTg1YjktYWUxZWMzOGRkNmI2PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6YjhkNGVlYmEtNjVkNi00MTgyLTg1YjktYWUxZWMzOGRkNmI2PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI4ZDRlZWJhLTY1ZDYtNDE4Mi04NWI5LWFlMWVjMzhkZDZiNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOC0yNFQxMDo0NzowNC0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmExYTAzMmM1LTM0MDItNDI4Ny04YWJjLWI0ZjJkZDk2MjYwMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOC0yNFQxMDo1MDoyNy0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4DFLe0AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAGvSURBVHja7JixbcMwEEU/g1SulA3iDZyWXTbICFbDX0YbRNkg7WcTb5AR0rG1N3A2sDdgGjoQAslSrFgOEH5AEGScxYe7f+RBJsaIv6wr/HFlwAyYATPgmXXdF2CM6X2Jc24haUPyFcCyI2wP4N57v2n+2HdQjM6gc24B4J3kTlIJYNURWgB4T/GTlvgtLV4MgZzNZuuqqqYBdM69Spqn8n3JWltaaw2ArgtDZwDTF3jMg865CGAlqSS5lTQnuUsZ7dMewL2kzagmGaAlSXjv5wCGwn15EsDNFNvMsrHoT1RM0SSX3QdH6Nl7X7c11pG9cjpASbW1NoYQmt0NACaEsJxkm+lTE67tOQ8LfUol7Xy+KCDJLQBjrTWSjCST/Lf91S6OMYJkLalu3CsAhSRDsusoug0hxFO999MMPqZBoE73FwBPJNcpM5fzIMko6QbAR8pW0cja4gB54geA8lcymCDvALQd7AuS6xPgVt771ehppumxQznbJpwY46Dpu+1/YzNYNmFPgTirB1MZer1yLvBBHhwKeRbFGI9e3yaRh6nXN/n7YAbMgBnwnwN+DgDoBOnVwmrlrAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-move-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOC0yNFQxMDozNDowNC0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA4LTI0VDEwOjM1OjI4LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOC0yNFQxMDozNToyOC0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDowNjg0NTM0Yi1kY2VhLTRkNDEtODkzZC1kMGFiMmYyYWU1MDU8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MDY4NDUzNGItZGNlYS00ZDQxLTg5M2QtZDBhYjJmMmFlNTA1PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MDY4NDUzNGItZGNlYS00ZDQxLTg5M2QtZDBhYjJmMmFlNTA1PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjA2ODQ1MzRiLWRjZWEtNGQ0MS04OTNkLWQwYWIyZjJhZTUwNTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOC0yNFQxMDozNDowNC0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz52AgavAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAGeSURBVHja7JfRbcIwFEVPKgbICHQDOkFhA5ig9Oflt0wATAD9fT8wAhsUJiidgIxgJqA/jmRSnIQ00Ej1kyJLcaIcfK+fL9HpdKLN9UDLKwAGwAAYAP87YKfKQ1EUFc6LSBcYAi9AD0iBd2Ctqqbo3bKTLKpy1BUBikgMHID4wrQBNsBcVdM6gE1IPHbgDLC0I/b+GPgUkd5feXALzIEJ8KiqE2BgZcYB/agD+WuJc3IvrAcB9taX3ZzkA1XdN+rBJElm+VVT1W0ObmXlLKszyLLvdyqu9NQj7bVwrtxnK3kzD4pI34EzwBMwynnQBxnfY5P089Kp6saCLosgy3rkNRJ7S1VnwOzCfQNMROTosUhzuzhJkrKH5hbUZ4NDbjdnPyK6R6OuUq+tDgu2JW3anmZ2N0sznh64u9QTPR7s1d0odQF32aawHx/a8Ue8sr1u5Uk73LzN2D6Yrc5URNbA0Zl/ds7n+wOq6lJEsqAaA29tjPwjJwNWqbRq62ksbonIGFg4XkvtZYAvO+4B03jcCv/qAmAADIABMAB663sATQ6o7dSMDLcAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-annot-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-tables-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTA5VDEzOjMyOjIzLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowNC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowNC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0NDczZTcxNi00NzRmLTQ0NTYtYWJhMy04MDgyMTEzMjBiODgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDQ3M2U3MTYtNDc0Zi00NDU2LWFiYTMtODA4MjExMzIwYjg4IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NDQ3M2U3MTYtNDc0Zi00NDU2LWFiYTMtODA4MjExMzIwYjg4Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NDczZTcxNi00NzRmLTQ0NTYtYWJhMy04MDgyMTEzMjBiODgiIHN0RXZ0OndoZW49IjIwMTgtMDQtMDlUMTM6MzI6MjMtMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5oZudxAAAAi0lEQVRYhe3YsQ2AMAwFUYxYjGXITGEZRgsNJWCHA+Hiv5KkOCmOImGttSGz8e8AjwIpBVIKpBRITZFNpZRPnptaq3l7QoGHFbScWSKb0h+xAqmeGQzNzNt6AueL7xtYc6U/YgVSPTN4NzNP11y6JJQCKV0SZ82V/ogVSKW/JKbfb5ACKQVSCqTSB+5FWht4AZmFNQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-debug-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-fileopen-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpjYjBhMzg4MC0zZmMxLTRiODctOTg3MC1iNzVhODNhODk2MjQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRFMTRCN0E4RjNCMTFFODlCNEY5RDE3QzMzMzEzMEEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRFMTRCNzk4RjNCMTFFODlCNEY5RDE3QzMzMzEzMEEiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpjYjBhMzg4MC0zZmMxLTRiODctOTg3MC1iNzVhODNhODk2MjQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Y2IwYTM4ODAtM2ZjMS00Yjg3LTk4NzAtYjc1YTgzYTg5NjI0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+FE2mFQAAAj1JREFUeNrsl19Kw0AQxneDB2hfRbA3sEeoJ7CnaEEQ66uirS3W1xZBad88QY+gR9ATWAQRUWge1YeMM7s7ySb+oY3dUnEDS3a32ewv3zczSSUAiGU+ArHkhwf0gB7QA/53wJV537Ber1fwNMLWx9YbDochzed9Y81dQQS6NnBNbFe1Wq38m/vJWZ+s1T5RC6SUakwD6jUP96U9j2B3eCphu8G2ORgMQueAx51TvDwSDKKXgkjAaE79Lh8f7vnGvdW19SpeW6JL+EGcWEybE4iGA2HEiscgvnzYxvvb66WUC0gSY98eqtD7IQS4S5YWqPPy/BSixXJRWTzWVmsF9TlQVuu+UlOa2KuYNVtkdavdBVZyWqtzZrGBU7IGIjaX4DAOW0cH2QUaFNdQhEbgTkFSRZWNCHcKAq1goVgQjZ3trCKlT/bPmCA5srg7Mt2qTpoki4vFothFSCzUYCdOtk/HLPE4q8W3pAzvRTZzuQnDUPTPzoE3t4HywuUBHONmZU4OXfcArdZ7ZiGzB823Ol1AJyquAAtJDQxSBVo3ISaTNCS/WWiMYGDiouJSwdg2uy/iIg0pJek3huMyZJLNCWDZViV5zYlYQVZYK3kB38CNXQFucFJwgkQRWNks42JNv4fhRH1cZOrEGIu0MwVLaTtZPbAKeFJSokhDs956rCqBs0Jdtm3kDwe7lFDycARwditIyQ8zffzletUxUKJUcmYVUzVQzXMYaIudfrD6P00e0AN6QA/oAf8W4IcAAwAEZDzDnFjc9AAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-logo-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAqCAYAAADMKGkhAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdCN0Q2OTVDMzc2QTExRThCMzgwQTFDN0EyMzVBRDFDIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdCN0Q2OTVEMzc2QTExRThCMzgwQTFDN0EyMzVBRDFDIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6N0I3RDY5NUEzNzZBMTFFOEIzODBBMUM3QTIzNUFEMUMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6N0I3RDY5NUIzNzZBMTFFOEIzODBBMUM3QTIzNUFEMUMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4I0BJtAAAC/0lEQVR42uyZX0hTURzHd1VKiMyioCJ6iRKaSf970ZSVToY9GWKkPYQVVk8ZJdhDbyVID/YXioSUCsR6UEYyGYomEfiQFVH5svUwKNGMijnbXZ8TG17u7sbu3Lwu7oEPv8P5c+/X3zn39ztnSqFQyJKJJcuSocUUbgr/34XnRCqSJKXkgSOf6vMx0/CleFvn5lQLjkTBnFQ/WF6k8Jpy4SE5Q4VnrMflJDzOd5GNWQMrw01+mOIb8S/eVtHh8eGPdQWYK8w5is1VP4r+YWxLSUHXSNrDodgqEeKVoQ/Hz7M641AHuWKlVEhwEIYYeyb9whUvj1Xc7481B2X5JiwDS5gAjIQJKNqz4A5zSgz1uOttrS0oh66BRcEYbLVZn5QIqFvBo+hHfKgtrcJFOIygLv1valh+uR0sCmbgSPmOp97IOOoTtDWpxu1nfpEh4RCvFWOsqub7jl3dPo2xTmEgW9Fsh/GkhBO6LmI2QBvhyqdHOF6r0Gj+1jdWXaYxVphfkKdo3hnl8YF3tfmJCPcH5tZiLsBZ5nRgrx8unF/meJkTL+7TaG7V4bf1UcL9s3PTOp0v4m4jNOCxThGPq/b0+OJ6PCivW+BOXKUh/M9CHiglkjnxeJ5Gcw/8TPA93mjhgbnVCU5uhsvhtPxvq9SVOb3ze1yOt8e1VvVGTXHvaOKZWSWcl39PZOKD/vJJ8TLxcTbYXT49KZ9EIv5A9T4/AKN6l1h3VEFsW7KHLLbKS0y1qvlk16CjHccFY82jf7uILox5ZUjmZKs8g6AqsRRC6yN3ZZQW2rbAPfo508jd1PMNOdaesL3wdAzYH1OtV3U1iYRJXy92JpwnSlmh3Yoxm+CW2NWGHGtxt8gBpaC+jxaFiekT8Bh2yGqocE2yKofgs8ZRNhaDsJe5LYbegE5XDkzcddpE+r4Ep2CjxrCv8BweNjrcr5fMnRMxvzFXBbf7ysS1bQUsh1n4ca5qcGbJ3/IROSXumOYt3/x5Ig1FMv8jYQo3hZvCTeEZLfyvAAMAXkspCDmiWR0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-reset-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAbklEQVR4Ae3S1QGAMBADUEa4KbNWR2CU26j6hUvdEqgB74tlZma4QNm2AIKwmlIcUIDAbsXB5IZj03Byw5FpOLnhxBaPwSnTLRnOBZJHLpA8csHknrsnf4D33Ibk37/1fTev9QluTioGJzhWZmY0NQRDvwgtG/kAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-zoomtofit-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDEwOjU4OjI5LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xMlQxMDo1OTo0NC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xMlQxMDo1OTo0NC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDphYzNlNTU0YS0yODBkLTRlZmMtOWY4My1jOTFlZjhjNDVhNGYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6YWMzZTU1NGEtMjgwZC00ZWZjLTlmODMtYzkxZWY4YzQ1YTRmIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6YWMzZTU1NGEtMjgwZC00ZWZjLTlmODMtYzkxZWY4YzQ1YTRmIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDphYzNlNTU0YS0yODBkLTRlZmMtOWY4My1jOTFlZjhjNDVhNGYiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMTA6NTg6MjktMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6x6RVCAAAB8ElEQVRYhe2YwXHbMBBFHzMpgO4gqsAt0BUo6YC6rI5WKvC4g+S6FzEVJO6AJdgVsASpA+aAjQdkGHNBjBwd+Gd0gAAQX3/374Iq+r7nmvHhfxOYw0owFyvBXKwEc3H1BD96FhVFMRiLSAnUwBaooqkWeAIaVT3PPdfTJJIVFJED0AG3wHfgRlUL4MbGt0Bn6/LR9/3sJyJ3FJGTiFQj0vVoXNm6Y+7ZbgVNkQrYqGobkwaOMRmb3wBVrpKFJw/2+31JCOuXCXJ1tLRR1V00XwE/CT/qPH6u66LikVlEDnPh+hcsLQ5Lz/aGeEtw5+uhc6Si4ZPtXwQvwYpQQqbCOoU6ItkyLEVJcJtEVc/m1tq5pRaR2lMP30KKi0tVbYDGuaVR1caK+mJ4CbZYmMylzcz62M2V7V8EL8FBoselZAqj+YHBUuHqxQTFOhH5saAOfga+LiXoUtAS/ZHQMcro+zjcY3IlcASec4yS4uJvhFzq4l5spHYTynXAJ0K7W1Tkwdnq4uuWdYUH4Bcht1orQSXBEFtCWJ8Z1r9mnLsXuW6ZkhvgBbgHTiLSAycbvxB67x1Dt9dLlExWMBVvGekiCqZiom4mKfku7yQ5JN/tpcnZgf7CxXNwjD/KqerOdfb691smVoK5WAnmYiWYi6sn+BuemlTA0vogYAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-view-settings-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAoCAYAAAC8cqlMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDEwOjI5OjQ3LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo1Ni0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo1Ni0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpmNTc0ZmIxZi04NDdiLTRkNzQtYmE3Ny0wYmI3YTA1NDRkY2UiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ZjU3NGZiMWYtODQ3Yi00ZDc0LWJhNzctMGJiN2EwNTQ0ZGNlIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZjU3NGZiMWYtODQ3Yi00ZDc0LWJhNzctMGJiN2EwNTQ0ZGNlIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpmNTc0ZmIxZi04NDdiLTRkNzQtYmE3Ny0wYmI3YTA1NDRkY2UiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMTA6Mjk6NDctMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5k5nYDAAAAz0lEQVRYhe2YQQ7CMAwE14gHlU8lf/Kn6I/CqeIAtLbiwmJ5zlGS0cqOWxljIAOXX18gihJho0TYKBE2SoSNNCJX68Le+x3AEnj2qqo36+KjUcqTyOJY+/X9zIlsqKrMHtpaC59U09RIibCRRsRd7Gdy0AR2mwxVIp86oqVTUokAr5e2tns6EeB5ec+bRSkC+B9eWhEvaUTc7feMOSkCTyJr8Nmh+4n1l6nIfu29SypiUt6I/B6hZioRT73MplOJ/BtpEikRNkqEjRJhI43IA+4QOVUDoKkbAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAoCAYAAAC8cqlMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDA4OjUyOjI3LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo0OC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo0OC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyNTE0YmQxZS0xODVlLTQwODItOTdmZi00Yjk2NDJhMmM0N2QiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MjUxNGJkMWUtMTg1ZS00MDgyLTk3ZmYtNGI5NjQyYTJjNDdkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MjUxNGJkMWUtMTg1ZS00MDgyLTk3ZmYtNGI5NjQyYTJjNDdkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoyNTE0YmQxZS0xODVlLTQwODItOTdmZi00Yjk2NDJhMmM0N2QiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMDg6NTI6MjctMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5e1AlDAAABZ0lEQVRYhe2ZQW7DIBBFP1UPkJP1DPbmr9Mb9AbZz8Y5Qy5IFzEVSm0zECCjiCdlEcvAPM3AoMR57/EOfLw6gFoMEWsMEWsMEWt8al5yzqknJOkBQET0gxSk+p1KZA+SE4AlfH8MPkjtUVO2WCSSmEXkuvXOVqDruAuAU+naWxTtEY1EYtx3ybpHZIvsSZBc4lIi6UkuqXG1yBI5CkZEZgDxs+v6rLkEkCGi3BNBpqsEoNzsOcEEgdxxz6I9tUKtL3HdK/mTILnEojXJOX6/Cua/xRIAJgAzUL9hPtUQtUQS/5pkLJRooIfipu5ae1nSZK9LRkRkJgkAUyooEXFxZrQl2C0jj33mqIxC8Dn7qGtp5ZxYuYfBS/bI2l+q0l0kbpI15+0q0rLTdxMxdfstheQPGt+5mvcRkhcAZzS+OPbIyBmGbr8AcCtco7kEgPvPLKlPKSRPveJ04/8RYwwRawwRawwRa/wCTBvsKFiXI2gAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-display-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAoCAYAAAC8cqlMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDA4OjUxOjU5LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo0Mi0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xMlQxMDo1Mjo0Mi0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1NzIwNGUzMi00OTExLTQxM2YtODUzMi0yN2U1MTYxMzc3ZWUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTcyMDRlMzItNDkxMS00MTNmLTg1MzItMjdlNTE2MTM3N2VlIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NTcyMDRlMzItNDkxMS00MTNmLTg1MzItMjdlNTE2MTM3N2VlIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NzIwNGUzMi00OTExLTQxM2YtODUzMi0yN2U1MTYxMzc3ZWUiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMDg6NTE6NTktMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6LhwBcAAABKElEQVRYhe3ZwW2EMBCF4d9Rzii5bQVI6YIGtofsZYqaC1FKSAXUkSrSATmxiRIDNthmhPyO2LL9geWxhBvHkTPk4egFpEqFWEuFWEuFWMtpII8hnZxz3uci8gr0G+f+UtXn0M5rhTsI4ssvxE1V3zztL8A70PxpaoAL8LR1bl82ba0EiGHLvEuJhiRCfMbOu5YoiFUEREAsIyAQYh0B4afWdMT2IhJ73A5kRkDE8auq/mICiMh1pumDAgjYUUdyRESWqt7siwRjV5S5r760G6aYgsD/RYcgwCAEfhYfigCjEIhDwHGQNvWAR0BaoANuKQctDbkjfDeEPSkJyYaAcpCsCCgDyY6AMpCOzAiIuGut3IOWkh0B4OpvBWOpEGupEGupEGs5DeQb47tu4axourIAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-help-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3NpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowNGQ2OTUxMS00MDcyLTRlMDQtOWQ1NC04ZDhjZjg5ZWFlNDYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEUxODkzN0UzNzY1MTFFOEIzODBBMUM3QTIzNUFEMUMiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEUxODkzN0QzNzY1MTFFOEIzODBBMUM3QTIzNUFEMUMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6YThmNDFkOGYtNGQ3Yi00NzIxLTkzODItMjcyMWY1MzhkNzM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjA0ZDY5NTExLTQwNzItNGUwNC05ZDU0LThkOGNmODllYWU0NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Ph84OPgAAAFESURBVHja7JjRbcIwEIZx1QFgg7IB3YBsQCYoPOWRdgLCBPQ1T80GZQMYgQ1ghGwQ/pPO0mEZVOHEsdT7pV9xLAOf7nzOBdO27ShlvYwSlwIqoAIqoAImrtdnP1gUhR3O4TW8cJY08B7ewheaqKoqegRL+OCBI43hJXzma/QUU+Q24r6GM3gK5xw9qx9eHxVwLcaUxhV85HTuGbIWa3axAWVav++sWfFeJM1iA9ofPomxT6dBqhiauBPU/BpjbgoFczNnbphz8E5nvgPcWBTRMIAeOIL6FccLbYGv2Cl+BHcQRdHw8dNEj+Af4KhA3kMKJSiCns3/6cA9HblgQF9RAPhD3OahcH10M298tU+U4bqZkLMtahU7Onbx9OgTMEu9o27Z5b9p+U2X/27hNcB+2RbtfZkcoL52KqACKqACdq+rAAMA84tQg9cJ2AIAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-section-xy-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAOVBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqayjpaiPkJJyc3N+f4BqamqqJyNyAAAADHRSTlMAn2CAMM/vjxDfQL8Um++KAAAAiklEQVR42u3SOQrEMAxAUcl7Mt/Z7n/YAafxgAXuUkx+J3igQpK3p4p4YjcnZ8AAhG7mUkNmcj+yHbEMocf/wFrPFOZg3RG7HtYxVJ2DCjoDFUCnVoPIP0I3Bx24ATRluF+YvUFbqr9fOKSzQVPiRdspSzw2xOoDfgXWdv7LhArkBcdS2oIkbw/1BfJICJSB8ppdAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-section-yz-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAANlBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqax+f4Byc3OPkJKjpahqamoZp5c7AAAAC3RSTlMAYJ+AMM/vEI8gv5CbchoAAACESURBVHgB7co1goRAAEXB187sR+9/WCTCoaPRrbj490omMgtyChyynZh5SZ4DKdStmFGo4ICPVVmKGU6OA2rKzFjOcZYVrc2LVrI50WpkMyJI8HPRZMbxmdPYCI3wh2+OVfTgFXD2/KG2DgkeMSaczh/qLJCCPFP840w0TDSaoiz/XmkAIxQH1+Tt7LAAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-section-xz-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAATlBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqayfoaNqamp+f4CLjI12d3iTlJajpahubm9RPhSbAAAAEHRSTlMAEO/fcGCfIL9Qz4+vMIBAyBlmdwAAAKpJREFUeAHt0FVixDAMBNCRzJBksrz3v2iZW6XM78dsAT7MPxEskgwZVUdBFlgCo/KURgZYOkkXgiPZYVGy4VQj1Q7dWXGqsgcsKAlIBSaewoVKz4onDazXM3LAU5Kq4FI0ypZ688lEcnpGjuIY6ATvQrxzXrAkRd3t9zuNCZaS15vVfGq1WedixDxuD/Olw/b4RAbtNOZ8x2kG7S0X7dBmMW9oj9Hwr/LvBNYsC8+9SE3LAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-section-flip-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAS1BMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqayPkJJ2d3iTlJZubm9+f4CbnJ+HiImfoaOjpahqamrhCtCDAAAADXRSTlMAML+fIBBg79+vUM+ARJfGnQAAAJ9JREFUeF7t0DkSg0AMRNHZYBhMi325/0kNXQQOwCLCDvjxK5Uk8wc92QQke8FFrEVdJrgQHJIKgWBMAHRIcg16sJc+0dNlKqSkU6HxdCpkd8PSAa7UVJYXXQ3UXZF/OyVUsWlFAJG2iVU4YdajH0QI14Ye3h45h3ESBgibRrgDuG03y0fztunJvQuH7uMW3q6suS+oHb6frL+ST/xtT28xMwnaHjgv3AAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-section-normal-to-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAASFBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqax2d3hubm9+f4CTlJaPkJKbnJ+HiImfoaOjpahqampsauumAAAADHRSTlMAnxDfv2BQzyCA7zAE/YYWAAAAhklEQVR4Xu2RuQ6EQAxDGQgsh819/P+frlyMtAVspqOZVz9FtlO8Tqb8hEQPCIlekilPZln4AJ6RRZ/GAGvcB9bVtALrVNX/XtN2/biQALmMfdc+aEPAvJESSXKbEYY7z7AfZBTFscNuRKU7+cOppA99Lx2N5y51d2LGgF7xWNmdUiO+TOYLQsAIN34iDksAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-section-show-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGxGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMTItMjBUMjE6NDE6NTYtMDU6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTEyLTIwVDIxOjUxOjA4LTA1OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTEyLTIwVDIxOjUxOjA4LTA1OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjQ5Nzk0NWJmLTkzY2ItNDRjZC04NzdlLTNkODQ1MWFlNDE2NSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxY2Y0ODNmNC03MDQwLTQwZjgtYTNjNi1hZTkxOGVhYjM1MDEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxY2Y0ODNmNC03MDQwLTQwZjgtYTNjNi1hZTkxOGVhYjM1MDEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjFjZjQ4M2Y0LTcwNDAtNDBmOC1hM2M2LWFlOTE4ZWFiMzUwMSIgc3RFdnQ6d2hlbj0iMjAxOC0xMi0yMFQyMTo0MTo1Ni0wNTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjRmZWY5YWUyLThjYjItNDI2OC05OWM0LWJiOTcwMWEyZTQ2MyIgc3RFdnQ6d2hlbj0iMjAxOC0xMi0yMFQyMTo0NjowNC0wNTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ5Nzk0NWJmLTkzY2ItNDRjZC04NzdlLTNkODQ1MWFlNDE2NSIgc3RFdnQ6d2hlbj0iMjAxOC0xMi0yMFQyMTo1MTowOC0wNTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+cdzwVAAAArVJREFUWIXtl89OE1EUh79OmjDENpniBkgKRVcaF9XEhSvrAxgxrFyJm8sSfQLAF8Aue1dl5dL6BHTlxkTqUow60KRFsHSSEmnMEFzc23SCQzvj8G8xv6RJ25zb883v3HPubeL4+JirLOOyAYYpBoyqGDCqYsCoigGj6soDJoMEJRKJoTFCiHlgEcgDNvBKSlkZtCbIMZsIFHQKoBAiB/TAbKAIVIBZYBWYkVI6UQADOegDVgCea7gy8FRKWfWElIUQPTernvgcfXedILlCOSiEeKkT5YE3QFFKafs8QB7YAFaAJxqsCFRRbjtSyhdnWmK9x0o6SQ74DdQAC1iRUtY03DyqvJaOXZNSlj3wFtCWUgbKHabEi8AHVIls4JkG/AysCyFWgIeo/VdGuVvz+Z084ARNGmbM5IFNz2cb2JJSLmvQ10AW+AO894PT7r5DlTuQ/qtJTiS1gALwFujo1yqqm/10sqEGKgxgjX4Xot9XUc42Ndh1oKWB/5F3LwZVmBIXgQcarAC0PE6kgMeGYcwZhjEHIISYDQvjp7BjZhnVCI4GzgFLQM7KjGGaJkdHR+zt/sQ0R+l2D23UqKn4zb1zOUm8p4eVGbOy2Sm+bn5hZGSEa6kU+60WVibDrdt3+LW3S72+jdPe7z1Q2Ts3z3oO5lGjZn58YpJsdppUOg3AQafDxqePuK5LKp3m7r37JJP97X3Q6VCvb7HTbIBnBJ0Z4MLCwjpQmLlxk/GJSUxzdOgaP3W7h+w0G/z4/g2gWiqVHg1bE7RJ1gC72WjgtNu4rhsaznVdnHabZqMBahKsBVkXtklmgcVkMlnITk0HcrPnWn17C9d1q6jyVuAcr1uD9mNPp+07b8yF3gd7HQ0M7NwLBfSAWqhLwpL+6tTZdy6Al6kr/6cpBoyqGDCqYsCoigGj6i/QHE1MUaFZ6wAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-section-capping-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAA/0lEQVR4Ae2WNVrEUBRGswSWwpLSoFVocJcGLXF3lw2wABxGq6lweRUV+n6cuOs933fG5SSTzH0CQRAEESNKS0s3uW8uyLyIG5CkqseZucWjxeW1fTsOjYxlKioqnxHpdpyIDx6fnD61G4cNwwa2d3RdexH45oYNDY0MsV4F7uj4ZuYzEBdYoI4sFIHyY66nt7/wHRlEYN7MMYfIwAI7OrsuIL/dqnfMUSAF+hC4i0i5gQfW1NYxjL+W1rZrhMrFezB7A/2bQYjW7MXzXwsDKbBAE4qORh3NYpmIa2hsuuO3jwKfxXK/j1nEcYtCGchl3GIBhHHBKo8jCIIgCO95B4EAabVr8iggAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-ambient-occl-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wNlQxNDo1OToyMS0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA2VDE0OjU5OjM5LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wNlQxNDo1OTozOS0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo4YmVjZWNlNS03MDUyLTQwNDItYWE4OC03MzI0ZmI0MmFhODM8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6OGJlY2VjZTUtNzA1Mi00MDQyLWFhODgtNzMyNGZiNDJhYTgzPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6OGJlY2VjZTUtNzA1Mi00MDQyLWFhODgtNzMyNGZiNDJhYTgzPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjhiZWNlY2U1LTcwNTItNDA0Mi1hYTg4LTczMjRmYjQyYWE4Mzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wNlQxNDo1OToyMS0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz7bwpK/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAGaSURBVHja7JcxS8NQEIC/iJOTEHAya8Wtq1ul4NTBqSAuTg8cpLSzIP6But/i3klo12K3jrraRaFzwUnHupzwSJP2pU1s1XcQHrx7d3y53L27BNPplE2WLTZcPKAH9IAe8L8DbrseDIJgZs8YEwJVoAREMfUYGAF9EZnEbV07WOB8MAZojKkrnIv0RaTzI4DGmB2glRCxRTIG2iLykQUwUw6uAIfatNRHYUVSWxLOhqwVAmgVxKpSVV/5VrEj3AQYAi9ACBwARym+OnkDlhboeyLS1WhXgDLwAHSBy1hqlIrIwcgFTqUB3AGvwBXQ1ui6+Mq9k0xsOGNMGTi19DfAiUZyLa3u2YLbBe4TzjREZLguwE8r75409+JS0XVUWC/WThClXEEV4HGO7ZuuoeUr9wimvf2+fub3ObYDvfvCrJHMAthP2S8De0BzTo42gbqDr+UBdWRKc3yhVXqsd99An1vdO7RyM3H8yiMHAXops18IXKv+/HtiMcZEwJkFN46PXb9+3Pp7A+vGjvz+r84DekAP6AE9YKJ8DQCvaZqI09i+mwAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-view-perspective-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAv0lEQVR4Ae3SN2HFMBRG4QvBEAxFBMLB08FhGp68hUAAiMAj8HrvvaZHGdMTl5vJOv/+SS5S4Xw+AmLcl22LchFbLnSov9sUhyuCGSwPDKl/4WxukICUZ1bUv+WSnCAxW/Y0f+JygRi6XBhS/5nLDBJieWZK/XcuO+h+nSXJD179OEfyf+C1Njgh1gRv2BJoggciET2whhXRA1PuMZpgnVRED8z+OTKCWX+XjKClK6IJ3mN0QSt5w/26UHy+6vUKl36Y+t8j6wgAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-view-top-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAFVBMVEUAAACnqaxmZmaLjI5mZmaanJ6HiImQnwxaAAAABHRSTlMAzGDfWLetXAAAAGRJREFUeNrt0jEOACEIRFFB2Psf2Vh9DRBLi3UaMplX0l7uRm1P7T4hHRhc99WplU58dc1KNyEOGNyEOGBw4rgC2h5tJQznH/D8PUA1DS1CFloGWWgpZKGlkIWWQtO0nb/n5WoGRVYCyHKZWfQAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-view-bottom-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAD1BMVEUAAACnqaxmZmaLjI5mZmZ9ZDsbAAAABHRSTlMAzGDfWLetXAAAAGJJREFUeNrt0jEOgEAQQlFkuf+ZjYYGJ9hauL+YDckrF7tvo7IXl6s6Kld1UK7qoFzVQbmqgx5rpoyocDz/gVRUIbWOO11niQXaGdoNaGdYHWRnWB1kZ1gdZGc4XP89u087AYU9AsErcYY9AAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-iso-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAABFUlEQVRIx+3VMYrCQBTGcY/gETyCFxmwtBwQ/qVnsLG3TZVuKpstBSGlTaq1CoJjE0UQRJGAQhiLxLA77sLEsCzLzvf1Px6veK/V8vH5n6GNRKORtJtjHUYcyUhJyTgyovM61iXEcGJDUnbDCUNItz7WIyLnwLrCHl1zICei545JNDd2rJ6wR1fsuKGRbqDBfDmbPafBuIJD5tb2PrbYZMLUHRQIBiguZKSfsJSMKzGKgKAeKBD0mbAv91ns7UxESFC2Nlh0zJKcnC2zimoECgRvvFtYQ1ARe/B3wbETOHMFJZo9E/rfgiERZ+fjUJ2vC4rBE6iIudY6X9aBnTOswCnJiwfWegFLFmi2DV/AjzwpH5+/mTucZKNXzpS9jQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-view-left-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAD1BMVEUAAACnqaxmZmaLjI5mZmZ9ZDsbAAAABHRSTlMAzGDfWLetXAAAAGhJREFUeNrt0jEKADEIRFFj5v5nXlwWfkRMm2Iz3YdXiXZ3dq68jcvVuqm1XK0bWp2pdQFxwOIC4oDFDeEaqDy3Fo53MsRv4FRaC6f8K65eIC4KVyAuCldgOApXYDgKV6C8rf333B3dA9R7AsFLYzWAAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-right-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAFVBMVEUAAACnqaxmZmaLjI5mZmaanJ6HiImQnwxaAAAABHRSTlMAzGDfWLetXAAAAGtJREFUeNrt0jsKwCAURFE/k+x/yWGqqwwvbYp4Gxk4WIjt9G1Dey9uX6UbWtdU6ZpW11U6QxwwnCEOGK4JV0Bt2VVwP/qPIL/ncncJ/ercOL0S4rxwAXFeuIB2LFxAOxYuoEasAorsTp/2AOmRAshYQsZnAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-front-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAElBMVEUAAACnqaxmZmaho6aanJ5mZmaqrsCzAAAABHRSTlMAzGDfWLetXAAAAGhJREFUeNrt0jEKwCAQRNGJ+u9/5cAKC0OYtCnib2TgYSHq9G0D78X5im7gKzrhKzrhKzrhKzohX8/whiK8qrUP9Cc4145dhHPNvrFePcB2F9GJdgWjE+UaRifKNYxOlGv4cPn3nD7tBviOA4JNk8CMAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-view-back-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAD1BMVEUAAACnqaxmZmaLjI5mZmZ9ZDsbAAAABHRSTlMAzGDfWLetXAAAAGdJREFUeNrt0jEOwCAMQ1ECvv+ZW6YPctKVoVhisPzEgGg3Z9O158MFGUBzXasbKl3T6kKlmxAHNDchDmiuCVdA7RlRwvdwo+JP0H+PQ17dmkEWmkMWWgpZaClkoaWQhZZDkelujuYBId4DDxYOWdcAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-view-face-normal-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAASFBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmanqax2d3hubm9+f4CTlJaPkJKbnJ+HiImfoaOjpahqampsauumAAAADHRSTlMAnxDfv2BQzyCA7zAE/YYWAAAAhklEQVR4Xu2RuQ6EQAxDGQgsh819/P+frlyMtAVspqOZVz9FtlO8Tqb8hEQPCIlekilPZln4AJ6RRZ/GAGvcB9bVtALrVNX/XtN2/biQALmMfdc+aEPAvJESSXKbEYY7z7AfZBTFscNuRKU7+cOppA99Lx2N5y51d2LGgF7xWNmdUiO+TOYLQsAIN34iDksAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-shaded-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAd0lEQVR4Ae3UqQFDIRCE4W0wPaCmJxQN0AN1pIHch47hWJ2LB+PYf/wnRyxrweBQfuw5wh2x/7ijklwuoXA5j8LlFKRyClK5brD8mnLbwd3XFfilQAMDFwy4IfFA5YIIC4w9XD8Y8VKOBSrnRGhgL9f/Nk7Wy7Iqn6rCLmvdSsYAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-shaded-noedges-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAfElEQVR4Ae3MsRWBMRRHcbVWrc4IwApZAv4DQJcBVOCrMsA3ixlsIwu8c26OdHn39r+J53WZ9rqaL+u5m77mH8W2XOYg4zgIOQ5CjoOQo6C2GsxH5XowKJqfHXTwP/CheUuQchDkHAIT5wiYNMUYAGu5As4UzNeF6y/P+wEUsnm0iCPwyQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-hlrr-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wNy0yOFQxNTo1MzozMC0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA3LTI4VDE1OjU0OjAyLTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wNy0yOFQxNTo1NDowMi0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpiZjUwNTFiNC03ZmZlLTQxZGMtOTJjZi0xZTVhNTc0NWRlY2Q8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6YmY1MDUxYjQtN2ZmZS00MWRjLTkyY2YtMWU1YTU3NDVkZWNkPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6YmY1MDUxYjQtN2ZmZS00MWRjLTkyY2YtMWU1YTU3NDVkZWNkPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmJmNTA1MWI0LTdmZmUtNDFkYy05MmNmLTFlNWE1NzQ1ZGVjZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wNy0yOFQxNTo1MzozMC0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5N2P1kAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAC4SURBVHja7Ng9DoMwDAXg56gHLYvvlCz0pu7SbqjEbn48PEssQJRPIJsnxMyQuQqSF4EEEkjg5Hr03CQil+dV9QngjG5ea5UhwBvc0Vp7BdbNe8UDcMc04AicZ13JjHMBd+C6gbtwni7+dt2pqt6xEsYBAMzs9lBVC3a7/brWszc/dQQSmBH4mY85gd7AUHbheod3yYxbBlySZnbgVj3BJWkmHBj+TTPC328EEkgggbnrDQAA//8DAOSQo98xSQViAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-hlrv-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wNy0yOFQxNTo1Mjo1OC0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA3LTI4VDE1OjUzOjU2LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wNy0yOFQxNTo1Mzo1Ni0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpmOGRiZmY4NC0yZTU2LTRmNzQtOTg4Yi05YjI0NTA0ZWQ2NDI8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6ZjhkYmZmODQtMmU1Ni00Zjc0LTk4OGItOWIyNDUwNGVkNjQyPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6ZjhkYmZmODQtMmU1Ni00Zjc0LTk4OGItOWIyNDUwNGVkNjQyPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmY4ZGJmZjg0LTJlNTYtNGY3NC05ODhiLTliMjQ1MDRlZDY0Mjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wNy0yOFQxNTo1Mjo1OC0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4d0YLaAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEnSURBVHja7JfdTcNAEITnEIWkBEpwOoAO4GVcBk4ZnhcogQ6SDkgJdEAJx4tPsixjXzZZEqRdyS/2rebz3s/OpZwzbjnucOMRgAEYgAHoHPc1g1JKs+9JPgN4s4r3fZ8uArgGJylZ8tymeCTyAmBrzPMBHItIepd0sOS5AM6JkOy84E4CXBB59YKrBlwR2XnBAUCq8YNt255jGmfhSOaaYwY559WHZDbu9rz0rUb77E5ihY9eXOKULhIV/GUN7q/uZhbgHgE0JDtJHckGwH489cMPNAB20zHugAC+ADxJ+higDgDSZI1OzcSmnI+ebuZhED8WOC/DYHUznwXSE85awc0gcvSGM61BSd1fVM5it76NG+l/upliVC4CGPfiAAzAAAzA68XPAIFh32tf9MRnAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-wireframe-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAcUlEQVR4Ae2UNxaAIBQEPaoV9z+BqTGu80NHWDPzdhrAaaTDjJS5rHSkdHEGuuMiFtbtz5VZUKdKxCydKBGzdVeJGYcXyqULCPlrCNsRxv82INTLmBkLdYUZC3WFGQhlhRkLdYUZCv8rxPJ/m/4yMrIBq4zf/wX11xQAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-help-refresh-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAAB/klEQVRYhe2Yy3HCMBRFD5nsgQ5cAh2EdEAHOKu3pQNMBYHlW+F0QAeBDugglBAqIAs/gsPHSLJjxjO+KyQh64x5nys6h8OBpunp0QAhaqHrUgtdl1routRC16XnKh8mIkNgeGVprarrqs7plG3jIhIBCTACugVf3QMrIFHVXZkzncPD4M7nJsAWGFMMjK2PgS8RSdwRL+UT06mIxMeBiKTAOyfYPbAAXoG+qnaAvo0Xtn7U1PYHyTk8RGQNvABvZHE7zi3PgLmqfhfs7wETYJqb/lDV2IuYMOi89kCsqivXA0VkBKScfqGZqiau+6F8yfMCBrDvx7mp6bV8KVJZ6F7IJgOf5aYSn/1loZf55PTUnFNyjnw2VtERg8AtaVMbdq0xOcmnI064HQ43q8YdJWQNB2Dnuql0R3yEGmmYGgntHNNWSyMbbou6X8EzBhTkhapuXZ7jk4gR8GmfF2SJ6asBsLyxtuG6rb2Qc3iYHz7W1di8hJdUNSXzLqXkG9PH8tQl7E1XAu4LnXB621MzPyEKreuAJ7TdOJLcVOoLnnN5wQpqLmbgK/HTwJosOTeqOnQ5P7gjXgHfk73BFVYSDXRAZohi/l7Jfi8A5l3if4e2wyZk4XLvfniuC+MvIpHrhbeRt/FKDVNj/vd4hBppmFroutRC16UWui610HXpB8RSygG39gCLAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-leftmouse-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAACJ0lEQVRYhe2ZsW4aQRCGP2z34Q1Mky4SdCkDD2Dp8gbuRr4K8gT4BWJ30XTkCYyU67H7SDFSGqokbwB9HFLcWjmhM7BzcxdH4W849m5nP5a52b3/Wuv1mn9NR38bwCJ3aBHpiUgnHHdEpOc9RsszPQLgLTAG7oFeOO6r6r3XOG7QBeAXJadXOIJ7pseUcmBC+9RrIE/ohHxGy7QK513kBh3++j454AgYhE/X1ADn6lEAn6rqLXlKuAKDc/VoSidegbJF2gfOyctc9+vs1+jbl/UVMCcvf5Mw+5VVeaYD7DXQLbYXoIuaA8Oq8JVyOlukQ2DGBvAWdYGZiAyrjGuGzhbpGNicSYCPwOXxCZ+By/B9U1ciMraObUqPbJEmwE3ZuZK0GFH+4wDeqmr0ohM909kibZPnsIeuRaQd28mSHglwauhXplMMK6UFutJN5BHPAr1vpagtXhR0qMnuEpGouO5PLq8GR5y9Ox68fN3qkG+a3BW7jC+Bux3XJEDy8JMPwEVo29VnGQMRBf3p/UPM5Re7L7EpdqbbwJsaOKJq9cFCaEoH6KZ0gG5KB+imFAv9vQ6I2LjRj1sisuRpz86ilarWviK6GYnWeBboiaGPa7xo6GC07Npq7qs7i3FjrR7bbN19ZbZ/TdCquuSPrWvRo/0btfl/lLlOF2zdeWTXORXtXxerV0TOyV8IbfNDfgBjVZ1UHa+Ot1tleTp9lm+3mtR/sfd4FvoN3yPAY/Uhku0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-touch-single-swipe-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAAEIklEQVRYhe2ZT2hUVxTGfxGJJBgyEDeK4kAhbioOdGVRfBIQF0oDQreOq0MXpYEuCm5MNt2VTldydnEriIoiuBAnCnUVmCAUGjeBiNkYSLE0WCjp4t43ue++e9+8lxkSA34Q5p137p1878y5598b2traYr/hwF4T2Ak+k94t7EvSB11BRGpAQ1XbIlIHaqrasbppoAG0VHXD2zcKTAGr6XpPXwcmgNeq+m+/pLuWtoRfAk0RSYBp4IWINOyS+8AtoBX4ningCvCdiEwE9JeAr4Cv+yXcJW0Jt4EvgevAc+BXYAxoO8Sx+iIUEZvcMVMHqaWbwJnImnFg1r1hf4kYQsS6LiEix0qzi+AAgKq2gDuRNUuYh1pw7iXemj+d6xDpdef6aCWGAXR9WlWbGOJzqjoEXMQQTuzBW3H2ue7ik0JETnj6D851yOcrIRPyLPF5K3bYJpzKKRJvX4Y0eWu7+sG4h0dgxX5ueKHNJT3uHU6AZef6lKdzSQ9HIkxpVEkufvxNPNkl5lv6vSf3Ze3SpP2EQrFfj7jWDCSUXbM0mIOZIvF0q55c5CJ9WXqoSj0tIm3ggnPrBlCzfwr8hCF/wn4+c67/A04DHzGWbgOHgGEqpveqpFvADxH1Aib11zGH8lvgrKP/BdjEWLyGSe3DVrcGPAXGApGomLRN5x1M2AsVRjOY9N4LD4EZ4Br5Q7kJ3MXE/SuBvSvAK1X9ENABeZ9OgJOYwmjFVmcuchVcBN/Ytb+TPQcAI5j65RywCPzt6evANREZK0s6E4vJV3RlSaf7bwP/sO0aLqaALzDF2bKnGwYuiUiwwMr5tIjMk63kLqpq29F3iBdXMdwBfgZ+DOg2MQ/VIFyXLLv/H8Ihz7fuAy/71csydXAdGAXeBnQjwFXgdWTvpJ9Bg9EjENr+Yts1LuQ2lMMc8AfGLUL4HlNNhrCoqoupEEsus548jiG7U8JgfqGicDaGU3d7yFg6SNr60G87IFaEOvms6WKC+EMdcoWiND6LcYtPDlHSNrGEmtg9R6+Caf+RttaO9Y5VsYEpnmLYxBzGED66QpnSdIbB+HaHgjpaVVeBwxF15oD2JG2tndA/8Q5xSy/3GC1UIw1gR10J/RFvEx/WrFI8WnjnClXarZS4X7WVRY180ZRilHhigQpxOgeH+BzVrZ4QrxInyc5VfGR+hcqjXjtamMVkuCrkm5j6OoQJS2wtoj/tCpXarRBst9Oi92ASzNTqPHA8oFsCnmDasBAeq+o7GMBQ3Vq+STlfb2Ka3RDOYMZnfieTonuIB/kmIKG3q0xT3P2cIu7b3ZA4MNI2nk8XLFkCLhPuXsA0u+8xM3If68CjVBjoO5dISbsA3FDVBvCGbFZcB14BN1X1GXDE27sGtFX1ntud930Q9wL78u3WZ9K7hf8Bha5MpAhQUW4AAAAASUVORK5CYII=);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-pan-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAABbElEQVRYhe2Y3U3DMBCAv7IAI8AI3QBGyAYNL7kxKGPcU9MNMkLZgBHoCEwQHupIVZSQ5HI2KviTosiRfz5ZPvucTdu23Bp3vy1gIUunIkunIkunIkunIpq0iJSx+o4iLSI1cAhvd9ylg+guFHcxxF2le8Id7uJu0iPCHa7iG4/UVES2QHH1qQQegDNQX31vVPVj7Xgu0n1E5AQ8Ae+q+uzd/6rlEWY4WbsOs3RYo8VUvRGKNWvcJD0RdHMxB+diaSfhDpP4okAcED4DnwNVt8A98AUM7RaPXHaXjqOqlnM9ZkuHXOIwt2MDL6paz6n4t2e6oyf+pqr7gTonftinRWQPvIbiImEwBGIY4Li03QiLhcG45TmJm4RhxeESBmyMzRurMKw8xq3Jz9qk6X9neTNOSvMa7uN2CZgITjdhcL5ujYi7CkOEi21P3F0YgLZtozxVVZWx+o5y3YpN/i2WiiydiiydiiydipuU/gYYACssXSASMAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-rightmouse-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAACLElEQVRYhe2ZQU7bQBRAH6V7cgR3xZLcwD5AkLgBZpORsuQCDRegWSHNCnODVGSPuQFdZufeoD4Ami48SCFxbP+fwTRqnhRl5Jk//2n0M3bGR8459o0vny2gIbi0MWa40r4IPT/AUcjyMMZkvvn2/QRcWWuzuvFagkl74cst3UHFg0gbY1LgvmXYN2ttsXMyAtW0X8WHhiFXoYRhT2sa51zQz3g8Hq60L0LP75wLu9J98TXEJMaYCEiBBIiBm/Pr4wSIgBdgDsxHp3d/QuTbaaWNMQNgxuZW9yYdr1wrgeno9G6mTuhR7x7+zlewfW9e5wT4sVhO8sVyMtDmBaW0F869yCrPwI3vy3x7nRjYSVws7UsiZ1MYfz0Bnh5vX+8fb1+3TXNGVVYqNCs9o15YyuViOUk0gSJpv0t0reEuTDVB0pUO/agZL5aTSBoklU6kCTowbB/yHql0JE3QAbG09I541tIfUdVpcX59PAAGwHepVBtS6eeW/ohKOqNawWGHmELoEObZo4a0YY/eYGRlk0ul4/YhYnJpwOEIoS8O0n1xkO6Lg3RfSKXbbsm9IJUuPsAhlwZIpefSBC2U1tpcGiSSttbOgd/SJA1kmiDND3GqSVRDqZ1LLO1PQH9qkq2RWmtVx2TaLS8FfiljoTr+Vf8+VNJ+hRKaD9LrKAlwXr3zUa8xJqGqzaY/CCXVzjMN8UYg5IuiiGr1o7WuFyDX1m8de3mo/l88e/wT/AXAYCkz+GtYLgAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-touch-double-swipe-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAADrElEQVRYhe2ZMWsUQRTHf4pEFEMCZxNRslUEQQxYWagHgpVBQbCO1WsD+gEi1oKWDwTjBxAO9ANsmlgJZ2mqFUVBCCREDNrEYueSd7Mze3vjciL4b/bNm5md/717896b2SP7+/v8azj6twmk4D/pSeFY2y8UkR7QBe6oam70N4B7wBtVfW30HWAJ2LL6OrRqaRFZBG4DM8Cy173knjc8/UVgCphzP2AkopYWkWWgUNVcRFaAXFX7hlwOLKtqz0zrGjkz7+oAJ1zzBMOwRI8nk3aEXwDvRWTbEXgsIleBwhGeAVYBSzozchEhtldDuhEqpA1hgEtedw48pCQc6l80cmHk80b+ZNYaIqyqX0bwBVrwaRGZNc3MyNtGjlmzkTv4qJBW1TXgvmu+BB4B68Au0FXV594Ua915I/eNbElvGnnOyN+bUY5Y2hB/qqqrwBpwbbARPWQAItKtWedcRD9t5N1apgbR6OGIV2SHHQ79OnPPRW9MAZXIAfDDyGNvQkj3aWvxzD2HSKtq4US7CcFtRBGZYpj0VtPF20gumXv6lh7gbER/2mv/bLpgKuncyAOyNvytG9n358/uOefpfzVdvA1Lz4yzCVV14NPT3riJugeU0cUiE5FMRE7ipW0RWXCiT9q3fBRtkZ4PtPvATeC91/dARJYYzpgAl51+JNqIHjHMACvARqDvFmUU8f14zvwTUaSS3h49BIDrlBv1CdVC6Q7wiqovX3ThMIpU0rOjhxzgBXCBqsWvAHeBd56+AyzVER+btCuQ1sactkLYpa4A3wL6DsPF1xBSLP2UwxTeFNc5jM8+zgJfA3o/+RwghXSWMAdggapfQ5nmQzE6WpdM8jQ+izkAeGicwiGNdJ4wB8qIEwtnYx0GUkgXCXOI1OIAHwi7QtT6E7O0S+njIFqLjE3a1ck7Y05bJ+IaqrpJuO5oj7RDnjA+RPqziJyJzImezFNJ90YPqYwPHRI2CIfQLVWN1teTsPRHyr86tNn6hElvBnQHSCLt/PpZw+E9ynTtY5AhTwX6iroX/klyWaVaK4ewRtg1+lQPvQBfVbX2OiGZtKpuU70ZDWERCIW7DuVtaUhfiz9K4zUJw6JLuMJbIBwhpkZd+U6i9ugSJt0hfqsUC4NAO6RHJZp5yrojlCwuEI4UtYfcNkjnNX0fKe8Epxj26z3gDeWpxT+VbwJv6xY80sZ3RHfv0fXUPVXtu5rDfrL4ZL4oDD5dQOkqRV1SaZX0pPFPfpL7T3pS+A2onfRxr0w4aQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-zoom-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAADJElEQVRYhe2YTWgTQRTH/zORQJRCTknAQ5IeCoaIQimUohItaokIgicPxV7Cu9lSPOmhIqIXKVZBmJ70VC+K1CRgQRsohJZS8KPspdA2B6FpCw2IBEoz46FbSNeazG7SLYX8bjtf78fwdvbNMqUUjhv8qAWc0JJ2i5a0W7Sk3aIlbRciukBEYbvzjkyaiJIAsgCm7IofibQp/A5AG4AO2BR3XdoivIct8RMNBPcDSAA4b+n6JoT4WGPqJQAfAIQAXDfbPgNYA9AP4Em92MxulUdEfinlMGNsiDHWVi6XF/f6PB7PKa/XG1VK/WaMjQohHtVYJwFg2ny8LITI6TrY2mkiikgp0wAiGxsbk/l8fnJra+tP9ZhwOByIx+O9gUBgJJVK3eacXxRClOzEqYd2ThORXyn1Y2dn52QulxvMZDITVmEAKBQK65lMZmJubm4IQFRKOWOmkvvSUspPlUqlnM1mHxQKhfV64w3DWJ6fn38IIKqUetmQpQUtaSJKcM4vGIYxdtDu/g/DMJaXlpbGGGP9RGR9YR2jJS2lvF8ulxcXFhZ+2g2Qz+dnt7e3V5RSw/b1DkZLmnN+o1gsfnEapFQqzSqlrjid/49PvQFEFAGAYrG44jTI2traIuf8tNP5VnR2OgLs5mezgjaKzjm9CgCxWKy9GeJENAXgqqV5mogA4JUQ4l69NerutBBiFQCCwWDUgSMAIBQKxaWUv8z1rmH3s21lREcY0D89MsFgsFdfcz9+v7+bMfZ171kI0Yf94iNCiMe66+meHs99Pl+8s7PzrL7qLj09Pd1erzfKGButbjfF38OmMGCjYEqlUjNSyo50Oj2o+4GJxWLtXV1dzxhjq+Pj4zE7YrXQ/oxzzm96PB5fMpl8Gg6HA/XGVwl7GWNniOhNQ6ZV2CpNq6u8zc3NelXeHaVUhTHmqep+K4QYcFXaFNetp18D6ANwzrJEw+K2pasholuocXMxS9IcmizekLQOhyF+6Bdb89aSAPDd0nXX6cvpym28hrgjXPuFcIC44/Q49Jy2Yub4gBDihdM1XJduBq2/pm7RknaLlrRbHEvpvyisYT+oEp1yAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-scrollmouse-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAACTUlEQVRYhe2YTW7TQBSAv0TsywEqNRskYJN0RSUW9ZYVlVghIWEW6C3hBnUugNLlW5FIHKASF/AR0g1imUgcoD1AFRYel8j1zxtPcAPyJ0WJMn5vPo9nxjMz2Gw2/GsMH1qgDb10V/TSXdFLd8VeSItIIiIT6/WDXb1cRGQEoKorz7g58B64ASJVXTbFtJYWkQiIgTPgAJgCEXAKXAEpMKu7CRFJgPOtv0zij1rIToCZk6ti7D6fROQCSFT1upDncUncEpi470q8WlpEYid8UFK83dJFrsha8LpYICLbAlNVTZo8zANRRM6Ar9wXXjx5Mfh48mb48/jV8Nvh88HbkvAxkFa0rjem7uEG2byiePX05fAdroUPnw2mv37cll03Bi7Jnkaes9gNzkVkpKpxnY+1pau6hC+n7onls0xE1nVyFk3CYJB2LfK6jWEFSf7DzRIRmbhJGGwtbUrkwTif0wHc4IyswmCTjry1PHOWzSp1WKRHPgmNBOW0zB5HDeXR9y+3KVlfHYUKWbBIT1vkbYpJW+S8wyIdGXNZrwNYeVx7D4t03RqjLWlI8F6sp33ppbuil+6KXrorLNI3f93CE4t045a+BV6ruiIPJZ2GBFukgyooYW05kKmjUVpVL4F1SCUF5qEJrLNHHFqRY022SQ7CJK2qKXARWhkQ+26tyjDP06r6GVgE1PXB3XwwXi8Xt2P23cmsgWNVnXvGVdLq1NQdAST8OTEtY0026Ga76BLbBJ9PuyPfCZCf062AZei0VsfODtW75L9dMO0dvwHzcbC9d9iwdwAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-touch-spread-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAADoklEQVRYhe2ZP4gcVRzHP6cSiCC7cmCjIZvmLO9iYWGTCbYJnhC0zAnCD6w2pDU4AVvRlF+wuKRMdYJtcNLEyuTSKKZxQ649zDURBDmL95u7l7mZNzt7s+sf8oFhdt6/+e7b73u/994u7e/v81/jpX9awCy8EL0ophZtZsN5CunCK20FzGwDyIEC2KjJHwJjfyyAiaRJP/LqWWqaPcwsA24Bp6LkM1VBZrYFfFDTxE1gLOlpL0ojGu0hqQC+9cc//Z7XFP2moYnLQDEPW7V5+h2/nwB+AbarBfzLnSH0bJVV5iA8ZY8h8HuUdEVSU6+WdUYE339RyXoIZH1ZJdXT65Xnoq0xSRNJOXC9krVKs406k5o9sujzY0kH1jCzV4H3/ToJPAJ2/fpVUm5mazw/QC+bWfmljkXKHk+BgT/ekDQ2s2XgvUhsE4+An4AfavLO+ziYmVp7mNk6h4IBNr13rwEXSAsGWKFm0DrHtkmTp2M/77k1VjgqdpfQq3W8QRiAVVbNLO8iskqtPcxsApz2x5uSNjx9hRBsngA7kp5FdVaAj4G3POlHYAh83fDus/E4OZZoH0APoqQPgZ+Bt4FnwLak3brG3EJXXfgfBCv81vDuPcI02Fl4nT024oYlbbngC8BHwDUzO1VTD+/5r4A7BCudcHF1DAiBZ21m0WY2NLMxcCnKL/x+h9BzuJirKeGSbgNfEjw/Sby/FN4pYh6I9mi1DrwJ/OXJ90shwO2oXil8ualhSU+Ai4TAkmIAbM0k2sn9/rLfPy1/Pkn3CD1XchL4zH3cRJ7IiznXZUapG4ibhGiYS9qs5F0keDtmF/ieMEDj2STn6BokxR4wmmZ9UjcQx5JGVcHOPcK8vBOlLROWoZ+Xv4pvHMZHaqcZcHS9U0tjGK/im4KRXwUh4r1GsMkO8C6w5i8+10nuIQcxIUXrdgvAzLZ5fkDFP/tdZhdZZarpr7Wna4LNvHm9zdetu3GPWFeA72gOFH2StRWY2tMl0e78dLrkzLT6urPoErdNxuHgGyQrTM9dSVmqwMyiq/gSoGlF1wlJS6n83o7FfNN7FnjcV5tN9HqWJ2lb0oj644TemMsBpA+kG/NoG+Z4aippDHwyS922pepcj3p9/XKe7vN7lsqc+/m0HxdkdBOeXDgt5FDdo2reocp6yiK9zdPTUNnlp0gGmEX/fZG35O8B1xcWEafFdzRZJbkgrM+LaXYuCxfdB//vf7f+TbwQvSj+BnuQVXZmjysdAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-zoomtofit-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAADSUlEQVRYhe2YsWvbQBSHf3eUgChGOgwm4MFWRjWBgIfaBUPizoWirW2GJFC0ZuiUv6FDO4oOLe3QJZhOmkOnxGAIbaNRRpsqCnKxQ5CMdR0iUcW4bSSlCgF/m9A76dPj3dPdEc45bhv0pgWysJAuioV0USyki2IhXRS3UvpO3gdomrbOOd/lnDcopQ8AIAzDUwAnlNIDXdc/5bacgWRde2iaVuecvyeEtIMgGAyHwyPP8wYAwBiTJUlqLi0tyWEYnlJKt3RdP7lR6Si7n6fT6blpmq/7/f7XeXG1Wq3SarX2BEFYBbCj6/q7nL4AMkhHGf4ymUx+GIax73neWXxPVdU9AOh2u6+SY1RV3RNFsQNgU9f1w7zSqSci5/z9dDo9nycsimJHFMVOLB/T7XZfjcfjY875h7zCqaU1TVsnhLRN03ydFFYUZcX3/e+u6350Xfej7/vfFUVZSY7t9XpvOOdM07TtvNKpugfnfHcymQySNawoyoppmpZpmtZsfHwPAGzbdkej0XGpVHoB4F0e6VSZ5pw3hsPhUXytquqeLMv3/xQvy/L9ZKk4jnNEKb2XTfU3qaQppQ/itpaYXH8lWeO+75/9K/5KHlkHCoIgp4lljN3N+q5ZUkmHYXjKGJMBwDCM/SAIBv8aEwTBYLbT5CVtpk9KpdIaAHied2YYxr7jON/+FOw4zrekcLVabUa/+Fyk6h6U0gNBEJ7VarWKbduu53ln/X7/a6PRWFteXl6dFU52GcbYXcZYh1L6Mq90qkzruv4pDMPTVqt16edhWZYlSVKzUqk8qVQqTyRJalqWdakFttvtp4QQALj0t/zv0gBAKd0SBGE12criUgmCYDCvhjc3Nx+Wy+VHhBAKoJ5XOuuCaRvA2/F4fNzr9d7Ytu0CFyUQf0R83W63n5bL5UeJ4T8BbORZ9eVZmm5wzj9wztloNDp2HOco2Yer1WqTMdYhhCDKsHBd4pmlI3EJwOMwDJ/HG4CYaB19gIsargM4BCAmQjKL55JOg6Zp67gm8cL2iJHYBi5EY0QAh9EHXZlCN7bXJV74bvwv4vWrPuNGjhDmiO+k2bUXNhHnEZVEPe0xw41KZ+VWnjAtpItiIV0UC+miWEgXxS8grLGEy7JlFwAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-doubleclickmouse-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAACXklEQVRYhe2ZwYrTQBiAv7oLgpf2DbYret6CB4+2D7DgG9jbD0HY6gvYJ9D1JHOrF88L5t6KePC0EQQNHroLe9BbC3u18ZAphhCbmckkbqEfhJLpTObL8M9MZqaVJAnbxq3/LeDCvm0BEekCj/XtRCm18GpkgJW0iPSA80xSn78v0BhW4aGUioABcAhckko3jnVMK6VmQAc4AEa+hUxo2Y4eOkRmQKSU6tfgVIpVS2eE20BHRGY1OJViO3r0gKgOERusw8OUMA76AN8/reY/PieHwEJ35Mp4ldaiQ+DJOu3rdPVsfp680rdL4AwYK6UuXOvxMiOGcdAJ42ACTMkIF9DW/89F5NS1vsrSYRx0SDvnJtkiTkQkEpGObZ3W03iWjPBR/r/Fz+T447vVtb4d6N9pLtsRabj0beqt2tJjCoQBrr4l90gl19e/eCQiY5tKnaXDOOgCJ67lc4xswqRKS48rlM3TJh11jKgi7fvrbmia0Uk6jIMeaev4pLBvFOHa0qXxd/tO6xr4kLlK0d82pdS23Lr/sPX0+Pkedx+03ugkk8nEqDO6jtPrxUApe/vMgV8Wzy3FSfr9y989No+9rgxIJ6uNbOVqfCfdFDvppthJN8VO2gMXJplcpY0ebovpCt1JWj986VJ2A19MM1YJj7MKZYuYmGa8KcutJU1I6xB57Vo+x9jmRKHytpiIRFgslQp4q5Qa2hTwMeT1sehEOayFweMGpN5weWGYfUkaEk77eV53TfXJ14h0e+GgIMslaYc7rXIqVtv+tH6BbiYp8nV8V5t0ndy0bw8jtlL6D2WotwfXzuSkAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-help-touch-doubletap-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAACXBIWXMAAAsSAAALEgHS3X78AAAC1klEQVRYhe2ZsW4TQRCGvyCaIKEg0YJsmiDRJG8QR1BSuEqbUE3rNHQI09Ah3A5NnJbKPADCCCmUOCVUZ5EWyakoQ7ETsjaOb293zyhSfsm6vb3Z8X9zszNzcytnZ2dcNdz43wRicE16WbiSpG/mUiQim0AbGKjqKJfeeSglLSIdYA+YAD1VHVwi2gO2TLaZh958hLhHCxjhCPUD5Btm9dpQamlVbcPfx1/YeAd4DByq6tGcZW3cjdaCoI0oIn3cI+/Y1H077orIuo2H3pJaLV1K2gjvAgMufPW3J/LEjoU310pmtgALSYtIC0cYO36yse8SGyJyl2nSa3X69Ups7SEiPWDVTr+qal9EfGX7qtpLJTgPKcnF32ibInILGHtzrQTdC5FC+qM3XgXuMe0itblHNGlV/QmceFMPmSbdEJFmrP5FSE3jR8COd17MXO+IyAgXdfqqOns9CtEbEcCixms7/QH8Ag4uER/jXGZTVYfRf0oEabPcCOiqaiEiL3D+fAJ84SIsLsIx0IklX4m0xd5v3tQ2cBt4CqCqMhP2yrAdQzzG0gXQsNMx8AjnIqvAG+A9sBGo7hTo4vx9EsohJnp0vXEDeI4jCi6CVCmU1oC3wFBE7oQuiiE9wFnoHC+BdZyVvxNXS2/g6vAgVCZtj3E2PR8A7+y3VVWnoRUqGJtcekxbGxzZWMJQIYNGkTZrd0oFq6FRLuKQksb7wOfY9SlIbSF0c5CoiiTSlhjGZXK5kaNZ082gAyrcfDLpjL5dhArmaou1cUVQCoahgllIWwhskUY8OP1na0B6xD/k0nkZsnZNVXViHalnVI8q7VDBpDeXMojIHi66hGS7U6AZUqLW2p9W1b6qNoH9APE1Aiu9pTTVrWlzGCAaVM/U6h6zEJEh5ZXgg7K39mV/vmjzb0l7jlPcO2NRpmSppG2T7c1MHwOvcJtwGKJnqe6RC1fy69Y16WXhD3LE4ILvY8DzAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position: center;
}
.edrawings-animate-play-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDExOjAxOjM2LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xM1QxMzoyNzoyMS0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xM1QxMzoyNzoyMS0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNDNkMWJlNi0wZGQxLTRhZmYtYTljNy1iMmVhMjZmMGZjYWMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzQzZDFiZTYtMGRkMS00YWZmLWE5YzctYjJlYTI2ZjBmY2FjIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MzQzZDFiZTYtMGRkMS00YWZmLWE5YzctYjJlYTI2ZjBmY2FjIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozNDNkMWJlNi0wZGQxLTRhZmYtYTljNy1iMmVhMjZmMGZjYWMiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMTE6MDE6MzYtMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5dbdeWAAAB6klEQVRYhe2XwW3jQAxFn4IUsCW4BLmDSQWJK9j4wuvCFWxSgZErL95UEKeCqAOrBJWwHTiHoQ1BljTUyoGdhf7JgDicJw7F+c72+z3XrJtLA6Q0AY7VBDhWE+BYXT3gbSogy7LOZyISgJ9AAGaNxxVQAC+qWrat91wSWSqoDVBEZsDGwErg3WDqCsA9kNuzpapWXw4oIg8GVwErVW2CNeMDsCZWeKmq2yGAg3rQ4N6ALXCXggOwmDtb82Y53HJX0I51B2xVdTlkk4NEZAM8AHNVrc5dweOxtmy8E5HckWNlOTbeTV2Atnkg9tzflpAc2InIU18eW7sCgvXmeQCBX0Dp6LnfqWpajpI4npLyAgbiKPEoJ13Nd8uZlBdwxumcS6mvmgWng71VSUAR+TGEqqEcR2/26erv4iRgx1frVUmceU//miBpFkwVsamLAbmfe8CC5UzKe8QF8eL3qCRdtXucL+sFfAVyx3B9VtV5l72Co3nIgRfPxi5AG64FsO74qkscvWZr10DR9xJ1eXsQYEk0C2v7fZSqzp05DrbLGz/MD9bs1h+67+UT1Sr3CCwOnvDsftASL4iW6cNz4VvMh61Z1A2rR/+f5W+A5kSnE+j+0/Ta5YLOAnhpff+7+NKaAMdqAhyrCXCsPgFXbt3qxjO6TQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-animate-pause-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEzVDEzOjUyOjU5LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xM1QxMzo1MzoxOS0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xM1QxMzo1MzoxOS0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozYWYwYjJmNi0zNTNkLTQ1ZjMtYTJiMy1lMDg4MTM2ZDIxMGYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M2FmMGIyZjYtMzUzZC00NWYzLWEyYjMtZTA4ODEzNmQyMTBmIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2FmMGIyZjYtMzUzZC00NWYzLWEyYjMtZTA4ODEzNmQyMTBmIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozYWYwYjJmNi0zNTNkLTQ1ZjMtYTJiMy1lMDg4MTM2ZDIxMGYiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTNUMTM6NTI6NTktMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eL6oqAAAByklEQVRYhe2XwW3jMBAAR4cUkBJcgtMBVUGcCu782e8hlRh5aj++VBCnAruDqAR1EHfge3ATGIp5XJtK7Bw0gB6CyNVgSS1X1W6345L5cW6BHKNgKaNgKaNgKRcveJUbUFVV8pmIBOAnEIBJ73EHbIAHVW0PzfccElVu0CFBEZkASxNrgWeT2ScAt8DUns1Vtft0QRGZmVwH3KtqX6w/PgALYobnqro6RvCoPWhyT8AKqHNyADamtjlPFsONO4O2rC/ASlXnx7zkDRFZAjPgRlW7oTP4vqynyBn3FmPpneDKoIhMidlzLeu/sD25BuqmabKxvBn8DbQpORF5FZHX1P0+FqMllqcsXsFALCUpru1K3fd5tphZvIITPta5EjZ8LOwHyQqKyHWZSxkXfxZnBVV1+wUeSbwZ7HBuaifBYmbxCm6IB3+KrV2p+z63OD86b6EOWHEdsFDfNE3TDiJogdfE2lafui+tIqyBrarWQ5/Fc2LtWpwiZ7y3Xd4JR/WDe+3WH2IvuPW8xDK3AH4Bd2894eD9oAW+I7ZMa9tPOblAXNbZvpyX/6/l74lOiZ1OIP3T9Jj68gcRPDff/yw+N6NgKaNgKaNgKX8BoePTNdVaAHoAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-modelview-panel-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAOklEQVRYw+3RsQkAIBADQKfNHG6ujYVYPyJ4B6nSBNIaAABwSZKeZKz0iq564NhT0X038O2LAQCAwwRu3mM9TFEHdQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-logo-text-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASgAAABBCAYAAABiizk/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdCN0Q2OTU4Mzc2QTExRThCMzgwQTFDN0EyMzVBRDFDIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdCN0Q2OTU5Mzc2QTExRThCMzgwQTFDN0EyMzVBRDFDIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OEUxODkzN0YzNzY1MTFFOEIzODBBMUM3QTIzNUFEMUMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6OEUxODkzODAzNzY1MTFFOEIzODBBMUM3QTIzNUFEMUMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6fLKUyAAASP0lEQVR42uxdB3hVRRa+USmKLmBBEXVRFGQRVAQXKdKrYkGlWgAVC9jWxbYiiF1RUFZhLYCABYEIokAwlAAqJUgAQUVFUFEpIlVBkpf9f3JmM3m+cu99JS/s+fOd75bMnbll5p9zzpyZl5afn+8oFApFKuIQfQUKhUIJSqFQKJSgFAqFEpRCoVAoQSkUCiUohUKhUIJSKBQKdzgs+ERaWlqx3tDCtdd8h83JcvhA4+rjntDPpFAc/AgVk3lYSbhJhUKhGlSKEJR+FIVCkaoE5ShDKRQK1aAUCoUSlFeCUoZSKBRKUAqFQglKTTyFQnGwEFQCnOQL117DuKoLIXUhVSFHQ0pD/oBsgXwDWQLJbFx93C6tFgqFElRCNagFX17NiNNLIf+A2djE5WV7cd3r2A5qUmP8z1o9FIriRcpNdaEPyhY/yPqix5mB/PwsyLuQJhDHpZSF3ARZjTwu1eqhUChB/UmDssUr5n3evROILZtaUzDZeZCjIenIq6dWEYVCTbwiGpRfzFndvXcg4LwSJ+JlHq8hz29b1HozK9bM2rRp0xubv4T4F/1gv0BoUubMmjVrRwLLspEL2Qb5ArIS5ebG6xui/B7YHCeH6cj7Ox95HI9NNzlciDyyI6Q9HZuL5XAt0k6PkJbvpbccfoS0S6PcRzVsOsrhNKT/xuX98/l7yGE2rlvo4dlvwaYMZA2um+XzG9DHegmkPaQG5EjIr3w/kEzIVGT9RwzfmO2jA6Q1pBakIpuv1OOVkOmRnhnX95Jrc6UOPgXJS32C8ukkn/1Ztw4gt2jktB+SQSKQ/bMgF0GOiEBS45D3mS3Peuu3GB/tIchfo6QJ4MORDF+Uhp2fwLJsbEK5z2M7BGXuj5GcjsFmjFW3SDT3+8hqL2So7I9kI4+QlkQ2WPZXs3FESFvXyrczZGmU+6htpV/vFAyouEEV67rNeC818G63u7yWE+TLQ+gPneXjG5Cs/x2mDjSD9IFsRLrbcU/pPvJviM1oSPUwSdim7kc6trO7UMa8oOuvkw5srXTOmyCPQB44KE28D1d1rRLIz38DckgE/9ICSE0QTUfIAMhgSGecqwFZGOG6kyF3JdHkbg6ZRGsVH/LEJJVLEnkcMl80jFhwVVDH19lPJqJJfiuHdaIkv9DaryUkGQ52XsuT9H4rQR5LRkF49nup6VnktJNNBDKF31eI3xDoZKR/1GP+TVk3LXLaDZkr+VMz+8lKfg4NG1zzYFA21EifgdR3ClYu2SxaXknwQXl3kiPdcEiFCD6luZDWrWu//afeD+d+wP8uhqyPcP3ts1Z2KROnR/xI1GEjJIe/Qa6BvCWanWl0i/BxT46hrM+CygoWapD9ID9I+gaQF+JAUI6YE8RpeIbzfOa1zGgxyCMtTIMhGV4QdLqJC4La6UEbigduxr3WTTA5UTN6Ug73QG4jOYLs20AuhzQVzeUhMa2If4lJ6Sb/Uti8Ciklpway/iLfFpJ/ayE+1qMZkiZNTD4beWIdVBNt62Or3qe6D8pb+owVnS8AgVweIQl74q5tz35nX9gXX2fCDuQzUFTqcD1gG+mZYkVuCFWfPcjnkPGoBLyPNyH1pHdJp0rt0/TKi2JW8H+rkf8EbD+B0JdzLXtVXPe1jwZSSUwIRxrKw5CyQlrLfNz/p5ArIUeJRrA+jMlWDrJPzDseN5YePZzJdiDvGExov9rxCLyjC1BuIAHkdAY2z1vk2xTl5ITQTKnxPIL0K6hBQXaFea+h0FTqCDEUeQ0OkT/f6WL6p1BGT2wr49x7Qcm+w//qC4l9L1ZD3kGpQQUC+f0hTgQZAnLa7CKfyZC9EfJJStgBPuZXUhGMb4REdUuCy9yKzQCrx+sQg/Zk6tQEUf2J7uE0oChYHsY0C2Xe5Yh2GlaDEsfuWUk274ivZHs+5PoElfGEdAbE9aHIKeibkzSuJqFjf4bLMmwNcJyLejUGEmrByUGi3eWLJn8TpH+JIKiCe7YlPKZ/emUlkNglEUyzAOQ1N6W2P3fiHqRdFSGvxsl6A/iov0nlMVrT3Whchya4WNuReYbPPLrKdgWeYYP00I5ogn+PwcSLRFDmuyyRnps4D+/ryBBpT3MKB0SWJbFS02w2gb9P4d6OjbP2dCo2neRwLt79JJf1bAJkvYei7He6M4b6vQdyrfihXsN+J8iPSSOohWuvORzSE3KkHxPPrZMc7HMx5NAIDu6lHepO+slt2Ui/IUJe1d9fdkXZJJIURzhMRTvFaoiJgq1lHuWjkdCh30gOjUpPkzgQ5Jvy8g44DWljkGlml5lmaUuLLa3zUPGDhDPvjPmYLOy2NNSKou3EE11F83UsMy8R+NXabxSHOv5TNIJMiA8qLy9AhzKHIYdlfd5jGLdNa76x3R1B5XshsxbRkkzLvuJOD/lFGppnBajsFI4sJQN8hyYWiM+alcCy7BHDrT6uv8JqJFOlAnJ4fZ7cexfs9/fhfyGRVAlFUE7B4MLRsr9UTCn6HMuL6ZcZlP5s2VJDXZtk02C0mOo0k27AuxiFd/FJvJQo2e5yCp3TicB8a5+a4BI8wxeJdtzFHfvz8oyUhwyErM/8rOsgSIU4a1D1okxdaQAZ6kHqR8nv2CRX6kWWnXtOgstqb+0v9XG9CUpch0prm0/vyraKz17XxD9VR4MI1mCN9sRYmq/EQbsoyDcVSoNiQGxeMj+klNfH0ihfiqPZbkZJs2MJvnTxDMss0j+B9QTPcA+kXKLK/JMGNTPnqp6xZpqbmxcc+MgejaNTdyL/Edg+2+6ciVtj1qAC+aclmTCOSHKl3oWPT19OVTHzEgKUwZiWRyw1/n2P159i+ZgmBv07XXww1K4YE7XA4+3lWGZbTaeoc9uQ0EJrRI75t4Wcz2jqoAZrCGq5UwxgA8c9DcfuHdLh9HViDOtAfhUtk3x1Eh6D4TBz5FvQhcMIcJLUKGxfFddE4ghqf25gdAIfjkR1H+Q2mF6MdB3Ssd7kIkTlNpI8fdFl9D2VSnIdO7wY6vU2IaiKfu4XFSeS5kXndSunYGTJ9IJ304npsRzbvzQxqFH+iHv4SHxoV2D/Do9m3rIgEy0UQS0IYYbwW3EE9GNpyOxcTi8G/1MwBog5fJJTMNxPR/WmGPI7OkbT3CvJ/ox7pn/vadEI2fEwMJajcP1lJgTbdno8wilCEFRSNF82Bka89gTRnNWpwZSttonn0ldVvD/glzzEsj5VdQ/aAj/8vahUfjqoLrLdEGTeGUwWgqIPr5n0wG4bBKdksAEfb/uhcK6qmI3BvhGap4yJKiME9rGcr2X5yLKL62OKVnybmL6M2n/OMo/9wB7QiDqyFmGe5k7c2yiXz8ByGHg6TIipm9V5NxVZg//firRZcSWo3OQQ1B5h2SGdG0/b6sfEC7hLNw+yIo73vaEY6nT5/ymXicFvYtI9icrk2fSRybT1LSIKqfA6Ree/zfFYTI6YbbVDaE97bBLGM+zFPS0VQrRHPk2YAk2+z4uzx8E9TsE9ciCBsXWMEXs5hoa829qv4CJ9uHmarNujPD4HHeTX4/45Fexq0ajMQAQHMDhd60GkeyxuBLU/L69XnHw1L4Y4v0POD+3RdHoYH5RrDcpNyvmdG00bWMI1KGPa+VlAbz0k1DxCViTjFOfI2ksx3F9Y886qyIwcXix+qk7Y7+vRSb1MCKpOCIL6OMRKDPMNQTE4U0wNQ24rY50QHSdQi2opfhxGmJ/t877sof9KxUS41KhYh+j4byXm37ny70dx7nukGRsXggJxjIn1hsfMblshiKBITAfCDXq2zNgehXjcaVCB/IBoFZFMvVNLMjNJsKGZi7fORxY72FuHyJeOzHby7u7D8asxjP4YgmLM0iYxvUJhgRAU54JxakOmDz/U8VzGROKjGocw75wgn1R5IbUcq2f/NBW+LZ7hezzLANEs6XBmOMwzPrLa5hSGVtRxkZ5p7NH7d5yCZU/2xum5MmUay7NOwWAA8RjOvelnSZ+EhBnk5gaM7IA8DKkKYhoUjZwK7Jiif+HQtcn7VKJ+iLLwXMMSrj3Vt75RdhwbxxqpmI4QYG+fBMoZ6Gb6w3FCot+GkX9al3bzYeIZcLUCOobN7PdQaw7RKW8ctA0sk8NximkELwyGW/cz0M/EcBm9XCKHdaMN+VPb4fxMI07hyPQvcaxfeaK5G1P+JCd0HFvxENT+3Lx9kF6Qk25o++EgiNt1cLzGQS2PErdU7Y2sDqeXYIKyJ0FnxDlve6LnfbIqgFd09vtcMjPebYVfZ5kydHafb6qaUxj3ZKffZTX884XQKgVpY6mgRbEh3yRkWs6nBnXAzJVt2aA64waG6DfG+dnYeu35elVThqBuuWjO75AxkN1er/UyWRj/nhdMaCHk5lieZfy8Do2Ko/KiUVW2NJts0XriWYGY31Q5pNP06hgIipW7lwsZa/nVWnosa7nVoOrJPiOZw5kmRrOiWWkmCJMQVqVSDyQrehp3CKPt/cxZfNvav0smRbupY3wvJvh4UQIezx5V9BWUWqKXW4GGxLlez0VJ1m/s3PavXNt8xpde7gPXsKcejjKaY/9yXD8lieRUWhpzuRDaTjzB5VDMKg0Potzxbv0ESFvTaviM5Rnj4hr6hq41Vjpkpod7pe+ohZS5J4J551i+KfpAznQKI63XRCC04gQXdONk3yriu/FKcl/g3fJdthOT+0bIf1xc2s/an+ryu7cvKNLVIEcta9/XCHiJXm4FpPF1fiA/C+JEkDKQSa/PbudqhAPpqkPG4JoVkOaSx0icOyZJ5MR4Hw77t5JTE1EZpiWiLAkrMBWzmkctqru1P9Fled84hU5qmnleFgE0ptmZTmFYQ6Sh+QVWHTekmJ2C5GRGwW6XQ2rs5X1kw7hC07kMw7ttEaWecf5eH0NObtZaxyWMIudyytOwXyFKWvokb5XDzY7PwYkSvyY5NBwujNY0SjL2ustHZ7ZlTzWxV6uMIqYnzleS3qc78uOHCx4ZJGlwGLVLHB7xsKCPS9WXPhKOMnE0pYelOdG30DPBr/xRn1qUGb3jgmOLPZSXLr08gwW9LAJoTLzK5tNbvpdQjX4LnuVLMQlNNH2Ok6Lg2uC4X76Ljj6vXylL6z4pvqiZOGbM0wuyfI8hDtatvqI9p4k22t8FOfF7DZdDalHU2qjZj5VF8Oy0F4oGd4Kcesrv3McSv6ImyGbmqA/bzBH1PxI4W5+BaCORngFmHJ6lo/ZUaGpu1v7ujOtG9G5ddAF4H2AP+auLdPwBCE4L+T3BDSMbFYoO+LaiRZF43opSWWs7hc7ViR5XppwspGh8WG4JiisVsCGYJXxWuvgFnCyn6FrXy5zURj+px34n3z4tpHCn1O0npNP5RIjoODF3jebK0JIuskhiVC1PtC5qy6dIp03f2XM4Te2I0f6lRRmw543y+/peAuagWJMcWs+NkB0uf5yzNKQOpBmkEeREl9ftTcLcP44+jXcKVjnsk2hysjDI2h/gwsnazat5Z/tLnIK10o2Zd7jL6wJO0RCB+S4uW1BEOU9hDUqekT/P9VAM1+dDOLxPU2yLnC4n7gJqyQ0tcuK74FLSH3jIn+EMtUVLM1oT8+Oa8Jc5BSuxGnKir48aVqdYVo44KH76/IY2H657JaNVN/GnJIJE2DCuu7FtZiwjQIOd0HOgSEq/iBNxVZx+n86UtcVlxVskv1NmTM9jnaIL2AXjwM8JOQWjYot93N/tTmHgJMt0S8RcccE4Xme7SJ/hFEbS7/ExCZpYZeXh5ftvtK5b4uG6F0SzYdtc45OouLb9ZNGG24hmXErqA1c8oI8zy8+a7OIv409KPS7maDOnYAXWilKXWY85eDFJlpKOCWnBWkpaWvHOwR2T2Za9iAlYe6BnqwzXqw++PKMlf6iQQ67xWnVgm5gjw/u0n53rKBSKhFpPqa9BxTAnFiTy3sjpLRqKmVQrhtvYIvb18zd3mLNdq45CUTw4KEw8GyCUnBEftOBERa5xdI/jfj4eNST+iit/8mnSLRfN2afVQ6FQgoqq5nkFyIVTIEa++H5zDnUy6riRaFQ0Hbl+Dh2utKX5g5X8/TfGxyzpe/HcPVolFAolqIRpUDZAOMxtqeNvjW2FQqEEFX8NSqFQKEElhqAcJSiFQvF/YOIpFAolKDXxFAqFalAKhUIJSjUohUKhBBWSoNRJrlAoBGmqsSgUilTFIfoKFAqFEpRCoVAoQSkUCiUohUKhUIJSKBRKUAqFQqEEpVAoFO7wXwEGAHlwcaQo2VobAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
width: 296px;
height: 65px;
}
.edrawings-settings-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAUBJREFUOBHtUztuwkAQ9fcAHADK9EmZKg2kgStQWrItUeUYaaLIttxyBppAT5s+JTlADrCSzXtoZzVirUSBlpVGO/PmzfPs7jgIbuvaGwj/EijL8s4Y80lemqb3VVV9/VYzKJjn+ajrujUKt7BJ3/cvFAnD8BXbATaLomjZNM0Pcb0SHYhPMYjMEdPcEmEC9oMLl7ROdA4wRuFO4QadbWjAjMLZvbc8Qd4ZiseWaZIkeWrbdkGjD1xEJ+SeK3qCfAA5GoQ/6rreSxF9YozJkceSPHdPUCcv8T3BOI4f0AVfk108F0XxKML0iTEmh2MkOdkHxybLshUIb5bER5FjUiwlDmyFe323HLd5HVry1DEggK7mNGAnMZubKY5zB+eQQ2tncYdOxhBzgw3/G9iUHKeinMEjq3zw319P1978y27gCHu5f826KKpeAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-close-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAORJREFUOBHtU8sRgyAQFQ96SztpIEkF6YET1Xiyh1SQpAHbyQ0OkH0Ko1kWZ6JXd0aBfW8f+9GqOmxvBxQX0Fq/yeebprl3XffhOM7GmJNz7kHbuu/7y5JTLw9x70MIV2vtE4Echw8YOIR5jmeCyIxIAz1nLprEgIETubSdLSsZEA9s2/YGPy6gZRSDT2qJKIhgLgof2aoYCEVBgEwUrqGUGUBY1sPJvf1dzJBlhyHBtpXMxXYNRRJL01zDpgKEHsY/QCwNwjHb8TuN3KQ1rtJQaqXUqzTNJAoOKUjxPxcch/878AW3ko4SQvOwSQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-search-cancel-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAORJREFUOBHtU8sRgyAQFQ96SztpIEkF6YET1Xiyh1SQpAHbyQ0OkH0Ko1kWZ6JXd0aBfW8f+9GqOmxvBxQX0Fq/yeebprl3XffhOM7GmJNz7kHbuu/7y5JTLw9x70MIV2vtE4Echw8YOIR5jmeCyIxIAz1nLprEgIETubSdLSsZEA9s2/YGPy6gZRSDT2qJKIhgLgof2aoYCEVBgEwUrqGUGUBY1sPJvf1dzJBlhyHBtpXMxXYNRRJL01zDpgKEHsY/QCwNwjHb8TuN3KQ1rtJQaqXUqzTNJAoOKUjxPxcch/878AW3ko4SQvOwSQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-assembly-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAb1BMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ2eHnR09STlZhub3COj4/ExcZ3eHmNj5KHiIhpamrKzM1wcXKpqqt9f4F7fX+AgoV+gINxcnS9v79zdHRzdHZpaWl6e3yVlpacnZ1b/PAIAAAAC3RSTlMAIJ+vYBDv348wgDxAgzEAAADDSURBVHgB7dGFbgQhFEbhdftxGAem9v7P2Etla3ctUj8J0Q+f/PfVLRdzzKbnKC365iRd4SoOVHeKwqHphqFP1RiOUijvoKvxNktpzSG63ayhlPKAsZKq77Bi2G5dpb5ABWtgchsQWjAQ5XSPsGxLqpaShd6heYZEaPCQjHfX50HqMmjPhDcwtsC6DSz0e+kdDEhpwcEN3GtKin6dg5Pp7DXFUCJ4gjKQoRzkKQ95SjAKveLJawqhMV8sefCGFvV1/XcP4pMV/zsBAlwAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-assembly-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAwklEQVR4Ae3TSbHGIBAE4CcBCUhAUk6tAwdIiAQkRQISsqeLP+tUhncKfcr6VbP91Xw0NTBoENGjhS1FRTRwaNUoEnp4GN5bJYo+B+AQ0KFTDB89W8WZCnCvmrJNz6H2vwAMPHokGea3Nuj5rGcrly1ULwPZJgc51IUyfCoB2WYH7hExyDapIMj8FwhbFgz5QvFQyhfl5CkXSr5t9m12eb1tzo+WYlH2qAYUoCpwj+rBPbrfNklMCLYN11qPkqqp+UwGB/PZo0yUDCQAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-assembly-transparent {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0yN1QxNjoxMDoyOS0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTI3VDE2OjExOjIwLTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0yN1QxNjoxMToyMC0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDoxYTlhNTI2ZS1iNjVjLTRhMjMtOTIwNi0wNDk3YWZlYzFlYWI8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MWE5YTUyNmUtYjY1Yy00YTIzLTkyMDYtMDQ5N2FmZWMxZWFiPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MWE5YTUyNmUtYjY1Yy00YTIzLTkyMDYtMDQ5N2FmZWMxZWFiPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjFhOWE1MjZlLWI2NWMtNGEyMy05MjA2LTA0OTdhZmVjMWVhYjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0yN1QxNjoxMDoyOS0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5JpfzPAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAMeSURBVHja7Jc/TBNRHMe/ldrj0R5B+qxaLTlaDb7B2IEEHJicUVcSLmLiblyNCbKQOGknE9NEzBtInBTmDkxF0gS2LqiV2hLqq0LvzueRkLr0koZAqXj8MbnfcsP73d0nd7/f9/v7+er1Ok5znMEpDw/QA/QAPcAjDn87ST6fr+U557wHwD0AdxvXGQBTuq4XWt3Xjkn42kraA3A3lG3bi4ZhfNza2vocjUbvEEJuHwR61IA/AfTUarXZ1dXVOcuyrOZzSmlE07SxVqDtvPtfarBHSpnp7u4eY4w9pJRGnINoNNofi8XuBAKBG2c6OqqK0pkE8IVz/oZzrrleg/tFLpdLUUpnNU0bY4ylbdte9Pv98bOBQAfpJCu94fDrc729RQAwDSO8Xi6NSim/cM5nAEwBKLgKyDlPArjfqD0AgBCiIoRIUUpnGWNpAFACgeyFixczIVWtOnkhVa32af3vyqVvVaNWm2g845wrgJzzZwDu7+zsdEkpFzc2Nl4kEolUc44QogIA8cTVJ+vl0ujnT6vThJAsPR/JWJZ1xTLNpG3/TipK50pvmM78qIoJN3/xJABsb29nisXinBCikkgk9kwMqWr12sD1GdMw5tfLpdHi2tenitK5EgyFVrR4/K2iKL8AoF3Atpskn88/BADGWHpwcPDRQfkOKAAMMPbqSiyWdeCOxEmEEJVcLpdyQOv1unVqnGQ3qBAiBSD1X3qxaRjhE/2CLeFMc87p3kvRy/PNMgMAtm13fa9UblqmmXQdkFIacaRkv1heXk5TSuc0TRuTUk4TQrIA8K1YvOXITMOzFyilSTcBXzLG0lLKTKFQmG0F2izcDS/Gerl03TCMhbW1teeOZ4+MjDxyrQZ1XX8MoJ8QUnRkptl7W3U9ACwtLU3n8/nM7oHC1SbRdb2g6/qDvwU99i4+btBDy8xxgf6zzDSG0Aec8ylCyGSrZgoGg8G+vr5hVVWHAGy2tW4cdqJuMflojeFiQkqZIYTcFkKkVFUdUhRlGMB7AB8AvB8fH988dsC9QJuhdF3fdH0n8fZiD9AD9AA9wJOLPwMAlxWYwtnhpRwAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-body-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAUVBMVEUAAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZub3CAgoV+gIN3eHmTlZhwcXJ7fX9pamp2eHlzdHZxcnR9f4GNj5JpaWl6e3yjeVD0AAAAC3RSTlMAIJ+vEGCP798wgN6v/4cAAACySURBVHhe7dDLDoIwEIVhAQX0TO/lou//oHaaSGOEkR0b/vWXpnMuR3d2vTWoqz2Kond/aYdBq9Tk0IoQBm5Syo8hQIZ2NqAQRq8EeG97WGtneJXahI8+vcPQQokQ/LtdcDZwu6BNhzwX6FFtwk/I81AeXYY8D4/OVIIvPiulB3SrxyySz/KRQBErsIX5ohT1xulVXai4UaEyLPQHirRAmTLUkfI8MkUkNLcrA5lmdVxnbxiMEmFR8o3EAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-body-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAQAAAAm93DmAAAAyUlEQVR4Ae3URwGEMBCF4ZUQCUgYSZx+HTiIBCQgaSUgYba/bfThRoYL9Ut74VSq1EGLRE2H01LtRXXUGG0YpcdpSLqu7mjeDvpnrzAy5+vhAVC96u5Uxh53V5Z64xqqY3q2FqR59QYfQtaD/pq3/cDHvLW7gYpI/49gONVqcOCeYqNdEwMVGwVc6CYwfwMkGpx+ITjUsnplH/vbF4HqzTD6oNKq9R6eo2CAEBoHh9E4OIzGwAEUf//LFZsQ6h+xSQFwIDbHqVKlLj7wxnPfv/GjAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-body-transparent {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0yN1QxNjowOTozMS0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTI3VDE2OjExOjA2LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0yN1QxNjoxMTowNi0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDozMTA5OWQyOC1lNDFkLTQ0YTEtOWRhYS0xYzNiMzkxODM1YTA8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MzEwOTlkMjgtZTQxZC00NGExLTlkYWEtMWMzYjM5MTgzNWEwPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MzEwOTlkMjgtZTQxZC00NGExLTlkYWEtMWMzYjM5MTgzNWEwPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjMxMDk5ZDI4LWU0MWQtNDRhMS05ZGFhLTFjM2IzOTE4MzVhMDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0yN1QxNjowOTozMS0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz7THM1bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAKiSURBVHja7Jexa9tAGMWfa2NzNY4zHA4IEuRk0lDoEEgIeMqedjX4SALZk/4FaYZ2Tb17KFzAa6rdu2oMHjpoiWsRgyDmoLYTc8hg3EUqxjiOkihqBr1Fw93BD9333vddbDKZ4DXrDV65IsAIMAKMAF9YCT+bYrHYwnXO+TKAjwA+uN/vAM4YY9aic36aRMzXpjmAs1CO4xi3t7c/+/3+b0VR9gghuw+BvjTgHwDLg8GgenV1pQ+Hw+H0OqU0p6pq0QX9xhj79BTA59TgspSytrS0VNQ07YhSmvMWFEXJr66u7iWTyXfj8bgL4ORFa/A+NRqNMqW0qqpqUdO0iuM4RiKRWAcAKaVhWdYX27bbhUJBDwWQc/4ewL5bewAAIURXCFGmlFY1Tau0Wq1j27bbobqYc/4ZwP54PH4rpTRubm7ONzY2ytN7hBBdAAgS7jE1eApAHY1Gvzqdjh40RCAmMU3zCAA0Tatsbm4evzpAIUS30WiUPdDJZDL0c05RlLxbJmooLvZMAaC8CGplZWWXELINAI7jGKlUqs0599VhAouZedrZ2anMxsxMcP8DBWAFdsV+dHd3p8fj8dw8MwkhuqZpVgaDQRXAAYBmoH+QUprzouQ+NZvNCqVU94JbSlmzbVvPZrPrmUxmK5VKbTuOY7i56ctovnrxxcXFOYATKWXNsqzqQ6CzvdgbJK6vrw2vZxcKBb1UKsUCuWK30ecJIR0vZqZ77yLXA0C9Xv9qmmZtdqAINGYYYxZj7PCxoKFP1GGDPtnFYYE+Owfd0D3knJ8RQk49984zUzqdTq+trW1nMpktAL3AXPzQm2Rm8lHd4eJASlkjhOwKIcpezAC4BPADwGWpVOqFDjgPdBqKMdYL/E0SvYsjwAgwAowA/5/+DgCxAH2aP2ivLgAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-config-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTIwVDExOjU2OjUyLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHN0RXZ0OndoZW49IjIwMTgtMDQtMjBUMTE6NTY6NTItMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4msfHDAAAAnklEQVRYhe2YSw6AIBBDB+NZ4UxwWVzpSvlMMdakbyvBRymYGGqtxsz2tUAPCaJIEEWCKPSC+8iglNJ1m5dSgudF3g8CfYISRBnqYI8Y42PBvJ09WSK4QuSJacFWWq1nZuZaAH0H6QWnt/iua52thaBPcIngWyfY7AcJLrsHzdpJ5pxdc9InKEEUCaJIEIVeMOj3G4gEUSSIIkEUesEDFyYg8ESgp2YAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-config-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTIwVDExOjU2OjUyLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHN0RXZ0OndoZW49IjIwMTgtMDQtMjBUMTE6NTY6NTItMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4msfHDAAAAnklEQVRYhe2YSw6AIBBDB+NZ4UxwWVzpSvlMMdakbyvBRymYGGqtxsz2tUAPCaJIEEWCKPSC+8iglNJ1m5dSgudF3g8CfYISRBnqYI8Y42PBvJ09WSK4QuSJacFWWq1nZuZaAH0H6QWnt/iua52thaBPcIngWyfY7AcJLrsHzdpJ5pxdc9InKEEUCaJIEIVeMOj3G4gEUSSIIkEUesEDFyYg8ESgp2YAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-config-inactive-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTIwVDExOjU2OjUyLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHN0RXZ0OndoZW49IjIwMTgtMDQtMjBUMTE6NTY6NTItMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4msfHDAAAAnklEQVRYhe2YSw6AIBBDB+NZ4UxwWVzpSvlMMdakbyvBRymYGGqtxsz2tUAPCaJIEEWCKPSC+8iglNJ1m5dSgudF3g8CfYISRBnqYI8Y42PBvJ09WSK4QuSJacFWWq1nZuZaAH0H6QWnt/iua52thaBPcIngWyfY7AcJLrsHzdpJ5pxdc9InKEEUCaJIEIVeMOj3G4gEUSSIIkEUesEDFyYg8ESgp2YAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-config-inactive-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTIwVDExOjU2OjUyLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0yMFQxMTo1NzowNy0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2IxOWNhY2ItM2ZmMS00Y2FlLTg2ZTgtYzRmOTBmZDcwZjVkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozYjE5Y2FjYi0zZmYxLTRjYWUtODZlOC1jNGY5MGZkNzBmNWQiIHN0RXZ0OndoZW49IjIwMTgtMDQtMjBUMTE6NTY6NTItMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4msfHDAAAAnklEQVRYhe2YSw6AIBBDB+NZ4UxwWVzpSvlMMdakbyvBRymYGGqtxsz2tUAPCaJIEEWCKPSC+8iglNJ1m5dSgudF3g8CfYISRBnqYI8Y42PBvJ09WSK4QuSJacFWWq1nZuZaAH0H6QWnt/iua52thaBPcIngWyfY7AcJLrsHzdpJ5pxdc9InKEEUCaJIEIVeMOj3G4gEUSSIIkEUesEDFyYg8ESgp2YAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-sheet-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MzI6MzYtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQ3LTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQ3LTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjY3ZTg2MzMzLWQyZjYtNGRhNS04ZDVmLWI3ZTJjMzAwNjdkNSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2N2U4NjMzMy1kMmY2LTRkYTUtOGQ1Zi1iN2UyYzMwMDY3ZDUiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2N2U4NjMzMy1kMmY2LTRkYTUtOGQ1Zi1iN2UyYzMwMDY3ZDUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjY3ZTg2MzMzLWQyZjYtNGRhNS04ZDVmLWI3ZTJjMzAwNjdkNSIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzozMjozNi0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+DVZIlQAAALpJREFUWIXtmE0OwiAQhV+NB9XNcIzGa7ChV/AmvREu7MIQqzO+FFm8b0MgkHzJ/ECYaq0YmdO/Bb4hQRYJskiQRYIsEmQ5ezemlJhL+5pzXl4XvG8At+DGLbgfAGYAxczQSnroFeI7npKX6MFegit+lIyGmGHdxmJmALB4DvUSnJt5wUCC7wqrFd5l+D4oQRYJshxZxe5K/cTRbWbv7lab6UY0xNG8ovNw0ucRiQRZJMgiQRYJsgwv+ACQBSKoTB7kbAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-sheet-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MzI6MzYtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQ3LTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQ3LTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjY3ZTg2MzMzLWQyZjYtNGRhNS04ZDVmLWI3ZTJjMzAwNjdkNSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2N2U4NjMzMy1kMmY2LTRkYTUtOGQ1Zi1iN2UyYzMwMDY3ZDUiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2N2U4NjMzMy1kMmY2LTRkYTUtOGQ1Zi1iN2UyYzMwMDY3ZDUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjY3ZTg2MzMzLWQyZjYtNGRhNS04ZDVmLWI3ZTJjMzAwNjdkNSIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzozMjozNi0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+DVZIlQAAALpJREFUWIXtmE0OwiAQhV+NB9XNcIzGa7ChV/AmvREu7MIQqzO+FFm8b0MgkHzJ/ECYaq0YmdO/Bb4hQRYJskiQRYIsEmQ5ezemlJhL+5pzXl4XvG8At+DGLbgfAGYAxczQSnroFeI7npKX6MFegit+lIyGmGHdxmJmALB4DvUSnJt5wUCC7wqrFd5l+D4oQRYJshxZxe5K/cTRbWbv7lab6UY0xNG8ovNw0ucRiQRZJMgiQRYJsgwv+ACQBSKoTB7kbAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-sheet-inactive-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTI6NDk6MDMtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQzLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQzLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk3MzhlYzQ1LWYyYjUtNGEyYy1hYzUzLTAyNDliYTY3MDUxOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5NzM4ZWM0NS1mMmI1LTRhMmMtYWM1My0wMjQ5YmE2NzA1MTgiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo5NzM4ZWM0NS1mMmI1LTRhMmMtYWM1My0wMjQ5YmE2NzA1MTgiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjk3MzhlYzQ1LWYyYjUtNGEyYy1hYzUzLTAyNDliYTY3MDUxOCIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMjo0OTowMy0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+MCXPfwAAALFJREFUWIXtmLsOwyAMRU3VD00W809ekj91lwwVilTjGyjDPRILAnEkP0AUd5eVef1b4BcURKEgCgVRKIhCQZR3dGGtFbm0dzM7vyfCbwB3Dw1VTQmqql9jy5w7K8S7iBytZIQpgld4U5LTiiQrGS4ShJv8PUTkjOwdLmhmpZ3rKbjl+yAFUSiIMqyKs1djy9A2c9diRNhm5tIV4t68eiIPCz+PQCiIQkEUCqJQEGV5wQ8SxXDRRWVnjAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-sheet-inactive-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTI6NDk6MDMtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQzLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjUzOjQzLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk3MzhlYzQ1LWYyYjUtNGEyYy1hYzUzLTAyNDliYTY3MDUxOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5NzM4ZWM0NS1mMmI1LTRhMmMtYWM1My0wMjQ5YmE2NzA1MTgiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo5NzM4ZWM0NS1mMmI1LTRhMmMtYWM1My0wMjQ5YmE2NzA1MTgiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjk3MzhlYzQ1LWYyYjUtNGEyYy1hYzUzLTAyNDliYTY3MDUxOCIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMjo0OTowMy0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+MCXPfwAAALFJREFUWIXtmLsOwyAMRU3VD00W809ekj91lwwVilTjGyjDPRILAnEkP0AUd5eVef1b4BcURKEgCgVRKIhCQZR3dGGtFbm0dzM7vyfCbwB3Dw1VTQmqql9jy5w7K8S7iBytZIQpgld4U5LTiiQrGS4ShJv8PUTkjOwdLmhmpZ3rKbjl+yAFUSiIMqyKs1djy9A2c9diRNhm5tIV4t68eiIPCz+PQCiIQkEUCqJQEGV5wQ8SxXDRRWVnjAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-view-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MjY6NDAtMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjI2LTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjI2LTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmZiMzMwZDhlLWFjNjYtNGFiMi1hYmU5LTRlMjZiMTk0ODBmNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpmYjMzMGQ4ZS1hYzY2LTRhYjItYWJlOS00ZTI2YjE5NDgwZjYiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmYjMzMGQ4ZS1hYzY2LTRhYjItYWJlOS00ZTI2YjE5NDgwZjYiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZiMzMwZDhlLWFjNjYtNGFiMi1hYmU5LTRlMjZiMTk0ODBmNiIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzoyNjo0MC0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+vPTXdAAAAd5JREFUWIXtlqFSI0EQhr+lEHFE4ogDx6JOgkMGFOc4TCPv8gTAExAkbYAnIPcEd0gUK5E5d+ci44Lo3speaoHZTCgi5q/a2t6tnp5vu6d3JptMJiyzVj4b4D0lwFglwFglwFglwFithjhlWQaAiCxk21HVLHQHCwKc0cUcY6o6a+K89CVOgLFaesB5mqRObeALkAMt4Bn4CYxjA8cCdjCwLX8uMKgcOALuIuPPBdhyoF0sc2PgweFG7vMP6FbGdIBN9/8YQBHJ3fzukH+xMhY17iVIjmV4HfuQkce6BHoh8wY1iYjsAU8+wdivRwfpzLjvY9kFy2IL+5Ar4Nrf/wiZF8IzeAYMgR0H+sW0hLtMG2ITyxpYozz6uLkVCrgH9FR1BBQiMgC+Ylnp8v96w9+PauKUzTQMBWzyHywq9h+sdGW5AU6Yrqst6nXk98PQSZsA5hV7rQKWA31VvVXVPvAb2H4lxh2AqhaLBhwCxwAi0ga+YWus1MOMvf5GnEYKBewBuYg8Yd3cxhrgwxXUJKo6EJFD4IbpP+604tIFBhUbGp77XlPQybY8UddJRM4d5gLYwMp/oqq3b8UMPVFHAzrkPXDgj31VfXeXWCjgZ2rpz4MJMFYJMFYJMFYJMFYvbOt2whCfsgUAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-view-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MjY6MjctMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjMwLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjMwLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmYwZmE0ZTZmLTlhODYtNGQwNy1iNmFiLWYyZDYxY2JjZWI5NiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpmMGZhNGU2Zi05YTg2LTRkMDctYjZhYi1mMmQ2MWNiY2ViOTYiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMGZhNGU2Zi05YTg2LTRkMDctYjZhYi1mMmQ2MWNiY2ViOTYiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmYwZmE0ZTZmLTlhODYtNGQwNy1iNmFiLWYyZDYxY2JjZWI5NiIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzoyNjoyNy0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+y/jFFgAAAdpJREFUWIXtl8FRAkEQRd9a3iUDIQLXDDACMQLh0lclAjQC8doXyUAyUCMQIxAzIIPx0L3uFoIMDpYc5ldRTM32dr/t6Z6dLUII7LMO/htgkzJgqjJgqjJgqjJgqg5jjIqiQETawPsugqpqEf0GCyFs/FUSkeT3YuUjJm4IYf+XOAOmau8Bo7p4k7zDr4A+0AKmwEBVF6m+kwBFpIuB9XxqAiww0EfgLMU//AJQRFoONALaDnQLTFR17jZvwEPjni5w7vZ/AygipQ/fsWWcYcs4WWHe9nv6WIZL7EEWPn8HDGPiRjWJZ+C1CuD/90DbrzVt77DsgmWxBQyAjqp2fP46Ji7EZ3AEzIFTLDtP1Es4EpGBQ59j9QfWKPeq+hwLkwLYBYbelTMRmWJ12HHQhyX7TlWPTYlIz4ffrq3TNvvgrDH+AFoOvPC5C+q66rFajw3bKG0DWDbGR9RgfWCsqlNVHQPPwOUaH2cAqjrbNeC8CurbTB+rsUovS+NylZPf1GMs4BAoReQV62awLv5zRR0c/cDao66hZU1UdQDgD1H+5G+bA2s04DqJyA22Dd0Cx9jyr9vAvxQLuIvDwhg4od6cx5vgtlH8t8E/ae/PgxkwVRkwVRkwVRkwVZ+amM57J4z7DAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-view-inactive-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MjU6MTctMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjE4LTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjE4LTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdhM2JkMzVlLTJmYjQtNDEwMS04YWJlLTU4ZDg4MWUyYWMzNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo3YTNiZDM1ZS0yZmI0LTQxMDEtOGFiZS01OGQ4ODFlMmFjMzQiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3YTNiZDM1ZS0yZmI0LTQxMDEtOGFiZS01OGQ4ODFlMmFjMzQiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjdhM2JkMzVlLTJmYjQtNDEwMS04YWJlLTU4ZDg4MWUyYWMzNCIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzoyNToxNy0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+2PEDgwAAAhRJREFUWIXt1r9rFEEYxvHPJqImWghRNOoREyQWFlqaIljYmjZ/woitdUrxXxCmEOvUtoc/UbAQxUZSSCCQNB5ikCAxyVnMHAbNJZvshVyxDwy7d/vyznefmffdKdrttn7WwFED7KUasKpqwKqqAauqBqyqY2WCiqIQQhjBo15MGmO8V/YLVgowJ22FEOD1Abk6mt5PcN8vcQ1YVX0PWLpI9tBpXMW5nPM7PmC9auKqgKNo4Ez+/Q0bOItbeFUx/4EAj+MyxlHksYxF/MwxE5KjHY1K7p7EyKEAhhAaOfltbEpOLeHrDuHD20AbGMxjAz9CCLOYLzNvqSIJIUxiLgP9ypMtS26O/hN+ExcyzIRkwiJe4nn+/06ZeSnv4AxaeCi5+ABj0gtuYUhydUTajwNYzS+0UhZmJ5VtM5NoxhjXYoxL+CS5+AJruJLHqTze4v0OcGP52uo1IMmNjlpoS21kHb/xRNpXq7jYJcc1nMfjwwBsbLsfyoCk6mzGGN/FGJv44v992dFntPIq9BSwhSkIIQzn+84ybWJhW+wCTnTJsyIVSWmVLZJ53A8hzEkt5BLe7BI/uB+I3VTKwRjjR2nfjEt7aAvXpbPdsNRaOrohOTjdZexLRZmTbVEUXZ+FEGZwF8+kNjOFpzHGd7vlLHuirgyYIWf9bb7NGOOeX4meAh6l+v48WANWVQ1YVTVgVdWAVfUHEQaCdo3QjqkAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-view-inactive-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTgtMDUtMTVUMTM6MjY6MDktMDQ6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjIyLTA0OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA1LTE2VDA4OjU1OjIyLTA0OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjE5OWI0MzE2LTA2NmMtNDY4NS1iMjFlLWU1NWY1ZmRjYjQyZSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxOTliNDMxNi0wNjZjLTQ2ODUtYjIxZS1lNTVmNWZkY2I0MmUiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxOTliNDMxNi0wNjZjLTQ2ODUtYjIxZS1lNTVmNWZkY2I0MmUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjE5OWI0MzE2LTA2NmMtNDY4NS1iMjFlLWU1NWY1ZmRjYjQyZSIgc3RFdnQ6d2hlbj0iMjAxOC0wNS0xNVQxMzoyNjowOS0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Uv5KzAAAAeJJREFUWIXtliFQIzEUQN8ymKstktraW7saSy0W1L+pPQnIOxya4atia8GupRZsbXVtkTmRv2ym107TpgwVeTOdpkl285L8n6ZwznHIHH23wCayYCpZMJUsmEoWTOU4plNRFIhIF7jbx6Cq+iv6H8w5t/HTICKPqXLNO2LGdc4d/hZnwVQOXjAqizdhGX4GVEAHeAOeVHWR+u4kQRHpm1hpVRNggRcdAvcp74cdBEWkA/wEBkDXhF6AV1WdW58ZcBU808dPovtlgiLSs+Jf/DbOgGdVnazofmLPVPgV7uEn8mH1F8A4ZtyoJLEVuLVBsO8aOLG2sO8FcG4/r2wyI+BGVa+t/ixmXIhfwQEwB/7gt+k37Raei8gIvzolPv7AJ0qtqtNYmRTBPjC2rFyIyDs+Dm+Ay0C24bqJxxARKa34X9s6tjkHZ0F5DnRM+MPqHmjjqmQ1w6Dv3gV7QfkHbTxW+K18U9UamNJu8zL3AKo6W9O+s+C8GdSOmQp4D9qnS+VwMp/sEo+xMTgGhiJyi89K8Fn85RQxF0e7sJa0MbTMRFVHADaJlSvYsM2FNVpwHSIywJ97L/gjqAJGaw7wT2IF93FZqIFT2sO53iS3DVEr+J0c/H0wC6aSBVPJgqlkwVT+AcI1zYWjA9KhAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-table-visible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTA5VDEzOjMyOjIzLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowNC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowNC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0NDczZTcxNi00NzRmLTQ0NTYtYWJhMy04MDgyMTEzMjBiODgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDQ3M2U3MTYtNDc0Zi00NDU2LWFiYTMtODA4MjExMzIwYjg4IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NDQ3M2U3MTYtNDc0Zi00NDU2LWFiYTMtODA4MjExMzIwYjg4Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NDczZTcxNi00NzRmLTQ0NTYtYWJhMy04MDgyMTEzMjBiODgiIHN0RXZ0OndoZW49IjIwMTgtMDQtMDlUMTM6MzI6MjMtMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5oZudxAAAAi0lEQVRYhe3YsQ2AMAwFUYxYjGXITGEZRgsNJWCHA+Hiv5KkOCmOImGttSGz8e8AjwIpBVIKpBRITZFNpZRPnptaq3l7QoGHFbScWSKb0h+xAqmeGQzNzNt6AueL7xtYc6U/YgVSPTN4NzNP11y6JJQCKV0SZ82V/ogVSKW/JKbfb5ACKQVSCqTSB+5FWht4AZmFNQAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-table-invisible {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTA5VDE1OjA1OjM1LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowOC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0wOVQxNTowNjowOC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0YTVlMTBhMi1hOWIxLTQ3YTEtYjIwZC04MTgwYzUxNGI4MTMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NGE1ZTEwYTItYTliMS00N2ExLWIyMGQtODE4MGM1MTRiODEzIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NGE1ZTEwYTItYTliMS00N2ExLWIyMGQtODE4MGM1MTRiODEzIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0YTVlMTBhMi1hOWIxLTQ3YTEtYjIwZC04MTgwYzUxNGI4MTMiIHN0RXZ0OndoZW49IjIwMTgtMDQtMDlUMTU6MDU6MzUtMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz62qDtKAAAAjElEQVRYhe2XwQ3AIAwDQ9VZYSZYNt2gceW2+OGTeBHBoSSKaJkZyhy7BSosyGJBFguyWJDlRILGGJ+Mmzlnq2IgwYiItVZ52BN679Cj5VNsQRa4BtGaeZ3MLNedHLOH3C2fYguyNORPsnOSuElYLMjiJrnbc5P8gbygfJNAgjuRT7EFWSzIYkEWecELXZXhGLO9gcgAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-list-option {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAKY3pUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHja5ZlrcuM6DoX/cxWzBL5BLofPqtnBLH8+ULKTOMm96dv9Y6rG7liyTIEkcIBzoDbrP//e5l+8QizFxCQl15wtr1hj9Y2TYq/XdXQ2ns/rS7x/cx+vm+cPnkuBY7i+5nWPb1xPbzfIPd71j9eNjNtOuQ25p+HzCjqznt/jym0o+Ov6YyGm3ve1+G47958ft9nb+Ov3KDhjJuwFb/wKLlg+vc4SWEEooXHMfLoQ/duVyievr31nnqcvznuevfjOtvt6+OgKY/M9IL/46L7u0sv18JzGf4za28wffij14d7Pvtt7lr3XtbsWM57K5t7UYyvnjIEdV17eyLyFv8S5nHflXdjiIGKT6TrvYVx1Hm9vF910zW23znG4wRKjX144ej98ONdKEF/9OEGJ+nbbC2GYhoj4MIha4LJ/rsWdeeuZb7jCzNMx0juMOe749DZfXfwn76ehvdW3ztny9BXr8opplqGR009GERC3b5+m49/zNu9wY98FNhDBdNxc2GCz/TLRk3vDVjhxDoxLNhp7pYaTeRvARcydWIwLRMBmF5LLzor34hx+LMSnsXIP7DsRcCn56cwmNiFkglO8zs094s5Yn/x1mdJCIBJJI4SGRCFYMSbwI7GAoZZCiiallJOkkmpqOeSYU85ZstaoJkGiJMkiUqRKK6HEkkouUkqppVVfAyUs1VzF1FJrbY1JG6YbdzdGtNZ9Dz321HOXXnrtbQCfEUcaecgoo442/QyT9J95ipll1tmWW0BpxZVWXrLKqqttsLbDjjvtvGWXXXd7Ru2O6seouZfI/XXU3B01jVg84+QtalwWeZhwWk6SxoyI+eiIuGgEALTXmNniYvQaOY2ZrZ6kSJ6ouaTBmU4jRgTjcj5t94zdW+T+Mm4mxV+Km/8uckZD9yciZzR0d+Q+x+2LqM12GCWcAGkWqk9t2BQ2BqzSfGnKSX9z7IvwFXxI2vpYJHo961K22dOXyoBo224shQiPFmXbqmnhXada7VX3TnNFbK2yh/RjyKdFJeQsj31WFLOfUlqS7qWwseTjtpI2t80aVmJvzFF6WkE+rK9yLz6lCKdhls1KsjWtVNdZ6Cbo6pSl5adZJml9VztX8300Gdkz50gijeLe7zFKRyAuJmXe3zqar36Qqd7MMA5gY0/HD/OsNsqoafvyaYx5GRSRGRUm2GwwLt3gxNGrjAQYctscXNXRozS5nK6uhiAvV1d2CSpwYohJ6ZVc2TIIKSAVwBdksVgXGOp2mUwQ8+zrBD8LfjJ+5s4/n/uoYeQzmw+sUWCmoN+myx0bOoU7s3x5NN/98INj2tGz1rhLlWUcVersOazpd+yTAiy7B+DnVt6VncxKvGfvfGY3Wqtu2hLYxpKOM2xYzU7DVxBfcHR0Lcbd0qoKnNn8zty+0pCdc01B8sx2SM3JBqAjbYoPwC8tuw6ywd8aHfyJrqxZVtQ6S2fNLrKiGCQ1zQ5JoSZKE86Ms1ER9GLtY2pemwlc6x45RsX/2pG83524wnOEAeoaHRzvKwgxLYGSTxAooxgasZ2UYUXXye8ePxvyc1HBSsS3uUGja9hWpo9SB2WeBUPEsxSguUrYy6GfcKn6KKydWbqCbm/4dzRNFDcTYmmv1gAfJUS9uIumhG/ItRJ3T9xVt1xoM325A/TS2kpZq8NiguXCnsBgyYuJQBWdKR7A9K7pM7clwwaULb4rvoiJ/mzrWu3gW1cq71ZaHFvco7eqnwKXND+qz8ErMaLYsCFeyKo2f6OYGPtHqtH/hyFqVuU9AKFA1pCrI/VDWJIbXDUgibiVZYqHesGHXZMKuQjq3uSOIbQjJXcy+PsElooyt7I6t516cDLPn6NL0OAwaE5SdQ8omYsU0AM2sEdlch1qP2YAFEIdyhYdeQrtYxwYtRvFptb6F0ZybXNq1RoQ/oLfpyjQdTHetwuiVXSKMEuawUwoGg72OQ44dqBaUBlkpnTXKGhwx9xOLt6YTg7m7ampWmeYyF3Ea36gHH50fG+oU5e1aJEyg5rt27aRKtegQrSOluoxB6GEdWzNgbqddfVo/ObYmouwOFIPMQIBnExGhbELuPHUBfRHVWdhgSoQKBdr2zapuExRJlOIR0TMjtzzY/tBUV+LTF6qVoXOeO2EjVd2nW/s+p5cjVtxIjhpuw9MqQFFBSeEDiDgbCVY4o+CotyPFlSMuFuMyBEjijc/DayiRncZNwTGeyKGh9mUzX/vb/PPAsX6KLfhQnhsAmVfs58dN7Ro2zWqUoQzg8MTcLLP06G503BI03YQBBDV/amPfABa5zqGjlqgZ0XcIXTRm2g8tlY0LWRgndyrMkkzKBpH2Jy1z5yP/I9oQDNVAcMLqKGYbRHPGI8vX9TLcZlSloqXRMKhIODryJwhIwu9GX16pqpHTtkf6JdvjuZn+gUGG+5I1YoEI/6IJ/J31RhVCaIWTUamAQsP5mg3QhTF0PSSqmqbMhxpQ/tAlbJ9zTkGIPWDTgbtGAC3BqmHIaar1y/lrXBVcfCQ3Sj6U7iEyRNsRu9Cd1OR9ZU4Q2jKYpXlUD6L8UEfdOwENpxSebBXBT2AUJTYdpkLuA8SjsSBcrn8oIuZJG+f9DaH+wHLKWi2VbUEKPKxpLXYUU2L1shGT07L1XY4WVcAYTpnSCL8V6Kho3HJzsFmduoRpyTmcCdh3qbQBG0UufFW5MIljh9FzlDlVFt0mhbVFusa5q9sjzOj7BQusoUPGkgvh1s4y/ZwC1onwC1GFdGf0FrmJwOhM08PG70r0JbqjbRZ1KkyNdFANNVHc+dCu8GxoVvoI6GpMmzKGgx8nH+2JvNHBOT/hqF2RKug4Bp54Uyisxqle6T5cOKjXaonigM3l2pNW0WlSsHtjmidmjkH6Cpbk4pW2MC0prIAxKvk7EdyXshCVB7VWi7V2m9yKpqnR7ZeohUwHtFqXkzAbAjjIwhGOppVu0KQSZqoaH1I1uLyLVlZp0pWcy/00qwq01n+oB4G+vRY3QrIkaqZbTcQVlLxbX6htcwfEGuXIaEUILnDck2uZov+rV99G9SJPEeChA1d51h3rle/VdOMYts4D9xPl2S2K6oaqART8nlUcfU+iBaVSQ2tpS3ePQ18pD1dy/R0kaqGprenp6vmTLLzWpkKVnL2VGT+6AcIsJ15dW3Hw4DX9RG/n7BZS6FVWklNPc2zApmbqxnDle+bMW3FVDv4GmAzPRFqumLA04DQQMpa+13P5ps3fyhDPhnaijJ7pMsHmXREEs74doTZDx2FTLvY9FD5fuv6D5Pz18P3TyiIWtRHD/l6iqNPHifFPvgWiyx9hJX0/2+KknNddMuYIQf6w0xXV05MhW1cu4t5/6jFUpv6Hwg/xqT5VRDLFOQq08DdpHbVp5F+1mCI+KEc5L9PwsoO0bNGpfrPRE/xoBAFqDaietwEB8grOmdSRG7ZowK1s+HzCO0bGn+vMBr1yKGPk0/eLcMch+LCBGnQMetFJ/TrYcIpFPn5uGCjVb8jSfNsBez6RSEJQgC7+S9A1/Xu3WIypAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+IGDhYKC41RfHoAAADUSURBVDjL7ZKxaoNgFIW/+0sgoIMg6NC5S5+mS+eMmUUIJHsbCFnEJ8jc9xH6ACEoZKpCIb//zZRVQ002z3a4h8Pl3k8YUJqmS2APnJxz73mel3150zesqmouIp9AALwGQbAaWqC3UEQ6oLr5ruuOowrjOL6IyIdz7gB8tW27ZdLTJUOBLMverLUrY8zRWrstiqL595frup6p6rcxZgFsfN9fj8JGVT0guXnP815GFSZJ8qeqa+AsImXTNLuHHDoMw3kURbMJuYnD+zncAL/Azz0cXgGALF6GgptDtAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-select-face-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA2VDE0OjQ3OjA4LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wNlQxNDo0NzowOC0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo4YjYzZmQxNS1jMDQ3LTRlZDctOGY2Ny1mZDk4OGUzMGY1N2Q8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6OGI2M2ZkMTUtYzA0Ny00ZWQ3LThmNjctZmQ5ODhlMzBmNTdkPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6OGI2M2ZkMTUtYzA0Ny00ZWQ3LThmNjctZmQ5ODhlMzBmNTdkPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjhiNjNmZDE1LWMwNDctNGVkNy04ZjY3LWZkOTg4ZTMwZjU3ZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz7+oEb4AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEZSURBVHja7NjBTcNAEIXh3ygFpAQ6sOkAOkg6wJe3RygBKoDzXOIOSAehhHRCUoG5bCQOOewabA3SzNW7mk9ez8zKzTiOeI4bnEcAAxjAAM4cq5JFKaUvYD0xx2Bm/bUHJUOiKVmUUros6s1sKJVJWgMH4HgNWZK75oh7YCfpsXSDmZ2AB6CTtMvgeb7B/OZ+hQQOtciqIvkDJLXI6ipeGrmaUpZmNkgiI1vgXLH9E3jOxXM3C/AHss3JpkS3RKM+M3PEqAvgvwFK6jwD+9xcb10C8/TYAx9TBv4iR5yvSyfgzXORbIF7SS8ugXngb4EnSRuXbcbMjpfbDNC67INmtgdegY1LYEa+A8PcwCZ+vwUwgAEMoO/4HgBc73FOJB2WigAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-select-edge-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wNlQxNDo0NTo1NS0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA2VDE0OjQ3OjEyLTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wNlQxNDo0NzoxMi0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDowNGJkZTA1ZS1iODNiLTQwMjUtODgwMC1iNTM2YzBmZmU4YzI8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MDRiZGUwNWUtYjgzYi00MDI1LTg4MDAtYjUzNmMwZmZlOGMyPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MDRiZGUwNWUtYjgzYi00MDI1LTg4MDAtYjUzNmMwZmZlOGMyPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjA0YmRlMDVlLWI4M2ItNDAyNS04ODAwLWI1MzZjMGZmZThjMjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wNlQxNDo0NTo1NS0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4OzNuOAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAE+SURBVHja7JfBTQNBDEXfoBSQEuggoQPogHSQFZLnCB0kVADX9WW3A9JB0gBSzjRBUsFy8V5QkGaXTDIHW5rT2vKTx/6eDV3XUbLdULg5oAM6oANmtkmKU4zxG5iOzNGqanXqQ8qSCClOMcbeqVLVNpVMRKbAFtifgkzJPeSKK6ARkWVqgKoegAdgLiKNAefpQavcvyCB7VDIQUNyBkiGQg6e4ktDTsaMpaq2IoJBzoDjgPAd8GLDc5dNB62S78ATIHZWCaFH4NV6Mk8FfyX7Aj57ZVHVdaIErbL0oK86B7wWoIjMSwasTFxviwQ0zdsAH2MW/kWu2J5LB+Ct5CFZAPcisi4S0Bb+AngWkcciZUZV9/1rBpgVqYOqurGFn72KSf8kIYS/tLEBlmOT13UdzgLoq84BHdABHfB69jMAew59NxTJKcwAAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-select-vertex-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4ImlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA2VDE0OjQ3LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wNlQxNDo0Ny0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpiMDdlYmNkMi1hNjA0LTQxZDEtYWY4YS1iOTQ3N2NhZTYwMmY8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6YjA3ZWJjZDItYTYwNC00MWQxLWFmOGEtYjk0NzdjYWU2MDJmPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6YjA3ZWJjZDItYTYwNC00MWQxLWFmOGEtYjk0NzdjYWU2MDJmPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmIwN2ViY2QyLWE2MDQtNDFkMS1hZjhhLWI5NDc3Y2FlNjAyZjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz49LvmcAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAFmSURBVHja7JfNUQJBEEbfWASwIZiBkAFkIBmwl96jGoESAV7py2IEkgGQwWbiGgFe2ioOrPaujE5Z08fdnppXX/9OOB6PpGxXJG4ZMANmwAwY2UYep6qq3oBi4B0bVS3P/fAMieBxqqrq06lU1Y2XTEQKYAc05yA9d/cJcQnUIrLwHlDVFpgBYxGpDThODppyP4IEdn0h3SFW1WBhWwA1sAem5tJa+LeOcAPMVLW9dIhPlTyFwwroVUTGDiXpo+RoYGVOO76vROTwzdk9cG9qTn67D3pUeQeWlpPRFGw7YF5U9dnZgh5jTpJzjbfxwkUfdVatE8unPfCgqhMi2OAcVNUGOACHGMr9v23mqx6XAmBpzfU6SUCbHlubFkWSIbZ1qQVWKW/Uc2AqIk9JAtrAnwN3InKb5JvE+l9pK9dNko8mmyRLILqKroU1hNDVG2tgMfTy9XodLgKY38UZMANmwAz4d/YxAMrokLa9YBnnAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-select-hole-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA2VDE0OjQ3OjA1LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wNlQxNDo0NzowNS0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDoxMDlkZTNiNC03YjNkLTRiOTktYjU0NS0xNzNlMDFhNzIwZTA8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MTA5ZGUzYjQtN2IzZC00Yjk5LWI1NDUtMTczZTAxYTcyMGUwPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MTA5ZGUzYjQtN2IzZC00Yjk5LWI1NDUtMTczZTAxYTcyMGUwPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjEwOWRlM2I0LTdiM2QtNGI5OS1iNTQ1LTE3M2UwMWE3MjBlMDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wNlQxNDo0NTo1Ni0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6CdhcLAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAHoSURBVHja7JexSmtBEIa/I2mFgCDY6QNcVKys1AcQkvJ2nmZOqW+Q6xNEGyHTJD6BB6ysog8gROys0l24ICZYCLeJzQiLJLJ7dI3FTnUO8y/zsbMzs5tNJhN+si3wwy0BJsAEmAAjW81HVBTFE1CvGKOnqvk0h8+QyHxERVG8iXJV7fmSiUgd6AODaZA+sUNSnANdETnwXaCqI2AP2BCRrgHHOYO2c5+CBPqhkEFF8gWQhEIGV/F3Q9aqlKWq9kQEg1wHxgHLr4EjK57NaH3QdvLEzlaIjYFj33U1Pmdj4EZV/4QuFJHWdwDOCt5wdmigqmXUSRIAtgFc2O85sAO0RGQINFV1MLdZLCKrdvBPVXXN0j6yovhrlbs6z8tCCyhV9cQZc7vAI3AP/DNNHEBL30fWAE6d/zbwYoAAt6aJAph7pKgODEWkISJ9YB+4cvzPVW5EXoDW80rg4oMJMAKegDNgEbgE/jv+JdNEuyzkFqA9Q1ICDwZ2+w4O4JdpohZJE9gVkWmN+RhYNhCmwC2bJh6gDfwmcGjN2PUN7TKwAvwGtoEt+14B9kwTt1Gr6kBEcqBrPe7O9QFrc58kqlpaRbddQNdf5bxVfpNkWTarN3aBg6rBO51O9iWA6V2cABNgAkyA87PXAQAHpMitaDNzoAAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-select-point-to-point-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wN1QwOToyNjoxOS0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA3VDEwOjE1OjQ2LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wN1QxMDoxNTo0Ni0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo4NGU4MGViYy1hZjI1LTQ5OTQtOGU1Yi05NzM3MjFmNmMxMDU8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6ODRlODBlYmMtYWYyNS00OTk0LThlNWItOTczNzIxZjZjMTA1PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6ODRlODBlYmMtYWYyNS00OTk0LThlNWItOTczNzIxZjZjMTA1PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjg0ZTgwZWJjLWFmMjUtNDk5NC04ZTViLTk3MzcyMWY2YzEwNTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wN1QwOToyNjoxOS0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6YGX6BAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAGpSURBVHja7JfLbcJAFEWPoxRAKdBBXEFIBcGbt02oAKcCwtJvg0twKrBSQUgHlOBUQDbPkQUG/8YIRTOSF4wH+8y97zMODocDtzzuuPHhAT2gB/SAI4/7NouCIGj1MBGJgVX5W1Ub/9jUKLzFV7G4pb1T4AV4B34q8wtgDYSquuv63KDNYaEpBg0uB5aqmtbAbQz+BHL0GGyA29p8DCyB3NZfJwZbKPcGrEVkavc7Q945gNucUe6potzayk5nyF4xKCITg9upalSj3N6mQlUtajb3t4kkSTKnCjbAbYEICG06t/XjlhnrEOV4vAAHMFHVQkRC20gOzOo2oqpZkiROYnBVufYXlIuArYjMzdoQ+DgDl45VqL9rXrgHMlOuAApLigKI+8IN6iQi8lDWOeDZ4i1U1exCUnSCG5LFU+ALSFU1qiTOSeY2wTnvJJX6lwILEVlU4g3g1YVyQywui3MsIp8GkBrkzCVcL4vbnE66wDm3uKlduVJuUC8+gpyPBTf4PHhUpOkD1/T+wQfWozbXWbnRAQ1ybtZnXS10Aui/6jygB/SA/xjwdwB6Uinx95ku5wAAAABJRU5ErkJggg==);
background-repeat: no-repeat;
}
.edrawings-show-xyz-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0wOS0wN1QxMDoxNDoyNi0wNDowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTA5LTA3VDEwOjE1OjE3LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0wOS0wN1QxMDoxNToxNy0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo5ZGU4ODFmZS0xNWEzLTQxZWMtODBkNS1hZTI0MTNjNzlkMjk8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6OWRlODgxZmUtMTVhMy00MWVjLTgwZDUtYWUyNDEzYzc5ZDI5PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6OWRlODgxZmUtMTVhMy00MWVjLTgwZDUtYWUyNDEzYzc5ZDI5PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlkZTg4MWZlLTE1YTMtNDFlYy04MGQ1LWFlMjQxM2M3OWQyOTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0wOS0wN1QxMDoxNDoyNi0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQwPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6nzS+KAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAHJSURBVHja7JbNbcJAEIU/R7nHJZAOXILpIKkgcBmOMRUAFYQcmUtMBdBB6ABKSAdxB+TyLK0sHBlkEIcdaWV79sdvZva93eR4PHLP9sCdWwQYAUaAEWAEeOf22GVQkiQAmNlcrhLIgQGwc/fdJT/vcsw+XrDuDHgTuApYhp2NIDK1i4M4q8TuPgcOAgcwdveqJYiN2jvwc8s9eAjed/8Ekcm1cPfbADSzHBgFrk3L0EUdjLsvb8JiM0uBL32+Kku5mRUnhleN53VZrNJVwHPg2t5CZpIuVK9lpm+7isyY2UDMfAnYjJi6BT5PkUL7N2+4532TpAD2QBGAq9QG8u9b9mVtT5KhWa8lNrMvMXgHpIGMvCp7exGnUqZKdx+fCHKvudPVarXsJYNm9iFwpbsPG+zcBKWr1F8CI81rrpMB267y07XEhTRt3CIfH6Ff4w6aV4N7qdcBxn3rYAlkZjYKhLg6oX0LgRkpU2XQnwXPXzM79rYHJ5NJCnxr8YW7z8Xm8FQp3f1Hl4WZMjVsOas7y8w5JEn140KkWDfO4jy45SzdfdqHDp4t1NKzN+lg2ijxFlh3vVr1BjBe+SPACDACjAAjwAjwavY3AJj3vflH+4lwAAAAAElFTkSuQmCC);
background-repeat: no-repeat;
}
.edrawings-markup-text-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-circle-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-rectangle-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-polyline-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-bezier-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-markup-image-icon {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADc2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU0OTExLCAyMDEzLzEwLzI5LTExOjQ3OjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjVlMzcyYTc3LWQ0NzUtNDg1Zi04ODEwLTdjYTUzZDcyNmI4ZiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNTcxODA4ODRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNTcxODA4NzRCQ0MxMUU0OTRGRkNEMTVCMEUwQzIyOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1ZTM3MmE3Ny1kNDc1LTQ4NWYtODgxMC03Y2E1M2Q3MjZiOGYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NWUzNzJhNzctZDQ3NS00ODVmLTg4MTAtN2NhNTNkNzI2YjhmIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+jzJBcAAACJhJREFUWEflWHtwVHcV/vbuM+/NhhDCK0MNrWEAa0U7VMBHOxXBQksLio/R2o52nOqogOOjtuMMINMOMoqKKWqNDxxQa6vtDP9QR+goMZOUtikEG0AeeZCQZDebfWb3Xs937v5iAoEizigdv5mPvffs3Xu/+/3O+Z0TPI4A1zGswud1i/8fgcwU27aRz+cxOjqqzGazSh7ncjklv+/p6cHOnTsLv7wy/iOBFGTEZDIZJJNJJBIJjIyMXELGSV5TXFyMgwcPqljySmVwTUVCYXTDuEQMD15AVJhJp2BZXo2FSkqRzrnO1tTUaMzn8+Ho0aNobGxEU1OTxvx+v8Yt61K/rlogL6MoIjXYh7O/3I5Qx18QF3cIxx9EuT+PWYtug7N/t8Y+ll6KmQ0LsW7dOiTiMY21traipfUlVFZWYuvWrRoLhUIIBAIq1Ot1X87gui+Sq3JQc02W8tQTm/R82sBJFN95L5xpc3A47r5jaXIIueQw6o8/i30/eFpjqQ3bcd+9a5DJjuL1jnaN/e6ZP2DJkqUIiWO/3rtPYxs3bsTChQvHnCTMcr+hgxQX7zqDrvVLUf+uJcrwE/tglRTBH8pjwVCbsu58Cxq83QjPrMHzfVDW19fjr4eb0d3dLfk5qPT7A5IqeRz+WwtSqZRyw4YN+slCM0VnfLusgxRGjPR0YeT+FZj2nUZ4yoo15vSdhpNPwFs7A8i5OWj3n0W+5U9IHnoRd7zgxh7e/j309fXhwoULurUQpqii0Sh6e3v1mK7t2bMH5eXlWuFEUVGR5uOkAhlKJxN63H3HLah7x3x4H3xA/HaLxFMagn36OODNIb3/jxrLvfaK3MxG19pH8NEdv9LYqlWrVCC3mYGBAY0NiovBYHAsTqxa+QHcNG8hVq9ejbKyMo1RKIW/OYuEy3Diy5/V4xv2/gzWbW+H75EviXN+jSEVQ+bp3yL96stit5sKcgCP/Nv5mR9iw/ZdGpk9u06Xl/eLx+MaS6fTumEzxu+IqqoqLYrFixdrwRANDQ1aNJc4yJ093vIiTr+wX3nL1Hno7zwtD4/COfGycuRb23DoyHnsL27AK0WzlPKuIlFS4sIARjNpZXt7uwrispqCILNSDG+tn4Pl71+mnD6tBtu2bdMlHx4eVpoO41NVBTDACkp9exN2VNdrLNvdi/zIMHI7n0L+tZMa+0X5HPy55iYEA0F9S2JLuhu+fA59KanCwobe0dGBRYsWqUiSoHN8xpq770JpaYnGfvTjJlRXV2Pz5s0Ih8MaY5GSExzU/U5alRMdgL+sQumT80g2B/vAEWBICkf495x3rL8mY1Gllcgh2jGIEy+1igNxJcU3NzePPYxkL+ZvH938OHY2PqU8euy4OsbvDUzmXfdFMmGJ2WtTv/85SorymCEbMfHgUC+C8hqOR97Ict9w9cAp7IIfoZQXn0qf1djwuUE0WZUYPXwI6z+4UmMxubyruwf9g1G0tbVpjC7xOdwHjx3r0NiNc+dqfJJ6davYWMs8GfriOpSfbZEtz9Ueau6WxBGBkmpOoYidkAUnYCEvfb1tyM23A0UR3JoaxNtkny2NuC9neS3klq9FcsUnMXKkWWPHtnwdzcM2zmeAm930RfGO3Zg5azamTp2KSCSisYqKCsnRUlcg159gfnR9eDGmW+dFoDtVBE6MwHsqIYJEmNsmZT4CuI3vsX1IeIMaWmsnMCXih8dvFeq5ABpPZ+xCTB7lkRHMMyr5GK7U0HNf+y5qa2snCGRXKSkpcXOQ1pJ00ltWDseSc1lOMltXKh1DbsoOVeCBYeAbmSCqpXgekpZHHph5A+6pew/umbEMjSVvUXpTcj+hZxyfjPtxezQoA4SDWGVYyc5ixi3OhaS2OY/n+i+SCQ6S/voGWKEK2F5xVOgEZG+cH8brsjSPylZG/sQbwH2pDO6W1hGU9CV3ByLaLbjJtkr+kp5kTlwTJvPoTTrKr0pDaU5k4UwNo3PBrUoOBuOHVjO4Tupg0bvvlDGqXEQWK6NRG3u781jvs3BaBJFbUlksY26JWI8kO5mPxVQg+b6+c0r9Tq6x5PNc2lGyk8yviSBbVYy+ZXcpmWsUyaU2AklCi4Q7O8EiGZYHxR7+EFr/EdXYs/2SX+LEWnsEj01zC2Jmp2zmeiRgAxb0yv2OBbyY4eQx173dvyAXnyn8YFOkHA/UlWH09jXwLV2uMXYRFge7CMUSpkNdUsV04Li0qM9/7iE3Jm+8PD2Iby4IoCTkbj1W3EaofRDeQT1VjAmeBHbEg+yNbsXaFX60h+eh9yNfwJQpUzTGYYHiOGqZefCqJ+r/NSY4yJGbfTImy9z00yc11vnMb/D9BWEU+bKwM+7IZGdT8kNJ4IQN/zl3sLWGspJvTExxM+Cuu10ZQq6mCHa5Txx2Pe4MzsGpj39F3TN7nnGPy2tyz0AFCvSEk4ZZZlYjUfX4p1Ht98geKVWdd5MrP5pCTvh8PIj+Qr5VeXJ4ZyCJWq/7smMQrU7GRlvde/U0tvIT+icnyW5BGHEskouhAgvHOlGwyoxIItHfg8rndqGmt1Mu1pDMqFKRCOCx3Bx9KYK/ne4ksMVif3UddGQzPuOtRseK+1E8vU5jFEVS1Pjx3hTFxZggkId8IHsyRRJccjLd14WSlv0aKzv5KkoTMZwNRjBkuf3Pkb/UapNRjPpDOF83X2Oxm5eiuNCy2FcJiuIxRZmCoHPc8ybDm6NICscK9mPjImGW3HyaGAuK15kC423oAvuo+eObznADHu8WP8d3jjfCJQIJPtRs3kYsBY0f20nOdWZU4224d7FFmUqkAIqkGFMA5vzi/4O5HCYVSJgHUwTFUpARzU++BDn+59o7RSRdJEzLolDjFr+7XL5NhssKNODXFGsEEcY58mKBdMZ0gYtHp2vBm69IrgRzqXHO0IDOmWUmrtW18fi3BP73AfwTgB0pUpX02Q0AAAAASUVORK5CYII=);
background-repeat: no-repeat;
}
.edrawings-button-text {
margin: 0;
width: 69px;
font-size: 9px;
font-family: sans-serif;
overflow: auto;
word-wrap: break-word;
color: darkgray;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-hud-button {
display: inline-block;
width: 44px;
height: 44px;
line-height: 44px;
text-align: center;
}
.edrawings-hud-button.active-button {
margin-top: -1px;
border-color: rgba(140, 140, 140, 1.0);
border-top: 4px solid #b1cb52;
border-bottom-color: rgba(232, 232, 232, 1.0);
background-color: rgba(232, 232, 232, 1.0);
}
#edrawings-button-zoomtofit.edrawings-hud-button.active-button {
border-bottom-color: rgba(140,140,140,1.0);
}
#edrawings-button-help.edrawings-hud-button.active-button {
border-bottom-color: rgba(140, 140, 140, 1.0);
}
.bottom-button {
display: inline-block;
margin-left: 5px;
border-width: 1px;
border-color: rgba(255, 0, 0, 0.0);
border-style: solid;
width: 44px;
height: 44px;
line-height: 44px;
text-align: center;
}
.edrawings-tool-button.bottom-button {
margin: 0px 5px;
}
.edrawings-tool-button.active-button {
border-color: rgba(140, 140, 140, 1.0);
border-right-color: rgba(232, 232, 232, 1.0);
background-color: rgba(232, 232, 232, 1.0);
}
.edrawings-bottom-centered-icons .edrawings-tool-button.bottom-button {
margin: 0px 2px;
}
.edrawings-bottom-centered-icons .edrawings-tool-button.bottom-button.active-button {
margin: 0px;
border-left: 4px solid #b1cb52;
border-right-width: 1px;
width: 46px; /* calc(44px + 2px); */
}
#edrawings-button-reset.edrawings-tool-button {
/* Make this like edrawings-hud-button */
float: none;
display: inline-block;
width: 44px;
height: 44px;
line-height: 44px;
text-align: center;
}
#edrawings-button-reset.edrawings-tool-button.active-button {
border-right-color: rgba(140, 140, 140, 1.0);
}
#edrawings-button-move.edrawings-tool-button.active-button {
border-right-color: rgba(140, 140, 140, 1.0);
border-right-width: 1px;
}
.bottom-menu-button {
margin-left: 0;
margin-right: 0;
}
.hud-menu-button {
border-style: solid;
border-width: 1px;
border-color: rgba(255,255,255, 0.0);
width: 40px;
height: 40px;
text-align: center;
line-height: 40px;
}
.hover-active-button:hover {
background-color:rgba(243, 243, 243, 1.0);
border-width: 1px;
border-color: black;
border-style: solid;
}
.active-button {
background-color:rgba(243, 243, 243, 1.0);
border-width: 1px;
border-color: rgba(183,183,183,1.0);
border-style: solid;
}
.state-on-button {
background-color: rgba(232, 232, 232, 1.0);
border-color: rgba(140, 140, 140, 1.0);
border-width: 1px;
border-style: solid;
}
#edrawings-file {
position: absolute;
z-index: 200;
width: 200px;
}
#edrawings-button-file-open {
height: 40px;
display: inline-block;
}
#edrawings-button-component-tree {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
#edrawings-button-configurations {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.edrawings-hud-menu {
z-index: 110;
margin: 0px;
border-color: rgba(140, 140, 140, 1.0);
border-style: solid;
border-width: 1px;
padding: 0px;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px));
overflow: auto;
background-color: rgba(232, 232, 232, 1.0);
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-hud-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px));
}
.edrawings-hud-menu-table {
border: 0 solid black;
border-collapse: collapse;
border-spacing: 0 0;
}
.edrawings-on-state {
background-color: rgba(200, 200, 200, 0.8);
}
.item-text {
cursor: pointer;
}
.item-tree-text {
pointer-events: none;
display: inline-block;
width: calc(100% - (5px + 15px) - 40px - (20px + 10px));
width: -o-calc(100% - (5px + 15px) - 40px - (20px + 10px));
width: -webkit-calc(100% - (5px + 15px) - 40px - (20px + 10px));
width: -moz-calc(100% - (5px + 15px) - 40px - (20px + 10px));
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
background: none;
cursor: pointer;
line-height: 40px;
vertical-align: middle;
text-align: left;
font-family: Arial;
font-size: 12px;
font-weight: bold;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#edrawings-debug-menu #edrawings-debug-list.edrawings-submenu-list .item-tree-text,
.item-tree-text.edrawings-root {
width: calc(100% - (5px + 15px) - 40px - 10px);
width: -o-calc(100% - (5px + 15px) - 40px - 10px);
width: -webkit-calc(100% - (5px + 15px) - 40px - 10px);
width: -moz-calc(100% - (5px + 15px) - 40px - 10px);
}
.edrawings-submenu {
z-index: 99;
left: 50px; /* calc(0px + 50px); */
margin: 0px;
border-color: rgba(140,140,140,1.0);
border-style: solid;
border-width: 1px;
padding: 0px;
background-color: rgba(232, 232, 232, 1.0);
}
#edrawings-left-bar.edrawings-out-of-view ~ .edrawings-submenu {
left: -9950px; /* calc(-10000px + 50px); */
}
.edrawings-menu-header {
padding: 0;
width: 100%;
height: 41px;
line-height: 41px;
}
.edrawings-menu-title {
display: inline-block;
position: relative;
margin-left: 10px;
margin-right: 10px;
width: auto;
font-family: "Segoe UI";
font-size: 17px;
font-weight: 600;
text-align: left;
color: #5b5b5b;
}
.edrawings-menu-setting {
right: 34px;
visibility: hidden;
}
.edrawings-hud-menu-close, .edrawings-menu-close {
right: 10px;
}
.edrawings-menu-icon {
position: absolute;
top: 11px;
padding: 0;
width: 20px;
height: 20px;
}
.edrawings-menu-head-button {
width: 20px;
}
.edrawings-submenu-list {
position: relative;
margin-right: 2px;
margin-left: 2px;
width: calc(100% - (2 * 2px));
width: -o-calc(100% - (2 * 2px));
width: -webkit-calc(100% - (2 * 2px));
width: -moz-calc(100% - (2 * 2px));
/* calc(100% - edrawings-menu-header height) */
height: calc(100% - 41px);
height: -o-calc(100% - 41px);
height: -webkit-calc(100% - 41px);
height: -moz-calc(100% - 41px);
overflow: auto;
}
#edrawings-component-tree-menu .component-search {
position: relative;
padding-left: 3px;
padding-right: 3px;
padding-top: 3px;
padding-bottom: 3px;
width: calc(100% - 12px);
width: -o-calc(100% - 12px);
width: -webkit-calc(100% - 12px);
width: -moz-calc(100% - 12px);
height: 30px;
background-color: rgb(192, 192, 192);
}
#edrawings-debug-menu .component-search {
position: relative;
padding-left: 3px;
padding-right: 3px;
padding-top: 3px;
padding-bottom: 3px;
width: calc(100% - 12px);
height: 30px;
background-color: rgb(192, 192, 192);
}
.edrawings-menu-search {
position: relative;
margin-left: 8px;
margin-right: 8px;
margin-bottom: 5px;
border-style: solid;
border-width: 1px;
border-color: #757575;
background-color: white;
}
#component-search-control {
position: absolute;
bottom: 8px;
right: 5px;
height: 20px;
}
.edrawings-menu-search-icon {
display: inline-block;
position: absolute;
top: 0;
width: 34px;
color: rgb(100, 100, 100);
vertical-align: middle;
}
.edrawings-menu-search-input {
display: block;
right: 0;
left: 12px;
border: none;
/* padding-left: 35px; */
padding-left: 34px;
width: calc(100% - 12px - 34px);
width: -o-calc(100% - 12px - 34px);
width: -webkit-calc(100% - 12px - 34px);
width: -moz-calc(100% - 12px - 34px);
Height: 34px;
font-size: 11pt;
}
.edrawings-menu-search-input::-webkit-input-placeholder {
/* Chrome/Opera/Safari */
color: lightgray;
}
.edrawings-menu-search-input::-moz-placeholder {
/* Firefox 19+ */
color: lightgray;
}
.edrawings-menu-search-input:-ms-input-placeholder {
/* IE 10+ */
color: lightgray;
}
.edrawings-menu-search-input:-moz-placeholder {
/* Firefox 18- */
color: lightgray;
}
.edrawings-menu-search-cancel {
position: absolute;
bottom: 12px;
right: 10px;
margin: 0;
padding: 0;
width: 15px;
height: 15px;
color: rgb(100, 100, 100);
cursor: default;
}
#edrawings-component-tree-menu .component-tools {
position: absolute;
bottom: 0;
padding-top: 5px;
padding-bottom: 5px;
width: 99%;
height: 75px;
background-color: rgb(192, 192, 192);
float: left;
}
.clearfix {
clear: both;
}
#edrawings-animations-menu {
display: none;
position: absolute;
z-index: 100;
left: 0;
bottom: 46px;
padding: 3px;
width: 140px;
color: darkgray;
font-family: sans-serif;
font-size: 12px;
}
/*=================================================================*/
/* edrawings-menu CSS */
.edrawings-menu {
z-index: 99;
left: 50px; /* calc(0px + 50px); */
/* (top-bar height + top gap) */
top: 50px; /* calc(50px + 0px); */
/* (bottom gap + bottom-bar height) */
bottom: 52px; /* calc(2px + 50px); */
margin: 0 auto;
border: 1px solid rgba(140, 140, 140, 1.0);
padding: 0;
width: auto;
min-width: 321px;
max-width: 500px;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px));
/* overflow-x: auto; */
overflow-x: hidden;
overflow-y: hidden;
color: darkgray;
background-color: rgba(232, 232, 232, 0.9);
font-family: sans-serif;
font-size: 12px;
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-menu {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px)*/
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px));
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-config-navigation {
top: auto;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 50px));
}
#edrawings-left-bar.edrawings-out-of-view ~ .edrawings-menu {
left: -9950px; /* calc(-10000px + 50px); */
}
.edrawings-submenu.edrawings-collapsible,
.edrawings-menu.edrawings-collapsible {
/* IE has no support of unset */
/* border: unset; */
border-width: 0px;
background-color: transparent;
/* IE has no support of unset */
/* cursor: unset; */
cursor: default;
}
#edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* bottom: auto; */
/* height: auto; */
overflow-x: visible;
overflow-y: hidden;
}
.edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-menu.edrawings-collapsible.edrawings-collapsed {
z-index: 100;
/* IE has no support of unset */
/* border: unset; */
border-width: 0px;
/* The width of the edrawings-menu-panel-arrow-collapse */
min-width: calc(16px + (2 * 1px) + (2 * 1px));
min-width: -o-calc(16px + (2 * 1px) + (2 * 1px));
min-width: -webkit-calc(16px + (2 * 1px) + (2 * 1px));
min-width: -moz-calc(16px + (2 * 1px) + (2 * 1px));
max-width: calc(16px + (2 * 1px) + (2 * 1px));
max-width: -o-calc(16px + (2 * 1px) + (2 * 1px));
max-width: -webkit-calc(16px + (2 * 1px) + (2 * 1px));
max-width: -moz-calc(16px + (2 * 1px) + (2 * 1px));
background-color: transparent;
}
.edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 50px; /* calc((50px + 0px) + 0px + 0px)*/
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 0px; /* calc(0px + 0px + 0px)*/
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-bar height + top gap) */
max-height: calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px) - (10px + 10px));
}
.edrawings-submenu.edrawings-collapsible.edrawings-collapsed *:not(.edrawings-menu-panel-arrow-collapse),
.edrawings-menu.edrawings-collapsible.edrawings-collapsed *:not(.edrawings-menu-panel-arrow-collapse) {
display: none;
}
/* End edrawings-menu CSS */
/*=================================================================*/
#edrawings-animations-menu .header {
margin-bottom: 3px;
padding-left: 3px;
}
.edrawings-on-state {
background-color: rgb(200, 200, 200);
}
.edrawings-submenu-list .edrawings-submenu-list-item {
position: relative;
width: 100%;
height: 40px;
line-height: 40px;
/* The children are inline-blocks. Use font-size to control the gap width of the inline block. */
font-size: 0px;
vertical-align: middle;
color: #828282;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.edrawings-submenu-list .edrawings-submenu-list-item:first-child {
border-top: none;
}
.edrawings-submenu-list .debug-struct {
height: 30px;
}
.edrawings-submenu-list-item.hidden {
color: rgba(128, 128, 128, 0.6);
}
.edrawings-submenu-list-item-button {
display: inline-block;
position: absolute;
cursor: pointer;
top: 10px;
right: 10px;
width: 20px;
height: 20px;
vertical-align: middle;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.edrawings-submenu-list-item-button.edrawings-root {
display: none;
}
.edrawings-hud-arrow {
display: inline-block;
position: relative;
top: -10px;
left: -5px;
border-style: solid;
border-width: 6.1px 3.5px 0 3.5px;
border-color: #2a2a2a transparent transparent transparent;
width: 0;
height: 0;
}
.edrawings-tree-arrow-space-common {
display: inline-block;
margin: 0;
padding-left: 5px;
width: 15px;
height: 15px;
vertical-align: middle;
}
.edrawings-tree-arrow {
line-height: 15px;
background-color: rgba(255, 255, 255, 0);
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAANFJREFUOBHVUssRgjAQJY7hTAmWYAlYAh3EAzmbSvQMB9OBJUAHWoIlcCaH8HZkYWB28EwO2d97L7tJkmT3S0kTWGvfyGcxxqKu64+E4dyBHcGelFJNWZZGqE0pUaDv+wtOb4HKIPJER/eJsXLEERgzEm8Uk2AIofDed1wnK3bAgKqqHIhXxB06ydM0bbjGdlOAQVt2U4BGoDuAAL1IS3ezFjuuExQbYzKt9QtuTjHWA8/pfu5yFwXGWc+AdjjZgeyXtDkSBcbyF+S/H2mW2q03ANLBRIizuA/1AAAAAElFTkSuQmCC);
background-position-x: 50%;
}
.edrawings-tree-space {
background: none;
}
.edrawings-panel-initial-left-padding {
}
#edrawings-hud-controls-menu {
display: none;
position: absolute;
z-index: 100;
top: 37px;
left: 200px;
width: 42px;
}
/*=================================================================*/
/* #edrawings-hud-shaded-menu CSS */
#edrawings-hud-shaded-menu {
padding: 2px;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (50px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px) - (2 * 2px));
}
@-moz-document url-prefix() {
#edrawings-hud-view-settings-menu.edrawings-collided,
#edrawings-hud-shaded-menu.edrawings-collided {
/* Mozilla only. Add 17~22 px for the firefox vertical scrollbar */
padding-right: 18px;
}
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-hud-shaded-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (0px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px) - (2 * 2px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px) - (2 * 2px));
}
/* End #edrawings-hud-shaded-menu CSS */
/*=================================================================*/
#edrawings-hud-help-menu {
position: fixed;
z-index: 100;
top: 50%;
left: 50%;
border-style: solid;
border-width: 1px;
width: 279px;
background-color: rgba(232, 232, 232, 0.9);
font-size: 13px;
font-family: Arial;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
#edrawings-version {
margin: 5px;
padding: 10px;
}
#sizer {
margin: 0 auto;
width: 279px;
background: #666666 repeat-x 0 0;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
-khtml-border-radius: 10px;
border-radius: 10px;
-webkit-box-shadow: 0 5px 12px rgba(0,0,0,.4);
-moz-box-shadow: 0 5px 12px rgba(0,0,0,.4);
-khtml-box-shadow: 0 5px 12px rgba(0,0,0,.4);
box-shadow: 0 5px 12px rgba(0,0,0,.4);
}
fieldset {
border: 0;
padding-bottom: 9px;
}
label, legend {
display: block;
cursor: pointer;
line-height: 20px;
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
font: 14px/18px 'HelveticaNeue-Light', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: bold;
text-align: center;
color: dark-gray;
}
/*=================================================================*/
/* Section CSS */
#edrawings-section-menu {
/* (top-bar height + top gap) */
top: 50px; /* calc(50px + 0px) */
border-color: rgba(140,140,140,1.0);
border-style: solid;
border-width: 1px;
width: auto;
height: auto;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px));
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
#edrawings-section-menu.edrawings-collapsible {
/* IE has no support of unset */
/* border: unset; */
border-width: 0px;
}
#edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-section-menu.edrawings-collapsible.edrawings-collided {
height: 100%;
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-section-menu {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px));
}
#edrawings-section-menu table {
border-collapse: collapse;
}
/* End Section CSS */
/*=================================================================*/
/*=================================================================*/
/* Explode CSS */
#edrawings-explode-menu {
/* (top-bar height + top gap) */
top: 50px; /* calc(50px + 0px); */
width: 41px;
/* height of the slider
See #edrawings-explode-slider */
height: calc(170px + (2 * 15px) + (2 * 1px));
height: -o-calc(170px + (2 * 15px) + (2 * 1px));
height: -webkit-calc(170px + (2 * 15px) + (2 * 1px));
height: -moz-calc(170px + (2 * 15px) + (2 * 1px));
min-height: calc((2 * 15px) + (2 * 1px));
min-height: -o-calc((2 * 15px) + (2 * 1px));
min-height: -webkit-calc((2 * 15px) + (2 * 1px));
min-height: -moz-calc((2 * 15px) + (2 * 1px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (50px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (50px + 0px) - (2px + 50px));
}
#edrawings-explode-menu.edrawings-collapsible {
width: auto;
/* border height + height of the slider */
height: calc(2px + 170px + 30px + 2px);
height: -o-calc(2px + 170px + 30px + 2px);
height: -webkit-calc(2px + 170px + 30px + 2px);
height: -moz-calc(2px + 170px + 30px + 2px);
min-height: calc(2px + 30px + 2px);
min-height: -o-calc(2px + 30px + 2px);
min-height: -webkit-calc(2px + 30px + 2px);
min-height: -moz-calc(2px + 30px + 2px);
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-explode-menu {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (2px + 50px));
max-height: -o-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -webkit-calc(100% - (0px + 0px) - (2px + 50px));
max-height: -moz-calc(100% - (0px + 0px) - (2px + 50px));
}
#edrawings-explode-slider {
z-index: 100;
margin-top: 15px;
margin-bottom: 15px;
margin-left: 12px;
margin-right: 12px;
border: #c5c5c5 1px solid;
border-radius: 4px;
padding-left: 2px;
/* content-box, so minus margin and padding */
/* height: 170px; */
height: calc(100% - 2 * 15px - 2 * 1px);
height: -o-calc(100% - 2 * 15px - 2 * 1px);
height: -webkit-calc(100% - 2 * 15px - 2 * 1px);
height: -moz-calc(100% - 2 * 15px - 2 * 1px);
font-size: 18px; /* for some reason, the font size controls the width
of the slider bar... */
}
/* Rail border */
#edrawings-explode-slider {
border: #a2a2a2 1px solid;
background: #ffffff;
}
/* Add more padding to the arrow buttons. */
.slide-bar-button {
display: none; /* off for 2019 release */
padding: 5px 0;
}
/* Darken slider handle */
.ui-slider-handle {
border: 1px solid #aeaeae;
border-radius: 4px;
background: #aeaeae;
}
/* Center slider handle on rail. */
.ui-slider-vertical .ui-slider-handle {
left: -0.2em;
}
/* Slider handle hover colors */
.ui-slider-handle .ui-state-hover {
border: 1px solid #c3c3c3;
background: #c3c3c3;
}
.ui-slider-range {
background: #cccccc;
}
.ui-dialog {
border-color: rgba(140,140,140,1.0);
border: 1px;
border-style: solid;
background-color: rgba(232, 232, 232, 1.0);
color: rgb(130,130,130);
font-family: sans-serif;
font-weight: normal;
}
.ui-dialog-buttonpane {
background-color: rgba(232, 232, 232, 1.0);
}
/* End Explode CSS */
/*=================================================================*/
/*=================================================================*/
/* Measure CSS */
#edrawings-measure-panel {
bottom: auto;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
font-family: Arial;
font-size: 14px;
color: #5b5b5b;
}
#edrawings-measure-panel.edrawings-collapsible.edrawings-collapsed,
#edrawings-measure-panel.edrawings-collapsible.edrawings-collided {
/* bottom: calc(2px + 50px); */
height: 100%;
}
#edrawings-measure-submenu-list {
position: relative;
margin: 10px;
padding: 2px;
min-height: 50px;
/* 100% - edrawings-menu-header - edrawings-measure-filters - edrawings-measure-unit - edrawings-measure-messages */
max-height: calc(100% - 41px - (48px + (2 * 4px)) - (66px + (2 * 10px)) - (150px + (2 * 10px) + (2 * 1px) + (2 * 10px)));
max-height: -o-calc(100% - 41px - (48px + (2 * 4px)) - (66px + (2 * 10px)) - (150px + (2 * 10px) + (2 * 1px) + (2 * 10px)));
max-height: -webkit-calc(100% - 41px - (48px + (2 * 4px)) - (66px + (2 * 10px)) - (150px + (2 * 10px) + (2 * 1px) + (2 * 10px)));
max-height: -moz-calc(100% - 41px - (48px + (2 * 4px)) - (66px + (2 * 10px)) - (150px + (2 * 10px) + (2 * 1px) + (2 * 10px)));
background-color: #FFFFFF;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.edrawings-measure-entities-remove {
position: absolute;
right: 10px;
vertical-align: middle;
}
.edrawings-measure-entities-info {
display: inline-block;
pointer-events: none;
}
.edrawings-measure-entities-type {
pointer-events: none;
white-space: pre-wrap;
}
/* End Measure CSS */
/*=================================================================*/
/*=================================================================*/
/* Markup CSS */
#edrawings-markup-menu {
/* height: auto; */
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
font-family: Arial;
font-size: 15px;
}
/* End Markup CSS */
/*=================================================================*/
/*=================================================================*/
/* Debug CSS */
#edrawings-debug-menu {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
font-size: 15px;
font-family: Arial;
}
#edrawings-console-debug-categories {
/* Copied from edrawings-menu-search-input */
display: block;
border: none;
width: calc(100% - 2px);
width: -o-calc(100% - 2px);
width: -webkit-calc(100% - 2px);
width: -moz-calc(100% - 2px);
Height: 34px;
font-size: 11pt;
}
/* End Debug CSS */
/*=================================================================*/
.edrawings-inactive {
background-color: gray;
pointer-events: none;
}
.edrawings-common-panel-props {
position: absolute;
box-shadow: none;
border: 1px solid gray;
cursor: pointer;
font-size: 14px;
}
/*=================================================================*/
/* shortcut CSS */
#edrawings-shortcut-menu {
background-color: rgba(255, 255, 255, 0.9);
z-index: 100;
}
.edrawings-shortcut-menu-text {
font-size: 12px;
font-family: Arial;
font-weight: bold;
color: rgb(130,130,130);
text-align: left;
}
.edrawings-shortcut-hide-show::before {
content: "Hide/Show";
}
.edrawings-shortcut-transp-solid::before {
content: "Transparent/Solid";
}
.edrawings-shortcut-isolate::before {
content: "Hide Others";
}
.edrawings-shortcut-show-all::before {
content: "Show All";
}
.edrawings-shortcut-measure-remove::before {
content: "Remove";
}
.edrawings-shortcut-measure-clear::before {
content: "Clear";
}
/* End shortcut CSS */
/*=================================================================*/
#edrawings-preview-window {
box-shadow: none;
display: none;
position: absolute;
z-index: 1000;
border: 1px solid gray;
background-color: rgba(255, 255, 255, 0.9);
font-size: 14px;
cursor: pointer;
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
.inputfile {
position: absolute;
z-index: -1;
width: 0.1px;
height: 0.1px;
overflow: hidden;
opacity: 0;
}
.button {
border-color: rgb(100,100,100);
border-style: solid;
border-width: thin;
padding: 4px 12px 4px 12px;
background-color: #EEEEEE;
color: rgb(100,100,100);
font: 11px Arial;
}
.edrawings-bottom-label {
display: table-cell;
width: 90px;
color: darkgray;
font-size: 14px;
font-family: sans-serif;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: center;
vertical-align: middle;
}
#edrawings-custom-cursor-rotate {
display: none;
position: absolute;
z-index: 10000;
cursor: none;
top: 0;
left: 0;
height: 32px;
width: 32px;
background-image: url("images/select3.png");
}
#edrawings-custom-cursor-pan {
display: none;
position: absolute;
z-index: 10000;
cursor: none;
top: 0;
left: 0;
height: 32px;
width: 32px;
background-image: url("images/select2.png");
}
#edrawings-custom-cursor-zoom {
display: none;
position: absolute;
z-index: 10000;
cursor: none;
top: 0;
left: 0;
height: 32px;
width: 32px;
background-image: url("images/zoom1.png");
}
.unselectable {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
cursor: default;
}
/* Required for jquery.ui.touch-punch.js. Without this, touch doesn't work
* on IE/Edge
*/
.ui-draggable {
-ms-touch-action: none;
touch-action: none;
}
#edrawings-fileopen-background {
position: absolute;
pointer-events: none;
left: 0;
top: 0;
border-style: solid;
border-color: rgba(255,255,255,0);
width: 100%;
height: 100%;
}
#fileopen-group {
position: absolute;
top: 50%;
left: 50%;
margin-left: -175px;
margin-right: auto;
margin-top: -200px;
margin-bottom: auto;
width: 350px;
height: 400px;
color: rgb(120,120,120);
font-family: arial;
font-weight: bold;
}
.fileopen-block {
display: flex;
justify-content: center;
margin-top: 20px;
margin-bottom: 20px;
}
.fileopen-block-item {
align-self: center;
}
#fileopen-drop-block-background {
border-style: dashed;
border-radius: 10px;
height: 150px;
}
#edrawings-drop-block.edrawings-viewer-regular {
display: none;
position: absolute;
z-index: 10;
border-style: dashed;
border-radius: 10px;
width: 350px;
height: 150px;
background-color: rgba(255, 255, 255, 0.0);
}
#fileopen-drop-instr {
z-index: 50;
}
#edrawings-drop-block.edrawings-viewer-ondrop {
position: absolute;
z-index: 10;
top: 0;
left: 0;
margin: 5px;
border-style: dashed;
border-radius: 10px;
width: calc(100% - 20px);
width: -o-calc(100% - 20px);
width: -webkit-calc(100% - 20px);
width: -moz-calc(100% - 20px);
height: calc(100% - 20px);
height: -o-calc(100% - 20px);
height: -webkit-calc(100% - 20px);
height: -moz-calc(100% - 20px);
background: rgba(255,255,255,0.9);
}
#stream_viewer_link {
color: blue;
text-decoration: underline;
}
.fileopen-button-block {
pointer-events: all;
}
.edrawings-layer-checkbox-style {
display: inline-block;
margin-right: 10px;
line-height: 14px;
vertical-align: middle;
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.bottom-bar {
position: absolute;
z-index: 2;
bottom: 0;
width: 100%;
height: 50px;
/* consolidate the alpha value 0.8 */
background-color: rgba(255, 255, 255, 0.8);
white-space: nowrap;
/* The children are inline-blocks. Use font-size to control the gap width of the inline block. */
font-size: 0px;
}
/*=================================================================*/
/* #edrawings-config-tab-list CSS */
#edrawings-config-tab-list {
display: inline-block;
height: 100%;
line-height: 44px;
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#edrawings-config-tab-list.edrawings-fullwidth {
width: 100%;
}
#edrawings-config-tab-list.edrawings-compressed {
/* 100% - (left-arrow width + left-arrow padding + 1px gap) - (1px gap + right-arrow padding + right-arrow width) - (rightmost icon and its padding) */
width: calc(100% - (10px + 10px + 1px) - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -o-calc(100% - (10px + 10px + 1px) - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -webkit-calc(100% - (10px + 10px + 1px) - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -moz-calc(100% - (10px + 10px + 1px) - (1px + 10px + 10px) - (44px + (2 * 1px)));
overflow: hidden;
}
.bottom-bar.edrawings-compressed-tab-list.edrawings-removed-arrow-left:not(.edrawings-removed-arrow-right) #edrawings-config-tab-list.edrawings-compressed,
.bottom-bar.edrawings-compressed-tab-list.edrawings-removed-arrow-right:not(.edrawings-removed-arrow-left) #edrawings-config-tab-list.edrawings-compressed {
/* 100% - (left-arrow width + left-arrow padding + 1px gap)/(1px gap + right-arrow padding + right-arrow width) - (rightmost icon and its padding) */
width: calc(100% - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -o-calc(100% - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -webkit-calc(100% - (1px + 10px + 10px) - (44px + (2 * 1px)));
width: -moz-calc(100% - (1px + 10px + 10px) - (44px + (2 * 1px)));
overflow: hidden;
}
/* End #edrawings-config-tab-list CSS */
/*=================================================================*/
.bottom-bar:not(.edrawings-compressed-tab-list) .edrawings-arrow-wrapper {
display: none;
width: auto;
height: inherit;
background-color: rgba(100, 100, 100, 0.1);
}
.bottom-bar.edrawings-compressed-tab-list .edrawings-arrow-wrapper {
position: relative;
top: -2px;
border-bottom-color: lightgray;
border-bottom-style: solid;
border-bottom-width: 1px;
border-right: 1px solid white;
padding-left: 2px;
padding-right: 8px;
width: auto;
height: 44px; /* inherit; */
background-color: rgba(100, 100, 100, 0.1);
font-size: medium; /* Default value is either medium or 16px */
}
.bottom-bar.edrawings-compressed-tab-list .edrawings-arrow-wrapper:nth-child(4) {
border-left: 1px solid white;
/* IE has no support of unset */
/* border-right: unset; */
border-right-width: 0px;
padding-left: 8px;
/* IE has no support of unset */
/* padding-right: unset; */
padding-right: 2px;
}
#edrawings-config-tab-list:not(.edrawings-compressed) ~ .edrawings-sheets-control {
display: none;
}
.edrawings-config-tab {
display: inline-block;
position: relative;
z-index: 0;
border-top: none;
border-bottom-color: lightgray;
border-bottom-style: solid;
border-bottom-width: 1px;
border-right-color: lightgray;
border-right-style: solid;
border-right-width: 1px;
padding: 0 5px;
width: auto;
min-width: 76px;
height: 44px; /* 50px * .88 = 44px */
background-color: rgba(100, 100, 100, 0.1);
text-align: center;
font-size: medium; /* Default value is either medium or 16px */
cursor: default;
}
/* #edrawings-config-tab-list.edrawings-compressed .edrawings-config-tab {
height: 30px;
} */
.config-tab-text {
margin-left: 5px;
margin-right: 5px;
font-family: arial;
font-size: 14px;
pointer-events: none;
}
.active-modelview {
z-index: 0;
top: -2px;
margin-left: -1px;
border-top-color: white;
border-top-style: solid;
border-top-width: 1px;
border-left-color: rgba(140,140,140,1.0);
border-left-style: solid;
border-left-width: 1px;
border-right-color: rgba(140,140,140,1.0);
border-right-style: solid;
border-right-width: 1px;
border-color: rgba(140,140,140,1.0);
height: calc(88% + 2px); /* 50 * .88 = 44 */
background-color: white;
}
#edrawings-config-tab-list .edrawings-config-tab.active-modelview:first-child {
/* IE has no support of unset */
/* margin-left: unset; */
margin-left: 0px;
}
.edrawings-measure-unit {
margin: 10px;
}
.measure-unit-selector {
display: inline-block;
/* Substract width of measure-unit-item-name */
width: calc(100% - 90px);
width: -o-calc(100% - 90px);
width: -webkit-calc(100% - 90px);
width: -moz-calc(100% - 90px);
height: auto;
background-color: #FFFFFF;
vertical-align: middle;
}
.edrawings-measure-unit-item {
position: relative;
margin: 0px;
height: 30px;
line-height: 30px;
}
.measure-unit-item-name {
display: inline-block;
margin-left: 6px;
width: 80px;
text-align: left;
vertical-align: middle;
/* white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis; */
font-family: Arial;
font-size: 14px;
font-weight: normal;
}
#edrawings-markup-view-list {
margin-left: 3px;
margin-right: 3px;
margin-top: 5px;
margin-bottom: 5px;
border-style: solid;
border-width: 1px;
min-height: 150px;
max-height: calc(100% - 45px);
max-height: -o-calc(100% - 45px);
max-height: -webkit-calc(100% - 45px);
max-height: -moz-calc(100% - 45px);
overflow: auto;
background-color: white;
}
.edrawings-markup-view-name {
pointer-events: none;
}
.markup-mode {
pointer-events: none;
}
.edrawings-icon.markup-mode {
margin: auto;
}
.markup-op {
pointer-events: none;
}
.edrawings-measure-messages {
margin: 10px;
border: rgb(140, 140, 140) 1px solid;
padding: 10px 6px;
min-height: 150px;
max-height: 200px;
overflow-y: auto;
background-color: #FFFFFF;
-webkit-touch-callout: text;
-webkit-user-select: text;
-khtml-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
}
.edrawings-measure-entities-list-item {
margin: 2px;
border-bottom: #cacaca 1px solid;
padding: 10px 6px;
}
.edrawings-measure-entities-list-item:last-child {
border-bottom: none;
}
#edrawings-measure-entities-list {
margin-left: 3px;
margin-right: 3px;
margin-top: 5px;
margin-bottom: 5px;
border-style: solid;
border-width: 1px;
background-color: white;
}
#edrawings-measure-result {
white-space: pre-wrap;
}
/*=================================================================*/
/* navigation CSS */
#edrawings-button-confignav {
display: block;
margin: 0;
float: none;
}
#edrawings-config-navigation {
/* Need this z-index to show on top of tool-bar */
z-index: 100;
bottom: 50px;
right: 0px;
/* IE has no support of unset */
/* left: unset; */
left: auto;
/* top: unset; */
top: auto;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 2px) - (0px + 50px));
max-height: -o-calc(100% - (50px + 2px) - (0px + 50px));
max-height: -webkit-calc(100% - (50px + 2px) - (0px + 50px));
max-height: -moz-calc(100% - (50px + 2px) - (0px + 50px));
}
#edrawings-config-navigation.edrawings-collapsible.edrawings-collapsed,
#edrawings-config-navigation.edrawings-collapsible.edrawings-collided {
height: 100%;
}
/* End navigation CSS */
/*=================================================================*/
.measure-filter-image {
pointer-events: none;
}
.edrawings-icon.measure-filter-image {
margin: auto;
}
.edrawings-disabled-button {
pointer-events: none;
opacity: 0.3;
filter: alpha(opacity = 30); /* For IE8 and earlier */
}
.edrawings-menu-info {
display: inline-block;
position: absolute;
right: 45px;
top: 2px;
font-family: "Segoe UI";
font-size: 12px;
color: #5b5b5b;
}
#edrawings-logo-block {
display: inline-block;
margin-left: 5px;
margin-right: 4px;
width: auto;
}
#edrawings-fileload-block {
display: inline-block;
}
#edrawings-filename-block {
display: inline-block;
padding-right: 8px; /* width of the arrow padding */
width: auto;
overflow: hidden;
white-space: nowrap;
text-align: left;
vertical-align: middle;
}
.edrawings-collided-hud-bar #edrawings-filename-block {
/* logo-block: (5px + 44px)
fileload-block: 40px
font-size: 2px (multiply by # of items)
2 edrawings-hud-button (reset and fullscreen): 2 * 46px
1 arrow from hud-bar: 1 * (10px + 10px);
margin-right from hud-bar: 2px;
right from hud-bar: 0px;
*/
max-width: calc(100% - (5px + 44px) - (2px + 40px) - (2px + (2px + (2 * 46px)) + (1 * (10px + 10px)) + 2px + 0px));
max-width: -o-calc(100% - (5px + 44px) - (2px + 40px) - (2px + (2px + (2 * 46px)) + (1 * (10px + 10px)) + 2px + 0px));
max-width: -webkit-calc(100% - (5px + 44px) - (2px + 40px) - (2px + (2px + (2 * 46px)) + (1 * (10px + 10px)) + 2px + 0px));
max-width: -moz-calc(100% - (5px + 44px) - (2px + 40px) - (2px + (2px + (2 * 46px)) + (1 * (10px + 10px)) + 2px + 0px));
}
#edrawings-filename {
position: relative;
top: 0;
line-height: 22px;
text-align: center;
}
#edrawings-filename-text {
display: block;
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
font-family: arial;
font-size: small;
}
#config-tab-border {
position: absolute;
z-index: 0;
border-top-color: rgba(140,140,140,1.0);
border-top-style: solid;
border-top-width: 1px;
top: 0;
width: 100%;
font-size: medium; /* Default value is either medium or 16px */
}
.edrawings-custom-redline {
position: absolute;
}
.edrawings-markupdiv-image {
width: 100%;
height: 100%;
}
#edrawings-measure-filters {
margin: 4px 10px;
}
#edrawings-layer-control-all {
height: auto;
}
.slide-bar-button {
margin: auto;
text-align: center;
}
.edrawings-bar-icon {
margin: auto;
width: 20px;
height: 20px;
vertical-align: middle;
}
.help-table-button {
width: 85px;
height: 60px;
line-height: 70px;
text-align: center;
}
.edrawings-help-grid {
border-width: 1px;
border-bottom-style: solid;
width: 279px;
}
.edrawings-help-table {
margin-top: 8px;
margin-bottom: 8px;
border-collapse: collapse;
width: 100%;
}
.help-column-first {
border-right: solid 1px;
border-color: rgb(150,150,150);
}
.help-column-second {
border-right: solid 1px;
border-color: rgb(150,150,150);
}
.ui-slider-vertical .ui-slider-handle {
left: -0.2em;
}
.section-button {
margin: 3px;
}
.bottom-button.section-button {
display: block;
}
#edrawings-button-shaded {
width: 48px;
}
.edrawings-arrow-wrapper {
display: inline-block;
width: auto;
height: auto;
text-align: center;
}
.edrawings-arrow-up {
display: block;
position: relative;
top: calc((100% - 10px)/2);
top: -o-calc((100% - 10px)/2);
top: -webkit-calc((100% - 10px)/2);
top: -moz-calc((100% - 10px)/2);
left: calc((100% - (2 * 8px))/2);
left: -o-calc((100% - (2 * 8px))/2);
left: -webkit-calc((100% - (2 * 8px))/2);
left: -moz-calc((100% - (2 * 8px))/2);
border-left: 8px solid transparent;
border-right: 8px solid transparent;
border-bottom: 10px solid #666;
width: 0;
height: 0;
}
.edrawings-arrow-wrapper.edrawings-disabled-button .edrawings-arrow-up,
.edrawings-arrow-up.edrawings-disabled {
display: none;
border-bottom: 10px solid lightgray;
pointer-events: none;
}
.edrawings-arrow-down {
display: block;
position: relative;
top: calc((100% - 10px)/2);
top: -o-calc((100% - 10px)/2);
top: -webkit-calc((100% - 10px)/2);
top: -moz-calc((100% - 10px)/2);
left: calc((100% - (2 * 8px))/2);
left: -o-calc((100% - (2 * 8px))/2);
left: -webkit-calc((100% - (2 * 8px))/2);
left: -moz-calc((100% - (2 * 8px))/2);
border-left: 8px solid transparent;
border-right: 8px solid transparent;
border-top: 10px solid #666;
width: 0;
height: 0;
}
.edrawings-arrow-wrapper.edrawings-disabled-button .edrawings-arrow-down,
.edrawings-arrow-down.edrawings-disabled {
display: none;
border-top: 10px solid lightgray;
pointer-events: none;
}
.edrawings-arrow-left {
display: block;
position: relative;
top: calc((100% - (2 * 8px))/2);
top: -o-calc((100% - (2 * 8px))/2);
top: -webkit-calc((100% - (2 * 8px))/2);
top: -moz-calc((100% - (2 * 8px))/2);
left: calc((100% - 10px)/2);
left: -o-calc((100% - 10px)/2);
left: -webkit-calc((100% - 10px)/2);
left: -moz-calc((100% - 10px)/2);
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-right: 10px solid #666;
width: 0;
height: 0;
}
.edrawings-arrow-wrapper.edrawings-disabled-button .edrawings-arrow-left,
.edrawings-arrow-left.edrawings-disabled {
display: none;
border-right: 10px solid lightgray;
pointer-events: none;
}
.edrawings-arrow-right {
display: block;
position: relative;
top: calc((100% - (2 * 8px))/2);
top: -o-calc((100% - (2 * 8px))/2);
top: -webkit-calc((100% - (2 * 8px))/2);
top: -moz-calc((100% - (2 * 8px))/2);
left: calc((100% - 10px)/2);
left: -o-calc((100% - 10px)/2);
left: -webkit-calc((100% - 10px)/2);
left: -moz-calc((100% - 10px)/2);
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 10px solid #666;
width: 0;
height: 0;
}
.edrawings-arrow-wrapper.edrawings-disabled-button .edrawings-arrow-right,
.edrawings-arrow-right.edrawings-disabled {
display: none;
border-left: 10px solid lightgray;
pointer-events: none;
}
#edrawings-hud-bar {
display: block;
position: absolute;
top: 0px;
right: 0px;
margin-right: 2px;
width: auto;
height: inherit; /* 46px; */
}
.edrawings-hud-bar-content {
/* The children are inline-block. Use font-size to control the gap between inline-block children */
font-size: 2px;
}
#edrawings-hud-bar .edrawings-arrow-wrapper {
display: none;
width: auto;
height: inherit;
}
#edrawings-hud-bar.edrawings-collided {
/* Keep the arrows visible */
/* (left-arrow width + left-arrow padding) + (right-arrow padding + right-arrow width) */
min-width: calc((10px + 10px) + (10px + 10px));
min-width: -o-calc((10px + 10px) + (10px + 10px));
min-width: -webkit-calc((10px + 10px) + (10px + 10px));
min-width: -moz-calc((10px + 10px) + (10px + 10px));
overflow-x: auto;
overflow-y: hidden;
white-space: nowrap;
}
#edrawings-hud-bar.edrawings-collided .edrawings-arrow-wrapper {
display: block;
position: absolute;
padding-left: 2px;
padding-right: 8px;
width: auto;
height: inherit;
}
#edrawings-hud-bar.edrawings-collided .edrawings-arrow-wrapper:nth-child(2) {
right: 0px;
padding-left: 8px;
/* IE has no support of unset */
/* padding-right: unset; */
padding-right: 2px;
}
#edrawings-hud-bar.edrawings-collided .edrawings-arrow-wrapper.edrawings-disabled-button,
.edrawings-tool-bar.edrawings-collided .edrawings-arrow-wrapper.edrawings-disabled-button,
.bottom-bar.edrawings-compressed-tab-list .edrawings-arrow-wrapper.edrawings-disabled-button {
display: none;
}
#edrawings-hud-bar.edrawings-collided .edrawings-hud-bar-content {
display: block;
position: absolute;
/* Make room for the arrows */
/* (left-arrow width + left-arrow padding) */
left: calc(10px + 10px);
left: -o-calc(10px + 10px);
left: -webkit-calc(10px + 10px);
left: -moz-calc(10px + 10px);
/* 100% - (left-arrow width + left-arrow padding) + (right-arrow padding + right-arrow width) */
width: calc(100% - (10px + 10px) - (10px + 10px));
width: -o-calc(100% - (10px + 10px) - (10px + 10px));
width: -webkit-calc(100% - (10px + 10px) - (10px + 10px));
width: -moz-calc(100% - (10px + 10px) - (10px + 10px));
overflow: hidden;
}
#edrawings-hud-bar.edrawings-collided .edrawings-arrow-wrapper.edrawings-disabled-button:nth-child(1) ~ .edrawings-hud-bar-content {
left: 0px;
/* 100% - (right-arrow padding + right-arrow width) */
width: calc(100% - (10px + 10px));
width: -o-calc(100% - (10px + 10px));
width: -webkit-calc(100% - (10px + 10px));
width: -moz-calc(100% - (10px + 10px));
}
#edrawings-hud-bar.edrawings-collided .edrawings-arrow-wrapper.edrawings-disabled-button:nth-child(2) ~ .edrawings-hud-bar-content {
/* 100% - (left-arrow width + left-arrow padding) */
width: calc(100% - (10px + 10px));
width: -o-calc(100% - (10px + 10px));
width: -webkit-calc(100% - (10px + 10px));
width: -moz-calc(100% - (10px + 10px));
}
.edrawings-ui-hide {
display: none;
}
#edrawings-button-fs {
background-repeat: no-repeat;
background-position-y: 3px;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEyVDExOjA5OjQyLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xM1QxMzoyNzowOC0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xM1QxMzoyNzowOC0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo3MDE5ZTdlMi01NDA4LTQyZGUtODNjNi00NTllNDY0MWFmM2MiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzAxOWU3ZTItNTQwOC00MmRlLTgzYzYtNDU5ZTQ2NDFhZjNjIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NzAxOWU3ZTItNTQwOC00MmRlLTgzYzYtNDU5ZTQ2NDFhZjNjIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo3MDE5ZTdlMi01NDA4LTQyZGUtODNjNi00NTllNDY0MWFmM2MiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTJUMTE6MDk6NDItMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5cpmPRAAABKUlEQVRYhe2W0Q2DIBCGf5oO4Cis4Cb05ZxJXuomruAo3cA+iKlRgYNL1Ri+pEmjh/cFg/+pcRxxZR5nC8QoglKKoJQiKKUISnlyC5um2Yuczlr7Cq0jojcAs77etq3i9JXsYFQOAFxNl9tEIqiJqIoVuRqd20QkCKAPSbp7PQ4UHNxvRsMj6ZFbr4/CPiTuwbX7n7Mr6/UsFHceVOp36Ba7AwC1tfaztyZUx+6bI7hoDp9crO7vglK4fS+fJEVQSrYgEVXcJOHU+cgSXHw+uEkSrAvBFnRTyTohtK95qG5+FoeUJDFEhEXDVDQmyQHT+BWdhID0V2ywzdbdJHHXamyz26Q0lJziAYGYA7ySSdz3M4OD5kF2Fp/FrV/xIRRBKUVQShGUcnnBLyF6f23rJ98QAAAAAElFTkSuQmCC);
}
.edrawings-button-fs-restore {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA0LTEzVDEzOjMwOjA1LTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNC0xM1QxMzozMDo0My0wNDowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0wNC0xM1QxMzozMDo0My0wNDowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5MjUyMGUzNC1hYWZkLTQ2NWMtODBjMC1lMjdjNTZlMDk1MzkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTI1MjBlMzQtYWFmZC00NjVjLTgwYzAtZTI3YzU2ZTA5NTM5IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6OTI1MjBlMzQtYWFmZC00NjVjLTgwYzAtZTI3YzU2ZTA5NTM5Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5MjUyMGUzNC1hYWZkLTQ2NWMtODBjMC1lMjdjNTZlMDk1MzkiIHN0RXZ0OndoZW49IjIwMTgtMDQtMTNUMTM6MzA6MDUtMDQ6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6zwljZAAAA4ElEQVRYhe2WMQ7DIAxFv6selC4+FEu5KV2SCCFIbFwFWvlNGUz8ZDCGcs5YmcdsgStc0IoLWnFBKy5o5SkNJCIw8xsAYoyvkWTleukEE1dw+3kAEPZEZdIzobP1V4grWBGY+fgG0KtoHadGXMFtW1OZXJi0jkuaI6JqkoakFpUc8ANdrBIsDvooqgYBAJK2OxENGfX4+jUzCxe04oJWVKOud83EGJstzsytVvVJcivLT5KR9+BOgmy767hb3oPHWSree5K4oE2kmsUznvxiwVn8VxfPwAWtuKAVF7SyvOAHYKtpVsefE9wAAAAASUVORK5CYII=) !important;
}
.edrawings-tree-expanded {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAALtJREFUOE/tkL0RgzAMhXHuTM0oZIMwQjZwClwnk5DaLuINMgLZIBmFGhdGzxYQCF1avjudnmSdfpzt/I9gH9Fav+H7vq+cc11MMkqpIs/zFtoYc4xJ4sB+pCArpZTPFM5wriRDzcSiQQjhTK4TQpxomyZl42YNciQ7rplYnADqulZU/ICm4gv8d2ytddAjPw0AT7+Sjf+Ate90+y2FM5sNAG3S8tqY/KLJVXxYsf7ECe89bv3AWO9skmUDwnw8r6UK7XsAAAAASUVORK5CYII=);
}
.edrawings-dialog-no-close .ui-dialog-titlebar-close {
display: none;
}
.edrawings-info-title .ui-dialog-title {
content: "Information";
font-weight: 600;
}
.edrawings-warn-title .ui-dialog-title {
content: "Warning";
font-weight: 600;
}
.edrawings-error-title .ui-dialog-title {
content: "Error";
font-weight: 600;
}
.edrawings-server-unsupported-file-type::after {
content: "Can not load " attr(data-file) ". It is an unsupported file type.";
}
.edrawings-server-ajax-failure::after {
content: "Server unavailable. Please try again. If the failure persists, please report this message to customer support.";
}
.edrawings-server-load-failure-1::after {
content: "Model viewing failed. Please reload and try again. If the failure persists, please report the information below to customer support.";
}
.edrawings-server-load-failure-2::after {
margin-top: 20px;
white-space: pre;
content: "\AServer: " attr(data-server-id);
}
.edrawings-server-load-failure-3::after {
content: "Model ID: " attr(data-model-cache-name);
}
.edrawings-server-url-inaccessible::after {
content: "Cannot access file URL: " attr(data-file-url);
white-space: nowrap;
}
.edrawings-server-websocket-create-failure::after {
content: "Could not establish streaming connection for viewer.";
}
.edrawings-unable-process-file::after {
content: "Unable to complete processing of this file.";
}
.edrawings-viewer-load-failure::after {
content: "Failed to load model in the viewer: " attr(data-error-message);
white-space: nowrap;
}
.edrawings-components::before {
content: "Total: ";
}
.edrawings-selected-components::before {
content: "Selected: ";
}
.edrawings-glcontextlost::after {
content: "Your browser or device does not have the resources to display the viewer.";
}
.edrawings-unknown-error::after {
content: "An error occurred. Please try again.";
}
.edrawings-unknown-license-error::after {
content: "A licensing error occurred. Please try again.";
}
.edrawings-license-version-mismatch-error::after {
content: "There is a license version mismatch.";
}
.edrawings-no-licenses-error::after {
content: "We're sorry, no licenses are available at this time. Please close an existing session of eDrawings Web Viewer and try again later.";
}
.edrawings-license-server-connection-error::after {
content: "We're sorry, we cannot connect to the server at this time. Please ensure that you are connected to the internet and the server is available.";
}
.edrawings-license-expired-error::after {
content: "Your license has timed out due to inactivity, license has been returned to the server.";
}
#edrawings-configurations-menu .edrawings-menu-title::after {
content: "Configurations";
}
/*=================================================================*/
/* Loading CSS */
#WaitBanner {
position: fixed;
z-index: 9999;
top: calc((100% - 65px - 24px)/ 2 - 5px);
left: calc((100% - 296px) / 2);
padding: 5px;
clear: both;
background-color: rgba(255, 255, 255, 0.85);
}
.edrawings-loading-logo-dark-text {
display: block;
position: relative;
margin: auto;
overflow: auto;
background-color: transparent;
}
.edrawings-loading-spin {
display: block;
position: relative;
top: 10px;
margin: auto;
width: 24px; /* 1.5x larger */
height: 24px;
overflow: auto;
background-image: url(data:image/gif;base64,R0lGODlhEAAQAAAAACH/C05FVFNDQVBFMi4wAwH//wAh+QQLBgAPACwAAAAAEAAQAIMvLy92dnaUlJSlpaWtra21tbW9vb3GxsbOzs7W1tbe3t7n5+fv7+/39/f///////8EifDJ52QJdeq3QnoC4DSFsnFAAAIPMizaAheAEbrI0yyOEwSGRkCAKAwIO2PjoQikGktK4zAowCauzCTxkRgGYNNmajBQBWixhlEoEAyTBUIrUVwlUwFy8z0wKEYIUwkNDApBCUdLdhwDCUULjg8MCVokBQ4HBA9UfxsLBDCaIwRdGiMSCAYVDVoRACH5BAsGAA8ALAAAAAAQABAAgz09PXNzc4uLi6Wlpa2trbW1tb29vcbGxs7OztbW1t7e3ufn5+/v7/f39////////wSL8Mnn5Ah16reCegHgNICxPUwQgMAjAIe2MM8BhwmwNovjCAJEIzBAGAYAxqIwaHAugobz0WAwCwtNwpCZJBITYwF7ahwMhjOBQN5YCwSThKHoShTZSQMxIEwnRwc0DkxCBwlVCgYNCX1OeE8JCFgDYAwJXQ1jDgcENQM0GwsEWZ0jBGAbIxJGFQ1dEQAh+QQLBgAPACwAAAAAEAAQAIM5OTl/f3+UlJSlpaWtra21tbW9vb3GxsbOzs7W1tbe3t7n5+fv7+/39/f///////8Ei/DJ5yQRdeq3xHpB4DCBsT3k8AjBChzawjxIkLAJ0DaK4xSDRENgUCAIAEYuiTIMCo2GxNEIAACFDAehlQQEE4TBcJhtOuODgUAofDaMQoFgkjB6G8Vb0kAMCFIaTmUUQAgNB0J3Bg0Jf1J6HEEIbkEoCVoNcg4HBA8HA2YxBB+dVAQJJ1QSYhUNWhEAIfkECwYADwAsAAAAABAAEACDOjo6fX19mJiYpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BI3wyeekGXXqx8p6Q+A0AbI9DVGAAQiY08I8ypAQggIIqOI4hYGiYTgsEoYA4wAANDiXQiMzCjQNmccCkZUIBhOEoTjbLAICAcFAUH02uiZgwvBt1poGYkB4ai4HM0ADCA0HCQ11Bg0JfE8KHws2CB42HAlZDQUFDgcEDwcDZRoLBB+eIwQJJyMSYhVTExEAIfkECwYADwAsAAAAABAAEACDQUFBb29vi4uLpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BIvwyeckMnXqxwp7B+E0Q7I9DWGAw1MEirZ8yqAcwxIUqOI4BVvDgGAoEAIGIhBocAyDQiMzEgACiMxjkd0QeBaD4fDZLARMgYHwXZwUAcB1YtRKCgdNAzEgOCcOcgMfQAMIDQcJDQwJAWdyTgpuCyUIBZQrCQNaDQUFDiEsZTIEbiEjBCYbI2EVUxMRACH5BAsGAA8ALAAAAAAQABAAgzw8PH9/f5iYmKWlpa2trbW1tb29vcbGxs7OztbW1t7e3ufn5+/v7/f39////////wSM8MnnJDJ16scKewfhNIWyPQ1hgMSDDIu2fMqghMyAoIvjFLaGAcFYKAiMhCDQ4BgGhUZmRAgIEjJEZnI4TC6Gw2fDWFoNBEIhtlkE3oEJQ7GVFLyTxovQnDgCAAEmPzoNBwkNCwQACwMAAE0KMY0JCAIFAAUPCQVbJJ0hD49sMgQxIQ4LmScjFhgcWxEAIfkECwYADwAsAAAAABAAEACDQEBAa2tri4uLpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BIzwyeckMnXqxwp7B+E0hbI9DWGAxIMMi7Z8yqCEzICgi+MUtoYBwVgoCI0FsMExDAqNzOgwIJgmC0RmcthZDIbDZ8MgDJ4GAqEQIw8EgsGEodhKuprGC6lxCAACMT86DVQKCQUBSgEBTAoxC1WMBwByN1skBQ4BAA+cCScLBDEAAA4LACsbIxKMFVETEQAh+QQLBgAPACwAAAAAEAAQAIM1NTVnZ2eBgYGlpaWtra21tbW9vb3GxsbOzs7W1tbe3t7n5+fv7+/39/f///////8EjfDJ5yQyderHCnsH4TSFsj0NYYDEgwyLtnzKoITMgKCL4xS2hgHBWCgIjQWwwTEMCo3M6PCMTRaIzCSRmFwMh8+mcTCADQRCwaphpFUTRkJr6U4arwBz4hgIBh8/TwoBMDcCDAcCAkwKMQYABQIBCAEtWFoMAAIOAQAPkyYbBwAmng4MAQcnIxKTFVETEQAh+QQLBgAPACwAAAAAEAAQAIMlJSVkZGSQkJClpaWtra21tbW9vb3GxsbOzs7W1tbe3t7n5+fv7+/39/f///////8Ei/DJ5yQyderHCnsH4TSFsj0NYYDEgwyLtnzKoITMgKCL4xS2hgHBWCgIjQWwwTEMCo3M6PCMTRaIzCSRmFwMh8+mcTCADQTCoLvpFFTegVaisEoYAQCAqXGGKXoCCwGCCwkCDAkDSA8lIAAEAgEJAQccCVp4AQ6SD5F2WwArkg4MAjsbIxIDAhVRExEAIfkECwYADwAsAAAAABAAEACDPj4+b29vkJCQpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BIrwyeckMnXqxwp7B+E0hbI9DWGAxIMMi7Z8yqCEzICgi+MUtoYBwVgoCI0FsMExDAqNzOjwjE0OgswkkZgEAIDAbtM4GAzYgPpw6hRU24JWorBKGAIwU+M8fBxfAgsCBAwMCQYNCQNIIGwJAG8CNV2HWg1qDgMCD04fGwtiD5sODARdGyMSThVRExEAIfkECwYADwAsAAAAABAAEACDPz8/c3NzkJCQpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BIfwyeckMnXqxwp7B+E0hbI9DWGAxIMMi3aYrxIyA4IujhMAA0bgwFgoCI1FYdB4LAQAAKNJaRwGhdjkIMhMEomJIEAOb6wGw+EXPZw6BdVEgdkotJLGABCgTgwDRBQ/QSoMDHQNCQNILjoKQwZZA2EMCV4NAl0GLVcfG09hnCMEZhojFnUNXhEAIfkECwYADwAsAAAAABAAEACDLi4ub29vjY2NpaWlra2ttbW1vb29xsbGzs7O1tbW3t7e5+fn7+/v9/f3////////BI3wyeckMnXqpwB6B+E0hbI9DACAxIMMi5aYB0DczPA1i+MEtkYgkFgoCLzCoPFIAAMNJqVxGBRik4MgM0kkJgOB2LShGgzaIfHEKBQIhskCwZUosJKGQSydGAYHDBQDAQUMBwkNDAoGDQkDSC5fCwMJCFeVKAlcJAUOISADghsLBDEhIwRfGyMWGA8NXBEAOw==);
background-size: contain;
background-color: transparent;
}
/* Loading CSS */
/*=================================================================*/
/*=================================================================*/
/* ticker CSS */
@keyframes edrawings-ticker-animation {
0% {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
visibility: visible;
}
100% {
-webkit-transform: translate3d(-66.667%, 0, 0);
transform: translate3d(-66.667%, 0, 0);
}
}
/* The current state of edrawings-ticker-wrapper is a full width tooltip without any animation */
.edrawings-ticker-wrapper {
box-sizing: content-box;
position: fixed;
z-index: 101;
border: 1px solid rgba(140,140,140,1.0);
width: 100%;
height: 24px;
line-height: 24px;
overflow: hidden;
background-color: rgba(255, 255, 255, 1.0);
color: black;
font-family: Arial;
font-size: 12px;
text-align: center;
}
.edrawings-ticker-wrapper.edrawings-animation {
padding-left: 0px; /* 100px; */
width: 100px;
/* IE has support of unset */
/* text-align: unset; */
text-align: left;
}
.edrawings-ticker {
display: inline-block;
white-space: nowrap;
}
.edrawings-ticker-wrapper.edrawings-animation .edrawings-ticker {
padding-right: 0px; /* 100%; */
-webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
-webkit-animation-name: edrawings-ticker-animation;
animation-name: edrawings-ticker-animation;
-webkit-animation-duration: 7s;
animation-duration: 7s;
}
/* End ticker CSS */
/*=================================================================*/
/*=================================================================*/
/* edrawings-menu-panel-wrapper CSS */
.edrawings-menu.edrawings-collapsible .edrawings-menu-panel-wrapper {
position: relative;
left: 0px;
top: 0px;
border: 1px solid gray;
/* Make room for the edrawings-menu-panel-arrow-collapse */
width: calc(100% - (16px + (2 * 1px) + (2 * 1px)) - 1px);
width: -o-calc(100% - (16px + (2 * 1px) + (2 * 1px)) - 1px);
width: -webkit-calc(100% - (16px + (2 * 1px) + (2 * 1px)) - 1px);
width: -moz-calc(100% - (16px + (2 * 1px) + (2 * 1px)) - 1px);
height: calc(100% - (2 * 1px));
height: -o-calc(100% - (2 * 1px));
height: -webkit-calc(100% - (2 * 1px));
height: -moz-calc(100% - (2 * 1px));
background-color: rgba(232, 232, 232, 0.9);
cursor: pointer;
}
#edrawings-explode-menu.edrawings-collapsible .edrawings-menu-panel-wrapper {
position: relative;
left: 0px;
top: 0px;
border: 1px solid gray;
/* substract the border width */
height: calc(100% - (2 * 1px));
height: -o-calc(100% - (2 * 1px));
height: -webkit-calc(100% - (2 * 1px));
height: -moz-calc(100% - (2 * 1px));
/* substract the border width */
max-height: calc(100% - (2 * 1px));
max-height: -o-calc(100% - (2 * 1px));
max-height: -webkit-calc(100% - (2 * 1px));
max-height: -moz-calc(100% - (2 * 1px));
background-color: rgba(232, 232, 232, 0.9);
cursor: pointer;
}
#edrawings-section-menu.edrawings-collapsible .edrawings-menu-panel-wrapper {
position: relative;
left: 0px;
top: 0px;
border: 1px solid gray;
padding: 2px;
height: auto;
/* substract the border height and padding height */
max-height: calc(100% - (2 * 1px) - (2 * 2px));
max-height: -o-calc(100% - (2 * 1px) - (2 * 2px));
max-height: -webkit-calc(100% - (2 * 1px) - (2 * 2px));
max-height: -moz-calc(100% - (2 * 1px) - (2 * 2px));
overflow: auto;
background-color: rgba(232, 232, 232, 0.9);
cursor: pointer;
text-align: center;
}
/* Mozilla only. Add 17~22 px for the firefox vertical scrollbar */
@-moz-document url-prefix() {
#edrawings-section-menu.edrawings-collapsible.edrawings-collided .edrawings-menu-panel-wrapper {
padding-right: 18px;
}
}
/* For IE Edge, need non-zero padding-right for outward vertical scrollbar. */
@supports (-ms-accelerator:true) or (-ms-ime-align: auto) {
#edrawings-section-menu.edrawings-collapsible.edrawings-collided.edrawings-wiggle .edrawings-menu-panel-wrapper {
padding-right: 1px;
}
.edrawings-tool-bar.edrawings-out-of-view ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collided .edrawings-menu-panel-wrapper {
padding-right: 16px;
}
}
/* For IE SP11, need non-zero padding-right for outward vertical scrollbar. */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
#edrawings-section-menu.edrawings-collapsible.edrawings-collided.edrawings-wiggle .edrawings-menu-panel-wrapper {
padding-right: 1px;
}
.edrawings-tool-bar.edrawings-out-of-view ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collided .edrawings-menu-panel-wrapper {
padding-right: 16px;
}
}
#edrawings-measure-panel.edrawings-collapsible .edrawings-menu-panel-wrapper {
/* IE has no support of unset */
/* height: unset; */
height: auto;
max-height: calc(100% - (2 * 1px));
max-height: -o-calc(100% - (2 * 1px));
max-height: -webkit-calc(100% - (2 * 1px));
max-height: -moz-calc(100% - (2 * 1px));
overflow: auto;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
#edrawings-measure-panel.edrawings-collapsible.edrawings-collided.edrawings-wiggle .edrawings-menu-panel-wrapper {
/* For IE SP11, need non-zero padding-right for outward vertical scrollbar. */
padding-right: 2px;
}
.edrawings-tool-bar.edrawings-out-of-view ~ #edrawings-measure-panel.edrawings-collapsible.edrawings-collided .edrawings-menu-panel-wrapper {
/* For IE SP11, need non-zero padding-right for outward vertical scrollbar. */
padding-right: 16px;
}
}
#edrawings-markup-menu.edrawings-collapsible .edrawings-menu-panel-wrapper {
overflow: auto;
}
#edrawings-config-navigation.edrawings-collapsible .edrawings-menu-panel-wrapper {
/* Make room for the edrawings-menu-panel-arrow-collapse button */
left: calc(16px + (2 * 1px) + (2 * 1px) - 1px);
left: -o-calc(16px + (2 * 1px) + (2 * 1px) - 1px);
left: -webkit-calc(16px + (2 * 1px) + (2 * 1px) -1px);
left: -moz-calc(16px + (2 * 1px) + (2 * 1px) - 1px);
height: auto;
max-height: calc(100% - (2 * 1px));
max-height: -o-calc(100% - (2 * 1px));
max-height: -webkit-calc(100% - (2 * 1px));
max-height: -moz-calc(100% - (2 * 1px));
overflow: auto;
}
#edrawings-config-navigation.edrawings-collapsible.edrawings-collided .edrawings-menu-panel-wrapper {
height: 100%;
overflow: hidden;
}
/* End edrawings-menu-panel-wrapper CSS */
/*=================================================================*/
#edrawings-component-tree-list.edrawings-submenu-list {
/* calc(100% - edrawings-menu-header - edrawings-menu-search) */
height: calc(100% - 41px - (36px + (2 * 1px) + 5px));
height: -o-calc(100% - 41px - (36px + (2 * 1px) + 5px));
height: -webkit-calc(100% - 41px - (36px + (2 * 1px) + 5px));
height: -moz-calc(100% - 41px - (36px + (2 * 1px) + 5px));
}
#edrawings-debug-list.edrawings-submenu-list {
/* calc(100% - edrawings-menu-header - edrawings-menu-search - edrawings-menu-search) */
height: calc(100% - 41px - (36px + (2 * 1px) + 5px) - (36px + (2 * 1px) + 5px));
height: -o-calc(100% - 41px - (36px + (2 * 1px) + 5px) - (36px + (2 * 1px) + 5px));
height: -webkit-calc(100% - 41px - (36px + (2 * 1px) + 5px) - (36px + (2 * 1px) + 5px));
height: -moz-calc(100% - 41px - (36px + (2 * 1px) + 5px) - (36px + (2 * 1px) + 5px));
}
#edrawings-button-confignav.active-button img.edrawings-icon#edrawings-button-confignav-g {
transform: rotate(90deg);
}
/*=================================================================*/
/* edrawings-menu-panel-arrow-collapse CSS */
.edrawings-menu-panel-arrow-collapse {
display: inline-block;
position: absolute;
z-index: 99;
top: 0px;
right: 0px;
/* margin-right: calc(-16px - (2 * 1px) - (2 * 1px)); */
border: 1px solid rgba(140, 140, 140, 1.0);
padding: 0px 1px;
width: 16px;
height: 41px; /* match the height of the panel header */
line-height: 44px;
vertical-align: middle;
background-color: rgba(232, 232, 232, 0.9);
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAANFJREFUOBHVUssRgjAQJY7hTAmWYAlYAh3EAzmbSvQMB9OBJUAHWoIlcCaH8HZkYWB28EwO2d97L7tJkmT3S0kTWGvfyGcxxqKu64+E4dyBHcGelFJNWZZGqE0pUaDv+wtOb4HKIPJER/eJsXLEERgzEm8Uk2AIofDed1wnK3bAgKqqHIhXxB06ydM0bbjGdlOAQVt2U4BGoDuAAL1IS3ezFjuuExQbYzKt9QtuTjHWA8/pfu5yFwXGWc+AdjjZgeyXtDkSBcbyF+S/H2mW2q03ANLBRIizuA/1AAAAAElFTkSuQmCC);
background-repeat: no-repeat;
background-position-y: 50%;
transform: rotate(180deg);
cursor: pointer;
}
.edrawings-submenu.edrawings-collapsible.edrawings-collapsed .edrawings-menu-panel-arrow-collapse,
.edrawings-menu.edrawings-collapsible.edrawings-collapsed .edrawings-menu-panel-arrow-collapse {
z-index: 99;
height: 44px; /* match the height of the bottom-button edrawings-tool-button */
/* IE has no support of unset */
/* transform: unset; */
transform: none;
}
#edrawings-config-navigation.edrawings-collapsible .edrawings-menu-panel-arrow-collapse {
left: 0px;
/* IE has no support of unset */
/* right: unset; */
right: auto;
/* IE has no support of unset */
/* transform: unset; */
transform: none;
}
#edrawings-config-navigation.edrawings-collapsible.edrawings-collapsed .edrawings-menu-panel-arrow-collapse {
/* substract height and border */
top: calc(100% - 41px - (2 * 1px));
top: -o-calc(100% - 41px - (2 * 1px));
top: -webkit-calc(100% - 41px - (2 * 1px));
top: -moz-calc(100% - 41px - (2 * 1px));
height: 41px; /* Match to the panel header height */
transform: rotate(180deg);
}
#edrawings-explode-menu.edrawings-collapsible .edrawings-menu-panel-arrow-collapse,
#edrawings-section-menu.edrawings-collapsible .edrawings-menu-panel-arrow-collapse {
right: calc(-16px - (2 * 1px) - (2 * 1px) + 1px);
right: -o-calc(-16px - (2 * 1px) - (2 * 1px) + 1px);
right: -webkit-calc(-16px - (2 * 1px) - (2 * 1px) + 1px);
right: -moz-calc(-16px - (2 * 1px) - (2 * 1px) + 1px);
}
#edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed .edrawings-menu-panel-arrow-collapse,
#edrawings-section-menu.edrawings-collapsible.edrawings-collapsed .edrawings-menu-panel-arrow-collapse {
right: 0px;
}
/* End edrawings-menu-panel-arrow-collapse CSS */
/*=================================================================*/
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar {
padding-bottom: 0px;
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar,
.bottom-bar.edrawings-ui-hide ~ .edrawings-hud-menu,
.bottom-bar.edrawings-ui-hide ~ .edrawings-submenu,
.bottom-bar.edrawings-ui-hide ~ .edrawings-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-hud-menu,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-submenu,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.bottom-bar.edrawings-ui-hide ~ #edrawings-hud-shaded-menu.edrawings-hud-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ #edrawings-hud-shaded-menu.edrawings-hud-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 50px; /* calc((50px + 0px) + 0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 0px; /* calc(0px + 0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-menu {
/* (bottom gap + bottom-bar height) */
bottom: 0px; /* calc(0px + 0px); */
}
/* edrawings-menu left + edrawings-menu max-width */
/* calc((2px + 50px) + 500px) */
@media screen and (max-width: 552px) {
.edrawings-menu {
/* 100% - edrawings-menu left - padding on the right */
max-width: calc(100% - (0px + 50px) - 2px);
max-width: -o-calc(100% - (0px + 50px) - 2px);
max-width: -webkit-calc(100% - (0px + 50px) - 2px);
max-width: -moz-calc(100% - (0px + 50px) - 2px);
}
}
/* edrawings-menu left + edrawings-menu min-width */
/* calc((0px + 50px) + 321px) */
@media screen and (max-width: 371px) {
.edrawings-menu {
/* 100% - edrawings-menu left - padding on the right */
width: calc(100% - (0px + 50px) - 2px);
width: -o-calc(100% - (0px + 50px) - 2px);
width: -webkit-calc(100% - (0px + 50px) - 2px);
width: -moz-calc(100% - (0px + 50px) - 2px);
/* edrawings-tree-arrow-space-common +
edrawings-tree-icon +
5px item-tree-text width for ellipsis +
edrawings-submenu-list-item-button +
menu panel collapse button +
padding on the right */
min-width: calc((5px + 15px) + 40px + 5px + (20px + 10px) + (16px + 2px) + 2px);
min-width: -o-calc((5px + 15px) + 40px + 5px + (20px + 10px) + (16px + 2px) + 2px);
min-width: -webkit-calc((5px + 15px) + 40px + 5px + (20px + 10px) + (16px + 2px) + 2px);
min-width: -moz-calc((5px + 15px) + 40px + 5px + (20px + 10px) + (16px + 2px) + 2px);
}
}
@media screen and (max-height: 400px) {
.bottom-bar {
display: none;
}
.edrawings-menu {
/* (bottom gap + bottom-bar height) */
bottom: 0px; /* calc(0px + 0px); */ /* This is the gap height now */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px)));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.edrawings-tool-bar {
padding-bottom: 0px;
}
.edrawings-tool-bar,
.edrawings-hud-menu,
#edrawings-section-menu,
#edrawings-explode-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-hud-menu,
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-section-menu,
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-explode-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
#edrawings-hud-shaded-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (2 * 2px));
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-hud-shaded-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
}
#edrawings-config-navigation {
/* (bottom gap + bottom-bar height) */
bottom: 0px;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px));
}
#edrawings-top-bar.edrawings-out-of-view ~ #edrawings-config-navigation {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 50px; /* calc(50px + 0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + edrawings-bottom-centered-icons padding + (top-arrow height + top-arrow padding) */
top: 0px; /* calc(0px + 0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((50px + 0px) + (10px + 10px));
top: -o-calc((50px + 0px) + (10px + 10px));
top: -webkit-calc((50px + 0px) + (10px + 10px));
top: -moz-calc((50px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (50px + 0px) - (0px + 0px) - (10px + 10px));
}
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
#edrawings-top-bar.edrawings-out-of-view ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
}
/* Window Edge 16 and 17, not Window IE 11, stops sending resize event when width reaches below 372px */
@media screen and (max-width: 372px) {
@supports (-ms-accelerator:true) or (-ms-ime-align: auto) {
/* (-ms-accelerator:true): IE Edge 12+ CSS */
/* (-ms-ime-align: auto): IE Edge 16+ CSS */
/* The rest is similar to the behavior of having
#edrawings-top-bar.edrawings-out-of-view
#edrawings-left-bar.edrawings-out-of-view
.bottom-bar.edrawings-ui-hide */
#edrawings-top-bar-content {
top: -10000px;
}
.edrawings-tool-bar {
top: 0px;
left: -10000px;
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.bottom-bar {
display: none;
}
.edrawings-hud-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.edrawings-menu {
top: 0px;
left: -9950px; /* calc(-10000px + 50px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.edrawings-menu {
left: -9950px; /* calc(-10000px + 50px); */
}
.edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: 0px; /* calc(0px + 0px)*/
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
#edrawings-hud-shaded-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
}
#edrawings-section-menu {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px); */
left: -9950px; /* calc(-10000px + 50px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
#edrawings-explode-menu {
/* (top-bar height + top gap) */
top: 0px; /* calc(0px + 0px); */
left: -9950px; /* calc(-10000px + 50px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
#edrawings-config-navigation {
bottom: 0px;
left: -9950px; /* calc(-10000px + 50px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar,
.bottom-bar.edrawings-ui-hide ~ .edrawings-hud-menu,
.bottom-bar.edrawings-ui-hide ~ .edrawings-submenu,
.bottom-bar.edrawings-ui-hide ~ .edrawings-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px));
}
.bottom-bar.edrawings-ui-hide ~ #edrawings-hud-shaded-menu.edrawings-hud-menu {
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - padding */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (2 * 2px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px) - (10px + 10px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-up ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: 0px; /* calc(0px + 0px); */
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (bottom-arrow padding + bottom-arrow height) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-explode-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ #edrawings-section-menu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-submenu.edrawings-collapsible.edrawings-collapsed,
.bottom-bar.edrawings-ui-hide ~ .edrawings-tool-bar.edrawings-collided.edrawings-removed-arrow-down ~ .edrawings-menu.edrawings-collapsible.edrawings-collapsed {
/* (top-bar height + top gap) + (top-arrow height + top-arrow padding) */
top: calc((0px + 0px) + (10px + 10px));
top: -o-calc((0px + 0px) + (10px + 10px));
top: -webkit-calc((0px + 0px) + (10px + 10px));
top: -moz-calc((0px + 0px) + (10px + 10px));
/* 100% - (top-bar height + top gap) - (bottom gap + bottom-bar height) - (top-arrow height + top-arrow padding) */
max-height: calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -o-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -webkit-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
max-height: -moz-calc(100% - (0px + 0px) - (0px + 0px) - (10px + 10px));
}
}
}
</style>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<div id="edrawings-viewer" class="edrawings-viewer-regular">
<div id="edrawings-top-bar"
class="top-bar edrawings-ui-main edrawings-ui-hide">
<div id="edrawings-top-bar-content">
<div id="edrawings-logo-block"
class="edrawings-top-bar-left">
<div id="edrawings-logo"
class="edrawings-logo-icon unselectable">
</div>
</div>
<div id="edrawings-filename-block"
class="edrawings-top-bar-left">
<span id="edrawings-filename-text"
class="unselectable">
eDrawings
</span>
</div>
<div id="edrawings-hud-bar"
class="edrawings-top-bar-left">
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-left"></div>
</div>
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-right"></div>
</div>
<div class="edrawings-hud-bar-content">
<!-- Reset actually has the behavior of a tool button so
use that as the class type instead of the HUD button
class. -->
<div id="edrawings-button-reset"
class="edrawings-tool-button edrawings-reset-icon edrawings-icon edrawings-ui-hide"
title="Reset">
</div>
<div id="edrawings-button-animate"
class="edrawings-hud-button edrawings-animate-play-icon edrawings-icon edrawings-ui-hide"
title="Animate Views">
</div>
<div id="edrawings-button-zoomtofit"
class="edrawings-hud-button edrawings-zoomtofit-icon edrawings-hud-icon"
title="Zoom to Fit">
</div>
<div id="edrawings-button-view-settings"
class="edrawings-hud-button edrawings-view-settings-icon edrawings-hud-icon"
title="View Settings">
</div>
<div id="edrawings-button-view"
class="edrawings-hud-button edrawings-view-icon edrawings-hud-dd-icon"
title="Views orientation">
</div>
<div id="edrawings-button-shaded"
class="edrawings-hud-button edrawings-display-icon edrawings-hud-dd-icon"
title="Display">
</div>
<div id="edrawings-button-help"
class="edrawings-hud-button edrawings-help-icon edrawings-hud-icon"
title="Help">
</div>
<div id="edrawings-button-fs"
class="edrawings-hud-button edrawings-hud-icon"
title="Fullscreen">
</div>
</div>
</div>
</div>
</div>
<div id="edrawings-config-bar" class="bottom-bar edrawings-ui-hide">
<div id="config-tab-border"></div>
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-left"></div>
</div>
<div id="edrawings-config-tab-list" class="edrawings-fullwidth">
</div>
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-right"></div>
</div>
<div id="edrawings-button-sheets"
class="edrawings-sheets-control">
<div id="edrawings-button-confignav"
class="edrawings-tool-button bottom-button edrawings-modelview-panel-icon edrawings-icon"
title="All">
</div>
</div>
</div>
<div id="edrawings-left-bar"
class="edrawings-ui-main edrawings-tool-bar edrawings-ui-hide">
<div class="edrawings-bottom-centered-icons">
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-up"></div>
</div>
<div class="edrawings-arrow-wrapper">
<div class="edrawings-arrow-down"></div>
</div>
<div class="edrawings-tool-bar-content">
<div id="edrawings-button-component-tree"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-component-tree-icon edrawings-icon"
title="Components">
</div>
<div id="edrawings-button-sheet-tree"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-sheet-tree-icon edrawings-icon"
title="Sheets">
</div>
<div id="edrawings-button-layer-control"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-layer-icon edrawings-icon"
title="Layers">
</div>
<div id="edrawings-button-configurations"
class="edrawings-tool-button bottom-button edrawings-ui-hide edrawings-configurations-icon edrawings-icon"
title="Configurations">
</div>
<div id="edrawings-button-explode"
class="edrawings-tool-button bottom-button edrawings-icon-plugin edrawings-ui-hide edrawings-explode-icon edrawings-icon"
title="Explode">
</div>
<div id="edrawings-button-section"
class="edrawings-tool-button bottom-button edrawings-ui-hide edrawings-section-icon edrawings-icon"
title="Section Views">
</div>
<div id="edrawings-button-measure"
class="edrawings-tool-button bottom-button edrawings-disabled-button edrawings-icon-plugin edrawings-ui-hide edrawings-measure-icon edrawings-icon"
title="Measure">
</div>
<div id="edrawings-button-move"
class="edrawings-tool-button bottom-button edrawings-icon-plugin edrawings-ui-hide edrawings-move-icon edrawings-icon"
title="Move">
</div>
<div id="edrawings-button-annot-control"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-annot-icon edrawings-icon"
title="Annotations">
</div>
<div id="edrawings-button-markup"
class="edrawings-tool-button bottom-button edrawings-ui-hide edrawings-markup-icon edrawings-icon"
title="Markup">
</div>
<div id="edrawings-button-tables-control"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-table-icon edrawings-icon"
title="Tables">
</div>
<div id="edrawings-button-debug"
class="bottom-button edrawings-tool-button edrawings-ui-hide edrawings-debug-icon edrawings-icon"
title="Debug">
</div>
</div>
</div>
</div>
<div id="edrawings-section-menu" class="edrawings-submenu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div id="edrawings-section-xy-button"
class="bottom-button bottom-menu-button section-button edrawings-section-xy-icon edrawings-icon" title="X/Y Plane">
</div>
<div id="edrawings-section-yz-button"
class="bottom-button bottom-menu-button section-button edrawings-section-yz-icon edrawings-icon" title="Y/Z Plane">
</div>
<div id="edrawings-section-xz-button"
class="bottom-button bottom-menu-button section-button edrawings-section-xz-icon edrawings-icon" title="X/Z Plane">
</div>
<div id="edrawings-section-flip-button"
class="bottom-button bottom-menu-button section-button edrawings-section-flip-icon edrawings-icon" title="Flip">
</div>
<div id="edrawings-section-normal-button"
class="bottom-button bottom-menu-button section-button edrawings-section-normal-to-icon edrawings-icon" title="View the from Section Plane">
</div>
<div id="edrawings-section-show-button"
class="bottom-button bottom-menu-button section-button edrawings-section-show-icon edrawings-icon"
style="display: none"
title="Show Section Plane">
</div>
<hr />
<div id="edrawings-section-capping-button"
class="bottom-button bottom-menu-button section-button edrawings-section-capping-icon edrawings-icon" title="Enable Capping">
</div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-explode-menu" class="edrawings-submenu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div id="edrawings-explode-up"
class="slide-bar-button edrawings-explode-up edrawings-bar-icon"
title="Explode Up">
</div>
<div id="edrawings-explode-slider"></div>
<div id="edrawings-explode-down"
class="slide-bar-button edrawings-explode-down edrawings-bar-icon"
title="Explode Down">
</div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-measure-panel" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
</div>
<div id="edrawings-markup-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
</div>
<div id="edrawings-component-tree-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div class="edrawings-menu-header">
<div class="edrawings-menu-title edrawings-comp-count">Components</div>
<div id="edrawings-component-tree-setting" class="edrawings-menu-setting edrawings-menu-icon edrawings-settings-icon"></div>
<div id="edrawings-component-tree-close" class="edrawings-menu-close edrawings-menu-icon edrawings-close-icon"></div>
</div>
<div class="edrawings-menu-search">
<input id="edrawings-search-component-input" class="edrawings-menu-search-input" placeholder="Enter text to filter list">
<div id="component-search-cancel" class="edrawings-menu-search-cancel edrawings-search-cancel-icon" style="display:none"></div>
</div>
<div id="edrawings-component-tree-list" class="edrawings-submenu-list">
</div>
<div class="clearfix"></div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-debug-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
</div>
<div id="edrawings-sheet-tree-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div class="edrawings-menu-header">
<div class="edrawings-menu-title">Sheets</div>
<div id="edrawings-sheet-tree-setting"
class="edrawings-menu-setting edrawings-menu-icon edrawings-settings-icon">
</div>
<div id="edrawings-sheet-tree-close"
class="edrawings-menu-close edrawings-menu-icon edrawings-close-icon">
</div>
</div>
<div id="edrawings-sheet-tree-list" class="edrawings-submenu-list"></div>
<div class="clearfix"></div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-layer-control-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div class="edrawings-menu-header">
<div class="edrawings-menu-title">Layers</div>
<div id="edrawings-layer-control-setting" class="edrawings-menu-setting edrawings-menu-icon edrawings-settings-icon"></div>
<div id="edrawings-layer-control-close" class="edrawings-menu-close edrawings-menu-icon edrawings-close-icon"></div>
</div>
<div id="edrawings-layer-control-all" class="edrawings-submenu-list">
</div>
<div id="edrawings-layer-control-list" class="edrawings-submenu-list">
</div>
<div class="clearfix"></div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-annot-control-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
</div>
<div id="edrawings-tables-menu" class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
</div>
<div id="edrawings-hud-view-settings-menu"
class="edrawings-hud-menu edrawings-common-panel-props edrawings-ui-hide"
style="top: 57px; left: 1365px">
<table class="edrawings-hud-menu-table">
<tbody>
<tr>
<td>
<div id="edrawings-button-view-ambient-occlusion"
class="hud-menu-button edrawings-view-ambient-occl-icon edrawings-icon" title="Ambient Occlusion">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-view-perspective"
class="hud-menu-button edrawings-view-perspective-icon edrawings-icon" title="Perspective">
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div id="edrawings-hud-view-menu"
class="edrawings-hud-menu edrawings-common-panel-props edrawings-ui-hide">
<table class="edrawings-hud-menu-table">
<tr>
<td></td>
<td>
<div id="edrawings-button-view-top"
class="hud-menu-button hover-active-button edrawings-icon edrawings-view-top-icon"
title="Top">
</div>
</td>
<td></td>
<td>
<div id="edrawings-button-view-iso"
class="hud-menu-button hover-active-button edrawings-view-iso-icon edrawings-icon"
title="Isometric">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-view-left"
class="hud-menu-button hover-active-button edrawings-view-left-icon edrawings-icon"
title="Left">
</div>
</td>
<td>
<div id="edrawings-button-view-front"
class="hud-menu-button hover-active-button edrawings-view-front-icon edrawings-icon"
title="Front">
</div>
</td>
<td>
<div id="edrawings-button-view-right"
class="hud-menu-button hover-active-button edrawings-view-right-icon edrawings-icon"
title="Right">
</div>
</td>
<td>
<div id="edrawings-button-view-back"
class="hud-menu-button hover-active-button edrawings-view-back-icon edrawings-icon"
title="Back">
</div>
</td>
</tr>
<tr>
<td></td>
<td>
<div id="edrawings-button-view-bottom"
class="hud-menu-button hover-active-button edrawings-view-bottom-icon edrawings-icon"
title="Bottom">
</div>
</td>
<td></td>
<td>
<div id="edrawings-face-normal-button"
class="hud-menu-button hover-active-button edrawings-view-face-normal-icon edrawings-icon"
title="View from Selected Face">
</div>
</td>
</tr>
</table>
</div>
<div id="edrawings-hud-shaded-menu"
class="edrawings-hud-menu edrawings-common-panel-props edrawings-ui-hide">
<table class="edrawings-hud-menu-table">
<tr>
<td>
<div id="edrawings-button-shaded-full"
class="hud-menu-button edrawings-shaded-icon edrawings-icon"
title="Shaded With Edges">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-shaded-noedges"
class="hud-menu-button edrawings-shaded-noedges-icon edraings-icon"
title="Shaded">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-shaded-hlrr"
class="hud-menu-button edrawings-hlrr-icon edrawings-icon"
title="Hidden Lines Removed">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-shaded-hlrv"
class="hud-menu-button edrawings-hlrv-icon edrawings-icon"
title="Hidden Lines Visible">
</div>
</td>
</tr>
<tr>
<td>
<div id="edrawings-button-shaded-wireframe"
class="hud-menu-button edrawings-wireframe-icon edrawings-icon"
title="Wireframe">
</div>
</td>
</tr>
</table>
</div>
<div id="edrawings-hud-help-menu"
class="edrawings-hud-menu edrawings-common-panel-props edrawings-ui-hide">
<div id="edrawings-hud-help-close" class="edrawings-hud-menu-close edrawings-menu-icon edrawings-close-icon"></div>
<div class="edrawings-help-grid">
<table class="edrawings-help-table">
<tr>
<td class="help-column-first">
<div class="help-table-button edrawings-help-refresh-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-second">
<div class="help-table-button edrawings-help-leftmouse-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-third">
<div class="help-table-button edrawings-help-touch-single-swipe-icon edrawings-icon edrawings-help-icon">
</div>
</td>
</tr>
<tr>
<td class="help-column-first">
<div class="help-table-button edrawings-help-pan-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-second">
<div class="help-table-button edrawings-help-rightmouse-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-third">
<div class="help-table-button edrawings-help-touch-double-swipe-icon edrawings-icons edrawings-help-icon">
</div>
</td>
</tr>
<tr>
<td class="help-column-first">
<div class="help-table-button edrawings-help-zoom-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-second">
<div class="help-table-button edrawings-help-scrollmouse-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-third">
<div class="help-table-button edrawings-help-touch-spread-icon edrawings-help-icon edrawings-icon">
</div>
</td>
</tr>
<tr>
<td class="help-column-first">
<div class="help-table-button edrawings-help-zoomtofit-icon edrawings-icon edrawings-help-icon">
</div>
</td>
<td class="help-column-second">
<div class="help-table-button edrawings-help-doubleclickmouse-icon edrawings-icon edrawingshelp-icon">
</div>
</td>
<td class="help-column-third">
<div class="help-table-button edrawings-help-touch-doubletap-icon edrawings-help-icon edrawings-icon">
</div>
</td>
</tr>
</table>
</div>
<div id="edrawings-version"></div>
</div>
<div id="edrawings-configurations-menu"
class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div class="edrawings-menu-header">
<div class="edrawings-menu-title"></div>
<div class="edrawings-menu-close edrawings-menu-icon edrawings-close-icon"></div>
</div>
<div class="edrawings-submenu-list">
</div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<div id="edrawings-config-navigation"
class="edrawings-submenu edrawings-menu edrawings-common-panel-props edrawings-collapsible edrawings-ui-hide">
<div class="edrawings-menu-panel-wrapper">
<div class="edrawings-menu-header">
<div class="edrawings-menu-title"></div>
<div class="edrawings-menu-close edrawings-menu-icon edrawings-close-icon"></div>
</div>
<div class="edrawings-submenu-list">
</div>
</div>
<div class="edrawings-menu-panel-arrow-collapse"></div>
</div>
<ul id="edrawings-shortcut-menu" class="edrawings-common-panel-props edrawings-ui-hide"></ul>
<div id="edrawings-dialog-panel" class="edrawings-dialog-panel">
<div id="edrawings-dialog-panel-text">
</div>
</div>
<div id="viewerContainer">
<div id="edrawings-canvas"></div>
</div>
<div class="edrawings-ticker-wrapper edrawings-ui-hide">
<div class="edrawings-ticker"></div>
</div>
</div>
<div id="WaitBanner">
<div id="spin" class="edrawings-loading-spin">
</div>
<div class="edrawings-loading-logo-dark-text edrawings-logo-text-icon">
</div>
</div>
<div id="edrawings-file">
</div>
<div id="edrawings-fileopen-background" class="edrawings-ui-hide">
</div>
<div id="TimeoutBanner" class="edrawings-ui-hide"
style="margin-top: -65%">
<table style="width: 100%; height: 100%">
<tr style="vertical-align: central">
<td style="text-align: center;">
<p class="edrawings-drop-title">Connection timed-out. Reload the page to continue.</p>
</td>
</tr>
</table>
</div>
<script>
var solidworks={};(window.solidworks=solidworks).web={detect:function(){function n(e,n){var t;for(key in navigator.plugins)if((t=navigator.plugins[key]).name==e)return n&&console.log('Plugin "'+e+'" detected'),t;n&&console.log('Plugin "'+e+'" not detected')}var t;function o(e,n){try{var t=new ActiveXObject(e);return t&&n&&console.log('ActiveXObject "'+e+'" detected'),t}catch(e){n&&console.log('Error: ActiveXObject - "'+e.message+'"')}}var l=navigator.userAgent.toLowerCase();return{android:-1!=l.indexOf("android"),userAgent:l,mobile:-1!=l.indexOf("mobile"),iosMobile:-1!=l.indexOf("iphone")||-1!=l.indexOf("ipad")||-1!=l.indexOf("ipod"),iosChrome:-1!=l.indexOf("CriOS"),device:{allowsDownloads:!0,allowsUploads:!0,allowsFolderUploads:function(){var e=-1==l.indexOf("mobile")&&-1==l.indexOf("iphone")&&-1==l.indexOf("ipad")&&-1==l.indexOf("ipod")&&-1==l.indexOf("nexus")&&-1==l.indexOf("sm"),n=document.createElement("input");return n.type="file",!!("webkitdirectory"in(n||document.querySelectorAll("input[type=file]")[0])&&e)}},activeXObject:o,plugin:n,browser:function(){return this.name=this.name||(-1<(e=navigator?navigator.userAgent.toLowerCase():"other").indexOf("chrome")?"chrome":-1<e.indexOf("safari")?"safari":-1<e.indexOf("msie")||0<navigator.appVersion.indexOf("Trident/")?"ie":-1<e.indexOf("firefox")?"firefox":e);var e},PDFPlugin:function(e){return e=e||solidworks.web.detect.trace,t=t||o("AcroPDF.PDF",e)||o("PDF.PdfCtrl",e)||n("Adobe Acrobat",e)||n("Chrome PDF Viewer",e)||n("WebKit built-in PDF",e)},trace:!1}}(),elements:{get:function(){var n={};return function(e){return n[e]||(n[e]=$(e))}}()},fullscreen:{open:function(e,n){var t=document.getElementById(e);if(solidworks.web.detect.iosMobile)return solidworks.web.fullscreen.fallback.open(t);n&&$(t).on("webkitfullscreenchange mozfullscreenchange fullscreenchange",n);var o=t.requestFullScreen||t.requestFullscreen||t.webkitRequestFullScreen||t.webkitRequestFullscreen||t.mozRequestFullScreen||t.msRequestFullscreen;if(o)o.call(t);else if(void 0!==window.ActiveXObject){var l=new ActiveXObject("WScript.Shell");null!==l&&l.SendKeys("{F11}")}else solidworks.web.fullscreen.fallback.open(t)},close:function(e){var n;if(solidworks.web.detect.iosMobile)return solidworks.web.fullscreen.fallback.close();if(n=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullscreen||document.webkitCancelFullScreen||document.exitFullscreen||document.msExitFullscreen)n.call(document);else if("ActiveXObject"in window){var t=new ActiveXObject("WScript.Shell");null!==t&&t.SendKeys("{F11}")}else solidworks.web.fullscreen.fallback.close()},fallback:function(){var t,o,l,r=new WeakMap;function c(e,n){var t,o,l,r,c;if(e)for(l=(c=Object.keys(n)).length,t=0;t<l;t++)o=n[r=c[t]],e.style[r]=o}function i(n,e){var t=r.get(e);t&&t.forEach(function(e){e(n)})}return{addHandler:function(e,n){var t=r.get(n);if(!t)return r.set(n,new Set),this.addHandler(e,n);t.add(e)},clearHandlers:function(e){r.delete(e)},open:function(e){l=solidworks.web.scroll;var n=(o=e).getBoundingClientRect();t={position:e.style.position,top:n.top+"px",left:$(e).css("left"),height:n.height+"px",width:n.width+"px"},l.prevent(),c(e,{position:"absolute",top:"0px",left:"0px",height:window.innerHeight+"px",width:window.innerWidth+"px"}),i({type:"fullscreenchange",isFallback:!0},e)},close:function(){(l=solidworks.web.scroll).restore(),c(o,t),i({type:"fullscreenchange",isFallback:!0},o)}}}(),registerChangeEvent:function(e,n){(document.documentElement.requestFullScreen||document.requestFullscreen)&&document.addEventListener("fullscreenchange",e,!1),document.documentElement.mozRequestFullScreen&&document.addEventListener("mozfullscreenchange",e,!1),document.documentElement.webkitRequestFullScreen&&document.addEventListener("webkitfullscreenchange",e,!1),document.documentElement.msRequestFullscreen&&document.addEventListener("MSFullscreenChange",e,!1),solidworks.web.fullscreen.fallback.addHandler(e,n)},unregisterChangeEvent:function(e){try{(document.documentElement.requestFullScreen||document.requestFullscreen)&&document.removeEventListener("fullscreenchange",e,!1),document.documentElement.mozRequestFullScreen&&document.removeEventListener("mozfullscreenchange",e,!1),document.documentElement.webkitRequestFullScreen&&document.removeEventListener("webkitfullscreenchange",e,!1),document.documentElement.msRequestFullscreen&&document.removeEventListener("MSFullscreenChange",e,!1),(solidworks.web.fullscreen.fallback.handlers=solidworks.web.fullscreen.fallback.handlers||[]).push(e)}catch(e){console.error(e)}}},scroll:{prevent:function(){var e=solidworks.web,n=e.scroll.state=e.scroll.state||{},t=e.elements.get("body"),o=e.elements.get("document");n.overflow=t[0].style.overflow,n.scrollTop=o.scrollTop(),n._handler=function(){window.scrollTo(0,0)},n.pageYOffset=window.pageYOffset,n.pageXOffset=window.pageXOffset,n._handler(),t.css({overflow:"hidden"}),o.on("scroll",n._handler)},restore:function(){var e=solidworks.web,n=e.scroll.state=e.scroll.state||{},t=e.elements.get("body"),o=e.elements.get("document");t.css({overflow:n.overflow}),o.off("scroll",n._handler),window.scrollTo(n.pageYOffset,n.pageXOffset)}},path:{strip:function(e){return this.stripTrailing(this.stripLeading(e))},stripLeading:function(e){return 0===e.indexOf("/")&&(e=e.substr(1)),e},stripTrailing:function(e){return"/"===e.substr(e.length-1)&&(e=e.substr(0,e.length-1)),e},combine:function(){var e,n,t=arguments[0],o="",l=arguments.length;for(e=1;e<l;e++)o=o+" "+(n=arguments[e]),t=solidworks.web.path.stripTrailing(t)+"/"+solidworks.web.path.stripLeading(n);return t}},touch:{support:function(){if($.support.touch="ontouchend"in document,$.support.touch){var n,e=$.ui.mouse.prototype,t=e._mouseInit,o=e._mouseDestroy;function l(e,n){if(!(1<e.originalEvent.touches.length)){e.preventDefault();var t=e.originalEvent.changedTouches[0],o=document.createEvent("MouseEvents");o.initMouseEvent(n,!0,!0,window,1,t.screenX,t.screenY,t.clientX,t.clientY,!1,!1,!1,!1,0,null),e.target.dispatchEvent(o)}}e._touchStart=function(e){!n&&this._mouseCapture(e.originalEvent.changedTouches[0])&&(n=!0,this._touchMoved=!1,l(e,"mouseover"),l(e,"mousemove"),l(e,"mousedown"))},e._touchMove=function(e){n&&(this._touchMoved=!0,l(e,"mousemove"))},e._touchEnd=function(e){n&&(l(e,"mouseup"),l(e,"mouseout"),this._touchMoved||l(e,"click"),n=!1)},e._mouseInit=function(){var e=this;e.element.bind({touchstart:$.proxy(e,"_touchStart"),touchmove:$.proxy(e,"_touchMove"),touchend:$.proxy(e,"_touchEnd")}),t.call(e)},e._mouseDestroy=function(){var e=this;e.element.unbind({touchstart:$.proxy(e,"_touchStart"),touchmove:$.proxy(e,"_touchMove"),touchend:$.proxy(e,"_touchEnd")}),o.call(e)}}}}};
/*! jQuery v3.3.1 | (c) JS Foundation and other contributors | jquery.org/license */
!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,s=n.push,u=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,p=f.toString,d=p.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},y=function e(t){return null!=t&&t===t.window},v={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in v)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var b="3.3.1",w=function(e,t){return new w.fn.init(e,t)},T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:"3.3.1",constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:s,sort:n.sort,splice:n.splice},w.extend=w.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||g(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],a!==(r=e[t])&&(l&&r&&(w.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&w.isPlainObject(n)?n:{},a[t]=w.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},w.extend({expando:"jQuery"+("3.3.1"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==c.call(e))&&(!(t=i(e))||"function"==typeof(n=f.call(t,"constructor")&&t.constructor)&&p.call(n)===d)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e){m(e)},each:function(e,t){var n,r=0;if(C(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(T,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(C(Object(e))?w.merge(n,"string"==typeof e?[e]:e):s.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:u.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;o<a;o++)(r=!t(e[o],o))!==s&&i.push(e[o]);return i},map:function(e,t,n){var r,i,o=0,s=[];if(C(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&s.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&s.push(i);return a.apply([],s)},guid:1,support:h}),"function"==typeof Symbol&&(w.fn[Symbol.iterator]=n[Symbol.iterator]),w.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){l["[object "+t+"]"]=t.toLowerCase()});function C(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!g(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,y,v,m,x,b="sizzle"+1*new Date,w=e.document,T=0,C=0,E=ae(),k=ae(),S=ae(),D=function(e,t){return e===t&&(f=!0),0},N={}.hasOwnProperty,A=[],j=A.pop,q=A.push,L=A.push,H=A.slice,O=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},P="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",I="\\["+M+"*("+R+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+R+"))|)"+M+"*\\]",W=":("+R+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+I+")*)|.*)\\)|)",$=new RegExp(M+"+","g"),B=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),F=new RegExp("^"+M+"*,"+M+"*"),_=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),z=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),X=new RegExp(W),U=new RegExp("^"+R+"$"),V={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+W),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},G=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,K=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){p()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{L.apply(A=H.call(w.childNodes),w.childNodes),A[w.childNodes.length].nodeType}catch(e){L={apply:A.length?function(e,t){q.apply(e,H.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,s,l,c,f,h,v,m=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!i&&((t?t.ownerDocument||t:w)!==d&&p(t),t=t||d,g)){if(11!==T&&(f=J.exec(e)))if(o=f[1]){if(9===T){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return L.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return L.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!S[e+" "]&&(!y||!y.test(e))){if(1!==T)m=t,v=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=b),s=(h=a(e)).length;while(s--)h[s]="#"+c+" "+ve(h[s]);v=h.join(","),m=K.test(e)&&ge(t.parentNode)||t}if(v)try{return L.apply(r,m.querySelectorAll(v)),r}catch(e){}finally{c===b&&t.removeAttribute("id")}}}return u(e.replace(B,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function se(e){return e[b]=!0,e}function ue(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function de(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return se(function(t){return t=+t,se(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},p=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==d&&9===a.nodeType&&a.documentElement?(d=a,h=d.documentElement,g=!o(d),w!==d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=ue(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ue(function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Q.test(d.getElementsByClassName),n.getById=ue(function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},v=[],y=[],(n.qsa=Q.test(d.querySelectorAll))&&(ue(function(e){h.appendChild(e).innerHTML="<a id='"+b+"'></a><select id='"+b+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||y.push("\\["+M+"*(?:value|"+P+")"),e.querySelectorAll("[id~="+b+"-]").length||y.push("~="),e.querySelectorAll(":checked").length||y.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||y.push(".#.+[+~]")}),ue(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&y.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),y.push(",.*:")})),(n.matchesSelector=Q.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),v.push("!=",W)}),y=y.length&&new RegExp(y.join("|")),v=v.length&&new RegExp(v.join("|")),t=Q.test(h.compareDocumentPosition),x=t||Q.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===d||e.ownerDocument===w&&x(w,e)?-1:t===d||t.ownerDocument===w&&x(w,t)?1:c?O(c,e)-O(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===d?-1:t===d?1:i?-1:o?1:c?O(c,e)-O(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?ce(a[r],s[r]):a[r]===w?-1:s[r]===w?1:0},d):d},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==d&&p(e),t=t.replace(z,"='$1']"),n.matchesSelector&&g&&!S[t+" "]&&(!v||!v.test(t))&&(!y||!y.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,d,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==d&&p(e),x(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&N.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(D),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:se,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return V.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace($," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",y=t.parentNode,v=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(y){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?y.firstChild:y.lastChild],a&&m){x=(d=(l=(c=(f=(p=y)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&y.childNodes[d];while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===v:1===p.nodeType)&&++x&&(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p===t))break;return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=O(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(B,"$1"));return r[b]?se(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return oe(e,t).length>0}}),contains:se(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:se(function(e){return U.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:de(!1),disabled:de(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=r.pseudos.eq;for(t in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=fe(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=pe(t);function ye(){}ye.prototype=r.filters=r.pseudos,r.setFilters=new ye,a=oe.tokenize=function(e,t){var n,i,o,a,s,u,l,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,u=[],l=r.preFilter;while(s){n&&!(i=F.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=_.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace(B," ")}),s=s.slice(n.length));for(a in r.filter)!(i=V[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?oe.error(e):k(e,u).slice(0)};function ve(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function me(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,p=[T,s];if(u){while(t=t[r])if((1===t.nodeType||a)&&e(t,n,u))return!0}else while(t=t[r])if(1===t.nodeType||a)if(f=t[b]||(t[b]={}),c=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===T&&l[1]===s)return p[2]=l[2];if(c[o]=p,p[2]=e(t,n,u))return!0}return!1}}function xe(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function be(e,t,n){for(var r=0,i=t.length;r<i;r++)oe(e,t[r],n);return n}function we(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Te(e,t,n,r,i,o){return r&&!r[b]&&(r=Te(r)),i&&!i[b]&&(i=Te(i,o)),se(function(o,a,s,u){var l,c,f,p=[],d=[],h=a.length,g=o||be(t||"*",s.nodeType?[s]:s,[]),y=!e||!o&&t?g:we(g,p,e,s,u),v=n?i||(o?e:h||r)?[]:a:y;if(n&&n(y,v,s,u),r){l=we(v,d),r(l,[],s,u),c=l.length;while(c--)(f=l[c])&&(v[d[c]]=!(y[d[c]]=f))}if(o){if(i||e){if(i){l=[],c=v.length;while(c--)(f=v[c])&&l.push(y[c]=f);i(null,v=[],l,u)}c=v.length;while(c--)(f=v[c])&&(l=i?O(o,f):p[c])>-1&&(o[l]=!(a[l]=f))}}else v=we(v===a?v.splice(h,v.length):v),i?i(null,a,v,u):L.apply(a,v)})}function Ce(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],u=a?1:0,c=me(function(e){return e===t},s,!0),f=me(function(e){return O(t,e)>-1},s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u<o;u++)if(n=r.relative[e[u].type])p=[me(xe(p),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;i<o;i++)if(r.relative[e[i].type])break;return Te(u>1&&xe(p),u>1&&ve(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(B,"$1"),n,u<i&&Ce(e.slice(u,i)),i<o&&Ce(e=e.slice(i)),i<o&&ve(e))}p.push(n)}return xe(p)}function Ee(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var f,h,y,v=0,m="0",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG("*",c),E=T+=null==w?1:Math.random()||.1,k=C.length;for(c&&(l=a===d||a||c);m!==k&&null!=(f=C[m]);m++){if(i&&f){h=0,a||f.ownerDocument===d||(p(f),s=!g);while(y=e[h++])if(y(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!y&&f)&&v--,o&&x.push(f))}if(v+=m,n&&m!==v){h=0;while(y=t[h++])y(x,b,a,s);if(o){if(v>0)while(m--)x[m]||b[m]||(b[m]=j.call(u));b=we(b)}L.apply(u,b),c&&!o&&b.length>0&&v+t.length>1&&oe.uniqueSort(u)}return c&&(T=E,l=w),x};return n?se(o):o}return s=oe.compile=function(e,t){var n,r=[],i=[],o=S[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Ce(t[n]))[b]?r.push(o):i.push(o);(o=S(e,Ee(i,r))).selector=e}return o},u=oe.select=function(e,t,n,i){var o,u,l,c,f,p="function"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&"ID"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}o=V.needsContext.test(e)?0:u.length;while(o--){if(l=u[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),K.test(u[0].type)&&ge(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&ve(u)))return L.apply(n,i),n;break}}}return(p||s(e,d))(i,t,!g,n,!t||K.test(e)&&ge(t.parentNode)||t),n},n.sortStable=b.split("").sort(D).join("")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ue(function(e){return 1&e.compareDocumentPosition(d.createElement("fieldset"))}),ue(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&ue(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ue(function(e){return null==e.getAttribute("disabled")})||le(P,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var k=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},D=w.expr.match.needsContext;function N(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return u.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t<r;t++)if(w.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)w.find(e,i[t],n);return r>1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&D.test(e)?w(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:L.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),A.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,q=w(r);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(w.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&w(e);if(!D.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?u.call(w(e),this[0]):u.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return k(e,"parentNode")},parentsUntil:function(e,t,n){return k(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return k(e,"nextSibling")},prevAll:function(e){return k(e,"previousSibling")},nextUntil:function(e,t,n){return k(e,"nextSibling",n)},prevUntil:function(e,t,n){return k(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return N(e,"iframe")?e.contentDocument:(N(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(O[e]||w.uniqueSort(i),H.test(e)&&i.reverse()),this.pushStack(i)}});var M=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(M)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1){n=a.shift();while(++s<o.length)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1)}e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){w.each(n,function(n,r){g(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&"string"!==x(r)&&t(r)})}(arguments),n&&!t&&u()),this},remove:function(){return w.each(arguments,function(e,t){var n;while((n=w.inArray(t,o,n))>-1)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function I(e){return e}function W(e){throw e}function $(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(s,u))===n.promise())throw new TypeError("Thenable self-resolution");l=e&&("object"==typeof e||"function"==typeof e)&&e.then,g(l)?i?l.call(e,a(o,n,I,i),a(o,n,W,i)):(o++,l.call(e,a(o,n,I,i),a(o,n,W,i),a(o,n,I,n.notifyWith))):(r!==I&&(s=void 0,u=[e]),(i||n.resolveWith)(s,u))}},c=i?l:function(){try{l()}catch(e){w.Deferred.exceptionHook&&w.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==W&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:I,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:I)),n[2][3].add(a(0,e,g(r)?r:W))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),s=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&($(e,a.done(s(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)$(i[n],s(n),a.reject);return a.promise()}});var B=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&B.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function _(){r.removeEventListener("DOMContentLoaded",_),e.removeEventListener("load",_),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",_),e.addEventListener("load",_));var z=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===x(n)){i=!0;for(s in n)z(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},X=/^-ms-/,U=/-([a-z])/g;function V(e,t){return t.toUpperCase()}function G(e){return e.replace(X,"ms-").replace(U,V)}var Y=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Q(){this.expando=w.expando+Q.uid++}Q.uid=1,Q.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Y(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[G(t)]=n;else for(r in t)i[G(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][G(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(G):(t=G(t))in r?[t]:t.match(M)||[]).length;while(n--)delete r[t[n]]}(void 0===t||w.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!w.isEmptyObject(t)}};var J=new Q,K=new Q,Z=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,ee=/[A-Z]/g;function te(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:Z.test(e)?JSON.parse(e):e)}function ne(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(ee,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=te(n)}catch(e){}K.set(e,t,n)}else n=void 0;return n}w.extend({hasData:function(e){return K.hasData(e)||J.hasData(e)},data:function(e,t,n){return K.access(e,t,n)},removeData:function(e,t){K.remove(e,t)},_data:function(e,t,n){return J.access(e,t,n)},_removeData:function(e,t){J.remove(e,t)}}),w.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=K.get(o),1===o.nodeType&&!J.get(o,"hasDataAttrs"))){n=a.length;while(n--)a[n]&&0===(r=a[n].name).indexOf("data-")&&(r=G(r.slice(5)),ne(o,r,i[r]));J.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){K.set(this,e)}):z(this,function(t){var n;if(o&&void 0===t){if(void 0!==(n=K.get(o,e)))return n;if(void 0!==(n=ne(o,e)))return n}else this.each(function(){K.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){K.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=J.get(e,t),n&&(!r||Array.isArray(n)?r=J.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return J.get(e,n)||J.access(e,n,{empty:w.Callbacks("once memory").add(function(){J.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?w.queue(this[0],e):void 0===t?this:this.each(function(){var n=w.queue(this,e,t);w._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&w.dequeue(this,e)})},dequeue:function(e){return this.each(function(){w.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=w.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=J.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var re=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ie=new RegExp("^(?:([+-])=|)("+re+")([a-z%]*)$","i"),oe=["Top","Right","Bottom","Left"],ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&w.contains(e.ownerDocument,e)&&"none"===w.css(e,"display")},se=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i};function ue(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return w.css(e,t,"")},u=s(),l=n&&n[3]||(w.cssNumber[t]?"":"px"),c=(w.cssNumber[t]||"px"!==l&&+u)&&ie.exec(w.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)w.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,w.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var le={};function ce(e){var t,n=e.ownerDocument,r=e.nodeName,i=le[r];return i||(t=n.body.appendChild(n.createElement(r)),i=w.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),le[r]=i,i)}function fe(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?("none"===n&&(i[o]=J.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&ae(r)&&(i[o]=ce(r))):"none"!==n&&(i[o]="none",J.set(r,"display",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}w.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?w(this).show():w(this).hide()})}});var pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ye(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&N(e,t)?w.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n<r;n++)J.set(e[n],"globalEval",!t||J.get(t[n],"globalEval"))}var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===x(o))w.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+w.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;w.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&w.inArray(o,r)>-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ye(f.appendChild(o),"script"),l&&ve(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="<textarea>x</textarea>",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var be=r.documentElement,we=/^key/,Te=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function ke(){return!1}function Se(){try{return r.activeElement}catch(e){}}function De(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)De(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=ke;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.get(e);if(y){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(be,i),n.guid||(n.guid=w.guid++),(u=y.events)||(u=y.events={}),(a=y.handle)||(a=y.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(M)||[""]).length;while(l--)d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=w.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=w.event.special[d]||{},c=w.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),w.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.hasData(e)&&J.get(e);if(y&&(u=y.events)){l=(t=(t||"").match(M)||[""]).length;while(l--)if(s=Ce.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){f=w.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,y.handle)||w.removeEvent(e,d,y.handle),delete u[d])}else for(d in u)w.event.remove(e,d+t[l],n,r,!0);w.isEmptyObject(u)&&J.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,s,u=new Array(arguments.length),l=(J.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(u[0]=t,n=1;n<arguments.length;n++)u[n]=arguments[n];if(t.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,t)){s=w.event.handlers.call(this,t,l),n=0;while((o=s[n++])&&!t.isPropagationStopped()){t.currentTarget=o.elem,r=0;while((a=o.handlers[r++])&&!t.isImmediatePropagationStopped())t.rnamespace&&!t.rnamespace.test(a.namespace)||(t.handleObj=a,t.data=a.data,void 0!==(i=((w.event.special[a.origType]||{}).handle||a.handler).apply(o.elem,u))&&!1===(t.result=i)&&(t.preventDefault(),t.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,t),t.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?w(i,this).index(l)>-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(w.Event.prototype,e,{enumerable:!0,configurable:!0,get:g(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[w.expando]?e:new w.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Se()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===Se()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&N(this,"input"))return this.click(),!1},_default:function(e){return N(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},w.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},w.Event=function(e,t){if(!(this instanceof w.Event))return new w.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ee:ke,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&w.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[w.expando]=!0},w.Event.prototype={constructor:w.Event,isDefaultPrevented:ke,isPropagationStopped:ke,isImmediatePropagationStopped:ke,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ee,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ee,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ee,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},w.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Te.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},w.event.addProp),w.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){w.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||w.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),w.fn.extend({on:function(e,t,n,r){return De(this,e,t,n,r)},one:function(e,t,n,r){return De(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,w(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=ke),this.each(function(){w.event.remove(this,e,n,t)})}});var Ne=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,Ae=/<script|<style|<link/i,je=/checked\s*(?:[^=]|=\s*.checked.)/i,qe=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Le(e,t){return N(e,"table")&&N(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function He(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Oe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Pe(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(J.hasData(e)&&(o=J.access(e),a=J.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n<r;n++)w.event.add(t,i,l[i][n])}K.hasData(e)&&(s=K.access(e),u=w.extend({},s),K.set(t,u))}}function Me(e,t){var n=t.nodeName.toLowerCase();"input"===n&&pe.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function Re(e,t,n,r){t=a.apply([],t);var i,o,s,u,l,c,f=0,p=e.length,d=p-1,y=t[0],v=g(y);if(v||p>1&&"string"==typeof y&&!h.checkClone&&je.test(y))return e.each(function(i){var o=e.eq(i);v&&(t[0]=y.call(this,i,o.html())),Re(o,t,n,r)});if(p&&(i=xe(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(u=(s=w.map(ye(i,"script"),He)).length;f<p;f++)l=i,f!==d&&(l=w.clone(l,!0,!0),u&&w.merge(s,ye(l,"script"))),n.call(e[f],l,f);if(u)for(c=s[s.length-1].ownerDocument,w.map(s,Oe),f=0;f<u;f++)l=s[f],he.test(l.type||"")&&!J.access(l,"globalEval")&&w.contains(c,l)&&(l.src&&"module"!==(l.type||"").toLowerCase()?w._evalUrl&&w._evalUrl(l.src):m(l.textContent.replace(qe,""),c,l))}return e}function Ie(e,t,n){for(var r,i=t?w.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||w.cleanData(ye(r)),r.parentNode&&(n&&w.contains(r.ownerDocument,r)&&ve(ye(r,"script")),r.parentNode.removeChild(r));return e}w.extend({htmlPrefilter:function(e){return e.replace(Ne,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ye(s),r=0,i=(o=ye(e)).length;r<i;r++)Me(o[r],a[r]);if(t)if(n)for(o=o||ye(e),a=a||ye(s),r=0,i=o.length;r<i;r++)Pe(o[r],a[r]);else Pe(e,s);return(a=ye(s,"script")).length>0&&ve(a,!u&&ye(e,"script")),s},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[J.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[J.expando]=void 0}n[K.expando]&&(n[K.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Ie(this,e,!0)},remove:function(e){return Ie(this,e)},text:function(e){return z(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Le(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ye(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return z(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ae.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(w.cleanData(ye(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return Re(this,arguments,function(t){var n=this.parentNode;w.inArray(this,e)<0&&(w.cleanData(ye(this)),n&&n.replaceChild(t,this))},e)}}),w.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){w.fn[e]=function(e){for(var n,r=[],i=w(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),w(i[a])[t](n),s.apply(r,n.get());return this.pushStack(r)}});var We=new RegExp("^("+re+")(?!px)[a-z%]+$","i"),$e=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},Be=new RegExp(oe.join("|"),"i");!function(){function t(){if(c){l.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",c.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",be.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);i="1%"!==t.top,u=12===n(t.marginLeft),c.style.right="60%",s=36===n(t.right),o=36===n(t.width),c.style.position="absolute",a=36===c.offsetWidth||"absolute",be.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var i,o,a,s,u,l=r.createElement("div"),c=r.createElement("div");c.style&&(c.style.backgroundClip="content-box",c.cloneNode(!0).style.backgroundClip="",h.clearCloneStyle="content-box"===c.style.backgroundClip,w.extend(h,{boxSizingReliable:function(){return t(),o},pixelBoxStyles:function(){return t(),s},pixelPosition:function(){return t(),i},reliableMarginLeft:function(){return t(),u},scrollboxSize:function(){return t(),a}}))}();function Fe(e,t,n){var r,i,o,a,s=e.style;return(n=n||$e(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||w.contains(e.ownerDocument,e)||(a=w.style(e,t)),!h.pixelBoxStyles()&&We.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function _e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}var ze=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ue={position:"absolute",visibility:"hidden",display:"block"},Ve={letterSpacing:"0",fontWeight:"400"},Ge=["Webkit","Moz","ms"],Ye=r.createElement("div").style;function Qe(e){if(e in Ye)return e;var t=e[0].toUpperCase()+e.slice(1),n=Ge.length;while(n--)if((e=Ge[n]+t)in Ye)return e}function Je(e){var t=w.cssProps[e];return t||(t=w.cssProps[e]=Qe(e)||e),t}function Ke(e,t,n){var r=ie.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ze(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=w.css(e,n+oe[a],!0,i)),r?("content"===n&&(u-=w.css(e,"padding"+oe[a],!0,i)),"margin"!==n&&(u-=w.css(e,"border"+oe[a]+"Width",!0,i))):(u+=w.css(e,"padding"+oe[a],!0,i),"padding"!==n?u+=w.css(e,"border"+oe[a]+"Width",!0,i):s+=w.css(e,"border"+oe[a]+"Width",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))),u}function et(e,t,n){var r=$e(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(We.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=G(t),u=Xe.test(t),l=e.style;if(u||(t=Je(s)),a=w.cssHooks[t]||w.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ue(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[s]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=G(t);return Xe.test(t)||(t=Je(s)),(a=w.cssHooks[t]||w.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Ve&&(i=Ve[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!ze.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):se(e,Ue,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=$e(e),a="border-box"===w.css(e,"boxSizing",!1,o),s=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(s-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),s&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Ke(e,n,s)}}}),w.cssHooks.marginLeft=_e(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-se(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Ke)}),w.fn.extend({css:function(e,t){return z(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=$e(e),i=t.length;a<i;a++)o[t[a]]=w.css(e,t[a],!1,r);return o}return void 0!==n?w.style(e,t,n):w.css(e,t)},e,t,arguments.length>1)}});function tt(e,t,n,r,i){return new tt.prototype.init(e,t,n,r,i)}w.Tween=tt,tt.prototype={constructor:tt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||w.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(w.cssNumber[n]?"":"px")},cur:function(){var e=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.propHooks[this.prop];return this.options.duration?this.pos=t=w.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=w.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){w.fx.step[e.prop]?w.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[w.cssProps[e.prop]]&&!w.cssHooks[e.prop]?e.elem[e.prop]=e.now:w.style(e.elem,e.prop,e.now+e.unit)}}},tt.propHooks.scrollTop=tt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},w.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},w.fx=tt.prototype.init,w.fx.step={};var nt,rt,it=/^(?:toggle|show|hide)$/,ot=/queueHooks$/;function at(){rt&&(!1===r.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(at):e.setTimeout(at,w.fx.interval),w.fx.tick())}function st(){return e.setTimeout(function(){nt=void 0}),nt=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function lt(e,t,n){for(var r,i=(pt.tweeners[t]||[]).concat(pt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ct(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),y=J.get(e,"fxshow");n.queue||(null==(a=w._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,w.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],it.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!y||void 0===y[r])continue;g=!0}d[r]=y&&y[r]||w.style(e,r)}if((u=!w.isEmptyObject(t))||!w.isEmptyObject(d)){f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=y&&y.display)&&(l=J.get(e,"display")),"none"===(c=w.css(e,"display"))&&(l?c=l:(fe([e],!0),l=e.style.display||l,c=w.css(e,"display"),fe([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===w.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1;for(r in d)u||(y?"hidden"in y&&(g=y.hidden):y=J.access(e,"fxshow",{display:l}),o&&(y.hidden=!g),g&&fe([e],!0),p.done(function(){g||fe([e]),J.remove(e,"fxshow");for(r in d)w.style(e,r,d[r])})),u=lt(g?y[r]:0,r,p),r in y||(y[r]=u.start,g&&(u.end=u.start,u.start=0))}}function ft(e,t){var n,r,i,o,a;for(n in e)if(r=G(n),i=t[r],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=w.cssHooks[r])&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function pt(e,t,n){var r,i,o=0,a=pt.prefilters.length,s=w.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=nt||st(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:w.extend({},t),opts:w.extend(!0,{specialEasing:{},easing:w.easing._default},n),originalProperties:t,originalOptions:n,startTime:nt||st(),duration:n.duration,tweens:[],createTween:function(t,n){var r=w.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(ft(c,l.opts.specialEasing);o<a;o++)if(r=pt.prefilters[o].call(l,e,c,l.opts))return g(r.stop)&&(w._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return w.map(c,lt,l),g(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),w.fx.timer(w.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}w.Animation=w.extend(pt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return ue(n.elem,e,ie.exec(t),n),n}]},tweener:function(e,t){g(e)?(t=e,e=["*"]):e=e.match(M);for(var n,r=0,i=e.length;r<i;r++)n=e[r],pt.tweeners[n]=pt.tweeners[n]||[],pt.tweeners[n].unshift(t)},prefilters:[ct],prefilter:function(e,t){t?pt.prefilters.unshift(e):pt.prefilters.push(e)}}),w.speed=function(e,t,n){var r=e&&"object"==typeof e?w.extend({},e):{complete:n||!n&&t||g(e)&&e,duration:e,easing:n&&t||t&&!g(t)&&t};return w.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in w.fx.speeds?r.duration=w.fx.speeds[r.duration]:r.duration=w.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){g(r.old)&&r.old.call(this),r.queue&&w.dequeue(this,r.queue)},r},w.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=w.isEmptyObject(e),o=w.speed(t,n,r),a=function(){var t=pt(this,w.extend({},e),o);(i||J.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=w.timers,a=J.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&ot.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||w.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=J.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=w.timers,a=r?r.length:0;for(n.finish=!0,w.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),w.each(["toggle","show","hide"],function(e,t){var n=w.fn[t];w.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ut(t,!0),e,r,i)}}),w.each({slideDown:ut("show"),slideUp:ut("hide"),slideToggle:ut("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){w.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),w.timers=[],w.fx.tick=function(){var e,t=0,n=w.timers;for(nt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||w.fx.stop(),nt=void 0},w.fx.timer=function(e){w.timers.push(e),w.fx.start()},w.fx.interval=13,w.fx.start=function(){rt||(rt=!0,at())},w.fx.stop=function(){rt=null},w.fx.speeds={slow:600,fast:200,_default:400},w.fn.delay=function(t,n){return t=w.fx?w.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=r.createElement("input"),t=r.createElement("select").appendChild(r.createElement("option"));e.type="checkbox",h.checkOn=""!==e.value,h.optSelected=t.selected,(e=r.createElement("input")).value="t",e.type="radio",h.radioValue="t"===e.value}();var dt,ht=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return z(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&N(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(M);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=ht[t]||w.find.attr;ht[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=ht[a],ht[a]=i,i=null!=n(e,t,r)?a:null,ht[a]=o),i}});var gt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return z(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):gt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function vt(e){return(e.match(M)||[]).join(" ")}function mt(e){return e.getAttribute&&e.getAttribute("class")||""}function xt(e){return Array.isArray(e)?e:"string"==typeof e?e.match(M)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,mt(this)))});if((t=xt(e)).length)while(n=this[u++])if(i=mt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,mt(this)))});if(!arguments.length)return this.attr("class","");if((t=xt(e)).length)while(n=this[u++])if(i=mt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,mt(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=xt(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=mt(this))&&J.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":J.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+vt(mt(n))+" ").indexOf(t)>-1)return!0;return!1}});var bt=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(bt,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:vt(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!N(n.parentNode,"optgroup"))){if(t=w(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=w.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=w.inArray(w.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var wt=/^(?:focusinfocus|focusoutblur)$/,Tt=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,s,u,l,c,p,d,h,v=[i||r],m=f.call(t,"type")?t.type:t,x=f.call(t,"namespace")?t.namespace.split("."):[];if(s=h=u=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!wt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(x=m.split(".")).shift(),x.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=x.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+x.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),d=w.event.special[m]||{},o||!d.trigger||!1!==d.trigger.apply(i,n))){if(!o&&!d.noBubble&&!y(i)){for(l=d.delegateType||m,wt.test(l+m)||(s=s.parentNode);s;s=s.parentNode)v.push(s),u=s;u===(i.ownerDocument||r)&&v.push(u.defaultView||u.parentWindow||e)}a=0;while((s=v[a++])&&!t.isPropagationStopped())h=s,t.type=a>1?l:d.bindType||m,(p=(J.get(s,"events")||{})[t.type]&&J.get(s,"handle"))&&p.apply(s,n),(p=c&&s[c])&&p.apply&&Y(s)&&(t.result=p.apply(s,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||d._default&&!1!==d._default.apply(v.pop(),n)||!Y(i)||c&&g(i[m])&&!y(i)&&((u=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,Tt),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,Tt),w.event.triggered=void 0,u&&(i[c]=u)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=J.access(r,t);i||r.addEventListener(e,n,!0),J.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=J.access(r,t)-1;i?J.access(r,t,i):(r.removeEventListener(e,n,!0),J.remove(r,t))}}});var Ct=e.location,Et=Date.now(),kt=/\?/;w.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||w.error("Invalid XML: "+t),n};var St=/\[\]$/,Dt=/\r?\n/g,Nt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;function jt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||St.test(e)?r(e,i):jt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==x(t))r(e,t);else for(i in t)jt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)jt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&At.test(this.nodeName)&&!Nt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(Dt,"\r\n")}}):{name:t.name,value:n.replace(Dt,"\r\n")}}).get()}});var qt=/%20/g,Lt=/#.*$/,Ht=/([?&])_=[^&]*/,Ot=/^(.*?):[ \t]*([^\r\n]*)$/gm,Pt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Mt=/^(?:GET|HEAD)$/,Rt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Bt=r.createElement("a");Bt.href=Ct.href;function Ft(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(M)||[];if(g(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function _t(e,t,n,r){var i={},o=e===Wt;function a(s){var u;return i[s]=!0,w.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)}),u}return a(t.dataTypes[0])||!i["*"]&&a("*")}function zt(e,t){var n,r,i=w.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&w.extend(!0,e,r),e}function Xt(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}function Ut(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}w.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Ct.href,type:"GET",isLocal:Pt.test(Ct.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":w.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,w.ajaxSettings),t):zt(w.ajaxSettings,e)},ajaxPrefilter:Ft(It),ajaxTransport:Ft(Wt),ajax:function(t,n){"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,l,c,f,p,d,h=w.ajaxSetup({},n),g=h.context||h,y=h.context&&(g.nodeType||g.jquery)?w(g):w.event,v=w.Deferred(),m=w.Callbacks("once memory"),x=h.statusCode||{},b={},T={},C="canceled",E={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s){s={};while(t=Ot.exec(a))s[t[1].toLowerCase()]=t[2]}t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==c&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return i&&i.abort(t),k(0,t),this}};if(v.promise(E),h.url=((t||h.url||Ct.href)+"").replace(Rt,Ct.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(M)||[""],null==h.crossDomain){l=r.createElement("a");try{l.href=h.url,l.href=l.href,h.crossDomain=Bt.protocol+"//"+Bt.host!=l.protocol+"//"+l.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=w.param(h.data,h.traditional)),_t(It,h,n,E),c)return E;(f=w.event&&h.global)&&0==w.active++&&w.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Mt.test(h.type),o=h.url.replace(Lt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(qt,"+")):(d=h.url.slice(o.length),h.data&&(h.processData||"string"==typeof h.data)&&(o+=(kt.test(o)?"&":"?")+h.data,delete h.data),!1===h.cache&&(o=o.replace(Ht,"$1"),d=(kt.test(o)?"&":"?")+"_="+Et+++d),h.url=o+d),h.ifModified&&(w.lastModified[o]&&E.setRequestHeader("If-Modified-Since",w.lastModified[o]),w.etag[o]&&E.setRequestHeader("If-None-Match",w.etag[o])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&E.setRequestHeader("Content-Type",h.contentType),E.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+$t+"; q=0.01":""):h.accepts["*"]);for(p in h.headers)E.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(g,E,h)||c))return E.abort();if(C="abort",m.add(h.complete),E.done(h.success),E.fail(h.error),i=_t(Wt,h,n,E)){if(E.readyState=1,f&&y.trigger("ajaxSend",[E,h]),c)return E;h.async&&h.timeout>0&&(u=e.setTimeout(function(){E.abort("timeout")},h.timeout));try{c=!1,i.send(b,k)}catch(e){if(c)throw e;k(-1,e)}}else k(-1,"No Transport");function k(t,n,r,s){var l,p,d,b,T,C=n;c||(c=!0,u&&e.clearTimeout(u),i=void 0,a=s||"",E.readyState=t>0?4:0,l=t>=200&&t<300||304===t,r&&(b=Xt(h,E,r)),b=Ut(h,b,E,l),l?(h.ifModified&&((T=E.getResponseHeader("Last-Modified"))&&(w.lastModified[o]=T),(T=E.getResponseHeader("etag"))&&(w.etag[o]=T)),204===t||"HEAD"===h.type?C="nocontent":304===t?C="notmodified":(C=b.state,p=b.data,l=!(d=b.error))):(d=C,!t&&C||(C="error",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+"",l?v.resolveWith(g,[p,C,E]):v.rejectWith(g,[E,C,d]),E.statusCode(x),x=void 0,f&&y.trigger(l?"ajaxSuccess":"ajaxError",[E,h,l?p:d]),m.fireWith(g,[E,C]),f&&(y.trigger("ajaxComplete",[E,h]),--w.active||w.event.trigger("ajaxStop")))}return E},getJSON:function(e,t,n){return w.get(e,t,n,"json")},getScript:function(e,t){return w.get(e,void 0,t,"script")}}),w.each(["get","post"],function(e,t){w[t]=function(e,n,r,i){return g(n)&&(i=i||r,r=n,n=void 0),w.ajax(w.extend({url:e,type:t,dataType:i,data:n,success:r},w.isPlainObject(e)&&e))}}),w._evalUrl=function(e){return w.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},w.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Vt={0:200,1223:204},Gt=w.ajaxSettings.xhr();h.cors=!!Gt&&"withCredentials"in Gt,h.ajax=Gt=!!Gt,w.ajaxTransport(function(t){var n,r;if(h.cors||Gt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Vt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),w.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),w.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return w.globalEval(e),e}}}),w.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),w.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(i,o){t=w("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&o("error"===e.type?404:200,e.type)}),r.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Yt=[],Qt=/(=)\?(?=&|$)|\?\?/;w.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Yt.pop()||w.expando+"_"+Et++;return this[e]=!0,e}}),w.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Qt.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Qt.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=g(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Qt,"$1"+i):!1!==t.jsonp&&(t.url+=(kt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||w.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){void 0===o?w(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Yt.push(i)),a&&g(o)&&o(a[0]),a=o=void 0}),"script"}),h.createHTMLDocument=function(){var e=r.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),w.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var i,o,a;return t||(h.createHTMLDocument?((i=(t=r.implementation.createHTMLDocument("")).createElement("base")).href=r.location.href,t.head.appendChild(i)):t=r),o=A.exec(e),a=!n&&[],o?[t.createElement(o[1])]:(o=xe([e],t,a),a&&a.length&&w(a).remove(),w.merge([],o.childNodes))},w.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return s>-1&&(r=vt(e.slice(s)),e=e.slice(0,s)),g(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),a.length>0&&w.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?w("<div>").append(w.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},w.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){w.fn[t]=function(e){return this.on(t,e)}}),w.expr.pseudos.animated=function(e){return w.grep(w.timers,function(t){return e===t.elem}).length},w.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l,c=w.css(e,"position"),f=w(e),p={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=w.css(e,"top"),u=w.css(e,"left"),(l=("absolute"===c||"fixed"===c)&&(o+u).indexOf("auto")>-1)?(a=(r=f.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),g(t)&&(t=t.call(e,n,w.extend({},s))),null!=t.top&&(p.top=t.top-s.top+a),null!=t.left&&(p.left=t.left-s.left+i),"using"in t?t.using.call(e,p):f.css(p)}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){w.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===w.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===w.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,"borderTopWidth",!0),i.left+=w.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-w.css(r,"marginTop",!0),left:t.left-i.left-w.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===w.css(e,"position"))e=e.offsetParent;return e||be})}}),w.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;w.fn[e]=function(r){return z(this,function(e,r,i){var o;if(y(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),w.each(["top","left"],function(e,t){w.cssHooks[t]=_e(h.pixelPosition,function(e,n){if(n)return n=Fe(e,t),We.test(n)?w(e).position()[t]+"px":n})}),w.each({Height:"height",Width:"width"},function(e,t){w.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return z(this,function(t,n,i){var o;return y(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?w.css(t,n,s):w.style(t,n,i,s)},t,a?i:void 0,a)}})}),w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),w.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),w.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),g(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||w.guid++,i},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=N,w.isFunction=g,w.isWindow=y,w.camelCase=G,w.type=x,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return w});var Jt=e.jQuery,Kt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=Kt),t&&e.jQuery===w&&(e.jQuery=Jt),w},t||(e.jQuery=e.$=w),w});
var Communicator;
(function(a){var g;(function(a){a[a.Unknown=0]="Unknown";a[a.v1_0=1]="v1_0";a[a.v2_0=2]="v2_0";a[a.v2_1=3]="v2_1"})(g=a.BCFVersion||(a.BCFVersion={}));(function(a){a[a.Unknown=0]="Unknown";a[a.TopicFolder=1]="TopicFolder";a[a.Version=2]="Version";a[a.Markup=3]="Markup";a[a.Snapshot=4]="Snapshot";a[a.Viewpoint=5]="Viewpoint";a[a.Schema=6]="Schema";a[a.Project=7]="Project"})(a.BCFFileType||(a.BCFFileType={}));var d=function(){function a(c,b){this._version=g.Unknown;this._topicsMap=new Map;this._bcfFileName=
c;this._id=b}a.prototype.addTopic=function(c,b){this._topicsMap.set(c,b)};a.prototype.getTopics=function(){return this._topicsMap};a.prototype.getTopic=function(c){return this._topicsMap.get(c)||null};a.prototype.getVersion=function(){return this._version};a.prototype.setVersion=function(c){this._version=c};a.prototype.getFilename=function(){return this._bcfFileName};a.prototype.getId=function(){return this._id};return a}();a.BCFData=d})(Communicator||(Communicator={}));
(function(a){var g=function(){function c(b,f,h,c){this._index=this._snapshotFilename=this._viewpointFilename=void 0;this._guid=b;this._viewpointFilename=f;this._snapshotFilename=h;void 0!==c&&(this._index=parseInt(c))}c.prototype.getGuid=function(){return this._guid};c.prototype.getViewpointFilename=function(){return this._viewpointFilename};c.prototype.getSnapshotFilename=function(){return this._snapshotFilename};c.prototype.getIndex=function(){return this._index};return c}();a.BCFMarkupViewpoint=
g;var d=function(){function c(b,f,h,c,a,e,d){this._guid=b;this._date=f;this._author=h;this._text=c;this._viewpointGuid=a;this._modifiedDate=e;this._modifiedAuthor=d}c.prototype.getId=function(){return this._guid};c.prototype.getDate=function(){return this._date};c.prototype.getAuthor=function(){return this._author};c.prototype.getText=function(){return this._text};c.prototype.getViewpointGuid=function(){return this._viewpointGuid};c.prototype.getModifiedDate=function(){return this._modifiedDate};
c.prototype.getModifiedAuthor=function(){return this._modifiedAuthor};return c}();a.BCFComment=d;var e=function(){function c(b,f){this._header={};this._topic={guid:"",title:"",creationDate:new Date,creationAuthor:""};this._comments=new Map;this._viewpoints=new Map;this._filename=b;for(b=f.documentElement.firstElementChild;null!==b;){f=b.localName;if(null===f)break;switch(f){case "Header":this._parseHeader(b);break;case "Topic":this._parseTopic(b);break;case "Comment":this._parseComment(b);break;case "Viewpoints":this._parseViewpoint(b)}b=
b.nextElementSibling}}c.prototype.getFilename=function(){return this._filename};c.prototype.getIfcProject=function(){return this._header.ifcProject};c.prototype.getIfcSpacialStructureElement=function(){return this._header.ifcSpatialStructureElement};c.prototype.getIsExternal=function(){return this._header.isExternal};c.prototype.getBimFilename=function(){return this._header.filename};c.prototype.getBimDate=function(){return this._header.date};c.prototype.getReference=function(){return this._header.reference};
c.prototype.getTopicType=function(){return this._topic.topicType};c.prototype.getTopicStatus=function(){return this._topic.topicStatus};c.prototype.getTopicTitle=function(){return this._topic.title};c.prototype.getTopicCreationDate=function(){return this._topic.creationDate};c.prototype.getTopicCreationAuthor=function(){return this._topic.creationAuthor};c.prototype.getTopicReferenceLink=function(){return this._topic.referenceLink};c.prototype.getTopicPriority=function(){return this._topic.priority};
c.prototype.getTopicIndex=function(){return this._topic.index};c.prototype.getTopicLabels=function(){return void 0===this._topic.labels?[]:this._topic.labels};c.prototype.getTopicModifiedDate=function(){return this._topic.modifiedDate};c.prototype.getTopicModifiedAuthor=function(){return this._topic.modifiedAuthor};c.prototype.getTopicDueDate=function(){return this._topic.dueDate};c.prototype.getTopicAssignedTo=function(){return this._topic.assignedTo};c.prototype.getTopicDescription=function(){return this._topic.description};
c.prototype.getTopicStage=function(){return this._topic.stage};c.prototype.getComments=function(){return this._comments};c.prototype.getViewpoints=function(){return this._viewpoints};c.prototype._parseHeader=function(b){var f=b.firstElementChild;if(null!==f){b=this._getElementAttributes(f);var f=this._getChildData(f),h=f.get("Date");this._header={date:void 0===h?void 0:new Date(h),filename:f.get("Filename"),reference:f.get("Reference"),ifcProject:b.get("IfcProject"),ifcSpatialStructureElement:b.get("IfcSpatialStructureElement"),
isExternal:"true"===b.get("isExternal")}}};c.prototype._parseTopic=function(b){var f=this._getElementAttributes(b),h=f.get("Guid");if(void 0!==h&&(this._topic.guid=h,this._topic.topicType=f.get("TopicType")||f.get("Status"),this._topic.topicStatus=f.get("TopicStatus")||f.get("VerbalStatus"),b=b.firstElementChild,null!==b))for(;null!==b;){var c=b.localName;if(null===c)break;f=this._getChildData(b);h=this._getElementAttributes(b);switch(c){case "BimSnippet":void 0===this._topic.bimSnippets&&(this._topic.bimSnippets=
[]);var c=f.get("Reference"),a=h.get("SnippetType");void 0!==c&&void 0!==a&&(c={snippetType:a,reference:c},h.get("isExternal")&&(c.isExternal="true"===h.get("isExternal")),f.get("ReferenceSchema")&&(c.referenceSchema=f.get("ReferenceSchema")),this._topic.bimSnippets.push(c));break;case "DocumentReference":void 0===this._topic.documentReferences&&(this._topic.documentReferences=[]);h={};f.get("Guid")&&(h.guid=f.get("Guid"));f.get("isExternal")&&(h.isExternal="true"===f.get("isExternal"));f.get("Description")&&
(h.description=f.get("Description"));f.get("ReferencedDocument")&&(h.referencedDocument=f.get("ReferencedDocument"));this._topic.documentReferences.push(h);break;case "RelatedTopic":void 0===this._topic.relatedTopics&&(this._topic.relatedTopics=[]);f=f.get("Guid");void 0!==f&&this._topic.relatedTopics.push({guid:f});break;case "ReferenceLink":b.textContent&&(this._topic.referenceLink=b.textContent);break;case "Title":b.textContent&&(this._topic.title=b.textContent);break;case "Priority":b.textContent&&
(this._topic.priority=b.textContent);break;case "Index":b.textContent&&(this._topic.index=parseInt(b.textContent));break;case "Labels":b.textContent&&(void 0===this._topic.labels&&(this._topic.labels=[]),this._topic.labels.push(b.textContent));break;case "CreationDate":b.textContent&&(this._topic.creationDate=new Date(b.textContent));break;case "CreationAuthor":b.textContent&&(this._topic.creationAuthor=b.textContent);break;case "ModifiedDate":b.textContent&&(this._topic.modifiedDate=new Date(b.textContent));
break;case "ModifiedAuthor":b.textContent&&(this._topic.modifiedAuthor=b.textContent);break;case "DueDate":b.textContent&&(this._topic.dueDate=new Date(b.textContent));break;case "AssignedTo":b.textContent&&(this._topic.assignedTo=b.textContent);break;case "Description":b.textContent&&(this._topic.description=b.textContent);break;case "Stage":b.textContent&&(this._topic.stage=b.textContent)}b=b.nextElementSibling}};c.prototype._parseComment=function(b){var f=new Date,h="",c="",a=void 0,e=void 0,l=
void 0,m=this._getElementAttributes(b).get("Guid");if(m){b=b.firstElementChild;if(null!==b)for(;null!==b;){var g=b.localName;if(null===g)break;switch(g){case "Date":b.textContent&&(f=new Date(b.textContent));break;case "Author":b.textContent&&(h=b.textContent);break;case "Comment":b.textContent&&(c=b.textContent);break;case "Viewpoint":a=this._getElementAttributes(b).get("Guid");break;case "ModifiedDate":b.textContent&&(e=new Date(b.textContent));break;case "ModifiedAuthor":b.textContent&&(l=b.textContent)}b=
b.nextElementSibling}f=new d(m,f,h,c,a,e,l);this._comments.set(m,f)}};c.prototype._parseViewpoint=function(b){var f=this._getElementAttributes(b).get("Guid");void 0!==f&&(b=this._getChildData(b),this._viewpoints.set(f,new g(f,b.get("Viewpoint"),b.get("Snapshot"),b.get("Index"))))};c.prototype._getChildData=function(b){var f=new Map;for(b=b.firstElementChild;null!==b;){var h=b.localName,c=null;null===b.firstElementChild&&(c=b.textContent);null!==h&&null!==c&&f.set(h,c);b=b.nextElementSibling}return f};
c.prototype._getElementAttributes=function(b){b=b.attributes;for(var f=new Map,h=0;h<b.length;++h){var c=b[h];f.set(c.name,c.value)}return f};return c}();a.BCFMarkup=e})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(e,c){this._filename=e;this._data=c}a.prototype.getFilename=function(){return this._filename};a.prototype.getData=function(){return this._data};a.prototype.getUrl=function(){var a=new Blob([this._data],{type:"image/png"});return URL.createObjectURL(a,{oneTimeOnly:!0})};return a}();a.BCFSnapshot=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(a,c){this._viewpointMap=new Map;this._snapshotMap=new Map;this._viewer=c;this._topicId=a}d.prototype.getTopicId=function(){return this._topicId};d.prototype.addMarkup=function(e,c){this._markup=new a.BCFMarkup(e,c)};d.prototype.getMarkup=function(){return this._markup};d.prototype.addViewpoint=function(e,c,b,f,h){c=new a.BCFViewpoint(e,c,b,f,h,this._viewer);this._viewpointMap.set(e,c)};d.prototype.getViewpointMap=function(){return this._viewpointMap};d.prototype.getViewpoint=
function(a){return this._viewpointMap.get(a)||null};d.prototype.addSnapshot=function(e,c){this._snapshotMap.set(e,new a.BCFSnapshot(e,c))};d.prototype.getSnapshotMap=function(){return this._snapshotMap};d.prototype.getSnapshot=function(a){return this._snapshotMap.get(this._massageSnapshotFilename(a))||null};d.prototype._massageSnapshotFilename=function(a){if("viewpoint.bcfv"===a)return"snapshot.png";var c=a.split(".");return"bcfv"===c[1]?c[0]+".png":a};return d}();a.BCFTopic=g})(Communicator||(Communicator=
{}));
var __awaiter=this&&this.__awaiter||function(a,g,d,e){return new (d||(d=Promise))(function(c,b){function f(f){try{k(e.next(f))}catch(h){b(h)}}function h(f){try{k(e["throw"](f))}catch(h){b(h)}}function k(b){b.done?c(b.value):(new d(function(f){f(b.value)})).then(f,h)}k((e=e.apply(a,g||[])).next())})},__generator=this&&this.__generator||function(a,g){function d(f){return function(b){return e([f,b])}}function e(k){if(b)throw new TypeError("Generator is already executing.");for(;c;)try{if(b=1,f&&(h=f[k[0]&
2?"return":k[0]?"throw":"next"])&&!(h=h.call(f,k[1])).done)return h;if(f=0,h)k=[0,h.value];switch(k[0]){case 0:case 1:h=k;break;case 4:return c.label++,{value:k[1],done:!1};case 5:c.label++;f=k[1];k=[0];continue;case 7:k=c.ops.pop();c.trys.pop();continue;default:if(!(h=c.trys,h=0<h.length&&h[h.length-1])&&(6===k[0]||2===k[0])){c=0;continue}if(3===k[0]&&(!h||k[1]>h[0]&&k[1]<h[3]))c.label=k[1];else if(6===k[0]&&c.label<h[1])c.label=h[1],h=k;else if(h&&c.label<h[2])c.label=h[2],c.ops.push(k);else{h[2]&&
c.ops.pop();c.trys.pop();continue}}k=g.call(a,c)}catch(e){k=[6,e],f=0}finally{b=h=0}if(k[0]&5)throw k[1];return{value:k[0]?k[1]:void 0,done:!0}}var c={label:0,sent:function(){if(h[0]&1)throw h[1];return h[1]},trys:[],ops:[]},b,f,h,k;return k={next:d(0),"throw":d(1),"return":d(2)},"function"===typeof Symbol&&(k[Symbol.iterator]=function(){return this}),k};
(function(a){var g=function(){function d(e,c,b,f,h,k){this._version=a.BCFVersion.Unknown;this._components={};this._lines=[];this._clippingPlanes=[];this._viewer=k;this._filename=e;this._version=b;this._modelBounding=f;this._unitScale=1E3/h;for(e=c.documentElement.firstElementChild;null!==e;){c=e.localName;if(null===c)break;switch(c){case "Components":this._version>=a.BCFVersion.v2_1?this._parseComponents(e):this._parseComponentsV2_0(e);break;case "OrthogonalCamera":this._parseOrthogonalCamera(e);
break;case "PerspectiveCamera":this._parsePerspectiveCamera(e);break;case "Lines":this._parseLines(e);break;case "ClippingPlanes":this._parseClippingPlanes(e)}e=e.nextElementSibling}}d.prototype.activate=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return this._setCamera(),[4,this._setComponentsVisibility()];case 1:return a.sent(),this._setMarkup(),this._setCuttingPlanes(),this._setSelected(),[4,this._setColors()];case 2:return a.sent(),
[2]}})})};d.prototype._setCamera=function(){var a=this._getCamera();null!==a&&this._viewer.view.setCamera(a,800)};d.prototype._setComponentsVisibility=function(){return __awaiter(this,void 0,void 0,function(){var a,c,b;return __generator(this,function(f){switch(f.label){case 0:return a=this._viewer.model,c=this._getDefaultVisibility(),b=a.getNodeIdsByGenericIds(this._getVisibilityExceptions()),b.length?[4,a.setNodesVisibility([-2],c)]:[3,3];case 1:return f.sent(),[4,a.setNodesVisibility(b,!c)];case 2:return f.sent(),
[3,5];case 3:return[4,a.reset()];case 4:f.sent(),f.label=5;case 5:return[2]}})})};d.prototype._setMarkup=function(){var e=this._viewer.lineManager;e.removeAllLines();for(var c=0;c<this._lines.length;++c){var b=this._lines[c],b=new a.Markup.Line.LineMarkup(this._viewer,b.startPoint.copy().scale(1E3),b.endPoint.copy().scale(1E3));e.addLine(b)}};d.prototype._setCuttingPlanes=function(){return __awaiter(this,void 0,void 0,function(){var e,c,b,f,h,k,d,p,l,m;return __generator(this,function(g){switch(g.label){case 0:return e=
this._viewer.model,[4,e.getModelBounding(!0,!1)];case 1:return c=g.sent(),b=this._viewer.cuttingManager,[4,b.deactivateCuttingSections(!0)];case 2:g.sent(),f=0,g.label=3;case 3:if(!(f<this._clippingPlanes.length))return[3,7];h=b.getCuttingSection(f);return[4,h.clear()];case 4:return g.sent(),k=this._clippingPlanes[f],d=k.location.copy().scale(1E3),p=k.direction.normalize(),l=a.Plane.createFromPointAndNormal(d,p),m=b.createReferenceGeometryFromFaceNormal(p,d,c),[4,h.addPlane(l,m)];case 5:g.sent(),
g.label=6;case 6:return++f,[3,3];case 7:return[4,b.activateCuttingSections()];case 8:return g.sent(),[2]}})})};d.prototype._setSelected=function(){var e=this._getIfcGuidsFromComponents(this._components.selection);if(e){e=this._viewer.model.getNodeIdsByGenericIds(e);this._viewer.selectionManager.clear();for(var c=0;c<e.length;++c)this._viewer.selectionManager.selectNode(e[c],a.SelectionMode.Add)}};d.prototype._setColors=function(){return __awaiter(this,void 0,void 0,function(){var a,c,b,f,h;return __generator(this,
function(k){switch(k.label){case 0:return a=this._viewer.model,[4,a.resetNodesColor()];case 1:k.sent();if(void 0===this._components.coloring)return[3,3];c=new Map;b=function(b){var h=f._components.coloring[b];b=f._getIfcGuidsFromComponents(h.components);a.getNodeIdsByGenericIds(b).forEach(function(f){c.set(f,h.color)})};f=this;for(h=0;h<this._components.coloring.length;++h)b(h);return[4,this._viewer.model.setNodesColors(c)];case 2:k.sent(),k.label=3;case 3:return[2]}})})};d.prototype.getFilename=
function(){return this._filename};d.prototype._getCamera=function(){var e=this._modelBounding.extents().length(),c=new a.Camera;if(this._perspectiveCamera){c.setProjection(a.Projection.Perspective);var b=this._perspectiveCamera.cameraViewPoint.copy().scale(this._unitScale),e=this._perspectiveCamera.cameraDirection.copy().normalize().scale(e),e=a.Point3.add(b,e),f=this._perspectiveCamera.cameraUpVector.copy().normalize();c.setPosition(b);c.setTarget(e);c.setUp(f);b=a.MeasureUtils.Degrees_To_Radians(this._perspectiveCamera.fieldOfView);
b=Math.tan(b/2);b*=2*a.Point3.subtract(c.getTarget(),c.getPosition()).length();c.setWidth(b);c.setHeight(b);return c}return this._orthogonalCamera?(c.setProjection(a.Projection.Orthographic),b=this._orthogonalCamera.cameraViewPoint.copy().scale(this._unitScale),e=this._orthogonalCamera.cameraDirection.copy().normalize().scale(e),e=a.Point3.add(b,e),f=this._orthogonalCamera.cameraUpVector.copy().normalize(),c.setPosition(b),c.setTarget(e),c.setUp(f),b=this._orthogonalCamera.viewToWorldScale*this._unitScale*
2,c.setWidth(b),c.setHeight(b),c):null};d.prototype._getDefaultVisibility=function(){return void 0!==this._components.defaultVisibility?this._components.defaultVisibility:!0};d.prototype._getVisibilityExceptions=function(){return this._getIfcGuidsFromComponents(this._components.visibilityExceptions)};d.prototype._getIfcGuidsFromComponents=function(a){if(!a)return[];for(var c=[],b=0;b<a.length;++b)c.push(a[b].ifcGuid);return c};d.prototype._parseComponentsV2_0=function(e){console.assert(this._version<=
a.BCFVersion.v2_0);var c=[],b=[],f=[],h=!0;for(e=e.firstElementChild;null!==e;){var k=e.localName;if(null===k)break;switch(k){case "Component":var d=e.attributes,p=d.getNamedItem("IfcGuid"),k=d.getNamedItem("Selected"),l=d.getNamedItem("Visible"),d=d.getNamedItem("Color");null!==p&&p.value&&(p={ifcGuid:p.value},null!==k&&"true"===k.value&&c.push(p),h=!1,null!==l&&"false"===l.value||b.push(p),null!==d&&d.value&&f.push(this._colorFromArgb(d.value,[p])))}e=e.nextElementSibling}this._components={defaultVisibility:h,
selection:c,visibilityExceptions:b,coloring:f}};d.prototype._parseComponents=function(e){console.assert(this._version>=a.BCFVersion.v2_1);e=e.firstElementChild;for(var c={spacesVisible:!1,spaceBoundariesVisible:!1,openingsVisible:!1},b=[],f=!0,h=[],k=[];null!==e;){var d=e.localName;if(null===d)break;var p=e.attributes;switch(d){case "ViewSetupHints":var d=p.getNamedItem("SpacesVisible"),l=p.getNamedItem("SpaceBoundariesVisible"),p=p.getNamedItem("OpeningsVisible");null!==d&&(c.spacesVisible="true"===
d.value);null!==l&&(c.spaceBoundariesVisible="true"===l.value);null!==p&&(c.openingsVisible="true"===p.value);break;case "Selection":b=this._getComponents(e);break;case "Visibility":(p=p.getNamedItem("DefaultVisibility"))&&(f="true"===p.value);p=e.firstElementChild;null!==p&&(h=this._getComponents(p));break;case "Coloring":k=this._getColoring(e)}e=e.nextElementSibling}this._components={viewSetupHints:c,selection:b,defaultVisibility:f,visibilityExceptions:h,coloring:k}};d.prototype._getCameraData=
function(a){var c=[];for(a=a.firstElementChild;null!==a;)switch(a.nodeName){case "FieldOfView":case "ViewToWorldScale":a=a.textContent;null!==a&&c.push(parseFloat(a));a=null;break;default:c.push(this._getPoint(a)),a=a.nextElementSibling}return c};d.prototype._parseOrthogonalCamera=function(a){a=this._getCameraData(a);4===a.length&&(this._orthogonalCamera={cameraViewPoint:a[0],cameraDirection:a[1],cameraUpVector:a[2],viewToWorldScale:a[3]})};d.prototype._parsePerspectiveCamera=function(a){a=this._getCameraData(a);
4===a.length&&(this._perspectiveCamera={cameraViewPoint:a[0],cameraDirection:a[1],cameraUpVector:a[2],fieldOfView:a[3]})};d.prototype._parseLines=function(a){for(a=a.firstElementChild;null!==a;)this._lines.push(this._getLine(a)),a=a.nextElementSibling};d.prototype._parseClippingPlanes=function(a){for(a=a.firstElementChild;null!==a;)this._clippingPlanes.push(this._getClippingPlane(a)),a=a.nextElementSibling};d.prototype._getClippingPlane=function(e){e=e.firstElementChild;var c=a.Point3.zero(),b=a.Point3.zero();
null!==e&&(c=this._getPoint(e),e=e.nextElementSibling,null!==e&&(b=this._getPoint(e)));return{location:c,direction:b}};d.prototype._getLine=function(e){e=e.firstElementChild;var c=a.Point3.zero(),b=a.Point3.zero();null!==e&&(c=this._getPoint(e),e=e.nextElementSibling,null!==e&&(b=this._getPoint(e)));return{startPoint:c,endPoint:b}};d.prototype._getPoint=function(e){var c=[];for(e=e.firstElementChild;null!==e;){var b=e.firstChild;null!==b&&c.push(parseFloat(b.wholeText));e=e.nextElementSibling}console.assert(3===
c.length);return new a.Point3(c[0],c[1],c[2])};d.prototype._colorFromArgb=function(e,c){c={color:a.Color.black(),components:c};for(var b=[],f=0;f<e.length;f+=2){var h=e.substr(f,2);b.push(parseInt(h,16))}3===b.length?c.color.set(b[0],b[1],b[2]):4===b.length&&(c.alpha=b[0],c.color.set(b[1],b[2],b[3]));return c};d.prototype._getColoring=function(a){var c=[];for(a=a.firstElementChild;null!==a;){var b=a.attributes.getNamedItem("Color"),f=this._getComponents(a);b&&f.length&&c.push(this._colorFromArgb(b.value,
f));a=a.nextElementSibling}return c};d.prototype._getComponents=function(a){var c=[];for(a=a.firstElementChild;null!==a;){var b=a.attributes,f=b.getNamedItem("IfcGuid"),h=b.getNamedItem("OriginatingSystem"),b=b.getNamedItem("AuthoringToolId");null!==f&&(f={ifcGuid:f.value},null!==h&&(f.originatingSystem=h.value),null!==b&&(f.authoringToolId=b.value),c.push(f));a=a.nextElementSibling}return c};return d}();a.BCFViewpoint=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(e,c,b){this.x=e;this.y=c;this.z=b}a.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.z=a.z;return this};a.prototype.set=function(a,c,b){this.x=a;this.y=c;this.z=b;return this};a.prototype.toArray=function(a){a[0]=this.x;a[1]=this.y;a[2]=this.z};a.prototype.fromArray=function(a){this.x=a[0];this.y=a[1];this.z=a[2];return this};a.prototype.add=function(a){this.x+=a.x;this.y+=a.y;this.z+=a.z;return this};a.prototype.subtract=function(a){this.x-=a.x;this.y-=
a.y;this.z-=a.z;return this};a.prototype.copy=function(){return new a(this.x,this.y,this.z)};a.fromJson=function(e){return new a(e.x,e.y,e.z)};a.construct=function(e){return a.fromJson(e)};a.prototype.toJson=function(){return{x:this.x,y:this.y,z:this.z}};a.prototype.forJson=function(){return this.toJson()};a.prototype.equals=function(a){return this.x===a.x&&this.y===a.y&&this.z===a.z};a.prototype.equalsWithTolerance=function(a,c){return this.x-a.x<c&&this.x-a.x>-c&&this.y-a.y<c&&this.y-a.y>-c&&this.z-
a.z<c&&this.z-a.z>-c};a.prototype.isAxis=function(){return 1===Math.abs(this.x)&&0===this.y&&0===this.z||0===this.x&&1===Math.abs(this.y)&&0===this.z||0===this.x&&0===this.y&&1===Math.abs(this.z)};a.prototype.length=function(){return Math.sqrt(this.squaredLength())};a.prototype.squaredLength=function(){return this.x*this.x+this.y*this.y+this.z*this.z};a.prototype.scale=function(a){this.x*=a;this.y*=a;this.z*=a;return this};a.prototype.normalize=function(){return this.scale(1/this.length())};a.prototype.negate=
function(){this.x=-this.x;this.y=-this.y;this.z=-this.z;return this};a.zero=function(){return new a(0,0,0)};a.add=function(e,c){return new a(e.x+c.x,e.y+c.y,e.z+c.z)};a.subtract=function(e,c){return new a(e.x-c.x,e.y-c.y,e.z-c.z)};a.dot=function(a,c){return a.x*c.x+a.y*c.y+a.z*c.z};a.cross=function(e,c){return new a(e.y*c.z-e.z*c.y,e.z*c.x-e.x*c.z,e.x*c.y-e.y*c.x)};a.distance=function(e,c){return a.subtract(c,e).length()};a.scale=function(a,c){return a.copy().scale(c)};a.createFromArray=function(e){return new a(e[0],
e[1],e[2])};return a}();a.Point3=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(){this.loadIdentity()}d.prototype.loadIdentity=function(){this.m=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return this};d.prototype.isIdentity=function(){var a=this.m;return 1===a[0]&&0===a[1]&&0===a[2]&&0===a[3]&&0===a[4]&&1===a[5]&&0===a[6]&&0===a[7]&&0===a[8]&&0===a[9]&&1===a[10]&&0===a[11]&&0===a[12]&&0===a[13]&&0===a[14]&&1===a[15]};d.prototype.equals=function(a){for(var c=0;16>c;++c)if(this.m[c]!==a.m[c])return!1;return!0};d.prototype.setScaleComponent=function(a,
c,b){this.m[0]=a;this.m[5]=c;this.m[10]=b;return this};d.prototype.setTranslationComponent=function(a,c,b){this.m[12]=a;this.m[13]=c;this.m[14]=b;return this};d.prototype.copy=function(){var a=new d;a.m=this.m.slice();return a};d.prototype.assign=function(a){for(var c=0;c<a.m.length;c++)this.m[c]=a.m[c];return this};d.prototype.scale=function(a){for(var c=0;16>c;c++)this.m[c]*=a;return this};d.prototype.transform=function(e,c){if(void 0===c)return c=a.Point3.zero(),this.transform(e,c),c;c.set(e.x*
this.m[0]+e.y*this.m[4]+e.z*this.m[8]+this.m[12],e.x*this.m[1]+e.y*this.m[5]+e.z*this.m[9]+this.m[13],e.x*this.m[2]+e.y*this.m[6]+e.z*this.m[10]+this.m[14])};d.prototype.transform4=function(e,c){if(void 0===c)return c=a.Point4.zero(),this.transform4(e,c),c;c.set(e.x*this.m[0]+e.y*this.m[4]+e.z*this.m[8]+this.m[12]*e.w,e.x*this.m[1]+e.y*this.m[5]+e.z*this.m[9]+this.m[13]*e.w,e.x*this.m[2]+e.y*this.m[6]+e.z*this.m[10]+this.m[14]*e.w,e.x*this.m[3]+e.y*this.m[7]+e.z*this.m[11]+this.m[15]*e.w)};d.prototype.transformArray=
function(e,c){for(var b=0;b<e.length;b++){var f=e[b],f=new a.Point3(f.x*this.m[0]+f.y*this.m[4]+f.z*this.m[8]+this.m[12],f.x*this.m[1]+f.y*this.m[5]+f.z*this.m[9]+this.m[13],f.x*this.m[2]+f.y*this.m[6]+f.z*this.m[10]+this.m[14]);c[b]=f}};d.prototype.transformBox=function(e){if(e.isDegenerate())return a.Box.invalid();e=e.getCorners();for(var c=0;c<e.length;c++){var b=e[c];this.transform(b,b)}for(var c=new a.Box(e[0],e[0]),f=1;f<e.length;++f)b=e[f],c.addPoint(b);return c};d.prototype.transpose=function(){var a;
a=this.m[1];this.m[1]=this.m[4];this.m[4]=a;a=this.m[2];this.m[2]=this.m[8];this.m[8]=a;a=this.m[3];this.m[3]=this.m[12];this.m[12]=a;a=this.m[6];this.m[6]=this.m[9];this.m[9]=a;a=this.m[7];this.m[7]=this.m[13];this.m[13]=a;a=this.m[11];this.m[11]=this.m[14];this.m[14]=a;return this};d.createFromArray=function(a){var c=new d;c.m=a.slice();return c};d.createFromOffAxisRotation=function(a,c){var b=Math.PI/180*c;c=Math.sin(b);var b=Math.cos(b),f=new d;a=a.copy().normalize();var h=1-b,k=h*a.x*a.y,q=h*
a.x*a.z,p=h*a.y*a.z;f.m[0]=h*a.x*a.x+b;f.m[1]=c*a.z+k;f.m[2]=q-c*a.y;f.m[3]=0;f.m[4]=k-c*a.z;f.m[5]=h*a.y*a.y+b;f.m[6]=c*a.x+p;f.m[7]=0;f.m[8]=c*a.y+q;f.m[9]=p-c*a.x;f.m[10]=h*a.z*a.z+b;f.m[11]=0;f.m[12]=0;f.m[13]=0;f.m[14]=0;f.m[15]=1;return f};d.createFromBasis=function(a,c,b){var f=new d;f.m[0]=a.x;f.m[1]=a.y;f.m[2]=a.z;f.m[4]=c.x;f.m[5]=c.y;f.m[6]=c.z;f.m[8]=b.x;f.m[9]=b.y;f.m[10]=b.z;return f};d.multiply=function(a,c){var b=new d;b.m[0]=a.m[0]*c.m[0]+a.m[1]*c.m[4]+a.m[2]*c.m[8]+a.m[3]*c.m[12];
b.m[1]=a.m[0]*c.m[1]+a.m[1]*c.m[5]+a.m[2]*c.m[9]+a.m[3]*c.m[13];b.m[2]=a.m[0]*c.m[2]+a.m[1]*c.m[6]+a.m[2]*c.m[10]+a.m[3]*c.m[14];b.m[3]=a.m[0]*c.m[3]+a.m[1]*c.m[7]+a.m[2]*c.m[11]+a.m[3]*c.m[15];b.m[4]=a.m[4]*c.m[0]+a.m[5]*c.m[4]+a.m[6]*c.m[8]+a.m[7]*c.m[12];b.m[5]=a.m[4]*c.m[1]+a.m[5]*c.m[5]+a.m[6]*c.m[9]+a.m[7]*c.m[13];b.m[6]=a.m[4]*c.m[2]+a.m[5]*c.m[6]+a.m[6]*c.m[10]+a.m[7]*c.m[14];b.m[7]=a.m[4]*c.m[3]+a.m[5]*c.m[7]+a.m[6]*c.m[11]+a.m[7]*c.m[15];b.m[8]=a.m[8]*c.m[0]+a.m[9]*c.m[4]+a.m[10]*c.m[8]+
a.m[11]*c.m[12];b.m[9]=a.m[8]*c.m[1]+a.m[9]*c.m[5]+a.m[10]*c.m[9]+a.m[11]*c.m[13];b.m[10]=a.m[8]*c.m[2]+a.m[9]*c.m[6]+a.m[10]*c.m[10]+a.m[11]*c.m[14];b.m[11]=a.m[8]*c.m[3]+a.m[9]*c.m[7]+a.m[10]*c.m[11]+a.m[11]*c.m[15];b.m[12]=a.m[12]*c.m[0]+a.m[13]*c.m[4]+a.m[14]*c.m[8]+a.m[15]*c.m[12];b.m[13]=a.m[12]*c.m[1]+a.m[13]*c.m[5]+a.m[14]*c.m[9]+a.m[15]*c.m[13];b.m[14]=a.m[12]*c.m[2]+a.m[13]*c.m[6]+a.m[14]*c.m[10]+a.m[15]*c.m[14];b.m[15]=a.m[12]*c.m[3]+a.m[13]*c.m[7]+a.m[14]*c.m[11]+a.m[15]*c.m[15];return b};
d.prototype.inverseAndDeterminant=function(){var a=this.m[4]*this.m[9]-this.m[5]*this.m[8],c=this.m[4]*this.m[10]-this.m[6]*this.m[8],b=this.m[4]*this.m[11]-this.m[7]*this.m[8],f=this.m[4]*this.m[13]-this.m[5]*this.m[12],h=this.m[4]*this.m[14]-this.m[6]*this.m[12],k=this.m[4]*this.m[15]-this.m[7]*this.m[12],q=this.m[5]*this.m[10]-this.m[6]*this.m[9],p=this.m[5]*this.m[11]-this.m[7]*this.m[9],l=this.m[5]*this.m[14]-this.m[6]*this.m[13],m=this.m[5]*this.m[15]-this.m[7]*this.m[13],g=this.m[6]*this.m[11]-
this.m[7]*this.m[10],r=this.m[6]*this.m[15]-this.m[7]*this.m[14],t=this.m[8]*this.m[13]-this.m[9]*this.m[12],u=this.m[8]*this.m[14]-this.m[10]*this.m[12],v=this.m[8]*this.m[15]-this.m[11]*this.m[12],w=this.m[9]*this.m[14]-this.m[10]*this.m[13],y=this.m[9]*this.m[15]-this.m[11]*this.m[13],x=this.m[10]*this.m[15]-this.m[11]*this.m[14],z=new d;z.m[0]=this.m[5]*x-this.m[6]*y+this.m[7]*w;z.m[1]=this.m[2]*y-this.m[3]*w-this.m[1]*x;z.m[2]=this.m[1]*r-this.m[2]*m+this.m[3]*l;z.m[3]=this.m[2]*p-this.m[3]*
q-this.m[1]*g;z.m[4]=this.m[6]*v-this.m[7]*u-this.m[4]*x;z.m[5]=this.m[0]*x-this.m[2]*v+this.m[3]*u;z.m[6]=this.m[2]*k-this.m[3]*h-this.m[0]*r;z.m[7]=this.m[0]*g-this.m[2]*b+this.m[3]*c;z.m[8]=this.m[4]*y-this.m[5]*v+this.m[7]*t;z.m[9]=this.m[1]*v-this.m[3]*t-this.m[0]*y;z.m[10]=this.m[0]*m-this.m[1]*k+this.m[3]*f;z.m[11]=this.m[1]*b-this.m[3]*a-this.m[0]*p;z.m[12]=this.m[5]*u-this.m[6]*t-this.m[4]*w;z.m[13]=this.m[0]*w-this.m[1]*u+this.m[2]*t;z.m[14]=this.m[1]*h-this.m[2]*f-this.m[0]*l;z.m[15]=this.m[0]*
q-this.m[1]*c+this.m[2]*a;a=this.m[0]*z.m[0]-this.m[1]*-z.m[4]+this.m[2]*z.m[8]-this.m[3]*-z.m[12];if(0===a)return[null,0];z.scale(1/a);return[z,a]};d.inverse=function(a){return a.inverseAndDeterminant()[0]};d.prototype.upperLeft3x3Determinant=function(){return this.m[0]*(this.m[5]*this.m[10]-this.m[9]*this.m[6])-this.m[4]*(this.m[1]*this.m[10]-this.m[9]*this.m[2])+this.m[8]*(this.m[1]*this.m[6]-this.m[5]*this.m[2])};d.prototype.normalMatrix=function(){var a=this.copy().setTranslationComponent(0,
0,0).inverseAndDeterminant()[0];return a?a.transpose():null};d.prototype.toJson=function(){return this.m.slice()};d.prototype.forJson=function(){return this.toJson()};d.fromJson=function(a){return d.createFromArray(a)};d.construct=function(a){return d.fromJson(a)};d.toMatrix12=function(a){return[a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10],a[12],a[13],a[14]]};return d}();a.Matrix=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(d,c,b){this.set(d,c,b)}a.prototype.assign=function(a){this.set(a.r,a.g,a.b);return this};a.prototype.copy=function(){return new a(this.r,this.g,this.b)};a.prototype.equals=function(a){return this.r===a.r&&this.g===a.g&&this.b===a.b};a.prototype.set=function(a,c,b){this.r=a;this.g=c;this.b=b};a.prototype.setFromFloat=function(a,c,b){this.r=255*a;this.g=255*c;this.b=255*b};a.prototype.fromFloatArray=function(a){return this.setFromFloat(a[0],a[1],a[2])};a.prototype.getFloatArray=
function(){return[this.r/255,this.g/255,this.b/255]};a.prototype.toFloatArray=function(a){a[0]=this.r/255;a[1]=this.g/255;a[2]=this.b/255};a.fromJson=function(e){return new a(e.r,e.g,e.b)};a.prototype.toJson=function(){return{r:this.r,g:this.g,b:this.b}};a.prototype.forJson=function(){return this.toJson()};a.createFromFloat=function(e,c,b){var f=a.black();f.setFromFloat(e,c,b);return f};a.createFromFloatArray=function(e){var c=a.black();c.fromFloatArray(e);return c};a.red=function(){return new a(255,
0,0)};a.green=function(){return new a(0,255,0)};a.blue=function(){return new a(0,0,255)};a.yellow=function(){return new a(255,255,0)};a.white=function(){return new a(255,255,255)};a.black=function(){return new a(0,0,0)};return a}();a.Color=g;g=function(){return function(a,e){this.top=a;this.bottom=e}}();a.VerticalGradient=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(d){var c=this;this._position=new a.Point2(0,0);this._viewportSize=new a.Point2(200,200);this._anchor=a.OverlayAnchor.LowerLeftCorner;this._instanceKeys=[];this._firstAttachment=this._enabled=!1;this._sceneReadyCompleted=a.Internal.OpenPromise.create();this._geometryCreated=!1;this._viewer=d;this._viewer.setCallbacks({sceneReady:function(){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return[4,this._createViewport()];
case 1:return b.sent(),this._updateVisibility(),[4,this._createGeometry()];case 2:return b.sent(),this._sceneReadyCompleted.resolve(),[2]}})})},_assemblyTreeReady:function(){return __awaiter(c,void 0,void 0,function(){var b,f,h,a,c;return __generator(this,function(d){switch(d.label){case 0:return[4,this._sceneReadyCompleted];case 1:d.sent();b=this._viewer.model;f=0;for(h=this._instanceKeys;f<h.length;f++)a=h[f],c=b._getNodeFromInstanceInc(!0,0,a,!0),b._preventNodeDeletion(c);return[2]}})})},_firstAttachment:function(){return __awaiter(c,
void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._firstAttachment=!0,[4,this._onCameraUpdate()];case 1:return b.sent(),this._updateVisibility(),[2]}})})},modelSwitchStart:function(){c._firstAttachment=!1}})}d.prototype.setAxisColor=function(d,c){return __awaiter(this,void 0,void 0,function(){var b,f,h;return __generator(this,function(k){switch(k.label){case 0:return[4,this._sceneReadyCompleted];case 1:k.sent();switch(d){case a.Axis.X:b=this._instanceKeys[0];
f=this._instanceKeys[3];break;case a.Axis.Y:b=this._instanceKeys[1];f=this._instanceKeys[4];break;case a.Axis.Z:b=this._instanceKeys[2];f=this._instanceKeys[5];break;default:return[2]}h=this._getScEngine();h.setPartColor([0,b],a.ElementType.Faces,c);h.setPartColor([0,f],a.ElementType.Lines,c);return[2]}})})};d.prototype.setAnchor=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){switch(c.label){case 0:return this._anchor=a,[4,this._sceneReadyCompleted];
case 1:return c.sent(),[2,this._updateViewport()]}})})};d.prototype.getAnchor=function(){return this._anchor};d.prototype.enable=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){this._enabled=!0;this._updateVisibility();return[2]})})};d.prototype.disable=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){this._enabled=!1;this._updateVisibility();return[2]})})};d.prototype._updateVisibility=function(){this._enabled&&
this._firstAttachment?this._showOverlay():this._hideOverlay()};d.prototype._hideOverlay=function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.AxisTriad,!1)};d.prototype._showOverlay=function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.AxisTriad,!0)};d.prototype.getEnabled=function(){return this._enabled};d.prototype.getOverlayId=function(){return a.BuiltinOverlayIndex.AxisTriad};d.prototype._updateViewport=function(){return this._viewer.overlayManager.setViewport(a.BuiltinOverlayIndex.AxisTriad,
this._anchor,this._position.x,a.OverlayUnit.Pixels,this._position.y,a.OverlayUnit.Pixels,this._viewportSize.x,a.OverlayUnit.Pixels,this._viewportSize.y,a.OverlayUnit.Pixels)};d.prototype._createViewport=function(){var e=this._viewer.overlayManager;this._updateViewport();var c=new a.Camera;c.setPosition(new a.Point3(0,0,10));c.setTarget(a.Point3.zero());c.setUp(new a.Point3(0,1,0));c.setWidth(d._fieldSize);c.setHeight(d._fieldSize);c.setProjection(a.Projection.Orthographic);return e.setCamera(a.BuiltinOverlayIndex.AxisTriad,
c)};d.prototype._createGeometry=function(){return __awaiter(this,void 0,void 0,function(){var e,c,b,f,h,k,q,p;return __generator(this,function(l){switch(l.label){case 0:if(this._geometryCreated)return[2];e=new a.MeshData;e.setFaceWinding(a.FaceWinding.Clockwise);c=[this._createAxis(d._xRotMatrix,0,d._xColor),this._createAxis(d._yRotMatrix,1,d._yColor),this._createAxis(d._zRotMatrix,2,d._zColor),this._createAxisLabel(a.Axis.X,d._xColor,3),this._createAxisLabel(a.Axis.Y,d._yColor,4),this._createAxisLabel(a.Axis.Z,
d._zColor,5)];return[4,Promise.all(c)];case 1:b=l.sent();this._onCameraUpdate();f=[];h=0;for(k=b;h<k.length;h++)q=k[h],f.push(0,q);p=this._getScEngine();p.setPartVisibility(f,!0);this._createGeomCallbacks();this._geometryCreated=!0;return[2]}})})};d.prototype._createGeomCallbacks=function(){var a=this;this._viewer.setCallbacks({camera:function(){a._onCameraUpdate()}})};d.prototype._geometryHasBeenCreated=function(){return this._geometryCreated};d.prototype._insideOverlay=function(d){var c=this._viewer.view.getCanvasSize(),
b=a.Point2.zero();if(this._anchor===a.OverlayAnchor.LowerRightCorner||this._anchor===a.OverlayAnchor.UpperRightCorner||this._anchor===a.OverlayAnchor.RightCenter)b.x=c.x-this._viewportSize.x;else if(this._anchor===a.OverlayAnchor.Center||this._anchor===a.OverlayAnchor.TopCenter||this._anchor===a.OverlayAnchor.BottomCenter)b.x=.5*(c.x-this._viewportSize.x);if(this._anchor===a.OverlayAnchor.LowerLeftCorner||this._anchor===a.OverlayAnchor.LowerRightCorner||this._anchor===a.OverlayAnchor.BottomCenter)b.y=
c.y-this._viewportSize.y;else if(this._anchor===a.OverlayAnchor.Center||this._anchor===a.OverlayAnchor.LeftCenter||this._anchor===a.OverlayAnchor.RightCenter)b.y=.5*(c.y-this._viewportSize.y);return d.x>=b.x&&d.x<=this._viewportSize.x+b.x&&d.y>=b.y&&d.y<=this._viewportSize.y+b.y};d.prototype._getOverlayOffset=function(){return this._viewer.overlayManager._getOverlayOffset(this._anchor,this._viewportSize)};d.prototype._getViewportSize=function(){return this._viewportSize};d.prototype.getSelectionAxis=
function(d){console.assert(this._enabled);if(null===d||!d.isFaceSelection()||d.overlayIndex()!==a.BuiltinOverlayIndex.AxisTriad)return null;var c=this._viewer.model;d=d.getNodeId();c=c._gatherInstanceIncsFromNodeIds([d],1);if(2!==c.length||0!==c[0])return null;c=c[1];for(d=0;d<this._instanceKeys.length;++d)if(this._instanceKeys[d]===c)switch(d%3){case 0:return a.Axis.X;case 1:return a.Axis.Y;case 2:return a.Axis.Z}return null};d.prototype._onClickSelection=function(d){return __awaiter(this,void 0,
void 0,function(){var c,b,f,h,k,q,p;return __generator(this,function(l){switch(l.label){case 0:c=this.getSelectionAxis(d);if(null===c)return[2];b=this._viewer.model;f=this._viewer.view;switch(c){case a.Axis.X:h=34;break;case a.Axis.Y:h=68;break;case a.Axis.Z:h=24}return[4,b.getModelBounding(!0,!1)];case 1:return k=l.sent(),q=f.getCamera(),p=this._alignedFitBounding(h,!1,!1,k),q.equals(p)&&(p=this._alignedFitBounding(h,!0,!1,k)),[2,f._setCameraPromise(p,a.DefaultTransitionDuration)]}})})};d.prototype._getScEngine=
function(){return this._viewer._getScEngine()};d.prototype._createInstance=function(d,c,b,f,h,k){return __awaiter(this,void 0,void 0,function(){var q,p,l,m,g;return __generator(this,function(r){switch(r.label){case 0:return[4,this._viewer.model.createMesh(d)];case 1:return q=r.sent(),p=new a.MeshInstanceData(q),p.setCreationFlags(k|a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.ExcludeBounding|a.MeshInstanceCreationFlags.Invisible),p.setOverlayIndex(a.BuiltinOverlayIndex.AxisTriad),
p.setFaceColor(b),p.setLineColor(f),p.setMatrix(h),l=this._getScEngine(),[4,l.createMeshInstance(p)];case 2:return m=r.sent(),g=m[1],this._instanceKeys[c]=g,[2,g]}})})};d.prototype._createAxis=function(d,c,b){var f=a.Internal.generateConeCylinderMeshData(.2,20,2,.4,.5,.1);return this._createInstance(f,c,b,a.Color.black(),d,a.MeshInstanceCreationFlags.None)};d.prototype._createAxisLabel=function(d,c,b){var f=new a.MeshData;f.setFaceWinding(a.FaceWinding.Clockwise);var h=new a.Matrix;d===a.Axis.X?(f.addPolyline([.15,
.25,0,-.15,-.25,0]),f.addPolyline([-.15,.25,0,.15,-.25,0]),h.setTranslationComponent(3.1,0,0)):d===a.Axis.Y?(f.addPolyline([-.15,.25,0,0,0,0]),f.addPolyline([0,0,0,.15,.25,0]),f.addPolyline([0,0,0,0,-.3125,0]),h.setTranslationComponent(0,3.1,0)):d===a.Axis.Z&&(f.addPolyline([-.15,.25,0,.15,.25,0]),f.addPolyline([.15,.25,0,-.15,-.25,0]),f.addPolyline([-.15,-.25,0,.15,-.25,0]),h.setTranslationComponent(0,0,3.1));return this._createInstance(f,b,a.Color.black(),c,h,a.MeshInstanceCreationFlags.ScreenOriented)};
d.prototype._onCameraUpdate=function(){var e=new a.Camera,c=this._viewer.view.getCamera();e.setPosition(c.getPosition().subtract(c.getTarget()).normalize());e.setTarget(a.Point3.zero());e.setUp(c.getUp());e.setProjection(a.Projection.Orthographic);e.setWidth(d._fieldSize);e.setHeight(d._fieldSize);return this._viewer.overlayManager.setCamera(a.BuiltinOverlayIndex.AxisTriad,e)};d.prototype._alignedFitBounding=function(d,c,b,f){var h=a.Point3.subtract(f.max,f.min).length();f=a.Point3.add(a.Point3.scale(f.min,
.5),a.Point3.scale(f.max,.5));var k=new a.Point3(f.x,f.y,f.z+h),k=a.Point3.subtract(f,k),q=-k.length();b=b?-1:1;0===d?(d=new a.Point3(0,b,0),c&&k.negate()):(c&&(q=-q),0!==(d&2)?k=new a.Point3(q,0,0):0!==(d&4)?k=new a.Point3(0,q,0):(console.assert(0!==(d&8)),k=new a.Point3(0,0,q)),0!==(d&16)?d=new a.Point3(b,0,0):0!==(d&32)?d=new a.Point3(0,b,0):(console.assert(0!==(d&64)),d=new a.Point3(0,0,b)));c=a.Point3.subtract(f,k);b=this._viewer.view.getCamera();return a.Camera.create(c,f,d,b.getProjection(),
h,h,b.getNearLimit())};d._xRotMatrix=a.Matrix.createFromOffAxisRotation(new a.Point3(0,0,1),-90);d._yRotMatrix=new a.Matrix;d._zRotMatrix=a.Matrix.createFromOffAxisRotation(new a.Point3(1,0,0),90);d._xColor=new a.Color(168,56,59);d._yColor=new a.Color(96,166,50);d._zColor=new a.Color(41,81,185);d._fieldSize=8;return d}();a.AxisTriad=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(a,c){this._id=0;this._bcfMap=new Map;this._viewer=a;this._callbackManager=c}d.prototype._getId=function(){return++this._id};d.prototype.getBCFMap=function(){return this._bcfMap};d.prototype.getBCFData=function(a){return this._bcfMap.get(a)||null};d.prototype.removeBCFData=function(a){this._bcfMap.delete(a);this._callbackManager.trigger("bcfRemoved",a)};d.prototype.addBCFFromFile=function(d){return __awaiter(this,void 0,void 0,function(){var c,b,f;return __generator(this,
function(h){switch(h.label){case 0:return c=this._getId(),b=new a.BCFData(d,c),this._bcfMap.set(c,b),[4,new JSZip.external.Promise(function(f,b){JSZipUtils.getBinaryContent(d,function(h,a){h?b(h):f(a)})})];case 1:return f=h.sent(),[4,this._loadBCFData(f,b)];case 2:return h.sent(),[2]}})})};d.prototype.addBCFFromBuffer=function(d,c){return __awaiter(this,void 0,void 0,function(){var b,f;return __generator(this,function(h){switch(h.label){case 0:return b=this._getId(),f=new a.BCFData(c,b),this._bcfMap.set(b,
f),[4,this._loadBCFData(d,f)];case 1:return h.sent(),[2]}})})};d.prototype._getVersion=function(d){return __awaiter(this,void 0,void 0,function(){var c,b,f,h;return __generator(this,function(k){switch(k.label){case 0:return c=d.file("bcf.version"),null!==c?[3,1]:[2,a.BCFVersion.v1_0];case 1:return[4,this._getDocument(c)];case 2:b=k.sent();f=b.documentElement;h=f.firstElementChild;if(null!==h&&null!==h.textContent)switch(h.textContent){case "2.0 RC":return[2,a.BCFVersion.v2_0];case "2.1":return[2,
a.BCFVersion.v2_1]}return[2,a.BCFVersion.Unknown]}})})};d.prototype._loadBCFData=function(d,c){return __awaiter(this,void 0,void 0,function(){var b=this,f,h,k,q,p,l,m;return __generator(this,function(g){switch(g.label){case 0:return f=this._viewer.model,[4,f.getModelBounding(!0,!1)];case 1:return h=g.sent(),k=f.getNodeUnitMultiplier(f.getAbsoluteRootNode()),[4,JSZip.loadAsync(d)];case 2:return q=g.sent(),l=(p=c).setVersion,[4,this._getVersion(q)];case 3:return l.apply(p,[g.sent()]),m=[],q.forEach(function(f){return __awaiter(b,
void 0,void 0,function(){var b,d,e,p,l,g,n,A,C,B,D,F,I,E,H,J,K;return __generator(this,function(G){switch(G.label){case 0:b=a.Internal.OpenPromise.create();m.push(b);d=this._getFileType(f);if(d!==a.BCFFileType.Markup&&d!==a.BCFFileType.Snapshot&&d!==a.BCFFileType.Viewpoint)return[3,7];e=f.split("/");p=e[0];l=e[1];g=c.getTopic(p);null===g&&(g=new a.BCFTopic(p,this._viewer),c.addTopic(p,g));if(!l.length)return[3,7];n=q.file(f);if(null===n)return[3,7];A=d;switch(A){case a.BCFFileType.Markup:return[3,
1];case a.BCFFileType.Viewpoint:return[3,3];case a.BCFFileType.Snapshot:return[3,5]}return[3,7];case 1:return B=(C=g).addMarkup,D=[l],[4,this._getDocument(n)];case 2:return B.apply(C,D.concat([G.sent()])),[3,7];case 3:return I=(F=g).addViewpoint,E=[l],[4,this._getDocument(n)];case 4:return I.apply(F,E.concat([G.sent(),c.getVersion(),h,k])),[3,7];case 5:return J=(H=g).addSnapshot,K=[l],[4,n.async("uint8array")];case 6:return J.apply(H,K.concat([G.sent()])),[3,7];case 7:return b.resolve(),[2]}})})}),
[4,a.Internal.waitForAll(m)];case 4:return g.sent(),this._callbackManager.trigger("bcfLoaded",c.getId(),c.getFilename()),[2]}})})};d.prototype._getDocument=function(a){return __awaiter(this,void 0,void 0,function(){var c,b,f;return __generator(this,function(h){switch(h.label){case 0:return c=new DOMParser,f=(b=c).parseFromString,[4,a.async("text")];case 1:return[2,f.apply(b,[h.sent(),"application/xml"])]}})})};d.prototype._getFileType=function(d){if("/"===d.slice(-1))return a.BCFFileType.TopicFolder;
d=d.split(".");console.assert(2===d.length);switch(d[1]){case "bcf":return a.BCFFileType.Markup;case "bcfv":return a.BCFFileType.Viewpoint;case "png":return a.BCFFileType.Snapshot;case "version":return a.BCFFileType.Version;case "xsd":return a.BCFFileType.Schema;case "bcfp":return a.BCFFileType.Project}return a.BCFFileType.Unknown};return d}();a.BCFManager=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(d,c){void 0===d&&(d=a.Point3.zero());void 0===c&&(c=a.Point3.zero());this.min=d.copy();this.max=c.copy()}d.prototype.copy=function(){return new d(this.min,this.max)};d.prototype.equals=function(a){return this.min.equals(a.min)&&this.max.equals(a.max)};d.prototype.center=function(){var d=a.Point3.add(this.min,this.max);d.scale(.5);return d};d.prototype.extents=function(){return a.Point3.subtract(this.max,this.min)};d.prototype.addBox=function(a){a.isDegenerate()||
(this.addPoint(a.min),this.addPoint(a.max))};d.prototype.addPoint=function(a){a.x<this.min.x&&(this.min.x=a.x);a.y<this.min.y&&(this.min.y=a.y);a.z<this.min.z&&(this.min.z=a.z);a.x>this.max.x&&(this.max.x=a.x);a.y>this.max.y&&(this.max.y=a.y);a.z>this.max.z&&(this.max.z=a.z)};d.prototype.toJson=function(){return{min:this.min.toJson(),max:this.max.toJson()}};d.prototype.forJson=function(){return this.toJson()};d.fromJson=function(e){var c=a.Point3.fromJson(e.min);e=a.Point3.fromJson(e.max);return new d(c,
e)};d.construct=function(a){return d.fromJson(a)};d.prototype.getCorners=function(){var a=[];a[0]=this.min.copy();a[1]=this.min.copy();a[2]=this.min.copy();a[1].x=this.max.x;a[2].y=this.max.y;a[3]=a[2].copy();a[3].x=this.max.x;a[4]=a[0].copy();a[5]=a[1].copy();a[6]=a[2].copy();a[7]=a[3].copy();a[4].z=this.max.z;a[5].z=this.max.z;a[6].z=this.max.z;a[7].z=this.max.z;return a};d.invalid=function(){return new d(new a.Point3(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY),new a.Point3(Number.NEGATIVE_INFINITY,
Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY))};d.prototype.isDegenerate=function(){return this.min.x>this.max.x||this.min.y>this.max.y||this.min.z>this.max.z};return d}();a.Box=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function d(){var a=this;this._aliasMap=new Map;this._callbackMap=new Map;this._activeTriggerDepth=0;this._pendingClearUnboundFilteredNames=new Set;this._aliasMap.set("sceneRendered","frameDrawn");this.bind({selectionArray:function(b){a._triggerDeprecatedSelectionCallback(b)},incrementalSelectionBatchBegin:function(){return a.unsafeTrigger("volumeSelectionBatchBegin")},incrementalSelectionBatchEnd:function(){return a.unsafeTrigger("volumeSelectionBatchEnd")},
incrementalSelectionEnd:function(){return a.unsafeTrigger("volumeSelectionEnd")},visibilityChanged:function(b,f){a.unsafeTrigger("partsVisibilityShown",b);a.unsafeTrigger("partsVisibilityHidden",f)}})}d.prototype._triggerDeprecatedSelectionCallback=function(c){if(0===c.length)this.unsafeTrigger("selection",[a.Event.NodeSelectionEvent._createNull()]);else if(100>=c.length)this.unsafeTrigger("selection",c);else{var b=0;for(c=g.chunkify(c,100);b<c.length;b++)this.unsafeTrigger("selection",c[b])}};d.prototype._filterName=
function(a){var b=this._aliasMap.get(a);return void 0===b?a:b};d.prototype.bind=function(a,b){for(var f=0,h=Object.keys(a);f<h.length;f++){var k=h[f],d=a[k];if("function"===typeof d){var k=this._filterName(k),e=this._callbackMap.get(k);void 0===e?this._callbackMap.set(k,[d]):b?e.unshift(d):e.push(d)}}};d.prototype.unbind=function(a){for(var b=0,f=Object.keys(a);b<f.length;b++){var h=f[b],k=this._filterName(h),d=this._callbackMap.get(k);if(void 0!==d)for(var h=a[h],e=0;e<d.length;e++)d[e]===h&&(d[e]=
null,this._pendingClearUnboundFilteredNames.add(k))}this._clearUnboundCallbacks()};d.prototype._clearUnboundCallbacks=function(){var a=this;0!==this._pendingClearUnboundFilteredNames.size&&0===this._activeTriggerDepth&&(this._pendingClearUnboundFilteredNames.forEach(function(b){var f=a._callbackMap.get(b);void 0!==f&&(f=f.filter(function(f){return null!==f}),0===f.length?a._callbackMap.delete(b):a._callbackMap.set(b,f))}),this._pendingClearUnboundFilteredNames.clear())};d.prototype.promiseTrigger=
function(a,b){for(var f=[],h=2;h<arguments.length;h++)f[h-2]=arguments[h];return __awaiter(this,void 0,void 0,function(){var h;return __generator(this,function(d){switch(d.label){case 0:console.assert(a!==b),d.label=1;case 1:return d.trys.push([1,3,4,5]),[4,this._unsafePromiseTrigger(a,f)];case 2:return d.sent(),[3,5];case 3:return h=d.sent(),console.log("Rejected promise in '"+a+"' callback:"),console.log(h),[3,5];case 4:return null!==b&&this.unsafeTrigger(b,f),[7];case 5:return[2]}})})};d.prototype._unsafePromiseTrigger=
function(a,b){var f=this._filterName(a),f=this._callbackMap.get(f),h=[];if(void 0!==f){++this._activeTriggerDepth;for(var k=0;k<f.length;k++){var d=f[k];if(null!==d)try{h.push(d.apply(null,b))}catch(e){console.log("Unhandled exception in '"+a+"' callback:"),console.log(e)}}--this._activeTriggerDepth;this._clearUnboundCallbacks()}return g.waitForAll(h)};d.prototype.trigger=function(a){for(var b=[],f=1;f<arguments.length;f++)b[f-1]=arguments[f];this.unsafeTrigger(a,b)};d.prototype.unsafeTrigger=function(a,
b){var f=this._filterName(a),f=this._callbackMap.get(f);if(void 0!==f){++this._activeTriggerDepth;for(var h=0;h<f.length;h++){var k=f[h];if(null!==k)try{k.apply(null,b)}catch(d){console.log("Unhandled exception in '"+a+"' callback:"),console.log(d)}}--this._activeTriggerDepth;this._clearUnboundCallbacks()}};return d}();g.CallbackManager=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){a[a.LoadModel=0]="LoadModel";a[a.CreateNode=1]="CreateNode";a[a.CreateInstance=2]="CreateInstance";a[a.CreatePmi=3]="CreatePmi"})(a.NodeSource||(a.NodeSource={}));(function(a){a[a.Desktop=0]="Desktop";a[a.Mobile=1]="Mobile"})(a.ScreenConfiguration||(a.ScreenConfiguration={}));(function(a){a[a.Faces=0]="Faces";a[a.Lines=1]="Lines";a[a.Points=2]="Points"})(a.ElementType||(a.ElementType={}));(function(a){a[a.Orthographic=0]="Orthographic";a[a.Perspective=1]="Perspective"})(a.Projection||
(a.Projection={}));(function(a){a[a.Top=0]="Top";a[a.Bottom=1]="Bottom";a[a.Left=2]="Left";a[a.Right=3]="Right";a[a.Front=4]="Front";a[a.Back=5]="Back";a[a.Iso=6]="Iso";a[a.TopRightFront=7]="TopRightFront";a[a.TopLeftFront=8]="TopLeftFront";a[a.TopLeftBack=9]="TopLeftBack";a[a.TopRightBack=10]="TopRightBack";a[a.TopBack=11]="TopBack";a[a.TopFront=12]="TopFront";a[a.TopLeft=13]="TopLeft";a[a.TopRight=14]="TopRight";a[a.BottomRightBack=15]="BottomRightBack";a[a.BottomLeftBack=16]="BottomLeftBack";a[a.BottomLeftFront=
17]="BottomLeftFront";a[a.BottomRightFront=18]="BottomRightFront";a[a.BottomFront=19]="BottomFront";a[a.BottomBack=20]="BottomBack";a[a.BottomLeft=21]="BottomLeft";a[a.BottomRight=22]="BottomRight";a[a.RightBottomBack=23]="RightBottomBack";a[a.RightBottomFront=24]="RightBottomFront";a[a.RightTopFront=25]="RightTopFront";a[a.RightTopBack=26]="RightTopBack";a[a.RightTop=27]="RightTop";a[a.RightBottom=28]="RightBottom";a[a.RightFront=29]="RightFront";a[a.RightBack=30]="RightBack";a[a.LeftBottomFront=
31]="LeftBottomFront";a[a.LeftBottomBack=32]="LeftBottomBack";a[a.LeftTopBack=33]="LeftTopBack";a[a.LeftTopFront=34]="LeftTopFront";a[a.LeftTop=35]="LeftTop";a[a.LeftBottom=36]="LeftBottom";a[a.LeftBack=37]="LeftBack";a[a.LeftFront=38]="LeftFront";a[a.FrontBottomRight=39]="FrontBottomRight";a[a.FrontTopRight=40]="FrontTopRight";a[a.FrontTopLeft=41]="FrontTopLeft";a[a.FrontBottomLeft=42]="FrontBottomLeft";a[a.FrontRight=43]="FrontRight";a[a.FrontLeft=44]="FrontLeft";a[a.FrontTop=45]="FrontTop";a[a.FrontBottom=
46]="FrontBottom";a[a.BackTopRight=47]="BackTopRight";a[a.BackBottomRight=48]="BackBottomRight";a[a.BackBottomLeft=49]="BackBottomLeft";a[a.BackTopLeft=50]="BackTopLeft";a[a.BackLeft=51]="BackLeft";a[a.BackRight=52]="BackRight";a[a.BackBottom=53]="BackBottom";a[a.BackTop=54]="BackTop"})(a.ViewOrientation||(a.ViewOrientation={}));(function(a){a[a.X=0]="X";a[a.Y=1]="Y";a[a.Z=2]="Z"})(a.Axis||(a.Axis={}));(function(a){a[a.None=-1]="None";a[a.Left=0]="Left";a[a.Middle=1]="Middle";a[a.Right=2]="Right"})(a.Button||
(a.Button={}));(function(a){a[a.None=0]="None";a[a.Left=1]="Left";a[a.Right=2]="Right";a[a.Middle=4]="Middle"})(a.Buttons||(a.Buttons={}));(function(a){a[a.Axis=0]="Axis";a[a.Plane=1]="Plane";a[a.ViewPlane=2]="ViewPlane";a[a.Rotate=3]="Rotate"})(a.HandleType||(a.HandleType={}));(function(a){a[a.Translate=0]="Translate";a[a.Rotate=1]="Rotate"})(a.HandleEventType||(a.HandleEventType={}));(function(a){a[a.Invalid=-1]="Invalid";a[a.None=0]="None";a[a.Navigate=1]="Navigate";a[a.Orbit=2]="Orbit";a[a.Pan=
3]="Pan";a[a.Zoom=4]="Zoom";a[a.Walk=5]="Walk";a[a.KeyboardWalk=6]="KeyboardWalk";a[a.WalkMode=7]="WalkMode";a[a.Turntable=8]="Turntable";a[a.Select=9]="Select";a[a.AreaSelect=10]="AreaSelect";a[a.RayDrillSelect=11]="RayDrillSelect";a[a.RedlineCircle=12]="RedlineCircle";a[a.RedlineText=13]="RedlineText";a[a.RedlineRectangle=14]="RedlineRectangle";a[a.RedlinePolyline=15]="RedlinePolyline";a[a.MeasureEdgeLength=16]="MeasureEdgeLength";a[a.MeasureFaceFaceDistance=17]="MeasureFaceFaceDistance";a[a.MeasurePointPointDistance=
18]="MeasurePointPointDistance";a[a.MeasureFaceFaceAngle=19]="MeasureFaceFaceAngle";a[a.Note=20]="Note";a[a.Cutting=21]="Cutting";a[a.Handle=22]="Handle";a[a.NavCube=23]="NavCube";a[a.AxisTriad=24]="AxisTriad"})(a.OperatorId||(a.OperatorId={}));(function(a){a[a.MouseDown=0]="MouseDown";a[a.MouseMove=1]="MouseMove";a[a.MouseUp=2]="MouseUp";a[a.Mousewheel=3]="Mousewheel";a[a.TouchStart=4]="TouchStart";a[a.TouchMove=5]="TouchMove";a[a.TouchEnd=6]="TouchEnd";a[a.KeyDown=7]="KeyDown";a[a.KeyUp=8]="KeyUp";
a[a.ViewOrientationChange=9]="ViewOrientationChange"})(a.EventType||(a.EventType={}));(function(a){a[a.None=0]="None";a[a.Shift=2]="Shift";a[a.Alt=4]="Alt";a[a.Control=8]="Control";a[a.Command=16]="Command"})(a.KeyModifiers||(a.KeyModifiers={}));(function(a){a[a.Down=0]="Down";a[a.Up=1]="Up";a[a.Move=2]="Move";a[a.Wheel=3]="Wheel"})(a.MouseInputType||(a.MouseInputType={}));(function(a){a[a.Start=0]="Start";a[a.Move=1]="Move";a[a.End=2]="End"})(a.TouchInputType||(a.TouchInputType={}));(function(a){a[a.Down=
0]="Down";a[a.Up=1]="Up"})(a.KeyInputType||(a.KeyInputType={}));(function(a){a[a.Forward=0]="Forward";a[a.Backward=1]="Backward";a[a.Left=2]="Left";a[a.Right=3]="Right";a[a.Up=4]="Up";a[a.Down=5]="Down";a[a.RotateRight=6]="RotateRight";a[a.RotateLeft=7]="RotateLeft";a[a.TiltUp=8]="TiltUp";a[a.TiltDown=9]="TiltDown"})(a.WalkDirection||(a.WalkDirection={}));(function(a){a[a.Backspace=8]="Backspace";a[a.Shift=16]="Shift";a[a.Escape=27]="Escape";a[a.PgUp=33]="PgUp";a[a.PgDown=34]="PgDown";a[a.LeftArrow=
37]="LeftArrow";a[a.UpArrow=38]="UpArrow";a[a.RightArrow=39]="RightArrow";a[a.DownArrow=40]="DownArrow";a[a.Delete=46]="Delete";a[a.a=65]="a";a[a.b=66]="b";a[a.c=67]="c";a[a.d=68]="d";a[a.e=69]="e";a[a.f=70]="f";a[a.g=71]="g";a[a.h=72]="h";a[a.i=73]="i";a[a.j=74]="j";a[a.k=75]="k";a[a.l=76]="l";a[a.m=77]="m";a[a.n=78]="n";a[a.o=79]="o";a[a.p=80]="p";a[a.q=81]="q";a[a.r=82]="r";a[a.s=83]="s";a[a.t=84]="t";a[a.u=85]="u";a[a.v=86]="v";a[a.w=87]="w";a[a.x=88]="x";a[a.y=89]="y";a[a.z=90]="z";a[a._0=48]=
"_0";a[a._1=49]="_1";a[a._2=50]="_2";a[a._3=51]="_3";a[a._4=52]="_4";a[a._5=53]="_5";a[a._6=54]="_6";a[a._7=55]="_7";a[a._8=56]="_8";a[a._9=57]="_9";a[a.NumPad_0=96]="NumPad_0";a[a.NumPad_1=97]="NumPad_1";a[a.NumPad_2=98]="NumPad_2";a[a.NumPad_3=99]="NumPad_3";a[a.NumPad_4=100]="NumPad_4";a[a.NumPad_5=101]="NumPad_5";a[a.NumPad_6=102]="NumPad_6";a[a.NumPad_7=103]="NumPad_7";a[a.NumPad_8=104]="NumPad_8";a[a.NumPad_9=105]="NumPad_9"})(a.KeyCode||(a.KeyCode={}));(function(a){a[a.None=0]="None";a[a.Face=
1]="Face";a[a.Line=2]="Line";a[a.Point=4]="Point";a[a.All=7]="All"})(a.SelectionMask||(a.SelectionMask={}));(function(a){a[a.None=0]="None";a[a.Face=1]="Face";a[a.Line=2]="Line";a[a.Point=3]="Point";a[a.Part=4]="Part"})(a.SelectionType||(a.SelectionType={}));(function(a){a[a.Set=0]="Set";a[a.Add=1]="Add";a[a.Toggle=2]="Toggle"})(a.SelectionMode||(a.SelectionMode={}));(function(a){a[a.HighlightOnly=0]="HighlightOnly";a[a.OutlineOnly=1]="OutlineOnly";a[a.HighlightAndOutline=2]="HighlightAndOutline"})(a.SelectionHighlightMode||
(a.SelectionHighlightMode={}));(function(a){a[a.Info=0]="Info";a[a.Warning=1]="Warning";a[a.Error=2]="Error"})(a.InfoType||(a.InfoType={}));(function(a){a[a.Interactive=1]="Interactive";a[a.All=2]="All";a[a.OnDemand=4]="OnDemand"})(a.StreamingMode||(a.StreamingMode={}));(function(a){a[a.Client=0]="Client";a[a.Server=1]="Server"})(a.RendererType||(a.RendererType={}));(function(a){a[a.Wireframe=0]="Wireframe";a[a.Shaded=1]="Shaded";a[a.WireframeOnShaded=2]="WireframeOnShaded";a[a.HiddenLine=3]="HiddenLine";
a[a.XRay=4]="XRay"})(a.DrawMode||(a.DrawMode={}));(function(a){a[a.Unsorted=0]="Unsorted";a[a.SingleLayer=1]="SingleLayer"})(a.XRayTransparencyMode||(a.XRayTransparencyMode={}));(function(a){a[a.SMAA=0]="SMAA";a[a.None=1]="None"})(a.AntiAliasingMode||(a.AntiAliasingMode={}));(function(a){a[a.DoNotExplode=0]="DoNotExplode";a[a.DoNotCut=1]="DoNotCut";a[a.DoNotSelect=2]="DoNotSelect";a[a.SuppressCameraScale=3]="SuppressCameraScale";a[a.OverrideSceneVisibility=4]="OverrideSceneVisibility";a[a.DoNotLight=
5]="DoNotLight";a[a.DoNotOutlineHighlight=6]="DoNotOutlineHighlight";a[a.ExcludeBounding=7]="ExcludeBounding";a[a.DoNotUseVertexColors=8]="DoNotUseVertexColors";a[a.AlwaysDraw=9]="AlwaysDraw";a[a.DoNotXRay=10]="DoNotXRay";a[a.ScreenOriented=11]="ScreenOriented";a[a.IgnoreExplosion=0]="IgnoreExplosion";a[a.IgnoreCutting=1]="IgnoreCutting";a[a.IgnoreSelection=2]="IgnoreSelection";a[a.IgnoreCameraScale=3]="IgnoreCameraScale";a[a.IgnoreLighting=5]="IgnoreLighting";a[a.IgnoreOutlineHighlight=6]="IgnoreOutlineHighlight"})(a.InstanceModifier||
(a.InstanceModifier={}));(function(a){a[a.None=0]="None";a[a.SuppressCameraScale=1]="SuppressCameraScale";a[a.ScreenOriented=2]="ScreenOriented";a[a.DoNotCut=4]="DoNotCut";a[a.DoNotExplode=8]="DoNotExplode";a[a.DoNotSelect=16]="DoNotSelect";a[a.DoNotLight=32]="DoNotLight";a[a.DoNotOutlineHighlight=64]="DoNotOutlineHighlight";a[a.ExcludeBounding=128]="ExcludeBounding";a[a.DoNotUseVertexColors=256]="DoNotUseVertexColors";a[a.Invisible=512]="Invisible";a[a.DoNotXRay=1024]="DoNotXRay";a[a.AlwaysDraw=
2048]="AlwaysDraw";a[a.OverrideSceneVisibility=4096]="OverrideSceneVisibility"})(a.MeshInstanceCreationFlags||(a.MeshInstanceCreationFlags={}));(function(a){a[a.None=0]="None";a[a.Model=1]="Model";a[a.Instance=2]="Instance";a[a.Ejected=4]="Ejected";a[a.All=7]="All"})(a.BoundingPreviewMode||(a.BoundingPreviewMode={}));(function(a){a[a.CameraTarget=0]="CameraTarget";a[a.ModelCenter=1]="ModelCenter";a[a.OrbitTarget=2]="OrbitTarget"})(a.OrbitFallbackMode||(a.OrbitFallbackMode={}));(function(a){a[a.Mouse=
0]="Mouse";a[a.Keyboard=1]="Keyboard"})(a.WalkMode||(a.WalkMode={}));(function(a){a[a.AssemblyNode=0]="AssemblyNode";a[a.PartInstance=1]="PartInstance";a[a.Part=2]="Part";a[a.BodyInstance=3]="BodyInstance";a[a.PmiBody=4]="PmiBody";a[a.PMIBody=4]="PMIBody";a[a.ViewFrame=5]="ViewFrame";a[a.Body=6]="Body";a[a.BrepBody=7]="BrepBody";a[a.TessBody=8]="TessBody";a[a.WireBody=9]="WireBody";a[a.PointsBody=10]="PointsBody";a[a.Pmi=11]="Pmi";a[a.PMI=11]="PMI";a[a.CadView=12]="CadView";a[a.CADView=12]="CADView";
a[a.DrawingSheet=13]="DrawingSheet";a[a.Unknown=14]="Unknown"})(a.NodeType||(a.NodeType={}));var g;(function(a){a[a.Unknown=0]="Unknown";a[a.Text=1]="Text";a[a.Dimension=2]="Dimension";a[a.Arrow=3]="Arrow";a[a.Balloon=4]="Balloon";a[a.CircleCenter=5]="CircleCenter";a[a.Coordinate=6]="Coordinate";a[a.Datum=7]="Datum";a[a.Fastener=8]="Fastener";a[a.Gdt=9]="Gdt";a[a.Locator=10]="Locator";a[a.MeasurementPoint=11]="MeasurementPoint";a[a.Roughness=12]="Roughness";a[a.Welding=13]="Welding";a[a.Table=14]=
"Table";a[a.Other=15]="Other";a[a.GeometricalTolerance=16]="GeometricalTolerance"})(g=a.PmiType||(a.PmiType={}));a.PMIType=g;(function(a){a[a.Unknown=0]="Unknown";a[a.DatumIdent=1]="DatumIdent";a[a.DatumTarget=2]="DatumTarget";a[a.DimensionDistance=1]="DimensionDistance";a[a.DimensionDistanceOffset=2]="DimensionDistanceOffset";a[a.DimensionDistanceCumulate=3]="DimensionDistanceCumulate";a[a.DimensionChamfer=4]="DimensionChamfer";a[a.DimensionSlope=5]="DimensionSlope";a[a.DimensionOrdinate=6]="DimensionOrdinate";
a[a.DimensionRadius=7]="DimensionRadius";a[a.DimensionRadiusTangent=8]="DimensionRadiusTangent";a[a.DimensionRadiusCylinder=9]="DimensionRadiusCylinder";a[a.DimensionRadiusEdge=10]="DimensionRadiusEdge";a[a.DimensionDiameter=11]="DimensionDiameter";a[a.DimensionDiameterTangent=12]="DimensionDiameterTangent";a[a.DimensionDiameterCylinder=13]="DimensionDiameterCylinder";a[a.DimensionDiameterEdge=14]="DimensionDiameterEdge";a[a.DimensionDiameterCone=15]="DimensionDiameterCone";a[a.DimensionLength=16]=
"DimensionLength";a[a.DimensionLengthCurvilinear=17]="DimensionLengthCurvilinear";a[a.DimensionLengthCircular=18]="DimensionLengthCircular";a[a.DimensionAngle=19]="DimensionAngle";a[a.GdtFcf=1]="GdtFcf";a[a.WeldingLine=1]="WeldingLine";a[a.WeldingSpot=2]="WeldingSpot";a[a.OtherSymbolUser=1]="OtherSymbolUser";a[a.OtherSymbolUtility=2]="OtherSymbolUtility";a[a.OtherSymbolCustom=3]="OtherSymbolCustom";a[a.OtherGeometricReference=4]="OtherGeometricReference";a[a.OtherRegion=5]="OtherRegion"})(g=a.PmiSubType||
(a.PmiSubType={}));a.PMISubType=g;(function(a){a[a.Unknown=-1]="Unknown";a[a.Context=1]="Context";a[a.Item=2]="Item";a[a.MultipleVertex=3]="MultipleVertex";a[a.UniqueVertex=4]="UniqueVertex";a[a.WireEdge=5]="WireEdge";a[a.Edge=6]="Edge";a[a.CoEdge=7]="CoEdge";a[a.Loop=8]="Loop";a[a.Face=9]="Face";a[a.Shell=10]="Shell";a[a.Connex=11]="Connex";a[a.Body=12]="Body";a[a.SingleWireBody=13]="SingleWireBody";a[a.BrepData=14]="BrepData";a[a.WireBody=17]="WireBody"})(g=a.PmiTopoRef||(a.PmiTopoRef={}));a.PMITopoRef=
g;(function(a){a[a.Unknown=0]="Unknown";a[a.Clockwise=1]="Clockwise";a[a.CounterClockwise=2]="CounterClockwise"})(a.FaceWinding||(a.FaceWinding={}));(function(a){a[a.UpperLeftCorner=0]="UpperLeftCorner";a[a.LowerLeftCorner=1]="LowerLeftCorner";a[a.LowerRightCorner=2]="LowerRightCorner";a[a.UpperRightCorner=3]="UpperRightCorner";a[a.TopCenter=4]="TopCenter";a[a.LeftCenter=5]="LeftCenter";a[a.RightCenter=6]="RightCenter";a[a.BottomCenter=7]="BottomCenter";a[a.Center=8]="Center"})(a.OverlayAnchor||(a.OverlayAnchor=
{}));(function(a){a[a.Pixels=0]="Pixels";a[a.ProportionOfCanvas=1]="ProportionOfCanvas";a[a.ProportionOfOtherDimension=2]="ProportionOfOtherDimension"})(a.OverlayUnit||(a.OverlayUnit={}));(function(a){a[a.ScreenPixels=0]="ScreenPixels";a[a.CSSPixels=1]="CSSPixels";a[a.World=2]="World";a[a.ProportionOfScreenWidth=3]="ProportionOfScreenWidth";a[a.ProportionOfScreenHeight=4]="ProportionOfScreenHeight";a[a.ProportionOfBoundingDiagonal=5]="ProportionOfBoundingDiagonal"})(a.PointSizeUnit||(a.PointSizeUnit=
{}));(function(a){a[a.Square=0]="Square";a[a.Disk=1]="Disk";a[a.Sphere=2]="Sphere"})(a.PointShape||(a.PointShape={}));g=function(){function a(){}Object.defineProperty(a.prototype,"bodyID",{get:function(){return this.bodyId},set:function(a){this.bodyId=a},enumerable:!0,configurable:!0});return a}();a.RefOnTopoItem=g;(function(a){a[a.Hidden=0]="Hidden";a[a.Shown=1]="Shown";a[a.Mixed=2]="Mixed"})(a.BranchVisibility||(a.BranchVisibility={}));(function(a){a[a.Object=0]="Object";a[a.World=1]="World"})(a.CullingVectorSpace||
(a.CullingVectorSpace={}));(function(a){a[a.Handles=8]="Handles";a[a.AxisTriad=9]="AxisTriad";a[a.NavCube=10]="NavCube";a[a.TestFramework=15]="TestFramework"})(a.BuiltinOverlayIndex||(a.BuiltinOverlayIndex={}));g=function(){return function(){this.pos1=a.Point3.zero();this.pos2=a.Point3.zero();this.distance=0}}();a.FaceFaceDistanceItem=g;g=function(){return function(){this.frontVector=new a.Point3(-1,0,0);this.upVector=new a.Point3(0,0,1)}}();a.ViewAxes=g;(function(a){a[a.Object=0]="Object";a[a.World=
1]="World";a[a.ProportionOfScreenWidth=2]="ProportionOfScreenWidth";a[a.ProportionOfScreenHeight=3]="ProportionOfScreenHeight"})(a.LinePatternLengthUnit||(a.LinePatternLengthUnit={}));(function(a){a[a.Selected=0]="Selected";a[a.Unselected=1]="Unselected"})(a.XRayGroup||(a.XRayGroup={}));(function(a){a[a.Pixels=0]="Pixels";a[a.ProportionOfWidth=1]="ProportionOfWidth";a[a.ProportionOfHeight=2]="ProportionOfHeight"})(a.BlurIntervalUnit||(a.BlurIntervalUnit={}));(function(a){a[a.Undefined=0]="Undefined";
a[a.Int=1]="Int";a[a.Float=2]="Float";a[a.Time=3]="Time";a[a.String=4]="String"})(a.AttributeType||(a.AttributeType={}));g=function(){return function(a,e){this.isInclusive=a;this.nodeIds=e}}();a.FilteredNodes=g;g=function(){return function(){this.additionalMatrix=null;this.attachInvisibly=this.allowMissingExternalModels=!1}}();a.LoadSubtreeConfig=g;(function(a){a[a.Unknown=0]="Unknown";a[a.Catia=2]="Catia";a[a.CatiaV5=3]="CatiaV5";a[a.Cadds=4]="Cadds";a[a.Unigraphics=5]="Unigraphics";a[a.Parasolid=
6]="Parasolid";a[a.Euclid=7]="Euclid";a[a.Iges=9]="Iges";a[a.Unisurf=10]="Unisurf";a[a.Vda=11]="Vda";a[a.Stl=12]="Stl";a[a.Wrl=13]="Wrl";a[a.Dxf=14]="Dxf";a[a.Acis=15]="Acis";a[a.ProE=16]="ProE";a[a.Step=18]="Step";a[a.Ideas=19]="Ideas";a[a.Jt=20]="Jt";a[a.Slw=22]="Slw";a[a.Cgr=23]="Cgr";a[a.Prc=24]="Prc";a[a.Xvl=25]="Xvl";a[a.Hpgl=26]="Hpgl";a[a.TopSolid=27]="TopSolid";a[a.OneSpaceDesigner=28]="OneSpaceDesigner";a[a._3dxml=29]="_3dxml";a[a.Inventor=30]="Inventor";a[a.PostScript=31]="PostScript";
a[a.Pdp=32]="Pdp";a[a.U3d=33]="U3d";a[a.Ifc=34]="Ifc";a[a.Dwg=35]="Dwg";a[a.Dwf=36]="Dwf";a[a.Se=37]="Se";a[a.Obj=38]="Obj";a[a.Kmz=39]="Kmz";a[a.Dae=40]="Dae";a[a._3ds=41]="_3ds";a[a.Rhino=43]="Rhino";a[a.Xml=44]="Xml";a[a._3mf=45]="_3mf";a[a.Scs=46]="Scs";a[a._3dHtml=47]="_3dHtml";a[a.Hsf=48]="Hsf";a[a.Gltf=49]="Gltf";a[a.Revit=50]="Revit";a[a.Fbx=51]="Fbx"})(a.FileType||(a.FileType={}));(function(a){a[a.World=0]="World";a[a.ProportionOfBoundingHeight=1]="ProportionOfBoundingHeight"})(a.SimpleReflectionAttenuationUnit||
(a.SimpleReflectionAttenuationUnit={}))})(Communicator||(Communicator={}));(function(a){a=a.Internal||(a.Internal={});a=a.AttachType||(a.AttachType={});a[a.Direct=0]="Direct";a[a.Indirect=1]="Indirect"})(Communicator||(Communicator={}));
(function(a){a=a.Internal||(a.Internal={});a=a.CameraFlags||(a.CameraFlags={});a[a.None=0]="None";a[a.Position=1]="Position";a[a.Target=2]="Target";a[a.Up=4]="Up";a[a.Width=8]="Width";a[a.Height=16]="Height";a[a.Projection=32]="Projection";a[a.NearLimit=64]="NearLimit"})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(){this._position=new a.Point3(0,0,1);this._target=a.Point3.zero();this._up=new a.Point3(0,1,0);this._height=this._width=0;this._projection=a.Projection.Orthographic;this._nearLimit=.01;this._cameraFlags=a.Internal.CameraFlags.None}d.prototype._clearFlags=function(){this._cameraFlags=a.Internal.CameraFlags.None};d.prototype._getFlags=function(){return this._cameraFlags};d.prototype.copy=function(){return d.create(this._position,this._target,this._up,this._projection,
this._width,this._height,this._nearLimit)};d.prototype.setPosition=function(e){this._position.assign(e);this._cameraFlags|=a.Internal.CameraFlags.Position};d.prototype.getPosition=function(){return this._position.copy()};d.prototype.setTarget=function(e){this._target.assign(e);this._cameraFlags|=a.Internal.CameraFlags.Target};d.prototype.getTarget=function(){return this._target.copy()};d.prototype.setUp=function(e){this._up.assign(e);this._cameraFlags|=a.Internal.CameraFlags.Up};d.prototype.getUp=
function(){return this._up.copy()};d.prototype.setWidth=function(e){this._width=e;this._cameraFlags|=a.Internal.CameraFlags.Width};d.prototype.getWidth=function(){return this._width};d.prototype.setHeight=function(e){this._height=e;this._cameraFlags|=a.Internal.CameraFlags.Height};d.prototype.getHeight=function(){return this._height};d.prototype.setProjection=function(e){this._projection=e;this._cameraFlags|=a.Internal.CameraFlags.Projection};d.prototype.getProjection=function(){return this._projection};
d.prototype.setNearLimit=function(e){this._nearLimit=e;this._cameraFlags|=a.Internal.CameraFlags.NearLimit};d.prototype.getNearLimit=function(){return this._nearLimit};d.prototype.equals=function(a){return this._position.equals(a._position)&&this._target.equals(a._target)&&this._up.equals(a._up)&&this._width===a._width&&this._height===a._height&&this._projection===a._projection&&this._nearLimit===a._nearLimit};d.prototype.dolly=function(a){this._position.subtract(a);this._target.subtract(a)};d.prototype.getCameraPlaneIntersectionPoint=
function(e,c){var b=a.Point3.subtract(this._position,this._target).normalize(),b=a.Plane.createFromPointAndNormal(this._target,b);e=c.raycastFromPoint(e);if(null===e)return null;c=a.Point3.zero();return b.intersectsRay(e,c)?c:null};d.prototype.getMatrixFromCamera=function(){var e=a.Point3.subtract(this.getTarget(),this.getPosition()).normalize(),c=this.getUp().normalize(),c=a.Point3.cross(c,e),b=a.Point3.cross(e,c);return a.Matrix.createFromBasis(c,b,e)};d.create=function(a,c,b,f,h,k,q){var p=new d;
p._position.assign(a);p._target.assign(c);p._up.assign(b);p._projection=f;p._width=h;p._height=k;void 0!==q&&(p._nearLimit=q);return p};d.prototype.toJson=function(){return{position:this._position.toJson(),target:this._target.toJson(),up:this._up.toJson(),width:this._width,height:this._height,projection:this._projection,nearLimit:this._nearLimit,className:"Communicator.Camera"}};d.prototype.forJson=function(){return this.toJson()};d.fromJson=function(e){var c=a.Point3.fromJson(e.position),b=a.Point3.fromJson(e.target),
f=a.Point3.fromJson(e.up);return d.create(c,b,f,e.projection,e.width,e.height,e.nearLimit)};d.construct=function(a){return d.fromJson(a)};d.prototype.transform=function(e){if(e.isIdentity())return this.copy();var c=Math.abs(this._width),b=Math.abs(this._height),f=this.getUp().normalize().scale(b),b=a.Point3.subtract(this._position,this._target),h=a.Point3.cross(f,b).normalize().scale(c),c=this.getTarget(),h=a.Point3.add(c,h),f=a.Point3.add(c,f),k=a.Point3.add(c,b);e.transform(c,c);e.transform(h,h);
e.transform(f,f);e.transform(k,k);e=a.Point3.subtract(h,c);b=a.Point3.subtract(f,c);f=a.Point3.subtract(k,c);f=a.Point3.add(c,f);h=b.copy().normalize();e=e.length();b=b.length();0>this._width&&(e=-e);0>this._height&&(b=-b);return d.create(f,c,h,this._projection,e,b,this._nearLimit)};return d}();a.Camera=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(e,c,b,f){var h=this;this._cuttingSections=[];this._isInit=!1;this._standinGeometryPickable=!0;this._cappingFaceColor=a.Color.createFromFloat(.5,.5,.5);this._cappingLineColor=a.Color.createFromFloat(.5,.5,.5);this._cappingIdleCallbackEnabled=!1;this._cappingIdlePromise=null;this._conservativeIsCappingIdle=!1;this._viewer=e;this._model=c;this._callbackManager=b;this._engine=f;e.setCallbacks({cappingIdle:function(f){(h._conservativeIsCappingIdle=f)&&null!==h._cappingIdlePromise&&
(h._cappingIdlePromise.resolve(),h._cappingIdlePromise=null)},_resetAssemblyTreeBegin:function(){null!==h._cappingIdlePromise&&(h._cappingIdlePromise.reject(new a.CommunicatorError("Model became reset.")),h._cappingIdlePromise=null);return Promise.resolve()}})}d.prototype.createReferenceGeometryFromAxis=function(e,c){var b=[];switch(e){case a.Axis.X:b.push(new a.Point3(0,c.max.y,c.min.z));b.push(new a.Point3(0,c.max.y,c.max.z));b.push(new a.Point3(0,c.min.y,c.max.z));b.push(new a.Point3(0,c.min.y,
c.min.z));break;case a.Axis.Y:b.push(new a.Point3(c.min.x,0,c.min.z));b.push(new a.Point3(c.max.x,0,c.min.z));b.push(new a.Point3(c.max.x,0,c.max.z));b.push(new a.Point3(c.min.x,0,c.max.z));break;case a.Axis.Z:b.push(new a.Point3(c.min.x,c.max.y,0)),b.push(new a.Point3(c.max.x,c.max.y,0)),b.push(new a.Point3(c.max.x,c.min.y,0)),b.push(new a.Point3(c.min.x,c.min.y,0))}return b};d.prototype.createReferenceGeometryFromFaceNormal=function(e,c,b){var f=[],h=(new a.Plane).setFromPointAndNormal(c,e).d,h=
c.copy().add(a.Point3.scale(e,h));c=b.center();c=a.Point3.add(c,a.Point3.scale(e,a.Point3.dot(e,a.Point3.subtract(h,c))));b=b.extents().length()/2;var h=a.Point3.subtract(c,h),k=a.Point3.cross(e,h),q=h.copy().scale(-1),d=k.copy().scale(-1);e=a.Point3.add(h,k).normalize().scale(b).add(c);k=a.Point3.add(q,k).normalize().scale(b).add(c);q=a.Point3.add(q,d).normalize().scale(b).add(c);c=a.Point3.add(h,d).normalize().scale(b).add(c);f.push(e);f.push(k);f.push(q);f.push(c);return f};d.prototype.activateCuttingSections=
function(){for(var e=[],c=0,b=this._cuttingSections;c<b.length;c++)e.push(b[c].activate());return a.Internal.waitForAll(e)};d.prototype.deactivateCuttingSections=function(e){void 0===e&&(e=!1);for(var c=[],b=0,f=this._cuttingSections;b<f.length;b++){var h=f[b];e?c.push(h.clear()):c.push(h.deactivate())}return a.Internal.waitForAll(c)};d.prototype.setCuttingPlaneColor=function(e){for(var c=[],b=0,f=this._cuttingSections;b<f.length;b++)c.push(f[b].setColor(e));return a.Internal.waitForAll(c)};d.prototype.setCappingFaceColor=
function(a){this._cappingFaceColor=a?a.copy():null;return this._engine.setCappingFaceColor(this._cappingFaceColor)};d.prototype.getCappingFaceColor=function(){return this._cappingFaceColor?this._cappingFaceColor.copy():null};d.prototype.setCappingLineColor=function(a){this._cappingLineColor=a?a.copy():null;return this._engine.setCappingLineColor(this._cappingLineColor)};d.prototype.getCappingLineColor=function(){return this._cappingLineColor?this._cappingLineColor.copy():null};d.prototype.getCuttingSection=
function(a){return this._isInit&&a<this._cuttingSections.length?this._cuttingSections[a]:null};d.prototype.getCuttingSectionCapacity=function(){return void 0!==this._cuttingLimits?this._cuttingLimits.maxCuttingPlanesPerSection:0};d.prototype.getCuttingSectionCount=function(){return void 0!==this._cuttingLimits?this._cuttingLimits.maxCuttingSections:0};d.prototype.getCuttingSectionFromNodeId=function(a){if(null!==a)for(var c=0,b=this._cuttingSections;c<b.length;c++){var f=b[c];if(0<=f._getInstanceNodeIds().indexOf(a))return f}return null};
d.prototype.setStandinGeometryPickable=function(e){this._standinGeometryPickable=e;var c=this._gatherStandinGeometryIds();return this._model.setInstanceModifier(a.InstanceModifier.IgnoreSelection,c,!e)};d.prototype.getStandinGeometryPickable=function(){return this._standinGeometryPickable};d.prototype.setCappingDelay=function(a){this._engine.setCappingDelay(a)};d.prototype.delayCapping=function(){this._engine.delayCapping()};d.prototype.enableCappingIdleCallback=function(e){e!==this._cappingIdleCallbackEnabled&&
(this._cappingIdleCallbackEnabled=e,this._conservativeIsCappingIdle=!1,e||null===this._cappingIdlePromise||(this._cappingIdlePromise.reject(new a.CommunicatorError("Capping idle callback became disabled.")),this._cappingIdlePromise=null));return this._engine.enableCappingIdleCallback(e)};d.prototype.waitForCappingIdle=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(e){if(!this._cappingIdleCallbackEnabled)throw console.assert(null===this._cappingIdlePromise),
new a.CommunicatorError("Capping idle callback is not enabled.");if(this._conservativeIsCappingIdle)return[2];null===this._cappingIdlePromise&&(this._cappingIdlePromise=a.Internal.OpenPromise.create());return[2,this._cappingIdlePromise]})})};d.prototype.setCappingGeometryVisibility=function(a){return this._engine.setCappingGeometryVisibility(a)};d.prototype.getCappingGeometryVisibility=function(){return this._engine.getCappingGeometryVisibility()};d.prototype.getActiveCuttingSectionCount=function(){var a=
0;if(this._cuttingLimits)for(var c=0;c<this._cuttingLimits.maxCuttingSections;c++){var b=this.getCuttingSection(c);null!==b&&(a+=b.getCount())}return a};d.prototype._init=function(){if(!this._isInit){this._cuttingLimits=this._engine.getCuttingSectionLimits();for(var e=0;e<this._cuttingLimits.maxCuttingSections;e++){var c=new a.CuttingSection(this._viewer,this._model,this._callbackManager,this,this._engine);this._cuttingSections.push(c)}this._isInit=!0}return Promise.resolve()};d.prototype._isInitialized=
function(){return this._isInit};d.prototype.refreshPlaneGeometry=function(){for(var e=[],c=0,b=this._cuttingSections;c<b.length;c++)for(var f=b[c],h=0;h<f.getCount();h++){var k=f.getPlane(h);null!==k&&e.push(f.updatePlane(h,k,new a.Matrix,!1,!1))}return a.Internal.waitForAll(e)};d.prototype.hasActiveCuttingSection=function(){if(this._cuttingLimits)for(var a=0;a<this._cuttingLimits.maxCuttingSections;a++){var c=this.getCuttingSection(a);if(null!==c&&c.isActive())return!0}return!1};d.prototype.toJson=
function(){for(var a=[],c=0;c<this._cuttingSections.length;c++)a[c]=this._cuttingSections[c].toJson();return{cuttingSections:a,cappingGeometryVisibility:this.getCappingGeometryVisibility(),cappingFaceColor:this.getCappingFaceColor(),cappingLineColor:this.getCappingLineColor(),pickable:this.getStandinGeometryPickable()}};d.prototype.forJson=function(){return this.toJson()};d.prototype.fromJson=function(e){return __awaiter(this,void 0,void 0,function(){var c,b,f,h,k,q;return __generator(this,function(d){switch(d.label){case 0:c=
a.Internal.deepClone(e);b=[];f=c.cuttingSections;for(h=0;h<f.length;h++)k=f[h],q=this._cuttingSections[h],b.push(q.fromJson(k));b.push(this.setCappingGeometryVisibility(c.cappingGeometryVisibility));b.push(this.setCappingFaceColor(a.Color.fromJson(c.cappingFaceColor)));b.push(this.setCappingLineColor(a.Color.fromJson(c.cappingLineColor)));b.push(this.setStandinGeometryPickable(c.pickable));return[4,a.Internal.waitForAll(b)];case 1:return d.sent(),[2,this._callbackManager.promiseTrigger("_cuttingSectionsLoaded",
null)]}})})};d.prototype._gatherStandinGeometryIds=function(){for(var a=[],c=0,b=this._cuttingSections;c<b.length;c++)for(var f=0,h=b[c]._getInstanceNodeIds();f<h.length;f++)a.push(h[f]);return a};return d}();a.CuttingManager=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function e(a,b,f,h,k){this._container=a;this._canvasContainerElement=b;this._markupSvgElement=f;this._redlineSvgElement=h;this._redlineElement=k}e.prototype.getCanvasContainerElement=function(){return this._canvasContainerElement};e.prototype.getMarkupSvgElement=function(){return this._markupSvgElement};e.prototype.getRedlineSvgElement=function(){return this._redlineSvgElement};e.prototype.getRedlineElement=function(){return this._redlineElement};e.prototype.shutdown=
function(){this._container.removeChild(this._markupSvgElement);this._container.removeChild(this._redlineSvgElement);this._container.removeChild(this._redlineElement);this._container.removeChild(this._canvasContainerElement)};e.createFromElement=function(c){var b=c.id;0===b.length&&(b=a.GUID.create());var f=b+"-canvas-container",h=b+"-svg",k=b+"-redline-svg",b=b+"-redline",q=document.createElement("div");q.id=f;q.style.width="100%";q.style.height="100%";q.style.position="absolute";q.tabIndex=-1;q.classList.add("webviewer-canvas");
q.oncontextmenu=function(){return!1};c.appendChild(q);f=e._createSvgElement(h);c.appendChild(f);k=e._createSvgElement(k);c.appendChild(k);h=document.createElement("div");h.id=b;h.style.position="absolute";h.style.width="100%";h.style.height="100%";h.style.pointerEvents="none";c.appendChild(h);return new e(c,q,f,k,h)};e.createFromId=function(a){a=document.getElementById(a);return null===a?null:this.createFromElement(a)};e._createSvgElement=function(a){var b=document.createElementNS("http://www.w3.org/2000/svg",
"svg");b.id=a;b.style.width="100%";b.style.height="100%";b.style.position="absolute";b.style.pointerEvents="none";b.style.overflow="hidden";b.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink");return b};return e}();g.DomElements=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
var __extends=this&&this.__extends||function(){var a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,d){a.__proto__=d}||function(a,d){for(var e in d)d.hasOwnProperty(e)&&(a[e]=d[e])};return function(g,d){function e(){this.constructor=g}a(g,d);g.prototype=null===d?Object.create(d):(e.prototype=d.prototype,new e)}}();
(function(a){var g=function(a){function b(f){f=a.call(this,f)||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(Error);a.CommunicatorError=g;var d=function(a){function b(f){f=a.call(this,"Invalid index ("+f+").")||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.InvalidIndexError=d;d=function(a){function b(){var f=a.call(this,"Selection invalidated.")||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.SelectionInvalidatedError=
d;d=function(a){function b(){var f=a.call(this,"Internal logic error.")||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.InternalLogicError=d;d=function(a){function b(f){var h=a.call(this,"Invalid node ("+f+").")||this;Object.setPrototypeOf(h,b.prototype);h.nodeId=f;return h}__extends(b,a);return b}(g);a.InvalidNodeIdError=d;d=function(c){function b(f,h){for(var k=[],e=2;e<arguments.length;e++)k[e-2]=arguments[e];k.push(h);for(var e=[],d=0;d<k.length;d++){var l=k[d];
switch(l){case 0:e.push(a.NodeType.DrawingSheet,a.NodeType.PartInstance,a.NodeType.AssemblyNode);break;case 1:e.push(a.NodeType.BodyInstance);e.push(a.NodeType.PmiBody);e.push(a.NodeType.ViewFrame);break;case 2:e.push(a.NodeType.BodyInstance);break;case 3:e.push(a.NodeType.CadView);break;default:a.Internal.TypeAssertNever(l)}}e.sort();k=[];for(d=0;d<e.length;d++)k.push(a.NodeType[e[d]]);k=c.call(this,"Expected node ("+f+") to be of "+(1===k.length?"type ("+k[0]+")":"types "+k)+".")||this;Object.setPrototypeOf(k,
b.prototype);k.nodeId=f;k.expectedTypes=e;return k}__extends(b,c);return b}(g);a.InvalidNodeTypeError=d;d=function(a){function b(f){f=a.call(this,f)||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.LoadError=d;var e=function(a){function b(){var f=a.call(this,"Load cancelled.")||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(d);a.LoadCancelledError=e;d=function(a){function b(f){f=a.call(this,"Missing model: '"+f+"'.")||this;Object.setPrototypeOf(f,
b.prototype);return f}__extends(b,a);return b}(d);a.MissingModelError=d;g=function(a){function b(f){f=a.call(this,f)||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.ParseError=g;d=function(a){function b(f){f=a.call(this,f)||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);a.AssemblyDataParseError=d;a.MetaDataParseError=d;g=function(a){function b(f){f=a.call(this,f)||this;Object.setPrototypeOf(f,b.prototype);return f}__extends(b,a);return b}(g);
a.XmlParseError=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(e,c,b){var f=this;this._explodeActive=!1;this._explodeMagnitude=0;this._model=e;this._engine=c;b.bind({_modelSwitched:function(){return f.stop()}})}a.prototype.start=function(a,c){this.getActive()&&this.stop();return this._doExplode(a,c)};a.prototype.setMagnitude=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){switch(c.label){case 0:return 0<a&&!this._explodeActive?[4,this.start()]:[3,2];case 1:return c.sent(),
[3,3];case 2:0===a&&this._explodeActive&&this.stop(),c.label=3;case 3:return this._explodeActive?(this._explodeMagnitude=a,[2,this._engine.setExplodeMagnitude(a)]):[2]}})})};a.prototype.stop=function(){this._engine.stopExplode();this._explodeMagnitude=0;this._explodeActive=!1;this._engine.setExplodeMagnitude(0);return Promise.resolve()};a.prototype.getMagnitude=function(){return this._explodeMagnitude};a.prototype.getActive=function(){return this._explodeActive};a.prototype._doExplode=function(a,
c){return __awaiter(this,void 0,void 0,function(){var b,f;return __generator(this,function(h){switch(h.label){case 0:return this._explodeActive=!0,b=void 0!==a&&0<a.length?this._model._gatherInstanceIncsFromNodeIds(a):[],c?[3,2]:[4,this._model.getModelBounding(!0,!1)];case 1:return f=h.sent(),this._engine.startExplode(b,f.center()),[3,3];case 2:this._engine.startExplode(b,c),h.label=3;case 3:return[2]}})})};return a}();a.ExplodeManager=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(){}a.create=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var c=16*Math.random()|0;return("x"===a?c:c&3|8).toString(16)})};return a}();a.GUID=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function e(){this._obscuredLineColor=a.Color.black();this._obscuredLineOpacity=.2;this._visibleLineColor=a.Color.black();this._visibleLineOpacity=1;this._backgroundColor=a.Color.white()}e.prototype.getObscuredLineColor=function(){return this._obscuredLineColor.copy()};e.prototype.setObscuredLineColor=function(a){this._obscuredLineColor.assign(a)};e.prototype.getObscuredLineOpacity=function(){return this._obscuredLineOpacity};e.prototype.getObscuredLineTransparency=
function(){return this.getObscuredLineOpacity()};e.prototype.setObscuredLineOpacity=function(a){0<=a&&1>=a&&(this._obscuredLineOpacity=a)};e.prototype.setObscuredLineTransparency=function(a){this.setObscuredLineOpacity(a)};e.prototype.getVisibleLineColor=function(){return this._visibleLineColor.copy()};e.prototype.setVisibleLineColor=function(a){this._visibleLineColor.assign(a)};e.prototype.getVisibleLineOpacity=function(){return this._visibleLineOpacity};e.prototype.getVisibleLineTransparency=function(){return this.getVisibleLineOpacity()};
e.prototype.setVisibleLineOpacity=function(a){0<=a&&1>=a&&(this._visibleLineOpacity=a)};e.prototype.setVisibleLineTransparency=function(a){this.setVisibleLineOpacity(a)};e.prototype.getBackgroundColor=function(){return this._backgroundColor.copy()};e.prototype.setBackgroundColor=function(a){this._backgroundColor.assign(a)};return e}();g.HiddenLineSettings=d})(a.Settings||(a.Settings={}))})(Communicator||(Communicator={}));
(function(a){(function(g){g._isMouseEventType=function(e){switch(e){case a.EventType.MouseDown:return!0;case a.EventType.MouseMove:return!0;case a.EventType.MouseUp:return!0;case a.EventType.Mousewheel:return!0;case a.EventType.TouchStart:return!1;case a.EventType.TouchMove:return!1;case a.EventType.TouchEnd:return!1;case a.EventType.KeyDown:return!1;case a.EventType.KeyUp:return!1;case a.EventType.ViewOrientationChange:return!1}};var d=function(){function a(){this._date=new Date;this._handled=!1;
this._compositePickResult=null}a.prototype._setCompositePickResult=function(a){this._compositePickResult=a};a.prototype._getCompositePickResult=function(){return this._compositePickResult};a.prototype._getPickResult=function(a){return null===this._compositePickResult?null:this._compositePickResult.fetchMostRelevant(a)};a.prototype.getHandled=function(){return this._handled};a.prototype.setHandled=function(a){this._handled=a};a.prototype.getDate=function(){return this._date};return a}();g.InputEvent=
d})(a.Event||(a.Event={}))})(Communicator||(Communicator={}));(function(a){(function(a){var d=function(a){function c(b,f,h){var c=a.call(this)||this;f;c._keyCode=b;c._eventType=h;return c}__extends(c,a);c.prototype.getKeyCode=function(){return this._keyCode};c.prototype.getEventType=function(){return this._eventType};return c}(a.InputEvent);a.KeyInputEvent=d})(a.Event||(a.Event={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function c(a,f){this._callbackManager=a;this._operatorManager=f;this._contextEventChecker=new e(this._callbackManager)}c.prototype.injectMouseDownEvent=function(b,f,h,c,e){b=new a.Event.MouseInputEvent(b,f,h,c,e,a.MouseInputType.Down);this._operatorManager._injectSelectionEvent(b,a.EventType.MouseDown);this._contextEventChecker.onMouseDownEvent(b)};c.prototype.injectMouseMoveEvent=function(b,f,h,c,e){b=new a.Event.MouseInputEvent(b,f,h,c,e,a.MouseInputType.Move);
this._operatorManager._injectSelectionEvent(b,a.EventType.MouseMove)};c.prototype.injectMouseUpEvent=function(b,f,h,c,e){b=new a.Event.MouseInputEvent(b,f,h,c,e,a.MouseInputType.Up);this._operatorManager._injectSelectionEvent(b,a.EventType.MouseUp);this._contextEventChecker.onMouseUpEvent(b)};c.prototype.injectMousewheelEvent=function(b,f,h,c,e){b=new a.Event.MouseWheelInputEvent(b,f,h,c,e,a.MouseInputType.Wheel);this._operatorManager._injectSelectionEvent(b,a.EventType.Mousewheel)};c.prototype.injectKeyDownEvent=
function(b,f){b=new a.Event.KeyInputEvent(b,f,a.KeyInputType.Down);this._operatorManager.injectEvent(b,a.EventType.KeyDown)};c.prototype.injectKeyUpEvent=function(b,f){b=new a.Event.KeyInputEvent(b,f,a.KeyInputType.Up);this._operatorManager.injectEvent(b,a.EventType.KeyUp)};c.prototype.injectTouchStartEvent=function(b,f,h,c){b=new a.Event.TouchInputEvent(b,f,h,c,a.TouchInputType.Start);this._operatorManager._injectSelectionEvent(b,a.EventType.TouchStart);this._contextEventChecker.onTouchStartEvent(b)};
c.prototype.injectTouchMoveEvent=function(b,f,h,c){b=new a.Event.TouchInputEvent(b,f,h,c,a.TouchInputType.Start);this._operatorManager._injectSelectionEvent(b,a.EventType.TouchMove);this._contextEventChecker.onTouchMoveEvent(b)};c.prototype.injectTouchEndEvent=function(b,f,h,c){b=new a.Event.TouchInputEvent(b,f,h,c,a.TouchInputType.End);this._operatorManager._injectSelectionEvent(b,a.EventType.TouchEnd);this._contextEventChecker.onTouchEndEvent(b)};c.prototype.injectViewOrientationChangeEvent=function(){this._operatorManager._injectViewOrientationChangeEvent()};
return c}();g.EventDispatcher=d;var e=function(){function c(b){this._contextMenuMouseButton=a.Button.Right;this._contextMenuPositionStart=a.Point2.zero();this._touchTimer=new g.Timer;this._activeTouchCount=0;this._initialPosition=a.Point2.zero();this._callbackManager=b}c.prototype.onMouseDownEvent=function(a){a.getHandled()||this._contextMenuPositionStart.assign(a.getPosition())};c.prototype.onMouseUpEvent=function(a){if(!a.getHandled()){var f=a.getPosition();a.getButton()===this._contextMenuMouseButton&&
this._contextMenuPositionStart.equals(f)&&this._callbackManager.trigger("contextMenu",f,a.getModifiers())}};c.prototype.onTouchStartEvent=function(b){var f=this,h=b.getPosition().copy();0===this._activeTouchCount&&(this._initialPosition=h);++this._activeTouchCount;b.getHandled()||this._touchTimer.set(600,function(){f._callbackManager.trigger("contextMenu",h,a.KeyModifiers.None)})};c.prototype.onTouchMoveEvent=function(b){if(!this._touchTimer.isIdle(0)){b=a.Point2.subtract(this._initialPosition,b.getPosition());
b=Math.abs(b.squaredLength());var f=.02*window.outerHeight;b>f*f&&this._touchTimer.clear()}};c.prototype.onTouchEndEvent=function(a){0<this._activeTouchCount&&--this._activeTouchCount;this._touchTimer.clear()};return c}()})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(e,c){this.x=e;this.y=c}a.prototype.assign=function(a){this.x=a.x;this.y=a.y;return this};a.prototype.add=function(a){this.x+=a.x;this.y+=a.y;return this};a.prototype.subtract=function(a){this.x-=a.x;this.y-=a.y;return this};a.prototype.scale=function(a){this.x*=a;this.y*=a;return this};a.prototype.equals=function(a){return this.x===a.x&&this.y===a.y};a.prototype.set=function(a,c){this.x=a;this.y=c;return this};a.prototype.copy=function(){return new a(this.x,
this.y)};a.prototype.length=function(){return Math.sqrt(this.squaredLength())};a.prototype.squaredLength=function(){return this.x*this.x+this.y*this.y};a.prototype.toJson=function(){return{x:this.x,y:this.y}};a.prototype.forJson=function(){return this.toJson()};a.subtract=function(e,c){return new a(e.x-c.x,e.y-c.y)};a.add=function(e,c){return new a(e.x+c.x,e.y+c.y)};a.distance=function(e,c){return a.subtract(c,e).length()};a.zero=function(){return new a(0,0)};a.fromPoint3=function(e){return new a(e.x,
e.y)};return a}();a.Point2=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){return function(){this.top=this.left=0}}(),e=function(){function c(b,f){this._isFirefox=this._isIE=!1;this._canvas=null;this._canvasEventFunctions=new Map;this._documentEventFunctions=new Map;this._pointerEventsEnabled=!0;this._captureInput=this._dragStarted=this._eventsBound=this._processInput=!1;this._elementOffset=new d;this._pointerUp=!1;this._buttons=a.Buttons.None;this._eventDispatcher=b;this._timeoutMonitor=f;this._document=document;b=navigator.userAgent.toLowerCase();
this._isIE=0<=b.indexOf("trident")||0<=b.indexOf("edge");this._isFirefox=-1<b.indexOf("firefox")}c.prototype._tryLockEventDispatcher=function(){return c._activeEventDispatcherLocked&&c._activeEventDispatcher!==this._eventDispatcher?!1:(c._activeEventDispatcher=this._eventDispatcher,c._activeOffset=this._elementOffset,c._activeEventDispatcherLocked=!0)};c.prototype._unlockEventDispatcher=function(){c._activeEventDispatcherLocked=!1};c.prototype.shutdown=function(){this.unbindEvents()};c.prototype.setDocument=
function(a){this._unbindDocumentEvents();this._document=a;this._initDocumentEvents()};c.prototype.setOptions=function(a){a.hasOwnProperty("usePointerEvents")&&this.setPointerEventsEnabled(!!a.usePointerEvents)};c.prototype.elementResize=function(){this._calculateElementOffset()};c.prototype.setPointerEventsEnabled=function(a){this._pointerEventsEnabled=a};c.prototype.getPointerEventsEnabled=function(){return this._pointerEventsEnabled};c.prototype._getCanvasEvents=function(){return this._canvasEventFunctions};
c.prototype._getDocumentEvents=function(){return this._documentEventFunctions};c.prototype._browserSupportsPointerEvents=function(){return window.hasOwnProperty("PointerEvent")};c.prototype._usePointerEvents=function(){return this._browserSupportsPointerEvents()&&this._pointerEventsEnabled&&this._isIE};c.prototype._calculateElementOffset=function(){this._elementOffset.left=0;this._elementOffset.top=0;if(null!==this._canvas)for(var a=this._canvas;a;)this._elementOffset.left+=a.offsetLeft,this._elementOffset.top+=
a.offsetTop,a=a.offsetParent};c.prototype._initDocumentEvents=function(){var a=this;this._usePointerEvents()?(this._documentEventFunctions.set("pointermove",function(f){a._processDocumentPointerMove(f)}),this._documentEventFunctions.set("pointerup",function(f){a._processDocumentPointerUp(f)})):(this._documentEventFunctions.set("mousemove",function(f){a._processDocumentMouseMove(f)}),this._documentEventFunctions.set("mouseup",function(f){a._processDocumentMouseUp(f)}));this._documentEventFunctions.forEach(function(f,
h){a._document.addEventListener(h,f)})};c.prototype._initCanvasEvents=function(){var a=this;null!==this._canvas&&(this._usePointerEvents()?(this._canvasEventFunctions.set("pointerdown",function(f){a._processPointerDown(f)}),this._canvasEventFunctions.set("pointermove",function(f){a._processPointerMove(f)}),this._canvasEventFunctions.set("pointerup",function(f){a._processPointerUp(f)}),this._canvasEventFunctions.set("pointerenter",function(f){a._processPointerEnter(f)}),this._canvasEventFunctions.set("pointerleave",
function(f){a._processPointerLeave(f)})):(this._canvasEventFunctions.set("mousedown",function(f){a._processMouseDown(f)}),this._canvasEventFunctions.set("mousemove",function(f){a._processMouseMove(f)}),this._canvasEventFunctions.set("mouseup",function(f){a._processMouseUp(f)}),this._canvasEventFunctions.set("mouseenter",function(f){a._processMouseEnter(f)}),this._canvasEventFunctions.set("mouseleave",function(f){a._processMouseLeave(f)}),this._canvasEventFunctions.set("touchstart",function(f){a._processTouchStart(f)}),
this._canvasEventFunctions.set("touchmove",function(f){a._processTouchMove(f)}),this._canvasEventFunctions.set("touchend",function(f){a._processTouchEnd(f)}),this._canvasEventFunctions.set("touchcancel",function(f){a._processTouchEnd(f)})),this._isFirefox?this._canvasEventFunctions.set("DOMMouseScroll",function(f){a._processMousewheel(f)}):this._canvasEventFunctions.set("mousewheel",function(f){a._processMousewheel(f)}),this._canvasEventFunctions.set("keydown",function(f){a._processKeyDownEvent(f)}),
this._canvasEventFunctions.set("keyup",function(f){a._processKeyUpEvent(f)}),this._canvasEventFunctions.forEach(function(f,h){a._canvas.addEventListener(h,f)}))};c.prototype.bindEvents=function(a){this._eventsBound||(this._canvas=a,this._processInput=!0,this._initCanvasEvents(),this._initDocumentEvents(),this._calculateElementOffset(),this._eventsBound=!0,this._tryLockEventDispatcher())};c.prototype._unbindDocumentEvents=function(){var a=this;this._documentEventFunctions.forEach(function(f,h){a._document.removeEventListener(h,
f)});this._documentEventFunctions.clear()};c.prototype._unbindCanvasEvents=function(){var a=this;null!==this._canvas&&(this._canvasEventFunctions.forEach(function(f,h){a._canvas.removeEventListener(h,f)}),this._canvasEventFunctions.clear());console.assert(0===this._canvasEventFunctions.size)};c.prototype.unbindEvents=function(){this._unbindCanvasEvents();this._unbindDocumentEvents();this._eventsBound=this._processInput=!1;c._activeEventDispatcher===this._eventDispatcher&&this._unlockEventDispatcher()};
c.prototype._convertEventCoordsToTargetCoords=function(b,f){var h;h=null!==c._activeOffset?c._activeOffset:this._elementOffset;return new a.Point2(b-h.left,f-h.top)};c.prototype.focusInput=function(a){null!==this._canvas&&(a?this._canvas.focus():this._canvas.blur())};c.prototype._processMouseDown=function(b){if(this._tryLockEventDispatcher()){switch(b.button){case 0:this._buttons|=a.Buttons.Left;break;case 1:this._buttons|=a.Buttons.Middle;break;case 2:this._buttons|=a.Buttons.Right}b.preventDefault();
this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._convertEventCoordsToTargetCoords(b.pageX,b.pageY),h=this._getEventModifiers(b);c._activeEventDispatcher.injectMouseDownEvent(f.x,f.y,b.button,this._buttons,h);this._dragStarted=!0}}};c.prototype._processMouseMove=function(b){b.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._convertEventCoordsToTargetCoords(b.pageX,b.pageY);b=this._getEventModifiers(b);null!==c._activeEventDispatcher&&c._activeEventDispatcher.injectMouseMoveEvent(f.x,
f.y,a.Button.None,this._buttons,b)}};c.prototype._processMouseUp=function(b){this._unlockEventDispatcher();switch(b.button){case 0:this._buttons&=~a.Buttons.Left;break;case 1:this._buttons&=~a.Buttons.Middle;break;case 2:this._buttons&=~a.Buttons.Right}b.preventDefault();b.stopPropagation();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._convertEventCoordsToTargetCoords(b.pageX,b.pageY),h=this._getEventModifiers(b);null!==c._activeEventDispatcher?c._activeEventDispatcher.injectMouseUpEvent(f.x,
f.y,b.button,this._buttons,h):this._eventDispatcher.injectMouseUpEvent(f.x,f.y,b.button,this._buttons,h);this._captureInput=this._dragStarted=!1}};c.prototype._processMousewheel=function(a){a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._convertEventCoordsToTargetCoords(a.pageX,a.pageY),h=this._getEventModifiers(a);this._eventDispatcher.injectMousewheelEvent(f.x,f.y,this._isFirefox?0<a.detail?-1:1:0<a.wheelDelta?1:-1,this._buttons,h)}};c.prototype._processDocumentMouseMove=
function(a){this._dragStarted&&this._captureInput&&this._processMouseMove(a)};c.prototype._processDocumentMouseUp=function(a){this._dragStarted&&this._captureInput&&this._processMouseUp(a)};c.prototype._processMouseLeave=function(a){this._unlockEventDispatcher();a;this._dragStarted&&(this._captureInput=!0)};c.prototype._processMouseEnter=function(a){this._tryLockEventDispatcher()&&(a,this._dragStarted&&(this._captureInput=!1))};c.prototype._isFunctionKey=function(a){return 112<=a.which&&123>=a.which};
c.prototype._processKeyDownEvent=function(a){this._isFunctionKey(a)||a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._getEventModifiers(a);this._eventDispatcher.injectKeyDownEvent(a.which,f)}};c.prototype._processKeyUpEvent=function(a){a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._getEventModifiers(a);this._eventDispatcher.injectKeyUpEvent(a.which,f)}};c.prototype._processTouchStart=function(a){a.preventDefault();
this._timeoutMonitor.resetTimeout();if(this._processInput)for(var f=0;f<a.changedTouches.length;f++){var h=a.changedTouches.item(f),c=this._convertEventCoordsToTargetCoords(h.pageX,h.pageY);this._eventDispatcher.injectTouchStartEvent(h.identifier,c.x,c.y,this._buttons)}};c.prototype._processTouchMove=function(a){a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput)for(var f=0;f<a.changedTouches.length;f++){var h=a.changedTouches.item(f),c=this._convertEventCoordsToTargetCoords(h.pageX,
h.pageY);this._eventDispatcher.injectTouchMoveEvent(h.identifier,c.x,c.y,this._buttons)}};c.prototype._processTouchEnd=function(a){a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput)for(var f=0;f<a.changedTouches.length;f++){var h=a.changedTouches.item(f),c=this._convertEventCoordsToTargetCoords(h.pageX,h.pageY);this._eventDispatcher.injectTouchEndEvent(h.identifier,c.x,c.y,this._buttons)}};c.prototype._processPointerDown=function(a){if(this._tryLockEventDispatcher()&&(a.preventDefault(),
this._timeoutMonitor.resetTimeout(),this._processInput)){var f=this._convertEventCoordsToTargetCoords(a.pageX,a.pageY),h=this._getEventModifiers(a);"mouse"===a.pointerType?c._activeEventDispatcher.injectMouseDownEvent(f.x,f.y,a.button,this._buttons,h):"touch"===a.pointerType&&c._activeEventDispatcher.injectTouchStartEvent(a.pointerId,f.x,f.y,this._buttons);this._pointerUp=!1}};c.prototype._processPointerMove=function(a){a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=
this._convertEventCoordsToTargetCoords(a.pageX,a.pageY),h=this._getEventModifiers(a);null!==c._activeEventDispatcher&&("mouse"===a.pointerType?c._activeEventDispatcher.injectMouseMoveEvent(f.x,f.y,a.button,this._buttons,h):"touch"===a.pointerType&&c._activeEventDispatcher.injectTouchMoveEvent(a.pointerId,f.x,f.y,this._buttons))}};c.prototype._processPointerUp=function(a){this._unlockEventDispatcher();a.preventDefault();this._timeoutMonitor.resetTimeout();if(this._processInput){var f=this._convertEventCoordsToTargetCoords(a.pageX,
a.pageY),h=this._getEventModifiers(a);"mouse"!==a.pointerType||this._pointerUp?"touch"===a.pointerType&&this._eventDispatcher.injectTouchEndEvent(a.pointerId,f.x,f.y,this._buttons):null!==c._activeEventDispatcher?c._activeEventDispatcher.injectMouseUpEvent(f.x,f.y,a.button,this._buttons,h):this._eventDispatcher.injectMouseUpEvent(f.x,f.y,a.button,this._buttons,h);this._captureInput=this._dragStarted=!1;this._pointerUp=!0}};c.prototype._processPointerEnter=function(a){a;this._pointerUp||(this._captureInput=
!1)};c.prototype._processPointerLeave=function(a){a;this._pointerUp||(this._captureInput=!0)};c.prototype._processDocumentPointerMove=function(a){!this._pointerUp&&this._captureInput&&this._processPointerMove(a)};c.prototype._processDocumentPointerUp=function(a){!this._pointerUp&&this._captureInput&&this._processPointerUp(a)};c.prototype._getEventModifiers=function(b){var f=a.KeyModifiers.None;b.altKey&&(f|=a.KeyModifiers.Alt);b.ctrlKey&&(f|=a.KeyModifiers.Control);b.shiftKey&&(f|=a.KeyModifiers.Shift);
b.metaKey&&(f|=a.KeyModifiers.Command);return f};c._activeEventDispatcher=null;c._activeEventDispatcherLocked=!1;c._activeOffset=null;return c}();g.InputMonitor=e})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){a[a.Directional=0]="Directional"})(a.LightType||(a.LightType={}));(function(a){a[a.World=0]="World";a[a.Camera=1]="Camera"})(a.LightSpace||(a.LightSpace={}));var g=function(){return function(a,e,c,b){this.type=a;this.space=e;this.position=c;this.color=b}}();a.Light=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(){}a.prototype.exportMarkup=function(){return[]};a.prototype.loadData=function(a){a;return Promise.resolve([])};return a}();a.MarkupTypeManager=g})(Communicator||(Communicator={}));
(function(a){var g=function(d){function e(a,b){var f=d.call(this)||this;f._markupArray=[];f._viewer=a;f._callbackManager=b;f._callbackManager.bind({modelSwitched:function(){f.removeAllLines()}});return f}__extends(e,d);e.prototype.addLine=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._markupArray.push(a),[4,a.updateLine()];case 1:return b.sent(),this._callbackManager.trigger("lineCreated",a),[2]}})})};e.prototype.removeLine=
function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:b=0,f.label=1;case 1:return b<this._markupArray.length?this._markupArray[b].getId()!==a.getId()?[3,3]:[4,a.removeLine()]:[3,4];case 2:f.sent(),this._markupArray.splice(b,1),this._callbackManager.trigger("lineDeleted",a),f.label=3;case 3:return b++,[3,1];case 4:return[2]}})})};e.prototype.removeAllLines=function(){for(var c=this,b=[],f=function(f){var a=h._markupArray[f];b.push(a.removeLine().then(function(){c._callbackManager.trigger("lineDeleted",
a)}));h._markupArray.splice(f,1)},h=this,k=this._markupArray.length-1;0<=k;k--)f(k);return a.Internal.waitForAll(b)};e.prototype.getAllLines=function(){return this._markupArray.slice(0)};e.prototype.removeLastLine=function(){0<this._markupArray.length&&this.removeLine(this._markupArray[this._markupArray.length-1])};e.prototype.getLineByNodeId=function(a){for(var b=0,f=this._markupArray;b<f.length;b++){var h=f[b],k=h.getNodeId();if(null!==k&&k===a)return h}return null};e.prototype.exportMarkup=function(){for(var a=
[],b=0,f=this._markupArray;b<f.length;b++)a.push(f[b].toJson());return a};e.prototype._handleLoadLine=function(c){return c instanceof a.Markup.Line.LineMarkup?(this.addLine(c),this._callbackManager.trigger("lineLoaded",c),!0):!1};e.prototype.loadData=function(c){for(var b=this,f=[],h=0;h<c.length;h++){var k=c[h];if(k.hasOwnProperty("className")){var e=a.Internal.classFromString(k.className);e&&(k=e.fromJson(k,this._viewer),k instanceof Promise?f.push(k.then(function(f){return b._handleLoadLine(f)})):
f.push(Promise.resolve(this._handleLoadLine(k))))}}return Promise.all(f)};return e}(a.MarkupTypeManager);a.LineManager=g})(Communicator||(Communicator={}));
var __decorate=this&&this.__decorate||function(a,g,d,e){var c=arguments.length,b=3>c?g:null===e?e=Object.getOwnPropertyDescriptor(g,d):e,f;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)b=Reflect.decorate(a,g,d,e);else for(var h=a.length-1;0<=h;h--)if(f=a[h])b=(3>c?f(b):3<c?f(g,d,b):f(g,d))||b;return 3<c&&b&&Object.defineProperty(g,d,b),b};
(function(a){var g=function(){function d(e,c,b,f,h,k,q){this._markupTypeMap=new Map;this._domElements=e;this._callbackManager=f;this._viewer=q;this._sheetManager=h;this._sheetManager.setMarkupManager(this);this._noteTextManager=k;this._renderer=new a.Internal.SVG.SVGMarkupRenderer;this._itemManager=new a.Internal.MarkupItemManager(this._callbackManager,this._domElements,this._renderer);this._viewManager=new a.Internal.MarkupViewManager(this._viewer,this._itemManager,this._callbackManager,q.explodeManager,
q.cuttingManager,this._sheetManager);this._measurementManager=c;this._lineManager=b}d.deprecated=function(a,c,b){a;var f=b.value;b.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];this._callbackManager.trigger("deprecated","MarkupManager",c);return f.apply(this,a)};return b};d.prototype.registerMarkupTypeManager=function(a,c){this._markupTypeMap.set(a,c)};d.prototype.createMarkupView=function(a,c){void 0===c&&(c=!0);var b=this._viewer.getActiveSheetId();return this._viewManager.createView(a,
c,b).getUniqueId()};d.prototype.getMarkupView=function(a){return this._viewManager.getView(a)};d.prototype.getMarkupViewKeys=function(){return this._viewManager.getViewKeys()};d.prototype.activateMarkupViewWithPromise=function(e,c){void 0===c&&(c=a.DefaultTransitionDuration);return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._viewManager.activateView(e,c)]})})};d.prototype.activateMarkupView=function(e,c){void 0===c&&(c=a.DefaultTransitionDuration);return this._viewManager.deprecatedActivateView(e,
c)};d.prototype.getActiveMarkupView=function(){return this._itemManager.getActiveView()};d.prototype.deleteMarkupView=function(a){return this._viewManager.deleteView(a)};d.prototype.registerMarkup=function(a){a=this._itemManager.registerMarkupItem(a);this.updateLater();return a};d.prototype.unregisterMarkup=function(a){this._itemManager.unregisterMarkupItem(a);this.updateLater()};d.prototype.addMarkupElement=function(e){var c=a.GUID.create();e.id=c;this._domElements.getRedlineElement().appendChild(e);
return c};d.prototype.removeMarkupElement=function(a){for(var c=this._domElements.getRedlineElement(),b=0;b<c.children.length;b++){var f=c.children.item(b);null!==f&&f.id===a&&c.removeChild(f)}};d.prototype.refreshMarkup=function(){this.updateLater()};d.prototype.updateLater=function(){this._itemManager.updateLater()};d.prototype.pickMarkupItem=function(a){return this._itemManager.pick(a)};d.prototype.selectMarkup=function(a){this._itemManager.select(a)};d.prototype.getSelectedMarkup=function(){return this._itemManager.getSelected()};
d.prototype.exportMarkup=function(){var a={views:this._viewManager.exportMarkup(),notes:this._noteTextManager.exportMarkup(),measurement:this._measurementManager.exportMarkup(),lines:this._lineManager.exportMarkup()};this._markupTypeMap.forEach(function(c,b){a[b]=c.exportMarkup()});return a};d.prototype.loadMarkupData=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){"string"===typeof a&&(a=JSON.parse(a));return[2,this._loadMarkupData(a)]})})};d.prototype._loadMarkupData=
function(e){return __awaiter(this,void 0,void 0,function(){var c,b;return __generator(this,function(f){c=[];e.hasOwnProperty("views")&&(b=this._viewManager.loadData(e.views).then(a.Internal.all),c.push(b));e.hasOwnProperty("notes")&&(b=this._noteTextManager.loadData(e.notes).then(a.Internal.all),c.push(b));e.hasOwnProperty("measurement")&&(b=this._measurementManager.loadData(e.measurement).then(a.Internal.all),c.push(b));e.hasOwnProperty("lines")&&(b=this._lineManager.loadData(e.lines).then(a.Internal.all),
c.push(b));this._markupTypeMap.forEach(function(f,b){e.hasOwnProperty(b)&&(f=f.loadData(e[b]).then(a.Internal.all),c.push(f))});return[2,Promise.all(c).then(a.Internal.all)]})})};d.prototype.getRenderer=function(){return this._renderer};d.prototype._shutdown=function(){this._itemManager.shutdown();this._renderer._clear()};d.prototype._update=function(){this._itemManager.update()};d.prototype._setActiveMarkupView=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){return[2,
this._itemManager.setActiveView(a)]})})};d.prototype._getItemManager=function(){return this._itemManager};__decorate([d.deprecated],d.prototype,"activateMarkupView",null);return d}();a.MarkupManager=g})(Communicator||(Communicator={}));
(function(a){var g=function(d){function e(c,b){var f=d.call(this)||this;f._markupArray=[];f._color=new a.Color(0,0,0);f._edgeColor=new a.Color(0,0,0);f._viewer=c;f._callbackManager=b;f._callbackManager.bind({modelSwitched:function(){f.removeAllMeasurements()}});return f}__extends(e,d);e.prototype.addMeasurement=function(a){this._markupArray.push(a);var b=this._viewer.markupManager.registerMarkup(a);a._setId(b);return b};e.prototype.finalizeMeasurement=function(a){this._callbackManager.trigger("measurementCreated",
a)};e.prototype.removeMeasurement=function(a){for(var b=0;b<this._markupArray.length;b++)if(this._markupArray[b]._getId()===a._getId()){this._markupArray.splice(b,1);this._viewer.markupManager.unregisterMarkup(a._getId());this._callbackManager.trigger("measurementDeleted",a);break}};e.prototype.removeAllMeasurements=function(){for(var a=this._markupArray.length-1;0<=a;a--){var b=this._markupArray[a];this._viewer.markupManager.unregisterMarkup(b._getId());this._markupArray.splice(a,1);this._callbackManager.trigger("measurementDeleted",
b)}};e.prototype.getAllMeasurements=function(){return this._markupArray.slice(0)};e.prototype.removeLastMeasurement=function(){0<this._markupArray.length&&this.removeMeasurement(this._markupArray[this._markupArray.length-1])};e.prototype.setMeasurementColor=function(a){this._color.assign(a)};e.prototype.getMeasurementColor=function(){return this._color.copy()};e.prototype.setMeasurementEdgeColor=function(a){this._edgeColor.assign(a)};e.prototype.getMeasurementEdgeColor=function(){return this._edgeColor.copy()};
e.prototype.exportMarkup=function(){for(var a=[],b=0,f=this._markupArray;b<f.length;b++)a.push(f[b].toJson());return a};e.prototype._handleLoadMeasurement=function(c){return c instanceof a.Markup.Measure.MeasureMarkup?(this.addMeasurement(c),this._callbackManager.trigger("measurementLoaded",c),!0):!1};e.prototype.loadData=function(c){for(var b=this,f=[],h=0;h<c.length;h++){var k=c[h];if(k.hasOwnProperty("className")){var e=a.Internal.classFromString(k.className);e&&(k=e.fromJson(k,this._viewer),k instanceof
Promise?f.push(k.then(function(f){return b._handleLoadMeasurement(f)})):f.push(Promise.resolve(this._handleLoadMeasurement(k))))}}return Promise.all(f)};return e}(a.MarkupTypeManager);a.MeasureManager=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(){this._faceMeshData=[];this._pointMeshData=[];this._polylineMeshData=[];this._faceWinding=a.FaceWinding.CounterClockwise;this._isManifold=this._backfacesEnabled=!1}d.prototype.addFaces=function(e,c,b,f,h){void 0===h&&(h=0);this._faceMeshData.push(new a.Internal.FaceMeshData(e,c,b,f,h))};d.prototype.addPoints=function(e,c,b){void 0===b&&(b=0);this._pointMeshData.push(new a.Internal.PointMeshData(e,c,b))};d.prototype.addPolyline=function(e,c,b){void 0===b&&
(b=0);this._polylineMeshData.push(new a.Internal.PolylineMeshData(e,c,b))};d.prototype.clear=function(){this._faceMeshData.length=0;this._pointMeshData.length=0;this._polylineMeshData.length=0};d.prototype.setFaceWinding=function(a){this._faceWinding=a};d.prototype.getFaceWinding=function(){return this._faceWinding};d.prototype.setBackfacesEnabled=function(a){this._backfacesEnabled=a};d.prototype.getBackfacesEnabled=function(){return this._backfacesEnabled};d.prototype.setManifold=function(a){this._isManifold=
a};d.prototype.isManifold=function(){return this._isManifold};d.prototype._getFaceData=function(){return this._faceMeshData};d.prototype._getPointData=function(){return this._pointMeshData};d.prototype._getPolylineData=function(){return this._polylineMeshData};return d}();a.MeshData=g;g=function(){function d(e,c,b,f,h,k,q){this._instanceName=this._pointColor=this._lineColor=this._faceColor=this._matrix=this._meshId=null;this._pointOpacity=this._lineOpacity=this._faceOpacity=1;this._creationFlags=
a.MeshInstanceCreationFlags.None;this._overlayIndex=0;e&&(this._meshId=e.slice());c&&(this._matrix=c.copy());b&&(this._instanceName=b);f&&(this._faceColor=f.copy());h&&(this._lineColor=h.copy());k&&(this._pointColor=k.copy());q&&(this._creationFlags=q)}d.prototype.clear=function(){this._instanceName=this._pointColor=this._lineColor=this._faceColor=this._matrix=this._meshId=null;this._pointOpacity=this._lineOpacity=this._faceOpacity=1;this._creationFlags=a.MeshInstanceCreationFlags.None;this._overlayIndex=
0};d.prototype.getMeshId=function(){return null!==this._meshId?this._meshId.slice():null};d.prototype.getMeshKey=function(){return this.getMeshId()};d.prototype.setMeshId=function(a){this._meshId=a.slice()};d.prototype.setMeshKey=function(a){this.setMeshId(a)};d.prototype.getMatrix=function(){return null!==this._matrix?this._matrix.copy():null};d.prototype.getCreationFlags=function(){return this._creationFlags};d.prototype.setCreationFlags=function(a){this._creationFlags=a};d.prototype.setMatrix=
function(a){this._matrix=a.copy()};d.prototype.getInstanceName=function(){return this._instanceName};d.prototype.setInstanceName=function(a){this._instanceName=a};d.prototype.setFaceColor=function(a){this._faceColor=a.copy()};d.prototype.getFaceColor=function(){return null!==this._faceColor?this._faceColor.copy():null};d.prototype.setLineColor=function(a){this._lineColor=a.copy()};d.prototype.getLineColor=function(){return null!==this._lineColor?this._lineColor.copy():null};d.prototype.setPointColor=
function(a){this._pointColor=a.copy()};d.prototype.getPointColor=function(){return null!==this._pointColor?this._pointColor.copy():null};d.prototype.setPointOpacity=function(a){this._pointOpacity=a};d.prototype.getPointOpacity=function(){return this._pointOpacity};d.prototype.setLineOpacity=function(a){this._lineOpacity=a};d.prototype.getLineOpacity=function(){return this._lineOpacity};d.prototype.setOpacity=function(a){this._faceOpacity=a};d.prototype.setTransparency=function(a){this._faceOpacity=
a};d.prototype.getOpacity=function(){return this._faceOpacity};d.prototype.getTransparency=function(){return this._faceOpacity};d.prototype.setOverlayIndex=function(a){this._overlayIndex=a};d.prototype.getOverlayIndex=function(){return this._overlayIndex};return d}();a.MeshInstanceData=g})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){return function(a,c,b,f,h){void 0===h&&(h=0);this.vertexData=a;this.normalData=c;this.rgba32data=b;this.uvData=f;this.bits=h}}();a.FaceMeshData=d;d=function(){return function(a,c,b){void 0===b&&(b=0);this.vertexData=a;this.rgba32data=c;this.bits=b}}();a.PolylineMeshData=d;d=function(){return function(a,c,b){void 0===b&&(b=0);this.vertexData=a;this.rgba32data=c;this.bits=b}}();a.PointMeshData=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator=
{}));(function(a){(function(a){(function(a){function e(c){console.assert(c!==a.invalidNodeId);return c>a.invalidNodeId}a.invalidNodeId=-1;a.isAuthoredId=e;a.getAuthoredId=function(a){console.assert(e(a));return a};a.getRuntimeId=function(c,b){return e(c)?a.towardInclusionContext(b).toRuntimeId(c):c}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){a.DefaultTransitionDuration=400;a.EmptyModelName="_empty";a.InvalidNodeId=a.Internal.Tree.invalidNodeId;var g=function(){function d(e,c){var b=this;this._pmiColor=a.Color.black();this._pmiColorOverride=!1;this._viewAxes=new a.ViewAxes;this._viewAxesSet=!1;this._firstModelRootId=a.InvalidNodeId;this._engine=e;this._callbackManager=c;this._callbackManager.bind({_firstModelLoaded:function(f){return __awaiter(b,void 0,void 0,function(){return __generator(this,function(a){this._firstModelRootId=
f[0];return[2]})})}})}d.deprecated=function(a,c,b){a;var f=b.value;b.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];this._callbackManager.trigger("deprecated","Model",c);return f.apply(this,a)};return b};d.prototype._setModelStructure=function(a){console.assert(void 0===this._modelStructure);this._modelStructure=a};d.prototype.getClientDimensions=function(){return this._engine.getClientDimensions()};d.prototype.setViewAxes=function(e,c){if(e.isAxis()&&c.isAxis()&&!e.equals(c))this._viewAxes.frontVector=
e,this._viewAxes.upVector=c,this._callbackManager.trigger("viewAxes",e,c),this._viewAxesSet=!0;else throw new a.CommunicatorError("The upVector and frontVector must be unique, cardinal axes.");};d.prototype.viewAxesHaveBeenSet=function(){return this._viewAxesSet};d.prototype.getViewAxes=function(){return this._viewAxes};d.prototype.getModelBounding=function(a,c){return this._engine.getModelBounding(a,c)};d.prototype._preventNodeDeletion=function(a){return this._modelStructure.preventNodeDeletion(a)};
d.prototype._preventMeshDeletion=function(a){console.assert(0===a[0]);return this._modelStructure.preventMeshDeletion(a[1])};d.prototype._getNodeFromInstanceInc=function(a,c,b,f){return this._modelStructure.getNodeFromInstanceInc(a,c,b,f)};d.prototype.getNodesBounding=function(a,c){var b=7;void 0!==c&&(b=0,c.bodyInstance&&(b|=1),c.pmiBody&&(b|=2),c.viewFrame&&(b|=4));return this._modelStructure.getBounding(a,b)};d.prototype.getNodeRealBounding=function(e){return __awaiter(this,void 0,void 0,function(){var c;
return __generator(this,function(b){c=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!1);if(0===c.length)throw new a.CommunicatorError("Cannot get bounding of node without geometry.");return[2,this._engine.getDrawnPartsBounding(c)]})})};d.prototype.setNodesVisibilities=function(e,c){void 0===c&&(c=null);e=a.Internal.fromIntegerMap(e);return this._modelStructure.setVisibilitiesByMap(e,c)};d.prototype.setNodesVisibility=function(a,c,b){void 0===b&&(b=null);return this._modelStructure.setVisibilitiesByValue(a,
c,b)};d.prototype.resetNodesVisibility=function(){return this._modelStructure.resetAllVisibilities()};d.prototype.resetNodesTransform=function(){return this._modelStructure.resetAllTransforms()};d.prototype.reset=function(){return this._modelStructure.reset()};d.prototype.clear=function(){return this._modelStructure.clear()};d.prototype.setNodesFaceColor=function(a,c){this._setNodesFaceColor(a,c);return Promise.resolve()};d.prototype._setNodesFaceColor=function(e,c){e=this._modelStructure.gatherInstanceIncsFromNodeIds(e,
7,!1);0<e.length&&this._engine.setPartColor(e,a.ElementType.Faces,c)};d.prototype._unsetNodesColor=function(a,c){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);0<a.length&&this._engine.unsetPartColor(a,c)};d.prototype.unsetNodesFaceColor=function(e){this._unsetNodesColor(e,a.ElementType.Faces);return Promise.resolve()};d.prototype.setNodesLineColor=function(a,c){this._setNodesLineColor(a,c);return Promise.resolve()};d.prototype._setNodesLineColor=function(e,c){e=this._modelStructure.gatherInstanceIncsFromNodeIds(e,
7,!1);0<e.length&&this._engine.setPartColor(e,a.ElementType.Lines,c)};d.prototype.unsetNodesLineColor=function(e){this._unsetNodesColor(e,a.ElementType.Lines);return Promise.resolve()};d.prototype.setNodesHighlighted=function(a,c){if(0===a.length)return Promise.resolve();a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!0);0<a.length&&this._engine.highlightParts(a,c);return Promise.resolve()};d.prototype.getNodesHighlighted=function(a){a=this._getInstanceIncsFromLeafNodes(a);return 0<a.length?
this._engine.getPartHighlighted(a):Promise.resolve([])};d.prototype.setNodesColors=function(e,c){void 0===c&&(c=!1);e=a.Internal.fromIntegerMap(e);this._setNodesColors(e,c);return Promise.resolve()};d.prototype._setNodesColors=function(e,c){var b=this,f=new Set;e.forEach(function(h,k){k=b._modelStructure.lookupAnyTreeNode(k);null!==k&&(k=a.Internal.Tree.gatherInstanceIncsSync(k,7,!1,f,!1),0<k.length&&(b._engine.setPartColor(k,a.ElementType.Faces,h),c&&b._engine.setPartColor(k,a.ElementType.Lines,
h)))})};d.prototype.getPmis=function(){return this._modelStructure.getPmis()};d.prototype.getPMIs=function(){return this.getPmis()};d.prototype.getPmiType=function(a){return this._modelStructure.getPmiType(a)};d.prototype.getPMIType=function(a){return this.getPmiType(a)};d.prototype.getPmiSubtype=function(a){return this._modelStructure.getPmiSubType(a)};d.prototype.getPMISubtype=function(a){return this.getPmiSubtype(a)};d.prototype.setPmiColor=function(a){this._pmiColor.assign(a)};d.prototype.setPMIColor=
function(a){this.setPmiColor(a)};d.prototype.getPmiColor=function(){return this._pmiColor.copy()};d.prototype.getPMIColor=function(){return this.getPmiColor()};d.prototype.setPmiColorOverride=function(a,c){(this._pmiColorOverride=a)?this._modelStructure.setPmiColor(this._pmiColor,c):this._modelStructure.resetPmiColor(c);return Promise.resolve()};d.prototype.setPMIColorOverride=function(a){return this.setPmiColorOverride(a)};d.prototype.getPmiColorOverride=function(){return this._pmiColorOverride};
d.prototype.getPMIColorOverride=function(){return this.getPmiColorOverride()};d.prototype.computeMinimumBodyBodyDistance=function(e,c){var b=this._modelStructure.lookupAnyBody(e);if(null===b)throw new a.InvalidNodeTypeError(e,1);e=this._modelStructure.lookupAnyBody(c);if(null===e)throw new a.InvalidNodeTypeError(c,1);c=b.getInstanceInc();b=e.getInstanceInc();return this._engine.computeMininimumBodyBodyDistance(c,b)};d.prototype.computeMinimumFaceFaceDistance=function(e,c,b,f){var h=this._modelStructure.lookupAnyBody(e);
if(null===h)throw new a.InvalidNodeTypeError(e,1);e=this._modelStructure.lookupAnyBody(b);if(null===e)throw new a.InvalidNodeTypeError(b,1);b=h.getInstanceInc();h=e.getInstanceInc();return this._engine.computeMininimumFaceFaceDistance([b[0],b[1]],c,[h[0],h[1]],f)};d.prototype.computeMinimumFaceRayDistance=function(e,c,b){var f=this._modelStructure.lookupAnyBody(e);if(null===f)throw new a.InvalidNodeTypeError(e,1);e=f.getInstanceInc();return this._engine.computeMinimumFaceRayDistance(e,c,b)};d.prototype.computeMinimumFaceLineDistance=
function(e,c,b){var f=this._modelStructure.lookupAnyBody(e);if(null===f)throw new a.InvalidNodeTypeError(e,1);e=f.getInstanceInc();return this._engine.computeMinimumFaceLineDistance(e,c,b)};d.prototype.setNodeFaceColor=function(a,c,b){this._setNodeFaceColor(a,c,b);return Promise.resolve()};d.prototype._setNodeFaceColor=function(e,c,b){e=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!1);2===e.length&&this._engine.setElementColor(e,a.ElementType.Faces,c,1,b)};d.prototype._unsetElementColor=
function(a,c,b){a=this._getInstanceIncFromSingleLeafNode(a);this._engine.unsetElementColor(a,c,b,1)};d.prototype.unsetNodeFaceColor=function(e,c){this._unsetElementColor(e,a.ElementType.Faces,c);return Promise.resolve()};d.prototype.setNodeFaceHighlighted=function(a,c,b){this._setNodeFaceHighlighted(a,c,b);return Promise.resolve()};d.prototype._setNodeFaceHighlighted=function(e,c,b){e=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!0);0<e.length&&this._engine.highlightElements(e,a.ElementType.Faces,
c,1,b)};d.prototype._getElementHighlighted=function(a,c,b){return __awaiter(this,void 0,void 0,function(){var f,h;return __generator(this,function(k){switch(k.label){case 0:return f=this._getInstanceIncFromSingleLeafNode(a),[4,this._engine.getElementHighlighted(f,c,b)];case 1:return h=k.sent()[0],[2,h]}})})};d.prototype.getNodeFaceHighlighted=function(e,c){return this._getElementHighlighted(e,a.ElementType.Faces,c)};d.prototype.setNodeLineColor=function(a,c,b){this._setNodeLineColor(a,c,b);return Promise.resolve()};
d.prototype._setNodeLineColor=function(e,c,b){var f=this._modelStructure.lookupAnyBody(e);if(null===f)throw new a.InvalidNodeTypeError(e,1);e=f.getInstanceInc();this._engine.setElementColor(e,a.ElementType.Lines,c,1,b)};d.prototype.unsetNodeLineColor=function(e,c){this._unsetElementColor(e,a.ElementType.Lines,c);return Promise.resolve()};d.prototype.setNodeLineHighlighted=function(a,c,b){this._setNodeLineHighlighted(a,c,b);return Promise.resolve()};d.prototype._setNodeLineHighlighted=function(e,c,
b){e=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!0);0<e.length&&this._engine.highlightElements(e,a.ElementType.Lines,c,1,b)};d.prototype.getNodeLineHighlighted=function(e,c){return this._getElementHighlighted(e,a.ElementType.Lines,c)};d.prototype.setNodePointHighlighted=function(a,c,b){this._setNodePointHighlighted(a,c,b);return Promise.resolve()};d.prototype._setNodePointHighlighted=function(e,c,b){var f=this._modelStructure.lookupAnyBody(e);if(null===f)throw new a.InvalidNodeTypeError(e,
1);e=f.getInstanceInc();this._engine.highlightElements(e,a.ElementType.Points,c,1,b)};d.prototype.getNodePointHighlighted=function(e,c){return this._getElementHighlighted(e,a.ElementType.Points,c)};d.prototype.resetNodesColor=function(){this._engine.resetColors();return Promise.resolve()};d.prototype.setNodesOpacity=function(a,c){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);0<a.length&&this._engine.setPartOpacity(a,c)};d.prototype.setNodesTransparency=function(a,c){this.setNodesOpacity(a,
c);return Promise.resolve()};d.prototype._getNodesHasTransparency=function(a){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);return 0<a.length?this._engine.getPartHasTransparency(a):Promise.resolve([])};d.prototype.setNodesOpacities=function(e){var c=this;e=a.Internal.fromIntegerMap(e);var b=new Set;e.forEach(function(f,h){h=c._modelStructure.lookupAnyTreeNode(h);null!==h&&(h=a.Internal.Tree.gatherInstanceIncsSync(h,1,!1,b,!1),0<h.length&&c._engine.setPartOpacity(h,f))})};d.prototype.setNodesTransparencies=
function(a){this.setNodesOpacities(a);return Promise.resolve()};d.prototype.resetModelOpacity=function(){this._engine.resetOpacity();this._callbackManager.trigger("_resetOpacity")};d.prototype.resetModelTransparency=function(){this.resetModelOpacity();return Promise.resolve()};d.prototype.resetModelHighlight=function(){this._engine.clearHighlight();return Promise.resolve()};d.prototype.resetNodesOpacity=function(a){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);0<a.length&&this._engine.unsetPartOpacity(a)};
d.prototype.resetNodesTransparency=function(a){this.resetNodesOpacity(a);return Promise.resolve()};d.prototype._getNodesColor=function(a,c){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);return 0<a.length?this._engine.getPartColor(a,c):Promise.resolve([])};d.prototype._getNodesEffectiveColor=function(a,c){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);return 0<a.length?this._engine.getEffectivePartColor(a,c):Promise.resolve([])};d.prototype.getNodesFaceColor=function(e){return this._getNodesColor(e,
a.ElementType.Faces)};d.prototype.getNodesEffectiveFaceColor=function(e){return this._getNodesEffectiveColor(e,a.ElementType.Faces)};d.prototype.getNodesLineColor=function(e){return this._getNodesColor(e,a.ElementType.Lines)};d.prototype.getNodesEffectiveLineColor=function(e){return this._getNodesEffectiveColor(e,a.ElementType.Lines)};d.prototype.getNodesOpacity=function(a){return Promise.resolve(this._getNodesOpacity(a))};d.prototype.getNodesTransparency=function(a){return this.getNodesOpacity(a)};
d.prototype._getNodesOpacity=function(a){a=this._getInstanceIncsFromLeafNodes(a);return 0<a.length?this._engine.getPartOpacity(a):[]};d.prototype.getNodesEffectiveOpacity=function(a,c){return(a=this._getInstanceIncsFromLeafNodes(a))&&0<a.length?this._engine.getEffectivePartOpacity(a,c):Promise.resolve([])};d.prototype.getNodesEffectiveTransparency=function(a,c){return this.getNodesEffectiveOpacity(a,c)};d.prototype._getNodeColor=function(a,c,b){return __awaiter(this,void 0,void 0,function(){var f,
h;return __generator(this,function(k){switch(k.label){case 0:return f=this._getInstanceIncFromSingleLeafNode(a),[4,this._engine.getElementColor(f,c,b)];case 1:return h=k.sent()[0],[2,h]}})})};d.prototype._getNodeEffectiveColor=function(a,c,b){return __awaiter(this,void 0,void 0,function(){var f,h;return __generator(this,function(k){switch(k.label){case 0:return f=this._getInstanceIncFromSingleLeafNode(a),[4,this._engine.getEffectiveElementColor(f,c,b)];case 1:return h=k.sent()[0],[2,h]}})})};d.prototype.getNodeFaceColor=
function(e,c){return this._getNodeColor(e,a.ElementType.Faces,c)};d.prototype.getNodeEffectiveFaceColor=function(e,c){return this._getNodeEffectiveColor(e,a.ElementType.Faces,c)};d.prototype.getNodeLineColor=function(e,c){return this._getNodeColor(e,a.ElementType.Lines,c)};d.prototype.getNodeEffectiveLineColor=function(e,c){return this._getNodeEffectiveColor(e,a.ElementType.Lines,c)};d.prototype.getOutOfHierarchy=function(a){return this._modelStructure.isOutOfHierarchy(a)};d.prototype.getAbsoluteRootNode=
function(){return this._modelStructure.getAbsoluteRootNodeId()};d.prototype.getRootNode=function(){return this.getAbsoluteRootNode()};d.prototype.getNodeChildren=function(a,c){return this._modelStructure.getChildIds(a,c||!1)};d.prototype.getNodesInstancingSamePart=function(a){return this._modelStructure.getPartReferrers(a)};d.prototype.getUnitMultiplier=function(){return this._getUnitMultiplier()};d.prototype._getUnitMultiplier=function(){var e=this._firstModelRootId!==a.InvalidNodeId?this._firstModelRootId:
this.getAbsoluteRootNode();return this.getNodeUnitMultiplier(e)};d.prototype.getNodeUnitMultiplier=function(a){return this._modelStructure.getUnit(a)};d.prototype.createCadView=function(a,c,b,f,h,k,q,d,l){f||(f=[]);h||(h=[]);k||(k=[]);q||(q=[]);void 0===d&&(d=null);void 0===l&&(l=null);a=this._modelStructure.createCadView(a,c,b,f,h,k,q,d,l);null!==a&&this._callbackManager.trigger("cadViewCreated",a);return a};d.prototype.createCADView=function(a,c,b,f,h,k,q,d,l){return this.createCadView(a,c,b,f,
h,k,q,d,l)};d.prototype.getCadViews=function(){return this._modelStructure.getCadViews()};d.prototype.getCADViews=function(){return this.getCadViews()};d.prototype.activateCadView=function(e,c){void 0===c&&(c=a.DefaultTransitionDuration);return this._modelStructure.activateCadView(e,c)};d.prototype.activateCADView=function(a,c){return this.activateCadView(a,c)};d.prototype.getCadViewPmis=function(a){return this._modelStructure.getCadViewPmis(a)};d.prototype.getCADViewPMIs=function(a){return this.getCadViewPmis(a)};
d.prototype._cadConfigurationsEnabled=function(){return this._modelStructure.cadConfigurationsEnabled()};d.prototype.getCadConfigurations=function(){return this._modelStructure.getCadConfigurations()};d.prototype.getCADConfigurations=function(){return this.getCadConfigurations()};d.prototype.getDefaultCadConfiguration=function(){return this._modelStructure.getDefaultCadConfiguration()};d.prototype.getCADDefaultConfiguration=function(){return this.getDefaultCadConfiguration()};d.prototype.getActiveCadConfiguration=
function(){return this._modelStructure.getActiveCadConfiguration()};d.prototype.getCADActiveConfiguration=function(){return this.getActiveCadConfiguration()};d.prototype.activateCadConfiguration=function(a){return this._modelStructure.activateCadConfiguration(a)};d.prototype.activateCADConfiguration=function(a){return this.activateCadConfiguration(a)};d.prototype.activateDefaultCadConfiguration=function(){return this._modelStructure.activateDefaultCadConfiguration()};d.prototype.activateCADDefaultConfiguration=
function(){return this.activateDefaultCadConfiguration()};d.prototype.getEdgeCount=function(a){return this._modelStructure.getEdgeCount(a)};d.prototype.getEdgeAttributes=function(a,c){return this._modelStructure.getEdgeAttributes(a,c)};d.prototype.getEdgeProperty=function(a,c){return this._modelStructure.getEdgeProperty(a,c)};d.prototype.getFaceCount=function(a){return this._modelStructure.getFaceCount(a)};d.prototype.getFaceAttributes=function(a,c){return this._modelStructure.getFaceAttributes(a,
c)};d.prototype.getFaceProperty=function(a,c){return this._modelStructure.getFaceProperty(a,c)};d.prototype.setEdgeProperty=function(a,c,b){this._modelStructure.setEdgeProperty(a,c,b)};d.prototype.setFaceProperty=function(a,c,b){this._modelStructure.setFaceProperty(a,c,b)};d.prototype.getNodeMeshData=function(e){return __awaiter(this,void 0,void 0,function(){var c,b,f;return __generator(this,function(h){switch(h.label){case 0:c=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!1);if(0===c.length)throw new a.CommunicatorError("Node does not refer to a mesh instance");
if(2<c.length)throw new a.CommunicatorError("Node refers to multiple mesh instances");b=c;return[4,this._engine.getInstancesMeshData(b)];case 1:return f=h.sent(),[2,this._engine.getMeshData(f)]}})})};d.prototype.getNodeMatrix=function(a){return this._modelStructure.getMatrix(a)};d.prototype.setNodeMatrix=function(a,c,b){void 0===b&&(b=!1);return this._modelStructure.setMatrix(a,c,b)};d.prototype.resetNodeMatrixToInitial=function(a){return this._modelStructure.resetToInitialMatrix(a)};d.prototype.getNodeNetMatrix=
function(a){return this._modelStructure.getNetMatrix(a)};d.prototype.getNodeParent=function(a){return this._modelStructure.getParentId(a)};d.prototype.getNodeType=function(a){return this._modelStructure.getType(a)};d.prototype.getNodeProperties=function(a){return this._modelStructure.getProperties(a)};d.prototype.addPropertyToNode=function(a,c,b){return this._modelStructure.addProperty(a,c,b)};d.prototype.setPhysicalProperties=function(a,c,b,f){return this._modelStructure.setPhysicalProperties(a,
c,b,f)};d.prototype.requestNodes=function(a){return this._modelStructure.requestNodes(a)};d.prototype.getNodeName=function(a){return this._modelStructure.getName(a)||null};d.prototype.getNodeExchangeId=function(a){return this._modelStructure.getNodeExchangeId(a)};d.prototype.getFilters=function(){return this._modelStructure.getFilters()};d.prototype.getFilterName=function(a){return this._modelStructure.getFilterName(a)};d.prototype.getFiltersWithNode=function(a){return this._modelStructure.getFiltersWithNode(a)};
d.prototype.getNodesFromFiltersId=function(a){return this._modelStructure.getNodesFromFiltersId(a)};d.prototype.getLayers=function(){return this._modelStructure.getLayers()};d.prototype.getUniqueLayerNames=function(){return this._modelStructure.getUniqueLayerNames()};d.prototype.getLayerName=function(a){return this._modelStructure.getLayerName(a)};d.prototype.getLayerIdsFromName=function(a){return this._modelStructure.getLayerIdsFromName(a)};d.prototype.getNodeLayerId=function(a){return this._modelStructure.getNodeLayerId(a)};
d.prototype.getNodesFromLayer=function(a,c){return this._modelStructure.getNodesFromLayer(a,c)};d.prototype.getNodesFromLayers=function(a,c){return this._modelStructure.getNodesFromLayers(a,c)};d.prototype.getNodesFromLayerName=function(a,c){return this._modelStructure.getNodesFromLayerName(a,c)};d.prototype.getNodeVisibility=function(a){return this._modelStructure.isVisible(a)};d.prototype.getBranchVisibility=function(e){e=this._modelStructure.getBranchVisibility(e);if(2===e)return a.BranchVisibility.Shown;
if(1===e)return a.BranchVisibility.Hidden;console.assert(3===e);return a.BranchVisibility.Mixed};d.prototype.getDataFromIds=function(a){return this._engine.getDataFromIds(a)};d.prototype.getDataFromKeys=function(a){return this.getDataFromIds(a)};d.prototype.createMesh=function(a){return this._engine.createMesh(a)};d._flatArrayToPairArray=function(a){for(var c=[],b=0;b<a.length;b+=2)c.push([a[b],a[b+1]]);return c};d._pairArrayToFlatArray=function(a){for(var c=[],b=0;b<a.length;b++){var f=a[b];c.push(f[0],
f[1])}return c};d.prototype.getMeshIds=function(a){return __awaiter(this,void 0,void 0,function(){var c,b;return __generator(this,function(f){switch(f.label){case 0:return c=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1),[4,this._engine.getInstancesMeshData(c)];case 1:return b=f.sent(),[2,d._flatArrayToPairArray(b)]}})})};d.prototype.replaceMesh=function(a,c){return this._engine.replaceMesh(a,c)};d.prototype.createMeshInstance=function(a,c,b,f){void 0===c&&(c=null);b||(b=!1);f||(f=!1);
return this._createMeshInstance(a,c,b,f)};d.prototype._createMeshInstance=function(e,c,b,f){return __awaiter(this,void 0,void 0,function(){var h,k,q,d,l,m;return __generator(this,function(g){switch(g.label){case 0:return h=e.getMatrix(),k=null!==h||null!==c,q=e.getCreationFlags(),console.assert(!c||!f,"Out of hierarchy instances should not have a parent node."),k&&e.setCreationFlags(q|a.MeshInstanceCreationFlags.Invisible),[4,this._engine.createMeshInstance(e)];case 1:d=g.sent();l=this._modelStructure.createMeshInstance(d[0],
d[1],e.getInstanceName(),c,b,f);if(!k)return[3,3];m=h?h:new a.Matrix;return[4,this.setNodeMatrix(l,m,!0)];case 2:g.sent(),0===(q&a.MeshInstanceCreationFlags.Invisible)&&this._engine.setPartVisibility(d,!0),g.label=3;case 3:return null===c?[3,5]:[4,this._callbackManager.promiseTrigger("_subtreeLoaded","subtreeLoaded",[l],a.NodeSource.CreateInstance)];case 4:g.sent(),g.label=5;case 5:return[2,l]}})})};d.prototype.createPmiInstance=function(e,c,b,f,h){return __awaiter(this,void 0,void 0,function(){var k,
q,d,l,m,g,r,t;return __generator(this,function(u){switch(u.label){case 0:void 0===h&&(h=null);k=[];q=0;for(d=f;q<d.length;q++){l=d[q];m=this._modelStructure.lookupBodyInstance(l.bodyId);if(null===m)throw new a.InvalidNodeIdError(l.bodyId);g=a.Internal.Tree.ReferenceOnTopology.fromBodyInstance(m,l.subElementType,l.subElementIndex);k.push(g)}return[4,this._engine.createMeshInstance(e)];case 1:return r=u.sent(),t=this._modelStructure.createPmiInstance(r[0],r[1],c,b,k,e.getInstanceName(),h),null===h?
[3,3]:[4,this._callbackManager.promiseTrigger("_subtreeLoaded","subtreeLoaded",[t],a.NodeSource.CreatePmi)];case 2:u.sent(),u.label=3;case 3:return[2,t]}})})};d.prototype.createPMIInstance=function(a,c,b,f,h){return this.createPmiInstance(a,c,b,f,h)};d.prototype.createImage=function(a,c){return this._engine.createImage(a,c)};d.prototype.deleteImages=function(a){return this._engine.destroyImages(d._pairArrayToFlatArray(a))};d.prototype.setNodesTexture=function(a,c){a=this._getInstanceIncsFromLeafNodes(a);
return this._engine.setTexture(a,c)};d.prototype.unsetNodesTexture=function(a){a=this._getInstanceIncsFromLeafNodes(a);this._engine.unsetTexture(a)};d.prototype.deleteMeshes=function(a){return this._engine.destroyMeshes(d._pairArrayToFlatArray(a))};d.prototype.deleteMeshInstances=function(e){var c=this._modelStructure.gatherInstanceIncsFromNodeIds(e,7,!1),b=[];if(0<c.length){for(var f=0;f<e.length;f++)b.push(this._modelStructure.deleteNode(e[f]));b.push(this._engine.destroyLocalInstances(c))}return a.Internal.waitForAll(b)};
d.prototype._obtainLoadSubtreeConfig=function(e){if(e[0]instanceof a.LoadSubtreeConfig){e=e[0];var c=new a.LoadSubtreeConfig;c.additionalMatrix=e.additionalMatrix;c.allowMissingExternalModels=e.allowMissingExternalModels;c.attachInvisibly=e.attachInvisibly}else c=new a.LoadSubtreeConfig,c.additionalMatrix=e[0]||null,c.allowMissingExternalModels=!!e[1];return c};d.prototype.loadSubtreeFromXmlFile=function(e,c,b){for(var f=[],h=3;h<arguments.length;h++)f[h-3]=arguments[h];f=this._obtainLoadSubtreeConfig(f);
b||(b=a.Internal.identity);return this._modelStructure.loadSubtreeFromXmlFile(e,c,b,f)};d.prototype.loadSubtreeFromXmlBuffer=function(e,c,b){for(var f=[],h=3;h<arguments.length;h++)f[h-3]=arguments[h];f=this._obtainLoadSubtreeConfig(f);b||(b=a.Internal.identity);return this._modelStructure.loadSubtreeFromXmlDoc(e,c,b,f)};d.prototype.loadSubtreeFromScsXmlFile=function(e,c,b){for(var f=[],h=3;h<arguments.length;h++)f[h-3]=arguments[h];f=this._obtainLoadSubtreeConfig(f);b||(b=a.Internal.identity);return this._modelStructure.loadSubtreeFromScsXmlFile(e,
c,b,f)};d.prototype.loadSubtreeFromScsXmlBuffer=function(e,c,b){for(var f=[],h=3;h<arguments.length;h++)f[h-3]=arguments[h];f=this._obtainLoadSubtreeConfig(f);b||(b=a.Internal.identity);return this._modelStructure.loadSubtreeFromScsXmlDoc(e,c,b,f)};d.prototype.loadSubtreeFromModel=function(a,c){for(var b=[],f=2;f<arguments.length;f++)b[f-2]=arguments[f];b=this._obtainLoadSubtreeConfig(b);return this._modelStructure.loadSubtreeFromStream(a,c,b)};d.prototype.loadSubtreeFromScsFile=function(a,c){for(var b=
[],f=2;f<arguments.length;f++)b[f-2]=arguments[f];b=this._obtainLoadSubtreeConfig(b);return this._modelStructure.loadSubtreeFromScsFile(a,c,b)};d.prototype.loadSubtreeFromScsBuffer=function(a,c){for(var b=[],f=2;f<arguments.length;f++)b[f-2]=arguments[f];b=this._obtainLoadSubtreeConfig(b);return this._modelStructure.loadSubtreeFromScsBuffer(a,c,b)};d.prototype.loadSubtreeFromUrl=function(a,c){return this.loadSubtreeFromXmlFile(a,c)};d.prototype.loadSubtreeFromXML=function(a,c){return this.loadSubtreeFromXmlBuffer(a,
c)};d.prototype.switchToModel=function(a){this._callbackManager.trigger("modelLoadBegin");return this._modelStructure.switchToModel(a)};d.prototype.createNode=function(e,c,b,f,h){void 0===e&&(e=null);void 0===b&&(b=null);void 0===f&&(f=null);if(void 0===h||null===h)h=!0;e=this._modelStructure.createNode(e,c,b,f,h);null!==e&&(c=this._callbackManager.promiseTrigger("_subtreeLoaded","subtreeLoaded",[e],a.NodeSource.CreateNode),c);return e};d.prototype.deleteNode=function(a){return __awaiter(this,void 0,
void 0,function(){return __generator(this,function(c){switch(c.label){case 0:return[4,this._modelStructure.deleteNode(a)];case 1:return c.sent(),this._callbackManager.trigger("subtreeDeleted",[a]),[2]}})})};d.prototype.createPart=function(a){void 0===a&&(a=null);return this._modelStructure.createPart(a)};d.prototype.setPart=function(a,c){return void 0===a||null===a||void 0===c||null===c?!1:this._modelStructure.setPart(a,c)};d.prototype.createAndAddRepresentationItem=function(a,c){if(void 0===a||null===
a)return null;void 0===c&&(c=null);return this._modelStructure.createAndAddRepItem(a,c)};d.prototype.createAndAddBody=function(a,c){return this.createAndAddRepresentationItem(a,c)};d.prototype.getLowestAvailableNodeId=function(){return this._modelStructure.getLowestAvailableNodeId()};d.prototype.getLowestAvailableNodeID=function(){return this.getLowestAvailableNodeId()};d.prototype.setInstanceModifier=function(a,c,b){this._setInstanceModifier(a,c,b,7);return Promise.resolve()};d.prototype._setInstanceModifier=
function(a,c,b,f){c=this._modelStructure.gatherInstanceIncsFromNodeIds(c,f,!1);0<c.length&&this._engine.setInstanceModifier(a,c,b)};d.prototype.getSCInstanceKey=function(a){a=this._modelStructure.lookupBodyInstance(a);return null!==a?a.getInstanceInc():null};d.prototype.getNodeIDFromSCInstanceKey=function(a,c){return this._modelStructure.getNodeFromInstanceInc(!1,a,c,!1)};d.prototype.getPrimaryModelKey=function(){return this._engine.getPrimaryModelKey()};d.prototype.getPrimaryModelId=function(){return this.getPrimaryModelKey()};
d.prototype.getAssociatedModelKey=function(a){a=this._modelStructure.getAssociatedModelKey(a);return Promise.resolve(a)};d.prototype.hasDepthRange=function(a){a=this._getInstanceIncsFromLeafNodes(a);return this._engine.hasDepthRange(a)};d.prototype.setDepthRange=function(a,c,b){this._setDepthRange(a,c,b);return Promise.resolve()};d.prototype._setDepthRange=function(a,c,b){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);this._engine.setDepthRange(a,c,b)};d.prototype.unsetDepthRange=function(a){a=
this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);this._engine.unsetDepthRange(a)};d.prototype._gatherInstanceIncsFromNodeIds=function(a,c){void 0===c&&(c=7);return this._modelStructure.gatherInstanceIncsFromNodeIds(a,c,!1)};d.prototype._getInstanceIncsFromLeafNodes=function(e){for(var c=[],b=0;b<e.length;b++){var f=this._modelStructure.gatherInstanceIncsFromNodeIds([e[b]],7,!1);if(2===f.length)c.push(f[0],f[1]);else throw new a.CommunicatorError("Non-leaf node encountered");}return c};d.prototype._getInstanceIncFromSingleLeafNode=
function(e){e=this._modelStructure.gatherInstanceIncsFromNodeIds([e],7,!1);if(2===e.length)return e;throw new a.CommunicatorError("Non-leaf node encountered");};d.prototype.setMeshLevel=function(a,c){this._modelStructure.setMeshLevel(a,c);return Promise.resolve()};d.prototype.setEnableAutomaticUnitScaling=function(a){return this._modelStructure.setEnableAutomaticUnitScaling(a)};d.prototype.setBehaviorInitiallyHidden=function(a){return this._modelStructure.setBehaviorInitiallyHidden(a)};d.prototype.isDrawing=
function(){return this._modelStructure.isACadDrawing()};d.prototype.isMeasurable=function(){return this._modelStructure.isMeasurable()};d.prototype.getModelFileNameFromNode=function(a){return this._modelStructure.getModelFileNameFromNode(a)};d.prototype.getModelFileTypeFromNode=function(a){return this._modelStructure.getModelFileTypeFromNode(a)};d.prototype.getNodeGenericType=function(a){return this._modelStructure.getNodeGenericType(a)};d.prototype.getNodeGenericId=function(a){return this._modelStructure.getNodeGenericId(a)};
d.prototype.registerBimNodes=function(e,c,b){void 0===b&&(b=null);return __awaiter(this,void 0,void 0,function(){var f;return __generator(this,function(h){f=this._modelStructure.lookupAnyTreeNode(e);if(null===f)return[2];"boolean"===typeof b&&(b=b?"TYPE":null);return[2,a.Internal.Tree.registerBimNodes(c,this._engine,this._modelStructure,f,b)]})})};d.prototype.getGenericTypeIdMap=function(){return this._modelStructure.getGenericTypeIdMap()};d.prototype.getIfcNodeIds=function(){return this.getGenericTypeIdMap()};
d.prototype.getIfcTypeByNodeId=function(a){return this._modelStructure.getNodeGenericType(a)};d.prototype.getNodesByGenericType=function(a){return this._modelStructure.getNodesByGenericType(a)};d.prototype.getNodesByIfcType=function(a){return this.getNodesByGenericType(a)};d.prototype.getGenericTypes=function(){return this._modelStructure.getGenericTypes()};d.prototype.getIfcTypes=function(){return this.getGenericTypes()};d.prototype._hasEffectiveGenericType=function(a,c){return this._modelStructure.hasEffectiveGenericType(a,
c)};d.prototype.registerIfcNodes=function(e,c){void 0===c&&(c=null);return this.registerBimNodes(e,a.Internal.Tree.ifcAttributeToBimMask,c)};d.prototype.isAnnotationView=function(a){return this._modelStructure.isAnnotationView(a)};d.prototype.setNodesCullingVector=function(a,c,b,f){this._setNodesCullingVector(a,c,b,f);return Promise.resolve()};d.prototype._setNodesCullingVector=function(a,c,b,f){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);return this._engine.setCullingVector(a,c,
b,f)};d.prototype.unsetNodesCullingVectors=function(a){this._unsetNodesCullingVectors(a);return Promise.resolve()};d.prototype._unsetNodesCullingVectors=function(a){a=this._modelStructure.gatherInstanceIncsFromNodeIds(a,7,!1);this._engine.unsetCullingVector(a)};d.prototype.getNodesCullingVectors=function(a){a=this._getInstanceIncsFromLeafNodes(a);return this._engine.getCullingVector(a)};d.prototype.getNodeIdOffset=function(a){return this._modelStructure.getIdOffset(a)};d.prototype.isNodeLoaded=function(a){return this._modelStructure.isNodeLoaded(a)};
d.prototype.triangulatePolygon=function(e,c){c=a.Internal.toVec3(c);return this._engine.triangulatePolygon(e,c)};d.prototype.setNodesLinePattern=function(a,c,b,f){a=this._gatherInstanceIncsFromNodeIds(a);this._engine.setLinePattern(a,c,b,f)};d.prototype.unsetNodesLinePattern=function(a){a=this._gatherInstanceIncsFromNodeIds(a);this._engine.unsetLinePattern(a)};d.prototype._hwfAwaitAssemblyTreeReady=function(){return __awaiter(this,void 0,void 0,function(){var e,c,b;return __generator(this,function(f){switch(f.label){case 0:e=
this.getAbsoluteRootNode();c=this._modelStructure.lookupAnyTreeNode(e);if(null===c)throw new a.InternalLogicError;b=a.Internal.Tree.towardLoadContext(c);return[4,a.Internal.Tree.WalkerAsync.forceLazyPromises(b)];case 1:return f.sent(),[4,a.Internal.Tree.markContextsLoaded(b)];case 2:return f.sent(),[2]}})})};d.prototype.getNodeUserDataIndices=function(a){return this._modelStructure.getUserDataIndices(a)};d.prototype.getNodeUserData=function(a,c){return this._modelStructure.getUserData(a,c)};d.prototype.getNodeIdsByGenericIds=
function(a){for(var c=[],b=0;b<a.length;b++){var f=this._modelStructure.getNodeByGenericId(a[b]);null!==f&&c.push(f)}return c};d.prototype.getNodeIdsByIfcGuids=function(a){return this.getNodeIdsByGenericIds(a)};d.prototype._isReady=function(){return this._modelStructure.isReady()};d.prototype._getModelStructure=function(){return this._modelStructure};d.prototype._isWithinExternalModel=function(a){return this._modelStructure.isWithinExternalModel(a)};d.prototype._firstAssemblyDataHeader=function(){return this._modelStructure.firstAssemblyDataHeader()};
__decorate([d.deprecated],d.prototype,"getPMIs",null);__decorate([d.deprecated],d.prototype,"getPMIType",null);__decorate([d.deprecated],d.prototype,"getPMISubtype",null);__decorate([d.deprecated],d.prototype,"setPMIColor",null);__decorate([d.deprecated],d.prototype,"getPMIColor",null);__decorate([d.deprecated],d.prototype,"setPMIColorOverride",null);__decorate([d.deprecated],d.prototype,"getPMIColorOverride",null);__decorate([d.deprecated],d.prototype,"setNodesTransparency",null);__decorate([d.deprecated],
d.prototype,"setNodesTransparencies",null);__decorate([d.deprecated],d.prototype,"resetModelTransparency",null);__decorate([d.deprecated],d.prototype,"resetNodesTransparency",null);__decorate([d.deprecated],d.prototype,"getNodesTransparency",null);__decorate([d.deprecated],d.prototype,"getNodesEffectiveTransparency",null);__decorate([d.deprecated],d.prototype,"getRootNode",null);__decorate([d.deprecated],d.prototype,"getUnitMultiplier",null);__decorate([d.deprecated],d.prototype,"createCADView",null);
__decorate([d.deprecated],d.prototype,"getCADViews",null);__decorate([d.deprecated],d.prototype,"activateCADView",null);__decorate([d.deprecated],d.prototype,"getCADViewPMIs",null);__decorate([d.deprecated],d.prototype,"getCADConfigurations",null);__decorate([d.deprecated],d.prototype,"getCADDefaultConfiguration",null);__decorate([d.deprecated],d.prototype,"getCADActiveConfiguration",null);__decorate([d.deprecated],d.prototype,"activateCADConfiguration",null);__decorate([d.deprecated],d.prototype,
"activateCADDefaultConfiguration",null);__decorate([d.deprecated],d.prototype,"getDataFromKeys",null);__decorate([d.deprecated],d.prototype,"createPMIInstance",null);__decorate([d.deprecated],d.prototype,"loadSubtreeFromUrl",null);__decorate([d.deprecated],d.prototype,"loadSubtreeFromXML",null);__decorate([d.deprecated],d.prototype,"createAndAddBody",null);__decorate([d.deprecated],d.prototype,"getLowestAvailableNodeID",null);__decorate([d.deprecated],d.prototype,"getSCInstanceKey",null);__decorate([d.deprecated],
d.prototype,"getNodeIDFromSCInstanceKey",null);__decorate([d.deprecated],d.prototype,"getPrimaryModelId",null);__decorate([d.deprecated],d.prototype,"getIfcNodeIds",null);__decorate([d.deprecated],d.prototype,"getIfcTypeByNodeId",null);__decorate([d.deprecated],d.prototype,"getNodesByIfcType",null);__decorate([d.deprecated],d.prototype,"getIfcTypes",null);__decorate([d.deprecated],d.prototype,"getNodeIdsByIfcGuids",null);return d}();a.Model=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(e){var c=this;this._position=new a.Point2(0,0);this._viewportSize=new a.Point2(200,200);this._anchor=a.OverlayAnchor.UpperRightCorner;this._dimension=3;this._fieldSize=8;this._instanceKeys=[];this._enabled=!1;this._selectionFaceColor=new a.Color(76,186,240);this._outlineColor=new a.Color(17,94,133);this._lastSelectedNodes=[];this._nodeIds=[];this._adjacentFaces=[];this._cameraRotation=0;this._lastFaceIndex=this._lastCamera=this._lastOrientation=null;this._textWidths=
[];this._sceneReadyCompleted=a.Internal.OpenPromise.create();this._firstAttachment=this._geometryCreated=this._texturesReady=!1;this._viewer=e;this._fontSize=25;this._fontInfo=this._fontSize+"px Arial";this._textureSize=512;this._viewer.setCallbacks({sceneReady:function(){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,this._createViewport()];case 1:return a.sent(),this._updateVisibility(),[4,this._createGeometry()];case 2:return a.sent(),
this._sceneReadyCompleted.resolve(),[2]}})})},_assemblyTreeReady:function(){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,this._sceneReadyCompleted];case 1:return a.sent(),[2,this._setTextures()]}})})},_firstAttachment:function(){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return this._firstAttachment=!0,[4,this._onCameraUpdate()];case 1:return a.sent(),this._updateVisibility(),
[2]}})})},modelSwitchStart:function(){c._firstAttachment=!1},camera:function(){c._onCameraUpdate()},transitionEnd:function(){c._onCameraUpdate()},viewAxes:function(){c._updateOrientationMatrices()},_resetOpacity:function(){c._viewer.model.setNodesOpacity(c._nodeIds.slice(1),0)},viewOrientation:function(a){c._lastOrientation=a;c._cameraRotation=0;c._lastCamera=c._viewer.view.getCamera()}})}d.prototype.setAnchor=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){switch(c.label){case 0:return this._anchor=
a,[4,this._sceneReadyCompleted];case 1:return c.sent(),[2,this._updateViewport()]}})})};d.prototype.getAnchor=function(){return this._anchor};d.prototype.enable=function(){this._enabled=!0;this._updateVisibility();return Promise.resolve()};d.prototype.disable=function(){this._enabled=!1;this._updateVisibility();return Promise.resolve()};d.prototype._updateVisibility=function(){this._enabled&&this._texturesReady&&this._firstAttachment?this._showOverlay():this._hideOverlay()};d.prototype._hideOverlay=
function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.NavCube,!1)};d.prototype._showOverlay=function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.NavCube,!0)};d.prototype.getEnabled=function(){return this._enabled};d.prototype.getOverlayId=function(){return a.BuiltinOverlayIndex.NavCube};d.prototype._setTextures=function(){return __awaiter(this,void 0,void 0,function(){var a,c,b,f,h;return __generator(this,function(k){switch(k.label){case 0:if(!this._textImageId||
0<this._nodeIds.length||0>=this._instanceKeys.length)return[2];a=this._viewer.model;c=0;for(b=this._instanceKeys;c<b.length;c++)f=b[c],h=a._getNodeFromInstanceInc(!0,0,f,!0),this._nodeIds.push(h),a._preventNodeDeletion(h);a.setNodesOpacity(this._nodeIds.slice(1),0);return[4,a.setNodesTexture([this._nodeIds[0]],{imageId:this._textImageId})];case 1:return k.sent(),this._texturesReady=!0,this._updateVisibility(),[2]}})})};d.prototype._updateViewport=function(){return this._viewer.overlayManager.setViewport(a.BuiltinOverlayIndex.NavCube,
this._anchor,this._position.x,a.OverlayUnit.Pixels,this._position.y,a.OverlayUnit.Pixels,this._viewportSize.x,a.OverlayUnit.Pixels,this._viewportSize.y,a.OverlayUnit.Pixels)};d.prototype._createViewport=function(){var e=this._viewer.overlayManager;this._updateViewport();var c=new a.Camera;c.setPosition(new a.Point3(0,0,10));c.setTarget(a.Point3.zero());c.setUp(new a.Point3(0,1,0));c.setWidth(this._fieldSize);c.setHeight(this._fieldSize);c.setProjection(a.Projection.Orthographic);return e.setCamera(a.BuiltinOverlayIndex.NavCube,
c)};d.prototype._createGeometry=function(){return __awaiter(this,void 0,void 0,function(){var e,c,b,f,h,k,q,d,l,m,g,r,t,u,v,w,y,x,z,A,C,B,D,F,I,E,H,J,K,G,M,L,O,P,Q;return __generator(this,function(R){switch(R.label){case 0:if(this._geometryCreated)return[2];e=this._initializeTextures();c=new a.MeshData;c.setFaceWinding(a.FaceWinding.Unknown);b=0;f=[];f.push(this._createCube(b++,this._dimension));h=[];h.push(this._makeRotationMatrixX(-.5*Math.PI));h.push(this._makeRotationMatrixX(.5*Math.PI));h.push(this._makeRotationMatrixY(.5*
Math.PI));h.push(this._makeRotationMatrixY(-.5*Math.PI));h.push(this._makeRotationMatrixZ(.5*Math.PI));h.push(this._makeRotationMatrixZ(-.5*Math.PI));k=this._dimension/4;q=this._dimension/2;d=[];l=new a.Point3(0,0,0);m=new a.Point3(0,0,0);g=new a.Point3(0,0,0);for(r=0;r<h.length;r++)t=this._dimension,u=h[r],v=!1,r===h.length-1&&(v=!0,l.z+=this._dimension+.02),m=new a.Point3(.5*t-k,-.5*t+k,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*
t,-.5*t+k,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*t,.5*t,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(.5*t-k,.5*t,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*t+k,.5*t,-.5*t+-.01),g=new a.Point3(m.x+q,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*t+k,-.5*t+k,
-.5*t+-.01),g=new a.Point3(m.x+q,m.y-k,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*t,.5*t-k,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-q,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(.5*t-k,.5*t-k,-.5*t+-.01),g=new a.Point3(m.x+k,m.y-q,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d)),m=new a.Point3(-.5*t+k,.5*t-k,-.5*t+-.01),g=new a.Point3(m.x+q,m.y-q,m.z),f.push(this._createSelectionFace(b++,m,g,u,v,l,d));for(w=0;w<d.length;w++){y=Math.floor(w/
9);x=[];z=d[w];for(A=0;A<z.length;A+=2)for(C=z[A],B=z[A+1],D=0;D<d.length;D++)if(F=Math.floor(D/9),F!==y)for(I=d[D],E=0;E<I.length;E+=2)H=I[E],J=I[E+1],this._isSameEdge(C,B,H,J)&&x.push(D);this._adjacentFaces.push(x)}return[4,Promise.all(f)];case 1:K=R.sent();this._updateOrientationMatrices();G=this._onCameraUpdate();G;M=[];L=0;for(O=K;L<O.length;L++)P=O[L],M.push(0,P);Q=this._getScEngine();Q.setPartVisibility(M,!0);this._geometryCreated=!0;return[2,e]}})})};d.prototype._createTexture=function(e,
c){e=e.getImageData(0,0,c,c).data;c=new ArrayBuffer(c*c*3);c=new Uint8Array(c);for(var b=0,f=0;f<e.length;f+=4)c[b]=e[f],c[b+1]=e[f],c[b+2]=e[f],b+=3;return this._viewer.model.createImage({format:a.ImageFormat.Rgb24,data:c,width:this._textureSize,height:this._textureSize})};d.prototype._geometryHasBeenCreated=function(){return this._geometryCreated};d.prototype._insideOverlay=function(a){var c=this._getOverlayOffset();return a.x>=c.x&&a.y>=c.y&&a.x<=c.x+this._viewportSize.x&&a.y<=c.y+this._viewportSize.y};
d.prototype._getOverlayOffset=function(){return this._viewer.overlayManager._getOverlayOffset(this._anchor,this._viewportSize)};d.prototype._getViewportSize=function(){return this._viewportSize};d.prototype._onNoSelection=function(){this._enabled&&0<this._lastSelectedNodes.length&&(this._viewer.model.setNodesOpacity(this._lastSelectedNodes,0),this._lastSelectedNodes.length=0)};d.prototype._onClickSelection=function(e){console.assert(this._enabled);null!==e&&e.isFaceSelection()&&e.overlayIndex()===
a.BuiltinOverlayIndex.NavCube?(e=this._getFaceIndexFromNodeId(e.getNodeId()),e<this._nodeIds.length&&0<e&&this._setViewOrientation(e)):this._onNoSelection()};d.prototype._onMoveSelection=function(e){console.assert(this._enabled);if(null!==e&&e.isFaceSelection()&&e.overlayIndex()===a.BuiltinOverlayIndex.NavCube){var c=e.getNodeId(),b=this._getFaceIndexFromNodeId(c)-1;if(0<=b&&c!==this._nodeIds[0]){e=this._viewer.model;e.setNodesOpacity(this._lastSelectedNodes,0);this._lastSelectedNodes.length=0;this._lastSelectedNodes.push(c);
console.assert(b<this._adjacentFaces.length);c=0;for(b=this._adjacentFaces[b];c<b.length;c++){var f=this._getNodeIdFromFaceIndex(b[c]+1);this._lastSelectedNodes.push(f)}e.setNodesOpacity(this._lastSelectedNodes,1)}}else this._onNoSelection()};d.prototype._getViewOrientationFromFaceIndex=function(e){switch(e){case 1:e=a.ViewOrientation.LeftBottomBack;break;case 2:e=a.ViewOrientation.LeftBottomFront;break;case 3:e=a.ViewOrientation.LeftTopFront;break;case 4:e=a.ViewOrientation.LeftTopBack;break;case 5:e=
a.ViewOrientation.LeftTop;break;case 6:e=a.ViewOrientation.LeftBottom;break;case 7:e=a.ViewOrientation.LeftFront;break;case 8:e=a.ViewOrientation.LeftBack;break;case 9:e=a.ViewOrientation.Left;break;case 10:e=a.ViewOrientation.RightTopBack;break;case 11:e=a.ViewOrientation.RightTopFront;break;case 12:e=a.ViewOrientation.RightBottomFront;break;case 13:e=a.ViewOrientation.RightBottomBack;break;case 14:e=a.ViewOrientation.RightBottom;break;case 15:e=a.ViewOrientation.RightTop;break;case 16:e=a.ViewOrientation.RightFront;
break;case 17:e=a.ViewOrientation.RightBack;break;case 18:e=a.ViewOrientation.Right;break;case 19:e=a.ViewOrientation.BackTopRight;break;case 20:e=a.ViewOrientation.BackBottomRight;break;case 21:e=a.ViewOrientation.BackBottomLeft;break;case 22:e=a.ViewOrientation.BackTopLeft;break;case 23:e=a.ViewOrientation.BackLeft;break;case 24:e=a.ViewOrientation.BackRight;break;case 25:e=a.ViewOrientation.BackBottom;break;case 26:e=a.ViewOrientation.BackTop;break;case 27:e=a.ViewOrientation.Back;break;case 28:e=
a.ViewOrientation.FrontBottomRight;break;case 29:e=a.ViewOrientation.FrontTopRight;break;case 30:e=a.ViewOrientation.FrontTopLeft;break;case 31:e=a.ViewOrientation.FrontBottomLeft;break;case 32:e=a.ViewOrientation.FrontLeft;break;case 33:e=a.ViewOrientation.FrontRight;break;case 34:e=a.ViewOrientation.FrontTop;break;case 35:e=a.ViewOrientation.FrontBottom;break;case 36:e=a.ViewOrientation.Front;break;case 37:e=a.ViewOrientation.BottomRightFront;break;case 38:e=a.ViewOrientation.BottomLeftFront;break;
case 39:e=a.ViewOrientation.BottomLeftBack;break;case 40:e=a.ViewOrientation.BottomRightBack;break;case 41:e=a.ViewOrientation.BottomBack;break;case 42:e=a.ViewOrientation.BottomFront;break;case 43:e=a.ViewOrientation.BottomLeft;break;case 44:e=a.ViewOrientation.BottomRight;break;case 45:e=a.ViewOrientation.Bottom;break;case 46:e=a.ViewOrientation.TopLeftBack;break;case 47:e=a.ViewOrientation.TopRightBack;break;case 48:e=a.ViewOrientation.TopRightFront;break;case 49:e=a.ViewOrientation.TopLeftFront;
break;case 50:e=a.ViewOrientation.TopFront;break;case 51:e=a.ViewOrientation.TopBack;break;case 52:e=a.ViewOrientation.TopRight;break;case 53:e=a.ViewOrientation.TopLeft;break;case 54:e=a.ViewOrientation.Top;break;default:e=a.ViewOrientation.Front}return e};d.prototype._setViewOrientation=function(e){return __awaiter(this,void 0,void 0,function(){var c,b,f,h,k,q,d,l,m,g,r,t,u,v;return __generator(this,function(w){switch(w.label){case 0:return c=this._viewer.view,b=this._getViewOrientationFromFaceIndex(e),
[4,c.getViewOrientationCamera(b)];case 1:f=w.sent();h=!1;console.assert(0<=e-1);console.assert(e-1<this._adjacentFaces.length);k=this._adjacentFaces[e-1];q=0;for(d=k;q<d.length;q++)if(l=d[q],m=l+1,m===this._lastFaceIndex){h=!0;break}this._lastFaceIndex=e;g=null!==this._lastCamera&&this._lastCamera.equals(c.getCamera());this._cameraRotation=(r=this._lastOrientation===b||h)&&g?(this._cameraRotation+90)%360:0;this._lastOrientation=b;0<this._cameraRotation&&(t=a.Point3.subtract(f.getPosition(),f.getTarget()).normalize(),
u=a.Matrix.createFromOffAxisRotation(t,this._cameraRotation),v=f.getUp(),u.transform(v,v),f.setUp(v));return[4,c.fitWorld(a.DefaultTransitionDuration,f)];case 2:return w.sent(),this._lastCamera=c.getCamera(),[2]}})})};d.prototype._getScEngine=function(){return this._viewer._getScEngine()};d.prototype._createInstance=function(e,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k,q;return __generator(this,function(d){switch(d.label){case 0:return[4,this._viewer.model.createMesh(e)];case 1:return b=
d.sent(),f=new a.MeshInstanceData(b),f.setCreationFlags(a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.ExcludeBounding|a.MeshInstanceCreationFlags.DoNotLight|a.MeshInstanceCreationFlags.Invisible),f.setOverlayIndex(a.BuiltinOverlayIndex.NavCube),h=this._getScEngine(),[4,h.createMeshInstance(f)];case 2:return k=d.sent(),q=k[1],this._instanceKeys[c]=q,[2,q]}})})};d.prototype._createCube=function(e,c){for(var b=[],f=[],h=[],k=[],q=this._textWidths[0],
d=0,l=this._textWidths;d<l.length;d++){var m=l[d];m>q&&(q=m)}q+=10;b.push(new a.Point3(.5*c,.5*c,.5*c));b.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,.5*c));b.push(new a.Point3(.5*c,.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,.5*c,.5*c));f.push(new a.Point3(0,1,0));f.push(new a.Point3(0,1,0));f.push(new a.Point3(0,1,0));f.push(new a.Point3(0,1,0));f.push(new a.Point3(0,1,0));f.push(new a.Point3(0,1,0));var d=22/this._textureSize,l=82/this._textureSize,
d=1-d,l=1-l,g=(q-this._textWidths[0])/2,m=-(g/this._textureSize),g=(this._textWidths[0]+g)/this._textureSize;h.push(new a.Point2(m,d));h.push(new a.Point2(g,l));h.push(new a.Point2(g,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));h.push(new a.Point2(m,d));k.push(new a.Point3(-.5*c,.5*c,-.5*c));k.push(new a.Point3(.5*c,.5*c,-.5*c));k.push(new a.Point3(.5*c,.5*c,-.5*c));k.push(new a.Point3(.5*c,.5*c,.5*c));k.push(new a.Point3(.5*c,.5*c,.5*c));k.push(new a.Point3(-.5*c,.5*c,.5*c));k.push(new a.Point3(-.5*
c,.5*c,.5*c));k.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(-.5*c,-.5*c,.5*c));b.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(.5*c,-.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,.5*c));b.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(.5*c,-.5*c,-.5*c));f.push(new a.Point3(0,-1,0));f.push(new a.Point3(0,-1,0));f.push(new a.Point3(0,-1,0));f.push(new a.Point3(0,-1,0));f.push(new a.Point3(0,-1,0));f.push(new a.Point3(0,-1,0));d-=60/this._textureSize;l-=60/this._textureSize;
g=(q-this._textWidths[1])/2;m=-(g/this._textureSize);g=(this._textWidths[1]+g)/this._textureSize;h.push(new a.Point2(m,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,d));h.push(new a.Point2(g,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));k.push(new a.Point3(-.5*c,-.5*c,-.5*c));k.push(new a.Point3(.5*c,-.5*c,-.5*c));k.push(new a.Point3(.5*c,-.5*c,-.5*c));k.push(new a.Point3(.5*c,-.5*c,.5*c));k.push(new a.Point3(.5*c,-.5*c,.5*c));k.push(new a.Point3(-.5*c,-.5*c,.5*c));k.push(new a.Point3(-.5*
c,-.5*c,.5*c));k.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,.5*c));b.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,.5*c));b.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,-.5*c,.5*c));f.push(new a.Point3(-1,0,0));f.push(new a.Point3(-1,0,0));f.push(new a.Point3(-1,0,0));f.push(new a.Point3(-1,0,0));f.push(new a.Point3(-1,0,0));f.push(new a.Point3(-1,0,0));d-=60/this._textureSize;l-=60/this._textureSize;
g=(q-this._textWidths[2])/2;m=-(g/this._textureSize);g=(this._textWidths[2]+g)/this._textureSize;h.push(new a.Point2(g,d));h.push(new a.Point2(m,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));k.push(new a.Point3(-.5*c,.5*c,-.5*c));k.push(new a.Point3(-.5*c,.5*c,.5*c));k.push(new a.Point3(-.5*c,.5*c,.5*c));k.push(new a.Point3(-.5*c,-.5*c,.5*c));k.push(new a.Point3(-.5*c,-.5*c,.5*c));k.push(new a.Point3(-.5*c,-.5*c,-.5*c));k.push(new a.Point3(-.5*
c,-.5*c,-.5*c));k.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,-.5*c));b.push(new a.Point3(.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,-.5*c));f.push(new a.Point3(1,0,0));f.push(new a.Point3(1,0,0));f.push(new a.Point3(1,0,0));f.push(new a.Point3(1,0,0));f.push(new a.Point3(1,0,0));f.push(new a.Point3(1,0,0));d-=60/this._textureSize;l-=60/this._textureSize;g=
(q-this._textWidths[3])/2;m=-(g/this._textureSize);g=(this._textWidths[3]+g)/this._textureSize;h.push(new a.Point2(m,d));h.push(new a.Point2(g,l));h.push(new a.Point2(g,d));h.push(new a.Point2(m,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));k.push(new a.Point3(.5*c,.5*c,-.5*c));k.push(new a.Point3(.5*c,.5*c,.5*c));k.push(new a.Point3(.5*c,.5*c,.5*c));k.push(new a.Point3(.5*c,-.5*c,.5*c));k.push(new a.Point3(.5*c,-.5*c,.5*c));k.push(new a.Point3(.5*c,-.5*c,-.5*c));k.push(new a.Point3(.5*
c,-.5*c,-.5*c));k.push(new a.Point3(.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,.5*c,-.5*c));b.push(new a.Point3(.5*c,-.5*c,-.5*c));b.push(new a.Point3(-.5*c,.5*c,-.5*c));f.push(new a.Point3(0,0,-1));f.push(new a.Point3(0,0,-1));f.push(new a.Point3(0,0,-1));f.push(new a.Point3(0,0,-1));f.push(new a.Point3(0,0,-1));f.push(new a.Point3(0,0,-1));d-=60/this._textureSize;l-=60/this._textureSize;
g=(q-this._textWidths[4])/2;m=-(g/this._textureSize);g=(this._textWidths[4]+g)/this._textureSize;h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));h.push(new a.Point2(g,d));h.push(new a.Point2(m,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,d));b.push(new a.Point3(-.5*c,.5*c,.5*c));b.push(new a.Point3(-.5*c,-.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,.5*c));b.push(new a.Point3(-.5*c,.5*c,.5*c));b.push(new a.Point3(.5*c,-.5*c,.5*c));b.push(new a.Point3(.5*c,.5*c,.5*c));f.push(new a.Point3(0,
0,1));f.push(new a.Point3(0,0,1));f.push(new a.Point3(0,0,1));f.push(new a.Point3(0,0,1));f.push(new a.Point3(0,0,1));f.push(new a.Point3(0,0,1));d-=60/this._textureSize;l-=60/this._textureSize;g=(q-this._textWidths[5])/2;m=-(g/this._textureSize);g=(this._textWidths[5]+g)/this._textureSize;h.push(new a.Point2(m,d));h.push(new a.Point2(m,l));h.push(new a.Point2(g,l));h.push(new a.Point2(m,d));h.push(new a.Point2(g,l));h.push(new a.Point2(g,d));c=new a.MeshData;c.setFaceWinding(a.FaceWinding.CounterClockwise);
q=[];l=[];m=[];for(d=g=0;d<b.length;d++){var r=b[d];q.push(r.x);q.push(r.y);q.push(r.z);r=f[d];l.push(r.x);l.push(r.y);l.push(r.z);r=h[d];m.push(r.x);m.push(r.y);if(18<=q.length){for(var r=[[0,255,0,255],[0,255,0,255],[255,0,0,255],[255,0,0,255],[0,0,255,255],[0,0,255,255]][g],t=[],u=0;6>u;u++)t.push(r[0]),t.push(r[1]),t.push(r[2]),t.push(r[3]);c.addFaces(q,l,new Uint8Array(t),m);q=[];l=[];m=[];++g}}q=[];b=new Uint8Array(4*k.length);for(d=0;d<k.length;d++)f=k[d],q.push(f.x),q.push(f.y),q.push(f.z),
f=4*d,b[f]=this._outlineColor.r,b[f+1]=this._outlineColor.g,b[f+2]=this._outlineColor.b,b[f+3]=255;c.addPolyline(q,b);return this._createInstance(c,e)};d.prototype._onCameraUpdate=function(){var e=new a.Camera,c=this._viewer.view.getCamera();e.setPosition(c.getPosition().subtract(c.getTarget()).normalize());e.setTarget(a.Point3.zero());e.setUp(c.getUp());e.setProjection(a.Projection.Orthographic);e.setWidth(this._fieldSize);e.setHeight(this._fieldSize);return this._viewer.overlayManager.setCamera(a.BuiltinOverlayIndex.NavCube,
e)};d.prototype._updateOrientationMatrices=function(){var e=this._viewer.model.getViewAxes(),c=e.upVector.copy(),b=e.frontVector.copy(),f=a.Point3.cross(c,b.copy().scale(-1)),e=new a.Matrix;e.m[0]=-b.x;e.m[1]=-b.y;e.m[2]=-b.z;e.m[4]=f.x;e.m[5]=f.y;e.m[6]=f.z;e.m[8]=c.x;e.m[9]=c.y;e.m[10]=c.z;for(var c=this._getScEngine(),b=[],f=0,h=this._instanceKeys;f<h.length;f++)b.push(0,h[f]);c.setInstancesMatrix(b,e)};d.prototype._createSelectionFace=function(e,c,b,f,h,k,q){var d=new a.MeshData;d.setFaceWinding(a.FaceWinding.CounterClockwise);
var l=[];this._createQuad(c,b,l,f,k,h);c=[];b=[];f=[];for(k=0;k<l.length;k++){var g=l[k];c.push(g.x);c.push(g.y);c.push(g.z);b.push(0);b.push(0);b.push(-1);f.push(this._selectionFaceColor.r);f.push(this._selectionFaceColor.g);f.push(this._selectionFaceColor.b);f.push(128)}k=[];g=[this._outlineColor.r,this._outlineColor.g,this._outlineColor.b,255,this._outlineColor.r,this._outlineColor.g,this._outlineColor.b,255];d.addFaces(c,b,new Uint8Array(f));c=[];h?(c.push(l[4].x,l[4].y,l[4].z),c.push(l[5].x,
l[5].y,l[5].z)):(c.push(l[0].x,l[0].y,l[0].z),c.push(l[1].x,l[1].y,l[1].z));d.addPolyline(c,new Uint8Array(g));k.push(new a.Point3(c[0],c[1],c[2]),new a.Point3(c[3],c[4],c[5]));c=[];c.push(l[1].x,l[1].y,l[1].z);c.push(l[2].x,l[2].y,l[2].z);d.addPolyline(c,new Uint8Array(g));k.push(new a.Point3(c[0],c[1],c[2]),new a.Point3(c[3],c[4],c[5]));c=[];c.push(l[3].x,l[3].y,l[3].z);c.push(l[4].x,l[4].y,l[4].z);d.addPolyline(c,new Uint8Array(g));k.push(new a.Point3(c[0],c[1],c[2]),new a.Point3(c[3],c[4],c[5]));
c=[];h?(c.push(l[3].x,l[3].y,l[3].z),c.push(l[2].x,l[2].y,l[2].z)):(c.push(l[5].x,l[5].y,l[5].z),c.push(l[3].x,l[3].y,l[3].z));d.addPolyline(c,new Uint8Array(g));k.push(new a.Point3(c[0],c[1],c[2]),new a.Point3(c[3],c[4],c[5]));q.push(k);return this._createInstance(d,e)};d.prototype._createQuad=function(e,c,b,f,h,k){void 0===k&&(k=!1);e=new a.Point3(e.x,e.y,e.z);c=new a.Point3(c.x,c.y,c.z);h&&(e.x+=h.x,e.y+=h.y,e.z+=h.z,c.x+=h.x,c.y+=h.y,c.z+=h.z);h=b.length;var q=new a.Point3(c.x,c.y,e.z),q=f.transform(q);
b.push(q);q=new a.Point3(e.x,c.y,e.z);q=f.transform(q);b.push(q);q=new a.Point3(e.x,e.y,e.z);q=f.transform(q);b.push(q);q=new a.Point3(c.x,e.y,e.z);q=f.transform(q);b.push(q);q=new a.Point3(c.x,c.y,e.z);q=f.transform(q);b.push(q);q=new a.Point3(e.x,e.y,e.z);q=f.transform(q);b.push(q);if(k)for(f=0;3>f;f++)k=h+f,e=b[h+f],e=new a.Point3(e.x,e.y,e.z),c=h+(6-f-1),b[k].x=b[c].x,b[k].y=b[c].y,b[k].z=b[c].z,b[c].x=e.x,b[c].y=e.y,b[c].z=e.z};d.prototype._makeRotationMatrixX=function(e){var c=Math.cos(e);e=
Math.sin(e);var b=new a.Matrix;b.m[5]=c;b.m[6]=-e;b.m[9]=e;b.m[10]=c;return b};d.prototype._makeRotationMatrixY=function(e){var c=Math.cos(e);e=Math.sin(e);var b=new a.Matrix;b.m[0]=c;b.m[2]=e;b.m[8]=-e;b.m[10]=c;return b};d.prototype._makeRotationMatrixZ=function(e){var c=Math.cos(e);e=Math.sin(e);var b=new a.Matrix;b.m[0]=c;b.m[1]=-e;b.m[4]=e;b.m[5]=c;return b};d.prototype._getFaceIndexFromNodeId=function(a){for(var c=0;c<this._nodeIds.length;c++)if(this._nodeIds[c]===a)return c;return-1};d.prototype._getNodeIdFromFaceIndex=
function(a){return this._nodeIds[a]};d.prototype._isSameEdge=function(e,c,b,f){var h=a.Point3.subtract(e,b).squaredLength()+a.Point3.subtract(c,f).squaredLength();e=a.Point3.subtract(c,b).squaredLength()+a.Point3.subtract(e,f).squaredLength();return.03>Math.min(h,e)};d.prototype._initializeTextures=function(){return __awaiter(this,void 0,void 0,function(){var a,c,b,f,h,k,q;return __generator(this,function(p){switch(p.label){case 0:a=document.createElement("canvas");a.width=this._textureSize;a.height=
this._textureSize;c=a.getContext("2d");b=2*(this._fontSize+5);c.beginPath();c.rect(0,0,this._textureSize,this._textureSize);c.fillStyle="gray";c.fill();c.fillStyle="black";c.font=this._fontInfo;for(f=0;f<d._faceTexts.length;f++)h=d._faceTexts[f],c.fillText(h,0,b*(f+1)),k=c.measureText(h),this._textWidths.push(k.width);return[4,this._createTexture(c,this._textureSize)];case 1:return this._textImageId=q=p.sent(),[2]}})})};d._faceTexts="LEFT RIGHT FRONT BACK BOTTOM TOP".split(" ");return d}();a.NavCube=
g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(a){this._operatorStack=[];this._operators=new Map;this._customOperatorIdCount=0;this._customOperatorIdIndex=1E4;this._viewer=a}d.prototype._shutdown=function(){for(;void 0!==this.pop(););};d.prototype._registerOperator=function(a,c){this._operators.set(a,c)};d.prototype.registerCustomOperator=function(a){var c=this._customOperatorIdIndex+this._customOperatorIdCount++;this._operators.set(c,a);return c};d.prototype.unregisterCustomOperator=function(a){a>=this._customOperatorIdIndex&&
this._operators.delete(a)};d.prototype.indexOf=function(a){for(var c=this.size()-1;0<=c;c--)if(this._operatorStack[c]===a)return c;return-1};d.prototype.push=function(a){return this._isValid(a)&&!this._contains(a)?(this._operatorStack.push(a),this._activateOperator(a),!0):!1};d.prototype.set=function(a,c){var b=this._operatorStack[c];return a===b?!1:this._isValid(a)&&!this._contains(a)?(this._deactivateOperator(b),this._activateOperator(a),this._operatorStack[c]=a,!0):!1};d.prototype.pop=function(){var a=
this._operatorStack.pop();void 0!==a&&this._deactivateOperator(a);return a};d.prototype.remove=function(a){var c=this.indexOf(a);-1!==c&&(this._operatorStack.splice(c,1),this._deactivateOperator(a))};d.prototype.peek=function(){return 0<this.size()?this._operatorStack[this.size()-1]:a.OperatorId.Invalid};d.prototype.clear=function(){for(var a=this.size()-1;0<=a;a--)this.pop()};d.prototype.size=function(){return this._operatorStack.length};d.prototype.getOperator=function(a){a=this._operators.get(a);
return void 0!==a?a:null};d.prototype.injectEvent=function(e,c){for(var b=this.size()-1;0<=b;b--){var f=this._operators.get(this._operatorStack[b]);if(void 0!==f)switch(c){case a.EventType.KeyDown:if(f.onKeyDown)f.onKeyDown(e);break;case a.EventType.KeyUp:if(f.onKeyUp)f.onKeyUp(e);break;case a.EventType.MouseDown:if(f.onMouseDown)f.onMouseDown(e);break;case a.EventType.MouseMove:if(f.onMouseMove)f.onMouseMove(e);break;case a.EventType.MouseUp:if(f.onMouseUp)f.onMouseUp(e);break;case a.EventType.Mousewheel:if(f.onMousewheel)f.onMousewheel(e);
break;case a.EventType.TouchStart:if(f.onTouchStart)f.onTouchStart(e);break;case a.EventType.TouchMove:if(f.onTouchMove)f.onTouchMove(e);break;case a.EventType.TouchEnd:if(f.onTouchEnd)f.onTouchEnd(e);break;case a.EventType.ViewOrientationChange:if(f.onViewOrientationChange)f.onViewOrientationChange();break;default:a.Internal.TypeAssertNever(c)}if(e.getHandled()){c!==a.EventType.MouseUp&&c!==a.EventType.TouchEnd||this._stopInteraction();break}}return Promise.resolve()};d.prototype._stopInteraction=
function(){for(var a=this.size()-1;0<=a;a--){var c=this._operators.get(this._operatorStack[a]);c&&c.stopInteraction&&c.stopInteraction()}};d.prototype._buildSelectionSpecs=function(e,c,b){for(var f=!1,h=a.SelectionMask.None,k=a.Operator.SelectionRequirements.None,q=!0,d=this.size()-1;0<=d;d--){var l=this._operators.get(this._operatorStack[d]);void 0!==l&&l.needsSelection&&l.needsSelection(e,c,b)&&(f=!0,h|=l._selectionMask(e),k|=l.selectionRequirements(e),q=q&&l._onlySelectOverlays(e))}return f?{mask:h,
requirements:k,restrictToOverlays:q}:null};d.prototype._injectSelectionEvent=function(e,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k,q,d;return __generator(this,function(l){switch(l.label){case 0:b=a.Button.None;e instanceof a.Event.MouseInputEvent&&(b=e.getButton());f=e.getPosition();e._setCompositePickResult(null);h=this._buildSelectionSpecs(c,b,f);if(null===h)return[2,this.injectEvent(e,c)];k=new a.PickConfig(h.mask);k.ignoreCappingGeometry=0!==(h.requirements&a.Operator.SelectionRequirements.IgnoreCapping);
k.restrictToOverlays=h.restrictToOverlays;l.label=1;case 1:return l.trys.push([1,4,,5]),[4,this._viewer.view._compositePickFromPoint(f,k)];case 2:return q=l.sent(),e._setCompositePickResult(q),[4,this.injectEvent(e,c)];case 3:return[2,l.sent()];case 4:return d=l.sent(),"reason"in d?console.log(d.reason):console.log(d),e._setCompositePickResult(null),[2,this.injectEvent(e,c)];case 5:return[2]}})})};d.prototype._injectViewOrientationChangeEvent=function(){for(var a=this.size()-1;0<=a;a--){var c=this._operators.get(this._operatorStack[a]);
if(void 0!==c&&c.onViewOrientationChange)c.onViewOrientationChange()}};d.prototype._isValid=function(e){return this._operators.has(e)||e===a.OperatorId.None};d.prototype._contains=function(a){return-1!==this.indexOf(a)};d.prototype._activateOperator=function(a){a=this._operators.get(a);if(void 0!==a&&a.onActivate)a.onActivate()};d.prototype._deactivateOperator=function(a){a=this._operators.get(a);if(void 0!==a&&a.onDeactivate)a.onDeactivate()};return d}();a.OperatorManager=g})(Communicator||(Communicator=
{}));
(function(a){var g=function(){function d(a,c){this._viewer=a;this._engine=c}d.prototype.maxIndex=function(){return this._engine.getMaxOverlayIndex()-d._reservedOverlayCount};d.prototype.setViewport=function(e,c,b,f,h,k,q,d,l,g){if(0===e)throw new a.CommunicatorError("Index 0 is reserved and may not be used to specify an overlay.");if(0>e)throw new a.CommunicatorError("Invalid index "+e+" specified when setting viewport.");this._validateUnit(b,f,"x");this._validateUnit(h,k,"y");this._validateUnit(q,d,
"width");this._validateUnit(l,g,"height");this._engine.setOverlayViewport(e,c,b,f,h,k,q,d,l,g);return Promise.resolve()};d.prototype.setVisibility=function(a,c){this._engine.setOverlayVisibility(a,c);return Promise.resolve()};d.prototype.destroy=function(a){this._engine.destroyOverlay(a);return Promise.resolve()};d.prototype.addNodes=function(a,c){c=this._viewer.model._gatherInstanceIncsFromNodeIds(c);0<c.length&&this._engine.addNodesToOverlay(c,a);return Promise.resolve()};d.prototype.setCamera=
function(a,c){this._engine.setOverlayCamera(a,c);return Promise.resolve()};d.prototype._getOverlayOffset=function(e,c){var b=this._viewer.view.getCanvasSize(),f=a.Point2.zero();if(e===a.OverlayAnchor.LowerRightCorner||e===a.OverlayAnchor.UpperRightCorner||e===a.OverlayAnchor.RightCenter)f.x=b.x-c.x;else if(e===a.OverlayAnchor.Center||e===a.OverlayAnchor.TopCenter||e===a.OverlayAnchor.BottomCenter)f.x=.5*(b.x-c.x);if(e===a.OverlayAnchor.LowerLeftCorner||e===a.OverlayAnchor.LowerRightCorner||e===a.OverlayAnchor.BottomCenter)f.y=
b.y-c.y;else if(e===a.OverlayAnchor.Center||e===a.OverlayAnchor.LeftCenter||e===a.OverlayAnchor.RightCenter)f.y=.5*(b.y-c.y);return f};d.prototype._validateUnit=function(e,c,b){if(c!==a.OverlayUnit.Pixels&&(0>e||1<e))throw new a.ParseError("value for "+b+" should be between 0.0 and 1.0 when specifying non pixel value");};d._reservedOverlayCount=8;return d}();a.OverlayManager=g})(Communicator||(Communicator={}));
(function(a){(function(a){a[a.None=0]="None";a[a.Floor=1]="Floor";a[a.Wall=2]="Wall";a[a.Door=4]="Door"})(a.BimMask||(a.BimMask={}));var g=function(){function d(e){void 0===e&&(e=a.SelectionMask.Face);this.respectVisibility=!0;this.forceEffectiveSceneVisibilityMask=this.forceEffectiveVisibilityMask=a.SelectionMask.None;this.restrictLinesAndPointsToSelectedFaceInstances=this.oneEntityPerTypePerInstance=this.respectDepthRange=!0;this.restrictToOverlays=this.ignoreOverlays=this.ignoreCappingGeometry=
this.enableProximityFaces=!1;this.selectionMask=e}Object.defineProperty(d.prototype,"allowFaces",{get:function(){return 0!==(this.selectionMask&a.SelectionMask.Face)},set:function(e){this.selectionMask=a.Internal.setBit(this.selectionMask,a.SelectionMask.Face,e)},enumerable:!0,configurable:!0});Object.defineProperty(d.prototype,"allowLines",{get:function(){return 0!==(this.selectionMask&a.SelectionMask.Line)},set:function(e){this.selectionMask=a.Internal.setBit(this.selectionMask,a.SelectionMask.Line,
e)},enumerable:!0,configurable:!0});Object.defineProperty(d.prototype,"allowPoints",{get:function(){return 0!==(this.selectionMask&a.SelectionMask.Point)},set:function(e){this.selectionMask=a.Internal.setBit(this.selectionMask,a.SelectionMask.Point,e)},enumerable:!0,configurable:!0});return d}();a.PickConfig=g;g=function(){return function(d){void 0===d&&(d=a.SelectionMask.All);this.mustBeFullyContained=!1;this.respectVisibility=!0;this.forceEffectiveSceneVisibilityMask=this.forceEffectiveVisibilityMask=
a.SelectionMask.None;this.ignoreCuttingSections=this.allowPoints=this.allowLines=this.allowFaces=!0;this.ignoreUnrequestedInstances=this.onlyStreamedInstances=!1;this.allowFaces=0!==(d&a.SelectionMask.Face);this.allowLines=0!==(d&a.SelectionMask.Line);this.allowPoints=0!==(d&a.SelectionMask.Point)}}();a.IncrementalPickConfig=g})(Communicator||(Communicator={}));var SC;
(function(a){a.UnspecifiedMeasurementUnit=0;a.isError=function(a){return"object"===typeof a&&null!==a&&!0};a.getStateFailure=function(a){a=a.data;return"object"===typeof a&&null!==a&&"scStateFailure"in a?a.scStateFailure:null}})(SC||(SC={}));
(function(a){(function(g){var d;(function(a){a[a.Add=0]="Add";a[a.Update=1]="Update"})(d||(d={}));var e=function(){return function(a){this.promise=g.OpenPromise.create();this.ids=a}}(),c=function(){function b(f,b){this._engineReadyPromise=g.OpenPromise.create();this._sessionStartedPromise=g.OpenPromise.create();this._connectionlessEmpty=!1;this._uri="ws://localhost:9999";this._streamingMode=a.StreamingMode.Interactive;this._rendererType=a.RendererType.Client;this._memoryLimit=this._meshLevel=0;this._boundingPreviewMode=
a.BoundingPreviewMode.All;this._streamCutoffScale=1;this._loadFinished=!1;this._statistics=new g.StatisticMap;this._cachedElementCount=this._cachedTriangleCount=null;this._windowSize=new a.Point2(0,0);this._cuttingSectionToKeyMap=new Map;this._cappingQuantizationGranularity=-1E4;this._cappingMaterialDirty=this._cappingGeometryVisibility=this._cappingLinesEnabled=this._cappingFacesEnabled=!0;this._cappingDelayTimeoutId=null;this._cappingDelay=500;this._requestBatchCountByType=[];this._pendingRequestsByType=
[];this._xRayMaterials=[];this._callbackManager=f;this._applyOptions(b);for(f=0;1>f;++f)this._requestBatchCountByType.push(0),this._pendingRequestsByType.push([])}b.prototype.getNetworkModelName=function(){console.assert(this._sessionType===this.SessionType().Network);if(void 0!==this._model)return this._model;throw new a.InternalLogicError;};b.prototype.getScsInfo=function(){console.assert(this._sessionType===this.SessionType().Scs);return void 0!==this._buffer?this._buffer:/^wss?:\/\//i.test(this._uri)?
null:this._uri};b.prototype._applyOptions=function(a){void 0!==a.empty&&(this._connectionlessEmpty=a.empty);void 0!==a.endpointUri&&(this._uri=a.endpointUri);a.model&&(this._model=a.model);void 0!==a.sessionToken&&(this._sessionToken=a.sessionToken);void 0!==a.buffer&&(this._buffer=a.buffer);void 0!==a.streamingMode&&(this._streamingMode=a.streamingMode);void 0!==a.rendererType&&(this._rendererType=a.rendererType);void 0!==a.defaultMeshLevel&&(this._meshLevel=a.defaultMeshLevel);void 0!==a.memoryLimit&&
(this._memoryLimit=a.memoryLimit);void 0!==a.boundingPreviewMode&&(this._boundingPreviewMode=a.boundingPreviewMode);void 0!==a.streamCutoffScale&&this._setStreamCutoffScale(a.streamCutoffScale)};b.prototype.start=function(a,b){var c=this;this._canvasContainer=a;this._initOptions=b;_SC.createInstance({container:this._canvasContainer.id,onReady:function(a){c._onEngineReady(a)},onError:function(a){c._callbackManager.trigger("modelLoadFailure",c._model||"","failed to load engine: "+a)},enginePath:b.enginePath});
return!0};b.prototype.DrawMode=function(){return this._sc.DrawMode};b.prototype.setPickTolerance=function(a){this._scSelectionManager.setPickTolerance(a)};b.prototype.getPickTolerance=function(){return this._scSelectionManager.getPickTolerance()};b.prototype._onEngineReady=function(a){var b=this;this._sc=a;this._sessionType=this._sc.SessionType.Uninitialized;this._matrixCache=new g.ScMatrixCache(this);this._materialCache=new g.ScMaterialCache(this);this._scSelectionManager=new g.ScSelectionManager(this._sc);
this.resize();this._callbackManager.bind({_firstAttachment:function(){return b._regenerateCapping()}});this._sc.setEventHandler("session_started",function(){var a=function(){b._callbackManager.unbind(f);return b._sessionStartedPromise},f={_sessionStarted:function(){return b._onSessionStarted()},_assemblyTreeReady:a,_modelSwitched:a};b._callbackManager.bind(f);b._sessionStartedPromise.resolve(b._callbackManager.promiseTrigger("_sessionStarted",null))});this._sc.setEventHandler("announce_model",function(a,
f,c){b._callbackManager.trigger("_announceModel",f,c)});this._sc.setEventHandler("inclusion",function(a,f,c,e){b._callbackManager.trigger("_inclusion",f,c,e)});this._sc.setEventHandler("remap_model",function(a,f,c,e){b._callbackManager.trigger("_remapModel",f,c,e)});this._sc.setEventHandler("remap_inclusion",function(a,f,c,e,d){b._callbackManager.trigger("_remapInclusion",f,c,e,d)});this._sc.setEventHandler("capping_idle",function(a,f,c){b._callbackManager.trigger("cappingIdle",f,c)});this._sc.setEventHandler("stream_active",
this._initOptions.streamingActivated);this._sc.setEventHandler("stream_idle",this._initOptions.streamingDeactivated);this._sc.setEventHandler("open_model_failed",function(a,f){switch(f.reason){case "UNKNOWN_MODEL":a="Unknown model";break;case "BAD_NETWORK_VERSION":a="Client/Server network version mismatch";break;case "BAD_STREAM_VERSION":case "BAD_STORE_VERSION":a="Unsupported file version";break;default:a="Internal Error"}b._callbackManager.trigger("modelLoadFailure",b._model||"",a)});this._sc.setEventHandler("missing_model",
function(a,f,c){b._callbackManager.trigger("_missingModel",f,c);b._callbackManager.trigger("missingModel",c)});this._sc.setEventHandler("bad_data",function(a,f){switch(f.type){case "TRUNCATED_BLOCK":a="Failed to parse truncated data block.";break;case "ZFRAME_DECOMPRESS_FAILED":a="Failed to decompress data.";break;case "UNMATCHED_CODE":a="Unknown opcode.";break;case "STORE_VERSION_MISMATCHED":a="Store version mismatched."+(" Expected='"+f.expected+"'.");a+=" Actual='"+f.actual+"'.";break;case "STREAM_VERSION_MISMATCHED":a=
"Stream version mismatched."+(" Expected='"+f.expected+"'.");a+=" Actual='"+f.actual+"'.";break;case "PARSE_BOUNDING_TREE_FAILED":a="Failed to parse bounding tree.";break;default:a="Unknown error."}b._callbackManager.trigger("modelLoadFailure",b._model||"",a)});this._sc.setEventHandler("socket_open_failed",function(){b._callbackManager.trigger("modelLoadFailure",b._model||"","WebSocket connection failed.")});this._sc.setEventHandler("post_draw",function(a,f,c){b._syncedCamera=c;b._renderComplete(f)});
this._sc.setEventHandler("priority_meta_data_sent",function(a,f,c){b._initOptions.priorityMetaDataSent(f,c)});this.setAllowHighDpi(!0);this._sc.setEventHandler("meta_data",function(a,f,c,e){0>f&&(f+=4294967296);b._callbackManager.trigger("_metaData",f,c,e)});this._sc.setEventHandler("draw_complete",function(){b._callbackManager.trigger("_drawComplete")});this._sc.setEventHandler("webgl_context_lost",function(){b._callbackManager.trigger("webGlContextLost")});this._sc.setEventHandler("websocket_connection_closed",
function(){b._callbackManager.trigger("websocketConnectionClosed")});this._initOptions.engineReady(this._sessionStartedPromise);this._engineReadyPromise.resolve()};b.prototype.loadFinished=function(){return this._loadFinished};b.prototype.resetCachedStatistics=function(){this._cachedTriangleCount=this._cachedElementCount=null};b.prototype.setAmbientOcclusionEnabled=function(a){this._sc.setAmbientOcclusionEnabled(a)};b.prototype.setAmbientOcclusionRadius=function(a){this._sc.setAmbientOcclusionRadius(a)};
b.prototype.setLightingEnabled=function(a){this._sc.setLightingEnabled(a)};b.prototype._fillStatTotalCounts=function(){null!==this._cachedElementCount&&null!==this._cachedTriangleCount&&(this._statistics.total_element_count=this._cachedElementCount,this._statistics.total_triangle_count=this._cachedTriangleCount)};b.prototype._renderComplete=function(a){this._statistics=a;this._initOptions.renderComplete();this._fillStatTotalCounts()};b.prototype._updateCachedStats=function(){return __awaiter(this,
void 0,void 0,function(){var a,b,c;return __generator(this,function(q){switch(q.label){case 0:return a=this._sc.getElementCount(),b=this._sc.getTriangleCount(),[4,Promise.all([a,b])];case 1:return c=q.sent(),this._cachedElementCount=c[0],this._cachedTriangleCount=c[1],this._fillStatTotalCounts(),[2]}})})};b.prototype._toVector3=function(a){var b=[0,0,0];a.toArray(b);return b};b.prototype.startExplode=function(a,b){this.delayCapping();this._sc.startExplode(a,this._toVector3(b))};b.prototype.setExplodeMagnitude=
function(a){this._callbackManager.trigger("explode",a);this.delayCapping();this._sc.explode(a)};b.prototype.stopExplode=function(){this.delayCapping();this._sc.resetExplode()};b.prototype.getStatistics=function(a){void 0===a&&(a=!1);return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return!a||this.loadFinished()?[3,2]:[4,this._updateCachedStats()];case 1:return b.sent(),this._fillStatTotalCounts(),[2,this._statistics];case 2:return this.loadFinished()&&
null===this._cachedTriangleCount?[4,this._updateCachedStats()]:[3,4];case 3:return b.sent(),this._fillStatTotalCounts(),[2,this._statistics];case 4:return this._fillStatTotalCounts(),[2,this._statistics]}})})};b.prototype.setStreamIdleMarker=function(){return this._sc.setStreamIdleMarker()};b.prototype.hasDepthRange=function(a){return this._sc.MeshInstance.hasDepthRange(a)};b.prototype.setDepthRange=function(a,b,c){this._sc.MeshInstance.setDepthRange(a,b,c)};b.prototype.unsetDepthRange=function(a){this._sc.MeshInstance.unsetDepthRange(a)};
b.prototype.setDefaultDepthRange=function(a,b){this._sc.setDefaultDepthRange(a,b)};b.prototype._getScPlaneArray=function(a){for(var b=[],c=0;c<a.getCount();c++){var q=a.getPlane(c);if(null!==q){var e=[];q.normal.toArray(e);e[3]=q.d;b.push(e)}}return b};b.prototype.getCuttingSectionLimits=function(){return this._sc.cuttingSectionLimits()};b.prototype._addCuttingSection=function(f,b){return __awaiter(this,void 0,void 0,function(){var c,q,e;return __generator(this,function(l){switch(l.label){case 0:return console.assert(!this._cuttingSectionToKeyMap.has(f)),
c=4294967295,q=this._getScPlaneArray(f),0<q.length?[4,this._sc.addCuttingSection(q)]:[3,2];case 1:c=l.sent();if(4294967295===c)throw e=b===d.Add?"add":"update",new a.CommunicatorError("Failed to "+e+" cutting section.");l.label=2;case 2:return console.assert(!this._cuttingSectionToKeyMap.has(f)),this._cuttingSectionToKeyMap.set(f,c),b===d.Add&&this._callbackManager.trigger("addCuttingSection",f),[2]}})})};b.prototype.addCuttingSection=function(a){return this._addCuttingSection(a,d.Add)};b.prototype.removeCuttingSection=
function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){b=this._cuttingSectionToKeyMap.get(a);if(void 0===b)return console.assert(!1),[2];this._cuttingSectionToKeyMap.delete(a);this._callbackManager.trigger("removeCuttingSection");return 4294967295===b?[2]:[2,this._sc.removeCuttingSections([b])]})})};b.prototype.removeAllCuttingSections=function(){this._cuttingSectionToKeyMap.clear();this._callbackManager.trigger("removeCuttingSection");return this._sc.removeAllCuttingSections()};
b.prototype.updateCuttingSection=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(q){b=this._cuttingSectionToKeyMap.get(a);if(void 0===b)return console.assert(!1),[2];if(4294967295===b)return[2,this._addCuttingSection(a,d.Update)];c=this._getScPlaneArray(a);return[2,this._sc.replaceCuttingSection(c,b)]})})};b.prototype.setCappingDelay=function(a){this._cappingDelay=a};b.prototype.enableCappingIdleCallback=function(a){return this._sc.setCappingIdleHookEnabled(a)};
b.prototype.delayCapping=function(){var a=this;null===this._cappingDelayTimeoutId?this._sc.pauseCapping():clearTimeout(this._cappingDelayTimeoutId);this._cappingDelayTimeoutId=setTimeout(function(){a._cappingDelayTimeoutId=null;a._sc.resumeCapping()},this._cappingDelay)};b.prototype.setCappingGeometryVisibility=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(q){console.assert(void 0!==this._cappingLineMaterialId);console.assert(void 0!==this._cappingFaceMaterialId);
if(this._cappingGeometryVisibility!==a||this._cappingMaterialDirty){null!==this._cappingDelayTimeoutId&&(clearTimeout(this._cappingDelayTimeoutId),this._cappingDelayTimeoutId=null);this._cappingMaterialDirty=!1;if(this._cappingGeometryVisibility=a)return b=this._cappingLinesEnabled?this._cappingLineMaterialId:[0,4294967295],c=this._cappingFacesEnabled?this._cappingFaceMaterialId:[0,4294967295],[2,this._sc.enableCapping(b,c,this._cappingQuantizationGranularity)];this._sc.disableCapping()}return[2]})})};
b.prototype._regenerateCapping=function(){this._cappingMaterialDirty=!0;return this.setCappingGeometryVisibility(this._cappingGeometryVisibility)};b.prototype.getCappingGeometryVisibility=function(){return this._cappingGeometryVisibility};b.prototype.setDiffuseColor=function(a,b){return this._sc.Material.setDiffuseColor(a,b)};b.prototype._toRgb=function(a){var b=[0,0,0];a.toFloatArray(b);return b};b.prototype._toRgba=function(a,b){b=[0,0,0,b];a.toFloatArray(b);return b};b.prototype.setCappingFaceColor=
function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._cappingMaterialDirty=!0,this._cappingFacesEnabled=!!a,a?[4,this.setDiffuseColor(this._cappingFaceMaterialId,this._toRgba(a,1))]:[3,2];case 1:b.sent(),b.label=2;case 2:return[2,this._regenerateCapping()]}})})};b.prototype.setCappingLineColor=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._cappingMaterialDirty=
!0,this._cappingLinesEnabled=!!a,a?[4,this.setDiffuseColor(this._cappingLineMaterialId,this._toRgba(a,1))]:[3,2];case 1:b.sent(),b.label=2;case 2:return[2,this._regenerateCapping()]}})})};b.prototype._onSessionStarted=function(){return __awaiter(this,void 0,void 0,function(){var f=this,b,c,q,e,d,g,n,r;return __generator(this,function(t){switch(t.label){case 0:this._sc.suspendDrawing();this._sc.setDrawMode(this._sc.DrawMode.Highlight);this._sc.setHighlightedInstanceFilter(this._sc.HighlightFilter.Colorize);
this._sc.setUnhighlightedFilter(this._sc.HighlightFilter.None);this._sc.setHighlightMode(this._sc.HighlightMode.VisibleWithFullOutline);this._sc.setAntiAliasingMode(this._sc.AntiAliasingMode.SMAA);b=[];b.push(this._matrixCache.init());c=[.5,.5,.5,1];q=function(){return __awaiter(f,void 0,void 0,function(){return __generator(this,function(a){this._cappingMaterialDirty=!0;return void 0!==this._cappingFaceMaterialId&&void 0!==this._cappingLineMaterialId?[2,this.setCappingGeometryVisibility(this.getCappingGeometryVisibility())]:
[2]})})};b.push(this.createMaterial().then(function(a){return __awaiter(f,void 0,void 0,function(){return __generator(this,function(f){switch(f.label){case 0:return[4,this.setDiffuseColor(a,c)];case 1:return f.sent(),this._cappingFaceMaterialId=a,[2,q()]}})})}));b.push(this.createMaterial().then(function(a){return __awaiter(f,void 0,void 0,function(){return __generator(this,function(f){switch(f.label){case 0:return[4,this.setDiffuseColor(a,c)];case 1:return f.sent(),this._cappingLineMaterialId=a,
[2,q()]}})})}));e=function(c){d._xRayMaterials[c]=[];for(var k=function(a){b.push(d.createMaterial().then(function(b){f._xRayMaterials[c][a]={id:b,color:null}}))},q=0,e=[a.ElementType.Faces,a.ElementType.Lines,a.ElementType.Points];q<e.length;q++)k(e[q])};d=this;g=0;for(n=[a.XRayGroup.Selected,a.XRayGroup.Unselected];g<n.length;g++)r=n[g],e(r);return[4,Promise.all(b)];case 1:return t.sent(),this._initOptions.sceneReady(),this._sc.resumeDrawing(),[2]}})})};b.prototype.isInit=function(){return void 0!==
this._sc};b.prototype.setRemoteEndpoint=function(a,b){this._uri=a;this._model=b};b.prototype.getSessionType=function(){return this._sessionType};b.prototype.SessionType=function(){return this._sc.SessionType};b.prototype._awaitEmptyLoad=function(){var f=this,b=g.OpenPromise.create(),c={_attached:function(q){f._callbackManager.unbind(c);0===q?b.resolve():b.reject(new a.InternalLogicError)}};this._callbackManager.bind(c);return b};b.prototype.loadEmpty=function(){return __awaiter(this,void 0,void 0,
function(){var f;return __generator(this,function(b){switch(b.label){case 0:return[4,this._engineReadyPromise];case 1:b.sent();try{if(this._sessionType!==this._sc.SessionType.Uninitialized)throw new a.LoadError("Incompatible load types.");f=this._awaitEmptyLoad();this._sessionType=this._connectionlessEmpty||void 0!==this._buffer||void 0===this._model?this._loadEmptyScs():this._loadEmptyNetwork();return[2,f]}catch(c){throw this._callbackManager.trigger("modelLoadFailure",this._model||"",c.message),
c;}}})})};b.prototype._loadEmpty=function(a){var b=this;console.assert(void 0===a.XHRonprogress);console.assert(void 0===a.XHRonerror);console.assert(void 0===a.XHRonloadend);a.XHRonprogress=function(a){b._callbackManager.trigger("XHRonprogress",a)};a.XHRonerror=function(a){b._callbackManager.trigger("XHRonerror",a)};a.XHRonloadend=function(a,f,c){b._callbackManager.trigger("XHRonloadend",a,f,c)};return this._sc.load(a)};b.prototype._loadEmptyScs=function(){console.assert(void 0===this._model);return this._loadEmpty({empty:!0})};
b.prototype._loadEmptyNetwork=function(){console.assert(void 0!==this._model);var f={model:a.EmptyModelName,uri:this._uri,serverSideRendering:this._rendererType===a.RendererType.Server,meshLevel:this._meshLevel,streamCutoffScale:this._streamCutoffScale};void 0!==this._sessionToken&&(f.sessionToken=this._sessionToken);0<this._memoryLimit&&(f.limitMiB=this._memoryLimit);(this._boundingPreviewMode&a.BoundingPreviewMode.Model)===a.BoundingPreviewMode.Model&&(f.streamModelBoundingPreviews=!0);(this._boundingPreviewMode&
a.BoundingPreviewMode.Instance)===a.BoundingPreviewMode.Instance&&(f.streamInstanceBoundingPreviews=!0);(this._boundingPreviewMode&a.BoundingPreviewMode.Ejected)===a.BoundingPreviewMode.Ejected&&(f.streamEjectedBoundingPreviews=!0);switch(this._streamingMode){case a.StreamingMode.OnDemand:f.streamInstancesOnDemand=!0;break;case a.StreamingMode.All:f.streamCulled=!0,f.streamMetaDataOnIdle=!0}return this._loadEmpty(f)};b.prototype.setProjection=function(a){var b=this.getCamera();b.getProjection()!==
a&&(b.setProjection(a),this.setCamera(b))};b.prototype.getViewMatrix=function(){return a.Matrix.createFromArray(this._sc.getCamera().viewMatrix())};b.prototype.getProjectionMatrix=function(){return a.Matrix.createFromArray(this._sc.getCamera().projectionMatrix())};b.prototype.getFullCameraMatrix=function(){return a.Matrix.createFromArray(this._sc.getCamera().fullMatrix())};b.prototype.getSynchedViewMatrix=function(){return this._syncedCamera?a.Matrix.createFromArray(this._syncedCamera.viewMatrix()):
new a.Matrix};b.prototype.getSynchedProjectionMatrix=function(){return this._syncedCamera?a.Matrix.createFromArray(this._syncedCamera.projectionMatrix()):new a.Matrix};b.prototype.getPrimaryModelKey=function(){return this._sc.primaryModelKey()};b.prototype.getPartsBounding=function(a){return this.getBounding(a,!1,!1)};b.prototype.getDrawnPartsBounding=function(f){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(q){switch(q.label){case 0:return[4,this._sc.MeshInstance.getDrawnWorldSpaceBounding(f)];
case 1:return b=q.sent(),c=new a.Box,c.min.fromArray(b.min),c.max.fromArray(b.max),[2,c]}})})};b.prototype.getBounding=function(f,b,c){return __awaiter(this,void 0,void 0,function(){var q,e;return __generator(this,function(d){switch(d.label){case 0:return[4,this._sc.MeshInstance.getWorldSpaceBounding(f,b,c)];case 1:return q=d.sent(),e=new a.Box,e.min.fromArray(q.min),e.max.fromArray(q.max),[2,e]}})})};b.prototype.getClientDimensions=function(){var a=this._sc.container;return[a.clientWidth,a.clientHeight]};
b.prototype.getModelBounding=function(a,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){return[2,this.getBounding([],a,b)]})})};b.prototype.pickFromScreen=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.pickFromScreen(a,b,c)]})})};b.prototype.pickAllFromScreen=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.pickAllFromScreen(a,
b,c)]})})};b.prototype.compositePickFromScreen=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.compositePickFromScreen(a,b,c)]})})};b.prototype.beginScreenAreaSelection=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.beginScreenAreaSelection(a,b,c)]})})};b.prototype.beginRayDrillSelection=function(a,b,c){return __awaiter(this,void 0,
void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.beginRayDrillSelection(a,b,c)]})})};b.prototype.beginConvexPolyhedronSelection=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.beginConvexPolyhedronSelection(a,b,c)]})})};b.prototype.beginSphereSelection=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(q){return[2,this._scSelectionManager.beginSphereSelection(a,
b,c)]})})};b.prototype.endIncrementalSelection=function(a){this._scSelectionManager.endIncrementalSelection(a)};b.prototype.advanceIncrementalSelection=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){return[2,this._scSelectionManager.advanceIncrementalSelection(a,!1)]})})};b.prototype.flushMetaDataCache=function(){this._sc.flushMetaDataCache()};b.prototype.safeGetMetaDatas=function(a,b){for(var c=[],q=0;q<b.length;q++)c.push(a,b[q]);return this.getDataFromIds(c).then(g.identity,
function(){return null})};b.prototype.safeGetMetaData=function(a,b){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(q){switch(q.label){case 0:return[4,this.safeGetMetaDatas(a,[b])];case 1:return c=q.sent(),null!==c?[2,c[0]]:[2,null]}})})};b.prototype.safeLoadMetaDatas=function(a){return this.getDataFromIds(a).then(g.nop,g.nop)};b.prototype.getDataFromIds=function(a){if(0===this._requestBatchCountByType[0])return this._getDataFromIds(a);a=new e(a);this._pendingRequestsByType[0].push(a);
return a.promise};b.prototype._getDataFromIds=function(a){return this._sc.getMetaData(a)};b.prototype.pickFromRay=function(a,b){return this._scSelectionManager.pickFromRay(a,b)};b.prototype.pickAllFromRay=function(a,b){return this._scSelectionManager.pickAllFromRay(a,b)};b.prototype.updateCamera=function(a){var b=a._getFlags(),c=this._sc.getCamera();(b&g.CameraFlags.Position)===g.CameraFlags.Position&&c.setPosition(this._toVector3(a.getPosition()));(b&g.CameraFlags.Target)===g.CameraFlags.Target&&
c.setTarget(this._toVector3(a.getTarget()));(b&g.CameraFlags.Up)===g.CameraFlags.Up&&c.setUpVector(this._toVector3(a.getUp()));this._setCamera(c);return this.getCamera()};b.prototype._toProjection=function(f){switch(f){default:case a.Projection.Orthographic:return this._sc.Projection.Orthographic;case a.Projection.Perspective:return this._sc.Projection.Perspective}};b.prototype._toCamera=function(a){var b=this._sc.getCamera();b.reset(this._toProjection(a.getProjection()),this._toVector3(a.getPosition()),
this._toVector3(a.getTarget()),this._toVector3(a.getUp()),a.getWidth(),a.getHeight());b.setNearLimit(a.getNearLimit());return b};b.prototype.setCamera=function(a){a=this._toCamera(a);this._setCamera(a)};b.prototype._setCamera=function(a){this.delayCapping();this._sc.setCamera(a)};b.prototype.setInstancesMatrix=function(a,b){this._sc.MeshInstance.setAnonymousMatrix(a,b.m)};b.prototype.setMatrices=function(a,b){this._sc.requestMeshInstances(a,!1,!0);for(var c=[],q=0;q<b.length;q++)c.push(this._sc.MeshInstance.setAnonymousMatrix([a[2*
q],a[2*q+1]],b[q].m));return g.waitForAll(c)};b.prototype.highlightParts=function(a,b){this._sc.MeshInstance.setHighlighted(a,b);this._sc.MeshInstance.setXRay(a,b)};b.prototype.getPartHighlighted=function(a){return this._sc.MeshInstance.getHighlighted(a)};b.prototype.highlightElements=function(a,b,c,q,e){this._sc.MeshInstance.setElementHighlighted(a,this._toElementType(b),c,q,e)};b.prototype.getElementHighlighted=function(a,b,c){return this._sc.MeshInstance.getElementHighlighted(a,this._toElementType(b),
c)};b.prototype.setNodeHighlightColor=function(a,b){a?(this._sc.setHighlightedInstanceFilter(this._sc.HighlightFilter.Colorize),a=this._toRgba(a,1),this._sc.setHiddenLineHighlightedInstanceFillColor(a),this._sc.setHighlightedInstanceColor(a)):this._sc.setHighlightedInstanceFilter(this._sc.HighlightFilter.None);a=b?this._toRgba(b,1):[0,0,0,0];this._sc.setHiddenLineHighlightedInstanceOutlineColor(a);this._sc.setHighlightedInstanceOutlineColor(a)};b.prototype.setElementHighlightColor=function(a,b){a?
(this._sc.setHighlightedElementFilter(this._sc.HighlightFilter.Colorize),a=this._toRgba(a,1),this._sc.setHighlightedElementColor(a),this._sc.setHiddenLineHighlightedElementFillColor(a)):this._sc.setHighlightedElementFilter(this._sc.HighlightFilter.None);a=b?this._toRgba(b,1):[0,0,0,0];this._sc.setHighlightedElementOutlineColor(a);this._sc.setHiddenLineHighlightedElementOutlineColor(a)};b.prototype.setHighlightColorizeCompression=function(a){this._sc.setHighlightColorizeCompression(a)};b.prototype.computeMininimumBodyBodyDistance=
function(f,b){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(q){switch(q.label){case 0:if(2!==f.length||2!==b.length)throw new a.CommunicatorError("Invalid instance inc.");return[4,this._sc.MeshInstance.computeMinimalBodyBodyDistance(f,b)];case 1:return c=q.sent(),[2,g.makeFaceFaceDistanceItem(c)]}})})};b.prototype.computeMininimumFaceFaceDistance=function(f,b,c,q){return __awaiter(this,void 0,void 0,function(){var e;return __generator(this,function(d){switch(d.label){case 0:if(2!==
f.length||2!==c.length)throw new a.CommunicatorError("Invalid instance inc.");return[4,this._sc.MeshInstance.computeMinimalFaceFaceDistance(f,b,c,q)];case 1:return e=d.sent(),[2,g.makeFaceFaceDistanceItem(e)]}})})};b.prototype.computeMinimumFaceRayDistance=function(f,b,c){return __awaiter(this,void 0,void 0,function(){var q,e;return __generator(this,function(d){switch(d.label){case 0:if(2!==f.length)throw new a.CommunicatorError("Invalid instance inc.");q=g.toScRay(c);return[4,this._sc.MeshInstance.computeMinimalFaceRayDistance(f,
b,q)];case 1:return e=d.sent(),[2,g.makeFaceFaceDistanceItem(e)]}})})};b.prototype.computeMinimumFaceLineDistance=function(f,b,c){return __awaiter(this,void 0,void 0,function(){var q,e;return __generator(this,function(d){switch(d.label){case 0:if(2!==f.length)throw new a.CommunicatorError("Invalid instance inc.");q=g.toScRay(c);return[4,this._sc.MeshInstance.computeMinimalFaceLineDistance(f,b,q)];case 1:return e=d.sent(),[2,g.makeFaceFaceDistanceItem(e)]}})})};b.prototype.pauseRendering=function(){this._sc.suspendDrawing()};
b.prototype.resumeRendering=function(){this._sc.resumeDrawing()};b.prototype.beginRequestBatch=function(a){++this._requestBatchCountByType[a]};b.prototype.endRequestBatch=function(a){0<this._requestBatchCountByType[a]&&--this._requestBatchCountByType[a];this._flushBatchedRequests(a)};b.prototype._flushBatchedRequests=function(a){var b=this._pendingRequestsByType[a];this._pendingRequestsByType[a]=[];for(var c=[],q=0;q<b.length;q++)for(var e=0,d=b[q].ids;e<d.length;e++)c.push(d[e]);switch(a){case 0:return this._flushBatchedMetaDataRequests(b,
c);default:return g.TypeAssert(a),console.assert(!1),Promise.resolve()}};b.prototype._flushBatchedMetaDataRequests=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,q,e,d,g,n,r,t,u;return __generator(this,function(v){switch(v.label){case 0:return[4,this._getDataFromIds(b)];case 1:c=v.sent();e=q=0;for(d=a;e<d.length;e++){g=d[e];n=[];r=g.ids.length/2;for(t=0;t<r;++t)u=c[q++],n.push(u);g.promise.resolve(n)}console.assert(q===c.length);return[2]}})})};b.prototype.clearHighlight=function(){this._sc.unsetAllHighlighted();
this._sc.unsetAllXRay()};b.prototype.resetColors=function(){this._sc.unsetAllColors()};b.prototype.resetOpacity=function(){this._sc.unsetAllOpacity()};b.prototype.setPartOpacity=function(a,b){this._sc.MeshInstance.setOpacity(a,this._sc.ElementType.Faces,b);this._sc.MeshInstance.setOpacity(a,this._sc.ElementType.Lines,b)};b.prototype.unsetPartOpacity=function(a){this._sc.MeshInstance.unsetOpacity(a,this._sc.ElementType.Faces);this._sc.MeshInstance.unsetOpacity(a,this._sc.ElementType.Lines)};b.prototype.getPartOpacity=
function(a){return this._sc.MeshInstance.getOpacity(a,this._sc.ElementType.Faces)};b.prototype.getEffectivePartOpacity=function(a,b){return this._sc.MeshInstance.getEffectiveOpacity(a,this._toElementType(b))};b.prototype.getPartHasTransparency=function(a){return __awaiter(this,void 0,void 0,function(){var b,c,q,e,d;return __generator(this,function(g){switch(g.label){case 0:return b=[],b.push(this._sc.MeshInstance.hasTransparency(a,this._sc.ElementType.Faces)),b.push(this._sc.MeshInstance.hasTransparency(a,
this._sc.ElementType.Lines)),[4,Promise.all(b)];case 1:c=g.sent();q=c[0];e=c[1];for(d=0;d<q.length;++d)q[d]||(q[d]=e[d]);return[2,q]}})})};b.prototype.setPartColor=function(a,b,c){this._sc.MeshInstance.setColor(a,this._toElementType(b),c.getFloatArray())};b.prototype.unsetPartColor=function(a,b){this._sc.MeshInstance.unsetColor(a,this._toElementType(b))};b._numberArraysToColorsInPlace=function(f){for(var b=0;b<f.length;++b)f[b]&&(f[b]=a.Color.createFromFloatArray(f[b]));return f};b.prototype.getPartColor=
function(a,h){return this._sc.MeshInstance.getColor(a,this._toElementType(h)).then(b._numberArraysToColorsInPlace)};b.prototype.getEffectivePartColor=function(a,h){return this._sc.MeshInstance.getEffectiveColor(a,this._toElementType(h)).then(b._numberArraysToColorsInPlace)};b.prototype.setElementColor=function(a,b,c,q,e){this._sc.MeshInstance.setElementColor(a,this._toElementType(b),c,q,e.getFloatArray())};b.prototype.unsetElementColor=function(a,b,c,q){this._sc.MeshInstance.unsetElementColor(a,this._toElementType(b),
c,q)};b.prototype.getElementColor=function(a,h,c){return this._sc.MeshInstance.getElementColor(a,this._toElementType(h),c).then(b._numberArraysToColorsInPlace)};b.prototype.getEffectiveElementColor=function(a,h,c){return this._sc.MeshInstance.getEffectiveElementColor(a,this._toElementType(h),c).then(b._numberArraysToColorsInPlace)};b.prototype.setPartVisibility=function(a,b){0<a.length&&this._sc.MeshInstance.setVisible(a,b)};b.prototype.setVisibilityByAttachment=function(a,b){this._sc.setVisibilityByAttachment(a,
b)};b.prototype.requestMeshInstances=function(a){this._sc.demandMeshInstances(a)};b.prototype.getRendererType=function(){return this._rendererType};b.prototype._toMeshDataBuilder=function(f){for(var b=f._getFaceData(),c=f._getPointData(),q=f._getPolylineData(),e=new this._sc.MeshDataBuilder,d=0;d<b.length;d++){var g=b[d];e.addFace(g.vertexData,{normals:g.normalData,rgba32s:g.rgba32data,uvs:g.uvData,bits:g.bits})}for(b=0;b<c.length;b++)g=c[b],e.addPoints(g.vertexData,{rgba32s:g.rgba32data,bits:g.bits});
for(c=0;c<q.length;c++)g=q[c],e.addPolyline(g.vertexData,{rgba32s:g.rgba32data,bits:g.bits});switch(f.getFaceWinding()){case a.FaceWinding.Clockwise:q=1;break;case a.FaceWinding.CounterClockwise:q=2;break;default:q=0}g=f.getBackfacesEnabled()?4:0;f=f.isManifold()?65536:0;e.formatBits=e.formatBits|q|g|f;return e};b.prototype.createMesh=function(a){a=this._toMeshDataBuilder(a);return this._sc.MeshData.create(a)};b.prototype.replaceMesh=function(a,b){b=this._toMeshDataBuilder(b);return this._sc.MeshData.replace(a,
b)};b.prototype.destroyMeshes=function(a){return this._sc.MeshData.destroy(a)};b.prototype._toImageFormat=function(f){switch(f){case a.ImageFormat.Gray8:return this._sc.ImageFormat.Gray8;case a.ImageFormat.GrayAlpha16:return this._sc.ImageFormat.GrayAlpha16;case a.ImageFormat.Rgb24:return this._sc.ImageFormat.Rgb24;case a.ImageFormat.Rgba32:return this._sc.ImageFormat.Rgba32;case a.ImageFormat.Jpeg:return this._sc.ImageFormat.Jpeg;case a.ImageFormat.Png:return this._sc.ImageFormat.Png}};b.prototype._validateImage=
function(f){if(void 0===f.format)throw new a.ParseError("missing 'format' property");if(void 0===f.data)throw new a.ParseError("missing 'data' property");if((f.format===a.ImageFormat.Gray8||f.format===a.ImageFormat.GrayAlpha16||f.format===a.ImageFormat.Rgb24||f.format===a.ImageFormat.Rgba32)&&(void 0===f.width||0>=f.width||void 0===f.height||0>=f.height))throw new a.ParseError("uncompressed format requested but missing width or height");};b.prototype.createImage=function(a,b){return __awaiter(this,
void 0,void 0,function(){return __generator(this,function(c){this._validateImage(a);return void 0!==b?(this._validateImage(b),[2,this._sc.Image.create(this._toImageFormat(a.format),a.data,a.width,a.height,this._toImageFormat(b.format),b.data,b.width,b.height)]):[2,this._sc.Image.create(this._toImageFormat(a.format),a.data,a.width,a.height)]})})};b.prototype.destroyImages=function(a){return this._sc.Image.destroy(a)};b.prototype._toTextureTiling=function(f){switch(f){default:case a.TextureTiling.Repeat:return this._sc.TextureTiling.Repeat;
case a.TextureTiling.Clamp:return this._sc.TextureTiling.Clamp}};b.prototype._toTextureInterpolation=function(a){return!1===a?this._sc.TextureInterpolation.Off:this._sc.TextureInterpolation.On};b.prototype._toTextureMipMapping=function(a){return!1===a?this._sc.TextureMipMapping.Off:this._sc.TextureMipMapping.On};b.prototype._toTextureParameterization=function(f){switch(f){default:case a.TextureParameterization.UV:return this._sc.TextureParameterization.UV}};b.prototype._toTextureModifier=function(f){switch(f){default:case 0:return this._sc.TextureModifier.None;
case a.TextureModifier.Decal:return this._sc.TextureModifier.Decal}};b.prototype.setTexture=function(f,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){if(void 0===b.imageId)throw new a.ParseError("missing 'imageId' property");return[2,this._sc.MeshInstance.setTexture(f,this._sc.ElementType.Faces,b.imageId,void 0!==b.matrix?b.matrix.m:(new a.Matrix).m,this._toTextureTiling(b.tiling),this._toTextureInterpolation(b.interpolation),this._toTextureMipMapping(b.mipMapping),
this._toTextureParameterization(b.parameterization),this._toTextureModifier(b.modifiers))]})})};b.prototype.unsetTexture=function(a){this._sc.MeshInstance.unsetTexture(a,this._sc.ElementType.Faces)};b.prototype.createMaterial=function(){return this._sc.Material.create()};b.prototype._getMaterialPromiseWithDiffuseColor=function(a,b,c,q){var e=new g.MaterialInfo;e.setDiffuseColor(null!==a?a:c);e.setDiffuseTransparency(null!==b?b:q);return this._materialCache.getOrCreateMaterial(e)};b.prototype.createMatrix=
function(a){return this._sc.Matrix.create(a)};b.prototype.createIdentityMatrix=function(){return this._sc.Matrix.create()};b.prototype.createMeshInstance=function(f){return __awaiter(this,void 0,void 0,function(){var b,c,q,e,d,g,n,r,t,u;return __generator(this,function(v){switch(v.label){case 0:b=f.getMeshId();if(null===b)throw new a.CommunicatorError("MeshId is not set");d=this._matrixCache.getIdentityInc();g=[];if(n=f.getMatrix())r=this.createMatrix(n.m).then(function(a){d=a}),g.push(r);t=new a.Color(255,
0,0);g.push(this._getMaterialPromiseWithDiffuseColor(f.getFaceColor(),f.getOpacity(),t,1).then(function(a){c=a}));g.push(this._getMaterialPromiseWithDiffuseColor(f.getLineColor(),f.getLineOpacity(),t,1).then(function(a){q=a}));g.push(this._getMaterialPromiseWithDiffuseColor(f.getPointColor(),f.getPointOpacity(),t,1).then(function(a){e=a}));return[4,Promise.all(g)];case 1:return v.sent(),[4,this._sc.MeshInstance.create(b,d,c,q,e,f.getCreationFlags(),f.getOverlayIndex())];case 2:return u=v.sent(),this._callbackManager.trigger("_geometryCreated",
u),[2,u]}})})};b.prototype.destroyLocalInstances=function(a){return this._sc.MeshInstance.destroy(a)};b.prototype._fromScCamera=function(f){var b=a.Projection.Orthographic;f.projection()===this._sc.Projection.Perspective&&(b=a.Projection.Perspective);return a.Camera.create(a.Point3.createFromArray(f.position()),a.Point3.createFromArray(f.target()),a.Point3.createFromArray(f.upVector()),b,f.fieldWidth(),f.fieldHeight(),f.nearLimit())};b.prototype.getCameraPromise=function(){return __awaiter(this,void 0,
void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,this._sc.getCameraPromise()];case 1:return a=b.sent(),[2,this._fromScCamera(a)]}})})};b.prototype.getCamera=function(){var a=this._sc.getCamera();return this._fromScCamera(a)};b.prototype.resize=function(){this._sc.onResize();this._windowSize.set(this._canvasContainer.offsetWidth,this._canvasContainer.offsetHeight)};b.prototype.setFaceVisibility=function(a){this._sc.setFacesVisible(a)};b.prototype.setLineVisibility=
function(a){this._sc.setLinesVisible(a)};b.prototype.getCanvasSize=function(){return this._windowSize.copy()};b.prototype.setBackgroundGradient=function(a,b){this._sc.setBackgroundGradient(a?this._toRgba(a,1):[0,0,0,0],b?this._toRgba(b,1):[0,0,0,0])};b.prototype.setServerRenderQuality=function(a,b,c,q){this._sc.setSsrQuality({jpegQualityLow:a,jpegQualityHigh:b,scaleLow:c,scaleHigh:q})};b.prototype.setMinimumFramerate=function(a){this._sc.setMinFrameRate(a)};b.prototype.getMinimumFramerate=function(){return this._sc.getMinFrameRate()};
b.prototype.setBackFacesVisible=function(a){this._sc.setBackFacesVisible(a)};b.prototype.setDrawMode=function(a){this._sc.setDrawMode(a)};b.prototype.enableHiddenLineRendering=function(a){this.setDrawMode(this._sc.DrawMode.HiddenLine);this._sc.setHiddenLineVisibleLineColor(this._toRgba(a.getVisibleLineColor(),a.getVisibleLineOpacity()));this._sc.setHiddenLineHiddenLineColor(this._toRgba(a.getObscuredLineColor(),a.getObscuredLineOpacity()))};b.prototype.setAntiAliasingMode=function(f){switch(f){case a.AntiAliasingMode.None:this._sc.setAntiAliasingMode(this._sc.AntiAliasingMode.None);
break;case a.AntiAliasingMode.SMAA:this._sc.setAntiAliasingMode(this._sc.AntiAliasingMode.SMAA)}};b.prototype.setInstanceModifier=function(f,b,c){switch(f){case a.InstanceModifier.IgnoreCutting:this._sc.MeshInstance.setDoNotCut(b,c);break;case a.InstanceModifier.IgnoreExplosion:this._sc.MeshInstance.setDoNotExplode(b,c);break;case a.InstanceModifier.IgnoreSelection:this._sc.MeshInstance.setDoNotSelect(b,c);break;case a.InstanceModifier.IgnoreCameraScale:this._sc.MeshInstance.setSuppressCameraScale(b,
c);break;case a.InstanceModifier.OverrideSceneVisibility:this._sc.MeshInstance.setOverrideSceneVisibility(b,c);break;case a.InstanceModifier.IgnoreLighting:this._sc.MeshInstance.setDoNotLight(b,c);break;case a.InstanceModifier.IgnoreOutlineHighlight:this._sc.MeshInstance.setDoNotOutlineHighlight(b,c);break;case a.InstanceModifier.ExcludeBounding:this._sc.MeshInstance.setExcludeBounding(b,c);break;case a.InstanceModifier.DoNotUseVertexColors:this._sc.MeshInstance.setDoNotUseVertexColors(b,c);break;
case a.InstanceModifier.AlwaysDraw:this._sc.MeshInstance.setAlwaysDraw(b,c);break;case a.InstanceModifier.DoNotXRay:this._sc.MeshInstance.setDoNotXRay(b,c);break;case a.InstanceModifier.ScreenOriented:this._sc.MeshInstance.setScreenOriented(b,c)}};b.prototype.attachModel=function(a,b,c,q,e){return this._attachModels(a,[[b,c]],q,e)};b.prototype.attachScsModelByKey=function(a,b,c,q,e){console.assert(this._sessionType===this.SessionType().Scs);return this._sc.attachScsModelByKey(a,c,b,q,e)};b.prototype._attachModels=
function(a,b,c,q){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return[4,this._sc.attachModels(a,b,c,q)];case 1:return e.sent(),this._callbackManager.trigger("_attached",a),[2]}})})};b.prototype.attachScsBuffer=function(a,b,c,q,e,d){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(g){switch(g.label){case 0:return[4,this._sc.attachScsBuffer(a,b,c,q,e,d)];case 1:return g.sent(),this._callbackManager.trigger("_attached",
a),[2]}})})};b.prototype._parseKeyInfo=function(a,b,c){if(a||b)return c;a=new Map;for(b=0;b<c.length;++b){for(var q=c[b++],e=[];b<c.length&&4294967295!==c[b];++b)e.push(c[b]);a.set(q,e)}return a};b.prototype.instanceKeyInfo=function(a,b,c){return __awaiter(this,void 0,void 0,function(){var q;return __generator(this,function(e){switch(e.label){case 0:return[4,this._sc.meshInstanceKeyInfo(a,b,c)];case 1:return q=e.sent(),[2,this._parseKeyInfo(b,c,q)]}})})};b.prototype.metaDataKeyInfo=function(a,b,c){return __awaiter(this,
void 0,void 0,function(){var e;return __generator(this,function(d){switch(d.label){case 0:return[4,this._sc.metaDataKeyInfo(a,b,c)];case 1:return e=d.sent(),[2,this._parseKeyInfo(b,c,e)]}})})};b.prototype.modelKeysFromInclusionKeys=function(a){return this._sc.modelKeysFromInclusionKeys(a)};b.prototype.detachInclusions=function(a){return this._sc.detachInclusions(a)};b.prototype.resetToEmpty=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,e,d,l;return __generator(this,function(g){switch(g.label){case 0:for(c=
0;c<this._requestBatchCountByType.length;++c){e=this._requestBatchCountByType[c]=0;for(d=this._pendingRequestsByType[c];e<d.length;e++)l=d[e],l.promise.reject(l.ids);this._pendingRequestsByType[c].length=0}return[4,this._sc.resetToEmpty(a,b)];case 1:return g.sent(),this.flushMetaDataCache(),[2]}})})};b.prototype.redraw=function(){this._sc.queueRedraw()};b.prototype.disconnectNetwork=function(){this._sc.disconnectNetwork()};b.prototype.shutdown=function(){null!==this._cappingDelayTimeoutId&&(clearTimeout(this._cappingDelayTimeoutId),
this._cappingDelayTimeoutId=null);this._sessionType=this._sc.SessionType.Uninitialized;this._sc.shutDown()};b.prototype.getVersionString=function(){return this._sc.getStreamVersion().toString()};b.prototype.setAllowHighDpi=function(a){this._sc.allowHighDpi=a;this.resize()};b.prototype.getAllowHighDpi=function(){return this._sc.allowHighDpi};b.prototype.setMeshLevel=function(a,b){this._sc.MeshInstance.setMeshLevel(a,b)};b.prototype.setOverlayVisibility=function(a,b){this._sc.Overlay.setVisible(a,b)};
b.prototype.setOverlayCamera=function(a,b){b=this._toCamera(b);this._sc.Overlay.setCamera(a,b)};b.prototype.destroyOverlay=function(a){this._sc.Overlay.destroy(a)};b.prototype._overlayUnit=function(f){switch(f){case a.OverlayUnit.ProportionOfCanvas:return this._sc.Overlay.Unit.ProportionOfScreen;case a.OverlayUnit.ProportionOfOtherDimension:return this._sc.Overlay.Unit.ProportionOfOtherDimension;default:return this._sc.Overlay.Unit.Pixels}};b.prototype.getMaxOverlayIndex=function(){return this._sc.Overlay.maxIndex()};
b.prototype._overlayAnchor=function(f){switch(f){case a.OverlayAnchor.BottomCenter:return this._sc.Overlay.Anchor.BottomCenter;case a.OverlayAnchor.Center:return this._sc.Overlay.Anchor.Center;case a.OverlayAnchor.LeftCenter:return this._sc.Overlay.Anchor.LeftCenter;case a.OverlayAnchor.LowerLeftCorner:return this._sc.Overlay.Anchor.LowerLeftCorner;case a.OverlayAnchor.LowerRightCorner:return this._sc.Overlay.Anchor.LowerRightCorner;case a.OverlayAnchor.RightCenter:return this._sc.Overlay.Anchor.RightCenter;
case a.OverlayAnchor.TopCenter:return this._sc.Overlay.Anchor.TopCenter;case a.OverlayAnchor.UpperRightCorner:return this._sc.Overlay.Anchor.UpperRightCorner;default:return this._sc.Overlay.Anchor.UpperLeftCorner}};b.prototype.setOverlayViewport=function(a,b,c,e,d,l,g,n,r,t){this._sc.Overlay.setViewport(a,this._overlayAnchor(b),c,this._overlayUnit(e),d,this._overlayUnit(l),g,this._overlayUnit(n),r,this._overlayUnit(t))};b.prototype.addNodesToOverlay=function(a,b){this._sc.MeshInstance.setOverlayIndex(a,
b)};b.prototype.getInstancesMeshData=function(a){return this._sc.MeshInstance.getMeshData(a)};b.prototype.getMeshData=function(a){return this._sc.MeshData.getData(a)};b.prototype._toElementType=function(f){switch(f){case a.ElementType.Faces:return this._sc.ElementType.Faces;case a.ElementType.Lines:return this._sc.ElementType.Lines;case a.ElementType.Points:return this._sc.ElementType.Points}};b.prototype._toXRayGroup=function(f){switch(f){case a.XRayGroup.Selected:return this._sc.XRayGroup.Selected;
case a.XRayGroup.Unselected:return this._sc.XRayGroup.Unselected}};b.prototype.setXRayColor=function(a,b,c){var e=this._xRayMaterials[a][b];if(e.color&&e.color.equals(c))return Promise.resolve();e.color=c;this.setDiffuseColor(e.id,this._toRgba(c,1));return this._sc.setXRayMaterial(this._toXRayGroup(a),this._toElementType(b),e.id)};b.prototype.unsetXRayColor=function(a,b){if(!this._xRayMaterials[a][b].color)return Promise.resolve();this._xRayMaterials[a][b].color=null;return this._sc.unsetXRayMaterial(this._toXRayGroup(a),
this._toElementType(b))};b.prototype.setXRayOpacity=function(a,b){void 0!==b?this._sc.setXRayOpacity(this._toElementType(b),a):(this._sc.setXRayOpacity(this._sc.ElementType.Faces,a),this._sc.setXRayOpacity(this._sc.ElementType.Lines,a),this._sc.setXRayOpacity(this._sc.ElementType.Points,a))};b.prototype._xRayTransparencyMode=function(f){switch(f){case a.XRayTransparencyMode.Unsorted:return this._sc.TransparencyMode.Unsorted;case a.XRayTransparencyMode.SingleLayer:return this._sc.TransparencyMode.SingleLayer}};
b.prototype.setXRayTransparencyMode=function(a){this._sc.setXRayTransparencyMode(this._xRayTransparencyMode(a))};b.prototype._toPointSizeUnit=function(f){switch(f){case a.PointSizeUnit.ScreenPixels:return this._sc.PointSizeUnit.ScreenPixels;case a.PointSizeUnit.CSSPixels:return this._sc.PointSizeUnit.CSSPixels;case a.PointSizeUnit.World:return this._sc.PointSizeUnit.World;case a.PointSizeUnit.ProportionOfScreenWidth:return this._sc.PointSizeUnit.ProportionOfScreenWidth;case a.PointSizeUnit.ProportionOfScreenHeight:return this._sc.PointSizeUnit.ProportionOfScreenHeight;
case a.PointSizeUnit.ProportionOfBoundingDiagonal:return this._sc.PointSizeUnit.ProportionOfBoundingDiagonal}};b.prototype._toPointShape=function(f){switch(f){case a.PointShape.Square:return this._sc.PointShape.Square;case a.PointShape.Disk:return this._sc.PointShape.Disk;case a.PointShape.Sphere:return this._sc.PointShape.Sphere}};b.prototype._fromPointSizeUnit=function(f){switch(f){default:case this._sc.PointSizeUnit.ScreenPixels:return a.PointSizeUnit.ScreenPixels;case this._sc.PointSizeUnit.CSSPixels:return a.PointSizeUnit.CSSPixels;
case this._sc.PointSizeUnit.World:return a.PointSizeUnit.World;case this._sc.PointSizeUnit.ProportionOfScreenWidth:return a.PointSizeUnit.ProportionOfScreenWidth;case this._sc.PointSizeUnit.ProportionOfScreenHeight:return a.PointSizeUnit.ProportionOfScreenHeight;case this._sc.PointSizeUnit.ProportionOfBoundingDiagonal:return a.PointSizeUnit.ProportionOfBoundingDiagonal}};b.prototype._fromPointShape=function(f){switch(f){default:case this._sc.PointShape.Square:return a.PointShape.Square;case this._sc.PointShape.Disk:return a.PointShape.Disk;
case this._sc.PointShape.Sphere:return a.PointShape.Sphere}};b.prototype.setPointSize=function(a,b){this._sc.setPointSize(a,this._toPointSizeUnit(b))};b.prototype.getPointSize=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,Promise.all([this._sc.getPointSize(),this._sc.getPointSizeUnit()])];case 1:return a=b.sent(),[2,[a[0],this._fromPointSizeUnit(a[1])]]}})})};b.prototype.setPointShape=function(a){this._sc.setPointShape(this._toPointShape(a))};
b.prototype.getPointShape=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return a=this._fromPointShape,[4,this._sc.getPointShape()];case 1:return[2,a.apply(this,[b.sent()])]}})})};b.prototype.setEyeDomeLightingEnabled=function(a){this._sc.setEyeDomeLightingEnabled(a)};b.prototype.getEyeDomeLightingEnabled=function(){return this._sc.getEyeDomeLightingEnabled()};b.prototype.setEyeDomeLightingBlurSamples=function(a){this._sc.setEyeDomeLightingBlurSamples(a)};
b.prototype.getEyeDomeLightingBlurSamples=function(){return this._sc.getEyeDomeLightingBlurSamples()};b.prototype.setEyeDomeLightingBlurInterval=function(a){this._sc.setEyeDomeLightingBlurInterval(a)};b.prototype.getEyeDomeLightingBlurInterval=function(){return this._sc.getEyeDomeLightingBlurInterval()};b.prototype.setEyeDomeLightingBlurEdgeDistance=function(a){this._sc.setEyeDomeLightingBlurEdgeDistance(a)};b.prototype.getEyeDomeLightingBlurEdgeDistance=function(){return this._sc.getEyeDomeLightingBlurEdgeDistance()};
b.prototype.setEyeDomeLightingShadingEdgeDistance=function(a){this._sc.setEyeDomeLightingShadingEdgeDistance(a)};b.prototype.getEyeDomeLightingShadingEdgeDistance=function(){return this._sc.getEyeDomeLightingShadingEdgeDistance()};b.prototype.setEyeDomeLightingOpacity=function(a){this._sc.setEyeDomeLightingOpacity(a)};b.prototype.getEyeDomeLightingOpacity=function(){return this._sc.getEyeDomeLightingOpacity()};b.prototype.setDisplayIncompleteFrames=function(a){this._sc.setDisplayIncompleteFrames(a)};
b.prototype.setInteractiveDrawDelay=function(a){this._sc.setPostInputDelay(a)};b.prototype._toCullingVectorSpace=function(f){switch(f){case a.CullingVectorSpace.Object:return this._sc.CullingVectorSpace.Object;case a.CullingVectorSpace.World:return this._sc.CullingVectorSpace.World}};b.prototype._fromCullingVectorSpace=function(f){switch(f){default:case this._sc.CullingVectorSpace.Object:return a.CullingVectorSpace.Object;case this._sc.CullingVectorSpace.World:return a.CullingVectorSpace.World}};
b.prototype.setCullingVector=function(a,b,c,e){this._sc.MeshInstance.setCullingVector(a,this._toCullingVectorSpace(b),[c.x,c.y,c.z],e)};b.prototype.unsetCullingVector=function(a){this._sc.MeshInstance.unsetCullingVector(a)};b.prototype.getCullingVector=function(f){return __awaiter(this,void 0,void 0,function(){var b,c,e,d,l;return __generator(this,function(g){switch(g.label){case 0:return[4,this._sc.MeshInstance.getCullingVector(f)];case 1:b=g.sent();c=[];e=0;for(d=b;e<d.length;e++)l=d[e],0===l.vector[0]&&
0===l.vector[1]&&0===l.vector[2]?c.push(null):c.push({space:this._fromCullingVectorSpace(l.space),vector:a.Point3.createFromArray(l.vector),toleranceDegrees:l.toleranceDegrees});return[2,c]}})})};b.prototype._setStreamCutoffScale=function(a){this._streamCutoffScale=Math.max(0,Math.min(a,2))};b.prototype.setStreamCutoffScale=function(a){this._setStreamCutoffScale(a);this._sc.setStreamCutoffScale(this._streamCutoffScale)};b.prototype.getStreamCutoffScale=function(){return this._streamCutoffScale};b.prototype.loseWebGlContext=
function(){return this._sc._loseWebGlContext()};b.prototype.triangulatePolygon=function(a,b){a=this._sc.triangulatePolygon(a,b);return new Float32Array(a)};b.prototype.debug_log=function(a){return this._sc.debug_log(a)};b.prototype.debug_stateFailure=function(a){return this._sc.debug_stateFailure(a)};b.prototype.debug_sync=function(){return this._sc.debug_sync()};b.prototype._toLinePatternLengthUnit=function(f){switch(f){case a.LinePatternLengthUnit.Object:return this._sc.LinePatternLengthUnit.Object;
case a.LinePatternLengthUnit.World:return this._sc.LinePatternLengthUnit.World;case a.LinePatternLengthUnit.ProportionOfScreenWidth:return this._sc.LinePatternLengthUnit.ProportionOfScreenWidth;case a.LinePatternLengthUnit.ProportionOfScreenHeight:return this._sc.LinePatternLengthUnit.ProportionOfScreenHeight}};b.prototype.setLinePattern=function(a,b,c,e){this._sc.MeshInstance.setLinePattern(a,b,c,this._toLinePatternLengthUnit(e))};b.prototype.unsetLinePattern=function(a){this._sc.MeshInstance.unsetLinePattern(a)};
b.prototype.exportToSvg=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(e){switch(e.label){case 0:return[4,this._sc.exportToSvg(a)];case 1:return b=e.sent(),c=b.map(function(a){return String.fromCharCode(a)}),[2,c.join("")]}})})};b.prototype.waitForImageDecoding=function(){return this._sc.waitForImageDecoding()};b.prototype.registerBimInstances=function(a,b){return this._sc.registerBimInstances(a,b)};b.prototype.setAmbientLightColor=function(a){this._sc.setAmbientLightColor(this._toRgb(a))};
b.prototype.clearLights=function(){this._sc.clearLights()};b.prototype._toLightType=function(f){switch(f){default:case a.LightType.Directional:return this._sc.LightType.Directional}};b.prototype._toLightSpace=function(f){switch(f){case a.LightSpace.World:return this._sc.LightSpace.World;default:case a.LightSpace.Camera:return this._sc.LightSpace.Camera}};b.prototype.addLight=function(a){this._sc.addLight(this._toLightType(a.type),this._toLightSpace(a.space),this._toVector3(a.position),this._toRgb(a.color))};
b.prototype.setBloomEnabled=function(a){this._sc.setBloomEnabled(a)};b.prototype.setBloomThreshold=function(a){this._sc.setBloomThreshold(a)};b.prototype.setBloomThresholdRampWidth=function(a){this._sc.setBloomThresholdRampWidth(a)};b.prototype.setBloomIntensityScale=function(a){this._sc.setBloomIntensityScale(a)};b.prototype._toBlurIntervalUnit=function(f){switch(f){default:case a.BlurIntervalUnit.Pixels:return this._sc.BlurIntervalUnit.Pixels;case a.BlurIntervalUnit.ProportionOfWidth:return this._sc.BlurIntervalUnit.ProportionOfWidth;
case a.BlurIntervalUnit.ProportionOfHeight:return this._sc.BlurIntervalUnit.ProportionOfHeight}};b.prototype.setBloomLayers=function(f){for(var b=0;b<f.length;b++){var c=f[b];if(void 0!==c.blurInterval&&2!==c.blurInterval.length)throw new a.CommunicatorError("'blurInterval' must be an array containing a number followed by a BlurIntervalUnit");}this._sc.suspendDrawing();this._sc.setBloomLayerCount(f.length);for(b=0;b<f.length;++b)c=f[b],void 0!==c.intensity&&this._sc.setBloomIntensity(b,c.intensity),
void 0!==c.blurSamples&&this._sc.setBloomBlurSamples(b,c.blurSamples),void 0!==c.blurInterval&&this._sc.setBloomBlurInterval(b,c.blurInterval[0],this._toBlurIntervalUnit(c.blurInterval[1]));this._sc.resumeDrawing()};b.prototype.startComparison=function(a,b,c){var e=c&&c.sameColor?this._toRgb(c.sameColor):[0,0,0],d=c&&c.only1Color?this._toRgb(c.only1Color):[1,0,0];c=c&&c.only2Color?this._toRgb(c.only2Color):[0,1,0];this._sc.setComparisonColors(e,d,c);this._sc.startComparison(a,b)};b.prototype.endComparison=
function(){this._sc.endComparison()};b.prototype.setSimpleShadowColor=function(a){this._sc.setSimpleShadowColor(this._toRgb(a))};b.prototype.setSimpleShadowEnabled=function(a){this._sc.setSimpleShadowEnabled(a)};b.prototype.setSimpleShadowOpacity=function(a){this._sc.setSimpleShadowOpacity(a)};b.prototype.setGroundPlane=function(a,b){void 0!==b?this._sc.setGroundPlaneWithPosition(this._toVector3(a),this._toVector3(b)):this._sc.setGroundPlane(this._toVector3(a))};b.prototype.setSimpleShadowResolution=
function(a){this._sc.setSimpleShadowResolution(a)};b.prototype.setSimpleShadowBlurSamples=function(a){this._sc.setSimpleShadowBlurSamples(a)};b.prototype.setSimpleShadowBlurInterval=function(a){this._sc.setSimpleShadowBlurInterval(a)};b.prototype.setSimpleShadowInteractiveUpdateEnabled=function(a){void 0===a&&(a=!0);this._sc.setSimpleShadowInteractiveUpdateEnabled(a)};b.prototype.setSilhouetteColor=function(a){this._sc.setSilhouetteColor(this._toRgb(a))};b.prototype.setSilhouetteEnabled=function(a){void 0===
a&&(a=!0);this._sc.setSilhouetteEnabled(a)};b.prototype.setSilhouetteOpacity=function(a){this._sc.setSilhouetteOpacity(a)};b.prototype.setSilhouetteThreshold=function(a){this._sc.setSilhouetteThreshold(a)};b.prototype.setSilhouetteThresholdRampWidth=function(a){this._sc.setSilhouetteThresholdRampWidth(a)};b.prototype.setSimpleReflectionEnabled=function(a){void 0===a&&(a=!0);this._sc.setSimpleReflectionEnabled(a)};b.prototype.setSimpleReflectionBlurInterval=function(a,b){this._sc.setSimpleReflectionBlurInterval(a,
this._toBlurIntervalUnit(b))};b.prototype.setSimpleReflectionBlurSamples=function(a){this._sc.setSimpleReflectionBlurSamples(a)};b.prototype.setSimpleReflectionFadeAngle=function(a){this._sc.setSimpleReflectionFadeAngle(a)};b.prototype.setSimpleReflectionOpacity=function(a){this._sc.setSimpleReflectionOpacity(a)};b.prototype.setSimpleReflectionAttenuation=function(b,h,c){void 0===c&&(c=a.SimpleReflectionAttenuationUnit.World);this._sc.setSimpleReflectionAttenuation(b,h,c)};return b}();g.ScEngine=
c})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function b(a,f,c,e,d,g,n){this._position=a.copy();this._normal=f.copy();this._elementIndex=c;this._elementBits=d;this._bounding=g.copy();this._overlayIndex=e;this._isProximityFace=n}b.prototype.isProximityFace=function(){return this._isProximityFace};b.prototype.isCappingGeometry=function(){return-1===this._elementIndex};b.prototype.toJson=function(){return{position:this._position.toJson(),normal:this._normal.toJson(),cadFaceIndex:this._elementIndex,cadFaceBits:this._elementBits,
bounding:this._bounding.toJson(),overlayIndex:this._overlayIndex,isProximityFace:this._isProximityFace}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(h){var c=a.Point3.fromJson(h.position),e=a.Point3.fromJson(h.normal),d=a.Box.fromJson(h.bounding);return new b(c,e,h.cadFaceIndex,h.overlayIndex,h.cadFaceBits,d,!0===h.isProximityFace)};b.construct=function(a){return b.fromJson(a)};b.prototype.getPosition=function(){return this._position.copy()};b.prototype.getNormal=function(){return this._normal.copy()};
b.prototype.getCadFaceIndex=function(){return this._elementIndex};b.prototype.getCadFaceBits=function(){return this._elementBits};b.prototype.getBounding=function(){return this._bounding.copy()};b.prototype.overlayIndex=function(){return this._overlayIndex};return b}();g.FaceEntity=d;var e=function(){function b(f,c,e,d,l,g,n){this._lineSegmentVertices=[];this._elementIndex=f;this._elementBits=n;this._position=c.copy();this._bounding=l.copy();this._overlayIndex=g;if(e)for(0<=d&&(f=3*d,this._bestLineSegmentVertexIndex=
new a.Point3(e[f],e[f+1],e[f+2])),this._lineSegmentVertices.push(new a.Point3(e[0],e[1],e[2])),f=3;f<e.length;f+=6)this._lineSegmentVertices.push(new a.Point3(e[f],e[f+1],e[f+2]))}b.prototype.isCappingGeometry=function(){return-1===this._elementIndex};b.prototype.toJson=function(){for(var a=[],b=0,f=this._lineSegmentVertices;b<f.length;b++)a.push(f[b].toJson());return{lineId:this._elementIndex,lineBits:this._elementBits,position:this._position.toJson(),linePoints:a,bounding:this._bounding.copy(),
overlayIndex:this._overlayIndex}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(h){var c=a.Point3.fromJson(h.position),e=a.Box.fromJson(h.bounding),c=new b(h.lineId,c,null,-1,e,h.overlayIndex,0),e=0;for(h=h.linePoints;e<h.length;e++){var d=a.Point3.fromJson(h[e]);c._lineSegmentVertices.push(d)}return c};b.construct=function(a){return b.fromJson(a)};b.prototype.getLineId=function(){return this._elementIndex};b.prototype.getPosition=function(){return this._position.copy()};
b.prototype.getPoints=function(){return this._lineSegmentVertices};b.prototype.getBestVertex=function(){return this._bestLineSegmentVertexIndex?this._bestLineSegmentVertexIndex.copy():null};b.prototype.getLineBits=function(){return this._elementBits};b.prototype.getBounding=function(){return this._bounding.copy()};b.prototype.overlayIndex=function(){return this._overlayIndex};return b}();g.LineEntity=e;var c=function(){function b(a,f,c,e){this._position=a.copy();this._elementIndex=f;this._overlayIndex=
c;this._elementBits=e}b.fromJson=function(h){var c=a.Point3.fromJson(h.position);return new b(c,h.pointId,h.pointBits,h.overlayIndex)};b.construct=function(a){return b.fromJson(a)};b.prototype.toJson=function(){return{pointId:this._elementIndex,pointBits:this._elementBits,position:this._position.toJson(),overlayIndex:this._overlayIndex}};b.prototype.forJson=function(){return this.toJson()};b.prototype.getPosition=function(){return this._position.copy()};b.prototype.getPointBits=function(){return this._elementBits};
b.prototype.getPointId=function(){return this._elementIndex};b.prototype.overlayIndex=function(){return this._overlayIndex};return b}();g.PointEntity=c;var b=function(){return function(a){this._handle=a}}();g.IncrementalSelectionId=b;b=function(){function b(a,f,c,e,d){void 0===a&&(a=null);void 0===f&&(f=null);void 0===c&&(c=null);void 0===e&&(e=null);void 0===d&&(d=null);this._nodeId=a;this._inclusionKey=f;this._faceEntity=c;this._lineEntity=e;this._pointEntity=d}b.create=function(a,c,e,d,l){return new b(a,
c,e,d,l)};b.prototype.getSelectionType=function(){return null===this._nodeId?a.SelectionType.None:null!==this._faceEntity?a.SelectionType.Face:null!==this._lineEntity?a.SelectionType.Line:null!==this._pointEntity?a.SelectionType.Point:a.SelectionType.Part};b.prototype.toJson=function(){return{nodeId:this._nodeId,includeId:this._inclusionKey,faceEntity:this._faceEntity?this._faceEntity.toJson():null,lineEntity:this._lineEntity?this._lineEntity.toJson():null,pointEntity:this._pointEntity?this._pointEntity.toJson():
null}};b.prototype.forJson=function(){return this.toJson()};b._fromJson=function(a){return new b(a.nodeId,a.includeId,a.faceEntity?d.fromJson(a.faceEntity):null,a.lineEntity?e.fromJson(a.lineEntity):null,a.pointEntity?c.fromJson(a.pointEntity):null)};b.prototype.getFaceEntity=function(){return this._faceEntity};b.prototype.getLineEntity=function(){return this._lineEntity};b.prototype.getPointEntity=function(){return this._pointEntity};b.prototype.getNodeId=function(){return this._nodeId};b.prototype.getInclusionKey=
function(){return this._inclusionKey};b.prototype.getIncludeId=function(){return this.getInclusionKey()};b.prototype.getPosition=function(){return null!==this._faceEntity?this._faceEntity.getPosition():null!==this._lineEntity?this._lineEntity.getPosition():null!==this._pointEntity?this._pointEntity.getPosition():null};b.prototype.overlayIndex=function(){return this._faceEntity?this._faceEntity.overlayIndex():this._lineEntity?this._lineEntity.overlayIndex():this._pointEntity?this._pointEntity.overlayIndex():
null};b.prototype._setNodeId=function(a){this._nodeId=a};b.prototype.equals=function(a){return this._nodeId!==a._nodeId||this.getSelectionType()!==a.getSelectionType()?!1:this._faceEntity&&a._faceEntity?this._faceEntity.getCadFaceIndex()===a._faceEntity.getCadFaceIndex():this._lineEntity&&a._lineEntity?this._lineEntity.getLineId()===a._lineEntity.getLineId():this._pointEntity&&a._pointEntity?this._pointEntity.getPointId()===a._pointEntity.getPointId():!0};b.prototype._hash=function(){var a=null!==
this._nodeId?this._nodeId.toString(36):"",a=a+(";"+this.getSelectionType()+";");this._faceEntity&&(a+=this._faceEntity.getCadFaceIndex().toString(36));a+=";";this._lineEntity&&(a+=this._lineEntity.getLineId().toString(36));a+=";";this._pointEntity&&(a+=this._pointEntity.getPointId().toString(36));return a};b.prototype.isEntitySelection=function(){return null!==this._faceEntity||null!==this._lineEntity||null!==this._pointEntity};b.prototype.isNodeSelection=function(){return null!==this._nodeId};b.prototype.isNodeEntitySelection=
function(){return null!==this._nodeId&&this.isEntitySelection()};b.prototype.isFaceSelection=function(){return null!==this._nodeId&&null!==this._faceEntity};b.prototype.isLineSelection=function(){return null!==this._nodeId&&null!==this._lineEntity};b.prototype.isPointSelection=function(){return null!==this._nodeId&&null!==this._pointEntity};return b}();g.SelectionItem=b})(a.Selection||(a.Selection={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(a,f,h){this.faceItem=a;this.lineItem=f;this.pointItem=h}c.prototype.fetchMostRelevant=function(b){return null!==this.pointItem&&0!==(b&a.SelectionMask.Point)?this.pointItem:null!==this.lineItem&&0!==(b&a.SelectionMask.Line)?this.lineItem:null!==this.faceItem&&0!==(b&a.SelectionMask.Face)?this.faceItem:null};return c}();d.CompositeSelectionItem=e})(g.Internal||(g.Internal={}))})(a.Selection||(a.Selection={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){function d(e,c,b){var f=a.Point2.subtract(b,c),h=f.length();f.scale(((e.x-c.x)*(b.x-c.x)+(e.y-c.y)*(b.y-c.y))/(h*h));return a.Point2.add(c,f)}g.hasBits=function(a,c){return(a&c)===c};g.setBit=function(a,c,b){return b?a|c:a&~c};g.sleep=function(a){return new Promise(function(c){setTimeout(c,a)})};g.classFromString=function(a){a=a.split(".");for(var c=window||this,b=0;b<a.length;b++){if(void 0===c)return null;c=c[a[b]]}return"function"!==typeof c?null:c};g.pointInRect=function(a,
c,b){return a.x<c.x||a.x>c.x+b.x||a.y<c.y||a.y>c.y+b.y?!1:!0};g.closestPointOnLine2d=d;g.pointOnLineSegment2d=function(e,c,b,f){var h=d(e,c,b);return a.Point2.distance(e,h)<=f?h.x<Math.min(c.x,b.x)||h.x>Math.max(c.x,b.x)||h.y<Math.min(c.y,b.y)||h.y>Math.max(c.y,b.y)?!1:!0:!1};g.projectOnto=function(e,c){e=a.Point3.dot(c,e);var b=c.squaredLength();return a.Point3.scale(c,e/b)};g.majorAxis=function(e){var c=Math.abs(e.x),b=Math.abs(e.y);e=Math.abs(e.z);c=+c.toFixed(6);b=+b.toFixed(6);e=+e.toFixed(6);
return c>b&&c>e?new a.Point3(1,0,0):b>c&&b>e?new a.Point3(0,1,0):e>c&&e>b?new a.Point3(0,0,1):null};g.deepClone=function(a){return JSON.parse(JSON.stringify(a))};g.getWithDefault=function(a,c){return void 0===a?c:a}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){return function(a){this.futureItemHash=null;this.pastItemHash=a}}(),d=function(){function c(){this.part=this.point=this.line=this.face=this.none=0}c.prototype.update=function(b,f){switch(b.getSelectionType()){case a.SelectionType.None:0===f?--this.none:++this.none;break;case a.SelectionType.Face:0===f?--this.face:++this.face;break;case a.SelectionType.Line:0===f?--this.line:++this.line;break;case a.SelectionType.Point:0===f?--this.point:++this.point;break;case a.SelectionType.Part:0===
f?--this.part:++this.part}};c.prototype.sum=function(){return this.none+this.face+this.line+this.point+this.part};return c}(),e=function(){function c(b,f,h,c,e){var d=this;this._selectedItemsPruned=new Map;this._selectedItemsFull=new Map;this._selectedNodeCounts=new Map;this._temporalLinks=new Map;this._newestItemHash=this._oldestItemHash=null;this._selectedLayers=new Set;this._selectedTypes=new Set;this._nodeSelectionColor=new a.Color(255,255,0);this._nodeSelectionOutlineColor=new a.Color(255,255,
0);this._elementSelectionColor=a.Color.red();this._elementSelectionOutlineColor=a.Color.red();this._nodeElementHighlightMode=this._nodeHighlightMode=a.SelectionHighlightMode.HighlightAndOutline;this._pruneSelectionDescendants=this._selectParentIfSelected=this._highlightPointElementSelection=this._highlightLineElementSelection=this._highlightFaceElementSelection=this._highlightNodeSelection=!0;this._incrementalBlacklistedInstanceNodes=new Set;this._engine=f;this._view=h;this._model=c;this._modelStructure=
e;this._callbackManager=b;this._callbackManager.bind({_subtreeLoaded:function(b){for(var f=[],h=0;h<b.length;h++){var c=d._onSubtreeLoaded(b[h]);f.push(c)}return a.Internal.waitForAll(f)}})}c.deprecated=function(a,f,h){a;var c=h.value;h.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];this._callbackManager.trigger("deprecated","SelectionManager",f);return c.apply(this,a)};return h};c.prototype._init=function(){this._updateHighlightingMode();this._engine.setHighlightColorizeCompression(.7);
return Promise.resolve()};c.prototype.setPruneSelectionDescendants=function(a){this._pruneSelectionDescendants=a;this.clear()};c.prototype.getPruneSelectionDescendants=function(){return this._pruneSelectionDescendants};c.prototype.setSelectParentIfSelected=function(a){this._selectParentIfSelected=a};c.prototype.getSelectParentIfSelected=function(){return this._selectParentIfSelected};c.prototype.selectFromPoint=function(b,f,h){void 0===h&&(h=a.SelectionMode.Set);return __awaiter(this,void 0,void 0,
function(){var a;return __generator(this,function(c){switch(c.label){case 0:return[4,this._view.pickFromPoint(b,f)];case 1:return a=c.sent(),this._onSelectionItem(a,h),[2]}})})};c.prototype.selectAllFromPoint=function(b,f,h){void 0===h&&(h=a.SelectionMode.Set);return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(c){switch(c.label){case 0:return[4,this._view.pickAllFromPoint(b,f)];case 1:return a=c.sent(),this._onSelectionItems(a,h),[2]}})})};c.prototype.selectFromRay=
function(b,f,h){void 0===h&&(h=a.SelectionMode.Set);return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(c){switch(c.label){case 0:return[4,this._view.pickFromRay(b,f)];case 1:return a=c.sent(),this._onSelectionItem(a,h),[2]}})})};c.prototype.selectAllFromRay=function(b,f,h){void 0===h&&(h=a.SelectionMode.Set);return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(c){switch(c.label){case 0:return[4,this._view.pickAllFromRay(b,f)];case 1:return a=
c.sent(),this._onSelectionItems(a,h),[2]}})})};c.prototype._onSelectionItem=function(a,f){a.isNodeEntitySelection()?this._processSelection(a,f):this._triggerNullSelection()};c.prototype._onSelectionItems=function(b,f){f===a.SelectionMode.Set&&this.clear(!1);if(0===b.length)this._triggerNullSelection();else switch(f){case a.SelectionMode.Add:case a.SelectionMode.Set:this.add(b);break;case a.SelectionMode.Toggle:for(f=0;f<b.length;f++)this.toggle(b[f]);break;default:a.Internal.TypeAssertNever(f)}};
c.prototype.beginScreenSelectByArea=function(a,f,h){return this._view.beginScreenSelectByArea(a,f,h)};c.prototype.beginRayDrillSelection=function(a,f,h){return this._view.beginRayDrillSelection(a,f,h)};c.prototype.beginConvexPolyhedronSelection=function(a,f,h){return this._view.beginConvexPolyhedronSelection(a,f,h)};c.prototype.beginSphereSelection=function(a,f,h){return this._view.beginSphereSelection(a,f,h)};c.prototype.endIncrementalSelection=function(a){this._callbackManager.trigger("incrementalSelectionEnd");
return this._view.endIncrementalSelection(a)};c.prototype.endVolumeSelection=function(a){return this.endIncrementalSelection(a)};c.prototype.advanceIncrementalSelection=function(a,f){void 0===f&&(f=null);return __awaiter(this,void 0,void 0,function(){var h,c;return __generator(this,function(e){switch(e.label){case 0:return[4,this._view.advanceIncrementalSelection(a)];case 1:return h=e.sent(),null===h?[2,!1]:null===f?[3,3]:[4,Promise.all(h.map(f))];case 2:c=e.sent(),h=h.filter(function(a,b){return c[b]}),
e.label=3;case 3:return this.add(h),[2,!0]}})})};c.prototype.advanceVolumeSelection=function(a,f){void 0===f&&(f=null);return this.advanceIncrementalSelection(a,f)};c.prototype.isSelected=function(a){return this.contains(a)?!0:a.isNodeSelection()?null!==this._findAncestor(a):!1};c.prototype.contains=function(a){return this._selectedItemsPruned.has(a._hash())};c.prototype.containsParent=function(a){return this._findAncestor(a)};c.prototype._findAncestor=function(b){if(0<this._selectedItemsPruned.size)for(;;){b=
this._model.getNodeParent(b.getNodeId());if(null===b)break;b=a.Selection.SelectionItem.create(b);var f=b._hash();if(this._selectedItemsPruned.has(f))return b}return null};c.prototype.selectLayer=function(b,f){f===a.SelectionMode.Set&&this.clear();var h=[],c=this._model.getLayerIdsFromName(b);if(null!==c)for(var e=0;e<c.length;e++){var d=this._model.getNodesFromLayer(c[e],!0);if(null!==d)for(var l=0;l<d.length;l++)h.push(a.Selection.SelectionItem.create(d[l]))}c=this._selectedLayers.has(b);f===a.SelectionMode.Toggle&&
c?this.remove(h):(this.add(h),this._selectedLayers.add(b))};c.prototype.getSelectedLayers=function(){var a=[];this._selectedLayers.forEach(function(f){a.push(f)});return a};c.prototype.selectType=function(b,f){f===a.SelectionMode.Set&&this.clear();var h=[],c=this._model.getNodesByGenericType(b);null!==c&&c.forEach(function(b){h.push(a.Selection.SelectionItem.create(b))});c=this._selectedTypes.has(b);if(f===a.SelectionMode.Toggle&&c)for(b=0;b<h.length;b++)this.remove(h[b]);else this.add(h),this._selectedTypes.add(b)};
c.prototype.getSelectedTypes=function(){var a=[];this._selectedTypes.forEach(function(f){a.push(f)});return a};c.prototype.selectNode=function(b,f){void 0===f&&(f=a.SelectionMode.Set);if(null!==b&&this._modelStructure.isIdValid(b))return b=a.Selection.SelectionItem.create(b),this._processSelection(b,f),b.getSelectionType();this._processSelection(null,f);return a.SelectionType.None};c.prototype._triggerNullSelection=function(){this._callbackManager.trigger("selectionArray",[],!1)};c.prototype._isInAxisOverlay=
function(a){var f=a.getFaceEntity();return f||(f=a.getLineEntity())?1===f.overlayIndex():(a=a.getPointEntity())?1===a.overlayIndex():!1};c.prototype._getNodeCounts=function(a){a=a.getNodeId();var f=this._selectedNodeCounts.get(a);f||(f=new d,this._selectedNodeCounts.set(a,f));return f};c.prototype._addToFull=function(b,f){for(;this._selectedItemsFull.set(f,b);){b=this._model.getNodeParent(b.getNodeId());if(null===b)break;b=a.Selection.SelectionItem.create(b);f=b._hash()}};c.prototype._addItems=function(b){var f=
b.length;if(0!==f){this._callbackManager.trigger("incrementalSelectionBatchBegin");for(var h=[],c=0;c<f;++c){var e=b[c];this._addImpl(e,e._hash())&&(e=new a.Event.NodeSelectionEvent(e),h.push(e))}0===h.length?this._triggerNullSelection():this._callbackManager.trigger("selectionArray",h,!1);this._callbackManager.trigger("incrementalSelectionBatchEnd")}};c.prototype._addItem=function(b){this._addImpl(b,b._hash())?(b=new a.Event.NodeSelectionEvent(b),this._callbackManager.trigger("selectionArray",[b],
!1)):this._triggerNullSelection()};c.prototype.add=function(a){null===a?this._triggerNullSelection():Array.isArray(a)?this._addItems(a):this._addItem(a)};c.prototype._addImpl=function(b,f){if(b.getSelectionType()===a.SelectionType.None)return!1;if(this._isInAxisOverlay(b))return!0;if(this._selectedItemsPruned.has(f))return!1;if(this._pruneSelectionDescendants){if(null!==this._findAncestor(b))return!1;this._removeDescendants(b)}this._selectedItemsPruned.set(f,b);this._addToFull(b,f);this._getNodeCounts(b).update(b,
1);var h=this._newestItemHash;this._newestItemHash=f;this._oldestItemHash||(this._oldestItemHash=f);if(null!==h){var c=this._temporalLinks.get(h);c&&(c.futureItemHash=f)}h=new g(h);this._temporalLinks.set(f,h);this._updateSelection(b,!0,!0);if(this._modelStructure.getType(b.getNodeId())===a.NodeType.Pmi&&(b=this._modelStructure.getPmiTopologyReferences(b.getNodeId()),null!==b))for(f=0;f<b.length;f++){for(var c=b[f],h=c.body.getRuntimeId(),e=0,d=c.faceIds;e<d.length;e++)this._model.setNodeFaceHighlighted(h,
d[e],!0);e=0;for(c=c.edgeIds;e<c.length;e++)this._model.setNodeLineHighlighted(h,c[e],!0)}return!0};c.prototype._removeUpdateLayers=function(a){0<this._selectedLayers.size&&(a=a.getNodeId(),null!==a&&(a=this._model.getNodeLayerId(a),null!==a&&(a=this._model.getLayerName(a),null!==a&&this._selectedLayers.delete(a))))};c.prototype._removeUpdateTypes=function(a){0<this._selectedTypes.size&&(a=a.getNodeId(),null!==a&&(a=this._model.getNodeGenericType(a),null!==a&&this._selectedTypes.delete(a)))};c.prototype._removeFromFull=
function(b,f){this._removeUpdateLayers(b);this._removeUpdateTypes(b);if(this._selectedItemsFull.delete(f))for(f=0,b=this._model.getNodeChildren(b.getNodeId());f<b.length;f++){var h=a.Selection.SelectionItem.create(b[f]);this._removeFromFull(h,h._hash())}};c.prototype._removeItems=function(b){var f=this,h=[];b.forEach(function(b){f._removeImpl(b,b._hash())&&h.push(new a.Event.NodeSelectionEvent(b))});this._callbackManager.trigger("selectionArray",h,!0)};c.prototype._removeItem=function(b){this._removeImpl(b,
b._hash())&&(b=new a.Event.NodeSelectionEvent(b),this._callbackManager.trigger("selectionArray",[b],!0))};c.prototype.remove=function(a){Array.isArray(a)?this._removeItems(a):this._removeItem(a)};c.prototype._removeImpl=function(a,f){if(!this._selectedItemsPruned.delete(f))return!1;this._removeFromFull(a,f);var h=this._getNodeCounts(a);h.update(a,0);var c=this._temporalLinks.get(f);if(void 0!==c){this._temporalLinks.delete(f);if(null!==c.pastItemHash){var e=this._temporalLinks.get(c.pastItemHash);
e&&(e.futureItemHash=c.futureItemHash)}null!==c.futureItemHash&&(e=this._temporalLinks.get(c.futureItemHash))&&(e.pastItemHash=c.pastItemHash);this._oldestItemHash===f&&(this._oldestItemHash=c.futureItemHash);this._newestItemHash===f&&(this._newestItemHash=c.pastItemHash)}f=!0;0===h.sum()&&(f=!1,h=a.getNodeId(),this._selectedNodeCounts.delete(h));this._updateSelection(a,f,!1);return!0};c.prototype.toggle=function(b){var f=this._findAncestor(b);null!==f?null===b.getFaceEntity()&&null===b.getLineEntity()&&
null===b.getPointEntity()&&this._removeImplicit(b,f):(f=b._hash(),this._selectedItemsPruned.has(f)?this._removeImpl(b,f)&&(b=new a.Event.NodeSelectionEvent(b),this._callbackManager.trigger("selectionArray",[b],!0)):this._addImpl(b,f)&&(b=new a.Event.NodeSelectionEvent(b),this._callbackManager.trigger("selectionArray",[b],!1)))};c.prototype.set=function(a){this.clear(!1);this.add(a)};c.prototype.getResults=function(){var a=[];this.each(function(f){a.push(f)});return a};c.prototype.getResult=function(a){var f=
this.size();if(0>a||a>=f)return null;f=f-a-1;return a<=f?this._getItemFromOldest(a):this._getItemFromNewest(f)};c.prototype._getItemFromOldest=function(a){for(var f=this._oldestItemHash;f;){if(0===a--)return this._selectedItemsPruned.get(f)||null;f=this._temporalLinks.get(f).futureItemHash}return null};c.prototype._getItemFromNewest=function(a){for(var f=this._newestItemHash;f;){if(0===a--)return this._selectedItemsPruned.get(f)||null;f=this._temporalLinks.get(f).pastItemHash}return null};c.prototype.getFirst=
function(){return null!==this._oldestItemHash?this._selectedItemsPruned.get(this._oldestItemHash)||null:null};c.prototype.getLast=function(){return null!==this._newestItemHash?this._selectedItemsPruned.get(this._newestItemHash)||null:null};c.prototype.size=function(){return this._selectedItemsPruned.size};c.prototype.each=function(a){for(var f=this._oldestItemHash;f;){var h=this._selectedItemsPruned.get(f);a(h);f=this._temporalLinks.get(f).futureItemHash}};c.prototype.clear=function(a){void 0===a&&
(a=!0);this._selectedLayers.clear();this._selectedTypes.clear();this._resetSelectionMaterials();this._selectedItemsPruned.clear();this._selectedItemsFull.clear();this._selectedNodeCounts.clear();this._temporalLinks.clear();this._newestItemHash=this._oldestItemHash=null;a&&this._triggerNullSelection()};c.prototype.setNodeSelectionColor=function(a){this._setNodeSelectionColor(a);return Promise.resolve()};c.prototype._setNodeSelectionColor=function(a){this._nodeSelectionColor.assign(a);this._updateHighlightingMode()};
c.prototype.getNodeSelectionColor=function(){return this._nodeSelectionColor.copy()};c.prototype.setNodeSelectionOutlineColor=function(a){this._setNodeSelectionOutlineColor(a);return Promise.resolve()};c.prototype._setNodeSelectionOutlineColor=function(a){this._nodeSelectionOutlineColor.assign(a);this._updateHighlightingMode()};c.prototype.getNodeSelectionOutlineColor=function(){return this._nodeSelectionOutlineColor.copy()};c.prototype.setNodeElementSelectionColor=function(a){this._setNodeElementSelectionColor(a);
return Promise.resolve()};c.prototype._setNodeElementSelectionColor=function(a){this._elementSelectionColor.assign(a);this._updateHighlightingMode()};c.prototype.getNodeElementSelectionColor=function(){return this._elementSelectionColor.copy()};c.prototype.setNodeElementSelectionOutlineColor=function(a){this._setNodeElementSelectionOutlineColor(a);return Promise.resolve()};c.prototype._setNodeElementSelectionOutlineColor=function(a){this._elementSelectionOutlineColor.assign(a);this._updateHighlightingMode()};
c.prototype.getNodeElementSelectionOutlineColor=function(){return this._elementSelectionOutlineColor.copy()};c.prototype.getHighlightFaceElementSelection=function(){return this._highlightFaceElementSelection};c.prototype.setHighlightFaceElementSelection=function(a){this._highlightFaceElementSelection=a;return this._updateSelectionMaterials()};c.prototype.setNodeSelectionHighlightMode=function(a){this._setNodeSelectionHighlightMode(a);return Promise.resolve()};c.prototype._setNodeSelectionHighlightMode=
function(a){this._nodeHighlightMode=a;this._updateHighlightingMode()};c.prototype.getNodeSelectionHighlightMode=function(){return this._nodeHighlightMode};c.prototype.setNodeElementSelectionHighlightMode=function(a){this._setNodeElementSelectionHighlightMode(a);return Promise.resolve()};c.prototype._setNodeElementSelectionHighlightMode=function(a){this._nodeElementHighlightMode=a;this._updateHighlightingMode()};c.prototype.getNodeElementSelectionHighlightMode=function(){return this._nodeElementHighlightMode};
c.prototype.setHighlightNodeSelection=function(a){this._highlightNodeSelection=a;return this._updateSelectionMaterials()};c.prototype.getHighlightNodeSelection=function(){return this._highlightNodeSelection};c.prototype.getHighlightLineElementSelection=function(){return this._highlightLineElementSelection};c.prototype.getHighlightPointElementSelection=function(){return this._highlightPointElementSelection};c.prototype.setHighlightLineElementSelection=function(a){this._highlightLineElementSelection=
a;return this._updateSelectionMaterials()};c.prototype.setHighlightPointElementSelection=function(a){this._highlightPointElementSelection=a;return this._updateSelectionMaterials()};c.prototype.setPickTolerance=function(a){this._engine.setPickTolerance(a)};c.prototype.getPickTolerance=function(){return this._engine.getPickTolerance()};c.prototype.exportSelectionData=function(){for(var a=[],f=0,h=this.getResults();f<h.length;f++)a.push(h[f].toJson());return a};c.prototype.loadSelectionData=function(b){this.clear(!1);
if("string"===typeof b&&(b=JSON.parse(b),!(b instanceof Array)))throw new a.ParseError("Expected JSON depicting an Array.");for(var f=[],h=0;h<b.length;h++){var c=a.Selection.SelectionItem._fromJson(b[h]);c.isNodeSelection()&&f.push(c)}this.add(f)};c.prototype._pathToParent=function(b,f){for(var h=[];!b.equals(f);){h.push(b);b=this._model.getNodeParent(b.getNodeId());if(null===b)break;b=a.Selection.SelectionItem.create(b)}return h};c.prototype._removeImplicit=function(b,f){for(var h=this._pathToParent(b,
f),c=f;0<h.length;){this.remove(c);f=[];for(var e=0,c=this._model.getNodeChildren(c.getNodeId());e<c.length;e++){var d=a.Selection.SelectionItem.create(c[e]);f.push(d)}this.add(f);c=h.pop()}console.assert(b===c);this.remove(b)};c.prototype._removeDescendants=function(b){var f=0;for(b=this._model.getNodeChildren(b.getNodeId());f<b.length;f++){var h=a.Selection.SelectionItem.create(b[f]);this._removeDescendantsRecursive(h)}};c.prototype._removeDescendantsRecursive=function(b){var f=b._hash();if(this._selectedItemsFull.delete(f))for(this._removeImpl(b,
f),f=0,b=this._model.getNodeChildren(b.getNodeId());f<b.length;f++){var h=a.Selection.SelectionItem.create(b[f]);this._removeDescendantsRecursive(h)}};c.prototype._processSelection=function(b,f){switch(f){case a.SelectionMode.Add:this.add(b);break;case a.SelectionMode.Set:this.set(b);break;case a.SelectionMode.Toggle:null!==b&&this.toggle(b)}};c.prototype._resetSelectionMaterials=function(){0<this._selectedItemsPruned.size&&this._engine.clearHighlight()};c.prototype._updateSelectionMaterials=function(){var b=
this;this._resetSelectionMaterials();var f=[];this._selectedItemsPruned.forEach(function(a){a&&f.push(b._updateSelection(a,!0,!0))});this._highlightNodeSelection&&f.push(this._model.setNodesHighlighted([],!0));return a.Internal.waitForAll(f)};c.prototype._updateSelection=function(b,f,h){var c=[],e=b.getNodeId();this._highlightNodeSelection&&c.push(this._model.setNodesHighlighted([e],f));this._model.getNodeType(e)!==a.NodeType.Pmi&&(f=b.getFaceEntity(),this._highlightFaceElementSelection&&null!==f&&
!f.isCappingGeometry()&&c.push(this._model.setNodeFaceHighlighted(e,f.getCadFaceIndex(),h)),f=b.getLineEntity(),this._highlightLineElementSelection&&null!==f&&!f.isCappingGeometry()&&c.push(this._model.setNodeLineHighlighted(e,f.getLineId(),h)),b=b.getPointEntity(),this._highlightPointElementSelection&&null!==b&&c.push(this._model.setNodePointHighlighted(e,b.getPointId(),h)));return a.Internal.waitForAll(c)};c.prototype._updateHighlightingMode=function(){switch(this._nodeHighlightMode){case a.SelectionHighlightMode.HighlightOnly:this._engine.setNodeHighlightColor(this._nodeSelectionColor,
null);break;case a.SelectionHighlightMode.OutlineOnly:this._engine.setNodeHighlightColor(null,this._nodeSelectionOutlineColor);break;case a.SelectionHighlightMode.HighlightAndOutline:this._engine.setNodeHighlightColor(this._nodeSelectionColor,this._nodeSelectionOutlineColor)}switch(this._nodeElementHighlightMode){case a.SelectionHighlightMode.HighlightOnly:this._engine.setElementHighlightColor(this._elementSelectionColor,null);break;case a.SelectionHighlightMode.OutlineOnly:this._nodeHighlightMode===
a.SelectionHighlightMode.OutlineOnly?this._engine.setElementHighlightColor(null,this._elementSelectionOutlineColor):this._engine.setElementHighlightColor(this._nodeSelectionColor,this._elementSelectionOutlineColor);break;case a.SelectionHighlightMode.HighlightAndOutline:this._engine.setElementHighlightColor(this._elementSelectionColor,this._elementSelectionOutlineColor)}};c.prototype._onSubtreeLoaded=function(b){b=a.Selection.SelectionItem.create(b);return this.isSelected(b)?this._updateSelection(b,
!0,!0):Promise.resolve()};__decorate([c.deprecated],c.prototype,"endVolumeSelection",null);__decorate([c.deprecated],c.prototype,"advanceVolumeSelection",null);return c}();a.SelectionManager=e})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function e(c,b,f){var h=this;this._backgroundSheetShadowInstanceId=this._backgroundSheetInstanceId=this._backgroundSheetMeshId=this._activeSheetId=null;this._backgroundSheetEnabled=!1;this._boundingUsedForBackgroundSheet=a.Box.invalid();this._previousBackgroundGradient=null;this._backgroundColor=new a.Color(180,180,180);this._previousSheetColor=a.Color.white();this._sheetColor=a.Color.white();this._previousSheetShadowColor=new a.Color(75,75,75);this._sheetShadowColor=
new a.Color(75,75,75);this._viewer=c;this._callbackManager=b;f||this._viewer.setCallbacks({_modelStructureHeaderParsed:function(){return __awaiter(h,void 0,void 0,function(){return __generator(this,function(a){return this._viewer.model.isDrawing()?[2,this.enableBackgroundSheet(!0)]:[2]})})},modelSwitched:function(){h.enableBackgroundSheet(h._viewer.model.isDrawing())},_resetAssemblyTreeBegin:function(){return __awaiter(h,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,
this.enableBackgroundSheet(!1)];case 1:return a.sent(),console.assert(!this._backgroundSheetEnabled),this._backgroundSheetShadowInstanceId=this._backgroundSheetInstanceId=this._backgroundSheetMeshId=this._activeSheetId=null,[2]}})})}})}e.prototype.setActiveSheetId=function(a,b,f){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(h){switch(h.label){case 0:if(this._activeSheetId===a)return[2];this._activeSheetId=a;return[4,this._markupManager._setActiveMarkupView(null)];
case 1:h.sent();if(!b)return[3,4];this._viewer.pauseRendering();return[4,this._viewer.view.isolateNodes([this._activeSheetId],0,f)];case 2:return h.sent(),[4,this._refreshBackgroundSheet()];case 3:h.sent(),this._viewer.resumeRendering(),h.label=4;case 4:return this._callbackManager.trigger("sheetActivated",this._activeSheetId),[2]}})})};e.prototype.getActiveSheetId=function(){return this._activeSheetId};e.prototype.setMarkupManager=function(a){this._markupManager=a};e.prototype._createBackgroundSheetMesh=
function(){var c=new a.MeshData;c.addFaces([0,0,0,1,0,0,0,1,0,0,1,0,1,0,0,1,1,0],[0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1]);c.setBackfacesEnabled(!0);return this._viewer.model.createMesh(c)};e.prototype._createBackgroundSheetMatrix=function(c,b){var f=c.min,h=c.max,k=this._viewer.view.getCamera();c=k.getPosition();var e=k.getTarget(),d=a.Point3.subtract(e,c);c=h.x-f.x;var e=h.y-f.y,l=Math.max(.1*c,.1*(h.z-f.z)),g=f.x+.5*c,n=f.y+.5*e,r=Math.max(.05*c,.05*e);c+=r;e+=r;g-=.5*c;n-=.5*e;f=0<d.z?h.z+l:f.z-
l;b&&(b=k.getUp(),k=.3*r,g+=k,0<b.y&&(k=-k),n+=k,f+=0<d.z?l:-l);b=new a.Matrix;b.setTranslationComponent(g,n,f);b.setScaleComponent(c,e,1);return b};e.prototype._createBackgroundSheetInstance=function(c,b,f){var h="2d_drawing_background_sheet";f&&(h+="_shadow");c=new a.MeshInstanceData(c,b,h,f?this._sheetShadowColor:this._sheetColor,null,null,a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotSelect|a.MeshInstanceCreationFlags.OverrideSceneVisibility|
a.MeshInstanceCreationFlags.DoNotLight|a.MeshInstanceCreationFlags.DoNotOutlineHighlight|a.MeshInstanceCreationFlags.AlwaysDraw|a.MeshInstanceCreationFlags.ExcludeBounding);return this._viewer.model.createMeshInstance(c,null,!1,!0)};e.prototype._deleteBackgroundSheetInstances=function(){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(b){switch(b.label){case 0:return c=[],null!==this._backgroundSheetInstanceId&&(c.push(this._backgroundSheetInstanceId),this._backgroundSheetInstanceId=
null),null!==this._backgroundSheetShadowInstanceId&&(c.push(this._backgroundSheetShadowInstanceId),this._backgroundSheetShadowInstanceId=null),0<c.length?[4,this._viewer.model.deleteMeshInstances(c)]:[3,2];case 1:b.sent(),this._boundingUsedForBackgroundSheet=a.Box.invalid(),b.label=2;case 2:return[2]}})})};e.prototype._refreshBackgroundSheet=function(){return __awaiter(this,void 0,void 0,function(){var a,b,f,h,k,e,d;return __generator(this,function(l){switch(l.label){case 0:return this._viewer.model.isDrawing()?
null===this._backgroundSheetMeshId?(this._backgroundSheetMeshId=this._createBackgroundSheetMesh(),[2,this._refreshBackgroundSheet()]):[4,this._backgroundSheetMeshId]:[2];case 1:a=l.sent();if(!this._backgroundSheetEnabled)return[2,this._deleteBackgroundSheetInstances()];this._viewer.view.setBackgroundColor(this._backgroundColor,this._backgroundColor);return[4,this._viewer.model.getModelBounding(!0,!1)];case 2:return b=l.sent(),this._boundingUsedForBackgroundSheet.equals(b)&&this._sheetColor.equals(this._previousSheetColor)&&
this._sheetShadowColor.equals(this._previousSheetShadowColor)?[2]:[4,this._deleteBackgroundSheetInstances()];case 3:return l.sent(),console.assert(this._boundingUsedForBackgroundSheet.isDegenerate()),this._boundingUsedForBackgroundSheet=b,this._previousSheetColor=this._sheetColor,this._previousSheetShadowColor=this._sheetShadowColor,f=this._createBackgroundSheetMatrix(b,!1),h=this._createBackgroundSheetMatrix(b,!0),[4,this._createBackgroundSheetInstance(a,f,!1)];case 4:return k=l.sent(),[4,this._createBackgroundSheetInstance(a,
h,!0)];case 5:return e=l.sent(),d=this._deleteBackgroundSheetInstances(),d,this._backgroundSheetInstanceId=k,this._backgroundSheetShadowInstanceId=e,[2]}})})};e.prototype.setSheetColors=function(a,b,f){this._backgroundColor=a.copy();this._sheetColor=b.copy();this._sheetShadowColor=f.copy();return this._refreshBackgroundSheet()};e.prototype.getSheetBackgroundColor=function(){return this._backgroundColor};e.prototype.getSheetColor=function(){return this._sheetColor};e.prototype.getSheetShadowColor=
function(){return this._sheetShadowColor};e.prototype.enableBackgroundSheet=function(a){return __awaiter(this,void 0,void 0,function(){var b,f;return __generator(this,function(h){switch(h.label){case 0:return this._viewer.model.isDrawing()||(a=!1),this._viewer.pauseRendering(),this._backgroundSheetEnabled!==a&&(b=this._viewer.view,a?this._previousBackgroundGradient=b.getBackgroundColor():null!==this._previousBackgroundGradient&&(f=this._previousBackgroundGradient,b.setBackgroundColor(f.top,f.bottom))),
(this._backgroundSheetEnabled=a)?[4,this._refreshBackgroundSheet()]:[3,2];case 1:return h.sent(),[3,4];case 2:return[4,this._deleteBackgroundSheetInstances()];case 3:h.sent(),h.label=4;case 4:return this._viewer.resumeRendering(),[2]}})})};e.prototype.getBackgroundSheetEnabled=function(){return this._backgroundSheetEnabled};e.prototype.startComparison=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var h;return __generator(this,function(k){switch(k.label){case 0:return h=this._viewer.view,
h.startComparison([a],[b],f),[4,this.setActiveSheetId(a,!1,!1)];case 1:return k.sent(),[4,h.isolateNodes([a,b],0,!0)];case 2:return k.sent(),[4,this._refreshBackgroundSheet()];case 3:return k.sent(),[2]}})})};e.prototype.endComparison=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return null===this._activeSheetId?[2]:[4,this.setActiveSheetId(this._activeSheetId,!0,!1)];case 1:return a.sent(),this._viewer.view.endComparison(),[2]}})})};
return e}();g.SheetManager=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){var g=function(){return function(a,e){void 0===a&&(a=0);void 0===e&&(e=0);this.width=a;this.height=e}}();a.SnapshotConfig=g})(Communicator||(Communicator={}));
(function(a){(function(g){function d(a){var b=document.createElement("canvas");b.width=a.width;b.height=a.height;b.getContext("2d").drawImage(a,0,0);return b}function e(a){if(a instanceof HTMLCanvasElement&&0<a.clientWidth&&0<a.clientHeight)return a;for(var b=0;b<a.childNodes.length;b++){var c=a.childNodes.item(b);if(c=e(c))return c}return null}function c(b,h){var c=b.getContext("2d");if(null===c)throw new a.CommunicatorError("failed to create 2D canvas context");for(var e=document.body.getBoundingClientRect(),
d=0;d<h.length;d++)c.drawImage(h[d],e.left,e.top);var l=g.OpenPromise.create(),m=new Image;m.src=b.toDataURL();m.onload=function(){l.resolve(m)};return l}var b=function(){function b(a,f){this._domElements=a;this._config=f}b.prototype._extractMarkupSvgAsCanvas=function(){for(var a=this._domElements.getMarkupSvgElement(),b=(new XMLSerializer).serializeToString(a),a=b,f=(new DOMParser).parseFromString(a,"text/xml"),b=f.getElementsByTagName("defs"),c=[],e=0;e<b.length;e++)for(var g=b.item(e).getElementsByTagName("marker"),
n=0;n<g.length;n++){var r=g.item(n);c.push(r)}b=[];g=f.getElementsByTagName("line");for(e=0;e<g.length;e++)if(f=g.item(e),null!==f.style.marker&&0<f.style.marker.length){for(var n=f.style.marker.indexOf("#")+1,r=f.style.marker.indexOf('"',n+1),r=f.style.marker.substring(n,r),t=null,u=null,n=0;n<c.length;n++)if(c[n].id===r){t=c[n];u=c[n+1];break}b.push({line:f,start:t,end:u})}for(c=a.indexOf("marker: url");0<=c;){e=a.indexOf(")",c)+1;f=a.substring(c,e);n=f.indexOf("#")+1;g=f.indexOf('"',n);r=f.indexOf("&quot",
n+11+1);t=g;if(0>g||r<g)t=r;n=f.substring(n,t);g=0;for(r=b;g<r.length;g++)if(f=r[g],t=f.start,f=f.end,null!==t&&null!==f&&t.id===n){n="marker-start: url('#"+t.id+"');";n+="marker-end: url('#"+f.id+"')";a=a.slice(0,c)+n+a.slice(e);break}c=a.indexOf("marker: url",e+1)}b=a;a=document.createElement("canvas");document.body.appendChild(a);canvg(a,b);b=d(a);document.body.removeChild(a);return b};b.prototype._extractRedlineSvgAsCanvas=function(a,b){var f=this._domElements.getRedlineSvgElement();f.setAttribute("width",
""+a);f.setAttribute("height",""+b);f=(new XMLSerializer).serializeToString(f);f=f.replace("width: 100%;","width: "+a+";");f=f.replace("height: 100%;","height: "+b+";");a=document.createElement("canvas");document.body.appendChild(a);canvg(a,f);b=d(a);document.body.removeChild(a);return b};b.prototype._extractRedlineAsCanvas=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){a=this._domElements.getRedlineElement();return[2,html2canvas(a,{background:void 0})]})})};
b.prototype.capture=function(b){return __awaiter(this,void 0,void 0,function(){var f,q,p,l,g;return __generator(this,function(n){switch(n.label){case 0:f=e(b);if(null===f)throw new a.CommunicatorError("failed to find canvas");q=document.createElement("canvas");q.width=this._config.width||f.clientWidth;q.height=this._config.height||f.clientHeight;q.style.width="100%";q.style.height="100%";p=[];p.push(d(f));p.push(this._extractMarkupSvgAsCanvas());p.push(this._extractRedlineSvgAsCanvas(q.width,q.height));
g=(l=p).push;return[4,this._extractRedlineAsCanvas()];case 1:return g.apply(l,[n.sent()]),[2,c(q,p)]}})})};return b}();g.Snapshot=b})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function b(){this._strokeWidth=1;this._strokeColor=a.Color.black()}b.prototype._assign=function(a){this._strokeWidth=a._strokeWidth;this._strokeColor.assign(a._strokeColor)};b.prototype.setStrokeColor=function(a){this._strokeColor.assign(a)};b.prototype.getStrokeColor=function(){return this._strokeColor.copy()};b.prototype.setStrokeWidth=function(a){this._strokeWidth=a};b.prototype.getStrokeWidth=function(){return this._strokeWidth};return b}();
d.StrokedShape=e;var c=function(b){function h(){var h=null!==b&&b.apply(this,arguments)||this;h._fillColor=a.Color.black();h._fillOpacity=1;return h}__extends(h,b);h.prototype._assign=function(a){b.prototype._assign.call(this,a);this._fillColor.assign(a._fillColor);this._fillOpacity=a._fillOpacity};h.prototype.getFillOpacity=function(){return this._fillOpacity};h.prototype.setFillOpacity=function(a){this._fillOpacity=a};h.prototype.setFillColor=function(a){this._fillColor.assign(a)};h.prototype.getFillColor=
function(){return this._fillColor.copy()};return h}(e);d.FilledShape=c;var b;(function(a){a[a.None=0]="None";a[a.Arrowhead=1]="Arrowhead";a[a.Circle=2]="Circle"})(b=d.EndcapType||(d.EndcapType={}));e=function(f){function h(){var h=null!==f&&f.apply(this,arguments)||this;h._startEndcapType=b.None;h._startEndcapColor=a.Color.black();h._startEndcapSize=9;h._endEndcapType=b.None;h._endEndcapColor=a.Color.black();h._endEndcapSize=9;h._endcapsInverted=!1;return h}__extends(h,f);h.prototype._assign=function(a){f.prototype._assign.call(this,
a);this._startEndcapType=a._startEndcapType;this._startEndcapColor.assign(a._startEndcapColor);this._startEndcapSize=a._startEndcapSize;this._endEndcapType=a._endEndcapType;this._endEndcapColor.assign(a._endEndcapColor);this._endEndcapSize=a._endEndcapSize;this._endcapsInverted=a._endcapsInverted};h.prototype.getStartEndcapType=function(){return this._startEndcapType};h.prototype.setStartEndcapType=function(a){this._startEndcapType=a};h.prototype.getStartEndcapColor=function(){return this._startEndcapColor.copy()};
h.prototype.setStartEndcapColor=function(a){this._startEndcapColor.assign(a)};h.prototype.getStartEndcapSize=function(){return this._startEndcapSize};h.prototype.setStartEndcapSize=function(a){this._startEndcapSize=a};h.prototype.getEndEndcapType=function(){return this._endEndcapType};h.prototype.setEndEndcapType=function(a){this._endEndcapType=a};h.prototype.setEndcapType=function(a){this._endEndcapType=this._startEndcapType=a};h.prototype.getEndEndcapSize=function(){return this._endEndcapSize};
h.prototype.setEndEndcapSize=function(a){this._endEndcapSize=a};h.prototype.getEndEndcapColor=function(){return this._endEndcapColor.copy()};h.prototype.setEndEndcapColor=function(a){this._endEndcapColor.assign(a)};h.prototype.getEndcapsInverted=function(){return this._endcapsInverted};h.prototype.setEndcapsInverted=function(a){this._endcapsInverted=a};return h}(e);d.EndcapShape=e})(g.Shape||(g.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(a){function b(){var h=null!==a&&a.apply(this,arguments)||this;h._borderRadius=0;return h}__extends(b,a);b.prototype._assign=function(b){a.prototype._assign.call(this,b);this._borderRadius=b._borderRadius};b.prototype.getBorderRadius=function(){return this._borderRadius};b.prototype.setBorderRadius=function(a){this._borderRadius=a};return b}(d.FilledShape);d.RectangleBase=e;var c=function(b){function h(h,c){var e=b.call(this)||this;e._position=
a.Point2.zero();e._size=a.Point2.zero();h&&e._position.assign(h);c&&e._size.assign(c);return e}__extends(h,b);h.prototype._assign=function(a){b.prototype._assign.call(this,a);this._position.assign(a._position);this._size.assign(a._size)};h.prototype.setPosition=function(a){this._position.assign(a)};h.prototype.getPosition=function(){return this._position.copy()};h.prototype.setSize=function(a){this._size.assign(a)};h.prototype.getSize=function(){return this._size.copy()};return h}(e);d.Rectangle=
c;var b=function(){return function(a,b){this.position=a.copy();this.size=b.copy()}}();d._MarkupRectangleData=b;e=function(a){function h(){var b=null!==a&&a.apply(this,arguments)||this;b._rectangles=[];return b}__extends(h,a);h.prototype.clear=function(){this._rectangles=[]};h.prototype.addRectangle=function(a,f){this._rectangles.push(new b(a,f))};h.prototype.getRectangles=function(){return this._rectangles};return h}(e);d.RectangleCollection=e})(g.Shape||(g.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||
(Communicator={}));
(function(a){(function(g){(function(d){var e=function(a){function b(){var h=a.call(this)||this;h._fontFamily=null;h._fontSize=12;h.setStrokeWidth(0);return h}__extends(b,a);b.prototype._assign=function(b){a.prototype._assign.call(this,b);this._fontFamily=b._fontFamily;this._fontSize=b._fontSize};b.prototype.getFontFamily=function(){return this._fontFamily};b.prototype.setFontFamily=function(a){this._fontFamily=a};b.prototype.setFontSize=function(a){this._fontSize=a};b.prototype.getFontSize=function(){return this._fontSize};
return b}(d.FilledShape);d.TextMarkupBase=e;var c=function(b){function h(h,c){var e=b.call(this)||this;e._position=a.Point2.zero();e._text="";c&&(e._position=c.copy());h&&e.setText(h);return e}__extends(h,b);h.prototype._assign=function(a){b.prototype._assign.call(this,a);this._text=a._text;this._position.assign(a._position)};h.prototype.setPosition=function(a){this._position.assign(a)};h.prototype.getPosition=function(){return this._position};h.prototype.setText=function(a){this._text=a};h.prototype.getText=
function(){return this._text};return h}(e);d.Text=c;var b=function(){return function(a,b){a&&(this.text=a);b&&(this.position=b.copy())}}();d._MarkupTextData=b;e=function(a){function h(){var b=null!==a&&a.apply(this,arguments)||this;b._textStrings=[];return b}__extends(h,a);h.prototype.clear=function(){this._textStrings=[]};h.prototype.addString=function(a,f){this._textStrings.push(new b(a,f))};h.prototype.getStrings=function(){return this._textStrings};return h}(e);d.TextCollection=e})(g.Shape||(g.Shape=
{}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(){this._behindView=!1}a.prototype.remove=function(){};a.prototype.draw=function(){};a.prototype.hit=function(a){a;return!1};a.prototype.onSelect=function(){};a.prototype.onDeselect=function(){};a.prototype.toJson=function(){return{}};a.prototype.forJson=function(){return this.toJson()};a.prototype.getClassName=function(){return"Communicator.Markup.MarkupItem"};return a}();a.MarkupItem=d})(a.Markup||(a.Markup={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){var d=function(b){function f(f){var c=b.call(this)||this;c._position=new a.Point2(10,10);c._nextItemPosition=a.Point2.zero();c._statItemOffset=new a.Point2(5,5);c._maxStatWidth=0;c._viewer=f;c._backgroundPanel=new a.Markup.Shape.Rectangle(c._position,new a.Point2(300,100));c._backgroundPanel.setFillColor(a.Color.white());c._backgroundPanel.setStrokeWidth(0);c._statsText=new a.Markup.Shape.TextCollection;return c}__extends(f,b);f.prototype.draw=function(){this._updateBackgroundSize();var a=
this._viewer.markupManager.getRenderer();a.drawRectangle(this._backgroundPanel);a.drawTexts(this._statsText)};f.prototype.clearStatsText=function(){this._statsText.clear();this._nextItemPosition.assign(this._position)};f.prototype.setPosition=function(a){this._position.assign(a);this._backgroundPanel.setPosition(this._position)};f.prototype.addStatistic=function(b,f){var c=a.Point2.add(this._nextItemPosition,this._statItemOffset);this._statsText.addString(b+": "+f,c);this._nextItemPosition.y+=this._statsText.getFontSize()};
f.prototype._updateBackgroundSize=function(){for(var b=this._viewer.markupManager.getRenderer(),f=this._statsText.getStrings(),c=this._statsText.getFontSize(),e=0;e<f.length;e++){var d=b.measureText(f[e].text,this._statsText);this._maxStatWidth=Math.max(this._maxStatWidth,d.x)}this._backgroundPanel.setSize(new a.Point2(2*this._statItemOffset.x+this._maxStatWidth,f.length*(c+this._statItemOffset.y)))};return f}(a.Markup.MarkupItem),e=function(){return function(){}}();g.StatisticMap=e;var c=function(){function a(b,
h){this._statisticsDisplayHandle=null;this._statistics=new e;this._viewer=h;this._callbackManager=b;this._initEvents();this._statisticsDisplay=new d(this._viewer)}a.prototype._initEvents=function(){var a=this;this._updateFunc=function(){a.update()};this._callbackManager.bind({frameDrawn:this._updateFunc})};a.prototype.update=function(){var a=this,b=this._viewer.getStatistics().then(function(b){a._statistics=b;a._statisticsDisplay.clearStatsText();b=0;for(var h=Object.keys(a._statistics);b<h.length;b++){var c=
h[b];a._statisticsDisplay.addStatistic(c,a._statistics[c].toString())}});b};a.prototype.isShown=function(){return null!==this._statisticsDisplayHandle};a.prototype.getStatistics=function(){return this._statistics};a.prototype.showDisplay=function(){this.isShown()||(this.update(),this._statisticsDisplayHandle=this._viewer.markupManager.registerMarkup(this._statisticsDisplay))};a.prototype.hideDisplay=function(){this.isShown()&&(this._viewer.markupManager.unregisterMarkup(this._statisticsDisplayHandle),
this._statisticsDisplayHandle=null)};return a}();g.Statistics=c})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){return function(){this.svgXmlPrologEnabled=!0;this.svgBackgroundCssColor="";this.linesDrawModelLinesEnabled=this.silhouettesEnabled=!0;this.linesStrokeWidth=20;this.linesCssColor="#000000";this.linesClipZNudgeFactor=this.linesClipProximityToPlane=5.5;this.polygonsForceDrawCssColor="";this.logDiagnostics=this.logProgress=!1}}();a.SvgConfig=g})(Communicator||(Communicator={}));
(function(a){(function(a){a[a.Rgba32=0]="Rgba32";a[a.Rgb24=1]="Rgb24";a[a.Gray8=2]="Gray8";a[a.GrayAlpha16=3]="GrayAlpha16";a[a.Jpeg=4]="Jpeg";a[a.Png=5]="Png"})(a.ImageFormat||(a.ImageFormat={}));(function(a){a[a.Clamp=0]="Clamp";a[a.Repeat=1]="Repeat"})(a.TextureTiling||(a.TextureTiling={}));(function(a){a[a.UV=0]="UV"})(a.TextureParameterization||(a.TextureParameterization={}));(function(a){a[a.Decal=1]="Decal"})(a.TextureModifier||(a.TextureModifier={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function e(c){this._timeoutDurationMinutes=15;this._timeoutWarningMinutes=14;this._timer=new a.Timer;this._enabled=!0;this._callbackManager=c;this.resetTimeout()}e.prototype.setTimeoutDurations=function(a,b){this._timeoutDurationMinutes=a;this._timeoutWarningMinutes=b;this.resetTimeout();return!0};e.prototype.shutdown=function(){this._enabled=!1;this._timer.clear()};e.prototype.resetTimeout=function(){var a=this;this._enabled&&this._timer.set(Math.round(6E4*
this._timeoutWarningMinutes),function(){a._warn()})};e.prototype._warn=function(){var a=this;console.assert(this._timer.isIdle(0));var b=this._timeoutDurationMinutes-this._timeoutWarningMinutes,f=Math.round(6E4*b);this._callbackManager.trigger("timeoutWarning",b);this._timer.set(f,function(){a._timeout()})};e.prototype._timeout=function(){this._callbackManager.trigger("timeout");this._callbackManager.trigger("_timeout")};return e}();a.TimeoutMonitor=d})(a.Internal||(a.Internal={}))})(Communicator||
(Communicator={}));var __assign=this&&this.__assign||Object.assign||function(a){for(var g,d=1,e=arguments.length;d<e;d++){g=arguments[d];for(var c in g)Object.prototype.hasOwnProperty.call(g,c)&&(a[c]=g[c])}return a};
(function(a){var g=function(){function d(e,c,b,f,h,k,d,p){this._backfacesVisible=!1;this._initialCamera=null;this._boundingCalculationIgnoresInvisible=this._faceVisibility=this._lineVisibility=!0;this._backgroundColorBottom=this._backgroundColorTop=null;this._drawMode=a.DrawMode.WireframeOnShaded;this._ambientOcclusionEnabled=!1;this._ambientOcclusionRadius=.03;this._antiAliasingMode=a.AntiAliasingMode.SMAA;this._lightingEnabled=!0;this._ambientLightColor=a.Color.black();this._bloomEnabled=!1;this._bloomIntensityScale=
this._bloomThresholdRampWidth=this._bloomThreshold=0;this._bloomLayers=[];this._silhouetteEnabled=this._simpleReflectionEnabled=this._simpleShadowEnabled=!1;this._hiddenLineSettings=new a.Settings.HiddenLineSettings;this._projectionMode=a.Projection.Orthographic;var l=e.getCreationParameters();this._viewer=e;this._engine=c;this._callbackManager=b;this._interpolationManager=h;this._eventDispatcher=f;this._model=e.model;this._statistics=k;this._navCube=d;this._axisTriad=p;this._determineInitialAxes=
a.Internal.getWithDefault(l.calculateDefaultViewAxes,!0);this._initEvents()}d.deprecated=function(a,c,b){a;var f=b.value;b.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];this._callbackManager.trigger("deprecated","View",c);return f.apply(this,a)};return b};d.prototype._initEvents=function(){var e=this;this._callbackManager.bind({_resetAssemblyTreeBegin:function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(a){this._initialCamera=null;return[2]})})},
_firstAttachment:function(c){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(b){return c===a.Internal.AttachType.Direct?[2,this._massageInitialCamera(!1)]:[2]})})},_firstModelLoaded:function(){return e._massageInitialCamera(!1)},_modelSwitched:function(a){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return a?[3,2]:[4,this._massageInitialCamera(!1)];case 1:return b.sent(),[2,this._setInitialView(0)];case 2:return[2]}})})},
hwfParseComplete:function(){return e._massageInitialCamera(!0)},_modelStructureHeaderParsed:function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(c){return this._model.isDrawing()?(this._model.setViewAxes(new a.Point3(0,0,1),new a.Point3(0,1,0)),[2,this.setViewOrientation(a.ViewOrientation.Front,0)]):[2]})})},_sessionStarted:function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(c){this.clearLights();this.setAmbientLightColor(a.Color.createFromFloatArray([.075,
.075,.075]));this.addLight(new a.Light(a.LightType.Directional,a.LightSpace.Camera,new a.Point3(.5,.5,1),a.Color.createFromFloatArray([.925,.925,.925])));this.addLight(new a.Light(a.LightType.Directional,a.LightSpace.Camera,new a.Point3(-.5,-.5,1),a.Color.createFromFloatArray([.1,.1,.2])));this.setBloomIntensityScale(1);this.setBloomThreshold(.65);this.setBloomThresholdRampWidth(.1);this.setBloomLayers([{intensity:.5,blurSamples:5,blurInterval:[.0025,a.BlurIntervalUnit.ProportionOfHeight]},{intensity:.5,
blurSamples:5,blurInterval:[.005,a.BlurIntervalUnit.ProportionOfHeight]},{intensity:.5,blurSamples:9,blurInterval:[.01,a.BlurIntervalUnit.ProportionOfHeight]},{intensity:1,blurSamples:9,blurInterval:[.02,a.BlurIntervalUnit.ProportionOfHeight]},{intensity:2,blurSamples:11,blurInterval:[.04,a.BlurIntervalUnit.ProportionOfHeight]}]);this.setGroundPlane({normal:new a.Point3(0,0,1),followViewAxes:!0});this.setSimpleShadowColor(a.Color.black());this.setSimpleShadowOpacity(.65);this.setSimpleShadowResolution(512);
this.setSimpleShadowBlurSamples(5);this.setSimpleShadowBlurInterval(1);this.setSimpleShadowInteractiveUpdateEnabled();this.setSimpleReflectionOpacity(.65);this.setSimpleReflectionFadeAngle(10);this.setSimpleReflectionBlurSamples(9);this.setSimpleReflectionBlurInterval(1,a.BlurIntervalUnit.Pixels);this.setSimpleReflectionAttenuation(0,1,a.SimpleReflectionAttenuationUnit.ProportionOfBoundingHeight);this.setSilhouetteColor(a.Color.black());this.setSilhouetteOpacity(1);this.setSilhouetteThreshold(.05);
this.setSilhouetteThresholdRampWidth(.025);return[2]})})},viewAxes:function(a,b){e._updateGroundPlane(a,b)}})};d.prototype._massageInitialCamera=function(a){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(b){switch(b.label){case 0:if(null!==this._initialCamera)return[2];c=this;return[4,this._engine.getCameraPromise()];case 1:return c._initialCamera=b.sent(),this._projectionMode=this._initialCamera.getProjection(),!this._determineInitialAxes||this._model.isDrawing()||
this._model.viewAxesHaveBeenSet()||this._determineViewAxes(this._initialCamera),a?[4,this.fitWorld()]:[3,3];case 2:b.sent(),this._initialCamera=this.getCamera(),b.label=3;case 3:return[2]}})})};d.prototype.setLineVisibility=function(a){this._setLineVisibility(a);return Promise.resolve()};d.prototype._setLineVisibility=function(a){a!==this._lineVisibility&&(this._lineVisibility=a,this._engine.setLineVisibility(a))};d.prototype.getLineVisibility=function(){return this._lineVisibility};d.prototype.setFaceVisibility=
function(a){this._setFaceVisibility(a);return Promise.resolve()};d.prototype._setFaceVisibility=function(a){a!==this._faceVisibility&&(this._faceVisibility=a,this._engine.setFaceVisibility(a));return Promise.resolve()};d.prototype.getFaceVisibility=function(){return this._faceVisibility};d.prototype.setProjectionMode=function(a){this._projectionMode!==a&&(this._projectionMode=a,this._engine.isInit()&&this._engine.setProjection(a),this._eventDispatcher.injectViewOrientationChangeEvent())};d.prototype.getProjectionMode=
function(){return this._projectionMode};d.prototype.getViewMatrix=function(){return this._engine.getViewMatrix()};d.prototype.getProjectionMatrix=function(){return this._engine.getProjectionMatrix()};d.prototype.getFullCameraMatrix=function(){return this._engine.getFullCameraMatrix()};d.prototype.raycastFromPoint=function(e){var c=this.getCanvasSize(),b=this._engine.getViewMatrix(),f=this._engine.getProjectionMatrix(),h=new a.Point3(e.x,c.y-e.y,0);e=this._unproject(h,f,b,c);if(null===e)return null;
h.z=.5;c=this._unproject(h,f,b,c);if(null===c)return null;c=a.Point3.subtract(c,e).normalize();return new a.Ray(e,c)};d.prototype._unproject=function(e,c,b,f){c=a.Matrix.multiply(b,c);c=a.Matrix.inverse(c);if(null===c)return null;e=new a.Point4(e.x,e.y,e.z,1);e.x/=f.x;e.y/=f.y;e.x=2*e.x-1;e.y=2*e.y-1;e.z=2*e.z-1;f=c.transform4(e);if(0===f.w)return null;f.scale(1/f.w);return new a.Point3(f.x,f.y,f.z)};d.prototype._rectifySelectionItem=function(a){var c=a.getInclusionKey(),b=a.getNodeId(),c=this._model._getNodeFromInstanceInc(!1,
c,b,!0);a._setNodeId(c)};d.prototype.isOutsideCanvasArea=function(a){var c=this.getCanvasSize();return 0>a.x||0>a.y||a.x>=c.x||a.y>=c.y};d.prototype.pickFromPoint=function(e,c){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:if(this.isOutsideCanvasArea(e))throw new a.CommunicatorError("Cannot pick from outside the canvas area.");return[4,this._engine.pickFromScreen(e,c,this._model.isDrawing())];case 1:return(b=f.sent())?(this._rectifySelectionItem(b),
[2,b]):[2,a.Selection.SelectionItem.create()]}})})};d.prototype.pickAllFromPoint=function(e,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k;return __generator(this,function(d){switch(d.label){case 0:if(this.isOutsideCanvasArea(e))throw new a.CommunicatorError("Cannot pick from outside the canvas area.");return[4,this._engine.pickAllFromScreen(e,c,this._model.isDrawing())];case 1:b=d.sent();f=0;for(h=b;f<h.length;f++)k=h[f],this._rectifySelectionItem(k);return[2,b]}})})};d.prototype._compositePickFromPoint=
function(e,c){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:if(this.isOutsideCanvasArea(e))throw new a.CommunicatorError("Cannot pick from outside the canvas area.");return[4,this._engine.compositePickFromScreen(e,c,this._model.isDrawing())];case 1:return b=f.sent(),null!==b.faceItem&&this._rectifySelectionItem(b.faceItem),null!==b.lineItem&&this._rectifySelectionItem(b.lineItem),null!==b.pointItem&&this._rectifySelectionItem(b.pointItem),
[2,b]}})})};d.prototype.pickFromRay=function(e,c){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:return[4,this._engine.pickFromRay(e,c)];case 1:return(b=f.sent())?(this._rectifySelectionItem(b),[2,b]):[2,a.Selection.SelectionItem.create()]}})})};d.prototype.pickAllFromRay=function(a,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k;return __generator(this,function(d){switch(d.label){case 0:return[4,this._engine.pickAllFromRay(a,
c)];case 1:b=d.sent();f=0;for(h=b;f<h.length;f++)k=h[f],this._rectifySelectionItem(k);return[2,b]}})})};d.prototype._performIncrementalSelection=function(e){return a.Internal.IncrementalSelection.performSelection(this._viewer,!1,e)};d.prototype.beginScreenSelectByArea=function(e,c,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(f){if(this.isOutsideCanvasArea(e)||this.isOutsideCanvasArea(c))throw new a.CommunicatorError("Cannot pick from outside the canvas area.");
return[2,this._engine.beginScreenAreaSelection(e,c,b)]})})};d.prototype.beginRayDrillSelection=function(e,c,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(f){if(this.isOutsideCanvasArea(e))throw new a.CommunicatorError("Cannot pick from outside the canvas area.");return[2,this._engine.beginRayDrillSelection(e,c,b)]})})};d.prototype.beginConvexPolyhedronSelection=function(a,c,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(f){return[2,
this._engine.beginConvexPolyhedronSelection(a,c,b)]})})};d.prototype.beginSphereSelection=function(e,c,b){return __awaiter(this,void 0,void 0,function(){var f;return __generator(this,function(h){f=a.Internal.toVec3(e);return[2,this._engine.beginSphereSelection(f,c,b)]})})};d.prototype.endIncrementalSelection=function(a){this._endIncrementalSelection(a);return Promise.resolve()};d.prototype._endIncrementalSelection=function(a){this._engine.endIncrementalSelection(a)};d.prototype.endVolumeSelection=
function(a){return this.endIncrementalSelection(a)};d.prototype.advanceIncrementalSelection=function(e){return __awaiter(this,void 0,void 0,function(){var c,b,f,h,k,d,p,l,g,n;return __generator(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,this._engine.advanceIncrementalSelection(e)];case 1:c=r.sent();if(null===c)return[2,null];b=this._viewer.selectionManager;f=[];h=0;for(k=c;h<k.length;h++)d=k[h],this._rectifySelectionItem(d),p=d,l=p.getNodeId(),(g=b._incrementalBlacklistedInstanceNodes.has(l))||
f.push(p);return[2,f];case 2:n=r.sent();if("advanceVolumeSelection"===n.scFunction)throw new a.SelectionInvalidatedError;throw n;case 3:return[2]}})})};d.prototype.advanceVolumeSelection=function(a){return this.advanceIncrementalSelection(a)};d.prototype.projectPoint=function(a){var c=this._engine.getSynchedProjectionMatrix(),b=this._engine.getSynchedViewMatrix(),f=this.getCanvasSize();a=this._project(a,c,b,f);a.y=f.y-a.y;return a};d.prototype._project=function(e,c,b,f){e=new a.Point4(e.x,e.y,e.z,
1);b.transform4(e,e);c.transform4(e,e);c=0>=e.w;b=e.w;0>=e.w&&(e.w=.001);e.scale(1/e.w);e.x=.5*e.x+.5;e.y=.5*e.y+.5;e.z=.5*e.z+.5;e.x*=f.x;e.y*=f.y;c&&(e.z=b);return new a.Point3(e.x,e.y,e.z)};d.prototype.unprojectPoint=function(e,c){var b=this.getCanvasSize(),f=this.getProjectionMatrix(),h=this.getViewMatrix();e=new a.Point3(e.x,b.y-e.y,c);return this._unproject(e,f,h,b)};d.prototype.pointToWindowPosition=function(e){var c=this._engine.getCanvasSize();return new a.Point2(e.x/c.x*2-1,1-e.y/c.y*2)};
d.prototype.setCamera=function(a,c){void 0===c&&(c=0);return null===a?!1:this._setCameraImpl(a,c).unsafeValue};d.prototype._setCameraPromise=function(a,c){return this._setCameraImpl(a,c).readyPromise};d.prototype._setCameraImpl=function(e,c){return 0<c?this._interpolateCamera(e,c):this._engine.isInit()?(c=e.getProjection(),this._projectionMode!==c&&this.setProjectionMode(c),this._engine.setCamera(e),c=this._markupManager?this._markupManager._setActiveMarkupView(null):Promise.resolve(),this._callbackManager.trigger("camera",
e),a.Internal.UnsafePromise.create(!0,c)):a.Internal.UnsafePromise.create(!1,Promise.resolve())};d.prototype._interpolateCamera=function(e,c){var b=this;if(this._engine.isInit()){var f=this.getCamera();if(f.equals(e))return this._markupManager&&this._markupManager._update(),a.Internal.UnsafePromise.create(!1,Promise.resolve());this._callbackManager.trigger("transitionBegin",c);var h=a.Internal.OpenPromise.create();this._interpolationManager.start(new a.Internal.CameraInterpolation(f,e,c,function(){b._eventDispatcher.injectViewOrientationChangeEvent();
b._callbackManager.trigger("transitionEnd");h.resolve()},this));return a.Internal.UnsafePromise.create(!0,h)}return a.Internal.UnsafePromise.create(!1,Promise.resolve())};d.prototype.updateCamera=function(a){a=this._engine.updateCamera(a);this._callbackManager.trigger("camera",a);return a};d.prototype.resetCamera=function(e){void 0===e&&(e=a.DefaultTransitionDuration);return this._setInitialView(e)};d.prototype.getCamera=function(){if(this._engine.isInit())return this._engine.getCamera();throw new a.CommunicatorError("getCamera() called before sceneReady");
};d.prototype.getViewOrientationCamera=function(e,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k,d,p,l,g,n,r,t,u,v,w,y,x,z,A,C;return __generator(this,function(B){switch(B.label){case 0:return b=this.getCamera(),f=this._model.getViewAxes(),h=f.upVector.copy(),k=f.frontVector.copy(),void 0!==c?[3,2]:[4,this._model.getModelBounding(this._boundingCalculationIgnoresInvisible,!1)];case 1:return c=B.sent(),[3,3];case 2:this._fitCameraToBounding(b,c),B.label=3;case 3:d=c.center();p=d.copy();
l=d.copy();g=a.Point3.subtract(b.getPosition(),b.getTarget()).length();n=a.Point3.subtract(b.getPosition(),d).length();r=new a.Point3(0,0,1);t=new a.Point3(-1,0,0);null!==h&&(r=h.copy());null!==k&&(t=k.copy());u=t.copy().scale(-1);v=t.copy();w=r.copy();y=r.copy().scale(-1);x=a.Point3.cross(w,u);z=x.copy().scale(-1);switch(e){case a.ViewOrientation.Front:p=a.Point3.add(l,v);break;case a.ViewOrientation.Back:p=a.Point3.add(l,u);break;case a.ViewOrientation.Left:p=a.Point3.add(l,x);break;case a.ViewOrientation.Right:p=
a.Point3.add(l,z);break;case a.ViewOrientation.Bottom:p=a.Point3.add(l,y);r=u.copy();break;case a.ViewOrientation.Top:p=a.Point3.add(l,w);r=u.copy();break;case a.ViewOrientation.FrontTop:case a.ViewOrientation.TopFront:p=a.Point3.add(l,a.Point3.add(v,w));r=a.Point3.add(u,w).normalize();break;case a.ViewOrientation.FrontTopLeft:case a.ViewOrientation.LeftTopFront:case a.ViewOrientation.TopLeftFront:p=a.Point3.add(l,a.Point3.add(v,a.Point3.add(x,w)));r=a.Point3.add(u,a.Point3.add(z,w)).normalize();
break;case a.ViewOrientation.Iso:case a.ViewOrientation.FrontTopRight:case a.ViewOrientation.RightTopFront:case a.ViewOrientation.TopRightFront:p=a.Point3.add(l,a.Point3.add(v,a.Point3.add(z,w)));r=a.Point3.add(u,a.Point3.add(x,w)).normalize();break;case a.ViewOrientation.FrontLeft:case a.ViewOrientation.LeftFront:p=a.Point3.add(l,a.Point3.add(v,x));break;case a.ViewOrientation.FrontRight:case a.ViewOrientation.RightFront:p=a.Point3.add(l,a.Point3.add(v,z));break;case a.ViewOrientation.FrontBottom:case a.ViewOrientation.BottomFront:p=
a.Point3.add(l,a.Point3.add(v,y));r=a.Point3.add(v,w).normalize();break;case a.ViewOrientation.FrontBottomLeft:case a.ViewOrientation.LeftBottomFront:case a.ViewOrientation.BottomLeftFront:p=a.Point3.add(l,a.Point3.add(v,a.Point3.add(x,y)));r=a.Point3.add(v,a.Point3.add(x,w)).normalize();break;case a.ViewOrientation.FrontBottomRight:case a.ViewOrientation.RightBottomFront:case a.ViewOrientation.BottomRightFront:p=a.Point3.add(l,a.Point3.add(v,a.Point3.add(z,y)));r=a.Point3.add(v,a.Point3.add(z,w)).normalize();
break;case a.ViewOrientation.BackTop:case a.ViewOrientation.TopBack:p=a.Point3.add(l,a.Point3.add(u,w));r=a.Point3.add(v,w).normalize();break;case a.ViewOrientation.BackTopLeft:case a.ViewOrientation.LeftTopBack:case a.ViewOrientation.TopLeftBack:p=a.Point3.add(l,a.Point3.add(u,a.Point3.add(x,w)));r=a.Point3.add(v,a.Point3.add(z,w)).normalize();break;case a.ViewOrientation.BackTopRight:case a.ViewOrientation.RightTopBack:case a.ViewOrientation.TopRightBack:p=a.Point3.add(l,a.Point3.add(u,a.Point3.add(z,
w)));r=a.Point3.add(v,a.Point3.add(x,w)).normalize();break;case a.ViewOrientation.BackLeft:case a.ViewOrientation.LeftBack:p=a.Point3.add(l,a.Point3.add(u,x));break;case a.ViewOrientation.BackRight:case a.ViewOrientation.RightBack:p=a.Point3.add(l,a.Point3.add(u,z));break;case a.ViewOrientation.BackBottom:case a.ViewOrientation.BottomBack:p=a.Point3.add(l,a.Point3.add(u,y));r=a.Point3.add(u,w).normalize();break;case a.ViewOrientation.BackBottomLeft:case a.ViewOrientation.LeftBottomBack:case a.ViewOrientation.BottomLeftBack:p=
a.Point3.add(l,a.Point3.add(u,a.Point3.add(x,y)));r=a.Point3.add(u,a.Point3.add(x,w)).normalize();break;case a.ViewOrientation.BackBottomRight:case a.ViewOrientation.RightBottomBack:case a.ViewOrientation.BottomRightBack:p=a.Point3.add(l,a.Point3.add(u,a.Point3.add(z,y)));r=a.Point3.add(u,a.Point3.add(z,w)).normalize();break;case a.ViewOrientation.LeftBottom:case a.ViewOrientation.BottomLeft:p=a.Point3.add(l,a.Point3.add(x,y));r=a.Point3.add(x,w).normalize();break;case a.ViewOrientation.LeftTop:case a.ViewOrientation.TopLeft:p=
a.Point3.add(l,a.Point3.add(x,w));r=a.Point3.add(z,w).normalize();break;case a.ViewOrientation.RightBottom:case a.ViewOrientation.BottomRight:p=a.Point3.add(l,a.Point3.add(z,y));r=a.Point3.add(z,w).normalize();break;case a.ViewOrientation.RightTop:case a.ViewOrientation.TopRight:p=a.Point3.add(l,a.Point3.add(z,w));r=a.Point3.add(x,w).normalize();break;default:p=a.Point3.add(l,v)}A=a.Point3.add(a.Point3.subtract(p,d).normalize().scale(n),d);C=a.Point3.add(a.Point3.subtract(p,d).normalize().scale(n-
g),d);b.setPosition(A);b.setTarget(C);b.setUp(r);return[2,b]}})})};d.prototype.setViewOrientation=function(e,c,b){void 0===c&&(c=a.DefaultTransitionDuration);return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(h){switch(h.label){case 0:return[4,this.getViewOrientationCamera(e,b)];case 1:return a=h.sent(),void 0!==b?[3,3]:[4,this.fitWorld(c,a)];case 2:return h.sent(),[3,5];case 3:return[4,this.fitBounding(b,c,a)];case 4:h.sent(),h.label=5;case 5:return this._callbackManager.trigger("viewOrientation",
e),[2]}})})};d.prototype.centerCameraOnNode=function(e,c,b){void 0===c&&(c=0);void 0===b&&(b=this.getCamera());return __awaiter(this,void 0,void 0,function(){var f,h,k,d,p;return __generator(this,function(l){switch(l.label){case 0:return[4,this._model.getNodesBounding([e])];case 1:f=l.sent();h=f.center();k=b.getPosition();d=b.getTarget();p=a.Point3.subtract(d,h);k.subtract(p);b.setPosition(k);b.setTarget(h);if(0<c)return[2,this._setCameraPromise(b,c)];this.setCamera(b);return[2]}})})};d.prototype._setInitialView=
function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){if(!this._initialCamera)return[2];if(0<a)return[2,this._setCameraPromise(this._initialCamera,a)];this.setCamera(this._initialCamera);this._eventDispatcher.injectViewOrientationChangeEvent();return[2]})})};d.prototype.getCanvasSize=function(){return this._engine.getCanvasSize()};d.prototype._setMarkupManager=function(a){this._markupManager=a};d.prototype.setStatisticsDisplayVisibility=function(a){a?this._statistics.showDisplay():
this._statistics.hideDisplay()};d.prototype.getBackgroundColor=function(){var e=null!==this._backgroundColorTop?this._backgroundColorTop.copy():null,c=null!==this._backgroundColorBottom?this._backgroundColorBottom.copy():null;return new a.VerticalGradient(e,c)};d.prototype.setBackgroundColor=function(e,c){void 0===e&&(e=null);void 0===c&&(c=null);this._backgroundColorTop=null!==e?e.copy():null;this._backgroundColorBottom=null!==c?c.copy():null;this._drawMode!==a.DrawMode.HiddenLine&&this._engine.setBackgroundGradient(this._backgroundColorTop,
this._backgroundColorBottom);return Promise.resolve()};d.prototype.isolateNodes=function(e,c,b,f){void 0===c&&(c=a.DefaultTransitionDuration);void 0===b&&(b=!0);void 0===f&&(f=null);return __awaiter(this,void 0,void 0,function(){var a,k,d,p,l;return __generator(this,function(g){switch(g.label){case 0:a=this._model.getAbsoluteRootNode();k=new Map;k.set(a,!1);d=0;for(p=e;d<p.length;d++)l=p[d],k.set(l,!0);return[4,this._model.setNodesVisibilities(k,f)];case 1:return g.sent(),b?[2,this.fitNodes(e,c)]:
[2]}})})};d.prototype.fitNodes=function(e,c){void 0===c&&(c=a.DefaultTransitionDuration);return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(f){switch(f.label){case 0:return[4,this._model.getNodesBounding(e)];case 1:return a=f.sent(),[2,this.fitBounding(a,c)]}})})};d.prototype.fitWorld=function(a,c){void 0===a&&(a=0);return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:return c||(c=this.getCamera()),[4,this._model.getModelBounding(this._boundingCalculationIgnoresInvisible,
!1)];case 1:return b=f.sent(),[2,this.fitBounding(b,a,c)]}})})};d.prototype._fitCameraToBounding=function(e,c){var b=c.extents().length(),f=e.getWidth(),h=a.Point3.subtract(e.getPosition(),e.getTarget()),k=h.length(),f=b*k/f;c=c.center();h=a.Point3.add(c,h.normalize().scale(f));e.setTarget(c);e.setPosition(h);e.setWidth(b);e.setHeight(b)};d.prototype.fitBounding=function(e,c,b){void 0===c&&(c=a.DefaultTransitionDuration);void 0===b&&(b=this.getCamera());return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(a){if(e){this._fitCameraToBounding(b,e);if(0<c)return[2,this._setCameraPromise(b,c)];this.setCamera(b)}return[2]})})};d.prototype.setBackfacesVisible=function(a){this._backfacesVisible=a;this._engine.setBackFacesVisible(a);return Promise.resolve()};d.prototype.getBackfacesVisible=function(){return this._backfacesVisible};d.prototype.setDrawMode=function(a){this._setDrawMode(a);return Promise.resolve()};d.prototype._setDrawMode=function(e){this._drawMode=e;this._drawMode!==a.DrawMode.HiddenLine&&
this.setBackgroundColor(this._backgroundColorTop,this._backgroundColorBottom);var c=this._engine.DrawMode();switch(e){case a.DrawMode.Wireframe:this._engine.setDrawMode(c.Highlight);this._setLineVisibility(!0);this._setFaceVisibility(!1);break;case a.DrawMode.Shaded:this._engine.setDrawMode(c.Highlight);this._setLineVisibility(!1);this._setFaceVisibility(!0);break;case a.DrawMode.WireframeOnShaded:this._engine.setDrawMode(c.Highlight);this._setLineVisibility(!0);this._setFaceVisibility(!0);break;
case a.DrawMode.HiddenLine:e=this._hiddenLineSettings.getBackgroundColor();this._setLineVisibility(!0);this._setFaceVisibility(!0);this._engine.enableHiddenLineRendering(this._hiddenLineSettings);this._engine.setBackgroundGradient(e,e);break;case a.DrawMode.XRay:this._engine.setDrawMode(c.XRay),this._setLineVisibility(!0),this._setFaceVisibility(!0)}};d.prototype.getDrawMode=function(){return this._drawMode};d.prototype.setAntiAliasingMode=function(a){this._setAntiAliasingMode(a);return Promise.resolve()};
d.prototype._setAntiAliasingMode=function(a){this._antiAliasingMode=a;this._engine.setAntiAliasingMode(a)};d.prototype.getAntiAliasingMode=function(){return this._antiAliasingMode};d.prototype.getHiddenLineSettings=function(){return this._hiddenLineSettings};d.prototype.setAmbientOcclusionEnabled=function(a){void 0===a&&(a=!0);this._setAmbientOcclusionEnabled(a);return Promise.resolve()};d.prototype._setAmbientOcclusionEnabled=function(a){void 0===a&&(a=!0);this._ambientOcclusionEnabled=a;this._engine.setAmbientOcclusionEnabled(a)};
d.prototype.getAmbientOcclusionEnabled=function(){return this._ambientOcclusionEnabled};d.prototype.setAmbientOcclusionRadius=function(a){this._setAmbientOcclusionRadius(a);return Promise.resolve()};d.prototype._setAmbientOcclusionRadius=function(a){this._ambientOcclusionRadius=a;this._engine.setAmbientOcclusionRadius(a)};d.prototype.getAmbientOcclusionRadius=function(){return this._ambientOcclusionRadius};d.prototype.setLightingEnabled=function(a){void 0===a&&(a=!0);this._setLightingEnabled(a);return Promise.resolve()};
d.prototype._setLightingEnabled=function(a){void 0===a&&(a=!0);this._lightingEnabled=a;this._engine.setLightingEnabled(a)};d.prototype.getLightingEnabled=function(){return this._lightingEnabled};d.prototype.setXRayOpacity=function(a,c){this._setXRayOpacity(a,c);return Promise.resolve()};d.prototype._setXRayOpacity=function(a,c){this._engine.setXRayOpacity(a,c)};d.prototype.setXRayTransparencyMode=function(a){this._setXRayTransparencyMode(a);return Promise.resolve()};d.prototype._setXRayTransparencyMode=
function(a){this._engine.setXRayTransparencyMode(a)};d.prototype.setXRayColor=function(e,c,b){void 0===b&&(b=a.XRayGroup.Selected);return this._engine.setXRayColor(b,e,c)};d.prototype.unsetXRayColor=function(e,c){void 0===c&&(c=a.XRayGroup.Selected);return this._engine.unsetXRayColor(c,e)};d.prototype.setPointSize=function(a,c){this._setPointSize(a,c);return Promise.resolve()};d.prototype._setPointSize=function(a,c){this._engine.setPointSize(a,c)};d.prototype.getPointSize=function(){return this._engine.getPointSize()};
d.prototype.setPointShape=function(a){this._setPointShape(a);return Promise.resolve()};d.prototype._setPointShape=function(a){this._engine.setPointShape(a)};d.prototype.getPointShape=function(){return this._engine.getPointShape()};d.prototype.setEyeDomeLightingEnabled=function(a){void 0===a&&(a=!0);this._setEyeDomeLightingEnabled(a);return Promise.resolve()};d.prototype._setEyeDomeLightingEnabled=function(a){void 0===a&&(a=!0);this._engine.setEyeDomeLightingEnabled(a)};d.prototype.getEyeDomeLightingEnabled=
function(){return this._engine.getEyeDomeLightingEnabled()};d.prototype.setEyeDomeLightingBlurSamples=function(a){this._setEyeDomeLightingBlurSamples(a);return Promise.resolve()};d.prototype._setEyeDomeLightingBlurSamples=function(a){this._engine.setEyeDomeLightingBlurSamples(a)};d.prototype.getEyeDomeLightingBlurSamples=function(){return this._engine.getEyeDomeLightingBlurSamples()};d.prototype.setEyeDomeLightingBlurInterval=function(a){this._setEyeDomeLightingBlurInterval(a);return Promise.resolve()};
d.prototype._setEyeDomeLightingBlurInterval=function(a){this._engine.setEyeDomeLightingBlurInterval(a)};d.prototype.getEyeDomeLightingBlurInterval=function(){return this._engine.getEyeDomeLightingBlurInterval()};d.prototype.setEyeDomeLightingBlurEdgeDistance=function(a){this._setEyeDomeLightingBlurEdgeDistance(a);return Promise.resolve()};d.prototype._setEyeDomeLightingBlurEdgeDistance=function(a){this._engine.setEyeDomeLightingBlurEdgeDistance(a)};d.prototype.getEyeDomeLightingBlurEdgeDistance=function(){return this._engine.getEyeDomeLightingBlurEdgeDistance()};
d.prototype.setEyeDomeLightingShadingEdgeDistance=function(a){this._setEyeDomeLightingShadingEdgeDistance(a);return Promise.resolve()};d.prototype._setEyeDomeLightingShadingEdgeDistance=function(a){this._engine.setEyeDomeLightingShadingEdgeDistance(a)};d.prototype.getEyeDomeLightingShadingEdgeDistance=function(){return this._engine.getEyeDomeLightingShadingEdgeDistance()};d.prototype.setEyeDomeLightingOpacity=function(a){this._setEyeDomeLightingOpacity(a);return Promise.resolve()};d.prototype._setEyeDomeLightingOpacity=
function(a){this._engine.setEyeDomeLightingOpacity(a)};d.prototype.getEyeDomeLightingOpacity=function(){return this._engine.getEyeDomeLightingOpacity()};d.prototype.setBoundingCalculationIgnoresInvisible=function(a){this._boundingCalculationIgnoresInvisible=a};d.prototype.getBoundingCalculationIgnoresInvisible=function(){return this._boundingCalculationIgnoresInvisible};d.prototype.setDisplayIncompleteFrames=function(a){this._setDisplayIncompleteFrames(a);return Promise.resolve()};d.prototype._setDisplayIncompleteFrames=
function(a){this._engine.setDisplayIncompleteFrames(a)};d.prototype.setInteractiveDrawDelay=function(a){this._setInteractiveDrawDelay(a);return Promise.resolve()};d.prototype._setInteractiveDrawDelay=function(a){this._engine.setInteractiveDrawDelay(a)};d.prototype.getNavCube=function(){return this._navCube};d.prototype.getAxisTriad=function(){return this._axisTriad};d.prototype._determineViewAxes=function(d){var c=d.getUp().normalize();d=a.Point3.subtract(d.getTarget(),d.getPosition()).normalize();
c=a.Internal.majorAxis(c);d=a.Internal.majorAxis(d);null===c&&null===d?(c=new a.Point3(0,1,0),d=new a.Point3(0,0,1)):null===c?c=0===d.y?new a.Point3(0,1,0):new a.Point3(0,0,1):null===d&&(d=0===c.z?new a.Point3(0,0,1):new a.Point3(0,1,0));this._model.setViewAxes(d,c)};d.prototype.setAmbientLightColor=function(a){this._ambientLightColor=a;this._engine.setAmbientLightColor(a)};d.prototype.getAmbientLightColor=function(){return this._ambientLightColor};d.prototype.clearLights=function(){this._engine.clearLights()};
d.prototype.addLight=function(a){this._engine.addLight(a)};d.prototype.setBloomEnabled=function(a){void 0===a&&(a=!0);this._engine.setBloomEnabled(a);this._bloomEnabled=a};d.prototype.getBloomEnabled=function(){return this._bloomEnabled};d.prototype.setBloomThreshold=function(a){this._engine.setBloomThreshold(a);this._bloomThreshold=a};d.prototype.getBloomThreshold=function(){return this._bloomThreshold};d.prototype.setBloomThresholdRampWidth=function(a){this._engine.setBloomThresholdRampWidth(a);
this._bloomThresholdRampWidth=a};d.prototype.getBloomThresholdRampWidth=function(){return this._bloomThresholdRampWidth};d.prototype.setBloomIntensityScale=function(a){this._engine.setBloomIntensityScale(a);this._bloomIntensityScale=a};d.prototype.getBloomIntensityScale=function(){return this._bloomIntensityScale};d.prototype.setBloomLayers=function(d){d=a.Internal.deepClone(d);for(var c=0;c<d.length;c++){var b=d[c];void 0===b.intensity&&(b.intensity=1);void 0===b.blurSamples&&(b.blurSamples=9);void 0===
b.blurInterval&&(b.blurInterval=[1,a.BlurIntervalUnit.Pixels])}this._engine.setBloomLayers(d);this._bloomLayers=d};d.prototype.getBloomLayers=function(){return a.Internal.deepClone(this._bloomLayers)};d.prototype.startComparison=function(a,c,b){var f=this._model._getModelStructure();a=f.gatherInstanceIncsFromNodeIds(a,7,!1);c=f.gatherInstanceIncsFromNodeIds(c,7,!1);this._engine.startComparison(a,c,b)};d.prototype.endComparison=function(){this._engine.endComparison()};d.prototype.setSimpleShadowEnabled=
function(a){void 0===a&&(a=!0);this._simpleShadowEnabled=a;this._engine.setSimpleShadowEnabled(a)};d.prototype.getSimpleShadowEnabled=function(){return this._simpleShadowEnabled};d.prototype.setSimpleShadowColor=function(a){this._simpleShadowColor=a.copy();this._engine.setSimpleShadowColor(a)};d.prototype.getSimpleShadowColor=function(){return this._simpleShadowColor.copy()};d.prototype.setSimpleShadowOpacity=function(a){this._simpleShadowOpacity=a;this._engine.setSimpleShadowOpacity(a)};d.prototype.getSimpleShadowOpacity=
function(){return this._simpleShadowOpacity};d.prototype.setGroundPlane=function(a){this._groundPlane=__assign({},a);this._updateGroundPlane()};d.prototype._updateGroundPlane=function(d,c){if(this._groundPlane.followViewAxes&&(void 0!==d&&void 0!==c||this._model.viewAxesHaveBeenSet())){if(void 0===d||void 0===c)c=this._model.getViewAxes(),d=c.frontVector,c=c.upVector;d=d.copy().negate();var b=a.Point3.cross(c,d);d=a.Matrix.createFromBasis(d,b,c);c=new a.Point3(0,0,0);d.transform(this._groundPlane.normal,
c);this._engine.setGroundPlane(c,this._groundPlane.position)}else this._engine.setGroundPlane(this._groundPlane.normal,this._groundPlane.position)};d.prototype.getGroundPlane=function(){return __assign({},this._groundPlane)};d.prototype.setSimpleShadowResolution=function(a){this._simpleShadowResolution=a;this._engine.setSimpleShadowResolution(a)};d.prototype.getSimpleShadowResolution=function(){return this._simpleShadowResolution};d.prototype.setSimpleShadowBlurSamples=function(a){this._simpleShadowBlurSamples=
a;this._engine.setSimpleShadowBlurSamples(a)};d.prototype.getSimpleShadowBlurSamples=function(){return this._simpleShadowBlurSamples};d.prototype.setSimpleShadowBlurInterval=function(a){this._simpleShadowBlurInterval=a;this._engine.setSimpleShadowBlurInterval(a)};d.prototype.getSimpleShadowBlurInterval=function(){return this._simpleShadowBlurInterval};d.prototype.setSimpleShadowInteractiveUpdateEnabled=function(a){void 0===a&&(a=!0);this._simpleShadowInteractiveUpdateEnabled=a;this._engine.setSimpleShadowInteractiveUpdateEnabled(a)};
d.prototype.getSimpleShadowInteractiveUpdateEnabled=function(){return this._simpleShadowInteractiveUpdateEnabled};d.prototype.setSilhouetteEnabled=function(a){void 0===a&&(a=!0);this._silhouetteEnabled=a;this._engine.setSilhouetteEnabled(a)};d.prototype.getSilhouetteEnabled=function(){return this._silhouetteEnabled};d.prototype.setSilhouetteColor=function(a){this._silhouetteColor=a.copy();this._engine.setSilhouetteColor(a)};d.prototype.getSilhouetteColor=function(){return this._silhouetteColor.copy()};
d.prototype.setSilhouetteOpacity=function(a){this._silhouetteOpacity=a;this._engine.setSilhouetteOpacity(a)};d.prototype.getSilhouetteOpacity=function(){return this._silhouetteOpacity};d.prototype.setSilhouetteThreshold=function(a){this._silhouetteThreshold=a;this._engine.setSilhouetteThreshold(a)};d.prototype.getSilhouetteThreshold=function(){return this._silhouetteThreshold};d.prototype.setSilhouetteThresholdRampWidth=function(a){this._silhouetteThresholdRampWidth=a;this._engine.setSilhouetteThresholdRampWidth(a)};
d.prototype.getSilhouetteThresholdRampWidth=function(){return this._silhouetteThresholdRampWidth};d.prototype.setSimpleReflectionEnabled=function(a){void 0===a&&(a=!0);this._simpleReflectionEnabled=a;this._engine.setSimpleReflectionEnabled(a)};d.prototype.getSimpleReflectionEnabled=function(){return this._simpleReflectionEnabled};d.prototype.setSimpleReflectionBlurInterval=function(d,c){void 0===c&&(c=a.BlurIntervalUnit.Pixels);this._simpleReflectionBlurInterval=[d,c];this._engine.setSimpleReflectionBlurInterval(d,
c)};d.prototype.getSimpleReflectionBlurInterval=function(){return[this._simpleReflectionBlurInterval[0],this._simpleReflectionBlurInterval[1]]};d.prototype.setSimpleReflectionBlurSamples=function(a){this._simpleReflectionBlurSamples=a;this._engine.setSimpleReflectionBlurSamples(a)};d.prototype.getSimpleReflectionBlurSamples=function(){return this._simpleReflectionBlurSamples};d.prototype.setSimpleReflectionFadeAngle=function(a){this._simpleReflectionFadeAngle=a;this._engine.setSimpleReflectionFadeAngle(a)};
d.prototype.getSimpleReflectionFadeAngle=function(){return this._simpleReflectionFadeAngle};d.prototype.setSimpleReflectionOpacity=function(a){this._simpleReflectionOpacity=a;this._engine.setSimpleReflectionOpacity(a)};d.prototype.getSimpleReflectionOpacity=function(){return this._simpleReflectionOpacity};d.prototype.setSimpleReflectionAttenuation=function(d,c,b){void 0===b&&(b=a.SimpleReflectionAttenuationUnit.World);this._simpleReflectionAttenuation={nearDistance:d,farDistance:c,unit:b};this._engine.setSimpleReflectionAttenuation(d,
c,b)};d.prototype.getSimpleReflectionAttenuation=function(){return __assign({},this._simpleReflectionAttenuation)};__decorate([d.deprecated],d.prototype,"endVolumeSelection",null);__decorate([d.deprecated],d.prototype,"advanceVolumeSelection",null);return d}();a.View=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(d){var c=this;this._callbackManager=new a.Internal.CallbackManager;this._interpolationManager=new a.Internal.InterpolationManager;this._streamingMode=a.StreamingMode.Interactive;this._rendererType=a.RendererType.Client;this._alreadyShutDown=!1;this._sceneReadyPromise=a.Internal.OpenPromise.create();this._seenPriorityMetaDataSent=!1;this._params=__assign({},d);this._contextMenuActiveFlag=!1;if(void 0!==this._params.containerId){d=a.Internal.DomElements.createFromId(this._params.containerId);
if(null===d)throw new a.ParseError("'containerId' is invalid");this._domElements=d}else if(void 0!==this._params.container)this._domElements=a.Internal.DomElements.createFromElement(this._params.container);else throw new a.ParseError("must supply 'container' or 'containerId'");this.operatorManager=new a.OperatorManager(this);this._eventDispatcher=new a.Internal.EventDispatcher(this._callbackManager,this.operatorManager);this._timeoutMonitor=new a.Internal.TimeoutMonitor(this._callbackManager);this._inputMonitor=
new a.Internal.InputMonitor(this._eventDispatcher,this._timeoutMonitor);this._setInitialOptions(this._params);this._engine=new a.Internal.ScEngine(this._callbackManager,this._params);this._statistics=new a.Internal.Statistics(this._callbackManager,this);d=new a.NavCube(this);var b=new a.AxisTriad(this);this.model=new a.Model(this._engine,this._callbackManager);this.view=new a.View(this,this._engine,this._callbackManager,this._eventDispatcher,this._interpolationManager,this._statistics,d,b);this.cuttingManager=
new a.CuttingManager(this,this.model,this._callbackManager,this._engine);d={disableAutomaticFitWorld:a.Internal.getWithDefault(this._params.disableAutomaticFitWorld,!1),markImplicitNodesOutOfHierarchy:a.Internal.getWithDefault(this._params._markImplicitNodesOutOfHierarchy,!0)};this._modelStructure=a.Internal.Tree.ModelStructure.unsafeCreate(d,this._engine,this._callbackManager,this.cuttingManager,this.view,this.model,this._params._maxConcurrentAttachments||null);this.model._setModelStructure(this._modelStructure);
this.measureManager=new a.MeasureManager(this,this._callbackManager);this.lineManager=new a.LineManager(this,this._callbackManager);this.explodeManager=new a.ExplodeManager(this.model,this._engine,this._callbackManager);this.overlayManager=new a.OverlayManager(this,this._engine);this.BCFManager=new a.BCFManager(this,this._callbackManager);this.selectionManager=new a.SelectionManager(this._callbackManager,this._engine,this.view,this.model,this._modelStructure);d=a.Internal.getWithDefault(this._params.disableAutomaticBackgroundSheets,
!1);this._sheetManager=new a.Internal.SheetManager(this,this._callbackManager,d);this._noteTextManager=new a.Internal.NoteTextManager(this);this.markupManager=new a.MarkupManager(this._domElements,this.measureManager,this.lineManager,this._callbackManager,this._sheetManager,this._noteTextManager,this);this.view._setMarkupManager(this.markupManager);this._initEventDispatcher();var f=function(b){if(!c.model.isDrawing()){var f=[];c.model._setInstanceModifier(a.InstanceModifier.OverrideSceneVisibility,
b,!0,6);for(var h=0;h<b.length;h++)f.push(c.model.setPmiColorOverride(!0,b[h]));return a.Internal.waitForAll(f)}return Promise.resolve()},h=function(b){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(f){switch(f.label){case 0:return b?[4,Promise.all([this.view.setPointSize(.003,a.PointSizeUnit.ProportionOfBoundingDiagonal),this.view.setEyeDomeLightingEnabled(!0),this.view.setPointShape(a.PointShape.Disk)])]:[3,2];case 1:return f.sent(),[3,4];case 2:return[4,Promise.all([this.view.setPointSize(1,
a.PointSizeUnit.ScreenPixels),this.view.setEyeDomeLightingEnabled(!1),this.view.setPointShape(a.PointShape.Square)])];case 3:f.sent(),f.label=4;case 4:return[2]}})})},k=function(b){return __awaiter(c,void 0,void 0,function(){var f;return __generator(this,function(c){switch(c.label){case 0:return f=this.model.getModelFileTypeFromNode(b[0]),null===f||f===a.FileType.Unknown?[3,2]:[4,h(!1)];case 1:c.sent(),c.label=2;case 2:return[2]}})})},q=function(b){var f=[],h=c.model.getModelFileTypeFromNode(b[0]);
if(null!==h&&h===a.FileType.Ifc)for(h=0;h<b.length;h++){var k=c.model.registerIfcNodes(b[h]);f.push(k)}return a.Internal.waitForAll(f)};this.setCallbacks({_resetAssemblyTreeBegin:function(){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(b){c.model.setPmiColor(a.Color.black());return[2]})})},_sessionStarted:function(){return h(!0)},_firstModelLoaded:function(b){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(h){c.model.setPmiColor(a.Color.black());
return[2,a.Internal.waitForAll([q(b),f([this.model.getAbsoluteRootNode()]),k(b)])]})})},_modelSwitched:function(b,h){return a.Internal.waitForAll([q(h),f(h),k(h)])},_subtreeLoaded:function(b){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(h){return[2,a.Internal.waitForAll([q(b),f(b)])]})})},subtreeLoaded:function(a,b){c._callbackManager.trigger("modelLoaded",a,b)}})}d.deprecated=function(a,c,b){a;var f=b.value;b.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=
arguments[b];this._callbackManager.trigger("deprecated","WebViewer",c);return f.apply(this,a)};return b};d.prototype.setContextMenuStatus=function(a){this._contextMenuActiveFlag=a};d.prototype.getContextMenuStatus=function(){return this._contextMenuActiveFlag};d.prototype.setActiveSheetId=function(a){return this._sheetManager.setActiveSheetId(a,!0,!0)};d.prototype.getActiveSheetId=function(){return this._sheetManager.getActiveSheetId()};d.prototype.enableBackgroundSheet=function(a){return this._sheetManager.enableBackgroundSheet(a)};
d.prototype.getBackgroundSheetEnabled=function(){return this._sheetManager.getBackgroundSheetEnabled()};d.prototype.setSheetColors=function(a,c,b){return this._sheetManager.setSheetColors(a,c,b)};d.prototype.getSheetBackgroundColor=function(){return this._sheetManager.getSheetBackgroundColor()};d.prototype.getSheetColor=function(){return this._sheetManager.getSheetColor()};d.prototype.getSheetShadowColor=function(){return this._sheetManager.getSheetShadowColor()};d.prototype.getCreationParameters=
function(){return __assign({},this._params)};d.prototype._setInitialOptions=function(a){this._inputMonitor.setOptions(a);void 0!==a.streamingMode?this._streamingMode=a.streamingMode:a.streamingMode=this._streamingMode;void 0!==a.rendererType?this._rendererType=a.rendererType:a.rendererType=this._rendererType};d.prototype._initEventDispatcher=function(){var d=new a.Operator.CameraOrbitOperator(this),c=new a.Operator.CameraPanOperator(this),b=new a.Operator.CameraZoomOperator(this),f=new a.Operator.CameraNavigationOperator(this,
d,c,b),h=new a.Operator.CameraWalkOperator(this),k=new a.Operator.CameraKeyboardWalkOperator(this),q=new a.Operator.CameraWalkModeOperator(this,h,k),p=new a.Operator.CameraTurntableOperator(this),l=new a.Operator.SelectionOperator(this,this._noteTextManager),g=new a.Operator.AreaSelectionOperator(this),n=new a.Operator.RayDrillSelectionOperator(this),r=new a.Operator.RedlineCircleOperator(this),t=new a.Operator.RedlineTextOperator(this),u=new a.Operator.RedlineRectangleOperator(this),v=new a.Operator.RedlinePolylineOperator(this),
w=new a.Operator.MeasureEdgeLengthOperator(this,this.measureManager),y=new a.Operator.MeasureFaceFaceDistanceOperator(this,this.measureManager),x=new a.Operator.MeasurePointPointDistanceOperator(this,this.measureManager),z=new a.Operator.MeasureFaceFaceAngleOperator(this,this.measureManager),A=new a.Operator.NoteOperator(this,this._noteTextManager),C=new a.Operator.CuttingPlaneOperator(this,this.cuttingManager,this._callbackManager),B=new a.Operator.HandleOperator(this),D=new a.Operator.NavCubeOperator(this),
F=new a.Operator.AxisTriadOperator(this);this.operatorManager._registerOperator(a.OperatorId.Navigate,f);this.operatorManager._registerOperator(a.OperatorId.Orbit,d);this.operatorManager._registerOperator(a.OperatorId.Pan,c);this.operatorManager._registerOperator(a.OperatorId.Zoom,b);this.operatorManager._registerOperator(a.OperatorId.Walk,h);this.operatorManager._registerOperator(a.OperatorId.KeyboardWalk,k);this.operatorManager._registerOperator(a.OperatorId.WalkMode,q);this.operatorManager._registerOperator(a.OperatorId.Turntable,
p);this.operatorManager._registerOperator(a.OperatorId.Select,l);this.operatorManager._registerOperator(a.OperatorId.AreaSelect,g);this.operatorManager._registerOperator(a.OperatorId.RayDrillSelect,n);this.operatorManager._registerOperator(a.OperatorId.RedlineCircle,r);this.operatorManager._registerOperator(a.OperatorId.RedlineText,t);this.operatorManager._registerOperator(a.OperatorId.RedlineRectangle,u);this.operatorManager._registerOperator(a.OperatorId.RedlinePolyline,v);this.operatorManager._registerOperator(a.OperatorId.MeasureEdgeLength,
w);this.operatorManager._registerOperator(a.OperatorId.MeasureFaceFaceDistance,y);this.operatorManager._registerOperator(a.OperatorId.MeasurePointPointDistance,x);this.operatorManager._registerOperator(a.OperatorId.MeasureFaceFaceAngle,z);this.operatorManager._registerOperator(a.OperatorId.Note,A);this.operatorManager._registerOperator(a.OperatorId.Cutting,C);this.operatorManager._registerOperator(a.OperatorId.Handle,B);this.operatorManager._registerOperator(a.OperatorId.NavCube,D);this.operatorManager._registerOperator(a.OperatorId.AxisTriad,
F);d.addMapping(a.Button.Left);d.addMapping(a.Button.Middle);b.addMapping(a.Button.Left,a.KeyModifiers.Shift);c.addMapping(a.Button.Right);c.addMapping(a.Button.Left,a.KeyModifiers.Control);w.addMapping(a.Button.Left);y.addMapping(a.Button.Left);x.addMapping(a.Button.Left);x.addMapping(a.Button.Left,a.KeyModifiers.Alt);z.addMapping(a.Button.Left);C.addMapping(a.Button.Left);g.addMapping(a.Button.Left);g.addMapping(a.Button.Left,a.KeyModifiers.Control);this.operatorManager.set(a.OperatorId.Navigate,
0);this.operatorManager.set(a.OperatorId.Select,1);this.operatorManager.push(a.OperatorId.Cutting);this.operatorManager.push(a.OperatorId.Handle);this.operatorManager.push(a.OperatorId.NavCube);this.operatorManager.push(a.OperatorId.AxisTriad)};d.prototype.getViewerVersionString=function(){return d.VIEWER_VERSION_STRING};d.prototype.getFormatVersionString=function(){return this._engine.getVersionString()};d.prototype.getView=function(){return this.view};d.prototype.getModel=function(){return this.model};
d.prototype.getOverlayManager=function(){return this.overlayManager};d.prototype.getMeasureManager=function(){return this.measureManager};d.prototype.getLineManager=function(){return this.lineManager};d.prototype.getCuttingManager=function(){return this.cuttingManager};d.prototype.getMarkupManager=function(){return this.markupManager};d.prototype.getSelectionManager=function(){return this.selectionManager};d.prototype.getExplodeManager=function(){return this.explodeManager};d.prototype.getOperatorManager=
function(){return this.operatorManager};d.prototype._getNoteTextManager=function(){return this._noteTextManager};d.prototype.start=function(){var a=this,c=this._domElements.getCanvasContainerElement();return this._engine.start(c,{enginePath:this._params.enginePath,engineReady:function(b){return __awaiter(a,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,b];case 1:return a.sent(),[4,this._modelStructure.waitForReady()];case 2:return a.sent(),this._scEngineReady(),
[2]}})})},sceneReady:function(){a._sceneReady()},renderComplete:function(){a._renderComplete()},streamingActivated:function(){a._streamingActivated()},streamingDeactivated:function(){a._streamingDeactivated()},priorityMetaDataSent:function(b,f){a._priorityMetaDataSent(b,f)}})};d.prototype.registerCustomOperator=function(a){return this.operatorManager.registerCustomOperator(a)};d.prototype.unregisterCustomOperator=function(a){this.operatorManager.unregisterCustomOperator(a)};d.prototype.focusInput=
function(a){this._inputMonitor.focusInput(a)};d.prototype.setCallbacks=function(a){this._callbackManager.bind(a)};d.prototype.unsetCallbacks=function(a){this._callbackManager.unbind(a)};d.prototype.resizeCanvas=function(){this._engine.resize();this._inputMonitor.elementResize()};d.prototype.moveToWindow=function(a){this._inputMonitor.setDocument(a.document)};d.prototype.redraw=function(){this._engine.redraw()};d.prototype.selectPart=function(d,c){void 0===c&&(c=a.SelectionMode.Set);return this.selectionManager.selectNode(d,
c)};d.prototype.triggerEvent=function(a,c){this._callbackManager.unsafeTrigger(a,c)};d.prototype._getCallbackManager=function(){return this._callbackManager};d.prototype._setStreamIdleMarker=function(){return this._engine.setStreamIdleMarker()};d.prototype.getStatistics=function(a){void 0===a&&(a=!1);return this._engine.getStatistics(a)};d.prototype.setMinimumFramerate=function(a){this._setMinimumFramerate(a);return Promise.resolve()};d.prototype._setMinimumFramerate=function(a){this._engine.setMinimumFramerate(a)};
d.prototype.getMinimumFramerate=function(){return this._engine.getMinimumFramerate()};d.prototype.setServerRenderQuality=function(a,c,b,f){return this._engine.setServerRenderQuality(a,c,b,f)};d.prototype.getStreamingMode=function(){return this._streamingMode};d.prototype.getRendererType=function(){return this._engine.getRendererType()};d.prototype.getViewElement=function(){return this._domElements.getCanvasContainerElement()};d.prototype.shutdown=function(){this._alreadyShutDown||(console.assert(this._modelStructure.isReady()),
this._callbackManager.trigger("_shutdownBegin"),this.operatorManager._shutdown(),this._inputMonitor.shutdown(),this.markupManager._shutdown(),this._timeoutMonitor.shutdown(),this._modelStructure.shutdown(),this._domElements.shutdown(),this._engine.shutdown(),this._alreadyShutDown=!0)};d.prototype.setClientTimeout=function(a,c){return this._timeoutMonitor.setTimeoutDurations(a,c)};d.prototype.resetClientTimeout=function(){this._timeoutMonitor.resetTimeout()};d.prototype.pauseRendering=function(){this._pauseRendering();
return Promise.resolve()};d.prototype._pauseRendering=function(){this._engine.pauseRendering()};d.prototype.resumeRendering=function(){this._resumeRendering();return Promise.resolve()};d.prototype._resumeRendering=function(){this._engine.resumeRendering()};d.prototype.delayCapping=function(){this.cuttingManager.delayCapping()};d.prototype.reset=function(d){void 0===d&&(d=a.DefaultTransitionDuration);this.view.resetCamera(d);return this.model.reset()};d.prototype.closeConnection=function(){this._engine.disconnectNetwork()&&
this._timeoutMonitor.shutdown()};d.prototype.setAllowHighDpi=function(a){this._engine.setAllowHighDpi(a)};d.prototype.setAllowHighDPI=function(a){this.setAllowHighDpi(a)};d.prototype.getAllowHighDpi=function(){return this._engine.getAllowHighDpi()};d.prototype.getAllowHighDPI=function(){return this.getAllowHighDpi()};d.prototype.takeSnapshot=function(d){var c=this;void 0===d&&(d=new a.SnapshotConfig);var b=a.Internal.OpenPromise.create(),f=new a.Internal.Snapshot(this._domElements,d),h=d.width,k=
d.height;if(0===h||0===k)h=document.body.clientWidth,k=document.body.clientHeight;var q=this._domElements.getCanvasContainerElement(),p=this._domElements.getRedlineElement();d=this._findCanvas(q);var l=new Image;l.src=d.toDataURL();l.onload=function(){l.style.position="absolute";l.style.width="100%";l.style.height="100%";l.style.top="0px";l.style.left="0px";l.style.zIndex="9";l.id="temp-image";document.body.appendChild(l);var a=h/q.clientWidth*100+"%",d=k/q.clientHeight*100+"%";q.style.width=a;q.style.height=
d;p.style.width=a;p.style.height=d;var e=c.getAllowHighDpi();c._engine.setAllowHighDpi(!1);c._engine.resize();var g={_drawComplete:function(){return __awaiter(c,void 0,void 0,function(){var a,h;return __generator(this,function(c){switch(c.label){case 0:return[4,f.capture(q)];case 1:return a=c.sent(),q.style.width="100%",q.style.height="100%",p.style.width="100%",p.style.height="100%",h=document.getElementById("temp-image"),null!==h&&document.body.removeChild(h),this._engine.setAllowHighDpi(e),this._engine.resize(),
this.unsetCallbacks(g),b.resolve(a),[2]}})})}};c.setCallbacks(g);c._engine.redraw();c._engine.resize()};return b};d.prototype.fitWorld=function(d){void 0===d&&(d=a.DefaultTransitionDuration);this.view.fitWorld(d)};d.prototype.setViewOrientation=function(d,c){void 0===c&&(c=a.DefaultTransitionDuration);return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,this.view.setViewOrientation(d,c)];case 1:return a.sent(),this._eventDispatcher.injectViewOrientationChangeEvent(),
[2]}})})};d.prototype._scEngineReady=function(){return __awaiter(this,void 0,void 0,function(){var d=this,c,b,f,h,k,q;return __generator(this,function(p){switch(p.label){case 0:console.assert(this._modelStructure.isReady()),c=this.model.getAbsoluteRootNode(),b=this._engine.getSessionType(),p.label=1;case 1:return p.trys.push([1,,18,19]),[4,Promise.all([this.cuttingManager._init(),this._sceneReadyPromise])];case 2:return p.sent(),[4,this._callbackManager.promiseTrigger("_assemblyTreeReady","assemblyTreeReady")];
case 3:p.sent(),f=function(){d._modelStructure.notifyFirstLoadIsEmptyModel()},h="",p.label=4;case 4:p.trys.push([4,16,,17]);if(b!==this._engine.SessionType().Network)return[3,8];h=this._engine.getNetworkModelName();if(h!==a.EmptyModelName)return[3,5];f();return[3,7];case 5:return[4,this.model.loadSubtreeFromModel(c,h)];case 6:p.sent(),p.label=7;case 7:return[3,15];case 8:if(b!==this._engine.SessionType().Scs)return[3,14];this._timeoutMonitor.shutdown();k=this._engine.getScsInfo();return"string"!==
typeof k?[3,10]:[4,this.model.loadSubtreeFromScsFile(c,k)];case 9:return p.sent(),[3,13];case 10:return null===k?[3,12]:[4,this.model.loadSubtreeFromScsBuffer(c,k)];case 11:return p.sent(),[3,13];case 12:f(),p.label=13;case 13:return[3,15];case 14:throw new a.InternalLogicError;case 15:return[3,17];case 16:throw q=p.sent(),this._callbackManager.trigger("modelLoadFailure",h,""+q,q),q;case 17:return[3,19];case 18:return console.assert(this._modelStructure.isReady()),[2,this._callbackManager.promiseTrigger("_modelStructureReady",
"modelStructureReady")];case 19:return[2]}})})};d.prototype._sceneReady=function(){var a=this;this._inputMonitor.bindEvents(this._domElements.getCanvasContainerElement());this.selectionManager._init();this._callbackManager.bind({_timeout:function(){a.shutdown()}});this._callbackManager.trigger("sceneReady");this._sceneReadyPromise&&this._sceneReadyPromise.resolve()};d.prototype._priorityMetaDataSent=function(d,c){this._callbackManager.trigger("_priorityMetaDataSent",d,c);if(!this._seenPriorityMetaDataSent){if(0!==
d||0!==c)throw new a.InternalLogicError;this._seenPriorityMetaDataSent=!0;this._callbackManager.trigger("_attached",0)}};d.prototype._renderComplete=function(){this.markupManager._update();this._callbackManager.trigger("frameDrawn")};d.prototype._streamingActivated=function(){this._callbackManager.trigger("streamingActivated")};d.prototype._streamingDeactivated=function(){this._callbackManager.trigger("streamingDeactivated")};d.prototype._findCanvas=function(a){if(a instanceof HTMLCanvasElement&&
0<a.clientWidth&&0<a.clientHeight)return a;for(var c=0;c<a.childNodes.length;c++){var b=a.childNodes.item(c);if(b=this._findCanvas(b))return b}return null};d.prototype.setStreamCutoffScale=function(a){this._setStreamCutoffScale(a);return Promise.resolve()};d.prototype._setStreamCutoffScale=function(a){this._engine.setStreamCutoffScale(a)};d.prototype.getStreamCutoffScale=function(){return this._engine.getStreamCutoffScale()};d.prototype._loseWebGlContext=function(){return this._engine.loseWebGlContext()};
d.prototype._getScEngine=function(){return this._engine};d.prototype._debug_log=function(a){return this._engine.debug_log(a)};d.prototype._debug_stateFailure=function(a){return this._engine.debug_stateFailure(a)};d.prototype._debug_sync=function(){return this._engine.debug_sync()};d.prototype.exportToSvg=function(d){void 0===d&&(d=new a.SvgConfig);return this._engine.exportToSvg(d)};d.prototype.waitForIdle=function(){return __awaiter(this,void 0,void 0,function(){var d=this,c,b,f,h;return __generator(this,
function(k){switch(k.label){case 0:return this._alreadyShutDown?[2]:[4,this._engine.setStreamIdleMarker()];case 1:return k.sent(),c=[],this.cuttingManager.hasActiveCuttingSection()?[4,this.cuttingManager.enableCappingIdleCallback(!0)]:[3,3];case 2:(b=k.sent())||c.push(this.cuttingManager.waitForCappingIdle()),k.label=3;case 3:return c.push(this._engine.waitForImageDecoding()),[4,Promise.all(c)];case 4:return k.sent(),f=a.Internal.OpenPromise.create(),h=function(){d._callbackManager.unbind({_drawComplete:h});
f.resolve()},this._callbackManager.bind({_drawComplete:h}),this.redraw(),[4,f];case 5:return k.sent(),[2]}})})};d.prototype.startSheetComparison=function(a,c,b){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(f){switch(f.label){case 0:return[4,this._sheetManager.startComparison(a,c,b)];case 1:return f.sent(),[2]}})})};d.prototype.endSheetComparison=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,
this._sheetManager.endComparison()];case 1:return a.sent(),[2]}})})};d.BUILD_ID="5d0fd14";d.VIEWER_VERSION_STRING="7.0 Build "+d.BUILD_ID;__decorate([d.deprecated],d.prototype,"getView",null);__decorate([d.deprecated],d.prototype,"getModel",null);__decorate([d.deprecated],d.prototype,"getOverlayManager",null);__decorate([d.deprecated],d.prototype,"getMeasureManager",null);__decorate([d.deprecated],d.prototype,"getLineManager",null);__decorate([d.deprecated],d.prototype,"getCuttingManager",null);__decorate([d.deprecated],
d.prototype,"getMarkupManager",null);__decorate([d.deprecated],d.prototype,"getSelectionManager",null);__decorate([d.deprecated],d.prototype,"getExplodeManager",null);__decorate([d.deprecated],d.prototype,"getOperatorManager",null);__decorate([d.deprecated],d.prototype,"triggerEvent",null);__decorate([d.deprecated],d.prototype,"setAllowHighDPI",null);__decorate([d.deprecated],d.prototype,"getAllowHighDPI",null);return d}();a.WebViewer=g})(Communicator||(Communicator={}));
(function(a){(function(g){function d(a){for(var b=2*Math.PI/a,f=[],h=0;h<a;h++){var c=h*b,k=Math.sin(c);f.push(Math.cos(c));f.push(k)}return f}function e(b,f,h,c){void 0===c&&(c=1);var k=a.Point3.cross(h,new a.Point3(0,1,0));.001>k.length()&&(k=a.Point3.cross(h,new a.Point3(0,0,1)));h=a.Point3.cross(k,h);for(var d=2*Math.PI/b,e=[],g=0;g<b;g++){var v=g*d,w=Math.sin(v),v=Math.cos(v),w=k.copy().scale(w).add(h.copy().scale(v)).scale(c).add(f);e.push(w)}return e}function c(b,f,h,c,k){for(var d=[],e=[],
g=0;g<h.length;g++){var v=(g+1)%h.length;d.push(h[g]);d.push(h[v]);d.push(c[g]);d.push(h[v]);d.push(c[v]);d.push(c[g]);e.push(a.Point3.subtract(h[g],b));e.push(a.Point3.subtract(h[v],b));e.push(a.Point3.subtract(c[g],f));e.push(a.Point3.subtract(h[v],b));e.push(a.Point3.subtract(c[v],f));e.push(a.Point3.subtract(c[g],f))}if(k)for(b=a.Point3.subtract(b,f),f=0;f<e.length;f++)e[f].add(b).normalize();return[d,e]}function b(b,f,h,c){var k=[],e=[],g=d(f);for(f=0;f<g.length;f++)g[f]*=b;b=[];var u=[];for(f=
0;f<g.length;f+=2){var v=g[f],w=g[f+1],y=(f+2)%g.length,x=g[y],z=g[y+1],A=g[f],C=g[f+1],B=g[y],y=g[y+1];b[0]=new a.Point3(v,h,w);b[1]=new a.Point3(v,0,w);b[2]=new a.Point3(x,0,z);b[3]=new a.Point3(x,0,z);b[4]=new a.Point3(x,h,z);b[5]=new a.Point3(v,h,w);u[0]=new a.Point3(A,0,C);u[1]=new a.Point3(A,0,C);u[2]=new a.Point3(B,0,y);u[3]=new a.Point3(B,0,y);u[4]=new a.Point3(B,0,y);u[5]=new a.Point3(A,0,C);for(A=0;A<b.length;A++)C=c.transform(b[A]),k.push(C),C=c.transform(u[A]),e.push(C);b[0]=new a.Point3(x,
0,z);b[1]=new a.Point3(v,0,w);b[2]=a.Point3.zero();u[0]=new a.Point3(0,-1,0);u[1]=new a.Point3(0,-1,0);u[2]=new a.Point3(0,-1,0);for(A=0;3>A;A++)C=c.transform(b[A]),k.push(C),C=c.transform(u[A]),e.push(C)}h=[];c=[];for(f=0;f<k.length;f++)g=k[f],h.push(g.x),h.push(g.y),h.push(g.z),g=e[f],c.push(g.x),c.push(g.y),c.push(g.z);return[h,c]}function f(b,f,h,c,k){var e=d(f);for(f=0;f<e.length;f++)e[f]*=b;b=new a.Point3(0,h+c,0);f=new a.Point3(0,h,0);var g=k.transform(b),u=k.transform(f);b=[];c=[];for(f=0;f<
e.length;f+=2){var v=e[f],w=e[f+1],y=(f+2)%e.length,x=e[y],z=e[y+1],A=e[f],C=e[f+1],B=e[y],y=e[y+1],D=new a.Point3(v,h,w),F=new a.Point3(x,h,z),D=k.transform(D),F=k.transform(F);b.push(g);b.push(D);b.push(F);F=new a.Point3(0,1,0);A=new a.Point3(A,0,C);B=new a.Point3(B,0,y);C=k.transform(F);A=k.transform(A);B=k.transform(B);c.push(C);c.push(A);c.push(B);v=new a.Point3(v,h,w);x=new a.Point3(x,h,z);z=k.transform(v);x=k.transform(x);b.push(u);b.push(x);b.push(z);x=new a.Point3(0,-1,0);x=k.transform(x);
c.push(x);c.push(x);c.push(x)}h=[];k=[];for(f=0;f<b.length;f++)e=b[f],h.push(e.x),h.push(e.y),h.push(e.z),e=c[f],k.push(e.x),k.push(e.y),k.push(e.z);return[h,k]}function h(b,f,h,k,d){var g=new a.Point3(0,0,k);k=new a.Point3(0,0,k+d);d=new a.Point3(0,0,1);b=e(h,g,d,b);f=e(h,k,d,f);g=c(g,k,b,f,!0);f=[];h=[];for(b=0;b<g[0].length;b++)f.push(g[0][b].x),f.push(g[0][b].z),f.push(g[0][b].y),h.push(g[1][b].x),h.push(g[1][b].z),h.push(g[1][b].y);return[f,h]}function k(b,f,h){f=a.Point3.subtract(f,b);b=a.Point3.subtract(h,
b);b=a.Point3.dot(b,f)/f.squaredLength();return Math.max(0,Math.min(1,b))}g.generateSphereMeshData=function(){var b=(1+Math.sqrt(5))/2,f=Math.sqrt(10+2*Math.sqrt(5))/(4*b),h=f/2,b=f/(2*b),c=[];c[0]=new a.Point3(-b,h,0);c[1]=new a.Point3(b,h,0);c[2]=new a.Point3(-b,-h,0);c[3]=new a.Point3(b,-h,0);c[4]=new a.Point3(0,-b,h);c[5]=new a.Point3(0,b,h);c[6]=new a.Point3(0,-b,-h);c[7]=new a.Point3(0,b,-h);c[8]=new a.Point3(h,0,-b);c[9]=new a.Point3(h,0,b);c[10]=new a.Point3(-h,0,-b);c[11]=new a.Point3(-h,
0,b);for(h=0;h<c.length;h++)c[h].normalize();for(var k=[[0,11,5],[0,5,1],[0,1,7],[0,7,10],[0,10,11],[1,5,9],[5,11,4],[11,10,2],[10,7,6],[7,1,8],[3,9,4],[3,4,2],[3,2,6],[3,6,8],[3,8,9],[4,9,5],[2,4,11],[6,2,10],[8,6,7],[9,8,1]],d=12,h=function(b){var f=[];k.map(function(b){var h=c[b[0]],k=c[b[1]],e=c[b[2]];c[d++]=(new a.Point3(h.x+k.x,h.y+k.y,h.z+k.z)).scale(.5).normalize();c[d++]=(new a.Point3(k.x+e.x,k.y+e.y,k.z+e.z)).scale(.5).normalize();c[d++]=(new a.Point3(e.x+h.x,e.y+h.y,e.z+h.z)).scale(.5).normalize();
f.push([b[0],d-3,d-1]);f.push([d-3,d-2,d-1]);f.push([d-3,b[1],d-2]);f.push([d-2,b[2],d-1])});k=f},b=0;2>b;b++)h(b);for(var h=[],b=[],f=0,e=k;f<e.length;f++)for(var g=e[f],v=0;3>v;v++){var w=g[v];h.push(c[w].x);h.push(c[w].y);h.push(c[w].z);w=c[w].normalize();b.push(w.x);b.push(w.y);b.push(w.z)}f=new a.MeshData;f.addFaces(h,b);f.setFaceWinding(a.FaceWinding.CounterClockwise);return f};g.generateConeCylinderMeshData=function(c,k,d,e,g,r){var t=new a.Matrix;g=f(e,k,d+r,g,t);t=b(c,k,d,t);k=h(c,e,k,d,
r);c=g[0].concat(t[0]).concat(k[0]);g=g[1].concat(t[1]).concat(k[1]);k=new a.MeshData;k.setFaceWinding(a.FaceWinding.Clockwise);k.addFaces(c,g);return k};g.createCircle=d;g.createCircleFromPointAndNormal=e;g.createCylinderFromArc=function(b,f,h,k){for(var d=[],g=[],t,u=0;u<b.length-3;u+=3){var v=new a.Point3(b[u],b[u+1],b[u+2]),w=new a.Point3(b[u+3],b[u+4],b[u+5]),y=e(h,v,f,k),x=e(h,w,f,k);t=c(v,w,y,x,!1);Array.prototype.push.apply(d,t[0]);Array.prototype.push.apply(g,t[1])}v=b.length;u=new a.Point3(b[v-
3],b[v-2],b[v-1]);x=u.copy().subtract(new a.Point3(b[v-6],b[v-5],b[v-4])).normalize();v=e(2*h,u,f,k);w=u.copy().add(x.copy().scale(2/3));y=e(2*h,w,f,2*k);x=w.copy().add(x.copy().scale(2));t=c(u,w,v,y,!1);Array.prototype.push.apply(d,t[0]);Array.prototype.push.apply(g,t[1]);for(u=0;u<v.length;u++)t=(u+1)%v.length,d.push(x),d.push(y[u]),d.push(y[t]),t=y[u].copy().subtract(w).normalize().add(x.copy().normalize()).normalize(),g.push(t),g.push(t),g.push(t);u=new a.Point3(b[0],b[1],b[2]);x=u.copy().subtract(new a.Point3(b[3],
b[4],b[5])).normalize();v=e(2*h,u,f,k);w=u.copy().add(x.copy().scale(2/3));y=e(2*h,w,f,2*k);x=w.copy().add(x.copy().scale(2));t=c(w,u,y,v,!1);Array.prototype.push.apply(d,t[0]);Array.prototype.push.apply(g,t[1]);for(u=0;u<v.length;u++)t=(u+1)%v.length,d.push(x),d.push(y[t]),d.push(y[u]),t=y[u].copy().subtract(w).normalize().add(x.copy().normalize()).normalize(),g.push(t),g.push(t),g.push(t);b=[];f=[];for(u=0;u<d.length;u++)h=d[u],b.push(h.x),b.push(h.y),b.push(h.z),t=g[u],f.push(t.x),f.push(t.y),
f.push(t.z);d=new a.MeshData;d.setFaceWinding(a.FaceWinding.CounterClockwise);d.addFaces(b,f);return d};g.createCylinderPosNorms=c;g.createCylinder=b;g.createCone=f;g.createTaper=h;g.lineLineIntersect=function(b,f,h,c){var k=a.Point3.zero(),d=a.Point3.zero(),e,g=a.Point3.zero(),v=a.Point3.zero(),w=a.Point3.zero(),y;g.x=b.x-h.x;g.y=b.y-h.y;g.z=b.z-h.z;v.x=c.x-h.x;v.y=c.y-h.y;v.z=c.z-h.z;if(1E-12>Math.abs(v.x)&&1E-12>Math.abs(v.y)&&1E-12>Math.abs(v.z))return null;w.x=f.x-b.x;w.y=f.y-b.y;w.z=f.z-b.z;
if(1E-12>Math.abs(w.x)&&1E-12>Math.abs(w.y)&&1E-12>Math.abs(w.z))return null;f=g.x*v.x+g.y*v.y+g.z*v.z;c=v.x*w.x+v.y*w.y+v.z*w.z;e=g.x*w.x+g.y*w.y+g.z*w.z;g=v.x*v.x+v.y*v.y+v.z*v.z;y=(w.x*w.x+w.y*w.y+w.z*w.z)*g-c*c;if(1E-12>Math.abs(y))return null;e=(f*c-e*g)/y;f=(f+c*e)/g;k.x=b.x+e*w.x;k.y=b.y+e*w.y;k.z=b.z+e*w.z;d.x=h.x+f*v.x;d.y=h.y+f*v.y;d.z=h.z+f*v.z;return k};g.closestPointScalarFromPointToSegment=k;g.closestPointFromPointToSegment=function(b,f,h){h=k(b,f,h);f=a.Point3.subtract(f,b).scale(h);
return a.Point3.add(b,f)};g.isPointOnLineSegment=function(b,f,h,c){var d=k(b,f,h);if(0>d||1<d)return!1;f=a.Point3.subtract(f,b).scale(d);b=a.Point3.add(b,f);return a.Point3.subtract(b,h).squaredLength()<=c*c}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(a,b,f,h){var k=this;this._killHandles=[];this._activeSelectionCount=0;this._inactivityPromise=null;this._viewer=a;this._allowSelection=b;this._beginSelection=f;this._createSelectionPredicate=h;this._callbacks={selectionArray:function(a){0===a.length&&k._stopSelection()},_resetAssemblyTreeBegin:function(){return __awaiter(k,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,this.clearSelection()];case 1:return a.sent(),
[2,this.waitForInactivity()]}})})}};a.setCallbacks(this._callbacks)}d.prototype.destroy=function(){null!==this._callbacks&&(this._viewer.unsetCallbacks(this._callbacks),this._callbacks=null)};d.performSelection=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var h,k,q,p;return __generator(this,function(g){switch(g.label){case 0:return h=function(){return!0},k=function(){return null},q=new d(a,h,f,k),[4,q.performSelection(b)];case 1:return p=g.sent(),q.destroy(),[2,p]}})})};d.prototype.hasActiveSelection=
function(){return 0<this._activeSelectionCount};d.prototype.waitForInactivity=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){if(0===this._activeSelectionCount)return console.assert(null===this._inactivityPromise),[2,Promise.resolve()];null===this._inactivityPromise&&(this._inactivityPromise=a.OpenPromise.create());return[2,this._inactivityPromise]})})};d.prototype._stopSelection=function(){return __awaiter(this,void 0,void 0,function(){var c,b;return __generator(this,
function(f){switch(f.label){case 0:return console.assert(this._killHandles.length<=this._activeSelectionCount),this._killHandles.length<this._activeSelectionCount?[4,a.sleep(10)]:[3,2];case 1:return f.sent(),[2,this._stopSelection()];case 2:for(c=[];0<this._killHandles.length;)b=this._killHandles[this._killHandles.length-1],c.push(b());return[2,a.waitForAll(c)]}})})};d.prototype.clearSelection=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){a=this._viewer.selectionManager;
a.clear();return[2,this._stopSelection()]})})};d.prototype._advanceBySelectionManager=function(a,b){return __awaiter(this,void 0,void 0,function(){var f;return __generator(this,function(h){f=this._viewer.selectionManager;return[2,f.advanceIncrementalSelection(a,b)]})})};d.prototype._advanceByView=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var h,k,d,e,g,m;return __generator(this,function(n){switch(n.label){case 0:return h=this._viewer.view,[4,h.advanceIncrementalSelection(a)];case 1:return k=
n.sent(),null===k?[2,!1]:b?[4,Promise.all(k.map(b))]:[3,3];case 2:d=n.sent(),k=k.filter(function(a,b){return d[b]}),n.label=3;case 3:e=0;for(g=k;e<g.length;e++)m=g[e],f.push(m);return[2,!0]}})})};d.prototype.performSelection=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:return console.assert(null!==this._callbacks),a?[2,this._performSelection(null)]:[3,1];case 1:return b=[],[4,this._performSelection(b)];case 2:return f.sent(),
[2,b]}})})};d.prototype._performSelection=function(c){return __awaiter(this,void 0,void 0,function(){var b=this,f,h,k,d,e,l,m,n;return __generator(this,function(r){switch(r.label){case 0:if(!this._allowSelection())return[2];f=this._createSelectionPredicate();++this._activeSelectionCount;h=this._viewer.selectionManager;k=null===c;return[4,this._beginSelection()];case 1:d=r.sent(),e=!1,l=function(m){return __awaiter(b,void 0,void 0,function(){var b;return __generator(this,function(n){switch(n.label){case 0:if(!m)return[2,
!1];b=k?this._advanceBySelectionManager(d,f):this._advanceByView(d,f,c);return[4,b];case 1:return m=n.sent(),!m||e?(e&&k&&h.clear(),[2,!1]):[4,a.sleep(1)];case 2:return n.sent(),[2,l(!0)]}})})},m=a.Once.create(function(){return __awaiter(b,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return a=this._killHandles.indexOf(n),this._killHandles.splice(a,1),e=!0,k?[4,h.endIncrementalSelection(d)]:[3,2];case 1:return b.sent(),[3,4];case 2:return[4,this._viewer.view.endIncrementalSelection(d)];
case 3:b.sent(),b.label=4;case 4:return--this._activeSelectionCount,0===this._activeSelectionCount&&null!==this._inactivityPromise&&(this._inactivityPromise.resolve(),this._inactivityPromise=null),[2]}})})}),n=function(){return __awaiter(b,void 0,void 0,function(){return __generator(this,function(a){return[2,m.trigger()]})})},this._killHandles.push(n),r.label=2;case 2:return r.trys.push([2,,4,5]),[4,l(!0)];case 3:return r.sent(),[3,5];case 4:return n(),[7];case 5:return[2]}})})};return d}();a.IncrementalSelection=
d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(){this.diffuseColor=[1,1,1,1]}a.prototype.setDiffuseTransparency=function(a){this.diffuseColor[3]=a};a.prototype.setDiffuseColor=function(a){a.toFloatArray(this.diffuseColor)};a.prototype.setDiffuseColorFromArray=function(a){this.diffuseColor[0]=a[0];this.diffuseColor[1]=a[1];this.diffuseColor[2]=a[2]};a.prototype.hash=function(){return this.diffuseColor.join(",")};return a}();a.MaterialInfo=d;d=function(){function a(c){this._materials=new Map;
this._engine=c}a.prototype.getOrCreateMaterial=function(a){var b=this,f=a.hash(),h=this._materials.get(f);if(void 0!==h)return h;h=this._engine.createMaterial().then(function(f){return __awaiter(b,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return[4,this._engine.setDiffuseColor(f,a.diffuseColor)];case 1:return b.sent(),[2,f]}})})});this._materials.set(f,h);return h};return a}();a.ScMaterialCache=d;d=function(){function a(c){this._engine=c}a.prototype.getIdentityInc=
function(){return this._identityInc};a.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,this._engine.createIdentityMatrix()];case 1:return this._identityInc=a=b.sent(),[2]}})})};return a}();a.ScMatrixCache=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(b,f,h){if(b.selectionMask===a.SelectionMask.None)throw new a.CommunicatorError("selectionMask is None");return __assign({},b,{cullSuboptimalEntities:f,enableOcclusionChecks:f,restrictLinesAndPointsToSelectedFaceInstances:h?!1:b.restrictLinesAndPointsToSelectedFaceInstances})}function e(b,f){var h=a.Point3.createFromArray(b.rayPoint),c=a.Point3.createFromArray(b.normal),k=new a.Point3(b.bounding.min[0],b.bounding.min[1],b.bounding.min[2]),d=new a.Point3(b.bounding.max[0],
b.bounding.max[1],b.bounding.max[2]),k=new a.Box(k,d);f=new a.Selection.FaceEntity(h,c,b.elementIndex,b.overlayIndex,b.elementBits,k,f);b=b.instanceInc;return a.Selection.SelectionItem.create(b[1],b[0],f,null,null)}function c(b){var f=new a.Point3(b.bounding.min[0],b.bounding.min[1],b.bounding.min[2]),h=new a.Point3(b.bounding.max[0],b.bounding.max[1],b.bounding.max[2]),f=new a.Box(f,h),f=new a.Selection.LineEntity(b.elementIndex,a.Point3.createFromArray(b.point),b.lineSegmentVertices,b.bestLineSegmentVertexIndex,
f,b.overlayIndex,b.elementBits);b=b.instanceInc;return a.Selection.SelectionItem.create(b[1],b[0],null,f,null)}function b(b){var f=new a.Selection.PointEntity(a.Point3.createFromArray(b.point),b.elementIndex,b.overlayIndex,b.elementBits);b=b.instanceInc;return a.Selection.SelectionItem.create(b[1],b[0],null,null,f)}function f(a){return null!==a.point?(a=a.point.entities[0],b(a)):null!==a.line?(a=a.line.entities[0],c(a)):null!==a.face?(a=a.face.entities[0],e(a,!1)):null!==a.proximityFace?(a=a.proximityFace.entities[0],
e(a,!0)):null}function h(f){var h=null;if(null!==f.face)var k=f.face.entities[0],h=e(k,!1);else null!==f.proximityFace&&(k=f.proximityFace.entities[0],h=e(k,!0));var d=null;null!==f.line&&(k=f.line.entities[0],d=c(k));k=null;null!==f.point&&(k=f.point.entities[0],k=b(k));return new a.Selection.Internal.CompositeSelectionItem(h,d,k)}function k(a){var f=[];if(null!==a.face)for(var h=0,k=a.face.entities;h<k.length;h++){var d=e(k[h],!1);f.push(d)}a:for(d=a.line,h=a.point,k=a.proximityFace,a=null!==d?
d.entities:[],h=null!==h?h.entities:[],k=null!==k?k.entities:[],d=[a,h,k];;){for(var q,g=q=Number.POSITIVE_INFINITY,v=null,w=0;w<d.length;w++){var y=d[w];if(0<y.length){var x=y[0];x.radialMetric<q?(q=x.radialMetric,g=x.zMetric,v=y):x.radialMetric===q&&x.zMetric<g&&(g=x.zMetric,v=y)}}q=v;if(null===q){console.assert(0===a.length);console.assert(0===h.length);console.assert(0===k.length);break a}console.assert(0<q.length);q===a?(q=a.pop(),q=c(q)):q===h?(q=h.pop(),q=b(q)):(console.assert(q===k),q=k.pop(),
q=e(q,!0));f.push(q)}return f}var q=function(){function b(a){this._pickTolerance=20;this._incrementalChunkedItems=new Map;this._sc=a}b.prototype.setPickTolerance=function(a){this._pickTolerance=a};b.prototype.getPickTolerance=function(){return this._pickTolerance};b.prototype.beginScreenAreaSelection=function(b,f,h){return __awaiter(this,void 0,void 0,function(){var c,k,d;return __generator(this,function(e){switch(e.label){case 0:c=h,e.label=1;case 1:return e.trys.push([1,3,,4]),[4,this._sc.beginScreenAreaSelection(b.x,
b.y,f.x,f.y,c)];case 2:return k=e.sent(),[3,4];case 3:d=e.sent();if(SC.isError(d)&&"beginScreenAreaSelection"===d.scFunction)throw new a.SelectionInvalidatedError;throw d;case 4:return[2,new a.Selection.IncrementalSelectionId(k)]}})})};b.prototype.beginRayDrillSelection=function(b,f,h){return __awaiter(this,void 0,void 0,function(){var c,k,d;return __generator(this,function(e){switch(e.label){case 0:c=h,e.label=1;case 1:return e.trys.push([1,3,,4]),[4,this._sc.beginRayDrillSelection(b.x,b.y,f,c)];
case 2:return k=e.sent(),[3,4];case 3:d=e.sent();if(SC.isError(d)&&"beginRayDrillSelection"===d.scFunction)throw new a.SelectionInvalidatedError;throw d;case 4:return[2,new a.Selection.IncrementalSelectionId(k)]}})})};b.prototype.beginConvexPolyhedronSelection=function(b,f,h){return __awaiter(this,void 0,void 0,function(){var c,k,d,e,q,p,g,z;return __generator(this,function(A){switch(A.label){case 0:c=h;k=[];d=0;for(e=b;d<e.length;d++)q=e[d],k.push(q.getCoefficients());p=[f.x,f.y,f.z];A.label=1;case 1:return A.trys.push([1,
3,,4]),[4,this._sc.beginConvexPolyhedronSelection(k,p,c)];case 2:return g=A.sent(),[3,4];case 3:z=A.sent();if(SC.isError(z)&&"beginConvexPolyhedronSelection"===z.scFunction)throw new a.SelectionInvalidatedError;throw z;case 4:return[2,new a.Selection.IncrementalSelectionId(g)]}})})};b.prototype.beginSphereSelection=function(b,f,h){return __awaiter(this,void 0,void 0,function(){var c,k,d;return __generator(this,function(e){switch(e.label){case 0:c=h,e.label=1;case 1:return e.trys.push([1,3,,4]),[4,
this._sc.beginSphereSelection(b,f,c)];case 2:return k=e.sent(),[3,4];case 3:d=e.sent();if(SC.isError(d)&&"beginSphereSelection"===d.scFunction)throw new a.SelectionInvalidatedError;throw d;case 4:return[2,new a.Selection.IncrementalSelectionId(k)]}})})};b.prototype.endIncrementalSelection=function(a){this._incrementalChunkedItems.delete(a._handle);this._sc.endVolumeSelection(a._handle)};b.prototype.advanceIncrementalSelection=function(b,f){return __awaiter(this,void 0,void 0,function(){var h,c,k,
d,e,q,p,x,z;return __generator(this,function(A){switch(A.label){case 0:if((h=this._incrementalChunkedItems.get(b._handle))&&h.length)return[2,h.pop()];c=1E3;A.label=1;case 1:return A.trys.push([1,3,,4]),[4,this._sc.advanceVolumeSelection(b._handle,c)];case 2:return k=A.sent(),[3,4];case 3:d=A.sent();if(SC.isError(d)&&"advanceVolumeSelection"===d.scFunction)throw new a.SelectionInvalidatedError;throw d;case 4:return 2!==k.length||4294967295!==k[1]?[3,7]:f?[4,this._sc.setStreamIdleMarker()]:[3,6];case 5:return A.sent(),
[2,this.advanceIncrementalSelection(b,!1)];case 6:return[2,null];case 7:e=[];for(q=0;q<k.length;q+=2)p=k[q],x=k[q+1],e.push(a.Selection.SelectionItem.create(x,p));if(100>=e.length)return[2,e];z=g.chunkify(e,100).reverse();this._incrementalChunkedItems.set(b._handle,z);return[2,z.pop()]}})})};b.prototype._screenSelectByRay=function(b,f,h,c){return __awaiter(this,void 0,void 0,function(){var k,e,q,p;return __generator(this,function(g){k=d(f,h,c);e=f.selectionMask;p=(q=f.selectionMask!==a.SelectionMask.Face||
f.enableProximityFaces)?this._pickTolerance:-1;return[2,this._sc.screenSelectByRay(e,b.x,b.y,p,k)]})})};b.prototype._worldSelectByRay=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var h,c;return __generator(this,function(k){h=d(b,f,!1);c=g.toScRay(a);return[2,this._sc.worldSelectByRay(c,h)]})})};b.prototype.pickFromScreen=function(a,b,h){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(k){switch(k.label){case 0:return[4,this._screenSelectByRay(a,
b,!0,h)];case 1:return c=k.sent(),[2,f(c)]}})})};b.prototype.pickAllFromScreen=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var h;return __generator(this,function(c){switch(c.label){case 0:return[4,this._screenSelectByRay(a,b,!1,f)];case 1:return h=c.sent(),[2,k(h)]}})})};b.prototype.compositePickFromScreen=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(k){switch(k.label){case 0:return[4,this._screenSelectByRay(a,b,!0,f)];case 1:return c=
k.sent(),[2,h(c)]}})})};b.prototype.pickFromRay=function(a,b){return __awaiter(this,void 0,void 0,function(){var h;return __generator(this,function(c){switch(c.label){case 0:return[4,this._worldSelectByRay(a,b,!0)];case 1:return h=c.sent(),[2,f(h)]}})})};b.prototype.pickAllFromRay=function(a,b){return __awaiter(this,void 0,void 0,function(){var f;return __generator(this,function(h){switch(h.label){case 0:return[4,this._worldSelectByRay(a,b,!1)];case 1:return f=h.sent(),[2,k(f)]}})})};b.prototype.pickCompositeFromRay=
function(a,b){return __awaiter(this,void 0,void 0,function(){var f,c,k;return __generator(this,function(e){switch(e.label){case 0:return f=d(b,!0,!1),c=g.toScRay(a),[4,this._sc.worldSelectByRay(c,f)];case 1:return k=e.sent(),[2,h(k)]}})})};return b}();g.ScSelectionManager=q})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){g.toScRay=function(a){var e={origin:[],direction:[]};a.origin.toArray(e.origin);a.direction.toArray(e.direction);return e};g.makeFaceFaceDistanceItem=function(d){var e=new a.FaceFaceDistanceItem;e.pos1.fromArray(d.point1);e.pos2.fromArray(d.point2);e.distance=d.distance;return e}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(d){this.attributes=d}a.prototype.copy=function(){return new a(this.attributes.map(function(a){return a.copy()}))};return a}();a.SubentityAttributes=g})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(d){d.isFace=function(c){return c instanceof a.SubentityProperties.CylinderElement||c instanceof a.SubentityProperties.PlaneElement||c instanceof a.SubentityProperties.ConeElement||c instanceof a.SubentityProperties.SphereElement||c instanceof a.SubentityProperties.TorusElement||c instanceof a.SubentityProperties.Blend01Element||c instanceof a.SubentityProperties.Blend02Element||c instanceof a.SubentityProperties.Blend03Element||c instanceof a.SubentityProperties.NurbsElement||
c instanceof a.SubentityProperties.CylindricalElement||c instanceof a.SubentityProperties.OffsetElement||c instanceof a.SubentityProperties.PipeElement||c instanceof a.SubentityProperties.RuledElement||c instanceof a.SubentityProperties.RevolutionElement||c instanceof a.SubentityProperties.ExtrusionElement||c instanceof a.SubentityProperties.FromCurvesElement||c instanceof a.SubentityProperties.TransformElement||c instanceof a.SubentityProperties.OtherFaceElement};d.isEdge=function(c){return c instanceof
a.SubentityProperties.LineElement||c instanceof a.SubentityProperties.CircleElement||c instanceof a.SubentityProperties.OtherEdgeElement}})(d.MeasurementProperty||(d.MeasurementProperty={}))})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(d){(function(c){c.parseBinary=function(c){var B=a.SubentityProperties.FaceType,D=c.parseFaceType();switch(D){case B.Cylinder:return b.parseBinary(c);case B.Plane:return f.parseBinary(c);case B.Cone:return h.parseBinary(c);case B.Other:return e.parseBinary(c);case B.Sphere:return k.parseBinary(c);case B.Torus:return d.parseBinary(c);case B.Blend01:return l.parseBinary(c);case B.Blend02:return m.parseBinary(c);case B.Blend03:return n.parseBinary(c);case B.Nurbs:return r.parseBinary(c);
case B.Cylindrical:return t.parseBinary(c);case B.Offset:return u.parseBinary(c);case B.Pipe:return v.parseBinary(c);case B.Ruled:return w.parseBinary(c);case B.Revolution:return y.parseBinary(c);case B.Extrusion:return x.parseBinary(c);case B.FromCurves:return z.parseBinary(c);case B.Transform:return A.parseBinary(c);default:throw g.TypeAssert(D),new a.AssemblyDataParseError("Unexpected measurement face type.");}};var b=function(){function b(){}b.parseBinary=function(b){var f=b.parseFloat_32(),h=
b.parsePoint3_32();b=b.parsePoint3_32();return new a.SubentityProperties.CylinderElement(f,h,b)};return b}();c.Cylinder=b;var f=function(){function b(){}b.parseBinary=function(b){var f=b.parsePoint3_32();b=b.parsePoint3_32();return new a.SubentityProperties.PlaneElement(f,b)};return b}();c.Plane=f;var h=function(){function b(){}b.parseBinary=function(b){var f=b.parseFloat_32(),h=b.parsePoint3_32(),c=b.parsePoint3_32();b=b.parseFloat_32();return new a.SubentityProperties.ConeElement(f,h,c,b)};return b}();
c.Cone=h;var k=function(){function b(){}b.parseBinary=function(b){var f=b.parseFloat_32(),h=b.parsePoint3_32();b=b.parsePoint3_32();return new a.SubentityProperties.SphereElement(f,h,b)};return b}();c.Sphere=k;var d=function(){function b(){}b.parseBinary=function(b){var f=b.parseFloat_32(),h=b.parseFloat_32(),c=b.parsePoint3_32();b=b.parsePoint3_32();return new a.SubentityProperties.TorusElement(f,h,c,b)};return b}();c.Torus=d;var e=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.OtherFaceElement};
return b}();c.Other=e;var l=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.Blend01Element};return b}();c.Blend01=l;var m=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.Blend02Element};return b}();c.Blend02=m;var n=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.Blend03Element};return b}();c.Blend03=n;var r=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.NurbsElement};
return b}();c.Nurbs=r;var t=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.CylindricalElement};return b}();c.Cylindrical=t;var u=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.OffsetElement};return b}();c.Offset=u;var v=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.PipeElement};return b}();c.Pipe=v;var w=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.RuledElement};
return b}();c.Ruled=w;var y=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.RevolutionElement};return b}();c.Revolution=y;var x=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.ExtrusionElement};return b}();c.Extrusion=x;var z=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.FromCurvesElement};return b}();c.FromCurves=z;var A=function(){function b(){}b.parseBinary=function(b){b;return new a.SubentityProperties.TransformElement};
return b}();c.Transform=A})(d.Face||(d.Face={}))})(d.MeasurementProperty||(d.MeasurementProperty={}))})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(d){(function(c){c.parseBinary=function(c){var d=a.SubentityProperties.EdgeType,e=c.parseEdgeType();switch(e){case d.Line:return b.parseBinary(c);case d.Circle:return f.parseBinary(c);case d.Other:return h.parseBinary(c);default:throw g.TypeAssert(e),new a.AssemblyDataParseError("Unexpected measurement edge type.");}};var b=function(){function b(){}b.parseBinary=function(b){b=b.parseFloat_32();return new a.SubentityProperties.LineElement(b)};return b}();
c.Line=b;var f=function(){function b(){}b.parseBinary=function(b){var f=b.parseFloat_32(),h=b.parsePoint3_32();b=b.parsePoint3_32();return new a.SubentityProperties.CircleElement(f,h,b)};return b}();c.Circle=f;var h=function(){function b(){}b.parseBinary=function(b){b=b.parseFloat_32();return new a.SubentityProperties.OtherEdgeElement(b)};return b}();c.Other=h})(d.Edge||(d.Edge={}))})(d.MeasurementProperty||(d.MeasurementProperty={}))})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||
(Communicator={}));
(function(a){(function(a){var d;(function(a){a[a.Undefined=0]="Undefined";a[a.Line=1]="Line";a[a.Circle=2]="Circle";a[a.Other=6]="Other"})(d=a.EdgeType||(a.EdgeType={}));var e;(function(a){a[a.Undefined=0]="Undefined";a[a.Cylinder=3]="Cylinder";a[a.Plane=4]="Plane";a[a.Cone=5]="Cone";a[a.Other=6]="Other";a[a.Sphere=7]="Sphere";a[a.Torus=8]="Torus";a[a.Blend01=9]="Blend01";a[a.Blend02=10]="Blend02";a[a.Blend03=11]="Blend03";a[a.Nurbs=12]="Nurbs";a[a.Cylindrical=13]="Cylindrical";a[a.Offset=14]="Offset";
a[a.Pipe=15]="Pipe";a[a.Ruled=16]="Ruled";a[a.Revolution=17]="Revolution";a[a.Extrusion=18]="Extrusion";a[a.FromCurves=19]="FromCurves";a[a.Transform=20]="Transform"})(e=a.FaceType||(a.FaceType={}));var c=function(){function a(b){this.length=b}a.prototype.copy=function(){return new a(this.length)};a.prototype.type=function(){return d.Line};return a}();a.LineElement=c;c=function(){function a(b,h,c){this.radius=b;this.origin=h.copy();this.normal=c.copy()}a.prototype.copy=function(){return new a(this.radius,
this.origin,this.normal)};a.prototype.type=function(){return d.Circle};return a}();a.CircleElement=c;c=function(){function a(b){this.length=b}a.prototype.copy=function(){return new a(this.length)};a.prototype.type=function(){return d.Other};return a}();a.OtherEdgeElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Other};return a}();a.OtherFaceElement=c;c=function(){function a(b,h,c){this.radius=b;this.origin=h.copy();this.normal=c.copy()}
a.prototype.copy=function(){return new a(this.radius,this.origin,this.normal)};a.prototype.type=function(){return e.Cylinder};return a}();a.CylinderElement=c;c=function(){function a(b,h){this.origin=b.copy();this.normal=h.copy()}a.prototype.copy=function(){return new a(this.origin,this.normal)};a.prototype.type=function(){return e.Plane};return a}();a.PlaneElement=c;c=function(){function a(b,h,c,d){this.radius=b;this.origin=h.copy();this.normal=c.copy();this.halfAngle=d}a.prototype.copy=function(){return new a(this.radius,
this.origin,this.normal,this.halfAngle)};a.prototype.type=function(){return e.Cone};return a}();a.ConeElement=c;c=function(){function a(b,h,c){this.radius=b;this.origin=h.copy();this.normal=c.copy()}a.prototype.copy=function(){return new a(this.radius,this.origin,this.normal)};a.prototype.type=function(){return e.Sphere};return a}();a.SphereElement=c;c=function(){function a(b,h,c,d){this.majorRadius=b;this.minorRadius=h;this.origin=c.copy();this.normal=d.copy()}a.prototype.copy=function(){return new a(this.majorRadius,
this.minorRadius,this.origin,this.normal)};a.prototype.type=function(){return e.Torus};return a}();a.TorusElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Blend01};return a}();a.Blend01Element=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Blend02};return a}();a.Blend02Element=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Blend03};
return a}();a.Blend03Element=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Nurbs};return a}();a.NurbsElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Cylindrical};return a}();a.CylindricalElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Offset};return a}();a.OffsetElement=c;c=function(){function a(){}a.prototype.copy=
function(){return new a};a.prototype.type=function(){return e.Pipe};return a}();a.PipeElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Ruled};return a}();a.RuledElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Revolution};return a}();a.RevolutionElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Extrusion};
return a}();a.ExtrusionElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.FromCurves};return a}();a.FromCurvesElement=c;c=function(){function a(){}a.prototype.copy=function(){return new a};a.prototype.type=function(){return e.Transform};return a}();a.TransformElement=c})(a.SubentityProperties||(a.SubentityProperties={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(b,f){var h=new a.PickConfig(a.SelectionMask.Face);h.bimMask=b;h.ignoreOverlays=!0;null!==f&&(h.maxWorldDistance=f);return h}function e(b,f,h,c){return g.IncrementalSelection.performSelection(b,!1,function(){var d=new a.IncrementalPickConfig(a.SelectionMask.Face);d.bimMask=c;d.onlyStreamedInstances=!0;d.ignoreUnrequestedInstances=!0;return b.view.beginSphereSelection(f,h,d)})}var c=function(){function b(a,b){this._nearbyDoors=new Set;this._viewer=a;this._engine=
b}b.prototype.applyGravity=function(b,h,c){return __awaiter(this,void 0,void 0,function(){var e,p,g;return __generator(this,function(m){switch(m.label){case 0:return e=new a.Ray(b,h),p=d(a.BimMask.Floor,c),[4,this._engine.pickFromRay(e,p)];case 1:g=m.sent();if(null===g)return[2,null];if(!g.isFaceSelection())throw new a.InternalLogicError;return[2,g.getPosition()]}})})};b.prototype.testWallCollision=function(b,h,c){return __awaiter(this,void 0,void 0,function(){var e,p,g;return __generator(this,function(m){switch(m.label){case 0:return e=
new a.Ray(b,h),p=d(a.BimMask.Wall,c),[4,this._engine.pickFromRay(e,p)];case 1:g=m.sent();if(null===g)return[2,null];if(!g.isFaceSelection())throw new a.InternalLogicError;return[2,g]}})})};b.prototype.updateNearbyDoors=function(b,h,c){return __awaiter(this,void 0,void 0,function(){var d,p,l,m,n,r,t,u,v,w,y;return __generator(this,function(x){switch(x.label){case 0:return[4,e(this._viewer,b,h,a.BimMask.Door)];case 1:d=x.sent();p=new Set;l=0;for(m=d;l<m.length;l++)n=m[l],r=n.getNodeId(),p.add(r);t=
g.setSubtraction(p,this._nearbyDoors);u=g.setSubtraction(this._nearbyDoors,p);v=g.setToArray(t);w=g.setToArray(u);y=this._viewer.model;y.setNodesOpacity(v,c);y.resetNodesOpacity(w);this._nearbyDoors=p;return[2]}})})};b.prototype.forgetNearbyDoors=function(){var a=g.setToArray(this._nearbyDoors);this._nearbyDoors.clear();this._viewer.model.resetNodesOpacity(a)};return b}();g.BimMotion=c})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(b,f,h,c){return __awaiter(this,void 0,void 0,function(){var k,e,g,u,v,w,y,x;return __generator(this,function(z){switch(z.label){case 0:return[4,f.getNodeOrRepItem(h)];case 1:k=z.sent();if(null===k||k instanceof d.RepresentationItem||k instanceof d.PartDefinition)return[2,a.BimMask.None];e=d.getNodeGenericType(k);return null!==e?[3,3]:null===c?[2,a.BimMask.None]:[4,k.getAttributes()];case 2:g=z.sent();u=0;for(v=g;u<v.length;u++)if(w=v[u],y=w.getTitle(),
y===c){e=w.getValue();break}if(null===e)return[2,a.BimMask.None];z.label=3;case 3:return x=b(e),x!==a.BimMask.None?[2,x]:[2,a.BimMask.None]}})})}function c(a){return __awaiter(this,void 0,void 0,function(){var b,f;return __generator(this,function(h){switch(h.label){case 0:return b=[],f={enterAnyBody:function(a){a instanceof d.BodyInstance&&b.push(a)}},[4,d.WalkerAsync.walk(f,a,!1)];case 1:return h.sent(),[2,b]}})})}function b(a){return __awaiter(this,void 0,void 0,function(){var b,f,h,k,d,e;return __generator(this,
function(u){switch(u.label){case 0:return[4,c(a)];case 1:b=u.sent();f=new Set;h=0;for(k=b;h<k.length;h++)d=k[h],e=d.getParent(),f.add(e);return[2,g.setToArray(f)]}})})}function f(b,f,h,c){return __awaiter(this,void 0,void 0,function(){var k,d,g,u,v,w,y,x,z,A,C;return __generator(this,function(B){switch(B.label){case 0:k=[];d=0;for(g=h;d<g.length;d++)u=g[d],v=e(b,f,u,c),k.push(v);return[4,Promise.all(k)];case 1:w=B.sent();y=[];x=[];z=[];for(A=0;A<h.length;++A)u=h[A],C=w[A],C!==a.BimMask.None&&(0!==
(C&a.BimMask.Floor)&&y.push(u),0!==(C&a.BimMask.Wall)&&x.push(u),0!==(C&a.BimMask.Door)&&z.push(u));return[2,{floors:y,walls:x,doors:z}]}})})}function h(a){for(var b=[],f=0;f<a.length;f++)for(var h=0,c=a[f].getBodyInstances();h<c.length;h++){var k=c[h].getInstanceInc();b.push(k[0],k[1])}return b}var k;(function(a){a.Column="IFCCOLUMN";a.Covering="IFCCOVERING";a.CurtainWall="IFCCURTAINWALL";a.Door="IFCDOOR";a.Ramp="IFCRAMP";a.Roof="IFCROOF";a.Slab="IFCSLAB";a.Space="IFCSPACE";a.Stair="IFCSTAIR";a.StairFlight=
"IFCSTAIRFLIGHT";a.TransportElement="IFCTRANSPORTELEMENT";a.Wall="IFCWALL";a.WallStandardCase="IFCWALLSTANDARDCASE";a.Window="IFCWINDOW"})(k=d.StaticGenericType||(d.StaticGenericType={}));d.hasEffectiveGenericType=function(a,b){for(;null!==a;){if(a.getName()===b||d.getNodeGenericType(a)===b)return!0;a=d.towardProductOccurrence(a.getParent())}return!1};d.isGenericType=function(a){return"IFC"===a.substr(0,3)};d.ifcAttributeToBimMask=function(b){switch(b){case k.Column:case k.CurtainWall:case k.Stair:case k.StairFlight:case k.Wall:case k.WallStandardCase:case k.Window:return a.BimMask.Wall|
a.BimMask.Floor;case k.Covering:case k.Ramp:case k.Roof:case k.Slab:return a.BimMask.Floor;case k.Door:case k.TransportElement:return a.BimMask.Door|a.BimMask.Floor}return a.BimMask.None};d.registerBimNodes=function(a,c,k,d,e){return __awaiter(this,void 0,void 0,function(){var g,t,u,v,w;return __generator(this,function(y){switch(y.label){case 0:return[4,b(d)];case 1:return g=y.sent(),[4,f(a,k,g,e)];case 2:return t=y.sent(),u=h(t.floors),c.registerBimInstances(u,0),v=h(t.walls),c.registerBimInstances(v,
1),w=h(t.doors),c.registerBimInstances(w,2),[2]}})})}})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function b(a,b,c,d,e,g){this._rootAssemblyDataKey=b;this.headerVersion=a;this.isDrawing=c;this.isMeasurable=d;this.originalFileName=e;this.originalFileType=g}b.prototype.rootAssemblyDataKey=function(){console.assert(4294967295!==this._rootAssemblyDataKey);return this._rootAssemblyDataKey};b.parseBinary=function(f){if(0===f.length)return null;f=new d.AssemblyDataParser(new c(null,f));var h=new d.NodeParseBits;h.parseBits1(f);if(!h.hasBits1(8388608))return null;
var k=f.parseAssemblyDataHeaderVersion();if(k>b._maxHeaderVersion)throw new a.AssemblyDataParseError("Unknown header version: "+k);h.parseBits2(f);var e=f.parseDataKey(),p=f.parseBoolean(),g,m="",n=a.FileType.Unknown;g=1<=k?f.parseBoolean():!0;3<=k&&(h.hasBits2(4)&&(m=f.parseCString()),n=f.parseIndex_32());return new b(k,e,p,g,m,n)};b._maxHeaderVersion=3;b.dynamic=new b(b._maxHeaderVersion,4294967295,!1,!1,"",a.FileType.Unknown);return b}();d.AssemblyDataHeader=e;var c=function(){return function(a,
f){this.header=a;this.bytes=f}}();d.AssemblyData=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){return function(){this.prototypes=new Map;this.partDefinitions=new Map}}(),c=function(){return function(){this.bodies=new Map;this.contexts=[]}}(),b=function(){function b(a,f,c,e,g,m){this._productOccurrences=new Map;this._pmis=new Map;this._cadViews=new Map;this._bodyInstances=new Map;this._pmiBodies=new Map;this._viewFrames=new Map;this._partDefinitions=new Map;this._representationItems=new Map;this._partToInstance=new Map;this._filters=[];
this._layers=new Map;this._layersIds=new Map;this._genericTypeToNodes=new Map;this._genericIdToNode=new Map;this._cadConfigurations=new Set;this._modelContents=new Map;this._inclusionContents=new Map;this._nodeDeletionBlackList=new Set;this._meshDeletionBlackList=new Set;this._dynamicNodeIdSeed=d.invalidNodeId;this._currentNodeIdOffset=0;this._initialEmptyNodeIdOffsetObtained=!1;this._firstProductOccurrenceWithView=this._defaultCadConfiguration=this._activeCadConfiguration=this._activeCadView=null;
this._isMeasurable=this._containsDrawings=!1;this._initiallyHiddenStayHidden=this._automaticMeasurementUnitScaling=!0;this._completedLoadTimestamp=this._activeLoadTimestamp=0;this._requestedNodes=new Map;this._unnamedDrawingViewCount=this._unnamedDrawingSheetCount=this._unnamedGroupCount=this._unnamedProductCount=0;this._seenExternalModel=this._isInitialized=!1;this._config=__assign({},a);this._engine=f;this._callbackManager=c;this._cuttingManager=e;this._view=g;this._model=m}b.prototype.initialize=
function(b){b;console.assert(void 0===this._rootLoadContext);console.assert(void 0===this._rootNode);console.assert(!this._isInitialized);this._isInitialized=!0;this._rootLoadContext=new d.LoadContext(null,a.EmptyModelName);b=new d.AttachContext(new d.ScKeyRemapper,0,!1,0,this._rootLoadContext);this._rootLoadContext.addAttachContext(b);var f=new d.InclusionContext(this,b,0,0);b.addInclusionContext(f);this._rootNode=d.ProductOccurrence.createDynamic(this,f,"Models",null,null,!0);f.addProductOccurrence(this._rootNode);
console.assert(this._rootNode.isAbsoluteRoot());this.preventNodeDeletion(this._rootLoadContext);this.preventNodeDeletion(b);this.preventNodeDeletion(f);this.preventNodeDeletion(this._rootNode);this._rootNode.markLoaded()};b.prototype.isInitialized=function(){return this._isInitialized};b.prototype.getRootNode=function(){return this._rootNode};b.prototype.getAbstractScEngine=function(){return this._engine};b.prototype.generateDynamicNodeId=function(){return--this._dynamicNodeIdSeed};b.prototype.newNodeIdOffset=
function(){if(!this._initialEmptyNodeIdOffsetObtained)return this._initialEmptyNodeIdOffsetObtained=!0,console.assert(0===this._currentNodeIdOffset),0;var a=this._currentNodeIdOffset;this._currentNodeIdOffset+=4294967296;return a};b.prototype.getLowestAvailableNodeId=function(){return this._currentNodeIdOffset};b.prototype.tryParseHeader=function(a){var b=this,f=d.AssemblyDataHeader.parseBinary(a);if(null===f)return null;this._containsDrawings=this._containsDrawings||f.isDrawing;this._isMeasurable=
this._isMeasurable||f.isMeasurable;return this._callbackManager.promiseTrigger("_modelStructureHeaderParsed",null,f).then(function(){b._callbackManager.trigger("modelStructureHeaderParsed",f.originalFileName,f.originalFileType);return f})};b.prototype._isRegistered=function(a){return this._productOccurrences.has(a)||this._pmis.has(a)||this._cadViews.has(a)||this._bodyInstances.has(a)||this._pmiBodies.has(a)||this._viewFrames.has(a)||this._partDefinitions.has(a)||this._representationItems.has(a)};
b.prototype.registerProductOccurrence=function(a){if(!a.isMissing()){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._productOccurrences.set(b,a);b=d.getNodeGenericType(a);null!==b&&this.registerGenericType(a,b);b=a.getGenericId();null!==b&&this.registerGenericGlobalId(a,b);a.isAConfigurationNode()&&this._registerCadConfiguration(a);if(a.isADrawingSheetNode()||a.isADrawingViewNode())this._containsDrawings=!0}};b.prototype.lookupProductOccurrence=function(a){a=this._productOccurrences.get(a);
return void 0!==a?a:null};b.prototype.registerPmi=function(a){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._pmis.set(b,a)};b.prototype.lookupPmi=function(a){a=this._pmis.get(a);return void 0!==a?a:null};b.prototype.registerCadView=function(a){null===this._firstProductOccurrenceWithView&&(this._firstProductOccurrenceWithView=a.getParent());var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._cadViews.set(b,a)};b.prototype.getFirstProductOccurrenceWithView=function(){return this._firstProductOccurrenceWithView};
b.prototype.lookupCadView=function(a){a=this._cadViews.get(a);return void 0!==a?a:null};b.prototype.registerBodyInstance=function(a){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._bodyInstances.set(b,a);this._registerAnyBodyByInstanceInc(a)};b.prototype.lookupBodyInstance=function(a){a=this._bodyInstances.get(a);return void 0!==a?a:null};b.prototype.registerPmiBody=function(a){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._pmiBodies.set(b,a);this._registerAnyBodyByInstanceInc(a)};
b.prototype.lookupPmiBody=function(a){a=this._pmiBodies.get(a);return void 0!==a?a:null};b.prototype.registerViewFrame=function(a){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._viewFrames.set(b,a);this._registerAnyBodyByInstanceInc(a)};b.prototype.lookupViewFrame=function(a){a=this._viewFrames.get(a);return void 0!==a?a:null};b.prototype.registerPartDefinition=function(a){if(!a.isMissing()){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._partDefinitions.set(b,
a)}};b.prototype.lookupPartDefinition=function(a){a=this._partDefinitions.get(a);return void 0!==a?a:null};b.prototype.registerRepresentationItem=function(a){var b=a.getRuntimeId();console.assert(!this._isRegistered(b));this._representationItems.set(b,a)};b.prototype.lookupRepresentationItem=function(a){a=this._representationItems.get(a);return void 0!==a?a:null};b.prototype.lookupAnyBody=function(a){return this.lookupBodyInstance(a)||this.lookupPmiBody(a)||this.lookupViewFrame(a)};b.prototype.lookupAnyTreeNode=
function(a){return this.lookupProductOccurrence(a)||this.lookupPmi(a)||this.lookupCadView(a)||this.lookupAnyBody(a)};b.prototype.lookupAnyNonTreeNode=function(a){return this.lookupRepresentationItem(a)||this.lookupPartDefinition(a)};b.prototype.lookupAnyNode=function(a){return this.lookupAnyTreeNode(a)||this.lookupAnyNonTreeNode(a)};b.prototype._registerCadConfiguration=function(a){console.assert(a.isAConfigurationNode());console.assert(!this._cadConfigurations.has(a));this._cadConfigurations.add(a);
a.isADefaultNode()&&null===this._defaultCadConfiguration&&(this._defaultCadConfiguration=a)};b.prototype.getInstanceCountByInclusion=function(a){return this._getInclusionContent(a).bodies.size};b.prototype.lookupAnyBodyByInstanceInc=function(a,b){a=this._getInclusionContent(a).bodies.get(b);return void 0!==a?a:null};b.prototype._registerAnyBodyByInstanceInc=function(a){var b=a.getInstanceInc(),f=this._getInclusionContent(b[0]),c=f.bodies.get(b[1]);if(void 0!==c){console.assert(a.hasAuthoredId());
if(c.hasAuthoredId()){console.assert(c.constructor===a.constructor);g.CompileTime.disable&&console.assert(!1);return}console.assert(c.constructor===d.BodyInstance);c=c.getRuntimeId();a instanceof d.BodyInstance?this._bodyInstances.set(c,a):a instanceof d.PmiBody?this._pmiBodies.set(c,a):(g.TypeAssert(a),this._viewFrames.set(c,a))}f.bodies.set(b[1],a)};b.prototype._getInclusionContent=function(a){console.assert(4294967295!==a);var b=this._inclusionContents.get(a);void 0===b&&(b=new c,this._inclusionContents.set(a,
b));return b};b.prototype._getModelContent=function(a,b){console.assert(4294967295!==b);var f=this._modelContents.get(a);void 0===f&&(f=new Map,this._modelContents.set(a,f));a=f.get(b);void 0===a&&(a=new e,f.set(b,a));return a};b.prototype.registerPrototypeByDataId=function(a,b,f,c){a=this._getModelContent(a,b);console.assert(!a.prototypes.has(f));a.prototypes.set(f,c)};b.prototype.registerPartDefinitionByDataId=function(a,b,f,c){a=this._getModelContent(a,b);console.assert(!a.partDefinitions.has(f));
a.partDefinitions.set(f,c)};b.prototype.lookupPrototypeByDataId=function(a,b,f){a=this._getModelContent(a,b).prototypes.get(f);return void 0!==a?a:null};b.prototype.lookupPartDefinitionByDataId=function(a,b,f){a=this._getModelContent(a,b).partDefinitions.get(f);return void 0!==a?a:null};b.prototype.registerInclusionContext=function(a){var b=a.getInclusionKey();this._getInclusionContent(b).contexts.push(a)};b.prototype.getInclusionContexts=function(a){return this._getInclusionContent(a).contexts};
b.prototype._createLayer=function(a,b,f,c){f=new d.Layer(a,b,f,c);console.assert(!this._layers.has(a));this._layers.set(a,f);null!==b&&(c=this._layersIds.get(b),void 0!==c?c.push(a):this._layersIds.set(b,[a]));return f};b.prototype.createOrUpdateLayerName=function(a,b){var f=this._layers.get(a);void 0===f&&(f=this._createLayer(a,b,[],[]));f.name=b;f.id=a;return f};b.prototype.registerNodeInLayer=function(a,b){var f=this._layers.get(b);void 0!==f?f.nodes.push(a):this._createLayer(b,null,[a],[])};b.prototype.registerTreeNodeInLayer=
function(a,b){var f=this._layers.get(b);void 0!==f?f.treeNodes.push(a):this._createLayer(b,null,[],[a])};b.prototype.addFilter=function(a){this._filters.push(a)};b.prototype.getFilters=function(){for(var a=new Map,b=0;b<this._filters.length;b++){var f=this.getFilterName(b)||"";a.set(b,f)}return a};b.prototype.getFilterName=function(a){return a<this._filters.length?this._filters[a].name||"":null};b.prototype.getFiltersWithNode=function(a){for(var b=this,f=a.getAuthoredId(),c=this._filters,d=[],e=function(e){var g=
c[e];null!==g.filterLayersItem&&g.filterLayersItem.layers.forEach(function(f){f=b.getNodesFromLayer(f);null!==f&&f.forEach(function(b){a===b&&d.push(e)})});null!==g.filterEntityItem&&g.filterEntityItem.nodeIds.forEach(function(a){f===a&&d.push(e)})},g=0;g<c.length;g++)e(g);return d};b.prototype.getNodesFromFiltersId=function(b){var f=new Set,c=new Set,d=null,e=this._filters,g=this._layers;b.forEach(function(a){var b=e[a].filterLayersItem;if(null!==b){var h=b.isInclusive;null===d&&(d=h);b.layers.forEach(function(a){(a=
g.get(a))&&null!==a.nodes&&a.nodes.forEach(function(a){a=a.getAuthoredId();h?(f.add(a),c.delete(a)):(f.delete(a),c.add(a))})})}a=e[a].filterEntityItem;if(null!==a){var u=a.isInclusive;null===d&&(d=u);a.nodeIds.forEach(function(a){u?(f.add(a),c.delete(a)):(f.delete(a),c.add(a))})}});return null===d?null:d?new a.FilteredNodes(!0,f):new a.FilteredNodes(!1,c)};b.prototype.getLayers=function(){var a=new Map;this._layers.forEach(function(b,f){a.set(f,b.name||"")});return a};b.prototype.getUniqueLayerNames=
function(){var a=new Set,b=[];this._layers.forEach(function(f){f=f.name;null===f||a.has(f)||(a.add(f),b.push(f))});return b};b.prototype.getLayerName=function(a){a=this._layers.get(a);return void 0!==a?a.name||"":null};b.prototype.getLayersIdFromName=function(a){a=this._layersIds.get(a);return void 0!==a?a:null};b.prototype.getNodesFromLayer=function(a,b){a=this._layers.get(a);return void 0!==a?b?a.treeNodes:a.nodes:null};b.prototype.getNodesFromLayers=function(a,b){for(var f=[],c=0;c<a.length;c++){var d=
this.getNodesFromLayer(a[c],b);if(null!==d)for(var e=0;e<d.length;e++)f.push(d[e])}return f};b.prototype.getNodesFromLayerName=function(a,b){a=this._layersIds.get(a);return void 0!==a?this.getNodesFromLayers(a,b):null};b.prototype.generateProductName=function(){return"Product "+this._unnamedProductCount++};b.prototype.generateGroupName=function(){return"Product "+this._unnamedGroupCount++};b.prototype.generateDrawingSheetName=function(){return"Product "+this._unnamedDrawingSheetCount++};b.prototype.generateDrawingViewName=
function(){return"Product "+this._unnamedDrawingViewCount++};b.prototype.forEachCadView=function(a){this._cadViews.forEach(a)};b.prototype.forEachPmi=function(a){this._pmis.forEach(a)};b.prototype.forEachCadConfiguration=function(a){this._cadConfigurations.forEach(a)};b.prototype.hasActiveCadView=function(){return null!==this._activeCadView};b.prototype.activateCadView=function(a,b){console.assert(null===this._activeCadView);this._activeCadView=a;return a.activate(this,this._engine,this._callbackManager,
this._cuttingManager,this._view,b,this._activeCadConfiguration)};b.prototype.deactivateActiveCadView=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return null===this._activeCadView?[2]:[4,this._activeCadView.deactivate(this._cuttingManager)];case 1:return a.sent(),console.assert(null!==this._activeCadView),this._activeCadView=null,[2]}})})};b.prototype.getCadViewPmis=function(a){var b=[];this._pmis.forEach(function(f){a.hasPmi(f)&&
b.push(f)});return b};b.prototype.isMeasureable=function(){return this._isMeasurable};b.prototype.containsDrawings=function(){return this._containsDrawings};b.prototype.getDefaultCadConfiguration=function(){return this._defaultCadConfiguration};b.prototype.getActiveCadConfiguration=function(){return this._activeCadConfiguration};b.prototype.activateCadConfiguration=function(b){console.assert(b.isAConfigurationNode());this._activeCadConfiguration=b;b=b.getRuntimeId();return this._view.isolateNodes([b],
a.DefaultTransitionDuration,!0)};b.prototype.massageAuthoredUserId=function(a,b){if(null===b)return this.generateDynamicNodeId();a=a.toRuntimeId(b);return null!==this.lookupAnyNode(a)?this.generateDynamicNodeId():b};b.prototype.createNode=function(a,b,f,c,e){b=d.ProductOccurrence.createDynamic(this,a,b,f,c,e);a.addProductOccurrence(b);b.markLoaded();return b};b.prototype.createPart=function(a){a=d.PartDefinition.createDynamic(this,a,null);a.markLoaded();return a};b.prototype.setPart=function(a,b){b.addReferrer(a);
var f=this._partToInstance.get(b);if(void 0===f){var f=d.towardInclusionContext(this._rootNode),c,e=g.LazyObject.create(function(){console.assert(void 0!==c);return new d.SharedPrototypeContext(g.LazyPromise.create(c))}),f=new d.PrototypeContext(e,f);c=d.ProductOccurrence.createDynamic(this,f,null,null,null,!0);c.setPartDefinition(b);c.markLoaded()}a.setPrototype(f)};b.prototype._createCadView=function(a,b,f,c,e,g,n,r){b=d.CadView.createDynamic(this,a,b,f,c,e,g,n,r);a.addCadView(b);b.markLoaded();
return b};b.prototype._createCadViewInstance=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var c,e,g,n,r,t,u,v,w;return __generator(this,function(y){switch(y.label){case 0:return null===f?[3,2]:[4,a.createMeshInstance(f)];case 1:c=y.sent(),e=c[0],g=c[1],n=this.generateDynamicNodeId(),r={nodeId:n,bits:786432,name:null,localTransform:null,attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},t={nodeInfo:r,inclusionKey:e,
instanceKey:g,bits:0},u=d.towardAttachContext(b),v=u.getMasterModelKey(),console.assert(b.isLoaded()),w=d.ViewFrame.reify(this,v,b,t),b.setViewFrame(w),w.markLoaded(),y.label=2;case 2:return[2]}})})};b.prototype.createCadView=function(a,b,f,c,d,e,g,r,t,u){b=this._createCadView(b,f,c,d,e,g,r,t);null!==u&&(a=this._createCadViewInstance(a,b,u),a);return b};b.prototype.createMeshInstance=function(a,b,f,c,e,g,n,r){var t=0;n&&(t|=16384);r&&(t|=268435456);b=d.BodyInstance.createDynamic(this,b,f,c,e,g,t);
g.addBodyInstance(b);a&&b.markLoaded();return b};b.prototype.createPmiInstance=function(a,b,f,c,e,g,n,r){var t=d.towardInclusionContext(e);a={nodeInfo:{nodeId:this.massageAuthoredUserId(t,f),bits:1073741824,name:c,localTransform:null,attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},inclusionKey:a,instanceKey:b,bits:0};g=d.Pmi.createDynamic(this,t,e,g,n,a,r);e.addPmi(g);g.markLoaded();return g};b.prototype.getAutomaticMeasurementUnitScaling=
function(){return this._automaticMeasurementUnitScaling};b.prototype.setAutomaticMeasurementUnitScaling=function(a){this._automaticMeasurementUnitScaling=a};b.prototype.getInitiallyHiddenStayHidden=function(){return this._initiallyHiddenStayHidden};b.prototype.setInitiallyHiddenStayHidden=function(a){this._initiallyHiddenStayHidden=a};b.prototype._removeIdMappingsRecursive=function(a){var b=this;return d.WalkerAsync.walk({enterProductOccurrence:function(a){b._productOccurrences.delete(a.getRuntimeId())},
enterAnyBody:function(a){var f=a.getRuntimeId();a instanceof d.BodyInstance?b._bodyInstances.delete(f):a instanceof d.PmiBody?b._pmiBodies.delete(f):(g.TypeAssert(a),b._viewFrames.delete(f))},enterCadView:function(a){b._cadViews.delete(a.getRuntimeId())},enterPmi:function(a){b._pmis.delete(a.getRuntimeId())}},a,!1)};b.prototype.deleteNode=function(b){return __awaiter(this,void 0,void 0,function(){var f,c,e,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:if(!this._canDeleteNode(b))throw f=
b.getRuntimeId(),new a.CommunicatorError("Cannot delete node ("+f+")");c=d.gatherInstanceIncsSync(b,7,!0,new Set,!1);this._engine.setPartVisibility(c,!1);this._engine.setInstanceModifier(a.InstanceModifier.DoNotSelect,c,!0);if(!(b instanceof d.ProductOccurrence))return[3,2];this._cadConfigurations.delete(b)&&(b===this._activeCadConfiguration&&(this._activeCadConfiguration=null),b===this._defaultCadConfiguration&&(this._defaultCadConfiguration=null));e=b.getParent();console.assert(null!==e);null!==
e&&(l=void 0,l=e instanceof d.PrototypeContext?e.removeReferrer(b):e.removeProductOccurrence(b),console.assert(l));this._productOccurrences.delete(b.getRuntimeId());return[4,this._removeIdMappingsRecursive(b)];case 1:return t.sent(),[2,b.purgeContents()];case 2:g.TypeAssert(b),m=b.getParent(),m.removeBodyInstance(b),n=b.getInstanceInc(),r=this._getInclusionContent(n[0]),r.bodies.delete(n[1]),this._bodyInstances.delete(b.getRuntimeId()),t.label=3;case 3:return[2]}})})};b.prototype._canDeleteNode=function(a){return!this._nodeDeletionBlackList.has(a)};
b.prototype.preventNodeDeletion=function(b){var f=b.getParent();if(f instanceof d.PrototypeContext)throw new a.InternalLogicError;null!==f&&(console.assert(null===f||this._nodeDeletionBlackList.has(f)),b instanceof d.ProductOccurrence?(console.assert(!b.hasAuthoredId()),console.assert(!b.isOutOfHierarchy())):b instanceof d.BodyInstance&&(f=b.getInstanceInc(),console.assert(!b.hasAuthoredId()),console.assert(0===f[0]),console.assert(b.isOutOfHierarchy())));this._nodeDeletionBlackList.add(b)};b.prototype.preventMeshDeletion=
function(a){this._meshDeletionBlackList.add(a)};b.prototype._resetContents=function(){return __awaiter(this,void 0,void 0,function(){var a=this;return __generator(this,function(b){switch(b.label){case 0:return this.hasActiveCadView()?[4,this.deactivateActiveCadView()]:[3,2];case 1:return b.sent(),[2,this._resetContents()];case 2:return[4,this._rootLoadContext.purgeContents()];case 3:return b.sent(),this._productOccurrences.clear(),this._pmis.clear(),this._cadViews.clear(),this._bodyInstances.clear(),
this._pmiBodies.clear(),this._viewFrames.clear(),this._partDefinitions.clear(),this._representationItems.clear(),this._partToInstance.clear(),this._filters.length=0,this._layers.clear(),this._layersIds.clear(),this._genericTypeToNodes.clear(),this._genericIdToNode.clear(),this._cadConfigurations.clear(),this._modelContents.clear(),this._inclusionContents.clear(),this._currentNodeIdOffset=0,this._firstProductOccurrenceWithView=this._defaultCadConfiguration=this._activeCadConfiguration=this._activeCadView=
null,this._isMeasurable=this._containsDrawings=!1,this._completedLoadTimestamp=this._activeLoadTimestamp=0,this._requestedNodes.clear(),this._unnamedDrawingViewCount=this._unnamedDrawingSheetCount=this._unnamedGroupCount=this._unnamedProductCount=0,this._seenExternalModel=!1,this._rootNode.unsetMeasurementUnit(),this._nodeDeletionBlackList.forEach(function(b){if(b instanceof d.ProductOccurrence){var f=b.getRuntimeId();a._productOccurrences.set(f,b);f=b.getParent();f instanceof d.PrototypeContext?
console.assert(!1):f.addProductOccurrence(b);b.setVisibility(!0);b.unsetMeasurementUnit();b.hasLocalTransformOverride()&&b.removeLocalTransformOverride()}else if(b instanceof d.BodyInstance){f=b.getRuntimeId();a._bodyInstances.set(f,b);var f=b.getInstanceInc(),c=f[0];console.assert(0===c);c=a._getInclusionContent(c);c.bodies.set(f[1],b);b.getParent().addBodyInstance(b)}else b instanceof d.LoadContext?(f=b.getParent(),null!==f&&f.addLoadContext(b)):b instanceof d.AttachContext?b.getParent().addAttachContext(b):
(g.TypeAssert(b),c=b.getInclusionKey(),console.assert(0===c),c=a._getInclusionContent(c),c.contexts.push(b),b.getParent().addInclusionContext(b))}),[2]}})})};b.prototype.reset=function(){return __awaiter(this,void 0,void 0,function(){var a,b;return __generator(this,function(f){switch(f.label){case 0:return[4,this._callbackManager.promiseTrigger("_resetAssemblyTreeBegin",null)];case 1:return f.sent(),[4,this._resetContents()];case 2:return f.sent(),a=[],this._nodeDeletionBlackList.forEach(function(b){b instanceof
d.BodyInstance&&(b=b.getInstanceInc(),console.assert(0===b[0]),a.push(b[1]))}),b=[],this._meshDeletionBlackList.forEach(function(a){b.push(a)}),[4,this._engine.resetToEmpty(a,b)];case 3:return f.sent(),[4,this._resetContents()];case 4:return f.sent(),[2]}})})};b.prototype.setViewAxes=function(a,b){this._model.setViewAxes(a,b)};b.prototype.requestNode=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var c,e,g,n;return __generator(this,function(r){switch(r.label){case 0:return f||(this._activeLoadTimestamp!==
this._completedLoadTimestamp&&this._requestedNodes.set(b,this._activeLoadTimestamp),b instanceof d.ProductOccurrence&&a.notifyDirectRequest(b)),c=new Set,[4,d.gatherInstanceIncs(b,7,!1,c)];case 1:return e=r.sent(),g=[],n=[],c.forEach(function(a){if(!a.isRequested()){a.setRequested();var b=a.isInitiallyShown();b!==a.isVisible()&&(b?(a.setVisibility(!0),g.push(a.getRuntimeId())):(a.setVisibility(!1),n.push(a.getRuntimeId())))}}),0<g.length+n.length&&this._callbackManager.trigger("visibilityChanged",
g,n),this._engine.requestMeshInstances(e),[2]}})})};b.prototype.isBeingRequested=function(a){for(;;)if(a instanceof d.NodeMixin){if(this._requestedNodes.has(a))return!0;a=a.getParent()}else if(a instanceof d.AttachContext)a=a.getParent();else if(a instanceof d.InclusionContext)a=a.getParent();else if(a instanceof d.LoadContext){if(a=a.getParent(),null===a)return!1}else return g.TypeAssert(a),console.assert(!1),!1};b.prototype.onDemandRequestsActive=function(){return 0!==this._requestedNodes.size};
b.prototype.onLoadBegin=function(){++this._activeLoadTimestamp};b.prototype.onLoadEnd=function(){var a=this;console.assert(this._completedLoadTimestamp<this._activeLoadTimestamp);++this._completedLoadTimestamp;console.assert(this._completedLoadTimestamp===this._activeLoadTimestamp);var b=[];this._requestedNodes.forEach(function(f,c){f<=a._completedLoadTimestamp&&(console.assert(f===a._completedLoadTimestamp),b.push(c))});for(var f=0;f<b.length;f++)this._requestedNodes.delete(b[f])};b.prototype.markSeenExternalModel=
function(){this._seenExternalModel=!0};b.prototype.seenExternalModel=function(){return this._seenExternalModel};b.prototype.getNodeByGenericId=function(a){return this._genericIdToNode.get(a)||null};b.prototype.getNodesByGenericType=function(a){return this._genericTypeToNodes.get(a)||null};b.prototype.genericTypeToNodes=function(){return this._genericTypeToNodes};b.prototype.registerGenericGlobalId=function(a,b){this._genericIdToNode.set(b,a)};b.prototype.registerGenericType=function(a,b){var f=this._genericTypeToNodes.get(b);
void 0===f&&(f=new Set);f.add(a);this._genericTypeToNodes.set(b,f)};b.prototype.disableAutomaticFitWorld=function(){return this._config.disableAutomaticFitWorld};b.prototype.markImplicitNodesOutOfHierarchy=function(){return this._config.markImplicitNodesOutOfHierarchy};return b}();d.AssemblyTree=b})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a){var f=this;return function(c){return __awaiter(f,void 0,void 0,function(){var f;return __generator(this,function(d){switch(d.label){case 0:return[4,a(c)];case 1:return f=d.sent(),"string"===typeof f?[2,g.httpRequestBuffer(f)]:[2,f]}})})}}var c=function(){function b(a,b,c,e,p,l){this._clearQueue=new g.PromiseQueue(1,!1);this._clearInProgress=!1;this._cadConfigurationsEnabled=!0;this._engine=b;this._callbackManager=c;this._cuttingManager=e;this._view=
p;this._model=l;this._assemblyTree=new d.AssemblyTree(a,this._engine,this._callbackManager,this._cuttingManager,this._view,this._model);this._readyPromise=g.TrackedOpenPromise.create()}b.unsafeCreate=function(a,b,c,d,e,g,m){return this._create(a,b,c,d,e,g,m).unsafeValue};b.create=function(a,b,c,d,e,g,m){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(n){return[2,this._create(a,b,c,d,e,g,m)]})})};b._create=function(a,c,k,d,e,l,m){a=new b(a,c,k,d,e,l);m=a._init(m);return g.UnsafePromise.create(a,
m)};b.prototype._init=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(e){switch(e.label){case 0:return[4,d.ScAttacher.createWithEmptyModel(this._engine,this._view,this._callbackManager,a)];case 1:return b=e.sent(),this._assemblyTree.initialize(b),c=new d.TreeLoader(this._assemblyTree,b,this._engine,this._view,this._callbackManager),this._callbackManager.trigger("modelStructureLoadBegin"),this._callbackManager.trigger("modelStructureLoadEnd"),this._callbackManager.trigger("modelStructureParseBegin"),
console.assert(void 0===this._treeLoader),this._treeLoader=c,this._readyPromise.resolve(),[2]}})})};b.prototype._loadSubtreePrologue=function(b,c,k){return __awaiter(this,void 0,void 0,function(){var d;return __generator(this,function(e){switch(e.label){case 0:if(this._engine.getSessionType()!==b)throw new a.LoadError("Incompatible load types.");return k?[4,this._clearQueue.waitOnLatest()]:[3,2];case 1:e.sent(),e.label=2;case 2:if(this._clearInProgress)throw new a.LoadCancelledError;d=this._assemblyTree.lookupProductOccurrence(c);
if(null===d)throw new a.InvalidNodeTypeError(c,0);return[2,d]}})})};b.prototype._loadSubtreeEpilogue=function(b,c){return __awaiter(this,void 0,void 0,function(){var k,d;return __generator(this,function(e){switch(e.label){case 0:if(!c||b.isFirstLoad())return[3,2];k=b.getChildren();d=k.map(function(a){return a.getRuntimeId()});return[4,this._callbackManager.promiseTrigger("_subtreeLoaded","subtreeLoaded",d,a.NodeSource.LoadModel)];case 1:e.sent(),e.label=2;case 2:return[2]}})})};b.prototype.loadSubtreeFromXmlFile=
function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var e,g,m;return __generator(this,function(n){switch(n.label){case 0:return[4,this._disableCadConfigurations()];case 1:return n.sent(),e=this._engine.SessionType().Network,[4,this._loadSubtreePrologue(e,a,!0)];case 2:return g=n.sent(),[4,this._treeLoader.loadByXmlFile(d,g,b,c)];case 3:return m=n.sent(),[2,this._loadSubtreeEpilogue(m,!1)]}})})};b.prototype.loadSubtreeFromXmlDoc=function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var e,
g,m;return __generator(this,function(n){switch(n.label){case 0:return[4,this._disableCadConfigurations()];case 1:return n.sent(),e=this._engine.SessionType().Network,[4,this._loadSubtreePrologue(e,a,!0)];case 2:return g=n.sent(),[4,this._treeLoader.loadByXmlDoc(d,g,b,c)];case 3:return m=n.sent(),[2,this._loadSubtreeEpilogue(m,!1)]}})})};b.prototype.loadSubtreeFromScsXmlFile=function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var g,l,m,n;return __generator(this,function(r){switch(r.label){case 0:return[4,
this._disableCadConfigurations()];case 1:return r.sent(),g=this._engine.SessionType().Scs,[4,this._loadSubtreePrologue(g,a,!0)];case 2:return l=r.sent(),m=e(c),[4,this._treeLoader.loadByXmlFile(d,l,b,m)];case 3:return n=r.sent(),[2,this._loadSubtreeEpilogue(n,!1)]}})})};b.prototype.loadSubtreeFromScsXmlDoc=function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var g,l,m,n;return __generator(this,function(r){switch(r.label){case 0:return[4,this._disableCadConfigurations()];case 1:return r.sent(),
g=this._engine.SessionType().Scs,[4,this._loadSubtreePrologue(g,a,!0)];case 2:return l=r.sent(),m=e(c),[4,this._treeLoader.loadByXmlDoc(d,l,b,m)];case 3:return n=r.sent(),[2,this._loadSubtreeEpilogue(n,!1)]}})})};b.prototype._loadSubtreeFromStream=function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var e,g,m;return __generator(this,function(n){switch(n.label){case 0:return e=this._engine.SessionType().Network,[4,this._loadSubtreePrologue(e,a,c)];case 1:return g=n.sent(),[4,this._treeLoader.loadByStream(d,
g,b)];case 2:return m=n.sent(),[4,this._loadSubtreeEpilogue(m,!0)];case 3:return n.sent(),[2,m]}})})};b.prototype.loadSubtreeFromStream=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(d){switch(d.label){case 0:return[4,this._loadSubtreeFromStream(a,b,!0,c)];case 1:return d.sent(),[2]}})})};b.prototype.loadSubtreeFromScsFile=function(a,b,c){return __awaiter(this,void 0,void 0,function(){var d,e,g;return __generator(this,function(m){switch(m.label){case 0:return d=
this._engine.SessionType().Scs,[4,this._loadSubtreePrologue(d,a,!0)];case 1:return e=m.sent(),[4,this._treeLoader.loadByScsFile(c,e,b)];case 2:return g=m.sent(),[2,this._loadSubtreeEpilogue(g,!0)]}})})};b.prototype.loadSubtreeFromScsBuffer=function(a,b,c){return __awaiter(this,void 0,void 0,function(){var d,e,g;return __generator(this,function(m){switch(m.label){case 0:return d=this._engine.SessionType().Scs,[4,this._loadSubtreePrologue(d,a,!0)];case 1:return e=m.sent(),[4,this._treeLoader.loadByScsBuffer(c,
e,b)];case 2:return g=m.sent(),[2,this._loadSubtreeEpilogue(g,!0)]}})})};b.prototype.loadSubtreeFromAssemblyData=function(a,b,c,d){return __awaiter(this,void 0,void 0,function(){var e,g,m;return __generator(this,function(n){switch(n.label){case 0:return e=this._engine.SessionType().Network,[4,this._loadSubtreePrologue(e,a,!0)];case 1:return g=n.sent(),[4,this._treeLoader.loadByAssemblyData(d,g,b,c)];case 2:return m=n.sent(),[2,this._loadSubtreeEpilogue(m,!0)]}})})};b.prototype.notifyFirstLoadIsEmptyModel=
function(){this._treeLoader.notifyFirstLoadIsEmptyModel()};b.prototype._clearImpl=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:console.assert(!this._clearInProgress),this._clearInProgress=!0,b.label=1;case 1:return b.trys.push([1,5,,6]),[4,this._treeLoader.cancelPendingLoads()];case 2:return b.sent(),console.assert(this._treeLoader.isIdle()),console.assert(this._clearInProgress),[4,this._treeLoader.reset()];case 3:return b.sent(),
console.assert(this._treeLoader.isIdle()),console.assert(this._clearInProgress),[4,this._assemblyTree.reset()];case 4:return b.sent(),console.assert(this._treeLoader.isIdle()),console.assert(this._clearInProgress),this._clearInProgress=!1,[3,6];case 5:throw a=b.sent(),console.assert(this._clearInProgress),this._clearInProgress=!1,a;case 6:return[2]}})})};b.prototype.clear=function(){var a=this;return this._clearQueue.push(function(){return __awaiter(a,void 0,void 0,function(){return __generator(this,
function(a){switch(a.label){case 0:return this._callbackManager.trigger("modelSwitchStart",!0),[4,this._clearImpl()];case 1:return a.sent(),[2,this._callbackManager.promiseTrigger("_modelSwitched","modelSwitched",!0,[],g.AttachType.Direct)]}})})})};b.prototype.switchToModel=function(b){var c=this,k=b===a.EmptyModelName;return this._clearQueue.push(function(){return __awaiter(c,void 0,void 0,function(){var c,h,e,m,n,r,t,u;return __generator(this,function(v){switch(v.label){case 0:return this._callbackManager.trigger("modelSwitchStart",
!1),[4,this._clearImpl()];case 1:v.sent();if(!k)return[3,2];h=new d.LoadContext(this._assemblyTree.getRootNode(),a.EmptyModelName);return[3,4];case 2:return[4,this._loadSubtreeFromStream(this.getAbsoluteRootNodeId(),b,!1,new a.LoadSubtreeConfig)];case 3:h=v.sent(),v.label=4;case 4:c=h;e=[];m=c.getChildren();n=0;for(r=m;n<r.length;n++)t=r[n],u=t.getRuntimeId(),e.push(u);return[2,this._callbackManager.promiseTrigger("_modelSwitched","modelSwitched",k,e,g.AttachType.Direct)]}})})})};b.prototype.getAbsoluteRootNodeId=
function(){return this._assemblyTree.getRootNode().getRuntimeId()};b.prototype.isIdValid=function(a){return null!==this._assemblyTree.lookupAnyNode(a)};b.prototype._getNodeChildren=function(a,b){var c=a.getChildrenSync();b||(c=c.filter(function(a){return!a.isOutOfHierarchy()}));for(var d=0,e=a.getBodyInstances();d<e.length;d++){var g=e[d];g.isOutOfHierarchy()&&!b||c.push(g)}b=0;for(a=a.getPmis();b<a.length;b++)c.push(a[b]);return c};b.prototype.getChildIds=function(a,b){var c=this._assemblyTree.lookupProductOccurrence(a);
if(null===c)return[];a=[];var d=0;for(b=this._getNodeChildren(c,b);d<b.length;d++)a.push(b[d].getRuntimeId());return a};b.prototype.isOutOfHierarchy=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a&&d.isOutOfHierarchy(a)};b.prototype.getParentId=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);if(null===a)return null;a=d.towardContainerNode(a.getParent());return null===a?null:a.getRuntimeId()};b.prototype.getPartReferrers=function(a){return __awaiter(this,void 0,void 0,function(){var b,
c,e,g,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:b=this._assemblyTree.lookupProductOccurrence(a);if(null===b)return[2,null];c=this._assemblyTree.getRootNode();return[4,d.forcePrototypes(c)];case 1:return t.sent(),[4,d.forcePartDefinitions(c)];case 2:t.sent();e=b.getPartDefinitionSync();if(null===e)return[2,null];g=e.getReferrers();l=[];m=0;for(n=g;m<n.length;m++)r=n[m],l.push(r.getRuntimeId());return[2,l]}})})};b.prototype.getAttributes=function(a){return __awaiter(this,void 0,
void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return b=c.sent(),null===b?[2,[]]:[2,b.getAttributes()]}})})};b.prototype.getProperties=function(b){return __awaiter(this,void 0,void 0,function(){var c=this,k,e,p,l,m,n;return __generator(this,function(r){switch(r.label){case 0:return[4,this._getNodeOrRepItemFromId(b)];case 1:k=r.sent();if(null===k)return[2,null];e=null;p=[];l=k.getAttributes().then(function(a){null===
e&&(e={});for(var b=0;b<a.length;b++){var f=a[b],c=f.getTitle(),f=f.getValue();e[c]=f}});p.push(l);m=function(k){null===e&&(e={});var d=c.getNetMatrix(b),p=(new a.Point3(d.m[0],d.m[1],d.m[2])).length(),d=d.transform(k.centerOfGravity),l=c.getUnit(b),m=a.MeasureUtils.formatWithUnit(k.surfaceArea*p,l);e["Surface Area"]=""+m+g.Unicode.Subscript2;k=a.MeasureUtils.formatWithUnit(k.volume*p,l);e.Volume=""+k+g.Unicode.Subscript3;k=d.x.toLocaleString();p=d.y.toLocaleString();d=d.z.toLocaleString();e.COG=
"x:"+k+" y:"+p+" z:"+d};k instanceof d.RepresentationItem?(n=k.getPhysicalProperties(),null!==n&&m(n)):k instanceof d.ProductOccurrence&&(l=Promise.resolve(d.forcePartDefinition(k)).then(function(){return __awaiter(c,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,k.getPhysicalProperties()];case 1:return a=b.sent(),null!==a&&m(a),[2]}})})}),p.push(l));return[4,g.waitForAll(p)];case 2:return r.sent(),[2,e]}})})};b.prototype.addProperty=function(b,
c,k){b=this._assemblyTree.lookupAnyNode(b);if(null===b)return!1;c=new d.Attribute(a.AttributeType.String,c,k);b.addAttribute(c);return!0};b.prototype.setPhysicalProperties=function(a,b,c,e){a=this._assemblyTree.lookupRepresentationItem(a);if(null===a)return!1;b=new d.PhysicalProperties(c,e,b);a.setPhysicalProperties(b);return!0};b.prototype.getUserDataIndices=function(b){var c=this._assemblyTree.lookupAnyTreeNode(b);if(null===c)throw new a.InvalidNodeIdError(b);return c.getUserDataIndices()};b.prototype.getUserData=
function(b,c){var d=this._assemblyTree.lookupAnyTreeNode(b);if(null===d)throw new a.InvalidNodeIdError(b);return d.getUserData(c)};b.prototype.getInstanceIncs=function(a,b){a=this._assemblyTree.lookupAnyTreeNode(a);if(null===a)return console.assert(!1),[];var c=d.isOutOfHierarchy(a),e=new Set;return d.gatherInstanceIncsSync(a,b,c,e,!1)};b.prototype.getNodeFromInstanceInc=function(a,b,c,e){var g=this._assemblyTree.lookupAnyBodyByInstanceInc(b,c);null===g?(g=a?this._rectifyParent(b,null):this._assemblyTree.getRootNode(),
g=this._assemblyTree.createMeshInstance(a,b,c,null,null,g,!1,e)):g instanceof d.PmiBody?g=g.getParent():g instanceof d.ViewFrame&&(a=g.getParent(),a);return g.getRuntimeId()};b.prototype._getAssociatedModelKey=function(a){if(a instanceof d.PartDefinition)return a.getModelKey();g.TypeAssert(a);return this._getAssociatedModelKey(a.getParent())};b.prototype.getAssociatedModelKey=function(a){var b=this._assemblyTree.lookupAnyTreeNode(a);return null===b?(b=this._assemblyTree.lookupAnyNonTreeNode(a),null===
b?null:this._getAssociatedModelKey(b)):d.towardAttachContext(b).getMasterModelKey()};b.prototype.getMatrix=function(b){b=this._assemblyTree.lookupAnyNode(b);if(null===b)return new a.Matrix;b=b.getLocalTransform();return null===b?new a.Matrix:b};b.prototype.setMatrix=function(a,b,c){return __awaiter(this,void 0,void 0,function(){var e,g;return __generator(this,function(l){e=this._assemblyTree.lookupAnyTreeNode(a);if(null===e)return[2];c?e.setLocalTransformAsInitial(b):e.overrideLocalTransform(b);g=
d.isOutOfHierarchy(e);return[2,d.updateScMatrices(this._engine,this._callbackManager,[e],g)]})})};b.prototype.resetToInitialMatrix=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(e){b=this._assemblyTree.lookupAnyTreeNode(a);return null===b?[2]:b.hasLocalTransformOverride()?(b.removeLocalTransformOverride(),c=d.isOutOfHierarchy(b),[2,d.updateScMatrices(this._engine,this._callbackManager,[b],c)]):[2]})})};b.prototype.getNetMatrix=function(b){b=this._assemblyTree.lookupAnyNode(b);
return null===b?new a.Matrix:d.getNetMatrix(b)};b.prototype.getNodeOrRepItem=function(a){return __awaiter(this,void 0,void 0,function(){var b,c,e,g,l,m;return __generator(this,function(n){switch(n.label){case 0:if(!(a instanceof d.BodyInstance))return[3,7];b=a.getParent();c=b.getBodyInstances();e=0;n.label=1;case 1:return e<c.length?c[e]!==a?[3,5]:[4,d.forcePartDefinition(b)]:[3,6];case 2:return n.sent(),[4,b.getPartDefinition()];case 3:return g=n.sent(),null===g?[2,null]:[4,g.value];case 4:return l=
n.sent(),m=l.getRepresentationItems(),e<m.length?[2,m[e]]:[2,null];case 5:return++e,[3,1];case 6:return[3,8];case 7:if(a instanceof d.ProductOccurrence||a instanceof d.Pmi||a instanceof d.CadView||a instanceof d.PartDefinition||a instanceof d.RepresentationItem)return[2,a];n.label=8;case 8:return[2,null]}})})};b.prototype._getNodeOrRepItemFromId=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){b=this._assemblyTree.lookupAnyNode(a);return null===
b?[2,null]:[2,this.getNodeOrRepItem(b)]})})};b.prototype.getEdgeCount=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return b=c.sent(),b instanceof d.RepresentationItem?[2,b.getEdgeCount()]:[2,0]}})})};b.prototype.getEdgeAttributes=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(g){switch(g.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];
case 1:return c=g.sent(),c instanceof d.RepresentationItem&&(e=c.getEdgeAttributes(b),null!==e)?[2,e.copy()]:[2,null]}})})};b.prototype.getEdgeProperty=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(g){switch(g.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return c=g.sent(),c instanceof d.RepresentationItem&&(e=c.getEdgeMeasurementProperty(b),null!==e)?[2,e.copy()]:[2,null]}})})};b.prototype.getFaceCount=function(a){return __awaiter(this,
void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return b=c.sent(),b instanceof d.RepresentationItem?[2,b.getFaceCount()]:[2,0]}})})};b.prototype.getFaceAttributes=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(g){switch(g.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return c=g.sent(),c instanceof d.RepresentationItem&&(e=c.getFaceAttributes(b),
null!=e)?[2,e.copy()]:[2,null]}})})};b.prototype.getFaceProperty=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(g){switch(g.label){case 0:return[4,this._getNodeOrRepItemFromId(a)];case 1:return c=g.sent(),c instanceof d.RepresentationItem&&(e=c.getFaceMeasurementProperty(b),null!==e)?[2,e.copy()]:[2,null]}})})};b.prototype.setEdgeProperty=function(a,b,c){a=this._assemblyTree.lookupRepresentationItem(a);null!==a&&d.MeasurementProperty.isEdge(c)&&
a.setEdgeMeasurementProperty(b,c)};b.prototype.setFaceProperty=function(a,b,c){a=this._assemblyTree.lookupRepresentationItem(a);null!==a&&d.MeasurementProperty.isFace(c)&&a.setFaceMeasurementProperty(b,c)};b.prototype.getName=function(a){a=this._assemblyTree.lookupAnyNode(a);return null!==a?a.getName():null};b.prototype.getNodeExchangeId=function(a){a=this._assemblyTree.lookupAnyNode(a);return null!==a?a.getExchangeId():null};b.prototype.getFilters=function(){return this._assemblyTree.getFilters()};
b.prototype.getFilterName=function(a){return this._assemblyTree.getFilterName(a)};b.prototype.getFiltersWithNode=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null===a?[]:this._assemblyTree.getFiltersWithNode(a)};b.prototype.getNodesFromFiltersId=function(a){return this._assemblyTree.getNodesFromFiltersId(a)};b.prototype.getLayers=function(){return this._assemblyTree.getLayers()};b.prototype.getUniqueLayerNames=function(){return this._assemblyTree.getUniqueLayerNames()};b.prototype.getLayerName=
function(a){return this._assemblyTree.getLayerName(a)};b.prototype.getLayerIdsFromName=function(a){return this._assemblyTree.getLayersIdFromName(a)};b.prototype.getNodeLayerId=function(a){a=this._assemblyTree.lookupAnyNode(a);return null!==a?a.getLayerId():null};b.prototype.getNodesFromLayer=function(a,b){a=this._assemblyTree.getNodesFromLayer(a,b);return null===a?null:a.map(function(a){return a.getAuthoredId()})};b.prototype.getNodesFromLayers=function(a,b){a=this._assemblyTree.getNodesFromLayers(a,
b);return null===a?null:a.map(function(a){return a.getAuthoredId()})};b.prototype.getNodesFromLayerName=function(a,b){a=this._assemblyTree.getNodesFromLayerName(a,b);return null===a?null:a.map(function(a){return a.getAuthoredId()})};b.prototype.createCadView=function(a,b,c,d,e,g,m,n,r){if(null===this._assemblyTree.lookupProductOccurrence(a))return null;a=this._assemblyTree.lookupProductOccurrence(a);if(null===a)return null;for(var t=[],u=0;u<d.length;u++){var v=this._assemblyTree.lookupPmi(d[u]);
null!==v&&t.push(v)}d=new Map;for(u=0;u<m.length;u++)v=m[u],d.set(v[0],v[1]);return this._assemblyTree.createCadView(this._engine,a,b,c,t,e,g,d,n,r).getRuntimeId()};b.prototype.getCadViews=function(){var a=this._assemblyTree.getFirstProductOccurrenceWithView(),b={};this._assemblyTree.forEachCadView(function(c){var d=c.getRuntimeId(),e=c.getParent();c=e===a?c.getName()||"(null)":e.getName()+" - "+c.getName();b[d]=c});return b};b.prototype.activateCadView=function(a,b){return __awaiter(this,void 0,
void 0,function(){var c;return __generator(this,function(d){switch(d.label){case 0:return this._assemblyTree.hasActiveCadView()?[4,this._assemblyTree.deactivateActiveCadView()]:[3,2];case 1:return d.sent(),[2,this.activateCadView(a,b)];case 2:return c=this._assemblyTree.lookupCadView(a),null===c?[2]:[2,this._assemblyTree.activateCadView(c,b)]}})})};b.prototype.getCadViewPmis=function(a){var b=this._assemblyTree.lookupCadView(a);if(null===b)return[];a=[];for(var c=0,b=this._assemblyTree.getCadViewPmis(b);c<
b.length;c++)a.push(b[c].getRuntimeId());return a};b.prototype._disableCadConfigurations=function(){this._cadConfigurationsEnabled=!1;return this._assemblyTree.deactivateActiveCadView()};b.prototype.cadConfigurationsEnabled=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return this._cadConfigurationsEnabled&&this._assemblyTree.seenExternalModel()?[4,this._disableCadConfigurations()]:[3,2];case 1:a.sent(),a.label=2;case 2:return[2,
this._cadConfigurationsEnabled]}})})};b.prototype.getCadConfigurations=function(){var a={};this._assemblyTree.forEachCadConfiguration(function(b){var c=b.getRuntimeId();b=b.getName()||"(null)";a[c]=b});return a};b.prototype.getDefaultCadConfiguration=function(){var a=this._assemblyTree.getDefaultCadConfiguration();return null!==a?a.getRuntimeId():null};b.prototype.getActiveCadConfiguration=function(){var a=this._assemblyTree.getActiveCadConfiguration();return null!==a?a.getRuntimeId():null};b.prototype._activateCadConfiguration=
function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return[4,this._assemblyTree.activateCadConfiguration(a)];case 1:return c.sent(),b=a.getRuntimeId(),this._callbackManager.trigger("configurationActivated",b),[2]}})})};b.prototype.activateCadConfiguration=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){b=this._assemblyTree.lookupProductOccurrence(a);return null===b?[2]:[2,this._activateCadConfiguration(b)]})})};
b.prototype.activateDefaultCadConfiguration=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){a=this._assemblyTree.getDefaultCadConfiguration();return null===a?[2]:[2,this._activateCadConfiguration(a)]})})};b.prototype.getPmis=function(){var a={};this._assemblyTree.forEachPmi(function(b){var c=b.getRuntimeId();b=b.getName()||"(null)";a[c]=b});return a};b.prototype.getPmiType=function(a){a=this._assemblyTree.lookupPmi(a);return null===a?d.PmiType.Unknown:
a.getPmiType()};b.prototype.getPmiSubType=function(b){b=this._assemblyTree.lookupPmi(b);return null===b?a.PmiSubType.Unknown:b.getPmiSubType()};b.prototype.getUnit=function(a){a=this._assemblyTree.lookupAnyNode(a);return a instanceof d.ProductOccurrence?a.getMeasurementUnit():a instanceof d.BodyInstance?a.getParent().getMeasurementUnit():1};b.prototype._rectifyParent=function(a,b){if(null!==b){b=this._assemblyTree.lookupProductOccurrence(b);if(null!==b)return b;console.assert(!1)}a=this._assemblyTree.getInclusionContexts(a);
return 0<a.length?(a=a[0].getChildren(),console.assert(0<a.length),a[0]):this._assemblyTree.getRootNode()};b.prototype.createMeshInstance=function(a,b,c,d,e,g){d=this._rectifyParent(a,d);return this._assemblyTree.createMeshInstance(!0,a,b,null,c,d,e,g).getRuntimeId()};b.prototype.createPmiInstance=function(a,b,c,d,e,g,m){m=this._rectifyParent(a,m);return this._assemblyTree.createPmiInstance(a,b,null,g,m,c,d,e).getRuntimeId()};b.prototype.setVisibilitiesByMap=function(a,b){var c=this,e=new Map;a.forEach(function(a,
b){b=c._assemblyTree.lookupAnyTreeNode(b);null!==b&&e.set(b,a)});a=this._assemblyTree.getRootNode();return d.updateVisibilities(this._assemblyTree,this._engine,this._callbackManager,a,e,!1,b,null)};b.prototype.setVisibilitiesByValue=function(a,b,c){for(var e=new Map,g=0;g<a.length;g++){var l=this._assemblyTree.lookupAnyTreeNode(a[g]);null!==l&&e.set(l,b)}a=this._assemblyTree.getRootNode();return d.updateVisibilities(this._assemblyTree,this._engine,this._callbackManager,a,e,!1,c,null)};b.prototype.resetAllVisibilities=
function(){var a=new Map,b=this._assemblyTree.getRootNode(),c=this._assemblyTree.getActiveCadConfiguration();return d.updateVisibilities(this._assemblyTree,this._engine,this._callbackManager,b,a,!0,null,c)};b.prototype.resetAllTransforms=function(){return __awaiter(this,void 0,void 0,function(){var a,b;return __generator(this,function(c){switch(c.label){case 0:return a=this._assemblyTree.getRootNode(),[4,d.resetTransforms(a)];case 1:return(b=c.sent())?[2,d.updateScMatrices(this._engine,this._callbackManager,
[a],!1)]:[2]}})})};b.prototype.reset=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return this._cadConfigurationsEnabled=!0,this.isACadDrawing()?[2,this._callbackManager.promiseTrigger("_resetDrawing",null)]:this._assemblyTree.hasActiveCadView()?[4,this._assemblyTree.deactivateActiveCadView()]:[3,2];case 1:b.sent(),b.label=2;case 2:return a=[this.resetAllVisibilities(),this.resetAllTransforms()],[4,g.waitForAll(a)];case 3:return b.sent(),
[2]}})})};b.prototype.setPmiColor=function(b,c){void 0===c&&(c=this.getAbsoluteRootNodeId());c=this.getInstanceIncs(c,6);0<c.length&&(this._engine.setPartColor(c,a.ElementType.Faces,b),this._engine.setPartColor(c,a.ElementType.Lines,b))};b.prototype.resetPmiColor=function(b){void 0===b&&(b=this.getAbsoluteRootNodeId());b=this.getInstanceIncs(b,6);0<b.length&&(this._engine.unsetPartColor(b,a.ElementType.Faces),this._engine.unsetPartColor(b,a.ElementType.Lines))};b.prototype.getPmiTopologyReferences=
function(a){a=this._assemblyTree.lookupPmi(a);return null===a?null:a.getPmiTopologyReferences(this._assemblyTree)};b.prototype.createNode=function(a,b,c,e,g){void 0===e&&(e=null);void 0===g&&(g=!0);var l=null;null!==a&&(l=this._assemblyTree.lookupProductOccurrence(a));null===l&&(l=this._assemblyTree.getRootNode());null===c||d.isAuthoredId(c)||(c=null);return this._assemblyTree.createNode(l,b,c,e,g).getRuntimeId()};b.prototype.deleteNode=function(b){return __awaiter(this,void 0,void 0,function(){var c;
return __generator(this,function(k){c=this._assemblyTree.lookupAnyTreeNode(b);if(null!==c){if(c instanceof d.ProductOccurrence||c instanceof d.BodyInstance)return[2,this._assemblyTree.deleteNode(c)];throw new a.InvalidNodeTypeError(b,0,2);}return[2]})})};b.prototype.createPart=function(a){return this._assemblyTree.createPart(a).getRuntimeId()};b.prototype.setPart=function(a,b){a=this._assemblyTree.lookupProductOccurrence(a);if(null===a)return!1;b=this._assemblyTree.lookupPartDefinition(b);if(null===
b)return!1;this._assemblyTree.setPart(a,b);return!0};b.prototype.createAndAddRepItem=function(a,b){a=this._assemblyTree.lookupPartDefinition(a);return null===a?null:a.createRepItem(this._assemblyTree,b).getRuntimeId()};b.prototype.getLowestAvailableNodeId=function(){return this._assemblyTree.getLowestAvailableNodeId()};b.prototype.getType=function(b){b=this._assemblyTree.lookupAnyNode(b);return null===b?a.NodeType.Unknown:d.getNodeType(b)};b.prototype.isVisible=function(a){a=this._assemblyTree.lookupAnyNode(a);
return null!==a?a.isVisible():!1};b.prototype.getBranchVisibility=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a?d.getBranchVisibility(a):1};b.prototype.setMeshLevel=function(a,b){for(var c=[],e=0;e<a.length;e++){var g=this._assemblyTree.lookupAnyTreeNode(a[e]);null!==g&&c.push(g)}return d.setMeshLevels(this._engine,c,b)};b.prototype.setEnableAutomaticUnitScaling=function(a){this._assemblyTree.setAutomaticMeasurementUnitScaling(a)};b.prototype.setBehaviorInitiallyHidden=function(a){this._assemblyTree.setInitiallyHiddenStayHidden(a)};
b.prototype.isACadDrawing=function(){return this._assemblyTree.containsDrawings()};b.prototype.isMeasurable=function(){return this._assemblyTree.isMeasureable()};b.prototype.getModelFileNameFromNode=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a?d.towardAttachContext(a).getOriginalFileName():null};b.prototype.getModelFileTypeFromNode=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a?d.towardAttachContext(a).getOriginalFileType():null};b.prototype.isAnnotationView=
function(b){var c=this._assemblyTree.lookupCadView(b);if(null!==c)return c.isAnnotationView();throw new a.InvalidNodeTypeError(b,3);};b.prototype.preventNodeDeletion=function(b){b=this._assemblyTree.lookupBodyInstance(b);if(null===b)throw new a.InternalLogicError;this._assemblyTree.preventNodeDeletion(b)};b.prototype.preventMeshDeletion=function(a){this._assemblyTree.preventMeshDeletion(a)};b.prototype.getBounding=function(a,b){return d.getBoundingByNodeId(this._assemblyTree,this._engine,a,b)};b.prototype.getIdOffset=
function(a){a=this._assemblyTree.lookupAnyNode(a);return null!==a?(a instanceof d.PartDefinition?a.getInclusionContextForNodeId():a instanceof d.RepresentationItem?a.getParent().getInclusionContextForNodeId():d.towardInclusionContext(a)).getIdOffset():0};b.prototype.isNodeLoaded=function(b){var c=this._assemblyTree.lookupAnyNode(b);if(null===c)throw new a.InvalidNodeIdError(b);return c.isLoaded()};b.prototype.shutdown=function(){var a=this._treeLoader.cancelPendingLoads();a};b.prototype.isReady=function(){console.assert(2!==
this._readyPromise.state);return 0!==this._readyPromise.state};b.prototype.waitForReady=function(){return this._readyPromise};b.prototype.lookupAnyTreeNode=function(a){return this._assemblyTree.lookupAnyTreeNode(a)};b.prototype.lookupAnyBody=function(a){return this._assemblyTree.lookupAnyBody(a)};b.prototype.lookupBodyInstance=function(a){return this._assemblyTree.lookupBodyInstance(a)};b.prototype.gatherInstanceIncsFromNodeIds=function(a,b,c){return d.gatherInstanceIncsByNodeIdsSync(this._assemblyTree,
a,b,c)};b.prototype.requestNodes=function(a){return __awaiter(this,void 0,void 0,function(){var b,c,d,e,l,m;return __generator(this,function(n){b=[];c=0;for(d=a;c<d.length;c++)e=d[c],l=this._assemblyTree.lookupAnyTreeNode(e),null!==l&&(m=this._assemblyTree.requestNode(this._treeLoader,l,!1),b.push(m));return[2,g.waitForAll(b)]})})};b.prototype.isWithinExternalModel=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);if(null===a)return!1;for(a=d.towardProductOccurrence(a);null!==a;){if(a.isExternalModelRoot())return!0;
a=d.towardProductOccurrence(a.getParent())}return!1};b.prototype.getNodeGenericType=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a?d.getNodeGenericType(a):null};b.prototype.getNodeGenericId=function(a){a=this._assemblyTree.lookupAnyTreeNode(a);return null!==a?a.getGenericId():null};b.prototype.getNodeByGenericId=function(a){a=this._assemblyTree.getNodeByGenericId(a);return null!==a?a.getRuntimeId():null};b.prototype.getNodesByGenericType=function(a){a=this._assemblyTree.getNodesByGenericType(a);
if(null!==a){var b=new Set;a.forEach(function(a){b.add(a.getRuntimeId())});return b}return null};b.prototype.getGenericTypes=function(){var a=[];this._assemblyTree.genericTypeToNodes().forEach(function(b,c){a.push(c)});return a};b.prototype.getGenericTypeIdMap=function(){var a=new Map;this._assemblyTree.genericTypeToNodes().forEach(function(b,c){var d=new Set;b.forEach(function(a){d.add(a.getRuntimeId())});a.set(c,d)});return a};b.prototype.hasEffectiveGenericType=function(b,c){var k=this.lookupAnyTreeNode(b);
if(null===k)throw new a.InvalidNodeIdError(b);return d.hasEffectiveGenericType(k,c)};b.prototype.registerGenericId=function(a,b){return this._assemblyTree.registerGenericGlobalId(a,b)};b.prototype.registerGenericType=function(a,b){return this._assemblyTree.registerGenericType(a,b)};b.prototype.firstAssemblyDataHeader=function(){return this._treeLoader.firstAssemblyDataHeader()};return b}();d.ModelStructure=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(c){for(;;)if(c instanceof d.InclusionContext)c=c.getParent();else{if(c instanceof d.AttachContext)return c;if(c instanceof d.NodeMixin)c=c.getParent();else if(c instanceof d.LoadContext){if(c=c.getParent(),null===c)throw new a.InternalLogicError;}else g.TypeAssert(c),c=c.getInclusionContext()}}d.getNetMatrix=function(c){for(var b=new a.Matrix;null!==c;)if(c instanceof d.NodeMixin){var f=c.getLocalTransform();f&&(b=a.Matrix.multiply(b,f));c=c instanceof
d.PartDefinition?null:c.getParent()}else if(c instanceof d.InclusionContext)c=c.getParent();else if(c instanceof d.AttachContext)c=c.getParent();else if(c instanceof d.LoadContext)c=c.getParent();else{g.TypeAssert(c);break}return b};d.towardContainerNode=function(a){for(;;)if(a instanceof d.NodeMixin)if(a instanceof d.BodyMixin)a=a.getParent();else return a;else if(a instanceof d.LoadContext)a=a.getParent();else if(a instanceof d.InclusionContext)a=a.getParent();else if(a instanceof d.AttachContext)a=
a.getParent();else{if(null===a)return null;g.TypeAssert(a);console.assert(!1);a=a.getInclusionContext()}};d.isOutOfHierarchy=function(a){return a instanceof d.BodyMixin||a instanceof d.ProductOccurrence?a.isOutOfHierarchy():!1};d.getBranchVisibility=function(a){return a instanceof d.ProductOccurrence||a instanceof d.Pmi||a instanceof d.CadView?a.getBranchVisibility():a.isVisible()?2:1};d.getNodeType=function(c){if(c instanceof d.ProductOccurrence)return c.hasBodyInstances()?c.isADrawingSheetNode()?
a.NodeType.DrawingSheet:a.NodeType.PartInstance:a.NodeType.AssemblyNode;if(c instanceof d.PartDefinition)return a.NodeType.Part;if(c instanceof d.PmiBody)return a.NodeType.PmiBody;if(c instanceof d.ViewFrame)return a.NodeType.ViewFrame;if(c instanceof d.BodyInstance)return a.NodeType.BodyInstance;if(c instanceof d.RepresentationItem)switch(c.getBodyType()){case d.BodyType.BRep:return a.NodeType.BrepBody;case d.BodyType.Tessellation:return a.NodeType.TessBody;case d.BodyType.Wireframe:return a.NodeType.WireBody;
case d.BodyType.PointCloud:return a.NodeType.PointsBody;default:return a.NodeType.Body}else{if(c instanceof d.Pmi)return a.NodeType.Pmi;g.TypeAssert(c);return a.NodeType.CadView}};d.getNodeGenericType=function(a){var b=a.getGenericTypeId();return null!==b&&(a=e(a).getGenericTypeMaps(),null!==a)?a.getRight(b)||null:null};d.towardInclusionContext=function(a){for(;;)if(a instanceof d.NodeMixin)a=a.getParent();else{if(a instanceof d.InclusionContext)return a;if(a instanceof d.PmiBody)a=a.getParent();
else if(a instanceof d.ViewFrame)a=a.getParent();else return g.TypeAssert(a),a.getInclusionContext()}};d.towardLoadContext=function(a){for(;;)if(a instanceof d.AttachContext)a=a.getParent();else{if(a instanceof d.LoadContext)return a;a instanceof d.NodeMixin?a=a.getParent():a instanceof d.InclusionContext?a=a.getParent():(g.TypeAssert(a),a=a.getInclusionContext())}};d.towardAttachContext=e;d.towardAttachRoot=function(c){for(var b=null;;)if(c instanceof d.ProductOccurrence)b=c,c=c.getParent();else if(c instanceof
d.NodeMixin)c=c.getParent();else{if(c instanceof d.InclusionContext){if(null===b)throw new a.InternalLogicError;return b}g.TypeAssert(c);c=c.getInclusionContext()}};d.towardProductOccurrence=function(a){for(;;){if(a instanceof d.ProductOccurrence)return a;if(a instanceof d.AttachContext)a=a.getParent();else if(a instanceof d.InclusionContext)a=a.getParent();else if(a instanceof d.LoadContext){if(a=a.getParent(),null===a)return null}else if(a instanceof d.BodyMixin)a=a.getParent();else if(a instanceof
d.Pmi)a=a.getParent();else if(a instanceof d.CadView)a=a.getParent();else return g.TypeAssert(a),console.assert(!1),null}}})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(a){})(d.GenericTypeId||(d.GenericTypeId={}));var e=function(){function c(b,f,c,d,e){this._inclusionContexts=this._reservedNodeIdOffset=null;this._originalFileName="";this._originalFileType=a.FileType.Unknown;this._genericTypeMaps=null;console.assert(4294967295!==d);this._remapper=b;this._attachScope=f;this._attachedInvisibly=c;this._masterModelKey=d;this._parent=e}c.prototype.getRootNodeMetaData=function(a){return __awaiter(this,void 0,void 0,function(){var f,
c,k,e,g,l;return __generator(this,function(m){switch(m.label){case 0:if(4294967295===this._masterModelKey)return[2,null];f=a.getAbstractScEngine();c=this._masterModelKey;return[4,f.safeGetMetaData(c,1)];case 1:k=m.sent();if(null===k)return[3,4];e=a.tryParseHeader(k);return null===e?[2,new d.AssemblyData(null,k)]:[4,e];case 2:return g=m.sent(),this._originalFileName=g.originalFileName,this._originalFileType=g.originalFileType,[4,f.safeGetMetaData(c,g.rootAssemblyDataKey())];case 3:return l=m.sent(),
null!==l?[2,new d.AssemblyData(g,l)]:[2,null];case 4:return[2,null]}})})};c.prototype.getAttachScope=function(){return this._attachScope};c.prototype.attachedInvisibly=function(){return this._attachedInvisibly};c.prototype.getMasterModelKey=function(){return this._masterModelKey};c.prototype.addInclusionContext=function(a){console.assert(a.getParent()===this);this._inclusionContexts=g.TerseArray.push(this._inclusionContexts,a)};c.prototype.getRemapper=function(){return this._remapper};c.prototype.getParent=
function(){return this._parent};c.prototype.getChildren=function(){var a=this._inclusionContexts;if(null===a)return[];if(a instanceof Array){console.assert(0<a.length);for(var f=a[0].getChildren(),c=1;c<a.length;++c)g.append(f,a[c].getChildren());return f}return a.getChildren()};c.prototype.split=function(a,f,h){return new c(this._remapper,a,f,this._masterModelKey,h)};c.prototype.hasChildren=function(){return null!==this._inclusionContexts};c.prototype.removeProductOccurrence=function(a){for(var f=
null,c=g.TerseArray.toArray(this._inclusionContexts),d=0,e=c;d<e.length;d++){var p=e[d];if(p.removeProductOccurrence(a)){f=p;break}}if(null===f)return!1;c=c.filter(function(a){return a.hasChildren()});this._inclusionContexts=0===c.length?null:g.TerseArray.fromArray(c);return!0};c.prototype.purgeContents=function(){for(var a=[],f=0,c=g.TerseArray.toArray(this._inclusionContexts);f<c.length;f++){var d=c[f].purgeContents();a.push(d)}this._inclusionContexts=null;return g.waitForAll(a)};c.prototype.isLoaded=
function(){if(this._inclusionContexts instanceof d.InclusionContext)return this._inclusionContexts.isLoaded();if(null!==this._inclusionContexts)for(var a=0,f=this._inclusionContexts;a<f.length;a++)if(!f[a].isLoaded())return!1;return!0};c.prototype.setReservedNodeIdOffset=function(a){console.assert(null===this._reservedNodeIdOffset);this._reservedNodeIdOffset=a};c.prototype.getReservedNodeIdOffset=function(){return this._reservedNodeIdOffset};c.prototype.forgetReservedNodeIdOffset=function(){console.assert(null!==
this._reservedNodeIdOffset);this._reservedNodeIdOffset=null};c.prototype.getOriginalFileName=function(){return this._originalFileName};c.prototype.getOriginalFileType=function(){return this._originalFileType};c.prototype.setGenericTypeMaps=function(a){this._genericTypeMaps=a};c.prototype.getGenericTypeMaps=function(){return this._genericTypeMaps};return c}();d.AttachContext=e})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function c(a,f,c,k){this._productOccurrences=null;console.assert(void 0!==c);console.assert(0===c===(0===k));this._parent=f;this._inclusionKey=c;this._modelKey=k;f=d.towardAttachContext(f);c=f.getReservedNodeIdOffset();null!==c?f.forgetReservedNodeIdOffset():c=a.newNodeIdOffset();this._nodeIdOffset=c;a.registerInclusionContext(this)}c.prototype.split=function(a,f){return new c(a,f,this._inclusionKey,this._modelKey)};c.prototype.getIdOffset=function(){return this._nodeIdOffset};
c.prototype.toRuntimeId=function(a){console.assert(d.isAuthoredId(a));return a+this._nodeIdOffset};c.prototype.getInclusionKey=function(){return this._inclusionKey};c.prototype.getModelKey=function(){return this._modelKey};c.prototype.getParent=function(){return this._parent};c.prototype.addProductOccurrence=function(b){console.assert(b.getParent()===this);this._productOccurrences=a.TerseArray.push(this._productOccurrences,b)};c.prototype.getChildren=function(){console.assert(null!==this._productOccurrences);
return a.TerseArray.toArray(this._productOccurrences)};c.prototype.removeProductOccurrence=function(b){var f=a.TerseArray.toArray(this._productOccurrences),c=f.length,f=f.filter(function(a){return a!==b});0===f.length?delete this._productOccurrences:this._productOccurrences=a.TerseArray.fromArray(f);return f.length<c};c.prototype.purgeContents=function(){for(var b=[],f=0,c=a.TerseArray.toArray(this._productOccurrences);f<c.length;f++){var d=c[f].purgeContents();b.push(d)}this._productOccurrences=
null;return a.waitForAll(b)};c.prototype.hasChildren=function(){return null!==this._productOccurrences};c.prototype.isLoaded=function(){if(this._productOccurrences instanceof d.ProductOccurrence)return this._productOccurrences.isLoaded();if(null!==this._productOccurrences)for(var a=0,f=this._productOccurrences;a<f.length;a++)if(!f[a].isLoaded())return!1;return!0};return c}();d.InclusionContext=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function c(a,f){this._attachContexts=this._handledExternalModels=null;this._registeredScsModelKeys=new Map;this._parent=a;this._debugLoadString=f;this._debugLoadString}c.prototype.handleExternalModel=function(b,f,c){f=f.getInclusionKey();b=a.compressUint(c)+" "+a.compressUint(f)+" "+a.compressUint(b);null===this._handledExternalModels&&(this._handledExternalModels=new Set);if(this._handledExternalModels.has(b))return!1;this._handledExternalModels.add(b);
return!0};c.prototype.getParent=function(){return this._parent};c.prototype.addAttachContext=function(b){this._attachContexts=a.TerseArray.push(this._attachContexts,b)};c.prototype.getChildren=function(){var b=this._attachContexts;if(null===b)return[];if(b instanceof Array){console.assert(0<b.length);for(var f=b[0].getChildren(),c=1;c<b.length;++c)a.append(f,b[c].getChildren());return f}return b.getChildren()};c.prototype.hasChildren=function(){return null!==this._attachContexts};c.prototype.removeProductOccurrence=
function(b){for(var f=null,c=a.TerseArray.toArray(this._attachContexts),d=0,e=c;d<e.length;d++){var p=e[d];if(p.removeProductOccurrence(b)){f=p;break}}if(null===f)return!1;c=c.filter(function(a){return a.hasChildren()});this._attachContexts=0===c.length?null:a.TerseArray.fromArray(c);return!0};c.prototype.purgeContents=function(){for(var b=[],f=0,c=a.TerseArray.toArray(this._attachContexts);f<c.length;f++){var d=c[f].purgeContents();b.push(d)}this._attachContexts=null;return a.waitForAll(b)};c.prototype.isLoaded=
function(){if(this._attachContexts instanceof d.AttachContext)return this._attachContexts.isLoaded();if(null!==this._attachContexts)for(var a=0,f=this._attachContexts;a<f.length;a++)if(!f[a].isLoaded())return!1;return!0};c.prototype.initializeScsModelKeysOf=function(b){console.assert(void 0===this._registeredScsModelKeys.get(b));this._registeredScsModelKeys.set(b,a.TrackedOpenPromise.create())};c.prototype.getScsModelKeysOf=function(a){a=this._registeredScsModelKeys.get(a);return void 0===a?null:
a};c.prototype.markAsFirstLoad=function(){console.assert(void 0===this._isFirstLoad);this._isFirstLoad=!0};c.prototype.isFirstLoad=function(){return!0===this._isFirstLoad};return c}();d.LoadContext=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function b(a){this._referrers=null;this._prototype=a}b.prototype._addReferrer=function(b){this._referrers=a.TerseArray.push(this._referrers,b)};b.prototype._getReferrers=function(){return a.TerseArray.toArray(this._referrers)};b.prototype._getPrototype=function(){return this._prototype};b.prototype._removeReferrer=function(b){var c=!1,d=a.TerseArray.toArray(this._referrers),d=d.filter(function(a){return a===b?(c=!0,!1):!0});if(!c)return!1;0===
d.length?delete this._referrers:this._referrers=a.TerseArray.fromArray(d);return!0};b.prototype._purgeContents=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return this._prototype.isUnforced()?[3,3]:[4,this._prototype];case 1:return a=b.sent(),[4,a.purgeContents()];case 2:b.sent(),b.label=3;case 3:return[2]}})})};b.prototype._isLoaded=function(){return this._prototype.isResolved()&&this._prototype.getResolved().isLoaded()};
return b}();d.SharedPrototypeContext=e;var c=function(){function b(b,c){b instanceof e&&(b=a.LazyObject.create(b));this._shared=b;this._inclusionContext=c}b.prototype.getInclusionContext=function(){return this._inclusionContext};b.prototype.addReferrer=function(a){this._shared.get()._addReferrer(a)};b.prototype.getReferrers=function(){return this._shared.get()._getReferrers()};b.prototype.getProductOccurrence=function(){return this._shared.get()._getPrototype()};b.prototype.removeReferrer=function(a){return this._shared.get()._removeReferrer(a)?
(a=a.removePrototype(),console.assert(this===a),!0):!1};b.prototype.removeAllReferrers=function(){for(var a=0,b=this.getReferrers();a<b.length;a++)this.removeReferrer(b[a])||console.assert(!1)};b.prototype.purgeContents=function(){return this._shared.get()._purgeContents()};b.prototype.isLoaded=function(){return this._shared.get()._isLoaded()};return b}();d.PrototypeContext=c})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function a(){this._bits2=this._bits1=0}a.prototype.hasBits1=function(a){return g.hasBits(this._bits1,a)};a.prototype.hasBits2=function(a){return g.hasBits(this._bits2,a)};a.prototype.parseBits1=function(a){this._bits1=a.parseIndex_32()};a.prototype.parseBits2=function(a){this.hasBits1(1073741824)&&(this._bits2=a.parseIndex_32())};return a}();d.NodeParseBits=e;var c=function(){return function(a,b){this.shown=a;this.removed=b}}();d.AssemblyVisibility=
c;var b=function(){function b(a){this._bytes=a.bytes;this._header=a.header;this._dataView=new DataView(this._bytes.buffer,this._bytes.byteOffset,this._bytes.byteLength);this._currentPos=0}b.prototype.hasNext=function(){return this._currentPos<this._bytes.length};b.prototype.parseCount_32=function(){return this._parseUint_32()};b.prototype.parseIndex_32=function(){return this._parseUint_32()};b.prototype.parseAssemblyDataVersion=function(){return{major:this._parseUint_32(),minor:this._parseUint_32()}};
b.prototype.parseAssemblyDataHeaderVersion=function(){return this._parseUint_32()};b.prototype.parseVisibility=function(){var a=this._parseInt_8(),b=g.hasBits(a,2),a=g.hasBits(a,1);return new c(b,a)};b.prototype.parseProductBits=function(){var a=this._parseUint_8();return null!==this._header&&2<=this._header.headerVersion||!g.hasBits(a,6)?a:a&-7|32};b.prototype.parseCString=function(){for(var a=this._currentPos,b=this._bytes[this._currentPos++];0!==b;)b=this._bytes[this._currentPos++];return g.utf8ArrayToStr(this._bytes.subarray(a,
this._currentPos-1))};b.prototype.parseBytes=function(a){var b=this._currentPos;this._currentPos+=a;a=this._bytes.subarray(b,this._currentPos);return new Uint8Array(a)};b.prototype.parseNodeId=function(){var a=this._parseUint_32();console.assert(a!==d.invalidNodeId);return a};b.prototype.parseLayerId=function(){var a=this._parseUint_32();console.assert(a!==d.invalidNodeId);return a};b.prototype.parseGenericTypes=function(){for(var a=this._parseUint_32(),b=new g.Bimap,f=0;f<a;f++){var c=this.parseCString(),
d=this._parseUint_32();b.set(d,c)}return b};b.prototype.parseGenericTypeId=function(){return this._parseUint_32()};b.prototype.parseGenericId=function(){return this.parseCString()};b.prototype._parseScKey=function(){var a=this._parseUint_32();console.assert(4294967295!==a);return a};b.prototype.parseDataKey=function(){return this._parseScKey()};b.prototype.parseInstanceKey=function(){return this._parseScKey()};b.prototype.parseMeshKey=function(){return this._parseScKey()};b.prototype.parseModelKey=
function(a){var b=this._parseScKey();return null!==a?a.getEffectiveModelKey(b):b};b.prototype.parseInclusionKey=function(a,b){var f=this._parseScKey();return null!==a?a.getEffectiveInclusionKey(f,b):f};b.prototype._parseInt_8=function(){return this._dataView.getInt8(this._currentPos++)};b.prototype._parseUint_8=function(){return this._dataView.getUint8(this._currentPos++)};b.prototype._parseUint_32=function(){var a=this._dataView.getUint32(this._currentPos,!0);this._currentPos+=4;return a};b.prototype._parseFloat_32=
function(){var a=this._dataView.getFloat32(this._currentPos,!0);this._currentPos+=4;return a};b.prototype._parseFloat_64=function(){var a=this._dataView.getFloat64(this._currentPos,!0);this._currentPos+=8;return a};b.prototype.parseFloat_32=function(){return this._parseFloat_32()};b.prototype.parseFloat_64=function(){return this._parseFloat_64()};b.prototype.parseAttributeType=function(){return this._parseInt_8()};b.prototype.parseNodeParseBits=function(){var a=new e;a.parseBits1(this);a.parseBits2(this);
return a};b.prototype.parseViewParseBits=function(){return this._parseUint_32()};b.prototype.parsePmiParseBits=function(){return this._parseUint_32()};b.prototype.parseLayerParseBits=function(){return this._parseUint_32()};b.prototype.parseBoolean=function(){return 0!==this._parseUint_8()};b.prototype.parsePoint3_32=function(){return new a.Point3(this._parseFloat_32(),this._parseFloat_32(),this._parseFloat_32())};b.prototype.parsePoint3_64=function(){return new a.Point3(this._parseFloat_64(),this._parseFloat_64(),
this._parseFloat_64())};b.prototype.parsePlane3_32=function(){return a.Plane.createFromCoefficients(this._parseFloat_32(),this._parseFloat_32(),this._parseFloat_32(),this._parseFloat_32())};b.prototype.parsePmiType=function(){return this._parseUint_32()};b.prototype.parsePmiSubType=function(){return this._parseUint_32()};b.prototype.parsePmiTopoRef=function(){return this._parseInt_8()};b.prototype.parseBodyType=function(){return this._parseUint_8()};b.prototype.parseFaceType=function(){return this._parseInt_8()};
b.prototype.parseEdgeType=function(){return this._parseInt_8()};b.prototype.parseUserDataIndex=function(){var a=this._parseUint_32(),b=this._parseUint_32();return 2097151>=b?4294967296*b+a:(""+b.toString(16)+g.zeroPadHex32(a)).toUpperCase()};b.prototype.getHeader=function(){return this._header};return b}();d.AssemblyDataParser=b})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function a(b,f){this._inclusionsOf=new Map;this._masterModelKey=4294967295;this._prototypeInstanceCount=-1;this._attachScope=b;this._attachedInvisibly=f}a.prototype.getAttachScope=function(){return this._attachScope};a.prototype.getMasterModelKey=function(){console.assert(4294967295!==this._masterModelKey);return this._masterModelKey};a.prototype.getModelKeys=function(){var a=[];this._inclusionsOf.forEach(function(f,c){f;a.push(c)});return a};
a.prototype.hasInclusions=function(){return 0<this._inclusionsOf.size};a.prototype.getAllInclusions=function(){var a=[];this._inclusionsOf.forEach(function(f,c){for(var d=0;d<f.length;d++)a.push(f[d],c)});return a};a.prototype.getInclusionsOf=function(a){var f=this._inclusionsOf.get(a);if(void 0===f)return[];for(var c=[],d=0;d<f.length;d++)c.push(f[d],a);return c};a.prototype.hasModelIncluded=function(a){return this._inclusionsOf.has(a)};a.prototype.attachedInvisibly=function(){return this._attachedInvisibly};
a.prototype.prototypeInstanceCount=function(){console.assert(0<=this._prototypeInstanceCount);return this._prototypeInstanceCount};a.prototype.registerInclusion=function(a,f){var c=this._inclusionsOf.get(f);void 0===c?this._inclusionsOf.set(f,[a]):c.push(a)};a.prototype.registerMasterModelKey=function(a){console.assert(4294967295===this._masterModelKey);this._masterModelKey=a};a.prototype.registerPrototypeInstanceCount=function(a){console.assert(-1===this._prototypeInstanceCount);this._prototypeInstanceCount=
a};return a}();a.AttachInfoBuilder=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function c(){this._prevPriorityValue=1;this._priorityProxies=new Map}c.prototype._getPriorityCompareValue=function(a){if("number"===typeof a)return a;a=this._priorityProxies.get(a);null!==a.worldBounding&&console.assert(1>=a.priorityHeuristic);return a.priorityHeuristic};c.prototype.comparePriority=function(a,f){a=this._getPriorityCompareValue(a);f=this._getPriorityCompareValue(f);return a<f};c.prototype._updateHeuristicInfo=function(b,f){if(null!==
f.worldBounding){var c=a.toVec3(f.worldBounding.center()),d=a.toVec3(f.worldBounding.extents());b=b.calculateAttachHeuristic(d,c);f.priorityHeuristic=b}null!==f.xmlAttachInfo&&f.xmlAttachInfo.directlyRequested&&(null===f.worldBounding&&(f.priorityHeuristic=0),f.priorityHeuristic+=-1E6)};c.prototype.createPriority=function(a,f,c){if(null===c)return++this._prevPriorityValue;var d=Object.create(null),e;null!==c.bounding?(f=f.transformBox(c.bounding),e=0):(f=null,e=++this._prevPriorityValue);c={xmlAttachInfo:c,
worldBounding:f,priorityHeuristic:e};this._updateHeuristicInfo(a,c);this._priorityProxies.set(d,c);return d};c.prototype.destroyPriority=function(a){"object"===typeof a&&this._priorityProxies.delete(a)};c.prototype.onViewChange=function(a){var f=this;this._priorityProxies.forEach(function(c){f._updateHeuristicInfo(a,c)})};c.prototype.reset=function(){this._priorityProxies.clear()};return c}();d.AttachPriorityManager=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator=
{}));(function(a){(function(a){(function(a){var e=function(){function a(){}a.isNameInfo=function(a){return"modelName"in a};return a}();a.ExternalModel=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a){return a instanceof c?a.referencedInfo:a}var c=function(){return function(a){this.referencedInfo=a}}();d.ReferencedNodeInfo=c;d.modelFileNodeInfoAsProdOccInfo=e;var b=function(){function b(){}b.parseXml=function(b,f,e,g,l){console.assert("ModelFile"===g.localName);var m=new Map,n=new Map,r=new Map;for(g=g.firstElementChild;null!==g;){if("ProductOccurence"!==g.localName)throw new a.XmlParseError('Unexpected element "'+g.localName+'".');if(null===
d.XmlParser.parseNodeId(g,"Id"))throw new a.XmlParseError('Expected "Id" attribute.');var t=g,u=d.ProductOccurrence.parseXml(b,f,e,t,l),v=u.nodeInfo.nodeId;if(r.has(u.nodeInfo.nodeId)){var w=new c(u);m.set(v,w)}else{if(!n.has(u.nodeInfo.nodeId)&&(n.set(u.nodeInfo.nodeId,null),null!==b.additionalMatrix))var w=b.additionalMatrix,y=u.nodeInfo.localTransform,y=null===y?w:a.Matrix.multiply(y,w),u=__assign({},u,{nodeInfo:__assign({},u.nodeInfo,{localTransform:y})});m.set(v,u)}v=0;for(w=d.XmlParser.parseNodeIds(t,
"Children")||[];v<w.length;v++)n.set(w[v],u);t=d.XmlParser.parseNodeId(t,"InstanceRef");null!==t&&(v=r.get(t),void 0===v?r.set(t,[u]):v.push(u));g=g.nextElementSibling}b=this._parentMapToChildMap(m,n,r);return{treeInfos:this._childMapRoseTrees(b)}};b._parentMapToChildMap=function(b,f,d){var e=new Map,g=function(a,b){var f=e.get(a);void 0===f?e.set(a,[b]):f.push(b)};f.forEach(function(f,d){d=b.get(d);if(d instanceof c)throw new a.XmlParseError('Expected a referenced node for "InstanceRef".');g(f,d)});
d.forEach(function(f,d){console.assert(0<f.length);d=b.get(d);if(!(d instanceof c))throw new a.XmlParseError('Node is both an "InstanceRef" and contained in another node\'s "Children" list.');for(var k=0;k<f.length;k++)g(f[k],d)});return e};b._childMapRoseTrees=function(a){var b=function(f){var c=[],d=e(f),d=a.get(d);if(void 0!==d){console.assert(0<d.length);for(var q=0;q<d.length;q++){var p=b(d[q]);c.push(p)}}return new g.RoseTree(f,c)},f=a.get(null);if(void 0===f)return console.assert(0===a.size),
[];for(var d=[],l=0;l<f.length;l++){var m=f[l];m instanceof c?console.assert(!1):(m=b(m),d.push(m))}return d};b.reify=function(b,f,d,e,l,m){return __awaiter(this,void 0,void 0,function(){var n,r,t,u,v,w,y,x;return __generator(this,function(z){switch(z.label){case 0:n=[];r=[];t=[];u=0;for(v=m.treeInfos;u<v.length;u++)w=v[u],w.value instanceof c?console.assert(!1):(y=this._reifyProductOccurrence(b,f,d,e,l,l,w,n),r.push(y),t.push(y.getRuntimeId()));x=f.promiseTrigger("_subtreeLoaded","subtreeLoaded",
t,a.NodeSource.LoadModel).then(function(){for(var a=0,b=t;a<b.length;a++)f.trigger("shatteredXmlStructureReady",b[a])});n.push(x);return[4,g.waitForAll(n)];case 1:return z.sent(),[2,r]}})})};b._rectifyExternalModelInfo=function(b,f){f=f.referencedInfo.externalModelInfo;if(null===f)throw new a.XmlParseError('"InstanceRef" node does not contain "ExternalModel".');if(!d.ExternalModel.isNameInfo(f))throw new a.InternalLogicError;console.assert(0===f.reservedNodeIdOffset);b=b.newNodeIdOffset();return f=
__assign({},f,{reservedNodeIdOffset:b})};b._reifyProductOccurrence=function(b,f,q,g,l,m,n,r){var t=this,u=e(n.value);if(0!==u.childDataKeys.length)throw new a.InternalLogicError;if(null!==u.externalModelInfo)throw new a.LoadError('Unexpected "ExternalModel". Should be a child of an "InstanceRef".');var v=d.ProductOccurrence.reifySync(b,q,g,l,u,m);m.addProductOccurrence(v);v.markLoaded();m=0;for(n=n.kids;m<n.length;m++)u=n[m],u.value instanceof c?(console.assert(0===u.kids.length),u=this._rectifyExternalModelInfo(g,
u.value),u=q.attachByExternalModelInfo(u,v).then(function(b){return __awaiter(t,void 0,void 0,function(){var c;return __generator(this,function(h){switch(h.label){case 0:return null===b?[2]:[4,d.markContextsLoaded(b)];case 1:return h.sent(),v.addAttachContext(b),c=b.getChildren().map(function(a){return a.getRuntimeId()}),f.promiseTrigger("_subtreeLoaded","subtreeLoaded",c,a.NodeSource.LoadModel),[2]}})})}),r.push(u)):(console.assert(null===u.value.externalModelInfo),this._reifyProductOccurrence(b,
f,q,g,l,v,u,r));return v};b._parseBounding=function(b,f){var c=e(b.value),g=SC.UnspecifiedMeasurementUnit;null!==c.measurementUnit&&(g=c.measurementUnit);var l=1;g===SC.UnspecifiedMeasurementUnit?g=f:f!==SC.UnspecifiedMeasurementUnit&&(l=g/f);var l=(new a.Matrix).setScaleComponent(l,l,l),m=c.nodeInfo.localTransform;null!==m&&(l=a.Matrix.multiply(m,l));var m=a.Box.invalid(),n=0;for(b=b.kids;n<b.length;n++){var r=this._parseBounding(b[n],g),r=l.transformBox(r);m.addBox(r)}b=c.externalModelInfo;if(null!==
b){if(!d.ExternalModel.isNameInfo(b))throw new a.InternalLogicError;c=b.bounding;null===c||c.isDegenerate()||(b=b.measurementUnit||SC.UnspecifiedMeasurementUnit,f!==SC.UnspecifiedMeasurementUnit&&b!==SC.UnspecifiedMeasurementUnit&&(f=b/g,f=(new a.Matrix).setScaleComponent(f,f,f),l=a.Matrix.multiply(f,l)),c=l.transformBox(c),m.addBox(c))}return m};b.parseBounding=function(b,f){var c=a.Box.invalid(),d=0;for(b=b.treeInfos;d<b.length;d++)for(var e=0,g=b[d].kids;e<g.length;e++){var n=this._parseBounding(g[e],
f);c.addBox(n)}return c};return b}();d.ModelFile=b})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(b,f,c){return __awaiter(this,void 0,void 0,function(){var d,e;return __generator(this,function(g){switch(g.label){case 0:d=f.getScsModelKeysOf(b);if(null!==d)return[3,2];f.initializeScsModelKeysOf(b);return[4,c(b)];case 1:e=g.sent();if("string"===typeof e)throw new a.InternalLogicError;return[2,e];case 2:return[2,d]}})})}var c=function(){function b(a,b,c,e){this._cameraTimeoutId=null;this._isFirstAttachment=!0;this._attachScope=0;this._engine=a;this._view=
b;this._callbackManager=c;this._parentToXmlAttachInfos=new Map;this._viewInfo=new d.ViewInfo(this._view);this._attachPriorityManager=new d.AttachPriorityManager;this._attachQueue=this._createAttachQueue(e);this._registerCameraListener()}b.createWithEmptyModel=function(a,c,d,e){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(g){switch(g.label){case 0:return[4,a.loadEmpty()];case 1:return g.sent(),[2,new b(a,c,d,e)]}})})};b.prototype._createAttachQueue=function(a){var b=
this;null===a&&(a=13);return new g.PriorityPromiseQueue(a,function(a,f){return b._attachPriorityManager.comparePriority(a,f)},!1)};b.prototype._reprioritizeAttachments=function(){this._viewInfo=new d.ViewInfo(this._view);this._attachQueue.markDirty();this._attachPriorityManager.onViewChange(this._viewInfo)};b.prototype._registerCameraListener=function(){var a=this,b=function(){a._onCameraChange()};this._callbackManager.bind({camera:b,_shutdownBegin:function(){null!==a._cameraTimeoutId&&(clearTimeout(a._cameraTimeoutId),
a._cameraTimeoutId=null);a._callbackManager.unbind({camera:b})}})};b.prototype._onCameraChange=function(){var a=this;null!==this._cameraTimeoutId&&clearTimeout(this._cameraTimeoutId);this._cameraTimeoutId=setTimeout(function(){a._cameraTimeoutId=null;a._reprioritizeAttachments()},500)};b.prototype._awaitAttachInfo=function(b,c,k,e,p){var l=this,m=null===e,n=new d.AttachInfoBuilder(c,k),r=!1,t=[],u=g.OpenPromise.create(),v=g.OpenPromise.create(),w=!1,y=function(){console.assert(!w);w=!0;l._cleanupAttachLowLevel();
l._callbackManager.unbind(z)},x=null,z={_priorityMetaDataSent:function(a,b){a===c&&(n.registerPrototypeInstanceCount(b),u.resolve())},_announceModel:function(a,b){a===c&&(r=!0,n.registerMasterModelKey(b))},_inclusion:function(a,b,f){a===c&&(n.registerInclusion(b,f),t.push(f))},_remapModel:function(a,d,k){a===c&&b.remapModel(d,k)},_remapInclusion:function(a,d,k,e){a===c&&b.remapInclusion(d,k,e)},_missingModel:function(a,b){a===c&&(x=b)},_attached:function(b){if(b===c){if(!r){if(null!==x&&(m||p)){console.assert(0===
t.length);v.reject(new a.MissingModelError(x));return}if(1!==t.length){v.reject(new a.LoadError("Bad model: Could not find master model key."));return}n.registerMasterModelKey(t[0])}b=[u];if(l._isFirstAttachment){l._isFirstAttachment=!1;var f=l._callbackManager.promiseTrigger("_firstAttachment",null,m?g.AttachType.Direct:g.AttachType.Indirect);b.push(f)}g.waitForAll(b).catch(function(a){console.assert(!1);throw a;}).then(function(){y();v.resolve(n)})}}};this._callbackManager.bind(z);return v.catch(function(a){y();
throw a;})};b.prototype._createPriority=function(a,b){return this._attachPriorityManager.createPriority(this._viewInfo,a,b)};b.prototype._cleanupAttachLowLevel=function(){};b.prototype._cleanupAttachHighLevel=function(a,b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(d){switch(d.label){case 0:return d.trys.push([0,,2,3]),[4,a];case 1:return[2,d.sent()];case 2:return null!==c&&this._forgetXmlAttachment(c),this._attachPriorityManager.destroyPriority(b),[7];case 3:return[2]}})})};
b.prototype.newAttachScope=function(){return++this._attachScope};b.prototype._attachByStream=function(b,c,d,e,g,l,m){var n=this,r=a.Matrix.toMatrix12(d.m);d=this._createPriority(d,l);var t=this._attachQueue.push(function(){return __awaiter(n,void 0,void 0,function(){var a,d,k;return __generator(this,function(n){switch(n.label){case 0:a=this.newAttachScope(),d=this._awaitAttachInfo(b,a,g.get(),l,m),n.label=1;case 1:return n.trys.push([1,4,,5]),[4,this._engine.attachModel(a,c,r,e,g.get())];case 2:return n.sent(),
[4,d];case 3:return[2,n.sent()];case 4:throw k=n.sent(),this._cleanupAttachLowLevel(),k;case 5:return[2]}})})},d);return this._cleanupAttachHighLevel(t,d,l)};b._getAllModelKeys=function(a){var b=a.getMasterModelKey();a=a.getAllInclusions();if(a[1]!==b)for(var c=2;c<a.length;c+=2)if(a[c+1]===b){var d=a[c];a[c]=a[0];a[c+1]=a[1];a[0]=d;a[1]=b;break}b=[];c=0;for(d=1;d<a.length;++c,d+=2)b[c]=a[d];return b};b.prototype.attachByNamedScsBuffer=function(f,c,k,q,g,l,m,n,r){return __awaiter(this,void 0,void 0,
function(){var t=this,u,v,w;return __generator(this,function(y){f.getAutomaticMeasurementUnitScaling()||(m=SC.UnspecifiedMeasurementUnit);u=a.Matrix.toMatrix12(l.m);v=this._createPriority(l,r);w=this._attachQueue.push(function(){return __awaiter(t,void 0,void 0,function(){var f,l,t,v,w,y,F,I,E,H,J,K;return __generator(this,function(G){switch(G.label){case 0:return[4,e(k,c,g)];case 1:f=G.sent();l=c.getScsModelKeysOf(k);if(null===l)throw new a.InternalLogicError;t=this.newAttachScope();if(!(f instanceof
Uint8Array))return[3,7];w=!0;y=this._awaitAttachInfo(q,t,n.get(),r,!1);G.label=2;case 2:return G.trys.push([2,5,,6]),[4,this._engine.attachScsBuffer(t,f,u,m,n.get(),w)];case 3:return G.sent(),[4,y];case 4:return v=G.sent(),[3,6];case 5:throw F=G.sent(),this._cleanupAttachLowLevel(),F;case 6:return 0===l.state&&(I=b._getAllModelKeys(v),l.resolve(I)),[3,8];case 7:if(null===f)v=null,0===l.state&&l.resolve(null);else{console.assert(0!==l.state);E=new d.AttachInfoBuilder(t,n.get());E.registerPrototypeInstanceCount(0);
for(H=0;H<f.length;++H)J=f[H],K=this._engine.attachScsModelByKey(t,J,u,m,n.get()),E.registerInclusion(K,J),0===H&&E.registerMasterModelKey(J);v=E}G.label=8;case 8:return[2,v]}})})},v);return[2,this._cleanupAttachHighLevel(w,v,r)]})})};b.prototype._attachByScsBuffer=function(b,c,d,e,g){var l=this,m=a.Matrix.toMatrix12(d.m);d=this._createPriority(d,null);var n=this._attachQueue.push(function(){return __awaiter(l,void 0,void 0,function(){var a,d,k;return __generator(this,function(l){switch(l.label){case 0:a=
this.newAttachScope(),d=this._awaitAttachInfo(b,a,g.get(),null,!1),l.label=1;case 1:return l.trys.push([1,4,,5]),[4,this._engine.attachScsBuffer(a,c,m,e,g.get(),!1)];case 2:return l.sent(),[4,d];case 3:return[2,l.sent()];case 4:throw k=l.sent(),this._cleanupAttachLowLevel(),k;case 5:return[2]}})})},d);return this._cleanupAttachHighLevel(n,d,null)};b.prototype.simpleAttach=function(b,c,d,e,p,l,m,n){b.getAutomaticMeasurementUnitScaling()||(p=SC.UnspecifiedMeasurementUnit);if("string"===typeof d)return this._attachByStream(c,
d,e,p,l,m,n);if(null===m)return this._attachByScsBuffer(c,d,e,p,l);g.TypeAssert(d);g.TypeAssert(m);throw new a.InternalLogicError;};b.prototype.reset=function(){this._isFirstAttachment=!0;this._attachScope=0;this._parentToXmlAttachInfos.clear();this._attachPriorityManager.reset();this._attachQueue.killDeferred();return this._attachQueue.waitForIdle()};b.prototype.isIdle=function(){return this._attachQueue.isIdle()};b.prototype.notifyDirectRequest=function(a){a=this._parentToXmlAttachInfos.get(a);
if(void 0!==a){for(var b=!1,c=0;c<a.length;c++){var d=a[c];d.directlyRequested||(b=d.directlyRequested=!0)}b&&this._reprioritizeAttachments()}};b.prototype.registerXmlAttachInfo=function(a){var b=a.parent,c=this._parentToXmlAttachInfos.get(b);void 0===c&&(c=[],this._parentToXmlAttachInfos.set(b,c));c.push(a)};b.prototype._forgetXmlAttachment=function(a){var b=a.parent,c=this._parentToXmlAttachInfos.get(b);1===c.length?(console.assert(c[0]===a),this._parentToXmlAttachInfos.delete(b)):(console.assert(1<
c.length),a=c.indexOf(a),console.assert(0<=a),c.splice(a,1))};return b}();d.ScAttacher=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function a(){this._remappedModelKeys=new Map;this._remappedInclusionKeys=new Map}a.prototype.remapModel=function(a,f){this._remappedModelKeys.set(f,a);this._remappedInclusionKeys.has(a)||this._remappedInclusionKeys.set(a,new Map)};a.prototype.remapInclusion=function(a,f,c){a=this._remappedInclusionKeys.get(a);console.assert(void 0!==a);a.set(c,f)};a.prototype.getEffectiveModelKey=function(a){var f=this._remappedModelKeys.get(a);return void 0!==
f?f:a};a.prototype.getEffectiveInclusionKey=function(a,f){f=this._remappedInclusionKeys.get(f);return void 0!==f&&(f=f.get(a),void 0!==f)?f:a};return a}();a.ScKeyRemapper=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a){return(new DOMParser).parseFromString(a,"application/xml")}function c(a){return __awaiter(this,void 0,void 0,function(){var b,f;return __generator(this,function(c){switch(c.label){case 0:return[4,g.httpRequest(a)];case 1:return b=c.sent(),f=b.responseXML,null===f&&(f=e(b.responseText)),[2,f]}})})}function b(a){if(!a.hasChildNodes)return!1;a=a.firstChild;if(!(a instanceof Comment))return!1;a=a.data.split(" ");if(2!==a.length||"HC"!==a[0])return!1;
a=a[1].split(".");if(2!==a.length)return!1;for(var b=0;b<a.length;b++)if(!g.isBase10Number(a[b]))return!1;b=parseInt(a[0],10);return 7>b?!0:7<b?!1:0>=parseInt(a[1],10)}function f(a,b,f,c){return{getAttachScope:function(){return a},getMasterModelKey:function(){return c},getModelKeys:function(){return[c]},hasInclusions:function(){return!0},getAllInclusions:function(){return[f,c]},getInclusionsOf:function(a){return a===c?[f,c]:[]},hasModelIncluded:function(a){return a===c},attachedInvisibly:function(){return b},
prototypeInstanceCount:function(){return 0}}}var h=function(){function h(a,b,f,c,d){this._loadQueue=new g.PromiseQueue(1,!1);this._activeLoadGeneration=this._activeLoadCount=0;this._isFirstLoad=!0;this._firstAssemblyDataHeader=null;console.assert(a.isInitialized());this._assemblyTree=a;this._scAttacher=b;this._engine=f;this._view=c;this._callbackManager=d;this._isScsSession=this._engine.getSessionType()===this._engine.SessionType().Scs;this._nodesUntilNextSleep=2E3}h.prototype._resolveMeasurementUnits=
function(b){if(this._assemblyTree.getAutomaticMeasurementUnitScaling()){var f=d.towardProductOccurrence(b.getParent());if(null===f)throw new a.InternalLogicError;var c=f.getMeasurementUnit(),h=b.getMeasurementUnit();c!==h&&(f=b.getLocalTransform(),null===f&&(f=new a.Matrix),c=h/c,f.m[0]*=c,f.m[5]*=c,f.m[10]*=c,b.setLocalTransformAsInitial(f))}};h.prototype._patchImplicitNodesByModelInc=function(a,b,f,c,h){var e=this,k=0;if(0!==c.length)for(var u,v=g.Lazy.create(function(){var c=a.get(),k=d.towardAttachContext(c),
g=k.getAttachScope();u=k.attachedInvisibly();k=k.split(g,u,c);c.addAttachContext(k);c=new d.InclusionContext(e._assemblyTree,k,b,f);k.addInclusionContext(c);k=d.ProductOccurrence.createDynamic(e._assemblyTree,c,"Of Inclusion ("+b+")",null,null,!u,h);c.addProductOccurrence(k);return k}),w=0;w<c.length;w++){var y=c[w],x=this._assemblyTree.lookupAnyBodyByInstanceInc(b,y);if(null===x){var x=v.get(),z="Implicit Body "+ ++k,x=this._assemblyTree.createMeshInstance(!0,b,y,null,z,x,!1,!1);u&&x.setVisibility(!1)}}};
h.prototype._getPrototypeInstanceCountByAttachment=function(a){var b=new Set,f=0;a=a.getAllInclusions();for(var c=0;c<a.length;c+=2){var h=a[c],d=a[c+1];b.has(d)||(b.add(d),f+=this._assemblyTree.getInstanceCountByInclusion(h))}return f};h.prototype._patchImplicitNodesByAttachment=function(b,f,c){return __awaiter(this,void 0,void 0,function(){var h=this,e,k,t,u,v,w,y,x,z,A;return __generator(this,function(C){switch(C.label){case 0:return console.assert(b.isLoaded()),e=null,k=g.Lazy.create(function(){var a=
new d.ScKeyRemapper,k=f.getMasterModelKey();e=new d.AttachContext(a,f.getAttachScope(),f.attachedInvisibly(),k,b);a=new d.InclusionContext(h._assemblyTree,e,0,0);e.addInclusionContext(a);k=d.ProductOccurrence.createDynamic(h._assemblyTree,a,"Implicit Bodies",null,null,!f.attachedInvisibly(),c);a.addProductOccurrence(k);return k}),t=f.prototypeInstanceCount(),0!==t?[3,2]:[4,this._engine.instanceKeyInfo(f.getAttachScope(),!1,!0)];case 1:t=C.sent()[0],C.label=2;case 2:return u=this._getPrototypeInstanceCountByAttachment(f),
u===t?[2]:[4,this._engine.instanceKeyInfo(f.getAttachScope(),!1,!1)];case 3:v=C.sent();w=f.getAllInclusions();for(y=0;y<w.length;y+=2)x=w[y],z=w[y+1],A=v.get(z),void 0!==A&&this._patchImplicitNodesByModelInc(k,x,z,A,c);u=this._getPrototypeInstanceCountByAttachment(f);if(u<t)throw new a.InternalLogicError;return null===e?[2]:[4,d.markContextsLoaded(e)];case 4:return C.sent(),b.addAttachContext(e),[2]}})})};h.prototype._updateOnDemandRequests=function(a){return __awaiter(this,void 0,void 0,function(){var b,
f,c,h,d,e;return __generator(this,function(k){if(!this._assemblyTree.onDemandRequestsActive())return[2];b=[];f=a.getChildren();c=0;for(h=f;c<h.length;c++)d=h[c],this._assemblyTree.isBeingRequested(d)&&(e=this._assemblyTree.requestNode(this,d,!0),b.push(e));return[2,g.waitForAll(b)]})})};h.prototype._populateAttachment=function(a,b,f,c,h,d){return __awaiter(this,void 0,void 0,function(){var e;return __generator(this,function(k){switch(k.label){case 0:return console.assert(h===g.AttachType.Indirect===
(null!==d)),[4,this._parseRootNodes(a,b,f,c,d)];case 1:return e=k.sent(),[4,this._postProcessAttachContext(b,c,h,e)];case 2:return k.sent(),[2,e]}})})};h.prototype._postProcessAttachContext=function(a,b,f,c){return __awaiter(this,void 0,void 0,function(){var h,e,k;return __generator(this,function(u){switch(u.label){case 0:return[4,d.WalkerAsync.forceLazyPromises(c)];case 1:return u.sent(),[4,d.synchronizePmiVisibilities(this._engine,c)];case 2:return u.sent(),(h=this._assemblyTree.markImplicitNodesOutOfHierarchy())&&
(h=0<c.getChildren().length||f===g.AttachType.Indirect),[4,this._patchImplicitNodesByAttachment(a,b,h)];case 3:return u.sent(),[4,this._updateOnDemandRequests(c)];case 4:return u.sent(),e=c.getChildren(),k=e.map(function(a){return a.getRuntimeId()}),this._callbackManager.trigger("_attachmentPopulated",k),[2]}})})};h.prototype._parseRootNodes=function(a,b,f,c,h){return __awaiter(this,void 0,void 0,function(){var e=this,k,u,v,w,y,x,z;return __generator(this,function(A){switch(A.label){case 0:return k=
c.getMasterModelKey(),u=c.getInclusionsOf(k),4294967295===k&&(console.assert(0===u.length),u.push(4294967295,4294967295)),v=new d.AttachContext(f,c.getAttachScope(),c.attachedInvisibly(),k,b),null!==h&&v.setReservedNodeIdOffset(h),w=new g.PromiseQueue(1,!0),[4,v.getRootNodeMetaData(this._assemblyTree)];case 1:y=A.sent();x=function(b){w.push(function(){return e._parseRootNode(a,v,y,u[b],u[b+1])})};for(z=0;z<u.length;z+=2)x(z);return[4,w.waitForIdle()];case 2:return A.sent(),[2,v]}})})};h.prototype._parseRootNode=
function(a,b,f,c,h){return __awaiter(this,void 0,void 0,function(){var e,k;return __generator(this,function(g){switch(g.label){case 0:return console.assert(0!==c),[4,this._populateInclusion(a,b,f,c,h)];case 1:return e=g.sent(),e.hasAuthoredId()?(console.assert(!e.isLoaded()),k=d.towardInclusionContext(e),g=k.getParent(),g=g instanceof d.AttachContext&&g.getParent()instanceof d.LoadContext?!0:!1,g&&this._setupRootNode(e,!1)):null===e.getName()&&(b.removeProductOccurrence(e)||console.assert(!1)),[2]}})})};
h.prototype._setupRootNode=function(a,b){console.assert(!a.isAbsoluteRoot());b&&a.markIsExternalModelRoot(this._assemblyTree);this._resolveMeasurementUnits(a)};h.prototype._populateInclusion=function(a,b,f,c,h){return __awaiter(this,void 0,void 0,function(){var e=this,k,g;return __generator(this,function(v){switch(v.label){case 0:return console.assert(0!==c),k=new d.InclusionContext(this._assemblyTree,b,c,h),b.addInclusionContext(k),[4,function(){return __awaiter(e,void 0,void 0,function(){var c,
h,e;return __generator(this,function(g){if(null===f||0===f.bytes.length)return c=null,null===f&&(c="Missing"),[2,d.ProductOccurrence.createDynamic(this._assemblyTree,k,c,null,null,!b.attachedInvisibly())];h=new d.AssemblyDataParser(f);e=d.ProductOccurrence.parseBinary(a,this._assemblyTree,k,h);return[2,d.ProductOccurrence.reify(a,this,this._assemblyTree,k,e,k)]})})}()];case 1:return g=v.sent(),k.addProductOccurrence(g),[2,g]}})})};h.prototype._rectifyLateVisibilityChange=function(a,b){return __awaiter(this,
void 0,void 0,function(){var f,c,h,e;return __generator(this,function(k){f=d.towardAttachContext(b.getParent());c=d.towardProductOccurrence(b.getParent());console.assert(c===d.towardProductOccurrence(f));if(a.attachInvisibly||null===c||!c.isLoaded())return[2];h=c.isVisible();if(f.attachedInvisibly()===!h)return[2];e=h?2:0;return[2,d.updateVisibilitiesByAttachment(this._assemblyTree,this._engine,f,e)]})})};h.prototype._loadCleanup=function(a){console.assert(0<this._activeLoadCount);null!==a&&this._callbackManager.unbind(a);
--this._activeLoadCount;this._assemblyTree.onLoadEnd();this._callbackManager.trigger("visibilityChanged",[],[])};h.prototype._wrap=function(b,f,c,h){var d=this,e=this._activeLoadGeneration;return this._loadQueue.push(function(){return __awaiter(d,void 0,void 0,function(){var d=this,k,n,w,y,x,z,A,C,B,D,F,I,E;return __generator(this,function(H){switch(H.label){case 0:this._assemblyTree.onLoadBegin();k=null;if(e!==this._activeLoadGeneration)throw this._loadCleanup(k),new a.LoadCancelledError;null===
this._firstAssemblyDataHeader&&(k={_modelStructureHeaderParsed:function(a){return __awaiter(d,void 0,void 0,function(){return __generator(this,function(b){null!==k&&(null===this._firstAssemblyDataHeader&&(this._firstAssemblyDataHeader=a),this._callbackManager.unbind(k),k=null);return[2]})})}},this._callbackManager.bind(k,!0));H.label=1;case 1:return H.trys.push([1,3,,4]),[4,c];case 2:return H.sent(),[3,4];case 3:throw n=H.sent(),f.purgeContents(),this._loadCleanup(k),n;case 4:w=f.getParent();if(null===
w)throw this._loadCleanup(k),new a.InternalLogicError;(y=h===g.AttachType.Direct)&&(f.hasChildren()?w.addLoadContext(f):f.purgeContents());this._loadCleanup(k);x=f.getChildren();z=[];A=0;for(C=x;A<C.length;A++)B=C[A],D=this._rectifyLateVisibilityChange(b,B),z.push(D);return[4,g.waitForAll(z)];case 5:H.sent();if(!this._isFirstLoad)return[3,9];this._isFirstLoad=!1;f.markAsFirstLoad();F=x.map(function(a){return a.getRuntimeId()});I=!1;H.label=6;case 6:return H.trys.push([6,8,,9]),[4,this._callbackManager.promiseTrigger("_firstModelLoaded",
"firstModelLoaded",F,h,I)];case 7:return H.sent(),[3,9];case 8:throw E=H.sent(),console.assert(!1),E;case 9:return[2,f]}})})})};h.prototype._initLoad=function(a,b){++this._activeLoadCount;return new d.LoadContext(a,b)};h._getNetMatrix=function(b,f){b=d.getNetMatrix(b);null!==f&&(b=a.Matrix.multiply(f,b));return b};h.prototype._lazyAttachInvisibly=function(a,b){return g.Lazy.create(function(){return b.attachInvisibly||!a.isVisible()})};h.prototype._loadBySingleAttach=function(a,b,f,c){var e=this,r=
this._initLoad(b,c);c=g.LazyPromise.create(function(){return __awaiter(e,void 0,void 0,function(){var c,e,m,n,y,x,z;return __generator(this,function(A){switch(A.label){case 0:return[4,f];case 1:return c=A.sent(),e=new d.ScKeyRemapper,m=h._getNetMatrix(b,a.additionalMatrix),n=b.getMeasurementUnit(),y=this._lazyAttachInvisibly(b,a),[4,this._scAttacher.simpleAttach(this._assemblyTree,e,c,m,n,y,null,!1)];case 2:return x=A.sent(),[4,this._populateAttachment(a,r,e,x,g.AttachType.Direct,null)];case 3:return z=
A.sent(),[4,d.markContextsLoaded(r,z)];case 4:return A.sent(),z.hasChildren()&&r.addAttachContext(z),[2,g.Void]}})})});return this._wrap(a,r,c,g.AttachType.Direct)};h.prototype._populateFromXml=function(b,f,c,h){return __awaiter(this,void 0,void 0,function(){var e,k,g,u,v,w,y,x,z,A,C;return __generator(this,function(B){switch(B.label){case 0:e=c.documentElement;k=e.firstElementChild;for(g=null;null!==k;)"ModelFile"===k.localName&&(console.assert(null===g),g=d.ModelFile.parseXml(b,this._assemblyTree,
f,k,h)),k=k.nextElementSibling;if(null===g)throw new a.XmlParseError('Expected "ModelFile" element.');u=!1;if(!this._isFirstLoad)return[3,2];v=SC.UnspecifiedMeasurementUnit;this._assemblyTree.getAutomaticMeasurementUnitScaling()&&(w=d.towardProductOccurrence(f),v=w.getMeasurementUnit());y=d.ModelFile.parseBounding(g,v);if(y.isDegenerate())return[3,2];u=!0;return[4,this._view.setViewOrientation(a.ViewOrientation.Iso,0,y)];case 1:B.sent(),B.label=2;case 2:return[4,d.ModelFile.reify(b,this._callbackManager,
this,this._assemblyTree,f,g)];case 3:x=B.sent();z=0;for(A=x;z<A.length;z++)C=A[z],this._setupRootNode(C,!1);return!this._isFirstLoad||u?[3,5]:[4,this._view.setViewOrientation(a.ViewOrientation.Iso,0)];case 4:B.sent(),B.label=5;case 5:return[2]}})})};h.prototype._loadByXml=function(f,c,h,e,k){var r=this,t=this._initLoad(c,k);k=g.LazyPromise.create(function(){return __awaiter(r,void 0,void 0,function(){var k,n,r,y,x,z,A;return __generator(this,function(C){switch(C.label){case 0:return[4,h];case 1:k=
C.sent();if(!b(k))throw new a.XmlParseError("Bad version.");c.addLoadContext(t);n=d.towardInclusionContext(c);r=d.towardAttachContext(n);y=this._scAttacher.newAttachScope();x=this._lazyAttachInvisibly(c,f);z=r.split(y,x.get(),t);t.addAttachContext(z);A=n.split(this._assemblyTree,z);z.addInclusionContext(A);return[4,this._populateFromXml(f,A,k,e)];case 2:return C.sent(),[4,d.markContextsLoaded(t,z)];case 3:return C.sent(),[2,g.Void]}})})});return this._wrap(f,t,k,g.AttachType.Indirect)};h.prototype._attachExternalModelByInc=
function(a,b){return __awaiter(this,void 0,void 0,function(){var f,c,h,e,k,g;return __generator(this,function(v){switch(v.label){case 0:return console.assert(0!==a.inclusionKey),f=d.towardAttachContext(b).getAttachScope(),c=a.modelKey,h=this._lazyAttachInvisibly(b,a.config),e=new d.ScKeyRemapper,k=new d.AttachContext(e,f,h.get(),c,b),[4,k.getRootNodeMetaData(this._assemblyTree)];case 1:return g=v.sent(),[4,this._populateInclusion(a.config,k,g,a.inclusionKey,a.modelKey)];case 2:return v.sent(),[2,
k]}})})};h.prototype._attachExternalModelInfoByName=function(b,f){return __awaiter(this,void 0,void 0,function(){var c,h,e,k,t,u,v,w,y,x,z;return __generator(this,function(A){switch(A.label){case 0:c=new d.ScKeyRemapper;h=d.getNetMatrix(f);e=f.getMeasurementUnit();k=this._lazyAttachInvisibly(f,b.config);t={bounding:b.bounding,parent:f,directlyRequested:!1};if(!this._isScsSession)return[3,2];v=d.towardLoadContext(f);this._scAttacher.registerXmlAttachInfo(t);return[4,this._scAttacher.attachByNamedScsBuffer(this._assemblyTree,
v,b.modelName,c,b.toAttachData,h,e,k,t)];case 1:return u=A.sent()||0,[3,8];case 2:return A.trys.push([2,7,,8]),[4,b.toAttachData(b.modelName)];case 3:w=A.sent();if(null!==w&&w!==a.EmptyModelName)return[3,4];u=0;return[3,6];case 4:if("string"!==typeof w)throw g.TypeAssert(w),new a.InternalLogicError;g.TypeAssert(w);this._scAttacher.registerXmlAttachInfo(t);return[4,this._scAttacher.simpleAttach(this._assemblyTree,c,w,h,e,k,t,b.config.allowMissingExternalModels)];case 5:u=A.sent(),A.label=6;case 6:return[3,
8];case 7:y=A.sent();if(b.config.allowMissingExternalModels&&y instanceof a.MissingModelError)u=1;else throw y;return[3,8];case 8:if("number"===typeof u){g.TypeAssert(u);x=this._scAttacher.newAttachScope();z=!k.get();a:{var C=this._assemblyTree,B=u,D=z;A=new d.AttachContext(c,x,D,0,f);switch(B){case 0:break a;case 1:B=new d.InclusionContext(C,A,0,0);A.addInclusionContext(B);C=d.ProductOccurrence.createDynamic(C,B,"Missing",null,null,!D);B.addProductOccurrence(C);break a;default:A=g.TypeAssertNever(B)}}return[2,
A]}return[2,this._populateAttachment(b.config,f,c,u,g.AttachType.Indirect,b.reservedNodeIdOffset)]}})})};h.prototype.isIdle=function(){return 0===this._activeLoadCount?(console.assert(this._scAttacher.isIdle()),!0):!1};h.prototype.waitOnCurrentLoads=function(){return this._loadQueue.waitOnLatest()};h.prototype.cancelPendingLoads=function(){++this._activeLoadGeneration;return this.waitOnCurrentLoads()};h.prototype.loadByStream=function(b,f,c){return c===a.EmptyModelName?(b=new d.LoadContext(f,a.EmptyModelName),
Promise.resolve(b)):this._loadBySingleAttach(b,f,Promise.resolve(c),c)};h.prototype.loadByScsBuffer=function(a,b,f){return this._loadBySingleAttach(a,b,Promise.resolve(f),"*SCS Buffer*")};h.prototype.loadByScsFile=function(a,b,f){var c=g.httpRequestBuffer(f);return this._loadBySingleAttach(a,b,c,f)};h.prototype.loadByXmlDoc=function(a,b,f,c){f="string"===typeof f?e(f):f;return this._loadByXml(a,b,Promise.resolve(f),c,"*XML Document*")};h.prototype.loadByXmlFile=function(a,b,f,h){var d=c(f);return this._loadByXml(a,
b,d,h,f)};h.prototype.attachByExternalModelInfo=function(a,b){return __awaiter(this,void 0,void 0,function(){var f,c,h,e,k,u,v;return __generator(this,function(w){switch(w.label){case 0:return d.ExternalModel.isNameInfo(a)?[4,this._attachExternalModelInfoByName(a,b)]:[3,2];case 1:return f=w.sent(),[3,4];case 2:return[4,this._attachExternalModelByInc(a,b)];case 3:f=w.sent(),w.label=4;case 4:c=[];h=f.getChildren();e=0;for(k=h;e<k.length;e++)u=k[e],this._setupRootNode(u,!0),v=this._rectifyLateVisibilityChange(a.config,
u),c.push(v);return[4,g.waitForAll(c)];case 5:return w.sent(),[2,f]}})})};h.prototype.loadByAssemblyData=function(a,b,c,h){return __awaiter(this,void 0,void 0,function(){var e=this,k,t,u,v,w,y,x,z;return __generator(this,function(A){k=g.AttachType.Direct;t=c[0];u=c[1];v=this._scAttacher.newAttachScope();w=!b.isVisible();y=f(v,w,t,u);x=this._initLoad(b,"*Assembly Data*");z=g.LazyPromise.create(function(){return __awaiter(e,void 0,void 0,function(){var b,f,c;return __generator(this,function(e){switch(e.label){case 0:return b=
new d.ScKeyRemapper,f=y.getMasterModelKey(),c=new d.AttachContext(b,v,y.attachedInvisibly(),f,x),[4,this._parseRootNode(a,c,h,t,u)];case 1:return e.sent(),[4,this._postProcessAttachContext(x,y,k,c)];case 2:return e.sent(),[4,d.markContextsLoaded(x,c)];case 3:return e.sent(),c.hasChildren()&&x.addAttachContext(c),[2,g.Void]}})})});return[2,this._wrap(a,x,z,k)]})})};h.prototype.reset=function(){this._isFirstLoad=!0;this._firstAssemblyDataHeader=null;return this._scAttacher.reset()};h.prototype.notifyFirstLoadIsEmptyModel=
function(){console.assert(this._isFirstLoad);this._isFirstLoad=!1};h.prototype.notifyDirectRequest=function(a){this._scAttacher.notifyDirectRequest(a)};h.prototype.onLoadChildProductOccurrence=function(){if(0===this._nodesUntilNextSleep)return this._nodesUntilNextSleep=2E3,g.sleep(10);--this._nodesUntilNextSleep};h.prototype.firstAssemblyDataHeader=function(){return this._firstAssemblyDataHeader};return h}();d.TreeLoader=h})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){(function(d){var e=function(){function c(b){var f=b.getCamera(),c=f.getPosition(),d=f.getTarget(),d=a.Point3.subtract(d,c),e=d.length();1E-7>e&&(e=1E-7);this._eyeDistanceInverse=1/e;d.scale(this._eyeDistanceInverse);b=b.getFullCameraMatrix();this._frustum=g.ConvexVolume.createFrustumFromMatrix(b);this._viewProjectionW=g.col4(b,3);this._cameraIsOrtho=f.getProjection()===a.Projection.Orthographic;this._position=g.toVec3(c);this._eye=g.toVec3(d)}c.prototype.calculateAttachHeuristic=function(a,
f){var c=0;if(this._frustum.axisAlignedBoxNotOutside(f,a))return a=g.squaredNorm3(a),a=g.projectSquaredSize(f,a,this._viewProjectionW),0<a&&(c=g.sub3(f,this._position),f=1/(g.dot3(this._eye,c)*this._eyeDistanceInverse+1E-5),c=g.scale3(1/g.norm3(c),c),c=g.dot3(this._eye,c),f=Math.pow(f,6),this._cameraIsOrtho||(f*=5*Math.pow(c,10)),1E-5>f&&(f=1E-5),c=a*f),console.assert(0<=c),-c-1;c=1/(1+Math.exp(g.norm3(a)));console.assert(0<=c&&1>c);return c};return c}();d.ViewInfo=e})(g.Tree||(g.Tree={}))})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(){}c._parseUint_32=function(a){if(!g.isBase10Number(a))return null;a=parseInt(a,10);return 4294967295>=a?a:null};c.parseFloat=function(a,f){a=a.getAttribute(f);if(null===a)return null;a=parseFloat(a);return isNaN(a)?null:a};c._parseScKey=function(a,f){a=a.getAttribute(f);return null===a?null:this._parseUint_32(a)};c.parseDataKey=function(a,f){return this._parseScKey(a,f)};c.parseMeshKey=function(a,f){return this._parseScKey(a,f)};
c.parseInstanceKeyFromInc=function(a,f){a=a.getAttribute(f);if(null===a)return null;a=a.split(" ");return 2!==a.length||null===this._parseUint_32(a[0])?null:this._parseUint_32(a[1])};c.parseNodeId=function(a,f){a=a.getAttribute(f);return null===a?null:this._parseUint_32(a)};c.parseLayerId=function(a,f){a=a.getAttribute(f);return null===a?null:this._parseUint_32(a)};c.parseUint=function(a,f){a=a.getAttribute(f);return null===a?null:this._parseUint_32(a)};c.parseNodeIds=function(a,f){var c=a.getAttribute(f);
if(null===c)return null;a=[];f=0;for(c=c.split(/\s+/);f<c.length;f++){var d=this._parseUint_32(c[f]);if(null===d)return null;a.push(d)}return a};c._parsePoint3=function(b,f){b=b.getAttribute(f);if(null===b)return null;b=b.split(" ");if(3!==b.length)return null;f=[];for(var c=0;c<b.length;c++){var d=Number(b[c]);if(isNaN(d))return null;f.push(d)}return new a.Point3(f[0],f[1],f[2])};c.parseBounding=function(b,f){b=b.getElementsByTagName(f);if(1!==b.length)return null;f=b[0];b=this._parsePoint3(f,"Min");
if(null===b)return null;f=this._parsePoint3(f,"Max");return null===f?null:new a.Box(b,f)};return c}();d.XmlParser=e})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a,f){var c="number"===typeof a;return c===("number"===typeof f)?a<f?-1:a>f?1:0:c?-1:1}var c=function(){function a(){console.assert(!1)}a.parseXml=function(a,b){var c=d.XmlParser.parseNodeId(b,"Id");null===c&&(console.assert(!1),c=a.generateDynamicNodeId());a=b.getAttribute("Name");for(var e=null,g=[],l=b.firstElementChild;null!==l;){if("Transformation"===l.localName)console.assert(null===e),e=d.Transform.parseXml(l),e.isIdentity()&&(e=null);else if("Attributes"===
l.localName)for(var m=l.firstElementChild;null!==m;){console.assert("Attr"===m.localName);var n=d.Attribute.parseXml(m);g.push(n);m=m.nextElementSibling}l=l.nextElementSibling}l=b.getAttribute("ExchangeId");b=d.XmlParser.parseLayerId(b,"LayerId");return{nodeId:c,bits:1073741824,name:a,localTransform:e,attributes:g,header:d.AssemblyDataHeader.dynamic,exchangeId:l,layerId:b,genericTypeId:null,genericId:null,userDatas:null}};a.parseBinary=function(a,b,c){c.hasBits1(1)?a=b.parseNodeId():(console.assert(!1),
a=a.generateDynamicNodeId());var e=c.hasBits1(2)?b.parseCString():null,g=1073741824;if(c.hasBits1(4)){var l=b.parseVisibility();l.shown||(g&=-1073741825);l.removed&&(g|=536870912)}l=null;c.hasBits1(8)&&(l=d.Transform.parseBinary(b),l.isIdentity()&&(l=null));var m=null;c.hasBits1(256)&&(m=b.parseDataKey());var n=c.hasBits1(33554432)?b.parseCString():null,r=c.hasBits1(67108864)?b.parseLayerId():null,t=null;c.hasBits2(16)&&(t=b.parseGenericTypeId());var u=null;c.hasBits2(32)&&(u=b.parseGenericId());
var v=null;if(c.hasBits1(536870912)){v=new Map;c=b.parseCount_32();for(var w=0;w<c;++w){var y=b.parseUserDataIndex(),x=b.parseCount_32(),x=b.parseBytes(x);v.set(y,x)}}return{nodeId:a,bits:g,name:e,localTransform:l,attributes:null!==m?m:[],header:b.getHeader(),exchangeId:n,layerId:r,genericTypeId:t,genericId:u,userDatas:v}};return a}();d.Node=c;c=function(){function b(a,c,d){this._bits=0;this._nodeId=d.nodeId;this._bits=d.bits;null!==d.name&&(this._name=d.name);null!==d.localTransform&&(this._localTransform=
d.localTransform.copy());"number"===typeof d.attributes?this._lazyAttributes=b._lazyLoadAttributes(a,c,d.attributes,d.header):0<d.attributes.length&&(this._lazyAttributes=g.LazyPromise.create(d.attributes));null!==d.exchangeId&&(this._exchangeId=d.exchangeId);null!==d.layerId&&(this._layerId=d.layerId,a.registerNodeInLayer(this,this._layerId));null!==d.genericTypeId&&(this._genericTypeId=d.genericTypeId);null!==d.genericId&&(this._genericId=d.genericId);null!==d.userDatas&&(this._userDatas=g.copyMap(d.userDatas))}
b._lazyLoadAttributes=function(a,b,c,e){var p=this;return g.LazyPromise.create(function(){return __awaiter(p,void 0,void 0,function(){var g,p,n,r,t,u;return __generator(this,function(v){switch(v.label){case 0:return g=a.getAbstractScEngine(),[4,g.safeGetMetaData(b,c)];case 1:p=v.sent();n=[];if(null!==p)for(r=new d.AssemblyData(e,p),t=new d.AssemblyDataParser(r);t.hasNext();)u=d.Attribute.parseBinary(t),n.push(u);return[2,n]}})})})};b.prototype.hasAuthoredId=function(){return d.isAuthoredId(this._nodeId)};
b.prototype.getAuthoredId=function(){return d.getAuthoredId(this._nodeId)};b.prototype.getName=function(){return void 0!==this._name?this._name:null};b.prototype.getExchangeId=function(){return void 0!==this._exchangeId?this._exchangeId:null};b.prototype.getLayerId=function(){return void 0!==this._layerId?this._layerId:null};b.prototype.getGenericTypeId=function(){return void 0!==this._genericTypeId?this._genericTypeId:null};b.prototype.getGenericId=function(){return void 0!==this._genericId?this._genericId:
null};b.prototype._hasBits=function(a){return g.hasBits(this._bits,a)};b.prototype.isLoaded=function(){return this._hasBits(-2147483648)};b.prototype.markLoaded=function(){this._bits|=-2147483648};b.prototype._setVisibility=function(a){this._bits|=524288;this._bits=a?this._bits|262144:this._bits&-262145};b.prototype.isVisible=function(){return this._hasBits(524288)?this._hasBits(262144):this.isInitiallyShown()};b.prototype.isInitiallyShown=function(){return this._hasBits(536870912)?!1:this._hasBits(1073741824)};
b.prototype.setLocalTransformAsInitial=function(a){this._localTransform=a.copy()};b.prototype.overrideLocalTransform=function(a){this._localTransformOverride=a.copy()};b.prototype.hasLocalTransformOverride=function(){return void 0!==this._localTransformOverride};b.prototype.removeLocalTransformOverride=function(){console.assert(void 0!==this._localTransformOverride);delete this._localTransformOverride};b.prototype.getLocalTransform=function(){return void 0!==this._localTransformOverride?this._localTransformOverride:
void 0!==this._localTransform?this._localTransform:null};b.prototype.getAttributes=function(){return __awaiter(this,void 0,void 0,function(){var a=this;return __generator(this,function(b){return void 0!==this._lazyAttributes?[2,this._lazyAttributes.then(function(b){if(void 0!==a._lazyAttributes){for(var c=0;c<b.length;c++)a.addAttribute(b[c]);delete a._lazyAttributes}return a.getAttributes()})]:[2,g.TerseArray.toArray(this._attributes)]})})};b.prototype.addAttribute=function(a){this._attributes=g.TerseArray.push(this._attributes,
a)};b.prototype.getUserDataIndices=function(){var a=[];void 0!==this._userDatas&&this._userDatas.forEach(function(b,c){a.push(c)});return a.sort(e)};b.prototype.getUserData=function(b){if(void 0!==this._userDatas){var c=this._userDatas.get(b);if(void 0!==c)return c}throw new a.InvalidIndexError(b);};return b}();d.NodeMixin=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(a){function b(c,h,d,e){h=a.call(this,c,h,e.nodeInfo)||this;h._bits|=e.bits;h._parent=d;h._instanceInc=[e.inclusionKey,e.instanceKey];d=h.getLayerId();null===d||h.isOutOfHierarchy()||c.registerTreeNodeInLayer(h,d);return h}__extends(b,a);b.prototype.setRequested=function(){this._bits|=1024};b.prototype.isRequested=function(){return this._hasBits(1024)};b.prototype.isOutOfHierarchy=function(){return this._hasBits(268435456)};b.prototype.preventFromResetting=
function(){return this._hasBits(16384)};b.prototype.getInstanceInc=function(){return this._instanceInc};b.prototype.getParent=function(){return this._parent};return b}(d.NodeMixin);d.BodyMixin=e;var c=function(b){function c(a,h,d,e){h=b.call(this,a,h,d,e)||this;a.registerBodyInstance(h);return h}__extends(c,b);c.parseXml=function(b,f,c){b=d.Node.parseXml(b,f);f=d.XmlParser.parseInstanceKeyFromInc(f,"MeshInstanceKey");if(null===f)throw new a.XmlParseError('Expected "MeshInstanceKey" attribute.');return{nodeInfo:b,
inclusionKey:c,instanceKey:f,bits:0}};c.parseBinary=function(b,f,c){var h=d.towardAttachContext(f),e=h.getRemapper(),g=h.getMasterModelKey(),h=c.parseNodeParseBits();b=d.Node.parseBinary(b,c,h);f=h.hasBits1(131072)?c.parseInclusionKey(e,g):f.getInclusionKey();if(!h.hasBits1(262144))throw new a.AssemblyDataParseError('Expected "ScInstanceKey" in binary data.');c=c.parseInstanceKey();return{nodeInfo:b,inclusionKey:f,instanceKey:c,bits:0}};c.reify=function(a,b,f,e){var g=d.towardAttachContext(f);a=new c(a,
b,f,e);g.attachedInvisibly()&&a.setVisibility(!1);return a};c.createDynamic=function(a,b,f,e,g,n,r){var t=d.towardInclusionContext(n),u=d.towardAttachContext(t).getMasterModelKey();b={nodeInfo:{nodeId:a.massageAuthoredUserId(t,e),bits:1073741824,name:g,localTransform:null,attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},inclusionKey:b,instanceKey:f,bits:r};return new c(a,u,n,b)};c.prototype.getName=function(){var a=b.prototype.getName.call(this);
if(null!==a)return a;a=this.getParent().getBodyInstances();if(1<a.length){for(var c=0;c<a.length;++c)if(this===a[c])return"body "+(c+1);console.assert(!1)}return"body"};c.prototype.setVisibility=function(a){a!==this.isVisible()&&this.getParent().markBranchVisibilityDirty();this._setVisibility(a)};c.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this)};return c}(e);d.BodyInstance=c;var b=function(a){function b(c,h,d,e){h=a.call(this,c,h,d,e)||this;c.registerPmiBody(h);return h}
__extends(b,a);b.parseBinary=function(a,b,f,h){a=c.parseBinary(a,b,f);h&&(h=a.nodeInfo,h=__assign({},h,{bits:h.bits&-1073741825}),a=__assign({},a,{nodeInfo:h}));return a};b.reify=function(a,f,c,e){var g=d.towardAttachContext(c);a=new b(a,f,c,e);g.attachedInvisibly()&&a.setVisibility(!1);return a};b.prototype.getName=function(){var a=this.getName();return null!==a?a:"PMI body"};b.prototype.setVisibility=function(a){a!==this.isVisible()&&this.getParent().getParent().markBranchVisibilityDirty();this._setVisibility(a)};
b.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this)};return b}(e);d.PmiBody=b;e=function(a){function b(c,h,d,e){h=a.call(this,c,h,d,e)||this;h._bits&=-1073741825;c.registerViewFrame(h);return h}__extends(b,a);b.parseBinary=function(a,b,f){return c.parseBinary(a,b,f)};b.reify=function(a,f,c,e){var g=d.towardAttachContext(c);a=new b(a,f,c,e);g.attachedInvisibly()&&a.setVisibility(!1);return a};b.prototype.getName=function(){var a=this.getName();return null!==a?a:"CAD View frame"};
b.prototype.setVisibility=function(a){a!==this.isVisible()&&this.getParent().getParent().markBranchVisibilityDirty();this._setVisibility(a)};b.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this)};return b}(e);d.ViewFrame=e})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a,b){var c=new g.PromiseQueue(1,!0);c.push(function(){return a.clear()});for(var d=function(b){c.push(function(){return a.addPlane(b,null)})},e=0;e<b.length;e++)d(b[e]);return c.waitForIdle()}function c(a,b){b.hasLocalTransformOverride()&&(b.removeLocalTransformOverride(),a.push(b))}var b=function(b){function h(a,c,e,l,m){var n=this,r=d.towardAttachContext(c).getMasterModelKey(),n=b.call(this,a,r,{nodeId:e.nodeId,bits:0,name:e.name,localTransform:null,
attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null})||this;n._parent=m;n._bits|=e.bits;n._activatedCuttingSectionIndex=null;null!==e.camera&&(n._camera={initial:e.camera.copy(),derived:e.camera.copy()});n._instanceMarkupKeysToShow=g.toSet(e.instanceMarkupKeysToShow);h.isAuthoredViewInfo(e,l)?(n._nodesToShow=h._toRuntimeIds(c,e.nodesToShow),n._nodesToHide=h._toRuntimeIds(c,e.nodesToHide),0<e.transformMap.size&&(n._transformMap=
new Map,e.transformMap.forEach(function(a,b){b=c.toRuntimeId(b);n._transformMap.set(b,a.copy())}))):(n._nodesToShow=g.toSet(e.nodesToShow),n._nodesToHide=g.toSet(e.nodesToHide),0<e.transformMap.size&&(n._transformMap=g.copyMap(e.transformMap)));null!==e.viewFrameInfo&&(n._viewFrame=n._loadViewFrame(a,r,e.viewFrameInfo));0<e.cuttingPlanes.length&&(n._cuttingPlanes=g.TerseArray.fromArray(e.cuttingPlanes));a.registerCadView(n);return n}__extends(h,b);h.parseBinary=function(b,f,c){var h=c.parseViewParseBits(),
e=c.parseNodeId(),n=null;g.hasBits(h,1)&&(n=c.parseCString());var r=0,t=!1;g.hasBits(h,256)?(t=!0,n+=" # Annotation View"):null!==n&&0<=n.indexOf("# Annotation View")&&(t=!0);t&&(r|=134217728);g.hasBits(h,1024)||(r|=33554432);g.hasBits(h,2048)||(r|=16777216);g.hasBits(h,4096)||(r|=8388608);g.hasBits(h,8192)||(r|=4194304);g.hasBits(h,16384)&&(r|=2097152);var u=g.hasBits(h,32768);u&&(r|=1048576);t=null;if(g.hasBits(h,2)){var u=u?a.Projection.Perspective:a.Projection.Orthographic,v=c.parsePoint3_32(),
w=c.parsePoint3_32(),y=c.parsePoint3_32(),x=c.parseFloat_32(),z=c.parseFloat_32();!g.hasBits(h,512)&&(r|=67108864,t=a.Camera.create(v,w,y,u,x,z),0>x||0>z)&&(r|=8192)}u=[];if(g.hasBits(h,4))for(w=c.parseCount_32(),v=0;v<w;++v)y=c.parseInstanceKey(),u.push(y);w=null;g.hasBits(h,8)&&(w=d.ViewFrame.parseBinary(b,f,c));b=[];if(g.hasBits(h,16))for(f=c.parseCount_32(),v=0;v<f;++v)y=c.parseNodeId(),b.push(y);f=[];if(g.hasBits(h,32))for(y=c.parseCount_32(),v=0;v<y;++v)x=c.parseNodeId(),f.push(x);y=new Map;
if(g.hasBits(h,64))for(x=c.parseCount_32(),v=0;v<x;++v){var z=c.parseNodeId(),A=d.Transform.parseBinary(c);y.set(z,A)}x=[];if(g.hasBits(h,128))for(h=c.parseCount_32(),v=0;v<h;++v)z=c.parsePlane3_32(),x.push(z);return{nodeId:e,name:n,camera:t,instanceMarkupKeysToShow:u,viewFrameInfo:w,nodesToShow:b,nodesToHide:f,transformMap:y,cuttingPlanes:x,bits:r}};h.reify=function(a,b,f,c){var e=d.towardAttachContext(b);a=new h(a,b,f,0,c);e.attachedInvisibly()&&a.setVisibility(!1);return a};h.createDynamic=function(a,
b,f,c,e,g,r,t,u){for(var v=d.towardInclusionContext(b),w=a.generateDynamicNodeId(),y=[],x=0;x<e.length;x++){var z=e[x].getPmiBody();if(null!==z){var A=d.towardInclusionContext(z);console.assert(v===A);z=z.getInstanceInc()[1];y.push(z)}}return new h(a,v,{nodeId:w,name:f,camera:c,instanceMarkupKeysToShow:y,viewFrameInfo:null,nodesToShow:g,nodesToHide:r,transformMap:t,cuttingPlanes:null!==u?[u]:[],bits:67108864},1,b)};h.isAuthoredViewInfo=function(a,b){a;return 0===b};h._toRuntimeIds=function(a,b){for(var f=
new Set,c=0;c<b.length;c++){var h=a.toRuntimeId(b[c]);f.add(h)}return f};h.prototype._loadViewFrame=function(a,b,f){return d.ViewFrame.reify(a,b,this,f)};h.prototype.getViewFrame=function(){return void 0!==this._viewFrame?this._viewFrame:null};h.prototype.getParent=function(){return this._parent};h.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this)};h.prototype.getBranchVisibility=function(){var a=this.isVisible()?2:1;void 0===this._viewFrame||this._viewFrame.isOutOfHierarchy()||
(a|=this._viewFrame.isVisible()?2:1);return a};h.prototype.setVisibility=function(a){this._setVisibility(a)};h.prototype.isPmiFilteringSet=function(){return this._hasBits(33554432)};h.prototype.deactivate=function(a){var b=Promise.resolve();null!==this._activatedCuttingSectionIndex&&(a=a.getCuttingSection(this._activatedCuttingSectionIndex),null!==a&&(b=a.clear()),this._activatedCuttingSectionIndex=null);return b};h.prototype.activate=function(a,b,f,c,h,d,e){return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(g){switch(g.label){case 0:return console.assert(null===this._activatedCuttingSectionIndex),[4,this._activateView(a,b,f,c,e)];case 1:return g.sent(),[2,this._activateCamera(a,b,h,d)]}})})};h.prototype._activateView=function(a,b,f,h,m){return __awaiter(this,void 0,void 0,function(){var n=this,r,t,u,v,w,y,x,z,A,C,B;return __generator(this,function(D){switch(D.label){case 0:return r=a.getRootNode(),null!==m&&console.assert(m.isAConfigurationNode()),t=0,u=new Map,v=[],w=[],y=c,void 0!==this._transformMap&&
(y=function(a,b){var f=n._transformMap,c=b.getRuntimeId(),f=f.get(c);void 0!==f?(b.overrideLocalTransform(f),a.push(b)):b.hasLocalTransformOverride()&&(b.removeLocalTransformOverride(),a.push(b))}),x={enterProductOccurrence:function(a){(m===a||0<t)&&++t;var b=a.forEachPmi(function(a){var b=a.getPmiBody();if(null!==b){var f=!0;n.isPmiFilteringSet()&&(f=b.getInstanceInc()[1],f=!0===n._instanceMarkupKeysToShow.has(f));null!==m&&(f=f&&0<t);u.set(a,f);u.set(b,f)}}).then(function(){var b=a.getRuntimeId();
n._nodesToHide.has(b)?u.set(a,!1):n._nodesToShow.has(b)&&(null!==m?u.set(a,0<t):u.set(a,!0));y(v,a);return a.forEachCadView(function(a){if(void 0!==a._viewFrame){var b=a===n;null!==m&&(b=b&&0<t);u.set(a,b);u.set(a._viewFrame,b)}})});w.push(b)},leaveProductOccurrence:function(){0<t&&--t},enterAnyBody:function(a){y(v,a);for(var b=null,f=a.getParent();null!==f&&null===b&&!(f instanceof d.Pmi);){var c=f.getRuntimeId();n._nodesToHide.has(c)?(b=!1,u.set(f,!1)):n._nodesToShow.has(c)&&(b=!0,u.set(f,!0));
f=d.towardContainerNode(f.getParent())}null===b&&(c=a.getRuntimeId(),n._nodesToShow.has(c)?u.set(a,!0):n._nodesToHide.has(c)&&u.set(a,!1));null!==m&&0===t&&u.set(a,!1)}},[4,d.WalkerAsync.walk(x,r,!1)];case 1:return D.sent(),[4,Promise.all(w)];case 2:return D.sent(),z=[],A=d.updateVisibilities(a,b,f,r,u,!0,!1,null),z.push(A),A=d.updateScMatrices(b,f,v,!1),z.push(A),[4,g.waitForAll(z)];case 3:D.sent();C=g.TerseArray.toArray(this._cuttingPlanes);if(!(0<C.length))return[3,5];B=h.getCuttingSection(4);
if(null===B)return[3,5];this._activatedCuttingSectionIndex=4;return[4,e(B,C)];case 4:return D.sent(),[2,B.activate()];case 5:return[2]}})})};h.prototype._activateCamera=function(b,f,c,h){return __awaiter(this,void 0,void 0,function(){var e,g,r,t,u,v,w,y,x,z,A,C,B,D,F,I,E,H,J,K,G,M,L,O,P,Q,R,S,T,U,V,W,X;return __generator(this,function(N){switch(N.label){case 0:return e=this._camera,void 0!==e?[3,3]:b.disableAutomaticFitWorld()?[3,2]:[4,c.fitWorld(h)];case 1:N.sent(),N.label=2;case 2:return[2];case 3:return g=
d.towardAttachRoot(this),r=d.towardAttachContext(g),t=d.towardProductOccurrence(r),u=d.getNetMatrix(r),null!==t&&(v=g.getMeasurementUnit(),w=t.getMeasurementUnit(),v!==w&&(y=v/w,x=new a.Matrix,x.setScaleComponent(y,y,y),u=a.Matrix.multiply(x,u))),e.derived=e.initial.transform(u),this._hasBits(8192)?void 0===this._viewFrame?[3,5]:[4,d.getBoundingByNodeId(b,f,[this._viewFrame.getRuntimeId()],7)]:[3,8];case 4:return A=N.sent(),[3,7];case 5:return[4,f.getModelBounding(!0,!1)];case 6:A=N.sent(),N.label=
7;case 7:return z=A,C=a.Point3.subtract(e.derived.getTarget(),e.derived.getPosition()),B=z.extents().length(),D=C.copy().normalize().scale(B),F=z.center(),I=a.Point3.subtract(F,D),e.derived.setPosition(I),e.derived.setTarget(F),e.derived.setWidth(B),e.derived.setHeight(B),[2,c._setCameraPromise(e.derived,h)];case 8:if(e.derived.getProjection()!==a.Projection.Orthographic)return[3,10];E=a.Point3.subtract(e.derived.getTarget(),e.derived.getPosition());return[4,f.getModelBounding(!0,!1)];case 9:return z=
N.sent(),H=a.Point3.subtract(z.center(),e.derived.getPosition()),J=1/E.length(),K=J*a.Point3.dot(E,H),0<K&&(E.scale(J),G=Math.max(e.derived.getWidth(),e.derived.getHeight()),M=a.Point3.add(e.derived.getPosition(),a.Point3.scale(E,K)),L=a.Point3.subtract(M,a.Point3.scale(E,2.5*G)),e.derived.setPosition(L),e.derived.setTarget(M)),[2,c._setCameraPromise(e.derived,h)];case 10:if(e.derived.getProjection()!==a.Projection.Perspective)return[3,12];O=.01;return[4,f.getModelBounding(!0,!1)];case 11:z=N.sent();
P=a.Point3.subtract(z.max,z.min).length();E=a.Point3.subtract(e.derived.getTarget(),e.derived.getPosition());Q=E.length();R=Q/P;if(0===P||R>O)return[2,c._setCameraPromise(e.derived,h)];S=P*O*1.001;T=e.derived.getWidth()/Q;U=e.derived.getHeight()/Q;V=T*S;W=U*S;X=E.copy().normalize().scale(S);F=a.Point3.add(e.derived.getPosition(),X);e.derived.setTarget(F);e.derived.setWidth(V);e.derived.setHeight(W);return[2,c._setCameraPromise(e.derived,h)];case 12:return[2,c._setCameraPromise(e.derived,h)]}})})};
h.prototype.hasPmi=function(a){var b=a.getPmiBody();if(null===b)return!1;b=b.getInstanceInc()[1];return this._instanceMarkupKeysToShow.has(b)?(b=d.towardInclusionContext(this).getInclusionKey(),a=d.towardInclusionContext(a).getInclusionKey(),b===a):!1};h.prototype.isAnnotationView=function(){return this._hasBits(134217728)};h.prototype.setViewFrame=function(a){console.assert(void 0===this._viewFrame);this._viewFrame=a};return h}(d.NodeMixin);d.CadView=b})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal=
{}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(c){function b(b,h,d,e){var p;p=c.call(this,b,d,e.nodeInfo)||this;p._inclusionContextForNodeId=h;p._modelKey=d;0<e.repItemInfos.length&&(h=p._loadRepresentationItems(b,d,e.repItemInfos),p._repItems=a.TerseArray.fromArray(h));b.registerPartDefinition(p);return p}__extends(b,c);b.parseXml=function(a,b){var c=d.Node.parseXml(a,b);if(null===c.name){var e=b.getAttribute("FilePath");null!==e&&(c=__assign({},c,{name:e}))}e=[];for(b=b.firstElementChild;null!==
b;){if("Body"===b.localName){var g=d.RepresentationItem.parseXml(a,b);e.push(g)}b=b.nextElementSibling}return{nodeInfo:c,repItemInfos:e}};b.parseBinary=function(a,b){var c=b.parseNodeParseBits(),e=d.Node.parseBinary(a,b,c),g=[];if(c.hasBits1(1024))for(var c=b.parseCount_32(),l=0;l<c;++l){var m=d.RepresentationItem.parseBinary(a,b);g.push(m)}return{nodeInfo:e,repItemInfos:g}};b.reify=function(a,c,d,e){return new b(a,c,d,e)};b.createDynamic=function(a,c,e){var g=a.getRootNode(),g=d.towardInclusionContext(g);
c={nodeInfo:{nodeId:a.massageAuthoredUserId(g,c),bits:1073741824,name:e,localTransform:null,attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},repItemInfos:[]};return new b(a,g,0,c)};b.createMissing=function(a){a=this.createDynamic(a,null,null);a._bits|=4096;return a};b.prototype.isMissing=function(){return this._hasBits(4096)};b.prototype._loadRepresentationItems=function(a,b,c){for(var e=[],g=0;g<c.length;g++){var l=d.RepresentationItem.reify(a,
b,c[g],this);this._addRepresentationItem(l);e.push(l)}return e};b.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this._inclusionContextForNodeId)};b.prototype.getInclusionContextForNodeId=function(){return this._inclusionContextForNodeId};b.prototype.addReferrer=function(b){var c=d.towardLoadContext(b),e=d.towardLoadContext(this._inclusionContextForNodeId);console.assert(c===e);this._referrers=a.TerseArray.push(this._referrers,b)};b.prototype.createRepItem=function(a,b){a=d.RepresentationItem.createDynamic(a,
b,null,this._modelKey,this);this._addRepresentationItem(a);return a};b.prototype._addRepresentationItem=function(b){this._repItems=a.TerseArray.push(this._repItems,b)};b.prototype.getRepresentationItems=function(){return a.TerseArray.toArray(this._repItems)};b.prototype.getReferrers=function(){return a.TerseArray.toArray(this._referrers)};b.prototype.removeAllReferrers=function(){for(var a=0,b=this.getReferrers();a<b.length;a++){var c=b[a].removePartDefinition();console.assert(this===c)}delete this._referrers};
b.prototype.getModelKey=function(){return this._modelKey};return b}(d.NodeMixin);d.PartDefinition=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(a){a[a.Unknown=0]="Unknown";a[a.Text=1]="Text";a[a.Dimension=2]="Dimension";a[a.Arrow=3]="Arrow";a[a.Balloon=4]="Balloon";a[a.CircleCenter=5]="CircleCenter";a[a.Coordinate=6]="Coordinate";a[a.Datum=7]="Datum";a[a.Fastener=8]="Fastener";a[a.Gdt=9]="Gdt";a[a.Locator=10]="Locator";a[a.MeasurementPoint=11]="MeasurementPoint";a[a.Roughness=12]="Roughness";a[a.Welding=13]="Welding";a[a.Table=14]="Table";a[a.Other=15]="Other";a[a.GeometricalTolerance=16]=
"GeometricalTolerance"})(d.PmiType||(d.PmiType={}));(function(a){a[a.Ident=1]="Ident";a[a.Target=2]="Target"})(d.PmiSubTypeDatum||(d.PmiSubTypeDatum={}));(function(a){a[a.Distance=1]="Distance";a[a.DistanceOffset=2]="DistanceOffset";a[a.DistanceCumulate=3]="DistanceCumulate";a[a.Chamfer=4]="Chamfer";a[a.Slope=5]="Slope";a[a.Ordinate=6]="Ordinate";a[a.Radius=7]="Radius";a[a.RadiusTangent=8]="RadiusTangent";a[a.RadiusCylinder=9]="RadiusCylinder";a[a.RadiusEdge=10]="RadiusEdge";a[a.Diameter=11]="Diameter";
a[a.DiameterTangent=12]="DiameterTangent";a[a.DiameterCylinder=13]="DiameterCylinder";a[a.DiameterEdge=14]="DiameterEdge";a[a.DiameterCone=15]="DiameterCone";a[a.Length=16]="Length";a[a.LengthCurvilinear=17]="LengthCurvilinear";a[a.LengthCircular=18]="LengthCircular";a[a.Angle=19]="Angle"})(d.PmiSubTypeDimension||(d.PmiSubTypeDimension={}));(function(a){a[a.Fcf=1]="Fcf"})(d.PmiSubTypeGdt||(d.PmiSubTypeGdt={}));(function(a){a[a.Line=1]="Line";a[a.Spot=2]="Spot"})(d.PmiSubTypeWelding||(d.PmiSubTypeWelding=
{}));(function(a){a[a.SymbolUser=1]="SymbolUser";a[a.SymbolUtility=2]="SymbolUtility";a[a.SymbolCustom=3]="SymbolCustom";a[a.GeometricReference=4]="GeometricReference";a[a.Region=5]="Region"})(d.PmiSubTypeOther||(d.PmiSubTypeOther={}));var e=function(){return function(a){this.faceIds=[];this.edgeIds=[];this.body=a}}();d.PmiTopologyReference=e;var c=function(b){function f(a,c,e,g){var l,m=d.towardAttachContext(c).getMasterModelKey();l=0;e.initiallyShown&&(l|=1073741824);l=b.call(this,a,m,{nodeId:e.nodeId,
bits:l,name:e.name,localTransform:null,attributes:e.attributesDataKey?e.attributesDataKey:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null})||this;l._bits|=16384;l._parent=g;l._packed=f._pack(e.pmiType,e.pmiSubType);l._pmiBody=l._loadPmiBody(a,m,e.pmiBodyInfo);0<e.topoRefInfos.length&&(l._topoRefs=f._loadTopoRefs(c,e.topoRefInfos));if(0<e.topoRefs.length)if(void 0===l._topoRefs)l._topoRefs=e.topoRefs.slice();else for(c=0,e=e.topoRefs;c<
e.length;c++)l._topoRefs.push(e[c]);a.registerPmi(l);return l}__extends(f,b);f.parseBinary=function(a,b,f){var c=f.parsePmiParseBits(),e=f.parseNodeId(),m=null;g.hasBits(c,1)&&(m=f.parseCString());var n=null;g.hasBits(c,4)&&(n=f.parseDataKey());var r=g.hasBits(c,8);a=d.PmiBody.parseBinary(a,b,f,r);b=g.hasBits(a.nodeInfo.bits,1073741824);var r=f.parsePmiType(),t=f.parsePmiSubType(),u=[];if(g.hasBits(c,2))for(var c=f.parseCount_32(),v=0;v<c;++v){var w=d.ReferenceOnTopology.parseBinary(f);u.push(w)}return{nodeId:e,
name:m,attributesDataKey:n,pmiBodyInfo:a,initiallyShown:b,pmiType:r,pmiSubType:t,topoRefInfos:u,topoRefs:[]}};f.reify=function(a,b,c,e){var g=d.towardAttachContext(b);a=new f(a,b,c,e);g.attachedInvisibly()&&a.setVisibility(!1);return a};f.createDynamic=function(a,b,c,d,e,g,n){d={nodeId:a.generateDynamicNodeId(),name:null,attributesDataKey:null,pmiBodyInfo:g,initiallyShown:!0,pmiType:d,pmiSubType:e,topoRefInfos:[],topoRefs:n};return new f(a,b,d,c)};f._loadTopoRefs=function(a,b){for(var f=[],c=0;c<
b.length;c++){var e=d.ReferenceOnTopology.reify(a,b[c]);f.push(e)}return f};f.prototype._loadPmiBody=function(a,b,f){return d.PmiBody.reify(a,b,this,f)};f.prototype.getPmiBody=function(){return void 0!==this._pmiBody?this._pmiBody:null};f._pack=function(a,b){return a+100*b};f.prototype.getPmiType=function(){return this._packed%100};f.prototype.getPmiSubType=function(){return Math.floor(this._packed/100)%100};f.prototype.getParent=function(){return this._parent};f.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,
this)};f.prototype.getBranchVisibility=function(){var a=this.isVisible()?2:1;void 0===this._pmiBody||this._pmiBody.isOutOfHierarchy()||(a|=this._pmiBody.isVisible()?2:1);return a};f.prototype.setVisibility=function(a){this._setVisibility(a)};f.prototype.getPmiTopologyReferences=function(b){if(void 0===this._topoRefs)return[];for(var f=new Map,c=0,d=this._topoRefs;c<d.length;c++){var g=d[c],m=g.getBodyInstanceInc(),m=b.lookupAnyBodyByInstanceInc(m[0],m[1]);if(null!==m){var n=f.get(m);void 0===n&&(n=
new e(m),f.set(m,n));switch(g.getTopoItemType()){case a.PmiTopoRef.Face:n.faceIds.push(g.getItemIndex());break;case a.PmiTopoRef.Edge:n.edgeIds.push(g.getItemIndex())}}}var r=[];f.forEach(function(a){r.push(a)});return r};return f}(d.NodeMixin);d.Pmi=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a,f){for(var c=[],d=0;d<a.length;d++){var e=f(a[d]);e&&c.push(e)}return g.waitForAll(c)}var c=function(b){function f(c,e,q,p,l,m,n){var r=this;n=f._amendInfo(p,n);var t=d.towardAttachContext(l).getMasterModelKey(),r=b.call(this,p,t,n.nodeInfo)||this;r._parent=m;r._bits=r._bits|n.productBits|32768;var u=n.nodeInfo.header;m=[];null!==n.prototypeDataKey&&(console.assert(null!==q),r._prototypeContext=r._loadPrototypeContext(e,q,p,l,n.prototypeDataKey,
u));console.assert(null===n.quickAccessPartDefinitionDataId||null===n.partDefinition);null!==n.partDefinition?r._partDefinition=n.partDefinition instanceof Array?r._lazyLoadPartDefinitionById(p,l,n.partDefinition,u):r._lazyLoadPartDefinitionByInfo(p,l,n.partDefinition,t):null!==n.quickAccessPartDefinitionDataId&&(r._partDefinition=r._lazyLoadPartDefinitionById(p,l,n.quickAccessPartDefinitionDataId,u));if(0<n.childDataKeys.length){console.assert(null!==q);var v=function(){return __awaiter(r,void 0,
void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,this._loadProductOccurrences(e,q,p,l,n.childDataKeys,u)];case 1:return a=b.sent(),this._children=g.TerseArray.fromArray(a),[2]}})})}();m.push(v)}0<n.bodyInstanceInfos.length&&(t=r._loadBodyInstances(p,t,n.bodyInstanceInfos),r._bodyInstances=g.TerseArray.fromArray(t));0<n.cadViewInfos.length&&(t=r._loadCadViews(p,l,n.cadViewInfos),r._cadViews=g.TerseArray.fromArray(t));0<n.pmiInfos.length&&(t=r._loadPmis(p,
l,n.pmiInfos),r._pmis=g.TerseArray.fromArray(t));null!==n.measurementUnit&&(r._measurementUnit=n.measurementUnit);null!==n.externalModelInfo&&(console.assert(null!==c),console.assert(null!==q),v=function(){return __awaiter(r,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,this._loadExternalModel(q,l,n.externalModelInfo)];case 1:return a=b.sent(),null!==a&&this.addAttachContext(a),[2]}})})}(),m.push(v));t=0;for(v=n.layersInfos;t<v.length;t++){var w=
v[t];p.createOrUpdateLayerName(w.id,w.name)}t=0;for(v=n.filters;t<v.length;t++)p.addFilter(v[t]);t=r.getLayerId();null===t||r.isOutOfHierarchy()||p.registerTreeNodeInLayer(r,t);p.registerProductOccurrence(r);if(null===c){if(0<m.length)throw new a.InternalLogicError;}else c.resolve(g.waitForAll(m));return r}__extends(f,b);f.parseXml=function(a,b,f,c,e){f=f.getInclusionKey();var g=d.Node.parseXml(b,c),n=d.XmlParser.parseFloat(c,"Unit"),r=[],t=null,u=null,v=null;for(c=c.firstElementChild;null!==c;){if("PartDefinition"===
c.localName){t=d.PartDefinition.parseXml(b,c);break}else if("BodyInstance"===c.localName){var w=d.BodyInstance.parseXml(b,c,f);r.push(w)}else if("Material"===c.localName)console.assert(null===u),u=d.SimpleMaterial.parseXml(c);else if("ExternalModel"===c.localName&&(console.assert(null===v),w=c.getAttribute("Name"),null!==w))var v=d.XmlParser.parseFloat(c,"Unit"),y=d.XmlParser.parseBounding(c,"BoundingBox"),v={config:a,modelName:w,bounding:y,measurementUnit:v,toAttachData:e,reservedNodeIdOffset:0};
c=c.nextElementSibling}return{nodeInfo:g,productBits:0,childDataKeys:[],prototypeDataKey:null,partDefinition:t,quickAccessPartDefinitionDataId:null,externalModelInfo:v,bodyInstanceInfos:r,cadViewInfos:[],pmiInfos:[],measurementUnit:n,simpleMaterial:u,layersInfos:[],filters:[]}};f.parseBinary=function(a,b,f,c){var e=d.towardAttachContext(f),g=e.getRemapper(),n=c.parseNodeParseBits();if(n.hasBits1(2097152)){var r=c.parseAssemblyDataVersion();r}n.hasBits2(8)&&e.setGenericTypeMaps(c.parseGenericTypes());
var r=d.Node.parseBinary(b,c,n),t=0;n.hasBits1(4194304)&&(t=c.parseProductBits());var u=[];if(n.hasBits1(16))for(var v=c.parseCount_32(),w=0;w<v;++w){var y=c.parseDataKey();u.push(y)}y=v=null;if(n.hasBits1(32)&&(v=c.parseDataKey(),n.hasBits1(64))){y=c.parseModelKey(g);console.assert(0!==y);var x=c.parseDataKey(),y=[y,x]}x=[];if(n.hasBits1(128))for(var z=c.parseCount_32(),w=0;w<z;++w){var A=d.BodyInstance.parseBinary(b,f,c);x.push(A)}z=null;n.hasBits1(524288)&&(w=c.parseModelKey(g),console.assert(0!==
w),z=c.parseInclusionKey(g,w),z={config:a,inclusionKey:z,modelKey:w});a=null;n.hasBits1(512)&&(w=c.parseModelKey(g),0===w&&(w=e.getMasterModelKey()),a=c.parseDataKey(),a=[w,a]);e=[];if(n.hasBits1(32768))for(g=c.parseCount_32(),w=0;w<g;++w)A=d.CadView.parseBinary(b,f,c),e.push(A);g=[];if(n.hasBits1(65536))for(A=c.parseCount_32(),w=0;w<A;++w){var C=d.Pmi.parseBinary(b,f,c);g.push(C)}f=null;n.hasBits1(16384)&&(f=c.parseFloat_64());n.hasBits1(16777216)&&(w=c.parsePoint3_64(),A=c.parsePoint3_64(),b.setViewAxes(w,
A));b=[];if(n.hasBits1(134217728))for(A=c.parseCount_32(),w=0;w<A;++w)C=d.Layer.parseBinary(c),b.push(C);A=[];if(n.hasBits1(268435456))for(n=c.parseCount_32(),w=0;w<n;++w)C=d.Filter.parseBinary(c),A.push(C);return{nodeInfo:r,productBits:t,childDataKeys:u,prototypeDataKey:v,partDefinition:a,quickAccessPartDefinitionDataId:y,externalModelInfo:z,bodyInstanceInfos:x,cadViewInfos:e,pmiInfos:g,measurementUnit:f,simpleMaterial:null,layersInfos:b,filters:A}};f.reifySync=function(a,b,c,e,g,m){console.assert(0===
g.childDataKeys.length);console.assert(null===g.externalModelInfo);var n=d.towardAttachContext(e);a=new f(null,a,b,c,e,m,g);n.attachedInvisibly()&&a.setVisibility(!1);return a};f.reify=function(a,b,c,d,e,m){return __awaiter(this,void 0,void 0,function(){var n,r;return __generator(this,function(t){switch(t.label){case 0:return n=g.OpenPromise.create(),r=new f(n,a,b,c,d,m,e),[4,n];case 1:return t.sent(),[2,r]}})})};f.createDynamic=function(b,c,e,g,l,m,n){void 0===n&&(n=!1);var r=d.towardInclusionContext(c);
e={nodeInfo:{nodeId:b.massageAuthoredUserId(r,g),bits:m?1073741824:0,name:e,localTransform:l,attributes:[],header:d.AssemblyDataHeader.dynamic,exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},productBits:n?268435456:0,childDataKeys:[],prototypeDataKey:null,partDefinition:null,quickAccessPartDefinitionDataId:null,bodyInstanceInfos:[],externalModelInfo:null,cadViewInfos:[],pmiInfos:[],measurementUnit:null,simpleMaterial:null,layersInfos:[],filters:[]};g=new a.LoadSubtreeConfig;
g.attachInvisibly=!m;return new f(null,g,null,b,r,c,e)};f.createMissing=function(a,b){a=this.createDynamic(a,b,"Missing",null,null,!1);a._bits|=4096;return a};f.prototype.isMissing=function(){return this._hasBits(4096)};f._amendInfo=function(a,b){if(null!==b.nodeInfo.name)return b;var f=null;g.hasBits(b.productBits,2)?f=a.generateProductName():g.hasBits(b.productBits,4)?f=a.generateGroupName():g.hasBits(b.productBits,32)?f=a.generateDrawingSheetName():g.hasBits(b.productBits,8)&&(f=a.generateDrawingViewName());
if(null===f)return b;a=__assign({},b.nodeInfo,{name:f});return __assign({},b,{nodeInfo:a})};f.prototype._loadExternalModel=function(a,b,f){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(g){if(d.ExternalModel.isNameInfo(f))return[2,a.attachByExternalModelInfo(f,this)];c=this.getAuthoredId();e=d.towardLoadContext(b);return e.handleExternalModel(c,b,f.inclusionKey)?[2,a.attachByExternalModelInfo(f,this)]:[2,null]})})};f.prototype._lazyLoadPartDefinitionByInfo=
function(a,b,f,c){a=d.PartDefinition.reify(a,b,c,f);return g.LazyPromise.create(a)};f.prototype._lazyLoadPartDefinitionById=function(a,b,f,c){var e=this,m=a.getAbstractScEngine(),n=d.towardLoadContext(b),r=a.lookupPartDefinitionByDataId(n,f[0],f[1]);if(null!==r)return g.LazyPromise.create(function(){return __awaiter(e,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,r];case 1:return a=b.sent(),a.addReferrer(this),[2,a]}})})});r=g.LazyPromise.create(function(){return __awaiter(e,
void 0,void 0,function(){var e,g,l,n,r,x,z;return __generator(this,function(A){switch(A.label){case 0:return e=f[0],g=f[1],[4,m.safeGetMetaData(e,g)];case 1:return l=A.sent(),null!==l?(n=new d.AssemblyData(c,l),r=new d.AssemblyDataParser(n),x=d.PartDefinition.parseBinary(a,r),z=d.PartDefinition.reify(a,b,e,x),z.addReferrer(this),[2,z]):[2,d.PartDefinition.createMissing(a)]}})})});a.registerPartDefinitionByDataId(n,f[0],f[1],r);return r};f._loadProductOccurrence=function(a,b,c,e,g,m){return __awaiter(this,
void 0,void 0,function(){var n,r;return __generator(this,function(t){n=new d.AssemblyDataParser(g);r=f.parseBinary(a,c,e,n);return[2,f.reify(a,b,c,e,r,m)]})})};f.prototype._loadPrototypeContext=function(a,b,c,e,l,m){var n=this,r=d.towardAttachContext(e),t=d.towardLoadContext(r),u=r.getMasterModelKey(),v,r=c.lookupPrototypeByDataId(t,u,l);null===r&&(r=g.LazyPromise.create(function(){return __awaiter(n,void 0,void 0,function(){var g,n,r;return __generator(this,function(t){switch(t.label){case 0:return g=
c.getAbstractScEngine(),[4,g.safeGetMetaData(u,l)];case 1:return n=t.sent(),null!==n?(r=new d.AssemblyData(m,n),[2,f._loadProductOccurrence(a,b,c,e,r,v)]):[2,f.createMissing(c,v)]}})})}),r=new d.SharedPrototypeContext(r),c.registerPrototypeByDataId(t,u,l,r));v=new d.PrototypeContext(r,e);v.addReferrer(this);return v};f.prototype._loadProductOccurrences=function(a,b,c,e,l,m){return __awaiter(this,void 0,void 0,function(){var n,r,t,u,v,w,y,x,z,A,C;return __generator(this,function(B){switch(B.label){case 0:return n=
d.towardAttachContext(e),t=r=n.getMasterModelKey(),u=c.getAbstractScEngine(),[4,u.safeGetMetaDatas(t,l)];case 1:v=B.sent(),w=[],y=0,B.label=2;case 2:if(!(y<l.length))return[3,9];x=void 0;if(null===v)return[3,6];z=v[y];v[y]=g.emptyBytes;A=new d.AssemblyData(m,z);return[4,f._loadProductOccurrence(a,b,c,e,A,this)];case 3:return x=B.sent(),(C=b.onLoadChildProductOccurrence())?[4,C]:[3,5];case 4:B.sent(),B.label=5;case 5:return[3,7];case 6:x=f.createMissing(c,this),B.label=7;case 7:w.push(x),B.label=8;
case 8:return++y,[3,2];case 9:return[2,w]}})})};f.prototype._loadBodyInstances=function(a,b,f){for(var c=[],e=0;e<f.length;e++){var g=d.BodyInstance.reify(a,b,this,f[e]);c.push(g)}return c};f.prototype._loadCadViews=function(a,b,f){for(var c=[],e=0;e<f.length;e++){var g=d.CadView.reify(a,b,f[e],this);c.push(g)}return c};f.prototype._loadPmis=function(a,b,f){for(var c=[],e=0;e<f.length;e++){var g=d.Pmi.reify(a,b,f[e],this);c.push(g)}return c};f.prototype.getParent=function(){return this._parent};f.prototype.getRuntimeId=
function(){return d.getRuntimeId(this._nodeId,this)};f.prototype.isAbsoluteRoot=function(){return-2===this._nodeId};f.prototype.getPrototype=function(){return void 0!==this._prototypeContext?this._prototypeContext:null};f.prototype.isAConfigurationNode=function(){return this._hasBits(1)};f.prototype.isADefaultNode=function(){return this._hasBits(16)};f.prototype.isAProductNode=function(){return g.hasBits(this._bits,2)};f.prototype.isAGroupNode=function(){return g.hasBits(this._bits,4)};f.prototype.isADrawingSheetNode=
function(){return g.hasBits(this._bits,32)};f.prototype.isADrawingViewNode=function(){return g.hasBits(this._bits,8)};f.prototype.addProductOccurrence=function(a){console.assert(a.getParent()===this);this._children=g.TerseArray.push(this._children,a);this._itemWasAdded()};f.prototype.addBodyInstance=function(a){console.assert(a.getParent()===this);this._bodyInstances=g.TerseArray.push(this._bodyInstances,a);this._itemWasAdded()};f.prototype.addCadView=function(a){console.assert(a.getParent()===this);
this._cadViews=g.TerseArray.push(this._cadViews,a);this._itemWasAdded()};f.prototype.addPmi=function(a){console.assert(a.getParent()===this);this._pmis=g.TerseArray.push(this._pmis,a);this._itemWasAdded()};f.prototype.addLoadContext=function(a){console.assert(a.getParent()===this);this._childContexts=g.TerseArray.push(this._childContexts,a);this._itemWasAdded()};f.prototype.addAttachContext=function(a){console.assert(a.getParent()===this);this._childContexts=g.TerseArray.push(this._childContexts,
a);this._itemWasAdded()};f.prototype._followPrototypesWhileEmpty=function(){if(void 0===this._prototypeContext||void 0!==this._children||void 0!==this._childContexts)return this;var a=this._prototypeContext.getProductOccurrence();return a.isResolved()?a.getResolved()._followPrototypesWhileEmpty():this};f.prototype.getRawPartDefinition=function(){if(void 0!==this._partDefinition)return this._partDefinition;if(void 0!==this._prototypeContext){var a=this._prototypeContext.getProductOccurrence();if(a.isResolved())return a.getResolved().getRawPartDefinition()}return null};
f.prototype.getPartDefinition=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){a=this.getRawPartDefinition();if(a instanceof g.LazyPromise)return[2,g.Boxed.create(a)];if(a instanceof Promise)return[2,a];g.TypeAssert(a);return[2,null]})})};f.prototype.getPartDefinitionSync=function(){console.assert(this.isLoaded());if(void 0!==this._partDefinition&&this._partDefinition.isResolved())return this._partDefinition.getResolved();if(void 0!==this._prototypeContext){var a=
this._prototypeContext.getProductOccurrence();if(a.isResolved())return a.getResolved().getPartDefinitionSync()}return null};f.prototype._getChildren=function(){for(var a=g.TerseArray.toArray(this._children),b=0,f=g.TerseArray.toArray(this._childContexts);b<f.length;b++){var c=f[b].getChildren();g.append(a,c)}return a};f.prototype.getChildren=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return[4,this._followPrototypesWhileEmpty()];
case 1:return a=b.sent(),[2,a._getChildren()]}})})};f.prototype.getChildrenSync=function(){console.assert(this.isLoaded());var b=this.tryGetChildrenSync();if(null===b)throw new a.InternalLogicError;return b};f.prototype.tryGetChildrenSync=function(){var a=this._followPrototypesWhileEmpty();return a instanceof Promise?null:a._getChildren()};f.prototype.forEachChild=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:return[4,this.getChildren()];
case 1:return b=f.sent(),[2,e(b,a)]}})})};f.prototype.forEachBodyInstance=function(a){var b=this.getBodyInstances();return e(b,a)};f.prototype.forEachPmi=function(a){var b=this.getPmis();return e(b,a)};f.prototype.forEachCadView=function(a){var b=this.getCadViews();return e(b,a)};f.prototype.hasBodyInstances=function(){return void 0!==this._bodyInstances};f.prototype.getBodyInstances=function(){return g.TerseArray.toArray(this._bodyInstances)};f.prototype.getCadViews=function(){return g.TerseArray.toArray(this._cadViews)};
f.prototype.getPmis=function(){return g.TerseArray.toArray(this._pmis)};f.prototype.setMeasurementUnit=function(a){this._measurementUnit=a};f.prototype.unsetMeasurementUnit=function(){this._measurementUnit=void 0};f.prototype.hasMeasurementUnit=function(){return void 0!==this._measurementUnit};f.prototype.getMeasurementUnit=function(){for(var a=this;null!==a;){if(void 0!==a._measurementUnit)return a._measurementUnit;a=d.towardProductOccurrence(a._parent)}return 1};f.prototype.getPhysicalProperties=
function(){return __awaiter(this,void 0,void 0,function(){var a,b,f,c,d;return __generator(this,function(e){switch(e.label){case 0:return[4,this.getPartDefinition()];case 1:return a=e.sent(),null===a?[2,null]:[4,a.value];case 2:b=e.sent();f=b.getRepresentationItems();if(1!==f.length)return[2,null];c=f[0];d=c.getPhysicalProperties();return[2,d]}})})};f.prototype.setPartDefinition=function(a){console.assert(void 0===this._partDefinition);this._partDefinition=g.LazyPromise.create(a)};f.prototype.setPrototype=
function(a){console.assert(void 0===this._prototypeContext);this._prototypeContext=a;this._markBranchVisibilityDirty(!1)};f.prototype.removePrototype=function(){if(void 0===this._prototypeContext)throw new a.InternalLogicError;var b=this._prototypeContext;delete this._prototypeContext;this._markBranchVisibilityDirty(!1);return b};f.prototype.getBranchVisibility=function(){this._updateBranchVisibility();return this._getBranchVisibility()};f.prototype._getBranchVisibility=function(){var a=this.isVisible()?
2:1;this._hasBits(65536)&&(a|=2);this._hasBits(131072)&&(a|=1);return a};f.prototype._setBranchVisibility=function(a){this.isVisible()?console.assert(g.hasBits(a,2)):console.assert(g.hasBits(a,1));this._bits&=-196609;g.hasBits(a,1)&&(this._bits|=131072);g.hasBits(a,2)&&(this._bits|=65536)};f.prototype._updateBranchVisibility=function(){if(this._hasBits(32768)){var a=this.isVisible()?2:1,b=this._getSubBranchVisibilities();null!==b&&(a|=b);this._setBranchVisibility(a);this._bits&=-32769}};f.prototype._getSubBranchVisibilities=
function(){for(var a=0,b=0,f=this.getChildrenSync();b<f.length;b++){var c=f[b].getBranchVisibility(),a=a|c;if(3===a)return 3}c=0;for(b=this.getBodyInstances();c<b.length;c++)if(f=b[c],!f.isOutOfHierarchy()&&(a|=f.isVisible()?2:1,3===a))return 3;b=0;for(f=this.getPmis();b<f.length;b++)if(c=f[b].getBranchVisibility(),a|=c,3===a)return 3;b=0;for(f=this.getCadViews();b<f.length;b++)if(c=f[b].getBranchVisibility(),a|=c,3===a)return 3;return 0===a?null:a};f.prototype._itemWasAdded=function(){3!==this._getBranchVisibility()&&
this._markBranchVisibilityDirty(!0)};f.prototype._onItemRemoved=function(){1!==this._getBranchVisibility()&&this._markBranchVisibilityDirty(!1)};f.prototype.markBranchVisibilityDirty=function(){this._markBranchVisibilityDirty(!1)};f.prototype._markBranchVisibilityDirty=function(a){if(!(this._hasBits(32768)||a&&3===this._getBranchVisibility()))if(this._bits|=32768,this._parent instanceof d.PrototypeContext)for(var b=0,f=this._parent.getReferrers();b<f.length;b++)f[b]._markBranchVisibilityDirty(a);
else if(b=d.towardProductOccurrence(this._parent),null!==b)return b._markBranchVisibilityDirty(a)};f.prototype.setVisibility=function(a){this.isVisible()!==a&&(this._setVisibility(a),this._markBranchVisibilityDirty(!1))};f.prototype._removeDirectChild=function(a){var b=g.TerseArray.toArray(this._children),f=b.length,b=b.filter(function(b){return b!==a});if(b.length===f)return!1;0===b.length?delete this._children:this._children=g.TerseArray.fromArray(b);this._onItemRemoved();return!0};f.prototype._removeIndirectChild=
function(a){for(var b=!1,f=g.TerseArray.toArray(this._childContexts),c=0,d=f;c<d.length;c++)if(d[c].removeProductOccurrence(a)){b=!0;break}if(!b)return!1;f=f.filter(function(a){return a.hasChildren()});0===f.length?delete this._childContexts:this._childContexts=g.TerseArray.fromArray(f);this._onItemRemoved();return!0};f.prototype.removeProductOccurrence=function(a){return this._removeDirectChild(a)?!0:this._removeIndirectChild(a)};f.prototype.removeBodyInstance=function(a){var b=g.TerseArray.toArray(this._bodyInstances),
f=b.length,b=b.filter(function(b){return b!==a});if(b.length===f)return!1;0===b.length?delete this._bodyInstances:this._bodyInstances=g.TerseArray.fromArray(b);this._onItemRemoved();return!0};f.prototype.purgeContents=function(){this._markBranchVisibilityDirty(!1);var a=[],b;void 0!==this._partDefinition&&(this._partDefinition.isUnforced()||(b=this._partDefinition.then(function(a){a.removeAllReferrers()}),a.push(b)),delete this._partDefinition);void 0!==this._prototypeContext&&(b=this._prototypeContext.purgeContents(),
a.push(b),delete this._prototypeContext);b=g.TerseArray.toArray(this._children);b=e(b,function(a){return a.purgeContents()});a.push(b);delete this._children;b=g.TerseArray.toArray(this._childContexts);b=e(b,function(a){return a.purgeContents()});a.push(b);delete this._childContexts;delete this._bodyInstances;delete this._cadViews;delete this._pmis;delete this._measurementUnit;return g.waitForAll(a)};f.prototype.removePartDefinition=function(){if(void 0===this._partDefinition||!this._partDefinition.isResolved())throw new a.InternalLogicError;
var b=this._partDefinition;delete this._partDefinition;return b.getResolved()};f.prototype.isOutOfHierarchy=function(){return this._hasBits(268435456)};f.prototype.markIsExternalModelRoot=function(a){console.assert(!this._hasBits(2048));this._bits|=2048;a.markSeenExternalModel()};f.prototype.isExternalModelRoot=function(){return this._hasBits(2048)};return f}(d.NodeMixin);d.ProductOccurrence=c})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a,b){return void 0!==a&&b<a.length?a[b]:null}function c(a,b,f){void 0===a&&(a=[]);a.length=Math.max(a.length,b+1);a[b]=f;return a}var b;(function(a){a[a.Unknown=0]="Unknown";a[a.BRep=1]="BRep";a[a.Tessellation=2]="Tessellation";a[a.Wireframe=3]="Wireframe";a[a.PointCloud=4]="PointCloud"})(b=d.BodyType||(d.BodyType={}));var f=function(f){function k(a,b,c,d){b=f.call(this,a,b,c.nodeInfo)||this;b._parent=d;b._bodyType=c.bodyType;null!==c.meshKey&&(b._meshKey=
c.meshKey);0<c.faceMeasurementProps.length&&(b._faceMeasurementProps=c.faceMeasurementProps.slice());0<c.edgeMeasurementProps.length&&(b._edgeMeasurementProps=c.edgeMeasurementProps.slice());null!==c.physicalProps&&(b._physicalProps=c.physicalProps);if(0<c.faceAttributes.length){b._faceAttributes=[];for(var e=0,k=c.faceAttributes;e<k.length;e++)d=k[e],b._faceAttributes.push(d.copy())}if(0<c.edgeAttributes.length)for(b._edgeAttributes=[],e=0,c=c.edgeAttributes;e<c.length;e++)d=c[e],b._edgeAttributes.push(d.copy());
a.registerRepresentationItem(b);return b}__extends(k,f);k.parseXml=function(a,f){a=d.Node.parseXml(a,f);f=d.XmlParser.parseMeshKey(f,"TCKey_Mesh");return{nodeInfo:a,meshKey:f,bodyType:b.Unknown,faceMeasurementProps:[],edgeMeasurementProps:[],physicalProps:null,faceAttributes:[],edgeAttributes:[]}};k.parseBinary=function(b,f){var c=f.parseNodeParseBits();b=d.Node.parseBinary(b,f,c);var h=f.parseBodyType(),e=null;c.hasBits1(8192)&&(e=f.parseMeshKey());var k=[];if(c.hasBits1(2048))for(var g=f.parseCount_32(),
u=0;u<g;++u){var v=d.MeasurementProperty.Face.parseBinary(f);k.push(v)}v=[];if(c.hasBits1(4096))for(g=f.parseCount_32(),u=0;u<g;++u){var w=d.MeasurementProperty.Edge.parseBinary(f);v.push(w)}g=null;c.hasBits1(1048576)&&(g=d.PhysicalProperties.parseBinary(f));w=[];if(c.hasBits2(1))for(var y=f.parseCount_32(),u=0;u<y;u++){for(var x=[],z=f.parseCount_32(),A=0;A<z;A++){var C=d.Attribute.parseBinary(f);x.push(C)}w.push(new a.SubentityAttributes(x))}y=[];if(c.hasBits2(2))for(c=f.parseCount_32(),u=0;u<c;u++){x=
[];z=f.parseCount_32();for(A=0;A<z;A++)C=d.Attribute.parseBinary(f),x.push(C);y.push(new a.SubentityAttributes(x))}return{nodeInfo:b,meshKey:e,bodyType:h,faceMeasurementProps:k,edgeMeasurementProps:v,physicalProps:g,faceAttributes:w,edgeAttributes:y}};k.reify=function(a,b,f,c){return new k(a,b,f,c)};k.createDynamic=function(a,f,c,h,e){var g=e.getInclusionContextForNodeId();f={nodeInfo:{nodeId:a.massageAuthoredUserId(g,f),bits:1073741824,name:c,localTransform:null,attributes:[],header:d.AssemblyDataHeader.dynamic,
exchangeId:null,layerId:null,genericTypeId:null,genericId:null,userDatas:null},meshKey:null,bodyType:b.Unknown,faceMeasurementProps:[],edgeMeasurementProps:[],physicalProps:null,faceAttributes:[],edgeAttributes:[]};return new k(a,h,f,e)};k.prototype.setPhysicalProperties=function(a){this._physicalProps=a};k.prototype.getPhysicalProperties=function(){return void 0!==this._physicalProps?this._physicalProps:null};k.prototype.getParent=function(){return this._parent};k.prototype.getFaceCount=function(){return void 0!==
this._faceMeasurementProps?this._faceMeasurementProps.length:0};k.prototype.getEdgeCount=function(){return void 0!==this._edgeMeasurementProps?this._edgeMeasurementProps.length:0};k.prototype.getFaceAttributes=function(a){return e(this._faceAttributes,a)};k.prototype.getEdgeAttributes=function(a){return e(this._edgeAttributes,a)};k.prototype.getFaceMeasurementProperty=function(a){return e(this._faceMeasurementProps,a)};k.prototype.getEdgeMeasurementProperty=function(a){return e(this._edgeMeasurementProps,
a)};k.prototype.setFaceMeasurementProperty=function(a,b){this._faceMeasurementProps=c(this._faceMeasurementProps,a,b.copy())};k.prototype.setEdgeMeasurementProperty=function(a,b){this._edgeMeasurementProps=c(this._edgeMeasurementProps,a,b.copy())};k.prototype.getBodyType=function(){return this._bodyType};k.prototype.getRuntimeId=function(){return d.getRuntimeId(this._nodeId,this._parent.getInclusionContextForNodeId())};return k}(d.NodeMixin);d.RepresentationItem=f})(g.Tree||(g.Tree={}))})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(a,f,c){this._type=a;this._title=f;this._value=c}c.parseBinary=function(a){var f=a.parseCString(),h=a.parseAttributeType();a=a.parseCString();return new c(h,f,a)};c.parseXml=function(b){console.assert("Attr"===b.localName);var f=a.AttributeType.Undefined,h="",d="",e=b.getAttribute("Name");if(null!==e&&(h=e,"__PRC_RESERVED_ATTRIBUTE_A3DF_ProductInformation"===h))return new c(f,h,d);e=b.getAttribute("Type");if(null!==e)switch(e){case "i":f=
a.AttributeType.Int;break;case "f":f=a.AttributeType.Float;break;case "t":f=a.AttributeType.Time;break;case "s":f=a.AttributeType.String}b=b.getAttribute("Value");null!==b&&(d=b);return new c(f,h,d)};c.prototype.getType=function(){return this._type};c.prototype.getTitle=function(){return this._title};c.prototype.getValue=function(){return this._value};c.prototype.copy=function(){return new c(this._type,this._title.slice(),this._value.slice())};return c}();d.Attribute=e})(g.Tree||(g.Tree={}))})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(a){this._colorTable=[];this._colorTable=a.slice()}c.parseXml=function(b){console.assert("ColorTable"===b.localName);var f=[];b=b.getAttribute("data");if(null!==b){b=b.split(" ");console.assert(0===b.length%3);for(var h=0;h<b.length;h+=3){var d=parseFloat(b[h]),e=parseFloat(b[h+1]),g=parseFloat(b[h+2]),d=new a.Color(d,e,g);f.push(d)}}return new c(f)};c.prototype.getColor=function(a){if(0<=a&&0===a%3&&(a/=3,a<this._colorTable.length))return this._colorTable[a];
console.assert(!1);return null};return c}();d.ColorTable=e})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function a(){this.isInclusive=!1;this.nodeIds=[]}a.parseBinary=function(b){var c=new a;c.isInclusive=b.parseBoolean();for(var d=b.parseCount_32(),e=0;e<d;e++)c.nodeIds.push(b.parseNodeId());return c};return a}();d.FilterEntityItem=e;var c=function(){function a(){this.isInclusive=!1;this.layers=[]}a.parseBinary=function(b){var c=new a;c.isInclusive=b.parseBoolean();for(var d=b.parseCount_32(),e=0;e<d;e++)c.layers.push(b.parseLayerId());return c};
return a}();d.FilterLayerItem=c;var b=function(){function b(){this.isDisplayfilter=!1;this.name=null;this.isActive=!1;this.filterEntityItem=this.filterLayersItem=null}b.parseBinary=function(h){var d=new b,q=null,p=null,l=h.parseLayerParseBits();d.isDisplayfilter=h.parseBoolean();a.hasBits(l,1)&&(d.name=h.parseCString());d.isActive=h.parseBoolean();a.hasBits(l,2)&&(q=c.parseBinary(h));a.hasBits(l,4)&&(p=e.parseBinary(h));d.filterLayersItem=q;d.filterEntityItem=p;return d};return b}();d.Filter=b})(a.Tree||
(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){(function(d){var e=function(){function c(a,f,c,d){this.id=a;this.name=f;this.nodes=c;this.treeNodes=d}c.parseBinary=function(b){var f=b.parseLayerParseBits(),c=b.parseLayerId(),d=null;a.hasBits(f,1)&&(d=b.parseCString());return{id:c,name:d}};return c}();d.Layer=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function a(b,f,c,d,e,g,l,m,n){this._ambientAlpha=b;this._diffuseAlpha=f;this._emissiveAlpha=c;this._specularAlpha=d;this._shininess=e;null!==g&&(this._ambientIndex=g);null!==l&&(this._diffuseIndex=l);null!==m&&(this._emissiveIndex=m);null!==n&&(this._specularIndex=n)}a.parseXml=function(b){console.assert("MaterialTable"===b.localName);var f=d.XmlParser.parseFloat(b,"AmbientAlpha")||0,h=d.XmlParser.parseFloat(b,"DiffuseAlpha")||0,e=d.XmlParser.parseFloat(b,
"EmissiveAlpha")||0,g=d.XmlParser.parseFloat(b,"SpecularAlpha")||0,p=d.XmlParser.parseFloat(b,"Shininess")||0,l=d.XmlParser.parseUint(b,"AmbientIndice"),m=d.XmlParser.parseUint(b,"DiffuseIndice"),n=d.XmlParser.parseUint(b,"EmissiveIndice");b=d.XmlParser.parseUint(b,"SpecularIndice");return new a(f,h,e,g,p,l,m,n,b)};a.prototype.getAmbientColorIndex=function(){return void 0!==this._ambientIndex?this._ambientIndex:null};a.prototype.getDiffuseColorIndex=function(){return void 0!==this._diffuseIndex?this._diffuseIndex:
null};a.prototype.getEmissiveColorIndex=function(){return void 0!==this._emissiveIndex?this._emissiveIndex:null};a.prototype.getSpecularColorIndex=function(){return void 0!==this._specularIndex?this._specularIndex:null};a.prototype.getAmbientAlpha=function(){return this._ambientAlpha};a.prototype.getDiffuseAlpha=function(){return this._diffuseAlpha};a.prototype.getEmissiveAlpha=function(){return this._emissiveAlpha};a.prototype.getSpecularAlpha=function(){return this._specularAlpha};a.prototype.getShininess=
function(){return this._shininess};return a}();d.Material=e;e=function(){function c(a,f){null!==a&&(this._color=a);null!==f&&(this._alpha=f)}c.parseXml=function(b){console.assert("Material"===b.localName);var f=null,h=null;b=b.getAttribute("Color");if(null!==b){var d=b.split(" ");if(4!==d.length)throw new a.XmlParseError('Expected "Color" attribute to have four channel components.');f=parseFloat(d[0]);h=parseFloat(d[1]);b=parseFloat(d[2]);d=parseFloat(d[3]);f=new a.Color(f,h,b);h=d}return new c(f,
h)};c.prototype.getColor=function(){return void 0!==this._color?this._color:null};c.prototype.getAlpha=function(){return void 0!==this._alpha?this._alpha:null};return c}();d.SimpleMaterial=e})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function a(b,f,c){this.surfaceArea=b;this.volume=f;this.centerOfGravity=c}a.parseBinary=function(b){var f=b.parseFloat_64(),h=b.parseFloat_64();b=b.parsePoint3_64();return new a(f,h,b)};return a}();a.PhysicalProperties=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function a(b,f,c,d){this._inclusionKey=b;this._bodyInstanceKey=f;this._topoItemType=c;this._itemIndex=d}a.parseBinary=function(a){var f=a.parseInstanceKey(),c=a.parsePmiTopoRef();a=a.parseIndex_32();return{bodyInstanceKey:f,topoItemType:c,itemIndex:a}};a.reify=function(b,f){b=b.getInclusionKey();return new a(b,f.bodyInstanceKey,f.topoItemType,f.itemIndex)};a.fromBodyInstance=function(b,f,h){b=b.getInstanceInc();return new a(b[0],b[1],f,h)};a.prototype.getBodyInstanceInc=
function(){return[this._inclusionKey,this._bodyInstanceKey]};a.prototype.getTopoItemType=function(){return this._topoItemType};a.prototype.getItemIndex=function(){return this._itemIndex};return a}();a.ReferenceOnTopology=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function c(a,f){console.assert(null!==a||null!==f);this._materialIndex=a;this._colorIndex=f}c.parseXml=function(b){console.assert("Style"===b.localName);var f=a.XmlParser.parseUint(b,"MaterialIndex");b=a.XmlParser.parseUint(b,"ColorIndex");return new c(f,b)};c.prototype.getMaterialIndex=function(){return this._materialIndex};c.prototype.getColorIndex=function(){return this._colorIndex};return c}();a.Style=e})(a.Tree||(a.Tree={}))})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(){}c.parseBinary=function(b){for(var f=new a.Matrix,c=0;4>c;++c)for(var d=0;3>d;++d)f.m[4*c+d]=b.parseFloat_32();return f};c.parseXml=function(b){console.assert("Transformation"===b.localName);var f=new a.Matrix;b=b.getAttribute("RelativeTransfo");if(null!==b){b=b.split(" ");console.assert(16===b.length);for(var c=0;16>c;++c){var d=parseFloat(b[c]);console.assert(!isNaN(d));f.m[c]=d}}return f};return c}();d.Transform=e})(g.Tree||(g.Tree=
{}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){function e(a){a.markLoaded();var b=0;for(a=a.getRepresentationItems();b<a.length;b++)a[b].markLoaded()}function c(b){b=b.getRawPartDefinition();if(null!==b)if(b instanceof a.LazyPromise){if(!b.isResolved())return b.then(e)}else return a.TypeAssert(b),b.then(function(a){if(null!==a&&(a=a.value,!a.isResolved()))return a.then(e)})}function b(a){var b=d.forcePrototype(a);return void 0!==b?b.then(function(){return c(a)}):c(a)}d.forcePartDefinition=b;d.forcePartDefinitions=
function(f){return __awaiter(this,void 0,void 0,function(){var c,e;return __generator(this,function(q){switch(q.label){case 0:return c=[],e={enterProductOccurrence:function(a){a=b(a);void 0!==a&&c.push(a)}},[4,d.WalkerAsync.walk(e,f,!1)];case 1:return q.sent(),[2,a.waitForAll(c)]}})})}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){function e(a){a=a.getPrototype();if(null!==a){var f=a.getProductOccurrence();return(f.isResolved()?c(f.getResolved()):f.then(c)).then(function(){console.assert(f.isResolved());f.getResolved().markLoaded()})}}function c(b){return __awaiter(this,void 0,void 0,function(){var f,c;return __generator(this,function(k){switch(k.label){case 0:return f=[],c={enterProductOccurrence:function(a){a=e(a);void 0!==a&&f.push(a)}},[4,d.WalkerAsync.walk(c,b,!1)];case 1:return k.sent(),
[2,a.waitForAll(f)]}})})}d.forcePrototype=e;d.forcePrototypes=c})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){function e(a,f,c,e,q,p){var l=[];return(a=a.walk({enterAnyBody:function(a){if(!q.has(a)){q.add(a);if(a instanceof d.BodyInstance){if(!g.hasBits(c,1)||a.isOutOfHierarchy()&&!e)return}else if(a instanceof d.PmiBody){if(!g.hasBits(c,2))return}else if(g.TypeAssert(a),!g.hasBits(c,4))return;a=a.getInstanceInc();l.push(a[0],a[1])}}},f,p))?a.then(function(){return l}):l}function c(a,f,c,k,g){return e(d.WalkerSync,a,f,c,k,g)}d.gatherInstanceIncs=function(a,f,c,k){return e(d.WalkerAsync,
a,f,c,k,!1)};d.gatherInstanceIncsSync=c;d.gatherInstanceIncsByNodeIdsSync=function(b,f,h,e){for(var g=null,p=new Set,l=0;l<f.length;l++){var m=f[l],n=b.lookupAnyTreeNode(m);if(null===n)throw new a.InvalidNodeIdError(m);m=d.isOutOfHierarchy(n);m=c(n,h,m,p,e);if(null===g)g=m;else for(n=0;n<m.length;n++)g.push(m[n])}return null!==g?g:[]}})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){d.getBoundingByNodeId=function(e,c,b,f){return __awaiter(this,void 0,void 0,function(){var h;return __generator(this,function(k){h=d.gatherInstanceIncsByNodeIdsSync(e,b,f,!1);if(0===h.length)throw new a.CommunicatorError("Cannot get the bounding of node without geometry.");return[2,c.getPartsBounding(h)]})})}})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){function e(a,b){var f=function(a){b.push(a)};return d.WalkerAsync.walk({enterProductOccurrence:f,enterAnyBody:f,enterCadView:f,enterPmi:f,enterPartDefinition:f,enterRepresentationItem:f},a,!1)}d.markContextsLoaded=function(){for(var c=[],b=0;b<arguments.length;b++)c[b]=arguments[b];return __awaiter(this,void 0,void 0,function(){var b,h,d,q,p,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:b=[];h=[];d=0;for(q=c;d<q.length;d++)p=q[d],l=e(p,h),
b.push(l);return[4,a.waitForAll(b)];case 1:t.sent();m=0;for(n=h;m<n.length;m++)r=n[m],r.markLoaded();return[2]}})})}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){a.resetTransforms=function(e){return __awaiter(this,void 0,void 0,function(){var c,b,f;return __generator(this,function(h){switch(h.label){case 0:return c=!1,b=function(a){a.hasLocalTransformOverride()&&(a.removeLocalTransformOverride(),c=!0)},f={enterProductOccurrence:b,enterPmi:b,enterCadView:b,enterAnyBody:function(a){a.preventFromResetting()||b(a)}},[4,a.WalkerAsync.walk(f,e,!1)];case 1:return h.sent(),[2,c]}})})}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal=
{}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){a.setMeshLevels=function(e,c,b){for(var f=[],h=new Set,k=function(a){if(h.has(a))return!1;h.add(a);return!0},k={followProductOccurrence:k,followPmi:k,followCadView:k,followAnyBody:k,enterAnyBody:function(a){a.isOutOfHierarchy()||(a=a.getInstanceInc(),f.push(a[0],a[1]))}},g=0;g<c.length;g++)a.WalkerSync.walk(k,c[g],!1);e.setMeshLevel(f,b)}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){d.updateScMatrices=function(e,c,b,f){return __awaiter(this,void 0,void 0,function(){var h=this,k,q,p,l,m,n,r,t,u,v,w,y;return __generator(this,function(x){switch(x.label){case 0:k=[];q=[];p=[];l=new Set;m=function(b){if(l.has(b))return!1;l.add(b);b=b.getLocalTransform();if(null!==b){var f=g.last(k),f=a.Matrix.multiply(b,f);k.push(f)}return!0};n=function(a){null!==a.getLocalTransform()&&(console.assert(0<k.length),k.pop(),console.assert(0<k.length))};r={followProductOccurrence:m,
leaveProductOccurrence:n,followPmi:m,leavePmi:n,followCadView:m,leaveCadView:n,followAnyBody:m,enterAnyBody:function(a){if(!a.isOutOfHierarchy()||f)a=a.getInstanceInc(),p.push(a[0],a[1]),q.push(g.last(k))},leaveAnyBody:n};t=new g.PromiseQueue(1,!0);u=function(a){var b=g.Lazy.create(function(){return __awaiter(h,void 0,void 0,function(){var b;return __generator(this,function(f){switch(f.label){case 0:return console.assert(0===k.length),b=d.getNetMatrix(a.getParent()),k.push(b),[4,d.WalkerAsync.walk(r,
a,!1)];case 1:return f.sent(),console.assert(1===k.length),k.pop(),[2]}})})});t.push(b)};v=0;for(w=b;v<w.length;v++)y=w[v],u(y);return[4,t.waitForIdle()];case 1:return x.sent(),console.assert(2*q.length===p.length),[4,e.setMatrices(p,q)];case 2:return x.sent(),c.trigger("_updateTransform",f),[2]}})})}})(g.Tree||(g.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){function e(a){for(var b=[],c=0;c<a.length;c++){var d=a[c].getInstanceInc();b.push(d[0],d[1])}return b}function c(a){for(var b=[],c=0;c<a.length;c++){var d=a[c].getRuntimeId();b.push(d)}return b}function b(b,h,k,q,p,l,m,n,r){return __awaiter(this,void 0,void 0,function(){var t,u,v,w,y,x,z,A,C,B,D,F,I;return __generator(this,function(E){switch(E.label){case 0:return q instanceof d.AttachContext?(console.assert(0===p.size),console.assert(null===k),console.assert(null===
r),console.assert(null!==l),2===l?(console.assert(m),console.assert(!0===n)):0===l&&console.assert(!0===n)):console.assert(null===l),null!==r&&console.assert(r.isAConfigurationNode()),t=0,null===n&&(n=b.getInitiallyHiddenStayHidden()),u=[],v=[],w=[],y=function(a){var b=x(a,!1);null!==b&&a.setVisibility(b)},x=function(b,f){var c=p.get(b);void 0!==c?w.push(c):0<w.length&&w.push(a.last(w));if(d.isOutOfHierarchy(b))return null;if(null!==r&&0===t)return!1;if(void 0!==c)return c;var c=b.isVisible(),h=b.isInitiallyShown();
if(0<w.length){if(f=a.last(w),f!==c)return f&&!h&&n?b instanceof d.PmiBody&&(b=b.getParent(),!0===p.get(b))?!0:null:f}else if(m&&c!==h&&!f)return h;return null},z=function(a){a;0<w.length&&w.pop()},A={enterProductOccurrence:function(a){(r===a||0<t)&&++t;y(a)},leaveProductOccurrence:function(a){z(a);0<t&&--t},enterPmi:y,leavePmi:z,enterCadView:y,leaveCadView:z,enterAnyBody:function(a){var b=a.preventFromResetting(),b=x(a,b);null!==b&&(a.setVisibility(b),b?u.push(a):v.push(a))},leaveAnyBody:z},[4,d.WalkerAsync.walk(A,
q,!1)];case 1:return E.sent(),console.assert(0===w.length),null===l?(C=e(u),B=e(v),h.pauseRendering(),h.setPartVisibility(C,!0),h.setPartVisibility(B,!1),h.resumeRendering(),null!==k&&(D=c(u),F=c(v),k.trigger("visibilityChanged",D,F))):(I=q.getAttachScope(),console.assert(0!==I),h.setVisibilityByAttachment(I,l)),[2]}})})}d.updateVisibilitiesByAttachment=function(a,c,d,e){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(g){return[2,b(a,c,null,d,new Map,e,2===e,1!==e,
null)]})})};d.updateVisibilities=function(a,c,d,e,g,l,m,n){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(r){return[2,b(a,c,d,e,g,null,l,m,n)]})})};d.synchronizePmiVisibilities=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,g,p,l,m;return __generator(this,function(n){switch(n.label){case 0:return c=[],g=[],p={enterAnyBody:function(a){if(a instanceof d.PmiBody||a instanceof d.ViewFrame){var b=a.isVisible();a.setVisibility(b);b?c.push(a):g.push(a)}}},
[4,d.WalkerAsync.walk(p,b,!1)];case 1:return n.sent(),l=e(c),m=e(g),a.pauseRendering(),a.setPartVisibility(l,!0),a.setPartVisibility(m,!1),a.resumeRendering(),[2]}})})}})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(){function c(a,c){this._visitor=new d.TotalVisitor(a,c)}c.walk=function(b,f,h){if(h&&!f.isLoaded())return Promise.resolve();var e=new c(b,h);if(f instanceof d.NodeMixin)return e._walkAnyTreeNode(f);var q=new a.ActionQueue(1,!1);b=function(a){q.push(function(){return e._walkAnyTreeNode(a)})};h=0;for(f=f.getChildren();h<f.length;h++)b(f[h]);return q.waitForIdle()};c.forceLazyPromises=function(a){return this.walk({},a,!1)};c.prototype._walkAnyTreeNode=
function(b){b instanceof d.ProductOccurrence?b=this._walkProductOccurrence(b):b instanceof d.Pmi?b=this._walkPmi(b):b instanceof d.CadView?b=this._walkCadView(b):(a.TypeAssert(b),b=this._walkAnyBody(b));return void 0===b?Promise.resolve():b};c.prototype._walkRepresentationItem=function(a){this._visitor.followRepresentationItem(a)&&(this._visitor.enterRepresentationItem(a),this._visitor.leaveRepresentationItem(a))};c.prototype._walkPartDefinition=function(a){if(this._visitor.followPartDefinition(a)){this._visitor.enterPartDefinition(a);
for(var c=0,h=a.getRepresentationItems();c<h.length;c++)this._walkRepresentationItem(h[c]);this._visitor.leavePartDefinition(a)}};c.prototype._walkAnyBody=function(a){this._visitor.followAnyBody(a)&&(this._visitor.enterAnyBody(a),this._visitor.leaveAnyBody(a))};c.prototype._walkPmi=function(a){if(this._visitor.followPmi(a)){this._visitor.enterPmi(a);var c=a.getPmiBody();null!==c&&this._walkAnyBody(c);this._visitor.leavePmi(a)}};c.prototype._walkCadView=function(a){if(this._visitor.followCadView(a)){this._visitor.enterCadView(a);
var c=a.getViewFrame();null!==c&&this._walkAnyBody(c);this._visitor.leaveCadView(a)}};c.prototype._walkProductOccurrence=function(b){var c=this,h=new a.ActionQueue(1,!1);if(this._visitor.followProductOccurrence(b)){this._visitor.enterProductOccurrence(b);var d=b.getRawPartDefinition();null!==d&&(d instanceof a.LazyPromise?h.push(function(){if(d.isResolved())return c._walkPartDefinition(d.getResolved())}):(a.TypeAssert(d),h.push(function(){return d.then(function(a){return null!==a&&(a=a.value,a.isResolved())?
c._walkPartDefinition(a.getResolved()):Promise.resolve()})})));var e=b.tryGetChildrenSync();if(null!==e)for(var p=function(a){h.push(function(){return c._walkProductOccurrence(a)})},l=0;l<e.length;l++)p(e[l]);else h.push(function(){return b.getChildren().then(function(b){if(0!==b.length){for(var h=new a.ActionQueue(1,!1),d=function(a){h.push(function(){return c._walkProductOccurrence(a)})},e=0;e<b.length;e++)d(b[e]);if(!h.isIdle())return h.waitForIdle()}})});e=function(a){h.push(function(){return c._walkAnyBody(a)})};
p=0;for(l=b.getBodyInstances();p<l.length;p++)e(l[p]);e=function(a){h.push(function(){return c._walkPmi(a)})};p=0;for(l=b.getPmis();p<l.length;p++)e(l[p]);e=function(a){h.push(function(){return c._walkCadView(a)})};p=0;for(l=b.getCadViews();p<l.length;p++)e(l[p]);h.push(function(){return c._visitor.leaveProductOccurrence(b)})}if(!h.isIdle())return h.waitForIdle()};return c}();d.WalkerAsync=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){function e(a){return a.isLoaded()}function c(){return!0}var b=function(){return function(b,h){this.followProductOccurrence=c;this.leaveProductOccurrence=this.enterProductOccurrence=a.nop;this.followPartDefinition=c;this.leavePartDefinition=this.enterPartDefinition=a.nop;this.followRepresentationItem=c;this.leaveRepresentationItem=this.enterRepresentationItem=a.nop;this.followAnyBody=c;this.leaveAnyBody=this.enterAnyBody=a.nop;this.followCadView=c;this.leaveCadView=
this.enterCadView=a.nop;this.followPmi=c;this.leavePmi=this.enterPmi=a.nop;h&&(console.assert(void 0===b.followProductOccurrence),console.assert(void 0===b.followAnyBody),console.assert(void 0===b.followCadView),console.assert(void 0===b.followPmi),this.followPmi=this.followCadView=this.followAnyBody=this.followProductOccurrence=e);void 0!==b.followProductOccurrence&&(this.followProductOccurrence=b.followProductOccurrence);void 0!==b.enterProductOccurrence&&(this.enterProductOccurrence=b.enterProductOccurrence);
void 0!==b.leaveProductOccurrence&&(this.leaveProductOccurrence=b.leaveProductOccurrence);void 0!==b.followPartDefinition&&(this.followPartDefinition=b.followPartDefinition);void 0!==b.enterPartDefinition&&(this.enterPartDefinition=b.enterPartDefinition);void 0!==b.leavePartDefinition&&(this.leavePartDefinition=b.leavePartDefinition);void 0!==b.followRepresentationItem&&(this.followRepresentationItem=b.followRepresentationItem);void 0!==b.enterRepresentationItem&&(this.enterRepresentationItem=b.enterRepresentationItem);
void 0!==b.leaveRepresentationItem&&(this.leaveRepresentationItem=b.leaveRepresentationItem);void 0!==b.followAnyBody&&(this.followAnyBody=b.followAnyBody);void 0!==b.enterAnyBody&&(this.enterAnyBody=b.enterAnyBody);void 0!==b.leaveAnyBody&&(this.leaveAnyBody=b.leaveAnyBody);void 0!==b.followCadView&&(this.followCadView=b.followCadView);void 0!==b.enterCadView&&(this.enterCadView=b.enterCadView);void 0!==b.leaveCadView&&(this.leaveCadView=b.leaveCadView);void 0!==b.followPmi&&(this.followPmi=b.followPmi);
void 0!==b.enterPmi&&(this.enterPmi=b.enterPmi);void 0!==b.leavePmi&&(this.leavePmi=b.leavePmi)}}();d.TotalVisitor=b})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(){function c(b,c){this._visitor=new a.TotalVisitor(b,c)}c.walk=function(b,f,h){if(!h||f.isLoaded())return b=new c(b,h),f instanceof a.ProductOccurrence?b._walkProductOccurrence(f):f instanceof a.Pmi?b._walkPmi(f):f instanceof a.CadView?b._walkCadView(f):b._walkAnyBody(f)};c.prototype._walkRepresentationItem=function(a){console.assert(a.isLoaded());this._visitor.followRepresentationItem(a)&&(this._visitor.enterRepresentationItem(a),this._visitor.leaveRepresentationItem(a))};
c.prototype._walkPartDefinition=function(a){console.assert(a.isLoaded());if(this._visitor.followPartDefinition(a)){this._visitor.enterPartDefinition(a);for(var c=0,h=a.getRepresentationItems();c<h.length;c++)this._walkRepresentationItem(h[c]);this._visitor.leavePartDefinition(a)}};c.prototype._walkAnyBody=function(a){console.assert(a.isLoaded());this._visitor.followAnyBody(a)&&(this._visitor.enterAnyBody(a),this._visitor.leaveAnyBody(a))};c.prototype._walkPmi=function(a){console.assert(a.isLoaded());
if(this._visitor.followPmi(a)){this._visitor.enterPmi(a);var c=a.getPmiBody();if(null!==c)return this._walkAnyBody(c);this._visitor.leavePmi(a)}};c.prototype._walkCadView=function(a){console.assert(a.isLoaded());if(this._visitor.followCadView(a)){this._visitor.enterCadView(a);var c=a.getViewFrame();if(null!==c)return this._walkAnyBody(c);this._visitor.leaveCadView(a)}};c.prototype._walkProductOccurrence=function(a){console.assert(a.isLoaded());if(this._visitor.followProductOccurrence(a)){this._visitor.enterProductOccurrence(a);
var c=a.getPartDefinitionSync();null!==c&&this._walkPartDefinition(c);for(var c=0,h=a.getChildrenSync();c<h.length;c++)this._walkProductOccurrence(h[c]);c=0;for(h=a.getBodyInstances();c<h.length;c++)this._walkAnyBody(h[c]);c=0;for(h=a.getPmis();c<h.length;c++)this._walkPmi(h[c]);c=0;for(h=a.getCadViews();c<h.length;c++)this._walkCadView(h[c]);this._visitor.leaveProductOccurrence(a)}};return c}();a.WalkerSync=e})(a.Tree||(a.Tree={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function d(){this.plane=new a.Plane;this.instanceNodeId=this.meshId=this.referenceGeometry=null;this.color=a.Color.createFromFloat(.65,.65,.65);this.lineColor=a.Color.black();this.opacity=.35;this.matrix=new a.Matrix}d.prototype.toJson=function(){return{plane:{normal:this.plane.normal,d:this.plane.d},referenceGeometry:this.referenceGeometry}};d.prototype.forJson=function(){return this.toJson()};d.prototype.fromJson=function(c){c=g.deepClone(c);var b=c.plane;
this.plane=new a.Plane;var f=b.normal;this.plane.normal=new a.Point3(f.x,f.y,f.z);this.plane.d=b.d;c=c.referenceGeometry;if(c instanceof Array)for(b=0;b<c.length;++b)c[b]=a.Point3.fromJson(c[b]);this.referenceGeometry=c};d.prototype.getMatrix=function(){return this.matrix.copy()};d.prototype.setMatrix=function(a){this.matrix=a.copy()};d.prototype.setReferenceGeometry=function(a){if(a){this.referenceGeometry=[];for(var b=0;b<a.length;b++)this.referenceGeometry.push(a[b].copy())}else this.referenceGeometry=
null};d.prototype.getReferenceGeometry=function(){if(this.referenceGeometry){for(var a=[],b=0,f=this.referenceGeometry;b<f.length;b++)a.push(f[b].copy());return a}return null};d.prototype.createMeshData=function(){var c=this.referenceGeometry;if(null===c)return null;var b=new a.MeshData,f=[],h=[];f.push(c[0].x,c[0].y,c[0].z);f.push(c[1].x,c[1].y,c[1].z);f.push(c[3].x,c[3].y,c[3].z);f.push(c[1].x,c[1].y,c[1].z);f.push(c[2].x,c[2].y,c[2].z);f.push(c[3].x,c[3].y,c[3].z);for(var d=a.Plane.createFromPoints(c[0],
c[1],c[2]).normal,e=0;6>e;e++)h.push(d.x,d.y,d.z);b.addFaces(f,h);b.addPolyline([c[0].x,c[0].y,c[0].z,c[1].x,c[1].y,c[1].z]);b.addPolyline([c[1].x,c[1].y,c[1].z,c[2].x,c[2].y,c[2].z]);b.addPolyline([c[2].x,c[2].y,c[2].z,c[3].x,c[3].y,c[3].z]);b.addPolyline([c[3].x,c[3].y,c[3].z,c[0].x,c[0].y,c[0].z]);return b};return d}();g.CuttingPlane=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(a,c,b,f,h){this._cuttingPlanes=[];this._isActive=!1;this._viewer=a;this._model=c;this._callbackManager=b;this._cuttingManager=f;this._engine=h}d.deprecated=function(a,c,b){a;var f=b.value;b.value=function(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];this._callbackManager.trigger("deprecated","CuttingSection",c);return f.apply(this,a)};return b};d.prototype.addPlane=function(d,c){void 0===c&&(c=null);return __awaiter(this,void 0,void 0,function(){var b,
f;return __generator(this,function(h){switch(h.label){case 0:b=this._engine.getCuttingSectionLimits();if(this._cuttingPlanes.length>=b.maxCuttingPlanesPerSection)return[2,!1];f=new a.Internal.CuttingPlane;f.plane=d.copy();f.setReferenceGeometry(c);this._cuttingPlanes.push(f);return this._isActive?[4,this._resetCuttingPlane(f)]:[2,!0];case 1:return h.sent(),[4,this._engine.updateCuttingSection(this)];case 2:return h.sent(),[2,!0]}})})};d.prototype.setPlane=function(a,c,b){void 0===b&&(b=null);return __awaiter(this,
void 0,void 0,function(){var f;return __generator(this,function(h){switch(h.label){case 0:f=this._cuttingPlanes[a];if(void 0===f)return[3,2];f.plane=c.copy();f.setReferenceGeometry(b);return this._isActive?[4,this._resetCuttingPlane(f)]:[3,2];case 1:return h.sent(),[2,this._engine.updateCuttingSection(this)];case 2:return[2]}})})};d.prototype.updatePlane=function(d,c,b,f,h){void 0===b&&(b=new a.Matrix);void 0===f&&(f=!1);void 0===h&&(h=!1);return __awaiter(this,void 0,void 0,function(){var k,g,p;
return __generator(this,function(l){switch(l.label){case 0:k=this._cuttingPlanes[d];if(void 0===k)return[3,3];k.plane=c.copy();if(!this._isActive)return[3,3];if(null===k.instanceNodeId)return[3,2];this._engine.pauseRendering();g=k.getMatrix();h&&(g=new a.Matrix);p=a.Matrix.multiply(g,b);f&&k.setMatrix(p);return[4,Promise.all([this._model.setNodeMatrix(k.instanceNodeId,p),this._engine.updateCuttingSection(this)])];case 1:return l.sent(),this._engine.resumeRendering(),[3,3];case 2:return[2,this._engine.updateCuttingSection(this)];
case 3:return[2]}})})};d.prototype.removePlane=function(d){var c=[],b=this._cuttingPlanes[d];void 0!==b&&null!==b.meshId&&null!==b.instanceNodeId&&(c.push(this._destroyMeshes([b.meshId],[b.instanceNodeId])),this._cuttingPlanes.splice(d,1));this._isActive&&c.push(this._engine.updateCuttingSection(this));return a.Internal.waitForAll(c)};d.prototype.getPlane=function(a){a=this._cuttingPlanes[a];return void 0!==a?a.plane.copy():null};d.prototype.getNodeId=function(a){a=this._cuttingPlanes[a];return void 0!==
a?a.instanceNodeId:null};d.prototype.getReferenceGeometry=function(a){a=this._cuttingPlanes[a];return void 0!==a?a.getReferenceGeometry():null};d.prototype.getPlaneIndexByNodeId=function(a){for(var c=0;c<this._cuttingPlanes.length;c++)if(this._cuttingPlanes[c].instanceNodeId===a)return c;return null};d.prototype.setPlaneOpacity=function(a,c){a=this._cuttingPlanes[a];void 0!==a&&(a.opacity=c,null!==a.instanceNodeId&&this._model.setNodesOpacity([a.instanceNodeId],c))};d.prototype.setPlaneTransparency=
function(a,c){this.setPlaneOpacity(a,c);return Promise.resolve()};d.prototype.setItemTransparency=function(a,c){return this.setPlaneTransparency(a,c)};d.prototype.setColor=function(a){for(var c=[],b=0,f=this._cuttingPlanes;b<f.length;b++){var h=f[b];h.color.assign(a);null!==h.instanceNodeId&&c.push(h.instanceNodeId)}return this._model.setNodesFaceColor(c,a)};d.prototype.setOpacity=function(a){for(var c=[],b=0,f=this._cuttingPlanes;b<f.length;b++){var h=f[b];h.opacity=a;null!==h.instanceNodeId&&c.push(h.instanceNodeId)}this._model.setNodesOpacity(c,
a)};d.prototype.setTransparency=function(a){this.setOpacity(a);return Promise.resolve()};d.prototype.getCount=function(){return this._cuttingPlanes.length};d.prototype.clear=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return[4,this.deactivate()];case 1:return a.sent(),this._cuttingPlanes.length=0,[2]}})})};d.prototype.activate=function(){return __awaiter(this,void 0,void 0,function(){var d,c,b,f,h;return __generator(this,function(k){switch(k.label){case 0:if(this._isActive)return[2];
this._isActive=!0;if(!(0<this._cuttingPlanes.length))return[3,2];this._cuttingManager.hasActiveCuttingSection()||this._engine.setDefaultDepthRange(0,.9999995231628418);d=[];c=[];b=0;for(f=this._cuttingPlanes;b<f.length;b++)h=f[b],d.push(this._createCuttingPlaneGeometry(h).then(function(a){null!==a&&c.push(a)}));return[4,a.Internal.waitForAll(d)];case 1:k.sent(),this._initCuttingPlanesByNodeId(c),k.label=2;case 2:return[2,this._engine.addCuttingSection(this)]}})})};d.prototype.deactivate=function(){return __awaiter(this,
void 0,void 0,function(){var d;return __generator(this,function(c){return this._isActive?(this._isActive=!1,d=[],d.push(this._destroyGeometry()),d.push(this._engine.removeCuttingSection(this)),this._cuttingManager.hasActiveCuttingSection()||this._engine.setDefaultDepthRange(0,1),[2,a.Internal.waitForAll(d)]):[2]})})};d.prototype.isActive=function(){return this._isActive};d.prototype.toJson=function(){for(var a=[],c=0;c<this._cuttingPlanes.length;c++)a[c]=this._cuttingPlanes[c].toJson();return{planes:a}};
d.prototype.forJson=function(){return this.toJson()};d.prototype.fromJson=function(d){return __awaiter(this,void 0,void 0,function(){var c,b,f,h,k,g;return __generator(this,function(p){switch(p.label){case 0:return[4,this.clear()];case 1:p.sent();c=a.Internal.deepClone(d);b=c.planes;f=0;for(h=b;f<h.length;f++)k=h[f],g=new a.Internal.CuttingPlane,g.fromJson(k),this._cuttingPlanes.push(g);return[2,this.activate()]}})})};d.prototype._initCuttingPlanesByNodeId=function(d){this._model.setInstanceModifier(a.InstanceModifier.IgnoreCutting,
d,!0);this._model.setInstanceModifier(a.InstanceModifier.IgnoreExplosion,d,!0);this._cuttingManager.getStandinGeometryPickable()||this._model.setInstanceModifier(a.InstanceModifier.IgnoreSelection,d,!0)};d.prototype._destroyGeometry=function(){for(var a=[],c=[],b=0,f=this._cuttingPlanes;b<f.length;b++){var h=f[b];null!==h.meshId&&a.push(h.meshId);null!==h.instanceNodeId&&c.push(h.instanceNodeId);h.meshId=null;h.instanceNodeId=null}return this._destroyMeshes(a,c)};d.prototype._getInstanceNodeIds=function(){for(var a=
[],c=0,b=this._cuttingPlanes;c<b.length;c++){var f=b[c].instanceNodeId;null!==f&&a.push(f)}return a};d.prototype._resetCuttingPlane=function(a){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(b){switch(b.label){case 0:if(null===a.meshId||null===a.instanceNodeId)return[3,2];c=this._destroyMeshes([a.meshId],[a.instanceNodeId]);a.meshId=null;a.instanceNodeId=null;return[4,c];case 1:return b.sent(),[2,this._createInstanceGeometry(a)];case 2:if(null!==a.referenceGeometry)return[2,
this._createInstanceGeometry(a)];b.label=3;case 3:return[2]}})})};d.prototype._createInstanceGeometry=function(a){return __awaiter(this,void 0,void 0,function(){var c,b;return __generator(this,function(f){switch(f.label){case 0:return c=[],[4,this._createCuttingPlaneGeometry(a)];case 1:return b=f.sent(),null!==b&&c.push(b),this._initCuttingPlanesByNodeId(c),[2]}})})};d.prototype._destroyMeshes=function(d,c){return __awaiter(this,void 0,void 0,function(){var b,f,h,k;return __generator(this,function(g){switch(g.label){case 0:return b=
[],b.push(this._model.deleteMeshInstances(c)),b.push(this._model.deleteMeshes(d)),[4,a.Internal.waitForAll(b)];case 1:g.sent();f=0;for(h=c;f<h.length;f++)k=h[f],this._viewer.selectionManager._incrementalBlacklistedInstanceNodes.delete(k);return[2]}})})};d.prototype._createCuttingPlaneGeometry=function(d){return __awaiter(this,void 0,void 0,function(){var c,b,f,h,k,g,p,l;return __generator(this,function(m){switch(m.label){case 0:c=d.createMeshData();if(null===c)return[2,null];c.setBackfacesEnabled(!0);
return[4,this._model.createMesh(c)];case 1:return b=m.sent(),d.meshId=b,f=a.MeshInstanceCreationFlags.OverrideSceneVisibility|a.MeshInstanceCreationFlags.ExcludeBounding|a.MeshInstanceCreationFlags.DoNotXRay,h=d.plane.copy(),k=h.normal.copy().scale(-h.d),g=(new a.Matrix).setTranslationComponent(k.x,k.y,k.z),d.setMatrix(g.copy()),p=new a.MeshInstanceData(b,g,null,d.color,null,null,f),p.setOpacity(d.opacity),p.setLineColor(d.lineColor),this._engine.pauseRendering(),[4,this._model.createMeshInstance(p,
void 0,!0,!0)];case 2:return l=m.sent(),d.instanceNodeId=l,this._viewer.selectionManager._incrementalBlacklistedInstanceNodes.add(l),this._model.setDepthRange([l],4.76837158203125E-7,1),this._engine.resumeRendering(),[2,l]}})})};__decorate([d.deprecated],d.prototype,"setPlaneTransparency",null);__decorate([d.deprecated],d.prototype,"setItemTransparency",null);__decorate([d.deprecated],d.prototype,"setTransparency",null);__decorate([d.deprecated],d.prototype,"forJson",null);return d}();a.CuttingSection=
g})(Communicator||(Communicator={}));
(function(a){(function(a){a.emptyBytes=new Uint8Array(0);a.copyArray=function(a){return a.slice()};a.append=function(a,e){for(var c=0;c<e.length;c++)a.push(e[c])};a.last=function(a){console.assert(0<a.length);return a[a.length-1]};a.all=function(a){for(var e=0;e<a.length;e++)if(!a[e])return!1;return!0};a.chunkify=function(a,e){for(var c=[],b=0;b<a.length;b+=e)c.push(a.slice(b,b+e));return c};a.inPlaceFilter=function(a,e){for(var c=0,b=0;b<a.length;++b){var f=a[b];e(f)&&(a[c++]=f)}a.length=c}})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){var d=function(){function a(){this._leftToRight=new Map;this._rightToLeft=new Map}a.prototype.set=function(a,b){this._leftToRight.set(a,b);this._rightToLeft.set(b,a)};a.prototype.getLeft=function(a){return this._rightToLeft.get(a)};a.prototype.getRight=function(a){return this._leftToRight.get(a)};return a}();a.Bimap=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(c){this.value=c}a.create=function(c){return new a(c)};return a}();a.Boxed=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(c){this._planes=[];this._absPlanes=[];this._signs=[];this._distanceScale=[];for(var b=c.length,f=0;f<c.length;f++)this._planes.push(c[f].slice());for(c=0;c<b;++c)for(this._planes[c][3]=-this._planes[c][3],this._absPlanes[c]=a.cwiseAbs3(this._planes[c]),this._signs[c]=[0,0,0],f=0;3>f;++f)this._signs[c][f]=0<=this._planes[c][f]?1:-1;for(c=0;c<b;++c)f=a.squaredNorm3(this._planes[c]),this._distanceScale[c]=0===f?0:1/f}d.fromPlaneCoefficients=function(a){for(var b=
[],f=0;f<a.length;f++){var h=a[f];b.push([h.x,h.y,h.z,h.w])}return new d(b)};d.createFrustumFromMatrix=function(c){for(var b=[],f=0;3>f;++f)b[f]=a.sub4(a.col4(c,3),a.col4(c,f));for(f=0;3>f;++f)b[f+3]=a.add4(a.col4(c,3),a.col4(c,f));return new d(b)};d.prototype.testAxisAlignedBox=function(c,b){for(var f=this._planes.length,h=2,d=0;d<f;++d){var e=a.dot3(this._planes[d],c),p=a.dot3(this._absPlanes[d],b);if(e+p<=this._planes[d][3])return 0;e-p<this._planes[d][3]&&(h=1)}return h};d.prototype.axisAlignedBoxNotOutside=
function(c,b){for(var f=this._planes.length,h=0;h<f;++h)if(a.dot3(this._planes[h],a.add3(c,a.cwiseProduct3(b,this._signs[h])))<=this._planes[h][3])return!1;return!0};d.prototype.sphereNotOutside=function(c,b){for(var f=this._planes.length,h=0;h<f;++h){var d=a.dot3(this._planes[h],c)-this._planes[h][3];if(0>d&&d*d*this._distanceScale[h]>=b)return!1}return!0};d.prototype.sphereFullyInside=function(c,b){for(var f=this._planes.length,h=0;h<f;++h){var d=a.dot3(this._planes[h],c)-this._planes[h][3];if(0>
d||d*d*this._distanceScale[h]<b)return!1}return!0};d.prototype.pointInside=function(c){for(var b=this._planes.length,f=0;f<b;++f)if(0>a.dot3(this._planes[f],c)-this._planes[f][3])return!1;return!0};return d}();a.ConvexVolume=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){a.nop=function(){};a.identity=function(a){return a}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(d,c){return new Promise(function(b,f){var h=new XMLHttpRequest;h.open("GET",d,!0);c&&(h.responseType=c);h.onload=function(c){c;4===h.readyState&&(200===h.status?b(h):(c=new a.LoadError('XMLHttpRequest failed to GET "'+d+'" with status '+h.status+"."),f(c)))};h.onerror=function(a){f(a)};h.send()})}g.httpRequest=d;g.httpRequestBuffer=function(a){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(b){switch(b.label){case 0:return[4,
d(a,"arraybuffer")];case 1:return c=b.sent(),[2,new Uint8Array(c.response)]}})})}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){a.copyMap=function(a){var e=new Map;a.forEach(function(a,b){e.set(b,a)});return e};a.copySet=function(a){var e=new Set;a.forEach(function(a){e.add(a)});return e};a.toSet=function(a){for(var e=new Set,c=0;c<a.length;c++)e.add(a[c]);return e}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(b){this._deferredValue=b}a.create=function(b){return new a(b)};a.prototype.get=function(){null!==this._deferredValue&&(this._resolvedValue=this._deferredValue(),this._deferredValue=null);return this._resolvedValue};return a}();a.Lazy=d;var e=function(){function a(b){this._value=b}a.create=function(b){return new a(b)};a.prototype.get=function(){"function"===typeof this._value&&(this._value=this._value());return this._value};return a}();a.LazyObject=
e;d=function(){function c(a){"function"===typeof a&&(a=e.create(a));a instanceof Promise&&(a=this._rectifyResult(a));this._value=a}c.create=function(a){return new c(a)};c.prototype.isUnforced=function(){return this._value instanceof e};c.prototype.isResolved=function(){return!(this._value instanceof e)&&!(this._value instanceof Promise)};c.prototype.getResolved=function(){console.assert(this.isResolved());return this._value};c.prototype.then=function(b,c){this._value instanceof e&&(this._value=this._rectifyResult(this._value.get()));
if(this._value instanceof Promise)return this._value.then(b,c);a.TypeAssert(this._value);return Promise.resolve(this._value).then(b,c)};c.prototype._rectifyResult=function(a){var c=this;return a instanceof Promise?a.then(function(a){return c._value=a}):a};return c}();a.LazyPromise=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){a.fromIntegerMap=function(a){if(a instanceof Map)return a;for(var e=new Map,c=0,b=Object.keys(a);c<b.length;c++){var f=b[c],h=a[f];e.set(parseInt(f,10),h)}return e};a.fromRealNumberMap=function(a){if(a instanceof Map)return a;for(var e=new Map,c=0,b=Object.keys(a);c<b.length;c++){var f=b[c];e.set(Number(f),a[f])}return e};a.fromStringMap=function(a){if(a instanceof Map)return a;for(var e=new Map,c=0,b=Object.keys(a);c<b.length;c++){var f=b[c];e.set(f,a[f])}return e}})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(g){g.TypeAssert=function(a){a};g.TypeAssertNever=function(d){d;throw new a.InternalLogicError;};g.Todo=function(){for(var d=[],e=0;e<arguments.length;e++)d[e]=arguments[e];d;throw new a.InternalLogicError;};g.Void={}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){a=a.Internal||(a.Internal={});a=a.CompileTime||(a.CompileTime={});a.enable=!0;a.disable=!1})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(c){this._lazy=a.Lazy.create(c)}d.create=function(a){return new d(a)};d.prototype.trigger=function(){return this._lazy.get()};return d}();a.Once=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(c){this._heap=[];this._comparator=c}a.prototype.clear=function(){this._heap.length=0};Object.defineProperty(a.prototype,"length",{get:function(){return this._heap.length},enumerable:!0,configurable:!0});a.prototype.peek=function(){return this._heap[0]};a.prototype.push=function(a){this._heap.push(a);this._siftUp()};a.prototype.pop=function(){var a=this.peek(),b=this.length-1;0<b&&this._swap(0,b);this._heap.pop();this._siftDown();return a};a.prototype.replace=
function(a){var b=this.peek();this._heap[0]=a;this._siftDown();return b};a.prototype._greater=function(a,b){return this._comparator(this._heap[a],this._heap[b])};a.prototype._swap=function(a,b){f=[this._heap[b],this._heap[a]];this._heap[a]=f[0];this._heap[b]=f[1];var f};a.prototype._siftUp=function(){for(var a=this.length-1;0<a&&this._greater(a,(a+1>>>1)-1);)this._swap(a,(a+1>>>1)-1),a=(a+1>>>1)-1};a.prototype._siftDown=function(){for(var a=0;(a<<1)+1<this.length&&this._greater((a<<1)+1,a)||a+1<<
1<this.length&&this._greater(a+1<<1,a);){var b=a+1<<1<this.length&&this._greater(a+1<<1,(a<<1)+1)?a+1<<1:(a<<1)+1;this._swap(a,b);a=b}};return a}();a.PriorityQueue=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){a.waitForAll=function(a){return Promise.all(a)}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){return function(){this.items=[];this.next=null}}(),e=function(){function a(){this.clear()}a.prototype.clear=function(){this._tail=this._head=new d;this._size=0};Object.defineProperty(a.prototype,"length",{get:function(){return this._size},enumerable:!0,configurable:!0});a.prototype.push=function(a){++this._size;if(1024===this._tail.items.length){var c=new d;this._tail=this._tail.next=c}this._tail.items.push(a)};a.prototype.pop=function(){console.assert(0<
this._size);console.assert(0<this._head.items.length);--this._size;var a=this._head.items.shift();if(0===this._head.items.length){var c=this._head.next;null===c?console.assert(this._head===this._tail):this._head=c}return a};return a}();a.Queue=e})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){var d=function(){return function(a,c){this.value=a;this.kids=c.slice()}}();a.RoseTree=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){function d(a){var c=[];a.forEach(function(a){c.push(a)});return c}a.setToArray=d;a.setSubtraction=function(e,c){e=d(e).filter(function(a){return!c.has(a)});return a.toSet(e)};a.setMap=function(a,c){var b=new Set;a.forEach(function(a){b.add(c(a))});return b}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){a.utf8ArrayToStr=function(a){if("undefined"!==typeof window&&8192>a.length&&"escape"in window){var c=void 0;try{var h=String.fromCharCode.apply(null,a),d=window.escape(h),c=decodeURIComponent(d)}catch(e){c=""}return c}for(var g,p,l,c="",d=a.length,h=0;h<d;)switch(g=a[h++],g>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c+=String.fromCharCode(g);break;case 12:case 13:p=a[h++];c+=String.fromCharCode((g&31)<<6|p&63);break;case 14:p=a[h++],l=a[h++],c+=String.fromCharCode((g&
15)<<12|(p&63)<<6|(l&63)<<0)}return c};var d=/^\d+$/;a.isBase10Number=function(a){return d.test(a)};var e="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+-=[]{};:'\",.<>\\|/?".split("");a.compressUint=function(a){console.assert(0<=a);if(0===a)return e[0];for(var c=[];0!==a;){var h=Math.floor(a/e.length);c.push(e[a%e.length]);a=h}return c.join("")};var c="0000000 000000 00000 0000 000 00 0 ".split(" ");a.zeroPadHex32=function(a){a=a.toString(16);return c[a.length-1]+a}})(a.Internal||
(a.Internal={}))})(Communicator||(Communicator={}));(function(a){(function(a){(function(a){a.toArray=function(a){return a instanceof Array?a.slice():null===a||void 0===a?[]:[a]};a.fromArray=function(a){return 0===a.length?null:1===a.length?a[0]:a};a.push=function(a,c){return a?a instanceof Array?(a.push(c),a):[a,c]:c}})(a.TerseArray||(a.TerseArray={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(){this._afterActionIdlePromise=this._beforeActionIdlePromise=this._action=this._timerId=null}d.prototype.isIdle=function(c){if(0===c)return null===this._timerId;a.TypeAssert(c);return null===this._action};d.prototype.waitForIdle=function(c){if(0===c){if(null===this._timerId)return Promise.resolve();null===this._beforeActionIdlePromise&&(this._beforeActionIdlePromise=a.OpenPromise.create());return this._beforeActionIdlePromise}a.TypeAssert(c);if(null===
this._action)return Promise.resolve();null===this._afterActionIdlePromise&&(this._afterActionIdlePromise=a.OpenPromise.create());return this._afterActionIdlePromise};d.prototype._triggerIdlePromise=function(c){0===c?null!==this._beforeActionIdlePromise&&(this._beforeActionIdlePromise.resolve(),this._beforeActionIdlePromise=null):(a.TypeAssert(c),null!==this._afterActionIdlePromise&&(this._afterActionIdlePromise.resolve(),this._afterActionIdlePromise=null))};d.prototype._clearTimeout=function(){null!==
this._timerId&&(clearTimeout(this._timerId),this._timerId=null)};d.prototype.clear=function(){this._clearTimeout();this._triggerIdlePromise(0);this._action=null;this._triggerIdlePromise(1)};d.prototype.set=function(a,b){var f=this;this._clearTimeout();this._action=b;this._timerId=setTimeout(function(){f._timerId=null;f._triggerIdlePromise(0);var a=f._afterActionIdlePromise;f._afterActionIdlePromise=null;f._action();null===f._timerId&&(f._action=null);null!==a&&a.resolve()},a)};return d}();a.Timer=
d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));(function(a){a=a.Internal||(a.Internal={});a=a.Unicode||(a.Unicode={});a.Subscript2="\u00b2";a.Subscript3="\u00b3"})(Communicator||(Communicator={}));
(function(a){(function(a){function d(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]}function e(a){var b=a[0],f=a[1];a=a[2];return b*b+f*f+a*a}a.toVec3=function(a){return[a.x,a.y,a.z]};a.cwiseAbs3=function(a){return[Math.abs(a[0]),Math.abs(a[1]),Math.abs(a[2])]};a.cwiseProduct3=function(a,b){return[a[0]*b[0],a[1]*b[1],a[2]*b[2]]};a.add3=function(a,b){return[a[0]+b[0],a[1]+b[1],a[2]+b[2]]};a.sub3=function(a,b){return[a[0]-b[0],a[1]-b[1],a[2]-b[2]]};a.add4=function(a,b){return[a[0]+b[0],a[1]+b[1],a[2]+b[2],
a[3]+b[3]]};a.sub4=function(a,b){return[a[0]-b[0],a[1]-b[1],a[2]-b[2],a[3]-b[3]]};a.dot3=d;a.squaredNorm3=e;a.norm3=function(a){return Math.sqrt(e(a))};a.scale3=function(a,b){return[a*b[0],a*b[1],a*b[2]]};a.row4=function(a,b){a=a.m;b*=4;return[a[b],a[b+1],a[b+2],a[b+3]]};a.col4=function(a,b){a=a.m;return[a[b],a[b+4],a[b+8],a[b+12]]};a.projectSquaredSize=function(a,b,f){a=d(a,f)+f[3];a*=a;1E-5>a&&(a=1E-5);return b/a}})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(c,b){this._failed=!1;this._failureError=null;this._activePromiseCount=0;this._idlePromise=null;console.assert(0<c,"Don't create a non-progressible queue.");this._maxActivePromises=c;this._suppressFailures=b;this._deferredActions=new a.Queue}d.prototype.isIdle=function(){return 0===this._activePromiseCount};d.prototype.waitForIdle=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){if(this.isIdle()){if(this._failed)throw this._failureError;
return[2]}null===this._idlePromise&&(this._idlePromise=a.OpenPromise.create());return[2,this._idlePromise]})})};d.prototype.push=function(c){"function"===typeof c&&(c=a.Lazy.create(c));this._activePromiseCount<this._maxActivePromises?(console.assert(0===this._deferredActions.length),this._immediateAction(c)):this._deferredActions.push(c)};d.prototype._immediateAction=function(a){var b=this;if(this._failed)return console.assert(0===this._deferredActions.length),!0;var f;try{f=a.get()}catch(h){this._suppressFailures||
(this._failed=!0,this._failureError=h,this._deferredActions.clear())}if(void 0===f)return!0;++this._activePromiseCount;f.then(function(a){b._finalizePromise();return a}).catch(function(a){b._finalizePromise();throw a;});return!1};d.prototype._finalizePromise=function(){--this._activePromiseCount;this._failed&&console.assert(0===this._deferredActions.length);if(0<this._deferredActions.length){do{var a=this._deferredActions.pop();if(!this._immediateAction(a))break}while(0<this._deferredActions.length)
}this._tryActivateIdlePromise()};d.prototype._tryActivateIdlePromise=function(){0===this._activePromiseCount&&(console.assert(0===this._deferredActions.length),null!==this._idlePromise&&(this._failed?this._idlePromise.reject(this._failureError):this._idlePromise.resolve(),this._idlePromise=null))};return d}();a.ActionQueue=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(a){this._idlePromise=this._pending=this._active=null;this._suppressFailures=a}d.prototype.isIdle=function(){return null===this._active};d.prototype.waitForIdle=function(){if(this.isIdle())return Promise.resolve();null===this._idlePromise&&(this._idlePromise=a.OpenPromise.create());return this._idlePromise};d.prototype.set=function(c){var b=this;"function"===typeof c&&(c=a.Lazy.create(c));if(null===this._active){var f=void 0;try{f=c.get()}catch(h){return this._advance(!this._suppressFailures,
h)}if(void 0===f)return this._advance(!1,null);this._active=f.then(function(){b._advance(!1,null)}).catch(function(a){b._advance(!b._suppressFailures,a)})}else this._pending=c};d.prototype._advance=function(a,b){this._active=null;a&&(this._pending=null);null===this._pending?null!==this._idlePromise&&(a?this._idlePromise.reject(b):this._idlePromise.resolve(),this._idlePromise=null):(a=this._pending,this._pending=null,this.set(a))};d.prototype.clear=function(){this._pending=null};return d}();a.MostRecentlySetAction=
d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(){this._action=new a.MostRecentlySetAction(!0);this._latestPromise=null;this._timestamp=0}d.prototype.isIdle=function(){return null===this._latestPromise&&this._action.isIdle()};d.prototype.set=function(c){var b=this,f=++this._timestamp;null!==this._latestPromise&&this._latestPromise.reject(void 0);var h=a.OpenPromise.create();this._latestPromise=h;this._action.clear();this._action.waitForIdle().then(function(){f===b._timestamp&&b._action.set(function(){if(f===
b._timestamp){h===b._latestPromise&&(b._latestPromise=null);"function"===typeof c&&(c=a.Lazy.create(c));var d;try{d=c.get()}catch(e){return b._advance(h,!0,e)}return void 0===d?b._advance(h,!1,null):d.then(function(){return b._advance(h,!1,null)},function(a){return b._advance(h,!0,a)})}})});return h};d.prototype._advance=function(a,b,f){a===this._latestPromise&&(this._latestPromise=null);b?a.reject(f):a.resolve()};return d}();a.MostRecentlySetActionSync=d})(a.Internal||(a.Internal={}))})(Communicator||
(Communicator={}));(function(a){(function(a){(function(a){a.create=function(){var a,c,b=new Promise(function(b,h){a=b;c=h});b.resolve=a;b.reject=c;return b}})(a.OpenPromise||(a.OpenPromise={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(b,c,d){this._lazyPromise=b;this._wrapperPromise=c;null!==d&&(this.compareValue=d)}a.prototype.kill=function(){this._lazyPromise=null};a.prototype.fetch=function(a,b){var c=this;null===this._lazyPromise?(this._wrapperPromise.reject(null),setTimeout(b,0)):a(this._lazyPromise).then(function(a){c._wrapperPromise.resolve(a)}).catch(function(a){c._wrapperPromise.reject(a)})};return a}();a._DeferredPromise=d;var e=function(){function b(a,b,c){this._failed=
!1;this._failureError=null;this._activePromiseCount=0;this._idlePromise=null;this._latestPromise=Promise.resolve();this._needsResorting=!1;console.assert(0<a,"Don't create a non-progressible queue.");this._maxActivePromises=a;this._deferredPromises=b;this._failureFailsAll=c}b.prototype.isIdle=function(){return 0===this._activePromiseCount};b.prototype.waitForIdle=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){if(this.isIdle()){if(this._failureFailsAll&&
this._failed)throw this._failureError;return[2]}null===this._idlePromise&&(this._idlePromise=a.OpenPromise.create());return[2,this._idlePromise]})})};b.prototype.killDeferred=function(){for(var a=[];0<this._deferredPromises.length;){var b=this._dequeue();b.kill();a.push(b)}for(var c=0;c<a.length;c++)b=a[c],this._queue(b)};b.prototype._push=function(b,c){"function"===typeof b&&(b=a.Lazy.create(b));return this._latestPromise=b=this._activePromiseCount<this._maxActivePromises?this._immediatePromise(b):
this._deferPromise(b,c)};b.prototype._resort=function(){console.assert(this._needsResorting);this._needsResorting=!1;for(var a=[];0<this._deferredPromises.length;){var b=this._dequeue();a.push(b)}for(var c=0;c<a.length;c++)b=a[c],this._queue(b)};b.prototype._deferPromise=function(b,c){var e=a.OpenPromise.create();b=new d(b,e,c);this._queue(b);return e};b.prototype._immediatePromise=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(d){switch(d.label){case 0:if(this._failureFailsAll&&
this._failed)throw this._failureError;++this._activePromiseCount;d.label=1;case 1:return d.trys.push([1,3,,4]),[4,a.get()];case 2:return b=d.sent(),this._finalizePromise(),[2,b];case 3:throw c=d.sent(),this._failureFailsAll&&!this._failed&&(this._failed=!0,this._failureError=c,null!==this._idlePromise&&this._idlePromise.reject(c)),this._finalizePromise(),c;case 4:return[2]}})})};b.prototype._finalizePromise=function(){var a=this;--this._activePromiseCount;0<this._deferredPromises.length?(this._needsResorting&&
this._resort(),this._dequeue().fetch(function(b){return a._immediatePromise(b)},function(){a._finalizePromise()})):0===this._activePromiseCount&&(null!==this._idlePromise&&(this._failureFailsAll&&this._failed?this._idlePromise.reject(this._failureError):this._idlePromise.resolve(),this._idlePromise=null),this._latestPromise=Promise.resolve())};return b}();a.PromiseQueueImpl=e;var c=function(b){function c(f,d){return b.call(this,f,new a.Queue,d)||this}__extends(c,b);c.prototype._queue=function(a){this._deferredPromises.push(a)};
c.prototype._dequeue=function(){return this._deferredPromises.pop()};c.prototype.push=function(a){return this._push(a,null)};c.prototype.waitOnLatest=function(){return this._latestPromise.then(a.nop,a.nop)};return c}(e);a.PromiseQueue=c;e=function(b){function c(f,d,e){var p=this,p=new a.PriorityQueue(function(a,b){return d(a.compareValue,b.compareValue)});return p=b.call(this,f,p,e)||this}__extends(c,b);c.prototype._queue=function(a){this._deferredPromises.push(a)};c.prototype._dequeue=function(){return this._deferredPromises.pop()};
c.prototype.push=function(a,b){return this._push(a,b)};c.prototype.markDirty=function(){this._needsResorting=!0};return c}(e);a.PriorityPromiseQueue=e})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){a.create=function(){var a,c,b=new Promise(function(f,h){a=function(a){b.state=1;f(a)};c=function(a){b.state=2;h(a)}});b.state=0;b.resolve=a;b.reject=c;return b}})(a.TrackedOpenPromise||(a.TrackedOpenPromise={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){a.create=function(a,c){var b=new Promise(function(f,h){c.catch(h).then(function(){b.isReady=!0;f(a)})});b.unsafeValue=a;b.readyPromise=c;b.isReady=!1;return b}})(a.UnsafePromise||(a.UnsafePromise={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(c){function b(b,h,d,e){var g=c.call(this)||this;g._position=new a.Point2(b,h);g._modifiers=d;g._inputType=e;return g}__extends(b,c);b.prototype.getPosition=function(){return this._position.copy()};b.prototype.shiftDown=function(){return(this._modifiers&a.KeyModifiers.Shift)===a.KeyModifiers.Shift};b.prototype.altDown=function(){return(this._modifiers&a.KeyModifiers.Alt)===a.KeyModifiers.Alt};b.prototype.controlDown=function(){return(this._modifiers&a.KeyModifiers.Control)===
a.KeyModifiers.Control};b.prototype.commandDown=function(){return(this._modifiers&a.KeyModifiers.Command)===a.KeyModifiers.Command};b.prototype.getEventType=function(){return this._inputType};b.prototype.getModifiers=function(){return this._modifiers};return b}(g.InputEvent);g.MouseInputEventBase=d;var e=function(a){function b(b,h,d,e,g,l){b=a.call(this,b,h,g,l)||this;b._button=d;b._buttons=e;return b}__extends(b,a);b.prototype.getButton=function(){return this._button};b.prototype.getButtons=function(){return this._buttons};
return b}(d);g.MouseInputEvent=e;d=function(a){function b(b,h,d,e,g,l){b=a.call(this,b,h,g,l)||this;b._wheelDelta=d;b._buttons=e;return b}__extends(b,a);b.prototype.getWheelDelta=function(){return this._wheelDelta};b.prototype.getButtons=function(){return this._buttons};return b}(d);g.MouseWheelInputEvent=d})(a.Event||(a.Event={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function d(a){this._selection=a}d.prototype.getType=function(){return this._selection?this._selection.getSelectionType():a.SelectionType.None};d.prototype.getSelection=function(){return this._selection};d._createNull=function(){return new d(a.Selection.SelectionItem.create())};return d}();g.NodeSelectionEvent=d})(a.Event||(a.Event={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b,c,h,k,g){var p=d.call(this)||this;p._id=b;p._position=new a.Point2(c,h);p._buttons=k;p._inputType=g;return p}__extends(c,d);c.prototype.getId=function(){return this._id};c.prototype.getPosition=function(){return this._position};c.prototype.getEventType=function(){return this._inputType};c.prototype.getButtons=function(){return this._buttons};return c}(g.InputEvent);g.TouchInputEvent=d})(a.Event||(a.Event={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function a(){}a.calculate=function(a,b,f,h){var d=2/(b+2*f+h);a=a<=b?this._PA(a,d,b):a>=b&&a<=b+f?this._PA(a,d,b):this._PC(a,d,b,f,h);return a=Math.min(a,1)};a._PA=function(a,b,f){return a*a*.5*b/f};a._PB=function(a,b,f){return this._PA(f,b,f)+(a-f)*b};a._PC=function(a,b,f,h,d){return this._PB(f+h,b,f)+(a-(f+h))*b*(1-.5*(a-(f+h))/d)};return a}();a.EaseInEaseOut=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function d(c,b,f,h,e){this._startTime=this._completeCallback=null;this._progress=0;this._targetMoveDelta=this._positionMoveDelta=null;this._interpolationUsesRotation=!1;this._endQuaternion=this._beginQuaternion=null;this._fieldHeightDelta=this._fieldWidthDelta=this._viewVectorLengthDelta=this._viewVectorLength=0;this._beginCam=c.copy();this._endCam=b.copy();c=a.Point3.subtract(this._endCam.getTarget(),this._endCam.getPosition()).normalize();b=this._endCam.getUp().normalize();
b=a.Point3.cross(b,c);c=a.Point3.cross(c,b);this._endCam.setUp(c.normalize());this._completeCallback=h;this._duration=f;this._view=e}d.prototype.isComplete=function(){return 1<=this._progress};d.prototype.getCallback=function(){return this._completeCallback};d.prototype.stop=function(){};d.prototype.start=function(){this._startTime=Date.now();this._progress=0;this._init();this._view.getProjectionMode()!==this._endCam.getProjection()&&this._view.setProjectionMode(this._endCam.getProjection())};d.prototype.update=
function(){if(null!==this._startTime){var c=(Date.now()-this._startTime)/this._duration,c=Math.min(c,1),c=Math.max(c,0),c=g.EaseInEaseOut.calculate(c,.49,.02,.49),c=Math.min(c,1),c=Math.max(c,0),b=a.Point3.scale(this._positionMoveDelta,c),f=a.Point3.scale(this._targetMoveDelta,c),h=this._beginCam.getUp(),d=a.Point3.add(this._beginCam.getPosition(),b),f=a.Point3.add(this._beginCam.getTarget(),f),b=this._beginCam.getWidth()+c*this._fieldWidthDelta,e=this._beginCam.getHeight()+c*this._fieldHeightDelta;
if(this._interpolationUsesRotation){var d=this._viewVectorLength+this._viewVectorLengthDelta*c,p=a.Quaternion.interpolate(this._beginQuaternion,this._endQuaternion,c),p=a.Quaternion.toMatrix(p),d=new a.Point3(f.x-p.m[8]*d,f.y-p.m[9]*d,f.z-p.m[10]*d);h.set(p.m[4],p.m[5],p.m[6])}h=a.Camera.create(d,f,h,this._endCam.getProjection(),b,e,this._endCam.getNearLimit());this._view.setCamera(h);this._progress=c;1<=this._progress&&this._view.setCamera(this._endCam)}};d.prototype._init=function(){var c=a.Point3.subtract(this._beginCam.getTarget(),
this._beginCam.getPosition()),b=a.Point3.subtract(this._endCam.getTarget(),this._endCam.getPosition()),f=c.length(),h=b.length()-f;c.normalize();b.normalize();var b=a.Point3.subtract(c,b),d=a.Point3.subtract(this._endCam.getUp(),this._beginCam.getUp()),c=!0;1E-4>b.length()&&1E-4>d.length()&&(c=!1);d=b=null;if(c){var b=this._beginCam.getMatrixFromCamera(),d=this._endCam.getMatrixFromCamera(),b=a.Quaternion.createFromMatrix(b),d=a.Quaternion.createFromMatrix(d),e=a.Quaternion.subtract(b,d).magnitudeSquared();
a.Quaternion.add(b,d).magnitudeSquared()<e&&d.negate()}this._interpolationUsesRotation=c;this._beginQuaternion=b;this._endQuaternion=d;this._viewVectorLength=f;this._viewVectorLengthDelta=h;this._positionMoveDelta=a.Point3.subtract(this._endCam.getPosition(),this._beginCam.getPosition());this._targetMoveDelta=a.Point3.subtract(this._endCam.getTarget(),this._beginCam.getTarget());this._fieldWidthDelta=this._endCam.getWidth()-this._beginCam.getWidth();this._fieldHeightDelta=this._endCam.getHeight()-
this._beginCam.getHeight()};return d}();g.CameraInterpolation=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){var d=function(){function d(){this._activeInterpolation=null;this._updateTimer=new a.Timer;this._updateInterval=16}d.prototype.stop=function(){this._activeInterpolation&&this._activeInterpolation.stop();this._activeInterpolation=null;this._updateTimer.clear()};d.prototype.start=function(a,b){void 0===b&&(b=!0);if(this._activeInterpolation&&!b)return!1;this.stop();this._activeInterpolation=a;this._activeInterpolation.start();this.update();return!0};d.prototype.update=function(){var a=
this;if(this._activeInterpolation)if(this._activeInterpolation.update(),this._activeInterpolation.isComplete()){var b=this._activeInterpolation.getCallback();null!==b&&b()}else this._updateTimer.isIdle(0)&&this._updateTimer.set(this._updateInterval,function(){a.update()})};return d}();a.InterpolationManager=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(){this._positionOffset=a.Point2.zero();this._position=a.Point2.zero();this._activeNoteText=null;this._createTextBox()}c.prototype._createTextBox=function(){var b=this;this._container=document.createElement("div");this._container.className="noteTextElement";this._textArea=document.createElement("textarea");this._textArea.oninput=function(){null!==b._activeNoteText&&b._activeNoteText.saveTextValue()};this._container.appendChild(this._textArea);
var c=7;["blue","red","green","white","black"].forEach(function(h){var d=document.createElement("button");d.className="noteButton color "+h;d.style.top=c+"px";c+=25;d.id=h+"_button";var e;switch(h){case "blue":e=a.Color.blue();break;case "red":e=a.Color.red();break;case "green":e=a.Color.green();break;case "white":e=a.Color.white();break;case "black":e=a.Color.black();break;default:e=a.Color.white()}d.onmousedown=function(){null!==b._activeNoteText&&b._activeNoteText.setColor(e)};b._container.appendChild(d)});
var h=document.createElement("button");h.className="noteButton trash";h.style.top=c+"px";h.onmousedown=function(){null!==b._activeNoteText&&b._activeNoteText.remove()};this._container.appendChild(h)};c.prototype.setPositionOffset=function(a){this._positionOffset=a};c.prototype.getPositionOffset=function(){return this._positionOffset.copy()};c.prototype.setPosition=function(b){this._position=a.Point2.add(b,this._positionOffset);this._container.style.left=this._position.x+"px";this._container.style.top=
this._position.y+"px"};c.prototype.getPosition=function(){return this._position.copy()};c.prototype.setText=function(a){var c=this._container.querySelector("textarea");null!==c&&(c.value=a)};c.prototype.getText=function(){var a=this._container.querySelector("textarea");return null!==a?a.value:""};c.prototype.setSize=function(a){this._container.style.width=a.x+"px";this._container.style.height=a.y+"px"};c.prototype.getSize=function(){var b=this._container.getBoundingClientRect();return new a.Point2(b.width,
b.height)};c.prototype.focus=function(){this._textArea.focus();this._textArea.style.pointerEvents="auto"};c.prototype.blur=function(){this._container.blur()};c.prototype.hide=function(){this._container.style.visibility="hidden";this._activeNoteText=null};c.prototype.show=function(a){this._container.style.visibility="visible";this._activeNoteText=a};c.prototype.getHtmlContainer=function(){return this._container};c.prototype.setHtmlContainer=function(a){this._container=a};return c}();d.NoteTextElement=
e})(g.Note||(g.Note={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){return function(){this.rotate=this.viewPlane=this.plane=this.axis=null}}(),e=function(){return function(b,c,h,d,e){this.vector=c;this.matrix=h;this.nodeId=d;this.position=b;this.handleType=e;this.translation=a.Point3.zero()}}(),c=function(b){function c(f){var e=b.call(this)||this;e._meshIds=new d;e._scaleModifier=1;e._id=0;e._handleData=new Map;e._translationFromInitialHandlePosition=a.Point3.zero();e._viewer=f;e._callbacks={camera:function(){e._updateCamera()},
_assemblyTreeReady:function(){return __awaiter(e,void 0,void 0,function(){var a=this,b,c,f,h;return __generator(this,function(d){this._updateViewport();this._hideOverlay();b=this._createMeshId(this._getAxisMeshData()).then(function(b){a._meshIds.axis=b});c=this._createMeshId(this._getPlaneMeshData()).then(function(b){a._meshIds.plane=b});f=this._createMeshId(this._getViewPlaneMeshData()).then(function(b){a._meshIds.viewPlane=b});h=this._createMeshId(this._getRotateMeshData()).then(function(b){a._meshIds.rotate=
b});b;c;f;h;return[2]})})},modelSwitchStart:function(){e.removeHandles()}};e._viewer.setCallbacks(e._callbacks);return e}__extends(c,b);c.prototype.remove=function(){null!==this._callbacks&&(this._viewer.unsetCallbacks(this._callbacks),this._callbacks=null);b.prototype.remove.call(this)};c.prototype._getAxisMeshData=function(){return a.Internal.generateConeCylinderMeshData(c._cylinderRadius,c._segmentCount,c._cylinderHeight,c._coneBaseRadius,c._capHeight,c._taperHeight)};c.prototype._getPlaneMeshData=
function(){var b=new a.Point3(c._planeOffset,0,c._planeOffset),d=new a.Point3(c._planeOffset+c._planeLength,0,c._planeOffset),e=new a.Point3(c._planeOffset+c._planeLength,0,c._planeOffset+c._planeLength),g=new a.Point3(c._planeOffset,0,c._planeOffset+c._planeLength),l=[b.x,b.y,b.z,d.x,d.y,d.z,e.x,e.y,e.z,b.x,b.y,b.z,e.x,e.y,e.z,g.x,g.y,g.z],m=new a.Point3(0,-1,0),m=[m.x,m.y,m.z,m.x,m.y,m.z,m.x,m.y,m.z,m.x,m.y,m.z,m.x,m.y,m.z,m.x,m.y,m.z],n=new a.MeshData;n.addFaces(l,m);n.setBackfacesEnabled(!0);
n.addPolyline([b.x,b.y,b.z,d.x,d.y,d.z]);n.addPolyline([d.x,d.y,d.z,e.x,e.y,e.z]);n.addPolyline([e.x,e.y,e.z,g.x,g.y,g.z]);n.addPolyline([g.x,g.y,g.z,b.x,b.y,b.z]);return n};c.prototype._getViewPlaneMeshData=function(){return a.Internal.generateSphereMeshData()};c.prototype._getRotateMeshData=function(b,c,f){void 0===b&&(b=35);void 0===c&&(c=12);void 0===f&&(f=.5);var d=b*Math.PI/180*.5;b=[];for(var e=-d;e<=d;e+=.1){var g=Math.sin(e)*c;b.push(Math.cos(e)*c);b.push(0);b.push(g)}c=new a.Point3(0,0,
1);f=a.Internal.createCylinderFromArc(b,c,10,f);f.setBackfacesEnabled(!0);return f};c.prototype.setAxisMeshData=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return null!==this._meshIds.axis?[3,2]:[4,this._createMeshId(a)];case 1:return b=c.sent(),this._meshIds.axis=b,[3,3];case 2:return[2,this._viewer.model.replaceMesh(this._meshIds.axis,a)];case 3:return[2]}})})};c.prototype.setPlaneMeshData=function(a){return __awaiter(this,
void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return null!==this._meshIds.plane?[3,2]:[4,this._createMeshId(a)];case 1:return b=c.sent(),this._meshIds.plane=b,[3,3];case 2:return[2,this._viewer.model.replaceMesh(this._meshIds.plane,a)];case 3:return[2]}})})};c.prototype.setViewPlaneMeshData=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return null!==this._meshIds.viewPlane?[3,
2]:[4,this._createMeshId(a)];case 1:return b=c.sent(),this._meshIds.viewPlane=b,[3,3];case 2:return[2,this._viewer.model.replaceMesh(this._meshIds.viewPlane,a)];case 3:return[2]}})})};c.prototype.setRotateMeshData=function(a){return __awaiter(this,void 0,void 0,function(){var b;return __generator(this,function(c){switch(c.label){case 0:return null!==this._meshIds.rotate?[3,2]:[4,this._createMeshId(a)];case 1:return b=c.sent(),this._meshIds.rotate=b,[3,3];case 2:return[2,this._viewer.model.replaceMesh(this._meshIds.rotate,
a)];case 3:return[2]}})})};c.prototype.getOverlayId=function(){return a.BuiltinOverlayIndex.Handles};c.prototype._hideOverlay=function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.Handles,!1)};c.prototype.hideOverlay=function(){this._hideOverlay();return Promise.resolve()};c.prototype._showOverlay=function(){this._viewer.overlayManager.setVisibility(a.BuiltinOverlayIndex.Handles,!0);this._updateCamera()};c.prototype.showOverlay=function(){this._showOverlay();return Promise.resolve()};
c.prototype._updateViewport=function(){this._viewer.overlayManager.setViewport(a.BuiltinOverlayIndex.Handles,a.OverlayAnchor.UpperLeftCorner,0,a.OverlayUnit.ProportionOfCanvas,0,a.OverlayUnit.ProportionOfCanvas,1,a.OverlayUnit.ProportionOfCanvas,1,a.OverlayUnit.ProportionOfCanvas)};c.prototype.updateViewport=function(){this._updateViewport();return Promise.resolve()};c.prototype.addHandles=function(b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(f){switch(f.label){case 0:return this._scaleModifier=
c,this._translationFromInitialHandlePosition.assign(a.Point3.zero()),[4,this.createDefaultHandles(b)];case 1:return f.sent(),this._showOverlay(),[2]}})})};c.prototype._updateCamera=function(){this._viewer.overlayManager.setCamera(a.BuiltinOverlayIndex.Handles,this._viewer.view.getCamera())};c.prototype.getVector=function(a){return(a=this._handleData.get(a))?(a=a.vector,null===a?null:a.copy()):null};c.prototype.getHandleType=function(a){return(a=this._handleData.get(a))?a.handleType:null};c.prototype.getPosition=
function(a){if(a=this._handleData.get(a)){var b=a.translation.copy();return a.position.copy().add(this._translationFromInitialHandlePosition).add(b)}return null};c.prototype.getHandleNodeIds=function(){var a=[];this._handleData.forEach(function(b,c){a.push(c)});return a};c.prototype.removeHandles=function(){this._viewer.model.deleteMeshInstances(this.getHandleNodeIds());this._handleData.clear();this._id=0;this._hideOverlay();return Promise.resolve()};c.prototype.isEmpty=function(){return 0===this._handleData.size};
c.prototype.createDefaultHandles=function(b){return __awaiter(this,void 0,void 0,function(){var d;return __generator(this,function(e){switch(e.label){case 0:return d=[],d.push(this.addViewPlaneHandle(b,c._viewPlaneColor)),d.push(this.addAxisTranslationHandle(b,new a.Point3(1,0,0),c._xColor,new a.Point3(0,1,0))),d.push(this.addAxisTranslationHandle(b,new a.Point3(0,1,0),c._yColor,new a.Point3(0,0,1))),d.push(this.addAxisTranslationHandle(b,new a.Point3(0,0,1),c._zColor,new a.Point3(1,0,0))),d.push(this.addPlaneTranslationHandle(b,
new a.Point3(1,0,0),c._xColor,a.Color.black(),new a.Point3(0,-1,0))),d.push(this.addPlaneTranslationHandle(b,new a.Point3(0,1,0),c._yColor,a.Color.black(),new a.Point3(0,0,-1))),d.push(this.addPlaneTranslationHandle(b,new a.Point3(0,0,1),c._zColor,a.Color.black(),new a.Point3(-1,0,0))),d.push(this.addRotateHandle(b,new a.Point3(1,0,0),c._xColor,new a.Point3(0,-1,0))),d.push(this.addRotateHandle(b,new a.Point3(0,1,0),c._yColor,new a.Point3(0,0,-1))),d.push(this.addRotateHandle(b,new a.Point3(0,0,1),
c._zColor,new a.Point3(-1,0,0))),[4,Promise.all(d)];case 1:return e.sent(),[2]}})})};c.prototype._createMeshId=function(a){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(f){switch(f.label){case 0:return b=this._viewer.model,[4,b.createMesh(a)];case 1:return c=f.sent(),b._preventMeshDeletion(c),[2,c]}})})};c.prototype.addAxisTranslationHandle=function(b,c,f,d){return __awaiter(this,void 0,void 0,function(){var g,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return(g=
this._meshIds.axis)?[3,2]:[4,this._createMeshId(this._getAxisMeshData())];case 1:return g=t.sent(),this._meshIds.axis=g,[2,this.addAxisTranslationHandle(b,c,f,d)];case 2:return m="handle-axis-translation-"+this._id++,n=this._getRotationMatrixFromVector(c,d),[4,this._createMeshInstance(g,m,f,null,b.copy(),n)];case 3:return r=t.sent(),this._handleData.set(r,new e(b.copy(),c.copy(),n.copy(),r,a.HandleType.Axis)),[2,r]}})})};c.prototype.addViewPlaneHandle=function(b,c){return __awaiter(this,void 0,void 0,
function(){var f,d;return __generator(this,function(g){switch(g.label){case 0:return(f=this._meshIds.viewPlane)?[3,2]:[4,this._createMeshId(this._getViewPlaneMeshData())];case 1:return f=g.sent(),this._meshIds.viewPlane=f,[2,this.addViewPlaneHandle(b,c)];case 2:return[4,this._createMeshInstance(f,"handle-sphere-instance",c,null,b,new a.Matrix)];case 3:return d=g.sent(),this._handleData.set(d,new e(b.copy(),null,new a.Matrix,d,a.HandleType.ViewPlane)),[2,d]}})})};c.prototype.addPlaneTranslationHandle=
function(b,c,f,d,g){return __awaiter(this,void 0,void 0,function(){var m,n,r,t;return __generator(this,function(u){switch(u.label){case 0:return(m=this._meshIds.plane)?[3,2]:[4,this._createMeshId(this._getPlaneMeshData())];case 1:return m=u.sent(),this._meshIds.plane=m,[2,this.addPlaneTranslationHandle(b,c,f,d,g)];case 2:return n="handle-plane-translation-"+this._id++,r=this._getRotationMatrixFromVector(c,g),[4,this._createMeshInstance(m,n,f,d,b,r)];case 3:return t=u.sent(),this._handleData.set(t,
new e(b.copy(),c.copy(),r.copy(),t,a.HandleType.Plane)),[2,t]}})})};c.prototype.addRotateHandle=function(b,c,f,d){return __awaiter(this,void 0,void 0,function(){var g,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return(g=this._meshIds.rotate)?[3,2]:[4,this._createMeshId(this._getRotateMeshData())];case 1:return g=t.sent(),this._meshIds.rotate=g,[2,this.addRotateHandle(b,c,f,d)];case 2:return m="handle-rotate-"+this._id++,n=this._getRotationMatrixFromVector(c,d),[4,this._createMeshInstance(g,
m,f,null,b,n)];case 3:return r=t.sent(),this._handleData.set(r,new e(b.copy(),c.copy(),n.copy(),r,a.HandleType.Rotate)),[2,r]}})})};c.prototype._getRotationMatrixFromVector=function(b,c){c||(c=new a.Point3(1,0,0),.001>a.Point3.cross(c,b).squaredLength()&&(c=new a.Point3(0,1,0)));c=a.Point3.cross(c,b).normalize();var f=a.Point3.cross(c,b).normalize();b.normalize();var d=new a.Matrix;d.m[0]=c.x;d.m[1]=c.y;d.m[2]=c.z;d.m[3]=0;d.m[4]=b.x;d.m[5]=b.y;d.m[6]=b.z;d.m[7]=0;d.m[8]=f.x;d.m[9]=f.y;d.m[10]=f.z;
d.m[11]=0;d.m[12]=0;d.m[13]=0;d.m[14]=0;d.m[15]=1;return d};c.prototype._createMeshInstance=function(b,c,f,d,e,g){return __awaiter(this,void 0,void 0,function(){var n,r,t;return __generator(this,function(u){n=this._createTransformationMatrix(e,new a.Matrix);n=a.Matrix.multiply(g,n);r=new a.MeshInstanceData(b,n,c,f||void 0,d||void 0);r.setOpacity(1);r.setCreationFlags(a.MeshInstanceCreationFlags.SuppressCameraScale|a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.ExcludeBounding|
a.MeshInstanceCreationFlags.DoNotXRay|a.MeshInstanceCreationFlags.OverrideSceneVisibility|a.MeshInstanceCreationFlags.AlwaysDraw);r.setOverlayIndex(a.BuiltinOverlayIndex.Handles);t=this._viewer.model;return[2,t.createMeshInstance(r,void 0,!0,!0)]})})};c.prototype._createTransformationMatrix=function(b,d){var e=c._defaultScale*this._scaleModifier,e=(new a.Matrix).setScaleComponent(e,e,e),e=a.Matrix.multiply(e,d);e.setTranslationComponent(b.x,b.y,b.z);return e};c.prototype.updatePosition=function(b,
c,f){return __awaiter(this,void 0,void 0,function(){var d=this,e,g;return __generator(this,function(n){switch(n.label){case 0:return e=this._viewer.model,g=[],this._handleData.forEach(function(n,t){var u=n.matrix,v=n.position.copy();v.add(b.copy());f&&n.position.assign(v);n=n.translation.copy();v.add(n);u=d._createTransformationMatrix(v,a.Matrix.multiply(u,c));g.push(e.setNodeMatrix(t,u))}),[4,Promise.all(g)];case 1:return n.sent(),[2]}})})};c.prototype.resetTranslation=function(){var b=this;this._translationFromInitialHandlePosition&&
(this._handleData.forEach(function(a){a.translation.add(b._translationFromInitialHandlePosition)}),this._translationFromInitialHandlePosition.assign(a.Point3.zero()))};c.prototype.getTranslation=function(){return this._translationFromInitialHandlePosition};c.className="Communicator.Markup.HandleMarkup";c._defaultScale=.02;c._cylinderRadius=.5;c._coneBaseRadius=.9;c._cylinderHeight=7;c._capHeight=1.2;c._taperHeight=.2;c._segmentCount=20;c._planeOffset=1;c._planeLength=2.5;c._xColor=new a.Color(168,
56,59);c._yColor=new a.Color(96,166,50);c._zColor=new a.Color(41,81,185);c._viewPlaneColor=a.Color.white();return c}(g.MarkupItem);g.HandleMarkup=c})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function d(a,b,f){this._markupItems=new Map;this._selectedMarkup=this._activeView=null;this._pendingUpdateHandleTimer=new g.Timer;this._callbackManager=a;this._domElements=b;this._markupRenderer=f}d.prototype.shutdown=function(){this.setActiveView(null);this._markupItems.forEach(function(a){a.remove()});this._markupItems.clear()};d.prototype._updateLater=function(a){var b=this;this._pendingUpdateHandleTimer.isIdle(0)&&this._pendingUpdateHandleTimer.set(0,
function(){b.update()});null!==a&&this._pendingUpdateHandleTimer.waitForIdle(1).then(function(){a.resolve()})};d.prototype.updateLater=function(){this._updateLater(null)};d.prototype.update=function(){this._pendingUpdateHandleTimer.clear();this.renderMarkup();this.renderActiveViewMarkup()};d.prototype.registerMarkupItem=function(c){var b=a.GUID.create();this._markupItems.set(b,c);return b};d.prototype.unregisterMarkupItem=function(a){var b=this._markupItems.get(a);b&&(b.remove&&b.remove(),this._markupItems.delete(a))};
d.prototype.getActiveView=function(){return this._activeView};d.prototype.setActiveView=function(a){return __awaiter(this,void 0,void 0,function(){var b,f,d,e,q,p;return __generator(this,function(l){switch(l.label){case 0:this._selectedMarkup&&(this._selectedMarkup.onDeselect(),this._selectedMarkup=null);b=this._activeView;this._activeView=a;if(null===b||b===a)return[3,2];f=b.getMarkup();d=0;for(e=f;d<e.length;d++)q=e[d],q.remove();p=g.OpenPromise.create();this._updateLater(p);return[4,p];case 1:return l.sent(),
this._callbackManager.trigger("viewDeactivated",b),[3,4];case 2:return[4,this._pendingUpdateHandleTimer.waitForIdle(1)];case 3:l.sent(),l.label=4;case 4:return[2]}})})};d.prototype.renderMarkup=function(){this._markupRenderer._setCanvas(this._domElements.getMarkupSvgElement());this._markupRenderer._clear();this._markupItems.forEach(function(a){a.draw()});this._markupRenderer._finalize()};d.prototype.renderActiveViewMarkup=function(){this._markupRenderer._setCanvas(this._domElements.getRedlineSvgElement());
this._markupRenderer._clear();if(this._activeView){for(var a=0,b=this._activeView.getMarkup();a<b.length;a++)b[a].draw();this._markupRenderer._finalize()}};d.prototype.pick=function(a){if(this._activeView)for(var b=0,f=this._activeView.getMarkup();b<f.length;b++){var d=f[b];if(d.hit(a))return d}var e=null;this._markupItems.forEach(function(b){null===e&&b.hit(a)&&(e=b)});return e};d.prototype.select=function(a){if(this._selectedMarkup&&a!==this._selectedMarkup)this._selectedMarkup.onDeselect();if(this._selectedMarkup=
a)this._selectedMarkup.onSelect();this.update()};d.prototype.getSelected=function(){return this._selectedMarkup};return d}();g.MarkupItemManager=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(b){function c(){var f=null!==b&&b.apply(this,arguments)||this;f._center=a.Point2.zero();f._radius=1;return f}__extends(c,b);c.prototype.set=function(a,b){this._center.assign(a);this.setRadius(b)};c.prototype.getCenter=function(){return this._center.copy()};c.prototype.setCenter=function(a){this._center.assign(a)};c.prototype.getRadius=function(){return this._radius};c.prototype.setRadius=function(a){this._radius=a};return c}(d.FilledShape);d.Circle=
e;var c=function(){return function(a,c){this.center=a.copy();this.radius=c}}();d._MarkupCircleData=c;e=function(a){function f(){var c=null!==a&&a.apply(this,arguments)||this;c._circles=[];return c}__extends(f,a);f.prototype.clear=function(){this._circles=[]};f.prototype.addCircle=function(a,b){this._circles.push(new c(a,b))};f.prototype.getCircles=function(){return this._circles};return f}(d.FilledShape);d.CircleCollection=e})(g.Shape||(g.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){(function(d){var e=function(b){function c(f,d){var e=b.call(this)||this;e._p1=f?f.copy():a.Point2.zero();e._p2=d?d.copy():a.Point2.zero();return e}__extends(c,b);c.prototype.set=function(a,b){this._p1.assign(a);this._p2.assign(b)};c.prototype.getP1=function(){return this._p1.copy()};c.prototype.setP1=function(a){this._p1.assign(a)};c.prototype.getP2=function(){return this._p2};c.prototype.setP2=function(a){this._p2.assign(a)};return c}(d.EndcapShape);d.Line=e;var c=function(){return function(a,
c){this.p1=a.copy();this.p2=c.copy()}}();d._MarkupLineData=c;e=function(a){function f(){var c=null!==a&&a.apply(this,arguments)||this;c._lines=[];return c}__extends(f,a);f.prototype.addLine=function(a,b){this._lines.push(new c(a,b))};f.prototype.getLines=function(){return this._lines};f.prototype.clear=function(){this._lines=[]};return f}(d.EndcapShape);d.LineCollection=e})(g.Shape||(g.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function b(){this._padding=5;this._text=new d.TextMarkupBase;this._box=new d.RectangleBase;this._box.setFillOpacity(0);this._box.setFillColor(a.Color.white())}b.prototype._assign=function(a){this._text._assign(a._text);this._box._assign(a._box);this._padding=a._padding};b.prototype.getTextPortion=function(){return this._text};b.prototype.getBoxPortion=function(){return this._box};b.prototype.getPadding=function(){return this._padding};b.prototype.setPadding=
function(a){this._padding=a};return b}();d.TextBoxBase=e;var c=function(b){function c(f,d){var e=b.call(this)||this;e._position=a.Point2.zero();e._textStr="";f&&e._position.assign(f);d&&(e._textStr=d);return e}__extends(c,b);c.prototype._assign=function(a){b.prototype._assign.call(this,a);this._position.assign(a._position)};c.prototype.getPosition=function(){return this._position.copy()};c.prototype.setPosition=function(a){this._position.assign(a)};c.prototype.getTextString=function(){return this._textStr};
c.prototype.setTextString=function(a){this._textStr=a};return c}(e);d.TextBox=c;e=function(a){function c(){var f=null!==a&&a.apply(this,arguments)||this;f._textStrings=[];return f}__extends(c,a);c.prototype.clear=function(){this._textStrings=[]};c.prototype.addString=function(a,b){this._textStrings.push(new d._MarkupTextData(a,b))};c.prototype.getStrings=function(){return this._textStrings};return c}(e);d.TextBoxCollection=e})(g.Shape||(g.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){var d=function(){return function(a,b){this.markupView=a;this.itemResults=b}}();g._MarkupViewConstruction=d;var e=function(){function c(a,c,d,e,g,p){void 0===p&&(p=null);this._faceVisibility=this._lineVisibility=!0;this._markupItems=[];this._sheetId=null;this._uniqueId=a;this._camera=d;this._name=c;this._explodeMagnitude=e;this._cuttingPlaneData=g;this._sheetId=p}c.prototype.getCamera=function(){return this._camera};c.prototype.getSheetId=function(){return this._sheetId};c.prototype.getUniqueId=
function(){return this._uniqueId};c.prototype.getName=function(){return this._name};c.prototype.setName=function(a){this._name=a};c.prototype.getLineVisibility=function(){return this._lineVisibility};c.prototype.setLineVisibility=function(a){this._lineVisibility=a};c.prototype.getFaceVisibility=function(){return this._faceVisibility};c.prototype.setFaceVisibility=function(a){this._faceVisibility=a};c.prototype.addMarkupItem=function(a){this._markupItems.push(a)};c.prototype.getMarkup=function(){return this._markupItems.slice()};
c.prototype.removeMarkup=function(a){for(var c=0;c<this._markupItems.length;c++)if(this._markupItems[c]===a)return this._markupItems.splice(c,1),!0;return!1};c.prototype.getCuttingPlaneData=function(){return this._cuttingPlaneData};c.prototype.setCuttingPlaneData=function(a){this._cuttingPlaneData=a};c.prototype.getExplodeMagnitude=function(){return this._explodeMagnitude};c.prototype.setExplodeMagnitude=function(a){this._explodeMagnitude=a};c.prototype._handleLoadMarkupItem=function(a){return a instanceof
g.MarkupItem?(this.addMarkupItem(a),!0):!1};c._construct=function(b,f){return __awaiter(this,void 0,void 0,function(){var h,e,g,p,l,m,n,r,t,u,v;return __generator(this,function(w){switch(w.label){case 0:h=a.Camera.fromJson(b.camera);b.hasOwnProperty("sheetId")&&b.sheetId&&(g=parseInt(b.sheetId,10),isNaN(g)||(e=g));p=new c(b.uniqueId,b.name,h,b.explodeMagnitude,b.cuttingData,e);p.setLineVisibility(b.lineVisibility);p.setFaceVisibility(b.faceVisibility);l=[];console.assert(b.markup instanceof Array);
m=0;for(n=b.markup;m<n.length;m++)if(r=n[m],t=a.Internal.classFromString(r.className))u=t.fromJson(r,f),u instanceof Promise?l.push(u.then(function(a){return p._handleLoadMarkupItem(a)})):l.push(Promise.resolve(p._handleLoadMarkupItem(u)));return[4,Promise.all(l)];case 1:return v=w.sent(),[2,new d(p,v)]}})})};c.prototype.toJson=function(){for(var a={uniqueId:this._uniqueId,name:this._name,camera:this._camera.toJson(),cuttingData:this._cuttingPlaneData,explodeMagnitude:this._explodeMagnitude,lineVisibility:this._lineVisibility,
faceVisibility:this._faceVisibility,markup:[],sheetId:this._sheetId},c=0,d=this._markupItems;c<d.length;c++){var e=d[c],g=e.toJson();g.className=e.getClassName();a.markup.push(g)}return a};c.prototype.forJson=function(){return this.toJson()};return c}();g.MarkupView=e})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a,c,h,k,g,p){var l=d.call(this)||this;l._markupViews=new Map;l._defaultViewCounter=1;l._markupItemManager=c;l._callbackManager=h;l._explodeManager=k;l._cuttingManager=g;l._viewer=a;l._sheetManager=p;l._initEvents();return l}__extends(c,d);c.prototype._initEvents=function(){var a=this;this._callbackManager.bind({modelSwitchStart:function(){a._markupItemManager.shutdown()}})};c.prototype.getView=function(a){a=this._markupViews.get(a);return void 0!==
a?a:null};c.prototype.getViewKeys=function(){var a=[];this._markupViews.forEach(function(c,d){c;a.push(d)});return a};c.prototype.loadData=function(b){return __awaiter(this,void 0,void 0,function(){var c=this,d,e,q,p,l;return __generator(this,function(m){d=[];e=0;for(q=b;e<q.length;e++)p=q[e],l=a.Markup.MarkupView._construct(p,this._viewer).then(function(a){if(!g.all(a.itemResults))return!1;a=a.markupView;var b=a.getUniqueId();return c._markupViews.has(b)?!1:(c._markupViews.set(b,a),c._callbackManager.trigger("viewLoaded",
a),!0)}),d.push(l);return[2,Promise.all(d)]})})};c.prototype.exportMarkup=function(){var a=[];this._markupViews.forEach(function(c){a.push(c.toJson())});return a};c.prototype.createView=function(b,c,d){void 0===b&&(b=this._createDefaultViewName());void 0===c&&(c=!0);void 0===d&&(d=null);var e=this._viewer.view,g=a.GUID.create();b=new a.Markup.MarkupView(g,b,e.getCamera(),this._explodeManager.getMagnitude(),this._cuttingManager.toJson(),d);this._markupViews.set(g,b);b.setLineVisibility(e.getLineVisibility());
b.setFaceVisibility(e.getFaceVisibility());this._markupItemManager.setActiveView(b);c&&this._callbackManager.trigger("viewCreated",b);return b};c.prototype._activateSheet=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){return null!==a?[2,this._sheetManager.setActiveSheetId(a,!0,!1)]:[2]})})};c.prototype._activateViewImpl=function(a,c){return __awaiter(this,void 0,void 0,function(){var d;return __generator(this,function(e){switch(e.label){case 0:return[4,
this._activateSheet(a.getSheetId())];case 1:return e.sent(),d=this._viewer.view,d.setFaceVisibility(a.getFaceVisibility()),d.setLineVisibility(a.getLineVisibility()),0<c?[4,this._markupItemManager.setActiveView(null)]:[3,4];case 2:return e.sent(),[4,d._setCameraPromise(a.getCamera(),c)];case 3:return e.sent(),[3,5];case 4:d.setCamera(a.getCamera()),e.label=5;case 5:return[4,this._setActiveView(a)];case 6:return e.sent(),[2]}})})};c.prototype._activateView=function(a,c){a=this._markupViews.get(a);
return void 0!==a?(c=this._activateViewImpl(a,c),g.UnsafePromise.create(!0,c)):g.UnsafePromise.create(!1,Promise.resolve())};c.prototype.activateView=function(b,c){void 0===c&&(c=a.DefaultTransitionDuration);return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._activateView(b,c)]})})};c.prototype.deprecatedActivateView=function(b,c){void 0===c&&(c=a.DefaultTransitionDuration);return this._activateView(b,c).unsafeValue};c.prototype._setActiveView=function(a){return __awaiter(this,
void 0,void 0,function(){return __generator(this,function(c){switch(c.label){case 0:return[4,this._markupItemManager.setActiveView(a)];case 1:return c.sent(),[4,this._cuttingManager.fromJson(a.getCuttingPlaneData())];case 2:return c.sent(),[2,this._explodeManager.setMagnitude(a.getExplodeMagnitude())]}})})};c.prototype.deleteView=function(a){var c=this._markupViews.get(a);return void 0!==c?(this._callbackManager.trigger("viewDeleted",c),c===this._markupItemManager.getActiveView()&&this._markupItemManager.setActiveView(null),
this._markupViews.delete(a),!0):!1};c.prototype._createDefaultViewName=function(){return"View "+this._defaultViewCounter++};c.prototype.toJson=function(){return this.exportMarkup()};c.prototype.forJson=function(){return this.toJson()};return c}(a.MarkupTypeManager);g.MarkupViewManager=d})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b,d,e,g,p){void 0===d&&(d=null);void 0===e&&(e=null);void 0===g&&(g=null);void 0===p&&(p=null);var l=c.call(this)||this;l._uniqueId=a.GUID.create();l._lineMeshId=null;l._lineMeshInstanceId=null;l._lineColor=a.Color.red();l._lineOpacity=1;l._viewer=b;l._firstPoint=d;l._secondPoint=e;l._firstNodeId=g;l._secondNodeId=p;return l}__extends(b,c);b.prototype.setLineColor=function(a){this._lineColor=a};b.prototype.getLineColor=function(){return this._lineColor};
b.prototype.setLineOpacity=function(a){this._lineOpacity=a};b.prototype.getLineOpacity=function(){return this._lineOpacity};b.prototype.setLinePattern=function(a,b,c){this._linePattern=a;this._linePatternLength=b;this._linePatternLengthUnit=c};b.prototype.getLinePattern=function(){return void 0!==this._linePattern?this._linePattern:null};b.prototype.getLinePatternLength=function(){return void 0!==this._linePatternLength?this._linePatternLength:null};b.prototype.getLinePatternLengthUnit=function(){return void 0!==
this._linePatternLengthUnit?this._linePatternLengthUnit:null};b.prototype.setFirstPoint=function(a){this._firstPoint=a};b.prototype.getFirstPoint=function(){return this._firstPoint};b.prototype.setSecondPoint=function(a){this._secondPoint=a};b.prototype.getSecondPoint=function(){return this._secondPoint};b.prototype.setFirstNodeId=function(a){this._firstNodeId=a};b.prototype.getFirstNodeId=function(){return this._firstNodeId};b.prototype.setSecondNodeId=function(a){this._secondNodeId=a};b.prototype.getSecondNodeId=
function(){return this._secondNodeId};b.prototype.getNodeId=function(){return this._lineMeshInstanceId};b.prototype.removeLine=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return a=this._viewer.model,null===this._lineMeshInstanceId?[3,3]:[4,a.deleteMeshInstances([this._lineMeshInstanceId])];case 1:return b.sent(),this._lineMeshInstanceId=null,null===this._lineMeshId?[3,3]:[4,a.deleteMeshes([this._lineMeshId])];case 2:b.sent(),
this._lineMeshId=null,b.label=3;case 3:return[2]}})})};b.prototype.updateLine=function(){return __awaiter(this,void 0,void 0,function(){var b,c,d,e,g;return __generator(this,function(l){switch(l.label){case 0:return[4,this.removeLine()];case 1:l.sent();if(null===this._firstPoint||null===this._secondPoint)return[3,4];b=new a.MeshData;b.addPolyline([this._firstPoint.x,this._firstPoint.y,this._firstPoint.z,this._secondPoint.x,this._secondPoint.y,this._secondPoint.z]);c=this._viewer.model;return[4,c.createMesh(b)];
case 2:return this._lineMeshId=d=l.sent(),e=new a.MeshInstanceData(d),e.setLineColor(this._lineColor),e.setLineOpacity(this._lineOpacity),e.setCreationFlags(a.MeshInstanceCreationFlags.ExcludeBounding),[4,c.createMeshInstance(e)];case 3:g=l.sent(),void 0!==this._linePattern&&c.setNodesLinePattern([g],this._linePattern,this._linePatternLength,this._linePatternLengthUnit),this._lineMeshInstanceId=g,l.label=4;case 4:return[2]}})})};b.prototype.getId=function(){return this._uniqueId};b.prototype.setId=
function(a){this._uniqueId=a};b.prototype.getClassName=function(){return b.className};b.prototype.toJson=function(){return{className:this.getClassName(),uniqueId:this._uniqueId,firstPoint:this.getFirstPoint(),secondPoint:this.getSecondPoint(),firstNodeId:this.getFirstNodeId(),secondNodeId:this.getSecondNodeId(),lineColor:this.getLineColor(),lineOpacity:this.getLineOpacity(),linePattern:this.getLinePattern(),linePatternLength:this.getLinePatternLength(),linePatternLengthUnit:this.getLinePatternLengthUnit()}};
b.fromJson=function(c,d){return __awaiter(this,void 0,void 0,function(){var e;return __generator(this,function(g){e=new b(d,a.Point3.fromJson(c.firstPoint),a.Point3.fromJson(c.secondPoint),c.firstNodeId,c.secondNodeId);e.setId(c.uniqueId);e.setLineColor(a.Color.fromJson(c.lineColor));e.setLineOpacity(c.lineOpacity);e.setLinePattern(c.linePattern,c.linePatternLength,c.linePatternLengthUnit);return[2,e]})})};b.className="Communicator.Markup.Line.LineMarkup";return b}(g.MarkupItem);d.LineMarkup=e})(g.Line||
(g.Line={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(a){var b=c.call(this)||this;b._stage=0;b._finalized=!1;b._uniqueId="";b._positions=[];b._name="";b._measurementValue=0;b._unitMultiplier=1;b._textShape=new g.Shape.TextBox;b._visibility=!0;b._positions=[];b._lineShapes=[];b._viewer=a;return b}__extends(b,c);b.prototype.getName=function(){return this._name};b.prototype.setName=function(a){this._name=a};b.prototype._getStage=function(){return this._stage};b.prototype._nextStage=function(){this._stage++};
b.prototype._setId=function(a){this._uniqueId=a};b.prototype._getId=function(){return this._uniqueId};b.prototype.adjust=function(a){a};b.prototype._isFinalized=function(){return this._finalized};b.prototype.update=function(){};b.prototype.draw=function(){this.update()};b.prototype.setVisibility=function(a){this._visibility=a;this.draw();var b=this._viewer._getCallbackManager();a?b.trigger("measurementShown",this):b.trigger("measurementHidden",this)};b.prototype.getVisibility=function(){return this._visibility};
b.prototype.toJson=function(){return{}};b.prototype.forJson=function(){return this.toJson()};b.prototype.getMeasurementValue=function(){return this._measurementValue};b.prototype.getUnitMultiplier=function(){return this._unitMultiplier};b.prototype.setMeasurementText=function(a){this._textShape.setTextString(a)};b.prototype.getMeasurementText=function(){return this._textShape.getTextString()};b.prototype._setMeasurementValue=function(b){this._measurementValue=b/this._unitMultiplier;this.setMeasurementText(a.MeasureUtils.formatWithUnit(this._measurementValue,
this._unitMultiplier));this._viewer._getCallbackManager().trigger("measurementValueSet",this)};b._serializePointArray=function(a){for(var b=[],c=0;c<a.length;c++)b.push(a[c].toJson());return b};b._constructPointArray=function(b){for(var c=[],d=0;d<b.length;d++){var e=a.Point3.fromJson(b[d]);c.push(e)}return c};return b}(g.MarkupItem);d.MeasureMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(d){var e=function(c){function b(b){var d=c.call(this,b)||this;d._lineEdgeShape=new a.Shape.Polyline;d._linePositions=[];d._name="MeasureLength";d._positions=[];d._lineShapes=[];d._lineEdgeShape.setStrokeWidth(4);d._lineEdgeShape.setStrokeColor(b.measureManager.getMeasurementEdgeColor());return d}__extends(b,c);b.prototype.setLineGeometry=function(a){this._lineEdgeShape.setStrokeColor(this._viewer.measureManager.getMeasurementEdgeColor());this._linePositions=a;this._stage=
1};b.prototype.reset=function(){this._stage=0};b.prototype.adjust=function(a){c.prototype.adjust.call(this,a)};b.prototype.update=function(){c.prototype.update.call(this);var a=this._viewer.measureManager,b=a.getMeasurementColor(),a=a.getMeasurementEdgeColor();this._lineShapes.forEach(function(a){a.setStrokeColor(b)});this._lineEdgeShape.setStrokeColor(a)};b.prototype.draw=function(){};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasureLengthMarkup"};return b}(d.MeasureMarkup);
d.MeasureLengthMarkup=e})(a.Measure||(a.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b,d,e,q){var p=c.call(this,b)||this;p._circlePoints=[];p._radius=0;p._surfaceCenter=a.Point3.zero();p._surfaceAxis1=a.Point3.zero();p._surfaceAxis2=a.Point3.zero();p._circlePlane=new a.Plane;p._arrowsInvert=!1;p._name="MeasureCircleEdgeLength";p._lineProperties=d;p._matrix=e.copy();p._unitMultiplier=q;p._textShape.getBoxPortion().setFillOpacity(1);p._textShape.getBoxPortion().setFillColor(new a.Color(255,255,255));for(d=0;5>d;d++)p._lineShapes.push(new g.Shape.Line),
p._lineShapes[d].setStrokeColor(b.measureManager.getMeasurementColor());return p}__extends(b,c);b.prototype.createCircleData=function(){a.MeasureUtils.GeneratePointsOnCircle(this._circlePoints,this._lineProperties.origin,this._lineProperties.radius,32,this._lineProperties.normal);this._matrix.transformArray(this._circlePoints,this._circlePoints);this._positions[0]=this._circlePoints[0].copy();this._positions[1]=this._circlePoints[16].copy();var b=new a.Point3(this._lineProperties.radius,0,0),c=new a.Point3(0,
0,0);this._matrix.transform(b,b);this._matrix.transform(c,c);this._radius=a.Point3.subtract(c,b).length();a.Point3.subtract(this._positions[1],this._positions[0]);this._positions[4]=this._positions[1].copy();this._surfaceCenter=this._matrix.transform(this._lineProperties.origin);b=new a.Point3(this._lineProperties.origin.x+this._lineProperties.normal.x,this._lineProperties.origin.y+this._lineProperties.normal.y,this._lineProperties.origin.z+this._lineProperties.normal.z);this._surfaceAxis1=this._matrix.transform(b);
b.set(this._lineProperties.origin.x-this._lineProperties.normal.x,this._lineProperties.origin.y-this._lineProperties.normal.y,this._lineProperties.origin.z-this._lineProperties.normal.z);this._surfaceAxis2=this._matrix.transform(b);b=new a.Point3(this._circlePoints[0].x,this._circlePoints[0].y,this._circlePoints[0].z);c=new a.Point3(this._circlePoints[1].x,this._circlePoints[1].y,this._circlePoints[1].z);this._circlePlane=a.Plane.createFromPoints(b,c,this._surfaceCenter)};b.prototype.setLineGeometry=
function(a){c.prototype.setLineGeometry.call(this,a);this._positions[0]=this._linePositions[0];this._positions[0].equals(this._positions[this._positions.length-1])?this._positions[1]=this._positions[Math.floor(this._positions.length/2)]:this._positions[1]=this._linePositions[this._linePositions.length-1];this._positions[1]=this._linePositions[this._linePositions.length-1];this._positions[2]=this._linePositions[1].copy();this.createCircleData();this._setMeasurementValue(this._radius)};b.prototype.adjust=
function(b){c.prototype.adjust.call(this,b);var d=this._viewer.view.raycastFromPoint(b);if(null!==d){b=this._surfaceCenter;var e=this._circlePlane,g=e.rayIntersection(d);null===g&&(g=a.Point3.add(b,d.direction.copy().scale(-2*this._radius)),g=a.Plane.createFromPointAndNormal(g,d.direction).rayIntersection(d),console.assert(null!==g),d=new a.Ray(g,e.normal),g=e.rayIntersection(d),null===g&&(g=e.rayIntersection(d.negate())));null===g&&(console.assert(!1),g=b.copy());d=a.Point3.subtract(g,b).normalize().scale(this._radius);
e=a.Point3.add(b,d);b=a.Point3.subtract(b,d);this._positions[0]=e;this._positions[1]=b;this._positions[2]=e.copy();this._positions[3]=b.copy();this._positions[4]=g.copy();this._positions[5]=this._surfaceCenter.copy();this._updateArrowsInverted();this._viewer.markupManager.refreshMarkup()}};b.prototype._updateArrowsInverted=function(){var b=new a.Point3((this._positions[4].x+this._positions[5].x)/2,(this._positions[4].y+this._positions[5].y)/2,(this._positions[4].z+this._positions[5].z)/2),c=a.Point3.subtract(this._positions[5],
this._positions[4]);this._arrowsInvert=2*a.Point3.subtract(this._positions[2],b).length()>c.length()};b.prototype.update=function(){c.prototype.update.call(this);var b=this._viewer.view;if(0<this._stage){this._lineEdgeShape.clearPoints();for(var d=0,e=this._linePositions;d<e.length;d++){var q=a.Point2.fromPoint3(b.projectPoint(e[d]));this._lineEdgeShape.pushPoint(q)}}if(1<this._stage){d=Array(6);for(e=0;e<this._positions.length;e++)d[e]=a.Point2.fromPoint3(b.projectPoint(this._positions[e]));this._textShape&&
this._textShape.setPosition(d[4]);this._lineShapes[0].set(d[5],d[2]);this._lineShapes[1].set(d[5],d[4]);b=this._viewer.measureManager.getMeasurementColor();this._lineShapes[0].setEndcapType(g.Shape.EndcapType.Arrowhead);this._lineShapes[0].setStartEndcapType(g.Shape.EndcapType.None);this._lineShapes[0].setEndcapsInverted(this._arrowsInvert);this._lineShapes[0].setEndEndcapColor(b);this._lineShapes[0].setStartEndcapColor(b)}};b.prototype.draw=function(){if(this._visibility&&0===this._viewer.explodeManager.getMagnitude()){this.update();
var a=this._viewer.markupManager.getRenderer();switch(this._stage){case 1:a.drawPolyline(this._lineEdgeShape);break;case 2:case 3:for(var b=0;2>b;b++)a.drawLine(this._lineShapes[b]);a.drawTextBox(this._textShape);a.drawPolyline(this._lineEdgeShape)}}};b.prototype.toJson=function(){var a=d.MeasureMarkup._serializePointArray(this._linePositions),b=d.MeasureMarkup._serializePointArray(this._positions);return{matrix:this._matrix.toJson(),lineOrigin:this._lineProperties.origin,lineRadius:this._lineProperties.radius,
lineNormal:this._lineProperties.normal,linePositions:a,positions:b,text:this._textShape.getTextString(),measurementValue:this._measurementValue,unitMultiplier:this._unitMultiplier,className:this.getClassName()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(c,h){var e=a.Matrix.fromJson(c.matrix),g=c.lineRadius,p=a.Point3.fromJson(c.lineOrigin),l=a.Point3.fromJson(c.lineNormal),g=new a.SubentityProperties.CircleElement(g,p,l);h=new b(h,g,e,c.unitMultiplier||1);e=d.MeasureMarkup._constructPointArray(c.linePositions);
g=d.MeasureMarkup._constructPointArray(c.positions);h.setLineGeometry(e);h._positions=g;h._textShape.setTextString(c.text);h._stage=3;h._measurementValue=c.measurementValue;return h};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasureCircleEdgeLengthMarkup"};return b}(d.MeasureLengthMarkup);d.MeasureCircleEdgeLengthMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){b=c.call(this,b)||this;b._faceSelection=[];b._arcArray=[];b._lineGeometryShape=new g.Shape.Polyline;b.planeIntersectionLine=[];b._pointOnLine=a.Point3.zero();b._plane1=new a.Plane;b._plane2=new a.Plane;b._secondPoint=a.Point3.zero();b._firstPoint=a.Point3.zero();b._textPos=a.Point3.zero();b._intermediatePoint=a.Point3.zero();b._textAnchorPoint=a.Point3.zero();b._name="MeasureFaceFaceAngle";b._lineGeometryShape.setStrokeWidth(2);
b._lineGeometryShape.setStrokeColor(b._viewer.measureManager.getMeasurementColor());b._textShape=new g.Shape.TextBox;b._textShape.getBoxPortion().setFillOpacity(1);b._textShape.getBoxPortion().setFillColor(new a.Color(255,255,255));for(var d=0;5>d;d++)b._lineShapes.push(new g.Shape.Line),b._lineShapes[d].setStrokeColor(b._viewer.measureManager.getMeasurementColor());return b}__extends(b,c);b.prototype.getFirstSelection=function(){return this._faceSelection[0]};b.prototype.setFirstFace=function(b){this._viewer.model.setNodeFaceColor(b.getNodeId(),
b.getFaceEntity().getCadFaceIndex(),new a.Color(255,0,0));this._faceSelection.push(b);this._firstPoint=this._faceSelection[0].getPosition().copy();this._plane1.setFromPointAndNormal(b.getPosition(),b.getFaceEntity().getNormal());this._clickpointOriginal1=this._firstPoint.copy();this._stage++};b.prototype.setSecondFace=function(b){this._faceSelection[1]=b;this._secondPoint=this._faceSelection[1].getPosition().copy();this._viewer.model.setNodeFaceColor(b.getNodeId(),b.getFaceEntity().getCadFaceIndex(),
new a.Color(255,0,0));this._plane2.setFromPointAndNormal(b.getPosition(),b.getFaceEntity().getNormal());this.planeIntersectionLine[0]=new a.Point3(0,0,0);this.planeIntersectionLine[1]=new a.Point3(0,0,0);if(2!==a.MeasureUtils.intersect3D_2Planes(this._plane1,this._firstPoint,this._plane2,this._secondPoint,this.planeIntersectionLine[0],this.planeIntersectionLine[1]))return!1;b=a.Point3.subtract(this.planeIntersectionLine[1],this.planeIntersectionLine[0]);b.normalize();this.planeIntersectionLine[0].set(this.planeIntersectionLine[0].x-
100*b.x,this.planeIntersectionLine[0].y-100*b.y,this.planeIntersectionLine[0].z-100*b.z);this.planeIntersectionLine[1].set(this.planeIntersectionLine[1].x+100*b.x,this.planeIntersectionLine[1].y+100*b.y,this.planeIntersectionLine[1].z+100*b.z);a.MeasureUtils.Compute_Point_To_Line_Distance(this._secondPoint,this.planeIntersectionLine[0],this.planeIntersectionLine[1],this._pointOnLine);var c=new a.Point3(0,0,0),d=new a.Point3(0,0,0);c.set(this._firstPoint.x+b.x,this._firstPoint.y+b.y,this._firstPoint.z+
b.z);a.MeasureUtils.Compute_Point_To_Line_Distance(this._pointOnLine,this._firstPoint,c,d);this._firstPoint=d.copy();this._clickpointOriginal2=this._secondPoint.copy();var c=new a.Matrix,d=a.Point3.subtract(this._secondPoint,this._pointOnLine),e=d.length(),g=a.Point3.subtract(this._firstPoint,this._pointOnLine);g.normalize();this._intermediatePoint.set(this._pointOnLine.x+g.x*e,this._pointOnLine.y+g.y*e,this._pointOnLine.z+g.z*e);this._angle=a.MeasureUtils.ComputeAngleBetweenVector(d,g);if(0===this._angle)return!1;
this._measurementValue=this._angle;this._textShape.setTextString(this._measurementValue.toFixed(2)+"\u00b0");this._viewer._getCallbackManager().trigger("measurementValueSet",this);this._textPos=this._pointOnLine.copy();var e=!1,l=new a.Point3(0,0,0),g=new a.Point3(0,0,0);a.MeasureUtils.Compute_Offaxis_Rotation(b,1,c);c.transform(d,g);l.set(g.x+this._pointOnLine.x,g.y+this._pointOnLine.y,g.z+this._pointOnLine.z);var l=a.Point3.subtract(l,this._firstPoint),m=l.length();a.MeasureUtils.Compute_Offaxis_Rotation(b,
-1,c);c.transform(d,g);l.set(g.x+this._pointOnLine.x,g.y+this._pointOnLine.y,g.z+this._pointOnLine.z);a.Point3.subtract(l,this._firstPoint);l.length()<m&&(e=!0);l=this._angle/30;for(m=0;m<=this._angle;m+=l)e?a.MeasureUtils.Compute_Offaxis_Rotation(b,-m,c):a.MeasureUtils.Compute_Offaxis_Rotation(b,m,c),c.transform(d,g),this._arcArray.push(new a.Point3(g.x+this._pointOnLine.x,g.y+this._pointOnLine.y,g.z+this._pointOnLine.z));this._stage++;return!0};b.prototype.adjust=function(b){c.prototype.adjust.call(this,
b);if(!(1>=this._stage)&&(b=this._viewer.view.raycastFromPoint(b),null!==b)){var d=new a.Point3(b.origin.x+1E6*b.direction.x,b.origin.y+1E6*b.direction.y,b.origin.z+1E6*b.direction.z),e=new a.Point3(0,0,0);a.MeasureUtils.IntersectionPlaneLine(b.origin,d,this._pointOnLine,this._firstPoint,this._secondPoint,e);this._textPos=e.copy();new a.Point3(0,0,0);b=a.Point3.subtract(e,this._pointOnLine);d=b.length();b=a.Point3.subtract(this._secondPoint,this._pointOnLine);b.normalize();this._secondPoint.set(this._pointOnLine.x+
b.x*d,this._pointOnLine.y+b.y*d,this._pointOnLine.z+b.z*d);b=a.Point3.subtract(this.planeIntersectionLine[1],this.planeIntersectionLine[0]);b.normalize();var d=new a.Matrix,e=a.Point3.subtract(this._secondPoint,this._pointOnLine),g=e.length(),p=a.Point3.subtract(this._firstPoint,this._pointOnLine);p.normalize();this._intermediatePoint.set(this._pointOnLine.x+p.x*g,this._pointOnLine.y+p.y*g,this._pointOnLine.z+p.z*g);var p=!1,g=new a.Point3(0,0,0),l=new a.Point3(0,0,0);a.MeasureUtils.Compute_Offaxis_Rotation(b,
1,d);d.transform(e,l);g.set(l.x+this._pointOnLine.x,l.y+this._pointOnLine.y,l.z+this._pointOnLine.z);var g=a.Point3.subtract(g,this._firstPoint),m=g.length();a.MeasureUtils.Compute_Offaxis_Rotation(b,-1,d);d.transform(e,l);g.set(l.x+this._pointOnLine.x,l.y+this._pointOnLine.y,l.z+this._pointOnLine.z);g=a.Point3.subtract(g,this._firstPoint);g.length()<m&&(p=!0);m=99999;g=this._viewer.view.projectPoint(this._textPos);this._arcArray=[];for(var n=this._angle/30,r=0;r<=this._angle;r+=n){p?a.MeasureUtils.Compute_Offaxis_Rotation(b,
-r,d):a.MeasureUtils.Compute_Offaxis_Rotation(b,r,d);d.transform(e,l);var t=new a.Point3(l.x+this._pointOnLine.x,l.y+this._pointOnLine.y,l.z+this._pointOnLine.z),t=this._viewer.view.projectPoint(t),t=(new a.Point3(g.x-t.x,g.y-t.y,g.z-t.z)).length();m>t&&(m=t);this._arcArray.push(new a.Point3(l.x+this._pointOnLine.x,l.y+this._pointOnLine.y,l.z+this._pointOnLine.z))}20>=m?this._textAnchorPoint=this._textPos:(d=this._viewer.view.projectPoint(this._intermediatePoint),b=this._viewer.view.projectPoint(this._secondPoint),
d=new a.Point3(d.x-g.x,d.y-g.y,d.z-g.z),b=new a.Point3(b.x-g.x,b.y-g.y,b.z-g.z),d=d.length(),b=b.length(),this._textAnchorPoint=d<b?this._intermediatePoint:this._secondPoint)}};b.prototype._nextStage=function(){this._stage++;2<this._stage&&(this._finalized=!0,this.cleanup())};b.prototype.cleanup=function(){var a=this,b=function(b){b=a._faceSelection[b];a._viewer.model.unsetNodeFaceColor(b.getNodeId(),b.getFaceEntity().getCadFaceIndex())};2<=this._stage&&b(1);1<=this._stage&&b(0)};b.prototype.update=
function(){c.prototype.update.call(this);var b=this._viewer.view;if(1<this._stage){this._lineGeometryShape.clearPoints();for(var d=0,e=this._arcArray;d<e.length;d++)this._lineGeometryShape.pushPoint(a.Point2.fromPoint3(b.projectPoint(e[d])));this._lineGeometryShape.setEndcapType(g.Shape.EndcapType.Arrowhead);this._lineGeometryShape.setStartEndcapType(g.Shape.EndcapType.Arrowhead);this._lineGeometryShape.setEndEndcapSize(5);this._lineGeometryShape.setStartEndcapSize(5);this._lineGeometryShape.setEndEndcapColor(this._viewer.measureManager.getMeasurementColor());
this._lineGeometryShape.setStartEndcapColor(this._viewer.measureManager.getMeasurementColor());d=Array(10);d[0]=b.projectPoint(this._textPos);d[1]=b.projectPoint(this._firstPoint);d[2]=b.projectPoint(this._clickpointOriginal1);d[3]=b.projectPoint(this._secondPoint);d[4]=b.projectPoint(this._clickpointOriginal2);d[5]=b.projectPoint(this._intermediatePoint);d[6]=b.projectPoint(this._textAnchorPoint);this._behindView=!1;b=Array(10);for(e=0;6>=e;e++)0>=d[e].z&&(this._behindView=!0),b[e]=a.Point2.fromPoint3(d[e]);
this._textShape&&this._textShape.setPosition(b[0]);this._lineShapes[0].set(b[1],b[2]);this._lineShapes[1].set(b[1],b[5]);this._lineShapes[2].set(b[3],b[4]);this._lineShapes[3].set(b[6],b[0])}};b.prototype.draw=function(){if(this._visibility&&0===this._viewer.explodeManager.getMagnitude()&&(this.update(),!this._behindView)){var a=this._viewer.markupManager.getRenderer();switch(this._stage){case 2:case 3:case 4:for(var b=0;4>b;b++)a.drawLine(this._lineShapes[b]);a.drawTextBox(this._textShape);a.drawPolyline(this._lineGeometryShape)}}};
b.prototype.toJson=function(){for(var a=[],b=0,c=this._arcArray;b<c.length;b++){var d=c[b].toJson();a.push(d)}return{text:this._textShape.getTextString(),textPos:this._textPos.toJson(),arcArray:a,firstPoint:this._firstPoint.toJson(),clickpointOriginal1:this._clickpointOriginal1.toJson(),secondPoint:this._secondPoint.toJson(),clickpointOriginal2:this._clickpointOriginal2.toJson(),intermediatePoint:this._intermediatePoint.toJson(),textAnchorPoint:this._textAnchorPoint.toJson(),measurementValue:this._measurementValue,
className:this.getClassName()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(c,d){d=new b(d);for(var e=0,g=c.arcArray;e<g.length;e++){var p=a.Point3.fromJson(g[e]);d._arcArray.push(p)}d._textShape.setTextString(c.text);d._textPos.assign(c.textPos);d._firstPoint.assign(c.firstPoint);d._clickpointOriginal1=a.Point3.fromJson(c.clickpointOriginal1);d._secondPoint.assign(c.secondPoint);d._clickpointOriginal2=a.Point3.fromJson(c.clickpointOriginal2);d._intermediatePoint.assign(c.intermediatePoint);
d._textAnchorPoint.assign(c.textAnchorPoint);d._measurementValue=c.measurementValue;d._stage=3;return d};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasureFaceFaceAngleMarkup"};return b}(d.MeasureMarkup);d.MeasureFaceFaceAngleMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){b=c.call(this,b)||this;b._faceSelection=[];b._line1PreviewShape1=new g.Shape.Line;b._line1PreviewShape2=new g.Shape.Line;b._line2PreviewShape1=new g.Shape.Line;b._line2PreviewShape2=new g.Shape.Line;b._matrix1=new a.Matrix;b._matrix2=new a.Matrix;b._lineGeometryShape=new g.Shape.Polyline;b._parallelFaces=!1;b._triangulatedDistance=!0;b._pointsOnSameRay=!1;b._arrowsInvert=!1;b._faceData=[];b._distance=0;b._surfaceCenter=[a.Point3.zero(),
a.Point3.zero()];b._surfaceAxis1=[a.Point3.zero(),a.Point3.zero()];b._surfaceAxis2=[a.Point3.zero(),a.Point3.zero()];b._cylinderAxisInfinite1=[a.Point3.zero(),a.Point3.zero()];b._cylinderAxisInfinite2=[a.Point3.zero(),a.Point3.zero()];b._firstPointHelper=a.Point3.zero();b._secondPointHelper=a.Point3.zero();b._secondPoint=a.Point3.zero();b._firstPoint=a.Point3.zero();b._textPos=a.Point3.zero();b._name="MeasureFaceFaceDistance";b._lineGeometryShape.setStrokeWidth(2);b._lineGeometryShape.setStrokeColor(b._viewer.measureManager.getMeasurementColor());
b._textShape=new g.Shape.TextBox;b._textShape.getBoxPortion().setFillOpacity(1);b._textShape.getBoxPortion().setFillColor(new a.Color(255,255,255));for(var d=0;5>d;d++)b._lineShapes.push(new g.Shape.Line),b._lineShapes[d].setStrokeColor(b._viewer.measureManager.getMeasurementColor());return b}__extends(b,c);b.prototype.setUnitMultiplier=function(a){this._unitMultiplier=a};b.prototype.setFirstFace=function(b,c,d,e){var g=b.getNodeId(),l=b.getFaceEntity(),m=b.getPosition();this._matrix1=d.copy();this._viewer.model.setNodeFaceColor(g,
l.getCadFaceIndex(),new a.Color(255,0,0));this._faceSelection[0]=b;this._firstPoint=m.copy();this._faceData[0]=c;this._faceData[0]instanceof a.SubentityProperties.PlaneElement?(b=this._faceData[0],c=new a.Point3(b.origin.x+b.normal.x,b.origin.y+b.normal.y,b.origin.z+b.normal.z),this._matrix1.transform(c,this._surfaceAxis1[0]),this._matrix1.transform(b.origin,this._surfaceCenter[0])):this._faceData[0]instanceof a.SubentityProperties.CylinderElement&&this.createCylinderData(this._faceData[0],d,e);this._stage++};
b.prototype.getFirstSelection=function(){return this._faceSelection[0]||null};b.prototype.getFirstFaceData=function(){return this._faceData[0]||null};b.prototype.cleanup=function(){var a=this._viewer.model;2<=this._stage&&a.unsetNodeFaceColor(this._faceSelection[1].getNodeId(),this._faceSelection[1].getFaceEntity().getCadFaceIndex());1<=this._stage&&a.unsetNodeFaceColor(this._faceSelection[0].getNodeId(),this._faceSelection[0].getFaceEntity().getCadFaceIndex())};b.prototype.createCylinderData=function(b,
c,d){d=a.Point3.subtract(d.max,d.min).length()/4;var e=new a.Point3(b.origin.x+1E4*b.normal.x,b.origin.y+1E4*b.normal.y,b.origin.z+1E4*b.normal.z),g=new a.Point3(b.origin.x-1E4*b.normal.x,b.origin.y-1E4*b.normal.y,b.origin.z-1E4*b.normal.z),l=new a.Point3(0,0,0);a.MeasureUtils.Compute_Point_To_Line_Distance(b.origin,e,g,l);this._surfaceCenter[this._stage]=new a.Point3(0,0,0);c.transform(l,this._surfaceCenter[this._stage]);e=new a.Point3(l.x+b.normal.x,l.y+b.normal.y,l.z+b.normal.z);this._surfaceAxis1[this._stage]=
new a.Point3(0,0,0);c.transform(e,this._surfaceAxis1[this._stage]);e.set(l.x-b.normal.x,l.y-b.normal.y,l.z-b.normal.z);this._surfaceAxis2[this._stage]=new a.Point3(0,0,0);c.transform(e,this._surfaceAxis2[this._stage]);new a.Point3(0,0,0);b=this._surfaceAxis1[this._stage].copy();b=a.Point3.subtract(b,this._surfaceCenter[this._stage]);b.normalize();this._surfaceAxis1[this._stage].set(this._surfaceCenter[this._stage].x+b.x*d,this._surfaceCenter[this._stage].y+b.y*d,this._surfaceCenter[this._stage].z+
b.z*d);this._surfaceAxis2[this._stage].set(this._surfaceCenter[this._stage].x-b.x*d,this._surfaceCenter[this._stage].y-b.y*d,this._surfaceCenter[this._stage].z-b.z*d);this._cylinderAxisInfinite1[this._stage]=new a.Point3(this._surfaceCenter[this._stage].x+b.x*d*1E3,this._surfaceCenter[this._stage].y+b.y*d*1E3,this._surfaceCenter[this._stage].z+b.z*d*1E3);this._cylinderAxisInfinite2[this._stage]=new a.Point3(this._surfaceCenter[this._stage].x-b.x*d*1E3,this._surfaceCenter[this._stage].y-b.y*d*1E3,
this._surfaceCenter[this._stage].z-b.z*d*1E3)};b.prototype.setSecondFace=function(b,c,d,e,g){return __awaiter(this,void 0,void 0,function(){var l,m,n,r,t,u,v,w,y,x,z,A,C,B,D,F,I,E,H,J,K,G,M;return __generator(this,function(L){switch(L.label){case 0:l=this._faceSelection[0];m=this._faceData[0];if(void 0===l||void 0===m)throw new a.CommunicatorError("setSecondFace() called before setFirstFace()");if(d instanceof a.SubentityProperties.PlaneElement)n=m,r=new a.Point3(n.origin.x+n.normal.x,n.origin.y+
n.normal.y,n.origin.z+n.normal.z),this._matrix1.transform(r,this._surfaceAxis1[0]),this._matrix1.transform(n.origin,this._surfaceCenter[0]);else if(d instanceof a.SubentityProperties.CylinderElement)this.createCylinderData(d,e,g);else return[2];return[4,this._viewer.model.computeMinimumFaceFaceDistance(l.getNodeId(),l.getFaceEntity().getCadFaceIndex(),c.getNodeId(),c.getFaceEntity().getCadFaceIndex())];case 1:t=L.sent();if(0===t.distance)return[2];this._matrix2=e.copy();this._secondPoint=c.getPosition().copy();
if(!(m instanceof a.SubentityProperties.PlaneElement&&d instanceof a.SubentityProperties.PlaneElement))return[3,2];u=d;r=new a.Point3(u.origin.x+u.normal.x,u.origin.y+u.normal.y,u.origin.z+u.normal.z);this._matrix2.transform(r,this._surfaceAxis1[1]);this._matrix2.transform(u.origin,this._surfaceCenter[1]);v=new a.Point3(this._surfaceAxis1[0].x-this._surfaceCenter[0].x,this._surfaceAxis1[0].y-this._surfaceCenter[0].y,this._surfaceAxis1[0].z-this._surfaceCenter[0].z);w=new a.Point3(this._surfaceAxis1[1].x-
this._surfaceCenter[1].x,this._surfaceAxis1[1].y-this._surfaceCenter[1].y,this._surfaceAxis1[1].z-this._surfaceCenter[1].z);v.normalize();w.normalize();y=new a.Point3(-v.x,-v.y,-v.z);v.equalsWithTolerance(w,1E-5)||y.equalsWithTolerance(w,1E-5)?(this._secondPointHelper=new a.Point3(this._secondPoint.x,this._secondPoint.y,this._secondPoint.z),this._firstPointHelper=new a.Point3(this._firstPoint.x,this._firstPoint.y,this._firstPoint.z),x=new a.Plane,x.setFromPointAndNormal(this._surfaceCenter[0],v),
z=new a.Plane,z.setFromPointAndNormal(this._surfaceCenter[1],w),A=new a.Point3(this._firstPoint.x+v.x,this._firstPoint.y+v.y,this._firstPoint.z+v.z),a.MeasureUtils.IntersectionPlaneLine2(l.getPosition(),A,z,this._secondPoint),y.equalsWithTolerance(w,1E-5)&&(C=new a.Point3(-v.x,-v.y,-v.z),x.setFromPointAndNormal(this._surfaceCenter[0],C)),this._distance=B=Math.abs(z.d-x.d)/x.normal.length(),this._setMeasurementValue(this._distance),this._parallelFaces=!0,this._triangulatedDistance=!1,D=new a.Point3(0,
1,0),F=a.Point3.subtract(this._secondPoint,this._firstPoint),I=new a.Point3(0,0,0),I=a.Point3.subtract(this._secondPointHelper,this._firstPoint),E=a.MeasureUtils.ComputeAngleBetweenVector(D,F),H=a.MeasureUtils.ComputeAngleBetweenVector(D,I),this._textPos.assign(this._secondPoint),.1>E-H&&-.1<E-H&&(this._pointsOnSameRay=!0)):(this._firstPoint.assign(t.pos1),this._secondPoint.assign(t.pos2),this._textPos.assign(t.pos2),this._distance=t.distance,this._setMeasurementValue(this._distance));return[3,8];
case 2:if(!(m instanceof a.SubentityProperties.CylinderElement&&d instanceof a.SubentityProperties.CylinderElement))return[3,3];v=new a.Point3(this._surfaceAxis1[0].x-this._surfaceCenter[0].x,this._surfaceAxis1[0].y-this._surfaceCenter[0].y,this._surfaceAxis1[0].z-this._surfaceCenter[0].z);w=new a.Point3(this._surfaceAxis1[1].x-this._surfaceCenter[1].x,this._surfaceAxis1[1].y-this._surfaceCenter[1].y,this._surfaceAxis1[1].z-this._surfaceCenter[1].z);v.normalize();w.normalize();y=new a.Point3(-v.x,
-v.y,-v.z);if(v.equalsWithTolerance(w,1E-5)||y.equalsWithTolerance(w,1E-5)){J=new a.Point3(0,0,0);a.MeasureUtils.Compute_Point_To_Line_Distance(this._firstPoint,this._cylinderAxisInfinite1[0],this._cylinderAxisInfinite2[0],J);this._firstPoint=J.copy();K=new a.Point3(this._firstPoint.x,this._firstPoint.y,this._firstPoint.z);K=a.Point3.subtract(K,this._surfaceCenter[0]);K.set(0,0,0);a.MeasureUtils.Compute_Point_To_Line_Distance(this._firstPoint,this._cylinderAxisInfinite1[1],this._cylinderAxisInfinite2[1],
J);this._secondPoint=J.copy();B=a.Point3.subtract(this._secondPoint,this._firstPoint).length();if(1E-7>B)return[2];this._triangulatedDistance=!1;this._textPos.assign(this._secondPoint);this._setMeasurementValue(B)}else{this._distance=a.MeasureUtils.DistanceLineLine(this._cylinderAxisInfinite1[0],this._cylinderAxisInfinite2[0],this._cylinderAxisInfinite1[1],this._cylinderAxisInfinite2[1],this._firstPoint,this._secondPoint);if(1E-7>this._distance)return[2];this._textPos.assign(this._firstPoint);this._setMeasurementValue(this._distance)}return[3,
8];case 3:if(!(m instanceof a.SubentityProperties.CylinderElement&&d instanceof a.SubentityProperties.PlaneElement))return[3,5];v=new a.Point3(this._surfaceAxis1[0].x-this._surfaceCenter[0].x,this._surfaceAxis1[0].y-this._surfaceCenter[0].y,this._surfaceAxis1[0].z-this._surfaceCenter[0].z);return[4,this._viewer.model.computeMinimumFaceLineDistance(c.getNodeId(),c.getFaceEntity().getCadFaceIndex(),new a.Ray(this._surfaceCenter[0],v))];case 4:G=L.sent();this._distance=G.distance;if(1E-7>this._distance)return[2];
this._firstPoint.assign(G.pos1);this._secondPoint.assign(G.pos2);this._textPos.assign(G.pos2);this._viewer.model.setNodeFaceColor(c.getNodeId(),c.getFaceEntity().getCadFaceIndex(),new a.Color(255,0,0));this._faceData[1]=d;this._faceSelection[1]=c;this._stage++;this.adjust(b);this._setMeasurementValue(this._distance);return[3,8];case 5:if(!(m instanceof a.SubentityProperties.PlaneElement&&d instanceof a.SubentityProperties.CylinderElement))return[3,7];v=new a.Point3(this._surfaceAxis1[1].x-this._surfaceCenter[1].x,
this._surfaceAxis1[1].y-this._surfaceCenter[1].y,this._surfaceAxis1[1].z-this._surfaceCenter[1].z);return[4,this._viewer.model.computeMinimumFaceLineDistance(l.getNodeId(),l.getFaceEntity().getCadFaceIndex(),new a.Ray(this._surfaceCenter[1],v))];case 6:G=L.sent();this._distance=G.distance;if(1E-7>this._distance)return[2];this._firstPoint.assign(G.pos1);this._secondPoint.assign(G.pos2);this._textPos.assign(G.pos2);this._viewer.model.setNodeFaceColor(c.getNodeId(),c.getFaceEntity().getCadFaceIndex(),
new a.Color(255,0,0));this._faceData[1]=d;this._faceSelection[1]=c;this._stage++;this.adjust(b);this._setMeasurementValue(this._distance);return[3,8];case 7:this._firstPoint.assign(t.pos1);this._secondPoint.assign(t.pos2);this._textPos.assign(t.pos2);this._distance=t.distance;if(1E-7>this._distance)return[2];this._setMeasurementValue(this._distance);L.label=8;case 8:return M=this._viewer.model.setNodeFaceColor(c.getNodeId(),c.getFaceEntity().getCadFaceIndex(),new a.Color(255,0,0)),this._faceData[1]=
d,this._faceSelection[1]=c,this._stage++,this.adjust(b),[2,M]}})})};b.prototype.adjust=function(b){c.prototype.adjust.call(this,b);if(!(1>=this._stage)){var d=this._viewer.view.raycastFromPoint(b);if(null!==d){var e=new a.Point3(d.origin.x+1E6*d.direction.x,d.origin.y+1E6*d.direction.y,d.origin.z+1E6*d.direction.z),g=a.MeasureUtils.oneVectorCross(d.direction),p;new a.Point3(0,0,0);p=a.Point3.cross(d.direction,g);p.normalize();var l;new a.Point3((this._firstPoint.x+this._secondPoint.x)/2,(this._firstPoint.y+
this._secondPoint.y)/2,(this._firstPoint.z+this._secondPoint.z)/2);l=this._textPos.copy();g.set(l.x+g.x,l.y+g.y,l.z+g.z);p.set(l.x+p.x,l.y+p.y,l.z+p.z);b=new a.Point3(0,0,0);a.MeasureUtils.IntersectionPlaneLine(d.origin,e,l,g,p,b);2===this._stage?a.MeasureUtils.Compute_Point_To_Line_Distance(b,this._firstPoint,this._secondPoint,this._textPos):this._parallelFaces||this._triangulatedDistance?(d=new a.Point3(0,0,0),this._pointsOnSameRay||(a.MeasureUtils.Compute_Point_To_Line_Distance(b,this._secondPoint,
this._secondPointHelper,d),new a.Point3(0,0,0),b=a.Point3.subtract(d,this._secondPoint),this._secondPoint=d.copy(),this._firstPoint.set(this._firstPoint.x+b.x,this._firstPoint.y+b.y,this._firstPoint.z+b.z),this._textPos.set(this._textPos.x+b.x,this._textPos.y+b.y,this._textPos.z+b.z))):(d=new a.Point3(0,0,0),a.MeasureUtils.Compute_Point_To_Line_Distance(b,this._cylinderAxisInfinite1[1],this._cylinderAxisInfinite2[1],d),b=a.Point3.subtract(d,this._secondPoint),this._secondPoint=d.copy(),this._firstPoint.set(this._firstPoint.x+
b.x,this._firstPoint.y+b.y,this._firstPoint.z+b.z),this._textPos.set(this._textPos.x+b.x,this._textPos.y+b.y,this._textPos.z+b.z));this._updateArrowsInverted();this._viewer.markupManager.refreshMarkup()}}};b.prototype._updateArrowsInverted=function(){var b=new a.Point3((this._firstPoint.x+this._secondPoint.x)/2,(this._firstPoint.y+this._secondPoint.y)/2,(this._firstPoint.z+this._secondPoint.z)/2),c=a.Point3.subtract(this._secondPoint,this._firstPoint);2*a.Point3.subtract(this._textPos,b).length()>
c.length()?this._arrowsInvert=!0:this._arrowsInvert=!1};b.prototype._nextStage=function(){this._stage++;if(3<this._stage||2<this._stage&&this._triangulatedDistance)this._finalized=!0,this.cleanup()};b.prototype.update=function(){c.prototype.update.call(this);var b=this._viewer.view;this._behindView=!1;if(0!==this._stage){for(var d=Array(10),e=[],q=0;10>q;q++)e.push(new a.Point3(0,0,0));this._faceData[0]instanceof a.SubentityProperties.CylinderElement&&(e[0]=b.projectPoint(this._surfaceCenter[0]),
e[1]=b.projectPoint(this._surfaceAxis1[0]),e[2]=b.projectPoint(this._surfaceAxis2[0]),d[0]=a.Point2.fromPoint3(e[0]),d[1]=a.Point2.fromPoint3(e[1]),d[2]=a.Point2.fromPoint3(e[2]),this._line1PreviewShape1.set(d[0],d[1]),this._line1PreviewShape2.set(d[0],d[2]));1<this._stage&&this._faceData[1]instanceof a.SubentityProperties.CylinderElement&&(e[0]=b.projectPoint(this._surfaceCenter[1]),e[1]=b.projectPoint(this._surfaceAxis1[1]),e[2]=b.projectPoint(this._surfaceAxis2[1]),d[0]=a.Point2.fromPoint3(e[0]),
d[1]=a.Point2.fromPoint3(e[1]),d[2]=a.Point2.fromPoint3(e[2]),this._line2PreviewShape1.set(d[0],d[1]),this._line2PreviewShape2.set(d[0],d[2]));1<this._stage&&(e[0]=b.projectPoint(this._textPos),e[1]=b.projectPoint(this._firstPoint),e[2]=b.projectPoint(this._secondPoint),d[0]=a.Point2.fromPoint3(e[0]),d[1]=a.Point2.fromPoint3(e[1]),d[2]=a.Point2.fromPoint3(e[2]),this._textShape&&this._textShape.setPosition(d[0]),this._lineShapes[0].setEndcapType(g.Shape.EndcapType.Arrowhead),this._lineShapes[0].setStartEndcapType(g.Shape.EndcapType.Arrowhead),
this._lineShapes[0].setEndcapsInverted(this._arrowsInvert),this._lineShapes[0].setEndEndcapColor(this._viewer.measureManager.getMeasurementColor()),this._lineShapes[0].setStartEndcapColor(this._viewer.measureManager.getMeasurementColor()),this._lineShapes[0].set(d[1],d[2]),this._faceData[1]instanceof a.SubentityProperties.CylinderElement&&this._faceData[0]instanceof a.SubentityProperties.CylinderElement?(e[3]=b.projectPoint(this._surfaceCenter[0]),e[4]=b.projectPoint(this._surfaceCenter[1]),d[3]=
a.Point2.fromPoint3(e[3]),d[4]=a.Point2.fromPoint3(e[4]),this._lineShapes[1].set(d[1],d[3]),this._lineShapes[2].set(d[2],d[4]),this._lineShapes[3].set(d[0],d[1])):(e[3]=b.projectPoint(this._firstPointHelper),e[4]=b.projectPoint(this._secondPointHelper),d[3]=a.Point2.fromPoint3(e[3]),d[4]=a.Point2.fromPoint3(e[4]),this._lineShapes[1].set(d[2],d[4]),this._lineShapes[2].set(d[1],d[3]),this._lineShapes[3].set(d[1],d[0])));for(q=0;6>q;q++)0>e[q].z&&(this._behindView=!0)}};b.prototype.draw=function(){if(this._visibility&&
0===this._viewer.explodeManager.getMagnitude()&&(this.update(),!this._behindView)){var b=this._viewer.markupManager.getRenderer();switch(this._stage){case 1:this._faceData[0]instanceof a.SubentityProperties.CylinderElement&&(b.drawLine(this._line1PreviewShape1),b.drawLine(this._line1PreviewShape2));break;case 2:case 3:case 4:this._faceData[0]instanceof a.SubentityProperties.CylinderElement&&this._faceData[1]instanceof a.SubentityProperties.CylinderElement?(3>this._stage&&(b.drawLine(this._line1PreviewShape1),
b.drawLine(this._line1PreviewShape2),b.drawLine(this._line2PreviewShape1),b.drawLine(this._line2PreviewShape2)),b.drawLine(this._lineShapes[0]),b.drawLine(this._lineShapes[1]),b.drawLine(this._lineShapes[2])):(this._viewer.markupManager.getRenderer().drawLine(this._lineShapes[0]),this._parallelFaces&&(b.drawLine(this._lineShapes[1]),b.drawLine(this._lineShapes[2]))),b.drawLine(this._lineShapes[3]),b.drawTextBox(this._textShape)}}};b._serializeFaceProp=function(b){return b instanceof a.SubentityProperties.CylinderElement?
{type:"CylinderElement",origin:b.origin.toJson(),normal:b.normal.toJson(),radius:b.radius}:b instanceof a.SubentityProperties.PlaneElement?{type:"PlaneElement",origin:b.origin.toJson(),normal:b.normal.toJson()}:null};b._constructFaceProp=function(b){if("CylinderElement"===b.type){var c=a.Point3.fromJson(b.origin),d=a.Point3.fromJson(b.normal);return new a.SubentityProperties.CylinderElement(b.radius,c,d)}return"PlaneElement"===b.type?(c=a.Point3.fromJson(b.origin),d=a.Point3.fromJson(b.normal),new a.SubentityProperties.PlaneElement(c,
d)):null};b.prototype.toJson=function(){for(var a=[],c=0,d=this._faceData;c<d.length;c++)a.push(b._serializeFaceProp(d[c]));for(var c=[],d=0,e=this._surfaceCenter;d<e.length;d++)c.push(e[d].toJson());for(var d=[],g=0,l=this._surfaceAxis1;g<l.length;g++)e=l[g],d.push(e.toJson());for(var g=[],l=0,m=this._surfaceAxis2;l<m.length;l++)e=m[l],g.push(e.toJson());return{text:this._textShape.getTextString(),textPos:this._textPos.toJson(),firstPoint:this._firstPoint.toJson(),secondPoint:this._secondPoint.toJson(),
firstPointHelper:this._firstPointHelper.toJson(),secondPointHelper:this._secondPointHelper.toJson(),measurementValue:this._measurementValue,unitMultiplier:this._unitMultiplier,parallelFaces:this._parallelFaces,faceData:a,surfaceCenter:c,surfaceAxis1:d,surfaceAxis2:g,name:this.getName(),className:this.getClassName()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(a,c){c=new b(c);c.setName(a.name);c._textShape.setTextString(a.text);c._textPos.assign(a.textPos);c._firstPoint.assign(a.firstPoint);
c._firstPointHelper.assign(a.firstPointHelper);c._secondPoint.assign(a.secondPoint);c._secondPointHelper.assign(a.secondPointHelper);console.assert(a.faceData instanceof Array);for(var d=0,e=a.faceData;d<e.length;d++){var g=b._constructFaceProp(e[d]);console.assert(null!==g);c._faceData.push(g)}c._surfaceCenter[0].assign(a.surfaceCenter[0]);c._surfaceCenter[1].assign(a.surfaceCenter[1]);c._surfaceAxis1[0].assign(a.surfaceAxis1[0]);c._surfaceAxis1[1].assign(a.surfaceAxis1[1]);c._surfaceAxis2[0].assign(a.surfaceAxis2[0]);
c._surfaceAxis2[1].assign(a.surfaceAxis2[1]);c._stage=4;c._parallelFaces=a.parallelFaces;c._measurementValue=a.measurementValue;c._unitMultiplier=a.unitMultiplier||1;return c};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasureFaceFaceDistanceMarkup"};return b}(d.MeasureMarkup);d.MeasureFaceFaceDistanceMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){var d=c.call(this,b)||this;d._firstPointShape=new g.Shape.Circle;d._secondPointShape=new g.Shape.Circle;d._name="MeasurePointPointDistance";d._lineShapes=[];for(var e=0;6>e;e++)d._lineShapes.push(new g.Shape.Line),d._lineShapes[e].setStrokeColor(d._viewer.measureManager.getMeasurementColor()),d._lineShapes[e].setEndEndcapColor(d._viewer.measureManager.getMeasurementColor()),d._lineShapes[e].setStartEndcapColor(d._viewer.measureManager.getMeasurementColor());
d._viewer=b;d.initCircle(d._firstPointShape);d.initCircle(d._secondPointShape);d._textShape=new g.Shape.TextBox;d._textShape.getBoxPortion().setFillOpacity(1);d._textShape.getBoxPortion().setFillColor(new a.Color(255,255,255));return d}__extends(b,c);b.prototype.initCircle=function(a){a.setRadius(2.5);a.setFillColor(this._viewer.measureManager.getMeasurementColor())};b.prototype.setUnitMultiplier=function(a){this._unitMultiplier=a};b.prototype.setFirstPointPosition=function(a){this._stage=1;this._positions[0]=
a.copy()};b.prototype.setSecondPointPosition=function(b){this._stage=2;this._positions[1]=b.copy();this._positions[2]=b.copy();this._setMeasurementValue(a.Point3.subtract(this._positions[1],this._positions[0]).length())};b.prototype._getStage=function(){return this._stage};b.prototype.finalize=function(){this._stage++};b.prototype.getFirstPointPosition=function(){return this._positions[0]};b.prototype.adjust=function(b){c.prototype.adjust.call(this,b);var d=this._viewer.view.raycastFromPoint(b);if(null!==
d){b=this._positions[0];var e=this._positions[1],g=new a.Point3(1,0,0);e.equals(b)||(g=a.Point3.subtract(e,b));var p=this._viewer.view.getCamera().getUp(),l=a.Point3.cross(d.direction,p).normalize(),m=new a.Point3((b.x+e.x)/2,(b.y+e.y)/2,(b.z+e.z)/2),p=new a.Point3(m.x+p.x,m.y+p.y,m.z+p.z),n=new a.Point3(m.x+l.x,m.y+l.y,m.z+l.z),r=new a.Point3(d.origin.x+1E6*d.direction.x,d.origin.y+1E6*d.direction.y,d.origin.z+1E6*d.direction.z),l=new a.Point3(0,0,0);a.MeasureUtils.IntersectionPlaneLine(d.origin,
r,m,p,n,l);this._positions[2].assign(l);new a.Point3(0,0,0);d=Math.abs(g.x)<=Math.abs(g.y)&&Math.abs(g.x)<=Math.abs(g.z)?new a.Point3(1,0,0):Math.abs(g.y)<=Math.abs(g.x)&&Math.abs(g.y)<=Math.abs(g.z)?new a.Point3(0,1,0):new a.Point3(0,0,1);d=a.Point3.cross(d,g);m=a.Point3.cross(d,g);d.set(b.x+d.x,b.y+d.y,b.z+d.z);m.set(b.x+m.x,b.y+m.y,b.z+m.z);p=new a.Point3(l.x+1E4*g.x,l.y+1E4*g.y,l.z+1E4*g.z);g=new a.Point3(l.x-1E4*g.x,l.y-1E4*g.y,l.z-1E4*g.z);a.MeasureUtils.IntersectionPlaneLine(p,g,b,d,m,l);g=
a.Point3.subtract(l,b);this._positions[3]=new a.Point3(b.x+g.x,b.y+g.y,b.z+g.z);this._positions[4]=new a.Point3(e.x+g.x,e.y+g.y,e.z+g.z);this._updateArrowsInverted();this._viewer.markupManager.refreshMarkup()}};b.prototype._updateArrowsInverted=function(){var b=new a.Point3((this._positions[3].x+this._positions[4].x)/2,(this._positions[3].y+this._positions[4].y)/2,(this._positions[3].z+this._positions[4].z)/2),c=a.Point3.subtract(this._positions[4],this._positions[3]);2*a.Point3.subtract(this._positions[2],
b).length()>c.length()?this._arrowsInvert=!0:this._arrowsInvert=!1};b.prototype.update=function(){c.prototype.update.call(this);var b=this._viewer.view,d=Array(6);if(0<this._stage){this._behindView=!1;for(var e=0;e<this._positions.length;e++)0>=b.projectPoint(this._positions[e]).z&&(this._behindView=!0),d[e]=a.Point2.fromPoint3(b.projectPoint(this._positions[e]));this._firstPointShape.setCenter(d[0])}1<this._stage&&(this._textShape&&this._textShape.setPosition(d[2]),this._secondPointShape.setCenter(d[1]),
this._lineShapes[0].set(d[0],d[1]),this._lineShapes[1].set(d[3],d[4]),this._lineShapes[2].set(d[0],d[3]),this._lineShapes[3].set(d[1],d[4]),this._lineShapes[4].set(d[3],d[2]),this._lineShapes[5].set(d[3],d[4]),this._lineShapes[5].setEndcapType(g.Shape.EndcapType.Arrowhead),this._lineShapes[5].setStartEndcapType(g.Shape.EndcapType.Arrowhead),this._lineShapes[5].setEndcapsInverted(this._arrowsInvert))};b.prototype.draw=function(){if(this._visibility&&0===this._viewer.explodeManager.getMagnitude()&&
(this.update(),!this._behindView)){var a=this._viewer.markupManager.getRenderer();switch(this._stage){case 1:a.drawCircle(this._firstPointShape);break;case 2:case 3:a.drawCircle(this._firstPointShape);a.drawCircle(this._secondPointShape);for(var b=0,c=this._lineShapes;b<c.length;b++)a.drawLine(c[b]);a.drawTextBox(this._textShape)}}};b.prototype.toJson=function(){return{name:this._name,measurePoint1:this._positions[0].copy(),measurePoint2:this._positions[1].copy(),leaderPoint1:this._positions[3].copy(),
leaderPoint2:this._positions[4].copy(),textPoint:this._positions[2].copy(),text:this._textShape.getTextString(),measurementValue:this._measurementValue,unitMultiplier:this._unitMultiplier,className:this.getClassName()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(c,d){d=new b(d);d._name=c.name;d._positions[0]=a.Point3.fromJson(c.measurePoint1);d._positions[1]=a.Point3.fromJson(c.measurePoint2);d._positions[2]=a.Point3.fromJson(c.textPoint);d._textShape.setTextString(c.text);
d._positions[3]=a.Point3.fromJson(c.leaderPoint1);d._positions[4]=a.Point3.fromJson(c.leaderPoint2);d._measurementValue=c.measurementValue;d._unitMultiplier=c.unitMultiplier||1;d._updateArrowsInverted();d._stage=2;return d};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasurePointPointDistanceMarkup"};return b}(d.MeasureMarkup);d.MeasurePointPointDistanceMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||
(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b,d,e,q){b=c.call(this,b)||this;b._lineProperties=null;b._worldSpaceLength=0;b._arrowsInvert=!1;b._name="MeasureStraightEdgeLength";b._lineProperties=d;b._matrix=e.copy();b._matrix.setTranslationComponent(0,0,0);b._unitMultiplier=q;d=b._viewer.measureManager.getMeasurementColor();for(e=0;5>e;e++)q=new g.Shape.Line,q.setStrokeColor(d),q.setEndEndcapColor(d),q.setStartEndcapColor(d),b._lineShapes.push(q);d=b._textShape.getBoxPortion();d.setFillOpacity(1);
d.setFillColor(new a.Color(255,255,255));return b}__extends(b,c);b.prototype.setLineGeometry=function(b){c.prototype.setLineGeometry.call(this,b);this._positions[0]=this._linePositions[0];this._positions[2]=this._linePositions[0].copy();this._positions[1]=this._linePositions[this._linePositions.length-1];null!==this._lineProperties&&-1!==this._lineProperties.length?(b=new a.Point3(this._lineProperties.length,0,0),this._matrix.transform(b,b),b=this._worldSpaceLength=b.length()):b=a.Point3.subtract(this._positions[1],
this._positions[0]).length();this._setMeasurementValue(b)};b.prototype.adjust=function(b){c.prototype.adjust.call(this,b);var d=this._viewer.view,e=d.raycastFromPoint(b);if(null!==e){b=this._positions[0];var g=this._positions[1],p=new a.Point3(1,0,0);g.equals(b)||(p=a.Point3.subtract(g,b));var l=d.getCamera().getUp(),d=a.Point3.cross(e.direction,l).normalize(),m=a.Point3.add(b,g).scale(.5),l=a.Point3.add(m,l),n=a.Point3.add(m,d),r=a.Point3.add(a.Point3.scale(e.direction,1E6),e.origin),d=new a.Point3(0,
0,0);a.MeasureUtils.IntersectionPlaneLine(e.origin,r,m,l,n,d);this._positions[2].assign(d);new a.Point3(0,0,0);e=Math.abs(p.x)<=Math.abs(p.y)&&Math.abs(p.x)<=Math.abs(p.z)?new a.Point3(1,0,0):Math.abs(p.y)<=Math.abs(p.x)&&Math.abs(p.y)<=Math.abs(p.z)?new a.Point3(0,1,0):new a.Point3(0,0,1);e=a.Point3.cross(e,p);m=a.Point3.cross(e,p);e.add(b);m.add(b);l=a.Point3.add(a.Point3.scale(p,1E4),d);p=a.Point3.add(a.Point3.scale(p,-1E4),d);a.MeasureUtils.IntersectionPlaneLine(l,p,b,e,m,d);p=a.Point3.subtract(d,
b);this._positions[3]=a.Point3.add(b,p);this._positions[4]=a.Point3.add(g,p);this._updateArrowsInverted();this._viewer.markupManager.refreshMarkup()}};b.prototype._updateArrowsInverted=function(){var b=a.Point3.add(this._positions[3],this._positions[4]).scale(.5),c=a.Point3.subtract(this._positions[4],this._positions[3]);this._arrowsInvert=2*a.Point3.subtract(this._positions[2],b).squaredLength()>c.squaredLength()};b.prototype.update=function(){c.prototype.update.call(this);var b=this._viewer.view;
this._behindView=!1;if(0<this._stage){this._lineEdgeShape.clearPoints();for(var d=Array(this._linePositions.length),e=0;e<this._linePositions.length;e++)d[e]=b.projectPoint(this._linePositions[e]),0>=d[e].z&&(this._behindView=!0),this._lineEdgeShape.pushPoint(a.Point2.fromPoint3(d[e]))}if(1<this._stage){for(var q=Array(6),d=Array(6),e=0;e<this._positions.length;e++)d[e]=b.projectPoint(this._positions[e]),0>=d[e].z&&(this._behindView=!0),q[e]=a.Point2.fromPoint3(d[e]);this._textShape&&this._textShape.setPosition(q[2]);
b=this._viewer.measureManager.getMeasurementColor();this._lineShapes[0].set(q[3],q[4]);this._lineShapes[1].set(q[0],q[3]);this._lineShapes[2].set(q[1],q[4]);this._lineShapes[3].set(q[3],q[2]);this._lineShapes[4].set(q[3],q[4]);this._lineShapes[4].setEndcapType(g.Shape.EndcapType.Arrowhead);this._lineShapes[4].setStartEndcapType(g.Shape.EndcapType.Arrowhead);this._lineShapes[4].setEndcapsInverted(this._arrowsInvert);this._lineShapes[4].setEndEndcapColor(b);this._lineShapes[4].setStartEndcapColor(b)}};
b.prototype.draw=function(){if(this._visibility&&0===this._viewer.explodeManager.getMagnitude()&&(this.update(),!this._behindView)){var a=this._viewer.markupManager.getRenderer();switch(this._stage){case 1:a.drawPolyline(this._lineEdgeShape);break;case 2:case 3:for(var b=0,c=this._lineShapes;b<c.length;b++)a.drawLine(c[b]);a.drawTextBox(this._textShape);a.drawPolyline(this._lineEdgeShape)}}};b.prototype.toJson=function(){return{name:this._name,measurePoint1:this._positions[0].copy(),measurePoint2:this._positions[1].copy(),
leaderPoint1:this._positions[3].copy(),leaderPoint2:this._positions[4].copy(),textPoint:this._positions[2].copy(),text:this._textShape.getTextString(),measurementValue:this._measurementValue,unitMultiplier:this._unitMultiplier,className:this.getClassName(),matrix:this._matrix.toJson()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(c,d){var e=a.Matrix.fromJson(c.matrix);d=new b(d,null,e,c.unitMultiplier||1);d._name=c.name;d._positions[0]=a.Point3.fromJson(c.measurePoint1);
d._positions[1]=a.Point3.fromJson(c.measurePoint2);d._positions[2]=a.Point3.fromJson(c.textPoint);d._textShape.setTextString(c.text);d._positions[3]=a.Point3.fromJson(c.leaderPoint1);d._positions[4]=a.Point3.fromJson(c.leaderPoint2);d._measurementValue=c.measurementValue;d._updateArrowsInverted();d._stage=2;return d};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Measure.MeasureStraightEdgeLengthMarkup"};return b}(d.MeasureLengthMarkup);
d.MeasureStraightEdgeLengthMarkup=e})(g.Measure||(g.Measure={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(b,c){var d;d=Math.abs(b.x);var e=Math.abs(b.y),g=Math.abs(b.z);d=d<=e&&d<=g?new a.Point3(1,0,0):e<=d&&e<=g?new a.Point3(0,1,0):new a.Point3(0,0,1);b=a.Point3.cross(d,b);return c?(c.assign(b),c):b}function e(a,b,c,d){var e=c.normal.x*(b.x-a.x)+c.normal.y*(b.y-a.y)+c.normal.z*(b.z-a.z);if(1E-5>Math.abs(e))return!1;c=-(c.d+c.normal.x*a.x+c.normal.y*a.y+c.normal.z*a.z)/e;d.x=a.x+c*(b.x-a.x);d.y=a.y+c*(b.y-a.y);d.z=a.z+c*(b.z-a.z);return 0>c||1<c?!1:!0}function c(a){return Math.PI/
180*a}function b(a){return 180/Math.PI*a}g.oneVectorCross=d;g.IntersectionPlaneLine2=e;g.Compute_Point_To_Line_Distance=function(b,c,d,e){var g=a.Point3.subtract(d,c),l=g.squaredLength(),m=0;0<l&&(m=((b.x-c.x)*(d.x-c.x)+(b.y-c.y)*(d.y-c.y)+(b.z-c.z)*(d.z-c.z))/l);g.set(g.x*m,g.y*m,g.z*m);e.set(c.x+g.x,c.y+g.y,c.z+g.z);new a.Point3(0,0,0);return a.Point3.subtract(b,e).length()};g.formatWithUnit=function(a,b){b=.01>Math.abs(b-25.4/72)?"points":.01>Math.abs(b-25.4)?"inch":.01>Math.abs(b-1)?"mm":.01>
Math.abs(b-10)?"cm":.01>Math.abs(b-25.4/6)?"picas":.01>Math.abs(b-12*25.4)?"ft":.01>Math.abs(b-914.4)?"yd":.01>Math.abs(b-1E3)?"m":.01>Math.abs(b-1E6)?"km":.01>Math.abs(b-1609344)?"mi":"mm";for(var c,d=2;9>d&&(c=a.toFixed(d),0===parseFloat(c));d++);0===parseFloat(c)&&(c="0");return c+b};g.Degrees_To_Radians=c;g.Radians_To_Degrees=b;g.Compute_Offaxis_Rotation=function(b,d,e){b=b.copy().normalize();var g=c(d);d=Math.cos(g);var g=Math.sin(g),p=1-d,l=p*b.x*b.y,m=p*b.x*b.z,n=p*b.y*b.z;void 0===e&&(e=new a.Matrix);
e.m[0]=p*b.x*b.x+d;e.m[1]=g*b.z+l;e.m[2]=m-g*b.y;e.m[3]=0;e.m[4]=l-g*b.z;e.m[5]=p*b.y*b.y+d;e.m[6]=g*b.x+n;e.m[7]=0;e.m[8]=g*b.y+m;e.m[9]=n-g*b.x;e.m[10]=p*b.z*b.z+d;e.m[11]=0;e.m[12]=0;e.m[13]=0;e.m[14]=0;e.m[15]=1;return e};g.intersect3D_2Planes=function(b,c,d,e,g,l){var m=a.Point3.cross(b.normal,d.normal),n=Math.abs(m.x),r=Math.abs(m.y),t=Math.abs(m.z);if(1E-7>n+r+t)return d=a.Point3.subtract(e,c),0===a.Point3.dot(b.normal,d)?1:0;n=n>r?n>t?1:3:r>t?2:3;r=a.Point3.zero();c=-a.Point3.dot(b.normal,
c);e=-a.Point3.dot(d.normal,e);switch(n){case 1:r.x=0;r.y=(e*b.normal.z-c*d.normal.z)/m.x;r.z=(c*d.normal.y-e*b.normal.y)/m.x;break;case 2:r.x=(c*d.normal.z-e*b.normal.z)/m.y;r.y=0;r.z=(e*b.normal.x-c*d.normal.x)/m.y;break;case 3:r.x=(e*b.normal.y-c*d.normal.y)/m.z,r.y=(c*d.normal.x-e*b.normal.x)/m.z,r.z=0}g.assign(r);l.set(r.x+m.x,r.y+m.y,r.z+m.z);return 2};g.IntersectionPlaneLine=function(b,c,d,g,p,l){var m=new a.Plane;m.normal.x=(g.y-d.y)*(p.z-d.z)-(g.z-d.z)*(p.y-d.y);m.normal.y=(g.z-d.z)*(p.x-
d.x)-(g.x-d.x)*(p.z-d.z);m.normal.z=(g.x-d.x)*(p.y-d.y)-(g.y-d.y)*(p.x-d.x);m.normal.normalize();m.d=-m.normal.x*d.x-m.normal.y*d.y-m.normal.z*d.z;return e(b,c,m,l)};g.ComputeAngleBetweenVector=function(c,d){c=c.copy().normalize();var e=d.copy().normalize();d=a.Point3.cross(c,e).length();c=a.Point3.dot(c,e);return b(Math.atan2(d,c))};g.GeneratePointsOnCircle=function(b,c,e,g,p){for(var l=2*Math.PI/g,m=0;m<g;m++)b[m]=new a.Point3(0,e*Math.cos(l*m),e*Math.sin(l*m));b[g]=b[0].copy();e=d(p);e.normalize();
l=a.Point3.cross(e,p);l.normalize();var m=new a.Matrix,n=m.m;n[0]=p.x;n[1]=p.y;n[2]=p.z;n[3]=0;n[4]=e.x;n[5]=e.y;n[6]=e.z;n[7]=0;n[8]=l.x;n[9]=l.y;n[10]=l.z;n[11]=0;n[12]=0;n[13]=0;n[14]=0;n[15]=1;m.transformArray(b,b);for(m=0;m<=g;m++)b[m].set(b[m].x+c.x,b[m].y+c.y,b[m].z+c.z)};g.DistanceLineLine=function(b,c,d,e,g,l){var m=0,n=0,r=a.Point3.subtract(c,b),t=a.Point3.subtract(e,d),u=a.Point3.dot(r,b),v=a.Point3.dot(r,t),w=a.Point3.dot(r,r),y=a.Point3.dot(r,d),x=a.Point3.dot(t,t),z=a.Point3.dot(t,d),
A=a.Point3.dot(t,b);e=a.Point3.dot(r,e);var C=a.Point3.dot(t,c),B=w*x-v*v;0===B?(0!==w?(y=(y-u)/w,0>y?y=0:1<y&&(y=1),u=(e-u)/w,0>u?u=0:1<u&&(u=1)):u=y=0,0!==x?(A=(A-z)/x,0>A?A=0:1<A&&(A=1),x=(C-z)/x,0>x?x=0:1<x&&(x=1)):x=A=0,m=(y+u)/2,n=(A+x)/2):(c=(v*A-v*z-x*u+x*y)/B,v=(w*A-w*z+v*y-v*u)/B,y=(y-u)/w,A=(A-z)/x,u=(e-u)/w,x=(C-z)/x,0<=c&&1>=c&&0<=v&&1>=v?(m=c,n=v):0>c&&0<=v&&1>=v?(m=c,n=A):1<c&&0<=v&&1>=v?(m=c,n=x):0<=c&&1>=c&&0>v?(m=y,n=v):0<=c&&1>=c&&1<v?(m=u,n=v):0>c&&0>v?(m=y,n=A):0>c&&1<v?(m=u,
n=A):1<c&&0>v?(m=y,n=x):1<c&&1<v&&(m=u,n=x),0>m?m=0:1<m&&(m=1),0>n?n=0:1<n&&(n=1));g.x=m*r.x+b.x;g.y=m*r.y+b.y;g.z=m*r.z+b.z;l.x=n*t.x+d.x;l.y=n*t.y+d.y;l.z=n*t.z+d.z;return a.Point3.subtract(l,g).length()}})(a.MeasureUtils||(a.MeasureUtils={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e;(function(a){a[a.Created=0]="Created";a[a.Hidden=1]="Hidden";a[a.Shown=2]="Shown"})(e=d._NoteTextEvent||(d._NoteTextEvent={}));var c=function(b){function c(f,d,e,g,l){var m=b.call(this)||this;m._uniqueId=a.GUID.create();m._noteElementId=null;m._position=a.Point3.zero();m._text="";m._color=a.Color.white();m._sphereRadius=.03;m._deleted=!1;m._active=!1;m._viewer=f;m._noteTextManager=d;m._selectionPosition=e;m._selectionNormal=g;m._partId=l;m._noteTextManager.addNote(m);
m._init();return m}__extends(c,b);c.prototype._init=function(){return __awaiter(this,void 0,void 0,function(){var a=this,b,c,f,d,g;return __generator(this,function(n){switch(n.label){case 0:return b=this._createPinTransformationMatrix(this._selectionPosition,this._selectionNormal),[4,Promise.all([this._createPinStemInstance(b),this._createPinSphereInstance(b)])];case 1:return c=n.sent(),f=c[0],d=c[1],this._stemInstanceId=f,this._sphereInstanceId=d,[4,this._restore(!1)];case 2:return n.sent(),this._callbacks=
{visibilityChanged:function(){a._matchPartVisibility()}},this._viewer.setCallbacks(this._callbacks),g=this._viewer._getCallbackManager(),g.trigger("_noteTextEvent",e.Created,this),[2]}})})};c.prototype._matchPartVisibility=function(){if(void 0!==this._sphereInstanceId&&void 0!==this._stemInstanceId){var a=this._viewer.model,b=a.getNodeVisibility(this._partId),c=a.getNodeVisibility(this._sphereInstanceId);b===c||this._noteTextManager.getExplodeActive()||a.setNodesVisibility([this._stemInstanceId,this._sphereInstanceId],
b);a=this._noteTextManager.getActiveItem();null===a||a.getStemInstanceId()!==this._stemInstanceId||b||this.hide()}};c.prototype.updatePosition=function(){return __awaiter(this,void 0,void 0,function(){var a;return __generator(this,function(b){switch(b.label){case 0:return void 0===this._sphereInstanceId?[2]:[4,this._viewer.model.getNodeRealBounding(this._sphereInstanceId)];case 1:return this._pinBoundingBox=a=b.sent(),this._position=this._pinBoundingBox.center(),this.setText(this._text),[2]}})})};
c.prototype._restore=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._noteTextManager.setActiveItemHandle(this._viewer.markupManager.registerMarkup(this)),this._noteTextManager.setActiveItem(this),this._show(a),[4,Promise.all([this._updateColor(),this.draw()])];case 1:return b.sent(),[2]}})})};c.prototype.restore=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._restore(!0)]})})};
c.prototype.setText=function(a){this._text=a;this._noteTextManager.getNoteTextElement().setText(a)};c.prototype.saveTextValue=function(){this._text=this._noteTextManager.getNoteTextElement().getText()};c.prototype.draw=function(){return __awaiter(this,void 0,void 0,function(){var b,c,f;return __generator(this,function(d){switch(d.label){case 0:if(this._deleted||!this._active)return[2];this._behindView=!1;return[4,this.updatePosition()];case 1:return d.sent(),b=this._viewer.view.projectPoint(this._position),
0>=b.z&&(this._behindView=!0),this._behindView?null!==this._noteElementId&&null!==document.getElementById(this._noteElementId)&&(this._viewer.markupManager.removeMarkupElement(this._noteElementId),this._noteElementId=null):(c=new a.Point2(b.x,b.y),f=this._noteTextManager.getNoteTextElement(),f.setPosition(c),null===this._noteElementId&&(this._noteElementId=this._viewer.markupManager.addMarkupElement(f.getHtmlContainer()))),[2]}})})};c.prototype.hit=function(b){var c=this._noteTextManager.getNoteTextElement(),
f=c.getPosition(),c=c.getSize();return a.Internal.pointInRect(b,f,c)};c.prototype.getClassName=function(){return c.className};c.prototype.getUniqueId=function(){return this._uniqueId};c.prototype.getSphereInstanceId=function(){return this._sphereInstanceId};c.prototype.getStemInstanceId=function(){return this._stemInstanceId};c.prototype.onSelect=function(){this._noteTextManager.getNoteTextElement().focus()};c.prototype.onDeselect=function(){this._noteTextManager.getNoteTextElement().blur()};c.prototype.hide=
function(){var a=this._noteTextManager.getNoteTextElement();a.hide();this.setText(a.getText());this._noteTextManager.setActiveItem(null);this._active=!1;this._viewer._getCallbackManager().trigger("_noteTextEvent",e.Hidden,this)};c.prototype._show=function(a){this._noteTextManager.getNoteTextElement().show(this);this._active=!0;a&&this._viewer._getCallbackManager().trigger("_noteTextEvent",e.Shown,this)};c.prototype.show=function(){this._show(!0)};c.prototype.remove=function(){return __awaiter(this,
void 0,void 0,function(){var c,f;return __generator(this,function(d){switch(d.label){case 0:return null!==this._callbacks&&(this._viewer.unsetCallbacks(this._callbacks),this._callbacks=null),c=this._viewer.model,f=[],void 0!==this._stemInstanceId&&f.push(c.deleteMeshInstances([this._stemInstanceId])),void 0!==this._sphereInstanceId&&f.push(c.deleteMeshInstances([this._sphereInstanceId])),this.hide(),this._noteTextManager.removeNote(this),this._deleted=!0,[4,a.Internal.waitForAll(f)];case 1:return d.sent(),
b.prototype.remove.call(this),[2]}})})};c.prototype.getRemoved=function(){return this._deleted};c.prototype.setColor=function(a){this._color=a;this._updateColor();return Promise.resolve()};c.prototype.getColor=function(){return this._color};c.prototype.getPartId=function(){return this._partId};c.prototype._updateColor=function(){void 0!==this._sphereInstanceId&&this._viewer.model.setNodesFaceColor([this._sphereInstanceId],this._color)};c.prototype._createPinTransformationMatrix=function(b,c){var f=
0,d=c.x;Math.abs(c.y)<Math.abs(d)&&(d=c.y,f=1);Math.abs(c.z)<Math.abs(d)&&(f=2);d=[0,0,0];d[f]=1;var f=a.Point3.createFromArray(d),f=a.Point3.cross(c,f).normalize(),d=a.Point3.cross(c,f),e=new a.Matrix;e.m=[c.x,c.y,c.z,0,f.x,f.y,f.z,0,d.x,d.y,d.z,0,0,0,0,1];e=a.Matrix.multiply(e,(new a.Matrix).setScaleComponent(this._sphereRadius,this._sphereRadius,this._sphereRadius));e.setTranslationComponent(b.x,b.y,b.z);return e};c.prototype._createPinStemInstance=function(b){return __awaiter(this,void 0,void 0,
function(){var c,f,d,e;return __generator(this,function(g){c=this._noteTextManager.getPinStemMeshId();if(null===c)throw new a.CommunicatorError("stem mesh hasn't been created yet");f=new a.MeshInstanceData(c,b,"pin-stem-instance",void 0,a.Color.black());f.setOpacity(1);d=a.MeshInstanceCreationFlags.SuppressCameraScale|a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.DoNotXRay|a.MeshInstanceCreationFlags.ExcludeBounding|a.MeshInstanceCreationFlags.OverrideSceneVisibility|
a.MeshInstanceCreationFlags.AlwaysDraw;f.setCreationFlags(d);e=this._viewer.model;return[2,e.createMeshInstance(f,void 0,!0)]})})};c.prototype._createPinSphereInstance=function(b){return __awaiter(this,void 0,void 0,function(){var c,f,d,e;return __generator(this,function(g){c=this._noteTextManager.getPinSphereMeshId();if(null===c)throw new a.CommunicatorError("sphere mesh hasn't been created yet");f=new a.MeshInstanceData(c,b,"pin-sphere-instance",a.Color.white(),void 0);f.setOpacity(1);d=a.MeshInstanceCreationFlags.SuppressCameraScale|
a.MeshInstanceCreationFlags.DoNotCut|a.MeshInstanceCreationFlags.DoNotExplode|a.MeshInstanceCreationFlags.DoNotXRay|a.MeshInstanceCreationFlags.ExcludeBounding|a.MeshInstanceCreationFlags.OverrideSceneVisibility|a.MeshInstanceCreationFlags.AlwaysDraw;f.setCreationFlags(d);e=this._viewer.model;return[2,e.createMeshInstance(f,void 0,!0)]})})};c.prototype.toJson=function(){return{uniqueId:this._uniqueId,className:this.getClassName(),selectionPosition:this._selectionPosition.toJson(),selectionNormal:this._selectionNormal.toJson(),
text:this._text,color:this._color,partId:this._partId}};c.prototype.forJson=function(){return this.toJson()};c._fromJson=function(b,d,e){if(!e.findById(b.uniqueId)){var g=a.Point3.fromJson(b.selectionPosition),l=a.Point3.fromJson(b.selectionNormal);d=new c(d,e,g,l,b.partId);d._uniqueId=b.uniqueId;d.setText(b.text);d.setColor(a.Color.fromJson(b.color));return d}return null};c.fromJson=function(a,b,d){return __awaiter(this,void 0,void 0,function(){var e;return __generator(this,function(g){e=c._fromJson(a,
b,d);return[2,e]})})};c.className="Communicator.Markup.Note.NoteText";return c}(g.MarkupItem);d.NoteText=c})(g.Note||(g.Note={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){var c=d.call(this)||this;c._pinSphereMeshId=null;c._pinStemMeshId=null;c._noteTextList=[];c._activeItemHandle=null;c._activeItem=null;c._explodeActive=!1;c._cuttingActive=!1;c._isolateActive=!1;c._stemLength=2;c._sphereIterations=2;c._viewer=b;c._noteTextElement=new a.Markup.Note.NoteTextElement;c._noteTextElement.setPositionOffset(new a.Point2(12,-24));c._viewer.setCallbacks({sceneReady:function(){c._init()}});return c}__extends(c,d);c.prototype._init=
function(){return __awaiter(this,void 0,void 0,function(){var a,f,d,e;return __generator(this,function(g){switch(g.label){case 0:return null===c._globalPinSphereMeshData&&(c._globalPinSphereMeshData=this._createPinSphereMeshData()),null===c._globalPinStemMeshData&&(c._globalPinStemMeshData=this._createPinStemMeshData()),a=this._viewer.model,f=a.createMesh(c._globalPinSphereMeshData),d=a.createMesh(c._globalPinStemMeshData),[4,Promise.all([f,d])];case 1:return e=g.sent(),this._pinSphereMeshId=e[0],
this._pinStemMeshId=e[1],[2]}})})};c.prototype._createPinStemMeshData=function(){var b=new a.MeshData;b.addPolyline([0,0,0,this._stemLength,0,0]);return b};c.prototype._createPinSphereMeshData=function(){var b=(1+Math.sqrt(5))/2,c=Math.sqrt(10+2*Math.sqrt(5))/(4*b),d=c/2,b=c/(2*b),e=[];e[0]=new a.Point3(-b,d,0);e[1]=new a.Point3(b,d,0);e[2]=new a.Point3(-b,-d,0);e[3]=new a.Point3(b,-d,0);e[4]=new a.Point3(0,-b,d);e[5]=new a.Point3(0,b,d);e[6]=new a.Point3(0,-b,-d);e[7]=new a.Point3(0,b,-d);e[8]=new a.Point3(d,
0,-b);e[9]=new a.Point3(d,0,b);e[10]=new a.Point3(-d,0,-b);e[11]=new a.Point3(-d,0,b);for(d=0;d<e.length;d++){var g=e[d];g.normalize()}for(var p=[[0,11,5],[0,5,1],[0,1,7],[0,7,10],[0,10,11],[1,5,9],[5,11,4],[11,10,2],[10,7,6],[7,1,8],[3,9,4],[3,4,2],[3,2,6],[3,6,8],[3,8,9],[4,9,5],[2,4,11],[6,2,10],[8,6,7],[9,8,1]],l=12,b=function(b){var c=[];p.map(function(b){var f=e[b[0]],d=e[b[1]],h=e[b[2]];e[l++]=(new a.Point3(f.x+d.x,f.y+d.y,f.z+d.z)).scale(.5).normalize();e[l++]=(new a.Point3(d.x+h.x,d.y+h.y,
d.z+h.z)).scale(.5).normalize();e[l++]=(new a.Point3(h.x+f.x,h.y+f.y,h.z+f.z)).scale(.5).normalize();c.push([b[0],l-3,l-1]);c.push([l-3,l-2,l-1]);c.push([l-3,b[1],l-2]);c.push([l-2,b[2],l-1])});p=c},d=0;d<this._sphereIterations;d++)b(d);for(var b=[],c=[],m=0,n=p;m<n.length;m++)for(var r=n[m],d=0;3>d;d++)g=e[r[d]],b.push(g.x+this._stemLength+1),b.push(g.y),b.push(g.z),g=g.normalize(),c.push(g.x),c.push(g.y),c.push(g.z);d=new a.MeshData;d.addFaces(b,c);d.setFaceWinding(a.FaceWinding.CounterClockwise);
return d};c.prototype.getPinStemMeshId=function(){return this._pinStemMeshId};c.prototype.getPinSphereMeshId=function(){return this._pinSphereMeshId};c.prototype.getNoteTextElement=function(){return this._noteTextElement};c.prototype.setNoteTextElement=function(a){this._noteTextElement.hide();this._noteTextElement=a};c.prototype.getNoteTextList=function(){return this._noteTextList};c.prototype.addNote=function(a){this._noteTextList.push(a);this._activeItem=a};c.prototype.removeNote=function(a){a=
this._noteTextList.indexOf(a);this._noteTextList.splice(a,1)};c.prototype.updatePinVisibility=function(){return __awaiter(this,void 0,void 0,function(){var a,c,d,e,g,p,l;return __generator(this,function(m){if(0<this._noteTextList.length){a=[];c=0;for(d=this._noteTextList;c<d.length;c++)e=d[c],g=e.getSphereInstanceId(),p=e.getStemInstanceId(),void 0!==g&&a.push(g),void 0!==p&&a.push(p);l=this._viewer.model.setNodesVisibility(a,!this._explodeActive);this._explodeActive&&this._noteTextElement.hide();
return[2,l]}return[2]})})};c.prototype.explode=function(a){this._explodeActive=0<a;return this.updatePinVisibility()};c.prototype.getExplodeActive=function(){return this._explodeActive};c.prototype.checkCuttingActive=function(){this._cuttingActive=!1;if(0<this._noteTextList.length)for(var a=this._viewer.cuttingManager,c=0;c<a.getCuttingSectionCount();c++){var d=a.getCuttingSection(c);if(null!==d&&d.isActive()){this._cuttingActive=!0;break}}return this.updatePinVisibility()};c.prototype.getCuttingActive=
function(){return this._cuttingActive};c.prototype.setIsolateActive=function(a){this._isolateActive=a};c.prototype.getIsolateActive=function(){return this._isolateActive};c.prototype.getActiveItem=function(){return this._activeItem};c.prototype.setActiveItem=function(a){this._activeItem=a};c.prototype.getActiveItemHandle=function(){return this._activeItemHandle};c.prototype.setActiveItemHandle=function(a){this._activeItemHandle=a};c.prototype.getItemList=function(){return this._noteTextList};c.prototype.selectPin=
function(a){this._activeItem&&this._activeItem.hide();a=a.getNodeId();return null!==a&&(a=this._getNoteTextFromNodeId(a),null!==a)?(a.restore(),!0):!1};c.prototype.checkPinInstance=function(a){return null!==this._getNoteTextFromNodeId(a)};c.prototype._getNoteTextFromNodeId=function(a){for(var c=0,d=this._noteTextList;c<d.length;c++){var e=d[c];if(e.getSphereInstanceId()===a||e.getStemInstanceId()===a)return e}return null};c.prototype.findById=function(a){for(var c=0,d=this._noteTextList;c<d.length;c++)if(a===
d[c].getUniqueId())return!0;return!1};c.prototype.loadData=function(b){for(var c=[],d=0;d<b.length;d++){var e=a.Markup.Note.NoteText.fromJson(b[d],this._viewer,this).then(function(a){return null!==a});c.push(e)}return Promise.all(c)};c.prototype.exportMarkup=function(){for(var a=[],c=0,d=this._noteTextList;c<d.length;c++)a.push(d[c].toJson());return a};c._globalPinSphereMeshData=null;c._globalPinStemMeshData=null;return c}(a.MarkupTypeManager);g.NoteTextManager=d})(a.Internal||(a.Internal={}))})(Communicator||
(Communicator={}));(function(a){(function(a){(function(d){var e=function(a){function b(){return null!==a&&a.apply(this,arguments)||this}__extends(b,a);b.prototype.onDragStart=function(a){a;return!1};b.prototype.onDragMove=function(a){a;return!1};b.prototype.onDragEnd=function(a){a;return!1};return b}(a.MarkupItem);d.RedlineItem=e})(a.Redline||(a.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){var d=c.call(this)||this;d._uniqueId=a.GUID.create();d._centerPt=a.Point3.zero();d._radiusPt=a.Point3.zero();d._circleShape=new g.Shape.Circle;d._previousDragPlanePosition=a.Point3.zero();d._viewer=b;d._circleShape.setFillOpacity(0);d._circleShape.setStrokeColor(a.Color.red());d._circleShape.setStrokeWidth(2);return d}__extends(b,c);b.prototype.setCenter=function(a){this._centerPt.assign(a)};b.prototype.getCenter=function(){return this._centerPt.copy()};
b.prototype.setRadiusPoint=function(a){this._radiusPt.assign(a)};b.prototype.getRadiusPoint=function(){return this._radiusPt.copy()};b.prototype.getUniqueId=function(){return this._uniqueId};b.prototype._update=function(){var b=this._viewer.view,c=a.Point2.fromPoint3(b.projectPoint(this._centerPt)),b=a.Point2.fromPoint3(b.projectPoint(this._radiusPt)),b=a.Point2.distance(c,b);this._circleShape.set(c,b)};b.prototype.draw=function(){this._update();this._viewer.markupManager.getRenderer().drawCircle(this._circleShape)};
b.prototype.hit=function(b){this._update();var c=this._circleShape.getStrokeWidth();b=a.Point2.distance(this._circleShape.getCenter(),b)-this._circleShape.getRadius();return Math.abs(b)<=c};b.prototype.onSelect=function(){this._circleShape.setStrokeWidth(4)};b.prototype.onDeselect=function(){this._circleShape.setStrokeWidth(2)};b.prototype.isValid=function(){return this._circleShape.getRadius()>b._validRadiusTolerance};b.prototype.onDragStart=function(a){var b=this._viewer.view;a=b.getCamera().getCameraPlaneIntersectionPoint(a,
b);null!==a&&this._previousDragPlanePosition.assign(a);return!1};b.prototype.onDragMove=function(b){var c=this._viewer.view;b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);null!==b&&(c=a.Point3.subtract(b,this._previousDragPlanePosition),this._centerPt.add(c),this._radiusPt.add(c),this._previousDragPlanePosition.assign(b));return!0};b.prototype.toJson=function(){return{uniqueId:this._uniqueId,centerPoint:this._centerPt.toJson(),radiusPoint:this._radiusPt.toJson(),className:this.getClassName()}};
b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(a,c){c=new b(c);c._uniqueId=a.uniqueId;c.setCenter(a.centerPoint);c.setRadiusPoint(a.radiusPoint);return c};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Redline.RedlineCircle"};b._validRadiusTolerance=1;return b}(d.RedlineItem);d.RedlineCircle=e})(g.Redline||(g.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b._points=[];return b}__extends(b,a);b.prototype.clearPoints=function(){this._points=[]};b.prototype.getPoints=function(){return this._points};b.prototype.pushPoint=function(a){this._points.push(a.copy())};return b}(a.EndcapShape);a.Polyline=e;e=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b._polylines=[];return b}__extends(b,a);b.prototype.clear=function(){this._polylines=
[]};b.prototype.createPolyline=function(){var a=[];this._polylines.push(a);return a};b.prototype.getPolylines=function(){return this._polylines};return b}(a.EndcapShape);a.PolylineCollection=e})(a.Shape||(a.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){var d=c.call(this)||this;d._uniqueId=a.GUID.create();d._points=[];d._polylineShape=new g.Shape.Polyline;d._previousDragPlanePosition=a.Point3.zero();d._viewer=b;d._polylineShape.setStrokeWidth(2);d._polylineShape.setStrokeColor(a.Color.red());return d}__extends(b,c);b.prototype.addPoint=function(a){this._points.push(a.copy())};b.prototype._update=function(){var b=this._viewer.view;this._polylineShape.clearPoints();for(var c=0,
d=this._points;c<d.length;c++){var e=a.Point2.fromPoint3(b.projectPoint(d[c]));this._polylineShape.pushPoint(e)}};b.prototype.draw=function(){this._update();this.isValid()&&this._viewer.markupManager.getRenderer().drawPolyline(this._polylineShape)};b.prototype.hit=function(b){this._update();var c=this._polylineShape.getStrokeWidth(),d=this._polylineShape.getPoints();if(1<d.length)for(var e=1;e<d.length;e++)if(a.Internal.pointOnLineSegment2d(b,d[e-1],d[e],c))return!0;return!1};b.prototype.onSelect=
function(){this._polylineShape.setStrokeWidth(4)};b.prototype.onDeselect=function(){this._polylineShape.setStrokeWidth(2)};b.prototype.getClassName=function(){return"Communicator.Markup.Redline.RedlinePolyline"};b.prototype.isValid=function(){return 1<this._points.length};b.prototype.onDragStart=function(a){var b=this._viewer.view;a=b.getCamera().getCameraPlaneIntersectionPoint(a,b);null!==a&&this._previousDragPlanePosition.assign(a);return!1};b.prototype.onDragMove=function(b){var c=this._viewer.view;
b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);if(null!==b){for(var c=a.Point3.subtract(b,this._previousDragPlanePosition),d=0,e=this._points;d<e.length;d++)e[d].add(c);this._polylineShape.clearPoints();this._previousDragPlanePosition.assign(b)}return!0};b.prototype.toJson=function(){for(var a=[],b=0,c=this._points;b<c.length;b++)a.push(c[b].toJson());return{uniqueId:this._uniqueId,points:a}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(c,d){d=new b(d);d._uniqueId=
c.uniqueId;var e=0;for(c=c.points;e<c.length;e++)d.addPoint(a.Point3.fromJson(c[e]));return d};b.construct=function(a,c){return b.fromJson(a,c)};return b}(d.RedlineItem);d.RedlinePolyline=e})(g.Redline||(g.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(b){var d=c.call(this)||this;d._uniqueId=a.GUID.create();d._point1=a.Point3.zero();d._point2=a.Point3.zero();d._rectangleShape=new g.Shape.Rectangle;d._previousDragPlanePosition=a.Point3.zero();d._viewer=b;d._rectangleShape.setFillOpacity(0);d._rectangleShape.setStrokeColor(a.Color.red());d._rectangleShape.setStrokeWidth(2);return d}__extends(b,c);b.prototype.setPoint1=function(a){this._point1.assign(a)};b.prototype.getPoint1=function(){return this._point1.copy()};
b.prototype.setPoint2=function(a){this._point2.assign(a)};b.prototype.getPoint2=function(){return this._point2.copy()};b.prototype.getUniqueId=function(){return this._uniqueId};b.prototype._update=function(){var b=this._viewer.view,c=b.projectPoint(this._point1),d=b.projectPoint(this._point2),b=new a.Point2(Math.min(c.x,d.x),Math.min(c.y,d.y)),c=new a.Point2(Math.max(c.x,d.x),Math.max(c.y,d.y)),c=a.Point2.subtract(c,b);this._rectangleShape.setPosition(b);this._rectangleShape.setSize(c)};b.prototype.draw=
function(){this._update();this._viewer.markupManager.getRenderer().drawRectangle(this._rectangleShape)};b.prototype.hit=function(b){this._update();var c=this._rectangleShape.getStrokeWidth(),d=this._rectangleShape.getPosition(),e=this._rectangleShape.getSize(),g=new a.Point2(d.x+e.x,d.y),l=new a.Point2(d.x,d.y+e.y),e=new a.Point2(d.x+e.x,d.y+e.y);return a.Internal.pointOnLineSegment2d(b,d,g,c)||a.Internal.pointOnLineSegment2d(b,g,e,c)||a.Internal.pointOnLineSegment2d(b,e,l,c)||a.Internal.pointOnLineSegment2d(b,
l,d,c)?!0:!1};b.prototype.onSelect=function(){this._rectangleShape.setStrokeWidth(4)};b.prototype.onDeselect=function(){this._rectangleShape.setStrokeWidth(2)};b.prototype.isValid=function(){var a=this._rectangleShape.getSize();return a.x>b._validSizeTolerance.x&&a.y>b._validSizeTolerance.y};b.prototype.onDragStart=function(a){var b=this._viewer.view;a=b.getCamera().getCameraPlaneIntersectionPoint(a,b);null!==a&&this._previousDragPlanePosition.assign(a);return!1};b.prototype.onDragMove=function(b){var c=
this._viewer.view;b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);null!==b&&(c=a.Point3.subtract(b,this._previousDragPlanePosition),this._point1.add(c),this._point2.add(c),this._previousDragPlanePosition.assign(b));return!0};b.prototype.toJson=function(){return{uniqueId:this._uniqueId,className:this.getClassName(),point1:this._point1.toJson(),point2:this._point2.toJson()}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(a,c){c=new b(c);c._uniqueId=a.uniqueId;c.setPoint1(a.point1);
c.setPoint2(a.point2);return c};b.construct=function(a,c){return b.fromJson(a,c)};b.prototype.getClassName=function(){return"Communicator.Markup.Redline.RedlineRectangle"};b._validSizeTolerance=new a.Point2(5,5);return b}(d.RedlineItem);d.RedlineRectangle=e})(g.Redline||(g.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(a,c){this._sizeChanged=!1;this._sizeUpdateCallback=a;this._textUpdateCallback=c;this._createTextBox()}c.prototype._createTextBox=function(){var b=this;this._currentSize=c._defaultSize.copy();this._textArea=document.createElement("textarea");this._textArea.style.position="absolute";this._textArea.style.width=c._defaultSize.x+"px";this._textArea.style.height=c._defaultSize.y+"px";this._textArea.style.zIndex="1";this._textArea.style.pointerEvents=
"none";this._textArea.style.resize="none";this.setBorderWidth(2);this._textArea.onmousemove=function(c){c.stopPropagation();c=new a.Point2(parseInt(b._textArea.style.width,10),parseInt(b._textArea.style.height,10));b.setSize(c)};this._textArea.onmouseup=function(a){a.stopPropagation();b._sizeChanged&&(b._sizeChanged=!1,b._sizeUpdateCallback(b._currentSize))};this._textArea.oninput=function(){b._textUpdateCallback(b._textArea.value)}};c.prototype.setPosition=function(a){this._textArea.style.left=a.x+
"px";this._textArea.style.top=a.y+"px"};c.prototype.setBorderWidth=function(a){this._textArea.style.outline=a+"px solid red"};c.prototype.setText=function(a){this._textArea.textContent=a};c.prototype.setSize=function(a){this._currentSize.equals(a)||(this._sizeChanged=!0,this._currentSize.assign(a),this._textArea.style.width=a.x+"px",this._textArea.style.height=a.y+"px")};c.prototype.focus=function(){this._textArea.focus();this._textArea.style.pointerEvents="auto";this._textArea.style.resize="both"};
c.prototype.blur=function(){this._textArea.blur();this._textArea.style.pointerEvents="none";this._textArea.style.resize="none"};c.prototype.getTextArea=function(){return this._textArea};c._defaultSize=new a.Point2(100,100);return c}();d.RedlineTextElement=e})(g.Redline||(g.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(c){function b(f,e){void 0===e&&(e=b.defaultText);var g=c.call(this)||this;g._uniqueId=a.GUID.create();g._position=a.Point3.zero();g._size=new a.Point2(100,100);g._redlineElementId=null;g._previousDragPlanePosition=a.Point3.zero();g._viewer=f;g._text=e;g._redlineTextElement=new d.RedlineTextElement(function(a){g.setSize(a)},function(a){g.setText(a)});g._redlineTextElement.setText(g._text);g._callbacks={selectionArray:function(){g.onDeselect()}};
g._viewer.setCallbacks(g._callbacks);return g}__extends(b,c);b.prototype.setPosition=function(a){this._position.assign(a)};b.prototype.getPosition=function(){return this._position.copy()};b.prototype.setSize=function(a){this._viewer._getCallbackManager().trigger("redlineUpdated",this);this._size.assign(a)};b.prototype.setText=function(a){this._viewer._getCallbackManager().trigger("redlineUpdated",this);this._text=a};b.prototype.draw=function(){var b=a.Point2.fromPoint3(this._viewer.view.projectPoint(this._position));
this._redlineTextElement.setPosition(b);null===this._redlineElementId&&(this._redlineElementId=this._viewer.markupManager.addMarkupElement(this._redlineTextElement.getTextArea()))};b.prototype.hit=function(b){var c=this._redlineTextElement.getTextArea(),d=new a.Point2(parseFloat(c.style.left||"0"),parseFloat(c.style.top||"0")),c=new a.Point2(parseFloat(c.style.width||"0"),parseFloat(c.style.height||"0"));return a.Internal.pointInRect(b,d,c)};b.prototype.getClassName=function(){return b.className};
b.prototype.onSelect=function(){this._redlineTextElement.setBorderWidth(4);this._redlineTextElement.focus()};b.prototype.onDeselect=function(){this._redlineTextElement.setBorderWidth(2);this._redlineTextElement.blur()};b.prototype.isValid=function(){return 0<this._text.length};b.prototype.remove=function(){this._redlineElementId&&(this._viewer.markupManager.removeMarkupElement(this._redlineElementId),this._redlineElementId=null);null!==this._callbacks&&(this._viewer.unsetCallbacks(this._callbacks),
this._callbacks=null);c.prototype.remove.call(this)};b.prototype.onDragStart=function(a){var b=this._viewer.view;a=b.getCamera().getCameraPlaneIntersectionPoint(a,b);null!==a&&this._previousDragPlanePosition.assign(a);return!1};b.prototype.onDragMove=function(b){var c=this._viewer.view;b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);if(null!==b){var c=a.Point3.subtract(b,this._previousDragPlanePosition),d=this.getPosition();d.add(c);this.setPosition(d);this._previousDragPlanePosition.assign(b)}return!0};
b.prototype.toJson=function(){return{uniqueId:this._uniqueId,className:this.getClassName(),position:this._position.toJson(),size:this._size.toJson(),text:this._text}};b.prototype.forJson=function(){return this.toJson()};b.fromJson=function(a,c){c=new b(c,a.text);c._uniqueId=a.uniqueId;c.setPosition(a.position);c.setSize(a.size);return c};b.construct=function(a,c){return b.fromJson(a,c)};b.className="Communicator.Markup.Redline.RedlineText";b.defaultText="Type Here...";return b}(d.RedlineItem);d.RedlineText=
e})(g.Redline||(g.Redline={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){var e=function(){function c(){this._svgDefsElement=this._svgCanvas=null;this._svgElements=[];this._svgTextElements=[]}c.prototype._setCanvas=function(a){this._svgCanvas=a;this._svgDefsElement=document.createElementNS(d.Util.svgNamespace,"defs");this._svgCanvas.appendChild(this._svgDefsElement)};c.prototype._clear=function(){if(null===this._svgCanvas||null===this._svgDefsElement)throw new a.CommunicatorError("canvas not set");for(;this._svgCanvas.firstChild;)this._svgCanvas.removeChild(this._svgCanvas.firstChild);
this._svgElements=[];for(this._svgTextElements=[];this._svgDefsElement.firstChild;)this._svgDefsElement.removeChild(this._svgDefsElement.firstChild);this._svgCanvas.appendChild(this._svgDefsElement)};c.prototype._finalize=function(){if(null===this._svgCanvas)throw new a.CommunicatorError("canvas not set");for(var b=0,c=this._svgElements;b<c.length;b++){var d=c[b];this._svgCanvas.appendChild(d)}b=0;for(c=this._svgTextElements;b<c.length;b++)d=c[b],this._svgCanvas.appendChild(d)};c.prototype.drawCircle=
function(a){return this._addCircleNode(a.getCenter(),a.getRadius(),a)};c.prototype.drawCircles=function(a){for(var c=[],d=0,e=a.getCircles();d<e.length;d++){var g=e[d],g=this._addCircleNode(g.center,g.radius,a);c.push(g)}return c};c.prototype.drawLine=function(a){return this._addLineElement(a.getP1(),a.getP2(),a)};c.prototype.drawLines=function(a){for(var c=[],d=0,e=a.getLines();d<e.length;d++){var g=e[d],g=this._addLineElement(g.p1,g.p2,a);c.push(g)}return c};c.prototype.drawText=function(a){return this._addTextElement(a.getText(),
a.getPosition(),a)};c.prototype.drawTexts=function(a){for(var c=[],d=0,e=a.getStrings();d<e.length;d++){var g=e[d],g=this._addTextElement(g.text,g.position,a);c.push(g)}return c};c.prototype.measureText=function(b,c){if(null===this._svgCanvas)throw new a.CommunicatorError("canvas not set");b=this._createTextElement(b,a.Point2.zero(),c);this._svgCanvas.appendChild(b);c=b.getBoundingClientRect();c=new a.Point2(c.width,c.height);this._svgCanvas.removeChild(b);return c};c.prototype.measureTextBox=function(a){var c=
this.measureText(a.getTextString(),a.getTextPortion());c.x+=2*a.getBoxPortion().getStrokeWidth();c.y+=2*a.getBoxPortion().getStrokeWidth();c.x+=2*a.getPadding();c.y+=2*a.getPadding();return c};c.prototype.drawPolyline=function(a){return this._addPolylineElement(a.getPoints(),a)};c.prototype.drawPolylines=function(a){for(var c=[],d=0,e=a.getPolylines();d<e.length;d++){var g=this._addPolylineElement(e[d],a);c.push(g)}return c};c.prototype.drawPolygon=function(a){return this._addPolygonElement(a.getPoints(),
a)};c.prototype.drawPolygons=function(a){for(var c=[],d=0,e=a.getPolygons();d<e.length;d++){var g=this._addPolygonElement(e[d],a);c.push(g)}return c};c.prototype.drawRectangle=function(a){return this._addRectangleElement(a.getPosition(),a.getSize(),a)};c.prototype.drawRectangles=function(a){for(var c=[],d=0,e=a.getRectangles();d<e.length;d++){var g=e[d],g=this._addRectangleElement(g.position,g.size,a);c.push(g)}return c};c.prototype.drawTextBox=function(a){return this._addTextBoxElement(a.getTextString(),
a.getPosition(),a)};c.prototype.drawTextBoxes=function(a){for(var c=[],d=0,e=a.getStrings();d<e.length;d++){var g=e[d],g=this._addTextBoxElement(g.text,g.position,a);c.push(g)}return c};c.prototype._addTextBoxElement=function(a,c,d){var e=this.measureText(a,d.getTextPortion());e.x+=2*d.getPadding();e.y+=2*d.getPadding();var g=[],e=this._addRectangleElement(c,e,d.getBoxPortion(),!0);g.push(e);c=c.copy();c.x+=d.getPadding();c.y+=d.getPadding()/2+d.getBoxPortion().getStrokeWidth();a=this._addTextElement(a,
c,d.getTextPortion());g.push(a);return g};c.prototype._renderEndcaps=function(b,c,e,g){if(null===this._svgDefsElement)throw new a.CommunicatorError("canvas not set");e.getStartEndcapType()===a.Markup.Shape.EndcapType.Arrowhead?(e.getEndcapsInverted()?(b=d.Util.createEndArrowMarker(e.getStartEndcapSize(),e.getStartEndcapColor()),b.refX.baseVal.value=e.getStartEndcapSize()):b=d.Util.createStartArrowMarker(e.getStartEndcapSize(),e.getStartEndcapColor()),g.style.markerStart="url(#"+b.id+")",this._svgDefsElement.appendChild(b)):
e.getStartEndcapType()===a.Markup.Shape.EndcapType.Circle&&(b=d.Util.createCircleMarker(b,e.getStrokeWidth(),e.getStartEndcapSize(),e.getStartEndcapColor()),this._addSVGElement(b));e.getEndEndcapType()===a.Markup.Shape.EndcapType.Arrowhead?(b=e.getEndcapsInverted()?d.Util.createStartArrowMarker(e.getEndEndcapSize(),e.getEndEndcapColor()):d.Util.createEndArrowMarker(e.getEndEndcapSize(),e.getEndEndcapColor()),g.style.markerEnd="url(#"+b.id+")",this._svgDefsElement.appendChild(b)):e.getEndEndcapType()===
a.Markup.Shape.EndcapType.Circle&&(b=d.Util.createCircleMarker(c,e.getStrokeWidth(),e.getEndEndcapSize(),e.getEndEndcapColor()),this._addSVGElement(b))};c.prototype._createTextElement=function(a,c,e){var g=document.createElementNS(d.Util.svgNamespace,"text"),q=0;for(a=a.split("\n");q<a.length;q++){var p=a[q],l=document.createElementNS(d.Util.svgNamespace,"tspan");l.textContent=p;l.setAttributeNS(null,"x",""+c.x);l.setAttributeNS(null,"dy","1.2em");g.appendChild(l)}(q=e.getFontFamily())&&g.setAttributeNS(null,
"font-family",q);g.setAttributeNS(null,"font-size",e.getFontSize().toString());g.setAttributeNS(null,"x",""+c.x);g.setAttributeNS(null,"y",""+c.y);this._setGenericFillAttributes(g,e);this._setGenericStrokeAttributes(g,e);return g};c.prototype._addTextElement=function(a,c,d){a=this._createTextElement(a,c,d);this._addSVGTextItemElement(a);return a};c.prototype._addRectangleElement=function(a,c,e,g){void 0===g&&(g=!1);var q=document.createElementNS(d.Util.svgNamespace,"rect");q.setAttributeNS(null,"x",
a.x.toString());q.setAttributeNS(null,"y",a.y.toString());q.setAttributeNS(null,"width",c.x.toString());q.setAttributeNS(null,"height",c.y.toString());a=e.getBorderRadius();0<a&&(q.setAttributeNS(null,"rx",a.toString()),q.setAttributeNS(null,"ry",a.toString()));this._setGenericFillAttributes(q,e);this._setGenericStrokeAttributes(q,e);g?this._addSVGTextItemElement(q):this._addSVGElement(q);return q};c.prototype._addLineElement=function(a,c,e){var g=document.createElementNS(d.Util.svgNamespace,"line");
g.setAttributeNS(null,"x1",a.x.toString());g.setAttributeNS(null,"y1",a.y.toString());g.setAttributeNS(null,"x2",c.x.toString());g.setAttributeNS(null,"y2",c.y.toString());this._setGenericStrokeAttributes(g,e);this._addSVGElement(g);this._renderEndcaps(a,c,e,g);return g};c.prototype._addPolygonElement=function(a,c){a=d.Util.svgPointString(a);var e=document.createElementNS(d.Util.svgNamespace,"polygon");e.setAttributeNS(null,"points",a);this._setGenericStrokeAttributes(e,c);this._setGenericFillAttributes(e,
c);this._addSVGElement(e);return e};c.prototype._addPolylineElement=function(a,c){var e=d.Util.svgPointString(a),g=document.createElementNS(d.Util.svgNamespace,"polyline");g.setAttributeNS(null,"points",e);g.setAttributeNS(null,"fill","none");this._renderEndcaps(a[0],a[a.length-1],c,g);this._setGenericStrokeAttributes(g,c);this._addSVGElement(g);return g};c.prototype._addCircleNode=function(a,c,e){var g=document.createElementNS(d.Util.svgNamespace,"circle");g.setAttributeNS(null,"cx",a.x.toString());
g.setAttributeNS(null,"cy",a.y.toString());g.setAttributeNS(null,"r",c.toString());this._setGenericFillAttributes(g,e);this._setGenericStrokeAttributes(g,e);this._addSVGElement(g);return g};c.prototype._setGenericFillAttributes=function(a,c){a.setAttributeNS(null,"fill",d.Util.svgColorRgbString(c.getFillColor()));a.setAttributeNS(null,"fill-opacity",c.getFillOpacity().toString())};c.prototype._setGenericStrokeAttributes=function(a,c){a.setAttributeNS(null,"stroke",d.Util.svgColorRgbString(c.getStrokeColor()));
a.setAttributeNS(null,"stroke-width",c.getStrokeWidth().toString())};c.prototype._addSVGTextItemElement=function(a){this._svgTextElements.push(a)};c.prototype._addSVGElement=function(a){this._svgElements.push(a)};return c}();d.SVGMarkupRenderer=e})(g.SVG||(g.SVG={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(g){(function(d){(function(d){function c(a){return"rgb("+a.r+", "+a.g+", "+a.b+")"}d.svgNamespace="http://www.w3.org/2000/svg";d.svgColorRgbString=c;d.svgPointString=function(a){for(var c="",d=0;d<a.length;d++)d&&(c+=" "),c+=a[d].x+","+a[d].y;return c};d.createStartArrowMarker=function(b,f){var h=1.1*b,g=new a.Point2(h,0),q=new a.Point2(h,b),p=new a.Point2(0,b/2),l=document.createElementNS(d.svgNamespace,"marker");l.id=a.GUID.create();l.markerWidth.baseVal.value=h;l.markerHeight.baseVal.value=
b;l.setOrientToAuto();l.refY.baseVal.value=b/2;b="M"+g.x+","+g.y+" L"+q.x+","+q.y+" L"+p.x+","+p.y+" Z";h=document.createElementNS(d.svgNamespace,"path");h.setAttribute("d",b);h.setAttributeNS(null,"fill",c(f));l.appendChild(h);return l};d.createEndArrowMarker=function(b,f){var h=1.1*b,g=a.Point2.zero(),q=new a.Point2(0,b),p=new a.Point2(h,b/2),l=document.createElementNS(d.svgNamespace,"marker");l.id=a.GUID.create();l.markerWidth.baseVal.value=h;l.markerHeight.baseVal.value=b;l.setOrientToAuto();
l.refY.baseVal.value=b/2;l.refX.baseVal.value=b;b="M"+g.x+","+g.y+" L"+q.x+","+q.y+" L"+p.x+","+p.y+" Z";h=document.createElementNS(d.svgNamespace,"path");h.setAttribute("d",b);h.setAttributeNS(null,"fill",c(f));l.appendChild(h);return l};d.createCircleMarker=function(a,f,h,g){h/=2;g=c(g);var q=document.createElementNS(d.svgNamespace,"circle");q.setAttributeNS(null,"cx",a.x.toString());q.setAttributeNS(null,"cy",a.y.toString());q.setAttributeNS(null,"r",h.toString());q.setAttributeNS(null,"fill",
g);0<f&&(q.setAttributeNS(null,"stroke-width",f.toString()),q.setAttributeNS(null,"stroke",g));return q}})(d.Util||(d.Util={}))})(g.SVG||(g.SVG={}))})(a.Internal||(a.Internal={}))})(Communicator||(Communicator={}));
(function(a){(function(a){(function(a){var e=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b._points=[];return b}__extends(b,a);b.prototype.clearPoints=function(){this._points=[]};b.prototype.getPoints=function(){return this._points};b.prototype.pushPoint=function(a){this._points.push(a.copy())};return b}(a.FilledShape);a.Polygon=e;e=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b._polygons=[];return b}__extends(b,a);b.prototype.clear=function(){this._polygons=
[]};b.prototype.createPolygon=function(){var a=[];this._polygons.push(a);return a};b.prototype.getPolygons=function(){return this._polygons};return b}(a.FilledShape);a.PolygonCollection=e})(a.Shape||(a.Shape={}))})(a.Markup||(a.Markup={}))})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(d,c){this.origin=a.Point3.zero();this.direction=new a.Point3(0,0,1);d&&this.origin.assign(d);c&&this.direction.assign(c)}d.prototype.copy=function(){return new d(this.origin,this.direction)};d.prototype.assign=function(a){this.origin.assign(a.origin);this.direction.assign(a.direction);return this};d.prototype.negate=function(){this.direction.negate();return this};return d}();a.Ray=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(){this.normal=a.Point3.zero();this.d=0}d.prototype.setFromPointAndNormal=function(d,c){this.normal.assign(c);this.d=-a.Point3.dot(c,d);return this};d.prototype.setFromPoints=function(d,c,b){this.normal=a.Point3.cross(a.Point3.subtract(c,d),a.Point3.subtract(b,d)).normalize();this.d=-a.Point3.dot(d,this.normal)};d.prototype.setFromCoefficients=function(a,c,b,d){this.normal.set(a,c,b);this.d=d};d.prototype.getCoefficients=function(){var a=this.normal;return[a.x,
a.y,a.z,this.d]};d.prototype.distanceToPoint=function(d){return a.Point3.dot(this.normal,d)+this.d};d.prototype.rayIntersection=function(d){var c=a.Point3.zero();return this.intersectsRay(d,c)?c:null};d.prototype.intersectsRay=function(d,c){var b=a.Point3.dot(this.normal,d.direction),f=this.distanceToPoint(d.origin),h=-f/b;return 0<=h&&0<Math.abs(b)?(c&&(b=d.direction.copy().scale(h),c.set(d.origin.x+b.x,d.origin.y+b.y,d.origin.z+b.z)),!0):0<=h&&0>=Math.abs(f)?(c&&c.assign(d.origin),!0):!1};d.prototype.determineSide=
function(a){return 0<this.normal.x*a.x+this.normal.y*a.y+this.normal.z*a.z+this.d?!0:!1};d.prototype.copy=function(){var a=new d;a.normal.assign(this.normal);a.d=this.d;return a};d.prototype.assign=function(a){this.normal.assign(a.normal);this.d=a.d};d.prototype.equals=function(a){return this.normal.equals(a.normal)&&this.d===a.d};d.createFromPointAndNormal=function(a,c){return(new d).setFromPointAndNormal(a,c)};d.createFromPoints=function(a,c,b){var f=new d;f.setFromPoints(a,c,b);return f};d.createFromCoefficients=
function(a,c,b,f){var h=new d;h.setFromCoefficients(a,c,b,f);return h};return d}();a.Plane=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function a(d,c,b,f){this.x=d;this.y=c;this.z=b;this.w=f}a.prototype.scale=function(a){this.x*=a;this.y*=a;this.z*=a;this.w*=a;return this};a.prototype.set=function(a,c,b,d){this.x=a;this.y=c;this.z=b;this.w=d};a.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.z=a.z;this.w=a.w};a.zero=function(){return new a(0,0,0,0)};return a}();a.Point4=g})(Communicator||(Communicator={}));
(function(a){var g=function(){function d(a,c,b,d){this.x=a;this.y=c;this.z=b;this.w=d}d.prototype.set=function(a,c,b,d){this.x=a;this.y=c;this.z=b;this.w=d};d.prototype.copy=function(){return new d(this.x,this.y,this.z,this.w)};d.prototype.equals=function(a){return this.x===a.x&&this.y===a.y&&this.z===a.z&&this.w===a.w};d.prototype.fromArray=function(a){this.x=a[0];this.y=a[1];this.z=a[2];this.w=a[3];return this};d.prototype.toArray=function(a){a[0]=this.x;a[1]=this.y;a[2]=this.z;a[3]=this.w;return this};
d.prototype.negate=function(){this.x=-this.x;this.y=-this.y;this.z=-this.z;this.w=-this.w;return this};d.prototype.magnitudeSquared=function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w};d.prototype.magnitude=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)};d.add=function(a,c){return new d(a.x+c.x,a.y+c.y,a.z+c.z,a.w+c.w)};d.subtract=function(a,c){return new d(a.x-c.x,a.y-c.y,a.z-c.z,a.w-c.w)};d.Identity=function(){return new d(0,0,0,1)};d.toMatrix=
function(d){var c=d.x*d.x+d.y*d.y+d.z*d.z+d.w*d.w,c=2/c,b=d.x*c,f=d.y*c,h=d.z*c,c=d.w*b,g=d.w*f,q=d.w*h,b=d.x*b,p=d.x*f,l=d.x*h,f=d.y*f,m=d.y*h;d=d.z*h;h=new a.Matrix;h.m[0]=1-(f+d);h.m[1]=p+q;h.m[2]=l-g;h.m[3]=0;h.m[4]=p-q;h.m[5]=1-(b+d);h.m[6]=m+c;h.m[7]=0;h.m[8]=l+g;h.m[9]=m-c;h.m[10]=1-(b+f);h.m[11]=0;h.m[12]=0;h.m[13]=0;h.m[14]=0;h.m[15]=1;return h};d.createFromMatrix=function(a){var c=[],b=a.m[0]+a.m[5]+a.m[10];if(0<b){var f=Math.sqrt(b+1);c[3]=.5*f;f=.5/f;c[0]=f*(a.m[6]-a.m[9]);c[1]=f*(a.m[8]-
a.m[2]);c[2]=f*(a.m[1]-a.m[4])}else{b=0;a.m[5]>a.m[0]&&(b=1);a.m[10]>a.m[4*b+b]&&(b=2);var f=[1,2,0],h=f[b],g=f[h],f=Math.sqrt(a.m[4*b+b]-(a.m[4*h+h]+a.m[4*g+g])+1);c[b]=.5*f;f=.5/f;c[3]=f*(a.m[4*h+g]-a.m[4*g+h]);c[h]=f*(a.m[4*b+h]+a.m[4*h+b]);c[g]=f*(a.m[4*b+g]+a.m[4*g+b])}return d.Identity().fromArray(c)};d.interpolate=function(a,c,b){var f=[],h=[],g=[];a.toArray(f);c.toArray(h);a=f[0]*h[0]+f[1]*h[1]+f[2]*h[2]+f[3]*h[3];if(1+a>d._epsilon){if(1-a>d._epsilon){c=d._arccos(a);var q=1/Math.sin(c);a=
q*Math.sin((1-b)*c);b=q*Math.sin(b*c)}else a=1-b;for(c=0;4>c;++c)g[c]=a*f[c]+b*h[c]}else for(g[0]=-f[1],g[1]=f[0],g[2]=-f[3],g[3]=f[2],a=Math.sin(.5*Math.PI*(1-b)),b=Math.sin(.5*Math.PI*b),c=0;3>c;++c)g[c]=a*f[c]+b*g[c];return d.Identity().fromArray(g)};d._arccos=function(a){return-1>a?Math.PI:1<a?0:Math.acos(a)};d._epsilon=1E-5;return d}();a.Quaternion=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d;(function(a){a[a.None=0]="None";a[a.IgnoreCapping=1]="IgnoreCapping"})(d=g.SelectionRequirements||(g.SelectionRequirements={}));var e=function(){function c(){}c.prototype.onMouseDown=function(a){a};c.prototype.onMouseMove=function(a){a};c.prototype.onMouseUp=function(a){a};c.prototype.onMousewheel=function(a){a};c.prototype.onTouchStart=function(a){a};c.prototype.onTouchMove=function(a){a};c.prototype.onTouchEnd=function(a){a};c.prototype.onKeyDown=function(a){a};c.prototype.onKeyUp=
function(a){a};c.prototype.onDeactivate=function(){};c.prototype.onActivate=function(){};c.prototype.onViewOrientationChange=function(){};c.prototype.stopInteraction=function(){};c.prototype.needsSelection=function(a,c,d){return!1};c.prototype._selectionMask=function(b){return a.SelectionMask.All};c.prototype.selectionRequirements=function(a){return d.None};c.prototype._onlySelectOverlays=function(a){return!1};return c}();g.Operator=e})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){function a(b,c){this._button=b;this._modifier=c}a.prototype.getButton=function(){return this._button};a.prototype.getModifier=function(){return this._modifier};return a}();g.ButtonModifier=d;var e=function(c){function b(b){var d=c.call(this)||this;d._ptFirst=a.Point2.zero();d._ptPrevious=a.Point2.zero();d._ptCurrent=a.Point2.zero();d._dragging=!1;d._dragCount=0;d._primaryTouchId=null;d._mapping=[];d._buttonModifierActive=!1;d._doubleClickInterval=200;d._firstMouseDownTime=
null;d._isDoubleClick=!1;d._viewer=b;return d}__extends(b,c);b.prototype.onDoubleClick=function(a){a};b.prototype.onMouseDown=function(a){this._firstMouseDownTime?Date.now()-this._firstMouseDownTime<this._doubleClickInterval?(this._isDoubleClick=!0,this._firstMouseDownTime=null):this._firstMouseDownTime=Date.now():(this._firstMouseDownTime=Date.now(),this._isDoubleClick=!1);if(this._isDoubleClick)this.onDoubleClick(a);else{if(this._buttonModifierActive=this.checkMapping(a))a=a.getPosition(),this._ptFirst.assign(a),
this._ptPrevious.assign(a),this._ptCurrent.assign(a);this._dragging=!0}};b.prototype.onMouseMove=function(a){this.isActive()&&(this._ptPrevious.assign(this._ptCurrent),this._ptCurrent.assign(a.getPosition()),this._dragging&&!this._ptCurrent.equals(this._ptPrevious)&&(++this._dragCount,1===this._dragCount&&this._viewer._getCallbackManager().trigger("beginInteraction")))};b.prototype.onMouseUp=function(a){a;this._buttonModifierActive&&this.stopInteraction();this._dragging=!1};b.prototype.stopInteraction=
function(){this._viewer._getCallbackManager().trigger("endInteraction");this._dragging=!1;this._dragCount=0;this._buttonModifierActive=!1};b.prototype.isDragging=function(){return this._dragging};b.prototype.isActive=function(){return(this._buttonModifierActive||null!==this._primaryTouchId)&&!this._isDoubleClick&&!this._viewer.getContextMenuStatus()};b.prototype.onTouchStart=function(b){if(null===this._primaryTouchId){this._primaryTouchId=b.getId();var c=b.getPosition(),c=new a.Event.MouseInputEvent(c.x,
c.y,a.Button.None,b.getButtons(),a.KeyModifiers.None,a.MouseInputType.Down);c._setCompositePickResult(b._getCompositePickResult());this.onMouseDown(c)}b.setHandled(this.setHandled())};b.prototype.onTouchMove=function(b){if(this._primaryTouchId===b.getId()){var c=b.getPosition(),c=new a.Event.MouseInputEvent(c.x,c.y,a.Button.None,b.getButtons(),a.KeyModifiers.None,a.MouseInputType.Move);c._setCompositePickResult(b._getCompositePickResult());this.onMouseMove(c)}b.setHandled(this.setHandled())};b.prototype.onTouchEnd=
function(b){if(this._primaryTouchId===b.getId()){var c=b.getPosition(),c=new a.Event.MouseInputEvent(c.x,c.y,a.Button.None,b.getButtons(),a.KeyModifiers.None,a.MouseInputType.Up);c._setCompositePickResult(b._getCompositePickResult());this.onMouseUp(c);this._primaryTouchId=null}b.setHandled(this.setHandled())};b.prototype.addMapping=function(b,c){void 0===c&&(c=a.KeyModifiers.None);this._mapping.push(new d(b,c))};b.prototype.clearMapping=function(){this._mapping=[]};b.prototype.setMapping=function(b,
c){void 0===c&&(c=a.KeyModifiers.None);this._mapping=[];this._mapping.push(new d(b,c))};b.prototype.checkMapping=function(a){if(0===this._mapping.length)return!0;for(var b=0,c=this._mapping;b<c.length;b++){var d=c[b];if(d.getButton()===a.getButton()&&d.getModifier()===a.getModifiers())return!0}return!1};b.prototype.setHandled=function(){return!1};b.prototype.onDeactivate=function(){this.stopInteraction();this._primaryTouchId=null};return b}(g.Operator);g.OperatorBase=e})(a.Operator||(a.Operator={}))})(Communicator||
(Communicator={}));
(function(a){(function(g){var d=function(c){function b(b){b=c.call(this,b)||this;b._rectangle=new a.Markup.Shape.Rectangle;b._markupHandle=null;b._dim=new a.Point2(0,0);b.initialPosition=new a.Point2(0,0);b.currentPosition=new a.Point2(0,0);b.min=new a.Point2(0,0);b.max=new a.Point2(0,0);b._name="_RectangleMarkup";b._rectangle.setFillOpacity(0);return b}__extends(b,c);b.prototype.draw=function(){this._viewer.markupManager.getRenderer().drawRectangle(this._rectangle)};b.prototype.updateCurrentPosition=function(b){this.currentPosition.assign(b);
this._rectangle.setStrokeColor(this.initialPosition.x<this.currentPosition.x?a.Color.red():a.Color.blue());this.min.assign(this.initialPosition);this.max.assign(this.currentPosition);this.max.x<this.min.x&&(b=this.max.x,this.max.x=this.min.x,this.min.x=b);this.max.y<this.min.y&&(b=this.max.y,this.max.y=this.min.y,this.min.y=b);this._dim.assign(this.max);this._dim.subtract(this.min);this._updateRectangleVertices()};b.prototype._updateRectangleVertices=function(){this._rectangle.setPosition(this.min);
this._rectangle.setSize(this._dim)};b.prototype.activate=function(a){this.initialPosition.assign(a);this.currentPosition.assign(a);this.min.assign(a);this.max.assign(a);this._dim.set(0,0);this._rectangle.setStrokeWidth(1);this._updateRectangleVertices();this._markupHandle=this._viewer.markupManager.registerMarkup(this)};b.prototype.deactivate=function(){this.initialPosition.set(0,0);this.currentPosition.set(0,0);this.min.set(0,0);this.max.set(0,0);this._dim.set(0,0);this._rectangle.setStrokeWidth(0);
this._updateRectangleVertices();var a=this._viewer.markupManager;null!==this._markupHandle&&(a.unregisterMarkup(this._markupHandle),this._markupHandle=null);a.refreshMarkup()};b.prototype.isActive=function(){return null!==this._markupHandle};return b}(a.Markup.Measure.MeasureMarkup),e=function(c){function b(b){var e=c.call(this,b)||this;e._forceEffectiveSceneVisibilityMask=a.SelectionMask.None;e._rectangleMarkup=new d(b);e._incrementalSelection=new a.Internal.IncrementalSelection(b,function(){return e._allowSelection()},
function(){return e._beginSelection()},function(){return null});return e}__extends(b,c);b.prototype.getForceEffectiveSceneVisibilityMask=function(){return this._forceEffectiveSceneVisibilityMask};b.prototype.setForceEffectiveSceneVisibilityMask=function(a){this._forceEffectiveSceneVisibilityMask=a};b.prototype.hasActiveSelection=function(){return this._incrementalSelection.hasActiveSelection()};b.prototype.waitForInactivity=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(a){return[2,this._incrementalSelection.waitForInactivity()]})})};b.prototype.clearSelection=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._incrementalSelection.clearSelection()]})})};b.prototype._allowSelection=function(){var a=this._rectangleMarkup.initialPosition,b=this._rectangleMarkup.currentPosition;return a.x===b.x||a.y===b.y?!1:!0};b.prototype._beginSelection=function(){return __awaiter(this,void 0,void 0,function(){var b,
c,d,e,g,l;return __generator(this,function(m){b=new a.IncrementalPickConfig;b.forceEffectiveSceneVisibilityMask=this._forceEffectiveSceneVisibilityMask;b.ignoreCuttingSections=!1;b.ignoreUnrequestedInstances=!0;c=this._rectangleMarkup.initialPosition;d=this._rectangleMarkup.currentPosition;c.x<d.x&&(b.mustBeFullyContained=!0);e=this._viewer.selectionManager;g=this._rectangleMarkup.min;l=this._rectangleMarkup.max;return[2,e.beginScreenSelectByArea(g,l,b)]})})};b.prototype._performSelection=function(){return __awaiter(this,
void 0,void 0,function(){return __generator(this,function(a){return[2,this._incrementalSelection.performSelection(!0)]})})};b.prototype.setHandled=function(){return!0};b.prototype.onKeyUp=function(b){b.getKeyCode()===a.KeyCode.Escape&&this.clearSelection();c.prototype.onKeyUp.call(this,b)};b.prototype.onMouseDown=function(a){c.prototype.onMouseDown.call(this,a);this.isActive()&&(a.setHandled(!0),this._rectangleMarkup.isActive()&&this._rectangleMarkup.deactivate(),this._rectangleMarkup.activate(a.getPosition()))};
b.prototype.onMouseMove=function(a){c.prototype.onMouseMove.call(this,a);this.isActive()&&this._rectangleMarkup.isActive()&&(a.setHandled(!0),this._rectangleMarkup.updateCurrentPosition(a.getPosition()),this._viewer.markupManager.refreshMarkup())};b.prototype.onMouseUp=function(b){this.isActive()&&this._rectangleMarkup.isActive()&&(b.setHandled(!0),this._rectangleMarkup.updateCurrentPosition(b.getPosition()),b.controlDown()||this.clearSelection(),this._performSelection().catch(function(b){if(!(b instanceof
a.SelectionInvalidatedError))throw b;}));this._rectangleMarkup.isActive()&&this._rectangleMarkup.deactivate();c.prototype.onMouseUp.call(this,b)};return b}(g.OperatorBase);g.AreaSelectionOperator=e})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){var c=d.call(this,a)||this;c._axisTriad=a.view.getAxisTriad();return c}__extends(c,d);c.prototype.needsSelection=function(b,c,d){return(b===a.EventType.MouseUp||b===a.EventType.TouchEnd)&&this._axisTriad.getEnabled()&&this._axisTriad._geometryHasBeenCreated()&&this._axisTriad._insideOverlay(d)?!0:!1};c.prototype._selectionMask=function(b){b;return a.SelectionMask.Face};c.prototype._onlySelectOverlays=function(){return!0};c.prototype.onMouseUp=
function(b){if(this._axisTriad.getEnabled()&&25>a.Point2.subtract(this._ptFirst,this._ptCurrent).squaredLength()){var c=b._getPickResult(this._selectionMask(a.EventType.MouseUp)),c=this._axisTriad._onClickSelection(c);c}d.prototype.onMouseUp.call(this,b)};return c}(g.OperatorBase);g.AxisTriadOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(){return function(a,b,d,e,g){this.section=a;this.node=b;this.planeIndex=d;this.plane=e;this.selectionPosition=g;this.origPlaneD=e.d}}(),e=function(c){function b(a,b,d){a=c.call(this,a)||this;a._handled=!1;a._context=null;a._cuttingManager=b;a._callbackManager=d;return a}__extends(b,c);b.prototype.onMouseDown=function(a){var b=this;c.prototype.onMouseDown.call(this,a);this._handled=!1;this.isActive()&&function(){return __awaiter(b,void 0,void 0,function(){return __generator(this,
function(b){switch(b.label){case 0:return[4,this._startSelection(a)];case 1:return b.sent(),[2]}})})}()};b.prototype.onMouseMove=function(a){c.prototype.onMouseMove.call(this,a);var b=this._context;this.isActive()&&null!==b&&(a.setHandled(!0),this._updatePlane(a.getPosition(),b,!1),this._callbackManager.trigger("cuttingPlaneDrag",b.section,b.planeIndex))};b.prototype._updatePlane=function(b,c,d){var e=c.selectionPosition,g=c.plane.normal.copy().add(c.selectionPosition),l=this._viewer.view.unprojectPoint(b,
0);b=this._viewer.view.unprojectPoint(b,.5);null!==l&&null!==b&&(e=a.Internal.lineLineIntersect(e,g,l,b),null!==e&&(e=a.Point3.subtract(e,c.selectionPosition),e=0>a.Point3.dot(e,c.plane.normal)?e.length():-e.length(),c.plane.d=c.origPlaneD+e,e=c.plane.normal.copy().scale(-e),e=(new a.Matrix).setTranslationComponent(e.x,e.y,e.z),c.section.updatePlane(c.planeIndex,c.plane,e,d,!1)),this._cuttingManager.delayCapping())};b.prototype.onMouseUp=function(a){if(this.isActive()){var b=this._context;null!==
b&&(this._updatePlane(a.getPosition(),b,!0),this._callbackManager.trigger("cuttingPlaneDragEnd",b.section,b.planeIndex));this._context=null;a.setHandled(this._handled)}c.prototype.onMouseUp.call(this,a)};b.prototype.setHandled=function(){return this._handled};b.prototype._startSelection=function(b){return __awaiter(this,void 0,void 0,function(){var c,e,g,p,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return this._context=null,c=b.getPosition(),e=a.SelectionMask.Face|a.SelectionMask.Line,
g=new a.PickConfig(e),g.ignoreCappingGeometry=!0,g.forceEffectiveSceneVisibilityMask=a.SelectionMask.Face,[4,this._viewer.view._compositePickFromPoint(c,g)];case 1:p=t.sent();l=p.fetchMostRelevant(e);if(null===l)return[2];m=l.getNodeId();n=this._cuttingManager.getCuttingSectionFromNodeId(m);null!==n&&(b.setHandled(!0),this._handled=!0,r=n.getPlaneIndexByNodeId(m),this._context=new d(n,m,r,n.getPlane(r),l.getPosition()),this._cuttingManager.delayCapping(),this._callbackManager.trigger("cuttingPlaneDragStart",
n,r));return[2]}})})};return b}(g.OperatorBase);g.CuttingPlaneOperator=e})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){var c=d.call(this,b)||this;c._draggingHandle=!1;c._rotationMatrix=new a.Matrix;c._newRotationMatrix=new a.Matrix;c._translation=a.Point3.zero();c._newTranslation=a.Point3.zero();c._nodeIds=[];c._initialLocalNodeMatrices=[];c._newLocalNodeMatrices=[];c._trackedPoints=[];c._trackedPointsPositions=[];c._trackedPointCount=0;c._previousContextClick=!1;c._overlayIndex=null;c._activeNodeId=null;c._handleEventType=a.HandleEventType.Translate;c._highlightedHandleId=
null;c._handleSize=1;c._explodeActive=!1;c._measureActive=!1;c._settingMatrixInProgress=!1;c._handleMarkup=new a.Markup.HandleMarkup(b);c._callbackManager=b._getCallbackManager();b.setCallbacks({explode:function(a){c._explodeActive=0<a;c._explodeActive&&c.removeHandles()},measurementBegin:function(){c._measureActive=!0;c.removeHandles()},measurementCreated:function(){c._measureActive=!1}});return c}__extends(c,d);c.prototype.setAxisMeshData=function(a){return this._handleMarkup.setAxisMeshData(a)};
c.prototype.setPlaneMeshData=function(a){return this._handleMarkup.setPlaneMeshData(a)};c.prototype.setViewPlaneMeshData=function(a){return this._handleMarkup.setViewPlaneMeshData(a)};c.prototype.setRotateMeshData=function(a){return this._handleMarkup.setRotateMeshData(a)};c.prototype.addTrackedPoint=function(a){var c=this._trackedPointCount;this._trackedPoints[c]=a.copy();this._trackedPointsPositions[c]=a.copy();++this._trackedPointCount;return c};c.prototype.getTrackedPoints=function(){return this._trackedPointsPositions};
c.prototype.clearTrackedPoints=function(){this._trackedPoints.length=0;this._trackedPointCount=this._trackedPointsPositions.length=0};c.prototype.isEnabled=function(){return!this._explodeActive&&!this._measureActive&&!this._viewer.model.isDrawing()};c.prototype._guardEnabled=function(){if(!this.isEnabled()){var b=this._explodeActive?"Handles are not enabled when the model is exploded":this._measureActive?"Handles are not enabled while a measurement is in progress.":this._viewer.model.isDrawing()?
"Handles are not enabled for 2d drawings.":"Handles are not enabled.";throw new a.CommunicatorError(b);}};c.prototype.setHandleSize=function(a){this._handleSize=a};c.prototype.addHandles=function(a,c){void 0===c&&(c=null);return __awaiter(this,void 0,void 0,function(){var d;return __generator(this,function(e){switch(e.label){case 0:return this._previousContextClick=!1,this._guardEnabled(),c?[3,2]:[4,this._viewer.model.getNodesBounding(a)];case 1:return d=e.sent(),[2,this.addHandles(a,d.center())];
case 2:return[4,this.removeHandles()];case 3:return e.sent(),this._nodeIds=a,[2,this._handleMarkup.addHandles(c,this._handleSize)]}})})};c.prototype.addAxisTranslationHandle=function(a,c,d,e){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(g){this._previousContextClick=!1;this._guardEnabled();return[2,this._handleMarkup.addAxisTranslationHandle(a,c,d,e)]})})};c.prototype.addAxisRotationHandle=function(a,c,d,e){return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(g){this._previousContextClick=!1;this._guardEnabled();return[2,this._handleMarkup.addRotateHandle(a,c,d,e)]})})};c.prototype.addPlaneTranslationHandle=function(a,c,d,e,g){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(p){this._previousContextClick=!1;this._guardEnabled();return[2,this._handleMarkup.addPlaneTranslationHandle(a,c,d,e,g)]})})};c.prototype.addViewPlaneTranslationHandle=function(a,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(d){this._previousContextClick=!1;this._guardEnabled();return[2,this._handleMarkup.addViewPlaneHandle(a,c)]})})};c.prototype.setNodeIds=function(a){this._nodeIds=a};c.prototype.getNodeIds=function(){return this._nodeIds};c.prototype.showHandles=function(){this._handleMarkup.showOverlay()};c.prototype.updatePosition=function(b,c,d){c=a.Matrix.multiply(this._rotationMatrix,c);return this._handleMarkup.updatePosition(b,c,d)};c.prototype.getPosition=function(){var a=this._handleMarkup.getHandleNodeIds();
return 0<a.length&&(a=this._handleMarkup.getPosition(a[0]),null!==a)?a.copy():null};c.prototype.removeHandles=function(){this._rotationMatrix=new a.Matrix;this._newRotationMatrix=new a.Matrix;this._translation=a.Point3.zero();this._nodeIds=[];this._highlightedHandleId=null;return this._handleMarkup.removeHandles()};c.prototype.getTranslation=function(){return this._translation};c.prototype._initLocalNodeMatrices=function(){var a=this._viewer.model;this._initialLocalNodeMatrices=[];for(var c=0,d=this._nodeIds;c<
d.length;c++)this._initialLocalNodeMatrices.push(a.getNodeMatrix(d[c]))};c.prototype._getHandleEventType=function(b){return this._handleMarkup.getHandleType(b)===a.HandleType.Rotate?a.HandleEventType.Rotate:a.HandleEventType.Translate};c.prototype._rotate=function(b,c,d){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return!this._draggingHandle||this._settingMatrixInProgress?[2]:[4,this._genericTransform(b,c,a.Point3.zero(),d)];case 1:return e.sent(),
this._callbackManager.trigger("handleEvent",a.HandleEventType.Rotate,this._nodeIds,this._initialLocalNodeMatrices,this._newLocalNodeMatrices),[2]}})})};c.prototype._translate=function(b,c){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(d){switch(d.label){case 0:return!this._draggingHandle||this._settingMatrixInProgress?[2]:[4,this._genericTransform(a.Point3.zero(),0,b,c)];case 1:return d.sent(),this._callbackManager.trigger("handleEvent",a.HandleEventType.Translate,
this._nodeIds,this._initialLocalNodeMatrices,this._newLocalNodeMatrices),[2]}})})};c.prototype._genericTransform=function(b,c,d,e){return __awaiter(this,void 0,void 0,function(){var g,p,l,m,n,r,t,u,v,w,y,x,z,A,C,B;return __generator(this,function(D){switch(D.label){case 0:this._settingMatrixInProgress=!0;g=this._viewer.model;p=new a.Matrix;this._newTranslation=d;0<b.squaredLength()&&(p=this._getRotationMatrix(b,a.Point3.zero(),c),this._newRotationMatrix=p.copy());l=[];l.push(this.updatePosition(this._newTranslation,
this._newRotationMatrix,!1));this._newLocalNodeMatrices=[];for(m=0;m<this._nodeIds.length;m++)n=this._newTranslation.copy(),r=this._nodeIds[m],t=this._initialLocalNodeMatrices[m].copy(),u=b.copy(),v=e.copy(),w=void 0,y=g.getNodeParent(r),null!==y?(w=g.getNodeNetMatrix(y),x=a.Matrix.inverse(w),null!==x&&(x.transform(v,v),x.setTranslationComponent(0,0,0),x.transform(u,u),x.transform(n,n))):w=null,0<b.squaredLength()&&(p=this._getRotationMatrix(u,v,w&&0>w.upperLeft3x3Determinant()?-c:c),t=a.Matrix.multiply(t,
p)),t.setTranslationComponent(t.m[12]+n.x,t.m[13]+n.y,t.m[14]+n.z),l.push(g.setNodeMatrix(r,t)),this._newLocalNodeMatrices.push(t);z=this._newRotationMatrix.copy();z.setTranslationComponent(d.x,d.y,d.z);for(m=0;m<this._trackedPoints.length;++m)A=this._trackedPoints[m].copy(),C=a.Point3.subtract(A,e),z.transform(C,C),B=a.Point3.add(C,e),this._trackedPointsPositions[m]=B;return[4,a.Internal.waitForAll(l)];case 1:return D.sent(),this._settingMatrixInProgress=!1,[2]}})})};c.prototype._testRotate=function(b,
c){return __awaiter(this,void 0,void 0,function(){var d,e;return __generator(this,function(g){switch(g.label){case 0:d=this._handleMarkup.getHandleNodeIds();if(0===d.length)return[2];e=this._handleMarkup.getPosition(d[0]);if(null===e)return[2];this._startDragging(null,a.HandleEventType.Rotate);return[4,this._rotate(b,c,e)];case 1:return g.sent(),[4,this._stopDragging()];case 2:return g.sent(),[2]}})})};c.prototype._testTranslate=function(b){return __awaiter(this,void 0,void 0,function(){return __generator(this,
function(c){switch(c.label){case 0:return this._startDragging(null,a.HandleEventType.Translate),[4,this._translate(b,a.Point3.zero())];case 1:return c.sent(),[4,this._stopDragging()];case 2:return c.sent(),[2]}})})};c.prototype._startDragging=function(a,c){this._activeNodeId=a;this._handleEventType=c;this._initLocalNodeMatrices();this._callbackManager.trigger("handleEventStart",this._handleEventType,this._nodeIds,this._initialLocalNodeMatrices);this._draggingHandle=!0};c.prototype._stopDragging=function(){return __awaiter(this,
void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return[4,this.updatePosition(this._newTranslation,this._newRotationMatrix,!0)];case 1:return b.sent(),this._draggingHandle=!1,this._callbackManager.trigger("handleEventEnd",this._handleEventType,this._nodeIds,this._initialLocalNodeMatrices,this._newLocalNodeMatrices),this._rotationMatrix=a.Matrix.multiply(this._rotationMatrix,this._newRotationMatrix),this._newRotationMatrix=new a.Matrix,this._handleMarkup.resetTranslation(),
this._translation.add(this._newTranslation),this._newTranslation=a.Point3.zero(),this._trackedPoints=this._trackedPointsPositions.slice(),[2]}})})};c.prototype.onMouseDown=function(b){d.prototype.onMouseDown.call(this,b);this._overlayIndex=null;var c=b._getPickResult(this._selectionMask(a.EventType.MouseDown));if(null!==c&&c.isNodeEntitySelection()){var c=c.getNodeId(),h=this._viewer.model.getNodeName(c);null!==h&&"handle-"===h.slice(0,7)&&(b.setHandled(!0),b=this._getHandleEventType(c),this._startDragging(c,
b))}};c.prototype.onMouseMove=function(b){d.prototype.onMouseMove.call(this,b);if(this._draggingHandle&&null!==this._activeNodeId){var c=this._viewer.view.getCamera();a.Point3.zero();a.Point3.zero();var h=this._handleMarkup.getHandleType(this._activeNodeId),g=this._handleMarkup.getVector(this._activeNodeId);b=this._handleMarkup.getPosition(this._activeNodeId);if(null!==h&&null!==b)switch(h){case a.HandleType.Axis:null!==g&&(c=this._getTranslationComponent(b,g,0),this._translate(c,b));break;case a.HandleType.Plane:null!==
g&&(c=this._getTranslationComponent(b,g,1),this._translate(c,b));break;case a.HandleType.ViewPlane:g=c.getTarget();c=c.getPosition();c=a.Point3.subtract(c,g).normalize();c=this._getTranslationComponent(b,c,2);this._translate(c,b);break;case a.HandleType.Rotate:null!==g&&(this._rotationMatrix.copy().setTranslationComponent(0,0,0).transform(g,g),c=this._getRotationAngle(b,g),this._rotate(g,c,b));break;default:a.Internal.TypeAssertNever(h)}}else this._highlightHandle(b._getPickResult(this._selectionMask(a.EventType.MouseMove)))};
c.prototype.onMouseUp=function(b){this._draggingHandle||!(3>this._dragCount)||b.getButton()===a.Button.Right||this._previousContextClick||this._viewer.getContextMenuStatus()||0!==this._overlayIndex&&null!==this._overlayIndex||this.removeHandles();this._previousContextClick=b.getButton()===a.Button.Right||this._viewer.getContextMenuStatus();this._draggingHandle&&this._stopDragging();d.prototype.onMouseUp.call(this,b)};c.prototype.needsSelection=function(b){return this._handleMarkup.isEmpty()?!1:b===
a.EventType.MouseDown||b===a.EventType.TouchStart||!this._dragging&&b===a.EventType.MouseMove};c.prototype._selectionMask=function(b){b;return a.SelectionMask.Face};c.prototype._onlySelectOverlays=function(){return!0};c.prototype.setHandled=function(){return this._draggingHandle};c.prototype._getClosestPoint=function(b,c,d){var e=b.copy();b=b.copy().add(c);c=this._viewer.view.unprojectPoint(d,0);d=this._viewer.view.unprojectPoint(d,.5);return null!==c&&null!==d?a.Internal.lineLineIntersect(e,b,c,
d):null};c.prototype._getTranslationComponent=function(b,c,d){2!==d&&this._rotationMatrix.copy().setTranslationComponent(0,0,0).transform(c,c);var e=null,g=null;1===d||2===d?(e=this._getPlaneIntersectionPoint(b,c,this._ptFirst),null!==e&&(g=this._getPlaneIntersectionPoint(e,c,this._ptCurrent))):0===d&&(e=this._getClosestPoint(b,c,this._ptFirst),null!==e&&(g=this._getClosestPoint(e,c,this._ptCurrent)));return null!==g&&null!==e?a.Point3.subtract(g,e):a.Point3.zero()};c.prototype._clearHighlightedHandle=
function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return null===this._highlightedHandleId?[3,2]:[4,this._viewer.model.unsetNodesFaceColor([this._highlightedHandleId])];case 1:a.sent(),this._highlightedHandleId=null,a.label=2;case 2:return[2]}})})};c.prototype._highlightHandle=function(b){return __awaiter(this,void 0,void 0,function(){var c,d,e;return __generator(this,function(g){switch(g.label){case 0:if(null===b||!b.isNodeEntitySelection()||
b.overlayIndex()!==a.BuiltinOverlayIndex.Handles)return[3,2];c=this._viewer.model;d=c.getNodeName(b.getNodeId());if(null===d||"handle-"!==d.slice(0,7))return[3,2];e=b.getNodeId();return this._highlightedHandleId===e?[2]:[4,this._clearHighlightedHandle()];case 1:return g.sent(),this._highlightedHandleId=e,c.setNodesFaceColor([this._highlightedHandleId],a.Color.green()),[2];case 2:return[2,this._clearHighlightedHandle()]}})})};c.prototype._getPlaneIntersectionPoint=function(b,c,d){var e=this._viewer.view.unprojectPoint(d,
0);d=this._viewer.view.unprojectPoint(d,.5);if(null===e||null===d)return null;e=new a.Ray(e,d.copy().subtract(e));b=a.Plane.createFromPointAndNormal(b,c);c=a.Point3.zero();return b.intersectsRay(e,c)?c:null};c.prototype._getRotationAngle=function(b,c){console.assert(null!==b);var d=this._getPlaneIntersectionPoint(b,c,this._ptFirst),e=this._getPlaneIntersectionPoint(b,c,this._ptCurrent);if(null===d||null===e)return 0;d=a.Point3.subtract(d,b).normalize();b=a.Point3.subtract(e,b).normalize();e=a.Point3.dot(d,
b);e=180*Math.acos(e)/Math.PI;0>a.Point3.dot(a.Point3.cross(d,b),c)&&(e=-e);return e};c.prototype._getRotationMatrix=function(b,c,d){var e=(new a.Matrix).setTranslationComponent(-c.x,-c.y,-c.z);b=a.Matrix.createFromOffAxisRotation(b,d);c=(new a.Matrix).setTranslationComponent(c.x,c.y,c.z);return a.Matrix.multiply(a.Matrix.multiply(e,b),c)};return c}(g.OperatorBase);g.HandleOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){var c=d.call(this,a)||this;c._navCube=a.view.getNavCube();return c}__extends(c,d);c.prototype.needsSelection=function(b,c,d){return!a.Event._isMouseEventType(b)&&b!==a.EventType.TouchEnd||this._dragging&&1<this._dragCount||!this._navCube.getEnabled()||!this._navCube._insideOverlay(d)?!1:!0};c.prototype._selectionMask=function(b){b;return a.SelectionMask.Face};c.prototype._onlySelectOverlays=function(){return!0};c.prototype.onMouseMove=function(b){d.prototype.onMouseMove.call(this,
b);this._navCube.getEnabled()&&(b=b._getPickResult(this._selectionMask(a.EventType.MouseMove)),this._navCube._onMoveSelection(b))};c.prototype.onMouseUp=function(b){if(this._navCube.getEnabled()&&25>a.Point2.subtract(this._ptFirst,this._ptCurrent).squaredLength()){var c=b._getPickResult(this._selectionMask(a.EventType.MouseUp));this._navCube._onClickSelection(c)}d.prototype.onMouseUp.call(this,b)};return c}(g.OperatorBase);g.NavCubeOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){var d=function(d){function c(b,c){b=d.call(this,b)||this;b._insertNoteButton=a.Button.Left;b._callbackFlag=!1;b._noteTextManager=c;return b}__extends(c,d);c.prototype.onMouseDown=function(a){var c=this;d.prototype.onMouseDown.call(this,a);this.isActive()&&(this._callbackFlag||(this._viewer.setCallbacks({explode:function(a){c._noteTextManager.explode(a)},addCuttingSection:function(){c._noteTextManager.checkCuttingActive()},removeCuttingSection:function(){c._noteTextManager.checkCuttingActive()}}),this._callbackFlag=
!0),this._dragging=!1)};c.prototype.onMouseUp=function(b){var c=this;if(this.isActive()){var h=new a.PickConfig(a.SelectionMask.Face);if(this._ptFirst.equals(this._ptCurrent)&&b.getButton()===this._insertNoteButton||null!==this._primaryTouchId)h=this._viewer.view.pickFromPoint(b.getPosition(),h).then(function(d){c._noteTextManager.selectPin(d)||c._noteTextManager.getExplodeActive()||c._noteTextManager.getIsolateActive()||0!==d.overlayIndex()||(d.isFaceSelection()&&new a.Markup.Note.NoteText(c._viewer,
c._noteTextManager,d.getPosition(),d.getFaceEntity().getNormal(),d.getNodeId()),b.setHandled(!0))}),h}d.prototype.onMouseUp.call(this,b)};c.prototype.getNoteTextElement=function(){return this._noteTextManager.getNoteTextElement()};c.prototype.setNoteTextElement=function(a){this._noteTextManager.setNoteTextElement(a)};c.prototype.checkPinInstance=function(a){return null!==this._noteTextManager.checkPinInstance(a)};return c}(g.OperatorBase);g.NoteOperator=d})(a.Operator||(a.Operator={}))})(Communicator||
(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){var c=d.call(this,b)||this;c._selectionButton=a.Button.Left;c._ignoreTransparency=!1;c._rayOrigin=a.Point2.zero();c._forceEffectiveSceneVisibilityMask=a.SelectionMask.None;c._incrementalSelection=new a.Internal.IncrementalSelection(b,function(){return!0},function(){return c._beginSelection()},function(){return c._createSelectionPredicate()});return c}__extends(c,d);c.prototype.getForceEffectiveSceneVisibilityMask=function(){return this._forceEffectiveSceneVisibilityMask};c.prototype.setForceEffectiveSceneVisibilityMask=
function(a){this._forceEffectiveSceneVisibilityMask=a};c.prototype.setIgnoreTransparency=function(a){this._ignoreTransparency=a};c.prototype.getIgnoreTransparency=function(){return this._ignoreTransparency};c.prototype.hasActiveSelection=function(){return this._incrementalSelection.hasActiveSelection()};c.prototype.waitForInactivity=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._incrementalSelection.waitForInactivity()]})})};c.prototype.clearSelection=
function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){return[2,this._incrementalSelection.clearSelection()]})})};c.prototype._beginSelection=function(){return __awaiter(this,void 0,void 0,function(){var b,c;return __generator(this,function(d){b=new a.IncrementalPickConfig;b.forceEffectiveSceneVisibilityMask=this._forceEffectiveSceneVisibilityMask;b.ignoreUnrequestedInstances=!0;c=this._viewer.selectionManager;return[2,c.beginRayDrillSelection(this._rayOrigin,
10,b)]})})};c.prototype._createSelectionPredicate=function(){var a=this;if(this._ignoreTransparency){var c=this._viewer.model;return function(d){return __awaiter(a,void 0,void 0,function(){var a,b;return __generator(this,function(e){switch(e.label){case 0:return a=d.getNodeId(),null===a?[2,!1]:[4,c._getNodesHasTransparency([a])];case 1:return b=e.sent()[0],[2,!b]}})})}}return null};c.prototype._performSelection=function(a){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(c){this._rayOrigin=
a;return[2,this._incrementalSelection.performSelection(!0)]})})};c.prototype.setHandled=function(){return!0};c.prototype.onKeyUp=function(b){b.getKeyCode()===a.KeyCode.Escape&&this.clearSelection();d.prototype.onKeyUp.call(this,b)};c.prototype.onMouseUp=function(b){this.isActive()&&(b.getButton()===this._selectionButton||null!==this._primaryTouchId)&&25>a.Point2.subtract(this._ptFirst,this._ptCurrent).squaredLength()&&(b.controlDown()||this.clearSelection(),this._performSelection(b.getPosition()));
d.prototype.onMouseUp.call(this,b)};return c}(g.OperatorBase);g.RayDrillSelectionOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b,c){b=d.call(this,b)||this;b._selectionButton=a.Button.Left;b._forceEffectiveSceneVisibilityMask=a.SelectionMask.None;b._noteTextManager=c;return b}__extends(c,d);c.prototype.getForceEffectiveSceneVisibilityMask=function(){return this._forceEffectiveSceneVisibilityMask};c.prototype.setForceEffectiveSceneVisibilityMask=function(a){this._forceEffectiveSceneVisibilityMask=a};c.prototype.getSelectionButton=function(){return this._selectionButton};
c.prototype.setSelectionButton=function(a){this._selectionButton=a};c.prototype.onKeyUp=function(b){b.getKeyCode()===a.KeyCode.Escape&&this._viewer.selectionManager.clear();d.prototype.onKeyUp.call(this,b)};c.prototype.onMouseUp=function(b){var c=this;if(this.isActive()&&5>a.Point2.subtract(this._ptFirst,this._ptCurrent).length()&&(b.getButton()===this._selectionButton||null!==this._primaryTouchId)){var h=this._viewer.view,g=new a.PickConfig(a.SelectionMask.Face|a.SelectionMask.Line);g.forceEffectiveSceneVisibilityMask=
this._forceEffectiveSceneVisibilityMask;h=h.pickFromPoint(this._ptCurrent,g).then(function(d){var e=null!==c._viewer.cuttingManager.getCuttingSectionFromNodeId(d.getNodeId()),h=c._noteTextManager.selectPin(d),g=c._viewer.markupManager.pickMarkupItem(c._ptCurrent);if(g instanceof a.Markup.Redline.RedlineText)g.onSelect();h||e||null!==g||(d.isNodeSelection()?c._processSelectionClick(b,d):c._isDoubleClick||c._viewer.selectionManager.clear())});h}d.prototype.onMouseUp.call(this,b)};c.prototype.onDoubleClick=
function(a){a;return this._viewer.view.fitWorld()};c.prototype._getSelectionOrParentIfSelected=function(b){var c=this._viewer.model,d=b.getNodeId();if(!c.isNodeLoaded(d)||c.getNodeType(d)===a.NodeType.PmiBody)return b;var e=this._viewer.selectionManager,g=null;e.getSelectParentIfSelected()&&(g=e.containsParent(b));return null!==g?(c=a.Selection.SelectionItem.create(c.getNodeParent(g.getNodeId())),c.isNodeSelection()?c:b):e.contains(b)?(c=a.Selection.SelectionItem.create(c.getNodeParent(d)),c.isNodeSelection()?
c:b):b};c.prototype._processSelectionClick=function(a,c){var d=c.overlayIndex();if(0===d||null===d)d=this._viewer.selectionManager,a.controlDown()||a.commandDown()?d.toggle(c):(a=this._getSelectionOrParentIfSelected(c),d.set(a))};return c}(g.OperatorBase);g.SelectionOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(a,c,d){a.has(c)&&a.has(d)&&(a.delete(c),a.delete(d))}function e(b){d(b,a.WalkDirection.Forward,a.WalkDirection.Backward);d(b,a.WalkDirection.Left,a.WalkDirection.Right);d(b,a.WalkDirection.Up,a.WalkDirection.Down);d(b,a.WalkDirection.RotateLeft,a.WalkDirection.RotateRight);d(b,a.WalkDirection.TiltUp,a.WalkDirection.TiltDown)}var c=function(b){function c(d){var e=b.call(this,d)||this;e._walkDistance=0;e._elevationSpeed=0;e._rotationSpeed=0;e._mouseLookSpeed=0;e._viewAngle=
90;e._zoomDistance=0;e._tilt=0;e._majorAxis=a.Axis.X;e._previousWalkTime=0;e._maxExtents=0;e._walkActive=!1;e._activeWalk=new a.Internal.MostRecentlySetAction(!0);e._keyUpMap=new Map;e._keyDownMap=new Map;e._tickTimerId=null;e._keyWalkMapping=new Map;e._mouseLookEnabled=!0;e._bimModeEnabled=!1;e._syncronizedToggleBimMode=new a.Internal.MostRecentlySetActionSync;e._logical={floor:__assign({},c.Bim.Default.FloorConfig),wall:__assign({},c.Bim.Default.WallConfig),door:__assign({},c.Bim.Default.DoorConfig)};
e._effective={floor:__assign({},c.Bim.Default.FloorConfig),wall:__assign({},c.Bim.Default.WallConfig),door:__assign({},c.Bim.Default.DoorConfig)};e._bimMotion=new a.Internal.BimMotion(d,d._getScEngine());e._downAxis=new a.Point3(0,-1,0);e.addKeyMapping(a.KeyCode.a,a.WalkDirection.Left);e.addKeyMapping(a.KeyCode.d,a.WalkDirection.Right);e.addKeyMapping(a.KeyCode.w,a.WalkDirection.Forward);e.addKeyMapping(a.KeyCode.s,a.WalkDirection.Backward);e.addKeyMapping(a.KeyCode.q,a.WalkDirection.RotateLeft);
e.addKeyMapping(a.KeyCode.e,a.WalkDirection.RotateRight);e.addKeyMapping(a.KeyCode.r,a.WalkDirection.TiltUp);e.addKeyMapping(a.KeyCode.f,a.WalkDirection.TiltDown);e.addKeyMapping(a.KeyCode.x,a.WalkDirection.Up);e.addKeyMapping(a.KeyCode.c,a.WalkDirection.Down);e.addKeyMapping(a.KeyCode.LeftArrow,a.WalkDirection.Left);e.addKeyMapping(a.KeyCode.RightArrow,a.WalkDirection.Right);e.addKeyMapping(a.KeyCode.UpArrow,a.WalkDirection.Forward);e.addKeyMapping(a.KeyCode.DownArrow,a.WalkDirection.Backward);d.setCallbacks({camera:function(b){b.getProjection()!==
a.Projection.Perspective&&e._keyDownMap.clear()},subtreeLoaded:function(b,c){c===a.NodeSource.LoadModel&&e._updateSceneFloor()}});return e}__extends(c,b);c.prototype._updateSceneFloor=function(){var b=this._viewer.model.getViewAxes().upVector;console.assert(b.isAxis());this._downAxis=a.Point3.scale(b,-1)};c.prototype.isBimModeEnabled=function(){return this._bimModeEnabled};c.prototype._enableBimMode=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(a){switch(a.label){case 0:return this._bimModeEnabled=
!0,this._effective.floor=this._scaleAgainstModelUnit(this._logical.floor),this._effective.wall=this._scaleAgainstModelUnit(this._logical.wall),this._effective.door=this._scaleAgainstModelUnit(this._logical.door),this._updateSceneFloor(),[4,this._applyGravity()];case 1:return a.sent(),[4,this._updateNearbyDoors()];case 2:return a.sent(),[2]}})})};c.prototype._disableBimMode=function(){this._bimModeEnabled=!1;this._bimMotion.forgetNearbyDoors()};c.prototype.enableBimMode=function(){var a=this;return this._syncronizedToggleBimMode.set(function(){return __awaiter(a,
void 0,void 0,function(){return __generator(this,function(a){this._enableBimMode();return[2]})})})};c.prototype.disableBimMode=function(){var a=this;return this._syncronizedToggleBimMode.set(function(){a._disableBimMode()})};c.prototype._toggleBimMode=function(){var a=this;return this._syncronizedToggleBimMode.set(function(){return a._bimModeEnabled?a._disableBimMode():a._enableBimMode()})};c.prototype.addKeyMapping=function(a,b){this._keyWalkMapping.set(a,b)};c.prototype.getKeyMapping=function(){return a.Internal.copyMap(this._keyWalkMapping)};
c.prototype.clearKeyMappings=function(){this._keyWalkMapping.clear()};c.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(b){switch(b.label){case 0:return this._viewer.view.setProjectionMode(a.Projection.Perspective),this._calculateInitialPosition(),0!==this._maxExtents?[3,2]:[4,this.resetDefaultWalkSpeeds()];case 1:b.sent(),b.label=2;case 2:return this._bimModeEnabled?[4,this._updateNearbyDoors()]:[3,4];case 3:b.sent(),b.label=4;case 4:return[2]}})})};
c.prototype.resetDefaultWalkSpeeds=function(){return __awaiter(this,void 0,void 0,function(){var a,b;return __generator(this,function(c){switch(c.label){case 0:return this._rotationSpeed=40,this._mouseLookSpeed=300,this._viewAngle=90,[4,this._viewer.model.getModelBounding(!0,!1)];case 1:return a=c.sent(),b=a.extents(),this._maxExtents=Math.max(b.x,b.y,b.z),this._walkDistance=this._maxExtents/10,this._elevationSpeed=this._maxExtents/10,this._zoomDistance=this._maxExtents/30,[2]}})})};c.prototype.getBimFloorConfig=
function(){return __assign({},this._logical.floor)};c.prototype.setBimFloorConfig=function(a){this._logical.floor=__assign({},a);this._effective.floor=this._scaleAgainstModelUnit(this._logical.floor)};c.prototype.getBimWallConfig=function(){return __assign({},this._logical.wall)};c.prototype.setBimWallConfig=function(a){this._logical.wall=__assign({},a);this._effective.wall=this._scaleAgainstModelUnit(this._logical.wall)};c.prototype.getBimDoorConfig=function(){return __assign({},this._logical.door)};
c.prototype.setBimDoorConfig=function(a){this._logical.door=__assign({},a);this._effective.door=this._scaleAgainstModelUnit(this._logical.door)};c.prototype._scaleAgainstModelUnit=function(a){var b=this._viewer.model,b=1/b.getNodeUnitMultiplier(b.getAbsoluteRootNode());a=__assign({},a);for(var c=0,d=Object.keys(a);c<d.length;c++){var f=d[c];"number"===typeof a[f]&&(a[f]*=b)}return a};c.prototype.onMouseDown=function(a){b.prototype.onMouseDown.call(this,a);this._viewer.focusInput(!0)};c.prototype.onMouseMove=
function(c){b.prototype.onMouseMove.call(this,c);if(this._dragging&&this._mouseLookEnabled){this._viewer.view.setProjectionMode(a.Projection.Perspective);var d=window.screen.width,f=window.screen.height;c.setHandled(!0);c=a.Point2.subtract(this._ptPrevious,this._ptCurrent);this.rotateLeft(c.x/d*this._mouseLookSpeed);this.tiltUp(c.y/f*this._mouseLookSpeed)}};c.prototype.onMouseUp=function(a){5<this._dragCount&&a.setHandled(!0);b.prototype.onMouseUp.call(this,a)};c.prototype.onMousewheel=function(b){var c=
this;this._viewer.view.setProjectionMode(a.Projection.Perspective);var d=this._viewer.view,f=d.getCamera(),e=b.getPosition(),g=b.getWheelDelta();b=d.pickFromPoint(e,new a.PickConfig(a.SelectionMask.Face)).then(function(b){var d=b.getPosition();null!==b&&null!==d?(b=a.Point3.subtract(f.getPosition(),d).normalize().scale(c._zoomDistance*g),c._applyWalkDelta(f,b)):c.walkForward(g*c._walkDistance)});b};c.prototype.onKeyDown=function(b){this._viewer.view.setProjectionMode(a.Projection.Perspective);var c=
b.getKeyCode();c===a.KeyCode.v&&this._toggleBimMode();this._keyCodeActive(c)||(this._keyDownMap.set(c,b.getDate().getTime()),this._onKeyChange(c))};c.prototype.onKeyUp=function(a){var b=a.getKeyCode();this._keyUpMap.set(b,a.getDate().getTime());this._onKeyChange(b)};c.prototype._keyCodeActive=function(a){var b=this._keyDownMap.get(a);return void 0!==b&&(a=this._keyUpMap.get(a),void 0===a||b>a)?!0:!1};c.prototype._onKeyChange=function(a){this._keyCodeActive(a)&&this._keyWalkMapping.has(a)&&(this._walkActive||
(this._previousWalkTime=Date.now()),this._onTick())};c.prototype._execWalkDirection=function(b,c,d){switch(b){case a.WalkDirection.Forward:return this._walkForward(this._walkDistance*c,d);case a.WalkDirection.Backward:return this._walkBackward(this._walkDistance*c,d);case a.WalkDirection.Left:return this._walkLeft(this._walkDistance*c,d);case a.WalkDirection.Right:return this._walkRight(this._walkDistance*c,d);case a.WalkDirection.Up:return this.walkUp(this._elevationSpeed*c);case a.WalkDirection.Down:return this.walkDown(this._elevationSpeed*
c);case a.WalkDirection.RotateLeft:return this.rotateLeft(this._rotationSpeed*c);case a.WalkDirection.RotateRight:return this.rotateRight(this._rotationSpeed*c);case a.WalkDirection.TiltUp:return this.tiltUp(this._rotationSpeed*c);case a.WalkDirection.TiltDown:return this.tiltDown(this._rotationSpeed*c);default:a.Internal.TypeAssertNever(b)}};c.prototype._queueWalkDirections=function(b){var c=this,d=new Set;this._keyWalkMapping.forEach(function(a,b){c._keyCodeActive(b)&&d.add(a)});e(d);var f=a.Internal.setToArray(d);
f.sort();if(0<f.length){this._walkActive=!0;var g=this._bimModeEnabled;this._activeWalk.set(function(){var e=new a.Internal.ActionQueue(1,!0);if(0<b)for(var n=function(a){e.push(function(){return c._execWalkDirection(a,b,g)})},r=0;r<f.length;r++)n(f[r]);g&&(d.has(a.WalkDirection.Up)||d.has(a.WalkDirection.Down)||e.push(function(){c._applyGravity()}),e.push(function(){c._updateNearbyDoors()}));if(!e.isIdle())return e.waitForIdle()})}};c.prototype._applyGravity=function(){return __awaiter(this,void 0,
void 0,function(){var b,c,d,f,e,g,n,r,t;return __generator(this,function(u){switch(u.label){case 0:return b=this._viewer.view.getCamera(),c=b.getPosition(),[4,this._bimMotion.applyGravity(c,this._downAxis,this._effective.floor.maxFallDistance)];case 1:d=u.sent();if(null!==d)return[3,3];c=a.Point3.subtract(c,a.Point3.scale(this._downAxis,this._effective.floor.avatarOffset));return[4,this._bimMotion.applyGravity(c,this._downAxis,this._effective.floor.maxFallDistance)];case 2:d=u.sent();if(null===d)return[2];
u.label=3;case 3:f=new a.Point3(0,0,this._effective.floor.avatarOffset);e=a.Point3.add(d,f);g=a.Point3.subtract(e,c);n=g.length();if(n>this._effective.floor.negligibleClimbHeight&&(r=a.MeasureUtils.ComputeAngleBetweenVector(g,this._downAxis),(t=90<r)&&n>this._effective.floor.maxClimbHeight))return[2];this._applyWalkDelta(b,g);return[2]}})})};c.prototype._updateNearbyDoors=function(){var a=this._viewer.view.getCamera().getPosition();return this._bimMotion.updateNearbyDoors(a,this._effective.door.transparencyRange,
.5)};c.prototype._onTick=function(){var a=this,b=Date.now(),c=(b-this._previousWalkTime)/1E3;this._previousWalkTime=b;this._walkActive=!this._activeWalk.isIdle();this._queueWalkDirections(c);null!==this._tickTimerId&&(cancelAnimationFrame(this._tickTimerId),this._tickTimerId=null);this._walkActive&&(this._tickTimerId=requestAnimationFrame(function(){a._onTick()}))};c.prototype._updateCamera=function(a){this._resetPosition(a);this._updateCameraTilt(a);this._updateCameraViewAngle(a);this._viewer.view.setCamera(a)};
c.prototype._applyWalkDelta=function(b,c){b.dolly(a.Point3.scale(c,-1));this._updateCamera(b)};c.prototype._applyWalkDeltaWithCollisionCheck=function(b,c,d){return __awaiter(this,void 0,void 0,function(){var f,e,g,n,r,t,u,v,w,y,x,z,A,C,B,D,F,I;return __generator(this,function(E){switch(E.label){case 0:return f=b.getPosition(),e=a.Matrix.createFromOffAxisRotation(d,90),g=e.transform(c),n=a.Matrix.createFromOffAxisRotation(d,-90),r=n.transform(c),t=this._testWallCollision(f,g,this._effective.wall.avatarOffset),
u=this._testWallCollision(f,r,this._effective.wall.avatarOffset),v=this._testWallCollision(f,c,c.length()+this._effective.wall.avatarOffset),[4,Promise.all([t,u])];case 1:w=E.sent();y=w[0];x=w[1];if(null!==y||null!==x)if(z=function(b){return null!==b?(b=b.getFaceEntity().getNormal(),90<a.MeasureUtils.ComputeAngleBetweenVector(b,c)):!1},z(y)||z(x))return[2];return[4,v];case 2:return A=E.sent(),null!==A&&(C=c.length(),B=a.Point3.scale(c,1/C),D=a.Point3.subtract(A.getPosition(),f).length(),F=D-this._effective.wall.avatarOffset,
I=Math.min(C,F),c=a.Point3.scale(B,I)),this._applyWalkDelta(b,c),[2]}})})};c.prototype._testWallCollision=function(a,b,c){return this._bimMotion.testWallCollision(a,b,c)};c.prototype._walkBackward=function(b,c){var d=this._viewer.view.getCamera();this._resetPosition(d);var f=d.getTarget(),e=d.getPosition(),g=d.getUp();b=a.Point3.subtract(e,f).normalize().copy().scale(b);return c?this._applyWalkDeltaWithCollisionCheck(d,b,g):this._applyWalkDelta(d,b)};c.prototype._walkForward=function(a,b){return this._walkBackward(-a,
b)};c.prototype._walkLeft=function(b,c){var d=this._viewer.view.getCamera();this._resetPosition(d);var f=d.getTarget(),e=d.getPosition(),g=d.getUp(),f=a.Point3.subtract(f,e).normalize();b=a.Point3.cross(g,f).normalize().copy().scale(b);return c?this._applyWalkDeltaWithCollisionCheck(d,b,g):this._applyWalkDelta(d,b)};c.prototype._walkRight=function(a,b){return this._walkLeft(-a,b)};c.prototype.walkBackward=function(a){return this._walkBackward(a,!1)};c.prototype.walkForward=function(a){return this._walkForward(a,
!1)};c.prototype.walkLeft=function(a){return this._walkLeft(a,!1)};c.prototype.walkRight=function(a){return this._walkRight(a,!1)};c.prototype.walkDown=function(a){var b=this._viewer.view.getCamera();this._resetPosition(b);a=b.getUp().normalize().scale(a);this._applyWalkDelta(b,a)};c.prototype.walkUp=function(a){this.walkDown(-a)};c.prototype.rotateRight=function(b){var c=this._viewer.view.getCamera();this._resetPosition(c);var d=c.getTarget(),f=c.getPosition(),e=a.Point3.subtract(f,d).length(),g=
a.Point3.subtract(d,f).normalize();b=a.MeasureUtils.Degrees_To_Radians(b);b=Math.tan(b);b*=a.Point3.subtract(c.getTarget(),c.getPosition()).length();g=a.Point3.cross(g,c.getUp()).scale(b);d=d.copy().add(g);e=a.Point3.subtract(d,f).normalize().scale(e);d=a.Point3.add(f,e);c.setTarget(d);this._updateCamera(c)};c.prototype.rotateLeft=function(a){this.rotateRight(-a)};c.prototype.tiltDown=function(a){this.setTilt(this._tilt+a);a=this._viewer.view.getCamera();this._resetPosition(a);this._updateCamera(a)};
c.prototype.tiltUp=function(a){this.tiltDown(-a)};c.prototype._calculateInitialPosition=function(){var a=this._viewer.view.getCamera();this._majorAxis=this._calculateMajorAxis(a);this.setTilt(this._calculateInitialTilt(a));this._resetPosition(a);this._updateCamera(a)};c.prototype._updateCameraViewAngle=function(b){var c=a.MeasureUtils.Degrees_To_Radians(this._viewAngle),c=Math.tan(c/2),c=a.Point3.subtract(b.getTarget(),b.getPosition()).length()*c;b.setWidth(c);b.setHeight(c)};c.prototype._updateCameraTilt=
function(b){var c=b.getPosition(),d=b.getTarget(),f=b.getUp().normalize(),e=a.Point3.subtract(d,c).normalize(),f=a.Point3.cross(f,e).normalize(),d=a.Point3.distance(d,c);a.Matrix.createFromOffAxisRotation(f,this._tilt).transform(e,e);b.setTarget(a.Point3.add(c,e.scale(d)))};c.prototype._calculateInitialTilt=function(b){var c=b.getTarget();b=b.getPosition();b=a.Point3.subtract(c,b);c=b.length();this._majorAxis===a.Axis.X?b.x=0:this._majorAxis===a.Axis.Y?b.y=0:this._majorAxis===a.Axis.Z&&(b.z=0);b=
b.length();return 180/Math.PI*Math.acos(b/c)};c.prototype._resetPosition=function(b){this._majorAxis=this._calculateMajorAxis(b);var c=b.getPosition(),d=b.getTarget(),d=a.Point3.subtract(d,c),f=d.length();0<this._walkDistance&&(f=this._walkDistance);switch(this._majorAxis){case a.Axis.X:d.set(0,d.y,d.z);b.setUp(new a.Point3(1,0,0));break;case a.Axis.Y:d.set(d.x,0,d.z);b.setUp(new a.Point3(0,1,0));break;case a.Axis.Z:d.set(d.x,d.y,0),b.setUp(new a.Point3(0,0,1))}d.normalize().scale(f);b.setTarget(a.Point3.add(c,
d))};c.prototype._calculateMajorAxis=function(b){var c=b.getUp();b=Math.abs(c.x);var d=Math.abs(c.y),c=Math.abs(c.z);return c>=b&&c>=d?a.Axis.Z:d>=b&&d>=c?a.Axis.Y:a.Axis.X};c.prototype.setZoomSpeed=function(a){this._zoomDistance=a};c.prototype.getZoomSpeed=function(){return this._zoomDistance};c.prototype.setTilt=function(a){this._tilt=Math.max(Math.min(a,45),-45);a=this._viewer.view.getCamera();this._updateCamera(a)};c.prototype.getTilt=function(){return this._tilt};c.prototype.setViewAngle=function(a){a=
Math.max(Math.min(a,150),30);this._viewAngle!==a&&(this._viewAngle=a,this._updateCamera(this._viewer.view.getCamera()))};c.prototype.getViewAngle=function(){return this._viewAngle};c.prototype.setWalkSpeed=function(a){this._walkDistance=a};c.prototype.getWalkSpeed=function(){return this._walkDistance};c.prototype.setElevationSpeed=function(a){this._elevationSpeed=a};c.prototype.getElevationSpeed=function(){return this._elevationSpeed};c.prototype.setRotationSpeed=function(a){this._rotationSpeed=a};
c.prototype.getRotationSpeed=function(){return this._rotationSpeed};c.prototype.setMouseLookSpeed=function(a){this._mouseLookSpeed=a};c.prototype.getMouseLookSpeed=function(){return this._mouseLookSpeed};c.prototype.setMouseLookEnabled=function(a){this._mouseLookEnabled=a};c.prototype.getMouseLookEnabled=function(){return this._mouseLookEnabled};return c}(g.OperatorBase);g.CameraKeyboardWalkOperator=c;(function(a){(function(a){(function(a){(function(a){a[a.avatarOffset=1500]="avatarOffset";a[a.maxClimbHeight=
600]="maxClimbHeight";a[a.negligibleClimbHeight=20]="negligibleClimbHeight";a[a.maxFallDistance=5E3]="maxFallDistance"})(a.FloorConfig||(a.FloorConfig={}));(function(a){a[a.avatarOffset=150]="avatarOffset"})(a.WallConfig||(a.WallConfig={}));(function(a){a[a.transparencyRange=4E3]="transparencyRange"})(a.DoorConfig||(a.DoorConfig={}))})(a.Default||(a.Default={}))})(a.Bim||(a.Bim={}))})(c=g.CameraKeyboardWalkOperator||(g.CameraKeyboardWalkOperator={}))})(a.Operator||(a.Operator={}))})(Communicator||
(Communicator={}));
(function(a){(function(g){var d=function(c){function b(b,d){b=c.call(this,b)||this;b._cameraRotationMomentumEnabled=!1;b._isDown=!1;b._mouseDragged=!1;b._averagedMousePoints=new e;b._averageTimeIntervalMilliseconds=150;b._previousMouseMovePoint=a.Point2.zero();b._mouseMovePoint=a.Point2.zero();b._mouseMoveOffset=a.Point2.zero();b._previousMouseMoveTime=null;b._mouseMoveTime=null;b._mouseMoveElapsedTimeSeconds=0;b._rotationDegreesPerSecond=[0,0];b._animationLastTickTime=0;b._animationElapsedTimeSeconds=0;
b._animationIntervalResult=null;b._preferredAnimationIntervalMilliseconds=16;b._momentum=0;b._momentumLossPerSecond=0;b._degreesPerPixel=.5;b._maxRotationMagnitudeScale=8;b._initialSelectionPosition=null;b._cameraRotateFunction=d;return b}__extends(b,c);b.prototype.getCameraRotationMomentumEnabled=function(){return this._cameraRotationMomentumEnabled};b.prototype.setCameraRotationMomentumEnabled=function(a){a!==this._cameraRotationMomentumEnabled&&((this._cameraRotationMomentumEnabled=a)||this.stopAnimation())};
b.prototype.isCurrentlyAnimating=function(){return this._cameraRotationMomentumEnabled&&0<this.getMomentum()};b.prototype.onDeactivate=function(){c.prototype.onDeactivate.call(this);this.stopAnimation()};b.prototype.onViewOrientationChange=function(){c.prototype.onViewOrientationChange.call(this);this.stopAnimation()};b.prototype.supportsAnimation=function(){return!0};b.prototype.onMouseDown=function(a){c.prototype.onMouseDown.call(this,a);this.isActive()&&(this._initialSelectionPosition=a.getPosition(),
this._isDown=!0,this.stopAnimation(),this._mouseDragged=!1,this._mouseMoveTime=this._previousMouseMoveTime=Date.now(),this._mouseMovePoint.assign(this._initialSelectionPosition),this._previousMouseMovePoint.assign(this._mouseMovePoint),this._averagedMousePoints.clear(),this._averagedMousePoints.add(this._mouseMovePoint,this._mouseMoveTime))};b.prototype.onMouseMove=function(b){c.prototype.onMouseMove.call(this,b);this.isActive()&&this._isDown&&(this._mouseDragged=!0,this._previousMouseMovePoint.assign(this._mouseMovePoint),
this._mouseMovePoint.assign(b.getPosition()),this._mouseMoveOffset=a.Point2.subtract(this._mouseMovePoint,this._previousMouseMovePoint),this._previousMouseMoveTime=this._mouseMoveTime,this._mouseMoveTime=Date.now(),this._mouseMoveElapsedTimeSeconds=null===this._previousMouseMoveTime?0:(this._mouseMoveTime-this._previousMouseMoveTime)/1E3,this._averagedMousePoints.add(this._mouseMovePoint,this._mouseMoveTime),b=this._getMouseMoveOffsetForRotation(),this._rotateCamera(b))};b.prototype.onMouseUp=function(a){if(this.isActive()&&
(this._isDown=!1,this._mouseDragged&&this.getCameraRotationMomentumEnabled())){this._mouseMoveOffset=this._averagedMousePoints.getAverageOffsetWithinMilliseconds(this._averageTimeIntervalMilliseconds);var b=this._getMouseMoveOffsetForRotation();if(0!==b[0]||0!==b[1]){for(var d=0;2>d;d++){var e=Math.abs(b[d])*this._maxRotationMagnitudeScale;this._rotationDegreesPerSecond[d]=b[d]/this._mouseMoveElapsedTimeSeconds;this._rotationDegreesPerSecond[d]<-e?this._rotationDegreesPerSecond[d]=-e:this._rotationDegreesPerSecond[d]>
e&&(this._rotationDegreesPerSecond[d]=e)}this._momentum=1;this._momentumLossPerSecond=0;this._startAnimation()}else this._momentum=0}c.prototype.onMouseUp.call(this,a)};b.prototype._rotateCamera=function(a){this._cameraRotateFunction(a)};b.prototype.stopAnimation=function(){null!==this._animationIntervalResult&&(clearInterval(this._animationIntervalResult),this._animationIntervalResult=null)};b.prototype.getMomentum=function(){return this._momentum};b.prototype.isAnimating=function(){return null!==
this._animationIntervalResult};b.prototype._startAnimation=function(){var a=this;null===this._animationIntervalResult&&(this._animationLastTickTime=Date.now(),this._animationIntervalResult=window.setInterval(function(){a._onTick()},this._preferredAnimationIntervalMilliseconds))};b.prototype._getMouseMoveOffsetForRotation=function(){return[-this._mouseMoveOffset.x*this._degreesPerPixel,this._mouseMoveOffset.y*this._degreesPerPixel]};b.prototype._onTick=function(){var a=Date.now();this._animationElapsedTimeSeconds=
(a-this._animationLastTickTime)/1E3;this._animationLastTickTime=a;this._rotateCamera([this._animationElapsedTimeSeconds*this._rotationDegreesPerSecond[0],this._animationElapsedTimeSeconds*this._rotationDegreesPerSecond[1]]);if(0<this._momentumLossPerSecond)if(this._momentum=Math.max(0,this._momentum-this._animationElapsedTimeSeconds*this._momentumLossPerSecond),0<this._momentum)for(a=0;a<this._rotationDegreesPerSecond.length;a++)this._rotationDegreesPerSecond[a]*=this._momentum;else{for(a=0;a<this._rotationDegreesPerSecond.length;a++)this._rotationDegreesPerSecond[a]=
0;this._rotateCamera(this._rotationDegreesPerSecond);this.stopAnimation()}};return b}(g.OperatorBase);g.CameraOrbitBaseOperator=d;var e=function(){function c(a){void 0===a&&(a=10);this._count=0;this._points=Array(a);this._times=Array(a)}c.prototype.clear=function(){this._count=0};c.prototype.add=function(a,c){void 0===c&&(c=Date.now());var d=this._count%this._points.length;void 0===this._points[d]?this._points[d]=a.copy():this._points[d].assign(a);this._times[d]=c;this._count++};c.prototype.getAverageOffsetWithinMilliseconds=
function(b,c){void 0===c&&(c=Date.now());var d=-1,e=a.Point2.zero(),g=Math.min(this._points.length,this._count);if(0<g){for(var p=0,l=0;l<g;l++){var m=(this._count-1-l)%this._points.length;if(c-this._times[m]>b)break;d=m;e.add(this._points[m]);p++}1<p?(e.subtract(this._points[d]),p--,e.scale(1/p)):(d=-1,e.set(0,0))}return 0<=d?a.Point2.subtract(e,this._points[d]):e};return c}()})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(c){function b(b,d,e){var g=c.call(this)||this;g._circle=new a.Markup.Shape.Circle;g._viewer=b;g._position=d;g._circle.setRadius(e);return g}__extends(b,c);b.prototype.draw=function(){if(this._circle){var b=this._viewer.view.projectPoint(this._position);this._circle.setCenter(a.Point2.fromPoint3(b));this._viewer.markupManager.getRenderer().drawCircle(this._circle)}};return b}(a.Markup.MarkupItem);g.OrbitMarkup=d;var e=function(c){function b(b){var e=c.call(this,
b,function(b){if(!e._viewer.model.isDrawing())if(null!==e._pickPosition){if(null===e._circleMarkupHandler){var c=new d(e._viewer,e._pickPosition,e._circleRadius);e._circleMarkupHandler=e._viewer.markupManager.registerMarkup(c)}e._orbitByTurnTiltWithTarget(b,e._pickPosition)}else switch(c=e._viewer.view.getCamera(),e._orbitFallbackMode){default:case a.OrbitFallbackMode.CameraTarget:e._orbitByTurnTiltWithTarget(b,c.getTarget());break;case a.OrbitFallbackMode.ModelCenter:e._modelCenter&&e._orbitByTurnTiltWithTarget(b,
e._modelCenter);break;case a.OrbitFallbackMode.OrbitTarget:e._orbitByTurnTiltWithTarget(b,e._orbitTarget)}})||this;e._orbitTarget=a.Point3.zero();e._orbitFallbackMode=a.OrbitFallbackMode.ModelCenter;e._modelCenter=null;e._circleMarkupHandler=null;e._circleRadius=3;e._updateCameraCenterAction=new a.Internal.MostRecentlySetAction(!1);e._updateCameraCenterTimer=new a.Internal.Timer;e._primaryButton=a.Button.Middle;e._pickPosition=null;e._viewer.setCallbacks({sceneReady:function(){e._updateModelCenter()},
modelSwitched:function(){e._updateModelCenter()},visibilityChanged:function(){e._updateModelCenter()},_updateTransform:function(a){a||e._updateModelCenter()},_geometryCreated:function(){e._updateModelCenter()},hwfParseComplete:function(){e._updateModelCenter()}});return e}__extends(b,c);b.prototype._updateModelCenter=function(b){var c=this;void 0===b&&(b=50);this._updateCameraCenterTimer.clear();this._updateCameraCenterAction.set(function(){return __awaiter(c,void 0,void 0,function(){var c=this,d,
e,g,h;return __generator(this,function(n){switch(n.label){case 0:d=new a.Box,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this._viewer.model.getModelBounding(!0,!1)];case 2:return d=n.sent(),d.isDegenerate()&&0<b?(this._updateCameraCenterTimer.set(500,function(){c._updateModelCenter(b-1)}),[2]):[3,4];case 3:return e=n.sent(),g=!1,SC.isError(e)&&(h=SC.getStateFailure(e),1===h&&(g=!0)),console.assert(g),[3,4];case 4:return this._modelCenter=d.center(),[2]}})})})};b.prototype.onMouseDown=function(b){c.prototype.onMouseDown.call(this,
b);this.isActive()&&b.getButton()===this._primaryButton&&(b=b._getPickResult(a.SelectionMask.Face),null!==b&&0===b.overlayIndex()?this._pickPosition=b.getPosition():this._pickPosition=null)};b.prototype.onMouseUp=function(a){c.prototype.onMouseUp.call(this,a);a.getButton()===this._primaryButton&&(this._pickPosition=null);this._removeMarkup()};b.prototype._removeMarkup=function(){null!==this._circleMarkupHandler&&(this._viewer.markupManager.unregisterMarkup(this._circleMarkupHandler),this._circleMarkupHandler=
null)};b.prototype._orbitByTurnTiltWithTarget=function(b,c){var d=this._viewer.view,e=d.getCamera(),g=e.getPosition().subtract(c),l=e.getTarget().subtract(c),m=e.getUp().normalize(),n=a.Point3.subtract(l,g).normalize(),n=a.Point3.cross(m,n).normalize(),n=a.Matrix.createFromOffAxisRotation(n,b[1]);b=a.Matrix.createFromOffAxisRotation(m,b[0]);n=a.Matrix.multiply(b,n);b=n.transform(g);l=n.transform(l);m=n.transform(a.Point3.add(g,m));m.subtract(b);g=b;g.add(c);l.add(c);e.setPosition(g);e.setTarget(l);
e.setUp(m);d.setCamera(e)};b.prototype.setOrbitFallbackMode=function(a){this._orbitFallbackMode=a};b.prototype.getOrbitFallbackMode=function(){return this._orbitFallbackMode};b.prototype.setOrbitTarget=function(a){this._orbitTarget=a};b.prototype.getOrbitTarget=function(){return this._orbitTarget};b.prototype.setPrimaryButton=function(a){this._primaryButton=a};b.prototype.getPrimaryButton=function(){return this._primaryButton};b.prototype.needsSelection=function(b,c){return b===a.EventType.MouseDown&&
c===this._primaryButton};b.prototype._selectionMask=function(b){return a.SelectionMask.Face};return b}(g.CameraOrbitBaseOperator);g.CameraOrbitOperator=e})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){b=d.call(this,b)||this;b._cameraPtPrevious=a.Point3.zero();return b}__extends(c,d);c.prototype.onMouseDown=function(a){d.prototype.onMouseDown.call(this,a);if(this.isActive()||this._viewer.model.isDrawing()){var c=this._viewer.view;(a=c.getCamera().getCameraPlaneIntersectionPoint(a.getPosition(),c))&&this._cameraPtPrevious.assign(a)}};c.prototype.onMouseMove=function(b){d.prototype.onMouseMove.call(this,b);if(this.isActive()||this._viewer.model.isDrawing()){var c=
this._viewer.view,g=c.getCamera();if(b=g.getCameraPlaneIntersectionPoint(b.getPosition(),c))b=a.Point3.subtract(b,this._cameraPtPrevious),g.dolly(b),c.setCamera(g)}};return c}(g.OperatorBase);g.CameraPanOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){b=d.call(this,b)||this;b._mouseMoveZoomDelta=3;b._mouseWheelZoomDelta=.25;b._pinchZoomModifier=2.5;b._zoomToMousePosition=!0;b._mouseMoveZoomFactor=1;b._mouseWheelZoomFactor=-1;b._mouseWheelAdjustCameraTarget=!1;b._secondaryTouchId=null;b._lastTouch1=a.Point2.zero();b._lastTouch2=a.Point2.zero();b._prevLen=0;return b}__extends(c,d);c.prototype.setMouseWheelZoomInverted=function(a){this._mouseWheelZoomFactor=a?-1:1};c.prototype.getMouseWheelZoomInverted=
function(){return 1===this._mouseWheelZoomFactor};c.prototype.setMouseMoveZoomInverted=function(a){this._mouseMoveZoomFactor=a?-1:1};c.prototype.getMouseMoveZoomInverted=function(){return 1===this._mouseMoveZoomFactor};c.prototype.setMouseMoveZoomDelta=function(a){this._mouseMoveZoomDelta=a};c.prototype.getMouseMoveZoomDelta=function(){return this._mouseMoveZoomDelta};c.prototype.setMouseWheelZoomDelta=function(a){this._mouseWheelZoomDelta=a};c.prototype.getMouseWheelZoomDelta=function(){return this._mouseWheelZoomDelta};
c.prototype.setZoomToMousePosition=function(a){this._zoomToMousePosition=a};c.prototype.getZoomToMousePosition=function(){return this._zoomToMousePosition};c.prototype.setMouseWheelAdjustCameraTarget=function(a){this._mouseWheelAdjustCameraTarget=a};c.prototype.getMouseWheelAdjustCameraTarget=function(){return this._mouseWheelAdjustCameraTarget};c.prototype.onMouseMove=function(a){d.prototype.onMouseMove.call(this,a);if(this.isDragging()&&this.isActive()){var c=this._viewer.view;a=c.pointToWindowPosition(this._ptCurrent);
c=c.pointToWindowPosition(this._ptPrevious);this._doZoom(1-this._mouseMoveZoomDelta*this._mouseMoveZoomFactor*(a.y-c.y))}};c.prototype.onMousewheel=function(a){var c=1-this._mouseWheelZoomDelta*this._mouseWheelZoomFactor*a.getWheelDelta();this._doZoom(c,void 0,a.getPosition())};c.prototype.onTouchStart=function(b){var c=this._viewer.view;null===this._primaryTouchId?(this._primaryTouchId=b.getId(),this._lastTouch1.assign(c.pointToWindowPosition(b.getPosition()))):null===this._secondaryTouchId&&(this._secondaryTouchId=
b.getId(),this._lastTouch2.assign(c.pointToWindowPosition(b.getPosition())));null!==this._primaryTouchId&&null!==this._secondaryTouchId&&(this._prevLen=a.Point2.subtract(this._lastTouch2,this._lastTouch1).length(),this._dragging=!0)};c.prototype.onTouchMove=function(b){var c=this._viewer.view,d=b.getId();b=b.getPosition();d===this._primaryTouchId?this._lastTouch1.assign(c.pointToWindowPosition(b)):d===this._secondaryTouchId&&this._lastTouch2.assign(c.pointToWindowPosition(b));this._dragging&&d===
this._secondaryTouchId&&(c=a.Point2.subtract(this._lastTouch2,this._lastTouch1).length(),this._doZoom(1-(this._prevLen-c)*this._pinchZoomModifier),this._prevLen=c)};c.prototype.onTouchEnd=function(a){a=a.getId();this._primaryTouchId===a?this._primaryTouchId=null:this._secondaryTouchId===a&&(this._secondaryTouchId=null);this._dragging=!1};c.prototype.onDeactivate=function(){this._secondaryTouchId=this._primaryTouchId=null};c.prototype._doZoom=function(b,c,d){var e=this;void 0===c&&(c=this._viewer.view.getCamera());
var g=this._viewer.view,p=1/b;d&&this._zoomToMousePosition?(b=function(b){if(null!==b&&b.isEntitySelection()){var m=c.getPosition().subtract(c.getTarget()),n=a.Point3.subtract(c.getTarget(),c.getPosition());b=a.Point3.subtract(b.getPosition(),c.getPosition());n=c.getPosition().add(n.scale(a.Point3.dot(n,b)/a.Point3.dot(n,n)));c.setTarget(n);c.setPosition(a.Point3.add(n,m))}m=c.getCameraPlaneIntersectionPoint(d,e._viewer.view);e._zoomHelper(p,c);n=c.getCameraPlaneIntersectionPoint(d,e._viewer.view);
null!==m&&null!==n&&c.dolly(a.Point3.subtract(n,m));g.setCamera(c)},this._mouseWheelAdjustCameraTarget?this._viewer.view.pickFromPoint(d,new a.PickConfig).then(b):b(null)):this._zoomHelper(p,c)};c.prototype._zoomHelper=function(b,c){var d=this._viewer.view;c.setWidth(c.getWidth()*b);c.setHeight(c.getHeight()*b);var e=c.getPosition(),g=c.getTarget();b=a.Point3.subtract(g,e).scale(b);c.setPosition(a.Point3.subtract(g,b));d.setCamera(c)};return c}(g.OperatorBase);g.CameraZoomOperator=d})(a.Operator||
(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a,c,g,k){a=d.call(this,a)||this;a._activeOperator=null;a._activeTouchCount=0;a._touchMoveCount=0;a._returnToOrbit=!1;a._orbitOperator=c;a._panOperator=g;a._zoomOperator=k;return a}__extends(c,d);c.prototype.needsSelection=function(a,c,d){return this._orbitOperator.needsSelection(a,c)||this._panOperator.needsSelection(a,c,d)||this._zoomOperator.needsSelection(a,c,d)};c.prototype.selectionRequirements=function(a){return this._orbitOperator.selectionRequirements(a)|
this._panOperator.selectionRequirements(a)|this._zoomOperator.selectionRequirements(a)};c.prototype.onViewOrientationChange=function(){this._activeTouchCount=0;this._returnToOrbit=!1};c.prototype.onMouseDown=function(a){d.prototype.onMouseDown.call(this,a);this._setActiveOperatorForMouseInput(a);if(this._activeOperator)this._activeOperator.onMouseDown(a)};c.prototype.onMouseMove=function(a){d.prototype.onMouseMove.call(this,a);if(this._activeOperator&&this._dragging&&3<this._dragCount)this._activeOperator.onMouseMove(a)};
c.prototype.onMouseUp=function(a){if(this._activeOperator)this._activeOperator.onMouseUp(a);this._activeOperator instanceof g.CameraOrbitOperator||this._orbitOperator._removeMarkup();d.prototype.onMouseUp.call(this,a)};c.prototype.onMousewheel=function(a){this._zoomOperator.onMousewheel(a)};c.prototype.onTouchStart=function(a){++this._activeTouchCount;this._orbitOperator.onTouchStart(a);this._zoomOperator.onTouchStart(a);this._viewer.model.isDrawing()&&(this._panOperator.onTouchStart(a),this._orbitOperator.onDeactivate());
1===this._activeTouchCount&&(this._primaryTouchId=a.getId());2===this._activeTouchCount&&(this._orbitOperator.onDeactivate(),this._panOperator.onTouchStart(a),this._zoomOperator.onTouchStart(a))};c.prototype.onTouchMove=function(a){++this._touchMoveCount;5<this._touchMoveCount&&(this._returnToOrbit?(this._orbitOperator.onTouchStart(a),this._returnToOrbit=!1):1===this._activeTouchCount?(this._orbitOperator.onTouchMove(a),this._zoomOperator.onTouchMove(a),this._panOperator.onTouchMove(a)):2===this._activeTouchCount&&
(this._zoomOperator.onTouchMove(a),this._panOperator.onTouchMove(a)))};c.prototype.onTouchEnd=function(a){2===this._activeTouchCount&&(this._returnToOrbit=!0);this._zoomOperator.onTouchEnd(a);this._panOperator.onTouchEnd(a);this._orbitOperator.onTouchEnd(a);0<this._activeTouchCount&&--this._activeTouchCount;0===this._activeTouchCount&&(this._touchMoveCount=0)};c.prototype.stopInteraction=function(){d.prototype.stopInteraction.call(this);this._touchMoveCount=this._activeTouchCount=0;this._zoomOperator.onDeactivate();
this._panOperator.onDeactivate();this._orbitOperator.onDeactivate()};c.prototype._setActiveOperatorForMouseInput=function(b){var c=this._viewer.operatorManager,d=c.getOperator(a.OperatorId.Orbit),e=c.getOperator(a.OperatorId.Pan),c=c.getOperator(a.OperatorId.Zoom),g=this._viewer.model.isDrawing();!g&&d.checkMapping(b)?this._activeOperator=this._orbitOperator:g||e.checkMapping(b)?this._activeOperator=this._panOperator:c.checkMapping(b)?this._activeOperator=this._zoomOperator:this._activeOperator=null};
c.prototype.onDeactivate=function(){d.prototype.onDeactivate.call(this);this._orbitOperator.onDeactivate();this._panOperator.onDeactivate();this._zoomOperator.onDeactivate()};return c}(g.OperatorBase);g.CameraNavigationOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){var c=d.call(this,b,function(a){c._rotateAroundAxis(c._rotationAxis,a[0])})||this;c._rotationAxis=new a.Point3(0,0,1);c._tiltAmount=12;return c}__extends(c,d);c.prototype._rotateAroundAxis=function(b,c){var d=this._viewer.view,e=d.getCamera(),g=e.getPosition(),p=e.getUp().normalize(),l=e.getTarget();b=a.Matrix.createFromOffAxisRotation(b,c);c=(new a.Matrix).setTranslationComponent(-l.x,-l.y,-l.z);c=a.Matrix.multiply(c,b);l=(new a.Matrix).setTranslationComponent(l.x,
l.y,l.z);a.Matrix.multiply(c,l).transform(g,g);b.transform(p,p);p.normalize();e.setPosition(g);e.setUp(p);d.setCamera(e)};c.prototype.onMousewheel=function(b){b=b.getWheelDelta();var c=this._viewer.view.getCamera(),d=c.getUp().normalize(),c=a.Point3.subtract(c.getTarget(),c.getPosition()).normalize(),d=a.Point3.cross(d,c).normalize();0<b?this._rotateAroundAxis(d,this._tiltAmount):this._rotateAroundAxis(d,-this._tiltAmount)};c.prototype.setRotationAxis=function(b){var c=!0;switch(b){case a.Axis.X:this._rotationAxis.set(1,
0,0);break;case a.Axis.Y:this._rotationAxis.set(0,1,0);break;case a.Axis.Z:this._rotationAxis.set(0,0,1);break;default:c=!1}return c};return c}(g.CameraOrbitBaseOperator);g.CameraTurntableOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b,c,g){var k=d.call(this)||this;b;k._keyboardWalkOperator=g;k._walkOperator=c;k._activeOperator=c;k._walkMode=a.WalkMode.Mouse;k._active=!1;return k}__extends(c,d);c.prototype.setWalkMode=function(b){var c=this;this._walkMode!==b&&(this._walkMode=b,b===a.WalkMode.Keyboard?(this._activeOperator=this._keyboardWalkOperator,this._active&&(b=this._walkOperator.onDeactivate().then(function(){c._keyboardWalkOperator.onActivate()}),b)):(this._activeOperator=
this._walkOperator,this._active&&(this._keyboardWalkOperator.onDeactivate(),this._walkOperator.onActivate())))};c.prototype.getWalkMode=function(){return this._activeOperator instanceof g.CameraKeyboardWalkOperator?a.WalkMode.Keyboard:a.WalkMode.Mouse};c.prototype.onMouseDown=function(a){this._activeOperator.onMouseDown(a)};c.prototype.onMouseMove=function(a){this._activeOperator.onMouseMove(a)};c.prototype.onMouseUp=function(a){this._activeOperator.onMouseUp(a)};c.prototype.onMousewheel=function(a){this._activeOperator.onMousewheel(a)};
c.prototype.onTouchStart=function(a){this._activeOperator.onTouchStart(a)};c.prototype.onTouchMove=function(a){this._activeOperator.onTouchMove(a)};c.prototype.onTouchEnd=function(a){this._activeOperator.onTouchEnd(a)};c.prototype.onKeyDown=function(a){this._activeOperator.onKeyDown(a)};c.prototype.onKeyUp=function(a){this._activeOperator.onKeyUp(a)};c.prototype.onDeactivate=function(){this._activeOperator.onDeactivate()};c.prototype.onActivate=function(){this._active=!0;this._activeOperator.onActivate()};
c.prototype.onViewOrientationChange=function(){this._active=!1;this._activeOperator.onViewOrientationChange()};c.prototype.selectionRequirements=function(a){return this._activeOperator.selectionRequirements(a)};c.prototype.needsSelection=function(a,c,d){return this._activeOperator.needsSelection(a,c,d)};c.prototype.stopInteraction=function(){this._activeOperator.stopInteraction()};return c}(g.Operator);g.CameraWalkModeOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b){b=d.call(this,b)||this;b._tilt=0;b._isWalking=!1;b._majorAxis=a.Axis.X;b._timerId=null;b._walkButton=a.Button.None;b._previousTimestamp=0;b._activeTouchCount=0;b._maxDistance=200;b._walkSpeed=0;b._minTargetDistance=0;b._rotationSpeed=120;return b}__extends(c,d);c.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,function(){var b,c,d,e,g,p;return __generator(this,function(l){switch(l.label){case 0:return b=this._viewer.view,
c=this._viewer.model,[4,c.getModelBounding(!0,!1)];case 1:return d=l.sent(),e=d.extents(),g=Math.max(e.x,e.y,e.z),this._walkSpeed=g/5,this._minTargetDistance=g/20,b.getProjectionMode()!==a.Projection.Perspective&&b.setProjectionMode(a.Projection.Perspective),this._calculateInitialPosition(),p=this._viewer._getCallbackManager(),p.trigger("walkOperatorActivated"),[2]}})})};c.prototype.onKeyDown=function(b){b=b.getKeyCode();b===a.KeyCode.PgUp&&(this._walkSpeed*=1.2);b===a.KeyCode.PgDown&&(this._walkSpeed*=
.8)};c.prototype.onDeactivate=function(){return this._onDeactivate()};c.prototype._onDeactivate=function(){var a=this._resetCameraTarget();this.stopWalking();return a};c.prototype.onMouseDown=function(b){d.prototype.onMouseDown.call(this,b);var c=this._viewer.view;c.getProjectionMode()!==a.Projection.Perspective&&(c.setProjectionMode(a.Projection.Perspective),this._calculateInitialPosition());this.isActive()&&(this.stopWalking(),this._isWalking=!0,this._walkButton=b.getButton())};c.prototype.onMouseMove=
function(a){d.prototype.onMouseMove.call(this,a);this._isWalking&&null===this._timerId&&this.isActive()&&(this._previousTimestamp=Date.now(),this._onTick())};c.prototype.onMouseUp=function(a){this.isActive()&&this.stopWalking();d.prototype.onMouseUp.call(this,a)};c.prototype.onTouchStart=function(b){d.prototype.onTouchStart.call(this,b);++this._activeTouchCount;1===this._activeTouchCount?this._walkButton=a.Button.Left:2===this._activeTouchCount?this._walkButton=a.Button.Right:3===this._activeTouchCount&&
(this._walkButton=a.Button.None)};c.prototype.onTouchMove=function(b){3===this._activeTouchCount&&this._primaryTouchId===b.getId()?(this._ptCurrent.assign(b.getPosition()),b=a.Point2.subtract(this._ptCurrent,this._ptPrevious),this._adjustTilt(b.y/100*1.5)):3>this._activeTouchCount&&d.prototype.onTouchMove.call(this,b)};c.prototype.onTouchEnd=function(a){d.prototype.onTouchEnd.call(this,a);0<this._activeTouchCount&&--this._activeTouchCount};c.prototype.onMousewheel=function(a){0<a.getWheelDelta()?
this._adjustTilt(3):this._adjustTilt(-3)};c.prototype.stopWalking=function(){null!==this._timerId&&(cancelAnimationFrame(this._timerId),this._timerId=null);this._isWalking=!1};c.prototype._majorAxisRotate=function(b,c){var d=Math.PI/180*c;c=Math.sin(d);d=Math.cos(d);return this._majorAxis===a.Axis.X?new a.Point3(b.x,b.y*d-b.z*c,b.y*c+b.z*d):this._majorAxis===a.Axis.Y?new a.Point3(b.z*c+b.x*d,b.y,b.z*d-b.x*c):new a.Point3(b.x*d-b.y*c,b.x*c+b.y*d,b.z)};c.prototype._testWalk=function(b,c,d){return __awaiter(this,
void 0,void 0,function(){var e,g,p;return __generator(this,function(l){switch(l.label){case 0:return e=new a.Event.MouseInputEvent(0,0,d,a.Buttons.None,a.KeyModifiers.None,a.MouseInputType.Down),g=new a.Event.MouseInputEvent(0,b,d,a.Buttons.None,a.KeyModifiers.None,a.MouseInputType.Move),p=new a.Event.MouseInputEvent(0,b,d,a.Buttons.None,a.KeyModifiers.None,a.MouseInputType.Up),this.onMouseDown(e),this.onMouseMove(g),[4,a.Internal.sleep(c)];case 1:return l.sent(),this.onMouseUp(p),[2]}})})};c.prototype._onTick=
function(){var b=this,c=Date.now(),d=(c-this._previousTimestamp)/1E3;this._previousTimestamp=c;var c=this._viewer.view,e=c.getCamera();this._resetPosition(e);var g=e.getUp().normalize(),p=e.getTarget(),l=e.getPosition(),m=a.Point3.subtract(p,l).normalize(),n=a.Point3.cross(g,m).normalize(),r=a.Point3.distance(p,l),t=a.Point2.subtract(this._ptCurrent,this._ptFirst),u=new a.Point2(Math.abs(t.x)/this._maxDistance,Math.abs(t.y)/this._maxDistance),v=this._rotationSpeed*d*u.x,w=this._walkSpeed*d*u.x,d=
this._walkSpeed*d*u.y;this._walkButton===a.Button.Left?(0!==t.x&&(0<t.x?m.assign(this._majorAxisRotate(m,-v)):0>t.x&&m.assign(this._majorAxisRotate(m,v))),0!==t.y&&(0>t.y?l.add(m.copy().scale(d)):0<t.y&&l.add(m.copy().scale(-d)))):this._walkButton===a.Button.Right&&(0<Math.abs(t.y)&&(g.scale(d),0<t.y&&g.negate(),l.add(g)),0<Math.abs(t.x)&&(d=n.copy().scale(w),0<t.x&&d.negate(),l.add(d)));t=Math.max(this._walkSpeed*u.y,this._minTargetDistance);a.Matrix.createFromOffAxisRotation(n,this._tilt).transform(m,
m);p.assign(a.Point3.add(l,m.scale(t)));m=t*e.getWidth()/r;r=t*e.getHeight()/r;e.setWidth(m);e.setHeight(r);e.setPosition(l);e.setTarget(p);c.setCamera(e);this._timerId=requestAnimationFrame(function(){b._onTick()})};c.prototype._calculateInitialPosition=function(){var b=this._viewer.view,c=b.getCamera();this._majorAxis=this._calculateMajorAxis(c);this._setClampedTiltValue(this._calculateInitialTilt(c));this._resetPosition(c);var d=c.getPosition(),e=c.getTarget(),g=c.getUp().normalize(),p=a.Point3.subtract(e,
d).normalize(),g=a.Point3.cross(g,p).normalize(),e=a.Point3.distance(e,d);a.Matrix.createFromOffAxisRotation(g,this._tilt).transform(p,p);c.setTarget(a.Point3.add(d,p.scale(e)));b.setCamera(c)};c.prototype._calculateInitialTilt=function(b){void 0===b&&(b=this._viewer.view.getCamera());var c=b.getPosition();b=b.getTarget();b=a.Point3.subtract(b,c);c=b.length();this._majorAxis===a.Axis.X?b.x=0:this._majorAxis===a.Axis.Y?b.y=0:this._majorAxis===a.Axis.Z&&(b.z=0);b=b.length();return 180/Math.PI*Math.acos(b/
c)};c.prototype._resetPosition=function(b){void 0===b&&(b=this._viewer.view.getCamera());this._majorAxis=this._calculateMajorAxis(b);var c=b.getPosition(),d=b.getTarget(),d=a.Point3.subtract(d,c),e=d.length();switch(this._majorAxis){case a.Axis.X:d.set(0,d.y,d.z);b.setUp(new a.Point3(1,0,0));break;case a.Axis.Y:d.set(d.x,0,d.z);b.setUp(new a.Point3(0,1,0));break;case a.Axis.Z:d.set(d.x,d.y,0),b.setUp(new a.Point3(0,0,1))}d.normalize().scale(e);b.setTarget(a.Point3.add(c,d))};c.prototype._calculateMajorAxis=
function(b){void 0===b&&(b=this._viewer.view.getCamera());var c=b.getUp();b=Math.abs(c.x);var d=Math.abs(c.y),c=Math.abs(c.z);return c>=b&&c>=d?a.Axis.Z:d>=b&&d>=c?a.Axis.Y:a.Axis.X};c.prototype._adjustTilt=function(b){var c=this._viewer.view;this._setClampedTiltValue(this._tilt+=b);b=c.getCamera();this._resetPosition(b);var d=b.getTarget(),e=b.getPosition(),g=a.Point3.distance(d,e),p=b.getUp().normalize(),d=a.Point3.subtract(d,e).normalize(),p=a.Point3.cross(p,d).normalize();a.Matrix.createFromOffAxisRotation(p,
this._tilt).transform(d,d);d.normalize().scale(g);b.setTarget(a.Point3.add(e,d));c.setCamera(b)};c.prototype._resetCameraTarget=function(){return __awaiter(this,void 0,void 0,function(){var b,c,d,e,g,p;return __generator(this,function(l){switch(l.label){case 0:return b=this._viewer.view,c=b.getCanvasSize(),d=new a.Point2(Math.round(c.x/2),Math.round(c.y/2)),e=new a.PickConfig,[4,b.pickFromPoint(d,e)];case 1:return g=l.sent(),g.isEntitySelection()&&(p=b.getCamera(),p.setTarget(g.getPosition()),b.updateCamera(p)),
[2]}})})};c.prototype._setClampedTiltValue=function(a){this._tilt=Math.max(Math.min(a,c.MAX_TILT),c.MIN_TILT)};c.MAX_TILT=45;c.MIN_TILT=-45;return c}(g.OperatorBase);g.CameraWalkOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(b,c){b=d.call(this,b)||this;b._pickConfig=new a.PickConfig(a.SelectionMask.Line);b._moveSelectionAction=new a.Internal.MostRecentlySetAction(!0);b._lengthMarkup=null;b._edgeMarkup=null;b._measureManager=c;b._pickConfig.restrictLinesAndPointsToSelectedFaceInstances=!1;return b}__extends(c,d);c.prototype.onActivate=function(){null===this._edgeMarkup&&(this._edgeMarkup=new a.Markup.Measure.MeasureStraightEdgeLengthMarkup(this._viewer,null,new a.Matrix,
1))};c.prototype._unregisterEdgeMarkup=function(){if(null!==this._edgeMarkup){var a=this._edgeMarkup._getId();""!==a&&(this._viewer.markupManager.unregisterMarkup(a),this._edgeMarkup._setId(""))}};c.prototype._registerEdgeMarkup=function(){null!==this._edgeMarkup&&(this._unregisterEdgeMarkup(),this._edgeMarkup._setId(this._viewer.markupManager.registerMarkup(this._edgeMarkup)))};c.prototype._resetEdgeMarkup=function(){null!==this._edgeMarkup&&(this._unregisterEdgeMarkup(),this._edgeMarkup.reset())};
c.prototype._performMoveSelection=function(a,c){return __awaiter(this,void 0,void 0,function(){var d,e,g;return __generator(this,function(p){switch(p.label){case 0:return d=this._viewer.view,[4,d.pickFromPoint(a,this._pickConfig)];case 1:return e=p.sent(),(g=e.getLineEntity())&&0===e.overlayIndex()&&0!==(g.getLineBits()&4)?(c.setLineGeometry(g.getPoints()),this._registerEdgeMarkup()):this._resetEdgeMarkup(),[2]}})})};c.prototype._performUpSelection=function(b){return __awaiter(this,void 0,void 0,
function(){var c,d,e,g,p,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return c=this._viewer.view,d=this._viewer.model,e=this._viewer._getCallbackManager(),[4,c.pickFromPoint(b,this._pickConfig)];case 1:g=t.sent();if(g.overlayIndex())return[2];if(this._lengthMarkup&&2===this._lengthMarkup._getStage())return this._lengthMarkup._nextStage(),this._measureManager.finalizeMeasurement(this._lengthMarkup),this._lengthMarkup=null,[2];if(this._lengthMarkup||!g.isLineSelection())return[2];
p=g.getLineEntity();if(0===(p.getLineBits()&4))return[2];l=g.getNodeId();m=d.getNodeUnitMultiplier(l);return[4,d.getEdgeProperty(l,p.getLineId())];case 2:n=t.sent();e.trigger("measurementBegin");if(!n)return[2];n instanceof a.SubentityProperties.LineElement||n instanceof a.SubentityProperties.OtherEdgeElement?(r=d.getNodeNetMatrix(l),this._lengthMarkup=new a.Markup.Measure.MeasureStraightEdgeLengthMarkup(this._viewer,n,r,m),this._measureManager.addMeasurement(this._lengthMarkup),this._lengthMarkup.setLineGeometry(p.getPoints()),
this._lengthMarkup._nextStage(),this._lengthMarkup.adjust(b)):n instanceof a.SubentityProperties.CircleElement&&(r=d.getNodeNetMatrix(l),this._lengthMarkup=new a.Markup.Measure.MeasureCircleEdgeLengthMarkup(this._viewer,n,r,m),this._measureManager.addMeasurement(this._lengthMarkup),this._lengthMarkup.setLineGeometry(p.getPoints()),this._lengthMarkup._nextStage(),this._lengthMarkup.adjust(b));2===this._lengthMarkup._getStage()&&e.trigger("measurementValueSet",this._lengthMarkup);return[2]}})})};c.prototype.onMouseMove=
function(a){var c=this;d.prototype.onMouseMove.call(this,a);var g=this._edgeMarkup;if(null!==g){var k=a.getPosition();this.isDragging()&&null===this._primaryTouchId?this._resetEdgeMarkup():(null===this._lengthMarkup&&this._moveSelectionAction.set(function(){return c._performMoveSelection(k,g)}),this._viewer.markupManager.refreshMarkup(),null!==this._lengthMarkup&&0<this._lengthMarkup._getStage()&&this._lengthMarkup.adjust(k))}};c.prototype._onMouseUpImpl=function(a){if(this.isActive()){var c=null!==
this._primaryTouchId&&null!==this._lengthMarkup;if(3>this._dragCount||c)a=a.getPosition(),this._performUpSelection(a)}};c.prototype.onMouseUp=function(a){this._onMouseUpImpl(a);d.prototype.onMouseUp.call(this,a)};c.prototype.setDraggingEnabled=function(a){this._dragging=a};c.prototype.onKeyUp=function(a){a};c.prototype.onKeyDown=function(b){b.getKeyCode()===a.KeyCode.Escape&&(null!==this._lengthMarkup?(this._measureManager.removeMeasurement(this._lengthMarkup),this._lengthMarkup=null):this._measureManager.removeLastMeasurement(),
null!==this._edgeMarkup&&this._resetEdgeMarkup())};c.prototype.setHandled=function(){return null!==this._lengthMarkup};c.prototype.onDeactivate=function(){null!==this._lengthMarkup&&(this._measureManager.removeMeasurement(this._lengthMarkup),this._lengthMarkup=null);null!==this._edgeMarkup&&this._resetEdgeMarkup()};return c}(g.OperatorBase);g.MeasureEdgeLengthOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(c){return c.getSelectionType()!==a.SelectionType.None?(c=c.getFaceEntity().getCadFaceBits(),0!==(c&2)&&0!==(c&1)):!1}var e=function(c){function b(b,d){b=c.call(this,b)||this;b._moveSelectionAction=new a.Internal.MostRecentlySetAction(!0);b._currentHighlight=null;b._markup=null;b._measureManager=d;return b}__extends(b,c);b.prototype._unsetCurrentHighlight=function(){null!==this._currentHighlight&&(this._viewer.model.unsetNodeFaceColor(this._currentHighlight.getNodeId(),
this._currentHighlight.getFaceEntity().getCadFaceIndex()),this._currentHighlight=null)};b.prototype._performMoveSelection=function(b){return __awaiter(this,void 0,void 0,function(){var c,e,g,p,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return c=this._viewer.view,e=this._viewer.model,[4,c.pickFromPoint(b,new a.PickConfig)];case 1:g=t.sent();if(0!==g.overlayIndex()||!g.isFaceSelection())return[2];p=g.getNodeId();l=g.getFaceEntity();if(e.getNodeType(g.getNodeId())!==a.NodeType.BodyInstance||
this._markup&&(m=this._markup.getFirstSelection(),p===m.getNodeId()&&(n=m.getFaceEntity().getCadFaceIndex(),r=l.getCadFaceIndex(),n===r)))return[2];null!==this._currentHighlight?g.equals(this._currentHighlight)?g.getSelectionType()===a.SelectionType.None&&this._unsetCurrentHighlight():(this._unsetCurrentHighlight(),d(g)&&(this._currentHighlight=g,e.setNodeFaceColor(p,l.getCadFaceIndex(),a.Color.yellow()))):null===this._currentHighlight&&d(g)&&(this._currentHighlight=g,e.setNodeFaceColor(p,l.getCadFaceIndex(),
a.Color.yellow()));return[2]}})})};b.prototype._performUpSelection=function(b){return __awaiter(this,void 0,void 0,function(){var c,e,g,p,l,m;return __generator(this,function(n){switch(n.label){case 0:return c=this._viewer.view,e=this._viewer.model,[4,c.pickFromPoint(b,new a.PickConfig)];case 1:g=n.sent();if(g.overlayIndex())return[2];if(this._markup&&1<this._markup._getStage())return this._viewer._getCallbackManager().trigger("measurementBegin"),this._markup._nextStage(),this._markup._isFinalized()&&
(this._measureManager.finalizeMeasurement(this._markup),this._markup=null),[2];if(!g.isFaceSelection()||e.getNodeType(g.getNodeId())!==a.NodeType.BodyInstance||this._markup&&!(1>=this._markup._getStage())||!d(g))return[2];p=g.getFaceEntity();return[4,e.getFaceProperty(g.getNodeId(),p.getCadFaceIndex())];case 2:l=n.sent();if(!(l instanceof a.SubentityProperties.PlaneElement))return[2];this._unsetCurrentHighlight();null===this._markup?(this._markup=new a.Markup.Measure.MeasureFaceFaceAngleMarkup(this._viewer),
this._markup.setFirstFace(g),this._measureManager.addMeasurement(this._markup)):(m=this._markup.setSecondFace(g))&&this._markup.adjust(b);return[2]}})})};b.prototype.onMouseMove=function(a){c.prototype.onMouseMove.call(this,a);a=a.getPosition();(!this._markup||1>=this._markup._getStage())&&this._performMoveSelection(a);this._viewer.markupManager.refreshMarkup();null!==this._markup&&0<this._markup._getStage()&&this._markup.adjust(a)};b.prototype._onMouseUpImpl=function(a){var b=this;if(this.isActive()){var c=
null!==this._primaryTouchId&&null!==this._markup&&1<this._markup._getStage();if(3>this._dragCount||c){var d=a.getPosition();this._moveSelectionAction.set(function(){return b._performUpSelection(d)})}}};b.prototype.onMouseUp=function(a){this._onMouseUpImpl(a);c.prototype.onMouseUp.call(this,a)};b.prototype.setDraggingEnabled=function(a){this._dragging=a};b.prototype.onKeyUp=function(a){a};b.prototype.onKeyDown=function(b){b.getKeyCode()===a.KeyCode.Escape&&(null!==this._markup?(this._markup.cleanup(),
this._measureManager.removeMeasurement(this._markup),this._markup=null):this._measureManager.removeLastMeasurement())};b.prototype.setHandled=function(){return null!==this._markup&&1<this._markup._getStage()};b.prototype.onDeactivate=function(){this._unsetCurrentHighlight();null!==this._markup&&(this._measureManager.removeMeasurement(this._markup),this._markup.cleanup(),this._markup=null)};return b}(g.OperatorBase);g.MeasureFaceFaceAngleOperator=e})(a.Operator||(a.Operator={}))})(Communicator||(Communicator=
{}));
(function(a){(function(g){function d(c){return c.getSelectionType()!==a.SelectionType.None?0!==(c.getFaceEntity().getCadFaceBits()&1):!1}var e=function(c){function b(b,d){b=c.call(this,b)||this;b._moveSelectionAction=new a.Internal.MostRecentlySetAction(!0);b._currentHighlight=null;b._markup=null;b._measureManager=d;return b}__extends(b,c);b.prototype._unsetCurrentHighlight=function(){null!==this._currentHighlight&&(this._viewer.model.unsetNodeFaceColor(this._currentHighlight.getNodeId(),this._currentHighlight.getFaceEntity().getCadFaceIndex()),this._currentHighlight=
null)};b.prototype._performMoveSelection=function(b){return __awaiter(this,void 0,void 0,function(){var c,e,g,p,l,m;return __generator(this,function(n){switch(n.label){case 0:return c=this._viewer.view,e=this._viewer.model,[4,c.pickFromPoint(b,new a.PickConfig)];case 1:g=n.sent();if(0!==g.overlayIndex()||!g.isFaceSelection())return[2];p=g.getNodeId();l=g.getFaceEntity();if(e.getNodeType(p)!==a.NodeType.BodyInstance||this._markup&&(m=this._markup.getFirstSelection(),null!==m&&p===m.getNodeId()&&l.getCadFaceIndex()===
m.getFaceEntity().getCadFaceIndex()))return[2];null!==this._currentHighlight?g.equals(this._currentHighlight)?g.getSelectionType()===a.SelectionType.None&&this._unsetCurrentHighlight():(this._unsetCurrentHighlight(),d(g)&&(this._currentHighlight=g,e.setNodeFaceColor(p,l.getCadFaceIndex(),a.Color.yellow()))):d(g)&&(this._currentHighlight=g,e.setNodeFaceColor(p,l.getCadFaceIndex(),a.Color.yellow()));return[2]}})})};b.prototype._performUpSelection=function(b){return __awaiter(this,void 0,void 0,function(){var c,
e,g,p,l,m,n,r;return __generator(this,function(t){switch(t.label){case 0:return c=this._viewer.view,e=this._viewer.model,[4,c.pickFromPoint(b,new a.PickConfig)];case 1:g=t.sent();if(g.overlayIndex())return[2];if(this._markup&&1<this._markup._getStage())return this._viewer._getCallbackManager().trigger("measurementBegin"),this._markup._nextStage(),this._markup._isFinalized()&&(this._measureManager.finalizeMeasurement(this._markup),this._markup=null),[2];if(!g.isFaceSelection())return[2];p=g.getNodeId();
l=g.getFaceEntity();return d(g)&&e.getNodeType(p)===a.NodeType.BodyInstance&&(!this._markup||1>=this._markup._getStage())?[4,e.getFaceProperty(p,l.getCadFaceIndex())]:[2];case 2:m=t.sent();if(!m)return[2];n=e.getNodeNetMatrix(p);this._unsetCurrentHighlight();return m instanceof a.SubentityProperties.PlaneElement||m instanceof a.SubentityProperties.CylinderElement?[4,e.getNodesBounding([p])]:[3,4];case 3:r=t.sent(),this._markup?this._markup.setSecondFace(b,g,m,n,r):(this._markup=new a.Markup.Measure.MeasureFaceFaceDistanceMarkup(this._viewer),
this._markup.setUnitMultiplier(e.getNodeUnitMultiplier(p)),this._markup.setFirstFace(g,m,n,r),this._measureManager.addMeasurement(this._markup)),t.label=4;case 4:return[2]}})})};b.prototype.onMouseMove=function(a){var b=this;c.prototype.onMouseMove.call(this,a);var d=a.getPosition();(!this._markup||1>=this._markup._getStage())&&this._moveSelectionAction.set(function(){return b._performMoveSelection(d)});this._viewer.markupManager.refreshMarkup();null!==this._markup&&0<this._markup._getStage()&&this._markup.adjust(d)};
b.prototype._onMouseUpImpl=function(a){if(this.isActive()){var b=null!==this._primaryTouchId&&null!==this._markup&&1<this._markup._getStage();if(3>this._dragCount||b)a=a.getPosition(),this._performUpSelection(a)}};b.prototype.onMouseUp=function(a){this._onMouseUpImpl(a);c.prototype.onMouseUp.call(this,a)};b.prototype.setDraggingEnabled=function(a){this._dragging=a};b.prototype.onKeyUp=function(a){a};b.prototype.onKeyDown=function(b){b.getKeyCode()===a.KeyCode.Escape&&(null!==this._markup?(this._markup.cleanup(),
this._measureManager.removeMeasurement(this._markup),this._markup=null):this._measureManager.removeLastMeasurement())};b.prototype.setHandled=function(){return null!==this._markup&&1<this._markup._getStage()};b.prototype.onDeactivate=function(){c.prototype.onDeactivate.call(this);this._unsetCurrentHighlight();null!==this._markup&&(this._measureManager.removeMeasurement(this._markup),this._markup.cleanup(),this._markup=null)};return b}(g.OperatorBase);g.MeasureFaceFaceDistanceOperator=e})(a.Operator||
(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){function d(b,c){var d=new a.Point4(c.x,c.y,c.z,1);c=new a.Point4(0,0,0,0);b.view.getFullCameraMatrix().transform4(d,c);d=1/c.w;c=new a.Point2(c.x*d,c.y*d);d=b.model.getClientDimensions();b=d[0];d=d[1];c.x=.5*b*(c.x+1);c.y=.5*d*(c.y+1);c.x=Math.max(0,Math.min(c.x,b));c.y=d-Math.max(0,Math.min(c.y,d));return c}var e=function(){return function(a,b,c){this.worldPosition=a;this.screenPosition=b;this.selectionItem=c}}(),c=function(b){function c(d){var e=b.call(this,d)||this;e._cursorSprite=
new a.Markup.Shape.Circle;e._name="CursorMarkup";e._cursorSprite.setFillColor(d.measureManager.getMeasurementColor());e._markupId=d.markupManager.registerMarkup(e);return e}__extends(c,b);c.prototype.draw=function(){this._viewer.markupManager.getRenderer().drawCircle(this._cursorSprite)};c.prototype.enable=function(a){this._cursorSprite.setRadius(a?2.5:0)};c.prototype.setPosition=function(a){this._cursorSprite.setCenter(a)};c.prototype.destroy=function(){this._viewer.markupManager.unregisterMarkup(this._markupId)};
return c}(a.Markup.Measure.MeasureMarkup),b=function(b){function g(c,d){var e=b.call(this,c)||this;e._updateCursorSpriteAction=new a.Internal.MostRecentlySetAction(!0);e._measureMarkup=null;e._cursorMarkup=null;e._draggingEnabled=!0;e._viewer=c;e._measureManager=d;e._snappingConfig={enabled:!0,preferVertices:!0};return e}__extends(g,b);g.prototype._getStage=function(){return null===this._measureMarkup?0:this._measureMarkup._getStage()};g.prototype._draw=function(){var a=!1;2>this._getStage()&&null!==
this._cursorMarkup&&(this._cursorMarkup.draw(),a=!0);null!==this._measureMarkup&&(this._measureMarkup.draw(),a=!0);a&&this._viewer.markupManager.refreshMarkup()};g.prototype._activateCursorSprite=function(){null!==this._cursorMarkup&&this._cursorMarkup.enable(!0)};g.prototype._createConfig=function(b){return new a.PickConfig(b?a.SelectionMask.All:a.SelectionMask.Face)};g.prototype._finalizeMeasurement=function(a,b){return __awaiter(this,void 0,void 0,function(){var c,d,e;return __generator(this,function(f){switch(f.label){case 0:c=
this._measureMarkup;if(null===c)return console.assert(!1),[2];d=this._createConfig(b);return[4,this._viewer.view.pickFromPoint(a,d)];case 1:e=f.sent();if(e.overlayIndex())return[2];this._measureMarkup.finalize();this._measureManager.finalizeMeasurement(this._measureMarkup);this._measureMarkup=null;return[2]}})})};g.prototype._getLineSnapPoint=function(b,c){console.assert(2!=this._getStage());var e=this._snappingConfig.preferVertices?b.getBestVertex():null;if(null!==e)return e;e=b.getPosition();if(!c||
0===this._getStage())return e;console.assert(null!==this._measureMarkup);c=b.getPoints();var f;a:{for(b=0;b<c.length-1;b++)if(a.Internal.isPointOnLineSegment(c[b],c[b+1],e,1E-10)){f=b;break a}f=0}b=c[f];c=c[f+1];f=this._measureMarkup.getFirstPointPosition();b=a.Internal.closestPointFromPointToSegment(b,c,f);c=d(this._viewer,b);f=d(this._viewer,e);c=a.Point2.subtract(c,f).squaredLength();f=this._viewer.getSelectionManager().getPickTolerance();return c<=f*f?b:e};g.prototype._getSelectionCursorPoints=
function(a,b){return __awaiter(this,void 0,void 0,function(){var c,f,g,h,r,t,u,v;return __generator(this,function(w){switch(w.label){case 0:c=this._getStage();if(2<=c)return[2,null];f=this._createConfig(b);return[4,this._viewer.view.pickFromPoint(a,f)];case 1:g=w.sent();if(0!==g.overlayIndex())return[2,null];h=g.getPosition();r=a;this._snappingConfig.enabled&&(t=g.getLineEntity(),u=g.getPointEntity(),t||u)&&(v=null,null!==t?v=this._getLineSnapPoint(t,b):null!==u&&(v=u.getPosition()),null!==v&&(h=
v,r=d(this._viewer,h)));return[2,new e(h,r,g)]}})})};g.prototype._updateMeasurementPoints=function(b,c){return __awaiter(this,void 0,void 0,function(){var d,e;return __generator(this,function(f){switch(f.label){case 0:return d=this._getStage(),console.assert(2>d),this._viewer._getCallbackManager().trigger("measurementBegin"),[4,this._getSelectionCursorPoints(b,c)];case 1:e=f.sent();if(null===e||null===e.worldPosition)return[2];null===this._measureMarkup&&(this._measureMarkup=new a.Markup.Measure.MeasurePointPointDistanceMarkup(this._viewer),
this._measureManager.addMeasurement(this._measureMarkup));0===d?(this._measureMarkup.setFirstPointPosition(e.worldPosition),this._measureMarkup.setUnitMultiplier(e.selectionItem.isNodeSelection()?this._viewer.model.getNodeUnitMultiplier(e.selectionItem.getNodeId()):1)):1!==d||e.worldPosition.equals(this._measureMarkup.getFirstPointPosition())||(this._measureMarkup.setSecondPointPosition(e.worldPosition),this._measureMarkup.adjust(e.screenPosition));return[2]}})})};g.prototype._updateCursorSpriteImpl=
function(a,b){return __awaiter(this,void 0,void 0,function(){var c;return __generator(this,function(d){switch(d.label){case 0:return null===this._cursorMarkup?[3,3]:b?[4,this._getSelectionCursorPoints(a,b)]:[3,2];case 1:return c=d.sent(),null!==c&&this._cursorMarkup.setPosition(c.screenPosition),[3,3];case 2:this._cursorMarkup.setPosition(a),d.label=3;case 3:return this._draw(),[2]}})})};g.prototype._updateCursorSprite=function(a,b){var c=this;this._updateCursorSpriteAction.set(function(){return c._updateCursorSpriteImpl(a,
b)})};g.prototype._useSnapping=function(a){return this._snappingConfig.enabled&&!a.altDown()};g.prototype.onMouseMove=function(a){b.prototype.onMouseMove.call(this,a);this._activateCursorSprite();var c=this._getStage();2>c?(c=a.getPosition(),this._updateCursorSprite(c,this._useSnapping(a))):2===c&&(this._measureMarkup.adjust(a.getPosition()),a.setHandled(!0));this._draw()};g.prototype.onMouseUp=function(a){if(this.isActive()){this._activateCursorSprite();var c=this._getStage(),d=null!==this._primaryTouchId&&
null!==this._measureMarkup&&1<c;if(3>this._dragCount||d){var d=this._useSnapping(a),e=a.getPosition();1>=c?this._updateMeasurementPoints(e,d):this._finalizeMeasurement(e,d)}}b.prototype.onMouseUp.call(this,a)};g.prototype.setDraggingEnabled=function(a){this._draggingEnabled=a};g.prototype.onKeyUp=function(a){a};g.prototype._clearMeasurement=function(){null!==this._measureMarkup?(this._measureManager.removeMeasurement(this._measureMarkup),this._measureMarkup=null):this._measureManager.removeLastMeasurement()};
g.prototype.onKeyDown=function(b){b.getKeyCode()===a.KeyCode.Escape&&this._clearMeasurement()};g.prototype.setHandled=function(){return 1<this._getStage()};g.prototype.onActivate=function(){this._cursorMarkup=new c(this._viewer)};g.prototype.onDeactivate=function(){null!==this._cursorMarkup&&(this._cursorMarkup.destroy(),this._cursorMarkup=null);null!==this._measureMarkup&&(this._measureManager.removeMeasurement(this._measureMarkup),this._measureMarkup=null)};return g}(g.OperatorBase);g.MeasurePointPointDistanceOperator=
b})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){var g=function(d){function e(a){var b=d.call(this,a)||this;b._activeRedlineItem=null;b._newRedlineItem=null;b._viewer=a;return b}__extends(e,d);e.prototype.createRedlineItem=function(a){a;return null};e.prototype.updateRedlineItem=function(a){a};e.prototype.finalizeRedlineItem=function(a){a;return null};e.prototype.onMouseDown=function(c){d.prototype.onMouseDown.call(this,c);this.isActive()&&(c.getButton()!==a.Button.Left&&null===this._primaryTouchId||this._redlineOperatorStart(),c.setHandled(!0))};
e.prototype.onMouseMove=function(a){d.prototype.onMouseMove.call(this,a);this.isActive()&&(this._redlineOperatorMove(),a.setHandled(!0))};e.prototype.onMouseUp=function(c){this.isActive()&&(c.getButton()!==a.Button.Left&&null===this._primaryTouchId||this._redlineOperatorEnd(),c.setHandled(!0));d.prototype.onMouseUp.call(this,c)};e.prototype.onMousewheel=function(a){a.setHandled(!0)};e.prototype.setDraggingEnabled=function(a){this._dragging=a};e.prototype.setHandled=function(){return!0};e.prototype.onKeyUp=
function(c){c=c.getKeyCode();if(c===a.KeyCode.Backspace||c===a.KeyCode.Delete){c=this._viewer.markupManager;var b=c.getSelectedMarkup(),d=c.getActiveMarkupView();c.selectMarkup(null);b&&b.remove&&(b.remove(),null!==d&&(d.removeMarkup(b),this._viewer._getCallbackManager().trigger("redlineDeleted",b)));c.refreshMarkup()}};e.prototype._removeRedlineTextIfInvalid=function(a){if(!a.isValid()){var b=this._viewer.markupManager.getActiveMarkupView();null!==b&&(b.removeMarkup(a),this._viewer._getCallbackManager().trigger("redlineDeleted",
a));a.remove()}};e.prototype._redlineOperatorStart=function(){var a=this._viewer.markupManager,b=a.pickMarkupItem(this._ptFirst),d=a.getSelectedMarkup();b?(this._activeRedlineItem=b,this._dragging&&this._activeRedlineItem.onDragStart(this._ptFirst)&&a.refreshMarkup()):(a.selectMarkup(null),this._markupIsTextArea(d)?this._removeRedlineTextIfInvalid(d):this._newRedlineItem=this.createRedlineItem(this._ptFirst))};e.prototype._redlineOperatorMove=function(){this._activeRedlineItem?this._dragging&&this._activeRedlineItem.onDragMove(this._ptCurrent)&&
this._viewer.markupManager.refreshMarkup():this.updateRedlineItem(this._ptCurrent)};e.prototype._redlineOperatorEnd=function(){var a=this._viewer.markupManager;this._activeRedlineItem?this._ptFirst.equals(this._ptCurrent)?a.selectMarkup(this._activeRedlineItem):(this._viewer._getCallbackManager().trigger("redlineUpdated",this._activeRedlineItem),this._dragging&&this._activeRedlineItem.onDragEnd(this._ptCurrent)&&a.refreshMarkup()):this._newRedlineItem&&(a=this.finalizeRedlineItem(this._ptCurrent))&&
this._attachNewMarkupToView(a);this._newRedlineItem=this._activeRedlineItem=null};e.prototype._attachNewMarkupToView=function(a){var b=this._viewer.markupManager,d=b.getActiveMarkupView(),e=!1;if(null===d){var g=b.createMarkupView(void 0,!1);null!==g&&(d=b.getMarkupView(g),e=!0)}null!==d&&d.addMarkupItem(a);b.selectMarkup(a);b=this._viewer._getCallbackManager();e&&null!==d&&b.trigger("viewCreated",d);b.trigger("redlineCreated",a)};e.prototype._markupIsTextArea=function(c){return c?c.getClassName()===
a.Markup.Redline.RedlineText.className:!1};return e}(a.Operator.OperatorBase);a.RedlineOperator=g})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){a=d.call(this,a)||this;a._redlineCircle=null;a._previewHandle=null;a._centerSet=!1;return a}__extends(c,d);c.prototype.createRedlineItem=function(b){var c=this._viewer.view;this._redlineCircle=new a.Markup.Redline.RedlineCircle(this._viewer);this._previewHandle=this._viewer.markupManager.registerMarkup(this._redlineCircle);b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);null!==b&&(this._centerSet=!0,this._redlineCircle.setCenter(b),this._redlineCircle.setRadiusPoint(b));
return this._redlineCircle};c.prototype.updateRedlineItem=function(a){var c=this._viewer.view;this._redlineCircle&&(a=c.getCamera().getCameraPlaneIntersectionPoint(a,c),null!==a&&(this._centerSet||(this._centerSet=!0,this._redlineCircle.setCenter(a)),this._redlineCircle.setRadiusPoint(a),this._viewer.markupManager.refreshMarkup()))};c.prototype.finalizeRedlineItem=function(a){a;a=this._viewer.markupManager;var c=null;this._redlineCircle&&(this._redlineCircle.isValid()&&(c=this._redlineCircle),this._redlineCircle=
null,null!==this._previewHandle&&(a.unregisterMarkup(this._previewHandle),this._previewHandle=null),a.refreshMarkup());return c};return c}(a.RedlineOperator);g.RedlineCircleOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){a=d.call(this,a)||this;a._redlinePolyline=null;a._previewHandle=null;return a}__extends(c,d);c.prototype.createRedlineItem=function(b){var c=this._viewer.view;this._redlinePolyline=new a.Markup.Redline.RedlinePolyline(this._viewer);this._previewHandle=this._viewer.markupManager.registerMarkup(this._redlinePolyline);b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);null!==b&&this._redlinePolyline.addPoint(b);return this._redlinePolyline};
c.prototype.updateRedlineItem=function(a){if(this._redlinePolyline){var c=this._viewer.view;a=c.getCamera().getCameraPlaneIntersectionPoint(a,c);null!==a&&(this._redlinePolyline.addPoint(a),this._viewer.markupManager.refreshMarkup())}};c.prototype.finalizeRedlineItem=function(a){a;a=this._viewer.markupManager;var c=null;this._redlinePolyline&&(this._redlinePolyline.isValid()&&(c=this._redlinePolyline),this._redlinePolyline=null,null!==this._previewHandle&&(a.unregisterMarkup(this._previewHandle),
this._previewHandle=null),a.refreshMarkup());return c};return c}(a.RedlineOperator);g.RedlinePolylineOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){a=d.call(this,a)||this;a._redlineRectangle=null;a._previewHandle=null;return a}__extends(c,d);c.prototype.createRedlineItem=function(b){var c=this._viewer.view;b=c.getCamera().getCameraPlaneIntersectionPoint(b,c);this._redlineRectangle=new a.Markup.Redline.RedlineRectangle(this._viewer);null!==b&&(this._redlineRectangle.setPoint1(b),this._redlineRectangle.setPoint2(b));this._previewHandle=this._viewer.markupManager.registerMarkup(this._redlineRectangle);
return this._redlineRectangle};c.prototype.updateRedlineItem=function(a){if(this._redlineRectangle){var c=this._viewer.view;a=c.getCamera().getCameraPlaneIntersectionPoint(a,c);null!==a&&this._redlineRectangle.setPoint2(a);this._viewer.markupManager.refreshMarkup()}};c.prototype.finalizeRedlineItem=function(a){a;a=null;if(this._redlineRectangle&&this._previewHandle){var c=this._viewer.markupManager;this._redlineRectangle.isValid()&&(a=this._redlineRectangle);c.unregisterMarkup(this._previewHandle);
this._redlineRectangle=this._previewHandle=null;c.refreshMarkup()}return a};return c}(a.RedlineOperator);g.RedlineRectangleOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
(function(a){(function(g){var d=function(d){function c(a){a=d.call(this,a)||this;a._redlineText=null;return a}__extends(c,d);c.prototype.createRedlineItem=function(b){b;return this._redlineText=new a.Markup.Redline.RedlineText(this._viewer)};c.prototype.finalizeRedlineItem=function(a){a;if(null===this._redlineText)return null;var c=this._viewer.view,d=this._redlineText;a=c.getCamera().getCameraPlaneIntersectionPoint(a,c);null!==a&&d.setPosition(a);this._redlineText=null;return d};return c}(a.RedlineOperator);
g.RedlineTextOperator=d})(a.Operator||(a.Operator={}))})(Communicator||(Communicator={}));
/*! promise-polyfill 2.1.0 */
!function(a){function b(a,b){return function(){a.apply(b,arguments)}}function c(a){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof a)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],i(a,b(e,this),b(f,this))}function d(a){var b=this;return null===this._state?void this._deferreds.push(a):void j(function(){var c=b._state?a.onFulfilled:a.onRejected;if(null===c)return void(b._state?a.resolve:a.reject)(b._value);var d;try{d=c(b._value)}catch(e){return void a.reject(e)}a.resolve(d)})}function e(a){try{if(a===this)throw new TypeError("A promise cannot be resolved with itself.");if(a&&("object"==typeof a||"function"==typeof a)){var c=a.then;if("function"==typeof c)return void i(b(c,a),b(e,this),b(f,this))}this._state=!0,this._value=a,g.call(this)}catch(d){f.call(this,d)}}function f(a){this._state=!1,this._value=a,g.call(this)}function g(){for(var a=0,b=this._deferreds.length;b>a;a++)d.call(this,this._deferreds[a]);this._deferreds=null}function h(a,b,c,d){this.onFulfilled="function"==typeof a?a:null,this.onRejected="function"==typeof b?b:null,this.resolve=c,this.reject=d}function i(a,b,c){var d=!1;try{a(function(a){d||(d=!0,b(a))},function(a){d||(d=!0,c(a))})}catch(e){if(d)return;d=!0,c(e)}}var j="function"==typeof setImmediate&&setImmediate||function(a){setTimeout(a,1)},k=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};c.prototype["catch"]=function(a){return this.then(null,a)},c.prototype.then=function(a,b){var e=this;return new c(function(c,f){d.call(e,new h(a,b,c,f))})},c.all=function(){var a=Array.prototype.slice.call(1===arguments.length&&k(arguments[0])?arguments[0]:arguments);return new c(function(b,c){function d(f,g){try{if(g&&("object"==typeof g||"function"==typeof g)){var h=g.then;if("function"==typeof h)return void h.call(g,function(a){d(f,a)},c)}a[f]=g,0===--e&&b(a)}catch(i){c(i)}}if(0===a.length)return b([]);for(var e=a.length,f=0;f<a.length;f++)d(f,a[f])})},c.resolve=function(a){return a&&"object"==typeof a&&a.constructor===c?a:new c(function(b){b(a)})},c.reject=function(a){return new c(function(b,c){c(a)})},c.race=function(a){return new c(function(b,c){for(var d=0,e=a.length;e>d;d++)a[d].then(b,c)})},c._setImmediateFn=function(a){j=a},"undefined"!=typeof module&&module.exports?module.exports=c:a.Promise||(a.Promise=c)}(this);
/*!
* Bowser - a browser detector
* https://github.com/ded/bowser
* MIT License | (c) Dustin Diaz 2015
*/
!function(e,t,n){e[t]=n()}(this,"bowser",function(){function t(t){function n(e){var n=t.match(e);return n&&n.length>1&&n[1]||""}function r(e){var n=t.match(e);return n&&n.length>1&&n[2]||""}var i=n(/(ipod|iphone|ipad)/i).toLowerCase(),s=/like android/i.test(t),o=!s&&/android/i.test(t),u=/nexus\s*[0-6]\s*/i.test(t),a=!u&&/nexus\s*[0-9]+/i.test(t),f=/CrOS/.test(t),l=/silk/i.test(t),c=/sailfish/i.test(t),h=/tizen/i.test(t),p=/(web|hpw)os/i.test(t),d=/windows phone/i.test(t),v=/SamsungBrowser/i.test(t),m=!d&&/windows/i.test(t),g=!i&&!l&&/macintosh/i.test(t),y=!o&&!c&&!h&&!p&&/linux/i.test(t),b=n(/edge\/(\d+(\.\d+)?)/i),w=n(/version\/(\d+(\.\d+)?)/i),E=/tablet/i.test(t),S=!E&&/[^-]mobi/i.test(t),x=/xbox/i.test(t),T;/opera/i.test(t)?T={name:"Opera",opera:e,version:w||n(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)}:/opr|opios/i.test(t)?T={name:"Opera",opera:e,version:n(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i)||w}:/SamsungBrowser/i.test(t)?T={name:"Samsung Internet for Android",samsungBrowser:e,version:w||n(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)}:/coast/i.test(t)?T={name:"Opera Coast",coast:e,version:w||n(/(?:coast)[\s\/](\d+(\.\d+)?)/i)}:/yabrowser/i.test(t)?T={name:"Yandex Browser",yandexbrowser:e,version:w||n(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)}:/ucbrowser/i.test(t)?T={name:"UC Browser",ucbrowser:e,version:n(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)}:/mxios/i.test(t)?T={name:"Maxthon",maxthon:e,version:n(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)}:/epiphany/i.test(t)?T={name:"Epiphany",epiphany:e,version:n(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)}:/puffin/i.test(t)?T={name:"Puffin",puffin:e,version:n(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)}:/sleipnir/i.test(t)?T={name:"Sleipnir",sleipnir:e,version:n(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)}:/k-meleon/i.test(t)?T={name:"K-Meleon",kMeleon:e,version:n(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)}:d?(T={name:"Windows Phone",windowsphone:e},b?(T.msedge=e,T.version=b):(T.msie=e,T.version=n(/iemobile\/(\d+(\.\d+)?)/i))):/msie|trident/i.test(t)?T={name:"Internet Explorer",msie:e,version:n(/(?:msie |rv:)(\d+(\.\d+)?)/i)}:f?T={name:"Chrome",chromeos:e,chromeBook:e,chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:/chrome.+? edge/i.test(t)?T={name:"Microsoft Edge",msedge:e,version:b}:/vivaldi/i.test(t)?T={name:"Vivaldi",vivaldi:e,version:n(/vivaldi\/(\d+(\.\d+)?)/i)||w}:c?T={name:"Sailfish",sailfish:e,version:n(/sailfish\s?browser\/(\d+(\.\d+)?)/i)}:/seamonkey\//i.test(t)?T={name:"SeaMonkey",seamonkey:e,version:n(/seamonkey\/(\d+(\.\d+)?)/i)}:/firefox|iceweasel|fxios/i.test(t)?(T={name:"Firefox",firefox:e,version:n(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)},/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(t)&&(T.firefoxos=e)):l?T={name:"Amazon Silk",silk:e,version:n(/silk\/(\d+(\.\d+)?)/i)}:/phantom/i.test(t)?T={name:"PhantomJS",phantom:e,version:n(/phantomjs\/(\d+(\.\d+)?)/i)}:/slimerjs/i.test(t)?T={name:"SlimerJS",slimer:e,version:n(/slimerjs\/(\d+(\.\d+)?)/i)}:/blackberry|\bbb\d+/i.test(t)||/rim\stablet/i.test(t)?T={name:"BlackBerry",blackberry:e,version:w||n(/blackberry[\d]+\/(\d+(\.\d+)?)/i)}:p?(T={name:"WebOS",webos:e,version:w||n(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)},/touchpad\//i.test(t)&&(T.touchpad=e)):/bada/i.test(t)?T={name:"Bada",bada:e,version:n(/dolfin\/(\d+(\.\d+)?)/i)}:h?T={name:"Tizen",tizen:e,version:n(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||w}:/qupzilla/i.test(t)?T={name:"QupZilla",qupzilla:e,version:n(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i)||w}:/chromium/i.test(t)?T={name:"Chromium",chromium:e,version:n(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i)||w}:/chrome|crios|crmo/i.test(t)?T={name:"Chrome",chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:o?T={name:"Android",version:w}:/safari|applewebkit/i.test(t)?(T={name:"Safari",safari:e},w&&(T.version=w)):i?(T={name:i=="iphone"?"iPhone":i=="ipad"?"iPad":"iPod"},w&&(T.version=w)):/googlebot/i.test(t)?T={name:"Googlebot",googlebot:e,version:n(/googlebot\/(\d+(\.\d+))/i)||w}:T={name:n(/^(.*)\/(.*) /),version:r(/^(.*)\/(.*) /)},!T.msedge&&/(apple)?webkit/i.test(t)?(/(apple)?webkit\/537\.36/i.test(t)?(T.name=T.name||"Blink",T.blink=e):(T.name=T.name||"Webkit",T.webkit=e),!T.version&&w&&(T.version=w)):!T.opera&&/gecko\//i.test(t)&&(T.name=T.name||"Gecko",T.gecko=e,T.version=T.version||n(/gecko\/(\d+(\.\d+)?)/i)),!T.windowsphone&&!T.msedge&&(o||T.silk)?T.android=e:!T.windowsphone&&!T.msedge&&i?(T[i]=e,T.ios=e):g?T.mac=e:x?T.xbox=e:m?T.windows=e:y&&(T.linux=e);var N="";T.windowsphone?N=n(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i):i?(N=n(/os (\d+([_\s]\d+)*) like mac os x/i),N=N.replace(/[_\s]/g,".")):o?N=n(/android[ \/-](\d+(\.\d+)*)/i):T.webos?N=n(/(?:web|hpw)os\/(\d+(\.\d+)*)/i):T.blackberry?N=n(/rim\stablet\sos\s(\d+(\.\d+)*)/i):T.bada?N=n(/bada\/(\d+(\.\d+)*)/i):T.tizen&&(N=n(/tizen[\/\s](\d+(\.\d+)*)/i)),N&&(T.osversion=N);var C=N.split(".")[0];if(E||a||i=="ipad"||o&&(C==3||C>=4&&!S)||T.silk)T.tablet=e;else if(S||i=="iphone"||i=="ipod"||o||u||T.blackberry||T.webos||T.bada)T.mobile=e;return T.msedge||T.msie&&T.version>=10||T.yandexbrowser&&T.version>=15||T.vivaldi&&T.version>=1||T.chrome&&T.version>=20||T.samsungBrowser&&T.version>=4||T.firefox&&T.version>=20||T.safari&&T.version>=6||T.opera&&T.version>=10||T.ios&&T.osversion&&T.osversion.split(".")[0]>=6||T.blackberry&&T.version>=10.1||T.chromium&&T.version>=20?T.a=e:T.msie&&T.version<10||T.chrome&&T.version<20||T.firefox&&T.version<20||T.safari&&T.version<6||T.opera&&T.version<10||T.ios&&T.osversion&&T.osversion.split(".")[0]<6||T.chromium&&T.version<20?T.c=e:T.x=e,T}function r(e){return e.split(".").length}function i(e,t){var n=[],r;if(Array.prototype.map)return Array.prototype.map.call(e,t);for(r=0;r<e.length;r++)n.push(t(e[r]));return n}function s(e){var t=Math.max(r(e[0]),r(e[1])),n=i(e,function(e){var n=t-r(e);return e+=(new Array(n+1)).join(".0"),i(e.split("."),function(e){return(new Array(20-e.length)).join("0")+e}).reverse()});while(--t>=0){if(n[0][t]>n[1][t])return 1;if(n[0][t]!==n[1][t])return-1;if(t===0)return 0}}function o(e,r,i){var o=n;typeof r=="string"&&(i=r,r=void 0),r===void 0&&(r=!1),i&&(o=t(i));var u=""+o.version;for(var a in e)if(e.hasOwnProperty(a)&&o[a]){if(typeof e[a]!="string")throw new Error("Browser version in the minVersion map should be a string: "+a+": "+String(e));return s([u,e[a]])<0}return r}function u(e,t,n){return!o(e,t,n)}var e=!0,n=t(typeof navigator!="undefined"?navigator.userAgent||"":"");return n.test=function(e){for(var t=0;t<e.length;++t){var r=e[t];if(typeof r=="string"&&r in n)return!0}return!1},n.isUnsupportedBrowser=o,n.compareVersions=s,n.check=u,n._detect=t,n})
var _SC = (function () {
var createInstanceImpl = function () {
var Module = this;
Module["broadway"] = (function () {
return this;
}).call ({});
var e;e||(e=typeof Module !== 'undefined' ? Module : {});e.hc||(e.hc=0,e.hg=0);e.hc++;
(function(){function a(){e.FS_createPath("/","build",!0,!0);e.FS_createPath("/build","shader",!0,!0);e.FS_createPath("/build/shader","release",!0,!0);var a=[];a.push.apply(a,[109,97,116,52,10,95,109,40,41,10,123,10,35,105,102,100,101,102,32,84,67,95,73,78,83,84,65,78,67,73,78,71,10,114,101,116,117,114,110,32,109,97,116,52,40,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,49,46,120,121,122,44,48,46,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,50,46,120,121,122,
44,48,46,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,51,46,120,121,122,44,48,46,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,49,46,119,44,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,50,46,119,44,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,51,46,119,44,49,46,41,59,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,84,67,95,83,73,78,71,76,69,95,77,65,84,82,73,88,41,10,114,101,116,117,114,110,32,109,97,116,52,40,10,116,99,
95,117,109,52,95,109,111,100,101,108,95,109,97,116,114,105,120,91,48,93,44,10,116,99,95,117,109,52,95,109,111,100,101,108,95,109,97,116,114,105,120,91,49,93,44,10,116,99,95,117,109,52,95,109,111,100,101,108,95,109,97,116,114,105,120,91,50,93,44,10,116,99,95,117,109,52,95,109,111,100,101,108,95,109,97,116,114,105,120,91,51,93,46,120,121,122,43,116,99,95,117,118,51,95,101,120,112,108,111,100,101,95,116,114,97,110,115,108,97,116,105,111,110,44,116,99,95,117,109,52,95,109,111,100,101,108,95,109,97,116,
114,105,120,91,51,93,46,119,41,59,10,35,101,108,115,101,10,105,110,116,32,105,61,40,105,110,116,40,116,99,95,97,102,95,98,97,116,99,104,95,105,110,100,101,120,41,43,116,99,95,117,105,118,50,95,109,97,116,114,105,120,95,111,102,102,115,101,116,115,46,120,41,42,51,59,10,118,101,99,52,32,95,88,61,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,93,59,10,118,101,99,52,32,95,89,61,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,43,
49,93,59,10,118,101,99,52,32,95,90,61,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,43,50,93,59,10,114,101,116,117,114,110,32,109,97,116,52,40,10,95,88,46,120,121,122,44,48,46,44,95,89,46,120,121,122,44,48,46,44,95,90,46,120,121,122,44,48,46,44,10,95,88,46,119,43,116,99,95,117,118,51,95,101,120,112,108,111,100,101,95,116,114,97,110,115,108,97,116,105,111,110,46,120,44,10,95,89,46,119,43,116,99,95,117,118,51,95,101,120,112,108,111,100,101,95,116,114,97,110,115,
108,97,116,105,111,110,46,121,44,10,95,90,46,119,43,116,99,95,117,118,51,95,101,120,112,108,111,100,101,95,116,114,97,110,115,108,97,116,105,111,110,46,122,44,10,49,46,41,59,10,35,101,110,100,105,102,10,125,10,109,97,116,51,10,95,110,40,41,10,123,10,35,105,102,100,101,102,32,84,67,95,73,78,83,84,65,78,67,73,78,71,10,114,101,116,117,114,110,32,109,97,116,51,40,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,49,46,120,121,122,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,
111,108,50,46,120,121,122,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,51,46,120,121,122,41,59,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,84,67,95,83,73,78,71,76,69,95,77,65,84,82,73,88,41,10,114,101,116,117,114,110,32,116,99,95,117,109,51,95,110,111,114,109,97,108,95,109,97,116,114,105,120,59,10,35,101,108,115,101,10,105,110,116,32,105,61,40,105,110,116,40,116,99,95,97,102,95,98,97,116,99,104,95,105,110,100,101,120,41,43,116,99,95,117,105,118,50,95,109,97,116,114,
105,120,95,111,102,102,115,101,116,115,46,121,41,42,51,59,10,114,101,116,117,114,110,32,109,97,116,51,40,10,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,93,46,120,121,122,44,10,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,43,49,93,46,120,121,122,44,10,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,105,43,50,93,46,120,121,122,41,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release",
"matrix-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,118,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,112,104,111,110,103,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,97,116,116,114,105,98,117,116,101,115,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,117,110,105,102,111,
114,109,115,45,118,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,109,97,116,114,105,120,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,52,32,95,108,61,116,99,95,117,109,52,95,118,105,101,119,95,109,97,116,114,105,120,42,40,95,109,40,41,42,116,99,95,97,118,52,95,118,101,114,116,101,120,41,59,10,35,105,102,100,101,102,32,84,67,95,84,69,88,84,85,82,69,10,95,98,99,61,116,99,95,97,118,50,95,116,101,120,116,117,114,101,95,99,111,111,114,100,115,
59,10,35,105,102,100,101,102,32,84,67,95,84,69,88,84,85,82,69,95,77,65,84,82,73,88,10,123,10,118,101,99,51,32,95,98,102,61,118,101,99,51,40,95,98,99,44,49,46,41,59,10,95,98,99,61,118,101,99,50,40,10,100,111,116,40,116,99,95,117,118,51,95,116,101,120,116,117,114,101,95,109,97,116,114,105,120,95,114,111,119,48,44,95,98,102,41,44,10,100,111,116,40,116,99,95,117,118,51,95,116,101,120,116,117,114,101,95,109,97,116,114,105,120,95,114,111,119,49,44,95,98,102,41,41,59,10,125,10,35,101,110,100,105,102,10,
95,98,99,46,121,61,49,46,45,95,98,99,46,121,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,70,65,67,69,83,10,95,105,61,118,101,99,51,40,116,99,95,117,109,52,95,118,105,101,119,95,109,97,116,114,105,120,42,118,101,99,52,40,95,110,40,41,42,116,99,95,97,118,51,95,110,111,114,109,97,108,44,48,46,41,41,59,10,35,105,102,100,101,102,32,84,67,95,70,76,73,80,95,78,79,82,77,65,76,83,10,95,105,61,45,95,105,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,95,104,61,95,108,46,120,
121,122,59,10,95,98,97,61,116,99,95,97,118,52,95,100,105,102,102,117,115,101,95,99,111,108,111,114,59,10,103,108,95,80,111,115,105,116,105,111,110,61,116,99,95,117,109,52,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,95,108,59,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,10,95,56,61,116,99,95,97,102,95,108,105,110,101,95,112,97,116,116,101,114,110,95,111,102,102,115,101,116,42,116,99,95,117,102,95,108,105,110,101,95,112,97,116,116,101,114,110,
95,105,110,118,101,114,115,101,95,108,101,110,103,116,104,59,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,95,83,67,82,69,69,78,10,95,56,42,61,103,108,95,80,111,115,105,116,105,111,110,46,119,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,83,80,76,65,84,95,87,79,82,76,68,10,123,10,118,101,99,52,32,95,98,103,61,116,99,95,117,109,52,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,118,101,99,52,40,48,46,
44,116,99,95,117,102,95,112,111,105,110,116,95,115,105,122,101,44,95,108,46,122,44,49,46,41,59,10,103,108,95,80,111,105,110,116,83,105,122,101,61,40,95,98,103,46,121,47,95,98,103,46,119,41,42,46,53,42,116,99,95,117,102,95,118,105,101,119,112,111,114,116,95,104,101,105,103,104,116,59,10,125,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,84,67,95,80,79,73,78,84,83,41,10,103,108,95,80,111,105,110,116,83,105,122,101,61,116,99,95,117,102,95,112,111,105,110,116,95,115,105,122,101,59,10,35,101,
110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","phong-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,44,10,95,99,72,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,91,
51,93,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,101,100,103,101,115,44,10,117,95,97,114,101,97,44,10,117,95,115,101,97,114,99,104,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,48,10,35,100,101,102,105,110,101,32,95,99,75,32,49,10,35,100,101,102,105,110,101,32,95,99,76,32,117,95,114,116,95,109,101,116,114,105,99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,
97,97,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,99,77,40,10,95,98,106,44,95,99,72,44,95,99,73,44,10,117,95,101,100,103,101,115,44,117,95,97,114,101,97,44,117,95,115,101,97,114,99,104,44,118,101,99,52,40,48,46,41,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","smaa-blend-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,10,35,100,101,102,105,110,
101,32,118,97,114,121,105,110,103,32,105,110,10,111,117,116,32,118,101,99,52,32,95,99,91,52,93,59,10,35,100,101,102,105,110,101,32,103,108,95,70,114,97,103,67,111,108,111,114,32,95,99,91,48,93,10,35,100,101,102,105,110,101,32,103,108,95,70,114,97,103,68,97,116,97,32,95,99,10,35,100,101,102,105,110,101,32,116,101,120,116,117,114,101,50,68,32,116,101,120,116,117,114,101,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","compat-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,
102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,124,124,100,101,102,105,110,101,100,40,71,76,95,70,82,65,71,77,69,78,84,95,80,82,69,67,73,83,73,79,78,95,72,73,71,72,41,10,35,100,101,102,105,110,101,32,95,57,32,49,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,105,110,116,59,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,57,32,48,10,112,114,101,99,105,115,105,111,110,32,109,101,
100,105,117,109,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,105,110,116,59,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","precision-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,
34,112,111,115,116,45,102,105,108,116,101,114,45,104,46,103,108,115,108,34,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,84,67,95,70,73,76,84,69,82,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,
101,44,95,98,106,41,44,117,95,99,111,108,111,114,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-filter-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,117,95,99,111,108,111,
114,59,10,125,10]);e.FS_createDataFile("/build/shader/release","solid-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,100,101,102,32,84,67,95,67,85,84,84,73,78,71,95,80,76,65,78,69,83,10,98,111,111,108,10,95,100,40,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,101,41,123,10,118,101,99,52,32,95,102,61,118,101,99,52,40,95,101,44,49,46,41,59,10,98,111,111,108,32,95,103,61,102,97,108,115,101,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,77,65,88,95,67,85,84,84,73,78,71,95,
83,69,67,84,73,79,78,83,59,43,43,105,41,123,10,95,103,61,95,103,124,124,40,10,105,60,116,99,95,117,105,95,99,117,116,116,105,110,103,95,115,101,99,116,105,111,110,115,10,38,38,97,108,108,40,103,114,101,97,116,101,114,84,104,97,110,69,113,117,97,108,40,10,118,101,99,52,40,10,100,111,116,40,95,102,44,116,99,95,117,118,52,95,99,117,116,116,105,110,103,95,112,108,97,110,101,115,91,105,42,52,93,41,44,10,100,111,116,40,95,102,44,116,99,95,117,118,52,95,99,117,116,116,105,110,103,95,112,108,97,110,101,115,
91,105,42,52,43,49,93,41,44,10,100,111,116,40,95,102,44,116,99,95,117,118,52,95,99,117,116,116,105,110,103,95,112,108,97,110,101,115,91,105,42,52,43,50,93,41,44,10,100,111,116,40,95,102,44,116,99,95,117,118,52,95,99,117,116,116,105,110,103,95,112,108,97,110,101,115,91,105,42,52,43,51,93,41,10,41,44,10,118,101,99,52,40,48,46,41,10,41,41,10,41,59,10,125,10,114,101,116,117,114,110,32,95,103,59,10,125,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","cutting-section-h.glsl",
a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,116,101,120,116,117,114,101,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,
108,111,114,61,117,95,99,111,108,111,114,42,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,41,46,97,59,10,125,10]);e.FS_createDataFile("/build/shader/release","simpleshadow-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,100,101,102,32,84,67,95,76,73,71,72,84,83,10,35,100,101,102,105,110,101,32,95,66,32,92,10,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,67,44,92,10,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,68,10,35,100,101,102,105,110,101,
32,95,69,40,105,41,32,92,10,116,99,95,117,118,51,95,108,105,103,104,116,95,112,111,115,105,116,105,111,110,91,105,93,44,92,10,116,99,95,117,118,51,95,108,105,103,104,116,95,99,111,108,111,114,91,105,93,10,35,100,101,102,105,110,101,32,95,70,32,95,66,10,35,100,101,102,105,110,101,32,95,71,40,105,41,32,95,69,40,105,41,10,115,116,114,117,99,116,32,95,72,10,123,10,118,101,99,51,32,95,106,59,10,35,105,102,100,101,102,32,84,67,95,83,80,69,67,85,76,65,82,10,35,100,101,102,105,110,101,32,95,73,10,35,100,
101,102,105,110,101,32,95,74,10,118,101,99,51,32,95,75,59,10,102,108,111,97,116,32,95,76,59,10,35,101,110,100,105,102,10,125,59,10,115,116,114,117,99,116,32,95,77,10,123,10,118,101,99,51,32,95,78,44,95,79,59,10,125,59,10,35,100,101,102,105,110,101,32,95,80,32,95,77,32,40,118,101,99,51,32,40,48,46,41,44,118,101,99,51,32,40,48,46,41,41,10,118,111,105,100,10,95,81,40,10,95,70,44,10,99,111,110,115,116,32,105,110,32,95,72,32,95,82,44,10,105,110,111,117,116,32,95,77,32,95,83,41,10,123,10,95,83,46,95,78,
43,61,95,68,42,109,97,120,40,48,46,44,100,111,116,40,95,67,44,95,82,46,95,106,41,41,59,10,35,105,102,100,101,102,32,84,67,95,83,80,69,67,85,76,65,82,10,118,101,99,51,32,95,84,61,114,101,102,108,101,99,116,40,45,95,67,44,95,82,46,95,106,41,59,10,95,83,46,95,79,43,61,95,68,42,112,111,119,40,109,97,120,40,48,46,44,100,111,116,40,95,84,44,95,82,46,95,75,41,41,44,95,82,46,95,76,41,59,10,35,101,110,100,105,102,10,125,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","light-h.glsl",
a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,32,100,101,102,105,110,101,100,40,71,76,95,69,88,84,95,100,114,97,119,95,98,117,102,102,101,114,115,41,10,35,101,120,116,101,110,115,105,111,110,32,71,76,95,69,88,84,95,100,114,97,119,95,98,117,102,102,101,114,115,58,101,110,97,98,108,101,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,71,76,95,78,86,95,100,114,97,119,95,98,117,102,102,101,114,115,41,10,35,101,120,116,101,110,115,105,111,110,32,71,76,95,78,86,95,100,114,97,119,95,98,117,102,102,
101,114,115,58,101,110,97,98,108,101,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","gl-draw-buffers-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,97,116,116,114,105,98,117,116,101,32,118,101,99,50,32,97,95,112,111,115,105,116,105,111,110,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,111,117,116,112,117,116,95,116,114,97,110,115,
102,111,114,109,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,102,102,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,95,102,102,61,97,95,112,111,115,105,116,105,111,110,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,101,99,52,40,40,97,95,112,111,115,105,116,105,111,110,42,117,95,111,117,116,112,117,116,95,116,114,97,110,115,102,111,114,109,46,122,119,43,117,95,111,117,116,112,117,116,95,116,114,97,110,115,102,111,114,109,46,120,121,41,42,118,101,99,50,40,50,41,43,118,101,
99,50,40,45,49,41,44,48,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","ssr-post-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,112,111,115,116,45,102,105,108,116,101,114,45,104,46,103,108,115,108,34,10,118,97,114,121,105,110,103,32,118,101,
99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,111,112,97,113,117,101,44,10,117,95,98,108,101,110,100,44,10,117,95,111,112,97,113,117,101,95,100,101,112,116,104,44,10,117,95,98,108,101,110,100,95,100,101,112,116,104,59,10,35,105,102,100,101,102,32,84,67,95,72,73,71,72,76,73,71,72,84,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,115,116,101,110,99,105,108,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,
105,110,115,116,97,110,99,101,95,99,111,108,111,114,44,10,117,95,101,108,101,109,101,110,116,95,99,111,108,111,114,44,10,117,95,117,110,104,105,103,104,108,105,103,104,116,101,100,95,99,111,108,111,114,59,10,35,101,108,115,101,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,35,101,110,100,105,102,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,99,106,61,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,44,95,98,106,41,44,10,
95,99,107,61,116,101,120,116,117,114,101,50,68,40,117,95,98,108,101,110,100,44,95,98,106,41,44,10,95,99,108,61,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,95,100,101,112,116,104,44,95,98,106,41,44,10,95,99,109,61,116,101,120,116,117,114,101,50,68,40,117,95,98,108,101,110,100,95,100,101,112,116,104,44,95,98,106,41,59,10,98,111,111,108,32,95,99,110,61,95,99,109,46,114,60,61,95,99,108,46,114,59,10,118,101,99,52,32,95,99,111,61,102,108,111,97,116,40,95,99,110,41,42,95,99,107,44,
10,95,99,112,61,95,99,106,42,40,49,46,45,95,99,111,46,97,41,43,95,99,111,59,10,95,99,112,46,97,61,109,105,110,40,49,46,44,95,99,112,46,97,41,59,10,35,105,102,100,101,102,32,84,67,95,72,73,71,72,76,73,71,72,84,10,118,101,99,52,32,95,99,113,61,116,101,120,116,117,114,101,50,68,40,117,95,115,116,101,110,99,105,108,44,95,98,106,41,59,10,98,111,111,108,32,95,99,114,61,40,95,99,113,46,103,62,48,46,124,124,40,95,99,110,38,38,95,99,113,46,97,62,48,46,41,41,59,10,98,111,111,108,32,95,99,115,61,33,95,99,114,
38,38,40,95,99,113,46,114,62,48,46,124,124,40,95,99,110,38,38,95,99,113,46,98,62,48,46,41,41,59,10,98,111,111,108,32,95,99,116,61,33,95,99,114,38,38,33,95,99,115,59,10,103,108,95,70,114,97,103,67,111,108,111,114,61,10,102,108,111,97,116,40,95,99,114,41,42,84,67,95,69,76,69,77,69,78,84,95,70,73,76,84,69,82,40,95,99,112,44,117,95,101,108,101,109,101,110,116,95,99,111,108,111,114,41,10,43,102,108,111,97,116,40,95,99,115,41,42,84,67,95,73,78,83,84,65,78,67,69,95,70,73,76,84,69,82,40,95,99,112,44,117,
95,105,110,115,116,97,110,99,101,95,99,111,108,111,114,41,10,43,102,108,111,97,116,40,95,99,116,41,42,84,67,95,85,78,72,73,71,72,76,73,71,72,84,69,68,95,70,73,76,84,69,82,40,95,99,112,44,117,95,117,110,104,105,103,104,108,105,103,104,116,101,100,95,99,111,108,111,114,41,59,10,35,101,108,115,101,10,103,108,95,70,114,97,103,67,111,108,111,114,61,84,67,95,70,73,76,84,69,82,40,95,99,112,44,117,95,99,111,108,111,114,41,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release",
"post-filter-merge-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[117,110,105,102,111,114,109,32,109,97,116,52,32,116,99,95,117,109,52,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,44,10,116,99,95,117,109,52,95,118,105,101,119,95,109,97,116,114,105,120,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,116,99,95,117,118,51,95,101,120,112,108,111,100,101,95,116,114,97,110,115,108,97,116,105,111,110,59,10,35,105,102,100,101,102,32,84,67,95,80,79,73,78,84,83,10,117,110,105,102,111,
114,109,32,102,108,111,97,116,32,116,99,95,117,102,95,112,111,105,110,116,95,115,105,122,101,59,10,35,105,102,100,101,102,32,84,67,95,83,80,76,65,84,95,87,79,82,76,68,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,116,99,95,117,102,95,118,105,101,119,112,111,114,116,95,104,101,105,103,104,116,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,84,69,88,84,85,82,69,95,77,65,84,82,73,88,10,117,110,105,102,111,114,109,32,118,101,99,51,32,116,99,95,117,
118,51,95,116,101,120,116,117,114,101,95,109,97,116,114,105,120,95,114,111,119,48,44,10,116,99,95,117,118,51,95,116,101,120,116,117,114,101,95,109,97,116,114,105,120,95,114,111,119,49,59,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,84,67,95,73,78,83,84,65,78,67,73,78,71,10,35,105,102,100,101,102,32,84,67,95,83,73,78,71,76,69,95,77,65,84,82,73,88,10,117,110,105,102,111,114,109,32,109,97,116,52,32,116,99,95,117,109,52,95,109,111,100,101,108,95,109,97,116,114,105,120,59,10,117,110,105,
102,111,114,109,32,109,97,116,51,32,116,99,95,117,109,51,95,110,111,114,109,97,108,95,109,97,116,114,105,120,59,10,35,101,108,115,101,10,117,110,105,102,111,114,109,32,118,101,99,52,32,116,99,95,117,118,52,95,109,111,100,101,108,95,109,97,116,114,105,99,101,115,91,84,67,95,66,65,84,67,72,95,83,73,90,69,42,51,93,59,10,117,110,105,102,111,114,109,32,105,118,101,99,50,32,116,99,95,117,105,118,50,95,109,97,116,114,105,120,95,111,102,102,115,101,116,115,59,10,35,101,110,100,105,102,10,35,101,110,100,105,
102,10,35,105,102,32,84,67,95,83,72,65,68,79,87,95,76,73,71,72,84,95,67,79,85,78,84,62,48,10,117,110,105,102,111,114,109,32,109,97,116,52,32,116,99,95,117,109,52,95,108,105,103,104,116,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,91,84,67,95,83,72,65,68,79,87,95,76,73,71,72,84,95,67,79,85,78,84,93,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,116,
99,95,117,102,95,108,105,110,101,95,112,97,116,116,101,114,110,95,105,110,118,101,114,115,101,95,108,101,110,103,116,104,59,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","uniforms-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,118,97,
114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,91,51,93,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,48,10,35,100,101,102,105,110,101,32,95,99,75,32,49,10,35,100,101,102,105,110,101,32,95,99,76,32,117,95,114,116,95,109,101,116,114,105,
99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,99,79,40,95,98,106,44,95,99,73,44,117,95,105,109,97,103,101,41,44,48,46,44,48,46,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","smaa-edge-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,99,111,109,112,114,101,115,115,105,111,110,
59,10,99,111,110,115,116,32,118,101,99,51,32,95,99,104,61,118,101,99,51,40,46,50,57,57,44,46,53,56,55,44,46,49,49,52,41,59,10,118,101,99,52,10,99,111,108,111,114,105,122,101,40,105,110,32,118,101,99,52,32,95,99,105,44,118,101,99,52,32,95,68,41,123,10,95,99,105,46,114,103,98,42,61,49,46,47,95,99,105,46,97,59,10,114,101,116,117,114,110,32,95,68,42,118,101,99,52,40,118,101,99,51,40,109,105,120,40,100,111,116,40,95,99,104,44,95,99,105,46,114,103,98,41,44,49,46,44,117,95,99,111,109,112,114,101,115,115,
105,111,110,41,42,95,99,105,46,97,41,44,95,99,105,46,97,41,59,10,125,10,118,101,99,52,10,100,101,115,97,116,117,114,97,116,101,40,118,101,99,52,32,95,99,105,44,118,101,99,52,32,95,68,41,123,10,114,101,116,117,114,110,32,118,101,99,52,40,118,101,99,51,40,100,111,116,40,95,99,104,44,95,99,105,46,114,103,98,41,42,95,68,46,97,41,44,95,99,105,46,97,42,95,68,46,97,41,59,10,125,10,118,101,99,52,10,109,111,100,117,108,97,116,101,40,118,101,99,52,32,95,99,105,44,118,101,99,52,32,95,68,41,123,10,114,101,116,
117,114,110,32,95,99,105,42,95,68,59,10,125,10,118,101,99,52,10,110,111,70,105,108,116,101,114,40,118,101,99,52,32,95,99,105,44,118,101,99,52,32,95,68,41,123,10,114,101,116,117,114,110,32,95,99,105,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-filter-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,
115,34,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,110,100,99,45,116,111,45,101,121,101,45,104,46,103,108,115,108,34,10,35,100,101,102,105,110,101,32,95,98,55,32,117,95,112,105,120,101,108,95,115,105,122,101,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,104,105,103,104,112,32,115,97,109,112,108,101,114,50,68,32,117,95,100,101,112,116,104,59,
10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,95,98,55,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,97,108,112,104,97,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,59,10,102,108,111,97,116,32,95,98,56,61,48,46,59,10,99,111,110,115,116,32,102,108,111,97,116,32,95,98,57,61,45,46,49,59,10,99,111,
110,115,116,32,102,108,111,97,116,32,95,99,97,61,46,55,48,55,49,48,55,59,10,102,108,111,97,116,10,95,99,98,40,118,101,99,50,32,95,98,68,41,123,10,35,105,102,32,84,67,95,69,78,67,79,68,69,68,95,68,69,80,84,72,10,114,101,116,117,114,110,32,95,65,40,116,101,120,116,117,114,101,50,68,40,117,95,100,101,112,116,104,44,95,98,68,41,41,59,10,35,101,108,115,101,10,114,101,116,117,114,110,32,116,101,120,116,117,114,101,50,68,40,117,95,100,101,112,116,104,44,95,98,68,41,46,114,59,10,35,101,110,100,105,102,10,
125,10,102,108,111,97,116,10,95,99,99,40,118,101,99,50,32,95,98,68,41,123,10,102,108,111,97,116,32,95,52,61,95,99,98,40,95,98,68,41,59,10,105,102,40,95,52,62,61,49,46,41,10,114,101,116,117,114,110,32,48,46,59,10,101,108,115,101,10,114,101,116,117,114,110,32,109,97,120,40,48,46,44,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,52,41,45,95,98,56,41,59,10,125,10,118,111,105,100,10,109,97,105,110,40,41,123,10,102,108,111,97,116,32,95,99,100,61,48,46,59,10,35,105,102,32,84,
67,95,69,78,67,79,68,69,68,95,68,69,80,84,72,10,118,101,99,52,32,95,99,101,61,116,101,120,116,117,114,101,50,68,40,117,95,100,101,112,116,104,44,95,98,106,41,59,10,102,108,111,97,116,32,95,98,111,61,95,65,40,95,99,101,41,59,10,35,101,108,115,101,10,102,108,111,97,116,32,95,98,111,61,95,99,98,40,95,98,106,41,59,10,35,101,110,100,105,102,10,105,102,40,95,98,111,62,61,49,46,41,10,100,105,115,99,97,114,100,59,10,95,98,56,61,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,98,
111,41,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,45,95,98,55,46,120,44,95,98,55,46,121,41,41,42,95,99,97,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,48,46,44,95,98,55,46,121,41,41,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,95,98,55,41,42,95,99,97,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,45,95,98,55,46,120,44,48,46,41,41,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,95,98,55,46,120,44,48,46,41,41,59,10,95,99,100,
43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,45,95,98,55,46,120,44,45,95,98,55,46,121,41,41,42,95,99,97,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,48,46,44,45,95,98,55,46,121,41,41,59,10,95,99,100,43,61,95,99,99,40,95,98,106,43,118,101,99,50,40,95,98,55,46,120,44,45,95,98,55,46,121,41,41,42,95,99,97,59,10,118,101,99,51,32,95,98,112,61,95,48,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,118,101,99,51,40,49,46,44,49,46,44,95,98,111,42,50,46,45,49,46,41,41,
59,10,102,108,111,97,116,32,95,99,102,61,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,42,95,98,112,46,121,59,10,102,108,111,97,116,32,95,99,103,61,95,99,100,47,95,99,102,59,10,35,105,102,32,84,67,95,66,76,85,82,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,10,95,99,103,44,10,35,105,102,32,84,67,95,69,78,67,79,68,69,68,95,68,69,80,84,72,10,95,118,40,95,99,101,41,10,35,101,108,115,101,10,95,117,40,95,98,111,41,10,35,101,110,100,105,102,10,41,59,10,35,101,108,115,101,
10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,48,46,44,48,46,44,48,46,44,109,105,110,40,49,46,44,95,99,103,41,42,117,95,97,108,112,104,97,41,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","post-edl-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,10,35,100,101,102,105,110,101,32,97,116,116,114,105,98,117,116,101,32,105,110,10,35,100,101,102,105,110,101,32,118,97,114,121,105,110,103,32,
111,117,116,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","compat-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,111,112,97,113,117,101,44,10,117,95,98,108,101,110,100,44,10,117,95,111,112,97,113,117,101,95,100,101,112,116,104,44,10,117,95,98,108,101,110,100,95,100,
101,112,116,104,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,99,106,61,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,44,95,98,106,41,44,10,95,99,111,61,116,101,120,116,117,114,101,50,68,40,117,95,98,108,101,110,100,44,95,98,106,41,44,10,95,99,108,61,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,95,100,101,112,116,104,44,95,98,106,41,44,10,95,99,109,61,116,101,120,116,
117,114,101,50,68,40,117,95,98,108,101,110,100,95,100,101,112,116,104,44,95,98,106,41,44,10,95,99,117,61,102,108,111,97,116,40,95,99,109,46,114,60,61,95,99,108,46,114,41,42,95,99,111,59,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,99,106,42,40,49,46,45,95,99,117,46,97,41,43,95,99,117,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-merge-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,110,100,99,45,116,111,45,101,121,101,45,104,46,103,108,115,108,
34,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,100,101,108,116,97,95,114,97,110,103,101,44,10,117,95,116,97,112,115,91,50,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,102,108,111,97,116,10,95,99,66,40,99,111,110,115,116,32,105,110,32,118,101,99,50,32,95,67,41,123,10,
118,101,99,51,32,95,99,67,61,118,101,99,51,40,10,95,99,65,40,95,67,41,44,10,95,99,65,40,95,67,43,117,95,116,97,112,115,91,48,93,41,44,10,95,99,65,40,95,67,43,117,95,116,97,112,115,91,49,93,41,10,41,59,10,98,118,101,99,51,32,95,99,68,61,101,113,117,97,108,40,95,99,67,44,118,101,99,51,40,49,46,41,41,59,10,105,102,40,97,110,121,40,95,99,68,41,41,123,10,114,101,116,117,114,110,32,102,108,111,97,116,40,33,97,108,108,40,95,99,68,41,41,59,10,125,10,118,101,99,51,32,95,98,112,61,95,48,40,117,95,105,110,118,
95,112,114,111,106,101,99,116,105,111,110,44,118,101,99,51,40,49,46,44,49,46,44,95,99,67,46,120,42,50,46,45,49,46,41,41,59,10,118,101,99,50,32,95,98,119,61,118,101,99,50,40,10,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,99,67,46,121,41,44,10,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,99,67,46,122,41,10,41,59,10,118,101,99,50,32,95,99,69,61,97,98,115,40,95,98,119,45,118,101,99,50,40,95,98,112,46,122,41,41,59,10,102,108,111,97,116,32,
95,99,70,61,109,97,120,40,95,99,69,46,120,44,95,99,69,46,121,41,59,10,118,101,99,50,32,95,99,71,61,117,95,100,101,108,116,97,95,114,97,110,103,101,42,109,97,120,40,95,98,112,46,120,44,95,98,112,46,121,41,59,10,105,102,40,117,95,100,101,108,116,97,95,114,97,110,103,101,46,121,62,117,95,100,101,108,116,97,95,114,97,110,103,101,46,120,41,123,10,114,101,116,117,114,110,32,99,108,97,109,112,40,40,95,99,70,45,95,99,71,46,120,41,47,40,95,99,71,46,121,45,95,99,71,46,120,41,44,48,46,44,49,46,41,59,10,125,
10,114,101,116,117,114,110,32,102,108,111,97,116,40,95,99,70,62,61,95,99,71,46,120,41,59,10,125,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,117,95,99,111,108,111,114,42,95,99,66,40,95,98,106,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-silhouette-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,
100,101,32,34,99,111,109,112,97,116,45,118,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,97,116,116,114,105,98,117,116,101,115,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,117,110,105,102,111,114,109,115,45,118,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,109,97,116,114,105,120,45,104,46,103,108,115,108,34,10,118,97,114,121,105,110,103,32,118,101,99,51,32,95,104,44,10,95,105,
59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,52,32,95,108,61,116,99,95,117,109,52,95,118,105,101,119,95,109,97,116,114,105,120,42,40,95,109,40,41,42,116,99,95,97,118,52,95,118,101,114,116,101,120,41,59,10,95,104,61,95,108,46,120,121,122,59,10,35,105,102,32,100,101,102,105,110,101,100,40,84,67,95,70,65,67,69,83,41,38,38,100,101,102,105,110,101,100,40,84,67,95,77,82,84,41,10,95,105,61,118,101,99,51,40,116,99,95,117,109,52,95,118,105,101,119,95,109,97,116,114,105,120,42,118,101,
99,52,40,95,110,40,41,42,116,99,95,97,118,51,95,110,111,114,109,97,108,44,48,46,41,41,59,10,35,105,102,100,101,102,32,84,67,95,70,76,73,80,95,78,79,82,77,65,76,83,10,95,105,61,45,95,105,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,103,108,95,80,111,115,105,116,105,111,110,61,116,99,95,117,109,52,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,95,108,59,10,103,108,95,80,111,105,110,116,83,105,122,101,61,49,46,59,10,125,10]);e.FS_createDataFile("/build/shader/release",
"depth-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,59,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,59,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,109,111,100,101,108,95,109,97,116,
114,105,120,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,80,111,115,105,116,105,111,110,61,117,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,40,117,95,109,111,100,101,108,95,109,97,116,114,105,120,42,97,95,118,101,114,116,101,120,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","clipregion-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,35,105,110,99,108,117,100,101,32,34,103,108,45,115,116,97,110,100,
97,114,100,45,100,101,114,105,118,97,116,105,118,101,115,45,104,46,103,108,115,108,34,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,105,110,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,110,100,99,45,116,111,45,101,121,101,45,104,46,103,
108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,35,100,101,102,105,110,101,32,95,98,120,32,54,46,50,56,51,49,56,53,51,48,55,49,56,10,35,100,101,102,105,110,101,32,95,98,121,32,84,67,95,69,78,67,79,68,69,68,95,68,69,80,84,72,10,35,100,101,102,105,110,101,32,95,98,105,32,84,67,95,78,79,82,77,65,76,95,66,85,70,70,69,82,10,35,100,101,102,105,110,101,32,95,98,122,32,84,67,95,83,65,77,80,76,69,83,10,35,100,101,102,105,110,
101,32,95,98,65,32,84,67,95,67,79,78,84,82,65,83,84,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,59,10,117,110,105,102,111,114,109,32,104,105,103,104,112,32,115,97,109,112,108,101,114,50,68,32,117,95,100,101,112,116,104,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,110,111,105,115,101,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,115,99,114,101,101,110,95,110,111,105,115,101,95,114,
97,116,105,111,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,114,97,100,105,117,115,44,10,117,95,98,105,97,115,44,10,117,95,105,110,116,101,110,115,105,116,121,44,10,117,95,99,111,110,116,114,97,115,116,59,10,35,105,102,32,95,98,105,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,110,111,114,109,97,108,115,59,10,35,101,108,115,101,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,115,116,101,110,99,105,108,59,10,35,101,110,
100,105,102,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,102,108,111,97,116,10,95,98,66,40,41,123,10,114,101,116,117,114,110,32,116,101,120,116,117,114,101,50,68,40,117,95,110,111,105,115,101,44,95,98,106,42,117,95,115,99,114,101,101,110,95,110,111,105,115,101,95,114,97,116,105,111,41,46,114,59,10,125,10,102,108,111,97,116,10,95,98,67,40,99,111,110,115,116,32,105,110,32,118,101,99,50,32,95,98,68,41,123,10,114,101,116,117,114,110,10,35,105,102,32,95,98,121,10,95,65,40,116,101,
120,116,117,114,101,50,68,40,117,95,100,101,112,116,104,44,95,98,68,41,41,59,10,35,101,108,115,101,10,116,101,120,116,117,114,101,50,68,40,117,95,100,101,112,116,104,44,95,98,68,41,46,114,59,10,35,101,110,100,105,102,10,125,10,118,111,105,100,10,109,97,105,110,40,41,123,10,102,108,111,97,116,32,95,52,61,95,98,67,40,95,98,106,41,59,10,35,105,102,32,95,98,105,10,35,105,102,33,95,98,121,10,105,102,40,95,52,61,61,49,46,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,35,101,108,115,101,
10,118,101,99,50,32,95,98,69,61,118,101,99,50,40,115,116,101,112,40,49,46,44,95,52,41,44,10,116,101,120,116,117,114,101,50,68,40,117,95,115,116,101,110,99,105,108,44,95,98,106,41,46,114,41,59,10,118,101,99,52,32,95,98,70,61,118,101,99,52,40,100,70,100,120,40,95,98,69,41,44,100,70,100,121,40,95,98,69,41,41,59,10,105,102,40,97,110,121,40,110,111,116,69,113,117,97,108,40,95,98,69,44,118,101,99,50,40,48,46,41,41,41,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,118,101,99,51,32,95,98,
71,61,118,101,99,51,40,95,98,106,44,95,52,41,59,10,118,101,99,51,32,95,98,72,61,95,98,71,42,50,46,45,49,46,59,10,118,101,99,51,32,95,98,112,61,95,48,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,118,101,99,51,40,49,46,44,49,46,44,95,98,72,46,122,41,41,59,10,118,101,99,51,32,95,98,73,61,118,101,99,51,40,10,95,98,72,46,120,121,42,95,98,112,46,120,121,44,10,95,98,112,46,122,41,59,10,102,108,111,97,116,32,95,98,74,61,109,97,120,40,95,98,112,46,120,44,95,98,112,46,121,41,59,10,35,
105,102,32,95,98,105,10,118,101,99,51,32,95,98,75,61,116,101,120,116,117,114,101,50,68,40,117,95,110,111,114,109,97,108,115,44,95,98,106,41,46,114,103,98,59,10,105,102,40,95,98,75,61,61,118,101,99,51,40,48,46,41,41,10,100,105,115,99,97,114,100,59,10,118,101,99,51,32,95,106,61,110,111,114,109,97,108,105,122,101,40,95,98,75,42,50,46,45,49,46,41,59,10,35,101,108,115,101,10,118,101,99,51,32,95,106,61,110,111,114,109,97,108,105,122,101,40,99,114,111,115,115,40,100,70,100,120,40,95,98,73,41,44,100,70,100,
121,40,95,98,73,41,41,41,59,10,35,101,110,100,105,102,10,35,100,101,102,105,110,101,32,95,98,76,32,117,95,114,97,100,105,117,115,10,102,108,111,97,116,32,95,98,77,61,95,98,76,42,50,46,42,95,98,74,59,10,102,108,111,97,116,32,95,98,78,61,117,95,98,105,97,115,42,95,98,74,59,10,102,108,111,97,116,32,95,98,79,61,95,98,120,42,95,98,66,40,41,59,10,102,108,111,97,116,32,95,98,80,61,48,46,59,10,102,108,111,97,116,32,95,98,81,61,48,46,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,95,98,122,59,43,
43,105,41,123,10,102,108,111,97,116,32,95,98,82,61,40,102,108,111,97,116,40,105,41,43,46,53,41,42,40,49,46,47,102,108,111,97,116,40,95,98,122,41,41,59,10,102,108,111,97,116,32,95,98,83,61,40,95,98,120,42,102,108,111,97,116,40,84,67,95,83,65,77,80,76,69,95,84,85,82,78,83,41,41,42,95,98,82,43,95,98,79,59,10,118,101,99,51,32,95,98,84,61,118,101,99,51,40,10,95,98,82,42,95,98,76,10,42,118,101,99,50,40,99,111,115,40,95,98,83,41,44,115,105,110,40,95,98,83,41,41,43,95,98,106,44,48,46,41,59,10,95,98,84,46,
122,61,95,98,67,40,95,98,84,46,120,121,41,59,10,105,102,40,97,108,108,40,98,118,101,99,52,40,10,103,114,101,97,116,101,114,84,104,97,110,40,95,98,84,46,120,121,44,118,101,99,50,40,48,46,41,41,44,10,108,101,115,115,84,104,97,110,40,95,98,84,46,120,121,44,118,101,99,50,40,49,46,41,41,10,41,41,41,10,123,10,105,102,40,95,98,84,46,122,60,49,46,41,123,10,118,101,99,51,32,95,98,85,61,95,98,84,42,50,46,45,49,46,59,10,118,101,99,51,32,95,98,86,61,95,48,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,
111,110,44,95,98,85,41,59,10,118,101,99,51,32,95,98,87,61,95,98,86,45,95,98,73,59,10,95,98,80,43,61,109,97,120,40,48,46,44,100,111,116,40,95,98,87,44,95,106,41,45,95,98,78,41,47,100,111,116,40,95,98,87,44,95,98,87,41,59,10,125,10,95,98,81,43,61,49,46,59,10,125,10,125,10,102,108,111,97,116,32,95,98,88,61,48,46,59,10,105,102,40,95,98,81,62,48,46,41,123,10,95,98,88,61,10,35,105,102,32,95,98,65,10,112,111,119,40,10,35,101,110,100,105,102,10,109,97,120,40,48,46,44,49,46,45,40,117,95,105,110,116,101,110,
115,105,116,121,47,95,98,81,41,42,95,98,77,42,95,98,80,41,10,35,105,102,32,95,98,65,10,44,117,95,99,111,110,116,114,97,115,116,41,10,35,101,110,100,105,102,10,59,10,125,10,35,105,102,32,95,98,105,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,98,88,44,95,117,40,95,98,71,46,122,41,41,59,10,35,101,108,115,101,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,98,88,43,40,50,46,47,50,53,53,46,41,44,95,117,40,95,98,71,46,122,41,41,59,10,105,102,40,97,110,121,
40,110,111,116,69,113,117,97,108,40,95,98,70,44,118,101,99,52,40,48,46,41,41,41,41,10,103,108,95,70,114,97,103,67,111,108,111,114,46,114,61,48,46,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","post-ao-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,118,46,103,108,115,108,34,10,35,105,110,99,108,
117,100,101,32,34,112,111,115,116,45,104,46,103,108,115,108,34,10]);e.FS_createDataFile("/build/shader/release","post-v-latest.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,50,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,105,110,112,117,
116,95,116,114,97,110,115,102,111,114,109,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,102,102,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,50,32,95,67,61,95,102,102,42,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,122,119,43,117,
95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,120,121,59,10,118,101,99,52,32,95,98,50,61,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,41,46,114,103,98,44,49,41,59,10,118,101,99,52,32,95,98,51,61,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,
114,61,100,111,116,40,95,98,50,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,103,61,100,111,116,40,95,98,50,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,49,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,98,61,100,111,116,40,95,98,51,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,97,61,100,111,
116,40,95,98,51,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,49,93,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","ssr-post-nv12-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,111,112,97,113,117,101,44,10,117,95,98,108,101,110,100,59,10,118,97,114,121,105,
110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,99,106,61,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,44,95,98,106,41,44,10,95,99,111,61,116,101,120,116,117,114,101,50,68,40,117,95,98,108,101,110,100,44,95,98,106,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,99,111,42,40,49,46,45,95,99,106,46,97,41,43,95,99,106,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-x-ray-f.glsl",a,!0,!0,!1);
a=[];a.push.apply(a,[102,108,111,97,116,10,95,85,40,10,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,86,44,10,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,87,44,10,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,120,41,10,123,10,114,101,116,117,114,110,32,99,108,97,109,112,40,40,120,45,95,86,41,47,40,95,87,45,95,86,41,44,48,46,44,49,46,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","linearstep-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[118,101,99,51,32,
95,106,59,10,35,105,102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,124,124,100,101,102,105,110,101,100,40,71,76,95,79,69,83,95,115,116,97,110,100,97,114,100,95,100,101,114,105,118,97,116,105,118,101,115,41,10,105,102,40,116,99,95,117,98,95,102,108,97,116,41,10,95,106,61,99,114,111,115,115,40,100,70,100,120,40,95,104,41,44,100,70,100,121,40,95,104,41,41,59,10,101,108,115,101,123,10,35,101,110,100,105,102,10,102,108,111,97,116,32,95,53,59,10,105,102,40,116,99,95,117,98,95,97,117,116,111,95,
102,108,105,112,41,10,95,53,61,40,45,50,46,41,42,102,108,111,97,116,40,95,105,46,122,60,48,46,41,43,49,46,59,10,101,108,115,101,10,95,53,61,50,46,42,102,108,111,97,116,40,103,108,95,70,114,111,110,116,70,97,99,105,110,103,41,43,40,45,49,46,41,59,10,95,106,61,95,105,42,95,53,59,10,35,105,102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,124,124,100,101,102,105,110,101,100,40,71,76,95,79,69,83,95,115,116,97,110,100,97,114,100,95,100,101,114,105,118,97,116,105,118,101,115,41,10,125,10,35,101,110,
100,105,102,10,95,106,61,110,111,114,109,97,108,105,122,101,40,95,106,41,59,10]);e.FS_createDataFile("/build/shader/release","normal-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,116,101,120,116,117,114,101,59,10,117,110,105,102,
111,114,109,32,118,101,99,50,32,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,105,110,115,116,97,110,99,101,95,99,111,108,111,114,44,10,117,95,101,108,101,109,101,110,116,95,99,111,108,111,114,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,50,32,95,99,118,61,118,101,99,50,40,49,46,41,45,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,41,46,114,103,59,10,118,101,99,
50,32,95,99,119,61,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,43,118,101,99,50,40,48,46,44,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,121,41,41,46,114,103,59,10,95,99,119,43,61,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,43,118,101,99,50,40,45,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,44,48,46,41,41,46,114,103,59,10,95,99,119,43,61,116,101,120,116,117,114,101,50,
68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,43,118,101,99,50,40,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,44,48,46,41,41,46,114,103,59,10,95,99,119,43,61,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,43,118,101,99,50,40,48,46,44,45,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,121,41,41,46,114,103,59,10,118,101,99,50,32,95,99,120,61,109,105,110,40,95,99,118,42,118,101,99,50,40,50,46,41,42,95,99,119,
44,118,101,99,50,40,49,46,41,41,59,10,118,101,99,52,32,95,99,121,61,95,99,120,46,114,42,117,95,105,110,115,116,97,110,99,101,95,99,111,108,111,114,59,10,118,101,99,52,32,95,99,122,61,95,99,120,46,103,42,117,95,101,108,101,109,101,110,116,95,99,111,108,111,114,59,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,99,121,42,40,49,46,45,95,99,122,46,97,41,43,95,99,122,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-outline-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,
105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,115,97,109,112,108,101,114,50,68,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,111,112,97,113,117,101,44,10,117,95,98,108,101,110,100,59,10,35,105,102,100,101,102,32,84,67,95,77,69,82,71,69,10,102,108,111,97,116,10,95,99,65,
40,105,110,32,118,101,99,50,32,95,98,68,41,123,10,114,101,116,117,114,110,32,109,105,110,40,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,44,95,98,68,41,46,114,44,116,101,120,116,117,114,101,50,68,40,117,95,98,108,101,110,100,44,95,98,68,41,46,114,41,59,10,125,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,99,65,40,95,98,68,41,32,116,101,120,116,117,114,101,50,68,40,117,95,111,112,97,113,117,101,44,95,98,68,41,46,114,10,35,101,110,100,105,102,10,35,105,110,99,108,117,
100,101,32,34,112,111,115,116,45,115,105,108,104,111,117,101,116,116,101,45,102,46,103,108,115,108,34,10]);e.FS_createDataFile("/build/shader/release","post-silhouette-unencoded-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,
105,109,97,103,101,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,119,101,105,103,104,116,115,91,84,67,95,83,65,77,80,76,69,83,93,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,50,32,95,98,68,61,95,98,106,45,102,108,111,97,116,40,84,67,95,82,65,68,73,85,83,41,42,117,95,105,110,116,101,114,118,97,108,59,10,102,
108,111,97,116,32,95,112,61,48,46,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,83,65,77,80,76,69,83,59,43,43,105,41,123,10,102,108,111,97,116,32,95,98,108,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,68,41,46,97,59,10,95,112,43,61,95,98,108,42,117,95,119,101,105,103,104,116,115,91,105,93,59,10,95,98,68,43,61,117,95,105,110,116,101,114,118,97,108,59,10,125,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,112,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release",
"simpleshadow-blur-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,48,46,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","clipregion-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,
109,32,118,101,99,52,32,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,50,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,102,102,59,10,
118,101,99,52,10,95,102,103,40,105,110,32,118,101,99,50,32,95,67,41,10,123,10,114,101,116,117,114,110,46,50,53,42,40,10,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,45,46,50,53,44,45,46,50,53,41,41,10,43,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,46,
50,53,44,45,46,50,53,41,41,10,43,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,46,50,53,44,46,50,53,41,41,10,43,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,45,46,50,53,44,46,50,53,41,41,41,59,10,125,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,
118,101,99,50,32,95,67,61,95,102,102,42,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,122,119,43,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,120,121,59,10,118,101,99,52,32,95,98,50,61,118,101,99,52,40,95,102,103,40,95,67,41,46,114,103,98,44,49,41,59,10,118,101,99,52,32,95,98,51,61,118,101,99,52,40,95,102,103,40,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,59,10,103,108,95,70,114,97,103,67,
111,108,111,114,46,114,61,100,111,116,40,95,98,50,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,103,61,100,111,116,40,95,98,50,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,49,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,98,61,100,111,116,40,95,98,51,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,
46,97,61,100,111,116,40,95,98,51,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,49,93,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","ssr-post-nv12-down-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,35,105,110,99,108,117,100,101,32,34,112,111,115,116,45,104,46,103,108,115,108,34,10]);e.FS_createDataFile("/build/shader/release","post-v-100.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,
116,105,111,110,115,34,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,98,97,59,10,118,97,114,121,105,110,103,32,118,101,99,51,32,95,105,44,10,95,104,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,99,59,10,118,97,114,121,105,110,103,32,102,108,111,97,116,32,95,56,59,10]);e.FS_createDataFile("/build/shader/release","phong-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,
97,116,45,118,46,103,108,115,108,34,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,91,51,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,49,10,35,100,101,102,105,110,101,32,95,99,75,32,48,10,35,100,
101,102,105,110,101,32,95,99,76,32,117,95,114,116,95,109,101,116,114,105,99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,95,98,106,61,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,122,119,59,10,95,99,80,40,95,98,106,44,95,99,73,41,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,101,99,52,40,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,120,121,44,48,44,
49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","smaa-edge-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[118,101,99,50,10,95,111,40,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,50,32,95,113,61,118,101,99,50,40,50,53,53,46,44,49,46,41,44,10,95,114,61,118,101,99,50,40,48,46,44,49,46,47,50,53,53,46,41,59,10,118,101,99,50,32,95,115,61,102,114,97,99,116,40,95,112,42,95,113,41,59,10,95,115,45,61,95,115,46,120,120,42,95,114,59,10,102,
108,111,97,116,32,95,116,61,115,116,101,112,40,49,46,44,95,112,41,59,10,114,101,116,117,114,110,32,95,116,42,118,101,99,50,40,48,46,44,49,46,41,43,40,49,46,45,95,116,41,42,95,115,59,10,125,10,118,101,99,51,10,95,117,40,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,51,32,95,113,61,118,101,99,51,40,50,53,53,46,42,50,53,53,46,44,50,53,53,46,44,49,46,41,44,10,95,114,61,118,101,99,51,40,48,46,44,118,101,99,50,40,49,46,47,50,53,53,46,41,41,59,10,
118,101,99,51,32,95,115,61,102,114,97,99,116,40,95,112,42,95,113,41,59,10,95,115,45,61,95,115,46,120,120,121,42,95,114,59,10,102,108,111,97,116,32,95,116,61,115,116,101,112,40,49,46,44,95,112,41,59,10,114,101,116,117,114,110,32,95,116,42,118,101,99,51,40,48,46,44,48,46,44,49,46,41,43,40,49,46,45,95,116,41,42,95,115,59,10,125,10,118,101,99,52,10,95,107,40,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,52,32,95,113,61,118,101,99,52,40,50,53,
53,46,42,50,53,53,46,42,50,53,53,46,44,50,53,53,46,42,50,53,53,46,44,50,53,53,46,44,49,46,41,44,10,95,114,61,118,101,99,52,40,48,46,44,118,101,99,51,40,49,46,47,50,53,53,46,41,41,59,10,118,101,99,52,32,95,115,61,102,114,97,99,116,40,95,112,42,95,113,41,59,10,95,115,45,61,95,115,46,120,120,121,122,42,95,114,59,10,102,108,111,97,116,32,95,116,61,115,116,101,112,40,49,46,44,95,112,41,59,10,114,101,116,117,114,110,32,95,116,42,118,101,99,52,40,48,46,44,48,46,44,48,46,44,49,46,41,43,40,49,46,45,95,116,
41,42,95,115,59,10,125,10,118,101,99,51,10,95,118,40,99,111,110,115,116,32,105,110,32,118,101,99,52,32,95,112,41,123,10,114,101,116,117,114,110,32,95,112,46,121,122,119,59,10,125,10,118,101,99,50,10,95,119,40,99,111,110,115,116,32,105,110,32,118,101,99,52,32,95,112,41,123,10,114,101,116,117,114,110,32,95,112,46,122,119,59,10,125,10,118,101,99,50,10,95,120,40,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,112,41,123,10,114,101,116,117,114,110,32,95,112,46,121,122,59,10,125,10,102,108,111,97,
116,10,95,121,40,99,111,110,115,116,32,105,110,32,118,101,99,50,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,50,32,95,113,61,118,101,99,50,40,49,46,47,50,53,53,46,44,49,46,41,59,10,114,101,116,117,114,110,32,100,111,116,40,95,112,44,95,113,41,59,10,125,10,102,108,111,97,116,10,95,122,40,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,51,32,95,113,61,118,101,99,51,40,49,46,47,40,50,53,53,46,42,50,53,53,46,41,44,49,46,47,50,53,53,46,44,49,
46,41,59,10,114,101,116,117,114,110,32,100,111,116,40,95,112,44,95,113,41,59,10,125,10,102,108,111,97,116,10,95,65,40,99,111,110,115,116,32,105,110,32,118,101,99,52,32,95,112,41,123,10,99,111,110,115,116,32,118,101,99,52,32,95,113,61,118,101,99,52,40,49,46,47,40,50,53,53,46,42,50,53,53,46,42,50,53,53,46,41,44,49,46,47,40,50,53,53,46,42,50,53,53,46,41,44,49,46,47,50,53,53,46,44,49,46,41,59,10,114,101,116,117,114,110,32,100,111,116,40,95,112,44,95,113,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release",
"encode-float-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,100,101,102,105,110,101,32,84,67,95,76,65,89,69,82,40,105,44,95,98,49,41,32,92,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,95,98,49,59,10,84,67,95,76,65,89,69,82,83,10,35,117,110,100,101,102,32,84,67,95,76,65,
89,69,82,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,105,110,116,101,110,115,105,116,121,91,84,67,95,76,65,89,69,82,95,67,79,85,78,84,93,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,48,46,41,59,10,35,100,101,102,105,110,101,32,84,67,95,76,65,89,69,82,40,105,44,95,98,49,41,32,92,10,103,108,95,70,114,97,103,67,111,108,111,114,43,61,117,95,105,110,
116,101,110,115,105,116,121,91,105,93,42,116,101,120,116,117,114,101,50,68,40,95,98,49,44,95,98,106,41,59,10,84,67,95,76,65,89,69,82,83,10,35,117,110,100,101,102,32,84,67,95,76,65,89,69,82,10,125,10]);e.FS_createDataFile("/build/shader/release","post-bloom-composite-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,
105,110,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,110,100,99,45,116,111,45,101,121,101,45,104,46,103,108,115,108,34,10,35,100,101,102,105,110,101,32,95,98,104,32,84,67,95,70,73,78,65,76,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,117,110,105,102,111,114,109,
32,109,97,116,52,32,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,119,101,105,103,104,116,115,91,84,67,95,83,65,77,80,76,69,83,93,59,10,35,105,102,32,95,98,104,10,117,110,105,102,111,114,109,32,102,108,111,97,116,
32,117,95,97,108,112,104,97,59,10,35,101,110,100,105,102,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,98,110,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,106,41,59,10,105,102,40,95,98,110,46,103,98,97,61,61,118,101,99,51,40,48,46,41,41,10,100,105,115,99,97,114,100,59,10,102,108,111,97,116,32,95,98,111,61,95,122,40,95,98,110,46,103,98,97,41,59,10,118,101,99,51,32,95,98,112,61,95,48,
40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,118,101,99,51,40,49,46,44,49,46,44,95,98,111,42,50,46,45,49,46,41,41,59,10,102,108,111,97,116,32,95,98,113,61,49,46,47,40,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,42,109,97,120,40,95,98,112,46,120,44,95,98,112,46,121,41,41,59,10,102,108,111,97,116,32,95,98,114,61,117,95,119,101,105,103,104,116,115,91,84,67,95,82,65,68,73,85,83,93,59,10,102,108,111,97,116,32,95,98,115,61,95,98,110,46,114,42,95,98,114,59,10,118,101,99,
50,32,95,98,116,61,95,98,106,45,40,102,108,111,97,116,40,84,67,95,82,65,68,73,85,83,41,42,117,95,105,110,116,101,114,118,97,108,41,59,10,35,100,101,102,105,110,101,32,95,98,117,32,92,10,118,101,99,52,32,95,98,108,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,116,41,59,92,10,102,108,111,97,116,32,95,98,118,61,95,122,40,95,98,108,46,103,98,97,41,59,92,10,102,108,111,97,116,32,95,98,119,61,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,98,118,
41,59,92,10,102,108,111,97,116,32,95,98,109,61,117,95,119,101,105,103,104,116,115,91,105,93,42,109,97,120,40,48,46,44,49,46,45,97,98,115,40,95,98,119,45,95,98,112,46,122,41,42,95,98,113,41,59,92,10,92,10,95,98,115,61,95,98,108,46,114,42,95,98,109,43,95,98,115,59,92,10,95,98,114,43,61,95,98,109,59,92,10,95,98,116,43,61,117,95,105,110,116,101,114,118,97,108,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,82,65,68,73,85,83,59,43,43,105,41,123,10,95,98,117,10,125,10,95,98,116,61,95,98,
106,43,117,95,105,110,116,101,114,118,97,108,59,10,102,111,114,40,105,110,116,32,105,61,84,67,95,82,65,68,73,85,83,43,49,59,105,60,84,67,95,83,65,77,80,76,69,83,59,43,43,105,41,123,10,95,98,117,10,125,10,102,108,111,97,116,32,95,115,61,95,98,115,47,95,98,114,59,10,35,105,102,32,95,98,104,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,48,46,44,48,46,44,48,46,44,95,115,42,117,95,97,108,112,104,97,41,59,10,35,101,108,115,101,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,
99,52,40,95,115,44,95,98,110,46,103,98,97,41,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","post-edl-blur-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,117,110,
105,102,111,114,109,32,118,101,99,50,32,117,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,119,101,105,103,104,116,115,91,84,67,95,83,65,77,80,76,69,83,93,44,10,117,95,111,112,97,99,105,116,121,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,68,59,10,35,105,102,32,84,67,95,83,65,77,80,76,69,83,62,49,10,118,101,99,50,32,95,98,68,61,95,98,106,45,102,108,111,97,
116,40,84,67,95,82,65,68,73,85,83,41,42,117,95,105,110,116,101,114,118,97,108,59,10,95,68,61,118,101,99,52,40,48,46,41,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,83,65,77,80,76,69,83,59,43,43,105,41,123,10,118,101,99,52,32,95,98,108,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,68,41,59,10,95,68,43,61,95,98,108,42,117,95,119,101,105,103,104,116,115,91,105,93,59,10,95,98,68,43,61,117,95,105,110,116,101,114,118,97,108,59,10,125,10,35,101,108,115,101,
10,95,68,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,106,41,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,70,73,78,65,76,10,95,68,42,61,117,95,111,112,97,99,105,116,121,59,10,35,101,110,100,105,102,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,68,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-simplereflection-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,35,105,110,99,108,117,100,101,32,34,103,108,
45,115,116,97,110,100,97,114,100,45,100,101,114,105,118,97,116,105,118,101,115,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,103,108,45,100,114,97,119,45,98,117,102,102,101,114,115,45,104,46,103,108,115,108,34,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,112,114,101,99,105,115,105,111,110,45,104,46,103,
108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,112,104,111,110,103,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,117,110,105,102,111,114,109,115,45,102,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,108,105,103,104,116,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,99,117,116,116,105,110,103,45,115,101,99,116,105,111,110,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,108,105,110,101,97,114,115,116,101,112,45,104,
46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,35,105,102,32,100,101,102,105,110,101,100,40,84,67,95,83,80,76,65,84,95,68,73,83,75,41,124,124,100,101,102,105,110,101,100,40,84,67,95,83,80,76,65,84,95,83,80,72,69,82,69,41,10,35,105,102,100,101,102,32,84,67,95,83,80,76,65,84,95,83,80,72,69,82,69,10,118,101,99,51,32,95,106,59,10,35,101,110,100,105,102,10,123,10,118,101,99,50,32,95,54,61,103,108,95,80,111,105,110,116,67,111,111,114,100,45,118,101,99,50,40,46,53,41,59,10,105,
102,40,100,111,116,40,95,54,44,95,54,41,62,46,50,53,41,10,100,105,115,99,97,114,100,59,10,35,105,102,100,101,102,32,84,67,95,83,80,76,65,84,95,83,80,72,69,82,69,10,118,101,99,50,32,95,55,61,10,118,101,99,50,40,95,54,46,120,44,45,95,54,46,121,41,42,50,46,59,10,95,106,61,118,101,99,51,40,10,95,55,44,10,115,113,114,116,40,49,46,45,100,111,116,40,95,55,44,95,55,41,41,41,59,10,35,101,110,100,105,102,10,125,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,67,85,84,84,73,78,71,95,80,76,65,
78,69,83,10,105,102,40,95,100,40,95,104,41,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,10,105,102,40,116,101,120,116,117,114,101,50,68,40,10,116,99,95,117,115,50,95,108,105,110,101,95,112,97,116,116,101,114,110,44,10,118,101,99,50,40,102,114,97,99,116,40,10,95,56,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,95,83,67,82,69,69,78,10,42,103,108,95,70,114,97,103,67,111,111,114,100,46,
119,10,35,101,110,100,105,102,10,41,44,48,46,41,41,46,114,10,61,61,48,46,10,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,35,105,102,40,100,101,102,105,110,101,100,40,84,67,95,76,73,71,72,84,83,41,38,38,100,101,102,105,110,101,100,40,95,73,41,41,124,124,100,101,102,105,110,101,100,40,84,67,95,83,80,72,69,82,69,95,77,65,80,41,10,118,101,99,51,32,95,75,59,10,35,105,102,32,95,57,10,105,102,40,116,99,95,117,98,95,112,114,111,106,101,99,116,105,111,110,95,105,115,95,111,114,116,104,111,
41,10,95,75,61,118,101,99,51,40,48,46,44,48,46,44,49,46,41,59,10,101,108,115,101,10,95,75,61,45,110,111,114,109,97,108,105,122,101,40,95,104,41,59,10,35,101,108,115,101,10,95,75,61,118,101,99,51,40,48,46,44,48,46,44,49,46,41,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,70,65,67,69,83,10,35,105,110,99,108,117,100,101,32,34,110,111,114,109,97,108,45,104,46,103,108,115,108,34,10,35,105,102,100,101,102,32,84,67,95,77,82,84,10,103,108,95,70,114,97,103,68,
97,116,97,91,49,93,61,118,101,99,52,40,95,106,42,46,53,43,46,53,44,49,46,41,59,10,35,101,110,100,105,102,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,84,67,95,77,82,84,41,10,103,108,95,70,114,97,103,68,97,116,97,91,49,93,61,118,101,99,52,40,48,46,41,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,76,73,71,72,84,83,10,95,72,32,95,82,59,10,95,82,46,95,106,61,95,106,59,10,35,105,102,100,101,102,32,95,73,10,95,82,46,95,75,61,95,75,59,10,35,101,110,100,105,102,10,35,105,102,
100,101,102,32,95,74,10,95,82,46,95,76,61,116,99,95,117,118,50,95,115,112,101,99,117,108,97,114,95,109,105,120,95,97,110,100,95,103,108,111,115,115,46,121,59,10,35,101,110,100,105,102,10,95,77,32,95,83,61,95,80,59,10,95,83,46,95,78,43,61,116,99,95,117,118,51,95,97,109,98,105,101,110,116,95,108,105,103,104,116,95,99,111,108,111,114,59,10,35,105,102,100,101,102,32,84,67,95,80,76,65,73,78,95,68,73,82,95,76,73,71,72,84,83,10,35,100,101,102,105,110,101,32,84,67,95,76,73,71,72,84,40,105,41,32,92,10,95,
81,40,95,71,40,105,41,44,95,82,44,95,83,41,59,10,84,67,95,80,76,65,73,78,95,68,73,82,95,76,73,71,72,84,83,10,35,117,110,100,101,102,32,84,67,95,76,73,71,72,84,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,77,82,84,10,35,100,101,102,105,110,101,32,95,68,32,103,108,95,70,114,97,103,68,97,116,97,91,48,93,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,68,32,103,108,95,70,114,97,103,67,111,108,111,114,10,35,101,110,100,105,102,10,95,68,61,116,99,95,
117,118,52,95,100,105,102,102,117,115,101,95,99,111,108,111,114,42,95,98,97,59,10,35,105,102,100,101,102,32,84,67,95,84,69,88,84,85,82,69,10,118,101,99,52,32,95,98,98,61,116,101,120,116,117,114,101,50,68,40,116,99,95,117,115,50,95,116,101,120,116,117,114,101,44,10,35,105,102,32,84,67,95,84,69,88,84,85,82,69,32,38,32,84,67,95,82,69,80,69,65,84,10,102,114,97,99,116,40,95,98,99,41,10,35,101,108,115,101,10,95,98,99,10,35,101,110,100,105,102,10,41,59,10,35,105,102,32,84,67,95,84,69,88,84,85,82,69,32,38,
32,84,67,95,68,69,67,65,76,10,95,68,61,118,101,99,52,40,95,68,46,114,103,98,42,95,68,46,97,44,95,68,46,97,41,42,40,49,46,45,95,98,98,46,97,41,43,95,98,98,59,10,35,101,108,115,101,10,95,68,46,114,103,98,61,95,98,98,46,114,103,98,42,95,68,46,97,59,10,95,68,46,97,42,61,95,98,98,46,97,59,10,35,101,110,100,105,102,10,35,101,108,115,101,10,95,68,46,114,103,98,42,61,95,68,46,97,59,10,35,101,110,100,105,102,10,95,68,42,61,116,99,95,117,102,95,111,112,97,99,105,116,121,59,10,35,105,102,100,101,102,32,84,67,
95,68,73,83,67,65,82,68,95,48,95,65,76,80,72,65,10,105,102,40,95,68,46,97,60,61,48,46,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,76,73,71,72,84,83,10,95,68,46,114,103,98,61,109,105,120,40,10,95,68,46,114,103,98,44,10,95,68,46,114,103,98,42,109,105,110,40,118,101,99,51,40,49,46,41,44,95,83,46,95,78,41,10,35,105,102,100,101,102,32,84,67,95,83,80,69,67,85,76,65,82,10,43,95,83,46,95,79,42,40,116,99,95,117,118,50,95,115,112,101,99,117,108,97,114,
95,109,105,120,95,97,110,100,95,103,108,111,115,115,46,120,42,95,68,46,97,41,10,35,101,110,100,105,102,10,44,116,99,95,117,102,95,108,105,103,104,116,95,109,105,120,41,59,10,35,101,108,115,101,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,83,80,72,69,82,69,95,77,65,80,10,118,101,99,51,32,95,84,61,114,101,102,108,101,99,116,40,45,95,75,44,95,106,41,59,10,95,84,46,122,43,61,49,46,59,10,102,108,111,97,116,32,95,98,100,61,49,46,47,40,50,46,42,108,101,110,103,116,104,40,95,84,41,41,59,
10,95,68,46,114,103,98,61,109,105,120,40,10,95,68,46,114,103,98,44,10,116,101,120,116,117,114,101,50,68,40,10,116,99,95,117,115,50,95,115,112,104,101,114,101,95,109,97,112,44,10,95,84,46,120,121,42,118,101,99,50,40,95,98,100,44,45,95,98,100,41,43,118,101,99,50,40,46,53,41,10,41,46,114,103,98,42,95,68,46,97,44,10,116,99,95,117,102,95,109,105,114,114,111,114,41,59,10,35,101,110,100,105,102,10,95,68,46,114,103,98,43,61,116,99,95,117,118,51,95,101,109,105,115,115,105,111,110,95,99,111,108,111,114,59,
10,105,102,40,116,99,95,117,118,50,95,114,101,102,108,101,99,116,105,111,110,95,97,116,116,101,110,117,97,116,105,111,110,46,121,62,116,99,95,117,118,50,95,114,101,102,108,101,99,116,105,111,110,95,97,116,116,101,110,117,97,116,105,111,110,46,120,41,123,10,102,108,111,97,116,32,95,98,101,61,100,111,116,40,116,99,95,117,118,52,95,103,114,111,117,110,100,95,112,108,97,110,101,44,118,101,99,52,40,95,104,44,49,46,41,41,59,10,95,68,42,61,95,85,40,10,116,99,95,117,118,50,95,114,101,102,108,101,99,116,105,
111,110,95,97,116,116,101,110,117,97,116,105,111,110,46,121,44,116,99,95,117,118,50,95,114,101,102,108,101,99,116,105,111,110,95,97,116,116,101,110,117,97,116,105,111,110,46,120,44,10,95,98,101,41,59,10,125,10,125,10]);e.FS_createDataFile("/build/shader/release","phong-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,
111,110,115,34,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,119,101,105,103,104,116,115,91,84,67,95,83,65,77,80,76,69,83,93,59,10,35,105,102,32,84,67,95,76,85,77,65,95,70,73,76,84,69,82,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,108,117,109,97,95,116,104,114,101,115,104,111,
108,100,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,108,117,109,97,95,116,104,114,101,115,104,111,108,100,95,114,97,109,112,95,119,105,100,116,104,59,10,99,111,110,115,116,32,118,101,99,51,32,95,98,89,61,118,101,99,51,40,46,50,57,57,44,46,53,56,55,44,46,49,49,52,41,59,10,35,101,110,100,105,102,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,50,32,95,98,68,61,95,98,106,45,102,108,111,97,116,40,84,67,95,
82,65,68,73,85,83,41,42,117,95,105,110,116,101,114,118,97,108,59,10,118,101,99,52,32,95,68,61,118,101,99,52,40,48,46,41,59,10,35,105,102,32,84,67,95,76,85,77,65,95,70,73,76,84,69,82,10,102,108,111,97,116,32,95,98,90,61,117,95,108,117,109,97,95,116,104,114,101,115,104,111,108,100,43,117,95,108,117,109,97,95,116,104,114,101,115,104,111,108,100,95,114,97,109,112,95,119,105,100,116,104,59,10,35,101,110,100,105,102,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,83,65,77,80,76,69,83,59,43,
43,105,41,123,10,118,101,99,52,32,95,98,108,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,68,41,59,10,35,105,102,32,84,67,95,76,85,77,65,95,70,73,76,84,69,82,10,102,108,111,97,116,32,95,98,48,61,100,111,116,40,95,98,108,46,120,121,122,44,95,98,89,41,59,10,95,98,108,42,61,115,109,111,111,116,104,115,116,101,112,40,117,95,108,117,109,97,95,116,104,114,101,115,104,111,108,100,44,95,98,90,44,95,98,48,41,59,10,35,101,110,100,105,102,10,95,68,43,61,95,98,108,42,117,95,119,101,
105,103,104,116,115,91,105,93,59,10,95,98,68,43,61,117,95,105,110,116,101,114,118,97,108,59,10,125,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,68,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-bloom-blur-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,105,110,116,59,10,35,105,110,99,108,
117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,110,100,99,45,116,111,45,101,121,101,45,104,46,103,108,115,108,34,10,35,100,101,102,105,110,101,32,95,98,104,32,84,67,95,70,73,78,65,76,10,35,100,101,102,105,110,101,32,95,98,105,32,84,67,95,78,79,82,77,65,76,95,66,85,70,70,69,82,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,
117,95,105,109,97,103,101,59,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,117,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,119,101,105,103,104,116,115,91,84,67,95,83,65,77,80,76,69,83,93,59,10,35,105,102,32,95,
98,104,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,117,95,97,108,112,104,97,59,10,35,101,110,100,105,102,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,35,105,102,32,95,98,104,124,124,95,98,105,10,35,100,101,102,105,110,101,32,95,98,107,40,97,44,98,41,10,35,101,108,115,101,10,118,111,105,100,10,95,98,107,40,10,105,110,111,117,116,32,118,101,99,52,32,95,98,108,44,10,105,110,111,117,116,32,102,108,111,97,116,32,95,98,109,41,10,123,10,105,102,40,95,98,108,46,114,60,40,
49,46,47,50,53,53,46,41,41,10,95,98,109,61,48,46,59,10,101,108,115,101,10,95,98,108,46,114,61,99,108,97,109,112,40,95,98,108,46,114,42,40,50,53,53,46,47,50,53,51,46,41,45,40,50,46,47,50,53,51,46,41,44,48,46,44,49,46,41,59,10,125,10,35,101,110,100,105,102,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,98,110,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,98,106,41,59,10,35,105,102,32,95,98,104,10,105,102,40,95,98,110,46,103,98,97,61,61,118,101,99,51,
40,48,46,41,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,102,108,111,97,116,32,95,98,111,61,95,122,40,95,98,110,46,103,98,97,41,59,10,118,101,99,51,32,95,98,112,61,95,48,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,118,101,99,51,40,49,46,44,49,46,44,95,98,111,42,50,46,45,49,46,41,41,59,10,102,108,111,97,116,32,95,98,113,61,49,46,47,40,117,95,101,100,103,101,95,100,105,115,116,97,110,99,101,42,109,97,120,40,95,98,112,46,120,44,95,98,112,46,121,41,41,59,10,102,
108,111,97,116,32,95,98,114,61,117,95,119,101,105,103,104,116,115,91,84,67,95,82,65,68,73,85,83,93,59,10,95,98,107,40,95,98,110,44,95,98,114,41,59,10,102,108,111,97,116,32,95,98,115,61,95,98,110,46,114,42,95,98,114,59,10,118,101,99,50,32,95,98,116,61,95,98,106,45,40,102,108,111,97,116,40,84,67,95,82,65,68,73,85,83,41,42,117,95,105,110,116,101,114,118,97,108,41,59,10,35,100,101,102,105,110,101,32,95,98,117,32,92,10,118,101,99,52,32,95,98,108,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,
103,101,44,95,98,116,41,59,92,10,102,108,111,97,116,32,95,98,118,61,95,122,40,95,98,108,46,103,98,97,41,59,92,10,102,108,111,97,116,32,95,98,119,61,95,51,40,117,95,105,110,118,95,112,114,111,106,101,99,116,105,111,110,44,95,98,118,41,59,92,10,102,108,111,97,116,32,95,98,109,61,117,95,119,101,105,103,104,116,115,91,105,93,42,109,97,120,40,48,46,44,49,46,45,97,98,115,40,95,98,119,45,95,98,112,46,122,41,42,95,98,113,41,59,92,10,92,10,95,98,107,40,95,98,108,44,95,98,109,41,59,92,10,92,10,95,98,115,61,
95,98,108,46,114,42,95,98,109,43,95,98,115,59,92,10,95,98,114,43,61,95,98,109,59,92,10,95,98,116,43,61,117,95,105,110,116,101,114,118,97,108,59,10,102,111,114,40,105,110,116,32,105,61,48,59,105,60,84,67,95,82,65,68,73,85,83,59,43,43,105,41,123,10,95,98,117,10,125,10,95,98,116,61,95,98,106,43,117,95,105,110,116,101,114,118,97,108,59,10,102,111,114,40,105,110,116,32,105,61,84,67,95,82,65,68,73,85,83,43,49,59,105,60,84,67,95,83,65,77,80,76,69,83,59,43,43,105,41,123,10,95,98,117,10,125,10,35,105,102,
32,95,98,104,124,124,95,98,105,10,102,108,111,97,116,32,95,115,61,95,98,115,47,95,98,114,59,10,35,101,108,115,101,10,102,108,111,97,116,32,95,115,59,10,105,102,40,95,98,114,60,61,49,101,45,53,41,10,95,115,61,49,46,59,10,101,108,115,101,10,95,115,61,95,98,115,47,95,98,114,59,10,35,101,110,100,105,102,10,35,105,102,32,95,98,104,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,48,46,44,48,46,44,48,46,44,40,49,46,45,95,115,41,42,117,95,97,108,112,104,97,41,59,10,35,101,108,115,101,10,
103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,115,44,95,98,110,46,103,98,97,41,59,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","post-ao-blur-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,118,97,114,
121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,116,101,120,116,117,114,101,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,107,40,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,41,46,114,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-encode-depth-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[117,110,105,102,111,
114,109,32,118,101,99,52,32,116,99,95,117,118,52,95,100,105,102,102,117,115,101,95,99,111,108,111,114,44,10,116,99,95,117,118,52,95,103,114,111,117,110,100,95,112,108,97,110,101,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,116,99,95,117,118,51,95,101,109,105,115,115,105,111,110,95,99,111,108,111,114,44,10,116,99,95,117,118,51,95,97,109,98,105,101,110,116,95,108,105,103,104,116,95,99,111,108,111,114,59,10,117,110,105,102,111,114,109,32,118,101,99,50,32,116,99,95,117,118,50,95,115,112,101,
99,117,108,97,114,95,109,105,120,95,97,110,100,95,103,108,111,115,115,44,10,116,99,95,117,118,50,95,114,101,102,108,101,99,116,105,111,110,95,97,116,116,101,110,117,97,116,105,111,110,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,116,99,95,117,102,95,111,112,97,99,105,116,121,59,10,117,110,105,102,111,114,109,32,98,111,111,108,32,116,99,95,117,98,95,102,108,97,116,44,10,116,99,95,117,98,95,97,117,116,111,95,102,108,105,112,44,10,116,99,95,117,98,95,112,114,111,106,101,99,116,105,111,
110,95,105,115,95,111,114,116,104,111,59,10,35,105,102,100,101,102,32,84,67,95,84,69,88,84,85,82,69,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,116,99,95,117,115,50,95,116,101,120,116,117,114,101,59,10,35,100,101,102,105,110,101,32,84,67,95,68,69,67,65,76,32,49,10,35,100,101,102,105,110,101,32,84,67,95,82,69,80,69,65,84,32,50,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,83,80,72,69,82,69,95,77,65,80,10,117,110,105,102,111,114,109,32,102,108,111,97,116,
32,116,99,95,117,102,95,109,105,114,114,111,114,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,116,99,95,117,115,50,95,115,112,104,101,114,101,95,109,97,112,59,10,35,101,110,100,105,102,10,35,105,102,32,84,67,95,76,73,71,72,84,95,67,79,85,78,84,62,48,10,117,110,105,102,111,114,109,32,118,101,99,51,32,116,99,95,117,118,51,95,108,105,103,104,116,95,112,111,115,105,116,105,111,110,91,84,67,95,76,73,71,72,84,95,67,79,85,78,84,93,44,10,116,99,95,117,118,51,95,108,105,103,104,
116,95,99,111,108,111,114,91,84,67,95,76,73,71,72,84,95,67,79,85,78,84,93,59,10,117,110,105,102,111,114,109,32,102,108,111,97,116,32,116,99,95,117,102,95,108,105,103,104,116,95,109,105,120,59,10,35,101,110,100,105,102,10,35,105,102,32,84,67,95,83,72,65,68,79,87,95,76,73,71,72,84,95,67,79,85,78,84,62,48,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,116,99,95,117,115,50,95,108,105,103,104,116,95,100,101,112,116,104,95,109,97,112,91,84,67,95,83,72,65,68,79,87,95,76,73,71,72,84,
95,67,79,85,78,84,93,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,67,85,84,84,73,78,71,95,80,76,65,78,69,83,10,117,110,105,102,111,114,109,32,105,110,116,32,116,99,95,117,105,95,99,117,116,116,105,110,103,95,115,101,99,116,105,111,110,115,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,116,99,95,117,118,52,95,99,117,116,116,105,110,103,95,112,108,97,110,101,115,91,84,67,95,77,65,88,95,67,85,84,84,73,78,71,95,83,69,67,84,73,79,78,83,42,84,67,95,77,65,88,95,67,85,84,84,73,
78,71,95,80,76,65,78,69,83,95,80,69,82,95,83,69,67,84,73,79,78,93,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,76,73,78,69,95,80,65,84,84,69,82,78,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,116,99,95,117,115,50,95,108,105,110,101,95,112,97,116,116,101,114,110,59,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","uniforms-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,
115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,98,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,98,59,10,125,10]);e.FS_createDataFile("/build/shader/release","background-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,118,46,103,108,115,108,
34,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,49,10,35,100,101,102,105,110,101,32,95,99,75,32,48,10,35,100,101,102,105,110,101,32,95,99,76,32,117,95,
114,116,95,109,101,116,114,105,99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,95,98,106,61,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,122,119,59,10,95,99,82,40,95,98,106,44,95,99,73,41,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,101,99,52,40,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,120,121,44,48,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release",
"smaa-final-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,49,44,10,117,95,105,109,97,103,101,50,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,117,95,115,97,109,101,95,99,111,108,111,114,44,10,117,95,111,110,108,121,49,95,99,111,108,111,114,44,10,117,95,111,110,108,
121,50,95,99,111,108,111,114,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,99,111,110,115,116,32,118,101,99,51,32,95,98,89,61,118,101,99,51,40,46,50,57,57,44,46,53,56,55,44,46,49,49,52,41,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,118,101,99,52,32,95,98,50,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,49,44,95,98,106,41,59,10,118,101,99,52,32,95,98,51,61,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,50,44,95,98,106,41,59,10,118,
101,99,50,32,95,98,52,61,118,101,99,50,40,100,111,116,40,95,98,89,44,95,98,50,46,114,103,98,41,44,95,98,50,46,97,41,59,10,118,101,99,50,32,95,98,53,61,118,101,99,50,40,100,111,116,40,95,98,89,44,95,98,51,46,114,103,98,41,44,95,98,51,46,97,41,59,10,118,101,99,51,32,95,68,59,10,118,101,99,50,32,95,98,54,59,10,105,102,40,95,98,52,61,61,95,98,53,41,123,10,95,68,61,117,95,115,97,109,101,95,99,111,108,111,114,59,10,95,98,54,61,95,98,52,59,10,125,101,108,115,101,32,105,102,40,95,98,50,46,97,62,95,98,51,
46,97,41,123,10,95,68,61,117,95,111,110,108,121,49,95,99,111,108,111,114,59,10,95,98,54,61,95,98,52,59,10,125,101,108,115,101,32,105,102,40,95,98,51,46,97,62,95,98,50,46,97,41,123,10,95,68,61,117,95,111,110,108,121,50,95,99,111,108,111,114,59,10,95,98,54,61,95,98,53,59,10,125,101,108,115,101,32,105,102,40,95,98,52,46,120,60,95,98,53,46,120,41,123,10,95,68,61,117,95,111,110,108,121,49,95,99,111,108,111,114,59,10,95,98,54,61,95,98,52,59,10,125,101,108,115,101,123,10,95,68,61,117,95,111,110,108,121,
50,95,99,111,108,111,114,59,10,95,98,54,61,95,98,53,59,10,125,10,95,68,61,109,105,120,40,95,68,44,118,101,99,51,40,49,46,41,44,95,98,54,46,120,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,61,118,101,99,52,40,95,68,42,95,98,54,46,121,44,95,98,54,46,121,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-comparison-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,
116,59,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,116,101,120,116,117,114,101,59,10,35,100,101,102,105,110,101,32,95,99,65,40,95,98,68,41,32,95,65,40,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,68,41,41,10,35,105,110,99,108,117,100,101,32,34,112,111,115,116,45,115,105,108,104,111,117,101,116,116,101,45,102,46,103,108,
115,108,34,10]);e.FS_createDataFile("/build/shader/release","post-silhouette-encoded-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,50,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,
109,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,102,102,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,50,32,95,67,61,95,102,102,42,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,122,119,43,117,95,105,110,112,117,116,95,116,114,97,
110,115,102,111,114,109,46,120,121,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,114,61,100,111,116,40,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,103,61,100,111,116,40,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,
95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,98,61,100,111,116,40,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,118,101,99,50,40,50,46,41,42,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,
111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,97,61,100,111,116,40,118,101,99,52,40,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,118,101,99,50,40,51,46,41,42,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","ssr-post-planar-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,
[35,105,102,32,95,95,86,69,82,83,73,79,78,95,95,62,61,51,48,48,10,35,100,101,102,105,110,101,32,95,99,83,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,99,84,10,35,101,110,100,105,102,10,35,105,102,32,100,101,102,105,110,101,100,40,83,77,65,65,95,65,76,80,72,65,95,69,68,71,69,83,41,10,35,100,101,102,105,110,101,32,95,99,85,32,49,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,99,85,32,48,10,35,101,110,100,105,102,10,35,105,102,32,100,101,102,105,110,101,100,40,83,77,65,65,95,
80,82,69,83,69,84,95,85,76,84,82,65,41,10,35,100,101,102,105,110,101,32,95,99,86,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,83,77,65,65,95,80,82,69,83,69,84,95,72,73,71,72,41,10,35,100,101,102,105,110,101,32,95,99,87,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,83,77,65,65,95,80,82,69,83,69,84,95,77,69,68,73,85,77,41,10,35,100,101,102,105,110,101,32,95,99,88,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,83,77,65,65,95,80,82,69,83,69,84,95,76,79,87,41,10,35,100,101,
102,105,110,101,32,95,99,89,10,35,101,110,100,105,102,10,35,100,101,102,105,110,101,32,95,99,90,40,95,98,108,41,32,95,98,108,46,114,97,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,46,103,108,115,108,34,10]);e.FS_createDataFile("/build/shader/release","smaa-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,
59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,117,95,99,111,108,111,114,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-solid-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,97,116,116,114,105,98,117,116,101,32,118,101,99,
51,32,97,95,118,101,114,116,101,120,95,97,110,100,95,99,111,108,111,114,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,115,91,50,93,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,98,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,95,98,61,117,95,99,111,108,111,114,115,91,105,110,116,40,97,95,118,101,114,116,101,120,95,97,110,100,95,99,111,108,111,114,46,122,41,93,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,101,99,52,40,97,95,118,101,114,
116,101,120,95,97,110,100,95,99,111,108,111,114,46,120,121,44,48,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","background-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,116,99,95,97,118,52,95,118,101,114,116,101,120,44,10,116,99,95,97,118,52,95,100,105,102,102,117,115,101,95,99,111,108,111,114,59,10,97,116,116,114,105,98,117,116,101,32,118,101,99,51,32,116,99,95,97,118,51,95,110,111,114,109,97,108,59,10,97,116,116,114,105,98,
117,116,101,32,118,101,99,50,32,116,99,95,97,118,50,95,116,101,120,116,117,114,101,95,99,111,111,114,100,115,59,10,97,116,116,114,105,98,117,116,101,32,102,108,111,97,116,32,116,99,95,97,102,95,108,105,110,101,95,112,97,116,116,101,114,110,95,111,102,102,115,101,116,59,10,35,105,102,100,101,102,32,84,67,95,73,78,83,84,65,78,67,73,78,71,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,49,44,10,116,99,95,97,118,52,95,109,97,116,114,
105,120,95,99,111,108,50,44,10,116,99,95,97,118,52,95,109,97,116,114,105,120,95,99,111,108,51,59,10,35,101,108,115,101,10,97,116,116,114,105,98,117,116,101,32,102,108,111,97,116,32,116,99,95,97,102,95,98,97,116,99,104,95,105,110,100,101,120,59,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","attributes-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[10,35,105,102,32,100,101,102,105,110,101,100,40,95,99,89,41,10,35,100,101,102,105,110,101,32,95,99,48,32,48,46,49,53,10,35,100,101,
102,105,110,101,32,95,99,49,32,52,10,35,100,101,102,105,110,101,32,95,99,50,10,35,100,101,102,105,110,101,32,95,99,51,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,95,99,88,41,10,35,100,101,102,105,110,101,32,95,99,48,32,48,46,49,10,35,100,101,102,105,110,101,32,95,99,49,32,56,10,35,100,101,102,105,110,101,32,95,99,50,10,35,100,101,102,105,110,101,32,95,99,51,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,95,99,87,41,10,35,100,101,102,105,110,101,32,95,99,48,32,48,46,49,10,35,100,
101,102,105,110,101,32,95,99,49,32,49,54,10,35,100,101,102,105,110,101,32,95,99,52,32,56,10,35,100,101,102,105,110,101,32,95,99,53,32,50,53,10,35,101,108,105,102,32,100,101,102,105,110,101,100,40,95,99,86,41,10,35,100,101,102,105,110,101,32,95,99,48,32,48,46,48,53,10,35,100,101,102,105,110,101,32,95,99,49,32,51,50,10,35,100,101,102,105,110,101,32,95,99,52,32,49,54,10,35,100,101,102,105,110,101,32,95,99,53,32,50,53,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,48,10,35,100,101,102,
105,110,101,32,95,99,48,32,48,46,49,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,54,10,35,100,101,102,105,110,101,32,95,99,54,32,40,48,46,49,42,95,99,48,41,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,49,10,35,100,101,102,105,110,101,32,95,99,49,32,49,54,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,52,10,35,100,101,102,105,110,101,32,95,99,52,32,56,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,53,10,35,100,101,102,105,
110,101,32,95,99,53,32,50,53,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,55,10,35,100,101,102,105,110,101,32,95,99,55,32,50,46,48,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,56,10,35,100,101,102,105,110,101,32,95,99,56,32,48,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,57,10,35,100,101,102,105,110,101,32,95,99,57,32,48,46,48,49,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,100,97,10,35,100,101,102,105,110,101,32,95,100,
97,32,50,46,48,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,100,98,10,35,100,101,102,105,110,101,32,95,100,98,32,48,46,52,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,100,99,10,35,100,101,102,105,110,101,32,95,100,99,32,48,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,100,100,10,35,100,101,102,105,110,101,32,95,100,100,32,51,48,46,48,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,74,10,35,100,101,102,105,110,101,32,95,99,74,32,49,
10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,75,10,35,100,101,102,105,110,101,32,95,99,75,32,49,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,99,90,10,35,105,102,32,100,101,102,105,110,101,100,40,95,100,101,41,10,35,100,101,102,105,110,101,32,95,99,90,40,95,98,108,41,32,95,98,108,46,114,97,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,99,90,40,95,98,108,41,32,95,98,108,46,114,103,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,35,105,102,110,
100,101,102,32,95,100,102,10,35,100,101,102,105,110,101,32,95,100,102,40,95,98,108,41,32,95,98,108,46,114,10,35,101,110,100,105,102,10,35,105,102,110,100,101,102,32,95,100,103,10,35,100,101,102,105,110,101,32,95,100,103,40,95,98,108,41,32,95,98,108,46,114,103,10,35,101,110,100,105,102,10,35,100,101,102,105,110,101,32,95,100,104,32,49,54,10,35,100,101,102,105,110,101,32,95,100,105,32,50,48,10,35,100,101,102,105,110,101,32,95,100,106,32,40,49,46,48,47,95,100,107,40,49,54,48,46,48,44,53,54,48,46,48,
41,41,10,35,100,101,102,105,110,101,32,95,100,108,32,40,49,46,48,47,55,46,48,41,10,35,100,101,102,105,110,101,32,95,100,109,32,95,100,107,40,54,54,46,48,44,51,51,46,48,41,10,35,100,101,102,105,110,101,32,95,100,110,32,95,100,107,40,54,52,46,48,44,49,54,46,48,41,10,35,100,101,102,105,110,101,32,95,100,111,32,40,102,108,111,97,116,40,95,99,53,41,47,49,48,48,46,48,41,10,35,105,102,32,100,101,102,105,110,101,100,40,95,100,112,41,124,124,100,101,102,105,110,101,100,40,95,99,84,41,124,124,100,101,102,105,
110,101,100,40,95,99,83,41,124,124,100,101,102,105,110,101,100,40,95,100,113,41,10,35,105,102,32,100,101,102,105,110,101,100,40,95,100,112,41,124,124,100,101,102,105,110,101,100,40,95,99,84,41,10,35,100,101,102,105,110,101,32,95,100,114,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,110,101,32,95,100,117,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,
110,101,32,95,100,118,40,95,100,115,44,95,100,116,44,95,100,119,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,43,95,100,119,42,95,99,76,46,120,121,41,10,35,100,101,102,105,110,101,32,95,100,120,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,110,101,32,95,100,121,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,110,101,32,95,100,122,
40,95,100,115,44,95,100,116,44,95,100,119,41,32,116,101,120,116,117,114,101,50,68,40,95,100,115,44,95,100,116,43,95,100,119,42,95,99,76,46,120,121,41,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,100,114,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,76,111,100,40,95,100,115,44,95,100,116,44,48,46,48,41,10,35,100,101,102,105,110,101,32,95,100,117,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,76,111,100,40,95,100,115,44,95,100,116,44,48,46,48,41,10,35,100,
101,102,105,110,101,32,95,100,118,40,95,100,115,44,95,100,116,44,95,100,119,41,32,116,101,120,116,117,114,101,76,111,100,79,102,102,115,101,116,40,95,100,115,44,95,100,116,44,48,46,48,44,95,100,119,41,10,35,100,101,102,105,110,101,32,95,100,120,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,110,101,32,95,100,121,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,40,95,100,115,44,95,100,116,41,10,35,100,101,102,105,110,
101,32,95,100,122,40,95,100,115,44,95,100,116,44,95,100,119,41,32,116,101,120,116,117,114,101,79,102,102,115,101,116,40,95,100,115,44,95,100,116,44,95,100,119,41,10,35,101,110,100,105,102,10,35,100,101,102,105,110,101,32,95,100,65,40,95,100,115,41,32,115,97,109,112,108,101,114,50,68,32,95,100,115,10,35,100,101,102,105,110,101,32,95,100,66,40,95,100,115,41,32,95,100,115,10,35,100,101,102,105,110,101,32,95,100,67,10,35,100,101,102,105,110,101,32,95,100,68,10,35,100,101,102,105,110,101,32,95,100,69,
40,97,44,98,44,116,41,32,109,105,120,40,97,44,98,44,116,41,10,35,100,101,102,105,110,101,32,95,100,70,40,97,41,32,99,108,97,109,112,40,97,44,48,46,48,44,49,46,48,41,10,35,105,102,32,100,101,102,105,110,101,100,40,95,100,113,41,10,35,100,101,102,105,110,101,32,95,100,71,40,97,44,98,44,99,41,32,102,109,97,40,97,44,98,44,99,41,10,35,100,101,102,105,110,101,32,95,100,72,40,95,100,115,44,95,100,116,41,32,116,101,120,116,117,114,101,71,97,116,104,101,114,40,95,100,115,44,95,100,116,41,10,35,101,108,115,
101,10,35,100,101,102,105,110,101,32,95,100,71,40,97,44,98,44,99,41,32,40,97,42,98,43,99,41,10,35,101,110,100,105,102,10,35,100,101,102,105,110,101,32,95,100,107,32,118,101,99,50,10,35,100,101,102,105,110,101,32,95,100,73,32,118,101,99,51,10,35,100,101,102,105,110,101,32,95,100,74,32,118,101,99,52,10,35,100,101,102,105,110,101,32,95,100,75,32,105,118,101,99,50,10,35,100,101,102,105,110,101,32,95,100,76,32,105,118,101,99,51,10,35,100,101,102,105,110,101,32,95,100,77,32,105,118,101,99,52,10,35,100,
101,102,105,110,101,32,95,100,78,32,98,118,101,99,50,10,35,100,101,102,105,110,101,32,95,100,79,32,98,118,101,99,51,10,35,100,101,102,105,110,101,32,95,100,80,32,98,118,101,99,52,10,35,101,110,100,105,102,10,35,105,102,32,100,101,102,105,110,101,100,40,95,100,112,41,124,124,100,101,102,105,110,101,100,40,95,99,84,41,10,35,100,101,102,105,110,101,32,95,100,81,40,118,41,32,102,108,111,111,114,40,40,118,41,43,46,53,41,10,35,100,101,102,105,110,101,32,95,100,82,40,120,44,121,41,32,118,101,99,50,40,120,
44,121,41,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,100,81,40,118,41,32,114,111,117,110,100,40,118,41,10,35,100,101,102,105,110,101,32,95,100,82,40,120,44,121,41,32,95,100,75,40,120,44,121,41,10,35,101,110,100,105,102,10,35,105,102,32,100,101,102,105,110,101,100,40,95,99,84,41,10,35,100,101,102,105,110,101,32,95,100,83,40,95,100,84,44,95,100,85,41,32,102,111,114,32,40,105,110,116,32,105,61,48,59,105,60,95,100,84,59,105,43,43,41,123,105,102,32,40,33,40,95,100,85,41,41,32,98,114,101,
97,107,59,10,35,101,108,115,101,10,35,100,101,102,105,110,101,32,95,100,83,40,95,100,84,44,95,100,85,41,32,119,104,105,108,101,32,40,95,100,85,41,123,10,35,101,110,100,105,102,10,35,105,102,33,100,101,102,105,110,101,100,40,95,100,101,41,38,38,33,100,101,102,105,110,101,100,40,95,100,86,41,38,38,33,100,101,102,105,110,101,100,40,95,100,87,41,38,38,33,100,101,102,105,110,101,100,40,95,100,112,41,38,38,33,100,101,102,105,110,101,100,40,95,99,84,41,38,38,33,100,101,102,105,110,101,100,40,95,99,83,41,
38,38,33,100,101,102,105,110,101,100,40,95,100,113,41,38,38,33,100,101,102,105,110,101,100,40,95,100,88,41,10,35,101,114,114,111,114,32,121,111,117,32,109,117,115,116,32,100,101,102,105,110,101,32,116,104,101,32,115,104,97,100,105,110,103,32,108,97,110,103,117,97,103,101,58,83,77,65,65,95,72,76,83,76,95,42,44,83,77,65,65,95,71,76,83,76,95,42,111,114,32,83,77,65,65,95,67,85,83,84,79,77,95,83,76,10,35,101,110,100,105,102,10,95,100,73,32,95,100,89,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,
119,91,51,93,44,10,95,100,65,40,95,100,115,41,41,123,10,35,105,102,100,101,102,32,95,100,72,10,114,101,116,117,114,110,32,95,100,72,40,95,100,115,44,95,100,90,43,95,99,76,46,120,121,42,95,100,107,40,45,48,46,53,44,45,48,46,53,41,41,46,103,114,98,59,10,35,101,108,115,101,10,102,108,111,97,116,32,80,61,95,100,121,40,95,100,115,44,95,100,90,41,46,114,59,10,102,108,111,97,116,32,95,100,48,61,95,100,121,40,95,100,115,44,95,100,119,91,48,93,46,120,121,41,46,114,59,10,102,108,111,97,116,32,95,100,49,61,
95,100,121,40,95,100,115,44,95,100,119,91,48,93,46,122,119,41,46,114,59,10,114,101,116,117,114,110,32,95,100,73,40,80,44,95,100,48,44,95,100,49,41,59,10,35,101,110,100,105,102,10,125,10,95,100,107,32,95,100,50,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,65,40,95,100,51,41,41,123,10,95,100,73,32,95,100,52,61,95,100,89,40,95,100,90,44,95,100,119,44,95,100,66,40,95,100,51,41,41,59,10,95,100,107,32,95,100,53,61,97,98,115,40,95,100,52,46,120,120,45,95,100,52,46,121,122,
41,59,10,95,100,107,32,95,100,54,61,115,116,101,112,40,95,99,57,44,95,100,53,41,59,10,114,101,116,117,114,110,32,95,100,97,42,95,99,48,42,40,49,46,48,45,95,100,98,42,95,100,54,41,59,10,125,10,118,111,105,100,32,95,100,55,40,95,100,78,32,95,100,56,44,105,110,111,117,116,32,95,100,107,32,95,100,57,44,95,100,107,32,95,112,41,123,10,95,100,67,32,105,102,40,95,100,56,46,120,41,32,95,100,57,46,120,61,95,112,46,120,59,10,95,100,67,32,105,102,40,95,100,56,46,121,41,32,95,100,57,46,121,61,95,112,46,121,59,
10,125,10,118,111,105,100,32,95,100,55,40,95,100,80,32,95,100,56,44,105,110,111,117,116,32,95,100,74,32,95,100,57,44,95,100,74,32,95,112,41,123,10,95,100,55,40,95,100,56,46,120,121,44,95,100,57,46,120,121,44,95,112,46,120,121,41,59,10,95,100,55,40,95,100,56,46,122,119,44,95,100,57,46,122,119,44,95,112,46,122,119,41,59,10,125,10,35,105,102,32,95,99,74,10,118,111,105,100,32,95,99,80,40,95,100,107,32,95,100,90,44,10,105,110,111,117,116,32,95,100,74,32,95,100,119,91,51,93,41,123,10,95,100,119,91,48,93,
61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,45,49,46,48,44,48,46,48,44,48,46,48,44,45,49,46,48,41,44,95,100,90,46,120,121,120,121,41,59,10,95,100,119,91,49,93,61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,49,46,48,44,48,46,48,44,48,46,48,44,49,46,48,41,44,95,100,90,46,120,121,120,121,41,59,10,95,100,119,91,50,93,61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,45,50,46,48,44,48,46,48,44,48,46,48,44,45,50,46,48,41,44,95,100,90,46,120,121,120,121,41,59,10,125,
10,118,111,105,100,32,95,99,78,40,95,100,107,32,95,100,90,44,10,111,117,116,32,95,100,107,32,95,101,97,44,10,105,110,111,117,116,32,95,100,74,32,95,100,119,91,51,93,41,123,10,95,101,97,61,95,100,90,42,95,99,76,46,122,119,59,10,95,100,119,91,48,93,61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,45,48,46,50,53,44,45,48,46,49,50,53,44,49,46,50,53,44,45,48,46,49,50,53,41,44,95,100,90,46,120,121,120,121,41,59,10,95,100,119,91,49,93,61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,
45,48,46,49,50,53,44,45,48,46,50,53,44,45,48,46,49,50,53,44,49,46,50,53,41,44,95,100,90,46,120,121,120,121,41,59,10,95,100,119,91,50,93,61,95,100,71,40,95,99,76,46,120,120,121,121,44,10,95,100,74,40,45,50,46,48,44,50,46,48,44,45,50,46,48,44,50,46,48,41,42,102,108,111,97,116,40,95,99,49,41,44,10,95,100,74,40,95,100,119,91,48,93,46,120,122,44,95,100,119,91,49,93,46,121,119,41,41,59,10,125,10,118,111,105,100,32,95,99,82,40,95,100,107,32,95,100,90,44,10,111,117,116,32,95,100,74,32,95,100,119,41,123,10,
95,100,119,61,95,100,71,40,95,99,76,46,120,121,120,121,44,95,100,74,40,49,46,48,44,48,46,48,44,48,46,48,44,49,46,48,41,44,95,100,90,46,120,121,120,121,41,59,10,125,10,35,101,110,100,105,102,10,35,105,102,32,95,99,75,10,35,105,102,32,95,99,85,10,95,100,107,32,95,99,79,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,65,40,95,101,98,41,10,35,105,102,32,95,99,56,10,44,95,100,65,40,95,100,51,41,10,35,101,110,100,105,102,10,41,123,10,35,105,102,32,95,99,56,10,95,100,107,32,
95,101,99,61,95,100,50,40,95,100,90,44,95,100,119,44,95,100,66,40,95,100,51,41,41,59,10,35,101,108,115,101,10,95,100,107,32,95,101,99,61,95,100,107,40,95,99,48,44,95,99,48,41,59,10,35,101,110,100,105,102,10,95,100,73,32,95,101,100,61,95,100,73,40,48,46,50,49,50,54,44,48,46,55,49,53,50,44,48,46,48,55,50,50,41,59,10,95,100,74,32,95,100,53,59,10,95,100,74,32,95,101,101,59,10,35,100,101,102,105,110,101,32,95,101,102,40,95,101,103,44,95,100,115,44,95,98,68,41,32,92,10,95,101,101,61,95,100,121,40,95,100,
115,44,95,98,68,41,59,92,10,95,100,107,32,95,101,103,61,95,100,107,40,100,111,116,40,95,101,101,46,114,103,98,44,95,101,100,41,44,95,101,101,46,97,41,10,95,101,102,40,67,44,95,101,98,44,95,100,90,41,59,10,95,101,102,40,95,101,104,44,95,101,98,44,95,100,119,91,48,93,46,120,121,41,59,10,95,100,107,32,116,61,97,98,115,40,67,45,95,101,104,41,59,10,95,100,53,46,120,61,109,97,120,40,116,46,114,44,116,46,103,41,59,10,95,101,102,40,95,101,105,44,95,101,98,44,95,100,119,91,48,93,46,122,119,41,59,10,116,61,
97,98,115,40,67,45,95,101,105,41,59,10,95,100,53,46,121,61,109,97,120,40,116,46,114,44,116,46,103,41,59,10,95,100,107,32,95,100,54,61,115,116,101,112,40,95,101,99,44,95,100,53,46,120,121,41,59,10,105,102,40,100,111,116,40,95,100,54,44,95,100,107,40,49,46,48,44,49,46,48,41,41,61,61,48,46,48,41,10,100,105,115,99,97,114,100,59,10,95,101,102,40,95,101,106,44,95,101,98,44,95,100,119,91,49,93,46,120,121,41,59,10,116,61,97,98,115,40,67,45,95,101,106,41,59,10,95,100,53,46,122,61,109,97,120,40,116,46,114,
44,116,46,103,41,59,10,95,101,102,40,95,101,107,44,95,101,98,44,95,100,119,91,49,93,46,122,119,41,59,10,116,61,97,98,115,40,67,45,95,101,107,41,59,10,95,100,53,46,119,61,109,97,120,40,116,46,114,44,116,46,103,41,59,10,95,100,107,32,95,101,108,61,109,97,120,40,95,100,53,46,120,121,44,95,100,53,46,122,119,41,59,10,95,101,102,40,95,101,109,44,95,101,98,44,95,100,119,91,50,93,46,120,121,41,59,10,116,61,97,98,115,40,67,45,95,101,109,41,59,10,95,100,53,46,122,61,109,97,120,40,116,46,114,44,116,46,103,41,
59,10,95,101,102,40,95,101,110,44,95,101,98,44,95,100,119,91,50,93,46,122,119,41,59,10,116,61,97,98,115,40,67,45,95,101,110,41,59,10,95,100,53,46,119,61,109,97,120,40,116,46,114,44,116,46,103,41,59,10,95,101,108,61,109,97,120,40,95,101,108,46,120,121,44,95,100,53,46,122,119,41,59,10,102,108,111,97,116,32,95,101,111,61,109,97,120,40,95,101,108,46,120,44,95,101,108,46,121,41,59,10,95,100,54,46,120,121,42,61,115,116,101,112,40,95,101,111,44,95,99,55,42,95,100,53,46,120,121,41,59,10,114,101,116,117,114,
110,32,95,100,54,59,10,35,117,110,100,101,102,32,95,101,102,10,125,10,35,101,108,115,101,10,95,100,107,32,95,99,79,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,65,40,95,101,98,41,10,35,105,102,32,95,99,56,10,44,95,100,65,40,95,100,51,41,10,35,101,110,100,105,102,10,41,123,10,35,105,102,32,95,99,56,10,95,100,107,32,95,101,99,61,95,100,50,40,95,100,90,44,95,100,119,44,95,100,66,40,95,100,51,41,41,59,10,35,101,108,115,101,10,95,100,107,32,95,101,99,61,95,100,107,40,
95,99,48,44,95,99,48,41,59,10,35,101,110,100,105,102,10,95,100,73,32,95,101,100,61,95,100,73,40,48,46,50,49,50,54,44,48,46,55,49,53,50,44,48,46,48,55,50,50,41,59,10,102,108,111,97,116,32,76,61,100,111,116,40,95,100,121,40,95,101,98,44,95,100,90,41,46,114,103,98,44,95,101,100,41,59,10,102,108,111,97,116,32,95,101,112,61,100,111,116,40,95,100,121,40,95,101,98,44,95,100,119,91,48,93,46,120,121,41,46,114,103,98,44,95,101,100,41,59,10,102,108,111,97,116,32,95,101,113,61,100,111,116,40,95,100,121,40,95,
101,98,44,95,100,119,91,48,93,46,122,119,41,46,114,103,98,44,95,101,100,41,59,10,95,100,74,32,95,100,53,59,10,95,100,53,46,120,121,61,97,98,115,40,76,45,95,100,107,40,95,101,112,44,95,101,113,41,41,59,10,95,100,107,32,95,100,54,61,115,116,101,112,40,95,101,99,44,95,100,53,46,120,121,41,59,10,105,102,40,100,111,116,40,95,100,54,44,95,100,107,40,49,46,48,44,49,46,48,41,41,61,61,48,46,48,41,10,100,105,115,99,97,114,100,59,10,102,108,111,97,116,32,95,101,114,61,100,111,116,40,95,100,121,40,95,101,98,
44,95,100,119,91,49,93,46,120,121,41,46,114,103,98,44,95,101,100,41,59,10,102,108,111,97,116,32,95,101,115,61,100,111,116,40,95,100,121,40,95,101,98,44,95,100,119,91,49,93,46,122,119,41,46,114,103,98,44,95,101,100,41,59,10,95,100,53,46,122,119,61,97,98,115,40,76,45,95,100,107,40,95,101,114,44,95,101,115,41,41,59,10,95,100,107,32,95,101,108,61,109,97,120,40,95,100,53,46,120,121,44,95,100,53,46,122,119,41,59,10,102,108,111,97,116,32,95,101,116,61,100,111,116,40,95,100,121,40,95,101,98,44,95,100,119,
91,50,93,46,120,121,41,46,114,103,98,44,95,101,100,41,59,10,102,108,111,97,116,32,95,101,117,61,100,111,116,40,95,100,121,40,95,101,98,44,95,100,119,91,50,93,46,122,119,41,46,114,103,98,44,95,101,100,41,59,10,95,100,53,46,122,119,61,97,98,115,40,95,100,107,40,95,101,112,44,95,101,113,41,45,95,100,107,40,95,101,116,44,95,101,117,41,41,59,10,95,101,108,61,109,97,120,40,95,101,108,46,120,121,44,95,100,53,46,122,119,41,59,10,102,108,111,97,116,32,95,101,111,61,109,97,120,40,95,101,108,46,120,44,95,101,
108,46,121,41,59,10,95,100,54,46,120,121,42,61,115,116,101,112,40,95,101,111,44,95,99,55,42,95,100,53,46,120,121,41,59,10,114,101,116,117,114,110,32,95,100,54,59,10,125,10,95,100,107,32,95,101,118,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,65,40,95,101,98,41,10,35,105,102,32,95,99,56,10,44,95,100,65,40,95,100,51,41,10,35,101,110,100,105,102,10,41,123,10,35,105,102,32,95,99,56,10,95,100,107,32,95,101,99,61,95,100,50,40,95,100,90,44,95,100,119,44,95,100,51,41,59,
10,35,101,108,115,101,10,95,100,107,32,95,101,99,61,95,100,107,40,95,99,48,44,95,99,48,41,59,10,35,101,110,100,105,102,10,95,100,74,32,95,100,53,59,10,95,100,73,32,67,61,95,100,121,40,95,101,98,44,95,100,90,41,46,114,103,98,59,10,95,100,73,32,95,101,104,61,95,100,121,40,95,101,98,44,95,100,119,91,48,93,46,120,121,41,46,114,103,98,59,10,95,100,73,32,116,61,97,98,115,40,67,45,95,101,104,41,59,10,95,100,53,46,120,61,109,97,120,40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,100,
73,32,95,101,105,61,95,100,121,40,95,101,98,44,95,100,119,91,48,93,46,122,119,41,46,114,103,98,59,10,116,61,97,98,115,40,67,45,95,101,105,41,59,10,95,100,53,46,121,61,109,97,120,40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,100,107,32,95,100,54,61,115,116,101,112,40,95,101,99,44,95,100,53,46,120,121,41,59,10,105,102,40,100,111,116,40,95,100,54,44,95,100,107,40,49,46,48,44,49,46,48,41,41,61,61,48,46,48,41,10,100,105,115,99,97,114,100,59,10,95,100,73,32,95,101,106,61,95,100,
121,40,95,101,98,44,95,100,119,91,49,93,46,120,121,41,46,114,103,98,59,10,116,61,97,98,115,40,67,45,95,101,106,41,59,10,95,100,53,46,122,61,109,97,120,40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,100,73,32,95,101,107,61,95,100,121,40,95,101,98,44,95,100,119,91,49,93,46,122,119,41,46,114,103,98,59,10,116,61,97,98,115,40,67,45,95,101,107,41,59,10,95,100,53,46,119,61,109,97,120,40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,100,107,32,95,101,108,61,109,
97,120,40,95,100,53,46,120,121,44,95,100,53,46,122,119,41,59,10,95,100,73,32,95,101,109,61,95,100,121,40,95,101,98,44,95,100,119,91,50,93,46,120,121,41,46,114,103,98,59,10,116,61,97,98,115,40,67,45,95,101,109,41,59,10,95,100,53,46,122,61,109,97,120,40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,100,73,32,95,101,110,61,95,100,121,40,95,101,98,44,95,100,119,91,50,93,46,122,119,41,46,114,103,98,59,10,116,61,97,98,115,40,67,45,95,101,110,41,59,10,95,100,53,46,119,61,109,97,120,
40,109,97,120,40,116,46,114,44,116,46,103,41,44,116,46,98,41,59,10,95,101,108,61,109,97,120,40,95,101,108,46,120,121,44,95,100,53,46,122,119,41,59,10,102,108,111,97,116,32,95,101,111,61,109,97,120,40,95,101,108,46,120,44,95,101,108,46,121,41,59,10,95,100,54,46,120,121,42,61,115,116,101,112,40,95,101,111,44,95,99,55,42,95,100,53,46,120,121,41,59,10,114,101,116,117,114,110,32,95,100,54,59,10,125,10,95,100,107,32,95,101,119,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,
65,40,95,101,120,41,41,123,10,95,100,73,32,95,100,52,61,95,100,89,40,95,100,90,44,95,100,119,44,95,100,66,40,95,101,120,41,41,59,10,95,100,107,32,95,100,53,61,97,98,115,40,95,100,52,46,120,120,45,95,100,107,40,95,100,52,46,121,44,95,100,52,46,122,41,41,59,10,95,100,107,32,95,100,54,61,115,116,101,112,40,95,99,54,44,95,100,53,41,59,10,105,102,40,100,111,116,40,95,100,54,44,95,100,107,40,49,46,48,44,49,46,48,41,41,61,61,48,46,48,41,10,100,105,115,99,97,114,100,59,10,114,101,116,117,114,110,32,95,100,
54,59,10,125,10,35,101,110,100,105,102,10,35,105,102,33,100,101,102,105,110,101,100,40,95,99,50,41,10,95,100,107,32,95,101,121,40,95,100,107,32,101,41,123,10,101,46,114,61,101,46,114,42,97,98,115,40,53,46,48,42,101,46,114,45,53,46,48,42,48,46,55,53,41,59,10,114,101,116,117,114,110,32,95,100,81,40,101,41,59,10,125,10,95,100,74,32,95,101,121,40,95,100,74,32,101,41,123,10,101,46,114,98,61,101,46,114,98,42,97,98,115,40,53,46,48,42,101,46,114,98,45,53,46,48,42,48,46,55,53,41,59,10,114,101,116,117,114,
110,32,95,100,81,40,101,41,59,10,125,10,95,100,107,32,95,101,122,40,95,100,65,40,95,101,65,41,44,95,100,107,32,95,100,90,44,95,100,107,32,95,101,66,44,111,117,116,32,95,100,107,32,101,41,123,10,95,100,74,32,95,100,116,61,95,100,74,40,95,100,90,44,45,49,46,48,44,49,46,48,41,59,10,95,100,73,32,116,61,95,100,73,40,95,99,76,46,120,121,44,49,46,48,41,59,10,95,100,83,40,95,99,52,44,10,95,100,116,46,122,60,102,108,111,97,116,40,95,99,52,45,49,41,38,38,95,100,116,46,119,62,48,46,57,41,10,95,100,116,46,120,
121,122,61,95,100,71,40,116,44,95,100,73,40,95,101,66,44,49,46,48,41,44,95,100,116,46,120,121,122,41,59,10,101,61,95,100,114,40,95,101,65,44,95,100,116,46,120,121,41,46,114,103,59,10,95,100,116,46,119,61,100,111,116,40,101,44,95,100,107,40,48,46,53,44,48,46,53,41,41,59,10,125,10,114,101,116,117,114,110,32,95,100,116,46,122,119,59,10,125,10,95,100,107,32,95,101,67,40,95,100,65,40,95,101,65,41,44,95,100,107,32,95,100,90,44,95,100,107,32,95,101,66,44,111,117,116,32,95,100,107,32,101,41,123,10,95,100,
74,32,95,100,116,61,95,100,74,40,95,100,90,44,45,49,46,48,44,49,46,48,41,59,10,95,100,116,46,120,43,61,48,46,50,53,42,95,99,76,46,120,59,10,95,100,73,32,116,61,95,100,73,40,95,99,76,46,120,121,44,49,46,48,41,59,10,95,100,83,40,95,99,52,44,10,95,100,116,46,122,60,102,108,111,97,116,40,95,99,52,45,49,41,38,38,95,100,116,46,119,62,48,46,57,41,10,95,100,116,46,120,121,122,61,95,100,71,40,116,44,95,100,73,40,95,101,66,44,49,46,48,41,44,95,100,116,46,120,121,122,41,59,10,101,61,95,100,114,40,95,101,65,
44,95,100,116,46,120,121,41,46,114,103,59,10,101,61,95,101,121,40,101,41,59,10,95,100,116,46,119,61,100,111,116,40,101,44,95,100,107,40,48,46,53,44,48,46,53,41,41,59,10,125,10,114,101,116,117,114,110,32,95,100,116,46,122,119,59,10,125,10,95,100,107,32,95,101,68,40,95,100,65,40,95,101,69,41,44,95,100,107,32,95,101,70,44,95,100,107,32,101,44,102,108,111,97,116,32,95,100,119,41,123,10,95,100,107,32,95,100,90,61,95,100,71,40,95,100,107,40,95,100,105,44,95,100,105,41,44,101,44,95,101,70,41,59,10,95,100,
90,61,95,100,71,40,95,100,106,44,95,100,90,44,48,46,53,42,95,100,106,41,59,10,95,100,90,46,120,43,61,48,46,53,59,10,95,100,90,46,121,43,61,95,100,108,42,95,100,119,59,10,114,101,116,117,114,110,32,95,99,90,40,95,100,114,40,95,101,69,44,95,100,90,41,41,59,10,125,10,95,100,107,32,95,101,71,40,95,100,65,40,95,101,65,41,44,95,100,65,40,95,101,69,41,44,95,100,107,32,95,100,90,44,95,100,107,32,101,44,95,100,74,32,95,101,72,41,123,10,95,100,107,32,95,101,100,61,95,100,107,40,48,46,48,44,48,46,48,41,59,10,
95,100,74,32,100,59,10,95,100,107,32,95,101,73,59,10,105,102,40,101,46,114,62,48,46,48,41,123,10,100,46,120,122,61,95,101,122,40,95,100,66,40,95,101,65,41,44,95,100,90,44,95,100,107,40,45,49,46,48,44,49,46,48,41,44,95,101,73,41,59,10,100,46,120,43,61,102,108,111,97,116,40,95,101,73,46,121,62,48,46,57,41,59,10,125,101,108,115,101,10,100,46,120,122,61,95,100,107,40,48,46,48,44,48,46,48,41,59,10,100,46,121,119,61,95,101,122,40,95,100,66,40,95,101,65,41,44,95,100,90,44,95,100,107,40,49,46,48,44,45,49,
46,48,41,44,95,101,73,41,59,10,95,100,68,10,105,102,40,100,46,120,43,100,46,121,62,50,46,48,41,123,10,95,100,74,32,95,101,74,61,95,100,71,40,95,100,74,40,45,100,46,120,43,48,46,50,53,44,100,46,120,44,100,46,121,44,45,100,46,121,45,48,46,50,53,41,44,95,99,76,46,120,121,120,121,44,95,100,90,46,120,121,120,121,41,59,10,95,100,74,32,99,59,10,99,46,120,121,61,95,100,118,40,95,101,65,44,95,101,74,46,120,121,44,95,100,82,40,45,49,44,48,41,41,46,114,103,59,10,99,46,122,119,61,95,100,118,40,95,101,65,44,95,
101,74,46,122,119,44,95,100,82,40,49,44,48,41,41,46,114,103,59,10,99,46,121,120,119,122,61,95,101,121,40,99,46,120,121,122,119,41,59,10,95,100,107,32,95,101,75,61,95,100,71,40,95,100,107,40,50,46,48,44,50,46,48,41,44,99,46,120,122,44,99,46,121,119,41,59,10,95,100,55,40,95,100,78,40,115,116,101,112,40,48,46,57,44,100,46,122,119,41,41,44,95,101,75,44,95,100,107,40,48,46,48,44,48,46,48,41,41,59,10,95,101,100,43,61,95,101,68,40,95,100,66,40,95,101,69,41,44,100,46,120,121,44,95,101,75,44,95,101,72,46,
122,41,59,10,125,10,100,46,120,122,61,95,101,67,40,95,100,66,40,95,101,65,41,44,95,100,90,44,95,100,107,40,45,49,46,48,44,45,49,46,48,41,44,95,101,73,41,59,10,105,102,40,95,100,118,40,95,101,65,44,95,100,90,44,95,100,82,40,49,44,48,41,41,46,114,62,48,46,48,41,123,10,100,46,121,119,61,95,101,67,40,95,100,66,40,95,101,65,41,44,95,100,90,44,95,100,107,40,49,46,48,44,49,46,48,41,44,95,101,73,41,59,10,100,46,121,43,61,102,108,111,97,116,40,95,101,73,46,121,62,48,46,57,41,59,10,125,101,108,115,101,10,100,
46,121,119,61,95,100,107,40,48,46,48,44,48,46,48,41,59,10,95,100,68,10,105,102,40,100,46,120,43,100,46,121,62,50,46,48,41,123,10,95,100,74,32,95,101,74,61,95,100,71,40,95,100,74,40,45,100,46,120,44,45,100,46,120,44,100,46,121,44,100,46,121,41,44,95,99,76,46,120,121,120,121,44,95,100,90,46,120,121,120,121,41,59,10,95,100,74,32,99,59,10,99,46,120,61,95,100,118,40,95,101,65,44,95,101,74,46,120,121,44,95,100,82,40,45,49,44,48,41,41,46,103,59,10,99,46,121,61,95,100,118,40,95,101,65,44,95,101,74,46,120,
121,44,95,100,82,40,48,44,45,49,41,41,46,114,59,10,99,46,122,119,61,95,100,118,40,95,101,65,44,95,101,74,46,122,119,44,95,100,82,40,49,44,48,41,41,46,103,114,59,10,95,100,107,32,95,101,75,61,95,100,71,40,95,100,107,40,50,46,48,44,50,46,48,41,44,99,46,120,122,44,99,46,121,119,41,59,10,95,100,55,40,95,100,78,40,115,116,101,112,40,48,46,57,44,100,46,122,119,41,41,44,95,101,75,44,95,100,107,40,48,46,48,44,48,46,48,41,41,59,10,95,101,100,43,61,95,101,68,40,95,100,66,40,95,101,69,41,44,100,46,120,121,44,
95,101,75,44,95,101,72,46,119,41,46,103,114,59,10,125,10,114,101,116,117,114,110,32,95,101,100,59,10,125,10,35,101,110,100,105,102,10,102,108,111,97,116,32,95,101,76,40,95,100,65,40,95,101,77,41,44,95,100,107,32,101,44,102,108,111,97,116,32,95,100,119,41,123,10,95,100,107,32,95,98,57,61,95,100,109,42,95,100,107,40,48,46,53,44,45,49,46,48,41,59,10,95,100,107,32,95,98,78,61,95,100,109,42,95,100,107,40,95,100,119,44,49,46,48,41,59,10,95,98,57,43,61,95,100,107,40,45,49,46,48,44,49,46,48,41,59,10,95,98,
78,43,61,95,100,107,40,48,46,53,44,45,48,46,53,41,59,10,95,98,57,42,61,49,46,48,47,95,100,110,59,10,95,98,78,42,61,49,46,48,47,95,100,110,59,10,114,101,116,117,114,110,32,95,100,102,40,95,100,114,40,95,101,77,44,95,100,71,40,95,98,57,44,101,44,95,98,78,41,41,41,59,10,125,10,102,108,111,97,116,32,95,101,78,40,95,100,65,40,95,101,65,41,44,95,100,65,40,95,101,77,41,44,95,100,107,32,95,100,90,44,102,108,111,97,116,32,95,101,73,41,123,10,95,100,107,32,101,61,95,100,107,40,48,46,48,44,49,46,48,41,59,10,
95,100,83,40,95,99,49,44,10,95,100,90,46,120,62,95,101,73,38,38,10,101,46,103,62,48,46,56,50,56,49,38,38,10,101,46,114,61,61,48,46,48,41,10,101,61,95,100,114,40,95,101,65,44,95,100,90,41,46,114,103,59,10,95,100,90,61,95,100,71,40,45,95,100,107,40,50,46,48,44,48,46,48,41,44,95,99,76,46,120,121,44,95,100,90,41,59,10,125,10,102,108,111,97,116,32,95,100,119,61,95,100,71,40,45,40,50,53,53,46,48,47,49,50,55,46,48,41,44,95,101,76,40,95,100,66,40,95,101,77,41,44,101,44,48,46,48,41,44,51,46,50,53,41,59,10,
114,101,116,117,114,110,32,95,100,71,40,95,99,76,46,120,44,95,100,119,44,95,100,90,46,120,41,59,10,125,10,102,108,111,97,116,32,95,101,79,40,95,100,65,40,95,101,65,41,44,95,100,65,40,95,101,77,41,44,95,100,107,32,95,100,90,44,102,108,111,97,116,32,95,101,73,41,123,10,95,100,107,32,101,61,95,100,107,40,48,46,48,44,49,46,48,41,59,10,95,100,83,40,95,99,49,44,10,95,100,90,46,120,60,95,101,73,38,38,10,101,46,103,62,48,46,56,50,56,49,38,38,10,101,46,114,61,61,48,46,48,41,10,101,61,95,100,114,40,95,101,
65,44,95,100,90,41,46,114,103,59,10,95,100,90,61,95,100,71,40,95,100,107,40,50,46,48,44,48,46,48,41,44,95,99,76,46,120,121,44,95,100,90,41,59,10,125,10,102,108,111,97,116,32,95,100,119,61,95,100,71,40,45,40,50,53,53,46,48,47,49,50,55,46,48,41,44,95,101,76,40,95,100,66,40,95,101,77,41,44,101,44,48,46,53,41,44,51,46,50,53,41,59,10,114,101,116,117,114,110,32,95,100,71,40,45,95,99,76,46,120,44,95,100,119,44,95,100,90,46,120,41,59,10,125,10,102,108,111,97,116,32,95,101,80,40,95,100,65,40,95,101,65,41,
44,95,100,65,40,95,101,77,41,44,95,100,107,32,95,100,90,44,102,108,111,97,116,32,95,101,73,41,123,10,95,100,107,32,101,61,95,100,107,40,49,46,48,44,48,46,48,41,59,10,95,100,83,40,95,99,49,44,10,95,100,90,46,121,62,95,101,73,38,38,10,101,46,114,62,48,46,56,50,56,49,38,38,10,101,46,103,61,61,48,46,48,41,10,101,61,95,100,114,40,95,101,65,44,95,100,90,41,46,114,103,59,10,95,100,90,61,95,100,71,40,45,95,100,107,40,48,46,48,44,50,46,48,41,44,95,99,76,46,120,121,44,95,100,90,41,59,10,125,10,102,108,111,
97,116,32,95,100,119,61,95,100,71,40,45,40,50,53,53,46,48,47,49,50,55,46,48,41,44,95,101,76,40,95,100,66,40,95,101,77,41,44,101,46,103,114,44,48,46,48,41,44,51,46,50,53,41,59,10,114,101,116,117,114,110,32,95,100,71,40,95,99,76,46,121,44,95,100,119,44,95,100,90,46,121,41,59,10,125,10,102,108,111,97,116,32,95,101,81,40,95,100,65,40,95,101,65,41,44,95,100,65,40,95,101,77,41,44,95,100,107,32,95,100,90,44,102,108,111,97,116,32,95,101,73,41,123,10,95,100,107,32,101,61,95,100,107,40,49,46,48,44,48,46,48,
41,59,10,95,100,83,40,95,99,49,44,10,95,100,90,46,121,60,95,101,73,38,38,10,101,46,114,62,48,46,56,50,56,49,38,38,10,101,46,103,61,61,48,46,48,41,10,101,61,95,100,114,40,95,101,65,44,95,100,90,41,46,114,103,59,10,95,100,90,61,95,100,71,40,95,100,107,40,48,46,48,44,50,46,48,41,44,95,99,76,46,120,121,44,95,100,90,41,59,10,125,10,102,108,111,97,116,32,95,100,119,61,95,100,71,40,45,40,50,53,53,46,48,47,49,50,55,46,48,41,44,95,101,76,40,95,100,66,40,95,101,77,41,44,101,46,103,114,44,48,46,53,41,44,51,
46,50,53,41,59,10,114,101,116,117,114,110,32,95,100,71,40,45,95,99,76,46,121,44,95,100,119,44,95,100,90,46,121,41,59,10,125,10,95,100,107,32,95,101,82,40,95,100,65,40,95,101,69,41,44,95,100,107,32,95,101,70,44,102,108,111,97,116,32,101,49,44,102,108,111,97,116,32,101,50,44,102,108,111,97,116,32,95,100,119,41,123,10,95,100,107,32,95,100,90,61,95,100,71,40,95,100,107,40,95,100,104,44,95,100,104,41,44,95,100,81,40,52,46,48,42,95,100,107,40,101,49,44,101,50,41,41,44,95,101,70,41,59,10,95,100,90,61,95,
100,71,40,95,100,106,44,95,100,90,44,48,46,53,42,95,100,106,41,59,10,95,100,90,46,121,61,95,100,71,40,95,100,108,44,95,100,119,44,95,100,90,46,121,41,59,10,114,101,116,117,114,110,32,95,99,90,40,95,100,114,40,95,101,69,44,95,100,90,41,41,59,10,125,10,118,111,105,100,32,95,101,83,40,95,100,65,40,95,101,65,41,44,105,110,111,117,116,32,95,100,107,32,95,101,100,44,95,100,74,32,95,100,90,44,95,100,107,32,100,41,123,10,35,105,102,33,100,101,102,105,110,101,100,40,95,99,51,41,10,95,100,107,32,95,101,84,
61,115,116,101,112,40,100,46,120,121,44,100,46,121,120,41,59,10,95,100,107,32,95,101,85,61,40,49,46,48,45,95,100,111,41,42,95,101,84,59,10,95,101,85,47,61,95,101,84,46,120,43,95,101,84,46,121,59,10,95,100,107,32,95,101,86,61,95,100,107,40,49,46,48,44,49,46,48,41,59,10,95,101,86,46,120,45,61,95,101,85,46,120,42,95,100,118,40,95,101,65,44,95,100,90,46,120,121,44,95,100,82,40,48,44,49,41,41,46,114,59,10,95,101,86,46,120,45,61,95,101,85,46,121,42,95,100,118,40,95,101,65,44,95,100,90,46,122,119,44,95,
100,82,40,49,44,49,41,41,46,114,59,10,95,101,86,46,121,45,61,95,101,85,46,120,42,95,100,118,40,95,101,65,44,95,100,90,46,120,121,44,95,100,82,40,48,44,45,50,41,41,46,114,59,10,95,101,86,46,121,45,61,95,101,85,46,121,42,95,100,118,40,95,101,65,44,95,100,90,46,122,119,44,95,100,82,40,49,44,45,50,41,41,46,114,59,10,95,101,100,42,61,95,100,70,40,95,101,86,41,59,10,35,101,110,100,105,102,10,125,10,118,111,105,100,32,95,101,87,40,95,100,65,40,95,101,65,41,44,105,110,111,117,116,32,95,100,107,32,95,101,
100,44,95,100,74,32,95,100,90,44,95,100,107,32,100,41,123,10,35,105,102,33,100,101,102,105,110,101,100,40,95,99,51,41,10,95,100,107,32,95,101,84,61,115,116,101,112,40,100,46,120,121,44,100,46,121,120,41,59,10,95,100,107,32,95,101,85,61,40,49,46,48,45,95,100,111,41,42,95,101,84,59,10,95,101,85,47,61,95,101,84,46,120,43,95,101,84,46,121,59,10,95,100,107,32,95,101,86,61,95,100,107,40,49,46,48,44,49,46,48,41,59,10]);a.push.apply(a,[95,101,86,46,120,45,61,95,101,85,46,120,42,95,100,118,40,95,101,65,44,
95,100,90,46,120,121,44,95,100,82,40,49,44,48,41,41,46,103,59,10,95,101,86,46,120,45,61,95,101,85,46,121,42,95,100,118,40,95,101,65,44,95,100,90,46,122,119,44,95,100,82,40,49,44,49,41,41,46,103,59,10,95,101,86,46,121,45,61,95,101,85,46,120,42,95,100,118,40,95,101,65,44,95,100,90,46,120,121,44,95,100,82,40,45,50,44,48,41,41,46,103,59,10,95,101,86,46,121,45,61,95,101,85,46,121,42,95,100,118,40,95,101,65,44,95,100,90,46,122,119,44,95,100,82,40,45,50,44,49,41,41,46,103,59,10,95,101,100,42,61,95,100,70,
40,95,101,86,41,59,10,35,101,110,100,105,102,10,125,10,95,100,74,32,95,99,77,40,95,100,107,32,95,100,90,44,10,95,100,107,32,95,101,97,44,10,95,100,74,32,95,100,119,91,51,93,44,10,95,100,65,40,95,101,65,41,44,10,95,100,65,40,95,101,69,41,44,10,95,100,65,40,95,101,77,41,44,10,95,100,74,32,95,101,72,41,123,10,95,100,74,32,95,101,100,61,95,100,74,40,48,46,48,44,48,46,48,44,48,46,48,44,48,46,48,41,59,10,95,100,107,32,101,61,95,100,120,40,95,101,65,44,95,100,90,41,46,114,103,59,10,95,100,68,10,105,102,
40,101,46,103,62,48,46,48,41,123,10,35,105,102,33,100,101,102,105,110,101,100,40,95,99,50,41,10,95,101,100,46,114,103,61,95,101,71,40,95,100,66,40,95,101,65,41,44,95,100,66,40,95,101,69,41,44,95,100,90,44,101,44,95,101,72,41,59,10,95,100,68,10,105,102,40,95,101,100,46,114,61,61,45,95,101,100,46,103,41,123,10,35,101,110,100,105,102,10,95,100,107,32,100,59,10,95,100,73,32,95,101,74,59,10,95,101,74,46,120,61,95,101,78,40,95,100,66,40,95,101,65,41,44,95,100,66,40,95,101,77,41,44,95,100,119,91,48,93,46,
120,121,44,95,100,119,91,50,93,46,120,41,59,10,95,101,74,46,121,61,95,100,119,91,49,93,46,121,59,10,100,46,120,61,95,101,74,46,120,59,10,102,108,111,97,116,32,101,49,61,95,100,114,40,95,101,65,44,95,101,74,46,120,121,41,46,114,59,10,95,101,74,46,122,61,95,101,79,40,95,100,66,40,95,101,65,41,44,95,100,66,40,95,101,77,41,44,95,100,119,91,48,93,46,122,119,44,95,100,119,91,50,93,46,121,41,59,10,100,46,121,61,95,101,74,46,122,59,10,100,61,97,98,115,40,95,100,81,40,95,100,71,40,95,99,76,46,122,122,44,100,
44,45,95,101,97,46,120,120,41,41,41,59,10,95,100,107,32,95,101,88,61,115,113,114,116,40,100,41,59,10,102,108,111,97,116,32,101,50,61,95,100,118,40,95,101,65,44,95,101,74,46,122,121,44,95,100,82,40,49,44,48,41,41,46,114,59,10,95,101,100,46,114,103,61,95,101,82,40,95,100,66,40,95,101,69,41,44,95,101,88,44,101,49,44,101,50,44,95,101,72,46,121,41,59,10,95,101,74,46,121,61,95,100,90,46,121,59,10,95,101,83,40,95,100,66,40,95,101,65,41,44,95,101,100,46,114,103,44,95,101,74,46,120,121,122,121,44,100,41,59,
10,35,105,102,33,100,101,102,105,110,101,100,40,95,99,50,41,10,125,101,108,115,101,10,101,46,114,61,48,46,48,59,10,35,101,110,100,105,102,10,125,10,95,100,68,10,105,102,40,101,46,114,62,48,46,48,41,123,10,95,100,107,32,100,59,10,95,100,73,32,95,101,74,59,10,95,101,74,46,121,61,95,101,80,40,95,100,66,40,95,101,65,41,44,95,100,66,40,95,101,77,41,44,95,100,119,91,49,93,46,120,121,44,95,100,119,91,50,93,46,122,41,59,10,95,101,74,46,120,61,95,100,119,91,48,93,46,120,59,10,100,46,120,61,95,101,74,46,121,
59,10,102,108,111,97,116,32,101,49,61,95,100,114,40,95,101,65,44,95,101,74,46,120,121,41,46,103,59,10,95,101,74,46,122,61,95,101,81,40,95,100,66,40,95,101,65,41,44,95,100,66,40,95,101,77,41,44,95,100,119,91,49,93,46,122,119,44,95,100,119,91,50,93,46,119,41,59,10,100,46,121,61,95,101,74,46,122,59,10,100,61,97,98,115,40,95,100,81,40,95,100,71,40,95,99,76,46,119,119,44,100,44,45,95,101,97,46,121,121,41,41,41,59,10,95,100,107,32,95,101,88,61,115,113,114,116,40,100,41,59,10,102,108,111,97,116,32,101,50,
61,95,100,118,40,95,101,65,44,95,101,74,46,120,122,44,95,100,82,40,48,44,49,41,41,46,103,59,10,95,101,100,46,98,97,61,95,101,82,40,95,100,66,40,95,101,69,41,44,95,101,88,44,101,49,44,101,50,44,95,101,72,46,120,41,59,10,95,101,74,46,120,61,95,100,90,46,120,59,10,95,101,87,40,95,100,66,40,95,101,65,41,44,95,101,100,46,98,97,44,95,101,74,46,120,121,120,122,44,100,41,59,10,125,10,114,101,116,117,114,110,32,95,101,100,59,10,125,10,95,100,74,32,95,99,81,40,95,100,107,32,95,100,90,44,10,95,100,74,32,95,
100,119,44,10,95,100,65,40,95,101,98,41,44,10,95,100,65,40,95,101,89,41,10,35,105,102,32,95,100,99,10,44,95,100,65,40,95,101,90,41,10,35,101,110,100,105,102,10,41,123,10,95,100,74,32,97,59,10,97,46,120,61,95,100,120,40,95,101,89,44,95,100,119,46,120,121,41,46,97,59,10,97,46,121,61,95,100,120,40,95,101,89,44,95,100,119,46,122,119,41,46,103,59,10,97,46,119,122,61,95,100,120,40,95,101,89,44,95,100,90,41,46,120,122,59,10,95,100,68,10,105,102,40,100,111,116,40,97,44,95,100,74,40,49,46,48,44,49,46,48,44,
49,46,48,44,49,46,48,41,41,60,61,49,101,45,53,41,123,10,95,100,74,32,95,68,61,95,100,114,40,95,101,98,44,95,100,90,41,59,10,35,105,102,32,95,100,99,10,95,100,107,32,95,101,48,61,95,100,103,40,95,100,114,40,95,101,90,44,95,100,90,41,41,59,10,95,68,46,97,61,115,113,114,116,40,53,46,48,42,108,101,110,103,116,104,40,95,101,48,41,41,59,10,35,101,110,100,105,102,10,114,101,116,117,114,110,32,95,68,59,10,125,101,108,115,101,123,10,98,111,111,108,32,104,61,109,97,120,40,97,46,120,44,97,46,122,41,62,109,97,
120,40,97,46,121,44,97,46,119,41,59,10,95,100,74,32,95,101,49,61,95,100,74,40,48,46,48,44,97,46,121,44,48,46,48,44,97,46,119,41,59,10,95,100,107,32,95,101,50,61,97,46,121,119,59,10,95,100,55,40,95,100,80,40,104,44,104,44,104,44,104,41,44,95,101,49,44,95,100,74,40,97,46,120,44,48,46,48,44,97,46,122,44,48,46,48,41,41,59,10,95,100,55,40,95,100,78,40,104,44,104,41,44,95,101,50,44,97,46,120,122,41,59,10,95,101,50,47,61,100,111,116,40,95,101,50,44,95,100,107,40,49,46,48,44,49,46,48,41,41,59,10,95,100,74,
32,95,101,51,61,95,100,71,40,95,101,49,44,95,100,74,40,95,99,76,46,120,121,44,45,95,99,76,46,120,121,41,44,95,100,90,46,120,121,120,121,41,59,10,95,100,74,32,95,68,61,95,101,50,46,120,42,95,100,114,40,95,101,98,44,95,101,51,46,120,121,41,59,10,95,68,43,61,95,101,50,46,121,42,95,100,114,40,95,101,98,44,95,101,51,46,122,119,41,59,10,35,105,102,32,95,100,99,10,95,100,107,32,95,101,48,61,95,101,50,46,120,42,95,100,103,40,95,100,114,40,95,101,90,44,95,101,51,46,120,121,41,41,59,10,95,101,48,43,61,95,101,
50,46,121,42,95,100,103,40,95,100,114,40,95,101,90,44,95,101,51,46,122,119,41,41,59,10,95,68,46,97,61,115,113,114,116,40,53,46,48,42,108,101,110,103,116,104,40,95,101,48,41,41,59,10,35,101,110,100,105,102,10,114,101,116,117,114,110,32,95,68,59,10,125,10,125,10,95,100,74,32,95,101,52,40,95,100,107,32,95,100,90,44,10,95,100,65,40,95,101,53,41,44,10,95,100,65,40,95,101,54,41,10,35,105,102,32,95,100,99,10,44,95,100,65,40,95,101,90,41,10,35,101,110,100,105,102,10,41,123,10,35,105,102,32,95,100,99,10,95,
100,107,32,95,101,48,61,45,95,100,103,40,95,100,121,40,95,101,90,44,95,100,90,41,46,114,103,41,59,10,95,100,74,32,95,101,55,61,95,100,121,40,95,101,53,44,95,100,90,41,59,10,95,100,74,32,95,101,56,61,95,100,121,40,95,101,54,44,95,100,90,43,95,101,48,41,59,10,102,108,111,97,116,32,95,100,53,61,97,98,115,40,95,101,55,46,97,42,95,101,55,46,97,45,95,101,56,46,97,42,95,101,56,46,97,41,47,53,46,48,59,10,102,108,111,97,116,32,95,98,109,61,48,46,53,42,95,100,70,40,49,46,48,45,115,113,114,116,40,95,100,53,
41,42,95,100,100,41,59,10,114,101,116,117,114,110,32,95,100,69,40,95,101,55,44,95,101,56,44,95,98,109,41,59,10,35,101,108,115,101,10,95,100,74,32,95,101,55,61,95,100,121,40,95,101,53,44,95,100,90,41,59,10,95,100,74,32,95,101,56,61,95,100,121,40,95,101,54,44,95,100,90,41,59,10,114,101,116,117,114,110,32,95,100,69,40,95,101,55,44,95,101,56,44,48,46,53,41,59,10,35,101,110,100,105,102,10,125,10,35,105,102,100,101,102,32,95,101,57,10,118,111,105,100,32,95,102,97,40,95,100,74,32,95,67,44,10,95,100,107,
32,95,100,90,44,10,111,117,116,32,95,100,74,32,95,102,98,44,10,111,117,116,32,95,100,74,32,95,102,99,44,10,95,102,100,40,95,102,101,41,41,123,10,95,100,75,32,95,98,68,61,95,100,75,40,95,67,46,120,121,41,59,10,95,102,98,61,95,101,57,40,95,102,101,44,95,98,68,44,48,41,59,10,95,102,99,61,95,101,57,40,95,102,101,44,95,98,68,44,49,41,59,10,125,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","smaa.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,
115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,50,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,59,10,117,110,105,102,111,114,109,32,118,101,99,51,32,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,59,10,117,110,105,
102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,102,102,59,10,118,101,99,52,10,95,102,103,40,105,110,32,118,101,99,50,32,95,67,41,10,123,10,114,101,116,117,114,110,46,50,53,42,40,10,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,45,46,50,53,44,45,46,50,53,41,41,10,43,116,101,120,116,117,114,
101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,46,50,53,44,45,46,50,53,41,41,10,43,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,46,50,53,44,46,50,53,41,41,10,43,116,101,120,116,117,114,101,50,68,40,117,95,105,109,97,103,101,44,95,67,43,117,95,115,97,109,112,108,101,95,105,110,
116,101,114,118,97,108,46,120,121,42,118,101,99,50,40,45,46,50,53,44,46,50,53,41,41,41,59,10,125,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,118,101,99,50,32,95,67,61,95,102,102,42,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,122,119,43,117,95,105,110,112,117,116,95,116,114,97,110,115,102,111,114,109,46,120,121,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,114,61,100,111,116,40,118,101,99,52,40,95,102,103,40,95,67,41,46,114,103,98,44,49,41,44,117,95,99,111,108,
111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,103,61,100,111,116,40,118,101,99,52,40,95,102,103,40,95,67,43,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,98,61,100,111,116,40,118,101,99,52,40,95,102,103,40,95,67,43,118,101,99,50,40,50,46,41,42,117,95,
115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,103,108,95,70,114,97,103,67,111,108,111,114,46,97,61,100,111,116,40,118,101,99,52,40,95,102,103,40,95,67,43,118,101,99,50,40,51,46,41,42,117,95,115,97,109,112,108,101,95,105,110,116,101,114,118,97,108,46,120,122,41,46,114,103,98,44,49,41,44,117,95,99,111,108,111,114,95,116,114,97,110,115,102,111,114,109,91,48,93,41,59,10,
125,10]);e.FS_createDataFile("/build/shader/release","ssr-post-planar-down-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,95,98,106,61,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,122,119,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,
101,99,52,40,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,120,121,44,49,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,118,46,103,108,115,108,34,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,59,10,118,
97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,44,10,95,99,72,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,91,51,93,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,49,10,35,100,101,102,105,110,101,32,95,99,75,32,48,10,35,100,101,102,105,110,101,32,95,99,76,32,117,95,114,116,95,109,101,116,114,105,99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,45,104,46,103,108,115,
108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,95,98,106,61,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,122,119,59,10,95,99,78,40,95,98,106,44,95,99,72,44,95,99,73,41,59,10,103,108,95,80,111,115,105,116,105,111,110,61,118,101,99,52,40,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,120,121,44,48,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","smaa-blend-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,
110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,109,111,100,101,108,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,59,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,111,105,100,10,109,97,105,110,40,41,
123,10,95,98,106,61,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,122,119,59,10,103,108,95,80,111,115,105,116,105,111,110,61,117,95,109,111,100,101,108,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,118,101,99,52,40,97,95,118,101,114,116,101,120,95,116,101,120,95,99,111,111,114,100,46,120,121,44,48,44,49,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","simpleshadow-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,105,102,
100,101,102,32,71,76,95,79,69,83,95,115,116,97,110,100,97,114,100,95,100,101,114,105,118,97,116,105,118,101,115,10,35,101,120,116,101,110,115,105,111,110,32,71,76,95,79,69,83,95,115,116,97,110,100,97,114,100,95,100,101,114,105,118,97,116,105,118,101,115,58,101,110,97,98,108,101,10,35,101,110,100,105,102,10]);e.FS_createDataFile("/build/shader/release","gl-standard-derivatives-h.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,118,101,114,115,105,111,110,32,49,48,48,10,112,114,101,99,105,115,105,111,110,
32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,116,101,120,116,117,114,101,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,116,101,120,116,117,114,101,50,68,40,117,95,116,101,120,116,117,114,101,44,95,98,106,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","post-f.glsl",a,!0,!0,!1);a=
[];a.push.apply(a,[35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,112,114,101,99,105,115,105,111,110,32,104,105,103,104,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,118,97,114,121,105,110,103,32,118,101,99,50,32,95,98,106,59,10,118,97,114,121,105,110,103,32,118,101,99,52,32,95,99,73,59,10,117,110,105,102,111,114,109,32,115,97,109,112,108,101,114,50,68,32,117,95,105,109,97,103,101,44,10,117,95,98,108,
101,110,100,59,10,117,110,105,102,111,114,109,32,118,101,99,52,32,117,95,114,116,95,109,101,116,114,105,99,115,59,10,35,100,101,102,105,110,101,32,95,99,74,32,48,10,35,100,101,102,105,110,101,32,95,99,75,32,49,10,35,100,101,102,105,110,101,32,95,99,76,32,117,95,114,116,95,109,101,116,114,105,99,115,10,35,105,110,99,108,117,100,101,32,34,115,109,97,97,45,104,46,103,108,115,108,34,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,99,81,40,95,98,106,
44,95,99,73,44,117,95,105,109,97,103,101,44,117,95,98,108,101,110,100,41,59,10,125,10]);e.FS_createDataFile("/build/shader/release","smaa-final-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[35,108,97,116,101,115,116,10,35,105,110,99,108,117,100,101,32,34,103,108,45,115,116,97,110,100,97,114,100,45,100,101,114,105,118,97,116,105,118,101,115,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,103,108,45,100,114,97,119,45,98,117,102,102,101,114,115,45,104,46,103,108,115,108,34,10,112,114,
101,99,105,115,105,111,110,32,109,101,100,105,117,109,112,32,102,108,111,97,116,59,10,35,105,110,99,108,117,100,101,32,34,99,111,109,112,97,116,45,102,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,112,114,101,99,105,115,105,111,110,45,104,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,111,112,116,105,111,110,115,34,10,35,105,110,99,108,117,100,101,32,34,117,110,105,102,111,114,109,115,45,102,46,103,108,115,108,34,10,35,105,110,99,108,117,100,101,32,34,99,117,116,116,105,
110,103,45,115,101,99,116,105,111,110,45,104,46,103,108,115,108,34,10,35,105,102,100,101,102,32,84,67,95,69,78,67,79,68,69,95,68,69,80,84,72,10,35,105,110,99,108,117,100,101,32,34,101,110,99,111,100,101,45,102,108,111,97,116,45,104,46,103,108,115,108,34,10,35,101,110,100,105,102,10,118,97,114,121,105,110,103,32,118,101,99,51,32,95,104,44,10,95,105,59,10,118,111,105,100,10,109,97,105,110,40,41,10,123,10,35,105,102,100,101,102,32,84,67,95,67,85,84,84,73,78,71,95,80,76,65,78,69,83,10,105,102,40,95,100,
40,95,104,41,41,10,100,105,115,99,97,114,100,59,10,35,101,110,100,105,102,10,35,105,102,100,101,102,32,84,67,95,69,78,67,79,68,69,95,68,69,80,84,72,10,35,105,102,100,101,102,32,84,67,95,77,82,84,10,35,105,102,32,100,101,102,105,110,101,100,40,84,67,95,70,65,67,69,83,41,10,35,105,110,99,108,117,100,101,32,34,110,111,114,109,97,108,45,104,46,103,108,115,108,34,10,103,108,95,70,114,97,103,68,97,116,97,91,49,93,61,118,101,99,52,40,95,106,42,46,53,43,46,53,44,49,46,41,59,10,35,101,108,115,101,10,103,108,
95,70,114,97,103,68,97,116,97,91,49,93,61,118,101,99,52,40,48,46,41,59,10,35,101,110,100,105,102,10,103,108,95,70,114,97,103,68,97,116,97,91,48,93,61,95,107,40,103,108,95,70,114,97,103,67,111,111,114,100,46,122,41,59,10,35,101,108,115,101,10,103,108,95,70,114,97,103,67,111,108,111,114,61,95,107,40,103,108,95,70,114,97,103,67,111,111,114,100,46,122,41,59,10,35,101,110,100,105,102,10,35,101,110,100,105,102,10,125,10]);e.FS_createDataFile("/build/shader/release","depth-f.glsl",a,!0,!0,!1);a=[];a.push.apply(a,
[35,118,101,114,115,105,111,110,32,49,48,48,10,97,116,116,114,105,98,117,116,101,32,118,101,99,52,32,97,95,118,101,114,116,101,120,59,10,117,110,105,102,111,114,109,32,109,97,116,52,32,117,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,59,10,118,111,105,100,10,109,97,105,110,40,41,123,10,103,108,95,80,111,115,105,116,105,111,110,61,117,95,118,105,101,119,95,112,114,111,106,101,99,116,105,111,110,95,109,97,116,114,105,120,42,97,95,118,101,114,116,101,120,59,
10,125,10]);e.FS_createDataFile("/build/shader/release","solid-v.glsl",a,!0,!0,!1);a=[];a.push.apply(a,[118,101,99,51,10,95,48,40,10,99,111,110,115,116,32,105,110,32,109,97,116,52,32,95,49,44,10,99,111,110,115,116,32,105,110,32,118,101,99,51,32,95,50,41,10,123,10,118,101,99,52,32,114,61,95,49,42,118,101,99,52,40,95,50,44,49,46,41,59,10,114,101,116,117,114,110,32,114,46,120,121,122,47,114,46,119,59,10,125,10,102,108,111,97,116,10,95,51,40,10,99,111,110,115,116,32,105,110,32,109,97,116,52,32,95,49,
44,10,99,111,110,115,116,32,105,110,32,102,108,111,97,116,32,95,52,41,10,123,10,118,101,99,50,32,114,61,95,49,91,50,93,46,122,119,42,40,95,52,42,50,46,45,49,46,41,43,95,49,91,51,93,46,122,119,59,10,114,101,116,117,114,110,32,114,46,120,47,114,46,121,59,10,125,10]);e.FS_createDataFile("/build/shader/release","ndc-to-eye-h.glsl",a,!0,!0,!1)}e.calledRun?a():(e.preRun||(e.preRun=[]),e.preRun.push(a))})({files:[]});
e.$$setReady=function(){e.Hc();e.$$onReady.apply(window,arguments);e.$$onReady=void 0;e.onAbort=void 0};
e.Hc=function(){function a(a){if(!a)return 0;var b=e.$$es.allocateUint8Buffer(8*a.length);if(b)aa.set(a,b>>3);else throw Error("Out of memory.");return b}function b(a){if(!a)return 0;var b=e.$$es.allocateUint8Buffer(4*a.length);if(b)q.set(a,b>>2);else throw Error("Out of memory.");return b}function c(a){if(!a)return 0;var b=e.$$es.allocateUint8Buffer(4*a.length);if(b)ba.set(a,b>>2);else throw Error("Out of memory.");return b}function d(a){if(!a)return 0;var b=e.$$es.allocateUint8Buffer(a.length);
if(b)r.set(a,b);else throw Error("Out of memory.");return b}function f(a){e.$$es.deallocateUint8Buffer(a)}function g(a){return function(){return m(a,arguments)}}function h(){function a(a){return function(){A();R&&t.callRecord.push(a+" "+u(arguments));return l(this,e.$$es[a],arguments)}}function b(){A();this.$$memory=new Uint8Array(e.$$es.sizeof_Camera());l(this,e.$$es.Camera_create,arguments)}var c="reset viewMatrix projectionMatrix fullMatrix projection setProjection upVector setUpVector position setPosition target setTarget nearLimit setNearLimit fieldWidth fieldHeight setField setField setFieldByAngles setFieldByAngles dolly pan roll zoom orbit axisOrbit relativeOrbit unproject".split(" ");
b.prototype={$$stackify:!0};b.copy=function(a){A();var c=Object.create(b.prototype);c.$$memory=new Uint8Array(r.subarray(a,a+e.$$es.sizeof_Camera()));return c};b.clone=function(a){var c=Object.create(b.prototype);c.$$memory=new Uint8Array(a.$$memory);return c};b.assign=function(a,b){a.$$memory.set(b.$$memory)};for(var d=0;d<c.length;d++)b.prototype[c[d]]=a("Camera_"+c[d]);return t.Camera=b}function l(a,b,c){c=Array.prototype.slice.call(c);c.unshift(a);return m(b,c)}function m(a,b){for(var c=!1,d=
0;d<b.length;++d)if(b[d].$$stackify){c=!0;break}if(!c)return a.apply(e,b);c=ca();try{var f=Array.prototype.slice.call(b);for(d=0;d<b.length;d++)if(b[d].$$stackify){var g=da(b[d].$$memory.length);r.set(b[d].$$memory,g);f[d]=g}var l=a.apply(e,f);for(d=0;d<b.length;d++)b[d].$$stackify&&b[d].$$memory.set(r.subarray(f[d],f[d]+b[d].$$memory.length))}finally{ea(c)}return l}function n(a){this.value=a}function p(){t.suspendDrawing();e.h("webgl_context_lost")}function u(){return JSON.stringify(arguments,y)}
function y(a,b){return null!==b&&"object"===typeof b&&b.$$memory?"stackified":b}function A(){if(t!==e.$$facade)throw new ReferenceError("member called after shutdown");}var B="$$cs";e.$$es.initializeLibrary();var t=e.$$facade,I=e.Pb?new e.Pb:void 0;e.bb=I;t.isValid=function(){return t===e.$$facade};var R=!1;t.callRecord=[];t.startRecording=function(){R=!0};t.stopRecording=function(){R=!1};t.logCallRecord=function(){for(var a=t.callRecord,b=0;b<a.length;++b)console.log(a[b])};t.shutDown=function(){A();
R&&t.callRecord.push("shutDown");"$$cs"===B&&e.canvas.removeEventListener("webglcontextlost",p);e.$$es.shutDownLibrary();I&&I.Ld();t.container.innerHTML="";e.$$facade=void 0;e.bb=void 0;e.$$available=!0;e.$$wrapper.innerHTML=""};t.ByMeshInstance=new n(0);t.ByGroup=new n(1);t.ByExpandedGroup=new n(2);(function(){function l(a,b){y([C.Scs]);if(!a)throw new V("InvalidConfig","Invalid load configuration");var c,d;new Promise(function(a,b){c=a;d=b});x=C.Scs;var f=new XMLHttpRequest;f.open("GET",b);f.responseType=
"arraybuffer";f.onload=function(){try{m(a,new Uint8Array(this.response)).then(function(a){c(a)},function(a){d(a)})}catch(Ia){}};"function"===typeof a.XHRonprogress&&(f.onprogress=a.XHRonprogress);"function"===typeof a.XHRonerror&&(f.onerror=a.XHRonerror);if("function"===typeof a.XHRonloadend){var g=a.XHRonloadend;f.onloadend=function(a){g(a,f.status,b)}}f.send()}function m(a,c){y([C.Scs]);if(!a)throw new V("InvalidConfig","Invalid load configuration");if(c.constructor!==Uint8Array)throw new V("InvalidConfig",
"'buffer' must be a Uint8Array");if(0>=c.byteLength)throw new V("EmptyBuffer","'buffer' has a length of 0");var d=a.attachScope,g=a.attachMeasurementUnit,l=a.attachInvisibly,h=a.resolveOnFullyLoaded,m=a.inclusionMatrix;a=0;if(m){if(m.constructor!==Array&&m.constructor!==Float32Array)throw new TypeError("'inclusionMatrix' is not an Array or Float32Array.");if(12!==m.length)throw new TypeError("'inclusionMatrix' needs to have exactly 12 elements.");a=b(m);if(!a)throw Error("Internal logic error.");
}x=C.Scs;var k,n;m=new Promise(function(a,b){k=a;n=function(a){try{Tc(a),b(null)}catch(bg){b(bg)}}});try{var W=e.$$es.allocateUint8Buffer(c.byteLength);r.set(c,W);e.$$es.attachScsBuffer(d,W,c.byteLength,a,g,l,h,k,n)}catch(ag){n(ag)}finally{f(a)}return m}function y(a){if(x!==C.Uninitialized){if(void 0!==a)for(var b=0;b<a.length;++b)if(x===a[b])return;throw new V("AlreadyCalled","load() already called with an incompatible session type");}}function Tc(a){switch(a){case e.LoadResult.WebGLMissing:throw new V("WebGLError",
"WebGL initialization failed");case e.LoadResult.SessionAlreadyStarted:throw new V("AlreadyCalled","load() already called");}}function V(a,b){this.code=a;this.message=b;this.stack=Error().stack}function Zf(a){var b=JSON.parse(fa(a,0));if("rpc"in b){if(a=b.rpc,b=a.length/2,b===Math.floor(b)){for(var c=new Uint8Array(b),f=0;f<b;++f)c[f]=parseInt(a.substr(f+f,2),16);a=c;b=(new DataView(a.buffer)).getUint32(0,!0);c=a[4];a=a.subarray(5);f=d(a);e[B].notifyRpcClientResult(b,c,f,a.length)}}else if("event"in
b)switch(a=b.event,b=b.data,a){case "camera_set":gb=Pd(b);e.h(a);break;case "announce_model":e.h(a,b[0],b[1]);break;case "capping_idle":e.h(a,b[0],b[1]);break;case "inclusion":e.h(a,b[0],b[1],b[2]);break;case "missing_model":e.h(a,b[0],b[1]);break;case "priority_meta_data_sent":e.h(a,b[0],b[1]);break;case "remap_inclusion":e.h(a,b[0],b[1],b[2],b[3]);break;case "remap_model":e.h(a,b[0],b[1],b[2]);break;default:e.h(a,b)}}function $f(a){var b=d(a);e.$$es.parseMetaData(cg,b,a.length)}function Cb(a){a=
JSON.parse(fa(a,0));e.h("post_draw",a.stats,Pd(a.camera));"high"===a.quality&&(e.h("draw_complete"),e.h("draw_idle"))}function Pd(a){var b=new Wa;a=Array.prototype.slice.call(a);switch(a[0]){case 0:a[0]=t.Projection.Perspective;break;case 1:a[0]=t.Projection.Orthographic;break;case 2:a[0]=t.Projection.Stretched}b.reset.apply(b,a);return b}function dg(a){function b(a,b,f,g){if(0>g||g>=b.elementCount)throw new RangeError("invalid element index");var h={vertexCount:l[a][3*g+1],bits:l[a][3*g+2],iterate:function(c){return d(a,
b,f,g,this,c)}};"undefined"!==typeof Symbol&&"undefined"!==typeof Symbol.iterator&&(h[Symbol.iterator]=c);return h}function c(){return this.iterate(!0)}function d(a,b,c,d,A,W){function u(){var a={position:void 0,normal:void 0,UV:void 0,RGBA:void 0};++P;for(var b=0;b<y.length;++b)y[b](a);return a}if("number"===typeof d)var t=c+l[a][3*d],X=A.vertexCount;else t=c,X=b.vertexCount;var B=t+X,P=t,y=[];m?y.push(function(a){var b=[f[N],f[N+1],f[N+2]];a.position=[m[0]*b[0]+m[4]*b[1]+m[8]*b[2]+m[12],m[1]*b[0]+
m[5]*b[1]+m[9]*b[2]+m[13],m[2]*b[0]+m[6]*b[1]+m[10]*b[2]+m[14]]}):y.push(function(a){a.position=[f[N],f[N+1],f[N+2]]});b.hasNormals&&y.push(function(a){var b=N+k;a.normal=[f[b],f[b+1],f[b+2]]});b.hasUVs&&y.push(function(a){var b=N+n;a.UV=[f[b],f[b+1]]});if(b.hasRGBAs){var F=new Uint8Array(f.buffer);y.push(function(a){var b=N+p<<2;a.RGBA=[F[b],F[b+1],F[b+2],F[b+3]]})}if(g){var N=g[P]*h;y.push(function(){N=g[P]*h})}else N=P*h,y.push(function(){N+=h});return{done:function(){return P>=B},next:W?function(){return P<
B?{value:u(),done:!1}:{done:!0}}:function(){if(P<B)return u()},goTo:function(a){0>a?a=0:a>=X&&(a=X);P=t+a;N=g?g[P]*h:P*h}}}var f=a.vertices,g=a.indices,l=a.elements,h=a.stride,m=a.duplicateMatrix,k=a.normalOffset,n=a.UVOffset,p=a.RGBA32Offset,A=a.faceVertexCount,W=A+a.lineVertexCount,u={faces:{vertexCount:a.faceVertexCount,hasNormals:a.faceNormals?!0:!1,hasUVs:a.faceUVs?!0:!1,hasRGBAs:a.faceRGBA32s?!0:!1,elementCount:l[0]?l[0].length/3:0,iterate:function(a){return d(0,this,0,void 0,void 0,a)},element:function(a){return b(0,
this,0,a)}},lines:{vertexCount:a.lineVertexCount,hasNormals:a.lineNormals?!0:!1,hasUVs:a.lineUVs?!0:!1,hasRGBAs:a.lineRGBA32s?!0:!1,elementCount:l[1]?l[1].length/3:0,iterate:function(a){return d(1,this,A,void 0,void 0,a)},element:function(a){return b(1,this,A,a)}},points:{vertexCount:a.pointVertexCount,hasNormals:a.pointNormals?!0:!1,hasUVs:a.pointUVs?!0:!1,hasRGBAs:a.pointRGBA32s?!0:!1,elementCount:l[2]?l[2].length/3:0,iterate:function(a){return d(2,this,W,void 0,void 0,a)},element:function(a){return b(2,
this,W,a)}}};"undefined"!==typeof Symbol&&"undefined"!==typeof Symbol.iterator&&(u.faces[Symbol.iterator]=c,u.lines[Symbol.iterator]=c,u.points[Symbol.iterator]=c);a=a.forward;for(ha in a)a.hasOwnProperty(ha)&&(u[ha]=a[ha]);return u}function cg(a,b,c){var d=O[a];d||(d=O[a]={});d[b]=c;e.h("meta_data",a,b,c)}function Qd(a,b){if("$$cs"===B)return Q.getMetaData(a);D(a);for(var c=[],d=0;d<a.length;d+=2){var f=a[d],g=a[d+1],l=O[f];void 0===(l?l[g]:void 0)&&c.push(f,g)}if(0===c.length){b=[];for(d=0;d<a.length;d+=
2)f=a[d],g=a[d+1],b.push(O[f][g]);return Promise.resolve(b)}return b?Promise.reject(new J("getMetaData",c)):Q.requestMetaData(c).then(function(){A();return Qd(a,!0)})}function Rd(){"$$cs"===B&&e.$$es.disconnectNetwork()}function k(a,b,d){if("function"===typeof d)Sd(a,b,d);else{d=d||0;var f="string"===typeof a?a+"_"+b:b,l;e.$$es[f]?l=e.$$es[f]:l=function(){return e[B][f].apply(e,arguments)};var h=l;d&1&&(h=function(a){return 0==a?e.$$cs[f].apply(e,arguments):l.apply(e,arguments)});var m=h;d&2&&(m=
function(a){"number"===typeof a&&(a=[a]);var b=c(a);if(!b)throw new TypeError("`keys' is not an Array or Uint32Array");var d=Array.prototype.slice.call(arguments,1);d.unshift(b,a.length);return h.apply(e,d)});var k=m;d&4&&(k=function(a){D(a);var b=c(a);if(!b)throw new TypeError("`ids' is not an Array or Uint32Array.");var d=Array.prototype.slice.call(arguments,1);d.unshift(b,a.length>>1);return m.apply(e,d)});var p=k;d&8&&(p=function(a){4===a.length&&"number"===typeof a[0]&&(a=[a]);var b=a,c=e.$$es.allocateUint8Buffer(16*
b.length);if(c)for(var d=0;d<b.length;++d){var f=b[d];if(4!==f.length)throw Error("Planes are expected be exactly 4 floats.");q.set(f,(c>>2)+4*d)}b=Array.prototype.slice.call(arguments,1);b.unshift(c,a.length);return k.apply(e,b)});var W=p;d&16&&(W=g(p));var X=W;d&32&&(X=function(){console.log("WARNING: Using deprecated function `"+("string"===typeof a?a+"."+b:b)+"'");return W.apply(e,arguments)});var y=X;d&64&&(y=function(){var a=arguments,b=a[a.length-1];b.constructor===n?a[a.length-1]=b.value:
(a=Array.prototype.slice.call(a),a.push(0));return X.apply(e,a)});var P=y;d&128&&(P=function(){var a=Array.prototype.slice.call(arguments);return new Promise(function(b,c){a.push(b);a.push(yb(f,c));y.apply(e,a)})});var x=P;d&256&&(x=d&128?function(){return P.apply(e,arguments).then(function(a){A();return Wa.copy(a)})}:function(){return Wa.copy(P.apply(e,arguments))});var I=x;d&512&&(I=d&128?function(){return x.apply(e,arguments).then(Td)}:function(){return Td(x.apply(e,arguments))});var Md=I;d&1024&&
(Md=d&128?function(){return I.apply(e,arguments).then(Ud)}:function(){return Ud(I.apply(e,arguments))});Sd(a,b,function(){A();R&&t.callRecord.push(b+" "+u(arguments));return Md.apply(e,arguments)})}}function Sd(a,b,c){var d="function"===typeof c?function(){A();R&&t.callRecord.push(b+" "+u(arguments));return c.apply(e,arguments)}:c;null===a?t[b]=d:"string"===typeof a?t[a][b]=d:a[b]=d}function Ud(a){for(var b=0;b<a.length;++b)0>a[b][0]&&(a[b]=null);return a}function Td(a){for(var b=0;b<a.length;++b)0>
a[b]&&(a[b]=null);return a}function yb(a,b){return function(c){b(new J(a,c))}}function J(a,b){this.scFunction=a;this.data=b}function D(a){if(0!==(a.length&1))throw new TypeError("`ids.length' must be divisible by two. (An Id is a pair of keys.)");}t.AntiAliasingMode=e.AntiAliasingMode;t.BlurIntervalUnit=e.BlurIntervalUnit;t.CreateImageError=e.CreateImageError;t.CreateMeshInstanceErrorType=e.CreateMeshInstanceErrorType;t.CullingVectorSpace=e.CullingVectorSpace;t.CuttingSectionError=e.CuttingSectionError;
t.DrawMode=e.DrawMode;t.ElementType=e.ElementType;t.HighlightFilter=e.HighlightFilter;t.HighlightMode=e.HighlightMode;t.ImageFormat=e.ImageFormat;t.LightSpace=e.LightSpace;t.LightType=e.LightType;t.LinePatternLengthUnit=e.LinePatternLengthUnit;t.MeshDataGetDataError=e.MeshDataGetDataError;t.MeshDataReplaceError=e.MeshDataReplaceError;t.PointShape=e.PointShape;t.PointSizeUnit=e.PointSizeUnit;t.Projection=e.Projection;t.SetMatrixErrorType=e.SetMatrixErrorType;t.SetTextureErrorType=e.SetTextureErrorType;
t.SmaaQuality=e.SmaaQuality;t.StateFailure=e.StateFailure;t.TextureInterpolation=e.TextureInterpolation;t.TextureMipMapping=e.TextureMipMapping;t.TextureModifier=e.TextureModifier;t.TextureParameterization=e.TextureParameterization;t.TextureTiling=e.TextureTiling;t.TransparencyMode=e.TransparencyMode;t.XRayGroup=e.XRayGroup;var Wa=h();J.prototype.toString=function(){return this.scFunction+": "+this.data};var Q={},O={},zb=new Uint8Array(0),gb=new Wa;k(null,"addCuttingSection",136);k(null,"addLight");
k(null,"advanceVolumeSelection",128);k(null,"attachModels",function(b,c,g,l){for(var h=[],m=[],k=0;k<c.length;++k){var n=c[k];if(2!==n.length)throw new TypeError("Expecting [name, matrix] pair.");var p=n[0];if("string"!==typeof p)throw new TypeError("Name is not a string.");n=n[1];if(n.constructor!==Array&&n.constructor!==Float64Array)throw new TypeError("Matrix is not an Array or Float64Array.");if(12!==n.length)throw new TypeError("Inclusion matrix needs to have exactly 12 elements.");p=unescape(encodeURIComponent(p));
for(var A=0;A<p.length;++A)h.push(p.charCodeAt(A));h.push(0);Array.prototype.push.apply(m,n)}var u=0,t=0;u=d(h);if(!u)throw f(u),f(t),Error("Internal logic error.");t=a(m);if(!t)throw f(u),f(t),Error("Internal logic error.");return new Promise(function(a,c){e[B].attachModels(u,h.length,t,m.length,b,g,l,a,yb("attachModels",c))})});k(null,"attachScsModelByKey",function(b,c,d,g,l){var h=[];if(c.constructor!==Array&&c.constructor!==Float64Array)throw new TypeError("Matrix is not an Array or Float64Array.");
if(12!==c.length)throw new TypeError("Inclusion matrix needs to have exactly 12 elements.");Array.prototype.push.apply(h,c);c=a(h);if(!c)throw f(c),Error("Internal logic error.");return e.$$es.attachScsModelByKey(c,h.length,b,d,g,l)});k(null,"beginConvexPolyhedronSelection",136);k(null,"beginRayDrillSelection",128);k(null,"beginScreenAreaSelection",128);k(null,"beginSphereSelection",128);k(null,"clearLights");k(null,"cuttingSectionLimits");k(null,"debug_log",function(a){a=unescape(encodeURIComponent(a));
for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));b.push(0);var f=d(b);if(!f)throw Error("Internal logic error.");return new Promise(function(a,c){e[B].debug_log(f,b.length,a,c)})});k(null,"debug_stateFailure",128);k(null,"debug_sync",128);k(null,"demandMeshInstances",68);k(null,"detachInclusions",130);k(null,"disableCapping");k(null,"disconnectNetwork",Rd);k(null,"enableCapping",128);k(null,"endComparison");k(null,"endVolumeSelection");k(null,"explode");k(null,"exportToSvg",128);k(null,"flushMetaDataCache",
function(){"$$ss"===B&&(O={})});k(null,"getAmbientOcclusionEnabled",128);k(null,"getAmbientOcclusionRadius",128);k(null,"getBackFacesVisible",128);k(null,"getBackgroundGradient",128);k(null,"getCamera",function(){return"$$ss"===B?Wa.clone(gb):Q.getCamera()});k(null,"getCameraPromise",384);k(null,"getCuttingSections",130);k(null,"getDefaultDepthRange",128);k(null,"getElementCount",128);k(null,"getEyeDomeLightingBlurEdgeDistance",128);k(null,"getEyeDomeLightingBlurInterval",128);k(null,"getEyeDomeLightingBlurSamples",
128);k(null,"getEyeDomeLightingEnabled",128);k(null,"getEyeDomeLightingOpacity",128);k(null,"getEyeDomeLightingShadingEdgeDistance",128);k(null,"getFacesVisible",128);k(null,"getFaceWindingFlipped",128);k(null,"getFrontFacesVisible",128);k(null,"getLinesVisible",128);k(null,"getMetaData",Qd);k(null,"getMinFrameRate",128);k(null,"getNetworkVersion");k(null,"getPointShape",128);k(null,"getPointSize",128);k(null,"getPointSizeUnit",128);k(null,"getPointsVisible",128);k(null,"getStatistics",128);k(null,
"getStreamedBounding",128);k(null,"getStreamVersion");k(null,"getTriangleCount",128);k(null,"markAllMeshInstancesInteresting");k(null,"meshInstanceKeyInfo",129);k(null,"metaDataKeyInfo",129);k(null,"modelKeysFromInclusionKeys",130);k(null,"onResize",function(){var a=t.allowHighDpi?window.devicePixelRatio||1:1,b=t.container,c=b.clientWidth,d=b.clientHeight;b=c*a;a*=d;if("$$ss"===B)I.Cd(b,a,c,d);else{var f=e.$$es.maxFrameBufferSize();if(0>=f)b=c,a=d;else{if(b>f||a>f)b=c,a=d;if(b>f||a>f)b>a?(a=a/b*f,
b=f):(b=b/a*f,a=f)}}e.$$cs.setScreenDimensions(b,a,c,d);"$$cs"===B&&(c=e.canvas,c.width=b,c.height=a,t.queueRedraw())});k(null,"pauseCapping");k(null,"primaryModelKey",128);k(null,"queueRedraw");k(null,"registerBimInstances",4);k(null,"removeAllCuttingSections");k(null,"removeCuttingSections",130);k(null,"replaceCuttingSection",136);k(null,"requestGroups",132);k(null,"requestImages",132);k(null,"requestMaterials",132);k(null,"requestMeshInstances",132);k(null,"requestMeshInstancesByGroup",132);k(null,
"resetExplode");k(null,"resetToEmpty",function(a,b){var d=c(b);if(!d)throw new TypeError("`meshKeys' is not an Array or Uint32Array");return Q.resetToEmpty(a,d,b.length)});k(null,"resumeCapping");k(null,"resumeDrawing");k(null,"screenSelectByRay",128);k(null,"serverSideRendering",function(){return"$$ss"===B});k(null,"setAmbientLightColor");k(null,"setAmbientOcclusionBias");k(null,"setAmbientOcclusionBlurInterval");k(null,"setAmbientOcclusionBlurSamples");k(null,"setAmbientOcclusionContrast");k(null,
"setAmbientOcclusionEdgeDistance");k(null,"setAmbientOcclusionEnabled");k(null,"setAmbientOcclusionIntensity");k(null,"setAmbientOcclusionNoiseSize");k(null,"setAmbientOcclusionOpacity");k(null,"setAmbientOcclusionRadius");k(null,"setAmbientOcclusionSamples");k(null,"setAntiAliasingMode");k(null,"setBackFacesVisible");k(null,"setBackgroundColor");k(null,"setBackgroundGradient");k(null,"setBloomBlurInterval");k(null,"setBloomBlurSamples");k(null,"setBloomEnabled");k(null,"setBloomIntensity");k(null,
"setBloomIntensityScale");k(null,"setBloomLayerCount");k(null,"setBloomThreshold");k(null,"setBloomThresholdRampWidth");k(null,"setBoundingPreviewColor");k(null,"setCamera",function(a){Wa.assign(gb,a);Q.setCamera(a)});k(null,"setCappingIdleHookEnabled",128);k(null,"setComparisonColors");k(null,"setCurrentView");k(null,"setDefaultDepthRange");k(null,"setDefaultGloss");k(null,"setDefaultMirror");k(null,"setDefaultSpecularMix");k(null,"setDefaultSphereMap");k(null,"setDisplayIncompleteFrames");k(null,
"setDrawIdleDelay");k(null,"setDrawMode");k(null,"setEyeDomeLightingBlurEdgeDistance");k(null,"setEyeDomeLightingBlurInterval");k(null,"setEyeDomeLightingBlurSamples");k(null,"setEyeDomeLightingEnabled");k(null,"setEyeDomeLightingOpacity");k(null,"setEyeDomeLightingShadingEdgeDistance");k(null,"setFacesVisible");k(null,"setFaceWindingFlipped");k(null,"setFrontFacesVisible");k(null,"setGroundPlane");k(null,"setGroundPlaneWithPosition");k(null,"setHiddenLineHiddenLineColor");k(null,"setHiddenLineHighlightedElementFillColor");
k(null,"setHiddenLineHighlightedElementOutlineColor");k(null,"setHiddenLineHighlightedInstanceFillColor");k(null,"setHiddenLineHighlightedInstanceOutlineColor");k(null,"setHiddenLineVisibleLineColor");k(null,"setHighlightColorizeCompression");k(null,"setHighlightedElementColor");k(null,"setHighlightedElementFilter");k(null,"setHighlightedElementOutlineColor");k(null,"setHighlightedInstanceColor");k(null,"setHighlightedInstanceFilter");k(null,"setHighlightedInstanceOutlineColor");k(null,"setHighlightMode");
k(null,"setInteractiveLimitIncreaseInterval");k(null,"setLightingEnabled");k(null,"setLinesVisible");k(null,"setMeshLevel");k(null,"setMinDrawLimit");k(null,"setMinFrameRate");k(null,"setMinIncrementalFrameRate");k(null,"setMinInteractiveFrameRate");k(null,"setPointShape");k(null,"setPointSize");k(null,"setPointsVisible");k(null,"setPostInputDelay");k(null,"setSilhouetteColor");k(null,"setSilhouetteEnabled");k(null,"setSilhouetteOpacity");k(null,"setSilhouetteThreshold");k(null,"setSilhouetteThresholdRampWidth");
k(null,"setSimpleReflectionAttenuation");k(null,"setSimpleReflectionBlurInterval");k(null,"setSimpleReflectionBlurSamples");k(null,"setSimpleReflectionEnabled");k(null,"setSimpleReflectionFadeAngle");k(null,"setSimpleReflectionOpacity");k(null,"setSimpleShadowBlurInterval");k(null,"setSimpleShadowBlurSamples");k(null,"setSimpleShadowColor");k(null,"setSimpleShadowEnabled");k(null,"setSimpleShadowInteractiveUpdateEnabled");k(null,"setSimpleShadowOpacity");k(null,"setSimpleShadowResolution");k(null,
"setSmaaQuality");k(null,"setSsrQuality",function(a){I.Jd(a)});k(null,"setStreamCutoffScale");k(null,"setStreamIdleMarker",128);k(null,"setTransparencyMode");k(null,"setUnhighlightedColor");k(null,"setUnhighlightedFilter");k(null,"setVisibilityByAttachment");k(null,"setXRayMaterial",128);k(null,"setXRayOpacity");k(null,"setXRayTransparencyMode");k(null,"startComparison",function(a,b){D(a);D(b);var d=c(a);if(!d)throw new TypeError("`instanceSet1' is not an Array or Uint32Array.");var f=c(b);if(!f)throw new TypeError("`instanceSet2' is not an Array or Uint32Array.");
return e[B].startComparison(d,a.length>>1,f,b.length>>1)});k(null,"startExplode",4);k(null,"suspendDrawing");k(null,"triangulatePolygon",function(a,c){if(3>a.length)throw new TypeError("'polygonPoints' does not describe a polygon.");var d=b(a);if(!d)throw Error("Internal logic error.");return e.$$es.triangulatePolygon(d,a.length,c)});k(null,"truncateMetaData",function(a){if("$$cs"===B)return Q.truncateMetaData(a);for(var b=0;b<a.length;b+=2){var c=a[b+1],d=O[a[b]];d&&(d[c]=zb)}});k(null,"unsetAllColors");
k(null,"unsetAllHighlighted");k(null,"unsetAllOpacity");k(null,"unsetAllXRay");k(null,"unsetCurrentView");k(null,"unsetXRayMaterial");k(null,"waitForImageDecoding",128);k(null,"worldSelectByRay",128);k(null,"_loseWebGlContext",function(){var a=e.ha.getExtension("WEBGL_lose_context");return null!==a?(a.loseContext(),!0):!1});k(Q,"getCamera",256);k(Q,"getMetaData",132);k(Q,"MeshData_getData",128);k(Q,"MeshInstance_setLinePattern",68);k(Q,"requestMetaData",132);k(Q,"resetToEmpty",130);k(Q,"setCamera",
16);k(Q,"truncateMetaData",132);t.Image={};k("Image","create",function(a,b,c,f,g,l,h,m){var k=d(b);if(!k)throw Error("Internal logic error.");var n=d(l);return new Promise(function(d,p){e[B].Image_create(k,b.length,n,l?l.length:0,a,c?c:0,f?f:0,g?g:0,h?h:0,m?m:0,d,yb("Image_create",p))})});k("Image","destroy",132);t.Material={};k("Material","create",128);k("Material","destroy",132);k("Material","getAggregateProperties",132);k("Material","getDiffuseColor",132);k("Material","getEmissionColor",132);k("Material",
"setDiffuseColor",132);k("Material","setEmissionColor",132);t.Matrix={};k("Matrix","create",128);k("Matrix","destroy",132);k("Matrix","getElements",132);k("Matrix","setElements",132);t.MeshData={};k("MeshData","create",function(a){return new Promise(function(b,c){var d=a._marshal();e[B].MeshData_create(d.bits,d.totalFaceVertices,d.totalLineVertices,d.totalPointVertices,d.floatDataPtr,d.floatDataPtrLen,d.faceElementInfosPtr,ia*a._faceElements.length,d.lineElementInfosPtr,ia*a._lineElements.length,
d.pointElementInfosPtr,ia*a._pointElements.length,b,yb("MeshData_create",c))})});k("MeshData","destroy",132);k("MeshData","getData",function(a){return Q.MeshData_getData(a).then(dg)});k("MeshData","lineElementSegments",128);k("MeshData","linesToIncidentFaces",130);k("MeshData","replace",function(a,b){return new Promise(function(c,d){var f=b._marshal();e[B].MeshData_replace(a[0],a[1],f.bits,f.totalFaceVertices,f.totalLineVertices,f.totalPointVertices,f.floatDataPtr,f.floatDataPtrLen,f.faceElementInfosPtr,
ia*b._faceElements.length,f.lineElementInfosPtr,ia*b._lineElements.length,f.pointElementInfosPtr,ia*b._pointElements.length,c,yb("MeshData_replace",d))})});t.MeshInstance={CreateFlags:{None:0,SuppressCameraScale:1,ScreenOriented:2,DoNotCut:4,DoNotExplode:8,DoNotSelect:16,DoNotLight:32,DoNotOutlineHighlight:64,ExcludeBounding:128,DoNotUseVertexColors:256,Invisible:512,DoNotXRay:1024,AlwaysDraw:2048,OverrideSceneVisibility:4096}};k("MeshInstance","clearAllElementHighlight",68);k("MeshInstance","clearElementColors",
68);k("MeshInstance","clearElementHighlight",68);k("MeshInstance","computeMinimalBodyBodyDistance",128);k("MeshInstance","computeMinimalFaceFaceDistance",128);k("MeshInstance","computeMinimalFaceLineDistance",128);k("MeshInstance","computeMinimalFaceRayDistance",128);k("MeshInstance","create",128);k("MeshInstance","destroy",196);k("MeshInstance","discardAnonymousMatrix",196);k("MeshInstance","getAlwaysDraw",196);k("MeshInstance","getColor",1220);k("MeshInstance","getCullingVector",196);k("MeshInstance",
"getDoNotCut",196);k("MeshInstance","getDoNotExplode",196);k("MeshInstance","getDoNotLight",196);k("MeshInstance","getDoNotOutlineHighlight",196);k("MeshInstance","getDoNotSelect",196);k("MeshInstance","getDoNotUseVertexColors",196);k("MeshInstance","getDrawnWorldSpaceBounding",132);k("MeshInstance","getEffectiveColor",196);k("MeshInstance","getEffectiveElementColor",196);k("MeshInstance","getEffectiveOpacity",196);k("MeshInstance","getElementColor",1220);k("MeshInstance","getElementHighlighted",
196);k("MeshInstance","getExcludeBounding",196);k("MeshInstance","getFaceElementBounding",130);k("MeshInstance","getFacesVisible",196);k("MeshInstance","getHighlighted",196);k("MeshInstance","getLayerCount");k("MeshInstance","getLineElementBounding",130);k("MeshInstance","getLinesVisible",196);k("MeshInstance","getMatrix",196);k("MeshInstance","getMeshData",196);k("MeshInstance","getObjectSpaceBounding",196);k("MeshInstance","getOpacity",708);k("MeshInstance","getOverrideSceneVisibility",196);k("MeshInstance",
"getPointElementBounding",130);k("MeshInstance","getPointsVisible",196);k("MeshInstance","getScreenOriented",196);k("MeshInstance","getSuppressCameraScale",196);k("MeshInstance","getWorldSpaceBounding",132);k("MeshInstance","hasDepthRange",196);k("MeshInstance","hasTransparency",196);k("MeshInstance","linesToIncidentFaces",130);k("MeshInstance","matrixPreMultiply",196);k("MeshInstance","reifyAnonymousMatrix",196);k("MeshInstance","setAlwaysDraw",68);k("MeshInstance","setAnonymousMatrix",196);k("MeshInstance",
"setColor",68);k("MeshInstance","setCullingVector",68);k("MeshInstance","setDepthRange",68);k("MeshInstance","setDoNotCut",68);k("MeshInstance","setDoNotExplode",68);k("MeshInstance","setDoNotLight",68);k("MeshInstance","setDoNotOutlineHighlight",68);k("MeshInstance","setDoNotSelect",68);k("MeshInstance","setDoNotUseVertexColors",68);k("MeshInstance","setDoNotXRay",68);k("MeshInstance","setElementColor",68);k("MeshInstance","setElementHighlighted",68);k("MeshInstance","setExcludeBounding",68);k("MeshInstance",
"setFacesVisible",68);k("MeshInstance","setHighlighted",68);k("MeshInstance","setLinePattern",function(a,b,c,f){var g=d(b);if(!g)throw new TypeError("`pattern' is not an Array or Uint8Array");return Q.MeshInstance_setLinePattern(a,g,b.length,c,f)});k("MeshInstance","setLinesVisible",68);k("MeshInstance","setMatrix",196);k("MeshInstance","setMeshLevel",68);k("MeshInstance","setOpacity",68);k("MeshInstance","setOverlayIndex",68);k("MeshInstance","setOverrideSceneVisibility",68);k("MeshInstance","setPointsVisible",
68);k("MeshInstance","setScreenOriented",68);k("MeshInstance","setStreamCutoffScale",68);k("MeshInstance","setSuppressCameraScale",68);k("MeshInstance","setTexture",196);k("MeshInstance","setVisible",68);k("MeshInstance","setXRay",68);k("MeshInstance","unsetColor",68);k("MeshInstance","unsetCullingVector",68);k("MeshInstance","unsetDepthRange",68);k("MeshInstance","unsetElementColor",68);k("MeshInstance","unsetLinePattern",68);k("MeshInstance","unsetMatrix",196);k("MeshInstance","unsetOpacity",68);
k("MeshInstance","unsetTexture",68);t.Overlay={Unit:e.OverlayUnit,Anchor:e.OverlayAnchor};k("Overlay","destroy");k("Overlay","maxIndex");k("Overlay","setCamera",16);k("Overlay","setViewport");k("Overlay","setVisible");var Ab={open_model_failed:Rd,session_started:function(){"$$cs"===B&&(e.canvas.addEventListener("webglcontextlost",p,!1),t.onResize())}},Bb={session_started:function(){"$$ss"===B&&(t.resumeDrawing(),e[B].debug_notifyLoggedRpcExecutionIsAllowed())}},L={};e.h=function(a){if(a in Ab){var b=
Ab[a];b.apply(this,arguments)}var c=L[a];try{if(void 0!==c)for(var d=0;d<c.length;d++)b=c[d],"function"===typeof b&&b.apply(this,arguments)}catch(F){console.log("Unhandled exception in "+a+" event handler:"),console.log(F)}a in Bb&&(b=Bb[a],b.apply(this,arguments))};t.setEventHandler=function(a,b){L.hasOwnProperty(a)||(L[a]=[]);L[a].push(b)};t.unsetEventHandler=function(a,b){a=L[a];if(void 0!==a)for(var c=0;c<a.length;)a[c]===b?a.splice(c,1):++c};e.Gc=Wa.copy;V.prototype=Object.create(Error.prototype);
V.prototype.constructor=V;var C={Uninitialized:0,Network:1,Scs:2};t.SessionType=C;var x=C.Uninitialized;t.load=function(a){A();R&&t.callRecord.push("load "+u(a));if(!a)throw new V("InvalidConfig","Invalid load configuration");var b=a.uri;if(1!==!!b+!!a.buffer+!!a.empty)throw new V("InvalidConfig","Must specify exactly one of 'uri', 'buffer', or 'empty'.");if(b){if("string"!==typeof b)throw new V("InvalidConfig","'uri' must be a string");var c=b.split("://");if(2>c.length)c[0]="http",c[1]=b;else if(2<
c.length)throw new V("InvalidConfig","Invalid URI");c=c[0];if("ws"===c||"wss"===c){y();if(!a)throw new V("InvalidConfig","Invalid load configuration");a.model&&"string"===typeof a.model||(a.model="");c=a.sessionToken;void 0===c&&(c="");if("string"!==typeof c)throw new V("InvalidConfig","'sessionToken' must be a string");var d=a.limitMiB;void 0===d&&(d=0);if("number"!==typeof d)throw new V("InvalidConfig","'limitMiB' must be a number");var f=a.meshLevel;void 0===f&&(f=0);if("number"!==typeof f)throw new V("InvalidConfig",
"'meshLevel' must be a number");var g=a.streamCutoffScale;void 0===g&&(g=-1);if("number"!==typeof g)throw new V("InvalidConfig","'streamCutoffScale' must be a number");if(x!==C.Uninitialized)throw new V("AlreadyCalled","load() already called for a non-streaming session");x=C.Network;a.serverSideRendering?(e.canvas.style.display="none",B="$$ss",I.ba(e.$$wrapper),t.onResize(),I.Hd(Zf),I.Id($f),I.Fd(Cb),I.Ed(e.h),I.connect(a)):(B="$$cs",Tc(e.$$es.loadNetwork(b,unescape(encodeURIComponent(a.model)),unescape(encodeURIComponent(c)),
!!a.streamCulled,!!a.streamMetaDataOnIdle,!!a.streamNoLimit,!!a.streamInstancesOnDemand,!!a.streamAggressiveCompression,!!a.streamModelBoundingPreviews,!!a.streamInstanceBoundingPreviews,!!a.streamOnlyInterestingBoundingPreviews,!!a.streamEjectedBoundingPreviews,d,f,g)))}else"http"!==c&&"https"!==c||l(a,b)}else a.buffer?m(a,a.buffer):(y([C.Scs]),x=C.Scs,a=e.$$es.loadEmptyScs(),Tc(a));return x};t.attachScsBuffer=function(a,b,c,d,f,g){return m({attachScope:a,inclusionMatrix:c,attachMeasurementUnit:d,
attachInvisibly:f,resolveOnFullyLoaded:g},b)}})();var ia=3,Cb=4*ia;t.MeshDataBuilder=function(){this._faceElements=[];this._lineElements=[];this._pointElements=[];this.formatBits=0};t.MeshDataBuilder.FormatBits={ClockwiseWinding:1,CounterClockwiseWinding:2,TwoSided:4,Manifold:65536};t.MeshDataBuilder.prototype={constructor:t.MeshDataBuilder,_getOptional:function(a,b){return void 0===a?null:a[b]?a[b]:null},_optionalGuard:function(a,b,c){if(c){if((c=this[c][0])&&!c[a])throw Error("Cannot define "+b+
" for some but not all vertices.");}else this._optionalGuard(a,b,"_faceElements"),this._optionalGuard(a,b,"_lineElements"),this._optionalGuard(a,b,"_pointElements")},addFace:function(a,b){var c=this._faceElements,d=this._getOptional(b,"normals"),f=this._getOptional(b,"uvs"),g=this._getOptional(b,"rgba32s");b=this._getOptional(b,"bits")||0;if(0!==a.length%9)throw Error("Illegal triangles: 'vertexData.length' must be divisible by 9 (i.e. 3 numbers per vertex and 3 vertices per triangle).");if(d){if(d.length!==
a.length)throw Error("Cannot define normals for some but not all vertices.");this._optionalGuard("normals","normals","_faceElements")}if(f){if(3*f.length!==2*a.length)throw Error("Cannot define UV parameters for some but not all vertices.");this._optionalGuard("uvs","UV parameters","_faceElements")}if(g){if(3*g.length!==4*a.length)throw Error("Cannot define RGBA32s for some but not all vertices.");this._optionalGuard("rgba32s","RGBA32s");if(0==(this.formatBits&32768))for(var l=3;l<g.length;l+=4)if(255!=
g[l]){this.formatBits|=32768;break}}c.push({vertexData:a,normals:d,uvs:f,rgba32s:g,bits:b})},addPolyline:function(a,b){var c=this._lineElements,d=this._getOptional(b,"rgba32s");b=this._getOptional(b,"bits")||0;if(0!==a.length%3)throw Error("vertexData array must be divisible by 3 (i.e. 3 numbers per vertex).");if(6>a.length&&0<a.length)throw Error("Illegal polyline: '0 < vertexData.length < 6'.");if(d){if(3*d.length!==4*a.length)throw Error("Cannot define RGBA32s for some but not all vertices.");
this._optionalGuard("rgba32s","RGBA32s")}c.push({vertexData:a,rgba32s:d,bits:b})},addPoints:function(a,b){var c=this._pointElements,d=this._getOptional(b,"rgba32s");b=this._getOptional(b,"bits")||0;if(0!==a.length%3)throw Error("vertexData array must be divisible by 3 (i.e. 3 numbers per vertex).");if(d){if(3*d.length!==4*a.length)throw Error("Cannot define RGBA32s for some but not all vertices.");this._optionalGuard("rgba32s","RGBA32s")}c.push({vertexData:a,rgba32s:d,bits:b})},_marshal:function(){var a=
this._faceElements,b=this._lineElements,c=this._pointElements,d=!1,f=!1,g=!1,l=!1,h=!1,m=!1,n=!1,p=!1,A=!1,u=a[0],k=b[0],t=c[0];u&&(d=!!u.normals,f=!!u.uvs,g=!!u.rgba32s);k&&(l=!!k.normals,h=!!k.uvs,m=!!k.rgba32s);t&&(n=!!t.normals,p=!!t.uvs,A=!!t.rgba32s);var B=3;u=this.formatBits;if(k=d||l||n)B+=3,u|=4096,d&&(u|=8),l&&(u|=64),n&&(u|=512);if(t=f||h||p)B+=2,u|=8192,f&&(u|=16),h&&(u|=128),p&&(u|=1024);var y=g||m||A;y&&(B+=1,u|=16384,g&&(u|=32),m&&(u|=256),A&&(u|=2048));for(var I=0,J=0;J<a.length;++J){var D=
a[J];I+=D.vertexData.length}I/=3;var R=0,Q=0;for(J=0;J<b.length;++J){D=b[J];var O=D.vertexData;O.length&&(R+=O.length,++Q)}R=2*(R/3-Q);for(J=Q=0;J<c.length;++J)D=c[J],Q+=D.vertexData.length;Q/=3;B*=I+R+Q;J=e.$$es.allocateUint8Buffer;var zb=J(4*B),gb=a.length?J(Cb*a.length):0,Ab=b.length?J(Cb*b.length):0,Bb=c.length?J(Cb*c.length):0,L=r.subarray(zb),C=q.subarray(zb>>2),x=0,W=0;for(J=0;J<a.length;++J){D=a[J];O=D.vertexData;var X=D.normals,P=D.uvs,N=D.rgba32s,F=O.length/3,H=ba.subarray((gb>>2)+ia*J);
H[0]=W;H[1]=F;H[2]=D.bits;W+=F;var Ia=0;for(F=D=0;F<O.length;F+=3)C[x]=O[F],C[x+1]=O[F+1],C[x+2]=O[F+2],x+=3,k&&(d?(C[x]=X[F],C[x+1]=X[F+1],C[x+2]=X[F+2]):(C[x]=0,C[x+1]=0,C[x+2]=0),x+=3),t&&(f?(C[x]=P[Ia],C[x+1]=P[Ia+1],Ia+=2):(C[x]=0,C[x+1]=0),x+=2),y&&(H=x<<2,g?(L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++]):(L[H++]=0,L[H++]=0,L[H++]=0,L[H++]=0),++x)}for(J=W=0;J<b.length;++J)for(D=b[J],O=D.vertexData,X=D.normals,P=D.uvs,N=D.rgba32s,F=O.length/3,0<F&&(F=2*F-2),H=ba.subarray((Ab>>2)+ia*
J),H[0]=W,H[1]=F,H[2]=D.bits,W+=F,D=4,F=3;F<O.length;F+=3)for(D-=4,a=-3;0>=a;a+=3)d=F+a,C[x]=O[d],C[x+1]=O[d+1],C[x+2]=O[d+2],x+=3,k&&(l?(C[x]=X[d],C[x+1]=X[d+1],C[x+2]=X[d+2]):(C[x]=0,C[x+1]=0,C[x+2]=0),x+=3),t&&(h?(d=d/3*2,C[x]=P[d],C[x+1]=P[d+1]):(C[x]=0,C[x+1]=0),x+=2),y&&(H=x<<2,m?(L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++]):(L[H++]=0,L[H++]=0,L[H++]=0,L[H++]=0),++x);for(J=W=0;J<c.length;++J)for(D=c[J],O=D.vertexData,X=D.normals,P=D.uvs,N=D.rgba32s,F=O.length/3,H=ba.subarray((Bb>>
2)+ia*J),H[0]=W,H[1]=F,H[2]=D.bits,W+=F,F=D=Ia=0;F<O.length;F+=3)C[x]=O[F],C[x+1]=O[F+1],C[x+2]=O[F+2],x+=3,k&&(n?(C[x]=X[F],C[x+1]=X[F+1],C[x+2]=X[F+2]):(C[x]=0,C[x+1]=0,C[x+2]=0),x+=3),t&&(p?(C[x]=P[Ia],C[x+1]=P[Ia+1],Ia+=2):(C[x]=0,C[x+1]=0),x+=2),y&&(H=x<<2,A?(L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++],L[H++]=N[D++]):(L[H++]=0,L[H++]=0,L[H++]=0,L[H++]=0),++x);return{totalFaceVertices:I,totalLineVertices:R,totalPointVertices:Q,faceElementInfosPtr:gb,lineElementInfosPtr:Ab,pointElementInfosPtr:Bb,
floatDataPtr:zb,floatDataPtrLen:B,bits:u}}}};
e.Pb=function(){var a=e.broadway,b={O:[],L:function(a){console.log(a);if("undefined"!==typeof d.va){if(20<b.O.length){for(var c=1;c<b.O.length;c++)b.O[c-1]=b.O[c];b.O[b.O.length-1]=a}else b.O.push(a);d.va.innerHTML="";for(c=0;c<b.O.length;c++)d.va.innerHTML+=b.O[c],d.va.innerHTML+="<br />"}},getInt32:function(a){return a[0]|a[1]<<8|a[2]<<16|a[3]<<24},setInt32:function(a,b){a[0]=(b&4278190080)>>24;a[1]=(b&16711680)>>16;a[2]=(b&65280)>>8;a[3]=b&255},kg:function(a){var b=0|a[0]<<56;b|=a[1]<<48;b|=a[2]<<
40;b|=a[3]<<32;b|=a[4]<<24;b|=a[5]<<16;b|=a[6]<<8;return b|=a[7]},Gd:function(a,b){a[0]=(b&1.8374686479671624E19)>>56;a[1]=(b&0xff000000000000)>>48;a[2]=(b&0xff0000000000)>>40;a[3]=(b&68451041280)>>32;a[4]=(b&4278190080)>>24;a[5]=(b&16711680)>>16;a[6]=(b&65280)>>8;a[7]=b&255},W:function(a){for(var b=a.jb,c=a.Zb,d=a.Xb,f=b[c],g=0,l=a.ea,h=0;h<l;h++)g|=(f>>8-d-1&1)<<l-h-1,++d,8<=d&&(++c,d=0,f-b[c]);return{jb:a.jb,result:g,Zb:c,Xb:d,ea:l}},H:function(a){a.ea=1;var b=a;for(a=0;32>a&&(b=this.W(b),!b.result);a++);
b.ea=a;b=this.W(b);b.result|=1<<a;--b.result;return b}},c={Bc:!1,Od:!1,Sc:function(){this.Bc="undefined"!==typeof window.MediaSource;this.Od="undefined"!==typeof Worker}},d={Ma:null,Ga:null,connection:null,mb:"jpeg",Oa:1280,Na:800,Va:1280,Ua:800,pa:1,ua:0,lg:0,ka:[],ia:[],yc:{command:"SERVER_SETTINGS"},Wb:0,Pc:0,ba:function(a){this.Ma=a;c.Sc();this.jd()},Ld:function(){this.ub=!0;delete this.vb;delete this.Cb;delete this.pb;delete this.nb;this.connection&&this.connection.close()},hb:function(a){d.Ga!==
a&&(d.Ga&&(d.Ga.style.display="none"),d.Ga=a,d.Ga.style.display="")},connected:function(){return d.connection&&d.connection.readyState===WebSocket.OPEN},Zf:function(a){10<=d.ia.length&&d.ia.shift();d.ia.push(a);for(var b=a=0;b<d.ia.length;b++)a+=d.ia[b];a/=d.ia.length;.1<=Math.abs(d.Wb-a)&&d.connection.send('{"command":"SERVER_SIDE_CLIENT_INFO", "avg_elapsed":'+a+"}");d.Wb=a},Tc:function(a){10<=d.ka.length&&d.ka.shift();d.ka.push(a);for(var b=a=0;b<d.ka.length;b++)a+=d.ka[b];a/=d.ka.length;d.Pc=a},
Za:function(){if(!d.ub){var a=new Date;a=1E3*a.getSeconds()+a.getMilliseconds();void 0===d.xb&&(d.xb=a);var b=a-d.xb;d.xb=a;d.Tc(b);h.Za();window.requestAnimationFrame(d.Za)}},Jb:function(){if(d.connected()){var a={command:"SERVER_SIDE_CLIENT_INFO",width:d.Oa*d.pa,height:d.Na*d.pa,layoutWidth:d.Va,layoutHeight:d.Ua,encoding:"jpeg",mux:"none"};if("mp4"==d.mb||"h264"==d.mb)a.encoding="open_h264";"mp4"==d.mb&&(a.mux="mp4");d.connection.send(JSON.stringify(a))}},Cd:function(a,b,c,f){0>=a||0>=b||0>=c||
0>=f||d.Oa===a&&d.Na===b&&d.Va===c&&d.Ua===f||(d.Oa=a,d.Na=b,d.Va=c,d.Ua=f,d.connected()&&(void 0!==d.Ib&&window.clearTimeout(d.Ib),d.Ib=setTimeout(function(){d.ub||(d.Ib=void 0,d.Jb())},500)))},Ad:function(a){d.connected()&&d.connection.send(a)},Hd:function(a){d.vb=a},Id:function(a){d.Cb=a},Fd:function(a){d.pb=a},Ed:function(a){d.nb=a},uc:function(a){d.pb&&d.pb(a)},Jd:function(a){var b={command:"SERVER_SETTINGS"},c;for(c in a)if(a.hasOwnProperty(c)){if("scaleHigh"===c){var f=a[c];if("number"!==typeof f)continue;
f=Math.min(1,f);0>=f&&(f=1);d.pa!=f&&(d.pa=f,d.Jb())}"jpegQualityHigh"!==c&&"jpegQualityLow"!==c&&"jpegChromaSamplesHigh"!==c&&"jpegChromaSamplesLow"!==c&&"scaleLow"!==c||"number"!==typeof a[c]||(b[c]=d.yc[c]=a[c])}d.connected()&&d.connection.send(JSON.stringify(b))},connect:function(a){var c=e.$$es.getNetworkVersion();d.connection=new WebSocket(a.uri,["binary"]);d.connection.binaryType="arraybuffer";var l=!1;d.connection.onclose=function(){e.h("websocket_connection_closed")};d.connection.onopen=
function(){l=!0;d.connection.send(JSON.stringify({command:"SERVER_SIDE_RENDER",width:d.Oa*d.pa,height:d.Na*d.pa,layoutWidth:d.Va,layoutHeight:d.Ua,model:a.model,networkVersion:c,streamCulled:!!a.streamCulled,streamKeyedDataOnIdle:!!a.streamMetaDataOnIdle,streamNoLimit:!!a.streamNoLimit,streamInstancesOnDemand:!!a.streamInstancesOnDemand,streamBoundingPreviews:!!a.streamBoundingPreviews,streamModelBoundingPreviews:!!a.streamModelBoundingPreviews,streamInstanceBoundingPreviews:!!a.streamInstanceBoundingPreviews,
streamOnlyInterestingBoundingPreviews:!!a.streamOnlyInterestingBoundingPreviews,streamEjectedBoundingPreviews:!!a.streamEjectedBoundingPreviews,limitMiB:a.limitMiB,meshLevel:a.meshLevel,streamCutoffScale:a.streamCutoffScale,sessionToken:a.sessionToken}));d.Jb();d.connection.send(JSON.stringify(d.yc));window.requestAnimationFrame(d.Za)};d.connection.onerror=function(){d.nb&&d.nb(l?"socket_error":"socket_open_failed")};d.connection.onmessage=function(a){if(!d.ub)if(d.Md=Date.now(),d.tg=d.Md,a.data instanceof
ArrayBuffer){var c=new Uint8Array(a.data);b.L("received data size = "+c.byteLength);d.ua+=c.byteLength;a=c[0];if(123===a)d.vb&&d.vb(c);else if(68===a)d.Cb&&d.Cb(c.subarray(1));else{d.connection.send('{"command":"ACK"}');var g=[c[1],c[2]],l=c[4]<<24|c[5]<<16|c[6]<<8|c[7],m=new Uint8Array(c.subarray(8,8+l));c=c.subarray(8+l);0===a?f.Qa(c,g,m):1===a?h.Qa(c,g,m):b.L("Unknown message header byte value: "+a)}}else"string"===typeof a.data&&b.L("!!! UNEXPECTED !!!")};f.connection=d.connection;g.connection=
d.connection;h.connection=d.connection},jd:function(){f.ba();g.ba();c.Bc&&h.ba()}},f={canvas:null,ac:null,ba:function(){},createElement:function(){this.canvas||(this.canvas=document.createElement("canvas"),this.canvas.setAttribute("style","display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%;"),this.ac=this.canvas.getContext("2d"),d.Ma.appendChild(this.canvas))},drawImage:function(a,b){var c=a.width-b[0];b=a.height-b[1];this.canvas.width!=c&&(this.canvas.width=c);this.canvas.height!=
b&&(this.canvas.height=b);this.ac.drawImage(a,0,0)},Vc:function(a,b,c){var g=document.createElement("img");this.od=g;g.onload=function(){g===f.od&&(f.drawImage(g,b),d.hb(f.canvas),d.uc(c));URL.revokeObjectURL(a)};g.onerror=function(){URL.revokeObjectURL(a)};g.src=a;return g},Qa:function(a,b,c){12<a.byteLength&&(this.createElement(),this.Vc(URL.createObjectURL(new Blob([a],{type:"image/jpeg"})),b,c))}},g={connection:null,canvas:null,U:null,Pa:[],qa:null,Ya:[],Wf:0,bg:[],qd:33.33333,oa:[],pd:4,Ob:0,
ba:function(){},createElement:function(){if(!this.canvas){var a=document.createElement("canvas");a.setAttribute("style","display: none; width: 100%; height: 100%;");d.Ma.appendChild(a);this.canvas=a}},Qa:function(c){var f=!1,h=0;0==c[0]&&0==c[1]&&(0==c[2]?1==c[3]&&(f=!0,h=c[4]):1==c[2]&&(1==f,h=c[3]));if(f){this.createElement();d.hb(this.canvas);if(103==h){g.qa=this.cd(c);b.L("video dimension ("+g.qa.width+", "+g.qa.height+") num in queue = "+g.oa.length);g.oa.length=0;f=null;for(h=0;h<g.Pa.length;h++)if(g.Pa[h].width==
g.qa.width){f=g.Pa[h];break}null===f&&(f={wc:new a.Vf({xg:!0,zg:!1,canvas:this.canvas,vc:this.vc,rg:this.sd}),width:g.qa.width,height:g.qa.height,Db:0,Dc:0,dc:!1},g.Pa.push(f));this.U=f}g.oa.push(c);this.Ob<this.pd&&(c=g.oa.shift(),f=new Date,this.Ya.push(6E4*f.getMinutes()+1E3*f.getSeconds()+f.getMilliseconds()),this.U.dc=!0,this.U.wc.decode(c),++this.Ob)}},sd:function(){g.U.dc=!1;if(g.oa.length){var a=g.oa.shift(),b=new Date;g.Ya.push(6E4*b.getMinutes()+1E3*b.getSeconds()+b.getMilliseconds());g.U.wc.decode(a)}},
vc:function(){--g.Ob;var a=new Date;a=6E4*a.getMinutes()+1E3*a.getSeconds()+a.getMilliseconds();var c=-1;g.Ya.length&&(c=g.Ya.shift());++g.U.Db;if(0<=c){for(var d=a-c;d<g.qd;)a=new Date,a=6E4*a.getMinutes()+1E3*a.getSeconds()+a.getMilliseconds(),d=a-c;g.U.Dc+=d;b.L("decoded finished: elapsed = "+d+" end = "+a+" start = "+c)}return!0},cd:function(a){a={jb:a,result:0,Zb:4,Xb:0,ea:8};a=b.W(a);a=b.W(a);a=b.W(a);a=b.W(a);a.ea=1;a=b.H(a);a=b.H(a);a=b.H(a);if(0==a.result)a=b.H(a);else if(1==a.result){a.ea=
1;a=b.W(a);a=b.H(a);a=b.H(a);a=b.H(a);for(var c=a.result,d=0;d<c;d++)b.H(a)}a=b.H(a);a.ea=1;a=b.W(a);a=b.H(a);c=a.result;a=b.H(a);c=16*(c+1);a=16*(a.result+1);b.L("SPS pic dimension ("+c+", "+a+")");return{width:c,height:a}}},h={Fc:'video/mp4;codecs="avc1.42c028"',connection:null,dg:null,oc:0,Db:0,lb:[],sg:0,da:null,ra:null,video:null,lc:1,Qc:0,ua:0,Ac:!1,padding:[0,0],wb:[0,0],ba:function(){if("undefined"===typeof MediaSource)return!1;this.Ac=MediaSource.isTypeSupported(this.Fc);if(0==this.Ac)return!1;
this.da=new MediaSource;this.createElement();return!0},createElement:function(){if(!this.video){var a=document.createElement("video");this.video=a;this.da.addEventListener("sourceopen",this.dd,!1);this.da.addEventListener("sourceclose",function(){b.L("!!! media source close !!!")},!1);this.da.addEventListener("sourceended",function(){b.L("!!! media source ended !!!")},!1);a.pause();a.addEventListener("loadedmetadata",function(){a.play()},!1);a.src=window.URL.createObjectURL(this.da);a.setAttribute("style",
"display: none; width: 100%; height: 100%; position: absolute; top: 0; left: 0");d.Ma.appendChild(a)}},Za:function(){if(0<this.lb.length&&this.ra&&!this.ra.updating&&"open"==this.da.readyState){var a=this.lb.shift();try{this.ra.appendBuffer(a)}catch(n){b.L("error = "+n);return}a=0;if(this.video){0<this.video.buffered.length&&(a=this.video.buffered.end(0));var c=(a-this.video.currentTime+-.1)/.133328;0>c&&(c=0);this.lc=c;this.Qc=a;if(this.padding[0]!==this.wb[0]||this.padding[1]!==this.wb[1]||this.video.videoWidth!==
this.zb||this.video.videoHeight!==this.yb)this.wb=this.padding,this.zb=this.video.videoWidth,this.yb=this.video.videoHeight,this.video.style.width=this.zb/(this.zb-this.padding[0])*100+"%",this.video.style.height=this.yb/(this.yb-this.padding[1])*100+"%";d.hb(this.video)}}},dd:function(){console.log("media source opened");h.ra=h.da.addSourceBuffer(h.Fc);h.ra.addEventListener("updateend",h.td);h.ra.addEventListener("updatestart",h.ud)},Qa:function(a,c,f){h.padding=c;d.uc(f);this.ua+=a.byteLength;c=
102==a[4]&&116==a[5]&&121==a[6]&&112==a[7];109==a[4]&&111==a[5]&&111==a[6]&&102==a[7]||c?(this.zd(a),this.lb.push(a)):(c=a.subarray(0,4),d.Yf=b.getInt32(c),c=a.subarray(4,8),d.Xf=b.getInt32(c))},zd:function(a){for(var c=0;c<a.byteLength-4;c++)if(116==a[c]&&102==a[c+1]&&100==a[c+2]&&116==a[c+3]){var d=1-this.lc;-.75>=d&&(d=-.75);var f=this.oc+600*(1+d);this.oc=f;d=new Uint8Array(8);b.Gd(d,f);for(f=0;8>f;f++)a[c+4+f]=d[f];++this.Db}},ud:function(){},td:function(){}};b.L=function(){};return d};
var ja={},ha;for(ha in e)e.hasOwnProperty(ha)&&(ja[ha]=e[ha]);e.arguments=[];e.thisProgram="./this.program";e.quit=function(a,b){throw b;};e.preRun=[];e.postRun=[];var ka=!1,la=!1,ma=!1,na=!1;
if(e.ENVIRONMENT)if("WEB"===e.ENVIRONMENT)ka=!0;else if("WORKER"===e.ENVIRONMENT)la=!0;else if("NODE"===e.ENVIRONMENT)ma=!0;else if("SHELL"===e.ENVIRONMENT)na=!0;else throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");else ka="object"===typeof window,la="function"===typeof importScripts,ma="object"===typeof process&&"function"===typeof require&&!ka&&!la,na=!ka&&!ma&&!la;
if(ma){var oa,pa;e.read=function(a,b){var c=qa(a);c||(oa||(oa=require("fs")),pa||(pa=require("path")),a=pa.normalize(a),c=oa.readFileSync(a));return b?c:c.toString()};e.readBinary=function(a){a=e.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};1<process.argv.length&&(e.thisProgram=process.argv[1].replace(/\\/g,"/"));e.arguments=process.argv.slice(2);"undefined"!==typeof module&&(module.exports=e);process.on("uncaughtException",function(a){if(!(a instanceof ra))throw a;});process.on("unhandledRejection",
function(){process.exit(1)});e.inspect=function(){return"[Emscripten Module object]"}}else if(na)"undefined"!=typeof read&&(e.read=function(a){var b=qa(a);return b?sa(b):read(a)}),e.readBinary=function(a){var b;if(b=qa(a))return b;if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));b=read(a,"binary");assert("object"===typeof b);return b},"undefined"!=typeof scriptArgs?e.arguments=scriptArgs:"undefined"!=typeof arguments&&(e.arguments=arguments),"function"===typeof quit&&(e.quit=
function(a){quit(a)});else if(ka||la)e.read=function(a){try{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText}catch(c){if(a=qa(a))return sa(a);throw c;}},la&&(e.readBinary=function(a){try{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}catch(c){if(a=qa(a))return a;throw c;}}),e.readAsync=function(a,b,c){var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=function(){if(200==
d.status||0==d.status&&d.response)b(d.response);else{var f=qa(a);f?b(f.buffer):c()}};d.onerror=c;d.send(null)},e.setWindowTitle=function(a){document.title=a};e.print="undefined"!==typeof console?console.log.bind(console):"undefined"!==typeof print?print:null;e.printErr="undefined"!==typeof printErr?printErr:"undefined"!==typeof console&&console.warn.bind(console)||e.print;e.print=e.print;e.printErr=e.printErr;for(ha in ja)ja.hasOwnProperty(ha)&&(e[ha]=ja[ha]);ja=void 0;
function ta(a){assert(!ua);var b=va;va=va+a+15&-16;return b}function wa(a){assert(xa);var b=v[xa>>2];a=b+a+15&-16;v[xa>>2]=a;return a>=ya&&!za()?(v[xa>>2]=b,0):b}function Aa(a){var b;b||(b=16);return Math.ceil(a/b)*b}function Ba(a){Ca||(Ca={});Ca[a]||(Ca[a]=1,e.printErr(a))}var Ca,Da={};
function Ea(a,b){if(a){assert(b);Da[b]||(Da[b]={});var c=Da[b];c[a]||(c[a]=1===b.length?function(){return Fa(b,a)}:2===b.length?function(c){return Fa(b,a,[c])}:function(){return Fa(b,a,Array.prototype.slice.call(arguments))});return c[a]}}function Fa(a,b,c){return c&&c.length?e["dynCall_"+a].apply(null,[b].concat(c)):e["dynCall_"+a].call(null,b)}var Ga=0;function assert(a,b){a||Ha("Assertion failed: "+b)}
function Ja(a,b){if("number"===typeof a){var c=!0;var d=a}else c=!1,d=a.length;var f;4==b?f=g:f=["function"===typeof Ka?Ka:ta,da,ta,wa][void 0===b?2:b](Math.max(d,1));if(c){var g=f;assert(0==(f&3));for(a=f+(d&-4);g<a;g+=4)v[g>>2]=0;for(a=f+d;g<a;)La[g++>>0]=0;return f}a.subarray||a.slice?r.set(a,f):r.set(new Uint8Array(a),f);return f}
function w(a,b){if(0===b||!a)return"";for(var c=0,d,f=0;;){d=r[a+f>>0];c|=d;if(0==d&&!b)break;f++;if(b&&f==b)break}b||(b=f);d="";if(128>c){for(;0<b;)c=String.fromCharCode.apply(String,r.subarray(a,a+Math.min(b,1024))),d=d?d+c:c,a+=1024,b-=1024;return d}return fa(r,a)}var Ma="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function fa(a,b){for(var c=b;a[c];)++c;if(16<c-b&&a.subarray&&Ma)return Ma.decode(a.subarray(b,c));for(c="";;){var d=a[b++];if(!d)return c;if(d&128){var f=a[b++]&63;if(192==(d&224))c+=String.fromCharCode((d&31)<<6|f);else{var g=a[b++]&63;if(224==(d&240))d=(d&15)<<12|f<<6|g;else{var h=a[b++]&63;if(240==(d&248))d=(d&7)<<18|f<<12|g<<6|h;else{var l=a[b++]&63;if(248==(d&252))d=(d&3)<<24|f<<18|g<<12|h<<6|l;else{var m=a[b++]&63;d=(d&1)<<30|f<<24|g<<18|h<<12|l<<6|m}}}65536>d?c+=String.fromCharCode(d):(d-=
65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023))}}else c+=String.fromCharCode(d)}}
function Na(a,b,c,d){if(!(0<d))return 0;var f=c;d=c+d-1;for(var g=0;g<a.length;++g){var h=a.charCodeAt(g);55296<=h&&57343>=h&&(h=65536+((h&1023)<<10)|a.charCodeAt(++g)&1023);if(127>=h){if(c>=d)break;b[c++]=h}else{if(2047>=h){if(c+1>=d)break;b[c++]=192|h>>6}else{if(65535>=h){if(c+2>=d)break;b[c++]=224|h>>12}else{if(2097151>=h){if(c+3>=d)break;b[c++]=240|h>>18}else{if(67108863>=h){if(c+4>=d)break;b[c++]=248|h>>24}else{if(c+5>=d)break;b[c++]=252|h>>30;b[c++]=128|h>>24&63}b[c++]=128|h>>18&63}b[c++]=128|
h>>12&63}b[c++]=128|h>>6&63}b[c++]=128|h&63}}b[c]=0;return c-f}function Oa(a){for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:2097151>=d?b+4:67108863>=d?b+5:b+6}return b}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");function Pa(a){var b=Oa(a)+1,c=da(b);Na(a,La,c,b);return c}var Qa=65536,Ra=16777216,Sa=16777216;function Ta(a,b){0<a%b&&(a+=b-a%b);return a}
var buffer,La,r,Ua,Va,v,ba,q,aa;function Xa(){e.HEAP8=La=new Int8Array(buffer);e.HEAP16=Ua=new Int16Array(buffer);e.HEAP32=v=new Int32Array(buffer);e.HEAPU8=r=new Uint8Array(buffer);e.HEAPU16=Va=new Uint16Array(buffer);e.HEAPU32=ba=new Uint32Array(buffer);e.HEAPF32=q=new Float32Array(buffer);e.HEAPF64=aa=new Float64Array(buffer)}var Ya,va,ua,Za,$a,ab,bb,xa;Ya=va=Za=$a=ab=bb=xa=0;ua=!1;
e.reallocBuffer||(e.reallocBuffer=function(a){try{if(ArrayBuffer.Td)var b=ArrayBuffer.Td(buffer,a);else{var c=La;b=new ArrayBuffer(a);(new Int8Array(b)).set(c)}}catch(d){return!1}return cb(b)?b:!1});function za(){var a=e.usingWasm?Qa:Ra,b=2147483648-a;if(v[xa>>2]>b)return!1;var c=ya;for(ya=Math.max(ya,Sa);ya<v[xa>>2];)536870912>=ya?ya=Ta(2*ya,a):ya=Math.min(Ta((3*ya+2147483648)/4,a),b);a=e.reallocBuffer(ya);if(!a||a.byteLength!=ya)return ya=c,!1;e.buffer=buffer=a;Xa();return!0}var db;
try{db=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),db(new ArrayBuffer(4))}catch(a){db=function(b){return b.byteLength}}var eb=e.TOTAL_STACK||5242880,ya=e.TOTAL_MEMORY||16777216;ya<eb&&e.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+ya+"! (TOTAL_STACK="+eb+")");e.buffer?buffer=e.buffer:(buffer=new ArrayBuffer(ya),e.buffer=buffer);Xa();v[0]=1668509029;Ua[1]=25459;
if(115!==r[2]||99!==r[3])throw"Runtime error: expected the system to be little-endian!";function fb(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.j;"number"===typeof c?void 0===b.Ka?e.dynCall_v(c):e.dynCall_vi(c,b.Ka):c(void 0===b.Ka?null:b.Ka)}}}var hb=[],ib=[],jb=[],kb=[],lb=[],mb=!1;function nb(){var a=e.preRun.shift();hb.unshift(a)}Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0});
Math.imul=Math.imul;Math.clz32||(Math.clz32=function(a){a>>>=0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.clz32=Math.clz32;Math.trunc||(Math.trunc=function(a){return 0>a?Math.ceil(a):Math.floor(a)});Math.trunc=Math.trunc;var ob=Math.abs,pb=Math.ceil,qb=Math.floor,rb=Math.min,sb=0,tb=null,ub=null;function vb(){sb++;e.monitorRunDependencies&&e.monitorRunDependencies(sb)}
function wb(){sb--;e.monitorRunDependencies&&e.monitorRunDependencies(sb);if(0==sb&&(null!==tb&&(clearInterval(tb),tb=null),ub)){var a=ub;ub=null;a()}}e.preloadedImages={};e.preloadedAudios={};
var xb=null,Db="data:application/octet-stream;base64,",Eb=[function(){console.log("RPC parsing failed")},function(a,b){e.$$facade&&(aa[a>>3]=e.$$facade.container.clientWidth,aa[b>>3]=e.$$facade.container.clientHeight)},function(){try{var a=window.bowser;if(!(a&&a.windows&&(a.chrome&&0<=a.compareVersions([a.version,"55"])&&0>a.compareVersions([a.version,"57"])||a.firefox&&0<=a.compareVersions([a.version,"51"])&&0>a.compareVersions([a.version,"58"]))))return 0}catch(f){return 0}try{var b=e.ha,c=b.getExtension("WEBGL_debug_renderer_info");
if(c){var d=b.getParameter(c.UNMASKED_RENDERER_WEBGL);if(!(d&&0<=d.indexOf("ANGLE")&&(0<=d.indexOf("AMD")||0<=d.indexOf("Radeon"))&&0<=d.indexOf("Direct3D11")))return 0}}catch(f){}return 1},function(){try{var a=window.bowser;return a&&a.windows&&(a.webkit||a.blink||a.gecko)?1:0}catch(b){return 1}}];Ya=8;va=Ya+217408;
ib.push({j:function(){Fb()}},{j:function(){Gb()}},{j:function(){Hb()}},{j:function(){Ib()}},{j:function(){Jb()}},{j:function(){Kb()}},{j:function(){Lb()}},{j:function(){Mb()}},{j:function(){Nb()}},{j:function(){Ob()}},{j:function(){Pb()}},{j:function(){Qb()}},{j:function(){Rb()}},{j:function(){Sb()}},{j:function(){Tb()}},{j:function(){Ub()}},{j:function(){Vb()}},{j:function(){Wb()}},{j:function(){Xb()}},{j:function(){Yb()}},{j:function(){Zb()}},{j:function(){$b()}});xb="data:application/octet-stream;base64,8KUAAP7RAAAYpgAAedEAAAgAAAAAAAAA8KUAACHSAADwpQAAn9IAABimAACA0gAAKAAAAAAAAAAYpgAAb9IAADAAAAAAAAAAGKYAALbSAAAIAAAAAAAAAPClAAA70wAAGKYAAMTTAAAoAAAAAAAAABimAACa0wAAaAAAAAAAAAAYpgAAidMAAHgAAAAAAAAAGKYAAOPTAAAIAAAAAAAAAPClAABo1AAAGKYAAPHUAAAoAAAAAAAAABimAADH1AAAsAAAAAAAAAAYpgAAttQAAMAAAAAAAAAAGKYAABDVAAAIAAAAAAAAAPClAACV1QAAGKYAAB7WAAAoAAAAAAAAABimAAD01QAA+AAAAAAAAAAYpgAA49UAAAgBAAAAAAAAGKYAAD3WAAAIAAAAAAAAAPClAADi1gAAGKYAAInXAAAoAAAAAAAAABimAABU1wAAQAEAAAAAAAAYpgAALNgAACgAAAAAAAAAGKYAAO/XAABgAQAAAAAAABimAADM1wAAcAEAAAAAAADwpQAAXdgAABimAABx2AAACAAAAAAAAADwpQAAC9kAABimAACw2QAAKAAAAAAAAAAYpgAAfNkAALABAAAAAAAAGKYAAC3aAAAoAAAAAAAAABimAAAD2gAA0AEAAAAAAAAYpgAA8tkAAOABAAAAAAAAGKYAAEzaAAAIAAAAAAAAAPClAADm2gAAGKYAAIvbAAAoAAAAAAAAABimAABX2wAAGAIAAAAAAAAYpgAAzdsAAAgAAAAAAAAA8KUAAJ/cAAAYpgAAtN0AACgAAAAAAAAAGKYAAEjdAABQAgAAAAAAABimAACJ3gAAKAAAAAAAAAAYpgAALt4AAHACAAAAAAAAGKYAAHjfAAAoAAAAAAAAABimAAAo3wAAkAIAAAAAAAAYpgAA8t4AAKACAAAAAAAA8KUAAMnhAAAYpgAAh+EAAMACAAAAAAAAGKYAAEXhAADIAgAAAAAAABimAAAD4QAA2AIAAAAAAAAYpgAAkeAAAOgCAAAAAAAAGKYAAFrgAAD4AgAAAAAAABimAAAh4AAACAMAAAAAAAAYpgAA498AABgDAAAAAAAAGKYAALzfAAAoAwAAAAAAABimAAAA4gAACAAAAAAAAADwpQAAu+IAABimAACi4wAAKAAAAAAAAAAYpgAATeMAAGADAAAAAAAAGKYAADXkAAAoAAAAAAAAABimAAAF5AAAgAMAAAAAAAAYpgAA+eQAACgAAAAAAAAAGKYAAKnkAACgAwAAAAAAABimAABz5AAAsAMAAAAAAAAYpgAAsOUAACgAAAAAAAAAGKYAAGrlAADQAwAAAAAAABimAAA95QAA4AMAAAAAAACUpgAACeYAAPClAAA06AAAGKYAAPLnAAAIBAAAAAAAABimAACw5wAAEAQAAAAAAAAYpgAAbucAACAEAAAAAAAAGKYAAPzmAAAwBAAAAAAAABimAADF5gAAQAQAAAAAAAAYpgAAjOYAAFAEAAAAAAAAGKYAAE7mAABgBAAAAAAAABimAAAn5gAAcAQAAAAAAAAYpgAAa+gAAAgAAAAAAAAA8KUAACbpAAAYpgAADeoAACgAAAAAAAAAGKYAALjpAACoBAAAAAAAABimAADq6gAAKAAAAAAAAAAYpgAAoOoAAMgEAAAAAAAAGKYAAHDqAADYBAAAAAAAAPClAAAo6wAAGKYAAEnrAAAIAAAAAAAAAPClAAD16wAAGKYAAL7sAAAoAAAAAAAAABimAAB47AAAGAUAAAAAAAAYpgAAbu0AACgAAAAAAAAAGKYAADPtAAA4BQAAAAAAABimAAAS7QAASAUAAAAAAADwpQAAr+0AABimAACd7QAAaAUAAAAAAAAYpgAA5+0AAAgAAAAAAAAA8KUAAJbuAAAYpgAAme8AACgAAAAAAAAAGKYAAGXvAACYBQAAAAAAABimAAAc7wAAqAUAAAAAAAAYpgAAUfAAACgAAAAAAAAAGKYAABTwAADIBQAAAAAAABimAADw7wAA2AUAAAAAAAAYpgAAg/AAAAgAAAAAAAAA8KUAADPxAAAYpgAAOfIAACgAAAAAAAAAGKYAAATyAAAQBgAAAAAAABimAAC68QAAIAYAAAAAAAAYpgAA9PIAACgAAAAAAAAAGKYAALbyAABABgAAAAAAABimAACR8gAAUAYAAAAAAAAYpgAAJ/MAAAgAAAAAAAAA8KUAAOjzAAAYpgAA2/QAACgAAAAAAAAAGKYAAID0AACIBgAAAAAAABimAADK9QAAKAAAAAAAAAAYpgAAevUAAKgGAAAAAAAAGKYAAET1AAC4BgAAAAAAAPClAAAb+AAAGKYAANn3AADYBgAAAAAAABimAACX9wAA4AYAAAAAAAAYpgAAVfcAAPAGAAAAAAAAGKYAAOP2AAAABwAAAAAAABimAACs9gAAEAcAAAAAAAAYpgAAc/YAACAHAAAAAAAAGKYAADX2AAAwBwAAAAAAABimAAAO9gAAQAcAAAAAAAAYpgAAUvgAAAgAAAAAAAAA8KUAAAD5AAAYpgAAzfkAACgAAAAAAAAAGKYAAIX5AAB4BwAAAAAAABimAAAj+gAACAAAAAAAAADwpQAA0PoAABimAACb+wAAKAAAAAAAAAAYpgAAVPsAALAHAAAAAAAAGKYAAE78AAAoAAAAAAAAABimAAAS/AAA0AcAAAAAAAAYpgAA8PsAAOAHAAAAAAAA8KUAAH78AAAYpgAAkfwAAAgAAAAAAAAA8KUAAFL9AAAYpgAARf4AACgAAAAAAAAAGKYAAOr9AAAgCAAAAAAAABimAACu/gAACAAAAAAAAADwpQAAb/8AABimAAAHAAEACAAAAAAAAADwpQAAoQABABimAABnAQEAKAAAAAAAAAAYpgAARgEBAHAIAAAAAAAAGKYAABIBAQCACAAAAAAAABimAACpAQEACAAAAAAAAADwpQAAQwIBABimAADoAgEAKAAAAAAAAAAYpgAAtAIBALgIAAAAAAAAGKYAAGUDAQAoAAAAAAAAABimAAA7AwEA2AgAAAAAAAAYpgAAKgMBAOgIAAAAAAAAGKYAAIQDAQAIAAAAAAAAAPClAAArBAEAGKYAABoFAQAoAAAAAAAAABimAADOBAEAIAkAAAAAAAAYpgAAmwQBADAJAAAAAAAAlKYAAFsFAQAYpgAAfwUBAAgAAAAAAAAA8KUAAC0GAQAYpgAA3gYBACgAAAAAAAAAGKYAAKQGAQBwCQAAAAAAAJSmAABMBwEAGKYAAHwHAQAIAAAAAAAAAPClAAAmCAEAGKYAAB4JAQAoAAAAAAAAABimAADPCAEAsAkAAAAAAAAYpgAAmQgBAMAJAAAAAAAAlKYAAGIJAQAYpgAAiQkBAAgAAAAAAAAA8KUAAD4KAQAYpgAA/QoBACgAAAAAAAAAGKYAALwKAQAACgAAAAAAABimAACDCwEACAAAAAAAAADwpQAAOQwBABimAAD6DAEAKAAAAAAAAAAYpgAAuAwBADgKAAAAAAAAGKYAAEoNAQAIAAAAAAAAAPClAADtDQEAGKYAAIgOAQAoAAAAAAAAABimAABZDgEAcAoAAAAAAAAYpgAA+Q4BACgAAAAAAAAAGKYAAMUOAQCQCgAAAAAAABimAAB2DwEAKAAAAAAAAAAYpgAATA8BALAKAAAAAAAAGKYAADsPAQDACgAAAAAAABimAADuDwEAKAAAAAAAAAAYpgAAlQ8BAOAKAAAAAAAAGKYAANcQAQAoAAAAAAAAABimAACJEAEAAAsAAAAAAAAYpgAAVRABABALAAAAAAAA8KUAAIgSAQAYpgAAmxIBAAgAAAAAAAAA8KUAAEYTAQAYpgAAQRQBACgAAAAAAAAAGKYAAPETAQBQCwAAAAAAABimAAC6EwEAYAsAAAAAAACUpgAAhhQBABimAACuFAEACAAAAAAAAADwpQAAWRUBABimAABUFgEAKAAAAAAAAAAYpgAABBYBAKALAAAAAAAAGKYAAM0VAQCwCwAAAAAAAJSmAACZFgEAGKYAAMEWAQAIAAAAAAAAAPClAABaFwEAGKYAACAYAQAoAAAAAAAAABimAADhFwEA8AsAAAAAAAAYpgAAvBcBAAAMAAAAAAAA8KUAAFMYAQAYpgAAaRgBAAgAAAAAAAAA8KUAABMZAQAYpgAACxoBACgAAAAAAAAAGKYAALwZAQBADAAAAAAAABimAACGGQEAUAwAAAAAAADwpQAATxoBABimAABeGgEACAAAAAAAAADwpQAAAxsBABimAACiGwEAKAAAAAAAAAAYpgAAcRsBAJAMAAAAAAAAlKYAAPQbAQAYpgAAGxwBAAgAAAAAAAAA8KUAAMEcAQAYpgAAYh0BACgAAAAAAAAAGKYAADAdAQDQDAAAAAAAAJSmAACqHQEAGKYAANIdAQAIAAAAAAAAAPClAABzHgEAGKYAAFEfAQAoAAAAAAAAABimAAAKHwEAEA0AAAAAAAAYpgAA3R4BACANAAAAAAAA8KUAAIwfAQAYpgAAqh8BAAgAAAAAAAAA8KUAAD8gAQAYpgAAnSABAAgAAAAAAAAA8KUAADEhAQAYpgAAriEBACgAAAAAAAAAGKYAAI4hAQB4DQAAAAAAABimAABiIgEAKAAAAAAAAAAYpgAAEiIBAJgNAAAAAAAAGKYAANwhAQCoDQAAAAAAABimAAAtIwEAKAAAAAAAAAAYpgAA3CIBAMgNAAAAAAAAGKYAAKYiAQDYDQAAAAAAABimAABxIwEACAAAAAAAAADwpQAADCQBABimAADYJAEAKAAAAAAAAAAYpgAAlyQBABAOAAAAAAAAGKYAAHAkAQAgDgAAAAAAAPClAAANJQEAGKYAACUlAQAIAAAAAAAAAPClAAC3JQEAGKYAAGcmAQAoAAAAAAAAABimAAAwJgEAYA4AAAAAAAAYpgAAEiYBAHAOAAAAAAAAGKYAAJMmAQAIAAAAAAAAAPClAAArJwEAGKYAAIwnAQAIAAAAAAAAAPClAAAlKAEAGKYAAIcoAQAIAAAAAAAAAPClAAAgKQEAGKYAAOUpAQAoAAAAAAAAABimAACnKQEA2A4AAAAAAAAYpgAAgikBAOgOAAAAAAAAlKYAABgqAQAYpgAALioBAAgAAAAAAAAA8KUAAMoqAQAYpgAAmCsBACgAAAAAAAAAGKYAAFcrAQAoDwAAAAAAABimAAAvKwEAOA8AAAAAAACUpgAAzisBABimAADnKwEACAAAAAAAAADwpQAAfSwBABimAAA6LQEAKAAAAAAAAAAYpgAA/iwBAHgPAAAAAAAAGKYAANwsAQCIDwAAAAAAAPClAABqLQEAGKYAAH0tAQAIAAAAAAAAAPClAAATLgEAGKYAAM8uAQAoAAAAAAAAABimAACULgEAyA8AAAAAAAAYpgAAci4BANgPAAAAAAAA8KUAAP8uAQAYpgAAEi8BAAgAAAAAAAAA8KUAAKkvAQAYpgAACTABAAgAAAAAAAAA8KUAAJ8wAQAYpgAA/jABAAgAAAAAAAAA8KUAAKkxAQAYpgAAVDIBACgAAAAAAAAAGKYAAB0yAQBIEAAAAAAAABimAADtMgEAKAAAAAAAAAAYpgAAmTIBAGgQAAAAAAAAGKYAAH4zAQAoAAAAAAAAABimAABPMwEAiBAAAAAAAAAYpgAA7jMBACgAAAAAAAAAGKYAALszAQCoEAAAAAAAABimAABeNAEAKAAAAAAAAAAYpgAALzQBAMgQAAAAAAAAGKYAAO80AQAoAAAAAAAAABimAACbNAEA6BAAAAAAAAAYpgAAgDUBACgAAAAAAAAAGKYAAFE1AQAIEQAAAAAAABimAAASNgEAKAAAAAAAAAAYpgAAvTUBACgRAAAAAAAAGKYAAKU2AQAoAAAAAAAAABimAAB1NgEASBEAAAAAAAAYpgAAQDcBACgAAAAAAAAAGKYAAOM2AQBoEQAAAAAAABimAADjNwEAKAAAAAAAAAAYpgAAqzcBAIgRAAAAAAAA8KUAAA85AQDwpQAAJTkBAPClAABHOwEAGKYAAAU7AQC4EQAAAAAAABimAADDOgEAwBEAAAAAAAAYpgAAgToBANARAAAAAAAAGKYAAA86AQDgEQAAAAAAABimAADYOQEA8BEAAAAAAAAYpgAAnzkBAAASAAAAAAAAGKYAAGE5AQAQEgAAAAAAABimAAA6OQEAIBIAAAAAAAAYpgAAfjsBAAgAAAAAAAAA8KUAABk8AQAYpgAA5DwBACgAAAAAAAAAGKYAAKQ8AQBYEgAAAAAAABimAAB9PAEAaBIAAAAAAAAYpgAAKD0BAAgAAAAAAAAA8KUAANI9AQAYpgAART4BAAgAAAAAAAAA8KUAAO8+AQAYpgAAYj8BAAgAAAAAAAAA8KUAAOc/AQAYpgAANUABAAgAAAAAAAAA8KUAALpAAQDwpQAAWUEBABimAAAIQQEA6BIAAAAAAACUpgAAsEEBABimAADPQQEAMCsAAAAAAADwpQAAEUIBAPClAABNQgEA8KUAAHpEAQAYpgAAOEQBACgTAAAAAAAAGKYAAPZDAQAwEwAAAAAAABimAAC0QwEAQBMAAAAAAAAYpgAAQkMBAFATAAAAAAAAGKYAAAtDAQBgEwAAAAAAABimAADSQgEAcBMAAAAAAAAYpgAAlEIBAIATAAAAAAAAGKYAAG1CAQCQEwAAAAAAAPClAAC6RAEA8KUAANxEAQDwpQAABEUBAJSmAAAfRQEAlKYAADxFAQCUpgAAT0UBAJSmAABqRQEAlKYAAINFAQCUpgAAn0UBAJSmAAC2RQEAlKYAANJFAQCUpgAA6UUBAJSmAAABRgEAlKYAACJGAQCUpgAAQUYBAJSmAABoRgEAlKYAAIxGAQCUpgAAtkYBAJSmAADYRgEAlKYAAO9GAQCUpgAACEcBAJSmAAApRwEAlKYAAD1HAQCUpgAAVkcBAJSmAAByRwEA8KUAAIhHAQBcpgAAqUcBAAAAAAB4FAAAXKYAAMtHAQABAAAAeBQAAPClAAB2SAEAsKYAADdIAQAAAAAAAQAAAKAUAAAAAAAA8KUAAMNIAQBcpgAA5EgBAAAAAADAFAAAXKYAAAZJAQABAAAAwBQAAPClAAAySgEAGKYAAClJAQDoFAAAAAAAAPClAABiSwEAGKYAAIVKAQAAFQAAAAAAABimAAC1SwEAABUAAAAAAADwpQAArE0BABimAACVTAEAKBUAAAAAAADwpQAALk8BABimAAAjTgEAQBUAAAAAAADwpQAAoVABABimAACYTwEAWBUAAAAAAAAYpgAA/VABAEAVAAAAAAAAGKYAAAlSAQBYFQAAAAAAAPClAADyUwEAGKYAABNTAQCQFQAAAAAAAPClAABcVQEAGKYAAD9UAQCoFQAAAAAAAPClAAD5VgEAGKYAAN5VAQDAFQAAAAAAAPClAABoWAEAGKYAAF9XAQDYFQAAAAAAABimAAC9WAEAABUAAAAAAADwpQAAqVoBABimAACdWQEAABYAAAAAAADwpQAADlwBABimAAAZWwEAGBYAAAAAAADwpQAAOF0BABimAABXXAEAMBYAAAAAAADwpQAAgF4BABimAACDXQEASBYAAAAAAAAYpgAA2F4BAEgWAAAAAAAAGKYAAN5fAQBIFgAAAAAAABimAADhYAEAkBUAAAAAAADwpQAA82IBABimAADaYQEAkBYAAAAAAADwpQAAa2QBABimAABXYwEAqBYAAAAAAAAYpgAAxmQBAKgWAAAAAAAAGKYAANplAQCoFgAAAAAAAPClAADyZwEAGKYAAO9mAQDgFgAAAAAAAPClAABLaQEAGKYAAEloAQD4FgAAAAAAABimAACHaQEAwBUAAAAAAAAYpgAAk2oBAKgWAAAAAAAAGKYAAKVrAQCoFgAAAAAAABimAAC1bAEAqBYAAAAAAAAYpgAA0G0BAKgWAAAAAAAAGKYAAOZuAQCoFgAAAAAAABimAAD6bwEAqBYAAAAAAAAYpgAADXEBAKgWAAAAAAAAGKYAAB9yAQCoFgAAAAAAABimAAA8cwEAqBYAAAAAAAAYpgAAWHQBAKgWAAAAAAAAGKYAAG91AQCoFgAAAAAAABimAACOdgEAqBYAAAAAAAAYpgAAoXcBAKgWAAAAAAAA8KUAAOR5AQAYpgAAu3gBAPAXAAAAAAAA8KUAAFR7AQAYpgAATXoBAAgYAAAAAAAAGKYAAKx7AQAIGAAAAAAAAPClAACcfQEAGKYAALR8AQAwGAAAAAAAABimAADPfQEAMBgAAAAAAAAYpgAAt34BADAYAAAAAAAA8KUAAJqAAQAYpgAAoH8BAGgYAAAAAAAA8KUAAPGBAQAYpgAA5IABAIAYAAAAAAAAGKYAAE+CAQCAGAAAAAAAAPClAABUhAEAGKYAAGCDAQCoGAAAAAAAABimAACNhAEAqBgAAAAAAAAYpgAAgoUBAMAVAAAAAAAAGKYAAJeGAQDgFgAAAAAAABimAACjhwEAwBUAAAAAAAAYpgAA34gBAMAVAAAAAAAA8KUAANWLAQAYpgAAGooBABAZAAAAAAAA8KUAAFeNAQAYpgAAKowBACgZAAAAAAAAGKYAALKNAQCoFgAAAAAAAPClAAAOkAEAGKYAAOSOAQBQGQAAAAAAAPClAAC3kQEAGKYAAIaQAQBoGQAAAAAAABimAAAhkgEAaBkAAAAAAAAYpgAAW5MBAGgZAAAAAAAA8KUAAGSVAQAYpgAAtZQBAKAZAAAAAAAA8KUAAG+WAQAYpgAAhpUBALgZAAAAAAAAGKYAAKuWAQCgGQAAAAAAABimAACNlwEAoBkAAAAAAAAYpgAAVZgBAKAZAAAAAAAA8KUAAEecAQAYpgAAU5sBAAAaAAAAAAAAGKYAAGecAQAAGgAAAAAAABimAACsnQEAABoAAAAAAAAYpgAAnJ4BAAAaAAAAAAAA8KUAAKagAQAYpgAAtZ8BAEgaAAAAAAAA8KUAAPehAQAYpgAA+6ABAGAaAAAAAAAA8KUAACGjAQAYpgAAL6IBAHgaAAAAAAAA8KUAACykAQAYpgAAQaMBAJAaAAAAAAAA8KUAAJWlAQAYpgAAb6QBAKgaAAAAAAAAGKYAABamAQBYFQAAAAAAAPClAAAWqAEAGKYAABGnAQDQGgAAAAAAABimAACDqAEAWBUAAAAAAAAYpgAAhakBAKAZAAAAAAAA8KUAADWrAQAYpgAAQKoBAAgbAAAAAAAAGKYAAHqrAQDAFQAAAAAAABimAAB8rAEAwBUAAAAAAAAYpgAAha0BAKAZAAAAAAAAGKYAAD+uAQBYFQAAAAAAABimAAA3rwEAWBUAAAAAAAAYpgAAL7ABAFgVAAAAAAAA8KUAAO2yAQAYpgAADLIBAIAbAAAAAAAA8KUAAP6zAQAYpgAAKbMBAJgbAAAAAAAAGKYAADi0AQCYGwAAAAAAAPClAAANtQEAXKYAAC61AQAAAAAAwBsAAFymAABQtQEAAQAAAMAbAAABAAAAAQAAAAAAAAAAAPA/AAAAAAAA8D8YpgAAFLYBADArAAAAAAAAGKYAAEy2AQAoHAAAAAAAAPClAAAwtgEA8KUAAJ+2AQAYpgAA4LYBAEgcAAAAAAAA8KUAAMS2AQDwpQAAMLcBABimAAButwEAaBwAAAAAAADwpQAAUrcBAPClAAC/twEAGKYAAP63AQCIHAAAAAAAAPClAADitwEA8KUAAFG4AQAYpgAAkrgBAKgcAAAAAAAA8KUAAHa4AQDwpQAA5LgBABimAAAkuQEAyBwAAAAAAADwpQAACLkBAPClAACnuQEAGKYAACG6AQCoHAAAAAAAAPClAAAFugEAGKYAAI+6AQAAHQAAAAAAAPClAABzugEA8KUAAOC6AQAYpgAAH7sBAGgcAAAAAAAA8KUAAAO7AQAYpgAAjLsBAEgcAAAAAAAA8KUAAHC7AQAYpgAABLwBAFAdAAAAAAAA8KUAANy7AQDwpQAAVLwBABimAACfvAEAUB0AAAAAAADwpQAAdrwBABimAAAbvQEAiB0AAAAAAADwpQAA7rwBAPClAACcvQEAGKYAACO+AQCIHQAAAAAAAPClAAD5vQEAGKYAAMi+AQCIHQAAAAAAAPClAACkvgEAGKYAAG2/AQBQHQAAAAAAAPClAABJvwEAGKYAANe/AQBQHQAAAAAAAPClAAC8vwEAGKYAAEvAAQBQHQAAAAAAAPClAAAmwAEAGKYAAMPAAQBQHQAAAAAAAPClAACawAEAGKYAADjBAQA4HgAAAAAAAPClAAASwQEA8KUAAJjBAQAYpgAA5sEBAFgeAAAAAAAA8KUAAMvBAQDwpQAAUMIBABimAACNwgEASBoAAAAAAAAYpgAASMMBAIAeAAAAAAAA8KUAABrEAQAYpgAAc8QBAIAeAAAAAAAAGKYAAB3GAQDAHgAAAAAAABimAABIxQEAuB4AAAAAAADwpQAAw8UBABimAAD0xgEA0B4AAAAAAAAYpgAAY8cBAOAeAAAAAAAAGKYAAODHAQCoHgAAAAAAABimAADNyAEAEB8AAAAAAAAYpgAAU8gBAIAeAAAAAAAAGKYAADvJAQAgHwAAAAAAABimAAC3yQEAAB8AAAAAAAAYpgAAvMoBAFAfAAAAAAAAGKYAACnKAQCAHgAAAAAAABimAACUywEAYB8AAAAAAAAYpgAAKcwBAEAfAAAAAAAAGKYAALTMAQAQHwAAAAAAABimAACAzQEAEB8AAAAAAAAYpgAARs4BAKAfAAAAAAAA8KUAAPnOAQAYpgAAUc8BAIAeAAAAAAAAGKYAAMvPAQDIHwAAAAAAAPClAACX0AEAGKYAAL/QAQCAHgAAAAAAABimAAD80QEAACAAAAAAAAAYpgAActEBAMgfAAAAAAAAGKYAANrSAQAQIAAAAAAAABimAABm0wEA8B8AAAAAAAAYpgAAS9QBAEAgAAAAAAAAGKYAAOjTAQDIHwAAAAAAABimAAAQ1QEAUCAAAAAAAAAYpgAAddUBADAgAAAAAAAAGKYAAELWAQCAIAAAAAAAABimAADQ1QEAyB8AAAAAAAAYpgAA9tYBAHAgAAAAAAAAGKYAAGrXAQCAHgAAAAAAABimAAC+2AEAwCAAAAAAAAAYpgAAIdgBAIAeAAAAAAAAGKYAAKzZAQDQIAAAAAAAABimAABL2gEAsCAAAAAAAAAYpgAAcNsBAAAhAAAAAAAAGKYAAODaAQCAHgAAAAAAABimAABS3AEAECEAAAAAAAAYpgAA5NwBAPAgAAAAAAAAGKYAAGzdAQAAIQAAAAAAABimAABP3gEAEB8AAAAAAAAYpgAAYt8BABAfAAAAAAAAGKYAAHfgAQCAHgAAAAAAABimAAAj4QEAuB4AAAAAAAAYpgAAf+IBAJAhAAAAAAAAGKYAANfhAQC4HgAAAAAAABimAABx4wEAoCEAAAAAAAAYpgAAG+QBAIAhAAAAAAAAGKYAALvkAQDQHgAAAAAAABimAAA35gEA4CEAAAAAAAAYpgAAqOUBALgeAAAAAAAAGKYAADTnAQDwIQAAAAAAABimAADF5wEA0CEAAAAAAAAYpgAAvugBACAiAAAAAAAAGKYAAEzoAQAIGAAAAAAAABimAACa6QEAMCIAAAAAAAAYpgAADuoBABAiAAAAAAAAGKYAAPbqAQBgIgAAAAAAABimAAB46gEAuB4AAAAAAAAYpgAA1esBAHAiAAAAAAAAGKYAAFXsAQBQIgAAAAAAABimAABV7QEAoCIAAAAAAAAYpgAAy+wBALgeAAAAAAAAGKYAAELuAQCwIgAAAAAAABimAADO7gEAkCIAAAAAAAAYpgAA0e8BAOAiAAAAAAAAGKYAAFDvAQC4HgAAAAAAABimAAC38AEA8CIAAAAAAAAYpgAAOvEBANAiAAAAAAAAGKYAALPxAQC4HgAAAAAAABimAACA8gEAgB4AAAAAAAAYpgAAy/MBALgeAAAAAAAAGKYAAEr0AQBAIwAAAAAAAPClAACV9QEAGKYAAL71AQDIHwAAAAAAABimAAA6+AEAaCMAAAAAAADwpQAACfcBABimAADy+AEA4CIAAAAAAAAYpgAAEPoBAOAiAAAAAAAAGKYAAC77AQDgIgAAAAAAABimAABN/AEA4CIAAAAAAAAYpgAAR/0BAOAiAAAAAAAAGKYAAD7+AQDgIgAAAAAAABimAABB/wEA4CIAAAAAAAAYpgAAPwACAOAiAAAAAAAAGKYAADsBAgDgIgAAAAAAABimAAA2AgIA4CIAAAAAAAAYpgAAMAMCAOAiAAAAAAAAGKYAADUEAgDgIgAAAAAAABimAAA5BQIA4CIAAAAAAAAYpgAAOAYCAOAiAAAAAAAAGKYAAJ8HAgBwJAAAAAAAABimAAArBwIAuB4AAAAAAAAYpgAAdQgCAIAkAAAAAAAAGKYAAOsIAgBgJAAAAAAAABimAACvCgIAwCQAAAAAAAAYpgAAVwkCALgeAAAAAAAAGKYAAEsKAgBAIwAAAAAAABimAAB/CwIAsCQAAAAAAAAYpgAA5QsCANAeAAAAAAAAGKYAAMQMAgC4HgAAAAAAABimAACpDQIAECUAAAAAAAAYpgAAXA0CAEAjAAAAAAAAGKYAAGcOAgAgJQAAAAAAABimAAC2DgIAACUAAAAAAAAYpgAAXw8CAFAlAAAAAAAAGKYAAPsOAgBAIwAAAAAAABimAAAtEAIAYCUAAAAAAAAYpgAAkxACAEAlAAAAAAAAGKYAAHMRAgCQJQAAAAAAABimAADvEAIAuB4AAAAAAAAYpgAAVBICAKAlAAAAAAAAGKYAANoSAgCAJQAAAAAAABimAABWEwIAkCUAAAAAAAAYpgAAjBQCAOAlAAAAAAAAGKYAADkUAgBAIwAAAAAAABimAACPFQIA8CUAAAAAAAAYpgAA5BUCANAlAAAAAAAAGKYAAC8WAgDQHgAAAAAAABimAAAYFwIAcCQAAAAAAAAYpgAA+BcCANAeAAAAAAAAGKYAAAUZAgDQHgAAAAAAABimAAARGgIAgB4AAAAAAAAYpgAAOB4CAIgmAAAAAAAAGKYAABkcAgBQHQAAAAAAAPClAACOGgIAGKYAANQdAgDIHwAAAAAAABimAACsHwIAeCYAAAAAAAAYpgAAkyACALgmAAAAAAAAGKYAABIgAgC4HgAAAAAAABimAACRIQIAyCYAAAAAAAAYpgAAFCICAKgmAAAAAAAAGKYAAI0iAgDgIgAAAAAAABimAACHIwIAgB4AAAAAAAAYpgAAUiQCABgnAAAAAAAAGKYAAAkkAgDIHwAAAAAAABimAAAYJQIAKCcAAAAAAAAYpgAAYyUCAAgnAAAAAAAAGKYAAEImAgBYJwAAAAAAABimAACkJQIAuB4AAAAAAAAYpgAAQCcCAGgnAAAAAAAAGKYAAOAnAgBIJwAAAAAAABimAAAGKQIAmCcAAAAAAAAYpgAAdigCALgeAAAAAAAAGKYAABEqAgCoJwAAAAAAABimAACjKgIAiCcAAAAAAAAYpgAAKysCAJgnAAAAAAAAGKYAAMUsAgBQHQAAAAAAAPClAAA+LAIAGKYAALctAgAYNAAAAAAAAPClAAAmLgIAGKYAADYuAgDwJwAAAAAAABimAABWLgIAGDQAAAAAAAAYpgAAqS4CAPAnAAAAAAAAGKYAAMMuAgAYNAAAAAAAABimAACtLwIAiCgAAAAAAAAYpgAAjS8CADgoAAAAAAAAGKYAAGovAgBIKAAAAAAAABimAABHLwIAWCgAAAAAAAAYpgAAKC8CAGgoAAAAAAAA8KUAABAvAgAYpgAAyi8CABg0AAAAAAAAGKYAABAwAgAYNAAAAAAAABimAABUMAIAGDQAAAAAAAAYpgAAyDACABg0AAAAAAAA8KUAAC0xAgAYpgAAljECANAoAAAAAAAAGKYAAEAxAgAYNAAAAAAAABimAAC5MQIA0CgAAAAAAAAYpgAA1jECANAoAAAAAAAAGKYAAPIxAgAYNAAAAAAAABimAABCMgIAGDQAAAAAAAAYpgAAkTICABg0AAAAAAAAGKYAANgyAgAYNAAAAAAAABimAAAbMwIAGDQAAAAAAAAYpgAAizMCABg0AAAAAAAAGKYAAOszAgCIKgAAAAAAABimAAADNAIAkCoAAAAAAAAYpgAAKjQCAIgqAAAAAAAAGKYAAEQ0AgCYKgAAAAAAABimAABsNAIAkCoAAAAAAAAYpgAAEjUCAIgdAAAAAAAA8KUAAJU0AgAYpgAA8DUCAPApAAAAAAAA8KUAAA02AgAYpgAAMjYCAPApAAAAAAAAGKYAAKU2AgCIKgAAAAAAABimAABRNgIAKCoAAAAAAADwpQAAhDYCABimAACwNwIAOB4AAAAAAAAYpgAAvzYCAFAqAAAAAAAAGKYAACE3AgBgKgAAAAAAAPClAABrNwIAGKYAAEQ4AgCQKgAAAAAAABimAACCOAIAmCoAAAAAAADwpQAAqDgCAPClAADPOAIAGKYAADI7AgAYKwAAAAAAABimAAANOQIAGDQAAAAAAAA4AAAAAAAAAEAvAABiAwAAYwMAAMj////I////QC8AAGQDAABlAwAAGKYAANs5AgAALwAAAAAAABimAAAdOgIAQC8AAAAAAAAYpgAAsDoCAFAdAAAAAAAA8KUAAGM6AgAYpgAASjsCACgrAAAAAAAA8KUAAG47AgCwpgAAiTsCAAAAAAABAAAAGBMAAAAAAAAYpgAA/kwCABgsAAAAAAAAGKYAAFdFAgC4KwAAAAAAAPClAACxPwIAGKYAAOQ/AgBoKwAAAAAAABimAADuQAIAmCsAAAAAAADwpQAAJUACAPClAADoQQIAGKYAAO1CAgCYKwAAAAAAAPClAAAgQgIA8KUAAJNFAgAYpgAAREcCANgrAAAAAAAA8KUAAG5GAgDwpQAAYkgCABimAACSSQIA+CsAAAAAAADwpQAAvEgCAPClAACwSgIAGKYAAOBLAgD4KwAAAAAAAPClAAAKSwIA8KUAABlNAgDwpQAANU0CABimAAA7TQIAGDQAAAAAAAAYpgAAfU0CAEgsAAAAAAAA8KUAAJ9NAgAYpgAAuk0CADgsAAAAAAAAGKYAALxOAgCILAAAAAAAAFymAABBTgIAAAAAAIAsAAB4pgAAf04CAPClAAAoTwIAGKYAAE9RAgCILAAAAAAAAPClAAAnUQIAGKYAANftAgBYLQAAAAAAABimAAD67QIAWC0AAAAAAAAYpgAAIO4CANgsAAAAAAAA8KUAAEzuAgAYpgAAb+4CANgsAAAAAAAAGKYAAJHuAgDYLAAAAAAAAPClAAAG7wIAsKYAAFHvAgAAAAAAAQAAAAAtAAAD9P//8KUAAMbvAgAYpgAAW/ECABg0AAAAAAAAGKYAAKTxAgAYNAAAAAAAABimAABe8gIAGDQAAAAAAADwpQAAp/ICABimAADK8gIAGDQAAAAAAAAYpgAACvMCABg0AAAAAAAAGKYAAFHzAgAYNAAAAAAAADwAAAAAAAAAEC8AAM4DAADPAwAAxP///8T///8QLwAA0AMAANEDAAAYpgAAO/8CABAvAAAAAAAAGKYAALMDAwAYNAAAAAAAABimAAAkBAMAGDQAAAAAAAAYpgAAZQQDABg0AAAAAAAAbAAAAAAAAAAQLwAAzgMAAM8DAACU////lP///xAvAADQAwAA0QMAABimAADFBAMAAC8AAAAAAAAYpgAA9AQDABAvAAAAAAAA8KUAACQFAwDwpQAApREDAPClAADkEQMA8KUAACISAwDwpQAAaBIDAPClAAClEgMA8KUAAMQSAwDwpQAA4xIDAPClAAACEwMA8KUAACETAwDwpQAAQBMDAPClAABfEwMA8KUAAJwTAwCwpgAAuxMDAAAAAAABAAAAoBQAAAAAAACwpgAA+hMDAAAAAAABAAAAoBQAAAAAAAAYpgAA1h8DAOguAAAAAAAA8KUAAMQfAwAYpgAAACADAOguAAAAAAAA8KUAACogAwDwpQAAWyADALCmAACMIAMAAAAAAAEAAADYLgAAA/T//7CmAAC7IAMAAAAAAAEAAADwLgAAA/T//7CmAADqIAMAAAAAAAEAAADYLgAAA/T//7CmAAAZIQMAAAAAAAEAAADwLgAAA/T//ximAABIIQMACC8AAAAAAAAYpgAAYSEDAAAvAAAAAAAAGKYAAKAhAwAILwAAAAAAABimAAC4IQMAAC8AAAAAAAAYpgAA0CEDAMAvAAAAAAAAGKYAAOQhAwAQNAAAAAAAABimAAD6IQMAwC8AAAAAAACwpgAANCIDAAAAAAACAAAAwC8AAAIAAAAAMAAAAAAAALCmAAB4IgMAAAAAAAEAAAAYMAAAAAAAAPClAACOIgMAsKYAAKciAwAAAAAAAgAAAMAvAAACAAAAQDAAAAAAAACwpgAA6yIDAAAAAAABAAAAGDAAAAAAAACwpgAAFCMDAAAAAAACAAAAwC8AAAIAAAB4MAAAAAAAALCmAABYIwMAAAAAAAEAAACQMAAAAAAAAPClAABuIwMAsKYAAIcjAwAAAAAAAgAAAMAvAAACAAAAuDAAAAAAAACwpgAAyyMDAAAAAAABAAAAkDAAAAAAAACwpgAAISUDAAAAAAADAAAAwC8AAAIAAAD4MAAAAgAAAAAxAAAACAAA8KUAAIglAwDwpQAAZiUDALCmAACbJQMAAAAAAAMAAADALwAAAgAAAPgwAAACAAAAMDEAAAAIAADwpQAA4CUDALCmAAACJgMAAAAAAAIAAADALwAAAgAAAFgxAAAACAAA8KUAAEcmAwCwpgAAXCYDAAAAAAACAAAAwC8AAAIAAABYMQAAAAgAALCmAAChJgMAAAAAAAIAAADALwAAAgAAAKAxAAACAAAA8KUAAL0mAwCwpgAA0iYDAAAAAAACAAAAwC8AAAIAAACgMQAAAgAAALCmAADuJgMAAAAAAAIAAADALwAAAgAAAKAxAAACAAAAsKYAAAonAwAAAAAAAgAAAMAvAAACAAAAoDEAAAIAAACwpgAANScDAAAAAAACAAAAwC8AAAIAAAAoMgAAAAAAAPClAAB7JwMAsKYAAJ8nAwAAAAAAAgAAAMAvAAACAAAAUDIAAAAAAADwpQAA5ScDALCmAAAEKAMAAAAAAAIAAADALwAAAgAAAHgyAAAAAAAA8KUAAEooAwCwpgAAYygDAAAAAAACAAAAwC8AAAIAAACgMgAAAAAAAPClAACpKAMAsKYAAMIoAwAAAAAAAgAAAMAvAAACAAAAyDIAAAIAAADwpQAA1ygDALCmAABuKQMAAAAAAAIAAADALwAAAgAAAMgyAAACAAAAGKYAAO8oAwAAMwAAAAAAALCmAAASKQMAAAAAAAIAAADALwAAAgAAACAzAAACAAAA8KUAADUpAwAYpgAATCkDAAAzAAAAAAAAsKYAAIMpAwAAAAAAAgAAAMAvAAACAAAAIDMAAAIAAACwpgAApSkDAAAAAAACAAAAwC8AAAIAAAAgMwAAAgAAALCmAADHKQMAAAAAAAIAAADALwAAAgAAACAzAAACAAAAGKYAAOopAwDALwAAAAAAALCmAAAAKgMAAAAAAAIAAADALwAAAgAAAMgzAAACAAAA8KUAABIqAwCwpgAAJyoDAAAAAAACAAAAwC8AAAIAAADIMwAAAgAAABimAABEKgMAwC8AAAAAAAAYpgAAWSoDAMAvAAAAAAAA8KUAAG4qAwCwpgAAhyoDAAAAAAABAAAAEDQAAAAAAAAYpgAAvCsDAEA0AAAAAAAAGKYAAGkrAwBQNAAAAAAAAPClAACKKwMAGKYAAJcrAwAwNAAAAAAAABimAAACLAMAQDQAAAAAAAAYpgAA3isDAGg0AAAAAAAAGKYAACQsAwBANAAAAAAAAECmAABMLAMAQKYAAE4sAwBApgAAUSwDAECmAABTLAMAQKYAAFUsAwBApgAAVywDAECmAABZLAMAQKYAAFssAwBApgAAXSwDAECmAABfLAMAQKYAABIjAwBApgAAYSwDAECmAABjLAMAQKYAAGUsAwAYpgAAZywDAEA0AAAAAAAAGKYAAIwsAwBANAAAAAAAABimAACtLAMAMDQAAAAAAAAAAAAAEAAAAAEAAAACAAAAAQAAAAEAAAADAAAABAAAAAIAAAABAAAAAgAAAAAAAABAAAAABQAAAAYAAAABAAAAAwAAAAAAAABQAAAAAQAAAAcAAAAEAAAAAwAAAAgAAAAJAAAABAAAAAIAAAAFAAAAAAAAAIgAAAAFAAAACgAAAAIAAAAGAAAAAAAAAJgAAAABAAAACwAAAAcAAAAFAAAADAAAAA0AAAAGAAAAAwAAAAgAAAAAAAAA0AAAAAUAAAAOAAAAAwAAAAkAAAAAAAAA4AAAAAEAAAAPAAAACgAAAAcAAAAQAAAAEQAAAAgAAAAEAAAACwAAAAAAAAAYAQAABQAAABIAAAAEAAAADAAAAAAAAAAoAQAAAQAAABMAAAANAAAACQAAABQAAAAVAAAACgAAAAUAAAAOAAAAAAAAAFABAAAWAAAAFwAAAAUAAAAPAAAAAAAAAIABAAAFAAAAGAAAAAYAAAAQAAAAAAAAAJgBAAABAAAAGQAAABEAAAALAAAAGgAAABsAAAAMAAAABgAAABIAAAAAAAAAwAEAABwAAAAdAAAABwAAABMAAAAAAAAAsAEAAB4AAAAfAAAAAQAAABMAAAAAAAAA8AEAAAUAAAAgAAAACAAAABQAAAAAAAAAAAIAAAEAAAAhAAAAFQAAAA0AAAAiAAAAIwAAAA4AAAAHAAAAFgAAAAAAAAAoAgAAJAAAACUAAAAJAAAAFwAAAAAAAAAYAgAAJgAAACcAAAABAAAAFwAAAAAAAAA4AgAAAQAAACgAAAAYAAAADwAAACkAAAAqAAAAEAAAAAgAAAAZAAAAAAAAAGACAAArAAAALAAAAAoAAAAaAAAAAAAAAFACAAAtAAAALgAAAAEAAAAaAAAAAAAAAIACAAAvAAAAMAAAAAsAAAAbAAAAAAAAAHACAAAxAAAAMgAAAAEAAAAbAAAAAAAAALACAAAFAAAAMwAAAAwAAAAcAAAAAAAAAEgDAAABAAAANAAAAB0AAAARAAAANQAAADYAAAASAAAACQAAAB4AAAAAAAAAcAMAADcAAAA4AAAADQAAAB8AAAAAAAAAYAMAADkAAAA6AAAAAQAAAB8AAAAAAAAAkAMAADsAAAA8AAAADgAAACAAAAAAAAAAwAMAAAUAAAA9AAAADwAAACEAAAAAAAAA8AMAAAUAAAA+AAAAEAAAACIAAAAAAAAAkAQAAAEAAAA/AAAAIwAAABMAAABAAAAAQQAAABQAAAAKAAAAJAAAAAAAAAC4BAAAQgAAAEMAAAARAAAAJQAAAAAAAACoBAAARAAAAEUAAAABAAAAJQAAAAAAAADoBAAABQAAAEYAAAASAAAAJgAAAAAAAAAABQAAAQAAAEcAAAAnAAAAFQAAAEgAAABJAAAAFgAAAAsAAAAoAAAAAAAAACgFAABKAAAASwAAABMAAAApAAAAAAAAABgFAABMAAAATQAAAAEAAAApAAAAAAAAAFgFAAAFAAAATgAAABQAAAAqAAAAAAAAAIAFAAABAAAATwAAACsAAAAXAAAAUAAAAFEAAAAYAAAADAAAACwAAAAAAAAAuAUAAFIAAABTAAAAFQAAAC0AAAAAAAAAmAUAAFIAAABUAAAAAQAAAC0AAAAAAAAA6AUAAAUAAABVAAAAFgAAAC4AAAAAAAAA+AUAAAEAAABWAAAALwAAABkAAABXAAAAWAAAABoAAAANAAAAMAAAAAAAAAAwBgAAWQAAAFoAAAAXAAAAMQAAAAAAAAAQBgAAWQAAAFsAAAABAAAAMQAAAAAAAABgBgAABQAAAFwAAAAYAAAAMgAAAAAAAABwBgAAAQAAAF0AAAAzAAAAGwAAAF4AAABfAAAAHAAAAA4AAAA0AAAAAAAAAJgGAABgAAAAYQAAABkAAAA1AAAAAAAAAIgGAABiAAAAYwAAAAEAAAA1AAAAAAAAAMgGAAAFAAAAZAAAABoAAAA2AAAAAAAAAGAHAAABAAAAZQAAADcAAAAdAAAAZgAAAGcAAAAeAAAADwAAADgAAAAAAAAAiAcAAGgAAABpAAAAGwAAADkAAAAAAAAAeAcAAGoAAABrAAAAAQAAADkAAAAAAAAAmAcAAAEAAABsAAAAOgAAAB8AAABtAAAAbgAAACAAAAAQAAAAOwAAAAAAAADABwAAbwAAAHAAAAAcAAAAPAAAAAAAAACwBwAAcQAAAHIAAAABAAAAPAAAAAAAAADwBwAABQAAAHMAAAAdAAAAPQAAAAAAAAAICAAAAQAAAHQAAAA+AAAAIQAAAHUAAAB2AAAAIgAAABEAAAA/AAAAAAAAADAIAAB3AAAAeAAAAB4AAABAAAAAAAAAACAIAAB5AAAAegAAAAEAAABAAAAAAAAAAEAIAAABAAAAewAAAEEAAAAjAAAAfAAAAH0AAAAkAAAAEgAAAEIAAAAAAAAAWAgAAAEAAAB+AAAAQwAAACUAAAB/AAAAgAAAACYAAAATAAAARAAAAAAAAACQCAAAgQAAAIIAAAAfAAAARQAAAAAAAABwCAAAgQAAAIMAAAABAAAARQAAAAAAAACgCAAAAQAAAIQAAABGAAAAJwAAAIUAAACGAAAAKAAAABQAAABHAAAAAAAAAMgIAACHAAAAiAAAACAAAABIAAAAAAAAALgIAACJAAAAigAAAAEAAABIAAAAAAAAAPgIAAAFAAAAiwAAACEAAABJAAAAAAAAAAgJAAABAAAAjAAAAEoAAAApAAAAjQAAAI4AAAAqAAAAFQAAAEsAAAAAAAAAQAkAAAUAAACPAAAAIgAAAEwAAAAAAAAAWAkAAAEAAACQAAAATQAAACsAAACRAAAAkgAAACwAAAAWAAAATgAAAAAAAACACQAAkwAAAJQAAAAjAAAATwAAAAAAAABwCQAAlQAAAJYAAAABAAAATwAAAAAAAACYCQAAAQAAAJcAAABQAAAALQAAAJgAAACZAAAALgAAABcAAABRAAAAAAAAANAJAAAFAAAAmgAAACQAAABSAAAAAAAAAOgJAAABAAAAmwAAAFMAAAAvAAAAnAAAAJ0AAAAwAAAAGAAAAFQAAAAAAAAAEAoAAJ4AAACfAAAAJQAAAFUAAAAAAAAAAAoAAKAAAAChAAAAAQAAAFUAAAAAAAAAIAoAAAEAAACiAAAAVgAAADEAAACjAAAApAAAADIAAAAZAAAAVwAAAAAAAABICgAApQAAAKYAAAAmAAAAWAAAAAAAAAA4CgAApwAAAKgAAAABAAAAWAAAAAAAAABYCgAAAQAAAKkAAABZAAAAMwAAAKoAAACrAAAANAAAABoAAABaAAAAAAAAAIAKAACsAAAArQAAACcAAABbAAAAAAAAAHAKAACuAAAArwAAAAEAAABbAAAAAAAAAKAKAACwAAAAsQAAACgAAABcAAAAAAAAAJAKAACyAAAAswAAAAEAAABcAAAAAAAAANAKAAAFAAAAtAAAACkAAABdAAAAAAAAAPAKAAC1AAAAtgAAACoAAABeAAAAAAAAAOAKAAC3AAAAuAAAAAEAAABeAAAAAAAAACALAAAFAAAAuQAAACsAAABfAAAAMAsAADALAADgNAAA4DQAAAAAAAA4CwAAAQAAALoAAABgAAAANQAAALsAAAC8AAAANgAAABsAAABhAAAAAAAAAHALAAAFAAAAvQAAACwAAABiAAAAAAAAAIgLAAABAAAAvgAAAGMAAAA3AAAAvwAAAMAAAAA4AAAAHAAAAGQAAAAAAAAAwAsAAAUAAADBAAAALQAAAGUAAAAAAAAA2AsAAAEAAADCAAAAZgAAADkAAADDAAAAxAAAADoAAAAdAAAAZwAAAAAAAAAQDAAABQAAAMUAAAAuAAAAaAAAAAAAAAAoDAAAAQAAAMYAAABpAAAAOwAAAMcAAADIAAAAPAAAAB4AAABqAAAAAAAAAGAMAAAFAAAAyQAAAC8AAABrAAAAAAAAAHgMAAABAAAAygAAAGwAAAA9AAAAywAAAMwAAAA+AAAAHwAAAG0AAAAAAAAAoAwAAM0AAADOAAAAMAAAAG4AAAAAAAAAkAwAAM8AAADQAAAAAQAAAG4AAAAAAAAAuAwAAAEAAADRAAAAbwAAAD8AAADSAAAA0wAAAEAAAAAgAAAAcAAAAAAAAADgDAAABQAAANQAAAAxAAAAcQAAAAAAAAD4DAAAAQAAANUAAAByAAAAQQAAANYAAADXAAAAQgAAACEAAABzAAAAAAAAADANAAAFAAAA2AAAADIAAAB0AAAAAAAAAEgNAAABAAAA2QAAAHUAAABDAAAA2gAAANsAAABEAAAAIgAAAHYAAAAAAAAAYA0AAAEAAADcAAAAdwAAAEUAAADdAAAA3gAAAEYAAAAjAAAAeAAAAAAAAACIDQAABQAAAN8AAAAzAAAAeQAAAAAAAAB4DQAABQAAAOAAAAABAAAAeQAAAAAAAAC4DQAABQAAAOEAAAA0AAAAegAAAAAAAADoDQAABQAAAOIAAAA1AAAAewAAAAAAAAD4DQAAAQAAAOMAAAB8AAAARwAAAOQAAADlAAAASAAAACQAAAB9AAAAAAAAADAOAAAFAAAA5gAAADYAAAB+AAAAAAAAAEgOAAABAAAA5wAAAH8AAABJAAAA6AAAAOkAAABKAAAAJQAAAIAAAAAAAAAAgA4AAAUAAADqAAAANwAAAIEAAAAAAAAAkA4AAAEAAADrAAAAggAAAEsAAADsAAAA7QAAAEwAAAAmAAAAgwAAAAAAAACoDgAAAQAAAO4AAACEAAAATQAAAO8AAADwAAAATgAAACcAAACFAAAAAAAAAMAOAAABAAAA8QAAAIYAAABPAAAA8gAAAPMAAABQAAAAKAAAAIcAAAAAAAAA+A4AAAUAAAD0AAAAOAAAAIgAAAAAAAAAEA8AAAEAAAD1AAAAiQAAAFEAAAD2AAAA9wAAAFIAAAApAAAAigAAAAAAAABIDwAABQAAAPgAAAA5AAAAiwAAAAAAAABgDwAAAQAAAPkAAACMAAAAUwAAAPoAAAD7AAAAVAAAACoAAACNAAAAAAAAAJgPAAAFAAAA/AAAADoAAACOAAAAAAAAALAPAAABAAAA/QAAAI8AAABVAAAA/gAAAP8AAABWAAAAKwAAAJAAAAAAAAAA6A8AAAUAAAAAAQAAOwAAAJEAAAAAAAAAABAAAAEAAAABAQAAkgAAAFcAAAACAQAAAwEAAFgAAAAsAAAAkwAAAAAAAAAYEAAAAQAAAAQBAACUAAAAWQAAAAUBAAAGAQAAWgAAAC0AAACVAAAAAAAAADAQAAABAAAABwEAAJYAAABbAAAACAEAAAkBAABcAAAALgAAAJcAAAAAAAAAWBAAAAoBAAALAQAAPAAAAJgAAAAAAAAASBAAAAwBAAANAQAAAQAAAJgAAAAAAAAAeBAAAA4BAAAPAQAAPQAAAJkAAAAAAAAAaBAAABABAAARAQAAAQAAAJkAAAAAAAAAmBAAAAUAAAASAQAAPgAAAJoAAAAAAAAAuBAAAAUAAAATAQAAPwAAAJsAAAAAAAAA2BAAAAUAAAAUAQAAQAAAAJwAAAAAAAAA+BAAABUBAAAWAQAAQQAAAJ0AAAAAAAAA6BAAABcBAAAYAQAAAQAAAJ0AAAAAAAAAGBEAABkBAAAaAQAAQgAAAJ4AAAAAAAAACBEAABsBAAAcAQAAAQAAAJ4AAAAAAAAAOBEAAB0BAAAeAQAAQwAAAJ8AAAAAAAAAKBEAAB8BAAAgAQAAAQAAAJ8AAAAAAAAAWBEAAAUAAAAhAQAARAAAAKAAAAAAAAAAeBEAACIBAAAjAQAARQAAAKEAAAAAAAAAaBEAACQBAAAlAQAAAQAAAKEAAAAAAAAAmBEAAAUAAAAmAQAARgAAAKIAAAAAAAAAQBIAAAEAAAAnAQAAowAAAF0AAAAoAQAAKQEAAF4AAAAvAAAApAAAAAAAAAB4EgAABQAAACoBAABHAAAApQAAAAAAAACIEgAAAQAAACsBAACmAAAAXwAAACwBAAAtAQAAYAAAADAAAACnAAAAAAAAAKASAAABAAAALgEAAKgAAABhAAAALwEAADABAABiAAAAMQAAAKkAAAAAAAAAuBIAAAEAAAAxAQAAqgAAAGMAAAAyAQAAMwEAAGQAAAAyAAAAqwAAAAAAAADQEgAAAQAAADQBAACsAAAAZQAAADUBAAA2AQAAZgAAADMAAACtAAAAAAAAAPASAAA3AQAAOAEAAGcAAABoAAAAaQAAAK4AAAAAEwAAAAAAAAgTAAA5AQAAOgEAAAEAAAABAAAAAAAAABgTAAA7AQAAPAEAAAEAAAABAAAAMAsAAOA0AADgNAAAMAsAAOA0AADgNAAAMAsAAJg0AACYNAAA4DQAAJg0AADgNAAAyBMAADASAAAwEgAAMBIAAAA1AAAANQAAADUAAJg0AADgNAAAyBMAADASAAAwEgAAMBIAAAA1AAAANQAAoBMAAOA0AADIEwAA4DQAAJg0AADgNAAAyBMAADASAADgNAAAmDQAAOA0AAAwEgAAADUAAOA0AACYNAAA4DQAAAA1AACYNAAA4DQAAAA1AAAANQAAmDQAAOA0AAAANQAAADUAAAA1AACYNAAA4DQAADASAAAANQAAmDQAAOA0AAAwEgAAADUAAAA1AAAwEgAA4DQAADASAADgNAAA4DQAAOA0AACYNAAA4DQAAOA0AADgNAAA4DQAAAA1AACoNAAAqDQAADALAAAwCwAAABMAAAATAACoFAAAqBQAAKgUAACoNAAAqDQAAKg0AACoNAAAqDQAAKg0AACoNAAAqDQAAKg0AADgNAAA4DQAAPg0AADAEwAA4DQAALgTAACYNAAAMAsAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AAAANQAAqDQAADALAADgNAAA4DQAAIAEAAAAAAAA8BQAAD0BAAA+AQAAagAAAGsAAABsAAAArwAAAJg0AADgNAAA4DQAAOA0AADgNAAAEBQAAOA0AADgNAAAEBQAAOA0AADgNAAAMAsAADALAAAAAAAACBUAAD8BAABAAQAAbQAAAG4AAABvAAAAsAAAAJg0AADgNAAA4DQAADALAAAwCwAAmDQAADALAAAwCwAAAAAAABgVAABBAQAAQgEAAHAAAABxAAAAcgAAALAAAAAAAAAAMBUAAEMBAABEAQAAcwAAAHQAAAB1AAAAsQAAAAAAAABIFQAARQEAAEYBAAB2AAAAdwAAAHgAAACyAAAAAAAAAGAVAABHAQAASAEAAHkAAAB6AAAAewAAALMAAACYNAAA4DQAAOA0AACQAQAAMAsAADALAAAAAAAAcBUAAEkBAABKAQAAfAAAAH0AAAB+AAAAsgAAAAAAAACAFQAASwEAAEwBAAB/AAAAgAAAAIEAAACzAAAAmDQAAFAHAAAwCwAAMAsAAAAAAACYFQAATQEAAE4BAACCAAAAgwAAAIQAAAC0AAAAAAAAALAVAABPAQAAUAEAAIUAAACGAAAAhwAAALUAAAAAAAAAyBUAAFEBAABSAQAAiAAAAIkAAACKAAAAtgAAAJg0AADgNAAA4DQAAFAHAAAwCwAAMAsAAJg0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AAAwCwAAMAsAAAAAAADgFQAAUwEAAFQBAACLAAAAjAAAAI0AAAC3AAAAmDQAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AADgNAAA4DQAAOA0AADgNAAAMAsAADALAAAAAAAA8BUAAFUBAABWAQAAjgAAAI8AAACQAAAAsAAAAAAAAAAIFgAAVwEAAFgBAACRAAAAkgAAAJMAAAC4AAAAmDQAALARAADgNAAAMAsAADALAAAAAAAAIBYAAFkBAABaAQAAlAAAAJUAAACWAAAAuQAAAJg0AADgNAAA4DQAALARAAAwCwAAMAsAAAAAAAA4FgAAWwEAAFwBAACXAAAAmAAAAJkAAAC6AAAAmDQAALARAAAwCwAAMAsAAAAAAABQFgAAXQEAAF4BAACaAAAAmwAAAJwAAAC7AAAAmDQAALARAACoEQAAsBEAALARAACwEQAA0DQAAOA0AAAwCwAAMAsAAAAAAABgFgAAXwEAAGABAACdAAAAngAAAJ8AAAC7AAAAmDQAALARAACoEQAAsBEAALARAACwEQAA0DQAADALAAAwCwAAAAAAAHAWAABhAQAAYgEAAKAAAAChAAAAogAAALsAAACYNAAAsBEAAKgRAACwEQAAsBEAALARAAAwCwAAMAsAAAAAAACAFgAAYwEAAGQBAACjAAAApAAAAKUAAAC0AAAAmDQAAOA0AADgNAAAMAsAADALAADgNAAAAAAAAJgWAABlAQAAZgEAAKYAAACnAAAAqAAAALwAAACYNAAA4DQAAOA0AACoNAAA4DQAAAAAAACwFgAAZwEAAGgBAACpAAAAqgAAAKsAAAC9AAAAAAAAAMAWAABpAQAAagEAAKwAAACtAAAArgAAAL0AAAAAAAAA0BYAAGsBAABsAQAArwAAALAAAACxAAAAvQAAAJg0AADgNAAA4DQAAAAUAADgNAAAMAsAADALAADgNAAAmDQAAOA0AADgNAAAABQAAOA0AADgNAAAqDQAAOA0AACYNAAA4DQAAOA0AAAAFAAA4DQAAJg0AADgNAAA4DQAAOA0AAAAAAAA6BYAAG0BAABuAQAAsgAAALMAAAC0AAAAvgAAAJg0AADgNAAA4DQAAOA0AAAwCwAAMAsAAOA0AAAAAAAAABcAAG8BAABwAQAAtQAAALYAAAC3AAAAvwAAAJg0AADgNAAA4DQAAOA0AACoEQAAMAsAADALAADgNAAAAAAAABAXAABxAQAAcgEAALgAAAC5AAAAugAAALYAAAAAAAAAIBcAAHMBAAB0AQAAuwAAALwAAAC9AAAAvQAAAAAAAAAwFwAAdQEAAHYBAAC+AAAAvwAAAMAAAAC9AAAAAAAAAEAXAAB3AQAAeAEAAMEAAADCAAAAwwAAAL0AAAAAAAAAUBcAAHkBAAB6AQAAxAAAAMUAAADGAAAAvQAAAAAAAABgFwAAewEAAHwBAADHAAAAyAAAAMkAAAC9AAAAAAAAAHAXAAB9AQAAfgEAAMoAAADLAAAAzAAAAL0AAAAAAAAAgBcAAH8BAACAAQAAzQAAAM4AAADPAAAAvQAAAAAAAACQFwAAgQEAAIIBAADQAAAA0QAAANIAAAC9AAAAAAAAAKAXAACDAQAAhAEAANMAAADUAAAA1QAAAL0AAAAAAAAAsBcAAIUBAACGAQAA1gAAANcAAADYAAAAvQAAAAAAAADAFwAAhwEAAIgBAADZAAAA2gAAANsAAAC9AAAAAAAAANAXAACJAQAAigEAANwAAADdAAAA3gAAAL0AAAAAAAAA4BcAAIsBAACMAQAA3wAAAOAAAADhAAAAvQAAAJg0AADgNAAA4DQAAPg0AAD4NAAA4DQAAAAAAAD4FwAAjQEAAI4BAADiAAAA4wAAAOQAAADAAAAAAAAAABAYAACPAQAAkAEAAOUAAADmAAAA5wAAAMEAAACYNAAA4DQAAOA0AACoNAAAqDQAADALAAAwCwAAAAAAACAYAACRAQAAkgEAAOgAAADpAAAA6gAAAMEAAAAAAAAAOBgAAJMBAACUAQAA6wAAAOwAAADtAAAAwgAAAJg0AADgNAAA4DQAAKgRAAAwCwAAMAsAAAAAAABIGAAAlQEAAJYBAADuAAAA7wAAAPAAAADCAAAAAAAAAFgYAACXAQAAmAEAAPEAAADyAAAA8wAAAMIAAAAAAAAAcBgAAJkBAACaAQAA9AAAAPUAAAD2AAAAwwAAAAAAAACIGAAAmwEAAJwBAAD3AAAA+AAAAPkAAADEAAAAmDQAAKgRAACoEQAAMAsAADALAAAAAAAAmBgAAJ0BAACeAQAA+gAAAPsAAAD8AAAAxAAAAJg0AACoEQAA4DQAAKgRAADgNAAAMAsAADALAAAAAAAAsBgAAJ8BAACgAQAA/QAAAP4AAAD/AAAAxQAAAJg0AACoEQAA4DQAACAMAAAwCwAAMAsAAAAAAADAGAAAoQEAAKIBAAAAAQAAAQEAAAIBAADFAAAAAAAAANAYAACjAQAApAEAAAMBAAAEAQAABQEAALYAAAAAAAAA4BgAAKUBAACmAQAABgEAAAcBAAAIAQAAvgAAAAAAAADwGAAApwEAAKgBAAAJAQAACgEAAAsBAAC2AAAAmDQAAOA0AADgNAAAUAcAADALAAAwCwAA4DQAAAAAAAAAGQAAqQEAAKoBAAAMAQAADQEAAA4BAAC2AAAAAAAAABgZAACrAQAArAEAAA8BAAAQAQAAEQEAAMYAAACYNAAA4DQAAOA0AAAAFAAAsBEAAFAHAAAYFAAAIBQAACgUAAAwFAAAOBQAADALAAAwCwAA4DQAAJg0AADgNAAA4DQAAOA0AADgNAAAmDQAAOA0AADgNAAAABQAAPg0AADgNAAAmDQAAOA0AADgNAAAABQAADALAAAwCwAA4DQAAAAAAAAwGQAArQEAAK4BAAASAQAAEwEAABQBAADHAAAAAAAAAEAZAACvAQAAsAEAABUBAAAWAQAAFwEAAL0AAACYNAAA4DQAAOA0AAAABAAAgAQAAPg0AADgNAAAAAAAAFgZAACxAQAAsgEAABgBAAAZAQAAGgEAAMgAAACYNAAA4DQAAOA0AAAAFAAAAAgAAOA0AAAAAAAAcBkAALMBAAC0AQAAGwEAABwBAAAdAQAAyQAAAAAAAACAGQAAtQEAALYBAAAeAQAAHwEAACABAADJAAAAmDQAAOA0AADgNAAAABQAAOA0AADgNAAAAAgAAOA0AACYNAAA4DQAAOA0AAAAFAAA4DQAAOA0AADgNAAAAAAAAJAZAAC3AQAAuAEAACEBAAAiAQAAIwEAAMkAAACYNAAA4DQAAOA0AADgNAAA4DQAAPg0AABQFAAA4DQAAJg0AADgNAAA4DQAAJg0AADgNAAASBQAAAA1AABAFAAAADUAAEAUAAAANQAAQBQAAAA1AABAFAAAmDQAAOA0AACoNAAAAAAAAKgZAAC5AQAAugEAACQBAAAlAQAAJgEAAMoAAACYNAAAuDQAADALAAAwCwAAAAAAAMAZAAC7AQAAvAEAACcBAAAoAQAAKQEAAMsAAAAAAAAA0BkAAL0BAAC+AQAAKgEAACsBAAAsAQAAygAAAJg0AADgNAAA4DQAAOA0AADgNAAA4DQAAAA1AACoNAAAMAsAADALAAAAAAAA4BkAAL8BAADAAQAALQEAAC4BAAAvAQAAygAAAAAAAADwGQAAwQEAAMIBAAAwAQAAMQEAADIBAADKAAAAmDQAAOA0AADgNAAA4DQAAOA0AAAwCwAAMAsAAJg0AACoNAAAmDQAAOA0AAC4NAAAqDQAADALAAAwCwAAmDQAACAMAAAwCwAAMAsAADALAACYNAAAuDQAAOA0AADgNAAA2DQAADALAAAwCwAAMAsAAAAAAAAIGgAAwwEAAMQBAAAzAQAANAEAADUBAADMAAAAmDQAAOA0AADgNAAA4DQAAOA0AAAwCwAAMAsAADALAAAAAAAAGBoAAMUBAADGAQAANgEAADcBAAA4AQAAzAAAAJg0AADgNAAA4DQAAIAEAAAwCwAAMAsAADALAAAAAAAAKBoAAMcBAADIAQAAOQEAADoBAAA7AQAAzAAAAJg0AADgNAAA4DQAAOA0AAAwCwAAMAsAADALAAAAAAAAOBoAAMkBAADKAQAAPAEAAD0BAAA+AQAAzAAAAJg0AACABAAA+DQAADALAAAwCwAAMAsAAAAAAABQGgAAywEAAMwBAAA/AQAAQAEAAEEBAADNAAAAAAAAAGgaAADNAQAAzgEAAEIBAABDAQAARAEAAM4AAAAAAAAAgBoAAM8BAADQAQAARQEAAEYBAABHAQAAzwAAAJg0AADgNAAA4DQAAOA0AAAwCwAAMAsAAAAAAACYGgAA0QEAANIBAABIAQAASQEAAEoBAADQAAAAAAAAALAaAADTAQAA1AEAAEsBAABMAQAATQEAANEAAAAAAAAAwBoAANUBAADWAQAATgEAAE8BAABQAQAAswAAAJg0AACwEQAAsBEAAPg0AAAwCwAAMAsAAAAAAADYGgAA1wEAANgBAABRAQAAUgEAAFMBAADSAAAAAAAAAOgaAADZAQAA2gEAAFQBAABVAQAAVgEAALMAAACYNAAAADUAAAA1AACYNAAAkAEAAJg0AACQAQAAkAEAAJg0AADQEwAAmDQAAOATAACYNAAA+DQAAJg0AADYEwAAmDQAAOgTAACYNAAA8BMAAJg0AAD4EwAAmDQAALARAACYNAAAAAgAAJg0AABYFAAAcBQAAIAEAAAACAAAAAAAAPgaAADbAQAA3AEAAFcBAABYAQAAWQEAAMoAAACYNAAA4DQAAOA0AACABAAAAAAAABAbAADdAQAA3gEAAFoBAABbAQAAXAEAANMAAACYNAAAYBQAAAAUAACwEQAAMAsAADALAACYNAAAYBQAAAAUAACYNAAAABQAAPg0AACYNAAAADUAAFgPAACYNAAACA8AAJg0AADgNAAA4DQAALg0AACYNAAA4DQAAPg0AACYNAAA4DQAAPg0AABoFAAAmDQAAAAIAAAACAAAAAgAAJg0AAAwEgAAmDQAADASAAAwEgAAmDQAAPg0AABoFAAAmDQAAPg0AAD4NAAAuDQAAAAAAAAgGwAA3wEAAOABAABdAQAAXgEAAF8BAAC2AAAAAAAAADAbAADhAQAA4gEAAGABAABhAQAAYgEAALYAAAAAAAAAQBsAAOMBAADkAQAAYwEAAGQBAABlAQAAygAAAJg0AACoNAAAMAsAADALAAAAAAAAUBsAAOUBAADmAQAAZgEAAGcBAABoAQAAswAAAJg0AADgNAAA4DQAAKg0AAAwCwAAMAsAAAAAAABgGwAA5wEAAOgBAABpAQAAagEAAGsBAACzAAAAAAAAAHAbAADpAQAA6gEAAGwBAABtAQAAbgEAALMAAAAAAAAAiBsAAOsBAADsAQAAbwEAAHABAABxAQAA1AAAAJg0AAAwCwAAMAsAADALAAAAAAAAoBsAAO0BAADuAQAAcgEAAHMBAAB0AQAA1QAAAJg0AADgNAAAqDQAAKg0AAAwCwAAMAsAAAAAAACwGwAA7wEAAPABAAB1AQAAdgEAAHcBAADVAAAAmDQAANg0AADYNAAAADUAAAA1AACYNAAAADUAAJg0AADYNAAAmDQAAOA0AAC4NAAA4DQAAOA0AAAAAAAAQB4AAPEBAADyAQAA1gAAAHgBAADzAQAA9AEAAHkBAAA0AAAA1wAAAAAAAAAgHgAA9QEAAPYBAADYAAAAegEAAPcBAAD4AQAAewEAADUAAADZAAAAAAAAAAgeAAD5AQAA+gEAANoAAAB8AQAA+wEAAPwBAAD9AQAANgAAANsAAAAAAAAA8B0AAPkBAAD+AQAA3AAAAH0BAAD/AQAAAAIAAAECAAA3AAAA3QAAAAAAAADYHQAA+QEAAAICAADeAAAAfgEAAAMCAAAEAgAABQIAADgAAADfAAAAAAAAAMAdAAD5AQAABgIAAOAAAAB/AQAABwIAAAgCAAAJAgAAOQAAAOEAAAAAAAAAqB0AAAoCAAALAgAA4gAAAIABAAAMAgAADQIAAIEBAAA6AAAA4wAAAAAAAACQHQAACgIAAA4CAADkAAAAggEAAA8CAAAQAgAAgwEAADsAAADlAAAAAAAAAHAdAAAKAgAAEQIAAOYAAACEAQAAEgIAABMCAACFAQAAPAAAAOcAAAAAAAAAWB0AAPkBAAAUAgAA6AAAAIYBAAAVAgAAFgIAABcCAAA9AAAA6QAAAAAAAAA4HQAA+QEAABgCAADqAAAAhwEAABkCAAAaAgAAGwIAAD4AAADrAAAAAAAAACAdAAAcAgAAHQIAAOwAAACIAQAAHgIAAB8CAACJAQAAPwAAAO0AAAAAAAAACB0AACACAAAhAgAA7gAAAIoBAAAiAgAAIwIAAAEAAABAAAAA7wAAAAAAAADoHAAAJAIAACUCAADwAAAAiwEAACYCAAAnAgAAAgAAAEEAAADxAAAAAAAAANAcAAAoAgAAKQIAAPIAAACMAQAAKgIAACsCAAACAAAAQgAAAPMAAAAAAAAAsBwAACwCAAAtAgAA9AAAAI0BAAAuAgAALwIAAAMAAABDAAAA9QAAAAAAAACQHAAAKAIAADACAAD2AAAAjgEAADECAAAyAgAAAwAAAEQAAAD3AAAAAAAAAHAcAAAzAgAANAIAAPgAAACPAQAANQIAADYCAAACAAAARQAAAPkAAAAAAAAAUBwAACACAAA3AgAA+gAAAJABAAA4AgAAOQIAAAQAAABGAAAA+wAAAAAAAAAwHAAAHAIAADoCAAD8AAAAkQEAADsCAAA8AgAAkgEAAEcAAAD9AAAAAAAAABAcAAA9AgAAPgIAAP4AAACTAQAAPwIAAEACAAAFAAAASAAAAP8AAAAAAAAAABwAADsBAABBAgAAAQAAAAMAAAAAAAAAYB4AAEICAABDAgAAlAEAAJUBAACWAQAAzQAAAAAAAACYHgAARAIAAEUCAACXAQAAmAEAAJkBAAAAAQAAAAAAAIgeAABGAgAARwIAAJoBAACbAQAAnAEAAAEBAAAAAAAAcB4AAEgCAABJAgAAnQEAAJ4BAACfAQAAAgEAAAAAAACoHgAARAIAAEoCAAABAAAAAQAAAJkBAAADAQAAAAAAAMAeAABEAgAASwIAAJcBAACYAQAAmQEAAAMBAAAAAAAA8B4AAEwCAABNAgAAoAEAAKEBAACiAQAABAEAAAAAAAAAHwAATAIAAE4CAAABAAAAAQAAAKIBAAAEAQAAAAAAADAfAABPAgAAUAIAAKMBAACkAQAApQEAAAQBAAAAAAAAQB8AAE8CAABRAgAAAQAAAAEAAAClAQAABAEAAAAAAABwHwAATAIAAFICAACmAQAAoQEAAKIBAAAEAQAAAAAAAIAfAABMAgAAUwIAAKcBAAChAQAAogEAAAUBAAAAAAAAkB8AAFQCAABVAgAAqAEAAKkBAACqAQAABgEAAAAAAAC4HwAAVgIAAFcCAACrAQAArAEAAK0BAAAHAQAAAAAAAKgfAABYAgAAWQIAAK4BAACvAQAAsAEAAAQBAAAAAAAA0B8AAFoCAABbAgAAsQEAALIBAACzAQAABAEAAAAAAADgHwAAXAIAAF0CAAC0AQAAtQEAALYBAAAHAQAAAAAAAPAfAABcAgAAXgIAAAEAAAABAAAAtgEAAAcBAAAAAAAAICAAAF8CAABgAgAAtwEAALgBAAC5AQAABwEAAAAAAAAwIAAAYQIAAGICAAABAAAAAQAAALkBAAAHAQAAAAAAAGAgAABjAgAAZAIAALoBAAC7AQAAvAEAAAcBAAAAAAAAcCAAAGMCAABlAgAAAQAAAAEAAAC9AQAABwEAAAAAAACQIAAAZgIAAGcCAAC+AQAAvwEAAMABAAAEAQAAAAAAAKAgAABoAgAAaQIAAMEBAADCAQAAwwEAAAQBAAAAAAAAsCAAAGgCAABqAgAAAQAAAAEAAADDAQAABAEAAAAAAADgIAAAawIAAGwCAADEAQAAxQEAAMYBAAAEAQAAAAAAAPAgAABrAgAAbQIAAAEAAAABAAAAxgEAAAQBAAAAAAAAICEAAGsCAABuAgAAxwEAAMUBAADGAQAABAEAAAAAAAAwIQAATAIAAG8CAADIAQAAoQEAAKIBAAAEAQAAAAAAAEAhAABMAgAAcAIAAMkBAAChAQAAogEAAAQBAAAAAAAAYCEAAHECAAByAgAAygEAAMsBAADMAQAAAwEAAAAAAABQIQAAcwIAAHQCAADNAQAAzgEAAM8BAAAIAQAAAAAAAHAhAAB1AgAAdgIAANABAADRAQAA0gEAAAMBAAAAAAAAgCEAAHUCAAB3AgAAAQAAAAEAAADSAQAAAwEAAAAAAACwIQAARAIAAHgCAADTAQAAmAEAAJkBAAADAQAAAAAAAMAhAAB5AgAAegIAANQBAADVAQAA1gEAAAMBAAAAAAAA0CEAAHkCAAB7AgAAAQAAAAEAAADWAQAAAwEAAAAAAAAAIgAAfAIAAH0CAADXAQAA2AEAANkBAADBAAAAAAAAABAiAAB8AgAAfgIAAAEAAAABAAAA2QEAAMEAAAAAAAAAQCIAAH8CAACAAgAA2gEAANsBAADcAQAAAwEAAAAAAABQIgAAfwIAAIECAAABAAAAAQAAANwBAAADAQAAAAAAAIAiAACCAgAAgwIAAN0BAADeAQAA3wEAAAMBAAAAAAAAkCIAAIICAACEAgAAAQAAAAEAAADfAQAAAwEAAAAAAADAIgAAhQIAAIYCAADgAQAA4QEAAOIBAAADAQAAAAAAANAiAACFAgAAhwIAAAEAAAABAAAA4gEAAAMBAAAAAAAAACMAAIgCAACJAgAA4wEAAOQBAADlAQAAAwEAAAAAAABYIwAAigIAAIsCAAAAAAAASCMAAIwCAACNAgAA5gEAAOcBAADoAQAABwEAAAAAAAAwIwAAjgIAAI8CAADpAQAA6gEAAOsBAAAJAQAAAAAAACAjAACQAgAAkQIAAOwBAADtAQAA7gEAAAMBAAAAAAAAECMAAJICAACTAgAA7wEAAPABAADxAQAABAEAAAAAAABoIwAAigIAAJQCAAAAAAAAcCMAAIUCAACVAgAA8gEAAOEBAADiAQAAAwEAAAAAAACAIwAAhQIAAJYCAADzAQAA4QEAAOIBAAADAQAAAAAAAJAjAACFAgAAlwIAAPQBAADhAQAA4gEAAAMBAAAAAAAAoCMAAIUCAACYAgAA9QEAAOEBAADiAQAAAwEAAAAAAACwIwAAhQIAAJkCAAD2AQAA4QEAAOIBAAADAQAAAAAAAMAjAACFAgAAmgIAAPcBAADhAQAA4gEAAAMBAAAAAAAA0CMAAIUCAACbAgAA+AEAAOEBAADiAQAAAwEAAAAAAADgIwAAhQIAAJwCAAD5AQAA4QEAAOIBAAADAQAAAAAAAPAjAACFAgAAnQIAAPoBAADhAQAA4gEAAAMBAAAAAAAAACQAAIUCAACeAgAA+wEAAOEBAADiAQAAAwEAAAAAAAAQJAAAhQIAAJ8CAAD8AQAA4QEAAOIBAAADAQAAAAAAACAkAACFAgAAoAIAAP0BAADhAQAA4gEAAAMBAAAAAAAAMCQAAIUCAAChAgAA/gEAAOEBAADiAQAAAwEAAAAAAABAJAAAhQIAAKICAAD/AQAA4QEAAOIBAAADAQAAAAAAAFAkAACjAgAApAIAAAACAAABAgAAAgIAAAMBAAAAAAAAYCQAAKMCAAClAgAAAQAAAAEAAAACAgAAAwEAAAAAAACQJAAApgIAAKcCAAADAgAABAIAAAUCAAAJAQAAAAAAAKAkAACoAgAAqQIAAAYCAAAHAgAACAIAAAoBAAAAAAAAsCQAAKoCAACrAgAAAQAAAAEAAAAFAgAACQEAAAAAAADQJAAARAIAAKwCAAAJAgAACgIAAAsCAAALAQAAAAAAAPAkAACtAgAArgIAAAwCAAANAgAADgIAAAkBAAAAAAAA4CQAAK8CAACwAgAADwIAABACAAARAgAAAwEAAAAAAAAAJQAAsQIAALICAAABAAAAAQAAAA4CAAAJAQAAAAAAADAlAACzAgAAtAIAABICAAATAgAAFAIAAAkBAAAAAAAAQCUAALUCAAC2AgAAAQAAAAEAAAAUAgAACQEAAAAAAABwJQAAtwIAALgCAAAVAgAAFgIAABcCAAADAQAAAAAAAIAlAAC3AgAAuQIAAAEAAAABAAAAFwIAAAMBAAAAAAAAsCUAALcCAAC6AgAAGAIAABYCAAAXAgAAAwEAAAAAAADAJQAAuwIAALwCAAAZAgAAGgIAABsCAAAJAQAAAAAAANAlAAC7AgAAvQIAAAEAAAABAAAAGwIAAAkBAAAAAAAAACYAAEQCAAC+AgAAHAIAAJgBAACZAQAAAwEAAAAAAAAQJgAAowIAAL8CAAAdAgAAAQIAAAICAAADAQAAAAAAACAmAABEAgAAwAIAAB4CAAAfAgAAIAIAAAwBAAAAAAAAMCYAAEQCAADBAgAAIQIAAJgBAACZAQAAAwEAAAAAAABQJgAAwgIAAMMCAAAiAgAAIwIAACQCAAAHAQAAAAAAAEAmAADEAgAAxQIAACUCAAAmAgAAJwIAAAQBAAAAAAAAYCYAAPkBAADGAgAADQEAACgCAADHAgAAyAIAAMkCAABJAAAADgEAAAAAAAB4JgAAygIAAMsCAAABAAAAAQAAACQCAAAHAQAAAAAAAJgmAADMAgAAzQIAACkCAAAqAgAAKwIAAAMBAAAAAAAAqCYAAMwCAADOAgAAAQAAAAEAAAArAgAAAwEAAAAAAADYJgAAhQIAAM8CAAAsAgAA4QEAAOIBAAADAQAAAAAAAPgmAADQAgAA0QIAAC0CAAAuAgAALwIAAAcBAAAAAAAA6CYAANICAADTAgAAMAIAADECAAAyAgAABAEAAAAAAAAIJwAA0AIAANQCAAABAAAAAQAAAC8CAAAHAQAAAAAAADgnAADVAgAA1gIAADMCAAA0AgAANQIAAAMBAAAAAAAASCcAANUCAADXAgAAAQAAAAEAAAA1AgAAAwEAAAAAAAB4JwAA2AIAANkCAAA2AgAANwIAADgCAAADAQAAAAAAAIgnAADYAgAA2gIAAAEAAAABAAAAOAIAAAMBAAAAAAAAuCcAANgCAADbAgAAOQIAADcCAAA4AgAAAwEAAAAAAADgJwAA3AIAAN0CAADeAgAASgAAAN8CAAAAAAAAyCcAAOACAADhAgAADwEAADoCAADiAgAA4wIAAOQCAABLAAAAEAEAAAAAAAAIKAAA5QIAAOYCAADnAgAATAAAAOgCAAAAAAAA+CcAAOkCAADqAgAAAAAAACgoAADrAgAA7AIAAO0CAABMAAAA7gIAAAAAAAAYKAAA7wIAAPACAAAAAAAAOCgAAPECAADyAgAAOwIAABEBAAASAQAAEwEAABQBAAAVAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAB0BAAAeAQAAHwEAACABAAAhAQAAIgEAACMBAAAkAQAAJQEAACYBAAA8AgAATQAAAAEAAAACAAAAAwAAAE4AAABPAAAABAAAAFAAAABRAAAAUgAAAFMAAAAAAAAASCgAAPECAADzAgAAPQIAABEBAAASAQAAJwEAACgBAAApAQAAKgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAB0BAAAeAQAAHwEAACABAAAhAQAAIgEAACMBAAAkAQAAJQEAACYBAAA+AgAATQAAAAUAAAAGAAAAAwAAAE4AAABPAAAABAAAAFAAAABRAAAAUgAAAFMAAAAAAAAAWCgAAPQCAAD1AgAAPwIAABEBAAASAQAAJwEAACgBAAApAQAAKgEAACsBAAAsAQAALQEAAC4BAAAbAQAAHAEAAB0BAAAeAQAAHwEAACABAAAhAQAAIgEAACMBAAAkAQAAJQEAACYBAABAAgAATQAAAAUAAAAGAAAABwAAAFQAAABPAAAABAAAAFAAAABRAAAAUgAAAFMAAAAAAAAAaCgAAPYCAAD3AgAAQQIAABEBAAASAQAAJwEAACgBAAApAQAAKgEAACsBAAAsAQAALQEAAC4BAAAvAQAAMAEAADEBAAAyAQAAMwEAADQBAAAhAQAAIgEAACMBAAAkAQAAJQEAACYBAABCAgAATQAAAAUAAAAGAAAABwAAAFQAAABVAAAACAAAAFYAAABRAAAAUgAAAFMAAAAAAAAAeCgAAPgCAAD5AgAAQwIAABEBAAASAQAAJwEAACgBAAApAQAAKgEAACsBAAAsAQAALQEAAC4BAAAvAQAAMAEAADEBAAAyAQAAMwEAADQBAAA1AQAANgEAADcBAAA4AQAAOQEAADoBAABEAgAATQAAAAUAAAAGAAAABwAAAFQAAABVAAAACAAAAFYAAABXAAAAWAAAAFkAAAAAAAAAiCgAAPECAAD6AgAAAQAAADsBAAA8AQAAEwEAABQBAAAVAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAB0BAAAeAQAAHwEAACABAAAhAQAAIgEAACMBAAAkAQAAJQEAACYBAAABAAAAWgAAAAEAAAACAAAAAwAAAE4AAABPAAAABAAAAFAAAABRAAAAUgAAAFMAAAAAAAAAkCgAAPsCAAD8AgAA/QIAAEwAAAD+AgAAAAAAAKAoAAD/AgAAAAMAAAEDAABMAAAAAgMAAAAAAACwKAAAAwMAAAQDAAAFAwAATAAAAAYDAAAAAAAAwCgAANwCAAAHAwAACAMAAFsAAAAJAwAAAAAAANAoAAAKAwAACwMAAAEAAABFAgAAPQEAAEgAAAABAAAAPgEAAD8BAAAAAAAA2CgAAAwDAAANAwAAQAEAAEUCAAA9AQAASAAAAFwAAABBAQAAQgEAAAAAAADoKAAADgMAAA8DAAAQAwAATAAAABEDAAAAAAAA+CgAABIDAAATAwAAQwEAAEUCAAA9AQAASAAAAF0AAAA+AQAAPwEAAAAAAAAIKQAAFAMAABUDAABEAQAARgIAAEUBAABJAAAAXgAAAD4BAAA/AQAAAAAAABgpAAAWAwAAFwMAABgDAABMAAAAGQMAAAAAAAAoKQAAGgMAABsDAAAcAwAATAAAAB0DAAAAAAAAOCkAAB4DAAAfAwAAIAMAAEwAAAAhAwAAAAAAAEgpAAAiAwAAIwMAACQDAABMAAAAJQMAAAAAAABYKQAAJgMAACcDAAAoAwAATAAAACkDAAAAAAAAaCkAANwCAAAqAwAAKwMAAF8AAAAsAwAAAAAAAHgpAAAtAwAALgMAAC8DAAAwAwAARgEAAEcBAABIAQAAAAAAAIgpAAAxAwAAMgMAADMDAABHAgAABgAAAEkBAAA0AwAASAIAAEoBAAAEAAAABQAAAAEAAAA1AwAASQIAAAYAAAAHAAAASgIAAAgAAAAEAAAACQAAADYDAAABAAAASwIAAAIAAABMAgAATQIAAAEAAAAHAAAABQAAAAoAAAAGAAAACwAAAAwAAAAIAAAACQAAAAoAAAALAAAADQAAAAEAAAABAAAABwAAAAwAAAAOAAAADQAAADcDAABOAgAATwIAAFACAAAAAAAAmCkAADgDAAA5AwAAOgMAADADAABLAQAATAEAAE0BAAAAAAAAqCkAADsDAAA8AwAACAAAAFECAAAOAAAAAQAAAAEAAAAJAAAACgAAAA8AAAALAAAADAAAABAAAAARAAAADQAAAA4AAAAPAAAAEAAAABEAAAAPAAAAEgAAABMAAAASAAAAAgAAABMAAAAUAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAAUAAAAAQAAAAMAAAABAAAAFQAAABAAAAARAAAAFQAAAFICAABTAgAABAAAAAUAAABOAQAAAAAAALgpAAA9AwAAPgMAAD8DAABUAgAAEgAAAE8BAABAAwAASAIAAFABAAAWAAAAFwAAAAIAAABBAwAAVQIAABgAAAAZAAAAVgIAABoAAAAWAAAAGwAAAEIDAAADAAAAVwIAAAQAAABYAgAAWQIAAAIAAAATAAAAFwAAABwAAAAYAAAAHQAAAB4AAAAUAAAAFQAAABYAAAAXAAAAHwAAAAMAAAAGAAAAGQAAABgAAAAgAAAAGQAAAEMDAABaAgAAWwIAAFwCAAAAAAAA4CkAAEQDAABFAwAASgAAAAAAAADIKQAACgIAAEYDAABRAQAAXQIAAEcDAABIAwAAXgIAAGAAAABSAQAAAAAAAPgpAABJAwAASgMAAEsAAAAAAAAACCoAAEsDAABMAwAATQMAADADAABTAQAARwEAAFQBAAAAAAAAGCoAAE4DAABPAwAAIQAAAF8CAAAAAAAAaCoAAFADAABRAwAAMwMAAEcCAAAGAAAASQEAAFIDAABgAgAAVQEAACIAAAAjAAAAAwAAAFMDAABhAgAAJAAAACUAAABiAgAAJgAAABoAAAAnAAAAVAMAAAUAAABjAgAABgAAAGQCAABlAgAAAwAAABoAAAAbAAAAKAAAABwAAAApAAAAKgAAABsAAAAcAAAAHQAAAB4AAAArAAAABAAAAAcAAAAdAAAAHwAAACwAAAAgAAAAVQMAAGYCAABnAgAAaAIAAAAAAAAwKgAA9QEAAFYDAABWAQAAaQIAAFcDAABYAwAAagIAAGEAAABXAQAAAAAAAHgqAABZAwAAWgMAAB4AAABrAgAAIQAAAAIAAAACAAAAHwAAACAAAAAtAAAAIQAAACIAAAAuAAAALwAAACMAAAAkAAAAJQAAACYAAAAnAAAAIgAAACgAAAApAAAAMAAAAAUAAAAxAAAAMgAAAAIAAAADAAAAAgAAAAIAAAADAAAACAAAAAQAAAAEAAAAKgAAAAIAAAAJAAAAAgAAADMAAAAjAAAAJAAAACsAAABsAgAAbQIAAAQAAAAFAAAATgEAAAAAAACIKgAALQMAAFsDAAABAAAAMAMAAAEAAABHAQAAAQAAAAAAAACQKgAAMQMAAFwDAAAzAwAARwIAAAYAAABJAQAAQAMAAEgCAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAJgqAABZAwAAXQMAAB4AAABrAgAAIQAAAAIAAAACAAAAHwAAACAAAAAtAAAAIQAAACIAAAAuAAAALwAAACMAAAAkAAAAJQAAACYAAAAnAAAAIgAAACgAAAApAAAAMAAAAAUAAAAxAAAAMgAAAAIAAAADAAAAAgAAAAIAAAADAAAACAAAAAQAAAAEAAAAKgAAAAMAAAAJAAAAAgAAADMAAAAjAAAAJAAAACsAAABsAgAAbQIAAAQAAAAFAAAATgEAAAAAAACoKgAAXgMAAF8DAABgAwAATAAAAGEDAAA4AAAAAAAAAPAqAABmAwAAZwMAAMj////I////8CoAAGgDAABpAwAAAAAAAOAqAABqAwAAawMAAG4CAABMAAAACgAAADQAAABYAQAAWQEAAE0AAABaAQAAWwEAAGIAAABOAAAAYwAAAIR5AADEKgAA2CoAAJh5AAAAAAAAACsAAPkBAABsAwAAXAEAAG8CAABtAwAAbgMAAG8DAABkAAAAXQEAAAAAAABIKwAAcAMAAHEDAABwAgAAcgMAAF4BAABxAgAAAAAAAFgrAABzAwAAdAMAAHUDAABlAAAAcgIAAAAAAACgKwAAdgMAAHcDAABfAQAAcwIAAHgDAAB5AwAAdAIAAGYAAABgAQAAAAAAAIArAAB2AwAAegMAAGEBAAB1AgAAewMAAHwDAAB2AgAAZwAAAGIBAAAAAAAAcCsAAH0DAAB+AwAAAAAAAGgrAAB/AwAAgAMAAAAAAAAALAAAgQMAAIIDAABjAQAAdwIAAIMDAACEAwAANQAAAGgAAABkAQAAAAAAAOArAACBAwAAhQMAAGUBAAB4AgAAhgMAAIcDAAA2AAAAaQAAAGYBAAAAAAAAwCsAAIgDAACJAwAAZwEAAHkCAACKAwAAiwMAADcAAABqAAAAaAEAAAAAAAACAAAAAQAAAAMAAAAEAAAABQAAAAAAAAAgLAAAawAAAHoCAAAAAAAAKCwAAIwDAACNAwAAjgMAAEwAAACPAwAAAAAAAFAsAACQAwAAkQMAAGkBAABqAQAAewIAAHwCAABrAQAAAQAAAAIAAAADAAAAfQIAAAcAAAAIAAAACQAAAAoAAABsAQAAfgIAAJIDAAAEAAAACwAAAAUAAAB/AgAAbAAAAJMDAACUAwAAlQMAAJYDAACXAwAAmAMAAJkDAAABAAAAbQAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAYCwAAJoDAACbAwAAbQEAAIACAACcAwAAnQMAAAEAAABuAAAAbgEAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAgD8AAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAAAAAAIC/AACAvwAAgD8AAIA/AACAvwAAgD8AAIA/AACAPwAAAAAAAIC/AACAPwAAAAAAAAAAkCwAAJ4DAACfAwAAbwEAAIECAACgAwAAoQMAAAIAAABvAAAAcAEAAAAAgL8AAIC/AAAAAAAAAAAAAIA/AACAvwAAgD8AAAAAAACAPwAAgD8AAIA/AACAPwAAgL8AAIA/AAAAAAAAgD//////BAgAAAAAAACoLAAAogMAAKMDAABwAAAAcQAAAAEAAAACAAAAAAAAALgsAACiAwAApAMAAHIAAABzAAAAAwAAAAQAAAAAAAAAyCwAAKUDAACmAwAAcQEAAHIBAAAFAAAAdAAAAHUAAAB2AAAATwAAAFAAAAAAAAAA4CwAAKcDAACoAwAAcwEAAHQBAAAGAAAAdwAAAHgAAAB5AAAAUQAAAFIAAAAAAAAA8CwAAKkDAACqAwAAdQEAAHYBAAAHAAAAegAAAHsAAAB8AAAAUwAAAFQAAAAAAAAAAC0AAKsDAACsAwAAAwAAAK0DAACuAwAATAAAAAAAAAAILQAAdwEAAK8DAACwAwAAAAAAAAAAAAAAAAAAtP///7T///8ILQAAsQMAALIDAAADAAAArQMAAK4DAAC8fgAA4H4AAAEAAAAEAAAACAAAAAAAAAABAAAAAgAAAAQAAAAAAAAAAgAAAAQAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAAAAAAAAQAAAAEAAAAFAAAADQAAAB0AAAA9AAAAfQAAAP0AAAD9AQAA/QMAAP0HAAD9DwAA/R8AAP0/AAD9fwAA/f8AAP3/AQD9/wMA/f8HAP3/DwD9/x8A/f8/AP3/fwD9//8A/f//Af3//wP9//8H/f//DwMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACUAAAAnAAAAKQAAACsAAAAvAAAAMwAAADsAAABDAAAAUwAAAGMAAACDAAAAAwEAAAMCAAADBAAAAwgAAAMQAAADIAAAA0AAAAOAAAADAAEAAAAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAASAAAAFAAAABYAAAAYAAAAHAAAACAAAAAoAAAAMAAAAEAAAACAAAAAAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAEAAAACAAAAAAAEACAAAAAgAAAAIAAAABwAAAAgAAAAJAAAACgAAAAsAAAAAAAAAAQAAAAIAAAABAAAABAAAAAQAAAAEAAAABAAAAAAAAAAgLQAAswMAALQDAAAAAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAKC0AALUDAAC2AwAAtwMAAEwAAAC4AwAAAAAAADgtAAC5AwAAugMAALsDAABMAAAAvAMAAAAAAABILQAAvQMAAL4DAAC/AwAATAAAAMADAAAAAAAAWC0AAKIDAADBAwAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAP////8AAAAAAQAAAAIAAAADAAAABAAAAAEAAAACAAAAAQAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAEAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAEAAAABAAAAAgAAAAIAAAAmAAAAggAAACEFAABKAAAAZwgAACYAAADAAQAAgAAAAEkFAABKAAAAvggAACkAAAAsAgAAgAAAAEkFAABKAAAAvggAAC8AAADKAgAAgAAAAIoFAABKAAAAhAkAADUAAABzAwAAgAAAAJ0FAABKAAAAoAkAAD0AAACBAwAAgAAAAOsFAABLAAAAPgoAAEQAAACeAwAAgAAAAE0GAABLAAAAqgoAAEsAAACzAwAAgAAAAMEGAABNAAAAHw0AAE0AAABTBAAAgAAAACMIAABRAAAApg8AAFQAAACZBAAAgAAAAEsJAABXAAAAsRIAAFgAAADaBAAAgAAAAG8JAABdAAAAIxQAAFQAAABFBQAAgAAAAFQKAABqAAAAjBQAAGoAAACvBQAAgAAAAHYJAAB8AAAAThAAAHwAAADSAgAAgAAAAGMHAACRAAAAkAcAAJIAAAAAAAAAYC0AAMIDAADDAwAAxAMAAEwAAADFAwAAAAAAAHAtAADGAwAAxwMAAMgDAABMAAAAyQMAAAAAAACALQAAygMAAMsDAADMAwAATAAAAM0DAAA8AAAAAAAAALgtAADSAwAA0wMAAMT////E////uC0AANQDAADVAwAAqIUAAJwtAACwLQAAvIUAAAAAAADILQAA1gMAANcDAADYAwAATAAAANkDAAAAAAAA2C0AANoDAADbAwAA3AMAAEwAAADdAwAAAAAAAOgtAADeAwAA3wMAAOADAABMAAAA4QMAAGwAAAAAAAAAMC4AAOIDAADjAwAAlP///5T///8wLgAA5AMAAOUDAAAAAAAAIC4AAOYDAADnAwAAggIAAFUAAAALAAAAOAAAAHgBAABZAQAATQAAAHkBAABbAQAAfQAAAE4AAAB+AAAANIYAAAQuAAAYLgAASIYAAAAAAABALgAA6AMAAOkDAAAAAAAAKCoAAOoDAADrAwAAAQAAAAEAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNOwhwAAFAAAAEMuVVRGLTgAAAAAAAAAAAAAAAAA3hIElQAAAAD///////////////+UhwAAAAAAAAAAAAAAAAAAAAAAAAAAAADghwAACQAAAAAAAAAAAAAAegEAAAAAAAAAAAAAAAAAAAAAAABWAAAAAAAAAFcAAAAfSQMAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGCIAAAFAAAAAAAAAAAAAAB6AQAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAAVwAAACdNAwAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAK/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYIgAAOSIAAAFAAAAAAAAAAAAAAB6AQAAAAAAAAAAAAAAAAAAAAAAAAAAAABZAAAAVwAAAC9RAwAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQ8AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/IwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAAAmAAAAJwAAACgAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADoAAAA7AAAAPAAAAD0AAAA+AAAAPwAAAEAAAABhAAAAYgAAAGMAAABkAAAAZQAAAGYAAABnAAAAaAAAAGkAAABqAAAAawAAAGwAAABtAAAAbgAAAG8AAABwAAAAcQAAAHIAAABzAAAAdAAAAHUAAAB2AAAAdwAAAHgAAAB5AAAAegAAAFsAAABcAAAAXQAAAF4AAABfAAAAYAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACQAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAARAAAAEUAAABGAAAARwAAAEgAAABJAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABBAAAAQgAAAEMAAABEAAAARQAAAEYAAABHAAAASAAAAEkAAABKAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAVwAAAFgAAABZAAAAWgAAAHsAAAB8AAAAfQAAAH4AAAB/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8qAAAAAAAAAIAAAADAAAABQAAAAcAAAALAAAADQAAABEAAAATAAAAFwAAAB0AAAAfAAAAJQAAACkAAAArAAAALwAAADUAAAA7AAAAPQAAAEMAAABHAAAASQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAH8AAACDAAAAiQAAAIsAAACVAAAAlwAAAJ0AAACjAAAApwAAAK0AAACzAAAAtQAAAL8AAADBAAAAxQAAAMcAAADTAAAAAQAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAeQAAAH8AAACDAAAAiQAAAIsAAACPAAAAlQAAAJcAAACdAAAAowAAAKcAAACpAAAArQAAALMAAAC1AAAAuwAAAL8AAADBAAAAxQAAAMcAAADRAAAAAAAAAOguAADsAwAA7QMAAAAAAAAALwAA7gMAAO8DAABuAgAATAAAAAwAAAA5AAAAWAEAAFkBAABNAAAAewEAAFsBAAB/AAAATgAAAIAAAAAAAAAACC8AAPADAADxAwAAgwIAAFsAAAANAAAAOgAAAHwBAAB9AQAAXAAAAH4BAAB/AQAAgQAAAF0AAACCAAAACAAAAAAAAAAQLwAAzgMAAM8DAAD4////+P///xAvAADQAwAA0QMAACCZAAA0mQAACAAAAAAAAAAoLwAA8gMAAPMDAAD4////+P///ygvAAD0AwAA9QMAAFCZAABkmQAABAAAAAAAAABALwAAYgMAAGMDAAD8/////P///0AvAABkAwAAZQMAAICZAACUmQAABAAAAAAAAABYLwAA9gMAAPcDAAD8/////P///1gvAAD4AwAA+QMAALCZAADEmQAAAAAAAHAvAAD6AwAA+wMAAIQCAABbAAAADQAAADoAAACAAQAAfQEAAFwAAAB+AQAAfwEAAIEAAABeAAAAgwAAAAAAAACALwAA/AMAAP0DAACFAgAATAAAAAwAAAA5AAAAgQEAAFkBAABNAAAAewEAAFsBAAB/AAAAXwAAAIQAAAAAAAAAkC8AAP4DAAD/AwAAhgIAAFsAAAANAAAAOgAAAHwBAAB9AQAAXAAAAIIBAACDAQAAhQAAAF0AAACCAAAAAAAAAKAvAAAABAAAAQQAAIcCAABMAAAADAAAADkAAABYAQAAWQEAAE0AAACEAQAAhQEAAIYAAABOAAAAgAAAAAAAAACwLwAAAgQAAAMEAAAEBAAABAAAADsAAABgAAAAAAAAANAvAAAFBAAABgQAAAQEAAAFAAAAPAAAAGEAAAAAAAAA4C8AAAcEAAAIBAAABAQAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAAAAAAACAwAAAJBAAACgQAAAQEAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAAAAAAABYMAAACwQAAAwEAAAEBAAABgAAAAcAAAAXAAAACAAAABgAAAABAAAAAgAAAAkAAAAAAAAAmDAAAA0EAAAOBAAABAQAAAoAAAALAAAAGQAAAAwAAAAaAAAAAwAAAAQAAAANAAAAAAAAANAwAAAPBAAAEAQAAAQEAACGAQAAGwAAABwAAAAdAAAAHgAAAB8AAAABAAAA+P///9AwAACHAQAAiAEAAIkBAACKAQAAiwEAAIwBAACNAQAAAAAAAAgxAAARBAAAEgQAAAQEAACOAQAAIAAAACEAAAAiAAAAIwAAACQAAAACAAAA+P///wgxAACPAQAAkAEAAJEBAACSAQAAkwEAAJQBAACVAQAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAAAAAAJQAAAG0AAAAvAAAAJQAAAGQAAAAvAAAAJQAAAHkAAAAAAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAAAAAAJQAAAGEAAAAgAAAAJQAAAGIAAAAgAAAAJQAAAGQAAAAgAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAFkAAAAAAAAAQQAAAE0AAAAAAAAAUAAAAE0AAAAAAAAASgAAAGEAAABuAAAAdQAAAGEAAAByAAAAeQAAAAAAAABGAAAAZQAAAGIAAAByAAAAdQAAAGEAAAByAAAAeQAAAAAAAABNAAAAYQAAAHIAAABjAAAAaAAAAAAAAABBAAAAcAAAAHIAAABpAAAAbAAAAAAAAABNAAAAYQAAAHkAAAAAAAAASgAAAHUAAABuAAAAZQAAAAAAAABKAAAAdQAAAGwAAAB5AAAAAAAAAEEAAAB1AAAAZwAAAHUAAABzAAAAdAAAAAAAAABTAAAAZQAAAHAAAAB0AAAAZQAAAG0AAABiAAAAZQAAAHIAAAAAAAAATwAAAGMAAAB0AAAAbwAAAGIAAABlAAAAcgAAAAAAAABOAAAAbwAAAHYAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABEAAAAZQAAAGMAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABKAAAAYQAAAG4AAAAAAAAARgAAAGUAAABiAAAAAAAAAE0AAABhAAAAcgAAAAAAAABBAAAAcAAAAHIAAAAAAAAASgAAAHUAAABuAAAAAAAAAEoAAAB1AAAAbAAAAAAAAABBAAAAdQAAAGcAAAAAAAAAUwAAAGUAAABwAAAAAAAAAE8AAABjAAAAdAAAAAAAAABOAAAAbwAAAHYAAAAAAAAARAAAAGUAAABjAAAAAAAAAFMAAAB1AAAAbgAAAGQAAABhAAAAeQAAAAAAAABNAAAAbwAAAG4AAABkAAAAYQAAAHkAAAAAAAAAVAAAAHUAAABlAAAAcwAAAGQAAABhAAAAeQAAAAAAAABXAAAAZQAAAGQAAABuAAAAZQAAAHMAAABkAAAAYQAAAHkAAAAAAAAAVAAAAGgAAAB1AAAAcgAAAHMAAABkAAAAYQAAAHkAAAAAAAAARgAAAHIAAABpAAAAZAAAAGEAAAB5AAAAAAAAAFMAAABhAAAAdAAAAHUAAAByAAAAZAAAAGEAAAB5AAAAAAAAAFMAAAB1AAAAbgAAAAAAAABNAAAAbwAAAG4AAAAAAAAAVAAAAHUAAABlAAAAAAAAAFcAAABlAAAAZAAAAAAAAABUAAAAaAAAAHUAAAAAAAAARgAAAHIAAABpAAAAAAAAAFMAAABhAAAAdAAAAAAAAAAlAAAAbQAAAC8AAAAlAAAAZAAAAC8AAAAlAAAAeQAAACUAAABZAAAALQAAACUAAABtAAAALQAAACUAAABkAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAlAAAASAAAADoAAAAlAAAATQAAACUAAABIAAAAOgAAACUAAABNAAAAOgAAACUAAABTAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAAAAAAODEAABMEAAAUBAAABAQAAAEAAAAAAAAAYDEAABUEAAAWBAAABAQAAAIAAAAAAAAAgDEAABcEAAAYBAAABAQAAJYBAACXAQAAiAIAAIkCAACKAgAAiwIAAJgBAACMAgAAjQIAAAAAAACoMQAAGQQAABoEAAAEBAAAmQEAAJoBAACOAgAAjwIAAJACAACRAgAAmwEAAJICAACTAgAAAAAAAMgxAAAbBAAAHAQAAAQEAACcAQAAnQEAAJQCAACVAgAAlgIAAJcCAACeAQAAmAIAAJkCAAAAAAAA6DEAAB0EAAAeBAAABAQAAJ8BAACgAQAAmgIAAJsCAACcAgAAnQIAAKEBAACeAgAAnwIAAAAAAAAIMgAAHwQAACAEAAAEBAAAAwAAAAQAAAAAAAAAMDIAACEEAAAiBAAABAQAAAUAAAAGAAAAAAAAAFgyAAAjBAAAJAQAAAQEAAABAAAAJQAAAAAAAACAMgAAJQQAACYEAAAEBAAAAgAAACYAAAAAAAAAqDIAACcEAAAoBAAABAQAAGIAAAAOAAAAoAIAAAAAAADQMgAAKQQAACoEAAAEBAAAYwAAAA8AAAChAgAAAAAAACgzAAArBAAALAQAAAQEAAADAAAABAAAAA4AAACiAQAAowEAAA8AAACkAQAAAAAAAPAyAAArBAAALQQAAAQEAAADAAAABAAAAA4AAACiAQAAowEAAA8AAACkAQAAAAAAAFgzAAAuBAAALwQAAAQEAAAFAAAABgAAABAAAAClAQAApgEAABEAAACnAQAAAAAAAJgzAAAwBAAAMQQAAAQEAAAAAAAAqDMAADIEAAAzBAAABAQAAIcAAABkAAAAiAAAAGUAAACJAAAABAAAAGYAAAASAAAAAAAAAPAzAAA0BAAANQQAAAQEAACoAQAAqQEAAKICAACjAgAApAIAAAAAAAAANAAANgQAADcEAAAEBAAAqgEAAKsBAAClAgAApgIAAKcCAABmAAAAYQAAAGwAAABzAAAAZQAAAAAAAAB0AAAAcgAAAHUAAABlAAAAAAAAAAAAAADALwAAKwQAADgEAAAEBAAAAAAAANAzAAArBAAAOQQAAAQEAABnAAAABQAAAAYAAAAHAAAAigAAAGgAAACLAAAAaQAAAIwAAAAIAAAAagAAABMAAAAAAAAAODMAACsEAAA6BAAABAQAAAcAAAAIAAAAFAAAAKwBAACtAQAAFQAAAK4BAAAAAAAAeDMAACsEAAA7BAAABAQAAAkAAAAKAAAAFgAAAK8BAACwAQAAFwAAALEBAAAAAAAAADMAACsEAAA8BAAABAQAAAMAAAAEAAAADgAAAKIBAACjAQAADwAAAKQBAAAAAAAAADEAAIcBAACIAQAAiQEAAIoBAACLAQAAjAEAAI0BAAAAAAAAMDEAAI8BAACQAQAAkQEAAJIBAACTAQAAlAEAAJUBAAAAAAAAMDQAAD0EAAA+BAAAPwQAAEAEAABrAAAAEAAAACwAAAA9AAAAAAAAAFg0AAA9BAAAQQQAAD8EAABABAAAawAAABEAAAAtAAAAPgAAAAAAAACINAAAPQQAAEIEAAA/BAAAQAQAAGwAAAAAAAAAeDQAAD0EAABDBAAAPwQAAEAEAABtAAAAAAAAAAg1AAA9BAAARAQAAD8EAABABAAAbgAAAAAAAAAYNQAAPQQAAEUEAAA/BAAAQAQAAG8AAAAAAAAAKDUAAD0EAABGBAAAPwQAAEAEAABrAAAAEgAAAC4AAAA/AAAABAADAAIAAgACAAIAAgACAAIAAgACAAIAAgABAAEAAQACAAIAAgACAAIAAgACAAIAAgADAAIAAQABAAEAAQABAP//////////AQABAAEAAQABAAEAAgACAAIAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEA/////////////wEABAADAAIAAgACAAIAAgACAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEA//////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgACAAIAAgACAAIAAgACAAIAAyACIAIgAiACIAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAFgBMAEwATABMAEwATABMAEwATABMAEwATABMAEwATACNgI2AjYCNgI2AjYCNgI2AjYCNgEwATABMAEwATABMAEwAjVCNUI1QjVCNUI1QjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUEwATABMAEwATABMAI1gjWCNYI1gjWCNYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGBMAEwATABMACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWZWN0b3IzZgBWZWN0b3IzZABWZWN0b3I0ZgBQbGFuZTNmAE1hdHJpeDRmAE1hdHJpeDRkAFJnYkNvbG9yAFJnYmFDb2xvcgBJZABJbmMARG9uZQBSYXkAb3JpZ2luAGRpcmVjdGlvbgBNYXRlcmlhbENvbG9ycwBkaWZmdXNlAGVtaXNzaW9uAE1hdGVyaWFsUHJvcHMAY29sb3JzAFN0YXRpc3RpY3MAZWxlbWVudENvdW50AHRyaWFuZ2xlQ291bnQAQ3V0dGluZ1NlY3Rpb25MaW1pdHMAbWF4Q3V0dGluZ1NlY3Rpb25zAG1heEN1dHRpbmdQbGFuZXNQZXJTZWN0aW9uAFJhbmdlRgBtaW4AbWF4AFJhbmdlRABCb3gzZgBEaXN0YW5jZUluZm8AcG9pbnQxAHBvaW50MgBkaXN0YW5jZQBGcmFtZVN0YXRzAGZyYW1lc19wZXJfc2Vjb25kAGRyYXdfY2FsbF9jb3VudAB0cmlhbmdsZV9jb3VudABsaW5lX3NlZ21lbnRfY291bnQAcG9pbnRfY291bnQAUHJvamVjdGlvbgBQZXJzcGVjdGl2ZQBPcnRob2dyYXBoaWMAU3RyZXRjaGVkAERyYXdNb2RlAERlZmF1bHQASGlnaGxpZ2h0AEhpZGRlbkxpbmUAWFJheQBIaWdobGlnaHRGaWx0ZXIATm9uZQBNb2R1bGF0ZQBEZXNhdHVyYXRlAENvbG9yaXplAEhpZ2hsaWdodE1vZGUAVmlzaWJsZQBWaXNpYmxlV2l0aEZ1bGxPdXRsaW5lAEFudGlBbGlhc2luZ01vZGUAU01BQQBTbWFhUXVhbGl0eQBMb3cATWVkaXVtAEhpZ2gAVWx0cmEAVHJhbnNwYXJlbmN5TW9kZQBVbnNvcnRlZABTaW5nbGVMYXllcgBFbGVtZW50VHlwZQBGYWNlcwBMaW5lcwBQb2ludHMAU3RhdGVGYWlsdXJlAFNlc3Npb25Ob3RTdGFydGVkAENhbmNlbGxlZABDb3JydXB0UnBjTWVzc2FnZQBDcmVhdGVNZXNoSW5zdGFuY2VFcnJvclR5cGUAQmFkTWF0ZXJpYWxJZHMAQmFkTWVzaERhdGFJZABCYWRNYXRyaXhJbmMAQ3JlYXRlSW1hZ2VFcnJvcgBCYWREaW1lbnNpb25zAEJhZERhdGEAVW5zdXBwb3J0ZWRGb3JtYXQAU3RvcmFnZUZhaWx1cmUASW5zZXJ0aW9uRmFpbHVyZQBTZXRNYXRyaXhFcnJvclR5cGUAQmFkSW5zdGFuY2VTb3VyY2VJbmNzAE1lc2hEYXRhR2V0RGF0YUVycm9yAE1pc3NpbmcARW1wdHkASW5jb21wbGV0ZQBDdXR0aW5nU2VjdGlvbkVycm9yAFRvb01hbnlQbGFuZXNJblNlY3Rpb24AVG9vTWFueUN1dHRpbmdTZWN0aW9ucwBJbWFnZUZvcm1hdABSZ2JhMzIAUmdiMjQAR3JheTgAR3JheUFscGhhMTYASnBlZwBQbmcAVGV4dHVyZVRpbGluZwBSZXBlYXQAQ2xhbXAAVGV4dHVyZUludGVycG9sYXRpb24AT24AT2ZmAFRleHR1cmVNaXBNYXBwaW5nAFRleHR1cmVQYXJhbWV0ZXJpemF0aW9uAFVWAFRleHR1cmVNb2RpZmllcgBEZWNhbABPdmVybGF5VW5pdABQaXhlbHMAUHJvcG9ydGlvbk9mU2NyZWVuAFByb3BvcnRpb25PZk90aGVyRGltZW5zaW9uAE92ZXJsYXlBbmNob3IAVXBwZXJMZWZ0Q29ybmVyAExvd2VyTGVmdENvcm5lcgBMb3dlclJpZ2h0Q29ybmVyAFVwcGVyUmlnaHRDb3JuZXIAVG9wQ2VudGVyAExlZnRDZW50ZXIAUmlnaHRDZW50ZXIAQm90dG9tQ2VudGVyAENlbnRlcgBQb2ludFNpemVVbml0AFNjcmVlblBpeGVscwBDU1NQaXhlbHMAV29ybGQAUHJvcG9ydGlvbk9mU2NyZWVuV2lkdGgAUHJvcG9ydGlvbk9mU2NyZWVuSGVpZ2h0AFByb3BvcnRpb25PZkJvdW5kaW5nRGlhZ29uYWwAUG9pbnRTaGFwZQBTcXVhcmUARGlzawBTcGhlcmUAQ3VsbGluZ1ZlY3RvclNwYWNlAE9iamVjdABMb2FkUmVzdWx0AFN1Y2Nlc3MAV2ViR0xNaXNzaW5nAFNlc3Npb25BbHJlYWR5U3RhcnRlZABNZXNoRGF0YVJlcGxhY2VFcnJvcgBTZXRUZXh0dXJlRXJyb3JUeXBlAEJhZEltYWdlSWQARmFpbGVkVG9DcmVhdGVUZXh0dXJlAExpbmVQYXR0ZXJuTGVuZ3RoVW5pdABMaWdodFR5cGUARGlyZWN0aW9uYWwAWFJheUdyb3VwAFNlbGVjdGVkAFVuc2VsZWN0ZWQAQmx1ckludGVydmFsVW5pdABQcm9wb3J0aW9uT2ZXaWR0aABQcm9wb3J0aW9uT2ZIZWlnaHQATGlnaHRTcGFjZQBDYW1lcmEAJCRlcwBpbml0aWFsaXplTGlicmFyeQBzaHV0RG93bkxpYnJhcnkAQ2FtZXJhX2NyZWF0ZQBDYW1lcmFfcmVzZXQAQ2FtZXJhX3ZpZXdNYXRyaXgAQ2FtZXJhX3Byb2plY3Rpb25NYXRyaXgAQ2FtZXJhX2Z1bGxNYXRyaXgAQ2FtZXJhX3Byb2plY3Rpb24AQ2FtZXJhX3NldFByb2plY3Rpb24AQ2FtZXJhX3VwVmVjdG9yAENhbWVyYV9zZXRVcFZlY3RvcgBDYW1lcmFfcG9zaXRpb24AQ2FtZXJhX3NldFBvc2l0aW9uAENhbWVyYV90YXJnZXQAQ2FtZXJhX3NldFRhcmdldABDYW1lcmFfbmVhckxpbWl0AENhbWVyYV9zZXROZWFyTGltaXQAQ2FtZXJhX2ZpZWxkV2lkdGgAQ2FtZXJhX2ZpZWxkSGVpZ2h0AENhbWVyYV9zZXRGaWVsZABDYW1lcmFfc2V0RmllbGRCeUFuZ2xlcwBDYW1lcmFfZG9sbHkAQ2FtZXJhX3BhbgBDYW1lcmFfcm9sbABDYW1lcmFfem9vbQBDYW1lcmFfb3JiaXQAQ2FtZXJhX2F4aXNPcmJpdABDYW1lcmFfcmVsYXRpdmVPcmJpdABDYW1lcmFfdW5wcm9qZWN0AHNpemVvZl9DYW1lcmEAYWxsb2NhdGVVaW50OEJ1ZmZlcgBhdHRhY2hTY3NCdWZmZXIAZGVhbGxvY2F0ZVVpbnQ4QnVmZmVyAGxvYWRFbXB0eVNjcwBsb2FkTmV0d29yawBkaXNjb25uZWN0TmV0d29yawBjb252ZXJ0RnJhbWVTdGF0cwBnZXRTdHJlYW1WZXJzaW9uAGdldE5ldHdvcmtWZXJzaW9uAGN1dHRpbmdTZWN0aW9uTGltaXRzAHBhcnNlTWV0YURhdGEAYXR0YWNoU2NzTW9kZWxCeUtleQB0cmlhbmd1bGF0ZVBvbHlnb24ATWVzaEluc3RhbmNlX2dldExheWVyQ291bnQAbWF4RnJhbWVCdWZmZXJTaXplAE92ZXJsYXlfbWF4SW5kZXgAJCRjcwBJbWFnZV9jcmVhdGUASW1hZ2VfZGVzdHJveQBNYXRlcmlhbF9jcmVhdGUATWF0ZXJpYWxfZGVzdHJveQBNYXRlcmlhbF9nZXRBZ2dyZWdhdGVQcm9wZXJ0aWVzAE1hdGVyaWFsX2dldERpZmZ1c2VDb2xvcgBNYXRlcmlhbF9zZXREaWZmdXNlQ29sb3IATWF0ZXJpYWxfZ2V0RW1pc3Npb25Db2xvcgBNYXRlcmlhbF9zZXRFbWlzc2lvbkNvbG9yAE1hdHJpeF9jcmVhdGUATWF0cml4X2Rlc3Ryb3kATWF0cml4X2dldEVsZW1lbnRzAE1hdHJpeF9zZXRFbGVtZW50cwBNZXNoRGF0YV9jcmVhdGUATWVzaERhdGFfcmVwbGFjZQBNZXNoRGF0YV9kZXN0cm95AE1lc2hEYXRhX2xpbmVFbGVtZW50U2VnbWVudHMATWVzaERhdGFfbGluZXNUb0luY2lkZW50RmFjZXMATWVzaERhdGFfZ2V0RGF0YQBNZXNoSW5zdGFuY2VfY3JlYXRlAE1lc2hJbnN0YW5jZV9kZXN0cm95AE1lc2hJbnN0YW5jZV9nZXRNZXNoRGF0YQBNZXNoSW5zdGFuY2Vfc2V0VmlzaWJsZQBNZXNoSW5zdGFuY2Vfc2V0RmFjZXNWaXNpYmxlAE1lc2hJbnN0YW5jZV9zZXRMaW5lc1Zpc2libGUATWVzaEluc3RhbmNlX3NldFBvaW50c1Zpc2libGUATWVzaEluc3RhbmNlX2dldEZhY2VzVmlzaWJsZQBNZXNoSW5zdGFuY2VfZ2V0TGluZXNWaXNpYmxlAE1lc2hJbnN0YW5jZV9nZXRQb2ludHNWaXNpYmxlAE1lc2hJbnN0YW5jZV9nZXRFbGVtZW50SGlnaGxpZ2h0ZWQATWVzaEluc3RhbmNlX3NldEVsZW1lbnRIaWdobGlnaHRlZABNZXNoSW5zdGFuY2VfY2xlYXJFbGVtZW50SGlnaGxpZ2h0AE1lc2hJbnN0YW5jZV9jbGVhckFsbEVsZW1lbnRIaWdobGlnaHQATWVzaEluc3RhbmNlX2dldE1hdHJpeABNZXNoSW5zdGFuY2Vfc2V0TWF0cml4AE1lc2hJbnN0YW5jZV91bnNldE1hdHJpeABNZXNoSW5zdGFuY2VfZ2V0QWx3YXlzRHJhdwBNZXNoSW5zdGFuY2Vfc2V0QWx3YXlzRHJhdwBNZXNoSW5zdGFuY2VfZ2V0RG9Ob3RDdXQATWVzaEluc3RhbmNlX3NldERvTm90Q3V0AE1lc2hJbnN0YW5jZV9nZXRTdXBwcmVzc0NhbWVyYVNjYWxlAE1lc2hJbnN0YW5jZV9zZXRTdXBwcmVzc0NhbWVyYVNjYWxlAE1lc2hJbnN0YW5jZV9nZXRTY3JlZW5PcmllbnRlZABNZXNoSW5zdGFuY2Vfc2V0U2NyZWVuT3JpZW50ZWQATWVzaEluc3RhbmNlX2dldERvTm90RXhwbG9kZQBNZXNoSW5zdGFuY2Vfc2V0RG9Ob3RFeHBsb2RlAE1lc2hJbnN0YW5jZV9nZXREb05vdFNlbGVjdABNZXNoSW5zdGFuY2Vfc2V0RG9Ob3RTZWxlY3QATWVzaEluc3RhbmNlX2dldERvTm90TGlnaHQATWVzaEluc3RhbmNlX3NldERvTm90TGlnaHQATWVzaEluc3RhbmNlX2dldERvTm90T3V0bGluZUhpZ2hsaWdodABNZXNoSW5zdGFuY2Vfc2V0RG9Ob3RPdXRsaW5lSGlnaGxpZ2h0AE1lc2hJbnN0YW5jZV9nZXREb05vdFVzZVZlcnRleENvbG9ycwBNZXNoSW5zdGFuY2Vfc2V0RG9Ob3RVc2VWZXJ0ZXhDb2xvcnMATWVzaEluc3RhbmNlX2dldEV4Y2x1ZGVCb3VuZGluZwBNZXNoSW5zdGFuY2Vfc2V0RXhjbHVkZUJvdW5kaW5nAE1lc2hJbnN0YW5jZV9nZXRPdmVycmlkZVNjZW5lVmlzaWJpbGl0eQBNZXNoSW5zdGFuY2Vfc2V0T3ZlcnJpZGVTY2VuZVZpc2liaWxpdHkATWVzaEluc3RhbmNlX3NldEhpZ2hsaWdodGVkAE1lc2hJbnN0YW5jZV9nZXRIaWdobGlnaHRlZABNZXNoSW5zdGFuY2Vfc2V0WFJheQBNZXNoSW5zdGFuY2Vfc2V0RG9Ob3RYUmF5AE1lc2hJbnN0YW5jZV9oYXNEZXB0aFJhbmdlAE1lc2hJbnN0YW5jZV9zZXREZXB0aFJhbmdlAE1lc2hJbnN0YW5jZV91bnNldERlcHRoUmFuZ2UATWVzaEluc3RhbmNlX2dldE9iamVjdFNwYWNlQm91bmRpbmcATWVzaEluc3RhbmNlX2dldFdvcmxkU3BhY2VCb3VuZGluZwBNZXNoSW5zdGFuY2VfZ2V0RHJhd25Xb3JsZFNwYWNlQm91bmRpbmcATWVzaEluc3RhbmNlX2dldEZhY2VFbGVtZW50Qm91bmRpbmcATWVzaEluc3RhbmNlX2dldExpbmVFbGVtZW50Qm91bmRpbmcATWVzaEluc3RhbmNlX2dldFBvaW50RWxlbWVudEJvdW5kaW5nAE1lc2hJbnN0YW5jZV9saW5lc1RvSW5jaWRlbnRGYWNlcwBNZXNoSW5zdGFuY2VfY29tcHV0ZU1pbmltYWxCb2R5Qm9keURpc3RhbmNlAE1lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEZhY2VGYWNlRGlzdGFuY2UATWVzaEluc3RhbmNlX2NvbXB1dGVNaW5pbWFsRmFjZVJheURpc3RhbmNlAE1lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEZhY2VMaW5lRGlzdGFuY2UATWVzaEluc3RhbmNlX2Rpc2NhcmRBbm9ueW1vdXNNYXRyaXgATWVzaEluc3RhbmNlX3JlaWZ5QW5vbnltb3VzTWF0cml4AE1lc2hJbnN0YW5jZV9zZXRBbm9ueW1vdXNNYXRyaXgATWVzaEluc3RhbmNlX21hdHJpeFByZU11bHRpcGx5AE1lc2hJbnN0YW5jZV9zZXRUZXh0dXJlAE1lc2hJbnN0YW5jZV91bnNldFRleHR1cmUATWVzaEluc3RhbmNlX3NldE1lc2hMZXZlbABNZXNoSW5zdGFuY2Vfc2V0T3ZlcmxheUluZGV4AE1lc2hJbnN0YW5jZV9zZXRPcGFjaXR5AE1lc2hJbnN0YW5jZV91bnNldE9wYWNpdHkATWVzaEluc3RhbmNlX2dldE9wYWNpdHkATWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZU9wYWNpdHkATWVzaEluc3RhbmNlX2hhc1RyYW5zcGFyZW5jeQBNZXNoSW5zdGFuY2Vfc2V0Q3VsbGluZ1ZlY3RvcgBNZXNoSW5zdGFuY2VfdW5zZXRDdWxsaW5nVmVjdG9yAE1lc2hJbnN0YW5jZV9nZXRDdWxsaW5nVmVjdG9yAE1lc2hJbnN0YW5jZV9zZXRDb2xvcgBNZXNoSW5zdGFuY2VfdW5zZXRDb2xvcgBNZXNoSW5zdGFuY2VfZ2V0Q29sb3IATWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZUNvbG9yAE1lc2hJbnN0YW5jZV9zZXRFbGVtZW50Q29sb3IATWVzaEluc3RhbmNlX3Vuc2V0RWxlbWVudENvbG9yAE1lc2hJbnN0YW5jZV9jbGVhckVsZW1lbnRDb2xvcnMATWVzaEluc3RhbmNlX2dldEVsZW1lbnRDb2xvcgBNZXNoSW5zdGFuY2VfZ2V0RWZmZWN0aXZlRWxlbWVudENvbG9yAE1lc2hJbnN0YW5jZV9zZXRMaW5lUGF0dGVybgBNZXNoSW5zdGFuY2VfdW5zZXRMaW5lUGF0dGVybgBPdmVybGF5X2Rlc3Ryb3kAT3ZlcmxheV9zZXRDYW1lcmEAT3ZlcmxheV9zZXRWaWV3cG9ydABPdmVybGF5X3NldFZpc2libGUAZGVidWdfc3RhdGVGYWlsdXJlAGRlYnVnX2xvZwBkZWJ1Z19zeW5jAHByaW1hcnlNb2RlbEtleQBtb2RlbEtleXNGcm9tSW5jbHVzaW9uS2V5cwBhdHRhY2hNb2RlbHMAZGV0YWNoSW5jbHVzaW9ucwByZXNldFRvRW1wdHkAc2V0Q2FtZXJhAGdldENhbWVyYQBnZXRDYW1lcmFQcm9taXNlAHN1c3BlbmREcmF3aW5nAHJlc3VtZURyYXdpbmcAc2V0RmFjZXNWaXNpYmxlAHNldExpbmVzVmlzaWJsZQBzZXRQb2ludHNWaXNpYmxlAHNldFZpc2liaWxpdHlCeUF0dGFjaG1lbnQAZ2V0U3RyZWFtZWRCb3VuZGluZwB3b3JsZFNlbGVjdEJ5UmF5AHNjcmVlblNlbGVjdEJ5UmF5AGJlZ2luU2NyZWVuQXJlYVNlbGVjdGlvbgBiZWdpbkNvbnZleFBvbHloZWRyb25TZWxlY3Rpb24AYmVnaW5SYXlEcmlsbFNlbGVjdGlvbgBiZWdpblNwaGVyZVNlbGVjdGlvbgBlbmRWb2x1bWVTZWxlY3Rpb24AYWR2YW5jZVZvbHVtZVNlbGVjdGlvbgBhZGRDdXR0aW5nU2VjdGlvbgByZXBsYWNlQ3V0dGluZ1NlY3Rpb24AcmVtb3ZlQ3V0dGluZ1NlY3Rpb25zAHJlbW92ZUFsbEN1dHRpbmdTZWN0aW9ucwBnZXRDdXR0aW5nU2VjdGlvbnMAZW5hYmxlQ2FwcGluZwBkaXNhYmxlQ2FwcGluZwBwYXVzZUNhcHBpbmcAcmVzdW1lQ2FwcGluZwBnZXRNZXRhRGF0YQB0cnVuY2F0ZU1ldGFEYXRhAGdldEZhY2VzVmlzaWJsZQBnZXRMaW5lc1Zpc2libGUAZ2V0UG9pbnRzVmlzaWJsZQBnZXRGcm9udEZhY2VzVmlzaWJsZQBzZXRGcm9udEZhY2VzVmlzaWJsZQBnZXRCYWNrRmFjZXNWaXNpYmxlAHNldEJhY2tGYWNlc1Zpc2libGUAZ2V0RmFjZVdpbmRpbmdGbGlwcGVkAHNldEZhY2VXaW5kaW5nRmxpcHBlZABnZXRFbGVtZW50Q291bnQAZ2V0VHJpYW5nbGVDb3VudABnZXRTdGF0aXN0aWNzAGdldERlZmF1bHREZXB0aFJhbmdlAHNldERlZmF1bHREZXB0aFJhbmdlAHVuc2V0QWxsSGlnaGxpZ2h0ZWQAdW5zZXRBbGxYUmF5AHVuc2V0QWxsQ29sb3JzAHVuc2V0QWxsT3BhY2l0eQBzZXRCYWNrZ3JvdW5kQ29sb3IAc2V0QmFja2dyb3VuZEdyYWRpZW50AGdldEJhY2tncm91bmRHcmFkaWVudABzZXREcmF3TW9kZQBzZXRIaWdobGlnaHRNb2RlAHNldEhpZ2hsaWdodENvbG9yaXplQ29tcHJlc3Npb24Ac2V0SGlnaGxpZ2h0ZWRJbnN0YW5jZUZpbHRlcgBzZXRIaWdobGlnaHRlZEVsZW1lbnRGaWx0ZXIAc2V0VW5oaWdobGlnaHRlZEZpbHRlcgBzZXRIaWdobGlnaHRlZEluc3RhbmNlQ29sb3IAc2V0SGlnaGxpZ2h0ZWRFbGVtZW50Q29sb3IAc2V0VW5oaWdobGlnaHRlZENvbG9yAHNldEhpZ2hsaWdodGVkSW5zdGFuY2VPdXRsaW5lQ29sb3IAc2V0SGlnaGxpZ2h0ZWRFbGVtZW50T3V0bGluZUNvbG9yAHNldEhpZGRlbkxpbmVIaWRkZW5MaW5lQ29sb3IAc2V0SGlkZGVuTGluZVZpc2libGVMaW5lQ29sb3IAc2V0SGlkZGVuTGluZUhpZ2hsaWdodGVkSW5zdGFuY2VGaWxsQ29sb3IAc2V0SGlkZGVuTGluZUhpZ2hsaWdodGVkRWxlbWVudEZpbGxDb2xvcgBzZXRIaWRkZW5MaW5lSGlnaGxpZ2h0ZWRJbnN0YW5jZU91dGxpbmVDb2xvcgBzZXRIaWRkZW5MaW5lSGlnaGxpZ2h0ZWRFbGVtZW50T3V0bGluZUNvbG9yAGdldEFtYmllbnRPY2NsdXNpb25FbmFibGVkAGdldEFtYmllbnRPY2NsdXNpb25SYWRpdXMAc2V0QW1iaWVudE9jY2x1c2lvbkVuYWJsZWQAc2V0QW1iaWVudE9jY2x1c2lvblJhZGl1cwBzZXRBbWJpZW50T2NjbHVzaW9uSW50ZW5zaXR5AHNldEFtYmllbnRPY2NsdXNpb25CaWFzAHNldEFtYmllbnRPY2NsdXNpb25Db250cmFzdABzZXRBbWJpZW50T2NjbHVzaW9uU2FtcGxlcwBzZXRBbWJpZW50T2NjbHVzaW9uQmx1clNhbXBsZXMAc2V0QW1iaWVudE9jY2x1c2lvbkJsdXJJbnRlcnZhbABzZXRBbWJpZW50T2NjbHVzaW9uRWRnZURpc3RhbmNlAHNldEFtYmllbnRPY2NsdXNpb25PcGFjaXR5AHNldEFtYmllbnRPY2NsdXNpb25Ob2lzZVNpemUAc2V0Qm91bmRpbmdQcmV2aWV3Q29sb3IAc2V0QW50aUFsaWFzaW5nTW9kZQBzZXRTbWFhUXVhbGl0eQBzZXRUcmFuc3BhcmVuY3lNb2RlAHNldEN1cnJlbnRWaWV3AHVuc2V0Q3VycmVudFZpZXcAc2V0RGVmYXVsdEdsb3NzAHNldERlZmF1bHRTcGVjdWxhck1peABzZXREZWZhdWx0TWlycm9yAHNldERlZmF1bHRTcGhlcmVNYXAAdW5zZXREZWZhdWx0U3BoZXJlTWFwAHNldExpZ2h0aW5nRW5hYmxlZABzZXRBbWJpZW50TGlnaHRDb2xvcgBjbGVhckxpZ2h0cwBhZGRMaWdodABxdWV1ZVJlZHJhdwB3YWl0Rm9ySW1hZ2VEZWNvZGluZwBzdGFydEV4cGxvZGUAZXhwbG9kZQByZXNldEV4cGxvZGUAc2V0WFJheU1hdGVyaWFsAHVuc2V0WFJheU1hdGVyaWFsAHNldFhSYXlPcGFjaXR5AHNldFhSYXlUcmFuc3BhcmVuY3lNb2RlAHNldFBvaW50U2l6ZQBzZXRQb2ludFNoYXBlAGdldFBvaW50U2l6ZQBnZXRQb2ludFNpemVVbml0AGdldFBvaW50U2hhcGUAc2V0RXllRG9tZUxpZ2h0aW5nRW5hYmxlZABnZXRFeWVEb21lTGlnaHRpbmdFbmFibGVkAHNldEV5ZURvbWVMaWdodGluZ0JsdXJTYW1wbGVzAGdldEV5ZURvbWVMaWdodGluZ0JsdXJTYW1wbGVzAHNldEV5ZURvbWVMaWdodGluZ0JsdXJJbnRlcnZhbABnZXRFeWVEb21lTGlnaHRpbmdCbHVySW50ZXJ2YWwAc2V0RXllRG9tZUxpZ2h0aW5nQmx1ckVkZ2VEaXN0YW5jZQBnZXRFeWVEb21lTGlnaHRpbmdCbHVyRWRnZURpc3RhbmNlAHNldEV5ZURvbWVMaWdodGluZ1NoYWRpbmdFZGdlRGlzdGFuY2UAZ2V0RXllRG9tZUxpZ2h0aW5nU2hhZGluZ0VkZ2VEaXN0YW5jZQBzZXRFeWVEb21lTGlnaHRpbmdPcGFjaXR5AGdldEV5ZURvbWVMaWdodGluZ09wYWNpdHkAcmVnaXN0ZXJCaW1JbnN0YW5jZXMAc2V0Qmxvb21FbmFibGVkAHNldEJsb29tVGhyZXNob2xkAHNldEJsb29tVGhyZXNob2xkUmFtcFdpZHRoAHNldEJsb29tSW50ZW5zaXR5U2NhbGUAc2V0Qmxvb21MYXllckNvdW50AHNldEJsb29tSW50ZW5zaXR5AHNldEJsb29tQmx1clNhbXBsZXMAc2V0Qmxvb21CbHVySW50ZXJ2YWwAc3RhcnRDb21wYXJpc29uAGVuZENvbXBhcmlzb24Ac2V0Q29tcGFyaXNvbkNvbG9ycwBzZXRHcm91bmRQbGFuZQBzZXRHcm91bmRQbGFuZVdpdGhQb3NpdGlvbgBzZXRTaW1wbGVTaGFkb3dFbmFibGVkAHNldFNpbXBsZVNoYWRvd0NvbG9yAHNldFNpbXBsZVNoYWRvd09wYWNpdHkAc2V0U2ltcGxlU2hhZG93UmVzb2x1dGlvbgBzZXRTaW1wbGVTaGFkb3dCbHVyU2FtcGxlcwBzZXRTaW1wbGVTaGFkb3dCbHVySW50ZXJ2YWwAc2V0U2ltcGxlU2hhZG93SW50ZXJhY3RpdmVVcGRhdGVFbmFibGVkAHNldFNpbGhvdWV0dGVFbmFibGVkAHNldFNpbGhvdWV0dGVUaHJlc2hvbGQAc2V0U2lsaG91ZXR0ZVRocmVzaG9sZFJhbXBXaWR0aABzZXRTaWxob3VldHRlQ29sb3IAc2V0U2lsaG91ZXR0ZU9wYWNpdHkAc2V0U2ltcGxlUmVmbGVjdGlvbkVuYWJsZWQAc2V0U2ltcGxlUmVmbGVjdGlvbk9wYWNpdHkAc2V0U2ltcGxlUmVmbGVjdGlvbkZhZGVBbmdsZQBzZXRTaW1wbGVSZWZsZWN0aW9uQmx1clNhbXBsZXMAc2V0U2ltcGxlUmVmbGVjdGlvbkJsdXJJbnRlcnZhbABzZXRTaW1wbGVSZWZsZWN0aW9uQXR0ZW51YXRpb24AcmVxdWVzdE1lc2hJbnN0YW5jZXMAcmVxdWVzdE1lc2hJbnN0YW5jZXNCeUdyb3VwAGRlbWFuZE1lc2hJbnN0YW5jZXMAbWFya0FsbE1lc2hJbnN0YW5jZXNJbnRlcmVzdGluZwBzZXRNZXNoTGV2ZWwAc2V0U3RyZWFtQ3V0b2ZmU2NhbGUAc2V0U3RyZWFtSWRsZU1hcmtlcgBzZXRDYXBwaW5nSWRsZUhvb2tFbmFibGVkAHJlcXVlc3RHcm91cHMAcmVxdWVzdEltYWdlcwByZXF1ZXN0TWF0ZXJpYWxzAGV4cG9ydFRvU3ZnAG1lc2hJbnN0YW5jZUtleUluZm8AbWV0YURhdGFLZXlJbmZvAHNldFNjcmVlbkRpbWVuc2lvbnMAZ2V0TWluRnJhbWVSYXRlAHNldE1pbkRyYXdMaW1pdABzZXRNaW5GcmFtZVJhdGUAc2V0TWluSW50ZXJhY3RpdmVGcmFtZVJhdGUAc2V0TWluSW5jcmVtZW50YWxGcmFtZVJhdGUAc2V0SW50ZXJhY3RpdmVMaW1pdEluY3JlYXNlSW50ZXJ2YWwAc2V0UG9zdElucHV0RGVsYXkAc2V0RHJhd0lkbGVEZWxheQBzZXREaXNwbGF5SW5jb21wbGV0ZUZyYW1lcwAkJHNzAGRlYnVnX25vdGlmeUxvZ2dlZFJwY0V4ZWN1dGlvbklzQWxsb3dlZAByZXF1ZXN0TWV0YURhdGEAbm90aWZ5UnBjQ2xpZW50UmVzdWx0AHsgY29uc29sZS5sb2coIlJQQyBwYXJzaW5nIGZhaWxlZCIpOyB9AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSWJFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0RfRUVGdlNDX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlB2RUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSWJFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlckliRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJYkVFAE4zUnBjMTRBYnN0cmFjdFBhcnNlckUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJZEVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTRF9FRUZ2U0NfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSWRFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklkRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySWRMaThFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJZEVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSWZFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0RfRUVGdlNDX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlmRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJZkVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklmTGk0RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySWZFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlpRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNEX0VFRnZTQ19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJaUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySWlFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJaUxpNEVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklpRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNHBhaXJJTjJUQzNXZWI5UmdiYUNvbG9yRVM5X0VFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNJX0VFRnZTSF9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlN0M19fMjRwYWlySU4yVEMzV2ViOVJnYmFDb2xvckVTN19FRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI0cGFpcklOMlRDM1dlYjlSZ2JhQ29sb3JFUzVfRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNHBhaXJJTjJUQzNXZWI5UmdiYUNvbG9yRVM2X0VFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViOVJnYmFDb2xvckVFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWI5UmdiYUNvbG9yRUxpMTZFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI5UmdiYUNvbG9yRUVFAE4yVEMzV2ViOVJnYmFDb2xvckUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNnZlY3RvckliTlNfOWFsbG9jYXRvckliRUVFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlM3X0lTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TdDNfXzI2dmVjdG9ySWJOUzNfOWFsbG9jYXRvckliRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySWJOUzJfOWFsbG9jYXRvckliRUVFRUVFAE4zUnBjNlBhcnNlcklqRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySWpMaTRFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJakVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJZk5TXzlhbGxvY2F0b3JJZkVFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TN19JU0hfRUVGdlNHX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklmTlMzXzlhbGxvY2F0b3JJZkVFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklmTlMxXzlhbGxvY2F0b3JJZkVFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklmTlMyXzlhbGxvY2F0b3JJZkVFRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU182dmVjdG9ySU5TNl9JTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVOU185YWxsb2NhdG9ySVM5X0VFRUVOU0FfSVNDX0VFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TQV9JU01fRUVGdlNMX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklOUzRfSU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTlMzXzlhbGxvY2F0b3JJUzdfRUVFRU5TOF9JU0FfRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySU5TMl9JTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVOUzFfOWFsbG9jYXRvcklTNV9FRUVFTlM2X0lTOF9FRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTlMzX0lONUVpZ2VuNk1hdHJpeElmTGk0RUxpMUVMaTBFTGk0RUxpMUVFRU5TMl85YWxsb2NhdG9ySVM2X0VFRUVOUzdfSVM5X0VFRUVFRQBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVOUzFfOWFsbG9jYXRvcklTNV9FRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVOUzJfOWFsbG9jYXRvcklTNl9FRUVFRUUATjNScGM2UGFyc2VySU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTGkxNkVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpMUVMaTBFTGk0RUxpMUVFRUVFAE41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFAE41RWlnZW4xNVBsYWluT2JqZWN0QmFzZUlOU182TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFRUUATjVFaWdlbjEwTWF0cml4QmFzZUlOU182TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFRUUATjVFaWdlbjlEZW5zZUJhc2VJTlNfNk1hdHJpeElmTGk0RUxpMUVMaTBFTGk0RUxpMUVFRUVFAE41RWlnZW44aW50ZXJuYWwyMnNwZWNpYWxfc2NhbGFyX29wX2Jhc2VJTlNfNk1hdHJpeElmTGk0RUxpMUVMaTBFTGk0RUxpMUVFRWZmTlNfMTVEZW5zZUNvZWZmc0Jhc2VJUzNfTGkzRUVFTGIwRUVFAE41RWlnZW4xNURlbnNlQ29lZmZzQmFzZUlOU182TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTGkzRUVFAE41RWlnZW4xNURlbnNlQ29lZmZzQmFzZUlOU182TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTGkxRUVFAE41RWlnZW4xNURlbnNlQ29lZmZzQmFzZUlOU182TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTGkwRUVFAE41RWlnZW45RWlnZW5CYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU182dmVjdG9ySU4yVEMzV2ViN0JpbmRpbmcxM0N1bGxpbmdWZWN0b3JFTlNfOWFsbG9jYXRvcklTQV9FRUVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU0JfSVNMX0VFRnZTS19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzNfOWFsbG9jYXRvcklTOF9FRUVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzFfOWFsbG9jYXRvcklTNl9FRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzJfOWFsbG9jYXRvcklTN19FRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmcxM0N1bGxpbmdWZWN0b3JFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVFRQBOM1JwYzZQYXJzZXJJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTEyRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU41RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViMThDdWxsaW5nVmVjdG9yU3BhY2VFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViMThDdWxsaW5nVmVjdG9yU3BhY2VFTGkxRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViMThDdWxsaW5nVmVjdG9yU3BhY2VFRUUAc3BhY2UAdmVjdG9yAHRvbGVyYW5jZURlZ3JlZXMATjJUQzNXZWIxOEN1bGxpbmdWZWN0b3JTcGFjZUUATjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUUATjVFaWdlbjE1UGxhaW5PYmplY3RCYXNlSU5TXzZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRQBONUVpZ2VuMTBNYXRyaXhCYXNlSU5TXzZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRQBONUVpZ2VuOURlbnNlQmFzZUlOU182TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFRUUATjVFaWdlbjhpbnRlcm5hbDIyc3BlY2lhbF9zY2FsYXJfb3BfYmFzZUlOU182TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFZmZOU18xNURlbnNlQ29lZmZzQmFzZUlTM19MaTNFRUVMYjBFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTNFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTFFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTBFRUUATjVFaWdlbjlFaWdlbkJhc2VJTlNfNk1hdHJpeElmTGkzRUxpMUVMaTBFTGkzRUxpMUVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJTjJUQzNXZWI3QmluZGluZzEzTWF0ZXJpYWxQcm9wc0VOU185YWxsb2NhdG9ySVNBX0VFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TQl9JU0xfRUVGdlNLX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdCaW5kaW5nMTNNYXRlcmlhbFByb3BzRU5TM185YWxsb2NhdG9ySVM4X0VFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdCaW5kaW5nMTNNYXRlcmlhbFByb3BzRU5TMV85YWxsb2NhdG9ySVM2X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdCaW5kaW5nMTNNYXRlcmlhbFByb3BzRU5TMl85YWxsb2NhdG9ySVM3X0VFRUVFRQBOM1JwYzZQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEzTWF0ZXJpYWxQcm9wc0VFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEzTWF0ZXJpYWxQcm9wc0VMaTMyRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViN0JpbmRpbmcxM01hdGVyaWFsUHJvcHNFRUUATjJUQzNXZWI3QmluZGluZzEzTWF0ZXJpYWxQcm9wc0UATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNnZlY3RvcklOMlRDM1dlYjRCb3gzSWZFRU5TXzlhbGxvY2F0b3JJU0FfRUVFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNCX0lTTF9FRUZ2U0tfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViNEJveDNJZkVFTlMzXzlhbGxvY2F0b3JJUzhfRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViNEJveDNJZkVFTlMxXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViNEJveDNJZkVFTlMyXzlhbGxvY2F0b3JJUzdfRUVFRUVFAE4zUnBjNlBhcnNlcklOMlRDM1dlYjRCb3gzSWZFRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjRCb3gzSWZFRUxpMjRFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI0Qm94M0lmRUVFRQBOMlRDM1dlYjRCb3gzSWZFRQBOMlRDM1dlYjVSYW5nZUlONUVpZ2VuNk1hdHJpeElmTGkzRUxpMUVMaTBFTGkzRUxpMUVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJTjJUQzNXZWI3S2V5VHlwZTJJZEVOU185YWxsb2NhdG9ySVNBX0VFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TQl9JU0xfRUVGdlNLX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdLZXlUeXBlMklkRU5TM185YWxsb2NhdG9ySVM4X0VFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdLZXlUeXBlMklkRU5TMV85YWxsb2NhdG9ySVM2X0VFRUVFRQBOM1JwYzVVdGlsczE1UnVuTGVuZ3RoUGFyc2VySU4yVEMzV2ViN0tleVR5cGUySWRFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3S2V5VHlwZTJJZEVOUzJfOWFsbG9jYXRvcklTN19FRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViN0tleVR5cGUySWRFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViN0tleVR5cGUySWRFTGk4RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViN0tleVR5cGUySWRFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNnZlY3RvcklOMlRDM1dlYjdLZXlUeXBlM0luY0VOU185YWxsb2NhdG9ySVNBX0VFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TQl9JU0xfRUVGdlNLX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklOMlRDM1dlYjdLZXlUeXBlM0luY0VOUzNfOWFsbG9jYXRvcklTOF9FRUVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3S2V5VHlwZTNJbmNFTlMxXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE4zUnBjNVV0aWxzMTVSdW5MZW5ndGhQYXJzZXJJTjJUQzNXZWI3S2V5VHlwZTNJbmNFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI3S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzdfRUVFRUVFAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdLZXlUeXBlM0luY0VFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWI3S2V5VHlwZTNJbmNFTGk4RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViN0tleVR5cGUzSW5jRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVOU185YWxsb2NhdG9ySVM5X0VFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TQV9JU0tfRUVGdlNKX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TM185YWxsb2NhdG9ySVM3X0VFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TMV85YWxsb2NhdG9ySVM1X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TMl85YWxsb2NhdG9ySVM2X0VFRUVFRQBOM1JwYzZQYXJzZXJJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTY0RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU41RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRUUATjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUUATjVFaWdlbjE1UGxhaW5PYmplY3RCYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVFRQBONUVpZ2VuMTBNYXRyaXhCYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVFRQBONUVpZ2VuOURlbnNlQmFzZUlOU182TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRUUATjVFaWdlbjhpbnRlcm5hbDIyc3BlY2lhbF9zY2FsYXJfb3BfYmFzZUlOU182TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFZmZOU18xNURlbnNlQ29lZmZzQmFzZUlTM19MaTNFRUVMYjBFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTNFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTFFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTBFRUUATjVFaWdlbjlFaWdlbkJhc2VJTlNfNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJTjJUQzNXZWI5UmdiYUNvbG9yRU5TXzlhbGxvY2F0b3JJUzlfRUVFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNBX0lTS19FRUZ2U0pfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViOVJnYmFDb2xvckVOUzNfOWFsbG9jYXRvcklTN19FRUVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI5UmdiYUNvbG9yRU5TMV85YWxsb2NhdG9ySVM1X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlSZ2JhQ29sb3JFTlMyXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJTjJUQzNXZWI4UmdiQ29sb3JFTlNfOWFsbG9jYXRvcklTOV9FRUVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU0FfSVNLX0VFRnZTSl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI4UmdiQ29sb3JFTlMzXzlhbGxvY2F0b3JJUzdfRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViOFJnYkNvbG9yRU5TMV85YWxsb2NhdG9ySVM1X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjhSZ2JDb2xvckVOUzJfOWFsbG9jYXRvcklTNl9FRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViOFJnYkNvbG9yRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjhSZ2JDb2xvckVMaTEyRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViOFJnYkNvbG9yRUVFAE4yVEMzV2ViOFJnYkNvbG9yRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU182dmVjdG9ySU41RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFTlNfOWFsbG9jYXRvcklTOV9FRUVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU0FfSVNLX0VFRnZTSl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzNfOWFsbG9jYXRvcklTN19FRUVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzFfOWFsbG9jYXRvcklTNV9FRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzJfOWFsbG9jYXRvcklTNl9FRUVFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpMUVMaTBFTGk0RUxpMUVFRU5TXzlhbGxvY2F0b3JJUzlfRUVFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNBX0lTS19FRUZ2U0pfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TdDNfXzI2dmVjdG9ySU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTlMzXzlhbGxvY2F0b3JJUzdfRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTlNfNnZlY3RvcklqTlNfOWFsbG9jYXRvcklqRUVFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlM3X0lTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TdDNfXzI2dmVjdG9ySWpOUzNfOWFsbG9jYXRvcklqRUVFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySWpOUzFfOWFsbG9jYXRvcklqRUVFRUVFAE4zUnBjNVV0aWxzMTVSdW5MZW5ndGhQYXJzZXJJakVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySWpOUzJfOWFsbG9jYXRvcklqRUVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU5TXzZ2ZWN0b3JJaE5TXzlhbGxvY2F0b3JJaEVFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TN19JU0hfRUVGdlNHX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOU3QzX18yNnZlY3RvckloTlMzXzlhbGxvY2F0b3JJaEVFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvckloTlMxXzlhbGxvY2F0b3JJaEVFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvckloTlMyXzlhbGxvY2F0b3JJaEVFRUVFRQBOM1JwYzZQYXJzZXJJaEVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlckloTGkxRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySWhFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTZDcmVhdGVJbWFnZUVycm9yRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxNkNyZWF0ZUltYWdlRXJyb3JFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE2Q3JlYXRlSW1hZ2VFcnJvckVFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE2Q3JlYXRlSW1hZ2VFcnJvckVMaTFFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE2Q3JlYXRlSW1hZ2VFcnJvckVFRQBOMlRDM1dlYjdCaW5kaW5nMTZDcmVhdGVJbWFnZUVycm9yRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMjNDcmVhdGVNZXNoSW5zdGFuY2VFcnJvckVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0hfRUVGdlNHX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMjNDcmVhdGVNZXNoSW5zdGFuY2VFcnJvckVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMjNDcmVhdGVNZXNoSW5zdGFuY2VFcnJvckVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMjNDcmVhdGVNZXNoSW5zdGFuY2VFcnJvckVFRQB0eXBlAG1hdGVyaWFsSWRzAG1lc2hEYXRhSWQAbWF0cml4SW5jAE4yVEMzV2ViN0JpbmRpbmcyM0NyZWF0ZU1lc2hJbnN0YW5jZUVycm9yNFR5cGVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxOUN1dHRpbmdTZWN0aW9uRXJyb3JFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNIX0VFRnZTR19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3QmluZGluZzE5Q3V0dGluZ1NlY3Rpb25FcnJvckVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTlDdXR0aW5nU2VjdGlvbkVycm9yRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTlDdXR0aW5nU2VjdGlvbkVycm9yRUxpMUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTlDdXR0aW5nU2VjdGlvbkVycm9yRUVFAE4yVEMzV2ViN0JpbmRpbmcxOUN1dHRpbmdTZWN0aW9uRXJyb3JFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzdfN0tleVR5cGUySWRFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0tfRUVGdlNKX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTJEZXN0cm95RXJyb3JJTlM0XzdLZXlUeXBlMklkRUVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEyRGVzdHJveUVycm9ySU5TMl83S2V5VHlwZTJJZEVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzNfN0tleVR5cGUySWRFRUVFRQBub25FeGlzdGluZ09iamVjdHMAaW5Vc2VPYmplY3RzAHJlbW90ZWx5Q3JlYXRlZE9iamVjdHMATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3QmluZGluZzEyRGVzdHJveUVycm9ySU5TN183S2V5VHlwZTNJbmNFRUVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0tfRUVGdlNKX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTJEZXN0cm95RXJyb3JJTlM0XzdLZXlUeXBlM0luY0VFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzJfN0tleVR5cGUzSW5jRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEyRGVzdHJveUVycm9ySU5TM183S2V5VHlwZTNJbmNFRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTJNZXNoRGF0YUNvcHlFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNIX0VFRnZTR19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3QmluZGluZzEyTWVzaERhdGFDb3B5RUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmcxMk1lc2hEYXRhQ29weUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTJNZXNoRGF0YUNvcHlFRUUATjNScGM2UGFyc2VySU5TdDNfXzI2dmVjdG9ySXROUzFfOWFsbG9jYXRvckl0RUVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySXROUzJfOWFsbG9jYXRvckl0RUVFRUVFAE4zUnBjNlBhcnNlckl0RUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySXRMaTJFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJdEVFAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjEyTWVzaERhdGFJbXBsMTFFbGVtZW50SW5mb0VOUzFfOWFsbG9jYXRvcklTNl9FRUVFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWIxMk1lc2hEYXRhSW1wbDExRWxlbWVudEluZm9FTlMyXzlhbGxvY2F0b3JJUzdfRUVFRUVFAE4zUnBjNlBhcnNlcklOMlRDM1dlYjEyTWVzaERhdGFJbXBsMTFFbGVtZW50SW5mb0VFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWIxMk1lc2hEYXRhSW1wbDExRWxlbWVudEluZm9FTGkxMkVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjEyTWVzaERhdGFJbXBsMTFFbGVtZW50SW5mb0VFRQBGbG9hdDMyQXJyYXkAVWludDE2QXJyYXkAVWludDMyQXJyYXkASEVBUEYzMgBIRUFQVTE2AEhFQVBVMzIAdmVydGljZXMAc3ViYXJyYXkAaW5kaWNlcwBlbGVtZW50cwBkdXBsaWNhdGVNYXRyaXgAd2luZGluZwBjb3VudGVyQ2xvY2t3aXNlAGNsb2Nrd2lzZQBpc1R3b1NpZGVkAGlzTWFuaWZvbGQAZm9yd2FyZABzdHJpZGUAbm9ybWFsT2Zmc2V0AFVWT2Zmc2V0AFJHQkEzMk9mZnNldABmYWNlVmVydGV4Q291bnQAbGluZVZlcnRleENvdW50AHBvaW50VmVydGV4Q291bnQAZmFjZU5vcm1hbHMAZmFjZVVWcwBmYWNlUkdCQTMycwBsaW5lTm9ybWFscwBsaW5lVVZzAGxpbmVSR0JBMzJzAHBvaW50Tm9ybWFscwBwb2ludFVWcwBwb2ludFJHQkEzMnMATjEwZW1zY3JpcHRlbjN2YWxFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhR2V0RGF0YUVycm9yRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhR2V0RGF0YUVycm9yRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhR2V0RGF0YUVycm9yRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMjBNZXNoRGF0YUdldERhdGFFcnJvckVMaTFFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzIwTWVzaERhdGFHZXREYXRhRXJyb3JFRUUATjJUQzNXZWI3QmluZGluZzIwTWVzaERhdGFHZXREYXRhRXJyb3JFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhUmVwbGFjZUVycm9yRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhUmVwbGFjZUVycm9yRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmcyME1lc2hEYXRhUmVwbGFjZUVycm9yRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMjBNZXNoRGF0YVJlcGxhY2VFcnJvckVMaTFFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzIwTWVzaERhdGFSZXBsYWNlRXJyb3JFRUUATjJUQzNXZWI3QmluZGluZzIwTWVzaERhdGFSZXBsYWNlRXJyb3JFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmczUmF5RUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmczUmF5RUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViN0JpbmRpbmczUmF5RUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjdCaW5kaW5nM1JheUVMaTQ4RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViN0JpbmRpbmczUmF5RUVFAE4yVEMzV2ViN0JpbmRpbmczUmF5RQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTlSZXF1ZXN0TWV0YURhdGFEb25lRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxOVJlcXVlc3RNZXRhRGF0YURvbmVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE5UmVxdWVzdE1ldGFEYXRhRG9uZUVFRQBOM1JwYzVVdGlsczIwU3RhbmRhcmRMYXlvdXRQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE5UmVxdWVzdE1ldGFEYXRhRG9uZUVMaTFFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE5UmVxdWVzdE1ldGFEYXRhRG9uZUVFRQBOMlRDM1dlYjREb25lRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0hfRUVGdlNHX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRQBpbnN0YW5jZVNvdXJjZUluY3MATjJUQzNXZWI3QmluZGluZzE0U2V0TWF0cml4RXJyb3I0VHlwZUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3QmluZGluZzE1U2V0VGV4dHVyZUVycm9yRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxNVNldFRleHR1cmVFcnJvckVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTVTZXRUZXh0dXJlRXJyb3JFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzE1U2V0VGV4dHVyZUVycm9yRUVFAGltYWdlSWQATjJUQzNXZWI3QmluZGluZzE1U2V0VGV4dHVyZUVycm9yNFR5cGVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0JpbmRpbmcxMFN0YXRpc3RpY3NFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNIX0VFRnZTR19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3QmluZGluZzEwU3RhdGlzdGljc0VFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTBTdGF0aXN0aWNzRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjdCaW5kaW5nMTBTdGF0aXN0aWNzRUxpMTZFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI3QmluZGluZzEwU3RhdGlzdGljc0VFRQBOMlRDM1dlYjdCaW5kaW5nMTBTdGF0aXN0aWNzRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjRCb3gzSWZFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViNEJveDNJZkVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjZDYW1lcmFFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI2Q2FtZXJhRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViNkNhbWVyYUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjZDYW1lcmFFRUUATjNScGM2UGFyc2VySU41RWlnZW42TWF0cml4SWRMaTNFTGkxRUxpMEVMaTNFTGkxRUVFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU41RWlnZW42TWF0cml4SWRMaTNFTGkxRUxpMEVMaTNFTGkxRUVFTGkyNEVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklONUVpZ2VuNk1hdHJpeElkTGkzRUxpMUVMaTBFTGkzRUxpMUVFRUVFAE4zUnBjNlBhcnNlcklONUVpZ2VuNk1hdHJpeElkTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklONUVpZ2VuNk1hdHJpeElkTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUxpMTI4RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU41RWlnZW42TWF0cml4SWRMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxMkRpc3RhbmNlSW5mb0VFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0dfRUVGdlNGX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjEyRGlzdGFuY2VJbmZvRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViMTJEaXN0YW5jZUluZm9FRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViMTJEaXN0YW5jZUluZm9FTGk1NkVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjEyRGlzdGFuY2VJbmZvRUVFAE4yVEMzV2ViMTJEaXN0YW5jZUluZm9FAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViNERvbmVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI0RG9uZUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjREb25lRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjREb25lRUxpMUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjREb25lRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0tleVR5cGUySWRFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNIX0VFRnZTR19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI3S2V5VHlwZTJJZEVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0tleVR5cGUzSW5jRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViN0tleVR5cGUzSW5jRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxMFBvaW50U2hhcGVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxMFBvaW50U2hhcGVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWIxMFBvaW50U2hhcGVFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViMTBQb2ludFNoYXBlRUxpMUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjEwUG9pbnRTaGFwZUVFRQBOMlRDM1dlYjEwUG9pbnRTaGFwZUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxM1BvaW50U2l6ZVVuaXRFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxM1BvaW50U2l6ZVVuaXRFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWIxM1BvaW50U2l6ZVVuaXRFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViMTNQb2ludFNpemVVbml0RUxpMUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjEzUG9pbnRTaXplVW5pdEVFRQBOMlRDM1dlYjEzUG9pbnRTaXplVW5pdEUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI1UmFuZ2VJZEVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNIX0VFRnZTR19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWI1UmFuZ2VJZEVFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOM1JwYzZQYXJzZXJJTjJUQzNXZWI1UmFuZ2VJZEVFRUUATjNScGM1VXRpbHMyMFN0YW5kYXJkTGF5b3V0UGFyc2VySU4yVEMzV2ViNVJhbmdlSWRFRUxpMTZFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI1UmFuZ2VJZEVFRUUATjJUQzNXZWI1UmFuZ2VJZEVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViNVJhbmdlSWZFRUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViNVJhbmdlSWZFRUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViNVJhbmdlSWZFRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjVSYW5nZUlmRUVMaThFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI1UmFuZ2VJZkVFRUUATjJUQzNXZWI1UmFuZ2VJZkVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViOVJnYmFDb2xvckVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0dfRUVGdlNGX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjlSZ2JhQ29sb3JFRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjhSZ2JDb2xvckVFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0dfRUVGdlNGX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlOMlRDM1dlYjhSZ2JDb2xvckVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViOVNlbGVjdGlvbjE4UmF5U2VsZWN0aW9uUmVzdWx0RUVFUzRfUk5TMl8xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfTlNfOWFsbG9jYXRvcklTSF9FRUZ2U0dfRUVFAFpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViOVNlbGVjdGlvbjE4UmF5U2VsZWN0aW9uUmVzdWx0RUVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8ATjNScGM2UGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjE4UmF5U2VsZWN0aW9uUmVzdWx0RUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjE4UmF5U2VsZWN0aW9uUmVzdWx0RUVFAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlTZWxlY3Rpb24xMEZhY2VFbnRpdHlFTlMxXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViOVNlbGVjdGlvbjEwRmFjZUVudGl0eUVOUzJfOWFsbG9jYXRvcklTN19FRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjEwRmFjZUVudGl0eUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjlTZWxlY3Rpb24xMEZhY2VFbnRpdHlFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjE0RmFjZUVudGl0eUJhc2VFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI5U2VsZWN0aW9uMTRGYWNlRW50aXR5QmFzZUVFRQBOM1JwYzZQYXJzZXJJTjJUQzNXZWI5U2VsZWN0aW9uMTBFbnRpdHlCYXNlRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjEwRW50aXR5QmFzZUVFRQBOM1JwYzZQYXJzZXJJTlN0M19fMjZ2ZWN0b3JJTjJUQzNXZWI5U2VsZWN0aW9uMTBMaW5lRW50aXR5RU5TMV85YWxsb2NhdG9ySVM2X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlTZWxlY3Rpb24xMExpbmVFbnRpdHlFTlMyXzlhbGxvY2F0b3JJUzdfRUVFRUVFAE4zUnBjNlBhcnNlcklOMlRDM1dlYjlTZWxlY3Rpb24xMExpbmVFbnRpdHlFRUUATjNScGM1VXRpbHMxM1N0b3JhZ2VQYXJzZXJJTjJUQzNXZWI5U2VsZWN0aW9uMTBMaW5lRW50aXR5RUVFAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlTZWxlY3Rpb24xMVBvaW50RW50aXR5RU5TMV85YWxsb2NhdG9ySVM2X0VFRUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlTZWxlY3Rpb24xMVBvaW50RW50aXR5RU5TMl85YWxsb2NhdG9ySVM3X0VFRUVFRQBOM1JwYzZQYXJzZXJJTjJUQzNXZWI5U2VsZWN0aW9uMTFQb2ludEVudGl0eUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjlTZWxlY3Rpb24xMVBvaW50RW50aXR5RUVFAE4zUnBjNlBhcnNlcklOU3QzX18yNnZlY3RvcklOMlRDM1dlYjlTZWxlY3Rpb24xOVByb3hpbWl0eUZhY2VFbnRpdHlFTlMxXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE4zUnBjNVV0aWxzMTNTdG9yYWdlUGFyc2VySU5TdDNfXzI2dmVjdG9ySU4yVEMzV2ViOVNlbGVjdGlvbjE5UHJveGltaXR5RmFjZUVudGl0eUVOUzJfOWFsbG9jYXRvcklTN19FRUVFRUUATjNScGM2UGFyc2VySU4yVEMzV2ViOVNlbGVjdGlvbjE5UHJveGltaXR5RmFjZUVudGl0eUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjlTZWxlY3Rpb24xOVByb3hpbWl0eUZhY2VFbnRpdHlFRUUAZmFjZQBlbnRpdGllcwBpbnN0YW5jZUluYwBtZXNoTGV2ZWxJZABtZXNoTGV2ZWwAdHJpYW5nbGVJbmRleABlbGVtZW50SW5kZXgAZWxlbWVudEJpdHMAb3ZlcmxheUluZGV4AHJheVBvaW50AG5vcm1hbABwcm94aW1pdHlGYWNlAHJhZGlhbE1ldHJpYwB6TWV0cmljAGxpbmUAbGluZUluZGV4AHBvaW50AGxpbmVTZWdtZW50VmVydGljZXMAYmVzdExpbmVTZWdtZW50VmVydGV4SW5kZXgAcG9pbnRJbmRleABOMlRDM1dlYjdLZXlUeXBlM0luY0UATjJUQzNXZWI3S2V5VHlwZTJJZEUATjVFaWdlbjZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUUATjVFaWdlbjE1UGxhaW5PYmplY3RCYXNlSU5TXzZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRQBONUVpZ2VuMTBNYXRyaXhCYXNlSU5TXzZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRQBONUVpZ2VuOURlbnNlQmFzZUlOU182TWF0cml4SWRMaTNFTGkxRUxpMEVMaTNFTGkxRUVFRUUATjVFaWdlbjhpbnRlcm5hbDIyc3BlY2lhbF9zY2FsYXJfb3BfYmFzZUlOU182TWF0cml4SWRMaTNFTGkxRUxpMEVMaTNFTGkxRUVFZGROU18xNURlbnNlQ29lZmZzQmFzZUlTM19MaTNFRUVMYjBFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTNFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTFFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVMaTBFRUUATjVFaWdlbjlFaWdlbkJhc2VJTlNfNk1hdHJpeElkTGkzRUxpMUVMaTBFTGkzRUxpMUVFRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU4yVEMzV2ViMTJTdGF0ZUZhaWx1cmVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjJUQzNXZWIxMlN0YXRlRmFpbHVyZUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE4zUnBjNlBhcnNlcklOMlRDM1dlYjEyU3RhdGVGYWlsdXJlRUVFAE4zUnBjNVV0aWxzMjBTdGFuZGFyZExheW91dFBhcnNlcklOMlRDM1dlYjEyU3RhdGVGYWlsdXJlRUxpMUVFRQBOM1JwYzVVdGlsczEzU3RvcmFnZVBhcnNlcklOMlRDM1dlYjEyU3RhdGVGYWlsdXJlRUVFAHNjU3RhdGVGYWlsdXJlAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU41RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNHX0VFRnZTRl9FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVFRVMxX1JOU18xNEFic3RyYWN0UGFyc2VyRVBGdlJUX0VFVWxQdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOM1JwYzhJbnRlcm5hbDExVmFsdWVQYXJzZXI2Y3JlYXRlSWpFRVM0X1JOUzJfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFX05TXzlhbGxvY2F0b3JJU0RfRUVGdlNDX0VFRQBaTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUlqRUVTMV9STlNfMTRBYnN0cmFjdFBhcnNlckVQRnZSVF9FRVVsUHZFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjNScGM4SW50ZXJuYWwxMVZhbHVlUGFyc2VyNmNyZWF0ZUloRUVTNF9STlMyXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV9OU185YWxsb2NhdG9ySVNEX0VFRnZTQ19FRUUAWk4zUnBjOEludGVybmFsMTFWYWx1ZVBhcnNlcjZjcmVhdGVJaEVFUzFfUk5TXzE0QWJzdHJhY3RQYXJzZXJFUEZ2UlRfRUVVbFB2RV8AWk4xMl9HTE9CQUxfX05fMTdNYXJzaGFsMTVhdHRhY2hTY3NCdWZmZXJFampqamRiYk4xMGVtc2NyaXB0ZW4zdmFsRVMyX0U4Q2FsbGJhY2sATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzJfOWFsbG9jYXRvcklTNV9FRUVFMTBMb2FkUmVzdWx0RUUAMTBMb2FkUmVzdWx0AEhFQVBVOABVaW50OEFycmF5AFpOMTJfR0xPQkFMX19OXzExM3BhcnNlTWV0YURhdGFFTjEwZW1zY3JpcHRlbjN2YWxFampFMTBEYXRhUGFyc2VyAE4yVEM2U3RyZWFtNlJlYWRlcjE1S2V5ZWREYXRhUGFyc2VyRQBpAHZpAGZpaQB2aWlmAGRpaQB2aWlkAE41RWlnZW4xMEh5cGVycGxhbmVJZkxpM0VMaTBFRUUATjVFaWdlbjZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUUATjVFaWdlbjE1UGxhaW5PYmplY3RCYXNlSU5TXzZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUVFRQBONUVpZ2VuMTBNYXRyaXhCYXNlSU5TXzZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUVFRQBONUVpZ2VuOURlbnNlQmFzZUlOU182TWF0cml4SWRMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRUUATjVFaWdlbjhpbnRlcm5hbDIyc3BlY2lhbF9zY2FsYXJfb3BfYmFzZUlOU182TWF0cml4SWRMaTRFTGk0RUxpMEVMaTRFTGk0RUVFZGROU18xNURlbnNlQ29lZmZzQmFzZUlTM19MaTNFRUVMYjBFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTNFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTFFRUUATjVFaWdlbjE1RGVuc2VDb2VmZnNCYXNlSU5TXzZNYXRyaXhJZExpNEVMaTRFTGkwRUxpNEVMaTRFRUVMaTBFRUUATjVFaWdlbjlFaWdlbkJhc2VJTlNfNk1hdHJpeElkTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUVFAGlpaQB2aWlpAE4yVEMzV2ViN0JpbmRpbmcxNE1hdGVyaWFsQ29sb3JzRQBOMlRDM1dlYjdCaW5kaW5nMjBDdXR0aW5nU2VjdGlvbkxpbWl0c0UATjJUQzNXZWI0RHJhdzEwRnJhbWVTdGF0c0UATjJUQzNXZWI2Q2FtZXJhMTBQcm9qZWN0aW9uRQBOMlRDM1dlYjhEcmF3TW9kZUUATjJUQzNXZWIxNUhpZ2hsaWdodEZpbHRlckUATjJUQzNXZWIxM0hpZ2hsaWdodE1vZGVFAE4yVEMzV2ViMTZBbnRpQWxpYXNpbmdNb2RlRQBOMlRDM1dlYjExU21hYVF1YWxpdHlFAE4yVEMzV2ViMTZUcmFuc3BhcmVuY3lNb2RlRQBOMlRDM1dlYjExRWxlbWVudFR5cGVFAE4yVEMzV2ViMTJTdGF0ZUZhaWx1cmVFAE4yVEM2U3RyZWFtNlJlYWRlcjExSW1hZ2VGb3JtYXRFAE4yVEMzV2ViMTJUZXh0dXJlRmxhZ3M2VGlsaW5nRQBOMlRDM1dlYjEyVGV4dHVyZUZsYWdzMTNJbnRlcnBvbGF0aW9uRQBOMlRDM1dlYjEyVGV4dHVyZUZsYWdzMTBNaXBNYXBwaW5nRQBOMlRDM1dlYjEyVGV4dHVyZUZsYWdzMTZQYXJhbWV0ZXJpemF0aW9uRQBOMlRDM1dlYjEyVGV4dHVyZUZsYWdzOU1vZGlmaWVyc0UATjJUQzNXZWIxMU92ZXJsYXlVbml0RQBOMlRDM1dlYjEzT3ZlcmxheUFuY2hvckUATjJUQzNXZWIyMUxpbmVQYXR0ZXJuTGVuZ3RoVW5pdEUATjJUQzNXZWI5TGlnaHRUeXBlRQBOMlRDM1dlYjlYUmF5R3JvdXA0VHlwZUUATjJUQzNXZWIxNkJsdXJJbnRlcnZhbFVuaXRFAE4yVEMzV2ViMTBMaWdodFNwYWNlRQBOMTJfR0xPQkFMX19OXzExNFByaXZFaXRoZXJTaWRlRQBQTjEyX0dMT0JBTF9fTl8xMTRQcml2RWl0aGVyU2lkZUUAUEtOMTJfR0xPQkFMX19OXzExNFByaXZFaXRoZXJTaWRlRQBpaQB2AHZpaQB2aWlpaWlpZGRkAHZpaWlpaWlkZAB2aWlkZAB2aWlkZGQAdmlpaWQAdmlpaWRkAGlpaWkAdmlpaWlpZGlpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWlpaWlpaWlpaWlpaWlpZgB2aWlpaQBpaWlpaWlkaQBpaWlpaQBOMTJfR0xPQkFMX19OXzExNFByaXZDbGllbnRTaWRlRQBQTjEyX0dMT0JBTF9fTl8xMTRQcml2Q2xpZW50U2lkZUUAUEtOMTJfR0xPQkFMX19OXzExNFByaXZDbGllbnRTaWRlRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzdLZXlUeXBlMklkRU5TNF83QmluZGluZzE2Q3JlYXRlSW1hZ2VFcnJvckVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVPTlM0XzRMaXN0SWhFRVNHX05TM182U3RyZWFtNlJlYWRlcjExSW1hZ2VGb3JtYXRFampTSl9qakVYYWRMX1pOUzhfMTJJbWFnZV9jcmVhdGVFU0RfU0dfU0dfU0pfampTSl9qakVFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzdLZXlUeXBlMklkRU5TMF83QmluZGluZzE2Q3JlYXRlSW1hZ2VFcnJvckVFRQB2aWlpaWlpaWlpaWlpaQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TNF83QmluZGluZzEyRGVzdHJveUVycm9ySU5TNF83S2V5VHlwZTJJZEVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU9OUzRfNExpc3RJU0FfRUVFWGFkTF9aTlM3XzEzSW1hZ2VfZGVzdHJveUVTRl9TSV9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF80RG9uZUVOUzBfN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzBfN0tleVR5cGUySWRFRUVFRQB2aWlpaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzRfN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzRfN0tleVR5cGUySWRFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVPTlM0XzRMaXN0SVNBX0VFRVhhZExfWk5TN18xNk1hdGVyaWFsX2Rlc3Ryb3lFU0ZfU0lfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTlM0XzdCaW5kaW5nMTNNYXRlcmlhbFByb3BzRU5TMV85YWxsb2NhdG9ySVM4X0VFRUVOUzZfSU5TNF83S2V5VHlwZTJJZEVOUzlfSVNEX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNHX0VFRUVPTlM0XzRMaXN0SVNEX0VFRVhhZExfWk5TN18zMU1hdGVyaWFsX2dldEFnZ3JlZ2F0ZVByb3BlcnRpZXNFU0pfU01fRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklOUzBfN0JpbmRpbmcxM01hdGVyaWFsUHJvcHNFTlMyXzlhbGxvY2F0b3JJUzVfRUVFRU5TM19JTlMwXzdLZXlUeXBlMklkRU5TNl9JU0FfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklOUzRfOVJnYmFDb2xvckVOUzFfOWFsbG9jYXRvcklTN19FRUVFTlM2X0lOUzRfN0tleVR5cGUySWRFTlM4X0lTQ19FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRl9FRUVFT05TNF80TGlzdElTQ19FRUVYYWRMX1pOUzRfN0JpbmRpbmcyNE1hdGVyaWFsX2dldERpZmZ1c2VDb2xvckVTSV9TTF9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzI2dmVjdG9ySU5TMF85UmdiYUNvbG9yRU5TMl85YWxsb2NhdG9ySVM0X0VFRUVOUzNfSU5TMF83S2V5VHlwZTJJZEVOUzVfSVM5X0VFRUVFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TMV82dmVjdG9ySU5TNF83S2V5VHlwZTJJZEVOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TNF80TGlzdElTOV9FRVJLTlM0XzlSZ2JhQ29sb3JFRVhhZExfWk5TNF83QmluZGluZzI0TWF0ZXJpYWxfc2V0RGlmZnVzZUNvbG9yRVNHX1NKX1NNX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzREb25lRU5TdDNfXzI2dmVjdG9ySU5TMF83S2V5VHlwZTJJZEVOUzNfOWFsbG9jYXRvcklTNl9FRUVFRUUAdmlpaWlpaQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTlM0XzlSZ2JhQ29sb3JFTlMxXzlhbGxvY2F0b3JJUzdfRUVFRU5TNl9JTlM0XzdLZXlUeXBlMklkRU5TOF9JU0NfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0ZfRUVFRU9OUzRfNExpc3RJU0NfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjVNYXRlcmlhbF9nZXRFbWlzc2lvbkNvbG9yRVNJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUySWRFTlMxXzlhbGxvY2F0b3JJUzlfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0RfRUVFRU9OUzRfNExpc3RJUzlfRUVSS05TNF85UmdiYUNvbG9yRUVYYWRMX1pOUzRfN0JpbmRpbmcyNU1hdGVyaWFsX3NldEVtaXNzaW9uQ29sb3JFU0dfU0pfU01fRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TNF83QmluZGluZzEyRGVzdHJveUVycm9ySU5TNF83S2V5VHlwZTNJbmNFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVPTlM0XzRMaXN0SVNBX0VFRVhhZExfWk5TN18xNE1hdHJpeF9kZXN0cm95RVNGX1NJX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzREb25lRU5TMF83QmluZGluZzEyRGVzdHJveUVycm9ySU5TMF83S2V5VHlwZTNJbmNFRUVFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVOUzFfOWFsbG9jYXRvcklTOV9FRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TQV9JU0VfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0hfRUVFRU9OUzRfNExpc3RJU0VfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMThNYXRyaXhfZ2V0RWxlbWVudHNFU0tfU05fRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TMl85YWxsb2NhdG9ySVM2X0VFRUVOUzNfSU5TMF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUzSW5jRU5TMV85YWxsb2NhdG9ySVM5X0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVPTlM0XzRMaXN0SVM5X0VFUktONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUVYYWRMX1pOUzRfN0JpbmRpbmcxOE1hdHJpeF9zZXRFbGVtZW50c0VTR19TSl9TT19FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF80RG9uZUVOU3QzX18yNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TM185YWxsb2NhdG9ySVM2X0VFRUVFRQB2aWlpaWlpaWlpaWlpaWlpAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlM0XzdCaW5kaW5nMjBNZXNoRGF0YVJlcGxhY2VFcnJvckVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVSS05TNF83S2V5VHlwZTJJZEVqampqT05TNF80TGlzdElmRUVPTlNIX0lqRUVTTF9TTF9FWGFkTF9aTlM3XzE2TWVzaERhdGFfcmVwbGFjZUVTQ19TR19qampqU0pfU0xfU0xfU0xfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfNERvbmVFTlMwXzdCaW5kaW5nMjBNZXNoRGF0YVJlcGxhY2VFcnJvckVFRQB2aWlpaWlpaWlpaWlpaWlpaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzRfN0JpbmRpbmcxMkRlc3Ryb3lFcnJvcklOUzRfN0tleVR5cGUySWRFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVPTlM0XzRMaXN0SVNBX0VFRVhhZExfWk5TN18xNk1lc2hEYXRhX2Rlc3Ryb3lFU0ZfU0lfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzFfOWFsbG9jYXRvcklTOV9FRUVFTlM0XzdLZXlUeXBlMklkRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0ZfRUVFRVJLU0VfakVYYWRMX1pOUzRfN0JpbmRpbmcyOE1lc2hEYXRhX2xpbmVFbGVtZW50U2VnbWVudHNFU0lfU0tfakVFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzJfOWFsbG9jYXRvcklTNl9FRUVFTlMwXzdLZXlUeXBlMklkRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklqTlMxXzlhbGxvY2F0b3JJakVFRUVOUzRfN0tleVR5cGUySWRFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFT05TNF80TGlzdElqRUVSS1NCX0VYYWRMX1pOUzRfN0JpbmRpbmcyOU1lc2hEYXRhX2xpbmVzVG9JbmNpZGVudEZhY2VzRVNGX1NJX1NLX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJak5TMl85YWxsb2NhdG9ySWpFRUVFTlMwXzdLZXlUeXBlMklkRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfN0JpbmRpbmcxMk1lc2hEYXRhQ29weUVOUzZfMjBNZXNoRGF0YUdldERhdGFFcnJvckVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVSS05TNF83S2V5VHlwZTJJZEVFWGFkTF9aTlM2XzE2TWVzaERhdGFfZ2V0RGF0YUVTQ19TR19FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF83QmluZGluZzEyTWVzaERhdGFDb3B5RU5TMl8yME1lc2hEYXRhR2V0RGF0YUVycm9yRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfN0tleVR5cGUzSW5jRU5TNF83QmluZGluZzIzQ3JlYXRlTWVzaEluc3RhbmNlRXJyb3JFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFUktOUzZfMklkRVJLUzdfU0dfU0dfU0dfdGpFWGFkTF9aTlM4XzIxTWVzaEluc3RhbmNlX2NyZWF0ZV8wRVNEX1NHX1NJX1NHX1NHX1NHX3RqRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfN0tleVR5cGUzSW5jRU5TMF83QmluZGluZzIzQ3JlYXRlTWVzaEluc3RhbmNlRXJyb3JFRUUAdmlpaWlpaWlpaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF83S2V5VHlwZTNJbmNFTlM0XzdCaW5kaW5nMjNDcmVhdGVNZXNoSW5zdGFuY2VFcnJvckVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVSS05TNl8ySWRFUktTN19TR19TR19TR190RVhhZExfWk5TOF8yMU1lc2hJbnN0YW5jZV9jcmVhdGVfMUVTRF9TR19TSV9TR19TR19TR190RUVFOENhbGxiYWNrRQB2aWlpaWlpaWlpAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfN0tleVR5cGUzSW5jRU5TNF83QmluZGluZzIzQ3JlYXRlTWVzaEluc3RhbmNlRXJyb3JFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFUktOUzZfMklkRVJLUzdfU0dfU0dfU0dfRVhhZExfWk5TOF8yMU1lc2hJbnN0YW5jZV9jcmVhdGVfMkVTRF9TR19TSV9TR19TR19TR19FRUU4Q2FsbGJhY2tFAHZpaWlpaWlpaQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TNF83QmluZGluZzEyRGVzdHJveUVycm9ySU5TNF83S2V5VHlwZTNJbmNFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0FfRUVFWGFkTF9aTlM3XzIwTWVzaEluc3RhbmNlX2Rlc3Ryb3lFU0ZfU0dfU0pfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlMklkRU5TMV85YWxsb2NhdG9ySVM4X0VFRUVOUzZfSU5TN18zSW5jRU5TOV9JU0NfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0ZfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTQ19FRUVYYWRMX1pOUzRfN0JpbmRpbmcyNE1lc2hJbnN0YW5jZV9nZXRNZXNoRGF0YUVTSV9TSl9TTV9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzI2dmVjdG9ySU5TMF83S2V5VHlwZTJJZEVOUzJfOWFsbG9jYXRvcklTNV9FRUVFTlMzX0lOUzRfM0luY0VOUzZfSVM5X0VFRUVFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJYk5TMV85YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTQl9FRUVYYWRMX1pOUzRfN0JpbmRpbmcyOE1lc2hJbnN0YW5jZV9nZXRGYWNlc1Zpc2libGVFU0hfU0lfU0xfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvckliTlMyXzlhbGxvY2F0b3JJYkVFRUVOUzNfSU5TMF83S2V5VHlwZTNJbmNFTlM0X0lTOF9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjhNZXNoSW5zdGFuY2VfZ2V0TGluZXNWaXNpYmxlRVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjlNZXNoSW5zdGFuY2VfZ2V0UG9pbnRzVmlzaWJsZUVTSF9TSV9TTF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUzSW5jRU5TMV85YWxsb2NhdG9ySVM4X0VFRUVTQl9FRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJUzhfRUVqRVhhZExfWk5TNF83QmluZGluZzIyTWVzaEluc3RhbmNlX2dldE1hdHJpeEVTRl9TR19TSl9qRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TMl85YWxsb2NhdG9ySVM1X0VFRUVTOF9FRQB2aWlpaWlpaQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TNF83QmluZGluZzE0U2V0TWF0cml4RXJyb3JFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTOV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SU5TNF83S2V5VHlwZTNJbmNFRUVqUktTR19FWGFkTF9aTlM3XzIyTWVzaEluc3RhbmNlX3NldE1hdHJpeEVTQ19TRF9TSV9qU0tfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfNERvbmVFTlMwXzdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TMV82dmVjdG9ySU5TNF83S2V5VHlwZTNJbmNFTlMxXzlhbGxvY2F0b3JJUzlfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0RfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTOV9FRWpFWGFkTF9aTlM0XzdCaW5kaW5nMjRNZXNoSW5zdGFuY2VfdW5zZXRNYXRyaXhFU0dfU0hfU0tfakVFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjZNZXNoSW5zdGFuY2VfZ2V0QWx3YXlzRHJhd0VTSF9TSV9TTF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvckliTlMxXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNCX0VFRVhhZExfWk5TNF83QmluZGluZzI0TWVzaEluc3RhbmNlX2dldERvTm90Q3V0RVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMzVNZXNoSW5zdGFuY2VfZ2V0U3VwcHJlc3NDYW1lcmFTY2FsZUVTSF9TSV9TTF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvckliTlMxXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNCX0VFRVhhZExfWk5TNF83QmluZGluZzMwTWVzaEluc3RhbmNlX2dldFNjcmVlbk9yaWVudGVkRVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjhNZXNoSW5zdGFuY2VfZ2V0RG9Ob3RFeHBsb2RlRVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjdNZXNoSW5zdGFuY2VfZ2V0RG9Ob3RTZWxlY3RFU0hfU0lfU0xfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJYk5TMV85YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTQl9FRUVYYWRMX1pOUzRfN0JpbmRpbmcyNk1lc2hJbnN0YW5jZV9nZXREb05vdExpZ2h0RVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMzdNZXNoSW5zdGFuY2VfZ2V0RG9Ob3RPdXRsaW5lSGlnaGxpZ2h0RVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMzZNZXNoSW5zdGFuY2VfZ2V0RG9Ob3RVc2VWZXJ0ZXhDb2xvcnNFU0hfU0lfU0xfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJYk5TMV85YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTQl9FRUVYYWRMX1pOUzRfN0JpbmRpbmczMU1lc2hJbnN0YW5jZV9nZXRFeGNsdWRlQm91bmRpbmdFU0hfU0lfU0xfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJYk5TMV85YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTQl9FRUVYYWRMX1pOUzRfN0JpbmRpbmczOU1lc2hJbnN0YW5jZV9nZXRPdmVycmlkZVNjZW5lVmlzaWJpbGl0eUVTSF9TSV9TTF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvckliTlMxXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNCX0VFRVhhZExfWk5TNF83QmluZGluZzI3TWVzaEluc3RhbmNlX2dldEhpZ2hsaWdodGVkRVNIX1NJX1NMX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjZNZXNoSW5zdGFuY2VfaGFzRGVwdGhSYW5nZUVTSF9TSV9TTF9FRUU4Q2FsbGJhY2tFAHZpaWlmZmkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySU5TNF80Qm94M0lmRUVOUzFfOWFsbG9jYXRvcklTOF9FRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TOV9JU0RfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0dfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTRF9FRUVYYWRMX1pOUzRfN0JpbmRpbmczNU1lc2hJbnN0YW5jZV9nZXRPYmplY3RTcGFjZUJvdW5kaW5nRVNKX1NLX1NOX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJTlMwXzRCb3gzSWZFRU5TMl85YWxsb2NhdG9ySVM1X0VFRUVOUzNfSU5TMF83S2V5VHlwZTNJbmNFTlM2X0lTQV9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80Qm94M0lmRUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUzSW5jRU5TMV85YWxsb2NhdG9ySVNBX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVPTlM0XzRMaXN0SVNBX0VFYmJFWGFkTF9aTlM0XzdCaW5kaW5nMzRNZXNoSW5zdGFuY2VfZ2V0V29ybGRTcGFjZUJvdW5kaW5nRVNIX1NLX2JiRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfNEJveDNJZkVFTlN0M19fMjZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzRfOWFsbG9jYXRvcklTN19FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80Qm94M0lmRUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUzSW5jRU5TMV85YWxsb2NhdG9ySVNBX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVPTlM0XzRMaXN0SVNBX0VFRVhhZExfWk5TNF83QmluZGluZzM5TWVzaEluc3RhbmNlX2dldERyYXduV29ybGRTcGFjZUJvdW5kaW5nRVNIX1NLX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80Qm94M0lmRUVOUzRfN0tleVR5cGUzSW5jRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRU9OUzRfNExpc3RJakVFUktTOV9FWGFkTF9aTlM0XzdCaW5kaW5nMzVNZXNoSW5zdGFuY2VfZ2V0RmFjZUVsZW1lbnRCb3VuZGluZ0VTRF9TR19TSV9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF80Qm94M0lmRUVOUzBfN0tleVR5cGUzSW5jRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNEJveDNJZkVFTlM0XzdLZXlUeXBlM0luY0VFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVPTlM0XzRMaXN0SWpFRVJLUzlfRVhhZExfWk5TNF83QmluZGluZzM1TWVzaEluc3RhbmNlX2dldExpbmVFbGVtZW50Qm91bmRpbmdFU0RfU0dfU0lfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzRCb3gzSWZFRU5TNF83S2V5VHlwZTNJbmNFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFT05TNF80TGlzdElqRUVSS1M5X0VYYWRMX1pOUzRfN0JpbmRpbmczNk1lc2hJbnN0YW5jZV9nZXRQb2ludEVsZW1lbnRCb3VuZGluZ0VTRF9TR19TSV9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklqTlMxXzlhbGxvY2F0b3JJakVFRUVOUzRfN0tleVR5cGUzSW5jRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU9OUzRfNExpc3RJakVFUktTQl9FWGFkTF9aTlM0XzdCaW5kaW5nMzNNZXNoSW5zdGFuY2VfbGluZXNUb0luY2lkZW50RmFjZXNFU0ZfU0lfU0tfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklqTlMyXzlhbGxvY2F0b3JJakVFRUVOUzBfN0tleVR5cGUzSW5jRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfMTJEaXN0YW5jZUluZm9FTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFUktTOV9TSV9FWGFkTF9aTlM0XzdCaW5kaW5nNDNNZXNoSW5zdGFuY2VfY29tcHV0ZU1pbmltYWxCb2R5Qm9keURpc3RhbmNlRVNHX1NJX1NJX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzEyRGlzdGFuY2VJbmZvRU5TdDNfXzI2dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMzXzlhbGxvY2F0b3JJUzZfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfMTJEaXN0YW5jZUluZm9FTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFUktTOV9qU0lfakVYYWRMX1pOUzRfN0JpbmRpbmc0M01lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEZhY2VGYWNlRGlzdGFuY2VFU0dfU0lfalNJX2pFRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfMTJEaXN0YW5jZUluZm9FTlM0XzdLZXlUeXBlM0luY0VFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVSS1M4X2pSS05TNF83QmluZGluZzNSYXlFRVhhZExfWk5TRl80Mk1lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEZhY2VSYXlEaXN0YW5jZUVTQ19TRV9qU0lfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfMTJEaXN0YW5jZUluZm9FTlMwXzdLZXlUeXBlM0luY0VFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzEyRGlzdGFuY2VJbmZvRU5TNF83S2V5VHlwZTNJbmNFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTOV9FRUVFUktTOF9qUktOUzRfN0JpbmRpbmczUmF5RUVYYWRMX1pOU0ZfNDNNZXNoSW5zdGFuY2VfY29tcHV0ZU1pbmltYWxGYWNlTGluZURpc3RhbmNlRVNDX1NFX2pTSV9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVM5X0VFRVhhZExfWk5TNF83QmluZGluZzM1TWVzaEluc3RhbmNlX2Rpc2NhcmRBbm9ueW1vdXNNYXRyaXhFU0dfU0hfU0tfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOF9FRUVFU0JfRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVM4X0VFRVhhZExfWk5TNF83QmluZGluZzMzTWVzaEluc3RhbmNlX3JlaWZ5QW5vbnltb3VzTWF0cml4RVNGX1NHX1NKX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUzSW5jRU5TMV85YWxsb2NhdG9ySVM5X0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJUzlfRUVSS041RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRVhhZExfWk5TNF83QmluZGluZzMxTWVzaEluc3RhbmNlX3NldEFub255bW91c01hdHJpeEVTR19TSF9TS19TUF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVM5X0VFUktONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUVYYWRMX1pOUzRfN0JpbmRpbmczME1lc2hJbnN0YW5jZV9tYXRyaXhQcmVNdWx0aXBseUVTR19TSF9TS19TUF9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlM0XzdCaW5kaW5nMTVTZXRUZXh0dXJlRXJyb3JFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTOV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SU5TNF83S2V5VHlwZTNJbmNFRUVOUzRfMTFFbGVtZW50VHlwZUVSS05TRl8ySWRFUktONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TNF8xMlRleHR1cmVGbGFnczZUaWxpbmdFTlNTXzEzSW50ZXJwb2xhdGlvbkVOU1NfMTBNaXBNYXBwaW5nRU5TU18xNlBhcmFtZXRlcml6YXRpb25FTlNTXzlNb2RpZmllcnNFRVhhZExfWk5TN18yM01lc2hJbnN0YW5jZV9zZXRUZXh0dXJlRVNDX1NEX1NJX1NKX1NNX1NSX1NUX1NVX1NWX1NXX1NYX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzREb25lRU5TMF83QmluZGluZzE1U2V0VGV4dHVyZUVycm9yRUVFAHZpaWlpaWlpaWlpaWlpaQB2aWlpaWZpAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklmTlMxXzlhbGxvY2F0b3JJZkVFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNCX0VFTlM0XzExRWxlbWVudFR5cGVFRVhhZExfWk5TNF83QmluZGluZzMyTWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZU9wYWNpdHlFU0hfU0lfU0xfU01fRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklmTlMyXzlhbGxvY2F0b3JJZkVFRUVOUzNfSU5TMF83S2V5VHlwZTNJbmNFTlM0X0lTOF9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWJOUzFfOWFsbG9jYXRvckliRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0JfRUVOUzRfMTFFbGVtZW50VHlwZUVFWGFkTF9aTlM0XzdCaW5kaW5nMjhNZXNoSW5zdGFuY2VfaGFzVHJhbnNwYXJlbmN5RVNIX1NJX1NMX1NNX0VFRThDYWxsYmFja0UAdmlpaWlpZmkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySU5TNF83QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzFfOWFsbG9jYXRvcklTOF9FRUVFTlM2X0lOUzRfN0tleVR5cGUzSW5jRU5TOV9JU0RfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0dfRUVFRU5TNF8xMFNvdXJjZVR5cGVFT05TNF80TGlzdElTRF9FRUVYYWRMX1pOUzdfMjlNZXNoSW5zdGFuY2VfZ2V0Q3VsbGluZ1ZlY3RvckVTSl9TS19TTl9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzI2dmVjdG9ySU5TMF83QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzJfOWFsbG9jYXRvcklTNV9FRUVFTlMzX0lOUzBfN0tleVR5cGUzSW5jRU5TNl9JU0FfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklOUzRfOFJnYkNvbG9yRU5TMV85YWxsb2NhdG9ySVM3X0VFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM4X0lTQ19FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRl9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNDX0VFTlM0XzExRWxlbWVudFR5cGVFRVhhZExfWk5TNF83QmluZGluZzIxTWVzaEluc3RhbmNlX2dldENvbG9yRVNJX1NKX1NNX1NOX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJTlMwXzhSZ2JDb2xvckVOUzJfOWFsbG9jYXRvcklTNF9FRUVFTlMzX0lOUzBfN0tleVR5cGUzSW5jRU5TNV9JUzlfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklOUzRfOFJnYkNvbG9yRU5TMV85YWxsb2NhdG9ySVM3X0VFRUVOUzZfSU5TNF83S2V5VHlwZTNJbmNFTlM4X0lTQ19FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRl9FRUVFTlM0XzEwU291cmNlVHlwZUVPTlM0XzRMaXN0SVNDX0VFTlM0XzExRWxlbWVudFR5cGVFRVhhZExfWk5TNF83QmluZGluZzMwTWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZUNvbG9yRVNJX1NKX1NNX1NOX0VFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySU5TNF84UmdiQ29sb3JFTlMxXzlhbGxvY2F0b3JJUzdfRUVFRU5TNl9JTlM0XzdLZXlUeXBlM0luY0VOUzhfSVNDX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNGX0VFRUVOUzRfMTBTb3VyY2VUeXBlRU9OUzRfNExpc3RJU0NfRUVOUzRfMTFFbGVtZW50VHlwZUVqRVhhZExfWk5TNF83QmluZGluZzM3TWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZUVsZW1lbnRDb2xvckVTSV9TSl9TTV9TTl9qRUVFOENhbGxiYWNrRQB2aWlpaWlmaWkAdmlpaWRpZGlkaWRpAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFUzZfRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFaEVYYWRMX1pOUzRfN0JpbmRpbmcxOERlYnVnX3N0YXRlRmFpbHVyZUVTQV9oRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOUzBfNERvbmVFUzJfRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWpOUzFfOWFsbG9jYXRvcklqRUVFRVM5X0VFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRU9OUzRfNExpc3RJakVFRVhhZExfWk5TNF83QmluZGluZzM4RW52aXJvbm1lbnRfbW9kZWxLZXlzRnJvbUluY2x1c2lvbktleXNFU0RfU0dfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklOU3QzX18yNnZlY3RvcklqTlMyXzlhbGxvY2F0b3JJakVFRUVTNl9FRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRVM2X0VFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRU9OUzRfNExpc3RJaEVFT05TQl9JZEVFamRiRVhhZExfWk5TNF83QmluZGluZzI0RW52aXJvbm1lbnRfYXR0YWNoTW9kZWxzRVNBX1NEX1NGX2pkYkVFRThDYWxsYmFja0UAdmlpaWlpaWRpaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVTNl9FRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM3X0VFRUVPTlM0XzRMaXN0SWpFRUVYYWRMX1pOUzRfN0JpbmRpbmcyOEVudmlyb25tZW50X2RldGFjaEluY2x1c2lvbnNFU0FfU0RfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRVM2X0VFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRU9OUzRfNExpc3RJakVFU0RfRVhhZExfWk5TNF83QmluZGluZzI0RW52aXJvbm1lbnRfcmVzZXRUb0VtcHR5RVNBX1NEX1NEX0VFRThDYWxsYmFja0UAcmVqZWN0aW9uQml0c0FsbAByZWplY3Rpb25CaXRzQW55AHJlcXVpcmVkQml0c0FsbAByZXF1aXJlZEJpdHNBbnkAZW5hYmxlT2NjbHVzaW9uQ2hlY2tzAGVuYWJsZVByb3hpbWl0eUZhY2VzAGlnbm9yZU92ZXJsYXlzAHJlc3BlY3REZXB0aFJhbmdlAHJlc3RyaWN0TGluZXNBbmRQb2ludHNUb1NlbGVjdGVkRmFjZUluc3RhbmNlcwByZXN0cmljdFRvT3ZlcmxheXMAY3VsbFN1Ym9wdGltYWxFbnRpdGllcwBpZ25vcmVDYXBwaW5nR2VvbWV0cnkAb25lRW50aXR5UGVyVHlwZVBlckluc3RhbmNlAHJlc3BlY3RWaXNpYmlsaXR5AHJldHVybkVsZW1lbnRCb3VuZGluZwBtYXhXb3JsZERpc3RhbmNlAGJpbU1hc2sAZm9yY2VFZmZlY3RpdmVWaXNpYmlsaXR5TWFzawBmb3JjZUVmZmVjdGl2ZVNjZW5lVmlzaWJpbGl0eU1hc2sAcHJvdG90eXBlAGhhc093blByb3BlcnR5AGNhbGwAYWxsb3dGYWNlcwBhbGxvd0xpbmVzAGFsbG93UG9pbnRzAGlnbm9yZUN1dHRpbmdTZWN0aW9ucwBpZ25vcmVVbnJlcXVlc3RlZEluc3RhbmNlcwBtdXN0QmVGdWxseUNvbnRhaW5lZABvbmx5U3RyZWFtZWRJbnN0YW5jZXMATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySWpOUzRfNERvbmVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFUktOUzRfOVNlbGVjdGlvbjIxVm9sdW1lU2VsZWN0aW9uQ29uZmlnRWpqampqakVYYWRMX1pOUzRfN0JpbmRpbmczNkVudmlyb25tZW50X2JlZ2luU2NyZWVuQXJlYVNlbGVjdGlvbkVTQV9TRV9qampqampFRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySWpOUzBfNERvbmVFRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySWpOUzRfNERvbmVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFUktOUzRfOVNlbGVjdGlvbjIxVm9sdW1lU2VsZWN0aW9uQ29uZmlnRU9OUzRfNExpc3RJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVFRVJLTlNIX0lmTGkzRUxpMUVMaTBFTGkzRUxpMUVFRUVYYWRMX1pOUzRfN0JpbmRpbmc0MkVudmlyb25tZW50X2JlZ2luQ29udmV4UG9seWhlZHJvblNlbGVjdGlvbkVTQV9TRV9TS19TTl9FRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklqTlM0XzREb25lRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRVJLTlM0XzlTZWxlY3Rpb24yMVZvbHVtZVNlbGVjdGlvbkNvbmZpZ0VqampqakVYYWRMX1pOUzRfN0JpbmRpbmczNEVudmlyb25tZW50X2JlZ2luUmF5RHJpbGxTZWxlY3Rpb25FU0FfU0VfampqampFRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklqTlM0XzREb25lRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRVJLTlM0XzlTZWxlY3Rpb24yMVZvbHVtZVNlbGVjdGlvbkNvbmZpZ0VSS041RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFZkVYYWRMX1pOUzRfN0JpbmRpbmczMkVudmlyb25tZW50X2JlZ2luU3BoZXJlU2VsZWN0aW9uRVNBX1NFX1NKX2ZFRUU4Q2FsbGJhY2tFAHZpaWZpaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySU5TNF83S2V5VHlwZTNJbmNFTlMxXzlhbGxvY2F0b3JJUzhfRUVFRU5TNF80RG9uZUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVqakVYYWRMX1pOUzRfN0JpbmRpbmczNEVudmlyb25tZW50X2FkdmFuY2VWb2x1bWVTZWxlY3Rpb25FU0dfampFRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzI2dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzVfRUVFRU5TMF80RG9uZUVFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJak5TNF83QmluZGluZzE5Q3V0dGluZ1NlY3Rpb25FcnJvckVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM4X0VFRUVPTlM0XzRMaXN0SU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFRUVFWGFkTF9aTlM2XzI5RW52aXJvbm1lbnRfYWRkQ3V0dGluZ1NlY3Rpb25FU0JfU0hfRUVFOENhbGxiYWNrRQBOMlRDM1dlYjhOb3RpZmllcklqTlMwXzdCaW5kaW5nMTlDdXR0aW5nU2VjdGlvbkVycm9yRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFakVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRU9OUzRfNExpc3RJTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVFRWpFWGFkTF9aTlM0XzdCaW5kaW5nMzNFbnZpcm9ubWVudF9yZXBsYWNlQ3V0dGluZ1NlY3Rpb25FU0FfU0dfakVFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzREb25lRWpFRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TMV82dmVjdG9ySWpOUzFfOWFsbG9jYXRvcklqRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0JfRUVFRU9OUzRfNExpc3RJakVFRVhhZExfWk5TNF83QmluZGluZzMzRW52aXJvbm1lbnRfcmVtb3ZlQ3V0dGluZ1NlY3Rpb25zRVNFX1NIX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzREb25lRU5TdDNfXzI2dmVjdG9ySWpOUzNfOWFsbG9jYXRvcklqRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklOUzZfSU41RWlnZW42TWF0cml4SWZMaTRFTGkxRUxpMEVMaTRFTGkxRUVFTlMxXzlhbGxvY2F0b3JJUzlfRUVFRU5TQV9JU0NfRUVFRU5TNl9Jak5TQV9JakVFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNIX0VFRUVPTlM0XzRMaXN0SWpFRUVYYWRMX1pOUzRfN0JpbmRpbmczMEVudmlyb25tZW50X2dldEN1dHRpbmdTZWN0aW9uc0VTS19TTl9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzI2dmVjdG9ySU5TM19JTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTFFTGkwRUxpNEVMaTFFRUVOUzJfOWFsbG9jYXRvcklTNl9FRUVFTlM3X0lTOV9FRUVFTlMzX0lqTlM3X0lqRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlMklkRU5TMV85YWxsb2NhdG9ySVM5X0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVSS1M5X1NJX2ZFWGFkTF9aTlM0XzdCaW5kaW5nMjVFbnZpcm9ubWVudF9lbmFibGVDYXBwaW5nRVNHX1NJX1NJX2ZFRUU4Q2FsbGJhY2tFAHZpaWlmaWkATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySU5TNF83QmluZGluZzRCbG9iRU5TMV85YWxsb2NhdG9ySVM4X0VFRUVOUzZfSU5TNF83S2V5VHlwZTJJZEVOUzlfSVNEX0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNHX0VFRUVPTlM0XzRMaXN0SVNEX0VFRVhhZExfWk5TN18yM0Vudmlyb25tZW50X2dldE1ldGFEYXRhRVNKX1NNX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJTlMwXzdCaW5kaW5nNEJsb2JFTlMyXzlhbGxvY2F0b3JJUzVfRUVFRU5TM19JTlMwXzdLZXlUeXBlMklkRU5TNl9JU0FfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlMklkRU5TMV85YWxsb2NhdG9ySVM5X0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVPTlM0XzRMaXN0SVM5X0VFRVhhZExfWk5TNF83QmluZGluZzI4RW52aXJvbm1lbnRfdHJ1bmNhdGVNZXRhRGF0YUVTR19TSl9FRUU4Q2FsbGJhY2tFAHZpZGQAdmlmAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFUzZfRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFRVhhZExfWk5TNF83QmluZGluZzMyRW52aXJvbm1lbnRfd2FpdEZvckltYWdlRGVjb2RpbmdFU0FfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TNF83S2V5VHlwZTJJZEVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVOUzRfOVhSYXlHcm91cDRUeXBlRU5TNF8xMUVsZW1lbnRUeXBlRVM4X0VYYWRMX1pOUzRfN0JpbmRpbmcyN0Vudmlyb25tZW50X3NldFhSYXlNYXRlcmlhbEVTQ19TRV9TRl9TOF9FRUU4Q2FsbGJhY2tFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF80RG9uZUVOUzBfN0tleVR5cGUySWRFRUUAdmlkaQB2aWlmaQB2aWZpAHZpZmZpAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TNF80TGlzdElTOV9FRWJiRVhhZExfWk5TNF83QmluZGluZzMyRW52aXJvbm1lbnRfcmVxdWVzdE1lc2hJbnN0YW5jZXNFU0dfU0pfYmJFRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlM0luY0VOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TNF80TGlzdElTOV9FRWJiRVhhZExfWk5TNF83QmluZGluZzM5RW52aXJvbm1lbnRfcmVxdWVzdE1lc2hJbnN0YW5jZXNCeUdyb3VwRVNHX1NKX2JiRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRVM2X0VFTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRUVYYWRMX1pOUzRfN0JpbmRpbmczMUVudmlyb25tZW50X3NldFN0cmVhbUlkbGVNYXJrZXJFU0FfRUVFOENhbGxiYWNrRQBOMTJfR0xPQkFMX19OXzExNENsaWVudFNpZGVGdW5jSVBGdk5TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlM0XzREb25lRU5TMV82dmVjdG9ySU5TNF83S2V5VHlwZTJJZEVOUzFfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TNF80TGlzdElTOV9FRWJFWGFkTF9aTlM0XzdCaW5kaW5nMjVFbnZpcm9ubWVudF9yZXF1ZXN0R3JvdXBzRVNHX1NKX2JFRUU4Q2FsbGJhY2tFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzRfNERvbmVFTlMxXzZ2ZWN0b3JJTlM0XzdLZXlUeXBlMklkRU5TMV85YWxsb2NhdG9ySVM5X0VFRUVFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVPTlM0XzRMaXN0SVM5X0VFYkVYYWRMX1pOUzRfN0JpbmRpbmcyNUVudmlyb25tZW50X3JlcXVlc3RJbWFnZXNFU0dfU0pfYkVFRThDYWxsYmFja0UATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TNF80RG9uZUVOUzFfNnZlY3RvcklOUzRfN0tleVR5cGUySWRFTlMxXzlhbGxvY2F0b3JJUzlfRUVFRUVFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0RfRUVFRU9OUzRfNExpc3RJUzlfRUVFWGFkTF9aTlM0XzdCaW5kaW5nMjhFbnZpcm9ubWVudF9yZXF1ZXN0TWF0ZXJpYWxzRVNHX1NKX0VFRThDYWxsYmFja0UAc3ZnWG1sUHJvbG9nRW5hYmxlZABzdmdCYWNrZ3JvdW5kQ3NzQ29sb3IAc2lsaG91ZXR0ZXNFbmFibGVkAGxpbmVzRHJhd01vZGVsTGluZXNFbmFibGVkAGxpbmVzU3Ryb2tlV2lkdGgAbGluZXNDc3NDb2xvcgBsaW5lc0NsaXBQcm94aW1pdHlUb1BsYW5lAGxpbmVzQ2xpcFpOdWRnZUZhY3RvcgBwb2x5Z29uc0ZvcmNlRHJhd0Nzc0NvbG9yAGxvZ1Byb2dyZXNzAGxvZ0RpYWdub3N0aWNzACMwMDAwMDAATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWhOUzFfOWFsbG9jYXRvckloRUVFRVM5X0VFTlMxXzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRVJLTlM0XzNTdmc5U3ZnQ29uZmlnRUVYYWRMX1pOUzRfN0JpbmRpbmcyM0Vudmlyb25tZW50X2V4cG9ydFRvU3ZnRVNEX1NIX0VFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJaE5TMl85YWxsb2NhdG9ySWhFRUVFUzZfRUUATjEyX0dMT0JBTF9fTl8xMTRDbGllbnRTaWRlRnVuY0lQRnZOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMV82dmVjdG9ySWpOUzFfOWFsbG9jYXRvcklqRUVFRWpFRU5TMV8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVqYmJFWGFkTF9aTlM0XzdCaW5kaW5nMzFFbnZpcm9ubWVudF9tZXNoSW5zdGFuY2VLZXlJbmZvRVNEX2piYkVFRThDYWxsYmFja0UATjJUQzNXZWI4Tm90aWZpZXJJTlN0M19fMjZ2ZWN0b3JJak5TMl85YWxsb2NhdG9ySWpFRUVFakVFAE4xMl9HTE9CQUxfX05fMTE0Q2xpZW50U2lkZUZ1bmNJUEZ2TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzFfNnZlY3RvcklqTlMxXzlhbGxvY2F0b3JJakVFRUVqRUVOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFamJiRVhhZExfWk5TNF83QmluZGluZzI3RW52aXJvbm1lbnRfbWV0YURhdGFLZXlJbmZvRVNEX2piYkVFRThDYWxsYmFja0UAdmlkAE4xMl9HTE9CQUxfX05fMTE0UHJpdlNlcnZlclNpZGVFAFBOMTJfR0xPQkFMX19OXzExNFByaXZTZXJ2ZXJTaWRlRQBQS04xMl9HTE9CQUxfX05fMTE0UHJpdlNlcnZlclNpZGVFAHsgaWYgKE1vZHVsZVsiJCRmYWNhZGUiXSkgeyBIRUFQRjY0WyQwID4+IDNdID0gTW9kdWxlWyIkJGZhY2FkZSJdWyJjb250YWluZXIiXS5jbGllbnRXaWR0aDsgSEVBUEY2NFskMSA+PiAzXSA9IE1vZHVsZVsiJCRmYWNhZGUiXVsiY29udGFpbmVyIl0uY2xpZW50SGVpZ2h0OyB9IH0AWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzIwAFoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8yMQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMjFOU185YWxsb2NhdG9ySVMyX0VFRnZQS2hqRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2UEtoakVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMTkATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzE5TlNfOWFsbG9jYXRvcklTMl9FRUZ2akVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdmpFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzE4AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xOE5TXzlhbGxvY2F0b3JJUzJfRUVGdmpqRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2ampFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzE3AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xN05TXzlhbGxvY2F0b3JJUzJfRUVGdmpqampFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRnZqampqRUVFAFoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xNgBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMTZOU185YWxsb2NhdG9ySVMyX0VFRnZqampFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRnZqampFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzE1AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xNU5TXzlhbGxvY2F0b3JJUzJfRUVGdmpSS05TXzEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TM19JY0VFRUVFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRnZqUktOU18xMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFRUVFAFoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xNABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMTROU185YWxsb2NhdG9ySVMyX0VFRnZqampFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzEzAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xM05TXzlhbGxvY2F0b3JJUzJfRUVGdmJqRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2YmpFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTQkXzEyAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xMk5TXzlhbGxvY2F0b3JJUzJfRUVGdmpqRUVFAFoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xMQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMTFOU185YWxsb2NhdG9ySVMyX0VFRnZqRUVFAFoxN2luaXRpYWxpemVMaWJyYXJ5dkU0JF8xMABzdHJlYW1faWRsZQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFNCRfMTBOU185YWxsb2NhdG9ySVMyX0VFRnZ2RUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2dkVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfOQBzdHJlYW1fYWN0aXZlAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVoxN2luaXRpYWxpemVMaWJyYXJ5dkUzJF85TlNfOWFsbG9jYXRvcklTMl9FRUZ2dkVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfOABvcGVuX21vZGVsX2ZhaWxlZABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfOE5TXzlhbGxvY2F0b3JJUzJfRUVGdlJLTlNfMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlMzX0ljRUVFRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJLTlNfMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRUVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfNwBjbGllbnRfbWVzc2FnZQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfN05TXzlhbGxvY2F0b3JJUzJfRUVGdlJLTlNfMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlMzX0ljRUVFRUVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfNgBiYWRfZGF0YQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfNk5TXzlhbGxvY2F0b3JJUzJfRUVGdlJLTlNfMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlMzX0ljRUVFRUVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfNQBib3VuZGluZwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfNU5TXzlhbGxvY2F0b3JJUzJfRUVGdnZFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTMkXzQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTMkXzROU185YWxsb2NhdG9ySVMyX0VFRnZ2RUVFAFoxN2luaXRpYWxpemVMaWJyYXJ5dkUzJF8zAGRyYXdfaWRsZQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfM05TXzlhbGxvY2F0b3JJUzJfRUVGdnZFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTMkXzIAZHJhd19jb21wbGV0ZQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfMk5TXzlhbGxvY2F0b3JJUzJfRUVGdnZFRUUAWjE3aW5pdGlhbGl6ZUxpYnJhcnl2RTMkXzEAY2FtZXJhX3NldABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfMU5TXzlhbGxvY2F0b3JJUzJfRUVGdlJLTjJUQzNXZWI2Q2FtZXJhRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJLTjJUQzNXZWI2Q2FtZXJhRUVFRQBaMTdpbml0aWFsaXplTGlicmFyeXZFMyRfMABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laMTdpbml0aWFsaXplTGlicmFyeXZFMyRfME5TXzlhbGxvY2F0b3JJUzJfRUVGdlJLTjJUQzNXZWI0RHJhdzEwRnJhbWVTdGF0c0VFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRnZSS04yVEMzV2ViNERyYXcxMEZyYW1lU3RhdHNFRUVFAFoxM2xvYWRTY3NCdWZmZXJOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TXzZ2ZWN0b3JJTlMyXzdLZXlUeXBlM0luY0VOU185YWxsb2NhdG9ySVM2X0VFRUUxMExvYWRSZXN1bHRFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0JfRUVFRWpPTlMwX0lBX2hOU0NfSVNGX0VFRUVqUEtmZGJiRThDYWxsYmFjawAlcwBaTDE2cmVxdWVzdEluc3RhbmNlc05TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMyXzRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU182dmVjdG9ySVM2X05TXzlhbGxvY2F0b3JJUzZfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFTlMyXzEwU291cmNlVHlwZUVPUzdfTlMyXzE0SW5zdGFuY2VDb25maWdFRTEzR3JvdXBOb3RpZmllcgBOMlRDM1dlYjhOb3RpZmllcklOUzBfNExpc3RJTlMwXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzRfTlM2XzlhbGxvY2F0b3JJUzRfRUVFRUVFAFpMMTZyZXF1ZXN0SW5zdGFuY2VzTlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzJfNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TXzZ2ZWN0b3JJUzZfTlNfOWFsbG9jYXRvcklTNl9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVOUzJfMTBTb3VyY2VUeXBlRU9TN19OUzJfMTRJbnN0YW5jZUNvbmZpZ0VFMTZJbnN0YW5jZU5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlMyXzREb25lRVNCX0VFAE4yVEMzV2ViOE5vdGlmaWVySU5TMF80TGlzdElOUzBfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzRfTlM2XzlhbGxvY2F0b3JJUzRfRUVFRUVFAFpOMlRDM1dlYjdCaW5kaW5nMzJFbnZpcm9ubWVudF9yZXF1ZXN0TWVzaEluc3RhbmNlc0VOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzhfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU9OUzBfNExpc3RJUzhfRUViYkUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMTdGcm9tRXJyb3JOb3RpZmllcklOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80RG9uZUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzJfNERvbmVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80RG9uZUVTQl9FRQBOMTJfR0xPQkFMX19OXzExN0Zyb21FcnJvck5vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80RG9uZUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80RG9uZUVFRQBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUySWRFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lOUzJfN0JpbmRpbmc0QmxvYkVOUzlfSVNEX0VFRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzIzRW52aXJvbm1lbnRfZ2V0TWV0YURhdGFFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySU5TMV80QmxvYkVOUzJfOWFsbG9jYXRvcklTNl9FRUVFTlM1X0lOUzBfN0tleVR5cGUySWRFTlM3X0lTQl9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFT05TMF80TGlzdElTQl9FRUUxMkRhdGFOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTJJZEVFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl83QmluZGluZzRCbG9iRU5TOV9JU0RfRUVFRVNCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUySWRFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lOUzJfN0JpbmRpbmc0QmxvYkVOUzlfSVNEX0VFRUVFRQBaTjJUQzNXZWI3QmluZGluZzI4RW52aXJvbm1lbnRfdHJ1bmNhdGVNZXRhRGF0YUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTJJZEVOUzJfOWFsbG9jYXRvcklTOF9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFT05TMF80TGlzdElTOF9FRUUxMkRhdGFOb3RpZmllcgBaTjJUQzNXZWI3QmluZGluZzI1RW52aXJvbm1lbnRfZW5hYmxlQ2FwcGluZ0VOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTJJZEVOUzJfOWFsbG9jYXRvcklTOF9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFUktTOF9TSF9mRTE2TWF0ZXJpYWxOb3RpZmllcgBaTjJUQzNXZWI3QmluZGluZzIzRW52aXJvbm1lbnRfZXhwb3J0VG9TdmdFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySWhOUzJfOWFsbG9jYXRvckloRUVFRVM4X0VFTlMyXzE0ZGVmYXVsdF9kZWxldGVJUzlfRUVFRVJLTlMwXzNTdmc5U3ZnQ29uZmlnRUUxMVN2Z05vdGlmaWVyAE4yVEMzV2ViOE5vdGlmaWVySU5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlMyXzExY2hhcl90cmFpdHNJY0VFTlMyXzlhbGxvY2F0b3JJY0VFRUVTOF9FRQBaTDExcmVxdWVzdE1lc2hOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMl83S2V5VHlwZTJJZEVTNV9FRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzZfRUVFRVJLUzVfRTEyTWVzaE5vdGlmaWVyAFpOMlRDM1dlYjdCaW5kaW5nMTZNZXNoRGF0YV9yZXBsYWNlRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNERvbmVFTlMxXzIwTWVzaERhdGFSZXBsYWNlRXJyb3JFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFUktOUzBfN0tleVR5cGUySWRFampqak9OUzBfNExpc3RJZkVFT05TRl9JakVFU0pfU0pfRTEyTWVzaE5vdGlmaWVyAE4yVEMzV2ViOE5vdGlmaWVySU5TMF83S2V5VHlwZTJJZEVTM19FRQBaTjJUQzNXZWI3QmluZGluZzE2TWVzaERhdGFfZGVzdHJveUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMV8xMkRlc3Ryb3lFcnJvcklOUzBfN0tleVR5cGUySWRFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVPTlMwXzRMaXN0SVM4X0VFRTEyTWVzaE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlMklkRVM0X05TdDNfXzI2dmVjdG9ySU41RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFTlM1XzlhbGxvY2F0b3JJUzlfRUVFRVM0X0VFAFpOMlRDM1dlYjdCaW5kaW5nMjhNZXNoRGF0YV9saW5lRWxlbWVudFNlZ21lbnRzRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklONUVpZ2VuNk1hdHJpeElmTGkzRUxpMUVMaTBFTGkzRUxpMUVFRU5TMl85YWxsb2NhdG9ySVM4X0VFRUVOUzBfN0tleVR5cGUySWRFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFUktTRF9qRTEyTWVzaE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViN0tleVR5cGUySWRFUzRfTlN0M19fMjZ2ZWN0b3JJTjVFaWdlbjZNYXRyaXhJZkxpM0VMaTFFTGkwRUxpM0VMaTFFRUVOUzVfOWFsbG9jYXRvcklTOV9FRUVFUzRfRUUATjEyX0dMT0JBTF9fTl8xMTFGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlMklkRVM0X05TdDNfXzI2dmVjdG9ySU41RWlnZW42TWF0cml4SWZMaTNFTGkxRUxpMEVMaTNFTGkxRUVFTlM1XzlhbGxvY2F0b3JJUzlfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlMklkRVM0X05TdDNfXzI2dmVjdG9ySWpOUzVfOWFsbG9jYXRvcklqRUVFRVM0X0VFAFpOMlRDM1dlYjdCaW5kaW5nMjlNZXNoRGF0YV9saW5lc1RvSW5jaWRlbnRGYWNlc0VOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMyXzZ2ZWN0b3JJak5TMl85YWxsb2NhdG9ySWpFRUVFTlMwXzdLZXlUeXBlMklkRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0JfRUVFRU9OUzBfNExpc3RJakVFUktTQV9FMTJNZXNoTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI3S2V5VHlwZTJJZEVTNF9OU3QzX18yNnZlY3RvcklqTlM1XzlhbGxvY2F0b3JJakVFRUVTNF9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViN0tleVR5cGUySWRFUzRfTlN0M19fMjZ2ZWN0b3JJak5TNV85YWxsb2NhdG9ySWpFRUVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViN0tleVR5cGUySWRFUzRfTlMyXzdCaW5kaW5nMTJNZXNoRGF0YUNvcHlFTlM1XzIwTWVzaERhdGFHZXREYXRhRXJyb3JFRUUAWk4yVEMzV2ViN0JpbmRpbmcxNk1lc2hEYXRhX2dldERhdGFFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMV8xMk1lc2hEYXRhQ29weUVOUzFfMjBNZXNoRGF0YUdldERhdGFFcnJvckVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVM3X0VFRUVSS05TMF83S2V5VHlwZTJJZEVFMTJNZXNoTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI3S2V5VHlwZTJJZEVTNF9OUzJfN0JpbmRpbmcxMk1lc2hEYXRhQ29weUVOUzVfMjBNZXNoRGF0YUdldERhdGFFcnJvckVFRQBaTjJUQzNXZWI3QmluZGluZzE2TWF0ZXJpYWxfZGVzdHJveUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMV8xMkRlc3Ryb3lFcnJvcklOUzBfN0tleVR5cGUySWRFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNBX0VFRUVPTlMwXzRMaXN0SVM4X0VFRTE2TWF0ZXJpYWxOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUySWRFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lOUzJfN0JpbmRpbmcxM01hdGVyaWFsUHJvcHNFTlM5X0lTRF9FRUVFU0JfRUUAWk4yVEMzV2ViN0JpbmRpbmczMU1hdGVyaWFsX2dldEFnZ3JlZ2F0ZVByb3BlcnRpZXNFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySU5TMV8xM01hdGVyaWFsUHJvcHNFTlMyXzlhbGxvY2F0b3JJUzZfRUVFRU5TNV9JTlMwXzdLZXlUeXBlMklkRU5TN19JU0JfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU9OUzBfNExpc3RJU0JfRUVFMTZNYXRlcmlhbE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzdCaW5kaW5nMTNNYXRlcmlhbFByb3BzRU5TOV9JU0RfRUVFRVNCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUySWRFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lOUzJfN0JpbmRpbmcxM01hdGVyaWFsUHJvcHNFTlM5X0lTRF9FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzlSZ2JhQ29sb3JFTlM5X0lTQ19FRUVFU0JfRUUAWk4yVEMzV2ViN0JpbmRpbmcyNE1hdGVyaWFsX2dldERpZmZ1c2VDb2xvckVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMyXzZ2ZWN0b3JJTlMwXzlSZ2JhQ29sb3JFTlMyXzlhbGxvY2F0b3JJUzZfRUVFRU5TNV9JTlMwXzdLZXlUeXBlMklkRU5TN19JU0JfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU9OUzBfNExpc3RJU0JfRUVFMTZNYXRlcmlhbE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlMklkRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzlSZ2JhQ29sb3JFTlM5X0lTQ19FRUVFU0JfRUUATjEyX0dMT0JBTF9fTl8xMTFGYWlsdXJlQmFzZUlOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTJJZEVFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl85UmdiYUNvbG9yRU5TOV9JU0NfRUVFRUVFAFpOMlRDM1dlYjdCaW5kaW5nMjVNYXRlcmlhbF9nZXRFbWlzc2lvbkNvbG9yRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklOUzBfOVJnYmFDb2xvckVOUzJfOWFsbG9jYXRvcklTNl9FRUVFTlM1X0lOUzBfN0tleVR5cGUySWRFTlM3X0lTQl9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFT05TMF80TGlzdElTQl9FRUUxNk1hdGVyaWFsTm90aWZpZXIAWkwxNWdlbmVyaWNTZXRDb2xvcklYYWRMX1pOSzJUQzNXZWI4TWF0ZXJpYWwxMmRpZmZ1c2VDb2xvckV2RUVYYWRMX1pOUzJfMTVzZXREaWZmdXNlQ29sb3JFUktOUzFfOVJnYmFDb2xvckVFRUV2Uk5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzFfNERvbmVFTlM2XzZ2ZWN0b3JJTlMxXzdLZXlUeXBlMklkRU5TNl85YWxsb2NhdG9ySVNDX0VFRUVFRU5TNl8xNGRlZmF1bHRfZGVsZXRlSVNHX0VFRUVSTlMxXzRMaXN0SVNDX0VFUzVfRTE2TWF0ZXJpYWxOb3RpZmllcgBaTDE1Z2VuZXJpY1NldENvbG9ySVhhZExfWk5LMlRDM1dlYjhNYXRlcmlhbDEzZW1pc3Npb25Db2xvckV2RUVYYWRMX1pOUzJfMTZzZXRFbWlzc2lvbkNvbG9yRVJLTlMxXzlSZ2JhQ29sb3JFRUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMxXzREb25lRU5TNl82dmVjdG9ySU5TMV83S2V5VHlwZTJJZEVOUzZfOWFsbG9jYXRvcklTQ19FRUVFRUVOUzZfMTRkZWZhdWx0X2RlbGV0ZUlTR19FRUVFUk5TMV80TGlzdElTQ19FRVM1X0UxNk1hdGVyaWFsTm90aWZpZXIAWkwxNXJlcXVlc3RNYXRyaWNlc05TdDNfXzIxMHVuaXF1ZV9wdHJJTjJUQzNXZWI4Tm90aWZpZXJJTlMyXzRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU182dmVjdG9ySVM2X05TXzlhbGxvY2F0b3JJUzZfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFT1M3X0UxNE1hdHJpeE5vdGlmaWVyAFpOMlRDM1dlYjdCaW5kaW5nMTRNYXRyaXhfZGVzdHJveUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMV8xMkRlc3Ryb3lFcnJvcklOUzBfN0tleVR5cGUzSW5jRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFT05TMF80TGlzdElTOF9FRUUxNE1hdHJpeE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TOV9JU0VfRUVFRVNCX0VFAFpOMlRDM1dlYjdCaW5kaW5nMThNYXRyaXhfZ2V0RWxlbWVudHNFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySU41RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFTlMyXzlhbGxvY2F0b3JJUzhfRUVFRU5TNV9JTlMwXzdLZXlUeXBlM0luY0VOUzlfSVNEX0VFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNHX0VFRUVPTlMwXzRMaXN0SVNEX0VFRTE0TWF0cml4Tm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVOUzlfSVNFX0VFRUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU41RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFTlM5X0lTRV9FRUVFRUUAWk4yVEMzV2ViN0JpbmRpbmcxOE1hdHJpeF9zZXRFbGVtZW50c0VOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzhfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU9OUzBfNExpc3RJUzhfRUVSS041RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFRTE0TWF0cml4Tm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl80Qm94M0lmRUVOUzlfSVNEX0VFRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzM1TWVzaEluc3RhbmNlX2dldE9iamVjdFNwYWNlQm91bmRpbmdFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySU5TMF80Qm94M0lmRUVOUzJfOWFsbG9jYXRvcklTN19FRUVFTlM1X0lOUzBfN0tleVR5cGUzSW5jRU5TOF9JU0NfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0ZfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTQ19FRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzRCb3gzSWZFRU5TOV9JU0RfRUVFRVNCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzRCb3gzSWZFRU5TOV9JU0RfRUVFRUVFAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjRCb3gzSWZFRU5TdDNfXzI2dmVjdG9ySU5TMl83S2V5VHlwZTNJbmNFTlM1XzlhbGxvY2F0b3JJUzhfRUVFRVM0X1NCX0VFAFpOMlRDM1dlYjdCaW5kaW5nMzRNZXNoSW5zdGFuY2VfZ2V0V29ybGRTcGFjZUJvdW5kaW5nRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNEJveDNJZkVFTlMyXzZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzJfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TMF80TGlzdElTOV9FRWJiRTE2Qm91bmRpbmdOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjRCb3gzSWZFRU5TdDNfXzI2dmVjdG9ySU5TMl83S2V5VHlwZTNJbmNFTlM1XzlhbGxvY2F0b3JJUzhfRUVFRVM0X1NCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0Qm94M0lmRUVOU3QzX18yNnZlY3RvcklOUzJfN0tleVR5cGUzSW5jRU5TNV85YWxsb2NhdG9ySVM4X0VFRUVTNF9FRQBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80Qm94M0lmRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzM5TWVzaEluc3RhbmNlX2dldERyYXduV29ybGRTcGFjZUJvdW5kaW5nRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNEJveDNJZkVFTlMyXzZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzJfOWFsbG9jYXRvcklTOV9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFT05TMF80TGlzdElTOV9FRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl80Qm94M0lmRUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzJfNEJveDNJZkVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TNF8ySWRFTlM5X0lTQ19FRUVFU0JfRUUAWk4yVEMzV2ViN0JpbmRpbmcyNE1lc2hJbnN0YW5jZV9nZXRNZXNoRGF0YUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMyXzZ2ZWN0b3JJTlMwXzdLZXlUeXBlMklkRU5TMl85YWxsb2NhdG9ySVM3X0VFRUVOUzVfSU5TNl8zSW5jRU5TOF9JU0JfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlM0XzJJZEVOUzlfSVNDX0VFRUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TNF8ySWRFTlM5X0lTQ19FRUVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSWJOUzlfSWJFRUVFU0JfRUUAWk4yVEMzV2ViN0JpbmRpbmcyNk1lc2hJbnN0YW5jZV9oYXNEZXB0aFJhbmdlRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvckliTlMyXzlhbGxvY2F0b3JJYkVFRUVOUzVfSU5TMF83S2V5VHlwZTNJbmNFTlM2X0lTQV9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVNBX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0liTlM5X0liRUVFRVNCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JYk5TOV9JYkVFRUVFRQBaTjJUQzNXZWI3QmluZGluZzIwTWVzaEluc3RhbmNlX2Rlc3Ryb3lFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMF80RG9uZUVOUzFfMTJEZXN0cm95RXJyb3JJTlMwXzdLZXlUeXBlM0luY0VFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTOF9FRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMTFBbGxOb3RpZmllcklaTjJUQzNXZWI3QmluZGluZzIxTWVzaEluc3RhbmNlX2NyZWF0ZV8wRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMyXzhOb3RpZmllcklOUzJfN0tleVR5cGUzSW5jRU5TM18yM0NyZWF0ZU1lc2hJbnN0YW5jZUVycm9yRUVFTlM0XzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRVJLTlM3XzJJZEVSS1M4X1NHX1NHX1NHX3RqRTNBbGxTRF9KTlM2X0lTRV9TRV9FRU5TNl9JUzhfUzhfRUVOUzZfSU5TMl80TGlzdElTRV9FRU5TNF82dmVjdG9ySVNFX05TNF85YWxsb2NhdG9ySVNFX0VFRUVFRUVFMTJOb3RpZmllckltcGxJU05fU1JfTGoyRUVFAFpMMTNyZXF1ZXN0TWF0cml4TlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzJfN0tleVR5cGUzSW5jRVM1X0VFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNl9FRUVFUktTNV9FMTRNYXRyaXhOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExMUFsbE5vdGlmaWVySVpOMlRDM1dlYjdCaW5kaW5nMjFNZXNoSW5zdGFuY2VfY3JlYXRlXzBFTlN0M19fMjEwdW5pcXVlX3B0cklOUzJfOE5vdGlmaWVySU5TMl83S2V5VHlwZTNJbmNFTlMzXzIzQ3JlYXRlTWVzaEluc3RhbmNlRXJyb3JFRUVOUzRfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFUktOUzdfMklkRVJLUzhfU0dfU0dfU0dfdGpFM0FsbFNEX0pOUzZfSVNFX1NFX0VFTlM2X0lTOF9TOF9FRU5TNl9JTlMyXzRMaXN0SVNFX0VFTlM0XzZ2ZWN0b3JJU0VfTlM0XzlhbGxvY2F0b3JJU0VfRUVFRUVFRUUxMk5vdGlmaWVySW1wbElTOF9TOF9MajFFRUUATjJUQzNXZWI4Tm90aWZpZXJJTlMwXzdLZXlUeXBlM0luY0VTM19FRQBOMTJfR0xPQkFMX19OXzExMUFsbE5vdGlmaWVySVpOMlRDM1dlYjdCaW5kaW5nMjFNZXNoSW5zdGFuY2VfY3JlYXRlXzBFTlN0M19fMjEwdW5pcXVlX3B0cklOUzJfOE5vdGlmaWVySU5TMl83S2V5VHlwZTNJbmNFTlMzXzIzQ3JlYXRlTWVzaEluc3RhbmNlRXJyb3JFRUVOUzRfMTRkZWZhdWx0X2RlbGV0ZUlTQV9FRUVFUktOUzdfMklkRVJLUzhfU0dfU0dfU0dfdGpFM0FsbFNEX0pOUzZfSVNFX1NFX0VFTlM2X0lTOF9TOF9FRU5TNl9JTlMyXzRMaXN0SVNFX0VFTlM0XzZ2ZWN0b3JJU0VfTlM0XzlhbGxvY2F0b3JJU0VfRUVFRUVFRUUxMk5vdGlmaWVySW1wbElTRV9TRV9MajBFRUUATjEyX0dMT0JBTF9fTl8xMTFBbGxOb3RpZmllcklaTjJUQzNXZWI3QmluZGluZzIxTWVzaEluc3RhbmNlX2NyZWF0ZV8wRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMyXzhOb3RpZmllcklOUzJfN0tleVR5cGUzSW5jRU5TM18yM0NyZWF0ZU1lc2hJbnN0YW5jZUVycm9yRUVFTlM0XzE0ZGVmYXVsdF9kZWxldGVJU0FfRUVFRVJLTlM3XzJJZEVSS1M4X1NHX1NHX1NHX3RqRTNBbGxTRF9KTlM2X0lTRV9TRV9FRU5TNl9JUzhfUzhfRUVOUzZfSU5TMl80TGlzdElTRV9FRU5TNF82dmVjdG9ySVNFX05TNF85YWxsb2NhdG9ySVNFX0VFRUVFRUVFRQBaTjJUQzNXZWI3QmluZGluZzIxTWVzaEluc3RhbmNlX2NyZWF0ZV8wRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfN0tleVR5cGUzSW5jRU5TMV8yM0NyZWF0ZU1lc2hJbnN0YW5jZUVycm9yRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJUzhfRUVFRVJLTlM1XzJJZEVSS1M2X1NFX1NFX1NFX3RqRTNBbGwAWkwyOGdlbmVyaWNHZXRJbnN0YW5jZVZpc2liaWxpdHlJWk4yVEMzV2ViN0JpbmRpbmcyOE1lc2hJbnN0YW5jZV9nZXRGYWNlc1Zpc2libGVFTlN0M19fMjEwdW5pcXVlX3B0cklOUzFfOE5vdGlmaWVySU5TM182dmVjdG9ySWJOUzNfOWFsbG9jYXRvckliRUVFRU5TNl9JTlMxXzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TM18xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzFfMTBTb3VyY2VUeXBlRU9OUzFfNExpc3RJU0JfRUVFNkdldHRlckV2UlNIX1NJX1JTS19FMTZJbnN0YW5jZU5vdGlmaWVyAFpMMjhnZW5lcmljR2V0SW5zdGFuY2VWaXNpYmlsaXR5SVpOMlRDM1dlYjdCaW5kaW5nMjhNZXNoSW5zdGFuY2VfZ2V0TGluZXNWaXNpYmxlRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzNfNnZlY3RvckliTlMzXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TMV83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzNfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMxXzEwU291cmNlVHlwZUVPTlMxXzRMaXN0SVNCX0VFRTZHZXR0ZXJFdlJTSF9TSV9SU0tfRTE2SW5zdGFuY2VOb3RpZmllcgBaTDI4Z2VuZXJpY0dldEluc3RhbmNlVmlzaWJpbGl0eUlaTjJUQzNXZWI3QmluZGluZzI5TWVzaEluc3RhbmNlX2dldFBvaW50c1Zpc2libGVFTlN0M19fMjEwdW5pcXVlX3B0cklOUzFfOE5vdGlmaWVySU5TM182dmVjdG9ySWJOUzNfOWFsbG9jYXRvckliRUVFRU5TNl9JTlMxXzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TM18xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzFfMTBTb3VyY2VUeXBlRU9OUzFfNExpc3RJU0JfRUVFNkdldHRlckV2UlNIX1NJX1JTS19FMTZJbnN0YW5jZU5vdGlmaWVyAFpMMjJnZW5lcmljR2V0SW5zdGFuY2VGbGFnSVhhZExfWk5LMlRDM1dlYjRNZXNoMTBhbHdheXNEcmF3RXZFRUV2Uk5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzNfNnZlY3RvckliTlMzXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TMV83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzNfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMxXzEwU291cmNlVHlwZUVSTlMxXzRMaXN0SVNCX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBaTDIyZ2VuZXJpY0dldEluc3RhbmNlRmxhZ0lYYWRMX1pOSzJUQzNXZWI0TWVzaDhkb05vdEN1dEV2RUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMzXzZ2ZWN0b3JJYk5TM185YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzFfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMzXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMV8xMFNvdXJjZVR5cGVFUk5TMV80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIAWkwyMmdlbmVyaWNHZXRJbnN0YW5jZUZsYWdJWGFkTF9aTksyVEMzV2ViNE1lc2gxOXN1cHByZXNzQ2FtZXJhU2NhbGVFdkVFRXZSTlN0M19fMjEwdW5pcXVlX3B0cklOUzFfOE5vdGlmaWVySU5TM182dmVjdG9ySWJOUzNfOWFsbG9jYXRvckliRUVFRU5TNl9JTlMxXzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TM18xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzFfMTBTb3VyY2VUeXBlRVJOUzFfNExpc3RJU0JfRUVFMTZJbnN0YW5jZU5vdGlmaWVyAFpMMjJnZW5lcmljR2V0SW5zdGFuY2VGbGFnSVhhZExfWk5LMlRDM1dlYjRNZXNoMTRzY3JlZW5PcmllbnRlZEV2RUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMzXzZ2ZWN0b3JJYk5TM185YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzFfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMzXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMV8xMFNvdXJjZVR5cGVFUk5TMV80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIAWkwyMmdlbmVyaWNHZXRJbnN0YW5jZUZsYWdJWGFkTF9aTksyVEMzV2ViNE1lc2gxMmRvTm90RXhwbG9kZUV2RUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMzXzZ2ZWN0b3JJYk5TM185YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzFfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMzXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMV8xMFNvdXJjZVR5cGVFUk5TMV80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIAWkwyMmdlbmVyaWNHZXRJbnN0YW5jZUZsYWdJWGFkTF9aTksyVEMzV2ViNE1lc2gxMWRvTm90U2VsZWN0RXZFRUV2Uk5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzNfNnZlY3RvckliTlMzXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TMV83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzNfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMxXzEwU291cmNlVHlwZUVSTlMxXzRMaXN0SVNCX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBaTDIyZ2VuZXJpY0dldEluc3RhbmNlRmxhZ0lYYWRMX1pOSzJUQzNXZWI0TWVzaDEwZG9Ob3RMaWdodEV2RUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMzXzZ2ZWN0b3JJYk5TM185YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzFfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMzXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMV8xMFNvdXJjZVR5cGVFUk5TMV80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIAWkwyMmdlbmVyaWNHZXRJbnN0YW5jZUZsYWdJWGFkTF9aTksyVEMzV2ViNE1lc2gyMWRvTm90T3V0bGluZUhpZ2hsaWdodEV2RUVFdlJOU3QzX18yMTB1bmlxdWVfcHRySU5TMV84Tm90aWZpZXJJTlMzXzZ2ZWN0b3JJYk5TM185YWxsb2NhdG9ySWJFRUVFTlM2X0lOUzFfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMzXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMV8xMFNvdXJjZVR5cGVFUk5TMV80TGlzdElTQl9FRUUxNkluc3RhbmNlTm90aWZpZXIAWkwyMmdlbmVyaWNHZXRJbnN0YW5jZUZsYWdJWGFkTF9aTksyVEMzV2ViNE1lc2gyMGRvTm90VXNlVmVydGV4Q29sb3JzRXZFRUV2Uk5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzNfNnZlY3RvckliTlMzXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TMV83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzNfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMxXzEwU291cmNlVHlwZUVSTlMxXzRMaXN0SVNCX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBaTDIyZ2VuZXJpY0dldEluc3RhbmNlRmxhZ0lYYWRMX1pOSzJUQzNXZWI0TWVzaDE1ZXhjbHVkZUJvdW5kaW5nRXZFRUV2Uk5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMxXzhOb3RpZmllcklOUzNfNnZlY3RvckliTlMzXzlhbGxvY2F0b3JJYkVFRUVOUzZfSU5TMV83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzNfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMxXzEwU291cmNlVHlwZUVSTlMxXzRMaXN0SVNCX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBaTjJUQzNXZWI3QmluZGluZzM5TWVzaEluc3RhbmNlX2dldE92ZXJyaWRlU2NlbmVWaXNpYmlsaXR5RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvckliTlMyXzlhbGxvY2F0b3JJYkVFRUVOUzVfSU5TMF83S2V5VHlwZTNJbmNFTlM2X0lTQV9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVNBX0VFRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRVNCX1NCX0VFAFpOMlRDM1dlYjdCaW5kaW5nMjJNZXNoSW5zdGFuY2VfZ2V0TWF0cml4RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TMl85YWxsb2NhdG9ySVM3X0VFRUVTQV9FRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNCX0VFRUVOUzBfMTBTb3VyY2VUeXBlRU9OUzBfNExpc3RJUzdfRUVqRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFU0JfU0JfRUUATjEyX0dMT0JBTF9fTl8xMTFGYWlsdXJlQmFzZUlOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFU0JfRUUAWlpOMlRDM1dlYjdCaW5kaW5nMjJNZXNoSW5zdGFuY2Vfc2V0TWF0cml4RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNERvbmVFTlMxXzE0U2V0TWF0cml4RXJyb3JFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SU5TMF83S2V5VHlwZTNJbmNFRUVqUktTRV9FTjE0TWF0cml4Tm90aWZpZXI5T25TdWNjZXNzRU9TRV9FMTZJbnN0YW5jZU5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlM0luY0VTNF9OUzJfNERvbmVFTlMyXzdCaW5kaW5nMTRTZXRNYXRyaXhFcnJvckVFRQBaTjJUQzNXZWI3QmluZGluZzIyTWVzaEluc3RhbmNlX3NldE1hdHJpeEVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMV8xNFNldE1hdHJpeEVycm9yRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElOUzBfN0tleVR5cGUzSW5jRUVFalJLU0VfRTE0TWF0cml4Tm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI3S2V5VHlwZTNJbmNFUzRfTlMyXzREb25lRU5TMl83QmluZGluZzE0U2V0TWF0cml4RXJyb3JFRUUAWk4yVEMzV2ViN0JpbmRpbmcyNE1lc2hJbnN0YW5jZV91bnNldE1hdHJpeEVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzhfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTOF9FRWpFMTZJbnN0YW5jZU5vdGlmaWVyAFpMMTVyZXF1ZXN0SW5zdGFuY2VOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMl83S2V5VHlwZTNJbmNFUzVfRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM2X0VFRUVSS1M1X05TMl8xNEluc3RhbmNlQ29uZmlnRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViN0tleVR5cGUzSW5jRVM0X05TMl80Qm94M0lmRUVTNF9FRQBaTDMxTWVzaEluc3RhbmNlX2dldEVsZW1lbnRCb3VuZGluZ1JOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMl80Qm94M0lmRUVOUzJfN0tleVR5cGUzSW5jRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTOF9FRUVFUk5TMl80TGlzdElqRUVSS1M3X05TMl8xMUVsZW1lbnRUeXBlRUUxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI3S2V5VHlwZTNJbmNFUzRfTlMyXzRCb3gzSWZFRVM0X0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI3S2V5VHlwZTNJbmNFUzRfTlMyXzRCb3gzSWZFRUVFAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlM0luY0VTNF9OU3QzX18yNnZlY3RvcklqTlM1XzlhbGxvY2F0b3JJakVFRUVTNF9FRQBaTjJUQzNXZWI3QmluZGluZzMzTWVzaEluc3RhbmNlX2xpbmVzVG9JbmNpZGVudEZhY2VzRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklqTlMyXzlhbGxvY2F0b3JJakVFRUVOUzBfN0tleVR5cGUzSW5jRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0JfRUVFRU9OUzBfNExpc3RJakVFUktTQV9FMTZJbnN0YW5jZU5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViN0tleVR5cGUzSW5jRVM0X05TdDNfXzI2dmVjdG9ySWpOUzVfOWFsbG9jYXRvcklqRUVFRVM0X0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI3S2V5VHlwZTNJbmNFUzRfTlN0M19fMjZ2ZWN0b3JJak5TNV85YWxsb2NhdG9ySWpFRUVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzJfMTJEaXN0YW5jZUluZm9FU0JfRUUAWk4yVEMzV2ViN0JpbmRpbmc0M01lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEJvZHlCb2R5RGlzdGFuY2VFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMF8xMkRpc3RhbmNlSW5mb0VOUzJfNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TMl85YWxsb2NhdG9ySVM4X0VFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVSS1M4X1NIX0UxNkluc3RhbmNlTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMThGb3J3YXJkaW5nTm90aWZpZXJJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TMl8xMkRpc3RhbmNlSW5mb0VTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzJfMTJEaXN0YW5jZUluZm9FRUUAWk4yVEMzV2ViN0JpbmRpbmc0M01lc2hJbnN0YW5jZV9jb21wdXRlTWluaW1hbEZhY2VGYWNlRGlzdGFuY2VFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMF8xMkRpc3RhbmNlSW5mb0VOUzJfNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TMl85YWxsb2NhdG9ySVM4X0VFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNDX0VFRUVSS1M4X2pTSF9qRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI3S2V5VHlwZTNJbmNFUzRfTlMyXzEyRGlzdGFuY2VJbmZvRVM0X0VFAFpMMzRjb21wdXRlTWluaW1hbEZhY2VMaW5lTGlrZURpc3RhbmNlUEZOMlRDM1dlYjEyRGlzdGFuY2VJbmZvRVJLTlMwXzVTY2VuZUVSS05TMF80TWVzaEVqUktONUVpZ2VuMTZQYXJhbWV0cml6ZWRMaW5lSWRMaTNFTGkwRUVFRVJOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJUzFfTlMwXzdLZXlUeXBlM0luY0VFRU5TRl8xNGRlZmF1bHRfZGVsZXRlSVNLX0VFRUVSS1NKX2pSS05TMF83QmluZGluZzNSYXlFRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjdLZXlUeXBlM0luY0VTNF9OUzJfMTJEaXN0YW5jZUluZm9FUzRfRUUATjEyX0dMT0JBTF9fTl8xMTFGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlM0luY0VTNF9OUzJfMTJEaXN0YW5jZUluZm9FRUUAWk4yVEMzV2ViN0JpbmRpbmczNU1lc2hJbnN0YW5jZV9kaXNjYXJkQW5vbnltb3VzTWF0cml4RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNERvbmVFTlMyXzZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzJfOWFsbG9jYXRvcklTOF9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVM4X0VFRTE2SW5zdGFuY2VOb3RpZmllcgBaTjJUQzNXZWI3QmluZGluZzMzTWVzaEluc3RhbmNlX3JlaWZ5QW5vbnltb3VzTWF0cml4RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklOUzBfN0tleVR5cGUzSW5jRU5TMl85YWxsb2NhdG9ySVM3X0VFRUVTQV9FRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNCX0VFRUVOUzBfMTBTb3VyY2VUeXBlRU9OUzBfNExpc3RJUzdfRUVFMTZJbnN0YW5jZU5vdGlmaWVyAFpOMlRDM1dlYjdCaW5kaW5nMzFNZXNoSW5zdGFuY2Vfc2V0QW5vbnltb3VzTWF0cml4RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzBfNERvbmVFTlMyXzZ2ZWN0b3JJTlMwXzdLZXlUeXBlM0luY0VOUzJfOWFsbG9jYXRvcklTOF9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVM4X0VFUktONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRUUxNkluc3RhbmNlTm90aWZpZXIAWk4yVEMzV2ViN0JpbmRpbmczME1lc2hJbnN0YW5jZV9tYXRyaXhQcmVNdWx0aXBseUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMl82dmVjdG9ySU5TMF83S2V5VHlwZTNJbmNFTlMyXzlhbGxvY2F0b3JJUzhfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTOF9FRVJLTjVFaWdlbjZNYXRyaXhJZkxpNEVMaTRFTGkwRUxpNEVMaTRFRUVFMTZJbnN0YW5jZU5vdGlmaWVyAFpMMTJyZXF1ZXN0SW1hZ2VOU3QzX18yMTB1bmlxdWVfcHRySU4yVEMzV2ViOE5vdGlmaWVySU5TMl83S2V5VHlwZTJJZEVTNV9FRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzZfRUVFRVJLUzVfYkUxM0ltYWdlTm90aWZpZXIAWlpOMlRDM1dlYjdCaW5kaW5nMjNNZXNoSW5zdGFuY2Vfc2V0VGV4dHVyZUVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRU5TMV8xNVNldFRleHR1cmVFcnJvckVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVM3X0VFRUVOUzBfMTBTb3VyY2VUeXBlRU9OUzBfNExpc3RJTlMwXzdLZXlUeXBlM0luY0VFRU5TMF8xMUVsZW1lbnRUeXBlRVJLTlNEXzJJZEVSS041RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFTlMwXzEyVGV4dHVyZUZsYWdzNlRpbGluZ0VOU1FfMTNJbnRlcnBvbGF0aW9uRU5TUV8xME1pcE1hcHBpbmdFTlNRXzE2UGFyYW1ldGVyaXphdGlvbkVOU1FfOU1vZGlmaWVyc0VFTjEzSW1hZ2VOb3RpZmllcjlPblN1Y2Nlc3NFT1NJX0VVbHZFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laWk4yVEMzV2ViN0JpbmRpbmcyM01lc2hJbnN0YW5jZV9zZXRUZXh0dXJlRU5TXzEwdW5pcXVlX3B0cklOUzNfOE5vdGlmaWVySU5TM180RG9uZUVOUzRfMTVTZXRUZXh0dXJlRXJyb3JFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVOUzNfMTBTb3VyY2VUeXBlRU9OUzNfNExpc3RJTlMzXzdLZXlUeXBlM0luY0VFRU5TM18xMUVsZW1lbnRUeXBlRVJLTlNGXzJJZEVSS041RWlnZW42TWF0cml4SWZMaTRFTGk0RUxpMEVMaTRFTGk0RUVFTlMzXzEyVGV4dHVyZUZsYWdzNlRpbGluZ0VOU1NfMTNJbnRlcnBvbGF0aW9uRU5TU18xME1pcE1hcHBpbmdFTlNTXzE2UGFyYW1ldGVyaXphdGlvbkVOU1NfOU1vZGlmaWVyc0VFTjEzSW1hZ2VOb3RpZmllcjlPblN1Y2Nlc3NFT1NLX0VVbHZFX05TXzlhbGxvY2F0b3JJUzEwX0VFRnZ2RUVFAE4xMl9HTE9CQUxfX05fMTE2U3RhdGVGYWlsdXJlQmFzZUlOMlRDM1dlYjdLZXlUeXBlMklkRVM0X05TMl80RG9uZUVOUzJfN0JpbmRpbmcxNVNldFRleHR1cmVFcnJvckVFRQBaTjJUQzNXZWI3QmluZGluZzIzTWVzaEluc3RhbmNlX3NldFRleHR1cmVFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMF80RG9uZUVOUzFfMTVTZXRUZXh0dXJlRXJyb3JFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTN19FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SU5TMF83S2V5VHlwZTNJbmNFRUVOUzBfMTFFbGVtZW50VHlwZUVSS05TRF8ySWRFUktONUVpZ2VuNk1hdHJpeElmTGk0RUxpNEVMaTBFTGk0RUxpNEVFRU5TMF8xMlRleHR1cmVGbGFnczZUaWxpbmdFTlNRXzEzSW50ZXJwb2xhdGlvbkVOU1FfMTBNaXBNYXBwaW5nRU5TUV8xNlBhcmFtZXRlcml6YXRpb25FTlNRXzlNb2RpZmllcnNFRTEzSW1hZ2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjdLZXlUeXBlMklkRVM0X05TMl80RG9uZUVOUzJfN0JpbmRpbmcxNVNldFRleHR1cmVFcnJvckVFRQBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JZk5TOV9JZkVFRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzMyTWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZU9wYWNpdHlFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySWZOUzJfOWFsbG9jYXRvcklmRUVFRU5TNV9JTlMwXzdLZXlUeXBlM0luY0VOUzZfSVNBX0VFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNEX0VFRUVOUzBfMTBTb3VyY2VUeXBlRU9OUzBfNExpc3RJU0FfRUVOUzBfMTFFbGVtZW50VHlwZUVFMTZJbnN0YW5jZU5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSWZOUzlfSWZFRUVFU0JfRUUATjEyX0dMT0JBTF9fTl8xMTFGYWlsdXJlQmFzZUlOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lmTlM5X0lmRUVFRUVFAFpOMlRDM1dlYjdCaW5kaW5nMjhNZXNoSW5zdGFuY2VfaGFzVHJhbnNwYXJlbmN5RU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvckliTlMyXzlhbGxvY2F0b3JJYkVFRUVOUzVfSU5TMF83S2V5VHlwZTNJbmNFTlM2X0lTQV9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRF9FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVNBX0VFTlMwXzExRWxlbWVudFR5cGVFRTE2SW5zdGFuY2VOb3RpZmllcgBaTDE1cmVxdWVzdE1hdGVyaWFsTlN0M19fMjEwdW5pcXVlX3B0cklOMlRDM1dlYjhOb3RpZmllcklOUzJfN0tleVR5cGUySWRFUzVfRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM2X0VFRUVSS1M1X0UxNk1hdGVyaWFsTm90aWZpZXIATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViN0tleVR5cGUySWRFUzRfTlMyXzREb25lRVM0X0VFAFpOMlRDM1dlYjdCaW5kaW5nMjdFbnZpcm9ubWVudF9zZXRYUmF5TWF0ZXJpYWxFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMF80RG9uZUVOUzBfN0tleVR5cGUySWRFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTOF9FRUVFTlMwXzlYUmF5R3JvdXA0VHlwZUVOUzBfMTFFbGVtZW50VHlwZUVTN19FMTZNYXRlcmlhbE5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViN0tleVR5cGUySWRFUzRfTlMyXzREb25lRVM0X0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI3S2V5VHlwZTJJZEVTNF9OUzJfNERvbmVFRUUATjEyX0dMT0JBTF9fTl8xMTZTdGF0ZUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl83QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzlfSVNEX0VFRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzI5TWVzaEluc3RhbmNlX2dldEN1bGxpbmdWZWN0b3JFTlN0M19fMjEwdW5pcXVlX3B0cklOUzBfOE5vdGlmaWVySU5TMl82dmVjdG9ySU5TMV8xM0N1bGxpbmdWZWN0b3JFTlMyXzlhbGxvY2F0b3JJUzZfRUVFRU5TNV9JTlMwXzdLZXlUeXBlM0luY0VOUzdfSVNCX0VFRUVFRU5TMl8xNGRlZmF1bHRfZGVsZXRlSVNFX0VFRUVOUzBfMTBTb3VyY2VUeXBlRU9OUzBfNExpc3RJU0JfRUVFMTZJbnN0YW5jZU5vdGlmaWVyAE4xMl9HTE9CQUxfX05fMTE4Rm9yd2FyZGluZ05vdGlmaWVySU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl83QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzlfSVNEX0VFRUVTQl9FRQBOMTJfR0xPQkFMX19OXzExMUZhaWx1cmVCYXNlSU4yVEMzV2ViNExpc3RJTlMyXzdLZXlUeXBlM0luY0VFRU5TdDNfXzI2dmVjdG9ySVM1X05TN185YWxsb2NhdG9ySVM1X0VFRUVOUzhfSU5TMl83QmluZGluZzEzQ3VsbGluZ1ZlY3RvckVOUzlfSVNEX0VFRUVFRQBOMTJfR0xPQkFMX19OXzExNlN0YXRlRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzhSZ2JDb2xvckVOUzlfSVNDX0VFRUVTQl9FRQBaTjJUQzNXZWI3QmluZGluZzMwTWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZUNvbG9yRU5TdDNfXzIxMHVuaXF1ZV9wdHJJTlMwXzhOb3RpZmllcklOUzJfNnZlY3RvcklOUzBfOFJnYkNvbG9yRU5TMl85YWxsb2NhdG9ySVM2X0VFRUVOUzVfSU5TMF83S2V5VHlwZTNJbmNFTlM3X0lTQl9FRUVFRUVOUzJfMTRkZWZhdWx0X2RlbGV0ZUlTRV9FRUVFTlMwXzEwU291cmNlVHlwZUVPTlMwXzRMaXN0SVNCX0VFTlMwXzExRWxlbWVudFR5cGVFRTE2SW5zdGFuY2VOb3RpZmllcgBOMTJfR0xPQkFMX19OXzExOEZvcndhcmRpbmdOb3RpZmllcklOMlRDM1dlYjRMaXN0SU5TMl83S2V5VHlwZTNJbmNFRUVOU3QzX18yNnZlY3RvcklTNV9OUzdfOWFsbG9jYXRvcklTNV9FRUVFTlM4X0lOUzJfOFJnYkNvbG9yRU5TOV9JU0NfRUVFRVNCX0VFAE4xMl9HTE9CQUxfX05fMTExRmFpbHVyZUJhc2VJTjJUQzNXZWI0TGlzdElOUzJfN0tleVR5cGUzSW5jRUVFTlN0M19fMjZ2ZWN0b3JJUzVfTlM3XzlhbGxvY2F0b3JJUzVfRUVFRU5TOF9JTlMyXzhSZ2JDb2xvckVOUzlfSVNDX0VFRUVFRQBaTjJUQzNXZWI3QmluZGluZzM3TWVzaEluc3RhbmNlX2dldEVmZmVjdGl2ZUVsZW1lbnRDb2xvckVOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMyXzZ2ZWN0b3JJTlMwXzhSZ2JDb2xvckVOUzJfOWFsbG9jYXRvcklTNl9FRUVFTlM1X0lOUzBfN0tleVR5cGUzSW5jRU5TN19JU0JfRUVFRUVFTlMyXzE0ZGVmYXVsdF9kZWxldGVJU0VfRUVFRU5TMF8xMFNvdXJjZVR5cGVFT05TMF80TGlzdElTQl9FRU5TMF8xMUVsZW1lbnRUeXBlRWpFMTZJbnN0YW5jZU5vdGlmaWVyAFpOMlRDM1dlYjdCaW5kaW5nMzJFbnZpcm9ubWVudF93YWl0Rm9ySW1hZ2VEZWNvZGluZ0VOU3QzX18yMTB1bmlxdWVfcHRySU5TMF84Tm90aWZpZXJJTlMwXzREb25lRVM1X0VFTlMyXzE0ZGVmYXVsdF9kZWxldGVJUzZfRUVFRUUzJF8yAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOMlRDM1dlYjdCaW5kaW5nMzJFbnZpcm9ubWVudF93YWl0Rm9ySW1hZ2VEZWNvZGluZ0VOU18xMHVuaXF1ZV9wdHJJTlMzXzhOb3RpZmllcklOUzNfNERvbmVFUzdfRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFRUVFMyRfMk5TXzlhbGxvY2F0b3JJU0NfRUVGdnZFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjJUQzNXZWI4Tm90aWZpZXJJTlMyXzREb25lRVM0X0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE4yVEMzV2ViOE5vdGlmaWVySU5TMl80RG9uZUVTNF9FRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzVfRUVOU185YWxsb2NhdG9ySVM1X0VFRUUATjJUQzNXZWI1SW1hZ2VFAE4yVEMzV2ViMjBJbWFnZVdpdGhJbXBsU3RvcmFnZUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWIyMEltYWdlV2l0aEltcGxTdG9yYWdlRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQBOMlRDM1dlYjE0SW1hZ2VEdXBsaWNhdGVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU4yVEMzV2ViMTRJbWFnZUR1cGxpY2F0ZUVOU185YWxsb2NhdG9ySVMzX0VFRUUATjJUQzNXZWIxMk1hdGVyaWFsSW5mb0UATjJUQzNXZWIxOVRleHR1cmVNYXRlcmlhbEluZm9FAE4yVEMzV2ViMjNMaW5lUGF0dGVybk1hdGVyaWFsSW5mb0UATjJUQzNXZWIyM0Vudmlyb25tZW50TWF0ZXJpYWxJbmZvRQBOMlRDM1dlYjIwU3BlY3VsYXJNYXRlcmlhbEluZm9FAE4yVEMzV2ViMTdDb2xvck1hdGVyaWFsSW5mb0UATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWI4TWF0ZXJpYWxFTlNfOWFsbG9jYXRvcklTM19FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU4yVEMzV2ViNk1hdHJpeEVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWI0TWVzaEVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjJUQzNXZWIxMk1hdGVyaWFsSW5mb0VFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjJUQzNXZWIxMk1hdGVyaWFsSW5mb0VOU18xNGRlZmF1bHRfZGVsZXRlSVMzX0VFTlNfOWFsbG9jYXRvcklTM19FRUVFAE4yVEMzV2ViOE1lc2hEYXRhRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlOMlRDM1dlYjIzTWVzaERhdGFXaXRoSW1wbFN0b3JhZ2VFTlNfOWFsbG9jYXRvcklTM19FRUVFAE4yVEMzV2ViMjNNZXNoRGF0YVdpdGhJbXBsU3RvcmFnZUUATjJUQzNXZWIxN01lc2hEYXRhRHVwbGljYXRlRQBOMlRDM1dlYjE2TWVzaERhdGFTZWxlY3RvckUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWIxN01lc2hEYXRhRHVwbGljYXRlRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlOMlRDM1dlYjE2TWVzaERhdGFTZWxlY3RvckVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWI5SW5jbHVzaW9uRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlOMlRDM1dlYjVTY2VuZUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWI1R3JvdXBFTlNfOWFsbG9jYXRvcklTM19FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU4yVEMzV2ViOE1ldGFEYXRhRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBOMlRDM1dlYjhNZXRhRGF0YUVOU18xNGRlZmF1bHRfZGVsZXRlSVMzX0VFTlNfOWFsbG9jYXRvcklTM19FRUVFAE4yVEMzV2ViMTJEdW1teVNlc3Npb25FAE4yVEMzV2ViMTJEdW1teVNlc3Npb24xM1N0cmVhbUNvbnRleHRFAE4yVEMzV2ViMTRTQ1NGaWxlU2Vzc2lvbkUATjJUQzNXZWIxNFNDU0ZpbGVTZXNzaW9uMTJTdHJlYW1DbGllbnRFAE4yVEMzV2ViMTRTQ1NGaWxlU2Vzc2lvbjEzU3RyZWFtQ29udGV4dEUAWk4xMl9HTE9CQUxfX05fMTExQ2h1bmtMb2FkZXJDMUVSTjJUQzNXZWIxNFNDU0ZpbGVTZXNzaW9uRU9OU3QzX18yMTB1bmlxdWVfcHRySU5TMF82U291cmNlRU5TNV8xNGRlZmF1bHRfZGVsZXRlSVM3X0VFRUVFMyRfMABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjEyX0dMT0JBTF9fTl8xMTFDaHVua0xvYWRlckMxRVJOMlRDM1dlYjE0U0NTRmlsZVNlc3Npb25FT05TXzEwdW5pcXVlX3B0cklOUzNfNlNvdXJjZUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFRUVFMyRfME5TXzlhbGxvY2F0b3JJU0VfRUVGdlJLTlNfMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNGX0ljRUVFRUVFRQBOMTJfR0xPQkFMX19OXzExMEZpbGVTb3VyY2VFAE4xMl9HTE9CQUxfX05fMTExQ2h1bmtMb2FkZXI2U291cmNlRQBOMTJfR0xPQkFMX19OXzExMkJ1ZmZlclNvdXJjZUUATjJUQzNXZWIxNE5ldHdvcmtTZXNzaW9uMjNTdHJlYW1Db25uZWN0aW9uSGFuZGxlckUATjJUQzdOZXR3b3JrMTdDb25uZWN0aW9uSGFuZGxlckUATjJUQzNXZWIxNE5ldHdvcmtTZXNzaW9uRQBOU3QzX18yNl9fYmluZElNTjJUQzNXZWIxNE5ldHdvcmtTZXNzaW9uRUZ2UktOUzJfNkNhbWVyYUVFSlBTM19SS05TXzEycGxhY2Vob2xkZXJzNF9fcGhJTGkxRUVFRUVFAE5TdDNfXzIxOF9fd2Vha19yZXN1bHRfdHlwZUlNTjJUQzNXZWIxNE5ldHdvcmtTZXNzaW9uRUZ2UktOUzJfNkNhbWVyYUVFRUUATlN0M19fMjE1YmluYXJ5X2Z1bmN0aW9uSVBOMlRDM1dlYjE0TmV0d29ya1Nlc3Npb25FUktOUzJfNkNhbWVyYUV2RUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJTlNfNl9fYmluZElNTjJUQzNXZWIxNE5ldHdvcmtTZXNzaW9uRUZ2UktOUzRfNkNhbWVyYUVFSlBTNV9SS05TXzEycGxhY2Vob2xkZXJzNF9fcGhJTGkxRUVFRUVFTlNfOWFsbG9jYXRvcklTSF9FRUZ2UzhfRUVFAE4yVEMzV2ViMTROZXR3b3JrU2Vzc2lvbjEzU3RyZWFtQ29udGV4dEUAYm5jAGNvbm5lY3Rpb24gZXJyb3IATjEyX0dMT0JBTF9fTl8xMTlOZXR3b3JrU3RyZWFtQ2xpZW50RQBOMlRDM1dlYjdTZXNzaW9uRQBTVkcgZXhwb3J0IGNhbmNlbGxlZABOMlRDM1dlYjEzU3RyZWFtQ29udGV4dEUAAAEBAAEAU1ZHIGV4cG9ydCBhbHJlYWR5IGluIHByb2dyZXNzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU5TXzZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUVOUzJfSVM0X0VFRUUAUFJJT1JJVFlfS0VZRURfREFUQV9TRU5UAGNvdW50AENMSUVOVF9NRVNTQUdFAE1JU1NJTkdfTU9ERUwAZGF0YQBPUEVOX01PREVMX0ZBSUxFRABCQURfREFUQQBCQURfTUVTU0FHRQAiOiIAXCIAXFwAXGIAXGYAXG4AXHIAXHQAXHUATlN0M19fMjE1YmFzaWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjE5YmFzaWNfb3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAFpOMlRDM1dlYjEyU3RyZWFtQ2xpZW50MTBUZXJtaW5hdG9yRU5TXzZTdHJlYW02UmVhZGVyMTVUZXJtaW5hdG9yU3RhdGVFRTMkXzAATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4yVEMzV2ViMTJTdHJlYW1DbGllbnQxMFRlcm1pbmF0b3JFTlMyXzZTdHJlYW02UmVhZGVyMTVUZXJtaW5hdG9yU3RhdGVFRTMkXzBOU185YWxsb2NhdG9ySVM4X0VFRnZ2RUVFAE4yVEMzV2ViMTJTdHJlYW1DbGllbnRFAE4yVEM2U3RyZWFtNlJlYWRlcjE0RXh0ZW5kZWRDbGllbnRFAE4yVEM2U3RyZWFtNlJlYWRlcjZDbGllbnRFAE4yVEMzV2ViMTRNZXRhRGF0YVBhcnNlckUAZXhwb3J0VG9TdmcoKTogdG90YWwgY3JlYXRpb24gdGltZT0lZiBzZWNzAGZpbmRTaWxob3VldHRlczogZGlzYWJsZWQAZmluZFNpbGhvdWV0dGVzOiBlZGdlcy1mb3VuZD0ldSwgZHVyYXRpb249PSVmIHNlY3MAdHJlZWl6aW5nSW5pdCBzcGxpdHRpbmdfZXBzaWxvbj0lZQB0cmVlaXppbmdJdGVyYXRlOiBwcm9jZXNzZWQgJXUvJXUgdHJpYW5nbGVzICglLjFmJSUpAHRyZWVpemluZzogY29tcGxldGUgbm9kZXM9JXUsIHRyaXM9JXUsIHNwbGl0PSV1LCBjb2luY2lkZW50PSV1LCBkaXNjYXJkZWQ9JXUAdHJlZWl6aW5nOiBkdXJhdGlvbj0lZiBzZWNzAHJlbmRlckluaXQAcmVuZGVyRmluZFpFeHRlbnRzSW5pdAByZW5kZXJDbGlwVHJpc0luaXQ6IGNsaXBwaW5nICV1IHRyaWFuZ2xlcwByZW5kZXJDbGlwVHJpc0l0ZXJhdGU6IGNsaXBwZWQgJXUvJXUgdHJpYW5nbGVzICglLjFmJSUpAHJlbmRlckNsaXBUcmlzOiBkdXJhdGlvbj0lZiBzZWNzAHJlbmRlck1lcmdlVHJpc0luaXQ6IG1lcmdlIGFuZCByZW5kZXIgJXUgc2V0cwByZW5kZXJNZXJnZVRyaXNJbml0OiByZW5kZXIgJXUgc2V0cwByZW5kZXJNZXJnZVRyaXNJdGVyYXRlOiBtZXJnZWQgYW5kIHJlbmRlcmVkICV1LyV1IHNldHMgKCUuMWYlJSkAcmVuZGVyTWVyZ2VUcmlzOiBkdXJhdGlvbj0lZiBzZWNzADwvZz4AcmVuZGVyQ2xpcExpbmVzSW5pdDogY2xpcHBpbmcgJXUgbGluZXMAcmVuZGVyQ2xpcExpbmVzSW5pdDogbGluZXMgZGlzYWJsZWQAcmVuZGVyQ29tcGxldGUAPC9zdmc+AHJlbmRlckNsaXBMaW5lc0l0ZXJhdGU6IGNsaXBwZWQgJXUvJXUgbGluZXMgKCUuMWYlJSkAcmVuZGVyQ2xpcExpbmVzOiBkdXJhdGlvbj0lZiBzZWNzAHJlbmRlckNsaXBNZXJnZUxpbmVzAHJlbmRlckNsaXBNZXJnZUxpbmVzOiBkdXJhdGlvbj0lZiBzZWNzAHJlbmRlclJlbmRlckxpbmVzADxwb2x5bGluZSBwb2ludHM9JwAnLz4AIAAsADxnACBzdHJva2Utd2lkdGg9JwAnACBzdHJva2U9JwAgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBmaWxsPSdub25lJyBmaWxsLW9wYWNpdHk9JzAnAD4ATjEwQ2xpcHBlckxpYjhQb2x5Tm9kZUUAPHBhdGgAIGZpbGw9JwAgZD0nACBaIAAgTSAATjEwQ2xpcHBlckxpYjhQb2x5VHJlZUUAIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgZmlsbC1vcGFjaXR5PScxJwBaTjJUQzNXZWIzU3ZnMjBCc3BSZW5kZXJGcm9udFRvQmFja0lOUzFfMTVTdmdSZW5kZXJUYXJnZXRFRTIxcmVuZGVyQ2xpcFRyaXNJdGVyYXRlRVJLTlN0M19fMjZjaHJvbm8xMHRpbWVfcG9pbnRJTlM2XzEyc3RlYWR5X2Nsb2NrRU5TNl84ZHVyYXRpb25JeE5TNV81cmF0aW9JTHgxRUx4MTAwMDAwMDAwMEVFRUVFRUVFVWxSS05TMV83QnNwTm9kZUVFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjJUQzNXZWIzU3ZnMjBCc3BSZW5kZXJGcm9udFRvQmFja0lOUzRfMTVTdmdSZW5kZXJUYXJnZXRFRTIxcmVuZGVyQ2xpcFRyaXNJdGVyYXRlRVJLTlNfNmNocm9ubzEwdGltZV9wb2ludElOUzhfMTJzdGVhZHlfY2xvY2tFTlM4XzhkdXJhdGlvbkl4TlNfNXJhdGlvSUx4MUVMeDEwMDAwMDAwMDBFRUVFRUVFRVVsUktOUzRfN0JzcE5vZGVFRV9OU185YWxsb2NhdG9ySVNMX0VFRnZTS19FRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRnZSS04yVEMzV2ViM1N2ZzdCc3BOb2RlRUVFRQBaTjJUQzNXZWIzU3ZnMjBCc3BSZW5kZXJGcm9udFRvQmFja0lOUzFfMTVTdmdSZW5kZXJUYXJnZXRFRTI1cmVuZGVyRmluZFpFeHRlbnRzSXRlcmF0ZUVSS05TdDNfXzI2Y2hyb25vMTB0aW1lX3BvaW50SU5TNl8xMnN0ZWFkeV9jbG9ja0VOUzZfOGR1cmF0aW9uSXhOUzVfNXJhdGlvSUx4MUVMeDEwMDAwMDAwMDBFRUVFRUVFRVVsUktOUzFfN0JzcE5vZGVFRV8ATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4yVEMzV2ViM1N2ZzIwQnNwUmVuZGVyRnJvbnRUb0JhY2tJTlM0XzE1U3ZnUmVuZGVyVGFyZ2V0RUUyNXJlbmRlckZpbmRaRXh0ZW50c0l0ZXJhdGVFUktOU182Y2hyb25vMTB0aW1lX3BvaW50SU5TOF8xMnN0ZWFkeV9jbG9ja0VOUzhfOGR1cmF0aW9uSXhOU181cmF0aW9JTHgxRUx4MTAwMDAwMDAwMEVFRUVFRUVFVWxSS05TNF83QnNwTm9kZUVFX05TXzlhbGxvY2F0b3JJU0xfRUVGdlNLX0VFRQA8P3htbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCcgc3RhbmRhbG9uZT0nbm8nPz4APHN2ZwAgdmVyc2lvbj0nMS4xJwAgYmFzZVByb2ZpbGU9J2Z1bGwnACB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnACB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycAIHhtbG5zOmV2PSdodHRwOi8vd3d3LnczLm9yZy8yMDAxL3htbC1ldmVudHMnACB3aWR0aD0nACBoZWlnaHQ9JwAgdmlld0JveD0nACBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJwAgc2hhcGUtcmVuZGVyaW5nPSdnZW9tZXRyaWNQcmVjaXNpb24nADxyZWN0ACB4PScAIHk9JwAgd2lkdGg9JzEwMCUnIGhlaWdodD0nMTAwJScALz4ATjJUQzNXZWIzU3ZnMjBCc3BSZW5kZXJGcm9udFRvQmFja0lOUzFfMTVTdmdSZW5kZXJUYXJnZXRFRUUATjJUQzNXZWIzU3ZnMTRJQXN5bmNSZW5kZXJlckUARmFpbGVkIHRvIGZpbmQgc2NlbmUgZ2VvbWV0cnkgYm91bmRpbmcAV2FybmluZzogdW5zdXBwb3J0ZWQgY2FtZXJhIHByb2plY3Rpb246IABjYXB0dXJlU2NlbmVWYWx1ZXM6IGR1cmF0aW9uPSVsbGQgbXMsIHRyaXM9JXUsIGxpbmVzPSV1LCBjdWxsZWQtdHJpcz0ldSwgZGVnZW5lcmF0ZS10cmlzPSV1LCBjdWxsZWQtbGluZXM9JXUAWk4yVEMzV2ViM1N2ZzExU3ZnRXhwb3J0ZXIxOGNvbGxlY3RTdmdHZW9tZXRyeUVSS05TMF81U2NlbmVFUk5TMF85U2VsZWN0aW9uMjJWb2x1bWVTZWxlY3Rpb25Db250ZXh0RVJLTjVFaWdlbjZNYXRyaXhJZExpMkVMaTFFTGkwRUxpMkVMaTFFRUVSS05TdDNfXzI2dmVjdG9ySU5TRV8xMHNoYXJlZF9wdHJJTlMwXzRNZXNoRUVFTlNFXzlhbGxvY2F0b3JJU0lfRUVFRUUzJF80AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpOMlRDM1dlYjNTdmcxMVN2Z0V4cG9ydGVyMThjb2xsZWN0U3ZnR2VvbWV0cnlFUktOUzNfNVNjZW5lRVJOUzNfOVNlbGVjdGlvbjIyVm9sdW1lU2VsZWN0aW9uQ29udGV4dEVSS041RWlnZW42TWF0cml4SWRMaTJFTGkxRUxpMEVMaTJFTGkxRUVFUktOU182dmVjdG9ySU5TXzEwc2hhcmVkX3B0cklOUzNfNE1lc2hFRUVOU185YWxsb2NhdG9ySVNLX0VFRUVFMyRfNE5TTF9JU1FfRUVGdlJLTlNEX0lkTGkzRUxpMUVMaTBFTGkzRUxpMUVFRVJLU0pfakVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJLTjVFaWdlbjZNYXRyaXhJZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVSS04yVEMzV2ViNE1lc2hFakVFRQBaTjJUQzNXZWIzU3ZnMTFTdmdFeHBvcnRlcjE4Y29sbGVjdFN2Z0dlb21ldHJ5RVJLTlMwXzVTY2VuZUVSTlMwXzlTZWxlY3Rpb24yMlZvbHVtZVNlbGVjdGlvbkNvbnRleHRFUktONUVpZ2VuNk1hdHJpeElkTGkyRUxpMUVMaTBFTGkyRUxpMUVFRVJLTlN0M19fMjZ2ZWN0b3JJTlNFXzEwc2hhcmVkX3B0cklOUzBfNE1lc2hFRUVOU0VfOWFsbG9jYXRvcklTSV9FRUVFRTMkXzMATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk4yVEMzV2ViM1N2ZzExU3ZnRXhwb3J0ZXIxOGNvbGxlY3RTdmdHZW9tZXRyeUVSS05TM181U2NlbmVFUk5TM185U2VsZWN0aW9uMjJWb2x1bWVTZWxlY3Rpb25Db250ZXh0RVJLTjVFaWdlbjZNYXRyaXhJZExpMkVMaTFFTGkwRUxpMkVMaTFFRUVSS05TXzZ2ZWN0b3JJTlNfMTBzaGFyZWRfcHRySU5TM180TWVzaEVFRU5TXzlhbGxvY2F0b3JJU0tfRUVFRUUzJF8zTlNMX0lTUV9FRUZ2UEtOU0RfSWRMaTNFTGkxRUxpMEVMaTNFTGkxRUVFUktTSl9qRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2UEtONUVpZ2VuNk1hdHJpeElkTGkzRUxpMUVMaTBFTGkzRUxpMUVFRVJLTjJUQzNXZWI0TWVzaEVqRUVFAFpOMlRDM1dlYjNTdmcxMVN2Z0V4cG9ydGVyMThjb2xsZWN0U3ZnR2VvbWV0cnlFUktOUzBfNVNjZW5lRVJOUzBfOVNlbGVjdGlvbjIyVm9sdW1lU2VsZWN0aW9uQ29udGV4dEVSS041RWlnZW42TWF0cml4SWRMaTJFTGkxRUxpMEVMaTJFTGkxRUVFUktOU3QzX18yNnZlY3RvcklOU0VfMTBzaGFyZWRfcHRySU5TMF80TWVzaEVFRU5TRV85YWxsb2NhdG9ySVNJX0VFRUVFMyRfMgBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjJUQzNXZWIzU3ZnMTFTdmdFeHBvcnRlcjE4Y29sbGVjdFN2Z0dlb21ldHJ5RVJLTlMzXzVTY2VuZUVSTlMzXzlTZWxlY3Rpb24yMlZvbHVtZVNlbGVjdGlvbkNvbnRleHRFUktONUVpZ2VuNk1hdHJpeElkTGkyRUxpMUVMaTBFTGkyRUxpMUVFRVJLTlNfNnZlY3RvcklOU18xMHNoYXJlZF9wdHJJTlMzXzRNZXNoRUVFTlNfOWFsbG9jYXRvcklTS19FRUVFRTMkXzJOU0xfSVNRX0VFRnZQS05TRF9JZExpM0VMaTFFTGkwRUxpM0VMaTFFRUVSS1NKX2pFRUUATjJUQzNXZWIzU3ZnMTFTdmdFeHBvcnRlckUATjJUQzNXZWIzU3ZnMTJJU3ZnRXhwb3J0ZXJFADRQb29sAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU4yVEMzV2ViNFZpZXdFTlNfOWFsbG9jYXRvcklTM19FRUVFAE4yVEMzV2ViNERyYXcxN0R5bmFtaWNEcmF3UG9saWN5RQBOMlRDM1dlYjREcmF3MTBEcmF3UG9saWN5RQBOMlRDM1dlYjREcmF3MjVGcmFtZVJhdGVUYXJnZXREcmF3UG9saWN5RQBidWlsZC9zaGFkZXIvcmVsZWFzZS9jbGlwcmVnaW9uLXYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9jbGlwcmVnaW9uLWYuZ2xzbAB1X21vZGVsX21hdHJpeABQRmJQS2NQTlN0M19fMjEwdW5pcXVlX3B0cklBX2NOUzFfMTRkZWZhdWx0X2RlbGV0ZUlTM19FRUVFUGpFAEZiUEtjUE5TdDNfXzIxMHVuaXF1ZV9wdHJJQV9jTlMxXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVFRVBqRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0lQRmJQS2NQTlNfMTB1bmlxdWVfcHRySUFfY05TXzE0ZGVmYXVsdF9kZWxldGVJUzVfRUVFRVBqRU5TXzlhbGxvY2F0b3JJU0NfRUVTQl9FRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGYlBLY1BOU18xMHVuaXF1ZV9wdHJJQV9jTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRUVFUGpFRUUAYnVpbGQvc2hhZGVyL3JlbGVhc2UvYmFja2dyb3VuZC12Lmdsc2wAYnVpbGQvc2hhZGVyL3JlbGVhc2UvYmFja2dyb3VuZC1mLmdsc2wAYV92ZXJ0ZXhfYW5kX2NvbG9yAHVfY29sb3JzWzBdAHVfY29sb3JzWzFdACNkZWZpbmUgVENfRU5DT0RFRF9ERVBUSCAACiNkZWZpbmUgVENfTk9STUFMX0JVRkZFUiAACiNkZWZpbmUgVENfU0FNUExFUyAACiNkZWZpbmUgVENfU0FNUExFX1RVUk5TIAAKI2RlZmluZSBUQ19DT05UUkFTVCAAYnVpbGQvc2hhZGVyL3JlbGVhc2UvcG9zdC12LWxhdGVzdC5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtYW8tZi5nbHNsAHVfbm9pc2UAdV9ub3JtYWxzAHVfc2NyZWVuX25vaXNlX3JhdGlvAHVfcmFkaXVzAHVfYmlhcwB1X2NvbnRyYXN0AGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtYW8tYmx1ci1mLmdsc2wATjJUQzNXZWI0RHJhdzIzU2hhZGVyT3B0aW9uc0ZpbGVSZWFkZXJFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSU4yVEMzV2ViNERyYXcyM1NoYWRlck9wdGlvbnNGaWxlUmVhZGVyRU5TXzlhbGxvY2F0b3JJUzVfRUVGYlBLY1BOU18xMHVuaXF1ZV9wdHJJQV9jTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQl9FRUVFUGpFRUUACiNkZWZpbmUgVENfTFVNQV9GSUxURVIgMQBidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LWJsb29tLWJsdXItZi5nbHNsAHVfbHVtYV90aHJlc2hvbGQAdV9sdW1hX3RocmVzaG9sZF9yYW1wX3dpZHRoAAojZGVmaW5lIFRDX0xVTUFfRklMVEVSIDAAI2RlZmluZSBUQ19MQVlFUl9DT1VOVCAACiNkZWZpbmUgVENfTEFZRVJTAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtYmxvb20tY29tcG9zaXRlLWYuZ2xzbAB1X2ludGVuc2l0eQAgVENfTEFZRVIoACwgdV9ibG9vbQB1X2Jsb29tJXUAYnVpbGQvc2hhZGVyL3JlbGVhc2UvcG9zdC1jb21wYXJpc29uLWYuZ2xzbAB1X3NhbWVfY29sb3IAdV9vbmx5MV9jb2xvcgB1X29ubHkyX2NvbG9yAHVfaW1hZ2UxAHVfaW1hZ2UyAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtbWVyZ2UtZi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtZW5jb2RlLWRlcHRoLWYuZ2xzbAAjZGVmaW5lIFRDX0ZJTkFMIDAKI2RlZmluZSBUQ19TQU1QTEVTIABidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LWVkbC1ibHVyLWYuZ2xzbAB1X2VkZ2VfZGlzdGFuY2UAI2RlZmluZSBUQ19GSU5BTCAxCiNkZWZpbmUgVENfU0FNUExFUyAAdV9hbHBoYQAjZGVmaW5lIFRDX0JMVVIgAAojZGVmaW5lIFRDX0VOQ09ERURfREVQVEggAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3QtZWRsLWYuZ2xzbAB1X3BpeGVsX3NpemUAdV9kZXB0aABidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LWYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LXNvbGlkLWYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LW91dGxpbmUtZi5nbHNsAHVfaW5zdGFuY2VfY29sb3IAdV9lbGVtZW50X2NvbG9yAHVfc2FtcGxlX2ludGVydmFsACNkZWZpbmUgVENfRUxFTUVOVF9GSUxURVIgAG5vRmlsdGVyAGNvbG9yaXplAGRlc2F0dXJhdGUAbW9kdWxhdGUACiNkZWZpbmUgVENfSU5TVEFOQ0VfRklMVEVSIAAKI2RlZmluZSBUQ19VTkhJR0hMSUdIVEVEX0ZJTFRFUiAACiNkZWZpbmUgVENfSElHSExJR0hUCgBidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LWZpbHRlci1tZXJnZS1mLmdsc2wAdV91bmhpZ2hsaWdodGVkX2NvbG9yAHVfY29tcHJlc3Npb24AdV9zdGVuY2lsAHVfb3BhcXVlX2RlcHRoAHVfYmxlbmRfZGVwdGgAI2RlZmluZSBUQ19GSUxURVIgAAoAYnVpbGQvc2hhZGVyL3JlbGVhc2UvcG9zdC1maWx0ZXItZi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3Qtc2lsaG91ZXR0ZS1lbmNvZGVkLWYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LXNpbGhvdWV0dGUtdW5lbmNvZGVkLWYuZ2xzbAAjZGVmaW5lIFRDX01FUkdFCgB1X3RhcHMAdV9pbnZfcHJvamVjdGlvbgB1X2RlbHRhX3JhbmdlAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3Bvc3Qtc2ltcGxlcmVmbGVjdGlvbi1mLmdsc2wACiNkZWZpbmUgVENfRklOQUwAdV9vcGFjaXR5AGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NpbXBsZXNoYWRvdy12Lmdsc2wAYnVpbGQvc2hhZGVyL3JlbGVhc2Uvc2ltcGxlc2hhZG93LWYuZ2xzbAB1X21vZGVsX3ZpZXdfcHJvamVjdGlvbl9tYXRyaXgAdV90ZXh0dXJlACNkZWZpbmUgVENfU0FNUExFUyAACiNkZWZpbmUgVENfUkFESVVTIABidWlsZC9zaGFkZXIvcmVsZWFzZS9zaW1wbGVzaGFkb3ctYmx1ci1mLmdsc2wAdV9pbnRlcnZhbAB1X3dlaWdodHMAI2RlZmluZSBTTUFBX1BSRVNFVF9MT1cKACNkZWZpbmUgU01BQV9QUkVTRVRfTUVESVVNCgAjZGVmaW5lIFNNQUFfUFJFU0VUX0hJR0gKACNkZWZpbmUgU01BQV9QUkVTRVRfVUxUUkEKACNkZWZpbmUgU01BQV9BTFBIQV9FREdFUwoAYnVpbGQvc2hhZGVyL3JlbGVhc2Uvc21hYS1lZGdlLXYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9zbWFhLWVkZ2UtZi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NtYWEtYmxlbmQtdi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NtYWEtYmxlbmQtZi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NtYWEtZmluYWwtdi5nbHNsAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NtYWEtZmluYWwtZi5nbHNsAHVfcnRfbWV0cmljcwB1X2ltYWdlAHVfZWRnZXMAdV9hcmVhAHVfc2VhcmNoACi1L/2kALwCAMQEBL42hAAPSRA4pbANoGRtoGRtoGRtICsfc7JNiqMoiiIrijwv8jLP8zzPszIvJL0cTi+H0/tDmTlOHq8FQAD/ngS5J9FOAm0iC8ZGTidJSj+2DlwP3Q68H0/IayK/mPG2h7U23uVHIIXvcz1+m/SONzrAjv2vkzgTihENhyBqEho8BzBY4DegAubxhzpczgvL4O9+9qz6xPqMLxHALgwXcZ/f2DjwQtQlVnhgwgAa8BWYQt/5TJr+J0SbxO+pUM8LASmUfljD+L7fe4SGwAwiQFDhAzCB18CLQLp84t/etjlQk/97va6Dv2N97POR9v+fa4ZeR0QmDyc0iNHCAj4CIfgURL/5wG+1bu/0oW982a2iZv8bLtm4VputnwHFhF5G+QYgigMKF/8BABTwDwDBEGzzRjD+hBfAJ2D1L9z3XvhHXfEmweI5cKEBb4H/AOtx1hc/i4fXwIXSo2C74i+lJj0YmdzOzGcXghkFh+6jDyroDd6DH+GFCrwHHgUt7ZOf5o8exQoMeAek9r8lo19dqcHh1HRoPkQh0MeywXHwHZUPCugkdBuVQNQm6gzoFyhI4Dngej74Vd7nQTwMO//Z6x74Ro0fS4+lt8PZ2HJqPbKgWJG+oegSujFA0QELf4CHwG/gT6BPf/wyn+FXfAkLMD1ee57yoU/968tMrgaXU+OZ/cSIiMSiUCikYdmscHCeoFORSUSdgm7xIHwK/0IG3gSvHz6WxMf4ADwM3wDTrz72++M7rSw9mAzcjU1n5hMzHom8jJkbXEflkwI6Ed0bRtQqaBguXOBL8H2Y3/AvnoVXwP2tjCc+00qCLJuJJcQezE4mh9azD+kahMHgD+jjZchgLK8XPaaGBYQi6kAqUbP4D16FCjwJaCLf8ykehUfAx3CyJV9DWVRp4cXsaHI3Nh6ZEBJpLA6Bwd/P56ud0FJmK/s5RtOyWe2oflBDtwbbA+lE7YIAL4Efwe2tf34MGIB62Ou+KF6OzUSTIQqLz4UXo6u56cyCXhqazaXyeCwGhb9eL1e+mW0mNRSaimxlZ4G96DJ5TQsH70kJnTLYH0gpaA8a8CLI+O/zfIsfwC/gVT/73y9/+tcXL0OWIsqR5AiyhHgiTAHyZnI4tB9YBiezyVQuk8qj8pg0HovGIVD4A/Z8OrKujDPTVmTn2MtLJrdh7aiCUBlMIEgsnoQPCN/8IH6FT8CvHvfGj771PZ5i5pgZshxRmo0mw5Tg2feyo7H1xDJoPKFPaFPZVDKTy6PSmCweh0UhERj0/Xg8XlAMHP9CfCI8kgzyrpwruZ3UUmbn/eU1k+OwflJHJhEkGC+A5wD9zc/5EL4A+fv++dVoh0YH1AMafn48QZzi5pgpsiRJko8lRRTh2Rejy9mPpNAoNPrUcGo4oU1o88l0Lp3KJpJ5VBaRRGOQ+Avyejxj2PhR/CB+DEGEY2DIb6RHwivvSnAotpWZS4wm38GN7hJ1CW+B+rdv4lvYH/nSp3apXe/0C5Z2RD2iHhph6MdT7AxpjizJyBPi2UdTM5JSo9OoxhQqhUqfUWe0qcHUWEKVTmTTuCQigcTej9f0Nr9M8BK87FB6JMPIDyNIUUwMEYr8yL2SXcrNRXaTE6FW0AywOaCbv+Vau9aut/qtfqlgqsc0LBVHRZ7l5Tk4NI1qVJ9UJ7U5XUqRGsTnL9mjbrnTrtQb/Ua/GmBoxzPsBGGOlSNHk6FLD2g/4Wxjs9qtdrvlcr1csPcDXPLBgQNtdUvdUrlTrxSs8eEsQXIwb7ndrDfr1X61YG2HNrwF4YZwyd4UMM0HB5nkt05SNTxFLi5Z7OmEoz/KWmr56n5N/dny3iAmkhJKDZMR5BKZWY1sFasrynQcq+qiwickF3q4zEJrO444NvvyhFsjNCsCznm1VOzthwPSirBWFc+mvrfY1j1uPm5wW9wqtc9sSAeXqE3mWBthUw2ITOclbpPDXy6DdxMmYU0rnlLT/FBLJB/DcsMtUuvMklkkVGyRNqQZd6X+5Eh577F9Us/QQqoVbNaxEzazZpykozvFwoq04I2HA9qIs+POxLmoD7skiCWOAbdG7cd2io0peRkZPRywRpQlYU7XdJVNdZjIQClc5lHL6P64xC0zy6PpE5UZxNvbQvWXckcObUFacV/qGq2rynuLlFpeH7HwrNvjDrfKLIm0kYIy+fK4Umyr9dSNM2INiBPSjrGma4pvT/RPCV5eieTiF8gepvG6wW0ym0ptfC4G67hRLH6lNnXlfpQRaUFc7zacIV/Q1kbKwzapSsawD5mH7avr/rZHrU7Hcq9oYLH4Bl5lTVtR11NnwpJ7kSa89XY7n224L/Mp7r3N9Y6dYqIy42TWiAv2MQPjvj1ukSVc++66Qy0U201tXU59GTvKhDZfrQhzsrAnEVIOSSbGhjlJlYhjHjXwjjt8AZGBn1gTyP3Vpjhw62ra0sibL+Q+rPl0ut8MmU9VHyUbGhcU/UPWgfMCtTUqJ5OQV7iJLZHYYlP47ri9KG4qq7ri0xY0X8KKs18uB9yZK64tU+ekfNC+vO1Ni2mFzBJzldk6hXRSKimZS+SSiB1if5g8tqkNfMpy5sgdiMMJdeqJxaamIcHYJioS1hjWgePCoKBIVuLdS8TSMDVLvVKr1CekklK5NGKL7fDtPWFV0xVTD9psRpzsQad2sc8mE1R5JY55d2gcGNKKqUT1scPm3HzN09AztAz9QrfQK3VKbSaNlD5s7k3FjTIZx3f4IiGf77l5IZ1NZlUY519+K8Qz8y1f/u2fMMDgPXyHxyDD0RDOu/h0xZmSyhWbyiWVWobe+aKvrbiB3Gj6jjIlVKe2rrhW9UWB3CR2CimG1nmiD+QGE6gb1qKtaguLd0fsk9KLDuvoDZdXjSCRVqQpd+YGvg2xS0otdc4T/bBCDiP0lwMenVVWVmwyl1jqmyfyZYMcxQ1lMffL4GXwgLjgrUhD7ksYNxW+yaWV2uaHRl4evCwQS+RIbjyv1ZzQVmzqUZd1pU113CK2Sk1DD7XGeW475EBuOJe7UlYr4oJDm3Gm3J8c+BcVYp+QZughkNlu6zv+rqQZacWbkMfLqB1lTJiG67ripj5MJSUZWijkxtVtedlg80rVnzEmkla0DXHADCCOSEvuTn3ayqo87nIJhg5igci+tS6Om6H9YYsbzOv0dDpRW9TXnqQZbUQcEFekLWMa+RX3nkZsFxpoJdIav8Kxjplu28sOOZbXqf4obOsa1Z+w5q6cHWtEXHDX6+2Ct+Os+Zq2timxvVL/kEda+Q7m8rJCjuRVaktx8SyOrerPnSlL0oo44a7n2w1tyB2ab+DhG6XuYUE5oaBMVOTVCCvEQ/a1dXdaIBa5IQV+7mOvUnXxLZ5lbcCc+5J2vAl3w9oSNmV5TyUknrOqjJOwRFxi/QPWQfPitj2scSOq/OHvfn9cfIN8cS6uXXG0rK6prhFrypC2oc7n0xVnzhybGinpxJRgziYVk5WIa6x/7OBaN0M73NCgvvON33var8omkluMCqc6Ul6cu8q2rq7pC7ova0Xd75dD7tTVh31DQ5qxXVhMK3fK6QRVoiqvRlpjPSz74rZBjmf3OV4aZL1KyTaL3CGoj5SHyotvWxv5FOacIXNAII6pc+8ZmRKM/WK3mM63yukkZcZJWuNXmNblYZshH37uX//5xde962VqGFKJpbRip9gndomJfI+gxCkP3MvC5tOdiRMKbVS8hSfHhlRDoinNlGLsF1PLvXJCUZVZITAPnHaJ8uYX+fBvn/rK7/3rd2gdOofGqW/qmpqmniHFlF5KLfaKjXKbTyOqjxVXp9qMx90c9EBP+/TQPPUODumGVFOasWFuFhTKamQHF+mT9/mjj3mXX3mTH3mPz77G/kf0D/1T99Q7pJySjS1zYsHJMo6sURHRD9FCdBANVPvUPaUcEw2ukkGPi17nb57mY77lUZ7kPX7jlW9rKcGQZuobmqdEhWoxudgxpR0a6IW/+uvP/NAH/c/3/M7nfM3D/MqXv+Onz3saJ6Ow2C/1TtGTtEjOMTc/G05+/Nff8Qy90APZ/Mub/PePTwrrHzqvFm4+3zpEPjNP/q0RUc/bfEpqRbISQ6qJjUXykJykdTLJlGpIObUPPaQ7GnqeL3kNGzRkIHqfl/mN1+klJ5RbJYf2iYXoIblIzmrBqXv+9PrbHkj97oc8is4HvVFHHnK2XXCKXkxemXGTF3uGZFPz0EKof33uh+98DvO7/M3/fFEYpDVmiaBKVEg29As/UbmYYko19Y6G1Md+98aXPvdFfuVpvkeDiaUEw/NE/7EqUbGYYGwakk4NpPr9e6/864ff5GO+SxuTV2jqnbAYZsZLVCmoFRkSTv3zGfCnffCfv/2Rb/mcF/oM3xiIS9wKWY2oyiiTO8VuKcnUOriax2wXl/GTlMqpxQRTulm97YtPfY9H+ZoH+qPfwA3BSVLmcymmxvmhB+M8bh0vETKrBEdBne8Xu6buoY9Yr8s+ycO8zxvNvjJwrOMVzlkiOAmq5FaxX0g3tNB/Y2NYSD7iKq9MVConFtMMaYc2yrq+9xrv8Suv80WvQXfj1vYOEVX5dGJqIdXQQf/r9r46j1p4BrKLy6uT1ModU8qhi14v/I0v97S7bY5b686+OxjmoX+4xKuRlPleKcnQQB/kBrtdX/e7A+doHzIQmBlHObnYNzXR/srv+JcP+gwcQWx2t6V5ZV9Yh/7RGuMkJxQbpvZ5bpD7zQDrOnAetvBMHAvRSVolqrOJph6y/fRNvueNOIAZWt0Wx7V1Z94drIdbY1X5Zql5HrktbrnCLvDLA+vAuHANRBbyImGdoGBIQbz/vs0TZYkcQw4hRxD7w/qyvKyu1pV9X2FWCAqllPNapTa5RRq5RO6wG+z+vD3wrgP3QRPDyquzySf79B8/5X2UG8qN5AZy41jcGHIEOYDYHnanxW1pXpjHisRE8xpZjSw0C9U+s06tU9vUMrfLrXKb3B63xe7QC/zyOnDi3azKIclYsRpX6PPqbF6Z1+U1eUVuGDeGG0AOHhan3cG4ylezVCx1mpVmpdpoVkML3T63za3yS/zYuWA/9RvPgaNKnUqtUauG9WltWpXWopXHoZTVYrVbbrab9WK/WXDWIyvGkmRVsEfbbDZrxVo5XvcfIwZA05BS7HEq62raUtQjSB1sDbdQaoc181qxkYHh5//LhKPs1WuAFqHmoMTiJrFKQA1TIp+8rWeNVlGXIHmwM5yCVDgul1lJD8T5/zRSbkqlOECDQNrAVAKPgcYhrZjCq+iMZlGfIH2wM6B8WDSxlN24+f8zkuvWaw5sFKoI0DMlssoqS+GDd1GnIIEwHaV4cpfbyPL/ZSXWqbR6OkZpRapmOXFjKnhAsyCJMBnhNzIT5O8lVerrF6gOlEJ0GKQSN1HeQvx/mH3jjwITfbNqgAC+BKDe/+ummlXbJ+AAA2gT9v9nnT4oAxSIGd98lOpjRr9BCBR44Nf6G31EJiN7AwnaRQrf+1brg/UtO7/IFHkwQcNoAQLD995PVaXwchH1CQ9UcMAXgzLoPKgfDTWKFyYY4FdmclA6KJ8hU9GHDghAgU/p2dz2IdiRznMCKkFn8C1OUMAXhzwXGaESBjUHBtiAsWwWnvxUeC80PjOh2JHuMoPbqHCCTER2BhIGJz4gwA8zcIJiRi4xKxr8RoWD2jkBmUTA8EpiyEkwBajSgrOx6RTpKa+z6ialc/q5h0bQKfwBSPBMoJC8i/HZi14pLxWdhSWD16RyUD23kH1UYoQICHlLsVKcHCNDRoplotnFhuhVpplnJXtJ7ASWop9fVjOqG9TODWQbkTrUJ56DB8DH8CF4JfEI9Pl4S/EYKXIcMQtNgCkvOpqbzmzoNb6J2EZq5JLdBIair7haWjA4TQrn5GMXkTzQKhDALB6JziWIGBlyFDGSEMvDkiCK78yDyd3QgmAgGWKdWDfGhdxEaiS0sswcM3mpuFhYMKoaFI+JiPTBBQ2oEUk0CovB4fP7BDvBzQ6mBzO8/FCCJMfHEOPIsBw88Z13Mjaf2BcI/nX4PHjhjI8dSG58C6mNzMi7+YWSn1kwqRuTEEnEiwBlPpNM5NKYJCKFRaBwK91Ko1wNLrQL7T69z6/z2wQzO5bh5MdxXBwRmn1nrrFb7BK9Q6/wC/z+wL0OnsfuAwdiG89GYuY8BY+5fWoT0OUz6UQyi0rh8SekTrHSbFQb1WpoNbbQrZPb7C6/yA6i+JdSyzazzGVWmU1qkVqjdivk7sA3D5k4L6NmqsxpMmqECpk8+3VWanVKlT6jS2iQ+TRTKPVJdU6b0mUU+SQue8Gdha1OvdEOaAiTJtgCczk0Ys59CQMFNCCCL0EH9Mss2oQYCAEKzr4tVQQE+5oZW2jABV4D3wESnJSz+sZUOcT9VhgADBMAwVkk2X1Fl7NjbZdxgAp84AS/gh5y+dXgTke4uRa6M2VIGpHngRcBSogSDOWefOQdWCpMI0kr3oC6DBYI8AWI4R9ggc/Ad8AErwKXlY9mB9TL8bI+dyUPAAZYAAU4UIJXwUuKmUgeK0GYHc+uNLtSBufcPKtfX1MYdF/OjLagLoNWgAQ28CBQwS8lSDQXR44eT+8KCkkeEt7q2Ff1FY01ZcdaUMcLQYUIeOBJ0DspG0eQ4mXY+Y2ezR75F1k74VNw4YUFYCAlaDIMUX40vxopJTlZ3M2xevUF3ZW0YY5Xx6BNEIAIcGhceCwqQJRgybBsFEmCMMFQbUpHztU3XtIYc+ZBDcIIdAmPwgPAADO7FxShmUhyHC87oDUy55O8nIuAc61OhTllRRyvBYmDWoQTBnCBmwxMRkuP5URYNoYkw85tTAtKbgbJvTnHS2M3rbBfxKhHSAEBHfgT3NDkMlpSgCXDEeRHk5tzM8OSq+Qm+Uj+kW91aixp490qTCpMG5RckGCEQJNAo/AsmGAHV4Ob0cXsXFCC5eJ42d2heUEJ59hXs8Y7caNIscLEwtbAblF6Qeqg/qAWgTbBAl8Cn1nPjIemg1OTk9G98M6+E+EI8vi9pz3rSffnP1OOwvGbRRufCdSjY5PPrOTkvCOXynioEqgTihOKW8WdgclFiQMSCDUJNAQ+BEJAPjKfWY7N5kaTg9mdfWZix39/IwN/WXG6qm2l/XalVCvbtSoaCvLJeem+eiFwEbiIESoSqRIpE6gTKBQnFTcL0wY2B6UYtQoceB0RwYZgQ0KxoNjP/iPjmenQbmwyurNv/CHPJ77uX28yvc6EfjF2aqlQLBIM+LQ9i8OR0dBOs0PLwwcQrBCrEKsRKxJ4CRWK1ArUC5MJdQNyDXkGPcORbqQbvYpeRK8hWFDMZ8+pqTzKjzz4N975wr8962n898rsR9/4urpmw04s/G49rbnxOBe+hdPRD/0PzTmkq8KuqPkzBoTiSeWobFxo5ds4AwT4NXJVnuQ7fuObD/zZp0oZVfFzjy8UvrJfn3vhL6V/dL0KIcAgtVBhOhEC7/A/v0O7jJhAsni19YQlaUIjE5GOiz4z20R04h+42GVmn+dpnuXL7/Ebz/zew76EO1N+5L9ffeTrSDRTnkqxatr7wG995fNe/xNi1B+gCOHB6IVyWEoo4y1ubWm8lBtun5nXiE7s6yB2jx6o5D++VT+M+VSbb3nzh3/jlb8jzW4XfusmL37tP//3r09xl0CJwGdURO6NVlRfzoa1iKATj80qZiVWQiPjxjyPoXeZvUDmUR7kNx75tz+pXid9K9HMeFeSnVir0uyD33ybZ3nyg4e/s0B7UHOQ4jaBEqHy0OIw4j8U8fwNC+mkRLbF9zfFwZLqTBkxN3QD4eA0LLCTkIyw0KvMmngQN7+y8cbfQTyHH/qcd/nyd9/5u9KeUrl+Z0TzKj9+7COf9gYA4UUGphMeVLwJEEC/Q9fQMPVKiBan5s2diKNV0ChqEh402EUpe0lNZPcB/CazH3j+5UeG31I9zSLEb/igt/mUD7/G72wYfs+s/yRknn97BNAhbFBaYUJxGqEiQZTTQmIKo7i41eXcizgWIYRwVDWsl/wMM6GR5EB+X6SWAxPf4Yee5su/8b63aTQK/4KKDf9T/Z1JZ9U9GCgywLzIWz9jAS5ILGwUN4nUhxWfIkTP49Ay9blUYo/vr+ragsaMLVbQKWgTQaed1A0u02rRUWTl27gHNmpN7DzKbzwO9cSP1jwosNj5lM/+7sTaP/nTX/EkfsP3fOkXAQZJA1vFXSL1JYae52volxqlNHJ3pLAsDdjx5gGLV0GfqEXUH0gYlDLYRCagk06qZvWSr8TMtRBeR1Frgosv8Ubv8huv36Sfi3gPSnDxJmi+4zNUqN9DP4UYKXje/M2vUYhRd1C3KGVgMoECweLQwQYnMHgNL/Q79EzNUjLbIKjtSvo63jp4FyjoERl+UDmqmVbL62Q2svMgbkt4Dn7E5/yGbQN5XuSFKBLwgdGXPE+vjY+AAoQAYsuAFydQIvwHK4Jeh44Jub04VU/aQmiRgi5Rg6gxGLp7UDc4TK6yk3EfQi4MB/jgOfxGq4WCiL95ks85gAa/UwdlNwMUsIKJ1r8JHwLdAYpTCBI+UPEjvsNn+J+/oVtIZtsjdc2VthI80OAzoE3UIYTunRQNi+VltoH8uC9wuL0veJDzHSxAAB/C76ioDmhAC+dPTqAALZBAf1C7KKm4R6w4rHCCi8/gS7yHP3qfp6lTSuNTtsWssfApdLBCxJENdMJRweQos3GvW4EGoPAi0ByQWJhI4BxeYAGEh/Es3sR7eKPnoWFIZJN39ZwN4ANgQowNRhjZPqga1jlGsvPGwEK9gV1CxUEBL7RwwovwHnyLR/Ef3uhx6JVSWBWVZSxAAAAY4T/4F7/iS9QdSEUmnhRMbr6BLxCBBRDgV3gSaA5KKFIcGICAFf6ED+FhfAYP4ol+piafrLEHBAAFD07QHkhEJhxcReYBgg404IUY9QoUhwnEkAABmLDBi/ihZylxdV4DFPAGeAK8C5/Cj/AcvAr6A0nojsnFHbgABArwKvwL0wUYqAAEGPCCCST+hw5Z9TRgAQn8A2AYwAPAxYuofVBlEmwAAn+AN6HGwAMcwIAEYDDhxv6NQAQg4EAGKBCDCyZoml/BCULQgBOUQAQdiGHbgldBClDwJzDBl+BJEIL/QAVgkKCwwIhI0YKEFmK4wHdgqSHSM+RBxWvggQAgwIEfQVGYZEKpVJMZnvzH6GjEm9jABQVQIAVLqXmlZkdo6AMKFyKsEKWCjJy43BiBSPGCBAkkoeBwiUpOUF7E8z8vpOI3CIEFCACNzOUzqjGd5uUzDU8OpIH2KSqhAgKKyuXTqQGdck1YbvIdIpqgEy8MYFQ6X/fIP0hOYvIan5pIhAgTGAqLR6ay2YRCpdIvzx+tcGEBuidmX2wT4wVttyOkJE/JzzM9+ZBLffODgQoQXICACYDF41HZZEKf0pFXeZoH+gte/AgFcECRy/McOhhAqURWyVtshPIMOXSPhhEwVvgCaOBNUCwejcunMxq1QsFP8iyP80QsVFCAA2zG75tDkID6ktabg/PwyUtOk+vkQbZKiYUEg0PzdGCBASPxaEwil0pnM6pR/d6z42UDB6a8tB/DOSpYWD3qH8vNv7lHLi6z5DI5Tv6TH42YTkorMnWNhxYfQgW+BEDkUZlsMjWg1ac5Pb7kZT6I8C2g8Ntlx+oa0uWDOHgVXqm3pzDqi+OV1bf6VyQ35yo2uQ/IPSbb5xkPMF74CYtJJHMJfVZ34Tc/bv7IAwPgd0p1atkwFjPXq/5lzj0Kk8KoMOvr+sJ28w6T/JzP5Dy5Ed5Vie+Qm8RUYqPEfPgMXBAB0rhMPp3VJ72AzwT5lef5Dix6ZatQJ5bpRaIxv/sDAm7/2VKmMcXqXB08kqPk5EQt7CqLb1MdqTBqfI+0kGiMHsRvAMN/4AccBolCIzF5dDKppmf1Xjn+lx+KvetZJPxG4aacNHN+WAG92+ueJWey5w7dozEprPraeGl1b/6Rk+QreU0+VG1ZWxstDpYW5+JfVUcKBBVym+0UHBHfQQd+wZ8wWBQii8zkNDelHjnC4V3EAFvZqdTtKsk0XsREDELd1z52KtqKNmNT5pRBd2mMCuN4bfVwTs5fcqD9GXvCNF5RXapTc6vr2sKytisv7pEan8imldJMPfQkLOAD+oK/IbAoVBqjt5fhX7q9cedLfAk4Vo3fJ1Zpr37KazgCcblwiCPeiLfizWgz2o41ZE1JY86cMo2dGsO+OvKSfCdJU86WM6asuTt3aEwDJn1R9WuebXlXYRX5xFL6oVN8DL7erwfsCX9Hocbvea/Hv/4/DVE4AH7vc097/VellMqGZZ/mVcCAzD7T+NsBd0AdMKgTFnHNmlTWfZ2FwxwxR8QVccbjLWlT2pi15ywqs8a4esjqxgYhwxff4c0wIwgfqHgOL/7gBilIHN1DqB98x2Wzx+RYYmqWOqVktkNMHjc3dWVF9eQsuLsZX1YSP+JD0B7oC4yCSj12zl1zklG1sFBy8y7GdQS1LVDQJjbYRrdQqod1A5PZIPQ+OC/1CqmkNGKHry0njHjbCWFUFH+CRIa6iCRU+rFzziyT10gt7NvG4OBfqCCxwS46/eA5+gyOxYPRD83QZPvj5qqoLuXM55NNVdAYEJGASjummlOMSsVV3kEyuBrsIRRPi8bG8ihEXFD0Qt8TQ59rsw1yb1VRnaijQV9scKIDvaE+qodIPLbN6QVH0UNw3hY0idoDSYMJCL+ZsWiQ4Yne52/ol/qkNL61K+Yst0SFAONdZOCB3kAX1T+lm9tlVZaBTThBfyAd3TswFhgmWmoRE0crODRhhBehAw70ECnnZmmBqDDCCLqIxYKCCF9kQpreUimUwMG3+Ax+xHOgeUom/wYowAssHoeEEq/zGQl4gQADEEAANngOP40siMnPF4kIYao0NqPWMImKDD0UIkawerxKN7pilW7ZRimdSS91Da2jAfJpjfqoWPBIrwTPjksyPU80AoVqFUldWpfQ7YcZmwoxkVdKLjWNkIjPQCglKqM/5u8a7oVw4B2osn1SOte0oJGanPqI0o7euFeugtwi9hCVmuMlg0OjxoZv2wOTeylULL5VjdglpRVSTI1DA20wuxWZn3xWfdmetwfSI4k99aceFd8ktkmJpZ6hd1Z8CO9CtZpB9Q2nRupyCrVWl2OZ7wHR4jtoTUdukDth8wfl6HF74d7IDsO1uHd8l+2U0otQig0pTyg1UpXTp+x1P/zmW4dM1K7vYTLhiEfnL+qzdvREeihPamtjtUKaoXs+QwvXDSouA5icOqvU3eRjRvyKGCYTSWX7YBYng9U/s6bUHTOOvKKvCCQuf09s79sLueka+rR19TiFmEpKLTB+hY3XbDeUHqlNKvVJj39Mu/I3X/QgXkWKvk2k2w9fowyEApZhFBaDSCDzp+G7+ro9ce8kB8QNccVaMwbVpbnV4x6xUUoxtM8KL2s1Q9qbBqXGKZM67T75Yf7nL/gTMfJX/W2XUrg3qnzOa2hx+53GrC1xSF2v+CMKk0CntvfRM9kBc0Ic0VakIWfLXa+2UuGbbJ/rGzqDChyuvcqb/qTE6XI6Pf3rdX986nuQiFE7lUQ+JsTPmDWmTbk78oy+YlAJhPo2eh29EuDul9HL4Pl4QF0QN7wZa8gZc3++pPmVxVV93Gb7pQ56E49Cbr3CrrHZtEa99aRCaXIqteGm14FY+D73sm89ilRCofzOY2D84Gd8bdakMW3LmzKHzDj6isGhMcj8UX3eXjkX1AEzfDyeLwOoG+KMteSMGYvq1xZXBXKflEjgyK/6jFrbSX/SozQK/N3T3vX3f+lz898cX/i8r73+qdo+acC80Z8A4flK3+M+f8qctGZteUvqkDxjcHgMPn/ZHomSRjPaijciTqgLZvx6vd9OmCvakjMnjOraqsZ3S130MbD61Rqzyqi1KU7KkxKl0OWvKfQfHB/4uo+96k33z/w9TqHs8dY1jz5nzRoTl8w4AonIINU3fsaeu3Nv7kzZcpakIW3GGzEn3AF7veCOeFPOorp2JWLC+RfWvUqj5qS/qLP6GrZ3Pekfh774bd4Dx1f/Ng1hnsNvsLX6voZlYVkcrY3WhuvqsuZVnfqSxqIyaK2ZU/6Ky19H1VXNqVNd+orCNGLQ3Slrzpa25M24E/p8RB1zxtEyIZXwdrUr/Qqzzqa7qFL6zTc+72W6ky/6Ppf4u3/9qfSuR37IA72K7ZvB2egzf/i5rqqr4m7AqrMoj1nFV1uWlqVtaVvZFtbFkXPkMBo0twwOpzedlFeFd1dc1ralzbF7VYh1lrJP8yX+hQfHT5/5wa99qoZ+y4ugX1ci8uMH2f5G8n0P29gSkY5iiHxwoTVdOPvUX35P+0S/Qvcq8ruQxe/B8dEvPo1c9J03eEwYmADhSzAheZEH+Y7XvvSFv/rzgwjx/pXWO2ydbzufkMXZhz6vle3WnH7sDzQJDwAVlJDv+Orr/nd/Phn5j8d+8Ev7m83fp6aUPPnFz73//0iuvnKAik68Cici3/0eKV+mkAxp2Nkl/DjnFRWT8Cdf9iZSXfWiA+LFi0CAFO+THT4xYD5r+EXePJVRrdyVzWnn9jEFZag70CNSaI5z3uhD3LkPSh/74B9/+Szds7hLzI1RvaEOQZ8QvobZwwtnl/wn5z/uprEWdpvypl4mOIyKxwRkD5EydPAnrKwP8uffOX3+NeRLR95knJPeqNczDQrn7ikSAUMARRrE0B93NdFJabueLectl1VKyAN0ZQUIu60ZSSwJpgBXpD7dlBprYVdamIme4sKCwVE6949NROJQkxDhXdAfOPI1v+FTqF7GJH+KEgW4QsW5OFhZlTd1i5W8WDWnHVNQ6agGAcK3AHvjc4W+xMPAv/ZD74+svFPMPJKLwSlQuptV93yDlcW7qRDcyI1mhuUsMiqbU49piMSBNvEdPAuzZ+K0+A9YyedoKs3DE+BKkAqc/qa+KS83rcas+kYLi3dRORHciG1W3ktujOoQALh9NYPrfR1f8ir/9Hh+JEeOZaIJUKU67U151B01R71Ra1WZFXZ1YYEevTDvIyQ3ciNRyVtYMSqcU1DpghR4//2dRwH74mef/Cj/7XgmSYzmoAo1iSwOgdRpBlVHxVFp1d2ac6y4qOIQLPx5+MK9D55YJ5IbsZFp5h3lxeKKwXNuIlKJN4H44V3QxG/y067UKwU/QZripcixLEyxKqvJapJ6NFKJVSG1R91RcVVaFXZtbVFJ7/f4NYKLYCJ42BH0AIZ9ILzxbgRHUivZVXSY1Y4JAzpG9H9eBf2853652pV+oWGneDlCRFleldak9Wg1VonVYPVX5VVx1dk116KeWqfWuW0yu0vv8pv8IsFHcLFjGA6C+EIySHAnspcWkO2ixKEOf1Zb7Va91O/UIypemlylUSjzqrwmr8br8Pq76jZ2LYqanWqlWunWQwlyJAmy2ECsXnxjs1ntVtvdfng5pLBWs1Jts5v8CHIIa7Pe7DcLznZkw1kQrYjWvH3xcigHX/YhuxNZK958ZyAU/Por5qM+iQ6zncPbf+0kyKj39SgO2CsjRzo0vtMn6zMkrwX6lXIf5bW7rAiRIktxMwwFvw6Txp4yJc14CyrHzI9nh7Qbg34WlbKefdXI/IIoxJKi+TgC8rT+r6CQuGDRvTk7GsnIkaXY6RH1PszZHNO5KMfN8AsaBPrf5XxCdsGgMmVtmNPJ8F56LCpBlGEJ80PjW92A1IIDEX4mZWfSiLmbGOEJ0XwkWYqh4Bcx6BH+a2TOJ7r2RY05Z8XcDEyvxccCTBmaGMnJEKcHVcUGJBc1jJoO4VtQdA6YhuyIu+HgZHYwPJeUYQlypBmenjClMKWwM7BXaEBqUb+oO6A/oEX478m5mXlReVH35A1op2bLwd3ganRBlCJ5KZaSuO0MXDzQDo1L5qxjY01bkOynxlPTseXcbnI1uhnei+8sNEGKRFMhRKBGnEacSNwlbhOmEyYUtooSC9IGNQd0jH+gHh2bl5e0tgfJgmY/NB6bzg0nR7OL8Z2JZWipA94B96DyoPqg+pACkQKBCoEKcRpxkzCVsFGUVtQv3gSjIqEfnhoZzAhWFCuKEcWG9qFdSAY086H13HJ0NL8zcy/ZaleLteKAc1BxSHFAXWDCoM7gNWQ4MhracZ1f+QZdwysDLEPsaC+qCQVz014S6RnCUa47Ztdqkxke148R8sZVqdYJZtNINTtCQpplr1Aq1ullopFARk5cboTLaPSOvYuEo3LTjAQOl6jI5AS5ioZJe5VKuW5ZqXym4XEBaXABjTXrxlmnvcQ1Yblx7RDR0M8srVQpmJ2TnNT4fDAIvXHdFFLiSnGdZ3pcQ+f6plmzWKcs2WXS4orhcQm5MrjofzpRqu3Ji4vGpeMKgsH5JHNp27UerHc+L7O4ZFw4rh/XkSvEHjkhrdR0ze988MjUaLW89y2jqjj07FfEZXap2Lh8wjeIiE0+1y/0DK3zPiWyudR4OnWsyYyLx2Xk6t5iO8QmKZWUUGqWOsaXPDKVUGd1+uKCuEZcKDkuIhdWlU1tw6axPVIyl1LqFprmef5YVCKdTdlyZz5hUFi0qm/o2txF4lpx1biGXNRVdQPnSGlTXNT37rhB7JCSmZRSw9A430sam8sirTg7zpCy5HJvQl9Sjnybh11k14sLyPV0PVsarWhLyqLiVvyqwqa2KO/tYY9LZNIKPfM9IZAYNA6XSKFNaBvWhjVijUgr0owz4+woQ8qUOzPmpOrYvMNV4tpxJWNJmPK11Jl6M3e6oC0NlnRFxa+p7MlrCpfINUuPCEQSoz8c8GYL1oS1IY04K8qOezLWfEnzruvsEtKEtOFsOCPKiHtxN8aOsOMrqStdzdZzFVVZT9xSCH3zIAR7xd9zp7vJeq+mK4e72Xg13own48V4em/1s7ef8eslXwUJFW2nuji2RdWfu+ykVs6R8MTBsNHb3A6ArkssPLiM3CCoryq7qroymIhSKTSzGPhh/Da51Bdokgi6tskmmOkntYPfrGhgKzMTG3kX8vsofpm1XUq9SNQgbFgzrpfXeUeplXUivg8ieMk9AJ5C5sQm32KOllQ/EYLD0AkI1aPCWdW0YnSWmArNjCPhgQw7lt2pAuj7BKqlQQ1DYlH1ZgkPR7cQD37DonHJTG7kjLHQQwlDbbegSe5wKmdhwugW0sFrWPZdCDCc7DKAHsEFihMJ1YcOaJzaNEZ98asLuhtx9Ig7COWjwmHR5C+wFVpJbuT3gfRKY9A19UsJxVZhWxqx460F6UNRS0Y/y05uJD2Q4zf6n984zXpSCzuD20QKxA2S2rKkHqQAUcLA3mAiOgGldFaxlFqZJy5+o7Z6L7luVYoeoS6xUqB16phSih2C8q6or+SNZrHhJkL9qHBaMq/zrGQXQgRr/EO/GLNbJ5SKxHo6hLoDFKgQLdA3dUvJfHvgV11pW+EDOoN6CNWD27hedhSciLAD+v+1GmazThawVZwCZA0u8Cd4FpD+dtH+hnvrs/yHP+El8CT4FZx+JXtbxntfqKD0qViwQwc+Bfbjr+uSH7wF3gQ3+qvP4WF4EZxqn6tfjIGb6YXXf+dbD2zV/7tLfMG/cAejH2n0/5ImqR1q+oP7dsj0HxQOizwjh5J+Jg83c8Y0dKuH+jWMx9fUlfWxOfwTiAQWezmljSl7wqTbqlboxH91eRT2jjuaMxbNnbeRKYO9oUS/j0n8FXnHnLLW3KF6lbUN6SnCoP7/SX8+Ywbytpw9XykglAgaxf8VugQiib6jLllrxqStrFFEwwaHpcOD96iM7A2kDjUJ+r+/6A+YDBaHwSIPiWPKoi7smOZlc+PCaeWwdDzUJ8K+rI9j+tP4OYHKoHEYNGYka9Cco6yM0eg2rZzVDt6T+jkN2RpIH1L4sQ/ru0KBzOBxCDzmmrANlBJy8kutwdBiaDGzGFmMTGaXic3AaF41uY3rhpWD86CATEekESQ+rW/DR/09g0jiTzmrFo8kSZGpyeSSw7ncXm62l9oLDWYGI4vZZWAzOk3rBt+5i2gW78v+qMFlkRcVngxPjOWoyaQi9XgZOxYdSw7HYmOZscBYWDjv6/hVmSy+828FhWjCpFOmO0VKlur3SYPS65vyV9l3quTr9exS6dTL2iQarkhFOkkoVEkI9PXqaU4ZvX6dOtk/X69nxVNcU2m2kwabt+nXo26gPGS5jOqb7qAR+PP1etTVdYvzt2PpNOw9oy2qSmyTlExIVJzUN1x+nTL6erg25R3b5Zcv9notKr5hLq3ULxywSqQmrc7r67SZCPT1co3WdNU9eZBaqDSqsHq0Nq+/l8yP/PV6tOKuhLakLCuOTXFPHqaRamwq2wGrRivz+qTeMqeHRhgNd9QZM4o94k8oTP6cvh4OWBPuyNhSd7o0WlWcI2yTS2f65nVrxvSnjDn35UxZQ+aOuyKvCFT+eruMnA8HtAVpSBhTf7akq2uKe3/Y5usrRpXVglUkc6akKW05YwbRZwQye7cfrpfL4OF8N2BtODPuyVfTFWVdVdwbxD6prVVYda/tqL+qUeNFU9aQt6OuyBsGg8ff05elEWnAmw/H02Vk6Hq4X004K8aSurNFVW3vcanl8xeOyqsOW9Qo9PWEOWPNvYbEGTOQ414suSN3416UEWdCWtD2u/Vyu12uZwvOiDClK6rS3iL1xm91XV1Z1qlL6ormUP35asaYsmTtmCP+gktfR8/1zJ16U2fqy1cShowZd6JMOAPaerfd7uabEXXmisNk8iVwDtZGq6q7qrJYFccGfl1ZV1UWlSVtRV3QfFbk/ao9vIpTV9PVlCVlRVsaLWjL6WLmyzz5MsKEMh9Nl5sFW1OSTlelXWFX+XXf+FSXu0VtN1LVVDTF3HtbbRaF5UBtoKwoKmqKgqKWqWHqxvuUt8tFbVFalM+sI4W38liul7GjKW9iXZjnAQQXvUntk6elZ/B+uP2Z5z6S2g5HIK1lkdfL6dTVViU3Ide+yK3zgg05WGdNmLPp3DeolQuL5TbWCb/HrQcjMsv6hDGJOOCtKGNta1ovkdwHmCq0QzMzsckd26IPR5wtXz8xK7kJjDaCExe7zJMqv0m5Q1Qtar4jaUMhLQmLtrQ5+EuKXhKzhejCPjDRu8yaqElHLpxXjYylRDaJ3CBafKM11aGx5cx4A2ZkBG3I2MlG9TKP5IbfpXb6PK0c3QbGFvHi2dW1JdWdO7I21PV+N+O+c7pZubRWdBNYeUZyE/M8gt+kVvpvolMvgoMREN7D0pmpvbyQTkZucZZldWnAmDMj7tfLEWVOF5ZU5HPTwLBaXCqvkp1cE9GFgWDkVvpP+9arSKb7U3SGuwglpHLdwGhodM25xCa5x9WacLcTzpg5xwVFJp4bB1WTksFfWCw5CqxMG8mB+MBHbvRTJPv+EDcRKgjvaeW8an50TOzyqzkr5npAWwgMSERApp6X1lk32cm3Ma+jyI3+f6p0dBpK/ax2chtZjC6GxFJKCTl5pLirqysaS9qCvVvytWFUGvq5dVA1KpmVi0sFZqaJ7MLDrsY/CfUoQJAwMEIJ4T2um10mdwFOvWKXmEZYV905I+52RpgVRN2BVGQL2T/3zsmmJUfZSXAgQS/0/1GlOvU0iaLUDysHNiOC3pkhke8PFbdFhSlvPqGMeuJL0COI7CBTz+lGFcNieZXUQn5g55/sp09DOI9Og1NB98SUzrb5BlFtXdEZ0UebwhBRezgqDZl8TjiqGJfKTpLh0fynPdgaUECtGxvtQ9/UL/bJPVZpdaYuB30BouZAMrKDTjk4jH6CA1H+0ytMR/jOjA6qcUott8iKYxZcdqAiRH1BiejeWb3ISI7/Xzo9zYI04i6CpVDjmExa06EIdAkSBvdPiyX4/3XqaRYsApB0biZ8DNqFDcL2/z8mKaLkdGjx//+oUoj/4Eu4Uf91332dBo9NhL6aHZIHFB18jsrqPqn3e4kelpCKLqBFwPhf5m+EiT+IoMOdqLBYckw+RBv8dByMOdncOiQaxGdUaVNramyywmqxMe3YQBlqDHpS6uyjhOa+MfHYQaSiECVQqa3sxxIlqPIrn5xXLjimHltoAyCPOtVPXCctlVULDpPyKRGNeBZP5e1wtOlrbBJUAc7IMLNekp+0Ulhn/EUlg6q5c2wg0qto4Ym6abVGnb1YbyJMAdJEZiQ7OVZ+mXUTFwprZeWiktkpDdUbaBa+OPVRd9NZK4uPS4YpwNuHbTbyKslNWimrlhoTD6mIBvEtHgBfpVpz7KobXipDkEQU4A73YQOpjWciOxlW1ktcKKuzKuZkY//UGz4DZbUonAJ51Bp1t+ocLC4X3PRggoicBME/cIaHLlwT00J2Epg5N2GpqF5ON6WhEr5JnQZ7uGm02+H0YH4sxckRo0lwyBV2g97f16fzyIVvH7TxLvIqu1BwlzuHxOFJfVKXVOVRahTypjnqzJprrdWpdiuFfp9LMbIs1Ca12+E2yAV2fV7ed9eBC9dAdhG9vGIx8dAavNRK1aBCp9Dpc+pkJofSn3Q33bHWLZTr9C5Bis5kFqk9aovaoTa49XEzvDiwDKRVYm9465UqnUalUKkzqowKrfcnq9NqdLqM/k8UWn1Wm9Tl9BgNLm0orLVr9VrBVY+qeGqOAjFlQGU31YFF+EdsXlf/AoWl0WVlYT24GMHoo+lS1wUwTHgAJJfVDKQSJRSAmgwOozmVxbHhQx2iRQkubG/KGlMj56ZOHUScoEcoABjKnTaJPBzSppwR3XYJOkUIWevP6CtmGHVI15UFMDLjmEPaljInbJtSeSCx4oVutCvVVqdLYLJX3B1vSlpeXW1RuI8GEWGnEngMEoNC4Y/IM+aQteX+1KksLeoEjA8h5Am2Sn0aTeHQR8w43pKz5kvKyqJaOj9Gd4ZvMYCP7RW6/CF9RR2y5urBi0ghjCLiZVia3fBVo8xfEljkGXFJGfR1g5O3dlhAKiEU0elIRI2CdvEjfADIRRLnd8vRs/qmPg2f86cEGoPBYcax1rR54ei0eFhBqSGUEYl6xbCEZKz0eI4/wFxs7+qj+qA+5u8YBBJzSlg1tdfEcPScXMe10+pZ/eBCqaITXS4eP5pg6PZ1L/vVk0zAX5pMKfr4Gs/x3zFIL/zV9jaeP2TwV5xFUzUZmgxtZkYjo5HV7DYxG9jNKyffcfWwfvAhlAbTBxKLT6FINpIcPZzcF+JPa6RoqtuketjnXvjMrz43ZS73yCMhH95etkf1LX88ZioHk4PBweBicLcYm4xNpjZDo5nVyGz2G1iOztMCwo/uEfQIJkPx8jtMgV/E97VvkVK3ffyox/4qFpUUlJOeSXlc7e08l4yX3csOZgeji8nJ4GZwNLab2Q6siMXCt/JTSQGeBE2EZWIT9ieS9Lm2d5VSp1Lra7yfPf4+OVyPt/vdiLRk7OmqmrxySev9H1+e/vKDf0OR9Ncl/7f6IJkaB15t9nBCGnJ35lQcBn9ZsZRx4Z2HDzzmeP1LqrdRUbp/fecPH/euEipVx8rWbx7lNi+aXYYGk8JSW9FlsQbMZfByQZpxb6JWuYlOpo1vHzqPHljIPaI8ifajuVPE+Ll32ScVseOxxgs2CKVy8ptXTUyGFoNz4bFwrywnTIjz8XRAW3Fn6tPV1oTjwloRsX3kukZtM8vyJsjXfYv0si/+1eTcfeonf/cu083Klng9GN0/uE1sZhZzc8lgsbamrSdyRrT5bkTZUpe2sFRcsPJOQhPjwhkeP29xy8x+z8qTdY+fblY4nvm8d92m1wefqvJmLfBh34PvsGA3kLsD5U1tVdL8qSv3Ii2I4/FwwlnyFWVpe0w6MaoXl4lujpFnITbfl3h08zCP8uPXfvN1j3I9kR7CEfnua/zvXafle7/8KZ/zMn9+svFnT9JxyWLKJg6c2ozdfBm6IA0J02hpz62TvGSkBpIL98DD7TL7IH7+5vvQ132p9tITmqcD0Od8zKM8yFt/+K5U3ftrEM2v/Mhzv/mh7nDUwtFrdhnbSwZLrVJCIYNo8Y3VtAXVl0Bdxs9mjEFbWZuTy0qldaKbYeTZ+BbmdaC44ObPL37q6+oX1iwZ7Ji/+8h3sT75H2/yRe/zNb9S/RAafnAeVk5uE5OpkVJKIt4rS5o7YcjZENfr3Yi7s4UFsntMOXcL61XeRWofOg8gF5k98cHmTz77utVXX0T5rf9qgMIo5KHvkj32Sf43vNDjvAoxxaMQwcEISNWz0nHZwGZoLzuW0smILc7qzN1Y++1yQlnTdeRj0jHZ3DQomRQMfi6BkWninIeve9Sy8PBFT/Mfr9N9l+dZ/vs+Dhwe6FteS+vBB/+HzxClUYzIINS6edHMYHYsNeeSEok97qawr+RMmNsBZ8ucg+ZQRLJ/7B3TzctqpWWil/cQW5jnLWpLfIY//65HOvEeWP7jX4jeXNqH9Ac/q/8TdIkQpaBUzyonr5HB6Fh0aFpMSmU75PY4cVMcK2nOjBVtvZ4tmW+AoDvQF9REQDaPCeeuQcmoXFYprhIYCe1j9x1qY7B4EH/OlyRe/gQIKwKewqikjnFzUpySDBqFRoZmNAwAY8I4AACFhOHXmork0T6kimboQjJUColCYiiIQRiAAjCAARiAARi8IcZQigBJsh0L16TKJ6ITiJu2dfU4NoMpdR43vsi40Ahc/c77vokzkmQUD5U+pCeOJIUuskHxNh25kHrRBnCf0iLuWI47lPeh0hXAsI78bsWGlG0Ih9N+HhRRcfX0/DTzll76+PmQO0sBBcV8auiPR4wvW6mptOiPg1to9oKQOtSUSKb+yLTC8zpEH9+/buKx7KEzldxbz1YiDFEV/TuOC2HJZRYoaIrnc9y3JiAcGQ/bn+O7K008JjZkGRBuHE/CVhLFF+Xj21/od2mK9UPoonWcphBesGp867uJx0qHGGCBs5ViK1l+RS2TWCpkrj2Coyn6ngy84y3FrQof64pzfH+licfEDq0ifkjRYyu1qYgdxxYCvfjc0MwnW3ccyOLjyNr4ZqNydIjXkGg5U5vADLCVIJFbRZJL9o5/IVBDTRHePDn5hAiLb75FanwX6Aij0x0NTXkiUkTZSq2o+WajlrRHeHFWLG5uaJ47mxGAjlRFYeGrmY/x3YrN0XFbQ2uJ2BtCXlROVbZSSUWFL/d9kX88SqG1pngYG2JhQgUf6R9AxjG+V8EYHTc1VEWElahJFslnkr+crTyVqE4uCjdqjzDFJU2RFzWUTt8M5kIzuUp0fCNoHB0Oa0jK0ZRIcUwles5WajliIBOVXsTIcQY7O+um2hDY8UTPaw8Idji+e1gzOnJr6DtyIhKFixga+w1NzVbiypcPzcVExBpSdtFMhYCmyNYjsxqyenl8UlzQZRvfrylHh3gNiaKDj6bNQZH/UNlKzc+RKVEL5rIK7VcRlKLBmzh+EA3pro9vrZGPjqga6kkQzqN+omFF8F22Mtpoz8Taoy2/i44pzUhNkZ8rgrduSKTpFfMoyzBP/fgmM8roJKmhkWTcSNJRlGGqdavImK0Mkrjp0qzPElWbPvA6svwUWXFIRxUe8Kk2vgmNGZ1Ka2hQJK+k8KOo7eJoa5WtBK1I6mnN2mNQj6jonGHuFr2GeavvoV9U43sw7ehQUkOCe+nVJOXRQni5FRcZOSwPn9rjcVUfA03XI2Md7lbU8VO7WQ4CXY/vAG1Hx1INVYZATTaWvrukM4UMKdIe5+sU6E0FtfnoGI1ThgJ3YUigmbIDPPpQ4oX+IcJwNZrzQARGe6S/aSPiHb3SP9sUJFAPaQMcin7YiBc2AYShJttgPmVb7VHZi+n1oDe1qOXKTkkgXgoxpnSIDkK8iHYBxnS0G0CDjQklhfZo42MxOtFnb4cimbe7IIE4F2KsySEqDfEi4gkwZq5EqDGRP1TvyGASibH5/g7Niigq5uPsI2GE/GiGaEISqFIhhvPsKEq8QDsBxjRFf3ySsyaJfNmKjmKxW0YysPk5DKFddO+470IgQj6bYtiQ59R7JJBehBgPISoUXsSiLYJ4cZUAw/tkq9k6kT8sauE5NXHbsPnnGJJ5oahN0vKFiArKhty4FxKol0KMU7ykwouomMSL+wswbKCBTpOKyFdEi2Bd1Kj0wOY3aohuiv74aoWw4jCDn8fFYICIk0AiCTFQEA4ivNCmEi/QLcDY5dm2y6YPKpGP37boNrlKjnGhNNj8yYcUCSwqaCHs4gpxqOYslgSSSoihF5mB8IKeIV5oToCBCJkkXE/k2+XvXXR8aro7zrhs/kiGplRkesdXXZwv5N+m4miT1zZIIFKFGMuzOS+8cHmIF1QTYGgSmeUiY/9T+msiH4BEVrEoaEWS7GTzcx2aRIvLz3ARw3HCJ/8X/xoKEbqABCKzEGMRe9CEFw6JeEF/AYYmkbHgRb0CIt8rkbYNiewi4rP52Q1xJFLrWxEwybIQD6nWGqHhEkUCZSzEQElACeGFdiZeoFWA8WueirJ9OZWiY+lEPmj+MlHta4hZ1OjvOQsVyeb/OsRW+SXyWw5TtMWOayhECPlTnEFaSQYJpLwQI2YKW3ixUogXESzAuKOtQLfo/EkoNCeRfx315jHkIVpcNAc2v1tDrpCCiSC5ou2RbTwJlCCBxhdirGlLt/BCXy0swKAclRPhXI5FIqEi8vNHbGwuZUkc7FpNMOxC2Nj8Zoc8kawaO0oSxVwV8eN0IuSDToQkkApCjIBmqQsvokqAcdEjjvSJqKwiFR0iXzj6B0ffg28RM8kTbD4HQ3aRI/KLAi/kxQVcS4ihYO9O4YWuBRiokfdR+KKAiPxM06WA1p54FI2y+SUOmU7qj4aJWEXbCpIVtAXmeYbmWdKgOzJz0bZE/p7Ieu6iI7pZYwibf9xQbRLkrY7ghoLZ1awDjhbPEO7SgEr6drQtOus0DyPyKx9JfjZfqSHa0kfSlTEv4S/tUDTbM0SzpXpJEVz5B9mwsVpautl8H4aYMv56SZT08vuSo54KnU8Dn308Q/M0dck8UDWdoc9a0k41uZuiZfNhG5KOIpZSigl+gZ/HQ8hnh7fAcXmGuukn3hOwAn0x1BBHcQ+FKXuUuD0B/Q6u8PcoO5OdQy7hh3Y7pm1IPsLvpUErcEZQsONZS852J7mXslBT/ARDXVes9auqUShfmJ5BTlUkm9BwfCEtpFt8EmkPUYpLSAlnIjvqLYgnbaWaovP4rneh8aChe4uEJRnzB41wYsQQpyh2BGGhTGgrxznNxFr07Rn+cawRUwxxMu2RnwXBswM01G3RcXzkQgzCyXuH0IoeW1vJnkL48oj5hmYCVZHreLWF6OL8SZwc+AxRK4ocPodyfEChhNipCaAMHOItuihC/5I+x50rRMvp/FKaSZsW+Y6jq9BalsClAtHrp6h7fA0BKk4rMiSccH/I5kn5VsT8eKUQMYrT0EwmDT1lLwIoJ3FgoV9B45nAoWdnyLK8bhG55HZcFmThRM9qiOjJ0i1yueQfV8fSIuPHayYDGrpig6JcC20UJr77DImJ2MO1RbU1AgtTOCnsEF1u5dPTQSjaWl9txRljHEQiRPQV9XqcgQqJimcoVYFl54ekiuiP46OQ39NQQlvZutxXLIJrJpHot7zmDaHuRc3HJxSiFdvPrhzeUZdI1ShCFljW8b0KUYWTQQ6pJmL6cvG8iGsmo/kvEc+A4LsVGeKJYggsRZ+EuICkAaIfVSTK80V7OV4VTqYZOuaRUSK1EnjVqUQEixwTZaFVEeUiQyTrxZBQCfGgIYaJt20H+xKn5lGB5QRUjHCzULdDpo6cauZhTjSLIiAfJu5IR4VDJQI5GRJ3MRRHEXHLF+IcYZt4l0HAkY7FUWv+nA+Rs1X0hRMPD5FHf4H4V7UVhJE2TJG1PenHaybQRI+qJhKcFg09ZChvF0MYIOJN4y1ZiJsaO+LdGgK+Scb4R2MCS4mWCD57B2I7NO+OfwF15CosT5MITeX2oxKVqBMnQ1tFDGVBxPGKqIQQdyRexLuNBHwnWSyw6CO+tf58vojFQ+iorYyOOjoGuXBnJcnprKMsIZxjdUXdKjIUc2LIZigR58OEOEJQnXgPRcB9qcgLLKIVfqHjmxt+a4jSgrZSefT/rMBnI/nuQkaXIDkKzmQIkcRQg10iPphCXLyPRryXIuC9VGQCS8ZJDzXZ3PDKodtXbUV+TgsEiyLEgheOCPmToSmIISEh4hmDJoQJ8cOahHgPI+DS1GkEFnFCmg9j2ROmg7WV1GXDNsGSPqEHcNGToXSIIaRDxFvxGYMS4pJoFvHeQcDTVEVYYMmoaok4O/aELCRtJSbB4vTx9VjNluaTh8iQaDEUsgERN1eI03QjxLswAk4p04DAYuAhYUFbqS4JljClxCEhZTMgQ7RiSOACEQ9aiLtheeJtLQHnbTFCYJFqlqD5pLbSZ0RgkaAnWDB0MsSZGKLEE3EBhXigjEW8YRBwKyOwFlyy69B6ET4hACWpsuE6WEicD1V0rhWK1x6XHZJRQoboxZBEGCIeL8Qd6hFvcwk4K4tQhUYVZA3tiyJnybeEEIqFMs1CroZ0uH0WAovQ4oMPAW24T5ZMtUTEH7mcJYm3BQLOY0UweGFxP1TiqVF28IjdUT6xkHIW1ROye6NHoVJxBRWDwSEdldQPEvFUoxJvGATcbhCwJMYJi5khOs8i2EvG7YGPFFlIIIukWig67RH8kF+T6jcivptN4j2MgDtRVDZhUVQgX0nLoStCLrkfFynk+s3FPOSXe1EuofmFBNzoKz+kVwgaU4nHZBMtkRAK0NIkb4aWsqg+3hWyhoXsZTGSLn+wqPLxVKFJ8UIYkpeH3IRIkUbi0T6PM1MgUHQN3UVJlwf1UNRg2GMhdXuXZ4iCKPvFssgulBVXZdJD14RIWRjx2HPXIA7jwmJT5DcUVKJoFJGbpFUNvKAZp+WsPgm/aOtCoLiW9phXGPITIjUh4rEZElUANo4TEJgWaQ4NKxGwnMGKVCEWFAYN4RzdE8EifYe2NMpEiwekIU1CpMuFeCTEKkqNFcGIsLgTEeyUy8stKgoLVUXyaTckKMhwPVGR+SIq+VTQKHuiIS5CpOOAeOTfPhYlZ9YlNdK72pDyiE7N66boUkiWFTkER1rzR5EJ2NyoplGiREP0hMhOnXjMKokhkT6nIizSNZqTHkFXDYu8aiRZHk0a5azoRfj4Bzeq59ArCXsKkSsB8YhuBJdEvieSivDQuyRdjdpdtLZF+S6JiE5xfDS3om47XfNzqEKIFKMSj0Kq6cAjbi4vRTwlLA4mldooJ0d4XcRJXDApf0R5xHotUY2yPDqEUohcDIlH0NhGSxLLXpLORQ6JSrVEb4R707XRKAscSmod3a1oCx7aFyI3YcQjbg1wFJPkCVpDkSX4lHcuAUCSHsEiY+WM1XSvUWoSoREYhUsl8l2j3MoHuRAiZyDiMcgTb1bWJ02Zvh/7eNroUpQ8LlkoCjyttmmnHZ5sljgfkcMHyGYhkiUiHgHWUcaMfmgFEWRpRLE+SOpD1RolNiqZEi0Op20MrpJFKPgh+kJkJ0M8JquXz0q5zDEaNX46RNR/nFNSzd7/khPXI1H9YoAkehOPITdwyiMHf+VCUc8a9TooKtFD8Wg70fokAyRXmnisfIgdWfT1UUhUEBNaOxPs1EOLShQa1eHidgVFEjQXD4kWoShBycJrb4LxffMzjA73GpKKJhQ+rlhIc0GllEMmihDHZXqFaH2LH8dxbw3HW2+Cw4M+jB3j2xVXMjqLaeiGIrsJFZJ0FNLihKIgMzStyFFC97iNSLHGxdOd9DD0WayOw8XBCufjGwHd0cHKhhrwFGksBFLxH8oDlov1otrjECHF8tYhbw1RxbgSSYfFsYvsB6eP7wCJcXS60VBKisjx4oX4i0sXQ+PoKSok2QtRF4cMufMaKhZpd3xf/MhkqI3vLkOMTnE2NMFFZkv2xzeFYE3xHlKJIpkWdRwXCmHMa0lwV+T/yGfSTWp8A6kZHco2JC5nbcikRcSSgjjuqTi8oRXLqR+L1o6XAFN9a50chRoib8cjLxIQ0o/vbSBHx3gbii7HgaJcjtfi9gkkKyQRvFgrqizECcj5Dc3ZEPAT+vVI7CFz4/jmMe3oxFlD+0RKnamIF3obaC4zcHYkStQud1F0xExygJAoZKgLG/ofNy2aQqrPwfGdNrLRaWpDccQ5Ub3MExVSRfNiMa2OiEAT+VIEktBWkm3v1Jkl205g11DjcXTGqETHd8WIo9OhDe0je3NPog6w6BIw6f2oTAS3fErLWyjH8Qx/ykun5BsJdEM8f4uw4q8I4Ph+4/nRYVJDxQofXG7tCNacmQgoEr43CmmF8AeCUiu6FX9R3uNDySFdHOP7NPHRwW1DChuBHu22hbs86S6yGyWCo7aJbDhHhBAC6ZvAWkV6Dj9pYYvc0uBu0/Hdz/zRkdOGdtNZr6O0GeTVRRUohRmWA+3WpO3RL5EgifUIvUmitgHUThg6qi26pw7u0luN7wqGR8e7DU3X8UoyF+XTfMaiOBwW6FIB8oUjzfcC80bvFWE00DZQSsf3csbR4VBDUpbmSYZk+niAjF0awJ307iO0dZeh5QcMHCjCUXr+G7j/1PQgg0Ckj28gtaNDuQ0JX4KWZpFAc5Jp6u6Wluazv6F1eIFWCrVp/pG76IG2/hl+2Fk8j7qQHeCxijjExcsIhzo7hyDq7+mj6SwtIOSlHRWystGhYhPmNhbC+my2vHiZsawFclSrgAN8noo8fKhLX8ZQ9lkF70zdrgHo8r4DS7OSJH/f7crINc0I79HNcolNn3+1KGbUxjaS6voAx66igzfVh3pL5i4Ay2QS4lGiqh8a/kvGKoQ2kmC5PWH6rFldyCpFnqBK7jqaEmOfd4CLgwO93UlkYKiXErAs+h/H0QpFiwMFcfkhLULP1BIn1B9HSrKJK4RthmaLJBJKP44odPjIqIJyP9SChyBt4ijlWtjRxrtdeoBfUeQENtQ1HA8Npypax7GFxo8EhQUth9QvCh3PFJodfYLNHAIARVea8YoKncSRnfpATBeiD0Yn8bB6aC9EehxhJ6YZShuwR9IY4CCUphfztUaKjMeD80KSoZIoSn5Jf9yACoHi0H6/IvXjEaeQTEO5cw54JvzrrTtYsXvUBQxw2y1S5mjqqveoe6jnWj8k/RKu5HYS6Ll7kXpF4Y5vGRciGkObU6Qef/lCfFQQ+Fhdm5ChcEcjFcIAhwscVv1MWNnXONCAT+qXIFXgorseR8HFBz5Jroq6l+Tdxf1rKIWGxshZVdHSKISqVMe2+UYroIQrXrJGov4BDh+xJ+ihN8V7P//WrFzgGpJYTiqyWlIfbw+4/pNv3kBDTKJ680lYSkv+moHLJoKvSMNLyFwccmh8SUhCu0LeUbU5wG0N0hNfkpeVkWoRvs6NZhMS8e4V7ccbU8hUQf+heHkHb72oixYeF6lQDQ6tRHo5rYaCIm8TkqeFGkGo29ArI7fu75HsAIdF5h7q385BXRCBe0RyTql0gBU00Rfl3EsR9TjfX/NyQ1dFPV7osCFUIlgO+4aw+kWrbPil26eVH2AnueGlFY0riGO5OsbBOlf+6iOwvj4vTpvNBfeIquLIpURNpGjqdTyGCEiUspx/gYqcH0LNG1ciFC2ajE6N2avRu6LUwop4xrVbW0WI4AEJxW4B4ku4Hj8tks7pqQADkWgehaSLnuQ48kbd9E4EenmraOTQ0RoOyfWo7TMRoccl2jJ0rAocFo9j3IJeXjy6AwgOS/FEj0hePiSuORlIk5lO9TbsWKLpavOtafOeLdQf7drMU53IvUjDlszDDoaiOLpbIjRbpNMaulDDsM69URgHp+/ubbBhKFSf1kA/b9t34VXHSOMEzp3gUS+RkxdRn71epP2cuB3LituhuyMQYCK9dHfoq20ZD90raYzSQFI7D5zIm1rL1WK4ZSO98NGlGSFKLOr7tzTdzQq9DzEd/crmQqsDnJRqtPZRoLu64Tv0Pn2U7UigRdByKIXGuO8RGYsK8wwhPmntk745yemWCEvbk27cY+kjGUkKfKsNnSL9koSfASWPtKwDWkBrPkmtpJQs8pb4XWKv2yP3Jjvy41Dw9w29hTWp5RrZIfcKynWTNuAbEUSu69ZMJV2wJ9lboqGJTZklqRtyO58d7HbpXnhhY1fm6Ahp4+eiqKd3RGEx/xKNTv9InyFY/co7168WYrM8pFL+0/oO3WVx8j7+ptXj69MId3940hUQyHrvGLYRcBWSxhA9SGGmUzadti+6OdCAA8e6Wbb6Rsr1CQg7S0RH59pcaZahFFQoe63BXwDfxkqGlrUl7XBOQmT9YDxDfFG4ZEF+HEShtrgYGGKbi5bjjeq6t1BRXNENZjvgdJFEQkMsLpQpDuvgR0RDC+1hNsMo8tH7i+8VmV9DS0U21VVOKPfxkkJKcULa+caA/y1aPG7+vOLbguAj+QxFL9oSGlxIvQQlCkruYOhU1Es0PnkLi7UDXlNRdzxZSPTidovcHTQU/uTbokCOV01GXDy+bQ4FFP3+R5V03FniRPGA4o55iFI0XnJ5XJekUsjR4gQ0eIbunpSQU5ReiMVjpBdecIaUyhWNL6Gx0HXx6sgiR0VTKbQvfiy8nc+Q93pFsxZitbhUDaEtJ5zGlUBV9C6EGptqYpjDwxaVx2cL0eGRbURDxhPdoEg4ztVCuS3O8tCd6GtIsFc0a2gaWYiUGEMYZl9W7yliFLqGwiI7mUCDJHkivLw2v+h4Qux4xAu1FgngUDkRLjQUA4sWJWD6MBskOlo0Wna9404LFaYCMEQd2sAfRaJ5ikITKqXQEejQSfRqyGDk8aWTTfSYVsR2nBGFnJm6pSlw6mDVI3/l7TuwqFIVsywpxIjd6gNkbvNJhC/vLFRRQgetdSjWnCmRuRuaXhQvRE3nbP1sRQSfyC4vSUUE+twfMTTGMxkCbxCQO8Nd9KfCSB0iDUs4UnQw2QMkQYFSP6oT7TeL3JzQjOLqh7Kjes0bJ3Ir+nVCQoiMMfwRUaJWpgi4S8K/E/Hid9FXRBecu+9qNHS4zOiMDkhFNDJcyxkC9AE6+Nx7eATciiZIIod+iM7RUpoPwyxqCr0A+xmc4Gg7Eagoqy5UCCcGguOFzLiUu6i1VAgXd0euha8hOhygg5fd2X7rRxJLNMKKkNwhIMukE1HQ0UKyQJg8mhJFz9YiBk8iaFo5MYkrKV2EzIKmoJwcb/YhxjlAT6zAaR84yUdS1aMrEkmKVhfadCic0SwV8D5pG7R1SZ2T7PBRNHZy0Q4TMrCb4NULRb+kAyNMEeoqIJW251pUxZAhlAfogDGPFRDvAC8FvmpEkphHga3gJwPjELj0CpLGffRXyZ8oAqsoL3f5n0XX/9tSgzlcZiBedvbJmcEhnu8AnQv8/viQHFLS4CHcxqXopxZBpKMiSe0DItE2++l49zDwD4Fx8TwwPAhP/zIYG0W4A+S3NoiVP5/xa3qrocpMG4uHImlNecbmW+I2ScvVjLeOqv1Y0/vjWVXNtThaLXEP93Ty4kUp4YEcA1Q72WiYTtTUT/TYUa8/X3zKaARpbOeGQ7hRiWRyCU6CxLOw3CjrFF0VYm1HLF8AJD7hmKETMkTHAToSkLfh263ZQCX7/C+G/9AlC7pPSDJ9CvmPv7BMc1cEQ1EWsyG08LJpprgpDXkIzgDd/9GZnUsJTIN3XMHMY3ah4ZfoMapzgI0/+Fv5EjYYOY+eoCle0klDjL7YekBHQFDRUxRiDlAQgnHnHAxB27OPE2V3Z8zGDXRpj4t0DtEpQo67ktwoJAEbuhehG0eWrHccVugVhwuBeVIutoY26hRgPpim+p70uLAwwiDEK8ZOnsH10/puOGJGYpDCyTRIM62z4cGi1jWJ4bsNWS9CSwiPh1qFBsUpQ3tQZEioOQ4sBNZ4eeZYM8kYQj/cb5hjSl1IpUW5FJkkMd0LUPJd4yjm4hpBfjbjW1zSjO3RIlhU+i0pT6F2BcmHO1bRclyuEKA4vMLJ0O8VebRxcxxOIQiGycT74x9K48hpgdVbrIHU0xGL0EAV3wShsZmBCqRlM+m1wVKQPRSVorHjwg8yFpccojU0uSh8yeH4RIWKQKFWHXJOWYTG+LgeMMX4UWEvnMGQOz62VDd5dnlYUihsDKNkx5IzTMYf19DfRfDj0YX+4o3ZoRavs8g+DqLQVvFCLDgUZRhErgJKtriyY4PCAUYHNWR4y9yL7cgnDen4GupcikYKVRdJNtTf0B4rchWKWHxGQ5DoTa0rOiVJ0UrJKk/YoZ0mZEHE4ZBrNQuGoT/pRxMJhwunvaGdEjH5kqxCIUWyQ+uRahAoIStJXtToBY2HVKIsUZb2pgj1x5+RUgnZ4X0IsDoY5dLX/A3DDU0EMwsByunXh9QhRyaCWDJjKAF8w3pRL4R9t0NTonpRwmx+USo0BqbXdRjSB4yXkIeWRS6/W3QchAyTvqFHRKkpgVDrUhRyFoQg90LIieot+i70L84PqUelRKnlhxe1x2uFmHZO9M7TD9XCt1EjaM8iq72ieXLKo3e/FmneEHWjNKSXVBZqJhUnQ5ojGopEVdlDgZfxDg2d+6jpl8hzUdQKzcWpyEmLMdTn2ySV4syzxFsTyRTPZgaVEAxzhpg7jZKTuSUFTxXaJu7IqOUSL9pDoR8KRzfoUbmJCqjoSguaSUOxXbiHOcj1x/GhLqbdENXojkVIicihWZdyH5F7gKOteeVsEWlV6NSIzZGe5on9ReyRMwsPGyB5VRnAeOhFobI4gUDpUnpJQBK9KkINQe9FnkfT5lgp8tcTlTypIuMIK+c5JChKGBurMIaaGnw8J2JRPLQh8TUyS1Tv+vFESEBuN/aoe4kcWlFU9LxSyyTsyKAodVeRFam1KJ92RkeH4BFXqA0MgBvDlMKVSU0bSWILvPfjQkoS6HgEGfrXkmIS5c55RDNGIUc4xXszKuUdXi4YqKeiLZ40dxHMP4r+D9mkLyZ9BDwu7JKd7wPIiG6u9PFRrIcqwJ+sCV6lpOOPj7IlrmsfOLpi6yV1MIAEelXqHmqigidDNMF6P1Il9UctukaSGOuVzvqDoQzMvClKMVHMULUr4o+n/UBVuQ+eQwSsfzKRcoShKxJ2u8UA2ZVmPg2V2mK1/WcgyC+3kyjaiihh1w3Gt+k/RttkgBzoSeyzoToDW9nfqD0mbkGWDu3K0mYwK/TFC6Wg9Q6d4zuJTTxSOrRF2MpBO9Sw4tqjiKaI1C+qZjMuhYzidBfkUbgZQzvGNytNPCI6ZIGxlfk11s2qxLRHa4ilRVeDH98UmovDqvDEw/HNd008VjrkQmylMAKuZje0R25DjYu8aIaqEPKRRXFKBcVCXo/vBmrisZJDLmAr9Yoo0UsU0sX/oj0OSlN0SzMchVAfWeKC3GLoGN+rNvGY+BAJYStbL8/Ejs/ct/aIrSnytVxgkTihcgudigVFDk/Gd4s08dh/yB/qylZaovOGJo4jgaI9SlOaalGa0G4spOxBfXxv1cRjmUOMfJyt1Em0LMpAX9IeXc3vGhpalKEZvKfQIM8wvnVHMzpyV0O9S5QnYCvHkdjlLEBjLu2R1Q659DZFm4pX7amObyZdRodMDYkofxJbCV8flVb0MqY9GrVCwOZHy0vb7hTtc8elLcn4ljjC6HisoargQMtspfpI6JroLwrY4+lJe8yJPmDzHEZRP26LQsiu9Pg2rHZ0LquhMQIit9lKHP3YIY4eYF0J7TE3Y4WF5YisCRS1tZBsgvGtP9zRseIa6jcelURbna08J6k5+jVXllOLhk57fPYRv2wSIVwq4qcn4zuiDqPjsYZKSV9UkcNWiiRRnUdjotAxcEntMSRZAxb1I24iW2NUjoQa3xARGZ1uNZQWKQQz0EgilbOVyyTxRoCjVXPIpdF97ZGOJOdbgIzSvI1Fj3XHNzYtRwdaa0j+Hi7zVmyly1KZhE+31zc+XryR+23tMa3UsiSVpAt1otgUKXUAZHw/phwd0GpI+3RwUwWXkKR4BJnj5rKVySZ1S9QkxaPseMC1x6SJ5iWTgaJHsiKBZsoOcOtjiRf4h+YojTFytlIxRaLW07vpL33fd3mFjPWtPT5V7T3M+Uda3QVMIYEKw1MDPIrksBEvFgHBEF82KY8nzkDrKTHq8d8hFyauKVHSHu8fC3D+UQcJBDEhxuMM/U2IF24XYJAu9hj7gOcl73tF56xHxUXMSyoV9JCJe00CMV+IAcNDPQQQ8cJ9AQavoug9jl9ou3h9kROCsPktHoKpwv9f6FwcHFoZ6I2TQOQIMTbYEC2PeBH1Aozpoi93fLSQo+Lksz023+WG+m7wngv+NdBLk0DQFmIsiEM/nnjhRggwIBR1TOikBBeF6uIKGwhsvgKGGBXlHrcXKusN9P4hn4sEwkuIgdgNzfHEi3tRgOHALsovOTxQaKEgaKhi8xUcapwixEI+PtAfDTUECZSJEANxONaJ2vTEC7cLMMjsRTc3w1IIc2RtBVl4sPna3xDZh4wp/BcDPaQhf0Q9JYFGRYixij2I8MKdJl7QJ8DQL7eJpagrNLo4OS+WLyQ2n9YQL0wpOgpVA/WBh0qHeBJIW0KMZdg8Cy8cV+IFbQUYUiKxFQkkFQoq0l0wAzYf8SG7iYhF6Rb+2xgM9ArWEkkgEoQYK9soQ3jhPIgX1AgwxDYS+UzRdsllhYLiyimr+ozNb+AQapzIycIfXOineObw3pPuHwlkOSGGV2cqFV6gSMSL+wQY3ojKRNhEfkSziC0UXdxw6ACWiLdAoWx+tRuaH2Uramiqwj9xPeTjY+RIAqkixIguVYEIL1ZMvIgCCjCmjpZEL12k5TgtiluP0iY+s/m+DLHTS0CvF7wXVm5sknKgn3I1SKAxhBjLtDkkvHAm8YJSAYYKIp/aXKJAj11khUnCUOwI42rukEjr2fxAh0yVe4t8XpFRwbvQkN9f/zwJlKMQA5+4ioUX6BdgfHe06ybyaZHxH4/NUayay+brPHTNRb662BiqHBvoRc9B4hNikETRU3hBsQDDJ3EbmXEU9BCaRclCpUORjWDhaDLYfJEMCWWR3xZ5t+DdB88QOilvJE14+pmoSuTDIu5LUr8saY6y1Gz+dodkLKAv/3evGkXUO0PVkiMJc2AJzkQ+NcfLmhlMoZYlSRNsviuGHj3yVaXIR/GibXoGPzbZW/KVxMRRoybyR4mlKjbf3UM00gXNgF4XtVkqm5/0DGOtPR2WBJIuh0dv2XwlhqTZtI2PDejZ1/WeoQm98fRodBybX5fUPZLaJiSg13nnGiSkefSm2rhrqnOK/KCdIdMDjCdbv25AB11j+U4Th4Pxf8zuvbj5i0IWWLbip4tc3aBQs0S40VaUIVpFcUKl49ckg7hCWN1zPVJ0LrDYK5wAeMhFtJXouFsvpKZmUkmRgUvy8egXapsFIWDne56TIrBIggj0QwNtwouctiKp0X3WVHPEQqLEY+PKIsIXWDwO8Wso8BzuV9dW+CmymxCC8m2eodKDH8/a4swCy/OHxkRbaacZkpMMZ/E+2vvhK0KLgHDH3fjfeoHF6kPkU/5DWwnSTLzlaZHXK9r/cZ8LQfwP0buyRWBBwJCj3tdRyKPSVnTLr7zoMyGpheRc3M+eIbpRgWVb6JXimBsaJfKD2kp0OjbBcmyIpu+i4cJhHr0fJylQgYU7Q+6SwF9bUadVIIm44DneoqiZHQe/yZCcE0Ohi9hP6E4hju49QF7m5wss7g9xof9TW9GaCfsRAcVjE421hiDCnscsGbK8xRChrMDjE0qIN3LexLsNAr4eiROVtsDi99CXHWsr9iNCBE7ccsWIecxVa5GhmLcYcmnRcC7EF2JqxHtoAm6NHBkRWI7FdTIElM5qK+UjMUFQbByeA1kqsvAhQ48shtxBRPweRwMh7n9MiXfjCPgUDQILZ4YcNaat5GeMISrACahLtNpLhqBYDBlJxNlThD0hPgmTeO9GwJMNEFjQOUSILW0lT3IgWFQiMW3Ne66CIkMTFUNyL0Q8PslrCnFIgBrxDpKA2/QCCxKHzEfRVhR1o4chhh/OXdvwyZBziKGhMRG3j/vCQSONeNNOwO1SMwssrh5ir7QVc4KFmw/J9c9GOHLJkyHpxFBYsUTcICHObIN4l0XASdNzEFi0DssCgrSVPRRIMFbixViwV+ch7a0fyMkQgWJIoOBEPFAhblyDeJsk4IQoxAgsfxyqwNRWopaZECxPSZdKhFE4INZTMiS5GAo7CBG3KMTpbRHvkhNwolxgITzLghpAW6Gm3SBYCGSVGNOrMCDj8WTIVAxxcUDESQuBI4N4RyLgFmQogUVn2XVT26OtiMlYJlhEa5xHlAzFiyGLmESchxAn05x4DyLg3hW1TFSqCr3iAXGoXXR0yYYac6Jw8fZYyPUW8q3QWR4eakTJkLVydv6IuFOID5+FeM8g4G5FnSWfJ4kLBSE06Up8hiEWRSd1sezf294FrI0aIAupF1F0o6x4wxXQvg5L7WgT8dG8xHsMARcNcLCo1MZtkqQX8ooXRSLtUHSK4FjIa9WQMaxNno10OVsLlCkGTodofqyfRcRVTSHeOwh4Fo8i4loXFvGQ19B5keqNQ5siqYUqZ5xgY8iQm0WQZIqX4kd3KFhL2wkizqaDeI9EwIWaiEVOSb4hNE8FsaHx5QiqSHw8hWKvPsNCSlDUj42ykQ/RLQSVqcRjkmtsWzRAVForLDIi3GV+yivire0spE70QRHzhZj7oYGFyHKVeGQRJbuosYcl6eN3vt0A4IOLXNshgVrtUeQtqQh0aFMNw7iyYBnxlo+KiNwoN/dQlQuRKXTikYOKUkOmiKPjvCE00S3Rsrk82EazzbKQ7PAsSpLRM0ULf7ishch3OPHYj2wUJfKiaqyw6DrUR8AT+eXwiubqYj6eDTV44/gY2o48YltkOx4tJOaHAilEPuKJx+IjUYmQpo0ZG9rZx3cOCBxyNDLLBYgaeDxfhVyoLCTNEfNVhX4s+hfa0/NDDhYiM7/EI5Mjkwgsn16U0GJfvbCI9sZRf9EpoWJS/oDPQiqVnr2/KqyRKfbmIU5CpMudeORo0VE1Ewm5DhiK62MBYo7uLeoe0GOk14ge6XEp3lbUT6YowzZAmgmRRDPxiGmkJelSlP/IE58kEV+kC4xlM8IiBBrhlSOiaJ1CVFGQBPTab9LvqM2l+CkqVnuiM0XTOfQsRKpUiUdollZ01EwUKWLpqYwtLHImR74klEoR9iWXIpKiizkyxVY8REKIrBGJR+AlH0//yFEnFCXzJFchMemIpcJK0Xg/oopiZoop8ZCZECm0EY892i40RF+KhEsaeVkLiY68MSlqbY/YwmFHyhQD64NahMjZmngkdxtPO56PitkjWrS77bG3UbbsA2QIIdIbs4lHHlB7/xUWGZTnr7XbYxsLs8fQP+QsRMpSE48WofLwkP9+0cq5VGo79LL6mqBXFBlPnlzUlMUAWbQmHsOJpwIm1m8oQ2b81SRaLELNzV/VQPYoUlcRqyIDJFebeKx8iGUWLUK90LNIi6GrIis86LeQB5wXtB4i1RlvPY5dCC3eyIJgGYzxvQQgHB1vNJRiEfR4YqGn4sXMUHFF+XG1hQoWtIIxVE1cboaiEKYT9FKQvRYOAhPG9+6AMDre1FC6CLkkklAex/FCZ3EQBQENnYtcSzo8ziOFYGooqaKP43ghRPGRXzgnqza+vasYnWNsaEKRn+NGIcziJeZQSaeosJBx8VpxqCQRxy9KpBkmFoIVX2k2jm8S0jA63GpIiqLzuApbCFVxwCHjFzmP6xRqKc5i4V7di4jjRyGCkIqH6cXxnRvb0YlrQzVR9lPE35LGohAe+pb/WJRy3BUqvDh8aC5HYi9atlCZFYQj5hjfq2CMjhs2VK0h2JCLcgqNVhxKhC5EUcvjKAoRh5TgDkW640iFHooXLaXGd8Gwo1PJhgaJZFHUX6hGcXJoKhG8nFOR3bUuRBdXVWQ8GoG/PKSIl9CeFxIBNb6RIx6d3Gyoo/Ry+t20SXSzqO2m7Z6pHdlDEs1PUCT846DFtRafx3cLG6PjxoZWL9ykEWtWR10nkl0UNXePWhCEIbI1t99QOyqa0Me7Osn4lhhxdDzYUHIElBIVV4Qfh0KwFu85SP/Im4+S6P3dRfIx6oVwDBYHabn57KUIoRXq9aTjW2LE0fFQQ+kjHEInIxKxIa8IXLT9KJFItyi74w8RrMHSDAk76qccov+LugyN79zYjE7cGuobNY6SmnPLBaAi5gMXGiE70nlzRpHGAIc5bPxVls9HpCZqVotQI8P4/pzN6MCtIU3SQztqbSKRi9qT8ut2hBL9GdYtXY6AQT+UHJKSI3gHC4nmVISTYHz/pzs6VGtIJ2lupJYjieYFF0U8GKNNQvfoSzR/ebBuK4lV+siNf9y7iKmx8Z0R99EpU0MRlsCV6cuJYY6TFHO01cBmDQlhE+sk6Q+PwCmKcpg1vi98HB2ONpQ0AS21JqXc+LM5OQnuSlPLRr1UhAP9odbk8GhFedQRi1DfBY9jQDzAN6doV4tcSRv0jA9NUx3lP8mbzJLAPrm0o4jCf4rc1LKS4g5KlFPsYzV9uklwbTMKIteWpj2u+9DtggN8Sa1fUC1CHv7qxRiqrV2POFPh1ju8vDF8N07VYh20+KFX6I001r/ic5XINOgusoPtBEd/Gdv7H+BOUdSE7m1LFMPgIa0m7QCZlsRJNtbRILaheBIZJ2uaJP0n1gJyOQ0lo76O6p3zAW4D8nBuKSsN2yi/cntJwvFbIWTxHupQ3KKlhEbHJQv5Ks7IDs1qRb7aohCobnBluNyzlUgeVQIc4P7DhVGkUgqy4yOd0cAUzR0HtdB98ZqF76GuF9Ufz1LIieKcD51X5JvQdNyoQjxsjrQmXdHEGP9hNsAdLjboF5uiaPPjeSG3xQnk0L4iNjH747NQlYuT0NAe0xXJj2cUEqnilkNMBuMb7m/Mkj85OiGWDHDauwe9nj1aFBPajgsUkvriOHRdkfGEymW9baG7Kg6GDmmmyOq4XxQqzrEK+vSj/nJU3j7Abd2oRAK+9UIqA0bJRg+l2NrCRYW3AOt4sBYvrC5KebeZ4wMx6GwofzI0RbTj2wrhL47ladZRnWyf4igfO4KLUB7gc3E2pM47Ey5McdHycbaQbXHiZsiOmCKo0FuLU6IGaali0feETlch6ebpbyZl3vYsokYXcMde4AAXgmgnt0SX7+dgpTi5HxWRu8tiWGgYmm8QfVMvcvlKHs9MIfEe5JfTaUh30S5OaHWMDAztMeRQkmMrBrg4/How9HXNPwg01L9vgLgheHIUpYMP9wmvAnKhCHH27XvOBgwSVyIMpkXj2beIaZqeh27uXjjWQSEbukFd2omrMHMQ2JWgjnRzMgXMexJ9JlWLgqQAmUJmCJcl2mxiqxRRfFBC8tylX/QM7D3qwPvyrp3RHERv5qktNIb0yEp/AdTNZ4XbLG7C8P5RLTOt1gxwvE1EMpF5OeQpH51BxEf+Ew2IY5FoDa32Hu16vVHGG8RVDA23J/TnN+5p3EOhCYRriG/TRNqapWzL/qjMk3iRxlxjIZXF5RCQIygRPx/5IhsUMnEQ2ZG0r5y9zb7obGn6uGO1e2kc9clmyEDgESopfvF4m1p8zq7toqKNI7S5/TvDCY9fHIZEHhlpS/syxeogk4piuke1OUYs0hFUCKNvgNmcoTaWyVUp3wjnATRIe7G0aHNcAAodtaiPBB0dhzUb74vO8DPSbRQ/uvTSQck9yI8mOeTlqCwSEDt8JY0eQeNFS1He6akI5Mh9B2knjX8fR+TmrOXyFrGrDrnt2fPYR4rsYPZLQUziCYD92jZDET1veKzfmaPDdCkmoUxPldj5r1/TJR5uP5YJ/SHaEnCelwRNVh+pVPVU3gGX82r3VWG9sfSvroSVq+FMOnneFPo1Hdrcw6H/JtX2qX1uGV+HVVRzGSI/q2z7HAHdCeVe6fe+LBHvy0xm20kbulMWAz0VNIkb3q+ydQTHO0zXVVOMHdPjV1Yb/ZMjnQpAE3uyz+pLeKnASO0Z0jloxtQAjcrLdL6wM3RZ7GdOySf7fS2QAjwN51divmFsVV41yP5HZPn9Q/8lRWd/cqOeoWMepqiRhR7Fc4Mh9jMXpZHMqjci1yLFtZgBQ+WZWvPxWKGCQfFoEKDQ0Hwt2h5nqJBXcXKRwndo32uRPp6hkDojkkyR5Q75yD+hU8jYkVsX1KjIyj9DnyJPfhxLIf2Ka6Jm6H9RR0Kb0kKT1Myg+adoHgdVSL2ggpDQkHqK4ODxz0Ju8SISHCqDRfcJmdSPC3nin4vcy+HbQ0OPrAi40CnO1YLoDhrqd4qylpxYKLRTEGIOVQeLEuqnWFe8UJNBO1bkHj98b8t5Fu3jfyGguIS+0VA7qqJnzagKBXgkY0EtmAzNtsh73BeC/AKj8OLwWXKIWsSYQkcWJ4VnSF+eLaCos5CmODjbQy3Lia1omlZICMAGDT8SiOZ7+LgjgXlR5V0K/QsaChPZu4gRsRCpSKBmKCSKW+5RVB7TFEDHO9Lhq0Mt8yf/f4vWXnuh+hCAwAZ6nehXpF/SeyGgOEcb0pNILy8rX0U6dmH7lppha2IMn+PRVlnkBBLF4yUopAzYVn1B1lOPvlWRS3vgfbiOk8dolJiMrGQfoPoR0WY5krSiTiG0uOtDmY5oK1G5XI+LCuYvFKKt4wYt19xPyvwLWKxyqJiKwBfqS9kp8yzqKXvRvAadZF7OPkLceosDVDI4OpI2jxKNsSg0Ib6QQwVNGxKPvOYmEtWaTRFZQqPN5nrH6ZvrI4cpcl2FlLU45UcCNP7ClXeUKvsieApSIxF8A7KgNcBgkBtIoQaoOwxJj7REBEqOouiSXOtQkl1Ek8hjN21PH5vhL/FtHTIW8EckqIuE0jQ6SoU9Pn1vkscYqIqqqAKPp4Ua5SC6DkswY4F+gBCfKh67R6koWcf9H8o1auvoEji/tkO5dl2/UclNXeAjF9MiZ3qSfRYpG/hFxsB9pCuN/5M+4rB48BC+BugxDtnB/98kcj2avEiz0JdD1CQ0gOb6SLbKKkUhsRv9VZgXJw6f6VR4EjTRPVJXM09CnP5EZJ4Kdv0llYXa1jVxbDSiqNekFC0va6HePSxBHWvSAIEzva+YkSbdJip5ESUfIu9JHO65JAMYqEMN67Hvu0naW8GPlMQglP/ToAHd70n30/yjESoaH5dyg4dFnY1yY4D80lT9wnDwumQ3SzrqCAgkACqUPT904UmWjkQj6bOreRN5SXGiynZYepgDmy2KMlGgRiN47PJhIY20/0s+Sh4GSNV5SbO9lhKF8u3tGI33ELfZhIi77ySCphyjLa1AhKTEPX80l+dvblUuGngK0lKzHtWxhF2EjuSLhzHMQ/wZoPlPpiWyWrjl4FtNleBEjhsP1dbVCzPID6NH3Zr4CUpk9s9N+nwojT0bQVTULN0QJdkQWgboeQBB7yqxidrMw6dHrkP05wobYO2GC0l3JqeoikVftsChlGdJiheFnoJtshiID1C50/0UispP4tisBokfcIgik7QsoRt4SncVpvrvPStwP3/D01g1KZ22/lBCn8dlh8ROvMX/4eFxNoBqyQkeC8+FLdQfOmgf3bovKr4k/nisQrW44kdjTIV4DlcoGtpSJLWEyoVgi18wV7xxaNMHPh+PFEnDSz1ZVG0FpUSWMBoe9B0RPqCgQ3zY+yOEM5N2aJJCYGy2L4CxqGBJuyShBqHFQZH5DTfIAF7/9kM8Wop6b1BaT1sytDHkewgJhyuSKShIPmnFL4fBC6lJpz5KUeABFGw4A2cJC5k0SmcgZdG+sJ5RVG5JhCSDQqhRoxcBxJwhHC2aL7ke//V6F+KPuOQeInM2ib0pGUXVe/TWKfsG8iCM9/Oq3dGfm+VRyhaJxUhFM5cccBfq4pAUxLFdRINC90OhNdTSKjKP95O8senFmS9c0CHSQXlZ/p9jsqVGjEWQgUjG61fzjqeEpj6FemlR5pLmShI4GVlVvPAicdwnCrxQ0Q0dGlJ7FPEa9z9OYwf7EhWOXofqbdIu2TPJlz0SDw81FnF3PLr4XCSwDAUliiiKWHLnVagXh4rk8CXvYaFglgzdRLX+ivYnNC2U6asf8VBCoMIUinVlX/j2PuQJxOOxCj0dJTz0RKl4/0WsbSEY0kmUbxZxnIqCF6cMDRLhuBxVpLgl3ad7X+Khk24hT1nxGbBaJBPwLmQv3vOGBusoeZtFNpe06HHzQ8NJlKyiFYE8vlLEHRKTIkg86Xd0w9B6FI0MpiLD7Pc07ipu2xAcERMRfdF4yYooSX+0zBRFSqGkuHYofBRMZHs5iVekHQ+okGIG4aMobTKMrpECp93vQ0MqR4MoN72wCA+ljyw/JvooIl0I2tCHjrxYrtOKBr8IeRnCZZY0EtbGkpQXRHtC8LWO1nKTqH8UjV7ID3H9EUpETU751Tf3qEHRUGj0BSMDohbOYx3su8c3DweJoUoSvPyjluivixBaCJNmPlKUaPFFYQrZh9Kw8IhVonWKgm4P1wbIWyrWVqETUlIopIaeSU4dHYnYcoQWuSH3RowkHVAWRQ5hCPQR/0JFHVA7JTmfxVH9EOvS6Ede66/oJh0l+qi6okWhUZtMWxGCdUjuHiuW69LJVMiOimpqR1yT8CgSA/qXTAtJ19qwkYcs9q5U8m4KPGKYGo6Ql5xdIEkcn/cxS/aTpsOrSC8myLwPkC7ZH5jQDMX3WjYVaQsY4tjMmaIXc2X5KJ0fPmlTmyV9Q48a6bn0aBAkoRCL+kRQUktFGxCCozySk4DuXcdjkZoMkOZKFPPF/AYWS4qKdjy4QkRP2oVruL+IAxBdB5aYfDjpBxDulAdocyP8H1gCPe8OJ6Qf2oq4zDdA5GMTH1hk6eGkWxHOUQO0S8z4A4ugPJx0KMKl1QBtaTawdAWHk1AQIPYDRMTjwMKVHE5CIUDsB4iIu4GFKzychIoA8R8gIs4GFq76cBIKAeI9QESMDSxc8cNJKASI8wARMTawcEUbTgK9DvDiR2cHtYGlKy20w4lO/AGOagbIDpbXhxM8IkL0AQ5xBug5s4Hl0LXhhNB/gMeaAboDNrDcijacEPoP8FgzQHeADSy3og0nhO4DPNYN0B2wgeVWeDghBtlv0QDPfWCByx5OBnTjwC0D/H0gPk5gDSxdM5zk8gJtPON1+AE+bVTQic92AI6CH8OJ5Q4sZGEcfAXha7MSn+gIIJOaSUYSePs0FCuSXDJbeJwYQ3GtbGqjQYdefhGhKd8LHJo0WZZMoSPoCGdtROLTYAE0HA+RmNVwWeE+xqIolgzTLKpa0I9NwxjuRS3FHyl6AdlctRTfcmVo+o+RQsgorxGfoAWQuWYlkwKeDAn6oIcmUbRZY6GnzKaSZqiyennxTYcXir/0MxSFOg4WQRcwVolPBAHktJUGCtU+l4o6x18EiE2Xhh7G2Bpqd9BSY1O9ZwFBx5HmE1howQrx2S2AwuxfjBdSvTZE0tB8Ueo0IX+nCmld/BA2rQhDDcvS+COiXqDqUmuIxf/Y8wjNX7EQH+IFkGrIoxRNPwAG62+IubybhIrgJVRSCMdjU7+HljxgaRJEuzw2HV8gasUJusaIF0KamSc+sQkgc4qJXxSZnn3XKNUa2s5FKSgUkiH+QUeuzbWkLAg1TMdy/PsYFELII+Ed8WlOAA0xvgUI2O9biRpQBN6FCKiG0ENrN6lEgfEXl+Dx/ALlLbUh5o1dhJCmN3vis1AAZasuARKu9Ik3H4muG0qIIp9sKstQJZrvhVFb6stsLuCyI2kKIZi6IZz47BZAybE4N6R6sCEvm2ssb5EWXcmQ+pqZszNGJU4vn3DBsh61K4Qsi0zjkSAEKoDaMcr+PsOovvEoNj+bCGCL9IFNs0ONO+Si1h01+wE/ankoC9b/qCYhZFsbO2MrAZQaGhNAXVIIL/RFIRytetGJTS03VD1NJKqp7IFxScvHPrpxIcSQsveBlAAqP2zzH/b28swk1hm6NRK+SmBPNiXOEsTPEO6jpDLc/a03+Wg2UsAjBhWhYkNMnulBzlrUZKiwlOcZMta6n2ic5O1/Cy9J7X3ofVyOMlZPw9MmI+XEAJY234EbwqDNiod70iloaUO1JUyeaiVblBN8Z6h92kX7xn4wlUjnJmm5IUumDDAWAx8VmKRebhSbLgVgh3f7r2Bm2n7fT9RRhxBZfZUw1zmVY/rUQfcEELrrO4yusiJpz9HjLtVMDoka6oq49EydZWLEGGTEvB1+7MiX7F0nVr1zWXJPUxUvmKiK0QEnVkpMav/Z7A2hLO5NgdrjcugNyrVCx9Pu8w9Ni7DXklZJ4m6h8C4OURI3yT2N0UAOmvoakq77rkP8ItAuuStOsnubjEz3PNVosDUt38gwQ8x1z9Uhvy56HTchk8wqTh2SAJlN06fqBojQdLE50/hk9z3HoX5TkWyh3yzOIZoHT+cGxn1uvtTn9+4XGzob8lNE37g9bqQQIcXNSsbtpiiS2qcEugFYoUq/y3fI3aehlVghu+maIpGUo7OEBo53pOt95xA/yqHe0LxFnPN4RSBIlbisaY9E7gbiramJj+zdL8RDpCeqsxYxv1CLQJxKV9JP0BQ5koIaEBsJ6IHmwHv3ioey0PwYzRSdVE1KSE1Fn1ptLvpG0d0HSK3vLA9hOCpdonJYlP0UVfVGAKCuatM4R0GJQqR8Ip4ICDTi/T+Hzo5A2txRFLHnGaAjcASaXzVY8Vg/jLOCaqPGKljiAT9A2e/ac0hc4OjXyQX5qRFEncrYvKlhDUw0yhy7jBBQYSCTiaeCOm7mS+m7BXeIqB04avN/IuSqIVpNqQ0xBy0jCDSAsUwy8WAj+UZ2zznUgUdT6ijjIuNRPVQAbdGnlIeYDBqwoGN8Y5kE4sHGemO6J9ihBr4kETv6xqc4EcFEo0gN/VnoghocyD0jnvoCnnXu5z30eLmE0tTeaGEYUX5VjuNFWojIdwO1VeKpJmhQFeEwlzt/OkSkqTGxlMMkUZU8ZUPtkyTNkUYoRMF7Yy3UEA9Wxf/f4b9DAlIU1mWlx/2zmhqZNdJLIQrGjHURJR5sAL99R/jGQ86nYKGWAPUxqO9xpAvRUXwIbSWeuTLNgRvvLVdLTh1RJXSDwlgOkM2xj4VItT/iIPXE86Qw8KqoZELoeLZbKBxyivLaJSF0LxSGC3INQ5sj8Y1dTiFSZ0gbxYgM1zyKvCcpvBTaXZGIEfJRhC1JHI/RMg5Y/D4M9del5u9UOAJ8hIic5QwmyC31pNIVVOvw/qJnSc1xsYW04uR4yL4I35eQEL1CvUciFY8rH+oa+TJ2v4RIPT1CJaIHQdECPmZMhcVPMmhWUf4aZ1YoZvEcEgYxq7IAx+mi2E0yqB3SgwJyHMGwCA2k2eH8jRu0U3M+hB2liPnHr+IMKwgM1X8bAvCiPj7vIGuLS7ghBp1ACArxXIZ/16G3/IO+6Pd44UJkBemGlqK8viHgv0U5KjTmYAdLqKvYjQzUoTyR54GigbyFYheHK4SPQKJEDilGEVg4aIfr2tg3CmMMj9idH4eiie5ytIvUCdGyQvEuEupoWs5piJGHArBQjS6ICz0UerszSYdMTiRmiugKMRX3Q+gRKRG55YTWov2Fjg+Mt6AHKheH1BHuifrltLFoDWmPvs1vItatiObQqpFLhIb6XtjQ4KNnc43l4C96aaHT4dFdopavFu1Lob6EmbkdxGZqSNB9HtFX804rIm3USUcDvkTFXUvKFizOw25DraTiR84nkiRdz41+8VErFqURQ75CZl1q+CwOJYQiTvGgn05SRkfPWzRBH2sBH5ejtaHeMrHwSK2la8ekHfHQ+gqBclFt0IJe6hJS1OT50qCZdEUfBDmFeFe2GpqwflkdfeeNsjRNiB9+uQV8+jUZxEzJ+29aNbCpBYntGfiJpKATFMbQkeSBxBYNBX4LdKaEUpEr/l0zx12vnT83BFPeyONfsH+mpyELNDdF+hSMt2q9XwC6Y1ATOVCobRQD8KtOWbI/DlP4i9OlYAYay9MWAVeob7dEkpYXNrUR+grDYhhqgkShJhIRqbm0KSkpKUl+HyYBPAEXAaatSPTdpQeH2MZI3jIbVrRhzeVlQKkpM4OIRKNQyYSUP6t56qKmIoJGvek4M2tlO/JC4E5b+MVeQufj5OFf2bYCSzh4jZUcNp39rGpaouhJK2+kLvztdNU5rvKb+fj+nU7K7mpvATvY8ZTbvAe3bVYNU3ItW/FoJyObGc9sSYeTXQahUkLstOrpiKZmbeQ9YBZjOc6M6On8tgqtBndt2qqIqmRua2glsBO6trrDzZ5+xya50Fwv1Fu+l25q4rXhjuihbaOiiHRF7HS3sxdlx6epHi/3uslgyE7Wsthx1jMmi/CHXaw1ZjfnCc2ZbYj9N1TXUP5yJ5A6rZ3I9tJTK9Z6yVpGc539hOe6LYcDQeUyzwmEst90vXanKXzl5LDhzEe8pAntDjEOMYSV3qThMthNJnKNg0stlD4k5hBbzF2QvPWLq3YaeahaW/cYKjvxsWEB3zanucxerrKSdxz86Y62Bdu86LQR8wo+gMzJwnY3rxnNZQ47y1FGMo9LHKVHDpopCzl4DxW/PNz0pYcOm7CrbGQWP5kre/Os+cyVC3vOM53bNDkoIokNttcy9nAWoDq/2cxY3rpQKPuHz3vsgPlJbc92VnOTK8LKX2ctZYzPeI7zmLfGAgHqs57tzOYtt9jAVZeWOAiseFzkCoxvgP1lM7/5zlgUh6+4puxlNMsJD+qIQqbOWJPUVFehOItJ2Jwx0RcCp7TKxye8YQaUt8AxCpMuABoP6bIaNEAEFUD+EhOobEnd2At/DLY6RRIx2Sn5SFEZWPxkLqcx2RJH5kYeU4exwtDOA3wg6DWYnFN2rgG+bZfkQTyrJywFIPy1ZpC4LuT00exa3zjGKA6u4QcfmGndsjtiDlM9hTQWlbdzlpYyBl1zreOsUxw8ww0m8G/bI/oNxoXLJPpIIrOGompY6w310rh7qDg4hhUUrZLzeMYrDnGGGSzgLolGZXvSUnK9vfrDFp666XYpXf/YxiwObuGol769KzLXOMaaxFah0sgrb2iq8t7GLh5x1Q52OhdlJh8ZyDh2UeDe6O4SWWsap7jDD4CkzlzTkfdD1rrGKwYxhQu8E/OXr7vmMdbBJSzgmzjuonvlKTs5yUPeMdYhnrBT+CtbNKWde7eSq6uW2qdmM2A/2Wuusw7u4KRLdqLwS8xJDrKNTWxhJ/HIrKmilsGG8pKL7OPAsOn6RGDRaCQmhQBub/yFrIkrcyRvRBKZ7mkrGn3i0jVlZ5B5K4lII1EpVGdnjTcCw/WZWqYoSjtvpY78haFKrmZbHoljmqI1kzeKqormyPGGstWEuluLKJIo4l6WRanG97Ula6ZX/W+6wNBI1JG4cj1RdEz/pLA35kibKfsB3F9bBonqjyQWzc4y/ZmuTyQiayaKhuq/dI3EtqSdZPpKIW+8/cBQR67mmP6/sC1T9D8Sa6b46UPzRhV9vNvOkaHsdhF9NS87kjjUZdFF3KnG9Vz4ahq4wg2GOsBID01bJKf5WpM11bv+ldVUL7jAGb4iaAqBohGpK3HniqLpuP6Lqiec4KeB55590ZPGHpkzbacsLdXZ3kEwPrEhgvWo4vOIGiMkA0kABACSGBUBQFEM0XJEiaYHMimm4QAGgAgYAoAAABCAAQAAEAAAAMIAAAAAAogWdhJdiQKkl000MEMAcoAf6kjB2XhaYGx40gb5xAOLzyIotCGaGPiGOhpAG2JIC8hQgFz4Qx0BoA0xpAUyJCAmeiGf4tSA43uORwffwniAtyVeiHlJIPUdMMCRopgiXjCItiRQixBjsdaFxItmGrIk0IgQA5GyRQNGvMim4yOB7AoxtlK9SrxII8AQ3COB9IQYLA88eaJkF8GdeKEw4SOBRgkxsGq0Jl4ka/SRQBaEGCOa8JknIkDiBQxaPhKoTYgxd/E4+lviRXIBhuAeCaQnxGB51aP0j/Yl0WEQL26gnkwC6RRiwEaRPIx4UWkUYBQHCdRIiPEI48iFF/nvyE3ihaA0R5FAQ0IMGEI0hBfVJ150UD0mgSwJMQbNexIrkhMvvEw9TQJ9BsEkU7C76mQhhgcg1YUXbgUYTvJJBKTTNRkaXwxtsoi2Cb1bCEeIT24HiFqRoW2QBxHvKMQTVsT7dykBv1cM/bXAQNFBhbgJcQQ08c5CSsDjFUM5NRFPLyEeFiokxAMSQbxFISXgOoohRURcRdFWHj9mQTJOvFeOSsBHxdCeh4gPqCBZJ94rSCXgU3g9RLxZiMfZiffHSsA/xNCrIiJ+faEhQjylhXgDYyXgEDEE3ULEwV+4wBFvVLUScFAMAewh4qAQh+Mm3hBYAg5K1IUil4hnWYMWR7y1YoOQiLgQQKik0mNZOng0kMRuEYurSBq1VWxrQRK11RgScR8j4v1AwJcHiFQCfiTiqP6RKaX2gyKXuB+fANJ/GMqQ+QmoIV68yCMGUT8yQcn9oKgh7+dTQNiPQ1iyeQyFyBlK3tvmtT2SE49d9KlX+a1kx730xALWFUuVl1SwTuOwHKIsy4ohy4JRNWRZrlRJUM2BIkiqsE4OUbaGyaXlkSth5MngSBpxWpoRXp2YRtSqHpccjO8ZPDqU7qZgwGPSpwPcYdH5JITEhQAMvtHzwiraVrgnKBoBggP8N8+XnYrOhwQ9dZa9KA4jCBzJGuAetPsFaviQoIazNCMpFxlrclpRLzLNRoacB7g9RT9LCLCF4PQOBPCjN1RcbkBDmI53Qg/wWFiUuf3JfagAomBirW1Un0ZN2gCnDSgoaY3TChLlvgvvDEWDGVCa0aV1HO44hTF+b/ABnjU/lE1jsHOhZxYHAT5+72uAxxb9D4cSiryQg6N22s5Cp/gSPWb/Ab7pjihaxI9WnLUraOHLvDaiR+wfWpBDoZsprDxi9KEod2PCAJ/0vWeDOOF60lsHvRVV9MbYi3bLpi+NG/WCyuw9EvjyYD5KDpWyxQ6WBcY2w2hOrAThU7JSTbNjbhAzQwhNP2+oJnXNQr5K1wKDY42BSypqwjSF1KAkwBr+pHmPOUGM2ZCm3MLnIdeCXurO4KHyk4wzxyBJfAXZBHzweypMfvYxCS52R2UA+7m1wVfkG/DprygAgO68P66R/70jF3k8CfY1nMF1+OCreGo17iY600kwFb3EDRkDGVQIMj21wtuHeEU8SyyYqeGGAIqTtfs5MwIDVOXOFnAD0pKgiugNDT9asyEOG0PZcAN0yCtK3FXgqN89gxUsLsOd+b+kqvKi4xsWNByMMx1j7skvMkAJjxM0dHsRi5xrs5Ca4nRTkqrIHIhTCHwW6Zh2+jDgsgYoNVdU5RxmR7uENg9Qm1pGvg7Lhw1ij2xMV0HGBJ0BNQxQIk78f0FqQ+xga18Tu3IquIV0xWmW5R0vmpI2Hcd8l5g/ZpApjD5hgE6Jq128IQiyZoci8w0nD7fRGLj6ZruaIipjA+1xWJx7WHMDdDCKbq3ICGL+oGSDlSRv9HI0x4D2Eu1kkaaRDOUxeq4BOrQ2+oMb0H4wzljHfhuJwEFZSTw4JgkcFMf0iN5EaiTl9k5SkOLTjGf0/QDdfBIgjeEqmmAWLynHp80Ri0xOpcxpmxAt10cvI18Hcvu0GJ15gC6C2j58zqdZKyISxMDu+DARRN/jEQMkiWGXM+L7fuoUebcESKIfp1PNoAXiaHR1VNBImXILDPiVoftweoAO/aI65aK9UoPjya85RU8VAZcdd/JtqOSSRRl9AOP740yZIoVRIZmMROrTA9mxJ2V8feeL8UWZrgC3HIAlaWBNLqCuMQMnbDJo+pRRrQVRjqBlltO8hT2uWCMFMem8TT4tUtSqYzJrrFs08zTYU4TzQYXTzOSaZTSu3Oa78zGso9iw1EfQ9uJnFkjZxoz7mJOFzFijS5GCVWR8QicKgSjuo2nnovS8eNhRfCha46In9C7Jcr5tfQ8pWNElXRC/IoN5RT0uNLQgTNQyWquHKG38veNgC8nEh6weX8VMspkiMfgiLo/Df+Qjb22iLkwe+nV8TyGj4v8QJU4snw75XhJSKLUv/WQAA8wBAGj+/gB/fwAA/v5//v5/EQA9QMEEqHAIEADx3Beu9wHhBN7QUCcwxSFAh/vBJkGVLHQAuAAAA2goXAEAALiaKf5idWlsZC9zaGFkZXIvcmVsZWFzZS9wb3N0LXYtMTAwLmdsc2wAYnVpbGQvc2hhZGVyL3JlbGVhc2UvcG9zdC14LXJheS1mLmdsc2wAYV92ZXJ0ZXhfdGV4X2Nvb3JkAHVfb3BhcXVlAHVfYmxlbmQAb3B0aW9ucwAvb3B0aW9ucwAjZGVmaW5lIFRDX01TRURHRQoAI2RlZmluZSBUQ19TSU5HTEVfTUFUUklYCgAjZGVmaW5lIFRDX0RFUklWQVRJVkVTCgAjZGVmaW5lIFRDX01SVAoAI2RlZmluZSBUQ19JTlNUQU5DSU5HCgAjZGVmaW5lIFRDX0JBVENIX1NJWkUgACNkZWZpbmUgVENfRkFDRVMKACNkZWZpbmUgVENfRkxJUF9OT1JNQUxTCgAjZGVmaW5lIFRDX01BWF9DVVRUSU5HX1NFQ1RJT05TIAAKI2RlZmluZSBUQ19NQVhfQ1VUVElOR19QTEFORVNfUEVSX1NFQ1RJT04gAAojZGVmaW5lIFRDX0NVVFRJTkdfUExBTkVTCgBidWlsZC9zaGFkZXIvcmVsZWFzZS9kZXB0aC12Lmdsc2wAYnVpbGQvc2hhZGVyL3JlbGVhc2UvZGVwdGgtZi5nbHNsACNkZWZpbmUgVENfRU5DT0RFX0RFUFRICgBidWlsZC9zaGFkZXIvcmVsZWFzZS9waG9uZy12Lmdsc2wAYnVpbGQvc2hhZGVyL3JlbGVhc2UvcGhvbmctZi5nbHNsACNkZWZpbmUgVENfVkVSVEVYX0NPTE9SCgAjZGVmaW5lIFRDX1RFWFRVUkUgKDAAfFRDX0RFQ0FMAHxUQ19SRVBFQVQAKQoAI2RlZmluZSBUQ19URVhUVVJFX01BVFJJWAoAI2RlZmluZSBUQ19TUEhFUkVfTUFQCgAjZGVmaW5lIFRDX1NQRUNVTEFSCgAjZGVmaW5lIFRDX0RJU0NBUkRfMF9BTFBIQQoAI2RlZmluZSBUQ19QT0lOVFMKACNkZWZpbmUgVENfU1BMQVRfV09STEQKACNkZWZpbmUgVENfU1BMQVRfRElTSwoAI2RlZmluZSBUQ19TUExBVF9TUEhFUkUKACNkZWZpbmUgVENfTElORV9QQVRURVJOCgAjZGVmaW5lIFRDX0xJTkVfUEFUVEVSTl9TQ1JFRU4KACNkZWZpbmUgVENfTElHSFRfQ09VTlQgACNkZWZpbmUgVENfU0hBRE9XX0xJR0hUX0NPVU5UIABUQ19MSUdIVFMAVENfU0hBRE9XX0xJR0hUUwBUQ19QTEFJTl9ESVJfTElHSFRTAFRDX1NIQURPV19ESVJfTElHSFRTACNkZWZpbmUgACBUQ19MSUdIVCgAdGNfAHV2NF9tb2RlbF9tYXRyaWNlc1swXQB1djRfY3V0dGluZ19wbGFuZXNbMF0AdXYzX2xpZ2h0X3Bvc2l0aW9uWzBdAHV2M19saWdodF9jb2xvclswXQB1bTRfcHJvamVjdGlvbl9tYXRyaXgAdW00X3ZpZXdfbWF0cml4AHVtNF9tb2RlbF9tYXRyaXgAdW0zX25vcm1hbF9tYXRyaXgAdWl2Ml9tYXRyaXhfb2Zmc2V0cwB1djNfYW1iaWVudF9saWdodF9jb2xvcgB1Yl9wcm9qZWN0aW9uX2lzX29ydGhvAHViX2ZsYXQAdWJfYXV0b19mbGlwAHV2NF9kaWZmdXNlX2NvbG9yAHVmX29wYWNpdHkAdXYyX3NwZWN1bGFyX21peF9hbmRfZ2xvc3MAdXYzX2VtaXNzaW9uX2NvbG9yAHVmX2xpZ2h0X21peAB1czJfdGV4dHVyZQB1djNfZXhwbG9kZV90cmFuc2xhdGlvbgB1aV9jdXR0aW5nX3NlY3Rpb25zAHVmX21pcnJvcgB1czJfc3BoZXJlX21hcAB1djNfdGV4dHVyZV9tYXRyaXhfcm93MAB1djNfdGV4dHVyZV9tYXRyaXhfcm93MQB1Zl92aWV3cG9ydF9oZWlnaHQAdWZfcG9pbnRfc2l6ZQB1czJfbGluZV9wYXR0ZXJuAHVmX2xpbmVfcGF0dGVybl9pbnZlcnNlX2xlbmd0aAB1djRfZ3JvdW5kX3BsYW5lAHV2Ml9yZWZsZWN0aW9uX2F0dGVudWF0aW9uAGF2NF92ZXJ0ZXgAYXYzX25vcm1hbABhZl9iYXRjaF9pbmRleABhdjRfbWF0cml4X2NvbDEAYXY0X21hdHJpeF9jb2wyAGF2NF9tYXRyaXhfY29sMwBhdjRfZGlmZnVzZV9jb2xvcgBhdjJfdGV4dHVyZV9jb29yZHMAYWZfbGluZV9wYXR0ZXJuX29mZnNldABOMTJfR0xPQkFMX19OXzExNlJheVNjZW5lSXRlcmF0b3JFAE4xMl9HTE9CQUxfX05fMTE5Vm9sdW1lU2NlbmVJdGVyYXRvckUATjJUQzNXZWI5U2VsZWN0aW9uMjJDb252ZXhQb2x5aGVkcm9uVm9sdW1lRQBOMlRDM1dlYjlTZWxlY3Rpb24xM0lDb252ZXhWb2x1bWVFAE4yVEMzV2ViOVNlbGVjdGlvbjEyU3BoZXJlVm9sdW1lRQBOMlRDM1dlYjlTZWxlY3Rpb245UmF5Vm9sdW1lRQBBZGRQYXRoOiBPcGVuIHBhdGhzIG11c3QgYmUgc3ViamVjdC4AQ2xpcHBlcjogQ29vcmRpbmF0ZSBvdXRzaWRlIGFsbG93ZWQgcmFuZ2U6IHg9ACx5PQBOMTBDbGlwcGVyTGliMTFDbGlwcGVyQmFzZUUAVXBkYXRlRWRnZUludG9BRUw6IGludmFsaWQgY2FsbABEb01heGltYSBlcnJvcgBOMTBDbGlwcGVyTGliN0NsaXBwZXJFAEVycm9yOiBQb2x5VHJlZSBzdHJ1Y3QgaXMgbmVlZGVkIGZvciBvcGVuIHBhdGggY2xpcHBpbmcuACAjIEFubm90YXRpb24gVmlldwAjIEFubm90YXRpb24gVmlldwBOMlRDNlN0cmVhbTZSZWFkZXI4UmVtYXBwZXJFADxCQURfREFUQSB0eXBlPSJUUlVOQ0FURURfQkxPQ0siPgA8QkFEX0RBVEEgdHlwZT0iWkZSQU1FX0RFQ09NUFJFU1NfRkFJTEVEIj4APEJBRF9EQVRBIHR5cGU9IlVOTUFUQ0hFRF9DT0RFIj4APEJBRF9EQVRBIHR5cGU9IlNUUkVBTV9WRVJTSU9OX01JU01BVENIRUQiIGV4cGVjdGVkPSIlZCIgYWN0dWFsPSIlZCI+ADxCQURfREFUQSB0eXBlPSJQQVJTRV9CT1VORElOR19UUkVFX0ZBSUxFRCI+ADxCQURfREFUQSB0eXBlPSJaRlJBTUVfREVDT01QUkVTU19GQUlMRUQiPgA8UFJJT1JJVFlfS0VZRURfREFUQV9TRU5UPgA8QkFEX0RBVEEgdHlwZT0iVU5NQVRDSEVEX0NPREUiPgBib3dzZXIAbXNlZGdlAG1zaWUAZmlyZWZveABzYWZhcmkAbGludXgAdmVyc2lvbgBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlOMlRDM1dlYjEwQ2xpcFJlZ2lvbkVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWIxMVBvbHlQb2x5Z29uRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQAjAGJ1aWxkL3NoYWRlci9yZWxlYXNlL3NvbGlkLXYuZ2xzbABidWlsZC9zaGFkZXIvcmVsZWFzZS9zb2xpZC1mLmdsc2wAYV92ZXJ0ZXgAdV92aWV3X3Byb2plY3Rpb25fbWF0cml4AHVfY29sb3IATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJUQzNXZWI0RHJhdzZTaGFkZXJFTlNfOWFsbG9jYXRvcklTNF9FRUVFAE4yVEMzV2ViOVNlbGVjdGlvbjEzU2NlbmVJdGVyYXRvckUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJHTDZCdWZmZXJFTlNfOWFsbG9jYXRvcklTMl9FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU4yR0wxMlJlbmRlckJ1ZmZlckVOU185YWxsb2NhdG9ySVMyX0VFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJHTDExRnJhbWVCdWZmZXJFTlNfOWFsbG9jYXRvcklTMl9FRUVFAEdMX05PX0VSUk9SAEdMX1VOS05PV05fRVJST1IAR0xfT1VUX09GX01FTU9SWQBHTF9JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTgBHTF9JTlZBTElEX09QRVJBVElPTgBHTF9JTlZBTElEX1ZBTFVFAEdMX0lOVkFMSURfRU5VTQBPcGVuR0wgRVMgJXUuJXUAR0xfQU5HTEVfaW5zdGFuY2VkX2FycmF5cwBHTF9FWFRfYmxlbmRfbWlubWF4AEdMX0VYVF9mcmFnX2RlcHRoAEdMX0VYVF9zaGFkZXJfdGV4dHVyZV9sb2QAR0xfRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljAEdMX09FU19lbGVtZW50X2luZGV4X3VpbnQAR0xfT0VTX3N0YW5kYXJkX2Rlcml2YXRpdmVzAEdMX09FU190ZXh0dXJlX2Zsb2F0AEdMX09FU190ZXh0dXJlX2Zsb2F0X2xpbmVhcgBHTF9PRVNfdGV4dHVyZV9oYWxmX2Zsb2F0AEdMX09FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyAEdMX09FU192ZXJ0ZXhfYXJyYXlfb2JqZWN0AEdMX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjAEdMX1dFQkdMX2RlYnVnX3JlbmRlcmVyX2luZm8AR0xfV0VCR0xfZGVidWdfc2hhZGVycwBHTF9XRUJHTF9kZXB0aF90ZXh0dXJlAEdMX1dFQkdMX2RyYXdfYnVmZmVycwBHTF9XRUJHTF9sb3NlX2NvbnRleHQAR0xfT0VTX3BhY2tlZF9kZXB0aF9zdGVuY2lsAEdMX09FU19nZXRfcHJvZ3JhbV9iaW5hcnkAR0xfT0VTX3JnYjhfcmdiYTgAR0xfT0VTX3RleHR1cmVfbnBvdABHTF9FWFRfb2NjbHVzaW9uX3F1ZXJ5X2Jvb2xlYW4AR0xfRVhUX3JlYWRfZm9ybWF0X2JncmEAR0xfRVhUX3JvYnVzdG5lc3MAR0xfRVhUX3RleHR1cmVfY29tcHJlc3Npb25fZHh0MQBHTF9FWFRfdGV4dHVyZV9mb3JtYXRfQkdSQTg4ODgAR0xfRVhUX2RyYXdfYnVmZmVycwBHTF9FWFRfdGV4dHVyZV9zdG9yYWdlAEdMX0FOR0xFX2RlcHRoX3RleHR1cmUAR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdABHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9tdWx0aXNhbXBsZQBHTF9BTkdMRV9wYWNrX3JldmVyc2Vfcm93X29yZGVyAEdMX0FOR0xFX3RleHR1cmVfY29tcHJlc3Npb25fZHh0MwBHTF9BTkdMRV90ZXh0dXJlX2NvbXByZXNzaW9uX2R4dDUAR0xfQU5HTEVfdGV4dHVyZV91c2FnZQBHTF9BTkdMRV90cmFuc2xhdGVkX3NoYWRlcl9zb3VyY2UAR0xfTlZfZmVuY2UAR0xfT0VTX2RlcHRoX3RleHR1cmUAR0xfT0VTX2RlcHRoMjQAR0xfT0VTX2RlcHRoMzIAR0xfRVhUX2NvbG9yX2J1ZmZlcl9mbG9hdABHTF9FWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQAR0xfRVhUX2NvcHlfaW1hZ2UAR0xfRVhUX2RlYnVnX2xhYmVsAEdMX0VYVF9kcmF3X2J1ZmZlcnNfaW5kZXhlZABHTF9FWFRfZ2VvbWV0cnlfcG9pbnRfc2l6ZQBHTF9FWFRfZ2VvbWV0cnlfc2hhZGVyAEdMX0VYVF9ncHVfc2hhZGVyNQBHTF9FWFRfbWFwX2J1ZmZlcl9yYW5nZQBHTF9FWFRfc2VwYXJhdGVfc2hhZGVyX29iamVjdHMAR0xfRVhUX3NoYWRlcl9pbXBsaWNpdF9jb252ZXJzaW9ucwBHTF9FWFRfc2hhZGVyX2ludGVnZXJfbWl4AEdMX0VYVF9zaGFkZXJfaW9fYmxvY2tzAEdMX0VYVF9zaGFkb3dfc2FtcGxlcnMAR0xfRVhUX3NSR0IAR0xfRVhUX3NSR0Jfd3JpdGVfY29udHJvbABHTF9FWFRfdGVzc2VsbGF0aW9uX3BvaW50X3NpemUAR0xfRVhUX3Rlc3NlbGxhdGlvbl9zaGFkZXIAR0xfRVhUX3RleHR1cmVfYm9yZGVyX2NsYW1wAEdMX0VYVF90ZXh0dXJlX2J1ZmZlcgBHTF9FWFRfdGV4dHVyZV9jb21wcmVzc2lvbl9zM3RjAEdMX0VYVF90ZXh0dXJlX2N1YmVfbWFwX2FycmF5AEdMX0VYVF90ZXh0dXJlX3JnAEdMX0VYVF90ZXh0dXJlX3NSR0JfZGVjb2RlAEdMX0VYVF90ZXh0dXJlX3ZpZXcAR0xfRVhUX3VucGFja19zdWJpbWFnZQBHTF9LSFJfZGVidWcAR0xfTlZfYmdyAEdMX05WX2JsZW5kX2VxdWF0aW9uX2FkdmFuY2VkAEdMX05WX2NvcHlfYnVmZmVyAEdMX05WX2NvcHlfaW1hZ2UAR0xfTlZfZHJhd19idWZmZXJzAEdMX05WX2RyYXdfaW5zdGFuY2VkAEdMX05WX2RyYXdfdGV4dHVyZQBHTF9OVl9leHBsaWNpdF9hdHRyaWJfbG9jYXRpb24AR0xfTlZfZmJvX2NvbG9yX2F0dGFjaG1lbnRzAEdMX05WX2ZyYW1lYnVmZmVyX2JsaXQAR0xfTlZfZnJhbWVidWZmZXJfbXVsdGlzYW1wbGUAR0xfTlZfZ2VuZXJhdGVfbWlwbWFwX3NSR0IAR0xfTlZfaW5zdGFuY2VkX2FycmF5cwBHTF9OVl9vY2NsdXNpb25fcXVlcnlfc2FtcGxlcwBHTF9OVl9ub25fc3F1YXJlX21hdHJpY2VzAEdMX05WX3BhY2tfc3ViaW1hZ2UAR0xfTlZfcGFja2VkX2Zsb2F0AEdMX05WX3BhY2tlZF9mbG9hdF9saW5lYXIAR0xfTlZfcGl4ZWxfYnVmZmVyX29iamVjdABHTF9OVl9yZWFkX2J1ZmZlcgBHTF9OVl9yZWFkX2RlcHRoAEdMX05WX3JlYWRfZGVwdGhfc3RlbmNpbABHTF9OVl9yZWFkX3N0ZW5jaWwAR0xfTlZfc2hhZG93X3NhbXBsZXJzX2FycmF5AEdMX05WX3NoYWRvd19zYW1wbGVyc19jdWJlAEdMX05WX3NSR0JfZm9ybWF0cwBHTF9OVl90ZXh0dXJlX2FycmF5AEdMX05WX3RleHR1cmVfYm9yZGVyX2NsYW1wAEdMX05WX3RleHR1cmVfY29tcHJlc3Npb25fbGF0YwBHTF9OVl90ZXh0dXJlX2NvbXByZXNzaW9uX3MzdGMAR0xfTlZfdGV4dHVyZV9jb21wcmVzc2lvbl9zM3RjX3VwZGF0ZQBHTF9OVl90aW1lcl9xdWVyeQBHTF9LSFJfYmxlbmRfZXF1YXRpb25fYWR2YW5jZWQAR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUAR0xfT0VTX2RlcHRoX3RleHR1cmVfY3ViZV9tYXAAR0xfT0VTX2Zib19yZW5kZXJfbWlwbWFwAEdMX09FU19tYXBidWZmZXIAR0xfT0VTX3NhbXBsZV9zaGFkaW5nAEdMX09FU19zYW1wbGVfdmFyaWFibGVzAEdMX09FU19zaGFkZXJfaW1hZ2VfYXRvbWljAEdMX09FU19zaGFkZXJfbXVsdGlzYW1wbGVfaW50ZXJwb2xhdGlvbgBHTF9PRVNfdGV4dHVyZV9zdGVuY2lsOABHTF9PRVNfdGV4dHVyZV9zdG9yYWdlX211bHRpc2FtcGxlXzJkX2FycmF5AEdMX09FU192ZXJ0ZXhfaGFsZl9mbG9hdABHTF9FWFRfaW5zdGFuY2VkX2FycmF5cwBOU3QzX18yMTliYXNpY19pc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUAInsgdHJ5IHsgdmFyIGJvd3NlciA9IHdpbmRvd1tcImJvd3NlclwiXTsgaWYgKCEgKGJvd3NlciAmJiBib3dzZXJbXCJ3aW5kb3dzXCJdICYmICgoIGJvd3NlcltcImNocm9tZVwiXSAmJiBib3dzZXJbXCJjb21wYXJlVmVyc2lvbnNcIl0gKFtib3dzZXJbXCJ2ZXJzaW9uXCJdLCBcIjU1XCJdKSA+PSAwICYmIGJvd3NlcltcImNvbXBhcmVWZXJzaW9uc1wiXSAoW2Jvd3NlcltcInZlcnNpb25cIl0sIFwiNTdcIl0pIDwgMCApIHx8ICggYm93c2VyW1wiZmlyZWZveFwiXSAmJiBib3dzZXJbXCJjb21wYXJlVmVyc2lvbnNcIl0gKFtib3dzZXJbXCJ2ZXJzaW9uXCJdLCBcIjUxXCJdKSA+PSAwICYmIGJvd3NlcltcImNvbXBhcmVWZXJzaW9uc1wiXSAoW2Jvd3NlcltcInZlcnNpb25cIl0sIFwiNThcIl0pIDwgMCApKSApKSB7IHJldHVybiAwOyB9IH0gY2F0Y2ggKGUpIHsgcmV0dXJuIDA7IH0gdHJ5IHsgdmFyIGdsID0gTW9kdWxlLmN0eDsgdmFyIGdsX2RlYnVnID0gZ2xbXCJnZXRFeHRlbnNpb25cIl0gKFwiV0VCR0xfZGVidWdfcmVuZGVyZXJfaW5mb1wiKTsgaWYgKGdsX2RlYnVnKSB7IHZhciByZW5kZXJlciA9IGdsW1wiZ2V0UGFyYW1ldGVyXCJdIChnbF9kZWJ1Z1tcIlVOTUFTS0VEX1JFTkRFUkVSX1dFQkdMXCJdKTsgaWYgKHJlbmRlcmVyICYmIHJlbmRlcmVyW1wiaW5kZXhPZlwiXSAoXCJBTkdMRVwiKSA+PSAwICYmIChyZW5kZXJlcltcImluZGV4T2ZcIl0gKFwiQU1EXCIpID49IDAgfHwgcmVuZGVyZXJbXCJpbmRleE9mXCJdIChcIlJhZGVvblwiKSA+PSAwKSAmJiByZW5kZXJlcltcImluZGV4T2ZcIl0gKFwiRGlyZWN0M0QxMVwiKSA+PSAwKSB7IHJldHVybiAxOyB9IGVsc2UgeyByZXR1cm4gMDsgfSB9IH0gY2F0Y2ggKGUpIHt9IHJldHVybiAxOyB9IgAieyB0cnkgeyB2YXIgYm93c2VyID0gd2luZG93W1wiYm93c2VyXCJdOyByZXR1cm4gKCBib3dzZXIgJiYgYm93c2VyW1wid2luZG93c1wiXSAmJiAoYm93c2VyW1wid2Via2l0XCJdIHx8IGJvd3NlcltcImJsaW5rXCJdIHx8IGJvd3NlcltcImdlY2tvXCJdKSApID8gMSA6IDA7IH0gY2F0Y2ggKGUpIHsgcmV0dXJuIDE7IH0gfSIATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTjJHTDZTaGFkZXJFTlNfOWFsbG9jYXRvcklTMl9FRUVFAC9cAGluY2x1ZGUAbGF0ZXN0ACN2ZXJzaW9uIDEwMAoAI3ZlcnNpb24gMzAwIGVzCgBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlOMkdMN1Byb2dyYW1FTlNfOWFsbG9jYXRvcklTMl9FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU4yR0w3VGV4dHVyZUVOU185YWxsb2NhdG9ySVMyX0VFRUUAAAAA////////AAAAAAAA////////////AAAA/3JiAE5TdDNfXzIxM2Jhc2ljX2ZpbGVidWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjE0YmFzaWNfaWZzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUATjJUQzdOZXR3b3JrMTBDb25uZWN0aW9uRQB7ImNvbW1hbmQiOiIAT1BFTl9NT0RFTAAsIm1vZGVsX25hbWUiOiIAJXUALCJzdHJlYW1fdmVyc2lvbiI6IgAsIm5ldHdvcmtfdmVyc2lvbiI6IgAsInNlc3Npb25fdG9rZW4iOiIAQ09ORklHVVJFX1NUUkVBTQAsImxpbWl0X01pQiI6ACwibWVzaF9sZXZlbCI6ACVmACwiY3V0b2ZmX3NjYWxlIjoALCJTdHJlYW1DdWxsZWQiOnRydWUALCJTdHJlYW1DdWxsZWQiOmZhbHNlACwiU3RyZWFtS2V5ZWREYXRhT25JZGxlIjp0cnVlACwiU3RyZWFtS2V5ZWREYXRhT25JZGxlIjpmYWxzZQAsIk5vU3RyZWFtTGltaXQiOnRydWUALCJOb1N0cmVhbUxpbWl0IjpmYWxzZQAsIlN0cmVhbUluc3RhbmNlc09uRGVtYW5kIjp0cnVlACwiU3RyZWFtSW5zdGFuY2VzT25EZW1hbmQiOmZhbHNlACwiQWdncmVzc2l2ZUNvbXByZXNzaW9uIjp0cnVlACwiQWdncmVzc2l2ZUNvbXByZXNzaW9uIjpmYWxzZQAsIlN0cmVhbU1vZGVsQm91bmRpbmdQcmV2aWV3cyI6dHJ1ZQAsIlN0cmVhbU1vZGVsQm91bmRpbmdQcmV2aWV3cyI6ZmFsc2UALCJTdHJlYW1JbnN0YW5jZUJvdW5kaW5nUHJldmlld3MiOnRydWUALCJTdHJlYW1JbnN0YW5jZUJvdW5kaW5nUHJldmlld3MiOmZhbHNlACwiU3RyZWFtT25seUludGVyZXN0aW5nQm91bmRpbmdQcmV2aWV3cyI6dHJ1ZQAsIlN0cmVhbU9ubHlJbnRlcmVzdGluZ0JvdW5kaW5nUHJldmlld3MiOmZhbHNlACwiU3RyZWFtRWplY3RlZEJvdW5kaW5nUHJldmlld3MiOnRydWUALCJTdHJlYW1FamVjdGVkQm91bmRpbmdQcmV2aWV3cyI6ZmFsc2UALCJEZWZhdWx0Ijp0cnVlAFNFTkRfU1RSRUFNACwiY2FtZXJhX2RhdGEiOgAsInZpZXdwb3J0X2FzcGVjdCI6ACwidmlld3BvcnRfaGVpZ2h0IjoALCJ2aWV3cG9ydF93aWR0aCI6AFtdAE1BUktfSU5TVEFOQ0VfTUVTSF9MRVZFTAAsImluY3MiOgBbMF0ALFsALC0AXSwAXV0ATUFSS19JTlNUQU5DRV9JTlRFUkVTVElORwAsImludGVyZXN0aW5nIjp0cnVlAE1BUktfSU5TVEFOQ0VfR1JPVVBTX01FU0hfTEVWRUwALCJmbGFnIjp0cnVlAE1BUktfSU5TVEFOQ0VfR1JPVVBTX0lOVEVSRVNUSU5HAE1BUktfQUxMX0lOU1RBTkNFU19JTlRFUkVTVElORwBDT01QVVRFX0lOU1RBTkNFX0JPVU5ESU5HACwicmVxdWVzdF90b2tlbiI6ACwiaW5jbHVkZV9leGNsdWRlZCI6dHJ1ZQBVUERBVEVfSU5TVEFOQ0VfQk9VTkRJTkcALCJib3VuZGluZ3MiOgBSRU1PVkVfSU5TVEFOQ0UAQkVHSU5fVk9MVU1FX1NFTEVDVElPTgAiLCJ0eXBlIjowACwicmVxdWVzdF90b2tlbiI6JXUALCJzZWxlY3Rpb25faGFuZGxlIjoldQAsImNvbmZpZ19mbGFncyI6JXUALCJwbGFuZV9jb3VudCI6JXUALCJwbGFuZXMiOgAsImhldXJpc3RpY19vcmlnaW4iOgAiLCJ0eXBlIjoxACwicmF5X29yaWdpbiI6ACwicmF5X2RpcmVjdGlvbiI6ACIsInR5cGUiOjIALCJzcGhlcmVfY2VudGVyIjoALCJzcGhlcmVfcmFkaXVzIjolZgBFTkRfVk9MVU1FX1NFTEVDVElPTgAsInNlbGVjdGlvbl9oYW5kbGUiOiV1fQBBRFZBTkNFX1ZPTFVNRV9TRUxFQ1RJT04ALCJiYXRjaF9jYXBhY2l0eSI6JXV9AFVQREFURV9JTlNUQU5DRV9NQVRSSVgALCJpbnN0YW5jZXMiOgAsIm1hdHJpY2VzIjoAVVBEQVRFX01BVFJJWF9EQVRBACwia2V5cyI6ACwiZGF0YXMiOgBERVNUUk9ZX01BVFJJWABERVRBQ0hfSU5DTFVTSU9OUwBBVFRBQ0hfTU9ERUxTACwiYXR0YWNoX3Njb3BlIjoALCJwYXJlbnRfdW5pdCI6ACwibW9kZWxfbmFtZXMiOlsALCJpbmNsdXNpb25fbWF0cmljZXMiOlsAIiwAUkVQT1JUX0NMSUVOVF9LSUIALCJraWIiOgB9AFNFVF9WSVNJQklMSVRZX0JZX0FUVEFDSE1FTlQALCJkYXRhIjoAU0VUX1NDRU5FX1ZJU0lCSUxJVFkALCJiaXRzIjoAU0VUX0lOU1RBTkNFX0JJVFMALCJtYXNrIjoldQAsInZhbHVlIjoldX0AU0VUX0NVVFRJTkdfU0VDVElPTlMALCJzZWN0aW9ucyI6WwBdfQBTVEFSVF9FWFBMT0RFACwiZXhwbG9zaW9uX2NlbnRlciI6AEVORF9FWFBMT0RFACJ9AFNFVF9FWFBMT0RFX01BR05JVFVERQAsImV4cGxvZGVfbWFnbml0dWRlIjolZn0AU0VUX01FU0hfTEVWRUwALCJsZXZlbCI6AFNFVF9TVFJFQU1fQ1VUT0ZGX1NDQUxFACwic2NhbGUiOgBJRExFX01BUktFUgBSRVNFVF9UT19FTVBUWQBSRVRBSU4ALCJtb2RlbF9rZXkiOgAsImtleSI6ACwidHlwZSI6AFJFUExBQ0VfTUVTSAAsIm1lc2hfa2V5IjoALCJib3VuZGluZyI6AFNFUlZFUl9TRVRUSU5HUwBQQVNTX1RIUk9VR0hfSABQQVNTX1RIUk9VR0hfTABTU1JfS0VZRURfREFUQQBSUEMAQUNLAFNFUlZFUl9TSURFX0NMSUVOVF9JTkZPAFNFUlZFUl9TSURFX0VOQ09ESU5HAFNFUlZFUl9TSURFX1JFTkRFUgBJTlNUQU5DRV9HUk9VUF9JTkNTX1dJVEhPVVRfTUVTSF9EQVRBX1JFUVVFU1QASU5TVEFOQ0VfR1JPVVBfSU5DU19XSVRIX01FU0hfREFUQV9SRVFVRVNUAElOU1RBTkNFX0lEU19XSVRIT1VUX01FU0hfREFUQV9SRVFVRVNUAElOU1RBTkNFX0lEU19XSVRIX01FU0hfREFUQV9SRVFVRVNUAEdFVF9LRVlfSU5GT19SRVFVRVNUAE1BVEVSSUFMX01BUF9JRFNfUkVRVUVTVABNQVRSSVhfSURTX1JFUVVFU1QATUFURVJJQUxfSURTX1JFUVVFU1QAR1JPVVBfSURTX1JFUVVFU1QASU1BR0VfSURTX1JFUVVFU1QATUVTSF9JRFNfUkVRVUVTVABEQVRBX0lEU19SRVFVRVNUACwiaWRzIjoAdm9pZABib29sAHN0ZDo6c3RyaW5nAHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AHN0ZDo6d3N0cmluZwBlbXNjcmlwdGVuOjp2YWwAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nIGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZUVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgBpbmZpbml0eQARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAcndhAExDX0FMTABMQ19DVFlQRQAAAABMQ19OVU1FUklDAABMQ19USU1FAAAAAABMQ19DT0xMQVRFAABMQ19NT05FVEFSWQBMQ19NRVNTQUdFUwBMQU5HAEMuVVRGLTgAUE9TSVgATVVTTF9MT0NQQVRIAGNsb2NrX2dldHRpbWUoQ0xPQ0tfTU9OT1RPTklDKSBmYWlsZWQATlN0M19fMjhpb3NfYmFzZUUATlN0M19fMjliYXNpY19pb3NJY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjliYXNpY19pb3NJd05TXzExY2hhcl90cmFpdHNJd0VFRUUATlN0M19fMjE1YmFzaWNfc3RyZWFtYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAE5TdDNfXzIxNWJhc2ljX3N0cmVhbWJ1Zkl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRQBOU3QzX18yMTNiYXNpY19pc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAE5TdDNfXzIxM2Jhc2ljX2lzdHJlYW1Jd05TXzExY2hhcl90cmFpdHNJd0VFRUUATlN0M19fMjEzYmFzaWNfb3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yMTNiYXNpY19vc3RyZWFtSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxMV9fc3Rkb3V0YnVmSXdFRQBOU3QzX18yMTFfX3N0ZG91dGJ1ZkljRUUAdW5zdXBwb3J0ZWQgbG9jYWxlIGZvciBzdGFuZGFyZCBpbnB1dABOU3QzX18yMTBfX3N0ZGluYnVmSXdFRQBOU3QzX18yMTBfX3N0ZGluYnVmSWNFRQBOU3QzX18yN2NvbGxhdGVJY0VFAE5TdDNfXzI2bG9jYWxlNWZhY2V0RQBOU3QzX18yN2NvbGxhdGVJd0VFADAxMjM0NTY3ODlhYmNkZWZBQkNERUZ4WCstcFBpSW5OACVwAEMATlN0M19fMjdudW1fZ2V0SWNOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yOV9fbnVtX2dldEljRUUATlN0M19fMjE0X19udW1fZ2V0X2Jhc2VFAE5TdDNfXzI3bnVtX2dldEl3TlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjlfX251bV9nZXRJd0VFACVwAAAAAEwAbGwAJQAAAAAAbABOU3QzX18yN251bV9wdXRJY05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzI5X19udW1fcHV0SWNFRQBOU3QzX18yMTRfX251bV9wdXRfYmFzZUUATlN0M19fMjdudW1fcHV0SXdOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yOV9fbnVtX3B1dEl3RUUAJUg6JU06JVMAJW0vJWQvJXkAJUk6JU06JVMgJXAAJWEgJWIgJWQgJUg6JU06JVMgJVkAQU0AUE0ASmFudWFyeQBGZWJydWFyeQBNYXJjaABBcHJpbABNYXkASnVuZQBKdWx5AEF1Z3VzdABTZXB0ZW1iZXIAT2N0b2JlcgBOb3ZlbWJlcgBEZWNlbWJlcgBKYW4ARmViAE1hcgBBcHIASnVuAEp1bABBdWcAU2VwAE9jdABOb3YARGVjAFN1bmRheQBNb25kYXkAVHVlc2RheQBXZWRuZXNkYXkAVGh1cnNkYXkARnJpZGF5AFNhdHVyZGF5AFN1bgBNb24AVHVlAFdlZABUaHUARnJpAFNhdAAlbS8lZC8leSVZLSVtLSVkJUk6JU06JVMgJXAlSDolTSVIOiVNOiVTJUg6JU06JVNOU3QzX18yOHRpbWVfZ2V0SWNOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMjBfX3RpbWVfZ2V0X2Nfc3RvcmFnZUljRUUATlN0M19fMjl0aW1lX2Jhc2VFAE5TdDNfXzI4dGltZV9nZXRJd05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzIyMF9fdGltZV9nZXRfY19zdG9yYWdlSXdFRQBOU3QzX18yOHRpbWVfcHV0SWNOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTBfX3RpbWVfcHV0RQBOU3QzX18yOHRpbWVfcHV0SXdOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yMTBtb25leXB1bmN0SWNMYjBFRUUATlN0M19fMjEwbW9uZXlfYmFzZUUATlN0M19fMjEwbW9uZXlwdW5jdEljTGIxRUVFAE5TdDNfXzIxMG1vbmV5cHVuY3RJd0xiMEVFRQBOU3QzX18yMTBtb25leXB1bmN0SXdMYjFFRUUAMDEyMzQ1Njc4OQAlTGYATlN0M19fMjltb25leV9nZXRJY05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfZ2V0SWNFRQAwMTIzNDU2Nzg5AE5TdDNfXzI5bW9uZXlfZ2V0SXdOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X2dldEl3RUUAJS4wTGYATlN0M19fMjltb25leV9wdXRJY05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfcHV0SWNFRQBOU3QzX18yOW1vbmV5X3B1dEl3TlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjExX19tb25leV9wdXRJd0VFAE5TdDNfXzI4bWVzc2FnZXNJY0VFAE5TdDNfXzIxM21lc3NhZ2VzX2Jhc2VFAE5TdDNfXzIxN19fd2lkZW5fZnJvbV91dGY4SUxqMzJFRUUATlN0M19fMjdjb2RlY3Z0SURpYzExX19tYnN0YXRlX3RFRQBOU3QzX18yMTJjb2RlY3Z0X2Jhc2VFAE5TdDNfXzIxNl9fbmFycm93X3RvX3V0ZjhJTGozMkVFRQBOU3QzX18yOG1lc3NhZ2VzSXdFRQBOU3QzX18yN2NvZGVjdnRJY2MxMV9fbWJzdGF0ZV90RUUATlN0M19fMjdjb2RlY3Z0SXdjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI3Y29kZWN2dElEc2MxMV9fbWJzdGF0ZV90RUUATlN0M19fMjZsb2NhbGU1X19pbXBFAE5TdDNfXzI1Y3R5cGVJY0VFAE5TdDNfXzIxMGN0eXBlX2Jhc2VFAE5TdDNfXzI1Y3R5cGVJd0VFAGZhbHNlAHRydWUATlN0M19fMjhudW1wdW5jdEljRUUATlN0M19fMjhudW1wdW5jdEl3RUUATlN0M19fMjE0X19zaGFyZWRfY291bnRFAE5TdDNfXzIxOV9fc2hhcmVkX3dlYWtfY291bnRFAG11dGV4IGxvY2sgZmFpbGVkAGVjID09IDAAL2hvbWUveXVrb24vamVua2lucy93b3Jrc3BhY2UvY29tbS9yZWxlYXNlLzIwMTkvc2hhcmVkL3NjL3NyYy90b29scy9lbXNjcmlwdGVuLzEuMzguMS1saW51eDY0L3N5c3RlbS9saWIvbGliY3h4L211dGV4LmNwcAB1bmxvY2sAOiBubyBjb252ZXJzaW9uACVzCgA6IG91dCBvZiByYW5nZQBzdG91bABOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AYgBjAGgAYQBzAHQAaQBqAG0AZgBkAE4xMF9fY3h4YWJpdjEyMF9fZnVuY3Rpb25fdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTZfX2VudW1fdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";
var ac=va;va+=16;var bc=[],cc=[];function dc(){return!!dc.ta}
var ec=Ja([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,
0,1,0,3,0,1,0,2,0,1,0],2),z={$:1,T:2,If:3,De:4,Y:5,Ub:6,Xd:7,af:8,S:9,ke:10,Qb:11,Sf:11,Jc:12,cb:13,we:14,nf:15,eb:16,Rb:17,Tf:18,gb:19,Sb:20,sa:21,o:22,We:23,Ic:24,Z:25,Pf:26,xe:27,jf:28,Ia:29,Ff:30,Pe:31,yf:32,te:33,Cf:34,ef:42,Ae:43,le:44,Ge:45,He:46,Ie:47,Oe:48,Qf:49,Ze:50,Fe:51,qe:35,bf:37,ce:52,fe:53,Uf:54,Xe:55,ge:56,he:57,re:35,ie:59,lf:60,$e:61,Mf:62,kf:63,ff:64,gf:65,Ef:66,cf:67,$d:68,Jf:69,me:70,zf:71,Re:72,ue:73,ee:74,tf:76,de:77,Df:78,Je:79,Ke:80,Ne:81,Me:82,Le:83,mf:38,Tb:39,Se:36,fb:40,
uf:95,xf:96,pe:104,Ye:105,ae:97,Bf:91,rf:88,hf:92,Gf:108,oe:111,Yd:98,ne:103,Ve:101,Te:100,Nf:110,ye:112,ze:113,Ce:115,be:114,se:89,Qe:90,Af:93,Hf:94,Zd:99,Ue:102,Ee:106,pf:107,Of:109,Rf:87,ve:122,Kf:116,sf:95,df:123,Be:84,vf:75,je:125,qf:131,wf:130,Lf:86};function fc(a){e.___errno_location&&(v[e.___errno_location()>>2]=a);return a}
var hc={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",
24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",
44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",
65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",
82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",
100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",
122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ic(a,b){for(var c=0,d=a.length-1;0<=d;d--){var f=a[d];"."===f?a.splice(d,1):".."===f?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c;c--)a.unshift("..");return a}function jc(a){var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=ic(a.split("/").filter(function(a){return!!a}),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a}
function kc(a){var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&(b=b.substr(0,b.length-1));return a+b}function lc(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)}function mc(){var a=Array.prototype.slice.call(arguments,0);return jc(a.join("/"))}function nc(a,b){return jc(a+"/"+b)}
function oc(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:"/";if("string"!==typeof b)throw new TypeError("Arguments to path.resolve must be strings");if(!b)return"";a=b+"/"+a;b="/"===b.charAt(0)}a=ic(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var pc=[];function qc(a,b){pc[a]={input:[],output:[],na:b};rc(a,sc)}
var sc={open:function(a){var b=pc[a.node.rdev];if(!b)throw new E(z.gb);a.tty=b;a.seekable=!1},close:function(a){a.tty.na.flush(a.tty)},flush:function(a){a.tty.na.flush(a.tty)},read:function(a,b,c,d){if(!a.tty||!a.tty.na.nc)throw new E(z.Ub);for(var f=0,g=0;g<d;g++){try{var h=a.tty.na.nc(a.tty)}catch(l){throw new E(z.Y);}if(void 0===h&&0===f)throw new E(z.Qb);if(null===h||void 0===h)break;f++;b[c+g]=h}f&&(a.node.timestamp=Date.now());return f},write:function(a,b,c,d){if(!a.tty||!a.tty.na.Fb)throw new E(z.Ub);
for(var f=0;f<d;f++)try{a.tty.na.Fb(a.tty,b[c+f])}catch(g){throw new E(z.Y);}d&&(a.node.timestamp=Date.now());return f}},uc={nc:function(a){if(!a.input.length){var b=null;if(ma){var c=new Buffer(256),d=0,f=process.stdin.fd;if("win32"!=process.platform){var g=!1;try{f=fs.openSync("/dev/stdin","r"),g=!0}catch(h){}}try{d=fs.readSync(f,c,0,256,null)}catch(h){if(-1!=h.toString().indexOf("EOF"))d=0;else throw h;}g&&fs.closeSync(f);0<d?b=c.slice(0,d).toString("utf-8"):b=null}else"undefined"!=typeof window&&
"function"==typeof window.prompt?(b=window.prompt("Input: "),null!==b&&(b+="\n")):"function"==typeof readline&&(b=readline(),null!==b&&(b+="\n"));if(!b)return null;a.input=tc(b,!0)}return a.input.shift()},Fb:function(a,b){null===b||10===b?(e.print(fa(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&0<a.output.length&&(e.print(fa(a.output,0)),a.output=[])}},vc={Fb:function(a,b){null===b||10===b?(e.printErr(fa(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&
0<a.output.length&&(e.printErr(fa(a.output,0)),a.output=[])}},G={K:null,C:function(){return G.createNode(null,"/",16895,0)},createNode:function(a,b,c,d){if(24576===(c&61440)||4096===(c&61440))throw new E(z.$);G.K||(G.K={dir:{node:{N:G.f.N,A:G.f.A,lookup:G.f.lookup,Aa:G.f.Aa,rename:G.f.rename,unlink:G.f.unlink,rmdir:G.f.rmdir,readdir:G.f.readdir,symlink:G.f.symlink},stream:{V:G.g.V}},file:{node:{N:G.f.N,A:G.f.A},stream:{V:G.g.V,read:G.g.read,write:G.g.write,Vb:G.g.Vb,rc:G.g.rc,Wa:G.g.Wa}},link:{node:{N:G.f.N,
A:G.f.A,readlink:G.f.readlink},stream:{}},bc:{node:{N:G.f.N,A:G.f.A},stream:wc}});c=xc(a,b,c,d);yc(c.mode)?(c.f=G.K.dir.node,c.g=G.K.dir.stream,c.b={}):32768===(c.mode&61440)?(c.f=G.K.file.node,c.g=G.K.file.stream,c.i=0,c.b=null):40960===(c.mode&61440)?(c.f=G.K.link.node,c.g=G.K.link.stream):8192===(c.mode&61440)&&(c.f=G.K.bc.node,c.g=G.K.bc.stream);c.timestamp=Date.now();a&&(a.b[b]=c);return c},ad:function(a){if(a.b&&a.b.subarray){for(var b=[],c=0;c<a.i;++c)b.push(a.b[c]);return b}return a.b},jg:function(a){return a.b?
a.b.subarray?a.b.subarray(0,a.i):new Uint8Array(a.b):new Uint8Array},fc:function(a,b){a.b&&a.b.subarray&&b>a.b.length&&(a.b=G.ad(a),a.i=a.b.length);if(!a.b||a.b.subarray){var c=a.b?a.b.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)|0),0!=c&&(b=Math.max(b,256)),c=a.b,a.b=new Uint8Array(b),0<a.i&&a.b.set(c.subarray(0,a.i),0))}else for(!a.b&&0<b&&(a.b=[]);a.b.length<b;)a.b.push(0)},yd:function(a,b){if(a.i!=b)if(0==b)a.b=null,a.i=0;else{if(!a.b||a.b.subarray){var c=a.b;a.b=new Uint8Array(new ArrayBuffer(b));
c&&a.b.set(c.subarray(0,Math.min(b,a.i)))}else if(a.b||(a.b=[]),a.b.length>b)a.b.length=b;else for(;a.b.length<b;)a.b.push(0);a.i=b}},f:{N:function(a){var b={};b.dev=8192===(a.mode&61440)?a.id:1;b.ino=a.id;b.mode=a.mode;b.nlink=1;b.uid=0;b.gid=0;b.rdev=a.rdev;yc(a.mode)?b.size=4096:32768===(a.mode&61440)?b.size=a.i:40960===(a.mode&61440)?b.size=a.link.length:b.size=0;b.atime=new Date(a.timestamp);b.mtime=new Date(a.timestamp);b.ctime=new Date(a.timestamp);b.aa=4096;b.blocks=Math.ceil(b.size/b.aa);
return b},A:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&G.yd(a,b.size)},lookup:function(){throw zc[z.T];},Aa:function(a,b,c,d){return G.createNode(a,b,c,d)},rename:function(a,b,c){if(yc(a.mode)){try{var d=Ac(b,c)}catch(g){}if(d)for(var f in d.b)throw new E(z.Tb);}delete a.parent.b[a.name];a.name=c;b.b[c]=a;a.parent=b},unlink:function(a,b){delete a.b[b]},rmdir:function(a,b){var c=Ac(a,b),d;for(d in c.b)throw new E(z.Tb);delete a.b[b]},
readdir:function(a){var b=[".",".."],c;for(c in a.b)a.b.hasOwnProperty(c)&&b.push(c);return b},symlink:function(a,b,c){a=G.createNode(a,b,41471,0);a.link=c;return a},readlink:function(a){if(40960!==(a.mode&61440))throw new E(z.o);return a.link}},g:{read:function(a,b,c,d,f){var g=a.node.b;if(f>=a.node.i)return 0;a=Math.min(a.node.i-f,d);assert(0<=a);if(8<a&&g.subarray)b.set(g.subarray(f,f+a),c);else for(d=0;d<a;d++)b[c+d]=g[f+d];return a},write:function(a,b,c,d,f,g){if(!d)return 0;a=a.node;a.timestamp=
Date.now();if(b.subarray&&(!a.b||a.b.subarray)){if(g)return a.b=b.subarray(c,c+d),a.i=d;if(0===a.i&&0===f)return a.b=new Uint8Array(b.subarray(c,c+d)),a.i=d;if(f+d<=a.i)return a.b.set(b.subarray(c,c+d),f),d}G.fc(a,f+d);if(a.b.subarray&&b.subarray)a.b.set(b.subarray(c,c+d),f);else for(g=0;g<d;g++)a.b[f+g]=b[c+g];a.i=Math.max(a.i,f+d);return d},V:function(a,b,c){1===c?b+=a.position:2===c&&32768===(a.node.mode&61440)&&(b+=a.node.i);if(0>b)throw new E(z.o);return b},Vb:function(a,b,c){G.fc(a.node,b+c);
a.node.i=Math.max(a.node.i,b+c)},rc:function(a,b,c,d,f,g,h){if(32768!==(a.node.mode&61440))throw new E(z.gb);c=a.node.b;if(h&2||c.buffer!==b&&c.buffer!==b.buffer){if(0<f||f+d<a.node.i)c.subarray?c=c.subarray(f,f+d):c=Array.prototype.slice.call(c,f,f+d);a=!0;d=Ka(d);if(!d)throw new E(z.Jc);b.set(c,d)}else a=!1,d=c.byteOffset;return{l:d,Mc:a}},Wa:function(a,b,c,d,f){if(32768!==(a.node.mode&61440))throw new E(z.gb);if(f&2)return 0;G.g.write(a,b,0,d,c,!1);return 0}}},K={Ta:!1,Nd:function(){K.Ta=!!process.platform.match(/^win/);
var a=process.binding("constants");a.fs&&(a=a.fs);K.jc={1024:a.O_APPEND,64:a.O_CREAT,128:a.O_EXCL,0:a.O_RDONLY,2:a.O_RDWR,4096:a.O_SYNC,512:a.O_TRUNC,1:a.O_WRONLY}},Yb:function(a){return Buffer.ta?Buffer.from(a):new Buffer(a)},C:function(a){assert(ma);return K.createNode(null,"/",K.mc(a.Eb.root),0)},createNode:function(a,b,c){if(!yc(c)&&32768!==(c&61440)&&40960!==(c&61440))throw new E(z.o);a=xc(a,b,c);a.f=K.f;a.g=K.g;return a},mc:function(a){try{var b=fs.lstatSync(a);K.Ta&&(b.mode=b.mode|(b.mode&
292)>>2)}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}return b.mode},D:function(a){for(var b=[];a.parent!==a;)b.push(a.name),a=a.parent;b.push(a.C.Eb.root);b.reverse();return mc.apply(null,b)},Zc:function(a){a&=-2656257;var b=0,c;for(c in K.jc)a&c&&(b|=K.jc[c],a^=c);if(a)throw new E(z.o);return b},f:{N:function(a){a=K.D(a);try{var b=fs.lstatSync(a)}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}K.Ta&&!b.aa&&(b.aa=4096);K.Ta&&!b.blocks&&(b.blocks=(b.size+b.aa-1)/b.aa|0);return{dev:b.dev,
ino:b.ino,mode:b.mode,nlink:b.nlink,uid:b.uid,gid:b.gid,rdev:b.rdev,size:b.size,atime:b.atime,mtime:b.mtime,ctime:b.ctime,aa:b.aa,blocks:b.blocks}},A:function(a,b){var c=K.D(a);try{void 0!==b.mode&&(fs.chmodSync(c,b.mode),a.mode=b.mode),void 0!==b.size&&fs.truncateSync(c,b.size)}catch(d){if(!d.code)throw d;throw new E(z[d.code]);}},lookup:function(a,b){var c=nc(K.D(a),b);c=K.mc(c);return K.createNode(a,b,c)},Aa:function(a,b,c,d){a=K.createNode(a,b,c,d);b=K.D(a);try{yc(a.mode)?fs.mkdirSync(b,a.mode):
fs.writeFileSync(b,"",{mode:a.mode})}catch(f){if(!f.code)throw f;throw new E(z[f.code]);}return a},rename:function(a,b,c){a=K.D(a);b=nc(K.D(b),c);try{fs.renameSync(a,b)}catch(d){if(!d.code)throw d;throw new E(z[d.code]);}},unlink:function(a,b){a=nc(K.D(a),b);try{fs.unlinkSync(a)}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}},rmdir:function(a,b){a=nc(K.D(a),b);try{fs.rmdirSync(a)}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}},readdir:function(a){a=K.D(a);try{return fs.readdirSync(a)}catch(b){if(!b.code)throw b;
throw new E(z[b.code]);}},symlink:function(a,b,c){a=nc(K.D(a),b);try{fs.symlinkSync(c,a)}catch(d){if(!d.code)throw d;throw new E(z[d.code]);}},readlink:function(a){var b=K.D(a);try{return b=fs.readlinkSync(b),b=Bc.relative(Bc.resolve(a.C.Eb.root),b)}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}}},g:{open:function(a){var b=K.D(a.node);try{32768===(a.node.mode&61440)&&(a.Ca=fs.openSync(b,K.Zc(a.flags)))}catch(c){if(!c.code)throw c;throw new E(z[c.code]);}},close:function(a){try{32768===(a.node.mode&
61440)&&a.Ca&&fs.closeSync(a.Ca)}catch(b){if(!b.code)throw b;throw new E(z[b.code]);}},read:function(a,b,c,d,f){if(0===d)return 0;try{return fs.readSync(a.Ca,K.Yb(b.buffer),c,d,f)}catch(g){throw new E(z[g.code]);}},write:function(a,b,c,d,f){try{return fs.writeSync(a.Ca,K.Yb(b.buffer),c,d,f)}catch(g){throw new E(z[g.code]);}},V:function(a,b,c){if(1===c)b+=a.position;else if(2===c&&32768===(a.node.mode&61440))try{b+=fs.fstatSync(a.Ca).size}catch(d){throw new E(z[d.code]);}if(0>b)throw new E(z.o);return b}}};
va+=16;va+=16;va+=16;var Cc=null,Dc={},Ec=[],Fc=1,Gc=null,Hc=!0,Ic={},E=null,zc={};
function Jc(a,b){a=oc("/",a);b=b||{};if(!a)return{path:"",node:null};var c={kc:!0,Gb:0},d;for(d in c)void 0===b[d]&&(b[d]=c[d]);if(8<b.Gb)throw new E(z.fb);a=ic(a.split("/").filter(function(a){return!!a}),!1);var f=Cc;c="/";for(d=0;d<a.length;d++){var g=d===a.length-1;if(g&&b.parent)break;f=Ac(f,a[d]);c=nc(c,a[d]);f.Ba&&(!g||g&&b.kc)&&(f=f.Ba.root);if(!g||b.ob)for(g=0;40960===(f.mode&61440);)if(f=Kc(c),c=oc(kc(c),f),f=Jc(c,{Gb:b.Gb}).node,40<g++)throw new E(z.fb);}return{path:c,node:f}}
function Lc(a){for(var b;;){if(a===a.parent)return a=a.C.sc,b?"/"!==a[a.length-1]?a+"/"+b:a+b:a;b=b?a.name+"/"+b:a.name;a=a.parent}}function Mc(a,b){for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%Gc.length}function Nc(a){var b=Mc(a.parent.id,a.name);a.ma=Gc[b];Gc[b]=a}function Ac(a,b){var c;if(c=(c=Oc(a,"x"))?c:a.f.lookup?0:z.cb)throw new E(c,a);for(c=Gc[Mc(a.id,b)];c;c=c.ma){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.f.lookup(a,b)}
function xc(a,b,c,d){Pc||(Pc=function(a,b,c,d){a||(a=this);this.parent=a;this.C=a.C;this.Ba=null;this.id=Fc++;this.name=b;this.mode=c;this.f={};this.g={};this.rdev=d},Pc.prototype={},Object.defineProperties(Pc.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},md:{get:function(){return yc(this.mode)}},ld:{get:function(){return 8192===
(this.mode&61440)}}}));a=new Pc(a,b,c,d);Nc(a);return a}function yc(a){return 16384===(a&61440)}var Qc={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Rc(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b}function Oc(a,b){if(Hc)return 0;if(-1===b.indexOf("r")||a.mode&292){if(-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73))return z.cb}else return z.cb;return 0}
function Sc(a,b){try{return Ac(a,b),z.Rb}catch(c){}return Oc(a,"wx")}function Uc(a){var b=4096;for(a=a||0;a<=b;a++)if(!Ec[a])return a;throw new E(z.Ic);}function Vc(a,b){Wc||(Wc=function(){},Wc.prototype={},Object.defineProperties(Wc.prototype,{object:{get:function(){return this.node},set:function(a){this.node=a}}}));var c=new Wc,d;for(d in a)c[d]=a[d];a=c;b=Uc(b);a.fd=b;return Ec[b]=a}var wc={open:function(a){a.g=Dc[a.node.rdev].g;a.g.open&&a.g.open(a)},V:function(){throw new E(z.Ia);}};
function rc(a,b){Dc[a]={g:b}}function Xc(a,b){var c="/"===b,d=!b;if(c&&Cc)throw new E(z.eb);if(!c&&!d){var f=Jc(b,{kc:!1});b=f.path;f=f.node;if(f.Ba)throw new E(z.eb);if(!yc(f.mode))throw new E(z.Sb);}b={type:a,Eb:{},sc:b,rd:[]};a=a.C(b);a.C=b;b.root=a;c?Cc=a:f&&(f.Ba=b,f.C&&f.C.rd.push(b))}function Yc(a,b,c){var d=Jc(a,{parent:!0}).node;a=lc(a);if(!a||"."===a||".."===a)throw new E(z.o);var f=Sc(d,a);if(f)throw new E(f);if(!d.f.Aa)throw new E(z.$);return d.f.Aa(d,a,b,c)}
function Zc(a,b){return Yc(a,(void 0!==b?b:511)&1023|16384,0)}function $c(a,b,c){"undefined"===typeof c&&(c=b,b=438);return Yc(a,b|8192,c)}function ad(a,b){if(!oc(a))throw new E(z.T);var c=Jc(b,{parent:!0}).node;if(!c)throw new E(z.T);b=lc(b);var d=Sc(c,b);if(d)throw new E(d);if(!c.f.symlink)throw new E(z.$);return c.f.symlink(c,b,a)}
function bd(a){var b=Jc(a,{parent:!0}).node,c=lc(a),d=Ac(b,c);a:{try{var f=Ac(b,c)}catch(h){f=h.M;break a}var g=Oc(b,"wx");f=g?g:yc(f.mode)?z.sa:0}if(f)throw new E(f);if(!b.f.unlink)throw new E(z.$);if(d.Ba)throw new E(z.eb);try{Ic.willDeletePath&&Ic.willDeletePath(a)}catch(h){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+h.message)}b.f.unlink(b,c);b=Mc(d.parent.id,d.name);if(Gc[b]===d)Gc[b]=d.ma;else for(b=Gc[b];b;){if(b.ma===d){b.ma=d.ma;break}b=b.ma}try{if(Ic.onDeletePath)Ic.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+
a+"') threw an exception: "+h.message)}}function Kc(a){a=Jc(a).node;if(!a)throw new E(z.T);if(!a.f.readlink)throw new E(z.o);return oc(Lc(a.parent),a.f.readlink(a))}function cd(a,b){var c;"string"===typeof a?c=Jc(a,{ob:!0}).node:c=a;if(!c.f.A)throw new E(z.$);c.f.A(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}
function dd(a,b,c,d){if(""===a)throw new E(z.T);if("string"===typeof b){var f=Qc[b];if("undefined"===typeof f)throw Error("Unknown file open mode: "+b);b=f}c=b&64?("undefined"===typeof c?438:c)&4095|32768:0;if("object"===typeof a)var g=a;else{a=jc(a);try{g=Jc(a,{ob:!(b&131072)}).node}catch(l){}}f=!1;if(b&64)if(g){if(b&128)throw new E(z.Rb);}else g=Yc(a,c,0),f=!0;if(!g)throw new E(z.T);8192===(g.mode&61440)&&(b&=-513);if(b&65536&&!yc(g.mode))throw new E(z.Sb);if(!f&&(c=g?40960===(g.mode&61440)?z.fb:
yc(g.mode)&&("r"!==Rc(b)||b&512)?z.sa:Oc(g,Rc(b)):z.T))throw new E(c);if(b&512){c=g;var h;"string"===typeof c?h=Jc(c,{ob:!0}).node:h=c;if(!h.f.A)throw new E(z.$);if(yc(h.mode))throw new E(z.sa);if(32768!==(h.mode&61440))throw new E(z.o);if(c=Oc(h,"w"))throw new E(c);h.f.A(h,{size:0,timestamp:Date.now()})}b&=-641;d=Vc({node:g,path:Lc(g),flags:b,seekable:!0,position:0,g:g.g,Ud:[],error:!1},d);d.g.open&&d.g.open(d);!e.logReadFiles||b&1||(ed||(ed={}),a in ed||(ed[a]=1,e.printErr("read file: "+a)));try{Ic.onOpenFile&&
(g=0,1!==(b&2097155)&&(g|=1),0!==(b&2097155)&&(g|=2),Ic.onOpenFile(a,g))}catch(l){console.log("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+l.message)}return d}function fd(a){if(null===a.fd)throw new E(z.S);a.qb&&(a.qb=null);try{a.g.close&&a.g.close(a)}catch(b){throw b;}finally{Ec[a.fd]=null}a.fd=null}function gd(a,b,c){if(null===a.fd)throw new E(z.S);if(!a.seekable||!a.g.V)throw new E(z.Ia);a.position=a.g.V(a,b,c);a.Ud=[]}
function hd(a,b,c,d,f,g){if(0>d||0>f)throw new E(z.o);if(null===a.fd)throw new E(z.S);if(0===(a.flags&2097155))throw new E(z.S);if(yc(a.node.mode))throw new E(z.sa);if(!a.g.write)throw new E(z.o);a.flags&1024&&gd(a,0,2);var h="undefined"!==typeof f;if(!h)f=a.position;else if(!a.seekable)throw new E(z.Ia);b=a.g.write(a,b,c,d,f,g);h||(a.position+=b);try{if(a.path&&Ic.onWriteToFile)Ic.onWriteToFile(a.path)}catch(l){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+l.message)}return b}
function id(){E||(E=function(a,b){this.node=b;this.Dd=function(a){this.M=a;for(var b in z)if(z[b]===a){this.code=b;break}};this.Dd(a);this.message=hc[a];this.stack&&Object.defineProperty(this,"stack",{value:Error().stack,writable:!0})},E.prototype=Error(),E.prototype.constructor=E,[z.T].forEach(function(a){zc[a]=new E(a);zc[a].stack="<generic error, no stack>"}))}var jd;function kd(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c}
function ld(a,b,c,d){a=nc("string"===typeof a?a:Lc(a),b);return Zc(a,kd(c,d))}function md(a,b){a="string"===typeof a?a:Lc(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=nc(a,c);try{Zc(d)}catch(f){}a=d}}return d}function nd(a,b,c,d){a=nc("string"===typeof a?a:Lc(a),b);c=kd(c,d);return Yc(a,(void 0!==c?c:438)&4095|32768,0)}
function od(a,b,c,d,f,g){a=b?nc("string"===typeof a?a:Lc(a),b):a;d=kd(d,f);f=Yc(a,(void 0!==d?d:438)&4095|32768,0);if(c){if("string"===typeof c){a=Array(c.length);b=0;for(var h=c.length;b<h;++b)a[b]=c.charCodeAt(b);c=a}cd(f,d|146);a=dd(f,"w");hd(a,c,0,c.length,0,g);fd(a);cd(f,d)}return f}
function pd(a,b,c,d){a=nc("string"===typeof a?a:Lc(a),b);b=kd(!!c,!!d);pd.qc||(pd.qc=64);var f=pd.qc++<<8|0;rc(f,{open:function(a){a.seekable=!1},close:function(){d&&d.buffer&&d.buffer.length&&d(10)},read:function(a,b,d,f){for(var g=0,h=0;h<f;h++){try{var l=c()}catch(y){throw new E(z.Y);}if(void 0===l&&0===g)throw new E(z.Qb);if(null===l||void 0===l)break;g++;b[d+h]=l}g&&(a.node.timestamp=Date.now());return g},write:function(a,b,c,f){for(var g=0;g<f;g++)try{d(b[c+g])}catch(p){throw new E(z.Y);}f&&
(a.node.timestamp=Date.now());return g}});return $c(a,b,f)}function qd(a,b,c){a=nc("string"===typeof a?a:Lc(a),b);return ad(c,a)}
function rd(a){if(a.ld||a.md||a.link||a.b)return!0;var b=!0;if("undefined"!==typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(e.read)try{a.b=tc(e.read(a.url),!0),a.i=a.b.length}catch(c){b=!1}else throw Error("Cannot load without read() or XMLHttpRequest.");b||fc(z.Y);return b}
function sd(a,b,c,d,f){function g(){this.Ab=!1;this.La=[]}g.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.chunkSize;return this.la(a/this.chunkSize|0)[b]}};g.prototype.Bd=function(a){this.la=a};g.prototype.$b=function(){var a=new XMLHttpRequest;a.open("HEAD",c,!1);a.send(null);if(!(200<=a.status&&300>a.status||304===a.status))throw Error("Couldn't load "+c+". Status: "+a.status);var b=Number(a.getResponseHeader("Content-length")),d,f=(d=a.getResponseHeader("Accept-Ranges"))&&
"bytes"===d;a=(d=a.getResponseHeader("Content-Encoding"))&&"gzip"===d;var g=1048576;f||(g=b);var h=this;h.Bd(function(a){var d=a*g,f=(a+1)*g-1;f=Math.min(f,b-1);if("undefined"===typeof h.La[a]){var l=h.La;if(d>f)throw Error("invalid range ("+d+", "+f+") or no bytes requested!");if(f>b-1)throw Error("only "+b+" bytes available! programmer error!");var m=new XMLHttpRequest;m.open("GET",c,!1);b!==g&&m.setRequestHeader("Range","bytes="+d+"-"+f);"undefined"!=typeof Uint8Array&&(m.responseType="arraybuffer");
m.overrideMimeType&&m.overrideMimeType("text/plain; charset=x-user-defined");m.send(null);if(!(200<=m.status&&300>m.status||304===m.status))throw Error("Couldn't load "+c+". Status: "+m.status);d=void 0!==m.response?new Uint8Array(m.response||[]):tc(m.responseText||"",!0);l[a]=d}if("undefined"===typeof h.La[a])throw Error("doXHR failed!");return h.La[a]});if(a||!b)g=b=1,g=b=this.la(0).length,console.log("LazyFiles on gzip forces download of the whole file when length is accessed");this.Lc=b;this.Kc=
g;this.Ab=!0};if("undefined"!==typeof XMLHttpRequest){if(!la)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var h=new g;Object.defineProperties(h,{length:{get:function(){this.Ab||this.$b();return this.Lc}},chunkSize:{get:function(){this.Ab||this.$b();return this.Kc}}});var l=void 0}else l=c,h=void 0;var m=nd(a,b,d,f);h?m.b=h:l&&(m.b=null,m.url=l);Object.defineProperties(m,{i:{get:function(){return this.b.length}}});var n=
{};Object.keys(m.g).forEach(function(a){var b=m.g[a];n[a]=function(){if(!rd(m))throw new E(z.Y);return b.apply(null,arguments)}});n.read=function(a,b,c,d,f){if(!rd(m))throw new E(z.Y);a=a.node.b;if(f>=a.length)return 0;d=Math.min(a.length-f,d);assert(0<=d);if(a.slice)for(var g=0;g<d;g++)b[c+g]=a[f+g];else for(g=0;g<d;g++)b[c+g]=a.get(f+g);return d};m.g=n;return m}
function td(a,b,c,d,f,g,h,l,m,n){function p(c){function A(c){n&&n();l||od(a,b,c,d,f,m);g&&g();wb()}var p=!1;e.preloadPlugins.forEach(function(a){!p&&a.canHandle(u)&&(a.handle(c,u,A,function(){h&&h();wb()}),p=!0)});p||A(c)}ud();var u=b?oc(nc(a,b)):a;vb();"string"==typeof c?vd(c,function(a){p(a)},h):p(c)}var FS={},Pc,Wc,ed,wd={},xd=0;function M(){xd+=4;return v[xd-4>>2]}function yd(){var a=Ec[M()];if(!a)throw new E(z.S);return a}var zd={};function Ad(a){for(;a.length;){var b=a.pop();a.pop()(b)}}
function Bd(a){return this.fromWireType(ba[a>>2])}var Cd={},Dd={},Ed={};function Fd(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function Gd(a,b){a=Fd(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Hd(a,b){var c=Gd(b,function(a){this.name=b;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var Id=void 0;function Jd(a){throw new Id(a);}
function Kd(a,b,c){function d(b){b=c(b);b.length!==a.length&&Jd("Mismatched type converter count");for(var d=0;d<a.length;++d)Ld(a[d],b[d])}a.forEach(function(a){Ed[a]=b});var f=Array(b.length),g=[],h=0;b.forEach(function(a,b){Dd.hasOwnProperty(a)?f[b]=Dd[a]:(g.push(a),Cd.hasOwnProperty(a)||(Cd[a]=[]),Cd[a].push(function(){f[b]=Dd[a];++h;h===g.length&&d(f)}))});0===g.length&&d(f)}var Nd={};
function Od(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}function Vd(){for(var a=Array(256),b=0;256>b;++b)a[b]=String.fromCharCode(b);Wd=a}var Wd=void 0;function S(a){for(var b="";r[a];)b+=Wd[r[a++]];return b}var Xd=void 0;function T(a){throw new Xd(a);}
function Ld(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||T('type "'+d+'" must have a positive integer typeid pointer');if(Dd.hasOwnProperty(a)){if(c.gd)return;T("Cannot register type '"+d+"' twice")}Dd[a]=b;delete Ed[a];Cd.hasOwnProperty(a)&&(b=Cd[a],delete Cd[a],b.forEach(function(a){a()}))}
function Yd(a){if(!(this instanceof Zd&&a instanceof Zd))return!1;var b=this.c.s.m,c=this.c.l,d=a.c.s.m;for(a=a.c.l;b.J;)c=b.Fa(c),b=b.J;for(;d.J;)a=d.Fa(a),d=d.J;return b===d&&c===a}function $d(a){return{count:a.count,ja:a.ja,Da:a.Da,l:a.l,s:a.s,F:a.F,I:a.I}}function ae(a){T(a.c.s.m.name+" instance already deleted")}
function be(){this.c.l||ae(this);if(this.c.Da)return this.c.count.value+=1,this;var a=Object.create(Object.getPrototypeOf(this),{c:{value:$d(this.c)}});a.c.count.value+=1;a.c.ja=!1;return a}function ce(a){a=a.c;a.F?a.I.G(a.F):a.s.m.G(a.l)}function de(){this.c.l||ae(this);this.c.ja&&!this.c.Da&&T("Object already scheduled for deletion");--this.c.count.value;0===this.c.count.value&&ce(this);this.c.Da||(this.c.F=void 0,this.c.l=void 0)}function ee(){return!this.c.l}var fe=void 0,ge=[];
function he(){for(;ge.length;){var a=ge.pop();a.c.ja=!1;a["delete"]()}}function ie(){this.c.l||ae(this);this.c.ja&&!this.c.Da&&T("Object already scheduled for deletion");ge.push(this);1===ge.length&&fe&&fe(he);this.c.ja=!0;return this}function je(){Zd.prototype.isAliasOf=Yd;Zd.prototype.clone=be;Zd.prototype["delete"]=de;Zd.prototype.isDeleted=ee;Zd.prototype.deleteLater=ie}function Zd(){}var ke={};
function le(a,b,c){if(void 0===a[b].v){var d=a[b];a[b]=function(){a[b].v.hasOwnProperty(arguments.length)||T("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].v+")!");return a[b].v[arguments.length].apply(this,arguments)};a[b].v=[];a[b].v[d.ib]=d}}
function me(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].v&&void 0!==e[a].v[c])&&T("Cannot register public name '"+a+"' twice"),le(e,a,a),e.hasOwnProperty(c)&&T("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].v[c]=b):(e[a]=b,void 0!==c&&(e[a].qg=c))}function ne(a,b,c,d,f,g,h,l){this.name=a;this.constructor=b;this.wa=c;this.G=d;this.J=f;this.$c=g;this.Fa=h;this.Xc=l}
function oe(a,b,c){for(;b!==c;)b.Fa||T("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.Fa(a),b=b.J;return a}function pe(a,b){if(null===b)return this.tb&&T("null is not a valid "+this.name),0;b.c||T('Cannot pass "'+qe(b)+'" as a '+this.name);b.c.l||T("Cannot pass deleted object as a pointer of type "+this.name);return oe(b.c.l,b.c.s.m,this.m)}
function re(a,b){if(null===b){this.tb&&T("null is not a valid "+this.name);if(this.Sa){var c=this.Ea();null!==a&&a.push(this.G,c);return c}return 0}b.c||T('Cannot pass "'+qe(b)+'" as a '+this.name);b.c.l||T("Cannot pass deleted object as a pointer of type "+this.name);!this.Ra&&b.c.s.Ra&&T("Cannot convert argument of type "+(b.c.I?b.c.I.name:b.c.s.name)+" to parameter type "+this.name);c=oe(b.c.l,b.c.s.m,this.m);if(this.Sa)switch(void 0===b.c.F&&T("Passing raw pointer to smart pointer is illegal"),
this.Kd){case 0:b.c.I===this?c=b.c.F:T("Cannot convert argument of type "+(b.c.I?b.c.I.name:b.c.s.name)+" to parameter type "+this.name);break;case 1:c=b.c.F;break;case 2:if(b.c.I===this)c=b.c.F;else{var d=b.clone();c=this.xd(c,se(function(){d["delete"]()}));null!==a&&a.push(this.G,c)}break;default:T("Unsupporting sharing policy")}return c}
function te(a,b){if(null===b)return this.tb&&T("null is not a valid "+this.name),0;b.c||T('Cannot pass "'+qe(b)+'" as a '+this.name);b.c.l||T("Cannot pass deleted object as a pointer of type "+this.name);b.c.s.Ra&&T("Cannot convert argument of type "+b.c.s.name+" to parameter type "+this.name);return oe(b.c.l,b.c.s.m,this.m)}function ue(a){this.xc&&(a=this.xc(a));return a}function ve(a){this.G&&this.G(a)}function we(a){if(null!==a)a["delete"]()}
function xe(a,b,c){if(b===c)return a;if(void 0===c.J)return null;a=xe(a,b,c.J);return null===a?null:c.Xc(a)}function ye(){return Object.keys(ze).length}function Ae(){var a=[],b;for(b in ze)ze.hasOwnProperty(b)&&a.push(ze[b]);return a}function Be(a){fe=a;ge.length&&fe&&fe(he)}function Ce(){e.getInheritedInstanceCount=ye;e.getLiveInheritedInstances=Ae;e.flushPendingDeletes=he;e.setDelayFunction=Be}var ze={};
function De(a,b){for(void 0===b&&T("ptr should not be undefined");a.J;)b=a.Fa(b),a=a.J;return b}function Ee(a,b){b=De(a,b);return ze[b]}function Fe(a,b){b.s&&b.l||Jd("makeClassHandle requires ptr and ptrType");!!b.I!==!!b.F&&Jd("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Object.create(a,{c:{value:b}})}
function Ge(a){function b(){return this.Sa?Fe(this.m.wa,{s:this.vd,l:c,I:this,F:a}):Fe(this.m.wa,{s:this,l:a})}var c=this.bd(a);if(!c)return this.ec(a),null;var d=Ee(this.m,c);if(void 0!==d){if(0===d.c.count.value)return d.c.l=c,d.c.F=a,d.clone();d=d.clone();this.ec(a);return d}d=this.m.$c(c);d=ke[d];if(!d)return b.call(this);d=this.Ra?d.Uc:d.pointerType;var f=xe(c,this.m,d.m);return null===f?b.call(this):this.Sa?Fe(d.m.wa,{s:d,l:f,I:this,F:a}):Fe(d.m.wa,{s:d,l:f})}
function He(){Ie.prototype.bd=ue;Ie.prototype.ec=ve;Ie.prototype.argPackAdvance=8;Ie.prototype.readValueFromPointer=Bd;Ie.prototype.deleteObject=we;Ie.prototype.fromWireType=Ge}function Ie(a,b,c,d,f,g,h,l,m,n,p){this.name=a;this.m=b;this.tb=c;this.Ra=d;this.Sa=f;this.vd=g;this.Kd=h;this.xc=l;this.Ea=m;this.xd=n;this.G=p;f||void 0!==b.J?this.toWireType=re:(this.toWireType=d?pe:te,this.B=null)}
function Je(a,b,c){e.hasOwnProperty(a)||Jd("Replacing nonexistant public symbol");void 0!==e[a].v&&void 0!==c?e[a].v[c]=b:(e[a]=b,e[a].ib=c)}
function Ke(a,b){a=S(a);if(void 0!==e["FUNCTION_TABLE_"+a])var c=e["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=e.asm["dynCall_"+a];void 0===c&&(c=e.asm["dynCall_"+a.replace(/f/g,"d")],void 0===c&&T("No dynCall invoker for signature: "+a));for(var d=[],f=1;f<a.length;++f)d.push("a"+f);f="return function "+("dynCall_"+a+"_"+b)+"("+d.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(d.length?", ":"")+d.join(", ")+");\n";c=(new Function("dynCall",
"rawFunction",f+"};\n"))(c,b)}"function"!==typeof c&&T("unknown function pointer with signature "+a+": "+b);return c}var Le=void 0;function Me(a){a=Ne(a);var b=S(a);Oe(a);return b}function Pe(a,b){function c(a){f[a]||Dd[a]||(Ed[a]?Ed[a].forEach(c):(d.push(a),f[a]=!0))}var d=[],f={};b.forEach(c);throw new Le(a+": "+d.map(Me).join([", "]));}
function Qe(a,b){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var c=Gd(a.name||"unknownFunctionName",function(){});c.prototype=a.prototype;c=new c;a=a.apply(c,b);return a instanceof Object?a:c}
function Re(a,b,c,d,f){var g=b.length;2>g&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==c,l=!1;for(c=1;c<b.length;++c)if(null!==b[c]&&void 0===b[c].B){l=!0;break}var m="void"!==b[0].name,n="",p="";for(c=0;c<g-2;++c)n+=(0!==c?", ":"")+"arg"+c,p+=(0!==c?", ":"")+"arg"+c+"Wired";a="return function "+Fd(a)+"("+n+") {\nif (arguments.length !== "+(g-2)+") {\nthrowBindingError('function "+a+" called with ' + arguments.length + ' arguments, expected "+
(g-2)+" args!');\n}\n";l&&(a+="var destructors = [];\n");var u=l?"destructors":"null";n="throwBindingError invoker fn runDestructors retType classParam".split(" ");d=[T,d,f,Ad,b[0],b[1]];h&&(a+="var thisWired = classParam.toWireType("+u+", this);\n");for(c=0;c<g-2;++c)a+="var arg"+c+"Wired = argType"+c+".toWireType("+u+", arg"+c+"); // "+b[c+2].name+"\n",n.push("argType"+c),d.push(b[c+2]);h&&(p="thisWired"+(0<p.length?", ":"")+p);a+=(m?"var rv = ":"")+"invoker(fn"+(0<p.length?", ":"")+p+");\n";if(l)a+=
"runDestructors(destructors);\n";else for(c=h?1:2;c<b.length;++c)g=1===c?"thisWired":"arg"+(c-2)+"Wired",null!==b[c].B&&(a+=g+"_dtor("+g+"); // "+b[c].name+"\n",n.push(g+"_dtor"),d.push(b[c].B));m&&(a+="var ret = retType.fromWireType(rv);\nreturn ret;\n");n.push(a+"}\n");return Qe(Function,n).apply(null,d)}function Se(a,b){for(var c=[],d=0;d<a;d++)c.push(v[(b>>2)+d]);return c}var Te=[],Ue=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
function Ve(a){4<a&&0===--Ue[a].Hb&&(Ue[a]=void 0,Te.push(a))}function We(){for(var a=0,b=5;b<Ue.length;++b)void 0!==Ue[b]&&++a;return a}function Xe(){for(var a=5;a<Ue.length;++a)if(void 0!==Ue[a])return Ue[a];return null}function Ye(){e.count_emval_handles=We;e.get_first_emval=Xe}function se(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Te.length?Te.pop():Ue.length;Ue[b]={Hb:1,value:a};return b}}
function Ze(a,b,c){switch(b){case 0:return function(a){return this.fromWireType((c?La:r)[a])};case 1:return function(a){return this.fromWireType((c?Ua:Va)[a>>1])};case 2:return function(a){return this.fromWireType((c?v:ba)[a>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function $e(a,b){var c=Dd[a];void 0===c&&T(b+" has unknown type "+Me(a));return c}function qe(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function af(a,b){switch(b){case 2:return function(a){return this.fromWireType(q[a>>2])};case 3:return function(a){return this.fromWireType(aa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function bf(a,b,c){switch(b){case 0:return c?function(a){return La[a]}:function(a){return r[a]};case 1:return c?function(a){return Ua[a>>1]}:function(a){return Va[a>>1]};case 2:return c?function(a){return v[a>>2]}:function(a){return ba[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function cf(a){a||T("Cannot use deleted val. handle = "+a);return Ue[a].value}function df(a,b){for(var c=Array(a),d=0;d<a;++d)c[d]=$e(v[(b>>2)+d],"parameter "+d);return c}
function ef(a){var b=[];v[a>>2]=se(b);return b}var ff={};function gf(a){var b=ff[a];return void 0===b?S(a):b}var hf=[];function jf(){return Function("return this")()}function kf(a){var b=hf.length;hf.push(a);return b}
function lf(a){for(var b="",c=0;c<a;++c)b+=(0!==c?", ":"")+"arg"+c;var d="return function emval_allocator_"+a+"(constructor, argTypes, args) {\n";for(c=0;c<a;++c)d+="var argType"+c+" = requireRegisteredType(Module['HEAP32'][(argTypes >> 2) + "+c+'], "parameter '+c+'");\nvar arg'+c+" = argType"+c+".readValueFromPointer(args);\nargs += argType"+c+"['argPackAdvance'];\n";return(new Function("requireRegisteredType","Module","__emval_register",d+("var obj = new constructor("+b+");\nreturn __emval_register(obj);\n}\n")))($e,
e,se)}var mf={};function nf(){Ha()}function of(){return ma||"undefined"!==typeof dateNow||(ka||la)&&self.performance&&self.performance.now}
function pf(a,b){qf=a;rf=b;if(!sf)return 1;if(0==a)tf=function(){var a=Math.max(0,uf+b-nf())|0;setTimeout(vf,a)},wf="timeout";else if(1==a)tf=function(){xf(vf)},wf="rAF";else if(2==a){if("undefined"===typeof setImmediate){var c=[];addEventListener("message",function(a){if("setimmediate"===a.data||"setimmediate"===a.data.target)a.stopPropagation(),c.shift()()},!0);setImmediate=function(a){c.push(a);la?(void 0===e.setImmediates&&(e.setImmediates=[]),e.setImmediates.push(a),postMessage({target:"setimmediate"})):
postMessage("setimmediate","*")}}tf=function(){setImmediate(vf)};wf="immediate"}return 0}
function yf(a,b,c,d,f){e.noExitRuntime=!0;assert(!sf,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");sf=a;zf=d;var g="undefined"!==typeof d?function(){e.dynCall_vi(a,d)}:function(){e.dynCall_v(a)};var h=Af;vf=function(){if(!Ga)if(0<Bf.length){var a=Date.now(),b=Bf.shift();b.j(b.Ka);if(Cf){var c=Cf,d=0==c%1?c-1:Math.floor(c);Cf=b.$f?d:(8*c+(d+.5))/9}console.log('main loop blocker "'+
b.name+'" took '+(Date.now()-a)+" ms");e.setStatus&&(a=e.statusMessage||"Please wait...",b=Cf,c=Df.gg,b?b<c?e.setStatus(a+" ("+(c-b)+"/"+c+")"):e.setStatus(a):e.setStatus(""));h<Af||setTimeout(vf,0)}else if(!(h<Af))if(Ef=Ef+1|0,1==qf&&1<rf&&0!=Ef%rf)tf();else{0==qf&&(uf=nf());"timeout"===wf&&e.ha&&(e.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),
wf="");a:if(!(Ga||e.preMainLoop&&!1===e.preMainLoop())){try{g()}catch(u){if(u instanceof ra)break a;u&&"object"===typeof u&&u.stack&&e.printErr("exception thrown: "+[u,u.stack]);throw u;}e.postMainLoop&&e.postMainLoop()}h<Af||("object"===typeof SDL&&SDL.audio&&SDL.audio.wd&&SDL.audio.wd(),tf())}};f||(b&&0<b?pf(0,1E3/b):pf(1,1),tf());if(c)throw"SimulateInfiniteLoop";}var tf=null,wf="",Af=0,sf=null,zf=0,qf=0,rf=0,Ef=0,Bf=[],Df={},uf,vf,Cf,Ff=!1,Gf=!1,Hf=[];
function ud(){function a(){Gf=document.pointerLockElement===e.canvas||document.mozPointerLockElement===e.canvas||document.webkitPointerLockElement===e.canvas||document.msPointerLockElement===e.canvas}e.preloadPlugins||(e.preloadPlugins=[]);if(!If){If=!0;try{Jf=!0}catch(c){Jf=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Kf="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Jf?null:console.log("warning: no BlobBuilder");
Lf="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0;e.tc||"undefined"!==typeof Lf||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),e.tc=!0);e.preloadPlugins.push({canHandle:function(a){return!e.tc&&/\.(jpg|jpeg|png|bmp)$/i.test(a)},handle:function(a,b,f,g){var c=null;if(Jf)try{c=new Blob([a],{type:Mf(b)}),c.size!==a.length&&(c=new Blob([(new Uint8Array(a)).buffer],{type:Mf(b)}))}catch(n){Ba("Blob constructor present but fails: "+
n+"; falling back to blob builder")}c||(c=new Kf,c.append((new Uint8Array(a)).buffer),c=c.getBlob());var d=Lf.createObjectURL(c),m=new Image;m.onload=function(){assert(m.complete,"Image "+b+" could not be decoded");var c=document.createElement("canvas");c.width=m.width;c.height=m.height;c.getContext("2d").drawImage(m,0,0);e.preloadedImages[b]=c;Lf.revokeObjectURL(d);f&&f(a)};m.onerror=function(){console.log("Image "+d+" could not be decoded");g&&g()};m.src=d}});e.preloadPlugins.push({canHandle:function(a){return!e.pg&&
a.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(a,b,f,g){function c(c){m||(m=!0,e.preloadedAudios[b]=c,f&&f(a))}function d(){m||(m=!0,e.preloadedAudios[b]=new Audio,g&&g())}var m=!1;if(Jf){try{var n=new Blob([a],{type:Mf(b)})}catch(u){return d()}n=Lf.createObjectURL(n);var p=new Audio;p.addEventListener("canplaythrough",function(){c(p)},!1);p.onerror=function(){if(!m){console.log("warning: browser could not fully decode audio "+b+", trying slower base64 approach");for(var d="",f=0,g=0,
h=0;h<a.length;h++)for(f=f<<8|a[h],g+=8;6<=g;){var l=f>>g-6&63;g-=6;d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[l]}2==g?(d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(f&3)<<4],d+="=="):4==g&&(d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(f&15)<<2],d+="=");p.src="data:audio/x-"+b.substr(-3)+";base64,"+d;c(p)}};p.src=n;Nf(function(){c(p)},1E4)}else return d()}});var b=e.canvas;b&&(b.requestPointerLock=b.requestPointerLock||
b.mozRequestPointerLock||b.webkitRequestPointerLock||b.msRequestPointerLock||function(){},b.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},b.exitPointerLock=b.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",a,!1),document.addEventListener("mozpointerlockchange",a,!1),document.addEventListener("webkitpointerlockchange",a,!1),document.addEventListener("mspointerlockchange",a,
!1),e.elementPointerLock&&b.addEventListener("click",function(a){!Gf&&e.canvas.requestPointerLock&&(e.canvas.requestPointerLock(),a.preventDefault())},!1))}}
function Of(a,b,c,d){if(b&&e.ha&&a==e.canvas)return e.ha;if(b){var f={antialias:!1,alpha:!1};if(d)for(var g in d)f[g]=d[g];if(f=Pf(a,f))var h=Qf[f].GLctx}else h=a.getContext("2d");if(!h)return null;c&&(b||assert("undefined"===typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),e.ha=h,b&&Rf(f),e.wg=b,Hf.forEach(function(a){a()}),ud());return h}var Sf=!1,Tf=void 0,Uf=void 0;
function Vf(a,b,c){function d(){Ff=!1;var a=f.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===a?(f.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},f.exitFullscreen=f.exitFullscreen.bind(document),Tf&&f.requestPointerLock(),Ff=!0,Uf?("undefined"!=typeof SDL&&
(v[SDL.screen>>2]=ba[SDL.screen>>2]|8388608),Wf(e.canvas),Xf()):Wf(f)):(a.parentNode.insertBefore(f,a),a.parentNode.removeChild(a),Uf?("undefined"!=typeof SDL&&(v[SDL.screen>>2]=ba[SDL.screen>>2]&-8388609),Wf(e.canvas),Xf()):Wf(f));if(e.onFullScreen)e.onFullScreen(Ff);if(e.onFullscreen)e.onFullscreen(Ff)}Tf=a;Uf=b;Yf=c;"undefined"===typeof Tf&&(Tf=!0);"undefined"===typeof Uf&&(Uf=!1);"undefined"===typeof Yf&&(Yf=null);var f=e.canvas;Sf||(Sf=!0,document.addEventListener("fullscreenchange",d,!1),document.addEventListener("mozfullscreenchange",
d,!1),document.addEventListener("webkitfullscreenchange",d,!1),document.addEventListener("MSFullscreenChange",d,!1));var g=document.createElement("div");f.parentNode.insertBefore(g,f);g.appendChild(f);g.requestFullscreen=g.requestFullscreen||g.mozRequestFullScreen||g.msRequestFullscreen||(g.webkitRequestFullscreen?function(){g.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(g.webkitRequestFullScreen?function(){g.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null);c?g.requestFullscreen({yg:c}):
g.requestFullscreen()}function eg(a,b,c){e.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead.");eg=function(a,b,c){return Vf(a,b,c)};return Vf(a,b,c)}var fg=0;function gg(a){var b=Date.now();if(0===fg)fg=b+1E3/60;else for(;b+2>=fg;)fg+=1E3/60;setTimeout(a,Math.max(fg-b,0))}
function xf(a){"undefined"===typeof window?gg(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||gg),window.requestAnimationFrame(a))}function hg(a){xf(function(){Ga||a()})}function Nf(a,b){e.noExitRuntime=!0;setTimeout(function(){Ga||a()},b)}
function Mf(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}function vd(a,b,c){var d="al "+a;e.readAsync(a,function(c){assert(c,'Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(c));d&&wb()},function(){if(c)c();else throw'Loading data file "'+a+'" failed.';});d&&vb()}var ig=[];function Xf(){var a=e.canvas;ig.forEach(function(b){b(a.width,a.height)})}
function Wf(a,b,c){b&&c?(a.Vd=b,a.ed=c):(b=a.Vd,c=a.ed);var d=b,f=c;e.forcedAspectRatio&&0<e.forcedAspectRatio&&(d/f<e.forcedAspectRatio?d=Math.round(f*e.forcedAspectRatio):f=Math.round(d/e.forcedAspectRatio));if((document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===a.parentNode&&"undefined"!=typeof screen){var g=Math.min(screen.width/d,screen.height/f);d=Math.round(d*g);f=Math.round(f*
g)}Uf?(a.width!=d&&(a.width=d),a.height!=f&&(a.height=f),"undefined"!=typeof a.style&&(a.style.removeProperty("width"),a.style.removeProperty("height"))):(a.width!=b&&(a.width=b),a.height!=c&&(a.height=c),"undefined"!=typeof a.style&&(d!=b||f!=c?(a.style.setProperty("width",d+"px","important"),a.style.setProperty("height",f+"px","important")):(a.style.removeProperty("width"),a.style.removeProperty("height"))))}
var If,Jf,Kf,Lf,Yf,jg=1,kg=0,lg=[],mg=[],ng=[],og=[],pg=[],U=[],qg=[],Qf=[],rg=null,sg={},tg={},ug={},vg=[],wg=4;function Y(a){kg||(kg=a)}function xg(a){for(var b=jg++,c=a.length;c<b;c++)a[c]=null;return b}var yg=null,zg=[0];
function Pf(a,b){function c(a){d=a.statusMessage||d}"undefined"===typeof b.majorVersion&&"undefined"===typeof b.minorVersion&&(b.majorVersion="undefined"!==typeof WebGL2RenderingContext?2:1,b.minorVersion=0);var d="?";try{a.addEventListener("webglcontextcreationerror",c,!1);try{if(1==b.majorVersion&&0==b.minorVersion)var f=a.getContext("webgl",b)||a.getContext("experimental-webgl",b);else if(2==b.majorVersion&&0==b.minorVersion)f=a.getContext("webgl2",b);else throw"Unsupported WebGL context version "+
majorVersion+"."+minorVersion+"!";}finally{a.removeEventListener("webglcontextcreationerror",c,!1)}if(!f)throw":(";}catch(g){return e.print("Could not create canvas: "+[d,g,JSON.stringify(b)]),0}return f?Ag(f,b):0}
function Ag(a,b){function c(){var a=navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);return a?parseInt(a[2],10):!1}var d=xg(Qf),f={handle:d,attributes:b,version:b.majorVersion,GLctx:a};f.P=2<=f.version&&(!1===c()||58<=c());a.canvas&&(a.canvas.Ja=f);Qf[d]=f;("undefined"===typeof b.enableExtensionsByDefault||b.enableExtensionsByDefault)&&Bg(f);return d}function Rf(a){a=Qf[a];if(!a)return!1;GLctx=e.ha=a.GLctx;rg=a;return!0}
function Bg(a){a||(a=rg);if(!a.hd){a.hd=!0;var b=a.GLctx;a.og=b.getParameter(b.MAX_VERTEX_ATTRIBS);if(2>a.version){var c=b.getExtension("ANGLE_instanced_arrays");c&&(b.vertexAttribDivisor=function(a,b){c.vertexAttribDivisorANGLE(a,b)},b.drawArraysInstanced=function(a,b,d,f){c.drawArraysInstancedANGLE(a,b,d,f)},b.drawElementsInstanced=function(a,b,d,f,g){c.drawElementsInstancedANGLE(a,b,d,f,g)});var d=b.getExtension("OES_vertex_array_object");d&&(b.createVertexArray=function(){return d.createVertexArrayOES()},
b.deleteVertexArray=function(a){d.deleteVertexArrayOES(a)},b.bindVertexArray=function(a){d.bindVertexArrayOES(a)},b.isVertexArray=function(a){return d.isVertexArrayOES(a)});var f=b.getExtension("WEBGL_draw_buffers");f&&(b.drawBuffers=function(a,b){f.drawBuffersWEBGL(a,b)})}b.cg=b.getExtension("EXT_disjoint_timer_query");var g="OES_texture_float OES_texture_half_float OES_standard_derivatives OES_vertex_array_object WEBGL_compressed_texture_s3tc WEBGL_depth_texture OES_element_index_uint EXT_texture_filter_anisotropic ANGLE_instanced_arrays OES_texture_float_linear OES_texture_half_float_linear WEBGL_compressed_texture_atc WEBKIT_WEBGL_compressed_texture_pvrtc WEBGL_compressed_texture_pvrtc EXT_color_buffer_half_float WEBGL_color_buffer_float EXT_frag_depth EXT_sRGB WEBGL_draw_buffers WEBGL_shared_resources EXT_shader_texture_lod EXT_color_buffer_float".split(" ");
(a=b.getSupportedExtensions())&&0<a.length&&b.getSupportedExtensions().forEach(function(a){-1!=g.indexOf(a)&&b.getExtension(a)})}}var Cg,Dg,Eg=0;function Fg(a){return a?("number"==typeof a&&(a=w(a)),"#window"==a?window:"#document"==a?document:"#screen"==a?window.screen:"#canvas"==a?e.canvas:"string"==typeof a?document.getElementById(a):a):window}var Gg=[],JSEvents={},Hg=va;va+=16;
function Ig(a){if(Ig.Rc){var b=v[Hg>>2];var c=v[b>>2]}else Ig.Rc=!0,Jg.USER=Jg.LOGNAME="web_user",Jg.PATH="/",Jg.PWD="/",Jg.HOME="/home/web_user",Jg.LANG="C.UTF-8",Jg._=e.thisProgram,c=ta(1024),b=ta(256),v[b>>2]=c,v[Hg>>2]=b;var d=[],f=0;for(h in a)if("string"===typeof a[h]){var g=h+"="+a[h];d.push(g);f+=g.length}if(1024<f)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(a=0;a<d.length;a++){f=g=d[a];var h=c;for(var l=0;l<f.length;++l)La[h++>>0]=f.charCodeAt(l);La[h>>0]=0;v[b+4*a>>2]=c;
c+=g.length+1}v[b+4*d.length>>2]=0}var Jg={};function Kg(a){if(0===a)return 0;a=w(a);if(!Jg.hasOwnProperty(a))return 0;Kg.ta&&Oe(Kg.ta);a=Jg[a];var b=Oa(a)+1,c=Ka(b);c&&Na(a,La,c,b);Kg.ta=c;return Kg.ta}function _glDrawArrays(a,b,c){GLctx.drawArrays(a,b,c)}function _glDrawElements(a,b,c,d){GLctx.drawElements(a,b,c,d)}
function Lg(a,b,c){if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:"Integer"!==c&&"Integer64"!==c&&Y(1280);return;case 34814:case 36345:d=0;break;case 34466:d=GLctx.getParameter(34467).length;break;case 33309:if(2>GLctx.canvas.Ja.version){Y(1282);return}d=2*GLctx.getSupportedExtensions().length;break;case 33307:case 33308:if(2>GLctx.canvas.Ja.version){Y(1280);return}d=33307==a?3:0}if(void 0===d)switch(d=GLctx.getParameter(a),typeof d){case "number":break;case "boolean":d=d?1:0;break;
case "string":Y(1280);return;case "object":if(null===d)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 35097:case 36389:case 34068:d=0;break;default:Y(1280);return}else{if(d instanceof Float32Array||d instanceof Uint32Array||d instanceof Int32Array||d instanceof Array){for(a=0;a<d.length;++a)switch(c){case "Integer":v[b+4*a>>2]=d[a];break;case "Float":q[b+4*a>>2]=d[a];break;case "Boolean":La[b+a>>0]=d[a]?1:0;break;default:throw"internal glGet error, bad type: "+
c;}return}if(d instanceof WebGLBuffer||d instanceof WebGLProgram||d instanceof WebGLFramebuffer||d instanceof WebGLRenderbuffer||d instanceof WebGLQuery||d instanceof WebGLSampler||d instanceof WebGLSync||d instanceof WebGLTransformFeedback||d instanceof WebGLVertexArrayObject||d instanceof WebGLTexture)d=d.name|0;else{Y(1280);return}}break;default:Y(1280);return}switch(c){case "Integer64":tempI64=[d>>>0,(tempDouble=d,1<=+ob(tempDouble)?0<tempDouble?(rb(+qb(tempDouble/4294967296),4294967295)|0)>>>
0:~~+pb((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];v[b>>2]=tempI64[0];v[b+4>>2]=tempI64[1];break;case "Integer":v[b>>2]=d;break;case "Float":q[b>>2]=d;break;case "Boolean":La[b>>0]=d?1:0;break;default:throw"internal glGet error, bad type: "+c;}}else Y(1281)}function Mg(a,b,c,d){a*=c;d*=Math.floor((a+d-1)/d);return 0>=b?0:(b-1)*d+a}
function Ng(a,b,c,d,f){switch(b){case 6406:case 6409:case 6402:case 6403:case 36244:b=1;break;case 6410:case 33319:case 33320:b=2;break;case 6407:case 35904:case 36248:b=3;break;case 6408:case 35906:case 36249:b=4;break;default:return Y(1280),null}switch(a){case 5121:case 5120:b*=1;break;case 5123:case 36193:case 5131:case 5122:b*=2;break;case 5125:case 5126:case 5124:b*=4;break;case 34042:case 35902:case 33640:case 35899:case 34042:b=4;break;case 33635:case 32819:case 32820:b=2;break;default:return Y(1280),
null}c=Mg(c,d,b,wg);switch(a){case 5120:return La.subarray(f,f+c);case 5121:return r.subarray(f,f+c);case 5122:return Ua.subarray(f>>1,f+c>>1);case 5124:return v.subarray(f>>2,f+c>>2);case 5126:return q.subarray(f>>2,f+c>>2);case 5125:case 34042:case 35902:case 33640:case 35899:case 34042:return ba.subarray(f>>2,f+c>>2);case 5123:case 33635:case 32819:case 32820:case 36193:case 5131:return Va.subarray(f>>1,f+c>>1);default:return Y(1280),null}}
function Og(a){switch(a){case 5120:return La;case 5121:return r;case 5122:return Ua;case 5123:case 33635:case 32819:case 32820:case 36193:case 5131:return Va;case 5124:return v;case 5125:case 34042:case 35902:case 33640:case 35899:case 34042:return ba;case 5126:return q;default:return null}}
function Pg(a){switch(a){case 5120:case 5121:return 0;case 5122:case 5123:case 33635:case 32819:case 32820:case 36193:case 5131:return 1;case 5124:case 5126:case 5125:case 34042:case 35902:case 33640:case 35899:case 34042:return 2;default:return 0}}function Qg(a){a/=1E3;if((ka||la)&&self.performance&&self.performance.now)for(var b=self.performance.now();self.performance.now()-b<a;);else for(b=Date.now();Date.now()-b<a;);return 0}
function Rg(a,b){a=new Uint8Array(a);var c=a.byteLength;e.pc+=c+24;if(eb&&c<=eb>>4){var d=ca();try{var f=da(c);r.subarray(f,f+c).set(a);b(f,c)}finally{ea(d)}}else{f=Ka(c);try{r.subarray(f,f+c).set(a),b(f,c)}finally{Oe(f)}}}
var Sg={connect:function(a,b,c,d){e.kb=b;e.Xa=Ea(c,"viiii");e.fa?e.fa++:e.fa=1;e.zc=!1;if(!e.worker){a=new Worker(URL.createObjectURL(new Blob(['var socket;self.onmessage = function (event) {\tif (event.data.constructor === ArrayBuffer) {\t\tsocket.send (event.data);\t} else if (event.data[0] === "connect") {\t\tsocket = new WebSocket (event.data[1]);\t\tsocket.binaryType = "arraybuffer";\t\tvar token = event.data[2];\t\tsocket.onclose = function (event) {\t\t\tself.postMessage (["close", token]);\t\t};\t\tsocket.onerror = function (event) {\t\t\tself.postMessage (["error", token]);\t\t};\t\tsocket.onopen = function (event) {\t\t\tself.postMessage (["open", token]);\t\t};\t\tsocket.onmessage = function (event) {\t\t\tself.postMessage (["data", event.data, token], [event.data]);\t\t};\t} else if (event.data[0] === "close") {\t\tsocket.close ();\t}}'],{type:"application/javascript"})));
e.worker=a;var f=function(a,b){e.Xa(a,b,e.kb,2)};a.onmessage=function(a){e.$$facade&&("data"===a.data[0]?a.data[2]===e.fa&&Rg(a.data[1],f):"open"===a.data[0]?a.data[1]===e.fa&&(e.zc=!0,e.Xa(0,0,e.kb,0)):"close"===a.data[0]?a.data[1]===e.fa&&(e.Xa(0,0,e.kb,3),e.h("websocket_connection_closed")):"error"===a.data[0]&&a.data[1]===e.fa&&e.h(e.zc?"socket_error":"socket_open_failed"))}}e.worker.postMessage(["connect",w(d),e.fa])},Kb:function(a,b){e.worker&&(a=(new Uint8Array(r.subarray(a,a+b))).buffer,e.worker.postMessage(a,
[a]))},close:function(){e.worker&&e.worker.postMessage(["close"]);e.Xa=function(){}}},Tg={connect:function(a,b,c,d){function f(a,c){h(a,c,b,2)}a=w(d);var g=new WebSocket(a);e.R=g;g.binaryType="arraybuffer";var h=Ea(c,"viiii"),l=!1;g.onclose=function(){e.R===g&&(h(0,0,b,3),e.h("websocket_connection_closed"))};g.onerror=function(){e.R===g&&e.h(l?"socket_error":"socket_open_failed")};g.onopen=function(){e.R===g&&(l=!0,h(0,0,b,0))};g.onmessage=function(a){e.R===g&&Rg(a.data,f)}},Kb:function(a,b){e.R&&
e.R.send(r.subarray(a,a+b))},close:function(){e.R&&e.R.close();delete e.R}};function Ug(a){return 0===a%4&&(0!==a%100||0===a%400)}function Vg(a,b){for(var c=0,d=0;d<=b;c+=a[d++]);return c}var Wg=[31,29,31,30,31,30,31,31,30,31,30,31],Xg=[31,28,31,30,31,30,31,31,30,31,30,31];
function Yg(a,b){for(a=new Date(a.getTime());0<b;){var c=a.getMonth(),d=(Ug(a.getFullYear())?Wg:Xg)[c];if(b>d-a.getDate())b-=d-a.getDate()+1,a.setDate(1),11>c?a.setMonth(c+1):(a.setMonth(0),a.setFullYear(a.getFullYear()+1));else{a.setDate(a.getDate()+b);break}}return a}
function Zg(a,b,c,d){function f(a,b,c){for(a="number"===typeof a?a.toString():a||"";a.length<b;)a=c[0]+a;return a}function g(a,b){return f(a,b,"0")}function h(a,b){function c(a){return 0>a?-1:0<a?1:0}var d;0===(d=c(a.getFullYear()-b.getFullYear()))&&0===(d=c(a.getMonth()-b.getMonth()))&&(d=c(a.getDate()-b.getDate()));return d}function l(a){switch(a.getDay()){case 0:return new Date(a.getFullYear()-1,11,29);case 1:return a;case 2:return new Date(a.getFullYear(),0,3);case 3:return new Date(a.getFullYear(),
0,2);case 4:return new Date(a.getFullYear(),0,1);case 5:return new Date(a.getFullYear()-1,11,31);case 6:return new Date(a.getFullYear()-1,11,30)}}function m(a){a=Yg(new Date(a.u+1900,0,1),a.ab);var b=l(new Date(a.getFullYear()+1,0,4));return 0>=h(l(new Date(a.getFullYear(),0,4)),a)?0>=h(b,a)?a.getFullYear()+1:a.getFullYear():a.getFullYear()-1}var n=v[d+40>>2];d={Rd:v[d>>2],Qd:v[d+4>>2],$a:v[d+8>>2],ga:v[d+12>>2],X:v[d+16>>2],u:v[d+20>>2],Cc:v[d+24>>2],ab:v[d+28>>2],ug:v[d+32>>2],Pd:v[d+36>>2],Sd:n?
w(n):""};c=w(c);n={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var p in n)c=c.replace(new RegExp(p,"g"),n[p]);var u="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),y="January February March April May June July August September October November December".split(" ");n={"%a":function(a){return u[a.Cc].substring(0,3)},"%A":function(a){return u[a.Cc]},"%b":function(a){return y[a.X].substring(0,
3)},"%B":function(a){return y[a.X]},"%C":function(a){return g((a.u+1900)/100|0,2)},"%d":function(a){return g(a.ga,2)},"%e":function(a){return f(a.ga,2," ")},"%g":function(a){return m(a).toString().substring(2)},"%G":function(a){return m(a)},"%H":function(a){return g(a.$a,2)},"%I":function(a){a=a.$a;0==a?a=12:12<a&&(a-=12);return g(a,2)},"%j":function(a){return g(a.ga+Vg(Ug(a.u+1900)?Wg:Xg,a.X-1),3)},"%m":function(a){return g(a.X+1,2)},"%M":function(a){return g(a.Qd,2)},"%n":function(){return"\n"},
"%p":function(a){return 0<=a.$a&&12>a.$a?"AM":"PM"},"%S":function(a){return g(a.Rd,2)},"%t":function(){return"\t"},"%u":function(a){return(new Date(a.u+1900,a.X+1,a.ga,0,0,0,0)).getDay()||7},"%U":function(a){var b=new Date(a.u+1900,0,1),c=0===b.getDay()?b:Yg(b,7-b.getDay());a=new Date(a.u+1900,a.X,a.ga);return 0>h(c,a)?g(Math.ceil((31-c.getDate()+(Vg(Ug(a.getFullYear())?Wg:Xg,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},"%V":function(a){var b=l(new Date(a.u+1900,0,4)),c=l(new Date(a.u+
1901,0,4)),d=Yg(new Date(a.u+1900,0,1),a.ab);return 0>h(d,b)?"53":0>=h(c,d)?"01":g(Math.ceil((b.getFullYear()<a.u+1900?a.ab+32-b.getDate():a.ab+1-b.getDate())/7),2)},"%w":function(a){return(new Date(a.u+1900,a.X+1,a.ga,0,0,0,0)).getDay()},"%W":function(a){var b=new Date(a.u,0,1),c=1===b.getDay()?b:Yg(b,0===b.getDay()?1:7-b.getDay()+1);a=new Date(a.u+1900,a.X,a.ga);return 0>h(c,a)?g(Math.ceil((31-c.getDate()+(Vg(Ug(a.getFullYear())?Wg:Xg,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},
"%y":function(a){return(a.u+1900).toString().substring(2)},"%Y":function(a){return a.u+1900},"%z":function(a){a=a.Pd;var b=0<=a;a=Math.abs(a)/60;return(b?"+":"-")+String("0000"+(a/60*100+a%60)).slice(-4)},"%Z":function(a){return a.Sd},"%%":function(){return"%"}};for(p in n)0<=c.indexOf(p)&&(c=c.replace(new RegExp(p,"g"),n[p](d)));p=tc(c,!1);if(p.length>b)return 0;La.set(p,a);return p.length-1}id();Gc=Array(4096);Xc(G,"/");Zc("/tmp");Zc("/home");Zc("/home/web_user");
(function(){Zc("/dev");rc(259,{read:function(){return 0},write:function(a,b,f,g){return g}});$c("/dev/null",259);qc(1280,uc);qc(1536,vc);$c("/dev/tty",1280);$c("/dev/tty1",1536);if("undefined"!==typeof crypto){var a=new Uint8Array(1);var b=function(){crypto.getRandomValues(a);return a[0]}}else b=ma?function(){return require("crypto").randomBytes(1)[0]}:function(){return 256*Math.random()|0};pd("/dev","random",b);pd("/dev","urandom",b);Zc("/dev/shm");Zc("/dev/shm/tmp")})();Zc("/proc");Zc("/proc/self");
Zc("/proc/self/fd");Xc({C:function(){var a=xc("/proc/self","fd",16895,73);a.f={lookup:function(a,c){var b=Ec[+c];if(!b)throw new E(z.S);a={parent:null,C:{sc:"fake"},f:{readlink:function(){return b.path}}};return a.parent=a}};return a}},"/proc/self/fd");
ib.unshift(function(){if(!e.noFSInit&&!jd){assert(!jd,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");jd=!0;id();e.stdin=e.stdin;e.stdout=e.stdout;e.stderr=e.stderr;e.stdin?pd("/dev","stdin",e.stdin):ad("/dev/tty","/dev/stdin");e.stdout?pd("/dev","stdout",null,e.stdout):ad("/dev/tty","/dev/stdout");e.stderr?pd("/dev","stderr",null,e.stderr):ad("/dev/tty1","/dev/stderr");
var a=dd("/dev/stdin","r");assert(0===a.fd,"invalid handle for stdin ("+a.fd+")");a=dd("/dev/stdout","w");assert(1===a.fd,"invalid handle for stdout ("+a.fd+")");a=dd("/dev/stderr","w");assert(2===a.fd,"invalid handle for stderr ("+a.fd+")")}});jb.push(function(){Hc=!1});kb.push(function(){jd=!1;var a=e._fflush;a&&a(0);for(a=0;a<Ec.length;a++){var b=Ec[a];b&&fd(b)}});e.FS_createFolder=ld;e.FS_createPath=md;e.FS_createDataFile=od;e.FS_createPreloadedFile=td;e.FS_createLazyFile=sd;e.FS_createLink=qd;
e.FS_createDevice=pd;e.FS_unlink=bd;ib.unshift(function(){});kb.push(function(){});if(ma){var fs=require("fs"),Bc=require("path");K.Nd()}Id=e.InternalError=Hd(Error,"InternalError");Vd();Xd=e.BindingError=Hd(Error,"BindingError");je();He();Ce();Le=e.UnboundTypeError=Hd(Error,"UnboundTypeError");Ye();
ma?nf=function(){var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:"undefined"!==typeof dateNow?nf=dateNow:"object"===typeof self&&self.performance&&"function"===typeof self.performance.now?nf=function(){return self.performance.now()}:"object"===typeof performance&&"function"===typeof performance.now?nf=function(){return performance.now()}:nf=Date.now;
e.requestFullScreen=function(a,b,c){e.printErr("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead.");e.requestFullScreen=e.requestFullscreen;eg(a,b,c)};e.requestFullscreen=function(a,b,c){Vf(a,b,c)};e.requestAnimationFrame=function(a){xf(a)};e.setCanvasSize=function(a,b,c){Wf(e.canvas,a,b);c||Xf()};e.pauseMainLoop=function(){tf=null;Af++};e.resumeMainLoop=function(){Af++;var a=qf,b=rf,c=sf;sf=null;yf(c,0,!1,zf,!0);pf(a,b);tf()};
e.getUserMedia=function(){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(void 0)};e.createContext=function(a,b,c,d){return Of(a,b,c,d)};var GLctx;yg=new Float32Array(256);for(var $g=0;256>$g;$g++)zg[$g]=yg.subarray(0,$g+1);for($g=0;32>$g;$g++)vg.push(Array($g));
(function(){if("undefined"!==typeof window){window.addEventListener("gamepadconnected",function(){++Eg});window.addEventListener("gamepaddisconnected",function(){--Eg});var a=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads():null;a&&(Eg=a.length)}})();Ig(Jg);xa=ta(4);Za=$a=Aa(va);ab=Za+eb;bb=Aa(ab);v[xa>>2]=bb;ua=!0;var ah=!1;function tc(a,b){var c=Array(Oa(a)+1);a=Na(a,c,0,c.length);b&&(c.length=a);return c}
function sa(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];255<d&&(ah&&assert(!1,"Character code "+d+" ("+String.fromCharCode(d)+") at offset "+c+" not in 0x00-0xFF."),d&=255);b.push(String.fromCharCode(d))}return b.join("")}
var bh="function"===typeof atob?atob:function(a){var b="",c=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(c++));var f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(c++));var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(c++));var h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(c++));d=d<<2|f>>4;
f=(f&15)<<4|g>>2;var l=(g&3)<<6|h;b+=String.fromCharCode(d);64!==g&&(b+=String.fromCharCode(f));64!==h&&(b+=String.fromCharCode(l))}while(c<a.length);return b};
function qa(a){if(String.prototype.startsWith?a.startsWith(Db):0===a.indexOf(Db)){a=a.slice(Db.length);if("boolean"===typeof ma&&ma){try{var b=Buffer.from(a,"base64")}catch(g){b=new Buffer(a,"base64")}var c=new Uint8Array(b.buffer,b.byteOffset,b.byteLength)}else try{var d=bh(a),f=new Uint8Array(d.length);for(b=0;b<d.length;++b)f[b]=d.charCodeAt(b);c=f}catch(g){throw Error("Converting base64 string to bytes failed.");}return c}}
e.Nc={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity,byteLength:db};
e.Oc={abort:Ha,assert:assert,enlargeMemory:za,getTotalMemory:function(){return ya},abortOnCannotGrowMemory:function(){Ha("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+ya+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_di:function(a,
b){try{return e.dynCall_di(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;e.setThrew(1,0)}},invoke_dii:function(a,b,c){try{return e.dynCall_dii(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;e.setThrew(1,0)}},invoke_i:function(a){try{return e.dynCall_i(a)}catch(b){if("number"!==typeof b&&"longjmp"!==b)throw b;e.setThrew(1,0)}},invoke_ii:function(a,b){try{return e.dynCall_ii(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;e.setThrew(1,0)}},invoke_iid:function(a,
b,c){try{return e.dynCall_iid(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;e.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return e.dynCall_iii(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;e.setThrew(1,0)}},invoke_iiii:function(a,b,c,d){try{return e.dynCall_iiii(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,f){try{return e.dynCall_iiiii(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;
e.setThrew(1,0)}},invoke_iiiiid:function(a,b,c,d,f,g){try{return e.dynCall_iiiiid(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_iiiiidi:function(a,b,c,d,f,g,h){try{return e.dynCall_iiiiidi(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_iiiiii:function(a,b,c,d,f,g){try{return e.dynCall_iiiiii(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_iiiiiid:function(a,b,
c,d,f,g,h){try{return e.dynCall_iiiiiid(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_iiiiiidi:function(a,b,c,d,f,g,h,l){try{return e.dynCall_iiiiiidi(a,b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_iiiiiii:function(a,b,c,d,f,g,h){try{return e.dynCall_iiiiiii(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_iiiiiiii:function(a,b,c,d,f,g,h,l){try{return e.dynCall_iiiiiiii(a,
b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_iiiiiiiii:function(a,b,c,d,f,g,h,l,m){try{return e.dynCall_iiiiiiiii(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_iiiiiiiiiiiiiiid:function(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t){try{return e.dynCall_iiiiiiiiiiiiiiid(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t)}catch(I){if("number"!==typeof I&&"longjmp"!==I)throw I;e.setThrew(1,0)}},invoke_iiiiiiiiiiiiiiiid:function(a,
b,c,d,f,g,h,l,m,n,p,u,y,A,B,t,I){try{return e.dynCall_iiiiiiiiiiiiiiiid(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t,I)}catch(R){if("number"!==typeof R&&"longjmp"!==R)throw R;e.setThrew(1,0)}},invoke_v:function(a){try{e.dynCall_v(a)}catch(b){if("number"!==typeof b&&"longjmp"!==b)throw b;e.setThrew(1,0)}},invoke_vd:function(a,b){try{e.dynCall_vd(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;e.setThrew(1,0)}},invoke_vdd:function(a,b,c){try{e.dynCall_vdd(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==
d)throw d;e.setThrew(1,0)}},invoke_vddi:function(a,b,c,d){try{e.dynCall_vddi(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_vdi:function(a,b,c){try{e.dynCall_vdi(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;e.setThrew(1,0)}},invoke_vi:function(a,b){try{e.dynCall_vi(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;e.setThrew(1,0)}},invoke_vid:function(a,b,c){try{e.dynCall_vid(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;
e.setThrew(1,0)}},invoke_vidd:function(a,b,c,d){try{e.dynCall_vidd(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_viddd:function(a,b,c,d,f){try{e.dynCall_viddd(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_vidddiii:function(a,b,c,d,f,g,h,l){try{e.dynCall_vidddiii(a,b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_viddi:function(a,b,c,d,f){try{e.dynCall_viddi(a,b,c,d,
f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_vidi:function(a,b,c,d){try{e.dynCall_vidi(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_vidiii:function(a,b,c,d,f,g){try{e.dynCall_vidiii(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_vii:function(a,b,c){try{e.dynCall_vii(a,b,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;e.setThrew(1,0)}},invoke_viid:function(a,b,c,
d){try{e.dynCall_viid(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_viidd:function(a,b,c,d,f){try{e.dynCall_viidd(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_viiddd:function(a,b,c,d,f,g){try{e.dynCall_viiddd(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_viiddi:function(a,b,c,d,f,g){try{e.dynCall_viiddi(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;
e.setThrew(1,0)}},invoke_viidi:function(a,b,c,d,f){try{e.dynCall_viidi(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_viididididi:function(a,b,c,d,f,g,h,l,m,n,p){try{e.dynCall_viididididi(a,b,c,d,f,g,h,l,m,n,p)}catch(u){if("number"!==typeof u&&"longjmp"!==u)throw u;e.setThrew(1,0)}},invoke_viidii:function(a,b,c,d,f,g){try{e.dynCall_viidii(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_viidiii:function(a,b,c,
d,f,g,h){try{e.dynCall_viidiii(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{e.dynCall_viii(a,b,c,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;e.setThrew(1,0)}},invoke_viiid:function(a,b,c,d,f){try{e.dynCall_viiid(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_viiidd:function(a,b,c,d,f,g){try{e.dynCall_viiidd(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==
h)throw h;e.setThrew(1,0)}},invoke_viiiddddi:function(a,b,c,d,f,g,h,l,m){try{e.dynCall_viiiddddi(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiddi:function(a,b,c,d,f,g,h){try{e.dynCall_viiiddi(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_viiidi:function(a,b,c,d,f,g){try{e.dynCall_viiidi(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_viiididididi:function(a,
b,c,d,f,g,h,l,m,n,p,u){try{e.dynCall_viiididididi(a,b,c,d,f,g,h,l,m,n,p,u)}catch(y){if("number"!==typeof y&&"longjmp"!==y)throw y;e.setThrew(1,0)}},invoke_viiidii:function(a,b,c,d,f,g,h){try{e.dynCall_viiidii(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,f){try{e.dynCall_viiii(a,b,c,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;e.setThrew(1,0)}},invoke_viiiid:function(a,b,c,d,f,g){try{e.dynCall_viiiid(a,b,c,d,f,
g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_viiiidddiiii:function(a,b,c,d,f,g,h,l,m,n,p,u){try{e.dynCall_viiiidddiiii(a,b,c,d,f,g,h,l,m,n,p,u)}catch(y){if("number"!==typeof y&&"longjmp"!==y)throw y;e.setThrew(1,0)}},invoke_viiiidi:function(a,b,c,d,f,g,h){try{e.dynCall_viiiidi(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_viiiidii:function(a,b,c,d,f,g,h,l){try{e.dynCall_viiiidii(a,b,c,d,f,g,h,l)}catch(m){if("number"!==
typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_viiiidiiii:function(a,b,c,d,f,g,h,l,m,n){try{e.dynCall_viiiidiiii(a,b,c,d,f,g,h,l,m,n)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;e.setThrew(1,0)}},invoke_viiiii:function(a,b,c,d,f,g){try{e.dynCall_viiiii(a,b,c,d,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;e.setThrew(1,0)}},invoke_viiiiidd:function(a,b,c,d,f,g,h,l){try{e.dynCall_viiiiidd(a,b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,
0)}},invoke_viiiiiddd:function(a,b,c,d,f,g,h,l,m){try{e.dynCall_viiiiiddd(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiiiddi:function(a,b,c,d,f,g,h,l,m){try{e.dynCall_viiiiiddi(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiiidi:function(a,b,c,d,f,g,h,l){try{e.dynCall_viiiiidi(a,b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_viiiiidii:function(a,
b,c,d,f,g,h,l,m){try{e.dynCall_viiiiidii(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiiidiii:function(a,b,c,d,f,g,h,l,m,n){try{e.dynCall_viiiiidiii(a,b,c,d,f,g,h,l,m,n)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;e.setThrew(1,0)}},invoke_viiiiidiiii:function(a,b,c,d,f,g,h,l,m,n,p){try{e.dynCall_viiiiidiiii(a,b,c,d,f,g,h,l,m,n,p)}catch(u){if("number"!==typeof u&&"longjmp"!==u)throw u;e.setThrew(1,0)}},invoke_viiiiii:function(a,b,
c,d,f,g,h){try{e.dynCall_viiiiii(a,b,c,d,f,g,h)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;e.setThrew(1,0)}},invoke_viiiiiidd:function(a,b,c,d,f,g,h,l,m){try{e.dynCall_viiiiiidd(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiiiiddd:function(a,b,c,d,f,g,h,l,m,n){try{e.dynCall_viiiiiiddd(a,b,c,d,f,g,h,l,m,n)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;e.setThrew(1,0)}},invoke_viiiiiidiii:function(a,b,c,d,f,g,h,l,m,n,p){try{e.dynCall_viiiiiidiii(a,
b,c,d,f,g,h,l,m,n,p)}catch(u){if("number"!==typeof u&&"longjmp"!==u)throw u;e.setThrew(1,0)}},invoke_viiiiiii:function(a,b,c,d,f,g,h,l){try{e.dynCall_viiiiiii(a,b,c,d,f,g,h,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;e.setThrew(1,0)}},invoke_viiiiiiii:function(a,b,c,d,f,g,h,l,m){try{e.dynCall_viiiiiiii(a,b,c,d,f,g,h,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;e.setThrew(1,0)}},invoke_viiiiiiiii:function(a,b,c,d,f,g,h,l,m,n){try{e.dynCall_viiiiiiiii(a,b,c,d,f,g,h,l,m,
n)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;e.setThrew(1,0)}},invoke_viiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p){try{e.dynCall_viiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p)}catch(u){if("number"!==typeof u&&"longjmp"!==u)throw u;e.setThrew(1,0)}},invoke_viiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u){try{e.dynCall_viiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p,u)}catch(y){if("number"!==typeof y&&"longjmp"!==y)throw y;e.setThrew(1,0)}},invoke_viiiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u,y){try{e.dynCall_viiiiiiiiiiii(a,
b,c,d,f,g,h,l,m,n,p,u,y)}catch(A){if("number"!==typeof A&&"longjmp"!==A)throw A;e.setThrew(1,0)}},invoke_viiiiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u,y,A){try{e.dynCall_viiiiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p,u,y,A)}catch(B){if("number"!==typeof B&&"longjmp"!==B)throw B;e.setThrew(1,0)}},invoke_viiiiiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B){try{e.dynCall_viiiiiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B)}catch(t){if("number"!==typeof t&&"longjmp"!==t)throw t;e.setThrew(1,0)}},invoke_viiiiiiiiiiiiiii:function(a,
b,c,d,f,g,h,l,m,n,p,u,y,A,B,t){try{e.dynCall_viiiiiiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t)}catch(I){if("number"!==typeof I&&"longjmp"!==I)throw I;e.setThrew(1,0)}},invoke_viiiiiiiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t,I){try{e.dynCall_viiiiiiiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t,I)}catch(R){if("number"!==typeof R&&"longjmp"!==R)throw R;e.setThrew(1,0)}},invoke_viiiiiiiiiiiiiiiii:function(a,b,c,d,f,g,h,l,m,n,p,u,y,A,B,t,I,R){try{e.dynCall_viiiiiiiiiiiiiiiii(a,b,c,d,f,g,h,l,m,n,
p,u,y,A,B,t,I,R)}catch(ia){if("number"!==typeof ia&&"longjmp"!==ia)throw ia;e.setThrew(1,0)}},ClassHandle:Zd,ClassHandle_clone:be,ClassHandle_delete:de,ClassHandle_deleteLater:ie,ClassHandle_isAliasOf:Yd,ClassHandle_isDeleted:ee,RegisteredClass:ne,RegisteredPointer:Ie,RegisteredPointer_deleteObject:we,RegisteredPointer_destructor:ve,RegisteredPointer_fromWireType:Ge,RegisteredPointer_getPointee:ue,_TC_MeshBuffer_allocate:function(a,b,c){bc[a]=void 0;try{var d=[new Float32Array(b),new Uint16Array(c)]}catch(f){return 0}bc[a]=
d;return 1},_TC_MeshBuffer_allocateAndFill:function(a,b,c,d,f){bc[a]=void 0;c>>=2;f>>=1;try{var g=[new Float32Array(q.subarray(c,c+b)),new Uint16Array(Va.subarray(f,f+d))]}catch(h){return 0}bc[a]=g;return 1},_TC_MeshBuffer_clear:function(a){bc[a]=void 0},_TC_MeshBuffer_create:function(){if(cc.length)return cc.pop();var a=bc.length;bc[a]=void 0;return a},_TC_MeshBuffer_delete:function(a){bc[a]=void 0;cc.push(a)},_TC_MeshBuffer_getIndexData:function(a,b){if(!b)return 0;a=bc[a];if(!a)return 0;a=a[1];
return a.length?(Va.set(a,b>>1),1):0},_TC_MeshBuffer_getVertexData:function(a,b){if(!b)return 0;a=bc[a];if(!a)return 0;a=a[0];return a.length?(q.set(a,b>>2),1):0},_TC_MeshBuffer_indexSize:function(a){return(a=bc[a])?a[1].length:0},_TC_MeshBuffer_setGlIndexData:function(a,b){a=bc[a];if(!a)return 0;a=a[1];return a.length?(GLctx.bufferSubData(GLctx.ELEMENT_ARRAY_BUFFER,b,a),1):0},_TC_MeshBuffer_setGlIndexSubData:function(a,b,c,d){a=bc[a];if(!a)return 0;a=a[1];try{var f=new Uint8Array(a.buffer,b,c)}catch(g){return 0}return f.length?
(GLctx.bufferSubData(GLctx.ELEMENT_ARRAY_BUFFER,d,f),1):0},_TC_MeshBuffer_setGlVertexData:function(a,b){a=bc[a];if(!a)return 0;a=a[0];return a.length?(GLctx.bufferSubData(GLctx.ARRAY_BUFFER,b,a),1):0},_TC_MeshBuffer_setGlVertexSubData:function(a,b,c,d){a=bc[a];if(!a)return 0;a=a[0];try{var f=new Uint8Array(a.buffer,b,c)}catch(g){return 0}return f.length?(GLctx.bufferSubData(GLctx.ARRAY_BUFFER,d,f),1):0},_TC_MeshBuffer_setVertexSubData:function(a,b,c,d){a=bc[a];if(!a)return 0;a=a[0];return a.length&&
b<a.length&&a.length-b>=c?(d>>=2,a.set(q.subarray(d,d+c),b),1):0},_TC_MeshBuffer_vertexSize:function(a){return(a=bc[a])?a[0].length:0},_TC_announceModelHook:function(a,b){0>a&&(a+=4294967296);0>b&&(b+=4294967296);e.h("announce_model",a,b)},_TC_callAfter:function(a,b,c){var d=e.$$facade;if(d){e.noExitRuntime=!0;var f=e.callAfterMap,g=++f.index,h=function(c){d===e.$$facade&&Ea(a,"vii")(!c,b);delete f.indexedWrappers[g]};f.indexedWrappers[g]=h;0<=c?Nf(h,c):hg(h)}},_TC_callAfterCleanup:function(){for(var a=
e.callAfterMap,b=a.indexedWrappers,c=Object.keys(b),d=0;d<c.length;++d)b[c[d]](!0);a.indexedWrappers={};a.index=0},_TC_cappingIdleHook:function(a,b){e.h("capping_idle",!!a,b)},_TC_dataAccessAttachedHook:function(a){0>a&&(a+=4294967296);e.h("data_access_attached",a)},_TC_genericHook:function(a){e.h(w(a))},_TC_genericJsonHook:function(a,b){b=w(b);try{var c=JSON.parse(b)}catch(d){c=b}e.h(w(a),c)},_TC_inclusionHook:function(a,b,c){0>a&&(a+=4294967296);0>b&&(b+=4294967296);0>c&&(c+=4294967296);e.h("inclusion",
a,b,c)},_TC_metaDataHook:function(a,b,c,d){e.h("meta_data",a,b,e.HEAPU8.subarray(c,c+d))},_TC_missingModelHook:function(a,b){0>a&&(a+=4294967296);b=w(b);e.h("missing_model",a,b)},_TC_networkReceiveHook:function(a){e.h("network_receive_data",a)},_TC_postDrawHook:function(a,b){e.h("post_draw",e.$$es.convertFrameStats(a),e.Gc(b))},_TC_priorityMetaDataHook:function(a,b){0>a&&(a+=4294967296);0>b&&(b+=4294967296);e.h("priority_meta_data_sent",a,b)},_TC_remapInclusionHook:function(a,b,c,d){0>a&&(a+=4294967296);
0>b&&(b+=4294967296);0>c&&(c+=4294967296);0>d&&(d+=4294967296);e.h("remap_inclusion",a,b,c,d)},_TC_remapModelHook:function(a,b,c){0>a&&(a+=4294967296);0>b&&(b+=4294967296);0>c&&(c+=4294967296);e.h("remap_model",a,b,c)},_TC_sendRpc:function(a,b){e.bb&&(a=e.HEAP8.buffer.slice(a,b),e.bb.Ad(a))},_TC_sessionStartedHook:function(){e.h("session_started")},_TC_setReady:function(){e.$$setReady()},__ZSt18uncaught_exceptionv:dc,___assert_fail:function(a,b,c,d){Ha("Assertion failed: "+w(a)+", at: "+[b?w(b):"unknown filename",
c,d?w(d):"unknown function"])},___buildEnvironment:Ig,___cxa_pure_virtual:function(){Ga=!0;throw"Pure virtual function called!";},___lock:function(){},___map_file:function(){fc(z.$);return-1},___setErrNo:fc,___syscall140:function(a,b){xd=b;try{var c=yd();M();var d=M(),f=M(),g=M();gd(c,d,g);v[f>>2]=c.position;c.qb&&0===d&&0===g&&(c.qb=null);return 0}catch(h){return"undefined"!==typeof FS&&h instanceof E||Ha(h),-h.M}},___syscall145:function(a,b){xd=b;try{var c=yd(),d=M();a:{var f=M();for(b=a=0;b<f;b++){var g=
v[d+(8*b+4)>>2],h=c,l=v[d+8*b>>2],m=g,n=void 0,p=La;if(0>m||0>n)throw new E(z.o);if(null===h.fd)throw new E(z.S);if(1===(h.flags&2097155))throw new E(z.S);if(yc(h.node.mode))throw new E(z.sa);if(!h.g.read)throw new E(z.o);var u="undefined"!==typeof n;if(!u)n=h.position;else if(!h.seekable)throw new E(z.Ia);var y=h.g.read(h,p,l,m,n);u||(h.position+=y);var A=y;if(0>A){var B=-1;break a}a+=A;if(A<g)break}B=a}return B}catch(t){return"undefined"!==typeof FS&&t instanceof E||Ha(t),-t.M}},___syscall146:function(a,
b){xd=b;try{var c=yd(),d=M();a:{var f=M();for(b=a=0;b<f;b++){var g=hd(c,La,v[d+8*b>>2],v[d+(8*b+4)>>2],void 0);if(0>g){var h=-1;break a}a+=g}h=a}return h}catch(l){return"undefined"!==typeof FS&&l instanceof E||Ha(l),-l.M}},___syscall221:function(a,b){xd=b;try{var c=yd();switch(M()){case 0:var d=M();return 0>d?-z.o:dd(c.path,c.flags,0,d).fd;case 1:case 2:return 0;case 3:return c.flags;case 4:return d=M(),c.flags|=d,0;case 12:case 12:return d=M(),Ua[d+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;
case 16:case 8:return-z.o;case 9:return fc(z.o),-1;default:return-z.o}}catch(f){return"undefined"!==typeof FS&&f instanceof E||Ha(f),-f.M}},___syscall5:function(a,b){xd=b;try{var c=w(M()),d=M(),f=M();return dd(c,d,f).fd}catch(g){return"undefined"!==typeof FS&&g instanceof E||Ha(g),-g.M}},___syscall54:function(a,b){xd=b;try{var c=yd(),d=M();switch(d){case 21509:case 21505:return c.tty?0:-z.Z;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return c.tty?0:-z.Z;case 21519:if(!c.tty)return-z.Z;
var f=M();return v[f>>2]=0;case 21520:return c.tty?-z.o:-z.Z;case 21531:a=f=M();if(!c.g.kd)throw new E(z.Z);return c.g.kd(c,d,a);case 21523:return c.tty?0:-z.Z;case 21524:return c.tty?0:-z.Z;default:Ha("bad ioctl syscall "+d)}}catch(g){return"undefined"!==typeof FS&&g instanceof E||Ha(g),-g.M}},___syscall6:function(a,b){xd=b;try{var c=yd();fd(c);return 0}catch(d){return"undefined"!==typeof FS&&d instanceof E||Ha(d),-d.M}},___syscall91:function(a,b){xd=b;try{var c=M(),d=M(),f=wd[c];if(!f)return 0;
if(d===f.mg){var g=Ec[f.fd],h=f.flags,l=new Uint8Array(r.subarray(c,c+d));g&&g.g.Wa&&g.g.Wa(g,l,0,d,h);wd[c]=null;f.Mc&&Oe(f.ng)}return 0}catch(m){return"undefined"!==typeof FS&&m instanceof E||Ha(m),-m.M}},___unlock:function(){},__addDays:Yg,__arraySum:Vg,__embind_finalize_value_array:function(a){var b=zd[a];delete zd[a];var c=b.elements,d=c.length,f=c.map(function(a){return a.sb}).concat(c.map(function(a){return a.Mb})),g=b.Ea,h=b.G;Kd([a],f,function(a){c.forEach(function(b,c){var f=a[c],g=b.la,
h=b.rb,l=a[c+d],m=b.Lb,n=b.Nb;b.read=function(a){return f.fromWireType(g(h,a))};b.write=function(a,b){var c=[];m(n,a,l.toWireType(c,b));Ad(c)}});return[{name:b.name,fromWireType:function(a){for(var b=Array(d),f=0;f<d;++f)b[f]=c[f].read(a);h(a);return b},toWireType:function(a,f){if(d!==f.length)throw new TypeError("Incorrect number of tuple elements for "+b.name+": expected="+d+", actual="+f.length);for(var l=g(),m=0;m<d;++m)c[m].write(l,f[m]);null!==a&&a.push(h,l);return l},argPackAdvance:8,readValueFromPointer:Bd,
B:h}]})},__embind_finalize_value_object:function(a){var b=Nd[a];delete Nd[a];var c=b.Ea,d=b.G,f=b.ic,g=f.map(function(a){return a.sb}).concat(f.map(function(a){return a.Mb}));Kd([a],g,function(a){var g={};f.forEach(function(b,c){var d=a[c],h=b.la,l=b.rb,m=a[c+f.length],n=b.Lb,t=b.Nb;g[b.Yc]={read:function(a){return d.fromWireType(h(l,a))},write:function(a,b){var c=[];n(t,a,m.toWireType(c,b));Ad(c)}}});return[{name:b.name,fromWireType:function(a){var b={},c;for(c in g)b[c]=g[c].read(a);d(a);return b},
toWireType:function(a,b){for(var f in g)if(!(f in b))throw new TypeError("Missing field");var h=c();for(f in g)g[f].write(h,b[f]);null!==a&&a.push(d,h);return h},argPackAdvance:8,readValueFromPointer:Bd,B:d}]})},__embind_register_bool:function(a,b,c,d,f){var g=Od(c);b=S(b);Ld(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?d:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var d=La;else if(2===c)d=Ua;else if(4===c)d=v;else throw new TypeError("Unknown boolean type size: "+
b);return this.fromWireType(d[a>>g])},B:null})},__embind_register_class:function(a,b,c,d,f,g,h,l,m,n,p,u,y){p=S(p);g=Ke(f,g);l&&(l=Ke(h,l));n&&(n=Ke(m,n));y=Ke(u,y);var A=Fd(p);me(A,function(){Pe("Cannot construct "+p+" due to unbound types",[d])});Kd([a,b,c],d?[d]:[],function(b){b=b[0];if(d){var c=b.m;var f=c.wa}else f=Zd.prototype;b=Gd(A,function(){if(Object.getPrototypeOf(this)!==h)throw new Xd("Use 'new' to construct "+p);if(void 0===m.cc)throw new Xd(p+" has no accessible constructor");var a=
m.cc[arguments.length];if(void 0===a)throw new Xd("Tried to invoke ctor of "+p+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(m.cc).toString()+") parameters instead!");return a.apply(this,arguments)});var h=Object.create(f,{constructor:{value:b}});b.prototype=h;var m=new ne(p,b,h,y,c,g,l,n);c=new Ie(p,m,!0,!1,!1);f=new Ie(p+"*",m,!1,!1,!1);var u=new Ie(p+" const*",m,!1,!0,!1);ke[a]={pointerType:f,Uc:u};Je(A,b);return[c,f,u]})},__embind_register_class_class_function:function(a,
b,c,d,f,g,h){var l=Se(c,d);b=S(b);g=Ke(f,g);Kd([],[a],function(a){function d(){Pe("Cannot call "+f+" due to unbound types",l)}a=a[0];var f=a.name+"."+b,m=a.m.constructor;void 0===m[b]?(d.ib=c-1,m[b]=d):(le(m,b,f),m[b].v[c-1]=d);Kd([],l,function(a){a=[a[0],null].concat(a.slice(1));a=Re(f,a,null,g,h);void 0===m[b].v?(a.ib=c-1,m[b]=a):m[b].v[c-1]=a;return[]});return[]})},__embind_register_emval:function(a,b){b=S(b);Ld(a,{name:b,fromWireType:function(a){var b=Ue[a].value;Ve(a);return b},toWireType:function(a,
b){return se(b)},argPackAdvance:8,readValueFromPointer:Bd,B:null})},__embind_register_enum:function(a,b,c,d){function f(){}c=Od(c);b=S(b);f.values={};Ld(a,{name:b,constructor:f,fromWireType:function(a){return this.constructor.values[a]},toWireType:function(a,b){return b.value},argPackAdvance:8,readValueFromPointer:Ze(b,c,d),B:null});me(b,f)},__embind_register_enum_value:function(a,b,c){var d=$e(a,"enum");b=S(b);a=d.constructor;d=Object.create(d.constructor.prototype,{value:{value:c},constructor:{value:Gd(d.name+
"_"+b,function(){})}});a.values[c]=d;a[b]=d},__embind_register_float:function(a,b,c){c=Od(c);b=S(b);Ld(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+qe(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:af(b,c),B:null})},__embind_register_integer:function(a,b,c,d,f){function g(a){return a}b=S(b);-1===f&&(f=4294967295);var h=Od(c);if(0===d){var l=32-8*c;g=function(a){return a<<
l>>>l}}var m=-1!=b.indexOf("unsigned");Ld(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+qe(c)+'" to '+this.name);if(c<d||c>f)throw new TypeError('Passing a number "'+qe(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return m?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:bf(b,h,0!==d),B:null})},__embind_register_memory_view:function(a,b,c){function d(a){a>>=
2;var b=ba;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=S(c);Ld(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{gd:!0})},__embind_register_std_string:function(a,b){b=S(b);Ld(a,{name:b,fromWireType:function(a){for(var b=ba[a>>2],c=Array(b),g=0;g<b;++g)c[g]=String.fromCharCode(r[a+4+g]);Oe(a);return c.join("")},toWireType:function(a,b){function c(a,b){return a[b]}function d(a,b){return a.charCodeAt(b)}
b instanceof ArrayBuffer&&(b=new Uint8Array(b));var h;b instanceof Uint8Array?h=c:b instanceof Uint8ClampedArray?h=c:b instanceof Int8Array?h=c:"string"===typeof b?h=d:T("Cannot pass non-string to std::string");var l=b.length,m=Ka(4+l);ba[m>>2]=l;for(var n=0;n<l;++n){var p=h(b,n);255<p&&(Oe(m),T("String has UTF-16 code units that do not fit in 8 bits"));r[m+4+n]=p}null!==a&&a.push(Oe,m);return m},argPackAdvance:8,readValueFromPointer:Bd,B:function(a){Oe(a)}})},__embind_register_std_wstring:function(a,
b,c){c=S(c);if(2===b){var d=function(){return Va};var f=1}else 4===b&&(d=function(){return ba},f=2);Ld(a,{name:c,fromWireType:function(a){for(var b=d(),c=ba[a>>2],g=Array(c),n=a+4>>f,p=0;p<c;++p)g[p]=String.fromCharCode(b[n+p]);Oe(a);return g.join("")},toWireType:function(a,c){var g=d(),h=c.length,n=Ka(4+h*b);ba[n>>2]=h;for(var p=n+4>>f,u=0;u<h;++u)g[p+u]=c.charCodeAt(u);null!==a&&a.push(Oe,n);return n},argPackAdvance:8,readValueFromPointer:Bd,B:function(a){Oe(a)}})},__embind_register_value_array:function(a,
b,c,d,f,g){zd[a]={name:S(b),Ea:Ke(c,d),G:Ke(f,g),elements:[]}},__embind_register_value_array_element:function(a,b,c,d,f,g,h,l,m){zd[a].elements.push({sb:b,la:Ke(c,d),rb:f,Mb:g,Lb:Ke(h,l),Nb:m})},__embind_register_value_object:function(a,b,c,d,f,g){Nd[a]={name:S(b),Ea:Ke(c,d),G:Ke(f,g),ic:[]}},__embind_register_value_object_field:function(a,b,c,d,f,g,h,l,m,n){Nd[a].ic.push({Yc:S(b),sb:c,la:Ke(d,f),rb:g,Mb:h,Lb:Ke(l,m),Nb:n})},__embind_register_void:function(a,b){b=S(b);Ld(a,{nd:!0,name:b,argPackAdvance:0,
fromWireType:function(){},toWireType:function(){}})},__emval_addMethodCaller:kf,__emval_allocateDestructors:ef,__emval_as:function(a,b,c){a=cf(a);b=$e(b,"emval::as");var d=[],f=se(d);v[c>>2]=f;return b.toWireType(d,a)},__emval_call:function(a,b,c,d){a=cf(a);c=df(b,c);for(var f=Array(b),g=0;g<b;++g){var h=c[g];f[g]=h.readValueFromPointer(d);d+=h.argPackAdvance}a=a.apply(void 0,f);return se(a)},__emval_call_method:function(a,b,c,d,f){a=hf[a];b=cf(b);c=gf(c);return a(b,c,ef(d),f)},__emval_decref:Ve,
__emval_get_global:function(a){if(0===a)return se(jf());a=gf(a);return se(jf()[a])},__emval_get_method_caller:function(a,b){b=df(a,b);for(var c=b[0],d=c.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[c],h="",l=0;l<a-1;++l)h+=(0!==l?", ":"")+"arg"+l,f.push("argType"+l),g.push(b[1+l]);d="return function "+Fd("methodCaller_"+d)+"(handle, name, destructors, args) {\n";var m=0;for(l=0;l<a-1;++l)d+=" var arg"+l+" = argType"+l+".readValueFromPointer(args"+(m?"+"+m:
"")+");\n",m+=b[l+1].argPackAdvance;d+=" var rv = handle[name]("+h+");\n";for(l=0;l<a-1;++l)b[l+1].deleteObject&&(d+=" argType"+l+".deleteObject(arg"+l+");\n");c.nd||(d+=" return retType.toWireType(destructors, rv);\n");f.push(d+"};\n");a=Qe(Function,f).apply(null,g);return kf(a)},__emval_get_module_property:function(a){a=gf(a);return se(e[a])},__emval_get_property:function(a,b){a=cf(a);b=cf(b);return se(a[b])},__emval_incref:function(a){4<a&&(Ue[a].Hb+=1)},__emval_lookupTypes:df,__emval_new:function(a,
b,c,d){a=cf(a);var f=mf[b];f||(f=lf(b),mf[b]=f);return f(a,c,d)},__emval_new_array:function(){return se([])},__emval_new_cstring:function(a){return se(gf(a))},__emval_new_object:function(){return se({})},__emval_register:se,__emval_run_destructors:function(a){Ad(Ue[a].value);Ve(a)},__emval_set_property:function(a,b,c){a=cf(a);b=cf(b);c=cf(c);a[b]=c},__emval_take_value:function(a,b){a=$e(a,"_emval_take_value");a=a.readValueFromPointer(b);return se(a)},__isLeapYear:Ug,_abort:function(){e.abort()},_clock_gettime:function(a,
b){if(0===a)a=Date.now();else if(1===a&&of())a=nf();else return fc(z.o),-1;v[b>>2]=a/1E3|0;v[b+4>>2]=a%1E3*1E6|0;return 0},_embind_repr:qe,_emscripten_asm_const_i:function(a){return Eb[a]()},_emscripten_asm_const_iii:function(a,b,c){return Eb[a](b,c)},_emscripten_get_canvas_size:function(a,b,c){var d=e.canvas;v[a>>2]=d.width;v[b>>2]=d.height;v[c>>2]=Ff?1:0},_emscripten_get_now:nf,_emscripten_get_now_is_monotonic:of,_emscripten_memcpy_big:function(a,b,c){r.set(r.subarray(b,b+c),a);return a},_emscripten_set_main_loop:yf,
_emscripten_set_main_loop_timing:pf,_emscripten_webgl_create_context:function(a,b){var c={};c.alpha=!!v[b>>2];c.depth=!!v[b+4>>2];c.stencil=!!v[b+8>>2];c.antialias=!!v[b+12>>2];c.premultipliedAlpha=!!v[b+16>>2];c.preserveDrawingBuffer=!!v[b+20>>2];c.preferLowPowerToHighPerformance=!!v[b+24>>2];c.failIfMajorPerformanceCaveat=!!v[b+28>>2];c.majorVersion=v[b+32>>2];c.minorVersion=v[b+36>>2];c.explicitSwapControl=v[b+44>>2];a=(a=w(a))&&"#canvas"!==a||!e.canvas?sg[a]||Fg(a):e.canvas.id?sg[e.canvas.id]||
Fg(e.canvas.id):e.canvas;return a?c.explicitSwapControl?(console.error("emscripten_webgl_create_context failed: explicitSwapControl is not supported, please rebuild with -s OFFSCREENCANVAS_SUPPORT=1 to enable targeting the experimental OffscreenCanvas specification!"),0):Pf(a,c):0},_emscripten_webgl_destroy_context:function(a){rg===Qf[a]&&(rg=null);if("object"===typeof JSEvents)for(var b=Qf[a].GLctx.canvas,c=0;c<Gg.length;++c)if(Gg[c].target==b){var d=c--,f=Gg[d];f.target.removeEventListener(f.fg,
f.eg,f.vg);Gg.splice(d,1)}Qf[a]&&Qf[a].GLctx.canvas&&(Qf[a].GLctx.canvas.Ja=void 0);Qf[a]=null},_emscripten_webgl_init_context_attributes:function(a){v[a>>2]=1;v[a+4>>2]=1;v[a+8>>2]=0;v[a+12>>2]=1;v[a+16>>2]=1;v[a+20>>2]=0;v[a+24>>2]=0;v[a+28>>2]=0;v[a+32>>2]=1;v[a+36>>2]=0;v[a+40>>2]=1;v[a+44>>2]=0},_emscripten_webgl_make_context_current:function(a){return Rf(a)?0:-5},_getenv:Kg,_glActiveTexture:function(a){GLctx.activeTexture(a)},_glAttachShader:function(a,b){GLctx.attachShader(mg[a],qg[b])},_glBindBuffer:function(a,
b){var c=b?lg[b]:null;35051==a?GLctx.ag=b:35052==a&&(GLctx.Wc=b);GLctx.bindBuffer(a,c)},_glBindFramebuffer:function(a,b){GLctx.bindFramebuffer(a,b?ng[b]:null)},_glBindRenderbuffer:function(a,b){GLctx.bindRenderbuffer(a,b?og[b]:null)},_glBindTexture:function(a,b){GLctx.bindTexture(a,b?pg[b]:null)},_glBlendFunc:function(a,b){GLctx.blendFunc(a,b)},_glBlendFuncSeparate:function(a,b,c,d){GLctx.blendFuncSeparate(a,b,c,d)},_glBufferData:function(a,b,c,d){c?rg.P?GLctx.bufferData(a,r,d,c,b):GLctx.bufferData(a,
r.subarray(c,c+b),d):GLctx.bufferData(a,b,d)},_glBufferSubData:function(a,b,c,d){rg.P?GLctx.bufferSubData(a,b,r,d,c):GLctx.bufferSubData(a,b,r.subarray(d,d+c))},_glClear:function(a){GLctx.clear(a)},_glClearColor:function(a,b,c,d){GLctx.clearColor(a,b,c,d)},_glClearStencil:function(a){GLctx.clearStencil(a)},_glColorMask:function(a,b,c,d){GLctx.colorMask(!!a,!!b,!!c,!!d)},_glCompileShader:function(a){GLctx.compileShader(qg[a])},_glCreateProgram:function(){var a=xg(mg),b=GLctx.createProgram();b.name=
a;mg[a]=b;return a},_glCreateShader:function(a){var b=xg(qg);qg[b]=GLctx.createShader(a);return b},_glDeleteBuffers:function(a,b){for(var c=0;c<a;c++){var d=v[b+4*c>>2],f=lg[d];f&&(GLctx.deleteBuffer(f),f.name=0,lg[d]=null,d==Cg&&(Cg=0),d==Dg&&(Dg=0))}},_glDeleteFramebuffers:function(a,b){for(var c=0;c<a;++c){var d=v[b+4*c>>2],f=ng[d];f&&(GLctx.deleteFramebuffer(f),f.name=0,ng[d]=null)}},_glDeleteProgram:function(a){if(a){var b=mg[a];b?(GLctx.deleteProgram(b),b.name=0,mg[a]=null,tg[a]=null):Y(1281)}},
_glDeleteRenderbuffers:function(a,b){for(var c=0;c<a;c++){var d=v[b+4*c>>2],f=og[d];f&&(GLctx.deleteRenderbuffer(f),f.name=0,og[d]=null)}},_glDeleteShader:function(a){if(a){var b=qg[a];b?(GLctx.deleteShader(b),qg[a]=null):Y(1281)}},_glDeleteTextures:function(a,b){for(var c=0;c<a;c++){var d=v[b+4*c>>2],f=pg[d];f&&(GLctx.deleteTexture(f),f.name=0,pg[d]=null)}},_glDepthFunc:function(a){GLctx.depthFunc(a)},_glDepthMask:function(a){GLctx.depthMask(!!a)},_glDepthRangef:function(a,b){GLctx.depthRange(a,
b)},_glDisable:function(a){GLctx.disable(a)},_glDisableVertexAttribArray:function(a){GLctx.disableVertexAttribArray(a)},_glDrawArrays:_glDrawArrays,_glDrawArraysInstanced:function(a,b,c,d){GLctx.drawArraysInstanced(a,b,c,d)},_glDrawBuffers:function(a,b){for(var c=vg[a],d=0;d<a;d++)c[d]=v[b+4*d>>2];GLctx.drawBuffers(c)},_glDrawElements:_glDrawElements,_glDrawElementsInstanced:function(a,b,c,d,f){GLctx.drawElementsInstanced(a,b,c,d,f)},_glEnable:function(a){GLctx.enable(a)},_glEnableVertexAttribArray:function(a){GLctx.enableVertexAttribArray(a)},
_glFinish:function(){GLctx.finish()},_glFramebufferRenderbuffer:function(a,b,c,d){GLctx.framebufferRenderbuffer(a,b,c,og[d])},_glFramebufferTexture2D:function(a,b,c,d,f){GLctx.framebufferTexture2D(a,b,c,pg[d],f)},_glFrontFace:function(a){GLctx.frontFace(a)},_glGenBuffers:function(a,b){for(var c=0;c<a;c++){var d=GLctx.createBuffer();if(!d){for(Y(1282);c<a;)v[b+4*c++>>2]=0;break}var f=xg(lg);d.name=f;lg[f]=d;v[b+4*c>>2]=f}},_glGenFramebuffers:function(a,b){for(var c=0;c<a;++c){var d=GLctx.createFramebuffer();
if(!d){for(Y(1282);c<a;)v[b+4*c++>>2]=0;break}var f=xg(ng);d.name=f;ng[f]=d;v[b+4*c>>2]=f}},_glGenRenderbuffers:function(a,b){for(var c=0;c<a;c++){var d=GLctx.createRenderbuffer();if(!d){for(Y(1282);c<a;)v[b+4*c++>>2]=0;break}var f=xg(og);d.name=f;og[f]=d;v[b+4*c>>2]=f}},_glGenTextures:function(a,b){for(var c=0;c<a;c++){var d=GLctx.createTexture();if(!d){for(Y(1282);c<a;)v[b+4*c++>>2]=0;break}var f=xg(pg);d.name=f;pg[f]=d;v[b+4*c>>2]=f}},_glGenerateMipmap:function(a){GLctx.generateMipmap(a)},_glGetActiveAttrib:function(a,
b,c,d,f,g,h){a=mg[a];if(a=GLctx.getActiveAttrib(a,b))0<c&&h?(c=Na(a.name,r,h,c),d&&(v[d>>2]=c)):d&&(v[d>>2]=0),f&&(v[f>>2]=a.size),g&&(v[g>>2]=a.type)},_glGetActiveUniform:function(a,b,c,d,f,g,h){a=mg[a];if(a=GLctx.getActiveUniform(a,b))0<c&&h?(c=Na(a.name,r,h,c),d&&(v[d>>2]=c)):d&&(v[d>>2]=0),f&&(v[f>>2]=a.size),g&&(v[g>>2]=a.type)},_glGetAttribLocation:function(a,b){a=mg[a];b=w(b);return GLctx.getAttribLocation(a,b)},_glGetBooleanv:function(a,b){Lg(a,b,"Boolean")},_glGetError:function(){if(kg){var a=
kg;kg=0;return a}return GLctx.getError()},_glGetFloatv:function(a,b){Lg(a,b,"Float")},_glGetIntegerv:function(a,b){Lg(a,b,"Integer")},_glGetProgramiv:function(a,b,c){if(c)if(a>=jg)Y(1281);else{var d=tg[a];if(d)if(35716==b)a=GLctx.getProgramInfoLog(mg[a]),null===a&&(a="(unknown error)"),v[c>>2]=a.length+1;else if(35719==b)v[c>>2]=d.Bb;else if(35722==b){if(-1==d.ya){a=mg[a];var f=GLctx.getProgramParameter(a,GLctx.ACTIVE_ATTRIBUTES);for(b=d.ya=0;b<f;++b)d.ya=Math.max(d.ya,GLctx.getActiveAttrib(a,b).name.length+
1)}v[c>>2]=d.ya}else if(35381==b){if(-1==d.za)for(a=mg[a],f=GLctx.getProgramParameter(a,GLctx.Wd),b=d.za=0;b<f;++b){var g=GLctx.ig(a,b);d.za=Math.max(d.za,g.length+1)}v[c>>2]=d.za}else v[c>>2]=GLctx.getProgramParameter(mg[a],b);else Y(1282)}else Y(1281)},_glGetShaderPrecisionFormat:function(a,b,c,d){a=GLctx.getShaderPrecisionFormat(a,b);v[c>>2]=a.rangeMin;v[c+4>>2]=a.rangeMax;v[d>>2]=a.precision},_glGetString:function(a){if(ug[a])return ug[a];switch(a){case 7936:case 7937:case 37445:case 37446:var b=
Ja(tc(GLctx.getParameter(a)),0);break;case 7938:b=GLctx.getParameter(GLctx.VERSION);b=2<=GLctx.canvas.Ja.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=Ja(tc(b),0);break;case 7939:b=GLctx.getSupportedExtensions();for(var c=[],d=0;d<b.length;++d)c.push(b[d]),c.push("GL_"+b[d]);b=Ja(tc(c.join(" ")),0);break;case 35724:b=GLctx.getParameter(GLctx.SHADING_LANGUAGE_VERSION);c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==c&&(3==c[1].length&&(c[1]+="0"),b="OpenGL ES GLSL ES "+
c[1]+" ("+b+")");b=Ja(tc(b),0);break;default:return Y(1280),0}return ug[a]=b},_glGetUniformLocation:function(a,b){b=w(b);var c=0;if(-1!==b.indexOf("]",b.length-1)){var d=b.lastIndexOf("["),f=b.slice(d+1,-1);if(0<f.length&&(c=parseInt(f),0>c))return-1;b=b.slice(0,d)}a=tg[a];return a?(b=a.Ec[b])&&c<b[0]?b[1]+c:-1:-1},_glIsEnabled:function(a){return GLctx.isEnabled(a)},_glLinkProgram:function(a){GLctx.linkProgram(mg[a]);tg[a]=null;var b=mg[a];tg[a]={Ec:{},Bb:0,ya:-1,za:-1};a=tg[a];for(var c=a.Ec,d=GLctx.getProgramParameter(b,
GLctx.ACTIVE_UNIFORMS),f=0;f<d;++f){var g=GLctx.getActiveUniform(b,f),h=g.name;a.Bb=Math.max(a.Bb,h.length+1);-1!==h.indexOf("]",h.length-1)&&(h=h.slice(0,h.lastIndexOf("[")));var l=GLctx.getUniformLocation(b,h);if(null!=l){var m=xg(U);c[h]=[g.size,m];U[m]=l;for(var n=1;n<g.size;++n)l=GLctx.getUniformLocation(b,h+"["+n+"]"),m=xg(U),U[m]=l}}},_glPixelStorei:function(a,b){3333==a||3317==a&&(wg=b);GLctx.pixelStorei(a,b)},_glPolygonOffset:function(a,b){GLctx.polygonOffset(a,b)},_glRenderbufferStorage:function(a,
b,c,d){GLctx.renderbufferStorage(a,b,c,d)},_glScissor:function(a,b,c,d){GLctx.scissor(a,b,c,d)},_glShaderSource:function(a,b,c,d){for(var f="",g=0;g<b;++g){if(d){var h=v[d+4*g>>2];h=0>h?w(v[c+4*g>>2]):w(v[c+4*g>>2],h)}else h=w(v[c+4*g>>2]);f+=h}GLctx.shaderSource(qg[a],f)},_glStencilFunc:function(a,b,c){GLctx.stencilFunc(a,b,c)},_glStencilFuncSeparate:function(a,b,c,d){GLctx.stencilFuncSeparate(a,b,c,d)},_glStencilMask:function(a){GLctx.stencilMask(a)},_glStencilMaskSeparate:function(a,b){GLctx.stencilMaskSeparate(a,
b)},_glStencilOp:function(a,b,c){GLctx.stencilOp(a,b,c)},_glStencilOpSeparate:function(a,b,c,d){GLctx.stencilOpSeparate(a,b,c,d)},_glTexImage2D:function(a,b,c,d,f,g,h,l,m){if(rg.P)GLctx.Wc?GLctx.texImage2D(a,b,c,d,f,g,h,l,m):0!=m?GLctx.texImage2D(a,b,c,d,f,g,h,l,Og(l),m>>Pg(l)):GLctx.texImage2D(a,b,c,d,f,g,h,l,null);else{var n=null;m&&(n=Ng(l,h,d,f,m));GLctx.texImage2D(a,b,c,d,f,g,h,l,n)}},_glTexParameterf:function(a,b,c){GLctx.texParameterf(a,b,c)},_glTexParameteri:function(a,b,c){GLctx.texParameteri(a,
b,c)},_glUniform1f:function(a,b){GLctx.uniform1f(U[a],b)},_glUniform1fv:function(a,b,c){if(rg.P)GLctx.uniform1fv(U[a],q,c>>2,b);else{if(256>=b){var d=zg[b-1];for(var f=0;f<b;++f)d[f]=q[c+4*f>>2]}else d=q.subarray(c>>2,c+4*b>>2);GLctx.uniform1fv(U[a],d)}},_glUniform1i:function(a,b){GLctx.uniform1i(U[a],b)},_glUniform2f:function(a,b,c){GLctx.uniform2f(U[a],b,c)},_glUniform2fv:function(a,b,c){if(rg.P)GLctx.uniform2fv(U[a],q,c>>2,2*b);else{if(256>=2*b){var d=zg[2*b-1];for(var f=0;f<2*b;f+=2)d[f]=q[c+
4*f>>2],d[f+1]=q[c+(4*f+4)>>2]}else d=q.subarray(c>>2,c+8*b>>2);GLctx.uniform2fv(U[a],d)}},_glUniform2i:function(a,b,c){GLctx.uniform2i(U[a],b,c)},_glUniform3f:function(a,b,c,d){GLctx.uniform3f(U[a],b,c,d)},_glUniform3fv:function(a,b,c){if(rg.P)GLctx.uniform3fv(U[a],q,c>>2,3*b);else{if(256>=3*b){var d=zg[3*b-1];for(var f=0;f<3*b;f+=3)d[f]=q[c+4*f>>2],d[f+1]=q[c+(4*f+4)>>2],d[f+2]=q[c+(4*f+8)>>2]}else d=q.subarray(c>>2,c+12*b>>2);GLctx.uniform3fv(U[a],d)}},_glUniform4f:function(a,b,c,d,f){GLctx.uniform4f(U[a],
b,c,d,f)},_glUniform4fv:function(a,b,c){if(rg.P)GLctx.uniform4fv(U[a],q,c>>2,4*b);else{if(256>=4*b){var d=zg[4*b-1];for(var f=0;f<4*b;f+=4)d[f]=q[c+4*f>>2],d[f+1]=q[c+(4*f+4)>>2],d[f+2]=q[c+(4*f+8)>>2],d[f+3]=q[c+(4*f+12)>>2]}else d=q.subarray(c>>2,c+16*b>>2);GLctx.uniform4fv(U[a],d)}},_glUniformMatrix3fv:function(a,b,c,d){if(rg.P)GLctx.uniformMatrix3fv(U[a],!!c,q,d>>2,9*b);else{if(256>=9*b){var f=zg[9*b-1];for(var g=0;g<9*b;g+=9)f[g]=q[d+4*g>>2],f[g+1]=q[d+(4*g+4)>>2],f[g+2]=q[d+(4*g+8)>>2],f[g+
3]=q[d+(4*g+12)>>2],f[g+4]=q[d+(4*g+16)>>2],f[g+5]=q[d+(4*g+20)>>2],f[g+6]=q[d+(4*g+24)>>2],f[g+7]=q[d+(4*g+28)>>2],f[g+8]=q[d+(4*g+32)>>2]}else f=q.subarray(d>>2,d+36*b>>2);GLctx.uniformMatrix3fv(U[a],!!c,f)}},_glUniformMatrix4fv:function(a,b,c,d){if(rg.P)GLctx.uniformMatrix4fv(U[a],!!c,q,d>>2,16*b);else{if(256>=16*b){var f=zg[16*b-1];for(var g=0;g<16*b;g+=16)f[g]=q[d+4*g>>2],f[g+1]=q[d+(4*g+4)>>2],f[g+2]=q[d+(4*g+8)>>2],f[g+3]=q[d+(4*g+12)>>2],f[g+4]=q[d+(4*g+16)>>2],f[g+5]=q[d+(4*g+20)>>2],f[g+
6]=q[d+(4*g+24)>>2],f[g+7]=q[d+(4*g+28)>>2],f[g+8]=q[d+(4*g+32)>>2],f[g+9]=q[d+(4*g+36)>>2],f[g+10]=q[d+(4*g+40)>>2],f[g+11]=q[d+(4*g+44)>>2],f[g+12]=q[d+(4*g+48)>>2],f[g+13]=q[d+(4*g+52)>>2],f[g+14]=q[d+(4*g+56)>>2],f[g+15]=q[d+(4*g+60)>>2]}else f=q.subarray(d>>2,d+64*b>>2);GLctx.uniformMatrix4fv(U[a],!!c,f)}},_glUseProgram:function(a){GLctx.useProgram(a?mg[a]:null)},_glVertexAttrib1f:function(a,b){GLctx.vertexAttrib1f(a,b)},_glVertexAttrib4f:function(a,b,c,d,f){GLctx.vertexAttrib4f(a,b,c,d,f)},
_glVertexAttribDivisor:function(a,b){GLctx.vertexAttribDivisor(a,b)},_glVertexAttribPointer:function(a,b,c,d,f,g){GLctx.vertexAttribPointer(a,b,c,!!d,f,g)},_glViewport:function(a,b,c,d){GLctx.viewport(a,b,c,d)},_glppAsyncUploadImage:function(a,b,c,d,f,g,h,l){ud();a=r.subarray(a,a+b);b=null;c=["image/jpeg","image/png","image/gif","image/bmp","image/svg+xml"][c];var m=[GLctx.LUMINANCE,GLctx.LUMINANCE_ALPHA,GLctx.RGB,GLctx.RGBA][d-1];void 0===m&&(m=GLctx.RGBA);if(Jf)try{b=new Blob([a],{type:c}),b.size!==
a.length&&(b=new Blob([(new Uint8Array(a)).buffer],{type:c}))}catch(y){}b||(c=new Kf,c.append((new Uint8Array(a)).buffer),b=c.getBlob());g=Ea(g,"iiiii");h=Ea(h,"viii");l=Ea(l,"vii");var n=Lf.createObjectURL(b),p=document.createElement("img"),u=e.$$facade;p.onload=function(){if(u===e.$$facade){var a=1;g&&(a=g(f,p.width,p.height,d));var b=0;if(a)try{GLctx.texImage2D(GLctx.TEXTURE_2D,0,m,m,GLctx.UNSIGNED_BYTE,p),b=1}catch(B){}h&&h(0,f,b)}else h&&h(1,f,0);Lf.revokeObjectURL(n)};p.onerror=function(){u===
e.$$facade?l&&l(0,f):l&&l(1,f);Lf.revokeObjectURL(n)};p.src=n},_llvm_ceil_f64:pb,_llvm_fabs_f32:ob,_llvm_fabs_f64:ob,_llvm_trap:function(){Ha("trap!")},_nanosleep:function(a,b){var c=v[a>>2];a=v[a+4>>2];0!==b&&(v[b>>2]=0,v[b+4>>2]=0);return Qg(1E6*c+a/1E3)},_networkClose:function(){return e.Ha?Sg.close.apply(Sg,arguments):Tg.close.apply(Tg,arguments)},_networkCloseBeforeUnload:function(){window.addEventListener("beforeunload",function(){e.Ha?Sg.close():Tg.close()})},_networkConnect:function(a,b,c,
d){e.pc=0;self.bowser.chrome&&0>self.bowser.compareVersions([self.bowser.version,"68"])&&(e.Ha=!0);return e.Ha?Sg.connect.apply(Sg,arguments):Tg.connect.apply(Tg,arguments)},_networkSendData:function(a,b){return e.Ha?Sg.Kb.apply(Sg,arguments):Tg.Kb.apply(Tg,arguments)},_pthread_cond_wait:function(){return 0},_pthread_mutex_destroy:function(){},_strftime:Zg,_strftime_l:function(a,b,c,d){return Zg(a,b,c,d)},_usleep:Qg,constNoSmartPtrRawPointerToWireType:pe,count_emval_handles:We,craftEmvalAllocator:lf,
craftInvokerFunction:Re,createNamedFunction:Gd,downcastPointer:xe,embind__requireFunction:Ke,embind_init_charCodes:Vd,emscriptenWebGLComputeImageSize:Mg,emscriptenWebGLGet:Lg,emscriptenWebGLGetHeapForType:Og,emscriptenWebGLGetShiftForType:Pg,emscriptenWebGLGetTexPixelData:Ng,emval_get_global:jf,ensureOverloadTable:le,enumReadValueFromPointer:Ze,exposePublicSymbol:me,extendError:Hd,floatReadValueFromPointer:af,flushPendingDeletes:he,genericPointerToWireType:re,getBasestPointer:De,getInheritedInstance:Ee,
getInheritedInstanceCount:ye,getLiveInheritedInstances:Ae,getShiftFromSize:Od,getStringOrSymbol:gf,getTypeName:Me,get_first_emval:Xe,heap32VectorToArray:Se,init_ClassHandle:je,init_RegisteredPointer:He,init_embind:Ce,init_emval:Ye,integerReadValueFromPointer:bf,makeClassHandle:Fe,makeLegalFunctionName:Fd,new_:Qe,nonConstNoSmartPtrRawPointerToWireType:te,readLatin1String:S,registerType:Ld,replacePublicSymbol:Je,requireHandle:cf,requireRegisteredType:$e,runDestructor:ce,runDestructors:Ad,setDelayFunction:Be,
shallowCopyInternalPointer:$d,simpleReadValueFromPointer:Bd,throwBindingError:T,throwInstanceAlreadyDeleted:ae,throwInternalError:Jd,throwUnboundTypeError:Pe,upcastPointer:oe,whenDependentTypesAreResolved:Kd,DYNAMICTOP_PTR:xa,tempDoublePtr:ac,ABORT:Ga,STACKTOP:$a,STACK_MAX:ab,cttz_i8:ec};// EMSCRIPTEN_START_ASM
var Z=(/** @suppress {uselessCode} */ function(global,env,buffer) {
"almost asm";var a=global.Int8Array;var b=new a(buffer);var c=global.Int16Array;var d=new c(buffer);var e=global.Int32Array;var f=new e(buffer);var g=global.Uint8Array;var h=new g(buffer);var i=global.Uint16Array;var j=new i(buffer);var k=global.Uint32Array;var l=new k(buffer);var m=global.Float32Array;var n=new m(buffer);var o=global.Float64Array;var p=new o(buffer);var q=global.byteLength;var r=env.DYNAMICTOP_PTR|0;var s=env.tempDoublePtr|0;var t=env.ABORT|0;var u=env.STACKTOP|0;var v=env.STACK_MAX|0;var w=env.cttz_i8|0;var x=0;var y=0;var z=0;var A=0;var B=global.NaN,C=global.Infinity;var D=0,E=0,F=0,G=0,H=0.0;var I=0;var J=global.Math.floor;var K=global.Math.abs;var L=global.Math.sqrt;var M=global.Math.pow;var N=global.Math.cos;var O=global.Math.sin;var P=global.Math.tan;var Q=global.Math.acos;var R=global.Math.asin;var S=global.Math.atan;var T=global.Math.atan2;var U=global.Math.exp;var V=global.Math.log;var W=global.Math.ceil;var X=global.Math.imul;var Y=global.Math.min;var Z=global.Math.max;var _=global.Math.clz32;var $=env.abort;var aa=env.assert;var ba=env.enlargeMemory;var ca=env.getTotalMemory;var da=env.abortOnCannotGrowMemory;var ea=env.invoke_di;var fa=env.invoke_dii;var ga=env.invoke_i;var ha=env.invoke_ii;var ia=env.invoke_iid;var ja=env.invoke_iii;var ka=env.invoke_iiii;var la=env.invoke_iiiii;var ma=env.invoke_iiiiid;var na=env.invoke_iiiiidi;var oa=env.invoke_iiiiii;var pa=env.invoke_iiiiiid;var qa=env.invoke_iiiiiidi;var ra=env.invoke_iiiiiii;var sa=env.invoke_iiiiiiii;var ta=env.invoke_iiiiiiiii;var ua=env.invoke_iiiiiiiiiiiiiiid;var va=env.invoke_iiiiiiiiiiiiiiiid;var wa=env.invoke_v;var xa=env.invoke_vd;var ya=env.invoke_vdd;var za=env.invoke_vddi;var Aa=env.invoke_vdi;var Ba=env.invoke_vi;var Ca=env.invoke_vid;var Da=env.invoke_vidd;var Ea=env.invoke_viddd;var Fa=env.invoke_vidddiii;var Ga=env.invoke_viddi;var Ha=env.invoke_vidi;var Ia=env.invoke_vidiii;var Ja=env.invoke_vii;var Ka=env.invoke_viid;var La=env.invoke_viidd;var Ma=env.invoke_viiddd;var Na=env.invoke_viiddi;var Oa=env.invoke_viidi;var Pa=env.invoke_viididididi;var Qa=env.invoke_viidii;var Ra=env.invoke_viidiii;var Sa=env.invoke_viii;var Ta=env.invoke_viiid;var Ua=env.invoke_viiidd;var Va=env.invoke_viiiddddi;var Wa=env.invoke_viiiddi;var Xa=env.invoke_viiidi;var Ya=env.invoke_viiididididi;var Za=env.invoke_viiidii;var _a=env.invoke_viiii;var $a=env.invoke_viiiid;var ab=env.invoke_viiiidddiiii;var bb=env.invoke_viiiidi;var cb=env.invoke_viiiidii;var db=env.invoke_viiiidiiii;var eb=env.invoke_viiiii;var fb=env.invoke_viiiiidd;var gb=env.invoke_viiiiiddd;var hb=env.invoke_viiiiiddi;var ib=env.invoke_viiiiidi;var jb=env.invoke_viiiiidii;var kb=env.invoke_viiiiidiii;var lb=env.invoke_viiiiidiiii;var mb=env.invoke_viiiiii;var nb=env.invoke_viiiiiidd;var ob=env.invoke_viiiiiiddd;var pb=env.invoke_viiiiiidiii;var qb=env.invoke_viiiiiii;var rb=env.invoke_viiiiiiii;var sb=env.invoke_viiiiiiiii;var tb=env.invoke_viiiiiiiiii;var ub=env.invoke_viiiiiiiiiii;var vb=env.invoke_viiiiiiiiiiii;var wb=env.invoke_viiiiiiiiiiiii;var xb=env.invoke_viiiiiiiiiiiiii;var yb=env.invoke_viiiiiiiiiiiiiii;var zb=env.invoke_viiiiiiiiiiiiiiii;var Ab=env.invoke_viiiiiiiiiiiiiiiii;var Bb=env.ClassHandle;var Cb=env.ClassHandle_clone;var Db=env.ClassHandle_delete;var Eb=env.ClassHandle_deleteLater;var Fb=env.ClassHandle_isAliasOf;var Gb=env.ClassHandle_isDeleted;var Hb=env.RegisteredClass;var Ib=env.RegisteredPointer;var Jb=env.RegisteredPointer_deleteObject;var Kb=env.RegisteredPointer_destructor;var Lb=env.RegisteredPointer_fromWireType;var Mb=env.RegisteredPointer_getPointee;var Nb=env._TC_MeshBuffer_allocate;var Ob=env._TC_MeshBuffer_allocateAndFill;var Pb=env._TC_MeshBuffer_clear;var Qb=env._TC_MeshBuffer_create;var Rb=env._TC_MeshBuffer_delete;var Sb=env._TC_MeshBuffer_getIndexData;var Tb=env._TC_MeshBuffer_getVertexData;var Ub=env._TC_MeshBuffer_indexSize;var Vb=env._TC_MeshBuffer_setGlIndexData;var Wb=env._TC_MeshBuffer_setGlIndexSubData;var Xb=env._TC_MeshBuffer_setGlVertexData;var Yb=env._TC_MeshBuffer_setGlVertexSubData;var Zb=env._TC_MeshBuffer_setVertexSubData;var _b=env._TC_MeshBuffer_vertexSize;var $b=env._TC_announceModelHook;var ac=env._TC_callAfter;var bc=env._TC_callAfterCleanup;var cc=env._TC_cappingIdleHook;var dc=env._TC_dataAccessAttachedHook;var ec=env._TC_genericHook;var fc=env._TC_genericJsonHook;var gc=env._TC_inclusionHook;var hc=env._TC_metaDataHook;var ic=env._TC_missingModelHook;var jc=env._TC_networkReceiveHook;var kc=env._TC_postDrawHook;var lc=env._TC_priorityMetaDataHook;var mc=env._TC_remapInclusionHook;var nc=env._TC_remapModelHook;var oc=env._TC_sendRpc;var pc=env._TC_sessionStartedHook;var qc=env._TC_setReady;var rc=env.__ZSt18uncaught_exceptionv;var sc=env.___assert_fail;var tc=env.___buildEnvironment;var uc=env.___cxa_pure_virtual;var vc=env.___lock;var wc=env.___map_file;var xc=env.___setErrNo;var yc=env.___syscall140;var zc=env.___syscall145;var Ac=env.___syscall146;var Bc=env.___syscall221;var Cc=env.___syscall5;var Dc=env.___syscall54;var Ec=env.___syscall6;var Fc=env.___syscall91;var Gc=env.___unlock;var Hc=env.__addDays;var Ic=env.__arraySum;var Jc=env.__embind_finalize_value_array;var Kc=env.__embind_finalize_value_object;var Lc=env.__embind_register_bool;var Mc=env.__embind_register_class;var Nc=env.__embind_register_class_class_function;var Oc=env.__embind_register_emval;var Pc=env.__embind_register_enum;var Qc=env.__embind_register_enum_value;var Rc=env.__embind_register_float;var Sc=env.__embind_register_integer;var Tc=env.__embind_register_memory_view;var Uc=env.__embind_register_std_string;var Vc=env.__embind_register_std_wstring;var Wc=env.__embind_register_value_array;var Xc=env.__embind_register_value_array_element;var Yc=env.__embind_register_value_object;var Zc=env.__embind_register_value_object_field;var _c=env.__embind_register_void;var $c=env.__emval_addMethodCaller;var ad=env.__emval_allocateDestructors;var bd=env.__emval_as;var cd=env.__emval_call;var dd=env.__emval_call_method;var ed=env.__emval_decref;var fd=env.__emval_get_global;var gd=env.__emval_get_method_caller;var hd=env.__emval_get_module_property;var id=env.__emval_get_property;var jd=env.__emval_incref;var kd=env.__emval_lookupTypes;var ld=env.__emval_new;var md=env.__emval_new_array;var nd=env.__emval_new_cstring;var od=env.__emval_new_object;var pd=env.__emval_register;var qd=env.__emval_run_destructors;var rd=env.__emval_set_property;var sd=env.__emval_take_value;var td=env.__isLeapYear;var ud=env._abort;var vd=env._clock_gettime;var wd=env._embind_repr;var xd=env._emscripten_asm_const_i;var yd=env._emscripten_asm_const_iii;var zd=env._emscripten_get_canvas_size;var Ad=env._emscripten_get_now;var Bd=env._emscripten_get_now_is_monotonic;var Cd=env._emscripten_memcpy_big;var Dd=env._emscripten_set_main_loop;var Ed=env._emscripten_set_main_loop_timing;var Fd=env._emscripten_webgl_create_context;var Gd=env._emscripten_webgl_destroy_context;var Hd=env._emscripten_webgl_init_context_attributes;var Id=env._emscripten_webgl_make_context_current;var Jd=env._getenv;var Kd=env._glActiveTexture;var Ld=env._glAttachShader;var Md=env._glBindBuffer;var Nd=env._glBindFramebuffer;var Od=env._glBindRenderbuffer;var Pd=env._glBindTexture;var Qd=env._glBlendFunc;var Rd=env._glBlendFuncSeparate;var Sd=env._glBufferData;var Td=env._glBufferSubData;var Ud=env._glClear;var Vd=env._glClearColor;var Wd=env._glClearStencil;var Xd=env._glColorMask;var Yd=env._glCompileShader;var Zd=env._glCreateProgram;var _d=env._glCreateShader;var $d=env._glDeleteBuffers;var ae=env._glDeleteFramebuffers;var be=env._glDeleteProgram;var ce=env._glDeleteRenderbuffers;var de=env._glDeleteShader;var ee=env._glDeleteTextures;var fe=env._glDepthFunc;var ge=env._glDepthMask;var he=env._glDepthRangef;var ie=env._glDisable;var je=env._glDisableVertexAttribArray;var ke=env._glDrawArrays;var le=env._glDrawArraysInstanced;var me=env._glDrawBuffers;var ne=env._glDrawElements;var oe=env._glDrawElementsInstanced;var pe=env._glEnable;var qe=env._glEnableVertexAttribArray;var re=env._glFinish;var se=env._glFramebufferRenderbuffer;var te=env._glFramebufferTexture2D;var ue=env._glFrontFace;var ve=env._glGenBuffers;var we=env._glGenFramebuffers;var xe=env._glGenRenderbuffers;var ye=env._glGenTextures;var ze=env._glGenerateMipmap;var Ae=env._glGetActiveAttrib;var Be=env._glGetActiveUniform;var Ce=env._glGetAttribLocation;var De=env._glGetBooleanv;var Ee=env._glGetError;var Fe=env._glGetFloatv;var Ge=env._glGetIntegerv;var He=env._glGetProgramiv;var Ie=env._glGetShaderPrecisionFormat;var Je=env._glGetString;var Ke=env._glGetUniformLocation;var Le=env._glIsEnabled;var Me=env._glLinkProgram;var Ne=env._glPixelStorei;var Oe=env._glPolygonOffset;var Pe=env._glRenderbufferStorage;var Qe=env._glScissor;var Re=env._glShaderSource;var Se=env._glStencilFunc;var Te=env._glStencilFuncSeparate;var Ue=env._glStencilMask;var Ve=env._glStencilMaskSeparate;var We=env._glStencilOp;var Xe=env._glStencilOpSeparate;var Ye=env._glTexImage2D;var Ze=env._glTexParameterf;var _e=env._glTexParameteri;var $e=env._glUniform1f;var af=env._glUniform1fv;var bf=env._glUniform1i;var cf=env._glUniform2f;var df=env._glUniform2fv;var ef=env._glUniform2i;var ff=env._glUniform3f;var gf=env._glUniform3fv;var hf=env._glUniform4f;var jf=env._glUniform4fv;var kf=env._glUniformMatrix3fv;var lf=env._glUniformMatrix4fv;var mf=env._glUseProgram;var nf=env._glVertexAttrib1f;var of=env._glVertexAttrib4f;var pf=env._glVertexAttribDivisor;var qf=env._glVertexAttribPointer;var rf=env._glViewport;var sf=env._glppAsyncUploadImage;var tf=env._llvm_ceil_f64;var uf=env._llvm_fabs_f32;var vf=env._llvm_fabs_f64;var wf=env._llvm_trap;var xf=env._nanosleep;var yf=env._networkClose;var zf=env._networkCloseBeforeUnload;var Af=env._networkConnect;var Bf=env._networkSendData;var Cf=env._pthread_cond_wait;var Df=env._pthread_mutex_destroy;var Ef=env._strftime;var Ff=env._strftime_l;var Gf=env._usleep;var Hf=env.constNoSmartPtrRawPointerToWireType;var If=env.count_emval_handles;var Jf=env.craftEmvalAllocator;var Kf=env.craftInvokerFunction;var Lf=env.createNamedFunction;var Mf=env.downcastPointer;var Nf=env.embind__requireFunction;var Of=env.embind_init_charCodes;var Pf=env.emscriptenWebGLComputeImageSize;var Qf=env.emscriptenWebGLGet;var Rf=env.emscriptenWebGLGetHeapForType;var Sf=env.emscriptenWebGLGetShiftForType;var Tf=env.emscriptenWebGLGetTexPixelData;var Uf=env.emval_get_global;var Vf=env.ensureOverloadTable;var Wf=env.enumReadValueFromPointer;var Xf=env.exposePublicSymbol;var Yf=env.extendError;var Zf=env.floatReadValueFromPointer;var _f=env.flushPendingDeletes;var $f=env.genericPointerToWireType;var ag=env.getBasestPointer;var bg=env.getInheritedInstance;var cg=env.getInheritedInstanceCount;var dg=env.getLiveInheritedInstances;var eg=env.getShiftFromSize;var fg=env.getStringOrSymbol;var gg=env.getTypeName;var hg=env.get_first_emval;var ig=env.heap32VectorToArray;var jg=env.init_ClassHandle;var kg=env.init_RegisteredPointer;var lg=env.init_embind;var mg=env.init_emval;var ng=env.integerReadValueFromPointer;var og=env.makeClassHandle;var pg=env.makeLegalFunctionName;var qg=env.new_;var rg=env.nonConstNoSmartPtrRawPointerToWireType;var sg=env.readLatin1String;var tg=env.registerType;var ug=env.replacePublicSymbol;var vg=env.requireHandle;var wg=env.requireRegisteredType;var xg=env.runDestructor;var yg=env.runDestructors;var zg=env.setDelayFunction;var Ag=env.shallowCopyInternalPointer;var Bg=env.simpleReadValueFromPointer;var Cg=env.throwBindingError;var Dg=env.throwInstanceAlreadyDeleted;var Eg=env.throwInternalError;var Fg=env.throwUnboundTypeError;var Gg=env.upcastPointer;var Hg=env.whenDependentTypesAreResolved;var Ig=0.0;function Jg(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true}
// EMSCRIPTEN_START_FUNCS
function jx(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13768;f[b+4>>2]=f[a+4>>2];return b|0}function kx(a,b){a=a|0;b=b|0;f[b>>2]=13768;f[b+4>>2]=f[a+4>>2];return}function lx(a){a=a|0;return}function mx(a){a=a|0;Zpb(a);return}function nx(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function ox(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==54376?a+4|0:0)|0}function px(a){a=a|0;return 168}function qx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function rx(a){a=a|0;Zpb(a);return}function sx(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<4){d=0;return d|0}d=a+4|0;a=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=c+4|0;return d|0}function tx(a){a=a|0;return a+4|0}function ux(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=f[a>>2];a=sd(13560,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function vx(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215140;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215140)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215140,1540483477)|0)>>>24^(X(215140,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215140)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function wx(a){a=a|0;Zpb(a);return}function xx(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13836;f[b+4>>2]=f[a+4>>2];return b|0}function yx(a,b){a=a|0;b=b|0;f[b>>2]=13836;f[b+4>>2]=f[a+4>>2];return}function zx(a){a=a|0;return}function Ax(a){a=a|0;Zpb(a);return}function Bx(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Cx(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==54677?a+4|0:0)|0}function Dx(a){a=a|0;return 240}function Ex(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Fx(a){a=a|0;Zpb(a);return}function Gx(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<4){d=0;return d|0}d=a+4|0;a=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=c+4|0;return d|0}function Hx(a){a=a|0;return a+4|0}function Ix(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=f[a>>2];a=sd(13528,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function Jx(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215141;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215141)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215141,1540483477)|0)>>>24^(X(215141,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215141)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function Kx(a){a=a|0;Zpb(a);return}function Lx(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13904;f[b+4>>2]=f[a+4>>2];return b|0}function Mx(a,b){a=a|0;b=b|0;f[b>>2]=13904;f[b+4>>2]=f[a+4>>2];return}function Nx(a){a=a|0;return}function Ox(a){a=a|0;Zpb(a);return}function Px(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Qx(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==55010?a+4|0:0)|0}function Rx(a){a=a|0;return 312}function Sx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Tx(a){a=a|0;return}function Ux(a){a=a|0;Zpb(a);return}function Vx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;if((d-c|0)<16){c=0;u=k;return c|0}h=a+40|0;i=h;e=c;g=i+16|0;do{b[i>>0]=b[e>>0]|0;i=i+1|0;e=e+1|0}while((i|0)<(g|0));e=c+16|0;if((d-e|0)<16){c=0;u=k;return c|0}d=a+60|0;i=d;g=i+16|0;do{b[i>>0]=b[e>>0]|0;i=i+1|0;e=e+1|0}while((i|0)<(g|0));i=a+4|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];f[j+12>>2]=f[i+12>>2];f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];a=a+20|0;f[j>>2]=f[a>>2];f[j+4>>2]=f[a+4>>2];f[j+8>>2]=f[a+8>>2];f[j+12>>2]=f[a+12>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];c=c+32|0;u=k;return c|0}function Wx(a){a=a|0;return a+4|0}function Xx(a){a=a|0;Zpb(a);return}function Yx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<16){c=0;return c|0}a=a+4|0;d=c;e=a+16|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+16|0;return c|0}function Zx(a){a=a|0;return a+4|0}function _x(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;$x(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function $x(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=md()|0;f[a>>2]=d;a=Wpb(16)|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[e>>2]=a;a=sd(400,e|0)|0;f[e>>2]=0;g=sd(13528,e|0)|0;rd(d|0,g|0,a|0);ed(g|0);ed(a|0);a=b+16|0;b=Wpb(16)|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];f[e>>2]=b;b=sd(400,e|0)|0;f[e>>2]=1;a=sd(13528,e|0)|0;rd(d|0,a|0,b|0);ed(a|0);ed(b|0);u=c;return}function ay(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215142;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215142)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215142,1540483477)|0)>>>24^(X(215142,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215142)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function by(a){a=a|0;Zpb(a);return}function cy(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13996;f[b+4>>2]=f[a+4>>2];return b|0}function dy(a,b){a=a|0;b=b|0;f[b>>2]=13996;f[b+4>>2]=f[a+4>>2];return}function ey(a){a=a|0;return}function fy(a){a=a|0;Zpb(a);return}function gy(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function hy(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==55563?a+4|0:0)|0}function iy(a){a=a|0;return 424}function jy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function ky(a){a=a|0;f[a>>2]=14064;a=f[a+4>>2]|0;if(!a)return;Zpb(a);return}function ly(a){a=a|0;var b=0;f[a>>2]=14064;b=f[a+4>>2]|0;if(!b){Zpb(a);return}Zpb(b);Zpb(a);return}function my(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=d;if((l-c|0)<4){n=0;return n|0}m=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;n=a+4|0;j=a+8|0;f[j>>2]=0;ry(n,m);if(!m){n=d;return n|0}k=a+20|0;i=a+12|0;g=0;while(1){if((l-d|0)<1){d=0;c=13;break}e=(b[d>>0]|0)!=0&1;b[k>>0]=e;d=d+1|0;c=f[j>>2]|0;a=f[i>>2]|0;if((c|0)==(a<<5|0)){if((c+1|0)<0){c=7;break}a=a<<6;e=c+32&-32;ry(n,c>>>0<1073741823?(a>>>0<e>>>0?e:a):2147483647);c=f[j>>2]|0;a=b[k>>0]|0}else a=e;f[j>>2]=c+1;e=(f[n>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(!(a<<24>>24))c=f[e>>2]&~c;else c=f[e>>2]|c;f[e>>2]=c;g=g+1|0;if(g>>>0>=m>>>0){c=13;break}}if((c|0)==7)fob(n);else if((c|0)==13)return d|0;return 0}function ny(a){a=a|0;return a+4|0}function oy(a){a=a|0;f[a>>2]=14064;a=f[a+4>>2]|0;if(!a)return;Zpb(a);return}function py(a){a=a|0;wf()}function qy(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<4){d=0;return d|0}d=a+4|0;a=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=c+4|0;return d|0}function ry(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+16|0;c=j+8|0;d=j;h=a+8|0;if(f[h>>2]<<5>>>0>=b>>>0){u=j;return}f[g>>2]=0;i=g+4|0;f[i>>2]=0;e=g+8|0;f[e>>2]=0;if((b|0)<0)fob(g);l=((b+-1|0)>>>5)+1|0;k=Wpb(l<<2)|0;f[g>>2]=k;f[i>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;uy(g,c,d);b=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=b;g=f[k>>2]|0;f[k>>2]=f[i>>2];f[i>>2]=g;i=f[h>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=i;if(b|0)Zpb(b);u=j;return}function sy(a){a=a|0;Zpb(a);return}function ty(a){a=a|0;return a+4|0}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+24|0;k=o+16|0;l=o+8|0;n=o;e=a+4|0;p=f[e>>2]|0;m=f[b>>2]|0;d=f[b+4>>2]|0;i=f[c>>2]|0;g=f[c+4>>2]|0;h=i-m<<3;f[e>>2]=p-d+g+h;e=(f[a>>2]|0)+(p>>>5<<2)|0;c=p&31;b=e;if((d|0)!=(c|0)){f[j>>2]=m;f[j+4>>2]=d;f[k>>2]=i;f[k+4>>2]=g;f[l>>2]=b;f[l+4>>2]=c;vy(n,j,k,l);u=o;return}c=g-d+h|0;h=m;if((c|0)>0){if(!d){d=0;b=m}else{p=32-d|0;b=(c|0)<(p|0)?c:p;p=-1>>>(p-b|0)&-1<<d;f[e>>2]=f[e>>2]&~p|f[h>>2]&p;d=b+d|0;h=h+4|0;c=c-b|0;e=e+(d>>>5<<2)|0;d=d&31;b=h}g=(c|0)/32|0;Jrb(e|0,b|0,g<<2|0)|0;a=c-(g<<5)|0;c=e+(g<<2)|0;b=c;if((a|0)>0){d=-1>>>(32-a|0);f[c>>2]=f[c>>2]&~d|f[h+(g<<2)>>2]&d;d=a}}f[n>>2]=b;f[n+4>>2]=d;u=o;return}function vy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=f[b>>2]|0;m=b+4|0;e=f[m>>2]|0;i=((f[c>>2]|0)-l<<3)+(f[c+4>>2]|0)-e|0;c=l;if((i|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;d=a+4|0;a=f[b>>2]|0;f[d>>2]=a;return}if(!e){e=d+4|0;k=e;e=f[e>>2]|0}else{g=32-e|0;l=(i|0)<(g|0)?i:g;g=-1>>>(g-l|0)&-1<<e&f[c>>2];k=d+4|0;e=f[k>>2]|0;j=32-e|0;c=j>>>0<l>>>0?j:l;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-c|0)&-1<<e);f[h>>2]=e;j=f[k>>2]|0;n=f[m>>2]|0;f[h>>2]=(j>>>0>n>>>0?g<<j-n:g>>>(n-j|0))|e;e=(f[k>>2]|0)+c|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[k>>2]=e;j=l-c|0;if((j|0)>0){e=f[h>>2]&~(-1>>>(32-j|0));f[h>>2]=e;f[h>>2]=e|g>>>((f[m>>2]|0)+c|0);f[k>>2]=j;e=j}c=(f[b>>2]|0)+4|0;f[b>>2]=c;i=i-l|0}l=32-e|0;g=-1<<e;if((i|0)>31){h=~g;j=~i;j=i+((j|0)>-64?j:-64)+32&-32;e=i;while(1){m=f[c>>2]|0;n=f[d>>2]|0;o=f[n>>2]&h;f[n>>2]=o;f[n>>2]=o|m<<f[k>>2];n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&g|m>>>l;c=(f[b>>2]|0)+4|0;f[b>>2]=c;if((e|0)<=63)break;else e=e+-32|0}i=i+-32-j|0}if((i|0)<=0){n=k;o=f[d>>2]|0;f[a>>2]=o;o=a+4|0;n=f[n>>2]|0;f[o>>2]=n;return}h=f[c>>2]&-1>>>(32-i|0);g=(l|0)<(i|0)?l:i;e=f[d>>2]|0;c=f[e>>2]&~(-1<<f[k>>2]&-1>>>(l-g|0));f[e>>2]=c;f[e>>2]=c|h<<f[k>>2];c=(f[k>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[k>>2]=c&31;c=i-g|0;if((c|0)<=0){n=k;o=f[d>>2]|0;f[a>>2]=o;o=a+4|0;n=f[n>>2]|0;f[o>>2]=n;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|h>>>g;f[k>>2]=c;n=k;o=f[d>>2]|0;f[a>>2]=o;o=a+4|0;n=f[n>>2]|0;f[o>>2]=n;return}function wy(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;xy(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function xy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;e=md()|0;f[a>>2]=e;a=f[b+4>>2]|0;if(!a){u=g;return}c=0;do{i=(f[(f[b>>2]|0)+(c>>>5<<2)>>2]&1<<(c&31)|0)!=0;f[d>>2]=c;h=sd(13536,d|0)|0;f[d>>2]=i&1;i=sd(13480,d|0)|0;rd(e|0,h|0,i|0);ed(i|0);ed(h|0);c=c+1|0}while((c|0)!=(a|0));u=g;return}function yy(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215143;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215143)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215143,1540483477)|0)>>>24^(X(215143,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215143)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function zy(a){a=a|0;Zpb(a);return}function Ay(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14112;f[b+4>>2]=f[a+4>>2];return b|0}function By(a,b){a=a|0;b=b|0;f[b>>2]=14112;f[b+4>>2]=f[a+4>>2];return}function Cy(a){a=a|0;return}function Dy(a){a=a|0;Zpb(a);return}function Ey(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Fy(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==56038?a+4|0:0)|0}function Gy(a){a=a|0;return 528}function Hy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Iy(a){a=a|0;var b=0,c=0;f[a>>2]=14180;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function Jy(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14180;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Zpb(a);return}function Ky(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=d;if((l-c|0)<4){m=0;return m|0}m=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;k=a+4|0;g=f[k>>2]|0;j=a+8|0;c=f[j>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-4-e|0)>>>2)<<2)|0;f[j>>2]=c}i=a+12|0;if((f[i>>2]|0)-e>>2>>>0<m>>>0){if(m>>>0>1073741823)ud();c=c-e|0;e=Wpb(m<<2)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[k>>2]=e;f[j>>2]=e+(c>>2<<2);f[i>>2]=e+(m<<2);if(g|0)Zpb(g)}else if(!m){m=d;return m|0}a=a+20|0;e=0;while(1){if((l-d|0)<4){d=0;c=18;break}g=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;d=d+4|0;c=f[j>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[c>>2]=g;f[j>>2]=c+4}else Oy(k,a);e=e+1|0;if(e>>>0>=m>>>0){c=18;break}}if((c|0)==18)return d|0;return 0}function Ly(a){a=a|0;return a+4|0}function My(a){a=a|0;var b=0,c=0;f[a>>2]=14180;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function Ny(a){a=a|0;wf()}function Oy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function Py(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;Qy(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function Qy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{f[c>>2]=f[(f[b>>2]|0)+(a<<2)>>2];h=sd(13560,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function Ry(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215144;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215144)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215144,1540483477)|0)>>>24^(X(215144,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215144)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function Sy(a){a=a|0;Zpb(a);return}function Ty(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14204;f[b+4>>2]=f[a+4>>2];return b|0}function Uy(a,b){a=a|0;b=b|0;f[b>>2]=14204;f[b+4>>2]=f[a+4>>2];return}function Vy(a){a=a|0;return}function Wy(a){a=a|0;Zpb(a);return}function Xy(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Yy(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==56479?a+4|0:0)|0}function Zy(a){a=a|0;return 584}function _y(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function $y(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=14248;f[a+16>>2]=14320;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}f[a>>2]=14272;g=a+4|0;b=f[g>>2]|0;if(!b)return;e=a+8|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[e>>2]=d;a=f[d>>2]|0;if(!a)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(a|0))f[c>>2]=d+(~((d+-16-a|0)>>>4)<<4);Zpb(a);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b);return}function az(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;f[a>>2]=14248;f[a+16>>2]=14320;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}f[a>>2]=14272;g=a+4|0;b=f[g>>2]|0;if(!b){Zpb(a);return}h=a+8|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-16-e|0)>>>4)<<4);Zpb(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b);Zpb(a);return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if((c-b|0)<4){o=0;return o|0}o=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;b=b+4|0;n=a+4|0;i=f[n>>2]|0;m=a+8|0;d=f[m>>2]|0;if((d|0)!=(i|0))do{e=d+-12|0;f[m>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-16-g|0)>>>4)<<4);Zpb(g);d=f[m>>2]|0}}while((d|0)!=(i|0));pz(n,o);i=a+16|0;if(!o){o=b;return o|0}j=a+20|0;k=a+12|0;l=a+24|0;g=a+28|0;e=0;while(1){b=hz(i,b,c)|0;if(!b){b=0;d=15;break}d=f[m>>2]|0;if(d>>>0<(f[k>>2]|0)>>>0){f[d>>2]=0;a=d+4|0;f[a>>2]=0;f[d+8>>2]=0;f[d>>2]=f[j>>2];f[a>>2]=f[l>>2];f[d+8>>2]=f[g>>2];f[g>>2]=0;f[l>>2]=0;f[j>>2]=0;f[m>>2]=(f[m>>2]|0)+12}else qz(n,j);e=e+1|0;if(e>>>0>=o>>>0){d=15;break}}if((d|0)==15)return b|0;return 0}function cz(a){a=a|0;return a+4|0}function dz(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=14272;g=a+4|0;b=f[g>>2]|0;if(!b)return;e=a+8|0;a=f[e>>2]|0;if((a|0)!=(b|0)){c=a;while(1){a=c+-12|0;f[e>>2]=a;d=f[a>>2]|0;if(d){a=c+-8|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~((c+-16-d|0)>>>4)<<4);Zpb(d);a=f[e>>2]|0}if((a|0)==(b|0))break;else c=a}b=f[g>>2]|0}Zpb(b);return}function ez(a){a=a|0;wf()}function fz(a){a=a|0;var b=0,c=0;f[a>>2]=14320;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-16-c|0)>>>4)<<4);Zpb(c);return}function gz(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14320;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b);Zpb(a);return}function hz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=d;if((q-c|0)<4){r=0;return r|0}r=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;p=a+4|0;m=f[p>>2]|0;o=a+8|0;c=f[o>>2]|0;l=m;if((c|0)!=(m|0)){c=c+(~((c+-16-l|0)>>>4)<<4)|0;f[o>>2]=c}e=c;n=a+12|0;if((f[n>>2]|0)-l>>4>>>0<r>>>0){if(r>>>0>268435455)ud();k=Wpb(r<<4)|0;g=k+(e-l>>4<<4)|0;j=g;k=k+(r<<4)|0;if((c|0)==(m|0))c=j;else{i=c+-16|0;e=g;do{s=e;e=e+-16|0;t=c;c=c+-16|0;f[e>>2]=f[c>>2];f[s+-12>>2]=f[t+-12>>2];f[s+-8>>2]=f[t+-8>>2];f[s+-4>>2]=f[t+-4>>2]}while((c|0)!=(m|0));c=g+(~((i-l|0)>>>4)<<4)|0}f[p>>2]=c;f[o>>2]=j;f[n>>2]=k;if(m|0)Zpb(m)}if(!r){t=d;return t|0}k=a+20|0;l=a+24|0;m=a+28|0;j=a+32|0;i=0;while(1){if((q-d|0)<16){d=0;c=20;break}c=k;e=d;g=c+16|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+16|0;c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];f[c>>2]=f[k>>2];f[c+4>>2]=f[l>>2];f[c+8>>2]=f[m>>2];f[c+12>>2]=f[j>>2];f[o>>2]=(f[o>>2]|0)+16}else oz(p,k);i=i+1|0;if(i>>>0>=r>>>0){c=20;break}}if((c|0)==20)return d|0;return 0}function iz(a){a=a|0;return a+4|0}function jz(a){a=a|0;var b=0,c=0;f[a>>2]=14320;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-16-c|0)>>>4)<<4);Zpb(c);return}function kz(a){a=a|0;wf()}function lz(a){a=a|0;Zpb(a);return}function mz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<16){c=0;return c|0}a=a+4|0;d=c;e=a+16|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+16|0;return c|0}function nz(a){a=a|0;return a+4|0}function oz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=d-m>>4;c=h+1|0;j=m;if(c>>>0>268435455)fob(a);k=a+8|0;i=(f[k>>2]|0)-m|0;e=i>>3;e=i>>4>>>0<134217727?(e>>>0<c>>>0?c:e):268435455;do if(!e)g=0;else if(e>>>0>268435455)ud();else{g=Wpb(e<<4)|0;break}while(0);c=g+(h<<4)|0;i=g+(e<<4)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c>>2]=f[b>>2];f[g+(h<<4)+4>>2]=f[b+4>>2];f[g+(h<<4)+8>>2]=f[b+8>>2];f[g+(h<<4)+12>>2]=f[b+12>>2];g=c+16|0;if((d|0)!=(j|0)){b=d+-16-m|0;e=c;do{h=e;e=e+-16|0;n=d;d=d+-16|0;f[e>>2]=f[d>>2];f[h+-12>>2]=f[n+-12>>2];f[h+-8>>2]=f[n+-8>>2];f[h+-4>>2]=f[n+-4>>2]}while((d|0)!=(j|0));c=c+(~(b>>>4)<<4)|0}f[a>>2]=c;f[l>>2]=g;f[k>>2]=i;if(!m)return;Zpb(m);return}function pz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;g=f[a>>2]|0;d=g;if((((f[k>>2]|0)-g|0)/12|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>357913941)ud();i=f[l>>2]|0;h=Wpb(b*12|0)|0;c=h+(((i-g|0)/12|0)*12|0)|0;j=c;h=h+(b*12|0)|0;b=i;if((b|0)==(d|0)){e=j;i=g}else{e=j;do{i=c+-12|0;g=b;b=b+-12|0;f[i>>2]=0;m=c+-8|0;f[m>>2]=0;f[c+-4>>2]=0;f[i>>2]=f[b>>2];i=g+-8|0;f[m>>2]=f[i>>2];g=g+-4|0;f[c+-4>>2]=f[g>>2];f[g>>2]=0;f[i>>2]=0;f[b>>2]=0;c=e+-12|0;e=c}while((b|0)!=(d|0));i=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=h;g=i;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-16-e|0)>>>4)<<4);Zpb(e)}}while((d|0)!=(g|0));if(!i)return;Zpb(i);return}function qz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function rz(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;sz(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function sz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;d=h+8|0;i=(f[b+4>>2]|0)-(f[b>>2]|0)|0;e=(i|0)/12|0;g=md()|0;f[a>>2]=g;if(!i){u=h;return}a=0;do{tz(d,(f[b>>2]|0)+(a*12|0)|0);f[c>>2]=a;j=sd(13536,c|0)|0;i=f[d>>2]|0;rd(g|0,j|0,i|0);ed(j|0);ed(i|0);a=a+1|0}while(a>>>0<e>>>0);u=h;return}function tz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>4;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{i=f[b>>2]|0;h=Wpb(16)|0;f[h>>2]=f[i+(a<<4)>>2];f[h+4>>2]=f[i+(a<<4)+4>>2];f[h+8>>2]=f[i+(a<<4)+8>>2];f[h+12>>2]=f[i+(a<<4)+12>>2];f[c>>2]=h;h=sd(824,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function uz(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215145;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215145)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215145,1540483477)|0)>>>24^(X(215145,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215145)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function vz(a){a=a|0;Zpb(a);return}function wz(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14368;f[b+4>>2]=f[a+4>>2];return b|0}function xz(a,b){a=a|0;b=b|0;f[b>>2]=14368;f[b+4>>2]=f[a+4>>2];return}function yz(a){a=a|0;return}function zz(a){a=a|0;Zpb(a);return}function Az(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Bz(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==58043?a+4|0:0)|0}function Cz(a){a=a|0;return 856}function Dz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Ez(a){a=a|0;var b=0,c=0;f[a>>2]=14436;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-20-c|0)>>>0)/20|0)*20|0);Zpb(c);return}function Fz(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14436;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-20-b|0)>>>0)/20|0)*20|0);Zpb(b);Zpb(a);return}function Gz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;if((d-c|0)<4){A=0;return A|0}A=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;c=c+4|0;z=a+4|0;k=f[z>>2]|0;y=a+8|0;e=f[y>>2]|0;g=k;if((e|0)!=(k|0)){e=e+(~(((e+-20-g|0)>>>0)/20|0)*20|0)|0;f[y>>2]=e}j=e;x=a+12|0;if((((f[x>>2]|0)-g|0)/20|0)>>>0<A>>>0){if(A>>>0>214748364)ud();m=Wpb(A*20|0)|0;i=m+(((j-g|0)/20|0)*20|0)|0;l=i;m=m+(A*20|0)|0;if((e|0)==(k|0)){g=l;e=j}else{g=l;do{v=e;e=e+-20|0;f[i+-20>>2]=f[e>>2];f[i+-16>>2]=f[v+-16>>2];f[i+-12>>2]=f[v+-12>>2];w=i+-8|0;v=v+-8|0;f[w>>2]=f[v>>2];b[w+4>>0]=b[v+4>>0]|0;i=g+-20|0;g=i}while((e|0)!=(k|0));e=f[z>>2]|0}f[z>>2]=g;f[y>>2]=l;f[x>>2]=m;if(e|0)Zpb(e)}m=a+40|0;n=a+56|0;o=a+64|0;if(!A){A=c;return A|0}p=a+20|0;q=a+44|0;k=a+24|0;l=a+28|0;r=a+48|0;s=a+52|0;t=a+32|0;u=a+60|0;v=a+36|0;w=a+68|0;j=a+20|0;i=0;while(1){c=Qg[f[(f[m>>2]|0)+8>>2]&127](m,c,d)|0;if(!c){c=0;e=21;break}c=Qg[f[(f[n>>2]|0)+8>>2]&127](n,c,d)|0;if(!c){c=0;e=21;break}c=Qg[f[(f[o>>2]|0)+8>>2]&127](o,c,d)|0;if(!c){c=0;e=21;break}B=f[p>>2]|0;a=f[k>>2]|0;g=f[l>>2]|0;e=f[q>>2]|0;f[p>>2]=e;f[k>>2]=f[r>>2];f[l>>2]=f[s>>2];f[q>>2]=B;f[r>>2]=a;f[s>>2]=g;g=f[t>>2]|0;f[t>>2]=f[u>>2];f[u>>2]=g;g=b[v>>0]|0;b[v>>0]=b[w>>0]|0;b[w>>0]=g;g=f[y>>2]|0;if(g>>>0<(f[x>>2]|0)>>>0){f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g>>2]=e;f[g+4>>2]=f[k>>2];f[g+8>>2]=f[l>>2];B=g+12|0;f[B>>2]=f[t>>2];b[B+4>>0]=b[t+4>>0]|0;f[y>>2]=(f[y>>2]|0)+20}else Uz(z,j);i=i+1|0;if(i>>>0>=A>>>0){e=21;break}}if((e|0)==21)return c|0;return 0}function Hz(a){a=a|0;return a+4|0}function Iz(a){a=a|0;var b=0,c=0;f[a>>2]=14436;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-20-c|0)>>>0)/20|0)*20|0);Zpb(c);return}function Jz(a){a=a|0;wf()}function Kz(a){a=a|0;return}function Lz(a){a=a|0;Zpb(a);return}function Mz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=a+24|0;e=a+40|0;g=a+48|0;c=Qg[f[(f[h>>2]|0)+8>>2]&127](h,c,d)|0;if(!c){h=0;return h|0}c=Qg[f[(f[e>>2]|0)+8>>2]&127](e,c,d)|0;if(!c){h=0;return h|0}c=Qg[f[(f[g>>2]|0)+8>>2]&127](g,c,d)|0;if(!c){h=0;return h|0}h=a+4|0;i=a+28|0;d=a+8|0;k=a+12|0;j=f[h>>2]|0;e=f[d>>2]|0;g=f[k>>2]|0;f[h>>2]=f[i>>2];h=a+32|0;f[d>>2]=f[h>>2];d=a+36|0;f[k>>2]=f[d>>2];f[i>>2]=j;f[h>>2]=e;f[d>>2]=g;d=a+16|0;g=a+44|0;h=f[d>>2]|0;f[d>>2]=f[g>>2];f[g>>2]=h;g=a+20|0;h=a+52|0;a=b[g>>0]|0;b[g>>0]=b[h>>0]|0;b[h>>0]=a;h=c;return h|0}function Nz(a){a=a|0;return a+4|0}function Oz(a){a=a|0;Zpb(a);return}function Pz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<12){c=0;return c|0}a=a+4|0;d=c;e=a+12|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+12|0;return c|0}function Qz(a){a=a|0;return a+4|0}function Rz(a){a=a|0;Zpb(a);return}function Sz(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function Tz(a){a=a|0;return a+4|0}function Uz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;d=f[o>>2]|0;e=f[a>>2]|0;j=(d-e|0)/20|0;h=j+1|0;m=e;g=d;if(h>>>0>214748364)fob(a);n=a+8|0;k=((f[n>>2]|0)-e|0)/20|0;l=k<<1;h=k>>>0<107374182?(l>>>0<h>>>0?h:l):214748364;do if(!h)i=0;else if(h>>>0>214748364)ud();else{i=Wpb(h*20|0)|0;break}while(0);k=i+(j*20|0)|0;e=k;l=i+(h*20|0)|0;f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];f[k>>2]=f[c>>2];f[i+(j*20|0)+4>>2]=f[c+4>>2];f[i+(j*20|0)+8>>2]=f[c+8>>2];h=i+(j*20|0)+12|0;j=c+12|0;f[h>>2]=f[j>>2];b[h+4>>0]=b[j+4>>0]|0;h=k+20|0;if((g|0)!=(m|0)){d=k;do{j=g;g=g+-20|0;f[d+-20>>2]=f[g>>2];f[d+-16>>2]=f[j+-16>>2];f[d+-12>>2]=f[j+-12>>2];k=d+-8|0;j=j+-8|0;f[k>>2]=f[j>>2];b[k+4>>0]=b[j+4>>0]|0;d=e+-20|0;e=d}while((g|0)!=(m|0));d=f[a>>2]|0}f[a>>2]=e;f[o>>2]=h;f[n>>2]=l;if(!d)return;Zpb(d);return}function Vz(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;Wz(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function Wz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;g=u;u=u+16|0;c=g;i=(f[b+4>>2]|0)-(f[b>>2]|0)|0;d=(i|0)/20|0;e=md()|0;f[a>>2]=e;if(!i){u=g;return}a=0;do{k=f[b>>2]|0;i=od()|0;j=nd(58859)|0;f[c>>2]=h[k+(a*20|0)+16>>0];l=sd(1024,c|0)|0;rd(i|0,j|0,l|0);ed(l|0);ed(j|0);j=nd(58865)|0;l=Wpb(12)|0;f[l>>2]=f[k+(a*20|0)>>2];f[l+4>>2]=f[k+(a*20|0)+4>>2];f[l+8>>2]=f[k+(a*20|0)+8>>2];f[c>>2]=l;l=sd(1152,c|0)|0;rd(i|0,j|0,l|0);ed(l|0);ed(j|0);j=nd(58872)|0;f[c>>2]=f[k+(a*20|0)+12>>2];k=sd(13560,c|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);f[c>>2]=a;j=sd(13536,c|0)|0;rd(e|0,j|0,i|0);ed(j|0);ed(i|0);a=a+1|0}while(a>>>0<d>>>0);u=g;return}function Xz(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215146;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215146)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215146,1540483477)|0)>>>24^(X(215146,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215146)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function Yz(a){a=a|0;Zpb(a);return}function Zz(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14532;f[b+4>>2]=f[a+4>>2];return b|0}function _z(a,b){a=a|0;b=b|0;f[b>>2]=14532;f[b+4>>2]=f[a+4>>2];return}function $z(a){a=a|0;return}function aA(a){a=a|0;Zpb(a);return}function bA(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function cA(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==59686?a+4|0:0)|0}function dA(a){a=a|0;return 1184}function eA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function fA(a){a=a|0;var b=0,c=0;f[a>>2]=14600;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-32-c|0)>>>5)<<5);Zpb(c);return}function gA(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14600;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b);Zpb(a);return}function hA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d;if((m-c|0)<4){n=0;return n|0}n=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;l=a+4|0;g=f[l>>2]|0;k=a+8|0;c=f[k>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-32-e|0)>>>5)<<5)|0;f[k>>2]=c}j=a+12|0;if((f[j>>2]|0)-e>>5>>>0<n>>>0){if(n>>>0>134217727)ud();c=c-e|0;e=Wpb(n<<5)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[l>>2]=e;f[k>>2]=e+(c>>5<<5);f[j>>2]=e+(n<<5);if(g|0)Zpb(g)}else if(!n){n=d;return n|0}i=a+20|0;a=0;while(1){if((m-d|0)<32){d=0;c=18;break}c=i;e=d;g=c+32|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+32|0;c=f[k>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[c>>2]=f[i>>2];f[c+4>>2]=f[i+4>>2];f[c+8>>2]=f[i+8>>2];f[c+12>>2]=f[i+12>>2];f[c+16>>2]=f[i+16>>2];f[c+20>>2]=f[i+20>>2];f[c+24>>2]=f[i+24>>2];f[c+28>>2]=f[i+28>>2];f[k>>2]=(f[k>>2]|0)+32}else oA(l,i);a=a+1|0;if(a>>>0>=n>>>0){c=18;break}}if((c|0)==18)return d|0;return 0}function iA(a){a=a|0;return a+4|0}function jA(a){a=a|0;var b=0,c=0;f[a>>2]=14600;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-32-c|0)>>>5)<<5);Zpb(c);return}function kA(a){a=a|0;wf()}function lA(a){a=a|0;Zpb(a);return}function mA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<32){c=0;return c|0}a=a+4|0;d=c;e=a+32|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+32|0;return c|0}function nA(a){a=a|0;return a+4|0}function oA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>5;c=e+1|0;if(c>>>0>134217727)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>4;d=m>>5>>>0<67108863?(d>>>0<c>>>0?c:d):134217727;do if(!d){h=0;i=0}else if(d>>>0>134217727)ud();else{i=Wpb(d<<5)|0;h=i;break}while(0);c=h+(e<<5)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];f[c+24>>2]=f[b+24>>2];f[c+28>>2]=f[b+28>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+32;f[l>>2]=h+(d<<5);if(!j)return;Zpb(j);return}function pA(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;qA(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>5;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{i=(f[b>>2]|0)+(a<<5)|0;h=Wpb(32)|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];f[h+16>>2]=f[i+16>>2];f[h+20>>2]=f[i+20>>2];f[h+24>>2]=f[i+24>>2];f[h+28>>2]=f[i+28>>2];f[c>>2]=h;h=sd(1272,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function rA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215147;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215147)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215147,1540483477)|0)>>>24^(X(215147,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215147)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function sA(a){a=a|0;Zpb(a);return}function tA(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14648;f[b+4>>2]=f[a+4>>2];return b|0}function uA(a,b){a=a|0;b=b|0;f[b>>2]=14648;f[b+4>>2]=f[a+4>>2];return}function vA(a){a=a|0;return}function wA(a){a=a|0;Zpb(a);return}function xA(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function yA(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==60405?a+4|0:0)|0}function zA(a){a=a|0;return 1296}function AA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function BA(a){a=a|0;var b=0,c=0;f[a>>2]=14716;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-24-c|0)>>>0)/24|0)*24|0);Zpb(c);return}function CA(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14716;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-24-b|0)>>>0)/24|0)*24|0);Zpb(b);Zpb(a);return}function DA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=d;if((s-c|0)<4){t=0;return t|0}t=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;r=a+4|0;j=f[r>>2]|0;q=a+8|0;c=f[q>>2]|0;g=j;if((c|0)!=(j|0)){c=c+(~(((c+-24-g|0)>>>0)/24|0)*24|0)|0;f[q>>2]=c}e=c;p=a+12|0;if((((f[p>>2]|0)-g|0)/24|0)>>>0<t>>>0){if(t>>>0>178956970)ud();i=Wpb(t*24|0)|0;e=i+(((e-g|0)/24|0)*24|0)|0;g=e;i=i+(t*24|0)|0;if((c|0)==(j|0))c=g;else{do{o=e;e=e+-24|0;n=c;c=c+-24|0;f[e>>2]=f[c>>2];f[o+-20>>2]=f[n+-20>>2];f[o+-16>>2]=f[n+-16>>2];f[o+-12>>2]=f[n+-12>>2];f[o+-8>>2]=f[n+-8>>2];f[o+-4>>2]=f[n+-4>>2]}while((c|0)!=(j|0));c=e}f[r>>2]=c;f[q>>2]=g;f[p>>2]=i;if(j|0)Zpb(j)}if(!t){t=d;return t|0}k=a+20|0;l=a+24|0;m=a+28|0;n=a+32|0;o=a+36|0;j=a+40|0;i=0;while(1){if((s-d|0)<24){d=0;c=19;break}c=k;e=d;g=c+24|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+24|0;c=f[q>>2]|0;if(c>>>0<(f[p>>2]|0)>>>0){f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c>>2]=f[k>>2];f[c+4>>2]=f[l>>2];f[c+8>>2]=f[m>>2];a=c+12|0;f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];f[a>>2]=f[n>>2];f[c+16>>2]=f[o>>2];f[c+20>>2]=f[j>>2];f[q>>2]=(f[q>>2]|0)+24}else KA(r,k);i=i+1|0;if(i>>>0>=t>>>0){c=19;break}}if((c|0)==19)return d|0;return 0}function EA(a){a=a|0;return a+4|0}function FA(a){a=a|0;var b=0,c=0;f[a>>2]=14716;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-24-c|0)>>>0)/24|0)*24|0);Zpb(c);return}function GA(a){a=a|0;wf()}function HA(a){a=a|0;Zpb(a);return}function IA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<24){c=0;return c|0}a=a+4|0;d=c;e=a+24|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+24|0;return c|0}function JA(a){a=a|0;return a+4|0}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;d=i<<1;d=i>>>0<89478485?(d>>>0<c>>>0?c:d):178956970;do if(!d)g=0;else if(d>>>0>178956970)ud();else{g=Wpb(d*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(d*24|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c>>2]=f[b>>2];f[g+(h*24|0)+4>>2]=f[b+4>>2];f[g+(h*24|0)+8>>2]=f[b+8>>2];d=g+(h*24|0)+12|0;n=b+12|0;f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d>>2]=f[n>>2];f[g+(h*24|0)+16>>2]=f[b+16>>2];f[g+(h*24|0)+20>>2]=f[b+20>>2];b=c+24|0;if((e|0)!=(j|0))while(1){d=c+-24|0;n=e;e=e+-24|0;f[d>>2]=f[e>>2];f[c+-20>>2]=f[n+-20>>2];f[c+-16>>2]=f[n+-16>>2];f[c+-12>>2]=f[n+-12>>2];f[c+-8>>2]=f[n+-8>>2];f[c+-4>>2]=f[n+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function LA(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;MA(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function MA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;h=(f[b+4>>2]|0)-(f[b>>2]|0)|0;d=(h|0)/24|0;e=md()|0;f[a>>2]=e;if(!h){u=g;return}a=0;do{i=f[b>>2]|0;h=Wpb(24)|0;f[h>>2]=f[i+(a*24|0)>>2];f[h+4>>2]=f[i+(a*24|0)+4>>2];f[h+8>>2]=f[i+(a*24|0)+8>>2];f[h+12>>2]=f[i+(a*24|0)+12>>2];f[h+16>>2]=f[i+(a*24|0)+16>>2];f[h+20>>2]=f[i+(a*24|0)+20>>2];f[c>>2]=h;h=sd(1392,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while(a>>>0<d>>>0);u=g;return}function NA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215148;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215148)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215148,1540483477)|0)>>>24^(X(215148,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215148)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function OA(a){a=a|0;Zpb(a);return}function PA(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14764;f[b+4>>2]=f[a+4>>2];return b|0}function QA(a,b){a=a|0;b=b|0;f[b>>2]=14764;f[b+4>>2]=f[a+4>>2];return}function RA(a){a=a|0;return}function SA(a){a=a|0;Zpb(a);return}function TA(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function UA(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==61078?a+4|0:0)|0}function VA(a){a=a|0;return 1424}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function XA(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14832;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);Zpb(a);return}function YA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;i=q;p=d;if((p-c|0)<4){p=0;u=q;return p|0}j=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;n=a+4|0;g=f[n>>2]|0;o=a+8|0;c=f[o>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-8-e|0)>>>3)<<3)|0;f[o>>2]=c}if(!j){p=d;u=q;return p|0}m=a+12|0;if((f[m>>2]|0)-e>>3>>>0<j>>>0){if(j>>>0>536870911)ud();c=c-e|0;e=Wpb(j<<3)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[n>>2]=e;f[o>>2]=e+(c>>3<<3);f[m>>2]=e+(j<<3);if(g|0)Zpb(g)}f[i>>2]=14856;l=i+4|0;k=i+8|0;c=j;do{if((p-d|0)<8){d=0;break}j=d;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;e=l;f[e>>2]=i;f[e+4>>2]=j;e=d+8|0;if((p-e|0)<1){d=0;break}a=(b[e>>0]|0)==0;g=d+9|0;c=c+-1|0;e=f[o>>2]|0;if((e|0)==(f[m>>2]|0))dB(n,l);else{f[e>>2]=i;f[e+4>>2]=j;f[o>>2]=(f[o>>2]|0)+8}if(a)d=g;else{if((p-g|0)<4){d=0;break}e=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=d+13|0;if(c>>>0<e>>>0){d=0;break}c=c-e|0;if(e)do{e=e+-1|0;f[k>>2]=(f[k>>2]|0)+1;a=f[o>>2]|0;if((a|0)==(f[m>>2]|0))dB(n,l);else{g=l;i=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=i;f[o>>2]=(f[o>>2]|0)+8}}while((e|0)!=0)}}while((c|0)!=0);p=d;u=q;return p|0}function ZA(a){a=a|0;return a+4|0}function _A(a){a=a|0;var b=0,c=0;f[a>>2]=14832;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c);return}function $A(a){a=a|0;wf()}function aB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((d-c|0)<8){d=0;return d|0}e=c;f=e;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;d=a+4|0;a=d;b[a>>0]=f;b[a+1>>0]=f>>8;b[a+2>>0]=f>>16;b[a+3>>0]=f>>24;d=d+4|0;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;d=c+8|0;return d|0}function bB(a){a=a|0;Zpb(a);return}function cB(a){a=a|0;return a+4|0}function dB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function eB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;e=j;g=md()|0;h=g;c=f[a>>2]|0;i=(f[a+4>>2]|0)-c>>3;if(!i){i=f[52656]|0;ed(i|0);f[52656]=h;ed(0);u=j;return}d=0;b=0;while(1){f[e>>2]=d;k=sd(13536,e|0)|0;f[e>>2]=f[c+(b<<3)>>2];l=sd(13536,e|0)|0;rd(g|0,k|0,l|0);ed(l|0);ed(k|0);f[e>>2]=d|1;k=sd(13536,e|0)|0;f[e>>2]=f[c+(b<<3)+4>>2];c=sd(13536,e|0)|0;rd(g|0,k|0,c|0);ed(c|0);ed(k|0);b=b+1|0;if((b|0)==(i|0))break;d=d+2|0;c=f[a>>2]|0}l=f[52656]|0;ed(l|0);f[52656]=h;ed(0);u=j;return}function fB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215149;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215149)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215149,1540483477)|0)>>>24^(X(215149,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215149)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function gB(a){a=a|0;Zpb(a);return}function hB(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14880;f[b+4>>2]=f[a+4>>2];return b|0}function iB(a,b){a=a|0;b=b|0;f[b>>2]=14880;f[b+4>>2]=f[a+4>>2];return}function jB(a){a=a|0;return}function kB(a){a=a|0;Zpb(a);return}function lB(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function mB(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==61747?a+4|0:0)|0}function nB(a){a=a|0;return 1544}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function pB(a){a=a|0;var b=0,c=0;f[a>>2]=14948;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c);return}function qB(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=14948;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);Zpb(a);return}function rB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;i=q;p=d;if((p-c|0)<4){p=0;u=q;return p|0}j=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;n=a+4|0;g=f[n>>2]|0;o=a+8|0;c=f[o>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-8-e|0)>>>3)<<3)|0;f[o>>2]=c}if(!j){p=d;u=q;return p|0}m=a+12|0;if((f[m>>2]|0)-e>>3>>>0<j>>>0){if(j>>>0>536870911)ud();c=c-e|0;e=Wpb(j<<3)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[n>>2]=e;f[o>>2]=e+(c>>3<<3);f[m>>2]=e+(j<<3);if(g|0)Zpb(g)}f[i>>2]=14972;l=i+4|0;k=i+8|0;c=j;do{if((p-d|0)<8){d=0;break}j=d;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;e=l;f[e>>2]=i;f[e+4>>2]=j;e=d+8|0;if((p-e|0)<1){d=0;break}a=(b[e>>0]|0)==0;g=d+9|0;c=c+-1|0;e=f[o>>2]|0;if((e|0)==(f[m>>2]|0))xB(n,l);else{f[e>>2]=i;f[e+4>>2]=j;f[o>>2]=(f[o>>2]|0)+8}if(a)d=g;else{if((p-g|0)<4){d=0;break}e=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=d+13|0;if(c>>>0<e>>>0){d=0;break}c=c-e|0;if(e)do{e=e+-1|0;f[k>>2]=(f[k>>2]|0)+1;a=f[o>>2]|0;if((a|0)==(f[m>>2]|0))xB(n,l);else{g=l;i=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=i;f[o>>2]=(f[o>>2]|0)+8}}while((e|0)!=0)}}while((c|0)!=0);p=d;u=q;return p|0}function sB(a){a=a|0;return a+4|0}function tB(a){a=a|0;wf()}function uB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((d-c|0)<8){d=0;return d|0}e=c;f=e;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;d=a+4|0;a=d;b[a>>0]=f;b[a+1>>0]=f>>8;b[a+2>>0]=f>>16;b[a+3>>0]=f>>24;d=d+4|0;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;d=c+8|0;return d|0}function vB(a){a=a|0;Zpb(a);return}function wB(a){a=a|0;return a+4|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function yB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;e=j;g=md()|0;h=g;c=f[a>>2]|0;i=(f[a+4>>2]|0)-c>>3;if(!i){i=f[52656]|0;ed(i|0);f[52656]=h;ed(0);u=j;return}d=0;b=0;while(1){f[e>>2]=d;k=sd(13536,e|0)|0;f[e>>2]=f[c+(b<<3)>>2];l=sd(13536,e|0)|0;rd(g|0,k|0,l|0);ed(l|0);ed(k|0);f[e>>2]=d|1;k=sd(13536,e|0)|0;f[e>>2]=f[c+(b<<3)+4>>2];c=sd(13536,e|0)|0;rd(g|0,k|0,c|0);ed(c|0);ed(k|0);b=b+1|0;if((b|0)==(i|0))break;d=d+2|0;c=f[a>>2]|0}l=f[52656]|0;ed(l|0);f[52656]=h;ed(0);u=j;return}function zB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215150;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215150)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215150,1540483477)|0)>>>24^(X(215150,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215150)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function AB(a){a=a|0;Zpb(a);return}function BB(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=14996;f[b+4>>2]=f[a+4>>2];return b|0}function CB(a,b){a=a|0;b=b|0;f[b>>2]=14996;f[b+4>>2]=f[a+4>>2];return}function DB(a){a=a|0;return}function EB(a){a=a|0;Zpb(a);return}function FB(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function GB(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==62440?a+4|0:0)|0}function HB(a){a=a|0;return 1664}function IB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function JB(a){a=a|0;var b=0,c=0;f[a>>2]=15064;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-64-c|0)>>>6)<<6);Zpb(c);return}function KB(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15064;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-64-b|0)>>>6)<<6);Zpb(b);Zpb(a);return}function LB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=d;if((C-c|0)<4){D=0;return D|0}D=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;B=a+4|0;c=f[B>>2]|0;A=a+8|0;e=f[A>>2]|0;if((e|0)!=(c|0))f[A>>2]=e+(~((e+-64-c|0)>>>6)<<6);SB(B,D);if(!D){D=d;return D|0}k=a+20|0;l=a+12|0;m=a+24|0;n=a+28|0;o=a+32|0;p=a+36|0;q=a+40|0;r=a+44|0;s=a+48|0;t=a+52|0;u=a+56|0;v=a+60|0;w=a+64|0;x=a+68|0;y=a+72|0;z=a+76|0;j=a+80|0;e=0;while(1){if((C-d|0)<64){d=0;c=11;break}a=k;g=d;i=a+64|0;do{b[a>>0]=b[g>>0]|0;a=a+1|0;g=g+1|0}while((a|0)<(i|0));d=d+64|0;c=f[A>>2]|0;if(c>>>0<(f[l>>2]|0)>>>0){a=c;g=k;i=a+64|0;do{f[a>>2]=f[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(i|0));f[c>>2]=f[k>>2];f[c+4>>2]=f[m>>2];f[c+8>>2]=f[n>>2];f[c+12>>2]=f[o>>2];f[c+16>>2]=f[p>>2];f[c+20>>2]=f[q>>2];f[c+24>>2]=f[r>>2];f[c+28>>2]=f[s>>2];f[c+32>>2]=f[t>>2];f[c+36>>2]=f[u>>2];f[c+40>>2]=f[v>>2];f[c+44>>2]=f[w>>2];f[c+48>>2]=f[x>>2];f[c+52>>2]=f[y>>2];f[c+56>>2]=f[z>>2];f[c+60>>2]=f[j>>2];f[A>>2]=(f[A>>2]|0)+64}else TB(B,k);e=e+1|0;if(e>>>0>=D>>>0){c=11;break}}if((c|0)==11)return d|0;return 0}function MB(a){a=a|0;return a+4|0}function NB(a){a=a|0;var b=0,c=0;f[a>>2]=15064;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-64-c|0)>>>6)<<6);Zpb(c);return}function OB(a){a=a|0;wf()}function PB(a){a=a|0;Zpb(a);return}function QB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<64){c=0;return c|0}a=a+4|0;d=c;e=a+64|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+64|0;return c|0}function RB(a){a=a|0;return a+4|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+8|0;c=f[a>>2]|0;g=c;if((f[j>>2]|0)-c>>6>>>0>=b>>>0)return;k=a+4|0;if(b>>>0>67108863)ud();d=f[k>>2]|0;h=Wpb(b<<6)|0;e=h+(d-c>>6<<6)|0;i=e;h=h+(b<<6)|0;b=d;if((b|0)==(g|0))b=i;else{d=b+-64-c|0;c=b;b=e;do{l=b;b=b+-64|0;m=c;c=c+-64|0;f[b>>2]=f[c>>2];f[l+-60>>2]=f[m+-60>>2];f[l+-56>>2]=f[m+-56>>2];f[l+-52>>2]=f[m+-52>>2];f[l+-48>>2]=f[m+-48>>2];f[l+-44>>2]=f[m+-44>>2];f[l+-40>>2]=f[m+-40>>2];f[l+-36>>2]=f[m+-36>>2];f[l+-32>>2]=f[m+-32>>2];f[l+-28>>2]=f[m+-28>>2];f[l+-24>>2]=f[m+-24>>2];f[l+-20>>2]=f[m+-20>>2];f[l+-16>>2]=f[m+-16>>2];f[l+-12>>2]=f[m+-12>>2];f[l+-8>>2]=f[m+-8>>2];f[l+-4>>2]=f[m+-4>>2]}while((c|0)!=(g|0));b=e+(~(d>>>6)<<6)|0;c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=i;f[j>>2]=h;if(!c)return;Zpb(c);return}function TB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+4|0;c=f[a>>2]|0;i=(f[k>>2]|0)-c>>6;d=i+1|0;if(d>>>0>67108863)fob(a);l=a+8|0;j=(f[l>>2]|0)-c|0;c=j>>5;c=j>>6>>>0<33554431?(c>>>0<d>>>0?d:c):67108863;do if(!c)h=0;else if(c>>>0>67108863)ud();else{h=Wpb(c<<6)|0;break}while(0);d=h+(i<<6)|0;j=h+(c<<6)|0;c=d;e=b;g=c+64|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));f[d>>2]=f[b>>2];f[h+(i<<6)+4>>2]=f[b+4>>2];f[h+(i<<6)+8>>2]=f[b+8>>2];f[h+(i<<6)+12>>2]=f[b+12>>2];f[h+(i<<6)+16>>2]=f[b+16>>2];f[h+(i<<6)+20>>2]=f[b+20>>2];f[h+(i<<6)+24>>2]=f[b+24>>2];f[h+(i<<6)+28>>2]=f[b+28>>2];f[h+(i<<6)+32>>2]=f[b+32>>2];f[h+(i<<6)+36>>2]=f[b+36>>2];f[h+(i<<6)+40>>2]=f[b+40>>2];f[h+(i<<6)+44>>2]=f[b+44>>2];f[h+(i<<6)+48>>2]=f[b+48>>2];f[h+(i<<6)+52>>2]=f[b+52>>2];f[h+(i<<6)+56>>2]=f[b+56>>2];f[h+(i<<6)+60>>2]=f[b+60>>2];h=d+64|0;b=f[a>>2]|0;e=f[k>>2]|0;c=b;if((e|0)!=(b|0)){g=e+-64-c|0;c=e;e=d;do{i=e;e=e+-64|0;m=c;c=c+-64|0;f[e>>2]=f[c>>2];f[i+-60>>2]=f[m+-60>>2];f[i+-56>>2]=f[m+-56>>2];f[i+-52>>2]=f[m+-52>>2];f[i+-48>>2]=f[m+-48>>2];f[i+-44>>2]=f[m+-44>>2];f[i+-40>>2]=f[m+-40>>2];f[i+-36>>2]=f[m+-36>>2];f[i+-32>>2]=f[m+-32>>2];f[i+-28>>2]=f[m+-28>>2];f[i+-24>>2]=f[m+-24>>2];f[i+-20>>2]=f[m+-20>>2];f[i+-16>>2]=f[m+-16>>2];f[i+-12>>2]=f[m+-12>>2];f[i+-8>>2]=f[m+-8>>2];f[i+-4>>2]=f[m+-4>>2]}while((c|0)!=(b|0));d=d+(~(g>>>6)<<6)|0;c=f[a>>2]|0}f[a>>2]=d;f[k>>2]=h;f[l>>2]=j;if(!c)return;Zpb(c);return}function UB(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;VB(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function VB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>6;e=md()|0;f[a>>2]=e;if(!d){u=g;return}e=0;do{j=f[b>>2]|0;h=Wpb(64)|0;f[h>>2]=f[j+(e<<6)>>2];f[h+4>>2]=f[j+(e<<6)+4>>2];f[h+8>>2]=f[j+(e<<6)+8>>2];f[h+12>>2]=f[j+(e<<6)+12>>2];f[h+16>>2]=f[j+(e<<6)+16>>2];f[h+20>>2]=f[j+(e<<6)+20>>2];f[h+24>>2]=f[j+(e<<6)+24>>2];f[h+28>>2]=f[j+(e<<6)+28>>2];f[h+32>>2]=f[j+(e<<6)+32>>2];f[h+36>>2]=f[j+(e<<6)+36>>2];f[h+40>>2]=f[j+(e<<6)+40>>2];f[h+44>>2]=f[j+(e<<6)+44>>2];f[h+48>>2]=f[j+(e<<6)+48>>2];f[h+52>>2]=f[j+(e<<6)+52>>2];f[h+56>>2]=f[j+(e<<6)+56>>2];f[h+60>>2]=f[j+(e<<6)+60>>2];f[c>>2]=h;h=sd(1872,c|0)|0;j=f[a>>2]|0;f[c>>2]=e;i=sd(13536,c|0)|0;rd(j|0,i|0,h|0);ed(i|0);ed(h|0);e=e+1|0}while((e|0)!=(d|0));u=g;return}function WB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215151;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215151)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215151,1540483477)|0)>>>24^(X(215151,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215151)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function XB(a){a=a|0;Zpb(a);return}function YB(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15112;f[b+4>>2]=f[a+4>>2];return b|0}function ZB(a,b){a=a|0;b=b|0;f[b>>2]=15112;f[b+4>>2]=f[a+4>>2];return}function _B(a){a=a|0;return}function $B(a){a=a|0;Zpb(a);return}function aC(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function bC(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==63744?a+4|0:0)|0}function cC(a){a=a|0;return 1904}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function eC(a){a=a|0;var b=0,c=0;f[a>>2]=15180;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-16-c|0)>>>4)<<4);Zpb(c);return}function fC(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15180;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b);Zpb(a);return}function gC(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d;if((m-c|0)<4){n=0;return n|0}n=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;l=a+4|0;g=f[l>>2]|0;k=a+8|0;c=f[k>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-16-e|0)>>>4)<<4)|0;f[k>>2]=c}j=a+12|0;if((f[j>>2]|0)-e>>4>>>0<n>>>0){if(n>>>0>268435455)ud();c=c-e|0;e=Wpb(n<<4)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[l>>2]=e;f[k>>2]=e+(c>>4<<4);f[j>>2]=e+(n<<4);if(g|0)Zpb(g)}else if(!n){n=d;return n|0}i=a+20|0;a=0;while(1){if((m-d|0)<16){d=0;c=18;break}c=i;e=d;g=c+16|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+16|0;c=f[k>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[c>>2]=f[i>>2];f[c+4>>2]=f[i+4>>2];f[c+8>>2]=f[i+8>>2];f[c+12>>2]=f[i+12>>2];f[k>>2]=(f[k>>2]|0)+16}else kC(l,i);a=a+1|0;if(a>>>0>=n>>>0){c=18;break}}if((c|0)==18)return d|0;return 0}function hC(a){a=a|0;return a+4|0}function iC(a){a=a|0;var b=0,c=0;f[a>>2]=15180;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-16-c|0)>>>4)<<4);Zpb(c);return}function jC(a){a=a|0;wf()}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>4;c=e+1|0;if(c>>>0>268435455)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>3;d=m>>4>>>0<134217727?(d>>>0<c>>>0?c:d):268435455;do if(!d){h=0;i=0}else if(d>>>0>268435455)ud();else{i=Wpb(d<<4)|0;h=i;break}while(0);c=h+(e<<4)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+16;f[l>>2]=h+(d<<4);if(!j)return;Zpb(j);return}function lC(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;mC(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function mC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>4;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{i=(f[b>>2]|0)+(a<<4)|0;h=Wpb(16)|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];f[c>>2]=h;h=sd(400,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function nC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215152;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215152)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215152,1540483477)|0)>>>24^(X(215152,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215152)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function oC(a){a=a|0;Zpb(a);return}function pC(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15204;f[b+4>>2]=f[a+4>>2];return b|0}function qC(a,b){a=a|0;b=b|0;f[b>>2]=15204;f[b+4>>2]=f[a+4>>2];return}function rC(a){a=a|0;return}function sC(a){a=a|0;Zpb(a);return}function tC(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function uC(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==64208?a+4|0:0)|0}function vC(a){a=a|0;return 1960}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function xC(a){a=a|0;var b=0,c=0;f[a>>2]=15272;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function yC(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15272;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);Zpb(a);return}function zC(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=d;if((n-c|0)<4){o=0;return o|0}o=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;m=a+4|0;j=f[m>>2]|0;l=a+8|0;c=f[l>>2]|0;e=j;if((c|0)!=(j|0)){c=c+(~(((c+-12-e|0)>>>0)/12|0)*12|0)|0;f[l>>2]=c}k=a+12|0;if((((f[k>>2]|0)-e|0)/12|0)>>>0<o>>>0){if(o>>>0>357913941)ud();c=c-e|0;e=Wpb(o*12|0)|0;g=e+(((c|0)/12|0)*12|0)|0;i=g+(((c|0)/-12|0)*12|0)|0;if((c|0)>0)Irb(i|0,j|0,c|0)|0;f[m>>2]=i;f[l>>2]=g;f[k>>2]=e+(o*12|0);if(j|0)Zpb(j)}else if(!o){o=d;return o|0}j=a+20|0;i=0;while(1){if((n-d|0)<12){d=0;c=18;break}c=j;e=d;g=c+12|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+12|0;c=f[l>>2]|0;if(c>>>0<(f[k>>2]|0)>>>0){f[c>>2]=f[j>>2];f[c+4>>2]=f[j+4>>2];f[c+8>>2]=f[j+8>>2];f[l>>2]=(f[l>>2]|0)+12}else GC(m,j);i=i+1|0;if(i>>>0>=o>>>0){c=18;break}}if((c|0)==18)return d|0;return 0}function AC(a){a=a|0;return a+4|0}function BC(a){a=a|0;var b=0,c=0;f[a>>2]=15272;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function CC(a){a=a|0;wf()}function DC(a){a=a|0;Zpb(a);return}function EC(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<12){c=0;return c|0}a=a+4|0;d=c;e=a+12|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+12|0;return c|0}function FC(a){a=a|0;return a+4|0}function GC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function HC(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;IC(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;h=(f[b+4>>2]|0)-(f[b>>2]|0)|0;d=(h|0)/12|0;e=md()|0;f[a>>2]=e;if(!h){u=g;return}a=0;do{i=(f[b>>2]|0)+(a*12|0)|0;h=Wpb(12)|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[c>>2]=h;h=sd(2048,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while(a>>>0<d>>>0);u=g;return}function JC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215153;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215153)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215153,1540483477)|0)>>>24^(X(215153,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215153)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function KC(a){a=a|0;Zpb(a);return}function LC(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15320;f[b+4>>2]=f[a+4>>2];return b|0}function MC(a,b){a=a|0;b=b|0;f[b>>2]=15320;f[b+4>>2]=f[a+4>>2];return}function NC(a){a=a|0;return}function OC(a){a=a|0;Zpb(a);return}function PC(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function QC(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==64850?a+4|0:0)|0}function RC(a){a=a|0;return 2072}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function TC(a){a=a|0;var b=0,c=0;f[a>>2]=15388;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function UC(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15388;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);Zpb(a);return}function VC(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d;if((p-c|0)<4){q=0;return q|0}q=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;o=a+4|0;j=f[o>>2]|0;n=a+8|0;c=f[n>>2]|0;g=j;if((c|0)!=(j|0)){c=c+(~(((c+-12-g|0)>>>0)/12|0)*12|0)|0;f[n>>2]=c}e=c;m=a+12|0;if((((f[m>>2]|0)-g|0)/12|0)>>>0<q>>>0){if(q>>>0>357913941)ud();i=Wpb(q*12|0)|0;e=i+(((e-g|0)/12|0)*12|0)|0;g=e;i=i+(q*12|0)|0;if((c|0)==(j|0))c=g;else{do{l=e;e=e+-12|0;k=c;c=c+-12|0;f[e>>2]=f[c>>2];f[l+-8>>2]=f[k+-8>>2];f[l+-4>>2]=f[k+-4>>2]}while((c|0)!=(j|0));c=e}f[o>>2]=c;f[n>>2]=g;f[m>>2]=i;if(j|0)Zpb(j)}if(!q){q=d;return q|0}k=a+20|0;l=a+24|0;j=a+28|0;i=0;while(1){if((p-d|0)<12){d=0;c=19;break}c=k;e=d;g=c+12|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+12|0;c=f[n>>2]|0;if(c>>>0<(f[m>>2]|0)>>>0){f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c>>2]=f[k>>2];f[c+4>>2]=f[l>>2];f[c+8>>2]=f[j>>2];f[n>>2]=(f[n>>2]|0)+12}else ZC(o,k);i=i+1|0;if(i>>>0>=q>>>0){c=19;break}}if((c|0)==19)return d|0;return 0}function WC(a){a=a|0;return a+4|0}function XC(a){a=a|0;var b=0,c=0;f[a>>2]=15388;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function YC(a){a=a|0;wf()}function ZC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c>>2]=f[b>>2];f[g+(h*12|0)+4>>2]=f[b+4>>2];f[g+(h*12|0)+8>>2]=f[b+8>>2];b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function _C(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;$C(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;h=(f[b+4>>2]|0)-(f[b>>2]|0)|0;d=(h|0)/12|0;e=md()|0;f[a>>2]=e;if(!h){u=g;return}a=0;do{i=f[b>>2]|0;h=Wpb(12)|0;f[h>>2]=f[i+(a*12|0)>>2];f[h+4>>2]=f[i+(a*12|0)+4>>2];f[h+8>>2]=f[i+(a*12|0)+8>>2];f[c>>2]=h;h=sd(1152,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while(a>>>0<d>>>0);u=g;return}function aD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215154;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215154)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215154,1540483477)|0)>>>24^(X(215154,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215154)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function bD(a){a=a|0;return}function cD(a){a=a|0;Zpb(a);return}function dD(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15412;f[b+4>>2]=f[a+4>>2];return b|0}function eD(a,b){a=a|0;b=b|0;f[b>>2]=15412;f[b+4>>2]=f[a+4>>2];return}function fD(a){a=a|0;return}function gD(a){a=a|0;Zpb(a);return}function hD(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function iD(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65391?a+4|0:0)|0}function jD(a){a=a|0;return 2128}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function lD(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;tz(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function mD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215155;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215155)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215155,1540483477)|0)>>>24^(X(215155,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215155)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function nD(a){a=a|0;Zpb(a);return}function oD(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15456;f[b+4>>2]=f[a+4>>2];return b|0}function pD(a,b){a=a|0;b=b|0;f[b>>2]=15456;f[b+4>>2]=f[a+4>>2];return}function qD(a){a=a|0;return}function rD(a){a=a|0;Zpb(a);return}function sD(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function tD(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65697?a+4|0:0)|0}function uD(a){a=a|0;return 2152}function vD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function wD(a){a=a|0;var b=0,c=0;f[a>>2]=15524;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function xD(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15524;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Zpb(a);return}function yD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;i=p;o=d;if((o-c|0)<4){o=0;u=p;return o|0}j=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;m=a+4|0;g=f[m>>2]|0;n=a+8|0;c=f[n>>2]|0;e=g;if((c|0)!=(g|0)){c=c+(~((c+-4-e|0)>>>2)<<2)|0;f[n>>2]=c}if(!j){o=d;u=p;return o|0}l=a+12|0;if((f[l>>2]|0)-e>>2>>>0<j>>>0){if(j>>>0>1073741823)ud();c=c-e|0;e=Wpb(j<<2)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[m>>2]=e;f[n>>2]=e+(c>>2<<2);f[l>>2]=e+(j<<2);if(g|0)Zpb(g)}f[i>>2]=14088;k=i+4|0;c=j;do{if((o-d|0)<4){d=0;break}i=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[k>>2]=i;e=d+4|0;if((o-e|0)<1){d=0;break}a=(b[e>>0]|0)==0;g=d+5|0;c=c+-1|0;e=f[n>>2]|0;if((e|0)==(f[l>>2]|0))BD(m,k);else{f[e>>2]=i;f[n>>2]=e+4}if(a)d=g;else{if((o-g|0)<4){d=0;break}e=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=d+9|0;if(c>>>0<e>>>0){d=0;break}c=c-e|0;if(e)do{e=e+-1|0;a=(f[k>>2]|0)+1|0;f[k>>2]=a;g=f[n>>2]|0;if((g|0)==(f[l>>2]|0))BD(m,k);else{f[g>>2]=a;f[n>>2]=g+4}}while((e|0)!=0)}}while((c|0)!=0);o=d;u=p;return o|0}function zD(a){a=a|0;return a+4|0}function AD(a){a=a|0;wf()}function BD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function CD(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;DD(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function DD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{f[c>>2]=f[(f[b>>2]|0)+(a<<2)>>2];h=sd(13536,c|0)|0;f[c>>2]=a;i=sd(13536,c|0)|0;rd(e|0,i|0,h|0);ed(i|0);ed(h|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function ED(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215156;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215156)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215156,1540483477)|0)>>>24^(X(215156,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215156)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function FD(a){a=a|0;Zpb(a);return}function GD(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15548;f[b+4>>2]=f[a+4>>2];return b|0}function HD(a,b){a=a|0;b=b|0;f[b>>2]=15548;f[b+4>>2]=f[a+4>>2];return}function ID(a){a=a|0;return}function JD(a){a=a|0;Zpb(a);return}function KD(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function LD(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==66115?a+4|0:0)|0}function MD(a){a=a|0;return 2224}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function OD(a){a=a|0;var b=0;f[a>>2]=15616;b=f[a+4>>2]|0;if(!b)return;a=a+8|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function PD(a){a=a|0;var b=0,c=0;f[a>>2]=15616;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b);Zpb(a);return}function QD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=d;if((p-c|0)<4){r=0;return r|0}q=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;r=a+4|0;g=f[r>>2]|0;o=a+8|0;c=f[o>>2]|0;e=g;if((c|0)!=(g|0)){f[o>>2]=g;c=e}n=a+12|0;if(((f[n>>2]|0)-e|0)>>>0<q>>>0){c=c-e|0;e=Wpb(q)|0;if((c|0)>0)Irb(e|0,g|0,c|0)|0;f[r>>2]=e;f[o>>2]=e+c;f[n>>2]=e+q;if(g|0)Zpb(g)}else if(!q){r=d;return r|0}m=a+20|0;k=0;while(1){if((p-d|0)<1){d=0;c=23;break}l=b[d>>0]|0;b[m>>0]=l;d=d+1|0;c=f[o>>2]|0;j=f[n>>2]|0;e=j;if(c>>>0<j>>>0){b[c>>0]=l;f[o>>2]=(f[o>>2]|0)+1}else{j=f[r>>2]|0;a=c-j|0;c=a+1|0;i=j;if((c|0)<0){c=15;break}e=e-j|0;g=e<<1;c=e>>>0<1073741823?(g>>>0<c>>>0?c:g):2147483647;if(!c)g=0;else g=Wpb(c)|0;e=g+a|0;b[e>>0]=l;if((a|0)>0)Irb(g|0,i|0,a|0)|0;f[r>>2]=g;f[o>>2]=e+1;f[n>>2]=g+c;if(j|0)Zpb(i)}k=k+1|0;if(k>>>0>=q>>>0){c=23;break}}if((c|0)==15)fob(r);else if((c|0)==23)return d|0;return 0}function RD(a){a=a|0;return a+4|0}function SD(a){a=a|0;var b=0;f[a>>2]=15616;b=f[a+4>>2]|0;if(!b)return;a=a+8|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function TD(a){a=a|0;wf()}function UD(a){a=a|0;Zpb(a);return}function VD(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function WD(a){a=a|0;return a+4|0}function XD(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;YD(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function YD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0;g=u;u=u+16|0;c=g;d=(f[b+4>>2]|0)-(f[b>>2]|0)|0;e=md()|0;f[a>>2]=e;if(!d){u=g;return}a=0;do{f[c>>2]=h[(f[b>>2]|0)+a>>0];i=sd(13496,c|0)|0;f[c>>2]=a;j=sd(13536,c|0)|0;rd(e|0,j|0,i|0);ed(j|0);ed(i|0);a=a+1|0}while((a|0)!=(d|0));u=g;return}function ZD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215157;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215157)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215157,1540483477)|0)>>>24^(X(215157,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215157)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function _D(a){a=a|0;Zpb(a);return}function $D(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15664;f[b+4>>2]=f[a+4>>2];return b|0}function aE(a,b){a=a|0;b=b|0;f[b>>2]=15664;f[b+4>>2]=f[a+4>>2];return}function bE(a){a=a|0;return}function cE(a){a=a|0;Zpb(a);return}function dE(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function eE(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==66603?a+4|0:0)|0}function fE(a){a=a|0;return 2328}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function hE(a){a=a|0;Zpb(a);return}function iE(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function jE(a){a=a|0;return a+4|0}function kE(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(2384,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function lE(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215158;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215158)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215158,1540483477)|0)>>>24^(X(215158,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215158)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function mE(a){a=a|0;Zpb(a);return}function nE(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15732;f[b+4>>2]=f[a+4>>2];return b|0}function oE(a,b){a=a|0;b=b|0;f[b>>2]=15732;f[b+4>>2]=f[a+4>>2];return}function pE(a){a=a|0;return}function qE(a){a=a|0;Zpb(a);return}function rE(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function sE(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==67117?a+4|0:0)|0}function tE(a){a=a|0;return 2408}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function vE(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15776;f[a+36>>2]=14832;b=f[a+40>>2]|0;if(b|0){c=a+44|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=15800;d=f[a+8>>2]|0;if(!d)return;b=a+12|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function wE(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15776;f[a+36>>2]=14832;b=f[a+40>>2]|0;if(b|0){c=a+44|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=15800;b=f[a+8>>2]|0;if(!b){Zpb(a);return}c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);Zpb(a);return}function xE(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;e=a+36|0;g=d;if((g-c|0)<1){i=0;return i|0}i=b[c>>0]|0;c=Qg[f[(f[e>>2]|0)+8>>2]&127](e,c+1|0,d)|0;if(!c){i=0;return i|0}if((g-c|0)<8){i=0;return i|0}d=c+8|0;if((g-d|0)<8){i=0;return i|0}j=c;k=j;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;g=d;e=g;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;g=g+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a+4>>0]=i;i=a+8|0;d=a+40|0;l=f[i>>2]|0;f[i>>2]=f[d>>2];f[d>>2]=l;d=a+12|0;l=a+44|0;i=f[d>>2]|0;f[d>>2]=f[l>>2];f[l>>2]=i;l=a+16|0;i=a+48|0;d=f[l>>2]|0;f[l>>2]=f[i>>2];f[i>>2]=d;i=a+20|0;f[i>>2]=k;f[i+4>>2]=j;i=a+28|0;f[i>>2]=e;f[i+4>>2]=g;i=c+16|0;return i|0}function yE(a){a=a|0;return a+4|0}function zE(a){a=a|0;var b=0,c=0;f[a>>2]=15800;c=f[a+8>>2]|0;if(!c)return;a=a+12|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c);return}function AE(a){a=a|0;wf()}function BE(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;CE(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function CE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;j=l;k=od()|0;f[a>>2]=k;g=nd(67366)|0;f[j>>2]=h[b>>0];i=sd(2448,j|0)|0;rd(k|0,g|0,i|0);ed(i|0);ed(g|0);g=b+4|0;i=md()|0;c=f[g>>2]|0;e=(f[b+8>>2]|0)-c>>3;a:do if(e|0){d=0;a=0;while(1){f[j>>2]=d;m=sd(13536,j|0)|0;f[j>>2]=f[c+(a<<3)>>2];n=sd(13536,j|0)|0;rd(i|0,m|0,n|0);ed(n|0);ed(m|0);f[j>>2]=d|1;m=sd(13536,j|0)|0;f[j>>2]=f[c+(a<<3)+4>>2];c=sd(13536,j|0)|0;rd(i|0,m|0,c|0);ed(c|0);ed(m|0);a=a+1|0;if((a|0)==(e|0))break a;d=d+2|0;c=f[g>>2]|0}}while(0);n=nd(67371)|0;rd(k|0,n|0,i|0);ed(n|0);ed(i|0);DE(j,b+16|0);n=nd(67383)|0;m=f[j>>2]|0;rd(k|0,n|0,m|0);ed(n|0);ed(m|0);EE(j,b+24|0);m=nd(67394)|0;n=f[j>>2]|0;rd(k|0,m|0,n|0);ed(m|0);ed(n|0);u=l;return}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=md()|0;f[a>>2]=d;f[e>>2]=0;a=sd(13528,e|0)|0;f[e>>2]=f[b>>2];g=sd(13536,e|0)|0;rd(d|0,a|0,g|0);ed(g|0);ed(a|0);f[e>>2]=1;a=sd(13528,e|0)|0;f[e>>2]=f[b+4>>2];b=sd(13536,e|0)|0;rd(d|0,a|0,b|0);ed(b|0);ed(a|0);u=c;return}function EE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=md()|0;f[a>>2]=d;f[e>>2]=0;a=sd(13528,e|0)|0;f[e>>2]=f[b>>2];g=sd(13536,e|0)|0;rd(d|0,a|0,g|0);ed(g|0);ed(a|0);f[e>>2]=1;a=sd(13528,e|0)|0;f[e>>2]=f[b+4>>2];b=sd(13536,e|0)|0;rd(d|0,a|0,b|0);ed(b|0);ed(a|0);u=c;return}function FE(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215159;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215159)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215159,1540483477)|0)>>>24^(X(215159,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215159)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function GE(a){a=a|0;Zpb(a);return}function HE(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15824;f[b+4>>2]=f[a+4>>2];return b|0}function IE(a,b){a=a|0;b=b|0;f[b>>2]=15824;f[b+4>>2]=f[a+4>>2];return}function JE(a){a=a|0;return}function KE(a){a=a|0;Zpb(a);return}function LE(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function ME(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==67622?a+4|0:0)|0}function NE(a){a=a|0;return 2472}function OE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function PE(a){a=a|0;Zpb(a);return}function QE(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function RE(a){a=a|0;return a+4|0}function SE(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(2528,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function TE(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215160;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215160)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215160,1540483477)|0)>>>24^(X(215160,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215160)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function UE(a){a=a|0;Zpb(a);return}function VE(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15892;f[b+4>>2]=f[a+4>>2];return b|0}function WE(a,b){a=a|0;b=b|0;f[b>>2]=15892;f[b+4>>2]=f[a+4>>2];return}function XE(a){a=a|0;return}function YE(a){a=a|0;Zpb(a);return}function ZE(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function _E(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==68158?a+4|0:0)|0}function $E(a){a=a|0;return 2552}function aF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function bF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15936;f[a+72>>2]=14832;b=f[a+76>>2]|0;if(b|0){c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a+56>>2]=14832;b=f[a+60>>2]|0;if(b|0){c=a+64|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a+40>>2]=14832;b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=15960;b=f[a+28>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function cF(a){a=a|0;bF(a);Zpb(a);return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=a+40|0;d=a+56|0;e=a+72|0;b=Qg[f[(f[g>>2]|0)+8>>2]&127](g,b,c)|0;if(!b){g=0;return g|0}b=Qg[f[(f[d>>2]|0)+8>>2]&127](d,b,c)|0;if(!b){g=0;return g|0}b=Qg[f[(f[e>>2]|0)+8>>2]&127](e,b,c)|0;if(!b){g=0;return g|0}g=a+4|0;c=a+44|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+8|0;e=a+48|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+12|0;g=a+52|0;c=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=c;g=a+16|0;c=a+60|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+20|0;e=a+64|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+24|0;g=a+68|0;c=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=c;g=a+28|0;c=a+76|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+32|0;e=a+80|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+36|0;g=a+84|0;a=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=a;g=b;return g|0}function eF(a){a=a|0;return a+4|0}function fF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=15960;b=f[a+28>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function gF(a){a=a|0;wf()}function hF(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;iF(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function iF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;i=k;j=od()|0;f[a>>2]=j;e=md()|0;c=f[b>>2]|0;g=(f[b+4>>2]|0)-c>>3;a:do if(g|0){a=0;d=0;while(1){f[i>>2]=d;h=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];l=sd(13536,i|0)|0;rd(e|0,h|0,l|0);ed(l|0);ed(h|0);f[i>>2]=d|1;h=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];c=sd(13536,i|0)|0;rd(e|0,h|0,c|0);ed(c|0);ed(h|0);a=a+1|0;if((a|0)==(g|0))break a;d=d+2|0;c=f[b>>2]|0}}while(0);g=nd(68428)|0;rd(j|0,g|0,e|0);ed(g|0);ed(e|0);e=b+12|0;g=md()|0;c=f[e>>2]|0;h=(f[b+16>>2]|0)-c>>3;b:do if(h|0){a=0;d=0;while(1){f[i>>2]=d;l=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];m=sd(13536,i|0)|0;rd(g|0,l|0,m|0);ed(m|0);ed(l|0);f[i>>2]=d|1;l=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];c=sd(13536,i|0)|0;rd(g|0,l|0,c|0);ed(c|0);ed(l|0);a=a+1|0;if((a|0)==(h|0))break b;d=d+2|0;c=f[e>>2]|0}}while(0);h=nd(68447)|0;rd(j|0,h|0,g|0);ed(h|0);ed(g|0);g=b+24|0;h=md()|0;c=f[g>>2]|0;e=(f[b+28>>2]|0)-c>>3;if(!e){m=nd(68460)|0;rd(j|0,m|0,h|0);ed(m|0);ed(h|0);u=k;return}d=0;a=0;while(1){f[i>>2]=d;m=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];l=sd(13536,i|0)|0;rd(h|0,m|0,l|0);ed(l|0);ed(m|0);f[i>>2]=d|1;m=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];l=sd(13536,i|0)|0;rd(h|0,m|0,l|0);ed(l|0);ed(m|0);a=a+1|0;if((a|0)==(e|0))break;d=d+2|0;c=f[g>>2]|0}m=nd(68460)|0;rd(j|0,m|0,h|0);ed(m|0);ed(h|0);u=k;return}function jF(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215161;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215161)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215161,1540483477)|0)>>>24^(X(215161,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215161)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function kF(a){a=a|0;Zpb(a);return}function lF(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=15984;f[b+4>>2]=f[a+4>>2];return b|0}function mF(a,b){a=a|0;b=b|0;f[b>>2]=15984;f[b+4>>2]=f[a+4>>2];return}function nF(a){a=a|0;return}function oF(a){a=a|0;Zpb(a);return}function pF(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function qF(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==68665?a+4|0:0)|0}function rF(a){a=a|0;return 2608}function sF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function tF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16028;f[a+72>>2]=14948;b=f[a+76>>2]|0;if(b|0){c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a+56>>2]=14948;b=f[a+60>>2]|0;if(b|0){c=a+64|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a+40>>2]=14948;b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=16052;b=f[a+28>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function uF(a){a=a|0;tF(a);Zpb(a);return}function vF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=a+40|0;d=a+56|0;e=a+72|0;b=Qg[f[(f[g>>2]|0)+8>>2]&127](g,b,c)|0;if(!b){g=0;return g|0}b=Qg[f[(f[d>>2]|0)+8>>2]&127](d,b,c)|0;if(!b){g=0;return g|0}b=Qg[f[(f[e>>2]|0)+8>>2]&127](e,b,c)|0;if(!b){g=0;return g|0}g=a+4|0;c=a+44|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+8|0;e=a+48|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+12|0;g=a+52|0;c=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=c;g=a+16|0;c=a+60|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+20|0;e=a+64|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+24|0;g=a+68|0;c=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=c;g=a+28|0;c=a+76|0;e=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=e;c=a+32|0;e=a+80|0;g=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=g;e=a+36|0;g=a+84|0;a=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=a;g=b;return g|0}function wF(a){a=a|0;return a+4|0}function xF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16052;b=f[a+28>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function yF(a){a=a|0;wf()}function zF(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;AF(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function AF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;i=k;j=od()|0;f[a>>2]=j;e=md()|0;c=f[b>>2]|0;g=(f[b+4>>2]|0)-c>>3;a:do if(g|0){a=0;d=0;while(1){f[i>>2]=d;h=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];l=sd(13536,i|0)|0;rd(e|0,h|0,l|0);ed(l|0);ed(h|0);f[i>>2]=d|1;h=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];c=sd(13536,i|0)|0;rd(e|0,h|0,c|0);ed(c|0);ed(h|0);a=a+1|0;if((a|0)==(g|0))break a;d=d+2|0;c=f[b>>2]|0}}while(0);g=nd(68428)|0;rd(j|0,g|0,e|0);ed(g|0);ed(e|0);e=b+12|0;g=md()|0;c=f[e>>2]|0;h=(f[b+16>>2]|0)-c>>3;b:do if(h|0){a=0;d=0;while(1){f[i>>2]=d;l=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];m=sd(13536,i|0)|0;rd(g|0,l|0,m|0);ed(m|0);ed(l|0);f[i>>2]=d|1;l=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];c=sd(13536,i|0)|0;rd(g|0,l|0,c|0);ed(c|0);ed(l|0);a=a+1|0;if((a|0)==(h|0))break b;d=d+2|0;c=f[e>>2]|0}}while(0);h=nd(68447)|0;rd(j|0,h|0,g|0);ed(h|0);ed(g|0);g=b+24|0;h=md()|0;c=f[g>>2]|0;e=(f[b+28>>2]|0)-c>>3;if(!e){m=nd(68460)|0;rd(j|0,m|0,h|0);ed(m|0);ed(h|0);u=k;return}d=0;a=0;while(1){f[i>>2]=d;m=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)>>2];l=sd(13536,i|0)|0;rd(h|0,m|0,l|0);ed(l|0);ed(m|0);f[i>>2]=d|1;m=sd(13536,i|0)|0;f[i>>2]=f[c+(a<<3)+4>>2];l=sd(13536,i|0)|0;rd(h|0,m|0,l|0);ed(l|0);ed(m|0);a=a+1|0;if((a|0)==(e|0))break;d=d+2|0;c=f[g>>2]|0}m=nd(68460)|0;rd(j|0,m|0,h|0);ed(m|0);ed(h|0);u=k;return}function BF(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215162;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215162)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215162,1540483477)|0)>>>24^(X(215162,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215162)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function CF(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;e=a+4|0;b=f[e>>2]|0;g=f[a>>2]|0;h=g+4|0;if((b|0)!=((f[h>>2]|0)-(f[g>>2]|0)>>2|0)){h=b;g=f[g>>2]|0;h=g+(h<<2)|0;h=f[h>>2]|0;u=i;return h|0}b=Wpb(288)|0;Krb(b|0,0,288)|0;n[b+64>>2]=1.0;c=b+68|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[b+84>>2]=1.0;c=b+88|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[b+104>>2]=1.0;c=b+108|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[b+124>>2]=1.0;c=b+128|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[b>>2]=16120;f[b+148>>2]=0;f[b+152>>2]=0;f[b+156>>2]=0;f[b+144>>2]=14156;f[b+160>>2]=13812;f[b+172>>2]=0;f[b+176>>2]=0;f[b+180>>2]=0;f[b+168>>2]=16168;f[b+184>>2]=16216;f[b+196>>2]=0;f[b+200>>2]=0;f[b+204>>2]=0;f[b+192>>2]=16240;f[b+208>>2]=16288;f[b+228>>2]=0;f[b+232>>2]=0;f[b+236>>2]=0;f[b+224>>2]=16240;f[b+240>>2]=16288;f[b+260>>2]=0;f[b+264>>2]=0;f[b+268>>2]=0;f[b+256>>2]=16240;f[b+272>>2]=16288;f[d>>2]=b;c=f[h>>2]|0;if(c>>>0<(f[g+8>>2]|0)>>>0){f[c>>2]=b;f[h>>2]=c+4}else LF(g,d);g=f[a>>2]|0;h=f[e>>2]|0;g=f[g>>2]|0;h=g+(h<<2)|0;h=f[h>>2]|0;u=i;return h|0}function DF(a){a=a|0;Zpb(a);return}function EF(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16076;f[b+4>>2]=f[a+4>>2];return b|0}function FF(a,b){a=a|0;b=b|0;f[b>>2]=16076;f[b+4>>2]=f[a+4>>2];return}function GF(a){a=a|0;return}function HF(a){a=a|0;Zpb(a);return}function IF(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function JF(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==69101?a+4|0:0)|0}function KF(a){a=a|0;return 2664}function LF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function MF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16120;f[a+256>>2]=16264;b=f[a+260>>2]|0;if(b|0){c=a+264|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a+224>>2]=16264;b=f[a+228>>2]|0;if(b|0){c=a+232|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a+192>>2]=16264;b=f[a+196>>2]|0;if(b|0){c=a+200|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a+168>>2]=16192;d=f[a+172>>2]|0;if(d|0){b=a+176|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-2-d|0)>>>1)<<1);Zpb(d)}f[a+144>>2]=14180;b=f[a+148>>2]|0;if(!b){f[a>>2]=16144;a=a+4|0;SF(a);return}c=a+152|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);f[a>>2]=16144;a=a+4|0;SF(a);return}function NF(a){a=a|0;MF(a);Zpb(a);return}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=a+144|0;d=a+168|0;e=a+192|0;g=a+224|0;i=a+256|0;b=Qg[f[(f[y>>2]|0)+8>>2]&127](y,b,c)|0;if(!b){a=0;return a|0}b=Qg[f[(f[d>>2]|0)+8>>2]&127](d,b,c)|0;if(!b){a=0;return a|0}b=Qg[f[(f[e>>2]|0)+8>>2]&127](e,b,c)|0;if(!b){a=0;return a|0}b=Qg[f[(f[g>>2]|0)+8>>2]&127](g,b,c)|0;if(!b){a=0;return a|0}y=Qg[f[(f[i>>2]|0)+8>>2]&127](i,b,c)|0;if(!y){a=0;return a|0}if((c-y|0)<64){a=0;return a|0}s=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;t=y+4|0;t=h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24;u=y+8|0;u=h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24;v=y+12|0;v=h[v>>0]|h[v+1>>0]<<8|h[v+2>>0]<<16|h[v+3>>0]<<24;w=y+16|0;w=h[w>>0]|h[w+1>>0]<<8|h[w+2>>0]<<16|h[w+3>>0]<<24;x=y+20|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;i=y+24|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=y+28|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;k=y+32|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;l=y+36|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;m=y+40|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;n=y+44|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;o=y+48|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;p=y+52|0;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=y+56|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;r=y+60|0;r=h[r>>0]|h[r+1>>0]<<8|h[r+2>>0]<<16|h[r+3>>0]<<24;b=y+64|0;if((c-b|0)<4){a=0;return a|0}g=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;b=y+68|0;if((c-b|0)<4){a=0;return a|0}b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;d=y+72|0;if((c-d|0)<4){a=0;return a|0}e=y+76|0;if((c-e|0)<4){a=0;return a|0}d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;c=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=a+4|0;z=a+148|0;A=f[e>>2]|0;f[e>>2]=f[z>>2];f[z>>2]=A;z=a+8|0;A=a+152|0;e=f[z>>2]|0;f[z>>2]=f[A>>2];f[A>>2]=e;A=a+12|0;e=a+156|0;z=f[A>>2]|0;f[A>>2]=f[e>>2];f[e>>2]=z;e=a+16|0;z=a+172|0;A=f[e>>2]|0;f[e>>2]=f[z>>2];f[z>>2]=A;z=a+20|0;A=a+176|0;e=f[z>>2]|0;f[z>>2]=f[A>>2];f[A>>2]=e;A=a+24|0;e=a+180|0;z=f[A>>2]|0;f[A>>2]=f[e>>2];f[e>>2]=z;e=a+28|0;z=a+196|0;A=f[e>>2]|0;f[e>>2]=f[z>>2];f[z>>2]=A;z=a+32|0;A=a+200|0;e=f[z>>2]|0;f[z>>2]=f[A>>2];f[A>>2]=e;A=a+36|0;e=a+204|0;z=f[A>>2]|0;f[A>>2]=f[e>>2];f[e>>2]=z;e=a+40|0;z=a+228|0;A=f[e>>2]|0;f[e>>2]=f[z>>2];f[z>>2]=A;z=a+44|0;A=a+232|0;e=f[z>>2]|0;f[z>>2]=f[A>>2];f[A>>2]=e;A=a+48|0;e=a+236|0;z=f[A>>2]|0;f[A>>2]=f[e>>2];f[e>>2]=z;e=a+52|0;z=a+260|0;A=f[e>>2]|0;f[e>>2]=f[z>>2];f[z>>2]=A;z=a+56|0;A=a+264|0;e=f[z>>2]|0;f[z>>2]=f[A>>2];f[A>>2]=e;A=a+60|0;e=a+268|0;z=f[A>>2]|0;f[A>>2]=f[e>>2];f[e>>2]=z;f[a+64>>2]=s;f[a+68>>2]=t;f[a+72>>2]=u;f[a+76>>2]=v;f[a+80>>2]=w;f[a+84>>2]=x;f[a+88>>2]=i;f[a+92>>2]=j;f[a+96>>2]=k;f[a+100>>2]=l;f[a+104>>2]=m;f[a+108>>2]=n;f[a+112>>2]=o;f[a+116>>2]=p;f[a+120>>2]=q;f[a+124>>2]=r;f[a+128>>2]=g;f[a+132>>2]=b;f[a+136>>2]=d;f[a+140>>2]=c;a=y+80|0;return a|0}function PF(a){a=a|0;return a+4|0}function QF(a){a=a|0;f[a>>2]=16144;SF(a+4|0);return}function RF(a){a=a|0;wf()}function SF(a){a=a|0;var b=0,c=0,d=0;b=f[a+48>>2]|0;if(b|0){c=a+52|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+36>>2]|0;if(b|0){c=a+40|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}d=f[a+12>>2]|0;if(d|0){b=a+16|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-2-d|0)>>>1)<<1);Zpb(d)}d=f[a>>2]|0;if(!d)return;b=a+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);return}function TF(a){a=a|0;var b=0,c=0;f[a>>2]=16192;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-2-c|0)>>>1)<<1);Zpb(c);return}function UF(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16192;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-2-b|0)>>>1)<<1);Zpb(b);Zpb(a);return}function VF(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;m=e;if((m-c|0)<4){n=0;return n|0}n=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=c+4|0;l=a+4|0;i=f[l>>2]|0;k=a+8|0;c=f[k>>2]|0;g=i;if((c|0)!=(i|0)){c=c+(~((c+-2-g|0)>>>1)<<1)|0;f[k>>2]=c}j=a+12|0;if((f[j>>2]|0)-g>>1>>>0<n>>>0){if((n|0)<0)ud();c=c-g|0;g=Wpb(n<<1)|0;if((c|0)>0)Irb(g|0,i|0,c|0)|0;f[l>>2]=g;f[k>>2]=g+(c>>1<<1);f[j>>2]=g+(n<<1);if(i|0)Zpb(i)}else if(!n){n=e;return n|0}a=a+20|0;g=0;while(1){if((m-e|0)<2){e=0;c=18;break}i=h[e>>0]|h[e+1>>0]<<8;b[a>>0]=i;b[a+1>>0]=i>>8;e=e+2|0;c=f[k>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){d[c>>1]=i;f[k>>2]=c+2}else aG(l,a);g=g+1|0;if(g>>>0>=n>>>0){c=18;break}}if((c|0)==18)return e|0;return 0}function WF(a){a=a|0;return a+4|0}function XF(a){a=a|0;var b=0,c=0;f[a>>2]=16192;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-2-c|0)>>>1)<<1);Zpb(c);return}function YF(a){a=a|0;wf()}function ZF(a){a=a|0;Zpb(a);return}function _F(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<2){d=0;return d|0}d=a+4|0;a=h[c>>0]|h[c+1>>0]<<8;b[d>>0]=a;b[d+1>>0]=a>>8;d=c+2|0;return d|0}function $F(a){a=a|0;return a+4|0}function aG(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+4|0;k=f[a>>2]|0;l=(f[h>>2]|0)-k|0;g=l>>1;c=g+1|0;if((l|0)<-2)fob(a);m=a+8|0;e=(f[m>>2]|0)-k|0;e=e>>1>>>0<1073741823?(e>>>0<c>>>0?c:e):2147483647;do if(!e){i=0;j=0}else if((e|0)<0)ud();else{j=Wpb(e<<1)|0;i=j;break}while(0);c=i+(g<<1)|0;d[c>>1]=d[b>>1]|0;if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=i;f[h>>2]=c+2;f[m>>2]=i+(e<<1);if(!k)return;Zpb(k);return}function bG(a){a=a|0;var b=0,c=0;f[a>>2]=16264;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function cG(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16264;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);Zpb(a);return}function dG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=d;if((n-c|0)<4){o=0;return o|0}o=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;d=c+4|0;m=a+4|0;j=f[m>>2]|0;l=a+8|0;c=f[l>>2]|0;e=j;if((c|0)!=(j|0)){c=c+(~(((c+-12-e|0)>>>0)/12|0)*12|0)|0;f[l>>2]=c}k=a+12|0;if((((f[k>>2]|0)-e|0)/12|0)>>>0<o>>>0){if(o>>>0>357913941)ud();c=c-e|0;e=Wpb(o*12|0)|0;g=e+(((c|0)/12|0)*12|0)|0;i=g+(((c|0)/-12|0)*12|0)|0;if((c|0)>0)Irb(i|0,j|0,c|0)|0;f[m>>2]=i;f[l>>2]=g;f[k>>2]=e+(o*12|0);if(j|0)Zpb(j)}else if(!o){o=d;return o|0}j=a+20|0;i=0;while(1){if((n-d|0)<12){d=0;c=18;break}c=j;e=d;g=c+12|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));d=d+12|0;c=f[l>>2]|0;if(c>>>0<(f[k>>2]|0)>>>0){f[c>>2]=f[j>>2];f[c+4>>2]=f[j+4>>2];f[c+8>>2]=f[j+8>>2];f[l>>2]=(f[l>>2]|0)+12}else kG(m,j);i=i+1|0;if(i>>>0>=o>>>0){c=18;break}}if((c|0)==18)return d|0;return 0}function eG(a){a=a|0;return a+4|0}function fG(a){a=a|0;var b=0,c=0;f[a>>2]=16264;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function gG(a){a=a|0;wf()}function hG(a){a=a|0;Zpb(a);return}function iG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<12){c=0;return c|0}a=a+4|0;d=c;e=a+12|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+12|0;return c|0}function jG(a){a=a|0;return a+4|0}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function lG(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;mG(c,a);ed(f[52656]|0);f[52656]=f[c>>2];f[c>>2]=0;ed(0);u=b;return}function mG(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0.0;t=u;u=u+32|0;m=t;k=t+16|0;o=od()|0;f[a>>2]=o;o=fd(69913)|0;p=fd(69926)|0;q=fd(69938)|0;r=hd(69950)|0;s=hd(69958)|0;l=hd(69966)|0;e=f[c>>2]|0;d=e>>>2;e=((f[c+4>>2]|0)-e>>2)+d|0;if(!(b[208104]|0))if(rrb(208104)|0){i=gd(3,16308)|0;f[52680]=i}i=f[52680]|0;f[m>>2]=d;f[m+8>>2]=e;v=+dd(i|0,r|0,69983,k|0,m|0);d=~~v>>>0;i=d;qd(f[k>>2]|0);jd(i|0);f[m>>2]=d;d=ld(o|0,1,16304,m|0)|0;h=f[a>>2]|0;e=nd(69974)|0;rd(h|0,e|0,d|0);ed(e|0);ed(d|0);ed(i|0);i=f[c+12>>2]|0;d=f[c+16>>2]|0;e=i;if((i|0)!=(d|0)){g=e>>>1;d=(d-e>>1)+g|0;if(!(b[208104]|0))if(rrb(208104)|0){i=gd(3,16308)|0;f[52680]=i}h=f[52680]|0;f[m>>2]=g;f[m+8>>2]=d;v=+dd(h|0,s|0,69983,k|0,m|0);h=~~v>>>0;i=h;qd(f[k>>2]|0);jd(i|0);f[m>>2]=h;h=ld(p|0,1,16304,m|0)|0;e=f[a>>2]|0;g=nd(69992)|0;rd(e|0,g|0,h|0);ed(g|0);ed(h|0);ed(i|0)}h=md()|0;i=m+8|0;g=f[c+24>>2]|0;d=f[c+28>>2]|0;e=g;if((g|0)==(d|0)){f[m>>2]=0;g=sd(13536,m|0)|0;rd(h|0,g|0,2);ed(g|0);ed(2)}else{g=e>>>2;d=(((d-e|0)/12|0)*3|0)+g|0;if(!(b[208104]|0))if(rrb(208104)|0){e=gd(3,16308)|0;f[52680]=e}e=f[52680]|0;f[m>>2]=g;f[i>>2]=d;v=+dd(e|0,l|0,69983,k|0,m|0);e=~~v>>>0;g=e;qd(f[k>>2]|0);jd(g|0);f[m>>2]=e;e=ld(q|0,1,16304,m|0)|0;f[m>>2]=0;d=sd(13536,m|0)|0;rd(h|0,d|0,e|0);ed(d|0);ed(e|0);ed(g|0)}g=f[c+36>>2]|0;d=f[c+40>>2]|0;e=g;if((g|0)==(d|0)){f[m>>2]=1;g=sd(13536,m|0)|0;rd(h|0,g|0,2);ed(g|0);ed(2)}else{g=e>>>2;d=(((d-e|0)/12|0)*3|0)+g|0;if(!(b[208104]|0))if(rrb(208104)|0){e=gd(3,16308)|0;f[52680]=e}e=f[52680]|0;f[m>>2]=g;f[i>>2]=d;v=+dd(e|0,l|0,69983,k|0,m|0);e=~~v>>>0;g=e;qd(f[k>>2]|0);jd(g|0);f[m>>2]=e;e=ld(q|0,1,16304,m|0)|0;f[m>>2]=1;d=sd(13536,m|0)|0;rd(h|0,d|0,e|0);ed(d|0);ed(e|0);ed(g|0)}g=f[c+48>>2]|0;d=f[c+52>>2]|0;e=g;if((g|0)==(d|0)){f[m>>2]=2;i=sd(13536,m|0)|0;rd(h|0,i|0,2);ed(i|0);ed(2)}else{g=e>>>2;d=(((d-e|0)/12|0)*3|0)+g|0;if(!(b[208104]|0))if(rrb(208104)|0){e=gd(3,16308)|0;f[52680]=e}e=f[52680]|0;f[m>>2]=g;f[i>>2]=d;v=+dd(e|0,l|0,69983,k|0,m|0);g=~~v>>>0;i=g;qd(f[k>>2]|0);jd(i|0);f[m>>2]=g;g=ld(q|0,1,16304,m|0)|0;f[m>>2]=2;e=sd(13536,m|0)|0;rd(h|0,e|0,g|0);ed(e|0);ed(g|0);ed(i|0)}i=f[a>>2]|0;d=nd(7e4)|0;rd(i|0,d|0,h|0);ed(d|0);ed(h|0);d=c+60|0;do if(+n[d>>2]!=1.0)j=31;else if(+n[c+64>>2]!=0.0)j=31;else if(+n[c+68>>2]!=0.0)j=31;else if(+n[c+72>>2]!=0.0)j=31;else if(+n[c+76>>2]!=0.0)j=31;else if(+n[c+80>>2]!=1.0)j=31;else if(+n[c+84>>2]!=0.0)j=31;else if(+n[c+88>>2]!=0.0)j=31;else if(+n[c+92>>2]!=0.0)j=31;else if(+n[c+96>>2]!=0.0)j=31;else if(+n[c+100>>2]!=1.0)j=31;else if(+n[c+104>>2]!=0.0)j=31;else if(+n[c+108>>2]!=0.0)j=31;else if(+n[c+112>>2]!=0.0)j=31;else{if(+n[c+116>>2]!=0.0){j=31;break}if(+n[c+120>>2]!=1.0)j=31}while(0);if((j|0)==31){d=d>>>2;e=d+16|0;if(!(b[208104]|0))if(rrb(208104)|0){j=gd(3,16308)|0;f[52680]=j}h=f[52680]|0;f[m>>2]=d;f[m+8>>2]=e;v=+dd(h|0,r|0,69983,k|0,m|0);h=~~v>>>0;j=h;qd(f[k>>2]|0);jd(j|0);f[m>>2]=h;k=ld(o|0,1,16304,m|0)|0;h=f[a>>2]|0;i=nd(70009)|0;rd(h|0,i|0,k|0);ed(i|0);ed(k|0);ed(j|0)}d=od()|0;g=c+136|0;e=f[g>>2]|0;if(!(e&2)){if(e&1|0){k=nd(70025)|0;j=nd(70050)|0;rd(d|0,k|0,j|0);ed(j|0);ed(k|0)}}else{k=nd(70025)|0;j=nd(70033)|0;rd(d|0,k|0,j|0);ed(j|0);ed(k|0)}j=(f[g>>2]|0)>>>2&1;k=nd(70060)|0;f[m>>2]=j;j=sd(13480,m|0)|0;rd(d|0,k|0,j|0);ed(j|0);ed(k|0);k=(f[g>>2]|0)>>>16&1;j=nd(70071)|0;f[m>>2]=k;k=sd(13480,m|0)|0;rd(d|0,j|0,k|0);ed(k|0);ed(j|0);j=f[a>>2]|0;k=nd(70082)|0;rd(j|0,k|0,d|0);ed(k|0);ed(d|0);k=zra(g)|0;d=f[a>>2]|0;j=nd(70090)|0;f[m>>2]=k;k=sd(13536,m|0)|0;rd(d|0,j|0,k|0);ed(k|0);ed(j|0);j=f[a>>2]|0;k=nd(70097)|0;f[m>>2]=3;d=sd(13536,m|0)|0;rd(j|0,k|0,d|0);ed(d|0);ed(k|0);k=f[g>>2]&4096|0?6:3;d=f[a>>2]|0;j=nd(70110)|0;f[m>>2]=k;k=sd(13536,m|0)|0;rd(d|0,j|0,k|0);ed(k|0);ed(j|0);j=f[g>>2]|0;k=f[a>>2]|0;d=nd(70119)|0;f[m>>2]=(j&4096|0?6:3)+(j>>>12&2);j=sd(13536,m|0)|0;rd(k|0,d|0,j|0);ed(j|0);ed(d|0);d=f[a>>2]|0;j=nd(70132)|0;f[m>>2]=f[c+124>>2];k=sd(13536,m|0)|0;rd(d|0,j|0,k|0);ed(k|0);ed(j|0);j=f[a>>2]|0;k=nd(70148)|0;f[m>>2]=f[c+128>>2];d=sd(13536,m|0)|0;rd(j|0,k|0,d|0);ed(d|0);ed(k|0);k=f[a>>2]|0;d=nd(70164)|0;f[m>>2]=f[c+132>>2];c=sd(13536,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0;if(d&8){k=f[a>>2]|0;d=nd(70181)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&16){k=f[a>>2]|0;d=nd(70193)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&32){k=f[a>>2]|0;d=nd(70201)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&64){k=f[a>>2]|0;d=nd(70213)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&128){k=f[a>>2]|0;d=nd(70225)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&256){k=f[a>>2]|0;d=nd(70233)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&512){k=f[a>>2]|0;d=nd(70245)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(d&1024){k=f[a>>2]|0;d=nd(70258)|0;f[m>>2]=1;c=sd(13480,m|0)|0;rd(k|0,d|0,c|0);ed(c|0);ed(d|0);d=f[g>>2]|0}if(!(d&2048)){ed(l|0);ed(s|0);ed(r|0);ed(q|0);ed(p|0);ed(o|0);u=t;return}c=f[a>>2]|0;a=nd(70267)|0;f[m>>2]=1;m=sd(13480,m|0)|0;rd(c|0,a|0,m|0);ed(m|0);ed(a|0);ed(l|0);ed(s|0);ed(r|0);ed(q|0);ed(p|0);ed(o|0);u=t;return}function nG(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215163;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215163)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215163,1540483477)|0)>>>24^(X(215163,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215163)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function oG(a){a=a|0;Zpb(a);return}function pG(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16328;f[b+4>>2]=f[a+4>>2];return b|0}function qG(a,b){a=a|0;b=b|0;f[b>>2]=16328;f[b+4>>2]=f[a+4>>2];return}function rG(a){a=a|0;return}function sG(a){a=a|0;Zpb(a);return}function tG(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function uG(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==70470?a+4|0:0)|0}function vG(a){a=a|0;return 2888}function wG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function xG(a){a=a|0;Zpb(a);return}function yG(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function zG(a){a=a|0;return a+4|0}function AG(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(2944,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function BG(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215164;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215164)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215164,1540483477)|0)>>>24^(X(215164,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215164)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function CG(a){a=a|0;Zpb(a);return}function DG(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16396;f[b+4>>2]=f[a+4>>2];return b|0}function EG(a,b){a=a|0;b=b|0;f[b>>2]=16396;f[b+4>>2]=f[a+4>>2];return}function FG(a){a=a|0;return}function GG(a){a=a|0;Zpb(a);return}function HG(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function IG(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==71001?a+4|0:0)|0}function JG(a){a=a|0;return 2968}function KG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function LG(a){a=a|0;Zpb(a);return}function MG(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function NG(a){a=a|0;return a+4|0}function OG(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(3024,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function PG(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215165;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215165)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215165,1540483477)|0)>>>24^(X(215165,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215165)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function QG(a){a=a|0;Zpb(a);return}function RG(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16464;f[b+4>>2]=f[a+4>>2];return b|0}function SG(a,b){a=a|0;b=b|0;f[b>>2]=16464;f[b+4>>2]=f[a+4>>2];return}function TG(a){a=a|0;return}function UG(a){a=a|0;Zpb(a);return}function VG(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function WG(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==71514?a+4|0:0)|0}function XG(a){a=a|0;return 3048}function YG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function ZG(a){a=a|0;Zpb(a);return}function _G(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<48){c=0;return c|0}a=a+8|0;d=c;e=a+48|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+48|0;return c|0}function $G(a){a=a|0;return a+8|0}function aH(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(48)|0;p[d>>3]=+p[a>>3];p[d+8>>3]=+p[a+8>>3];p[d+16>>3]=+p[a+16>>3];p[d+24>>3]=+p[a+24>>3];p[d+32>>3]=+p[a+32>>3];p[d+40>>3]=+p[a+40>>3];f[c>>2]=d;a=sd(3104,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function bH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215166;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215166)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215166,1540483477)|0)>>>24^(X(215166,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215166)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function cH(a){a=a|0;Zpb(a);return}function dH(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16532;f[b+4>>2]=f[a+4>>2];return b|0}function eH(a,b){a=a|0;b=b|0;f[b>>2]=16532;f[b+4>>2]=f[a+4>>2];return}function fH(a){a=a|0;return}function gH(a){a=a|0;Zpb(a);return}function hH(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function iH(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==71955?a+4|0:0)|0}function jH(a){a=a|0;return 3128}function kH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function lH(a){a=a|0;Zpb(a);return}function mH(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function nH(a){a=a|0;return a+4|0}function oH(a){a=a|0;var b=0,c=0;a=u;u=u+16|0;b=a;c=Wpb(1)|0;f[b>>2]=c;b=sd(3184,b|0)|0;ed(f[52656]|0);f[52656]=b;ed(0);u=a;return}function pH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215167;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215167)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215167,1540483477)|0)>>>24^(X(215167,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215167)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function qH(a){a=a|0;Zpb(a);return}function rH(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16600;f[b+4>>2]=f[a+4>>2];return b|0}function sH(a,b){a=a|0;b=b|0;f[b>>2]=16600;f[b+4>>2]=f[a+4>>2];return}function tH(a){a=a|0;return}function uH(a){a=a|0;Zpb(a);return}function vH(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function wH(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==72451?a+4|0:0)|0}function xH(a){a=a|0;return 3208}function yH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function zH(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16644;f[a+28>>2]=14948;b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=16668;d=f[a+8>>2]|0;if(!d)return;b=a+12|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function AH(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=16644;f[a+28>>2]=14948;b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}f[a>>2]=16668;b=f[a+8>>2]|0;if(!b){Zpb(a);return}c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);Zpb(a);return}function BH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;e=a+28|0;g=d;if((g-c|0)<1){i=0;return i|0}i=b[c>>0]|0;c=Qg[f[(f[e>>2]|0)+8>>2]&127](e,c+1|0,d)|0;if(!c){i=0;return i|0}if((g-c|0)<8){i=0;return i|0}g=c;e=g;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;g=g+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a+4>>0]=i;i=a+8|0;d=a+32|0;j=f[i>>2]|0;f[i>>2]=f[d>>2];f[d>>2]=j;d=a+12|0;j=a+36|0;i=f[d>>2]|0;f[d>>2]=f[j>>2];f[j>>2]=i;j=a+16|0;i=a+40|0;d=f[j>>2]|0;f[j>>2]=f[i>>2];f[i>>2]=d;i=a+20|0;f[i>>2]=e;f[i+4>>2]=g;i=c+8|0;return i|0}function CH(a){a=a|0;return a+4|0}function DH(a){a=a|0;var b=0,c=0;f[a>>2]=16668;c=f[a+8>>2]|0;if(!c)return;a=a+12|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c);return}function EH(a){a=a|0;wf()}function FH(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;GH(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;j=l;k=od()|0;f[a>>2]=k;g=nd(67366)|0;f[j>>2]=h[b>>0];i=sd(3248,j|0)|0;rd(k|0,g|0,i|0);ed(i|0);ed(g|0);g=b+4|0;i=md()|0;c=f[g>>2]|0;e=(f[b+8>>2]|0)-c>>3;a:do if(e|0){d=0;a=0;while(1){f[j>>2]=d;m=sd(13536,j|0)|0;f[j>>2]=f[c+(a<<3)>>2];n=sd(13536,j|0)|0;rd(i|0,m|0,n|0);ed(n|0);ed(m|0);f[j>>2]=d|1;m=sd(13536,j|0)|0;f[j>>2]=f[c+(a<<3)+4>>2];c=sd(13536,j|0)|0;rd(i|0,m|0,c|0);ed(c|0);ed(m|0);a=a+1|0;if((a|0)==(e|0))break a;d=d+2|0;c=f[g>>2]|0}}while(0);m=nd(72673)|0;rd(k|0,m|0,i|0);ed(m|0);ed(i|0);EE(j,b+16|0);m=nd(67394)|0;n=f[j>>2]|0;rd(k|0,m|0,n|0);ed(m|0);ed(n|0);u=l;return}function HH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215168;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215168)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215168,1540483477)|0)>>>24^(X(215168,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215168)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function IH(a){a=a|0;Zpb(a);return}function JH(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16692;f[b+4>>2]=f[a+4>>2];return b|0}function KH(a,b){a=a|0;b=b|0;f[b>>2]=16692;f[b+4>>2]=f[a+4>>2];return}function LH(a){a=a|0;return}function MH(a){a=a|0;Zpb(a);return}function NH(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function OH(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==72897?a+4|0:0)|0}function PH(a){a=a|0;return 3272}function QH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function RH(a){a=a|0;Zpb(a);return}function SH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<1){c=0;return c|0}e=c+1|0;if((d-e|0)<8){c=0;return c|0}d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[a+4>>0]=b[c>>0]|0;a=a+8|0;f[a>>2]=d;f[a+4>>2]=e;c=c+9|0;return c|0}function TH(a){a=a|0;return a+4|0}function UH(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;VH(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function VH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;f[a>>2]=d;a=nd(67366)|0;f[e>>2]=h[b>>0];g=sd(3312,e|0)|0;rd(d|0,a|0,g|0);ed(g|0);ed(a|0);DE(e,b+4|0);a=nd(73122)|0;b=f[e>>2]|0;rd(d|0,a|0,b|0);ed(a|0);ed(b|0);u=c;return}function WH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215169;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215169)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215169,1540483477)|0)>>>24^(X(215169,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215169)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function XH(a){a=a|0;Zpb(a);return}function YH(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16760;f[b+4>>2]=f[a+4>>2];return b|0}function ZH(a,b){a=a|0;b=b|0;f[b>>2]=16760;f[b+4>>2]=f[a+4>>2];return}function _H(a){a=a|0;return}function $H(a){a=a|0;Zpb(a);return}function aI(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function bI(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==73331?a+4|0:0)|0}function cI(a){a=a|0;return 3336}function dI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function eI(a){a=a|0;Zpb(a);return}function fI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<16){c=0;return c|0}a=a+8|0;d=c;e=a+16|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+16|0;return c|0}function gI(a){a=a|0;return a+8|0}function hI(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(16)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];f[c>>2]=d;a=sd(3392,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function iI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215170;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215170)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215170,1540483477)|0)>>>24^(X(215170,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215170)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function jI(a){a=a|0;Zpb(a);return}function kI(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16828;f[b+4>>2]=f[a+4>>2];return b|0}function lI(a,b){a=a|0;b=b|0;f[b>>2]=16828;f[b+4>>2]=f[a+4>>2];return}function mI(a){a=a|0;return}function nI(a){a=a|0;Zpb(a);return}function oI(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function pI(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==73791?a+4|0:0)|0}function qI(a){a=a|0;return 3416}function rI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function sI(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(24)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];f[d+16>>2]=f[a+16>>2];f[d+20>>2]=f[a+20>>2];f[c>>2]=d;a=sd(1392,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function tI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215171;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215171)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215171,1540483477)|0)>>>24^(X(215171,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215171)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function uI(a){a=a|0;Zpb(a);return}function vI(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=16872;f[b+4>>2]=f[a+4>>2];return b|0}function wI(a,b){a=a|0;b=b|0;f[b>>2]=16872;f[b+4>>2]=f[a+4>>2];return}function xI(a){a=a|0;return}function yI(a){a=a|0;Zpb(a);return}function zI(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function AI(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==74033?a+4|0:0)|0}function BI(a){a=a|0;return 3440}function CI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function DI(a){a=a|0;Zpb(a);return}function EI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,q=0,r=0,t=0,v=0;v=u;u=u+928|0;e=v+888|0;h=v+856|0;k=v+824|0;r=v+688|0;t=v;f[e>>2]=16964;f[h>>2]=16964;f[k>>2]=16964;f[r>>2]=16988;if((d-c|0)<1){t=0;u=v;return t|0}q=b[c>>0]|0;g=c+1|0;if((d-g|0)<24){t=0;u=v;return t|0}o=e+8|0;m=o;e=m+24|0;do{b[m>>0]=b[g>>0]|0;m=m+1|0;g=g+1|0}while((m|0)<(e|0));g=c+25|0;if((d-g|0)<24){t=0;u=v;return t|0}n=h+8|0;m=n;e=m+24|0;do{b[m>>0]=b[g>>0]|0;m=m+1|0;g=g+1|0}while((m|0)<(e|0));g=c+49|0;if((d-g|0)<24){t=0;u=v;return t|0}h=k+8|0;m=h;e=m+24|0;do{b[m>>0]=b[g>>0]|0;m=m+1|0;g=g+1|0}while((m|0)<(e|0));e=c+73|0;if((d-e|0)<8){t=0;u=v;return t|0}b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];l=+p[s>>3];e=c+81|0;if((d-e|0)<8){t=0;u=v;return t|0}b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];j=+p[s>>3];e=c+89|0;if((d-e|0)<8){t=0;u=v;return t|0}g=c+97|0;if((d-g|0)<128){t=0;u=v;return t|0}b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];i=+p[s>>3];d=r+8|0;m=d;e=m+128|0;do{b[m>>0]=b[g>>0]|0;m=m+1|0;g=g+1|0}while((m|0)<(e|0));fga(t,q,o,n,h,l,j,i);a=a+8|0;HI(a,t)|0;Sga(a,d);t=c+225|0;u=v;return t|0}function FI(a){a=a|0;return a+8|0}function GI(a){a=a|0;wf()}function HI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0;e=u;u=u+768|0;b[a>>0]=b[c>>0]|0;i=+p[(c+8|0)>>3];p[(c+8|0)>>3]=+p[(a+8|0)>>3];p[(a+8|0)>>3]=i;i=+p[(c+16|0)>>3];p[(c+16|0)>>3]=+p[(a+16|0)>>3];p[(a+16|0)>>3]=i;i=+p[(c+24|0)>>3];p[(c+24|0)>>3]=+p[(a+24|0)>>3];p[(a+24|0)>>3]=i;i=+p[(c+32|0)>>3];p[(c+32|0)>>3]=+p[(a+32|0)>>3];p[(a+32|0)>>3]=i;i=+p[(c+40|0)>>3];p[(c+40|0)>>3]=+p[(a+40|0)>>3];p[(a+40|0)>>3]=i;i=+p[(c+48|0)>>3];p[(c+48|0)>>3]=+p[(a+48|0)>>3];p[(a+48|0)>>3]=i;i=+p[(c+56|0)>>3];p[(c+56|0)>>3]=+p[(a+56|0)>>3];p[(a+56|0)>>3]=i;i=+p[(c+64|0)>>3];p[(c+64|0)>>3]=+p[(a+64|0)>>3];p[(a+64|0)>>3]=i;i=+p[(c+72|0)>>3];p[(c+72|0)>>3]=+p[(a+72|0)>>3];p[(a+72|0)>>3]=i;i=+p[(c+80|0)>>3];p[(c+80|0)>>3]=+p[(a+80|0)>>3];p[(a+80|0)>>3]=i;i=+p[(c+88|0)>>3];p[(c+88|0)>>3]=+p[(a+88|0)>>3];p[(a+88|0)>>3]=i;i=+p[(c+96|0)>>3];p[(c+96|0)>>3]=+p[(a+96|0)>>3];p[(a+96|0)>>3]=i;i=+p[(c+104|0)>>3];p[(c+104|0)>>3]=+p[(a+104|0)>>3];p[(a+104|0)>>3]=i;i=+p[(c+112|0)>>3];p[(c+112|0)>>3]=+p[(a+112|0)>>3];p[(a+112|0)>>3]=i;i=+p[(c+120|0)>>3];p[(c+120|0)>>3]=+p[(a+120|0)>>3];p[(a+120|0)>>3]=i;i=+p[(c+128|0)>>3];p[(c+128|0)>>3]=+p[(a+128|0)>>3];p[(a+128|0)>>3]=i;i=+p[(c+136|0)>>3];p[(c+136|0)>>3]=+p[(a+136|0)>>3];p[(a+136|0)>>3]=i;i=+p[(c+144|0)>>3];p[(c+144|0)>>3]=+p[(a+144|0)>>3];p[(a+144|0)>>3]=i;i=+p[(c+152|0)>>3];p[(c+152|0)>>3]=+p[(a+152|0)>>3];p[(a+152|0)>>3]=i;i=+p[(c+160|0)>>3];p[(c+160|0)>>3]=+p[(a+160|0)>>3];p[(a+160|0)>>3]=i;i=+p[(c+168|0)>>3];p[(c+168|0)>>3]=+p[(a+168|0)>>3];p[(a+168|0)>>3]=i;i=+p[(c+176|0)>>3];p[(c+176|0)>>3]=+p[(a+176|0)>>3];p[(a+176|0)>>3]=i;i=+p[(c+184|0)>>3];p[(c+184|0)>>3]=+p[(a+184|0)>>3];p[(a+184|0)>>3]=i;i=+p[(c+192|0)>>3];p[(c+192|0)>>3]=+p[(a+192|0)>>3];p[(a+192|0)>>3]=i;i=+p[(c+200|0)>>3];p[(c+200|0)>>3]=+p[(a+200|0)>>3];p[(a+200|0)>>3]=i;d=a+208|0;g=c+208|0;h=d+40|0;do{f[d>>2]=f[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(h|0));i=+p[(c+248|0)>>3];p[(c+248|0)>>3]=+p[(a+248|0)>>3];p[(a+248|0)>>3]=i;i=+p[(c+256|0)>>3];p[(c+256|0)>>3]=+p[(a+256|0)>>3];p[(a+256|0)>>3]=i;i=+p[(c+264|0)>>3];p[(c+264|0)>>3]=+p[(a+264|0)>>3];p[(a+264|0)>>3]=i;i=+p[(c+272|0)>>3];p[(c+272|0)>>3]=+p[(a+272|0)>>3];p[(a+272|0)>>3]=i;i=+p[(c+280|0)>>3];p[(c+280|0)>>3]=+p[(a+280|0)>>3];p[(a+280|0)>>3]=i;i=+p[(c+288|0)>>3];p[(c+288|0)>>3]=+p[(a+288|0)>>3];p[(a+288|0)>>3]=i;i=+p[(c+296|0)>>3];p[(c+296|0)>>3]=+p[(a+296|0)>>3];p[(a+296|0)>>3]=i;i=+p[(c+304|0)>>3];p[(c+304|0)>>3]=+p[(a+304|0)>>3];p[(a+304|0)>>3]=i;i=+p[(c+312|0)>>3];p[(c+312|0)>>3]=+p[(a+312|0)>>3];p[(a+312|0)>>3]=i;i=+p[(c+320|0)>>3];p[(c+320|0)>>3]=+p[(a+320|0)>>3];p[(a+320|0)>>3]=i;i=+p[(c+328|0)>>3];p[(c+328|0)>>3]=+p[(a+328|0)>>3];p[(a+328|0)>>3]=i;i=+p[(c+336|0)>>3];p[(c+336|0)>>3]=+p[(a+336|0)>>3];p[(a+336|0)>>3]=i;i=+p[(c+344|0)>>3];p[(c+344|0)>>3]=+p[(a+344|0)>>3];p[(a+344|0)>>3]=i;i=+p[(c+352|0)>>3];f[e+16>>2]=a;f[e+24>>2]=c;n[e+152>>2]=i;f[e+712>>2]=0;f[e+716>>2]=0;lJ(e);G=f[e+712>>2]|0;D=f[e+716>>2]|0;H=+n[e+716>>2];f[e+712>>2]=0;f[e+716>>2]=0;if((G|0)==6){u=e;return D|0}u=e;return 0|0;return 0}function II(a){a=a|0;Zpb(a);return}function JI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<24){c=0;return c|0}a=a+8|0;d=c;e=a+24|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+24|0;return c|0}function KI(a){a=a|0;return a+8|0}function LI(a){a=a|0;Zpb(a);return}function MI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<128){c=0;return c|0}a=a+8|0;d=c;e=a+128|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+128|0;return c|0}function NI(a){a=a|0;return a+8|0}function OI(a){a=a|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(!(b[208800]|0))if(rrb(208800)|0)jga(208112);PI(208112,a)|0;f[c>>2]=208112;c=sd(13536,c|0)|0;ed(f[52656]|0);f[52656]=c;ed(0);u=d;return}function PI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;b[a>>0]=b[c>>0]|0;p[a+8>>3]=+p[c+8>>3];p[a+16>>3]=+p[c+16>>3];p[a+24>>3]=+p[c+24>>3];p[a+32>>3]=+p[c+32>>3];p[a+40>>3]=+p[c+40>>3];p[a+48>>3]=+p[c+48>>3];p[a+56>>3]=+p[c+56>>3];p[a+64>>3]=+p[c+64>>3];p[a+72>>3]=+p[c+72>>3];p[a+80>>3]=+p[c+80>>3];p[a+88>>3]=+p[c+88>>3];p[a+96>>3]=+p[c+96>>3];p[a+104>>3]=+p[c+104>>3];p[a+112>>3]=+p[c+112>>3];p[a+120>>3]=+p[c+120>>3];p[a+128>>3]=+p[c+128>>3];p[a+136>>3]=+p[c+136>>3];p[a+144>>3]=+p[c+144>>3];p[a+152>>3]=+p[c+152>>3];p[a+160>>3]=+p[c+160>>3];p[a+168>>3]=+p[c+168>>3];p[a+176>>3]=+p[c+176>>3];p[a+184>>3]=+p[c+184>>3];p[a+192>>3]=+p[c+192>>3];p[a+200>>3]=+p[c+200>>3];d=a+208|0;e=c+208|0;g=d+40|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));p[a+248>>3]=+p[c+248>>3];p[a+256>>3]=+p[c+256>>3];p[a+264>>3]=+p[c+264>>3];p[a+272>>3]=+p[c+272>>3];p[a+280>>3]=+p[c+280>>3];p[a+288>>3]=+p[c+288>>3];p[a+296>>3]=+p[c+296>>3];p[a+304>>3]=+p[c+304>>3];p[a+312>>3]=+p[c+312>>3];p[a+320>>3]=+p[c+320>>3];p[a+328>>3]=+p[c+328>>3];p[a+336>>3]=+p[c+336>>3];p[a+344>>3]=+p[c+344>>3];p[a+352>>3]=+p[c+352>>3];p[a+360>>3]=+p[c+360>>3];p[a+368>>3]=+p[c+368>>3];p[a+376>>3]=+p[c+376>>3];p[a+384>>3]=+p[c+384>>3];p[a+392>>3]=+p[c+392>>3];p[a+400>>3]=+p[c+400>>3];p[a+408>>3]=+p[c+408>>3];p[a+416>>3]=+p[c+416>>3];p[a+424>>3]=+p[c+424>>3];p[a+432>>3]=+p[c+432>>3];p[a+440>>3]=+p[c+440>>3];p[a+448>>3]=+p[c+448>>3];p[a+456>>3]=+p[c+456>>3];p[a+464>>3]=+p[c+464>>3];p[a+472>>3]=+p[c+472>>3];p[a+480>>3]=+p[c+480>>3];p[a+488>>3]=+p[c+488>>3];p[a+496>>3]=+p[c+496>>3];p[a+504>>3]=+p[c+504>>3];p[a+512>>3]=+p[c+512>>3];p[a+520>>3]=+p[c+520>>3];p[a+528>>3]=+p[c+528>>3];p[a+536>>3]=+p[c+536>>3];p[a+544>>3]=+p[c+544>>3];p[a+552>>3]=+p[c+552>>3];p[a+560>>3]=+p[c+560>>3];p[a+568>>3]=+p[c+568>>3];p[a+576>>3]=+p[c+576>>3];p[a+584>>3]=+p[c+584>>3];p[a+592>>3]=+p[c+592>>3];p[a+600>>3]=+p[c+600>>3];p[a+608>>3]=+p[c+608>>3];p[a+616>>3]=+p[c+616>>3];p[a+624>>3]=+p[c+624>>3];f[a+632>>2]=f[c+632>>2];f[a+636>>2]=f[c+636>>2];f[a+640>>2]=f[c+640>>2];f[a+644>>2]=f[c+644>>2];f[a+648>>2]=f[c+648>>2];f[a+652>>2]=f[c+652>>2];f[a+656>>2]=f[c+656>>2];f[a+660>>2]=f[c+660>>2];f[a+664>>2]=f[c+664>>2];g=a+668|0;e=c+668|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];b[g+12>>0]=b[e+12>>0]|0;return a|0}function QI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215172;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215172)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215172,1540483477)|0)>>>24^(X(215172,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215172)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function RI(a){a=a|0;Zpb(a);return}function SI(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17012;f[b+4>>2]=f[a+4>>2];return b|0}function TI(a,b){a=a|0;b=b|0;f[b>>2]=17012;f[b+4>>2]=f[a+4>>2];return}function UI(a){a=a|0;return}function VI(a){a=a|0;Zpb(a);return}function WI(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function XI(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==74764?a+4|0:0)|0}function YI(a){a=a|0;return 3592}function ZI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function _I(a){a=a|0;Zpb(a);return}function $I(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<56){c=0;return c|0}a=a+8|0;d=c;e=a+56|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+56|0;return c|0}function aJ(a){a=a|0;return a+8|0}function bJ(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(56)|0;p[d>>3]=+p[a>>3];p[d+8>>3]=+p[a+8>>3];p[d+16>>3]=+p[a+16>>3];p[d+24>>3]=+p[a+24>>3];p[d+32>>3]=+p[a+32>>3];p[d+40>>3]=+p[a+40>>3];p[d+48>>3]=+p[a+48>>3];f[c>>2]=d;a=sd(3648,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function cJ(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215173;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215173)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215173,1540483477)|0)>>>24^(X(215173,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215173)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function dJ(a){a=a|0;Zpb(a);return}function eJ(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17080;f[b+4>>2]=f[a+4>>2];return b|0}function fJ(a,b){a=a|0;b=b|0;f[b>>2]=17080;f[b+4>>2]=f[a+4>>2];return}function gJ(a){a=a|0;return}function hJ(a){a=a|0;Zpb(a);return}function iJ(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function jJ(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==75191?a+4|0:0)|0}function kJ(a){a=a|0;return 3672}function lJ(a){a=a|0;var c=0,d=0,e=0,g=0.0;c=f[a+16>>2]|0;d=f[a+24>>2]|0;g=+n[a+152>>2];a:{p[(d+352|0)>>3]=+p[(c+352|0)>>3];p[(c+352|0)>>3]=g;g=+p[(d+360|0)>>3];p[(d+360|0)>>3]=+p[(c+360|0)>>3];p[(c+360|0)>>3]=g;g=+p[(d+368|0)>>3];p[(d+368|0)>>3]=+p[(c+368|0)>>3];p[(c+368|0)>>3]=g;g=+p[(d+376|0)>>3];p[(d+376|0)>>3]=+p[(c+376|0)>>3];p[(c+376|0)>>3]=g;g=+p[(d+384|0)>>3];p[(d+384|0)>>3]=+p[(c+384|0)>>3];p[(c+384|0)>>3]=g;g=+p[(d+392|0)>>3];p[(d+392|0)>>3]=+p[(c+392|0)>>3];p[(c+392|0)>>3]=g;g=+p[(d+400|0)>>3];p[(d+400|0)>>3]=+p[(c+400|0)>>3];p[(c+400|0)>>3]=g;g=+p[(d+408|0)>>3];p[(d+408|0)>>3]=+p[(c+408|0)>>3];p[(c+408|0)>>3]=g;g=+p[(d+416|0)>>3];p[(d+416|0)>>3]=+p[(c+416|0)>>3];p[(c+416|0)>>3]=g;g=+p[(d+424|0)>>3];p[(d+424|0)>>3]=+p[(c+424|0)>>3];p[(c+424|0)>>3]=g;g=+p[(d+432|0)>>3];p[(d+432|0)>>3]=+p[(c+432|0)>>3];p[(c+432|0)>>3]=g;g=+p[(d+440|0)>>3];p[(d+440|0)>>3]=+p[(c+440|0)>>3];p[(c+440|0)>>3]=g;g=+p[(d+448|0)>>3];p[(d+448|0)>>3]=+p[(c+448|0)>>3];p[(c+448|0)>>3]=g;g=+p[(d+456|0)>>3];p[(d+456|0)>>3]=+p[(c+456|0)>>3];p[(c+456|0)>>3]=g;g=+p[(d+464|0)>>3];p[(d+464|0)>>3]=+p[(c+464|0)>>3];p[(c+464|0)>>3]=g;g=+p[(d+472|0)>>3];p[(d+472|0)>>3]=+p[(c+472|0)>>3];p[(c+472|0)>>3]=g;g=+p[(d+480|0)>>3];p[(d+480|0)>>3]=+p[(c+480|0)>>3];p[(c+480|0)>>3]=g;g=+p[(d+488|0)>>3];p[(d+488|0)>>3]=+p[(c+488|0)>>3];p[(c+488|0)>>3]=g;g=+p[(d+496|0)>>3];p[(d+496|0)>>3]=+p[(c+496|0)>>3];p[(c+496|0)>>3]=g;g=+p[(d+504|0)>>3];p[(d+504|0)>>3]=+p[(c+504|0)>>3];p[(c+504|0)>>3]=g;g=+p[(d+512|0)>>3];p[(d+512|0)>>3]=+p[(c+512|0)>>3];p[(c+512|0)>>3]=g;g=+p[(d+520|0)>>3];p[(d+520|0)>>3]=+p[(c+520|0)>>3];p[(c+520|0)>>3]=g;g=+p[(d+528|0)>>3];p[(d+528|0)>>3]=+p[(c+528|0)>>3];p[(c+528|0)>>3]=g;g=+p[(d+536|0)>>3];p[(d+536|0)>>3]=+p[(c+536|0)>>3];p[(c+536|0)>>3]=g;g=+p[(d+544|0)>>3];p[(d+544|0)>>3]=+p[(c+544|0)>>3];p[(c+544|0)>>3]=g;g=+p[(d+552|0)>>3];p[(d+552|0)>>3]=+p[(c+552|0)>>3];p[(c+552|0)>>3]=g;g=+p[(d+560|0)>>3];p[(d+560|0)>>3]=+p[(c+560|0)>>3];p[(c+560|0)>>3]=g;g=+p[(d+568|0)>>3];p[(d+568|0)>>3]=+p[(c+568|0)>>3];p[(c+568|0)>>3]=g;g=+p[(d+576|0)>>3];p[(d+576|0)>>3]=+p[(c+576|0)>>3];p[(c+576|0)>>3]=g;g=+p[(d+584|0)>>3];p[(d+584|0)>>3]=+p[(c+584|0)>>3];p[(c+584|0)>>3]=g;g=+p[(d+592|0)>>3];p[(d+592|0)>>3]=+p[(c+592|0)>>3];p[(c+592|0)>>3]=g;g=+p[(d+600|0)>>3];p[(d+600|0)>>3]=+p[(c+600|0)>>3];p[(c+600|0)>>3]=g;g=+p[(d+608|0)>>3];p[(d+608|0)>>3]=+p[(c+608|0)>>3];p[(c+608|0)>>3]=g;g=+p[(d+616|0)>>3];p[(d+616|0)>>3]=+p[(c+616|0)>>3];p[(c+616|0)>>3]=g;g=+p[(d+624|0)>>3];p[(d+624|0)>>3]=+p[(c+624|0)>>3];p[(c+624|0)>>3]=g;e=f[(d+632|0)>>2]|0;f[(d+632|0)>>2]=f[(c+632|0)>>2];f[(c+632|0)>>2]=e;e=f[(d+636|0)>>2]|0;f[(d+636|0)>>2]=f[(c+636|0)>>2];f[(c+636|0)>>2]=e;e=f[(d+640|0)>>2]|0;f[(d+640|0)>>2]=f[(c+640|0)>>2];f[(c+640|0)>>2]=e;e=f[(d+644|0)>>2]|0;f[(d+644|0)>>2]=f[(c+644|0)>>2];f[(c+644|0)>>2]=e;e=f[(d+648|0)>>2]|0;f[(d+648|0)>>2]=f[(c+648|0)>>2];f[(c+648|0)>>2]=e;e=f[(d+652|0)>>2]|0;f[(d+652|0)>>2]=f[(c+652|0)>>2];f[(c+652|0)>>2]=e;e=f[(d+656|0)>>2]|0;f[(d+656|0)>>2]=f[(c+656|0)>>2];f[(c+656|0)>>2]=e;e=f[(d+660|0)>>2]|0;f[(d+660|0)>>2]=f[(c+660|0)>>2];f[(c+660|0)>>2]=e;e=f[(d+664|0)>>2]|0;f[(d+664|0)>>2]=f[(c+664|0)>>2];f[(c+664|0)>>2]=e;f[(c+668|0)>>2]=f[(d+668|0)>>2];f[(c+668|0)+4>>2]=f[(d+668|0)+4>>2];f[(c+668|0)+8>>2]=f[(d+668|0)+8>>2];b[(c+668|0)+12>>0]=b[(d+668|0)+12>>0]|0;f[a+712>>2]=6;f[a+716>>2]=c|0;break a}}
function zr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+24|0;o=n+36|0;l=n;j=n+28|0;k=n+20|0;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[g>>2]|0;f[k>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=245;b[e+1>>0]=0;__(210652,l);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,8,o)|0;e=d;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,33,j,38,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=n;return}function Ar(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+24|0;o=n+36|0;l=n;j=n+28|0;k=n+20|0;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[g>>2]|0;f[k>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=252;b[e+1>>0]=0;__(210652,l);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,8,o)|0;e=d;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,18,j,38,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=n;return}function Br(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;g=u;u=u+16|0;j=g+4|0;k=g;i=g+8|0;n=f[52664]|0;l=n-(f[52663]|0)|0;f[k>>2]=n;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;n=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;n=(f[52663]|0)+n|0;b[n>>0]=210;b[n+1>>0]=0;n=f[52664]|0;l=n-(f[52663]|0)|0;f[k>>2]=n;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,8,i)|0;n=a;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;l=(f[52663]|0)+l|0;m=l;b[m>>0]=n;b[m+1>>0]=n>>8;b[m+2>>0]=n>>16;b[m+3>>0]=n>>24;l=l+4|0;b[l>>0]=a;b[l+1>>0]=a>>8;b[l+2>>0]=a>>16;b[l+3>>0]=a>>24;l=f[52664]|0;a=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,8,i)|0;l=c;m=l;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;a=(f[52663]|0)+a|0;c=a;b[c>>0]=m;b[c+1>>0]=m>>8;b[c+2>>0]=m>>16;b[c+3>>0]=m>>24;a=a+4|0;b[a>>0]=l;b[a+1>>0]=l>>8;b[a+2>>0]=l>>16;b[a+3>>0]=l>>24;a=(f[52662]|0)+1|0;f[52662]=a;l=f[52664]|0;c=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;c=(f[52663]|0)+c|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;T_(a,35,d,12,e);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Cr(a,c,d,e,g,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=u;u=u+16|0;l=j+4|0;m=j;k=j+8|0;p=f[52664]|0;n=p-(f[52663]|0)|0;f[m>>2]=p;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+n>>0]=82;n=f[52664]|0;p=n-(f[52663]|0)|0;f[m>>2]=n;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;p=(f[52663]|0)+p|0;b[p>>0]=211;b[p+1>>0]=0;p=f[52664]|0;n=p-(f[52663]|0)|0;f[m>>2]=p;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,8,k)|0;p=a;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;n=(f[52663]|0)+n|0;o=n;b[o>>0]=p;b[o+1>>0]=p>>8;b[o+2>>0]=p>>16;b[o+3>>0]=p>>24;n=n+4|0;b[n>>0]=a;b[n+1>>0]=a>>8;b[n+2>>0]=a>>16;b[n+3>>0]=a>>24;n=f[52664]|0;a=n-(f[52663]|0)|0;f[m>>2]=n;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,8,k)|0;a=d;n=a;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;d=(f[52663]|0)+c|0;c=d;b[c>>0]=n;b[c+1>>0]=n>>8;b[c+2>>0]=n>>16;b[c+3>>0]=n>>24;d=d+4|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=f[52664]|0;a=d-(f[52663]|0)|0;f[m>>2]=d;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[m>>2]=d;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,k)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,35,g,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=j;return}f[52664]=a;u=j;return}function Dr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n+4|0;l=n;m=n+8|0;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,m)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;i=j-(f[52663]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,m)|0;i=(f[52663]|0)+i|0;b[i>>0]=213;b[i+1>>0]=0;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,8,m)|0;i=a;o=i;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(f[52663]|0)+j|0;a=j;b[a>>0]=o;b[a+1>>0]=o>>8;b[a+2>>0]=o>>16;b[a+3>>0]=o>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=f[52664]|0;i=j-(f[52663]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,m)|0;i=(f[52663]|0)+i|0;b[i>>0]=c;b[i+1>>0]=c>>8;b[i+2>>0]=c>>16;b[i+3>>0]=c>>24;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,48,m)|0;i=f[52663]|0;j=i+j|0;a=d;c=j+48|0;do{b[j>>0]=b[a>>0]|0;j=j+1|0;a=a+1|0}while((j|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;o=f[52664]|0;f[l>>2]=o;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,m)|0;o=(f[52663]|0)+(o-i)|0;b[o>>0]=a;b[o+1>>0]=a>>8;b[o+2>>0]=a>>16;b[o+3>>0]=a>>24;T_(a,35,e,38,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=n;return}f[52664]=a;u=n;return}function Er(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n+4|0;l=n;m=n+8|0;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,m)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;i=j-(f[52663]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,m)|0;i=(f[52663]|0)+i|0;b[i>>0]=212;b[i+1>>0]=0;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,8,m)|0;i=a;o=i;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(f[52663]|0)+j|0;a=j;b[a>>0]=o;b[a+1>>0]=o>>8;b[a+2>>0]=o>>16;b[a+3>>0]=o>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=f[52664]|0;i=j-(f[52663]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,m)|0;i=(f[52663]|0)+i|0;b[i>>0]=c;b[i+1>>0]=c>>8;b[i+2>>0]=c>>16;b[i+3>>0]=c>>24;i=f[52664]|0;j=i-(f[52663]|0)|0;f[l>>2]=i;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,48,m)|0;i=f[52663]|0;j=i+j|0;a=d;c=j+48|0;do{b[j>>0]=b[a>>0]|0;j=j+1|0;a=a+1|0}while((j|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;o=f[52664]|0;f[l>>2]=o;b[m>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,m)|0;o=(f[52663]|0)+(o-i)|0;b[o>>0]=a;b[o+1>>0]=a>>8;b[o+2>>0]=a>>16;b[o+3>>0]=a>>24;T_(a,35,e,38,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=n;return}f[52664]=a;u=n;return}function Fr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=218;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Gr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=254;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,12,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Hr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;i=q+32|0;j=q+20|0;k=q+36|0;o=q;n=q+28|0;l=q+24|0;f[o>>2]=a;f[o+4>>2]=c;m=o+8|0;f[m>>2]=0;p=o+12|0;f[p>>2]=0;f[o+16>>2]=0;e=f[e>>2]|0;f[n>>2]=e;jd(e|0);g=f[g>>2]|0;f[l>>2]=g;jd(g|0);g=f[52664]|0;e=g-(f[52663]|0)|0;f[j>>2]=g;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;g=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,k)|0;g=(f[52663]|0)+g|0;b[g>>0]=0;b[g+1>>0]=1;g=f[52664]|0;e=g-(f[52663]|0)|0;f[j>>2]=g;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=h;Y_(210652,o);e=f[52664]|0;g=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,64,k)|0;e=f[52663]|0;g=e+g|0;a=d;c=g+64|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;f[j>>2]=d;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;k=(f[52663]|0)+(d-e)|0;b[k>>0]=a;b[k+1>>0]=a>>8;b[k+2>>0]=a>>16;b[k+3>>0]=a>>24;T_(a,36,n,12,l);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[l>>2]|0);ed(f[n>>2]|0);a=f[m>>2]|0;if((a|0)==(f[p>>2]|0)){c=f[o>>2]|0;if(c){_pb(c);a=f[m>>2]|0}}if(!a){u=q;return}c=f[p>>2]|0;if((c|0)!=(a|0))f[p>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=q;return}function Ir(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;i=q+32|0;j=q+20|0;k=q+36|0;o=q;n=q+28|0;l=q+24|0;f[o>>2]=a;f[o+4>>2]=c;m=o+8|0;f[m>>2]=0;p=o+12|0;f[p>>2]=0;f[o+16>>2]=0;e=f[e>>2]|0;f[n>>2]=e;jd(e|0);g=f[g>>2]|0;f[l>>2]=g;jd(g|0);g=f[52664]|0;e=g-(f[52663]|0)|0;f[j>>2]=g;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;g=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,k)|0;g=(f[52663]|0)+g|0;b[g>>0]=253;b[g+1>>0]=0;g=f[52664]|0;e=g-(f[52663]|0)|0;f[j>>2]=g;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=h;Y_(210652,o);e=f[52664]|0;g=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,64,k)|0;e=f[52663]|0;g=e+g|0;a=d;c=g+64|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;f[j>>2]=d;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;k=(f[52663]|0)+(d-e)|0;b[k>>0]=a;b[k+1>>0]=a>>8;b[k+2>>0]=a>>16;b[k+3>>0]=a>>24;T_(a,36,n,12,l);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[l>>2]|0);ed(f[n>>2]|0);a=f[m>>2]|0;if((a|0)==(f[p>>2]|0)){c=f[o>>2]|0;if(c){_pb(c);a=f[m>>2]|0}}if(!a){u=q;return}c=f[p>>2]|0;if((c|0)!=(a|0))f[p>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=q;return}function Jr(a,c,d,e,g,i,j,k,l,m,n,o,p){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+48|0;q=z+32|0;r=z+20|0;s=z+36|0;x=z;t=z+28|0;v=z+24|0;f[x>>2]=a;f[x+4>>2]=c;w=x+8|0;f[w>>2]=0;y=x+12|0;f[y>>2]=0;f[x+16>>2]=0;n=f[n>>2]|0;f[t>>2]=n;jd(n|0);n=f[o>>2]|0;f[v>>2]=n;jd(n|0);n=f[52664]|0;c=n-(f[52663]|0)|0;f[r>>2]=n;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,s)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;n=c-(f[52663]|0)|0;f[r>>2]=c;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,2,s)|0;n=(f[52663]|0)+n|0;b[n>>0]=26;b[n+1>>0]=1;n=f[52664]|0;c=n-(f[52663]|0)|0;f[r>>2]=n;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,s)|0;b[(f[52663]|0)+c>>0]=p;Y_(210652,x);c=f[52664]|0;n=c-(f[52663]|0)|0;f[r>>2]=c;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,s)|0;b[(f[52663]|0)+n>>0]=d;n=f[52664]|0;c=n-(f[52663]|0)|0;f[r>>2]=n;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,8,s)|0;n=e;e=n;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;n=n+4|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;c=(f[52663]|0)+c|0;a=c;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;c=c+4|0;b[c>>0]=n;b[c+1>>0]=n>>8;b[c+2>>0]=n>>16;b[c+3>>0]=n>>24;c=f[52664]|0;n=c-(f[52663]|0)|0;f[r>>2]=c;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,64,s)|0;c=f[52663]|0;n=c+n|0;a=n+64|0;do{b[n>>0]=b[g>>0]|0;n=n+1|0;g=g+1|0}while((n|0)<(a|0));g=f[52664]|0;f[r>>2]=g;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;g=(f[52663]|0)+(g-c)|0;b[g>>0]=i;b[g+1>>0]=i>>8;b[g+2>>0]=i>>16;b[g+3>>0]=i>>24;i=f[52664]|0;g=i-(f[52663]|0)|0;f[r>>2]=i;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;g=(f[52663]|0)+g|0;b[g>>0]=j;b[g+1>>0]=j>>8;b[g+2>>0]=j>>16;b[g+3>>0]=j>>24;j=f[52664]|0;g=j-(f[52663]|0)|0;f[r>>2]=j;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;g=(f[52663]|0)+g|0;b[g>>0]=k;b[g+1>>0]=k>>8;b[g+2>>0]=k>>16;b[g+3>>0]=k>>24;k=f[52664]|0;g=k-(f[52663]|0)|0;f[r>>2]=k;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;g=(f[52663]|0)+g|0;b[g>>0]=l;b[g+1>>0]=l>>8;b[g+2>>0]=l>>16;b[g+3>>0]=l>>24;l=f[52664]|0;g=l-(f[52663]|0)|0;f[r>>2]=l;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;g=(f[52663]|0)+g|0;b[g>>0]=m;b[g+1>>0]=m>>8;b[g+2>>0]=m>>16;b[g+3>>0]=m>>24;g=(f[52662]|0)+1|0;f[52662]=g;l=f[52664]|0;m=l-(f[52663]|0)|0;f[r>>2]=l;b[s>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,s)|0;m=(f[52663]|0)+m|0;b[m>>0]=g;b[m+1>>0]=g>>8;b[m+2>>0]=g>>16;b[m+3>>0]=g>>24;T_(g,36,t,31,v);g=f[52663]|0;oc(g|0,g+((f[52664]|0)-g)|0);g=f[52663]|0;if((f[52664]|0)!=(g|0))f[52664]=g;ed(f[v>>2]|0);ed(f[t>>2]|0);g=f[w>>2]|0;if((g|0)==(f[y>>2]|0)){a=f[x>>2]|0;if(a){_pb(a);g=f[w>>2]|0}}if(!g){u=z;return}a=f[y>>2]|0;if((a|0)!=(g|0))f[y>>2]=a+(~((a+-8-g|0)>>>3)<<3);Zpb(g);u=z;return}function Kr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=36;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Lr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=19;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Mr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=21;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Nr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=+e;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0;k=u;u=u+32|0;m=k+24|0;o=k+20|0;l=k+28|0;i=k;f[i>>2]=a;f[i+4>>2]=c;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[o>>2]=a;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,2,l)|0;c=(f[52663]|0)+c|0;b[c>>0]=20;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,i);a=f[52664]|0;g=a-(f[52663]|0)|0;f[o>>2]=a;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+g>>0]=d;g=f[52664]|0;a=g-(f[52663]|0)|0;f[o>>2]=g;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,4,l)|0;a=(f[52663]|0)+a|0;n[s>>2]=e;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){c=f[i>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=k;return}c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Or(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=35;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Pr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=243;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=d;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,6,k,0,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Qr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=231;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=d;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,6,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Rr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=251;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=d;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,5,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Sr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=+g;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0;p=u;u=u+32|0;i=p+24|0;j=p+20|0;k=p+28|0;m=p;f[m>>2]=a;f[m+4>>2]=c;l=m+8|0;f[l>>2]=0;o=m+12|0;f[o>>2]=0;f[m+16>>2]=0;a=f[52664]|0;c=a-(f[52663]|0)|0;f[j>>2]=a;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;a=c-(f[52663]|0)|0;f[j>>2]=c;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=2;b[a+1>>0]=1;a=f[52664]|0;c=a-(f[52663]|0)|0;f[j>>2]=a;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+c>>0]=h;Y_(210652,m);c=f[52664]|0;a=c-(f[52663]|0)|0;f[j>>2]=c;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52664]|0;d=a-(f[52663]|0)|0;f[j>>2]=a;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,12,k)|0;d=(f[52663]|0)+d|0;a=e;c=d+12|0;do{b[d>>0]=b[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));e=f[52664]|0;a=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;a=(f[52663]|0)+a|0;n[s>>2]=g;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[l>>2]|0;if((a|0)==(f[o>>2]|0)){c=f[m>>2]|0;if(c){_pb(c);a=f[l>>2]|0}}if(!a){u=p;return}c=f[o>>2]|0;if((c|0)!=(a|0))f[o>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=p;return}function Tr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=30;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Ur(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=221;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,8,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Vr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+32|0;m=k+24|0;n=k+20|0;l=k+28|0;i=k;f[i>>2]=a;f[i+4>>2]=c;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;a=f[52664]|0;c=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;a=c-(f[52663]|0)|0;f[n>>2]=c;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,2,l)|0;a=(f[52663]|0)+a|0;b[a>>0]=1;b[a+1>>0]=1;a=f[52664]|0;c=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+c>>0]=g;Y_(210652,i);c=f[52664]|0;a=c-(f[52663]|0)|0;f[n>>2]=c;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+a>>0]=d;a=f[52664]|0;d=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,12,l)|0;d=(f[52663]|0)+d|0;a=e;c=d+12|0;do{b[d>>0]=b[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){c=f[i>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=k;return}c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Wr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=29;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Xr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=220;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=d;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,15,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Yr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=229;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=d;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,15,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Zr(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+32|0;o=m+24|0;p=m+20|0;n=m+28|0;k=m;f[k>>2]=a;f[k+4>>2]=c;j=k+8|0;f[j>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;a=(f[52663]|0)+a|0;b[a>>0]=11;b[a+1>>0]=1;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+c>>0]=i;Y_(210652,k);c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=d;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;c=(f[52663]|0)+c|0;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;a=(f[52663]|0)+a|0;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,12,n)|0;c=(f[52663]|0)+c|0;a=c+12|0;do{b[c>>0]=b[h>>0]|0;c=c+1|0;h=h+1|0}while((c|0)<(a|0));h=f[52663]|0;oc(h|0,h+((f[52664]|0)-h)|0);h=f[52663]|0;if((f[52664]|0)!=(h|0))f[52664]=h;h=f[j>>2]|0;if((h|0)==(f[l>>2]|0)){a=f[k>>2]|0;if(a){_pb(a);h=f[j>>2]|0}}if(!h){u=m;return}a=f[l>>2]|0;if((a|0)!=(h|0))f[l>>2]=a+(~((a+-8-h|0)>>>3)<<3);Zpb(h);u=m;return}function _r(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+32|0;n=l+24|0;o=l+20|0;m=l+28|0;j=l;f[j>>2]=a;f[j+4>>2]=c;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;c=(f[52663]|0)+c|0;b[c>>0]=32;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+a>>0]=h;Y_(210652,j);h=f[52664]|0;a=h-(f[52663]|0)|0;f[o>>2]=h;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+a>>0]=d;a=f[52664]|0;h=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;h=(f[52663]|0)+h|0;b[h>>0]=e;b[h+1>>0]=e>>8;b[h+2>>0]=e>>16;b[h+3>>0]=e>>24;h=f[52664]|0;a=h-(f[52663]|0)|0;f[o>>2]=h;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function $r(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=208;b[c+1>>0]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function as(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+48|0;q=o+32|0;r=o+20|0;p=o+36|0;m=o;j=o+28|0;k=o+24|0;f[m>>2]=a;f[m+4>>2]=c;l=m+8|0;f[l>>2]=0;n=m+12|0;f[n>>2]=0;f[m+16>>2]=0;a=f[g>>2]|0;f[j>>2]=a;jd(a|0);h=f[h>>2]|0;f[k>>2]=h;jd(h|0);h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,2,p)|0;h=(f[52663]|0)+h|0;b[h>>0]=232;b[h+1>>0]=0;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=i;Y_(210652,m);a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+h>>0]=d;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;a=(f[52663]|0)+a|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;h=f[52664]|0;i=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;T_(a,15,j,0,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[l>>2]|0;if((a|0)==(f[n>>2]|0)){c=f[m>>2]|0;if(c){_pb(c);a=f[l>>2]|0}}if(!a){u=o;return}c=f[n>>2]|0;if((c|0)!=(a|0))f[n>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=o;return}function bs(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+48|0;q=o+32|0;r=o+20|0;p=o+36|0;m=o;j=o+28|0;k=o+24|0;f[m>>2]=a;f[m+4>>2]=c;l=m+8|0;f[l>>2]=0;n=m+12|0;f[n>>2]=0;f[m+16>>2]=0;a=f[g>>2]|0;f[j>>2]=a;jd(a|0);h=f[h>>2]|0;f[k>>2]=h;jd(h|0);h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,2,p)|0;h=(f[52663]|0)+h|0;b[h>>0]=230;b[h+1>>0]=0;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=i;Y_(210652,m);a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+h>>0]=d;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;a=(f[52663]|0)+a|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;h=f[52664]|0;i=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;T_(a,15,j,12,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[l>>2]|0;if((a|0)==(f[n>>2]|0)){c=f[m>>2]|0;if(c){_pb(c);a=f[l>>2]|0}}if(!a){u=o;return}c=f[n>>2]|0;if((c|0)!=(a|0))f[n>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=o;return}function cs(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=+g;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;o=u;u=u+64|0;s=o+48|0;t=o+44|0;r=o+53|0;q=o+40|0;p=o+52|0;l=o+20|0;j=o;f[l>>2]=a;f[l+4>>2]=c;k=l+8|0;f[k>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;f[j>>2]=d;f[j+4>>2]=e;d=j+8|0;f[d>>2]=0;e=j+12|0;f[e>>2]=0;f[j+16>>2]=0;n[q>>2]=g;b[p>>0]=h;h=f[52664]|0;a=h-(f[52663]|0)|0;f[t>>2]=h;b[r>>0]=0;f[s>>2]=f[t>>2];V_(210652,s,1,r)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;h=a-(f[52663]|0)|0;f[t>>2]=a;b[r>>0]=0;f[s>>2]=f[t>>2];V_(210652,s,2,r)|0;h=(f[52663]|0)+h|0;b[h>>0]=16;b[h+1>>0]=1;h=f[52664]|0;a=h-(f[52663]|0)|0;f[t>>2]=h;b[r>>0]=0;f[s>>2]=f[t>>2];V_(210652,s,1,r)|0;b[(f[52663]|0)+a>>0]=i;Y_(210652,l);$_(210652,j,q,p);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[d>>2]|0;if((a|0)==(f[e>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[d>>2]|0}}if(a|0){if((f[e>>2]|0)!=(a|0))f[e>>2]=a;Zpb(a)}a=f[k>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[k>>2]|0}}if(!a){u=o;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=o;return}function ds(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=33;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function es(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=37;b[i+1>>0]=1;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function fs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;h=d+4|0;i=d;g=d+8|0;j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;j=e-(f[52663]|0)|0;f[i>>2]=e;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,g)|0;j=(f[52663]|0)+j|0;b[j>>0]=38;b[j+1>>0]=1;j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,g)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;a$(210652,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function gs(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=+d;e=e|0;g=+g;h=h|0;i=+i;j=j|0;k=+k;l=l|0;var m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;m=u;u=u+64|0;A=m+40|0;B=m+36|0;z=m+49|0;y=m+32|0;x=m+48|0;w=m+24|0;v=m+47|0;t=m+16|0;s=m+46|0;r=m+8|0;q=m+45|0;o=m;n=m+44|0;f[y>>2]=a;b[x>>0]=c;p[w>>3]=d;b[v>>0]=e;p[t>>3]=g;b[s>>0]=h;p[r>>3]=i;b[q>>0]=j;p[o>>3]=k;b[n>>0]=l;a=f[52664]|0;l=a-(f[52663]|0)|0;f[B>>2]=a;b[z>>0]=0;f[A>>2]=f[B>>2];V_(210652,A,1,z)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;a=l-(f[52663]|0)|0;f[B>>2]=l;b[z>>0]=0;f[A>>2]=f[B>>2];V_(210652,A,2,z)|0;a=(f[52663]|0)+a|0;b[a>>0]=39;b[a+1>>0]=1;b$(210652,y,x,w,v,t,s,r,q,o,n);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=m;return}f[52664]=a;u=m;return}function hs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=40;b[j+1>>0]=1;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+a>>0]=c&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function is(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=1;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function js(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;i=e+4|0;j=e;h=e+8|0;g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=2;b[g+1>>0]=0;g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=a;a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,c,36,d);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function ks(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=u;u=u+48|0;o=m+32|0;p=m+28|0;n=m+39|0;q=m+36|0;r=m+38|0;l=m+8|0;j=m+4|0;h=m;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;k=l+12|0;f[k>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[j>>2]=a;jd(a|0);a=f[g>>2]|0;f[h>>2]=a;jd(a|0);d[q>>1]=0;b[r>>0]=82;c$(210652,r,q,l);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,j,0,h);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[h>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=m;return}if((f[k>>2]|0)!=(a|0))f[k>>2]=a;Zpb(a);u=m;return}function ls(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=3;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,36,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ms(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=54;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,49,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ns(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=52;b[a+1>>0]=0;__(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,18,h,18,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=l;return}function os(a,c,e,g,h,i,j,k,l){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=+i;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;t=u;u=u+80|0;w=t+64|0;x=t+60|0;v=t+71|0;B=t+68|0;A=t+56|0;z=t;y=t+70|0;r=t+28|0;o=t+8|0;m=t+52|0;n=t+48|0;f[r>>2]=a;f[r+4>>2]=c;q=r+8|0;f[q>>2]=0;s=r+12|0;f[s>>2]=0;f[r+16>>2]=0;f[o>>2]=e;f[o+4>>2]=g;e=o+8|0;f[e>>2]=0;g=o+12|0;f[g>>2]=0;f[o+16>>2]=0;k=f[k>>2]|0;f[m>>2]=k;jd(k|0);k=f[l>>2]|0;f[n>>2]=k;jd(k|0);f[A>>2]=h;p[z>>3]=i;b[y>>0]=j&1;d[B>>1]=7;k=f[52664]|0;a=k-(f[52663]|0)|0;f[x>>2]=k;b[v>>0]=0;f[w>>2]=f[x>>2];V_(210652,w,1,v)|0;b[(f[52663]|0)+a>>0]=82;d$(210652,B,r,o,A,z,y);a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;l=k-(f[52663]|0)|0;f[x>>2]=k;b[v>>0]=0;f[w>>2]=f[x>>2];V_(210652,w,4,v)|0;l=(f[52663]|0)+l|0;b[l>>0]=a;b[l+1>>0]=a>>8;b[l+2>>0]=a>>16;b[l+3>>0]=a>>24;T_(a,36,m,36,n);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[n>>2]|0);ed(f[m>>2]|0);a=f[e>>2]|0;if((a|0)==(f[g>>2]|0)){c=f[o>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(a|0){c=f[g>>2]|0;if((c|0)!=(a|0))f[g>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}a=f[q>>2]|0;if((a|0)==(f[s>>2]|0)){c=f[r>>2]|0;if(c){_pb(c);a=f[q>>2]|0}}if(!a){u=t;return}if((f[s>>2]|0)!=(a|0))f[s>>2]=a;Zpb(a);u=t;return}function ps(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=15;b[a+1>>0]=0;__(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,36,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=l;return}function qs(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+64|0;q=o+52|0;r=o+48|0;p=o+56|0;m=o+20|0;k=o;i=o+44|0;j=o+40|0;f[m>>2]=a;f[m+4>>2]=c;l=m+8|0;f[l>>2]=0;n=m+12|0;f[n>>2]=0;f[m+16>>2]=0;f[k>>2]=d;f[k+4>>2]=e;d=k+8|0;f[d>>2]=0;e=k+12|0;f[e>>2]=0;f[k+16>>2]=0;a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[h>>2]|0;f[j>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[r>>2]=g;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,2,p)|0;a=(f[52663]|0)+a|0;b[a>>0]=67;b[a+1>>0]=0;__(210652,m);__(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[r>>2]=g;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,36,i,36,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[d>>2]|0;if((a|0)==(f[e>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[d>>2]|0}}if(a|0){c=f[e>>2]|0;if((c|0)!=(a|0))f[e>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a)}a=f[l>>2]|0;if((a|0)==(f[n>>2]|0)){c=f[m>>2]|0;if(c){_pb(c);a=f[l>>2]|0}}if(!a){u=o;return}c=f[n>>2]|0;if((c|0)!=(a|0))f[n>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=o;return}function rs(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=96;b[d+1>>0]=0;a$(210652,a);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ss(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=u;u=u+32|0;i=g+12|0;j=g+4|0;h=g+16|0;d=g+8|0;e=g;a=f[a>>2]|0;f[d>>2]=a;jd(a|0);a=f[c>>2]|0;f[e>>2]=a;jd(a|0);a=f[52664]|0;k=a-(f[52663]|0)|0;f[j>>2]=a;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;a=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;a=(f[52663]|0)+a|0;b[a>>0]=26;b[a+1>>0]=0;a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;c=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;c=(f[52663]|0)+c|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;T_(a,34,d,0,e);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){k=f[e>>2]|0;ed(k|0);k=f[d>>2]|0;ed(k|0);u=g;return}f[52664]=a;k=f[e>>2]|0;ed(k|0);k=f[d>>2]|0;ed(k|0);u=g;return}function ts(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=175;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function us(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=69;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function vs(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=114;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ws(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=135;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function xs(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=143;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ys(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=169;b[j+1>>0]=0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+a>>0]=c;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function zs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=46;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,33,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function As(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;i=n+60|0;j=n+48|0;k=n+64|0;g=n;l=n+56|0;m=n+52|0;FX(g,c);c=f[d>>2]|0;f[l>>2]=c;jd(c|0);c=f[e>>2]|0;f[m>>2]=c;jd(c|0);c=f[52664]|0;e=c-(f[52663]|0)|0;f[j>>2]=c;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;c=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=186;b[c+1>>0]=0;c=f[52664]|0;e=c-(f[52663]|0)|0;f[j>>2]=c;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,48,k)|0;c=f[52663]|0;e=c+e|0;h=e+48|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));e=f[52664]|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,48,k)|0;d=f[52663]|0;e=d+(e-c)|0;g=a;h=e+48|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));c=(f[52662]|0)+1|0;f[52662]=c;a=f[52664]|0;f[j>>2]=a;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;k=(f[52663]|0)+(a-d)|0;b[k>>0]=c;b[k+1>>0]=c>>8;b[k+2>>0]=c>>16;b[k+3>>0]=c>>24;T_(c,45,l,0,m);c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){m=f[m>>2]|0;ed(m|0);m=f[l>>2]|0;ed(m|0);u=n;return}f[52664]=c;m=f[m>>2]|0;ed(m|0);m=f[l>>2]|0;ed(m|0);u=n;return}function Bs(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0;s=u;u=u+96|0;m=s+84|0;n=s+72|0;o=s+88|0;l=s+48|0;j=s;q=s+80|0;r=s+76|0;r$(l);FX(j,g);k=~~+p[l+8>>3]>>>0;l=~~+p[l+16>>3]>>>0;g=f[h>>2]|0;f[q>>2]=g;jd(g|0);g=f[i>>2]|0;f[r>>2]=g;jd(g|0);g=f[52664]|0;h=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,o)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;g=h-(f[52663]|0)|0;f[n>>2]=h;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,2,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=70;b[g+1>>0]=0;g=f[52664]|0;h=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,48,o)|0;g=f[52663]|0;h=g+h|0;i=j;j=h+48|0;do{b[h>>0]=b[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));j=f[52664]|0;f[n>>2]=j;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,o)|0;b[(f[52663]|0)+(j-g)>>0]=a;a=f[52664]|0;g=a-(f[52663]|0)|0;f[n>>2]=a;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=c;b[g+1>>0]=c>>8;b[g+2>>0]=c>>16;b[g+3>>0]=c>>24;c=f[52664]|0;g=c-(f[52663]|0)|0;f[n>>2]=c;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;d=f[52664]|0;g=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=k;b[g+1>>0]=k>>8;b[g+2>>0]=k>>16;b[g+3>>0]=k>>24;g=f[52664]|0;d=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;d=(f[52663]|0)+d|0;b[d>>0]=l;b[d+1>>0]=l>>8;b[d+2>>0]=l>>16;b[d+3>>0]=l>>24;d=f[52664]|0;g=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;g=(f[52662]|0)+1|0;f[52662]=g;d=f[52664]|0;e=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;o=(f[52663]|0)+e|0;b[o>>0]=g;b[o+1>>0]=g>>8;b[o+2>>0]=g>>16;b[o+3>>0]=g>>24;T_(g,45,q,0,r);g=f[52663]|0;oc(g|0,g+((f[52664]|0)-g)|0);g=f[52663]|0;if((f[52664]|0)==(g|0)){r=f[r>>2]|0;ed(r|0);r=f[q>>2]|0;ed(r|0);u=s;return}f[52664]=g;r=f[r>>2]|0;ed(r|0);r=f[q>>2]|0;ed(r|0);u=s;return}function Cs(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0;s=u;u=u+64|0;m=s+36|0;n=s+24|0;o=s+56|0;l=s;j=s+40|0;q=s+32|0;r=s+28|0;r$(l);KX(j,g);k=~~+p[l+8>>3]>>>0;l=~~+p[l+16>>3]>>>0;g=f[h>>2]|0;f[q>>2]=g;jd(g|0);g=f[i>>2]|0;f[r>>2]=g;jd(g|0);g=f[52664]|0;h=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,o)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;g=h-(f[52663]|0)|0;f[n>>2]=h;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,2,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=11;b[g+1>>0]=0;g=f[52664]|0;h=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,16,o)|0;g=f[52663]|0;h=g+h|0;i=j;j=h+16|0;do{b[h>>0]=b[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));j=f[52664]|0;f[n>>2]=j;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+(j-g)|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;a=f[52664]|0;g=a-(f[52663]|0)|0;f[n>>2]=a;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=c;b[g+1>>0]=c>>8;b[g+2>>0]=c>>16;b[g+3>>0]=c>>24;c=f[52664]|0;g=c-(f[52663]|0)|0;f[n>>2]=c;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;d=f[52664]|0;g=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;g=f[52664]|0;d=g-(f[52663]|0)|0;f[n>>2]=g;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;d=(f[52663]|0)+d|0;b[d>>0]=k;b[d+1>>0]=k>>8;b[d+2>>0]=k>>16;b[d+3>>0]=k>>24;d=f[52664]|0;g=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=l;b[g+1>>0]=l>>8;b[g+2>>0]=l>>16;b[g+3>>0]=l>>24;g=(f[52662]|0)+1|0;f[52662]=g;d=f[52664]|0;e=d-(f[52663]|0)|0;f[n>>2]=d;b[o>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,o)|0;o=(f[52663]|0)+e|0;b[o>>0]=g;b[o+1>>0]=g>>8;b[o+2>>0]=g>>16;b[o+3>>0]=g>>24;T_(g,49,q,36,r);g=f[52663]|0;oc(g|0,g+((f[52664]|0)-g)|0);g=f[52663]|0;if((f[52664]|0)==(g|0)){r=f[r>>2]|0;ed(r|0);r=f[q>>2]|0;ed(r|0);u=s;return}f[52664]=g;r=f[r>>2]|0;ed(r|0);r=f[q>>2]|0;ed(r|0);u=s;return}function Ds(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+64|0;p=n+32|0;q=n+28|0;o=n+56|0;r=n+40|0;k=n+24|0;i=n+20|0;l=n;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;g=f[g>>2]|0;jd(g|0);c=f[h>>2]|0;jd(c|0);KX(r,e);f[k>>2]=g;jd(g|0);f[i>>2]=c;jd(c|0);a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=9;b[a+1>>0]=0;e$(210652,r,l,d);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[q>>2]=d;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,49,k,36,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);ed(c|0);ed(g|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-16-a|0)>>>4)<<4);Zpb(a);u=n;return}function Es(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+64|0;l=r+36|0;m=r+24|0;n=r+56|0;k=r;i=r+40|0;o=r+32|0;q=r+28|0;r$(k);KX(i,e);j=~~+p[k+8>>3]>>>0;k=~~+p[k+16>>3]>>>0;e=f[g>>2]|0;f[o>>2]=e;jd(e|0);e=f[h>>2]|0;f[q>>2]=e;jd(e|0);e=f[52664]|0;g=e-(f[52663]|0)|0;f[m>>2]=e;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,n)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;e=g-(f[52663]|0)|0;f[m>>2]=g;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=10;b[e+1>>0]=0;e=f[52664]|0;g=e-(f[52663]|0)|0;f[m>>2]=e;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,16,n)|0;e=f[52663]|0;g=e+g|0;h=i;i=g+16|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));i=f[52664]|0;f[m>>2]=i;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;e=(f[52663]|0)+(i-e)|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;a=f[52664]|0;e=a-(f[52663]|0)|0;f[m>>2]=a;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;c=f[52664]|0;e=c-(f[52663]|0)|0;f[m>>2]=c;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;e=f[52664]|0;c=e-(f[52663]|0)|0;f[m>>2]=e;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;c=(f[52663]|0)+c|0;b[c>>0]=j;b[c+1>>0]=j>>8;b[c+2>>0]=j>>16;b[c+3>>0]=j>>24;c=f[52664]|0;e=c-(f[52663]|0)|0;f[m>>2]=c;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=k;b[e+1>>0]=k>>8;b[e+2>>0]=k>>16;b[e+3>>0]=k>>24;e=(f[52662]|0)+1|0;f[52662]=e;c=f[52664]|0;d=c-(f[52663]|0)|0;f[m>>2]=c;b[n>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,4,n)|0;n=(f[52663]|0)+d|0;b[n>>0]=e;b[n+1>>0]=e>>8;b[n+2>>0]=e>>16;b[n+3>>0]=e>>24;T_(e,49,o,36,q);e=f[52663]|0;oc(e|0,e+((f[52664]|0)-e)|0);e=f[52663]|0;if((f[52664]|0)==(e|0)){q=f[q>>2]|0;ed(q|0);q=f[o>>2]|0;ed(q|0);u=r;return}f[52664]=e;q=f[q>>2]|0;ed(q|0);q=f[o>>2]|0;ed(q|0);u=r;return}function Fs(a,c,d,e,g){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+48|0;i=o+12|0;j=o;k=o+32|0;h=o+16|0;l=o+8|0;m=o+4|0;KX(h,d);d=f[e>>2]|0;f[l>>2]=d;jd(d|0);d=f[g>>2]|0;f[m>>2]=d;jd(d|0);d=f[52664]|0;e=d-(f[52663]|0)|0;f[j>>2]=d;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,k)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;d=e-(f[52663]|0)|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,k)|0;d=(f[52663]|0)+d|0;b[d>>0]=12;b[d+1>>0]=0;d=f[52664]|0;e=d-(f[52663]|0)|0;f[j>>2]=d;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,16,k)|0;d=f[52663]|0;e=d+e|0;g=h;h=e+16|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));e=f[52664]|0;f[j>>2]=e;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,12,k)|0;e=(f[52663]|0)+(e-d)|0;g=a;h=e+12|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));h=f[52664]|0;d=h-(f[52663]|0)|0;f[j>>2]=h;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;d=(f[52663]|0)+d|0;n[s>>2]=c;b[d>>0]=b[s>>0];b[d+1>>0]=b[s+1>>0];b[d+2>>0]=b[s+2>>0];b[d+3>>0]=b[s+3>>0];d=(f[52662]|0)+1|0;f[52662]=d;h=f[52664]|0;a=h-(f[52663]|0)|0;f[j>>2]=h;b[k>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,k)|0;k=(f[52663]|0)+a|0;b[k>>0]=d;b[k+1>>0]=d>>8;b[k+2>>0]=d>>16;b[k+3>>0]=d>>24;T_(d,49,l,36,m);d=f[52663]|0;oc(d|0,d+((f[52664]|0)-d)|0);d=f[52663]|0;if((f[52664]|0)==(d|0)){m=f[m>>2]|0;ed(m|0);m=f[l>>2]|0;ed(m|0);u=o;return}f[52664]=d;m=f[m>>2]|0;ed(m|0);m=f[l>>2]|0;ed(m|0);u=o;return}function Gs(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=19;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Hs(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=u;u=u+16|0;i=g+4|0;j=g;h=g+8|0;l=f[52664]|0;k=l-(f[52663]|0)|0;f[j>>2]=l;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;l=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;l=(f[52663]|0)+l|0;b[l>>0]=6;b[l+1>>0]=0;l=f[52664]|0;k=l-(f[52663]|0)|0;f[j>>2]=l;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;k=(f[52663]|0)+k|0;b[k>>0]=a;b[k+1>>0]=a>>8;b[k+2>>0]=a>>16;b[k+3>>0]=a>>24;k=f[52664]|0;a=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;a=(f[52663]|0)+a|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;c=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;c=(f[52663]|0)+c|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;T_(a,12,d,36,e);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Is(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=u;u=u+48|0;o=m+32|0;p=m+28|0;n=m+39|0;q=m+36|0;r=m+38|0;k=m+8|0;j=m+4|0;h=m;f[k>>2]=a;f[k+4>>2]=c;i=k+8|0;f[i>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[e>>2]|0;f[j>>2]=a;jd(a|0);a=f[g>>2]|0;f[h>>2]=a;jd(a|0);d[q>>1]=4;b[r>>0]=82;f$(210652,r,q,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,49,j,22,h);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[h>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-16-a|0)>>>4)<<4);Zpb(a);u=m;return}function Js(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=u;u=u+48|0;p=n+36|0;q=n+32|0;o=n+42|0;s=n+40|0;r=n+20|0;l=n;i=n+28|0;j=n+24|0;f[l>>2]=a;f[l+4>>2]=c;k=l+8|0;f[k>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;g=f[g>>2]|0;f[i>>2]=g;jd(g|0);g=f[h>>2]|0;f[j>>2]=g;jd(g|0);f[r>>2]=e;d[s>>1]=59;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;g$(210652,s,l,r);a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,36,i,49,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[k>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[k>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-16-a|0)>>>4)<<4);Zpb(a);u=n;return}function Ks(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=58;b[a+1>>0]=0;__(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,18,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=l;return}function Ls(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=57;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ms(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=27;b[a+1>>0]=0;__(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,7,h,18,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=l;return}function Ns(a,c,d,e,g){a=a|0;c=c|0;d=+d;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0;i=u;u=u+16|0;k=i+4|0;l=i;j=i+8|0;m=f[52664]|0;o=m-(f[52663]|0)|0;f[l>>2]=m;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+o>>0]=82;o=f[52664]|0;m=o-(f[52663]|0)|0;f[l>>2]=o;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;m=(f[52663]|0)+m|0;b[m>>0]=17;b[m+1>>0]=0;m=f[52664]|0;o=m-(f[52663]|0)|0;f[l>>2]=m;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,8,j)|0;m=a;p=m;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;a=(f[52663]|0)+o|0;o=a;b[o>>0]=p;b[o+1>>0]=p>>8;b[o+2>>0]=p>>16;b[o+3>>0]=p>>24;a=a+4|0;b[a>>0]=m;b[a+1>>0]=m>>8;b[a+2>>0]=m>>16;b[a+3>>0]=m>>24;a=f[52664]|0;m=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,8,j)|0;a=c;o=a;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;m=(f[52663]|0)+m|0;c=m;b[c>>0]=o;b[c+1>>0]=o>>8;b[c+2>>0]=o>>16;b[c+3>>0]=o>>24;m=m+4|0;b[m>>0]=a;b[m+1>>0]=a>>8;b[m+2>>0]=a>>16;b[m+3>>0]=a>>24;m=f[52664]|0;a=m-(f[52663]|0)|0;f[l>>2]=m;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,j)|0;a=(f[52663]|0)+a|0;n[s>>2]=d;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=(f[52662]|0)+1|0;f[52662]=a;m=f[52664]|0;c=m-(f[52663]|0)|0;f[l>>2]=m;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;T_(a,36,e,11,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=i;return}f[52664]=a;u=i;return}function Os(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=16;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ps(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=53;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Qs(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=68;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Rs(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=65;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,29,h,11,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function Ss(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=36;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Ts(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=39;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Us(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=44;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Vs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=38;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Ws(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=116;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Xs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=24;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Ys(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=84;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Zs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=37;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function _s(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=115;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function $s(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=29;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,1,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function at(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=48;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,1,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function bt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=45;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,32,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ct(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=28;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,41,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function dt(a,c){a=+a;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+16|0;h=e+4|0;i=e;g=e+8|0;d=f[52664]|0;j=d-(f[52663]|0)|0;f[i>>2]=d;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;d=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,g)|0;d=(f[52663]|0)+d|0;b[d>>0]=100;b[d+1>>0]=0;d=f[52664]|0;j=d-(f[52663]|0)|0;f[i>>2]=d;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,8,g)|0;j=(f[52663]|0)+j|0;p[s>>3]=a;b[j>>0]=b[s>>0];b[j+1>>0]=b[s+1>>0];b[j+2>>0]=b[s+2>>0];b[j+3>>0]=b[s+3>>0];b[j+4>>0]=b[s+4>>0];b[j+5>>0]=b[s+5>>0];b[j+6>>0]=b[s+6>>0];b[j+7>>0]=b[s+7>>0];j=f[52664]|0;d=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,8,g)|0;d=(f[52663]|0)+d|0;p[s>>3]=c;b[d>>0]=b[s>>0];b[d+1>>0]=b[s+1>>0];b[d+2>>0]=b[s+2>>0];b[d+3>>0]=b[s+3>>0];b[d+4>>0]=b[s+4>>0];b[d+5>>0]=b[s+5>>0];b[d+6>>0]=b[s+6>>0];b[d+7>>0]=b[s+7>>0];d=f[52663]|0;oc(d|0,d+((f[52664]|0)-d)|0);d=f[52663]|0;if((f[52664]|0)==(d|0)){u=e;return}f[52664]=d;u=e;return}function et(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=179;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ft(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=181;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function gt(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=178;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ht(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=180;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function it(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=85;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function jt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;d=l+4|0;e=l;g=l+8|0;j=f[52664]|0;k=j-(f[52663]|0)|0;f[e>>2]=j;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,1,g)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;j=k-(f[52663]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,2,g)|0;j=(f[52663]|0)+j|0;b[j>>0]=86;b[j+1>>0]=0;j=f[52664]|0;k=j-(f[52663]|0)|0;f[e>>2]=j;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,16,g)|0;j=f[52663]|0;k=j+k|0;h=a;i=k+16|0;do{b[k>>0]=b[h>>0]|0;k=k+1|0;h=h+1|0}while((k|0)<(i|0));k=f[52664]|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,16,g)|0;a=f[52663]|0;k=a+(k-j)|0;h=c;i=k+16|0;do{b[k>>0]=b[h>>0]|0;k=k+1|0;h=h+1|0}while((k|0)<(i|0));oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=l;return}f[52664]=a;u=l;return}function kt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=25;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,4,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function lt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=107;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function mt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=132;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function nt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=125;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function ot(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=130;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function pt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=127;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function qt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=168;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function rt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=129;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function st(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=126;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function tt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=167;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function ut(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=131;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function vt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=128;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function wt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=119;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function xt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=124;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function yt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=122;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function zt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=120;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function At(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=123;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Bt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=121;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Ct(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=22;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Dt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=23;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,2,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Et(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=77;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ft(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=81;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Gt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=78;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Ht(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=72;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function It(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=75;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Jt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=82;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Kt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=74;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Lt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=73;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Mt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=76;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Nt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=80;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Ot(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=79;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Pt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=95;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,16,d)|0;d=f[52663]|0;e=d+e|0;c=e+16|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Qt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=83;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Rt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=163;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function St(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=166;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Tt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=99;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ut(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=182;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Vt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=101;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Wt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=103;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Xt(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=102;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Yt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;d=c+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=104;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,8,d)|0;d=a;g=f[d>>2]|0;d=f[d+4>>2]|0;a=(f[52663]|0)+e|0;e=a;b[e>>0]=g;b[e+1>>0]=g>>8;b[e+2>>0]=g>>16;b[e+3>>0]=g>>24;a=a+4|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Zt(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=183;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function _t(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=134;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function $t(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+4|0;h=e;c=e+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,c)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,c)|0;i=(f[52663]|0)+i|0;b[i>>0]=71;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,c)|0;d=(f[52663]|0)+d|0;c=d+12|0;do{b[d>>0]=b[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function au(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=13;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function bu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+4|0;i=k;j=k+8|0;l=f[52664]|0;g=l-(f[52663]|0)|0;f[i>>2]=l;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;l=g-(f[52663]|0)|0;f[i>>2]=g;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,j)|0;l=(f[52663]|0)+l|0;b[l>>0]=5;b[l+1>>0]=0;l=f[52664]|0;g=l-(f[52663]|0)|0;f[i>>2]=l;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+g>>0]=a;g=f[52664]|0;a=g-(f[52663]|0)|0;f[i>>2]=g;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+a>>0]=c;a=f[52664]|0;g=a-(f[52663]|0)|0;f[i>>2]=a;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,12,j)|0;g=(f[52663]|0)+g|0;a=d;c=g+12|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=f[52664]|0;g=a-(f[52663]|0)|0;f[i>>2]=a;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,12,j)|0;g=(f[52663]|0)+g|0;a=e;c=g+12|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=k;return}f[52664]=a;u=k;return}function cu(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=55;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function du(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=185;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,36,a,36,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function eu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;a=f[52664]|0;e=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;a=(f[52663]|0)+a|0;b[a>>0]=174;b[a+1>>0]=0;Y_(210652,h);a=f[52664]|0;e=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,12,k)|0;e=(f[52663]|0)+e|0;a=d;c=e+12|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function fu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=20;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function gu(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=66;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function hu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+16|0;j=h+4|0;k=h;i=h+8|0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;m=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;m=(f[52663]|0)+m|0;b[m>>0]=170;b[m+1>>0]=0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=a;l=f[52664]|0;a=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+a>>0]=c;c=f[52664]|0;a=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,8,i)|0;c=d;l=f[c>>2]|0;c=f[c+4>>2]|0;a=(f[52663]|0)+a|0;d=a;b[d>>0]=l;b[d+1>>0]=l>>8;b[d+2>>0]=l>>16;b[d+3>>0]=l>>24;a=a+4|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=(f[52662]|0)+1|0;f[52662]=a;c=f[52664]|0;d=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;T_(a,36,e,37,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=h;return}f[52664]=a;u=h;return}function iu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=184;b[j+1>>0]=0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=a;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+a>>0]=c;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ju(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=171;b[j+1>>0]=0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=a;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;a=(f[52663]|0)+a|0;n[s>>2]=c;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ku(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=172;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function lu(a,c){a=+a;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;h=d+4|0;i=d;g=d+8|0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[i>>2]=e;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,g)|0;e=(f[52663]|0)+e|0;b[e>>0]=142;b[e+1>>0]=0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[i>>2]=e;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,8,g)|0;j=(f[52663]|0)+j|0;p[s>>3]=a;b[j>>0]=b[s>>0];b[j+1>>0]=b[s+1>>0];b[j+2>>0]=b[s+2>>0];b[j+3>>0]=b[s+3>>0];b[j+4>>0]=b[s+4>>0];b[j+5>>0]=b[s+5>>0];b[j+6>>0]=b[s+6>>0];b[j+7>>0]=b[s+7>>0];j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+e>>0]=c;c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function mu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=141;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function nu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=42;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,1,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function ou(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=43;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,40,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function pu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=41;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,39,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function qu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=111;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ru(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=33;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,0,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function su(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=110;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function tu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=32;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,49,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function uu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=109;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function vu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=31;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,2,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function wu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=108;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function xu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=30;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,2,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function yu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=113;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function zu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=35;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,2,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Au(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=112;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Bu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=34;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,2,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Cu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=56;b[c+1>>0]=0;Y_(210652,g);c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Du(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=89;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Eu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=93;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Fu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=94;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Gu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=91;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Hu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=92;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Iu(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=90;b[j+1>>0]=0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;a=(f[52663]|0)+a|0;n[s>>2]=c;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Ju(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+i>>0]=82;i=f[52664]|0;j=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;j=(f[52663]|0)+j|0;b[j>>0]=88;b[j+1>>0]=0;j=f[52664]|0;i=j-(f[52663]|0)|0;f[h>>2]=j;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;a=(f[52663]|0)+a|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function Ku(a,c,d){a=a|0;c=+c;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;h=e+4|0;i=e;g=e+8|0;k=f[52664]|0;j=k-(f[52663]|0)|0;f[i>>2]=k;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;k=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,g)|0;k=(f[52663]|0)+k|0;b[k>>0]=87;b[k+1>>0]=0;k=f[52664]|0;j=k-(f[52663]|0)|0;f[i>>2]=k;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,g)|0;j=(f[52663]|0)+j|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;a=f[52664]|0;j=a-(f[52663]|0)|0;f[i>>2]=a;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,g)|0;j=(f[52663]|0)+j|0;n[s>>2]=c;b[j>>0]=b[s>>0];b[j+1>>0]=b[s+1>>0];b[j+2>>0]=b[s+2>>0];b[j+3>>0]=b[s+3>>0];j=f[52664]|0;a=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function Lu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+64|0;m=k+44|0;n=k+40|0;l=k+48|0;i=k+20|0;g=k;f[i>>2]=a;f[i+4>>2]=c;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;f[g>>2]=d;f[g+4>>2]=e;d=g+8|0;f[d>>2]=0;e=g+12|0;f[e>>2]=0;f[g+16>>2]=0;a=f[52664]|0;c=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;a=c-(f[52663]|0)|0;f[n>>2]=c;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,2,l)|0;a=(f[52663]|0)+a|0;b[a>>0]=173;b[a+1>>0]=0;Y_(210652,i);Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[d>>2]|0;if((a|0)==(f[e>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[d>>2]|0}}if(a|0){c=f[e>>2]|0;if((c|0)!=(a|0))f[e>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){c=f[i>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=k;return}c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Mu(){var a=0,c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;e=c+4|0;g=c;d=c+8|0;a=f[52664]|0;h=a-(f[52663]|0)|0;f[g>>2]=a;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,1,d)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;a=h-(f[52663]|0)|0;f[g>>2]=h;b[d>>0]=0;f[e>>2]=f[g>>2];V_(210652,e,2,d)|0;a=(f[52663]|0)+a|0;b[a>>0]=18;b[a+1>>0]=0;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Nu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k+4|0;h=k;i=k+8|0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[h>>2]=e;b[i>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,i)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;e=j-(f[52663]|0)|0;f[h>>2]=j;b[i>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,i)|0;e=(f[52663]|0)+e|0;b[e>>0]=98;b[e+1>>0]=0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[h>>2]=e;b[i>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,i)|0;j=(f[52663]|0)+j|0;e=j+12|0;do{b[j>>0]=b[a>>0]|0;j=j+1|0;a=a+1|0}while((j|0)<(e|0));a=f[52664]|0;j=a-(f[52663]|0)|0;f[h>>2]=a;b[i>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,i)|0;j=(f[52663]|0)+j|0;a=c;e=j+12|0;do{b[j>>0]=b[a>>0]|0;j=j+1|0;a=a+1|0}while((j|0)<(e|0));a=f[52664]|0;j=a-(f[52663]|0)|0;f[h>>2]=a;b[i>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,i)|0;j=(f[52663]|0)+j|0;a=d;e=j+12|0;do{b[j>>0]=b[a>>0]|0;j=j+1|0;a=a+1|0}while((j|0)<(e|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=k;return}f[52664]=a;u=k;return}function Ou(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+4|0;h=g;d=g+8|0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,1,d)|0;b[(f[52663]|0)+e>>0]=82;e=f[52664]|0;i=e-(f[52663]|0)|0;f[h>>2]=e;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,2,d)|0;i=(f[52663]|0)+i|0;b[i>>0]=117;b[i+1>>0]=0;i=f[52664]|0;e=i-(f[52663]|0)|0;f[h>>2]=i;b[d>>0]=0;f[c>>2]=f[h>>2];V_(210652,c,24,d)|0;d=f[52663]|0;e=d+e|0;c=e+24|0;do{b[e>>0]=b[a>>0]|0;e=e+1|0;a=a+1|0}while((e|0)<(c|0));oc(d|0,d+((f[52664]|0)-d)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function Pu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;d=l+4|0;e=l;g=l+8|0;j=f[52664]|0;k=j-(f[52663]|0)|0;f[e>>2]=j;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,1,g)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;j=k-(f[52663]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,2,g)|0;j=(f[52663]|0)+j|0;b[j>>0]=118;b[j+1>>0]=0;j=f[52664]|0;k=j-(f[52663]|0)|0;f[e>>2]=j;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,24,g)|0;j=f[52663]|0;k=j+k|0;h=a;i=k+24|0;do{b[k>>0]=b[h>>0]|0;k=k+1|0;h=h+1|0}while((k|0)<(i|0));k=f[52664]|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(210652,d,24,g)|0;a=f[52663]|0;k=a+(k-j)|0;h=c;i=k+24|0;do{b[k>>0]=b[h>>0]|0;k=k+1|0;h=h+1|0}while((k|0)<(i|0));oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=l;return}f[52664]=a;u=l;return}function Qu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=159;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ru(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+4|0;h=e;c=e+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,c)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,c)|0;i=(f[52663]|0)+i|0;b[i>>0]=158;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,c)|0;d=(f[52663]|0)+d|0;c=d+12|0;do{b[d>>0]=b[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function Su(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=161;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Tu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=162;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Uu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=157;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Vu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=156;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Wu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=160;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Xu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=146;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Yu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=148;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Zu(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=149;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function _u(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+4|0;h=e;c=e+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,c)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,c)|0;i=(f[52663]|0)+i|0;b[i>>0]=145;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[c>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,12,c)|0;d=(f[52663]|0)+d|0;c=d+12|0;do{b[d>>0]=b[a>>0]|0;d=d+1|0;a=a+1|0}while((d|0)<(c|0));a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function $u(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=147;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function av(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=153;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function bv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=155;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function cv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=154;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function dv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=152;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function ev(a,c){a=+a;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;h=d+4|0;i=d;g=d+8|0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[i>>2]=e;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+j>>0]=82;j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,g)|0;e=(f[52663]|0)+e|0;b[e>>0]=151;b[e+1>>0]=0;e=f[52664]|0;j=e-(f[52663]|0)|0;f[i>>2]=e;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,g)|0;j=(f[52663]|0)+j|0;n[s>>2]=a;b[j>>0]=b[s>>0];b[j+1>>0]=b[s+1>>0];b[j+2>>0]=b[s+2>>0];b[j+3>>0]=b[s+3>>0];j=f[52664]|0;e=j-(f[52663]|0)|0;f[i>>2]=j;b[g>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,g)|0;b[(f[52663]|0)+e>>0]=c;c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function fv(a,c,d){a=+a;c=+c;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;i=e+4|0;j=e;h=e+8|0;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;k=(f[52663]|0)+k|0;b[k>>0]=150;b[k+1>>0]=0;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;n[s>>2]=a;b[g>>0]=b[s>>0];b[g+1>>0]=b[s+1>>0];b[g+2>>0]=b[s+2>>0];b[g+3>>0]=b[s+3>>0];g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;k=(f[52663]|0)+k|0;n[s>>2]=c;b[k>>0]=b[s>>0];b[k+1>>0]=b[s+1>>0];b[k+2>>0]=b[s+2>>0];b[k+3>>0]=b[s+3>>0];k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+g>>0]=d;d=f[52663]|0;oc(d|0,d+((f[52664]|0)-d)|0);d=f[52663]|0;if((f[52664]|0)==(d|0)){u=e;return}f[52664]=d;u=e;return}function gv(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[g>>2]|0;f[k>>2]=a;jd(a|0);a=f[h>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=63;b[a+1>>0]=0;Y_(210652,l);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=d&1;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=e&1;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,36,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function hv(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[g>>2]|0;f[k>>2]=a;jd(a|0);a=f[h>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=64;b[a+1>>0]=0;Y_(210652,l);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=d&1;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=e&1;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,36,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function iv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=14;b[c+1>>0]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function jv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=49;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function kv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=136;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function lv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=164;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;c=(f[52663]|0)+c|0;n[s>>2]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function mv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=165;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,36,a,36,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function nv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;i=e+4|0;j=e;h=e+8|0;g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=97;b[g+1>>0]=0;g=f[52664]|0;k=g-(f[52663]|0)|0;f[j>>2]=g;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=a&1;a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,0,c,0,d);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function ov(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;e=f[e>>2]|0;f[i>>2]=e;jd(e|0);e=f[g>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=60;b[e+1>>0]=0;X_(210652,k);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=d&1;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,i,11,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function pv(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;e=f[e>>2]|0;f[i>>2]=e;jd(e|0);e=f[g>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=61;b[e+1>>0]=0;X_(210652,k);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=d&1;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,i,11,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function qv(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=62;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,11,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function rv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+144|0;k=i+132|0;l=i+128|0;j=i+136|0;h=i;e=i+124|0;g=i+120|0;t_(h,a);a=f[c>>2]|0;f[e>>2]=a;jd(a|0);a=f[d>>2]|0;f[g>>2]=a;jd(a|0);a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;a=(f[52663]|0)+a|0;b[a>>0]=21;b[a+1>>0]=0;h$(210652,h);a=(f[52662]|0)+1|0;f[52662]=a;c=f[52664]|0;d=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,4,j)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;T_(a,19,e,19,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[g>>2]|0);ed(f[e>>2]|0);a=h+92|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=h+80|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=h+32|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=h+4|0;if((b[a+11>>0]|0)>=0){u=i;return}Zpb(f[a>>2]|0);u=i;return}function sv(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+16|0;j=h+4|0;k=h;i=h+8|0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;m=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;m=(f[52663]|0)+m|0;b[m>>0]=50;b[m+1>>0]=0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;l=(f[52663]|0)+l|0;b[l>>0]=a;b[l+1>>0]=a>>8;b[l+2>>0]=a>>16;b[l+3>>0]=a>>24;l=f[52664]|0;a=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+a>>0]=c&1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+a>>0]=d&1;a=(f[52662]|0)+1|0;f[52662]=a;c=f[52664]|0;d=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;T_(a,18,e,49,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=h;return}f[52664]=a;u=h;return}function tv(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+16|0;j=h+4|0;k=h;i=h+8|0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;m=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;m=(f[52663]|0)+m|0;b[m>>0]=51;b[m+1>>0]=0;m=f[52664]|0;l=m-(f[52663]|0)|0;f[k>>2]=m;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;l=(f[52663]|0)+l|0;b[l>>0]=a;b[l+1>>0]=a>>8;b[l+2>>0]=a>>16;b[l+3>>0]=a>>24;l=f[52664]|0;a=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+a>>0]=c&1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+a>>0]=d&1;a=(f[52662]|0)+1|0;f[52662]=a;c=f[52664]|0;d=c-(f[52663]|0)|0;f[k>>2]=c;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;T_(a,18,e,49,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=h;return}f[52664]=a;u=h;return}function uv(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return}function vv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=40;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,1,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function wv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=137;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function xv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=138;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,8,e)|0;c=(f[52663]|0)+c|0;p[s>>3]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];b[c+4>>0]=b[s+4>>0];b[c+5>>0]=b[s+5>>0];b[c+6>>0]=b[s+6>>0];b[c+7>>0]=b[s+7>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function yv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=140;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,8,e)|0;c=(f[52663]|0)+c|0;p[s>>3]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];b[c+4>>0]=b[s+4>>0];b[c+5>>0]=b[s+5>>0];b[c+6>>0]=b[s+6>>0];b[c+7>>0]=b[s+7>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function zv(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=139;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,8,e)|0;c=(f[52663]|0)+c|0;p[s>>3]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];b[c+4>>0]=b[s+4>>0];b[c+5>>0]=b[s+5>>0];b[c+6>>0]=b[s+6>>0];b[c+7>>0]=b[s+7>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Av(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;g=d+4|0;h=d;e=d+8|0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+c>>0]=82;c=f[52664]|0;i=c-(f[52663]|0)|0;f[h>>2]=c;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=133;b[i+1>>0]=0;i=f[52664]|0;c=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,8,e)|0;c=(f[52663]|0)+c|0;p[s>>3]=a;b[c>>0]=b[s>>0];b[c+1>>0]=b[s+1>>0];b[c+2>>0]=b[s+2>>0];b[c+3>>0]=b[s+3>>0];b[c+4>>0]=b[s+4>>0];b[c+5>>0]=b[s+5>>0];b[c+6>>0]=b[s+6>>0];b[c+7>>0]=b[s+7>>0];c=f[52663]|0;oc(c|0,c+((f[52664]|0)-c)|0);c=f[52663]|0;if((f[52664]|0)==(c|0)){u=d;return}f[52664]=c;u=d;return}function Bv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=144;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Cv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=106;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,4,e)|0;d=(f[52663]|0)+d|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Dv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;g=c+4|0;h=c;e=c+8|0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;i=d-(f[52663]|0)|0;f[h>>2]=d;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,2,e)|0;i=(f[52663]|0)+i|0;b[i>>0]=105;b[i+1>>0]=0;i=f[52664]|0;d=i-(f[52663]|0)|0;f[h>>2]=i;b[e>>0]=0;f[g>>2]=f[h>>2];V_(210652,g,1,e)|0;b[(f[52663]|0)+d>>0]=a&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=c;return}f[52664]=a;u=c;return}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=Bw(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=13676;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else Pw(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=13632;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=Vw(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=13744;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else cx(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=13700;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=hx(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=13812;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else qx(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=13768;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=vx(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=13880;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else Ex(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=13836;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=Jx(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(76)|0;b=e;d=b+76|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=13948;f[e+36>>2]=13972;f[e+56>>2]=13972;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else Sx(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=13904;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=ay(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(24)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b>>2]=14040;f[b+16>>2]=13676;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else jy(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=13996;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=yy(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(24)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b>>2]=14156;f[b+16>>2]=13812;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else Hy(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=14112;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=Ry(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(52)|0;b=e;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=14248;f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=0;f[e+16>>2]=14296;f[e+32>>2]=14344;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else _y(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=14204;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=uz(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(72)|0;b=e;d=b+72|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=14412;f[e+16>>2]=14460;f[e+40>>2]=14484;f[e+56>>2]=13812;f[e+64>>2]=14508;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else Dz(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=14368;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=Xz(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(52)|0;b=e;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=14576;f[e+16>>2]=14624;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else eA(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=14532;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=rA(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(44)|0;b=e;d=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=14692;f[e+16>>2]=14740;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else AA(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=14648;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=NA(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=14808;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else WA(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=14764;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=fB(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=14924;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else oB(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=14880;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=zB(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(84)|0;b=e;d=b+84|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=15040;f[e+16>>2]=15088;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else IB(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=14996;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=WB(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(36)|0;b=e;d=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=15156;f[e+16>>2]=13972;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else dC(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=15112;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=nC(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(32)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;f[b>>2]=15248;f[b+16>>2]=15296;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else wC(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15204;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=JC(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(32)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;f[b>>2]=15364;f[b+16>>2]=14484;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else SC(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15320;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=aD(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(36)|0;b=e;d=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=14296;f[e+16>>2]=14344;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else kD(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=15412;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=mD(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=15500;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else vD(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15456;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=ED(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(24)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b>>2]=15592;f[b+16>>2]=15640;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else ND(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15548;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=ZD(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=15708;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else gE(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15664;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=lE(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(52)|0;b=e;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=15776;f[e+40>>2]=0;f[e+44>>2]=0;f[e+48>>2]=0;f[e+36>>2]=14808;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else uE(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=15732;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=FE(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=15868;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else OE(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=15824;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=TE(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(88)|0;b=e;d=b+40|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=15936;f[e+44>>2]=0;f[e+48>>2]=0;f[e+52>>2]=0;f[e+40>>2]=14808;f[e+60>>2]=0;f[e+64>>2]=0;f[e+68>>2]=0;f[e+56>>2]=14808;f[e+76>>2]=0;f[e+80>>2]=0;f[e+84>>2]=0;f[e+72>>2]=14808;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else aF(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=15892;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=jF(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(88)|0;b=e;d=b+40|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=16028;f[e+44>>2]=0;f[e+48>>2]=0;f[e+52>>2]=0;f[e+40>>2]=14924;f[e+60>>2]=0;f[e+64>>2]=0;f[e+68>>2]=0;f[e+56>>2]=14924;f[e+76>>2]=0;f[e+80>>2]=0;f[e+84>>2]=0;f[e+72>>2]=14924;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else sF(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=15984;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+32|0;h=i;d=BF(a)|0;f[g>>2]=d;d=d+12|0;b=f[d>>2]|0;f[g+4>>2]=b;f[d>>2]=b+1;d=CF(g)|0;f[h>>2]=d;b=h+8|0;e=h+24|0;f[e>>2]=b;f[b>>2]=16076;f[h+12>>2]=c;b=a+16|0;c=f[b>>2]|0;if(c>>>0<(f[a+20>>2]|0)>>>0){f[c>>2]=d;a=c+8|0;f[c+24>>2]=a;d=f[e>>2]|0;nh[f[(f[d>>2]|0)+12>>2]&1023](d,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(a+12|0,h);b=f[e>>2]|0;if((h+8|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);b=f[g>>2]|0;if(!b){u=i;return}h=b+12|0;f[h>>2]=(f[h>>2]|0)+-1;u=i;return}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=nG(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=16372;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else wG(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16328;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=BG(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=16440;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else KG(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16396;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=PG(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(56)|0;b=e;d=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=16508;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else YG(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=16464;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=bH(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=16576;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else kH(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16532;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=pH(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(44)|0;b=e;d=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=16644;f[e+32>>2]=0;f[e+36>>2]=0;f[e+40>>2]=0;f[e+28>>2]=14924;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else yH(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=16600;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=HH(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=16736;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else QH(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16692;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=WH(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(24)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b>>2]=16804;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else dI(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16760;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=iI(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(28)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b>>2]=14740;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else rI(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16828;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=tI(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(696)|0;Krb(b|0,0,696)|0;f[b>>2]=16940;jga(b+8|0);f[b>>2]=16916;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else CI(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=16872;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+32|0;l=n;i=QI(a)|0;m=i+12|0;j=f[m>>2]|0;f[m>>2]=j+1;k=a+12|0;g=i+4|0;b=f[i>>2]|0;if((j|0)==((f[g>>2]|0)-b>>2|0)){e=Wpb(64)|0;b=e;d=b+64|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=17056;f[h>>2]=e;b=f[g>>2]|0;if(b>>>0<(f[i+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=b+4}else ZI(i,h);b=f[i>>2]|0}e=f[b+(j<<2)>>2]|0;f[l>>2]=e;b=l+8|0;g=l+24|0;f[g>>2]=b;f[b>>2]=17012;f[l+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(k,l);b=f[g>>2]|0;if((l+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}if(!b){l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=f[m>>2]|0;l=l+-1|0;f[m>>2]=l;u=n;return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=cJ(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=17124;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else mJ(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17080;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=rJ(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=14856;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else AJ(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17148;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=CJ(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=14972;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else LJ(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17192;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=NJ(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=17280;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else WJ(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17236;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=$J(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=17348;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else iK(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17304;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=nK(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(24)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b>>2]=17416;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else wK(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17372;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=BK(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=17484;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else KK(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17440;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=PK(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(20)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b>>2]=13972;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else YK(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17508;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=_K(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=15296;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else hL(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=17552;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+32|0;h=i;d=jL(a)|0;f[g>>2]=d;d=d+12|0;b=f[d>>2]|0;f[g+4>>2]=b;f[d>>2]=b+1;d=kL(g)|0;f[h>>2]=d;b=h+8|0;e=h+24|0;f[e>>2]=b;f[b>>2]=17596;f[h+12>>2]=c;b=a+16|0;c=f[b>>2]|0;if(c>>>0<(f[a+20>>2]|0)>>>0){f[c>>2]=d;a=c+8|0;f[c+24>>2]=a;d=f[e>>2]|0;nh[f[(f[d>>2]|0)+12>>2]&1023](d,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(a+12|0,h);b=f[e>>2]|0;if((h+8|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);b=f[g>>2]|0;if(!b){u=i;return}h=b+12|0;f[h>>2]=(f[h>>2]|0)+-1;u=i;return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=EM(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=18092;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else NM(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=18048;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=SM(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b>>2]=14484;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else $M(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=18116;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=bN(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(20)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b>>2]=14344;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else kN(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=18160;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=mN(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=14088;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else vN(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=18204;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;g=m+32|0;k=m;h=xN(a)|0;l=h+12|0;i=f[l>>2]|0;f[l>>2]=i+1;j=a+12|0;e=h+4|0;b=f[h>>2]|0;if((i|0)==((f[e>>2]|0)-b>>2|0)){b=Wpb(8)|0;d=b;f[d>>2]=0;f[d+4>>2]=0;f[b>>2]=15640;f[g>>2]=b;d=f[e>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=b;f[e>>2]=d+4}else GN(h,g);b=f[h>>2]|0}e=f[b+(i<<2)>>2]|0;f[k>>2]=e;b=k+8|0;g=k+24|0;f[g>>2]=b;f[b>>2]=18248;f[k+12>>2]=c;b=a+16|0;d=f[b>>2]|0;if(d>>>0<(f[a+20>>2]|0)>>>0){f[d>>2]=e;a=d+8|0;f[d+24>>2]=a;j=f[g>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,a);f[b>>2]=(f[b>>2]|0)+32}else Gw(j,k);b=f[g>>2]|0;if((k+8|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}if(!b){k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=f[l>>2]|0;k=k+-1|0;f[l>>2]=k;u=m;return}function Bw(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215137;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215137)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215137,1540483477)|0)>>>24^(X(215137,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215137)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function Cw(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;j=f[b>>2]|0;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=a+4|0;l=f[k>>2]|0;m=(l|0)==0;h=j;a:do if(m)b=0;else{g=l+-1|0;c=(g&l|0)==0;if(c)i=o&g;else if(o>>>0<l>>>0)i=o;else i=(o>>>0)%(l>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b)b=i;else{if(c){do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if(!((c|0)==(o|0)|(c&g|0)==(i|0))){b=i;break a}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if((c|0)!=(o|0)){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(i|0)){b=i;break a}}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}}while(0);i=Wpb(16)|0;f[i+8>>2]=j;f[i+12>>2]=0;f[i+4>>2]=o;f[i>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(m|e*+(l>>>0)<d){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;c=~~+W(+(d/e))>>>0;Dw(a,b>>>0<c>>>0?c:b);b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&o;break}if(o>>>0<b>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=l;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[i>>2]=f[b>>2];f[b>>2]=i;f[c>>2]=b;b=f[i>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;p=30}}else{f[i>>2]=f[b>>2];p=30}if((p|0)==30)f[b>>2]=i;f[h>>2]=(f[h>>2]|0)+1;a=i;a=a+12|0;return a|0}function Dw(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Ew(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Ew(a,b);return}function Ew(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Fw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;i=f[a>>2]|0;d=e-i>>2;c=d+1|0;j=i;if(c>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-i|0;g=m>>1;g=m>>2>>>0<536870911?(g>>>0<c>>>0?c:g):1073741823;do if(!g)h=0;else if(g>>>0>1073741823)ud();else{h=Wpb(g<<2)|0;break}while(0);c=h+(d<<2)|0;d=c;h=h+(g<<2)|0;f[c>>2]=f[b>>2];g=c+4|0;if((e|0)==(j|0))c=j;else{do{e=e+-4|0;m=f[e>>2]|0;f[e>>2]=0;f[c+-4>>2]=m;c=d+-4|0;d=c}while((e|0)!=(j|0));i=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=d;f[l>>2]=g;f[k>>2]=h;b=i;if((c|0)!=(b|0)){g=c;do{g=g+-4|0;h=f[g>>2]|0;f[g>>2]=0;if(h|0){c=f[h>>2]|0;if(c|0){e=h+4|0;d=f[e>>2]|0;if((d|0)!=(c|0)){do{m=d+-4|0;f[e>>2]=m;d=f[m>>2]|0;f[m>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[e>>2]|0}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}Zpb(h)}}while((g|0)!=(b|0))}if(!i)return;Zpb(i);return}function Gw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;i=f[o>>2]|0;c=f[a>>2]|0;l=i-c>>5;d=l+1|0;j=c;if(d>>>0>134217727)fob(a);n=a+8|0;h=(f[n>>2]|0)-c|0;m=h>>4;d=h>>5>>>0<67108863?(m>>>0<d>>>0?d:m):134217727;do if(!d)k=0;else if(d>>>0>134217727)ud();else{k=Wpb(d<<5)|0;break}while(0);g=k+(l<<5)|0;c=g;m=k+(d<<5)|0;f[g>>2]=f[b>>2];d=k+(l<<5)+8|0;e=b+24|0;h=f[e>>2]|0;do if(!h){f[k+(l<<5)+24>>2]=0;d=i}else if((b+8|0)==(h|0)){f[k+(l<<5)+24>>2]=d;nh[f[(f[h>>2]|0)+12>>2]&1023](h,d);d=f[o>>2]|0;j=f[a>>2]|0;break}else{f[k+(l<<5)+24>>2]=h;f[e>>2]=0;d=i;break}while(0);k=g+32|0;if((d|0)==(j|0))g=d;else{do{e=d;d=d+-32|0;f[g+-32>>2]=f[d>>2];h=g+-24|0;b=e+-8|0;i=f[b>>2]|0;do if(!i)f[g+-8>>2]=0;else if((e+-24|0)==(i|0)){f[g+-8>>2]=h;l=f[b>>2]|0;nh[f[(f[l>>2]|0)+12>>2]&1023](l,h);break}else{f[g+-8>>2]=i;f[b>>2]=0;break}while(0);g=c+-32|0;c=g}while((d|0)!=(j|0));g=f[a>>2]|0}f[a>>2]=c;c=f[o>>2]|0;f[o>>2]=k;f[n>>2]=m;e=g;if((c|0)!=(e|0))do{d=f[c+-8>>2]|0;if((c+-24|0)==(d|0))fh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)fh[f[(f[d>>2]|0)+20>>2]&2047](d);c=c+-32|0}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Hw(a){a=a|0;Zpb(a);return}function Iw(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13632;f[b+4>>2]=f[a+4>>2];return b|0}function Jw(a,b){a=a|0;b=b|0;f[b>>2]=13632;f[b+4>>2]=f[a+4>>2];return}function Kw(a){a=a|0;return}function Lw(a){a=a|0;Zpb(a);return}function Mw(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function Nw(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==53793?a+4|0:0)|0}function Ow(a){a=a|0;return 32}function Pw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Qw(a){a=a|0;return}function Rw(a){a=a|0;Zpb(a);return}function Sw(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=(b[c>>0]|0)!=0&1;d=c+1|0;return d|0}function Tw(a){a=a|0;return a+4|0}function Uw(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(13480,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function Vw(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215138;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215138)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215138,1540483477)|0)>>>24^(X(215138,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215138)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function Ww(a){a=a|0;Zpb(a);return}function Xw(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=13700;f[b+4>>2]=f[a+4>>2];return b|0}function Yw(a,b){a=a|0;b=b|0;f[b>>2]=13700;f[b+4>>2]=f[a+4>>2];return}function Zw(a){a=a|0;return}function _w(a){a=a|0;Zpb(a);return}function $w(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function ax(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==54075?a+4|0:0)|0}function bx(a){a=a|0;return 96}function cx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function dx(a){a=a|0;Zpb(a);return}function ex(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((d-c|0)<8){d=0;return d|0}e=c;f=e;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;d=a+8|0;a=d;b[a>>0]=f;b[a+1>>0]=f>>8;b[a+2>>0]=f>>16;b[a+3>>0]=f>>24;d=d+4|0;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;d=c+8|0;return d|0}function fx(a){a=a|0;return a+8|0}function gx(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;p[c>>3]=+p[a>>3];a=sd(13568,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function hx(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215139;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215139)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215139,1540483477)|0)>>>24^(X(215139,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215139)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function ix(a){a=a|0;Zpb(a);return}
function m3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){q=b;r=b+-16|0;t=b+-8|0;while(1){b:while(1){o=a;c=q-o|0;g=c>>4;switch(g|0){case 2:{s=5;break a}case 3:{s=7;break a}case 4:{s=15;break a}case 5:{s=16;break a}case 1:case 0:{s=84;break a}default:{}}if((c|0)<112){s=22;break a}m=(g|0)/2|0;l=a+(m<<4)|0;do if((c|0)>15984){k=(g|0)/4|0;n=a+(k<<4)|0;h=l+(k<<4)|0;c=o3a(a,n,l,h)|0;d=+p[r>>3];e=+p[h>>3];if(!(d>e)){g=l;break}p[h>>3]=d;p[r>>3]=e;j=h+8|0;g=f[j>>2]|0;f[j>>2]=f[t>>2];f[t>>2]=g;g=c+1|0;d=+p[h>>3];e=+p[l>>3];if(d>e){p[l>>3]=d;p[h>>3]=e;h=a+(m<<4)+8|0;g=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=g;g=c+2|0;d=+p[l>>3];e=+p[n>>3];if(d>e){p[n>>3]=d;p[l>>3]=e;g=a+(k<<4)+8|0;m=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=m;d=+p[n>>3];e=+p[a>>3];if(d>e){p[a>>3]=d;p[n>>3]=e;m=a+8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;c=c+4|0;g=l}else{c=c+3|0;g=l}}else{c=g;g=l}}else{c=g;g=l}}else{d=+p[l>>3];i=+p[a>>3];e=+p[r>>3];c=e>d;if(!(d>i)){if(!c){c=0;g=l;break}p[l>>3]=e;p[r>>3]=d;c=a+(m<<4)+8|0;n=f[c>>2]|0;f[c>>2]=f[t>>2];f[t>>2]=n;d=+p[l>>3];e=+p[a>>3];if(!(d>e)){c=1;g=l;break}p[a>>3]=d;p[l>>3]=e;n=a+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;c=2;g=l;break}if(c){p[a>>3]=e;p[r>>3]=i;g=a+8|0;c=f[g>>2]|0;f[g>>2]=f[t>>2];f[t>>2]=c;c=1;g=l;break}p[a>>3]=d;p[l>>3]=i;n=a+8|0;c=a+(m<<4)+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;d=+p[r>>3];if(d>i){p[l>>3]=d;p[r>>3]=i;f[c>>2]=f[t>>2];f[t>>2]=g;c=2;g=l}else{c=1;g=l}}while(0);i=+p[a>>3];d=+p[g>>3];if(i>d){g=r;break}else h=r;while(1){g=h+-16|0;if((a|0)==(g|0))break;e=+p[g>>3];if(e>d){s=67;break b}else h=g}c=a+16|0;e=+p[r>>3];if(!(i>e)){if((c|0)==(r|0)){s=84;break a}while(1){d=+p[c>>3];if(i>d)break;c=c+16|0;if((c|0)==(r|0)){s=84;break a}}p[c>>3]=e;p[r>>3]=d;n=c+8|0;o=f[n>>2]|0;f[n>>2]=f[t>>2];f[t>>2]=o;c=c+16|0}if((c|0)==(r|0)){s=84;break a}else g=r;while(1){i=+p[a>>3];while(1){e=+p[c>>3];j=c+16|0;if(i>e)break;else c=j}while(1){h=g+-16|0;d=+p[h>>3];if(i>d)g=h;else break}if(c>>>0>=h>>>0){a=c;continue b}p[c>>3]=d;p[h>>3]=e;o=c+8|0;g=g+-8|0;c=f[o>>2]|0;f[o>>2]=f[g>>2];f[g>>2]=c;g=h;c=j}}if((s|0)==67){s=0;p[a>>3]=e;p[g>>3]=i;k=a+8|0;n=h+-8|0;m=f[k>>2]|0;f[k>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}h=a+16|0;c:do if(h>>>0<g>>>0)while(1){i=+p[l>>3];while(1){e=+p[h>>3];k=h+16|0;if(e>i)h=k;else break}while(1){j=g+-16|0;d=+p[j>>3];if(d>i)break;else g=j}if(h>>>0>j>>>0){g=l;break c}p[h>>3]=d;p[j>>3]=e;m=h+8|0;g=g+-8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;l=(l|0)==(h|0)?j:l;g=j;h=k;c=c+1|0}else g=l;while(0);if((h|0)!=(g|0)){d=+p[g>>3];e=+p[h>>3];if(d>e){p[h>>3]=d;p[g>>3]=e;l=h+8|0;n=g+8|0;m=f[l>>2]|0;f[l>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}}if(!c){c=p3a(a,h)|0;g=h+16|0;if(p3a(g,b)|0){s=83;break}if(c){a=g;continue}}n=h;if((n-o|0)>=(q-n|0)){s=82;break}m3a(a,h);a=h+16|0}if((s|0)==82){s=0;m3a(h+16|0,b);b=h;continue}else if((s|0)==83){s=0;if(c){s=84;break}else{b=h;continue}}}if((s|0)==5){e=+p[r>>3];d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[r>>3]=d;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}else if((s|0)==7){g=a+16|0;e=+p[g>>3];i=+p[a>>3];c=b+-16|0;d=+p[c>>3];b=d>e;if(!(e>i)){if(!b)return;p[g>>3]=d;p[c>>3]=e;b=a+24|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;d=+p[g>>3];e=+p[a>>3];if(!(d>e))return;p[a>>3]=d;p[g>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=f[b>>2];f[b>>2]=t;return}if(b){p[a>>3]=d;p[c>>3]=i;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}p[a>>3]=e;p[g>>3]=i;s=a+8|0;a=a+24|0;b=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=b;d=+p[c>>3];if(!(d>i))return;p[g>>3]=d;p[c>>3]=i;f[a>>2]=f[t>>2];f[t>>2]=b;return}else if((s|0)==15){o3a(a,a+16|0,a+32|0,r)|0;return}else if((s|0)==16){j=a+16|0;h=a+32|0;c=a+48|0;o3a(a,j,h,c)|0;b=b+-16|0;d=+p[b>>3];e=+p[c>>3];if(!(d>e))return;p[c>>3]=d;p[b>>3]=e;b=a+56|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;e=+p[c>>3];d=+p[h>>3];if(!(e>d))return;p[h>>3]=e;p[c>>3]=d;c=a+40|0;t=f[c>>2]|0;g=f[b>>2]|0;f[c>>2]=g;f[b>>2]=t;d=+p[j>>3];if(!(e>d))return;p[j>>3]=e;p[h>>3]=d;b=a+24|0;t=f[b>>2]|0;f[b>>2]=g;f[c>>2]=t;d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[j>>3]=d;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[b>>2]=t;return}else if((s|0)==22){j=a+32|0;h=a+16|0;d=+p[h>>3];e=+p[a>>3];i=+p[j>>3];c=i>d;do if(d>e){if(c){p[a>>3]=i;p[j>>3]=e;r=a+8|0;t=a+40|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;d=e;break}p[a>>3]=d;p[h>>3]=e;t=a+8|0;c=a+24|0;g=f[t>>2]|0;f[t>>2]=f[c>>2];f[c>>2]=g;if(i>e){p[h>>3]=i;p[j>>3]=e;t=a+40|0;f[c>>2]=f[t>>2];f[t>>2]=g;d=e}else d=i}else if(c){p[h>>3]=i;p[j>>3]=d;c=a+24|0;t=a+40|0;s=f[c>>2]|0;g=f[t>>2]|0;f[c>>2]=g;f[t>>2]=s;if(i>e){p[a>>3]=i;p[h>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[c>>2]=t}}else d=i;while(0);c=a+48|0;if((c|0)==(b|0))return;else{k=c;c=j}while(1){e=+p[k>>3];if(e>d){j=f[k+8>>2]|0;g=k;while(1){p[g>>3]=d;h=c+8|0;f[g+8>>2]=f[h>>2];if((c|0)==(a|0)){c=a;break}g=c+-16|0;d=+p[g>>3];if(!(e>d))break;else{t=c;c=g;g=t}}p[c>>3]=e;f[h>>2]=j}c=k+16|0;if((c|0)==(b|0))break;d=+p[k>>3];t=k;k=c;c=t}return}else if((s|0)==84)return}function n3a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0;I=u;u=u+48|0;G=I;J=+n[c+4>>2];g=+n[c+8>>2];l=+n[c+12>>2];m=+n[c+16>>2];o=+n[c+20>>2];p[G>>3]=+n[c>>2];p[G+8>>3]=J;p[G+16>>3]=g;p[G+24>>3]=l;p[G+32>>3]=m;p[G+40>>3]=o;F=a+28|0;if((a3a(f[F>>2]|0,G)|0)!=2)if(+Lg[f[(f[a>>2]|0)+16>>2]&31](a,G)>=0.0){e=c+36|0;if(f[e>>2]|0){hWa(G,c,b[c+48>>0]|0,+n[c+44>>2]);E=f[e>>2]|0;f[E>>2]=f[G>>2];f[E+4>>2]=f[G+4>>2];f[E+8>>2]=f[G+8>>2];f[E+12>>2]=f[G+12>>2];f[E+16>>2]=f[G+16>>2];f[E+20>>2]=f[G+20>>2];f[E+52>>2]=f[G+24>>2];f[E+56>>2]=f[G+28>>2];f[E+60>>2]=f[G+32>>2];f[E+64>>2]=f[G+36>>2];f[E+68>>2]=f[G+40>>2];f[E+72>>2]=f[G+44>>2];n3a(a,E,d);n3a(a,E+52|0,d)}D=a+12|0;E=f[D>>2]|0?a+16|0:0;d=f[c+24>>2]|0;s=f[c+28>>2]|0;if((d|0)==(s|0)){u=I;return}t=a+8|0;v=G+8|0;w=G+16|0;x=G+24|0;y=(E|0)==0;z=a+64|0;A=a+464|0;B=E+4|0;C=E+8|0;do{r=f[d>>2]|0;q=r+196|0;do if(!(f[q>>2]&3))if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[q>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(G,f[t>>2]|0,f[D>>2]|0,r,0);a:do if(!(f[q>>2]&2)){k=f[F>>2]|0;c=f[k>>2]|0;k=f[k+4>>2]|0;if((c|0)==(k|0))H=22;else{g=+p[G>>3];l=+p[v>>3];m=+p[w>>3];o=+p[x>>3];e=0;do{h=f[c>>2]|0;j=f[c+4>>2]|0;if((h|0)==(j|0))e=(e|0)>0?e:0;else{i=2;do{J=+p[h+24>>3]+(g*+p[h>>3]+(l*+p[h+8>>3]+m*+p[h+16>>3]));K=!(J*J>=o)?1:J<0.0?0:2;i=(K|0)<(i|0)?K:i;h=h+32|0}while((h|0)!=(j|0));if((i|0)==2)break a;else e=(e|0)<(i|0)?i:e}c=c+12|0}while((c|0)!=(k|0));if((e|0)!=2)H=22}}else H=22;while(0);if((H|0)==22){H=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,G);if(g>=0.0){if(!y)if(f[q>>2]&33554432|0){K=f[r+104>>2]|0;if(+n[E>>2]*+n[K+240>>2]+(+n[B>>2]*+n[K+244>>2]+ +n[C>>2]*+n[K+248>>2])<+n[K+252>>2])break}X2a(z,+p[A>>3]-g,r);break}}}}while(0);d=d+4|0}while((d|0)!=(s|0));u=I;return}u=I;return}function o3a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0.0,j=0,k=0;g=+p[b>>3];i=+p[a>>3];e=+p[c>>3];h=e>g;do if(g>i){if(h){p[a>>3]=e;p[c>>3]=i;h=a+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=1;g=i;break}p[a>>3]=g;p[b>>3]=i;k=a+8|0;h=b+8|0;j=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=j;g=+p[c>>3];if(g>i){p[b>>3]=g;p[c>>3]=i;k=c+8|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=2;g=i}else k=1}else if(h){p[b>>3]=e;p[c>>3]=g;h=b+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;e=+p[b>>3];i=+p[a>>3];if(e>i){p[a>>3]=e;p[b>>3]=i;j=a+8|0;k=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=k;k=2;g=+p[c>>3]}else k=1}else{k=0;g=e}while(0);e=+p[d>>3];if(!(e>g)){b=k;return b|0}p[c>>3]=e;p[d>>3]=g;j=c+8|0;d=d+8|0;h=f[j>>2]|0;f[j>>2]=f[d>>2];f[d>>2]=h;e=+p[c>>3];g=+p[b>>3];if(!(e>g)){b=k+1|0;return b|0}p[b>>3]=e;p[c>>3]=g;h=b+8|0;c=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=c;e=+p[b>>3];g=+p[a>>3];if(!(e>g)){b=k+2|0;return b|0}p[a>>3]=e;p[b>>3]=g;a=a+8|0;b=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=b;b=k+3|0;return b|0}function p3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0.0,j=0,k=0,l=0;switch(b-a>>4|0){case 2:{c=b+-16|0;e=+p[c>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[c>>3]=g;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}case 3:{j=a+16|0;e=+p[j>>3];i=+p[a>>3];h=b+-16|0;g=+p[h>>3];c=g>e;if(!(e>i)){if(!c){a=1;return a|0}p[j>>3]=g;p[h>>3]=e;c=a+24|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;e=+p[j>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[j>>3]=g;b=a+8|0;a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=1;return a|0}if(c){p[a>>3]=g;p[h>>3]=i;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}p[a>>3]=e;p[j>>3]=i;l=a+8|0;c=a+24|0;d=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=d;e=+p[h>>3];if(!(e>i)){a=1;return a|0}p[j>>3]=e;p[h>>3]=i;a=b+-8|0;f[c>>2]=f[a>>2];f[a>>2]=d;a=1;return a|0}case 4:{o3a(a,a+16|0,a+32|0,b+-16|0)|0;a=1;return a|0}case 5:{k=a+16|0;j=a+32|0;d=a+48|0;o3a(a,k,j,d)|0;c=b+-16|0;e=+p[c>>3];g=+p[d>>3];if(!(e>g)){a=1;return a|0}p[d>>3]=e;p[c>>3]=g;c=a+56|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;g=+p[d>>3];e=+p[j>>3];if(!(g>e)){a=1;return a|0}p[j>>3]=g;p[d>>3]=e;d=a+40|0;b=f[d>>2]|0;h=f[c>>2]|0;f[d>>2]=h;f[c>>2]=b;e=+p[k>>3];if(!(g>e)){a=1;return a|0}p[k>>3]=g;p[j>>3]=e;c=a+24|0;b=f[c>>2]|0;f[c>>2]=h;f[d>>2]=b;e=+p[a>>3];if(!(g>e)){a=1;return a|0}p[a>>3]=g;p[k>>3]=e;b=a+8|0;a=f[b>>2]|0;f[b>>2]=h;f[c>>2]=a;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{d=a+32|0;j=a+16|0;e=+p[j>>3];g=+p[a>>3];i=+p[d>>3];c=i>e;do if(e>g){if(c){p[a>>3]=i;p[d>>3]=g;j=a+8|0;l=a+40|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;e=g;break}p[a>>3]=e;p[j>>3]=g;l=a+8|0;c=a+24|0;h=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=h;if(i>g){p[j>>3]=i;p[d>>3]=g;l=a+40|0;f[c>>2]=f[l>>2];f[l>>2]=h;e=g}else e=i}else if(c){p[j>>3]=i;p[d>>3]=e;c=a+24|0;l=a+40|0;k=f[c>>2]|0;h=f[l>>2]|0;f[c>>2]=h;f[l>>2]=k;if(i>g){p[a>>3]=i;p[j>>3]=g;k=a+8|0;l=f[k>>2]|0;f[k>>2]=h;f[c>>2]=l}}else e=i;while(0);c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{l=c;c=0;while(1){g=+p[l>>3];if(g>e){k=f[l+8>>2]|0;h=l;while(1){p[h>>3]=e;j=d+8|0;f[h+8>>2]=f[j>>2];if((d|0)==(a|0))break;h=d+-16|0;e=+p[h>>3];if(!(g>e))break;else{j=d;d=h;h=j}}p[d>>3]=g;f[j>>2]=k;c=c+1|0;if((c|0)==8){d=0;c=(l+16|0)==(b|0);break a}}d=l+16|0;if((d|0)==(b|0)){d=1;c=0;break a}e=+p[l>>3];k=l;l=d;d=k}}while(0);a=c|d;return a|0}}return 0}function q3a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0,p=0.0;h=f[b>>2]|0;m=f[a>>2]|0;d=+n[h+144>>2];d=!(d<=4.827976454180316e-07)?d:0.0;l=+n[m+144>>2];l=!(l<=4.827976454180316e-07)?l:0.0;k=h;o=m;if(d<l)i=1;else if(d>l)i=0;else{p=+n[h+148>>2];e=+n[m+148>>2];i=(!(p>=.9999995231628418)?p:1.0)<(!(e>=.9999995231628418)?e:1.0)}g=f[c>>2]|0;e=+n[g+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;j=g;if(e<d)g=1;else if(e>d)g=0;else{e=+n[g+148>>2];p=+n[h+148>>2];g=(!(e>=.9999995231628418)?e:1.0)<(!(p>=.9999995231628418)?p:1.0)}if(!i){if(!g){b=0;return b|0}f[b>>2]=j;f[c>>2]=k;g=f[b>>2]|0;h=f[a>>2]|0;d=+n[g+144>>2];d=!(d<=4.827976454180316e-07)?d:0.0;e=+n[h+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;i=h;j=g;if(!(d<e)){if(d>e){b=1;return b|0}l=+n[g+148>>2];p=+n[h+148>>2];if(!((!(l>=.9999995231628418)?l:1.0)<(!(p>=.9999995231628418)?p:1.0))){b=1;return b|0}}f[a>>2]=j;f[b>>2]=i;b=2;return b|0}if(g){f[a>>2]=j;f[c>>2]=o;b=1;return b|0}f[a>>2]=k;f[b>>2]=o;g=f[c>>2]|0;d=+n[g+144>>2];d=!(d<=4.827976454180316e-07)?d:0.0;h=g;if(!(d<l)){if(d>l){b=1;return b|0}l=+n[g+148>>2];p=+n[m+148>>2];if(!((!(l>=.9999995231628418)?l:1.0)<(!(p>=.9999995231628418)?p:1.0))){b=1;return b|0}}f[b>>2]=h;f[c>>2]=o;b=2;return b|0}function r3a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0;l=q3a(a,b,c)|0;j=f[d>>2]|0;k=f[c>>2]|0;e=+n[j+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;g=+n[k+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=k;i=j;if(!(e<g)){if(e>g)return l|0;e=+n[j+148>>2];g=+n[k+148>>2];if(!((!(e>=.9999995231628418)?e:1.0)<(!(g>=.9999995231628418)?g:1.0)))return l|0}f[c>>2]=i;f[d>>2]=h;h=l+1|0;i=f[c>>2]|0;d=f[b>>2]|0;e=+n[i+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;g=+n[d+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;j=d;k=i;if(!(e<g)){if(e>g){l=h;return l|0}e=+n[i+148>>2];g=+n[d+148>>2];if(!((!(e>=.9999995231628418)?e:1.0)<(!(g>=.9999995231628418)?g:1.0))){l=h;return l|0}}f[b>>2]=k;f[c>>2]=j;h=l+2|0;i=f[b>>2]|0;d=f[a>>2]|0;e=+n[i+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;g=+n[d+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;j=d;k=i;if(!(e<g)){if(e>g){l=h;return l|0}e=+n[i+148>>2];g=+n[d+148>>2];if(!((!(e>=.9999995231628418)?e:1.0)<(!(g>=.9999995231628418)?g:1.0))){l=h;return l|0}}f[a>>2]=k;f[b>>2]=j;l=l+3|0;return l|0}function s3a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0;m=r3a(a,b,c,d)|0;k=f[e>>2]|0;l=f[d>>2]|0;g=+n[k+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=+n[l+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;i=l;j=k;if(!(g<h)){if(g>h)return m|0;g=+n[k+148>>2];h=+n[l+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(h>=.9999995231628418)?h:1.0)))return m|0}f[d>>2]=j;f[e>>2]=i;i=m+1|0;j=f[d>>2]|0;e=f[c>>2]|0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=+n[e+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;k=e;l=j;if(!(g<h)){if(g>h){m=i;return m|0}g=+n[j+148>>2];h=+n[e+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(h>=.9999995231628418)?h:1.0))){m=i;return m|0}}f[c>>2]=l;f[d>>2]=k;i=m+2|0;j=f[c>>2]|0;e=f[b>>2]|0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=+n[e+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;k=e;l=j;if(!(g<h)){if(g>h){m=i;return m|0}g=+n[j+148>>2];h=+n[e+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(h>=.9999995231628418)?h:1.0))){m=i;return m|0}}f[b>>2]=l;f[c>>2]=k;i=m+3|0;j=f[b>>2]|0;e=f[a>>2]|0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=+n[e+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;k=e;l=j;if(!(g<h)){if(g>h){m=i;return m|0}g=+n[j+148>>2];h=+n[e+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(h>=.9999995231628418)?h:1.0))){m=i;return m|0}}f[a>>2]=l;f[b>>2]=k;m=m+4|0;return m|0}function t3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0.0;switch(b-a>>2|0){case 2:{e=b+-4|0;i=f[e>>2]|0;j=f[a>>2]|0;g=+n[i+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;h=+n[j+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;c=j;d=i;if(!(g<h)){if(g>h){a=1;return a|0}g=+n[i+148>>2];h=+n[j+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(h>=.9999995231628418)?h:1.0))){a=1;return a|0}}f[a>>2]=d;f[e>>2]=c;a=1;return a|0}case 3:{q3a(a,a+4|0,b+-4|0)|0;a=1;return a|0}case 4:{r3a(a,a+4|0,a+8|0,b+-4|0)|0;a=1;return a|0}case 5:{s3a(a,a+4|0,a+8|0,a+12|0,b+-4|0)|0;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{e=a+8|0;q3a(a,a+4|0,e)|0;c=a+12|0;a:do if((c|0)==(b|0)){d=1;c=0}else{d=0;while(1){i=f[c>>2]|0;j=f[e>>2]|0;h=+n[i+144>>2];h=!(h<=4.827976454180316e-07)?h:0.0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;m=i;k=j;if(h<g){i=i+148|0;o=14}else if(!(h>g)){i=i+148|0;p=+n[i>>2];g=+n[j+148>>2];if((!(p>=.9999995231628418)?p:1.0)<(!(g>=.9999995231628418)?g:1.0))o=14}if((o|0)==14){o=0;f[c>>2]=k;b:do if((e|0)!=(a|0)){j=e;while(1){l=e;e=j+-4|0;j=f[e>>2]|0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;k=j;if(!(h<g)){if(h>g){e=l;break b}g=+n[i>>2];p=+n[j+148>>2];if(!((!(g>=.9999995231628418)?g:1.0)<(!(p>=.9999995231628418)?p:1.0))){e=l;break b}}f[l>>2]=k;if((e|0)==(a|0))break;else j=e}}while(0);f[e>>2]=m;d=d+1|0;if((d|0)==8){d=0;c=(c+4|0)==(b|0);break a}}e=c+4|0;if((e|0)==(b|0)){d=1;c=0;break}else{m=c;c=e;e=m}}}while(0);a=c|d;return a|0}}return 0}function u3a(a,c){a=a|0;c=c|0;f[a+32>>2]=0;p[a+40>>3]=-1.0;f[a+48>>2]=4;if(!(b[a+56>>0]|0)){S2a(a);return}else{R2a(a,c);return}}function v3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0;F=u;u=u+48|0;B=F;C=F+40|0;E=a+56|0;b[E>>0]=0;d=f[c>>2]|0;r=f[c+4>>2]|0;if((d|0)==(r|0))c=a+476|0;else{x=a+8|0;y=a+12|0;z=a+28|0;A=B+8|0;s=B+16|0;t=B+24|0;c=a+476|0;v=a+480|0;w=a+472|0;do{q=f[d>>2]|0;do if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,q)|0){e=q+196|0;if(!(f[e>>2]&64)){g=f[(f[q+4>>2]|0)+44>>2]|0;if((f[g+32>>2]|0)!=(0-((f[g+24>>2]|0)+(f[g+28>>2]|0))|0))if(Qqa(g+64|0)|0){PWa(B,f[x>>2]|0,f[y>>2]|0,q,0);a:do if(!(f[e>>2]&2)){l=f[z>>2]|0;g=f[l>>2]|0;l=f[l+4>>2]|0;if((g|0)==(l|0))D=17;else{h=+p[B>>3];m=+p[A>>3];n=+p[s>>3];o=+p[t>>3];e=0;do{i=f[g>>2]|0;k=f[g+4>>2]|0;if((i|0)==(k|0))e=(e|0)>0?e:0;else{j=2;do{H=+p[i+24>>3]+(h*+p[i>>3]+(m*+p[i+8>>3]+n*+p[i+16>>3]));G=!(H*H>=o)?1:H<0.0?0:2;j=(G|0)<(j|0)?G:j;i=i+32|0}while((i|0)!=(k|0));if((j|0)==2)break a;else e=(e|0)<(j|0)?j:e}g=g+12|0}while((g|0)!=(l|0));if((e|0)!=2)D=17}}else D=17;while(0);if((D|0)==17){D=0;h=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,B);if(h>=0.0){p[B>>3]=h;f[C>>2]=q;e=f[c>>2]|0;if(e>>>0<(f[v>>2]|0)>>>0){p[e>>3]=h;f[e+8>>2]=q;f[c>>2]=e+16}else T2a(w,B,C);break}}}}}while(0);d=d+4|0}while((d|0)!=(r|0))}w3a(f[a+472>>2]|0,f[c>>2]|0);f[a+484>>2]=3;b[a+488>>0]=1;f[a+32>>2]=0;p[a+40>>3]=-1.0;f[a+48>>2]=4;if(!(b[E>>0]|0)){S2a(a);u=F;return}else{R2a(a,0);u=F;return}}function w3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){q=b;r=b+-16|0;t=b+-8|0;while(1){b:while(1){o=a;c=q-o|0;g=c>>4;switch(g|0){case 2:{s=5;break a}case 3:{s=7;break a}case 4:{s=15;break a}case 5:{s=16;break a}case 1:case 0:{s=84;break a}default:{}}if((c|0)<112){s=22;break a}m=(g|0)/2|0;l=a+(m<<4)|0;do if((c|0)>15984){k=(g|0)/4|0;n=a+(k<<4)|0;h=l+(k<<4)|0;c=x3a(a,n,l,h)|0;d=+p[r>>3];e=+p[h>>3];if(!(d>e)){g=l;break}p[h>>3]=d;p[r>>3]=e;j=h+8|0;g=f[j>>2]|0;f[j>>2]=f[t>>2];f[t>>2]=g;g=c+1|0;d=+p[h>>3];e=+p[l>>3];if(d>e){p[l>>3]=d;p[h>>3]=e;h=a+(m<<4)+8|0;g=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=g;g=c+2|0;d=+p[l>>3];e=+p[n>>3];if(d>e){p[n>>3]=d;p[l>>3]=e;g=a+(k<<4)+8|0;m=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=m;d=+p[n>>3];e=+p[a>>3];if(d>e){p[a>>3]=d;p[n>>3]=e;m=a+8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;c=c+4|0;g=l}else{c=c+3|0;g=l}}else{c=g;g=l}}else{c=g;g=l}}else{d=+p[l>>3];i=+p[a>>3];e=+p[r>>3];c=e>d;if(!(d>i)){if(!c){c=0;g=l;break}p[l>>3]=e;p[r>>3]=d;c=a+(m<<4)+8|0;n=f[c>>2]|0;f[c>>2]=f[t>>2];f[t>>2]=n;d=+p[l>>3];e=+p[a>>3];if(!(d>e)){c=1;g=l;break}p[a>>3]=d;p[l>>3]=e;n=a+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;c=2;g=l;break}if(c){p[a>>3]=e;p[r>>3]=i;g=a+8|0;c=f[g>>2]|0;f[g>>2]=f[t>>2];f[t>>2]=c;c=1;g=l;break}p[a>>3]=d;p[l>>3]=i;n=a+8|0;c=a+(m<<4)+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;d=+p[r>>3];if(d>i){p[l>>3]=d;p[r>>3]=i;f[c>>2]=f[t>>2];f[t>>2]=g;c=2;g=l}else{c=1;g=l}}while(0);i=+p[a>>3];d=+p[g>>3];if(i>d){g=r;break}else h=r;while(1){g=h+-16|0;if((a|0)==(g|0))break;e=+p[g>>3];if(e>d){s=67;break b}else h=g}c=a+16|0;e=+p[r>>3];if(!(i>e)){if((c|0)==(r|0)){s=84;break a}while(1){d=+p[c>>3];if(i>d)break;c=c+16|0;if((c|0)==(r|0)){s=84;break a}}p[c>>3]=e;p[r>>3]=d;n=c+8|0;o=f[n>>2]|0;f[n>>2]=f[t>>2];f[t>>2]=o;c=c+16|0}if((c|0)==(r|0)){s=84;break a}else g=r;while(1){i=+p[a>>3];while(1){e=+p[c>>3];j=c+16|0;if(i>e)break;else c=j}while(1){h=g+-16|0;d=+p[h>>3];if(i>d)g=h;else break}if(c>>>0>=h>>>0){a=c;continue b}p[c>>3]=d;p[h>>3]=e;o=c+8|0;g=g+-8|0;c=f[o>>2]|0;f[o>>2]=f[g>>2];f[g>>2]=c;g=h;c=j}}if((s|0)==67){s=0;p[a>>3]=e;p[g>>3]=i;k=a+8|0;n=h+-8|0;m=f[k>>2]|0;f[k>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}h=a+16|0;c:do if(h>>>0<g>>>0)while(1){i=+p[l>>3];while(1){e=+p[h>>3];k=h+16|0;if(e>i)h=k;else break}while(1){j=g+-16|0;d=+p[j>>3];if(d>i)break;else g=j}if(h>>>0>j>>>0){g=l;break c}p[h>>3]=d;p[j>>3]=e;m=h+8|0;g=g+-8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;l=(l|0)==(h|0)?j:l;g=j;h=k;c=c+1|0}else g=l;while(0);if((h|0)!=(g|0)){d=+p[g>>3];e=+p[h>>3];if(d>e){p[h>>3]=d;p[g>>3]=e;l=h+8|0;n=g+8|0;m=f[l>>2]|0;f[l>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}}if(!c){c=y3a(a,h)|0;g=h+16|0;if(y3a(g,b)|0){s=83;break}if(c){a=g;continue}}n=h;if((n-o|0)>=(q-n|0)){s=82;break}w3a(a,h);a=h+16|0}if((s|0)==82){s=0;w3a(h+16|0,b);b=h;continue}else if((s|0)==83){s=0;if(c){s=84;break}else{b=h;continue}}}if((s|0)==5){e=+p[r>>3];d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[r>>3]=d;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}else if((s|0)==7){g=a+16|0;e=+p[g>>3];i=+p[a>>3];c=b+-16|0;d=+p[c>>3];b=d>e;if(!(e>i)){if(!b)return;p[g>>3]=d;p[c>>3]=e;b=a+24|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;d=+p[g>>3];e=+p[a>>3];if(!(d>e))return;p[a>>3]=d;p[g>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=f[b>>2];f[b>>2]=t;return}if(b){p[a>>3]=d;p[c>>3]=i;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}p[a>>3]=e;p[g>>3]=i;s=a+8|0;a=a+24|0;b=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=b;d=+p[c>>3];if(!(d>i))return;p[g>>3]=d;p[c>>3]=i;f[a>>2]=f[t>>2];f[t>>2]=b;return}else if((s|0)==15){x3a(a,a+16|0,a+32|0,r)|0;return}else if((s|0)==16){j=a+16|0;h=a+32|0;c=a+48|0;x3a(a,j,h,c)|0;b=b+-16|0;d=+p[b>>3];e=+p[c>>3];if(!(d>e))return;p[c>>3]=d;p[b>>3]=e;b=a+56|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;e=+p[c>>3];d=+p[h>>3];if(!(e>d))return;p[h>>3]=e;p[c>>3]=d;c=a+40|0;t=f[c>>2]|0;g=f[b>>2]|0;f[c>>2]=g;f[b>>2]=t;d=+p[j>>3];if(!(e>d))return;p[j>>3]=e;p[h>>3]=d;b=a+24|0;t=f[b>>2]|0;f[b>>2]=g;f[c>>2]=t;d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[j>>3]=d;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[b>>2]=t;return}else if((s|0)==22){j=a+32|0;h=a+16|0;d=+p[h>>3];e=+p[a>>3];i=+p[j>>3];c=i>d;do if(d>e){if(c){p[a>>3]=i;p[j>>3]=e;r=a+8|0;t=a+40|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;d=e;break}p[a>>3]=d;p[h>>3]=e;t=a+8|0;c=a+24|0;g=f[t>>2]|0;f[t>>2]=f[c>>2];f[c>>2]=g;if(i>e){p[h>>3]=i;p[j>>3]=e;t=a+40|0;f[c>>2]=f[t>>2];f[t>>2]=g;d=e}else d=i}else if(c){p[h>>3]=i;p[j>>3]=d;c=a+24|0;t=a+40|0;s=f[c>>2]|0;g=f[t>>2]|0;f[c>>2]=g;f[t>>2]=s;if(i>e){p[a>>3]=i;p[h>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[c>>2]=t}}else d=i;while(0);c=a+48|0;if((c|0)==(b|0))return;else{k=c;c=j}while(1){e=+p[k>>3];if(e>d){j=f[k+8>>2]|0;g=k;while(1){p[g>>3]=d;h=c+8|0;f[g+8>>2]=f[h>>2];if((c|0)==(a|0)){c=a;break}g=c+-16|0;d=+p[g>>3];if(!(e>d))break;else{t=c;c=g;g=t}}p[c>>3]=e;f[h>>2]=j}c=k+16|0;if((c|0)==(b|0))break;d=+p[k>>3];t=k;k=c;c=t}return}else if((s|0)==84)return}function x3a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0.0,j=0,k=0;g=+p[b>>3];i=+p[a>>3];e=+p[c>>3];h=e>g;do if(g>i){if(h){p[a>>3]=e;p[c>>3]=i;h=a+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=1;g=i;break}p[a>>3]=g;p[b>>3]=i;k=a+8|0;h=b+8|0;j=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=j;g=+p[c>>3];if(g>i){p[b>>3]=g;p[c>>3]=i;k=c+8|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=2;g=i}else k=1}else if(h){p[b>>3]=e;p[c>>3]=g;h=b+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;e=+p[b>>3];i=+p[a>>3];if(e>i){p[a>>3]=e;p[b>>3]=i;j=a+8|0;k=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=k;k=2;g=+p[c>>3]}else k=1}else{k=0;g=e}while(0);e=+p[d>>3];if(!(e>g)){b=k;return b|0}p[c>>3]=e;p[d>>3]=g;j=c+8|0;d=d+8|0;h=f[j>>2]|0;f[j>>2]=f[d>>2];f[d>>2]=h;e=+p[c>>3];g=+p[b>>3];if(!(e>g)){b=k+1|0;return b|0}p[b>>3]=e;p[c>>3]=g;h=b+8|0;c=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=c;e=+p[b>>3];g=+p[a>>3];if(!(e>g)){b=k+2|0;return b|0}p[a>>3]=e;p[b>>3]=g;a=a+8|0;b=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=b;b=k+3|0;return b|0}function y3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0.0,j=0,k=0,l=0;switch(b-a>>4|0){case 2:{c=b+-16|0;e=+p[c>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[c>>3]=g;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}case 3:{j=a+16|0;e=+p[j>>3];i=+p[a>>3];h=b+-16|0;g=+p[h>>3];c=g>e;if(!(e>i)){if(!c){a=1;return a|0}p[j>>3]=g;p[h>>3]=e;c=a+24|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;e=+p[j>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[j>>3]=g;b=a+8|0;a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=1;return a|0}if(c){p[a>>3]=g;p[h>>3]=i;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}p[a>>3]=e;p[j>>3]=i;l=a+8|0;c=a+24|0;d=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=d;e=+p[h>>3];if(!(e>i)){a=1;return a|0}p[j>>3]=e;p[h>>3]=i;a=b+-8|0;f[c>>2]=f[a>>2];f[a>>2]=d;a=1;return a|0}case 4:{x3a(a,a+16|0,a+32|0,b+-16|0)|0;a=1;return a|0}case 5:{k=a+16|0;j=a+32|0;d=a+48|0;x3a(a,k,j,d)|0;c=b+-16|0;e=+p[c>>3];g=+p[d>>3];if(!(e>g)){a=1;return a|0}p[d>>3]=e;p[c>>3]=g;c=a+56|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;g=+p[d>>3];e=+p[j>>3];if(!(g>e)){a=1;return a|0}p[j>>3]=g;p[d>>3]=e;d=a+40|0;b=f[d>>2]|0;h=f[c>>2]|0;f[d>>2]=h;f[c>>2]=b;e=+p[k>>3];if(!(g>e)){a=1;return a|0}p[k>>3]=g;p[j>>3]=e;c=a+24|0;b=f[c>>2]|0;f[c>>2]=h;f[d>>2]=b;e=+p[a>>3];if(!(g>e)){a=1;return a|0}p[a>>3]=g;p[k>>3]=e;b=a+8|0;a=f[b>>2]|0;f[b>>2]=h;f[c>>2]=a;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{d=a+32|0;j=a+16|0;e=+p[j>>3];g=+p[a>>3];i=+p[d>>3];c=i>e;do if(e>g){if(c){p[a>>3]=i;p[d>>3]=g;j=a+8|0;l=a+40|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;e=g;break}p[a>>3]=e;p[j>>3]=g;l=a+8|0;c=a+24|0;h=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=h;if(i>g){p[j>>3]=i;p[d>>3]=g;l=a+40|0;f[c>>2]=f[l>>2];f[l>>2]=h;e=g}else e=i}else if(c){p[j>>3]=i;p[d>>3]=e;c=a+24|0;l=a+40|0;k=f[c>>2]|0;h=f[l>>2]|0;f[c>>2]=h;f[l>>2]=k;if(i>g){p[a>>3]=i;p[j>>3]=g;k=a+8|0;l=f[k>>2]|0;f[k>>2]=h;f[c>>2]=l}}else e=i;while(0);c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{l=c;c=0;while(1){g=+p[l>>3];if(g>e){k=f[l+8>>2]|0;h=l;while(1){p[h>>3]=e;j=d+8|0;f[h+8>>2]=f[j>>2];if((d|0)==(a|0))break;h=d+-16|0;e=+p[h>>3];if(!(g>e))break;else{j=d;d=h;h=j}}p[d>>3]=g;f[j>>2]=k;c=c+1|0;if((c|0)==8){d=0;c=(l+16|0)==(b|0);break a}}d=l+16|0;if((d|0)==(b|0)){d=1;c=0;break a}e=+p[l>>3];k=l;l=d;d=k}}while(0);a=c|d;return a|0}}return 0}function z3a(a){a=a|0;return f[a+12>>2]|0}function A3a(a,b,c){a=a|0;b=b|0;c=c|0;p[b>>3]=+p[a+40>>3];f[c>>2]=f[a+48>>2];return f[a+32>>2]|0}function B3a(a){a=a|0;var c=0,d=0;b[a+488>>0]=0;d=a+484|0;switch(f[d>>2]|0){case 3:{a=0;c=4;break}case 0:{a=1;c=1;break}case 1:{a=1;c=2;break}case 2:{a=0;c=4;break}default:{d=0;return d|0}}f[d>>2]=c;d=a;return d|0}function C3a(a,c){a=a|0;c=c|0;var d=0.0,e=0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0;l=u;u=u+48|0;i=l;if(!(b[a+110>>0]|0))if(!(b[a+111>>0]|0)){k=+pWa(f[a+60>>2]|0,c);u=l;return +k}e=f[f[a+56>>2]>>2]|0;g=+p[c>>3];h=+p[c+8>>3];j=+p[c+16>>3];k=+K(+(g*+p[e+328>>3]+h*+p[e+336>>3]+(j*+p[e+344>>3]+ +p[e+352>>3])));k=+p[e+360>>3]*k;e=c+32|0;d=+p[e>>3];if(d==-1.0){d=+L(+(+p[c+24>>3]));p[e>>3]=d}k=k+d;a=f[a+60>>2]|0;p[i>>3]=g;p[i+8>>3]=h;p[i+16>>3]=j;p[i+24>>3]=k*k;p[i+32>>3]=-1.0;k=+pWa(a,i);u=l;return +k}function D3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;e=u;u=u+48|0;d=e;if(!(b[a+110>>0]|0))if(!(b[a+111>>0]|0)){g=+qWa(f[a+60>>2]|0,c);u=e;return +g}j=+p[c>>3];m=(+p[c+24>>3]-j)*.5;i=+p[c+8>>3];l=(+p[c+32>>3]-i)*.5;h=+p[c+16>>3];k=(+p[c+40>>3]-h)*.5;j=j+m;i=i+l;h=h+k;c=f[f[a+56>>2]>>2]|0;g=+K(+(j*+p[c+328>>3]+i*+p[c+336>>3]+(h*+p[c+344>>3]+ +p[c+352>>3])));g=+L(+(m*m+(l*l+k*k)))+ +p[c+360>>3]*g;c=f[a+60>>2]|0;p[d>>3]=j;p[d+8>>3]=i;p[d+16>>3]=h;p[d+24>>3]=g*g;p[d+32>>3]=-1.0;g=+pWa(c,d);u=e;return +g}function E3a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0;r=0;s=u;u=u+5776|0;g=f[(a+48|0)>>2]|0;do{c=1;if(c){c=0;if(!(b[a+109>>0]|0))r=5;else c=1}if(c)if(1){c=f[(a+120|0)>>2]|0;d=f[(a+124|0)>>2]|0;e=1;if(e){e=0;if((c|0)==(d|0)){if((f[(a+156|0)>>2]|0)==(f[a+160>>2]|0)){r=5;break}f[(s+248|0)>>2]=a;i=s+248|0;r=17}else e=1}f[s+320>>2]=a;f[s+1360>>2]=g;f[s+2800>>2]=c;f[s+3312>>2]=d;f[s+3392>>2]=i;f[s+5296>>2]=q;f[s+5312>>2]=t;f[s+5320>>2]=v;f[s+5400>>2]=r;f[s+5416>>2]=e;f[s+5552>>2]=0;f[s+5556>>2]=0;g4a(s);q=f[s+5296>>2]|0;t=f[s+5312>>2]|0;v=f[s+5320>>2]|0;r=f[s+5400>>2]|0}}while(0);if((r|0)==5)if(!(f[a+104>>2]|0))p[a+112>>3]=C;c=b[(a+110|0)>>0]|0;if(!(c<<24>>24)){if(b[a+111>>0]|0)r=94}else r=94;if((r|0)==94){if(b[a+12>>0]|0){g=f[(a+48|0)>>2]|0;d=f[a+120>>2]|0;i=f[a+124>>2]|0;if((d|0)!=(i|0)){do{mwa(s+144|0,g,d);c=f[(s+144|0)>>2]|0;e=f[((s+144|0)+4|0)>>2]|0;if(e|0)Ppb(e);if((f[(a+104|0)>>2]|0)==(((j[(c+200|0)>>1]|h[(c+200|0)+2>>0]<<16)&16777215)>>>19&15|0))if((f[c+196>>2]&24576|0)!=24576)E4a(a,2,c,0.0);d=d+192|0}while((d|0)!=(i|0));c=b[(a+110|0)>>0]|0}}if(c<<24>>24){o=f[(a+48|0)>>2]|0;c=f[(a+132|0)>>2]|0;d=f[(a+136|0)>>2]|0;if((c|0)!=(d|0)){M3a(c,d);if(!(b[a+23>>0]|0)){c=f[(a+136|0)>>2]|0;d=c}else{g=f[(a+48|0)>>2]|0;i=b[a+32>>0]|0;c=f[(a+132|0)>>2]|0;k=f[(a+136|0)>>2]|0;a:do if((c|0)==(k|0)){l=c;r=112}else{do{if(!(qxa(g,c,i)|0)){l=c;r=112;break a}c=c+208|0}while((c|0)!=(k|0));m=k}while(0);b:do if((r|0)==112){d=l;if((l|0)==(k|0))m=d;else{c=d;e=d;while(1){do{d=c+208|0;c=d;if((d|0)==(k|0)){m=e;break b}}while(!(qxa(g,d,i)|0));m=e;N3a(m,d)|0;e=m+208|0}}}while(0);d=m;e=f[(a+136|0)>>2]|0;c=f[(a+132|0)>>2]|0;c=c+(((m-c|0)/208|0)*208|0)|0;if((e|0)==(d|0))c=e;else{d=c+(((e-m|0)/208|0)*208|0)|0;if((d|0)==(e|0)){g=c;c=e;d=e}else{do{N3a(c,d)|0;d=d+208|0;c=c+208|0}while((d|0)!=(e|0));d=f[(a+136|0)>>2]|0;g=c;c=d}if((d|0)!=(g|0)){while(1){c=d+-208|0;f[(a+136|0)>>2]=c;e=f[d+-120>>2]|0;if(e){c=d+-116|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~(((d+-12-e|0)>>>0)/12|0)*12|0);Zpb(e);c=f[(a+136|0)>>2]|0}if((c|0)==(g|0))break;else d=c}d=g;c=g}}}l=f[(a+132|0)>>2]|0;m=c-l|0;f[s+320>>2]=a;f[s+3416>>2]=d;f[s+4728>>2]=o;f[s+4912>>2]=l;f[s+4920>>2]=m;f[s+4928>>2]=c;f[s+5400>>2]=r;f[s+5528>>2]=0;f[s+5532>>2]=0;d4a(s);r=f[s+5400>>2]|0}}}f[s+320>>2]=a;f[s+5296>>2]=q;f[s+5312>>2]=t;f[s+5320>>2]=v;f[s+5400>>2]=r;f[s+5544>>2]=0;f[s+5548>>2]=0;f4a(s);G=f[s+5544>>2]|0;D=f[s+5548>>2]|0;H=+n[s+5548>>2];f[s+5544>>2]=0;f[s+5548>>2]=0;if((G|0)==5)return}function F3a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0.0,o=0.0,q=0.0,r=0,s=0.0;i=u;u=u+32|0;e=i;g=i+8|0;m=f[c+4>>2]|0;r=d+64|0;s=+p[r>>3];k=d+72|0;q=+p[k>>3];l=d+80|0;o=+p[l>>3];n=+L(+(s*s+(q*q+o*o)));p[r>>3]=s/n;p[k>>3]=q/n;p[l>>3]=o/n;l=Ng[f[(f[m>>2]|0)+16>>2]&511](m)|0;f[d+16>>2]=l;nh[f[(f[m>>2]|0)+12>>2]&1023](e,m);m=e;l=f[m+4>>2]|0;k=d+8|0;f[k>>2]=f[m>>2];f[k+4>>2]=l;k=c+200|0;f[d+32>>2]=((j[k>>1]|h[k+2>>0]<<16)&16777215)>>>19&15;if(!(b[(f[a>>2]|0)+25>>0]|0)){f[d+88>>2]=1065353216;f[d+92>>2]=1065353216;f[d+96>>2]=1065353216;f[d+100>>2]=0;f[d+104>>2]=0;f[d+108>>2]=0;u=i;return}else{f[e>>2]=f[d+24>>2];fka(g,c,0,e,1);l=d+88|0;r=f[g>>2]|0;f[g>>2]=f[l>>2];f[l>>2]=r;l=g+4|0;r=f[l>>2]|0;m=d+92|0;f[l>>2]=f[m>>2];f[m>>2]=r;m=g+8|0;r=f[m>>2]|0;l=d+96|0;f[m>>2]=f[l>>2];f[l>>2]=r;l=d+100|0;r=g+12|0;m=f[r>>2]|0;f[r>>2]=f[l>>2];f[l>>2]=m;l=g+16|0;m=f[l>>2]|0;r=d+104|0;f[l>>2]=f[r>>2];f[r>>2]=m;f[d+108>>2]=f[g+20>>2];u=i;return}}function G3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;M=0;N=u;u=u+6864|0;a:while(1){R=b;m=b+-240|0;Q=b+-480|0;o=b+-24|0;p=b+-16|0;q=b+-200|0;r=b+-192|0;s=b+-184|0;c=b+-176|0;d=b+-168|0;e=b+-160|0;g=b+-152|0;h=b+-148|0;i=b+-144|0;j=b+-140|0;k=b+-136|0;l=b+-132|0;f[N+352>>2]=a;f[N+400>>2]=b;f[N+432>>2]=t;f[N+1720>>2]=c;f[N+1784>>2]=d;f[N+1808>>2]=e;f[N+1848>>2]=g;f[N+1880>>2]=h;f[N+1920>>2]=i;f[N+1936>>2]=j;f[N+1968>>2]=k;f[N+1992>>2]=l;f[N+2016>>2]=v;f[N+2040>>2]=R;f[N+2048>>2]=w;f[N+2064>>2]=x;f[N+2096>>2]=y;f[N+2160>>2]=z;f[N+2232>>2]=A;f[N+2296>>2]=B;f[N+2368>>2]=C;f[N+2432>>2]=E;f[N+2504>>2]=F;f[N+2568>>2]=I;f[N+2640>>2]=m;f[N+2648>>2]=J;f[N+2720>>2]=K;f[N+3080>>2]=Q;f[N+3584>>2]=o;f[N+4176>>2]=p;f[N+4832>>2]=q;f[N+5368>>2]=r;f[N+5936>>2]=s;f[N+6544>>2]=L;f[N+6560>>2]=O;f[N+6568>>2]=P;f[N+6576>>2]=M;f[N+6640>>2]=0;f[N+6644>>2]=0;k4a(N);a=f[N+352>>2]|0;b=f[N+400>>2]|0;t=f[N+432>>2]|0;v=f[N+2016>>2]|0;w=f[N+2048>>2]|0;x=f[N+2064>>2]|0;y=f[N+2096>>2]|0;z=f[N+2160>>2]|0;A=f[N+2232>>2]|0;B=f[N+2296>>2]|0;C=f[N+2368>>2]|0;E=f[N+2432>>2]|0;F=f[N+2504>>2]|0;I=f[N+2568>>2]|0;J=f[N+2648>>2]|0;K=f[N+2720>>2]|0;L=f[N+6544>>2]|0;O=f[N+6560>>2]|0;P=f[N+6568>>2]|0;M=f[N+6576>>2]|0;G=f[N+6640>>2]|0;D=f[N+6644>>2]|0;H=+n[N+6644>>2];f[N+6640>>2]=0;f[N+6644>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 8:break a}if((G|0)==3)continue}R=1;f[N+400>>2]=b;f[N+432>>2]=t;f[N+1720>>2]=c;f[N+1784>>2]=d;f[N+1808>>2]=e;f[N+1848>>2]=g;f[N+1880>>2]=h;f[N+1920>>2]=i;f[N+1936>>2]=j;f[N+1968>>2]=k;f[N+1992>>2]=l;f[N+2016>>2]=v;f[N+2048>>2]=w;f[N+2064>>2]=x;f[N+2096>>2]=y;f[N+2160>>2]=z;f[N+2232>>2]=A;f[N+2296>>2]=B;f[N+2368>>2]=C;f[N+2432>>2]=E;f[N+2504>>2]=F;f[N+2568>>2]=I;f[N+2640>>2]=m;f[N+2648>>2]=J;f[N+2720>>2]=K;f[N+3584>>2]=o;f[N+4176>>2]=p;f[N+4832>>2]=q;f[N+5368>>2]=r;f[N+5936>>2]=s;f[N+6544>>2]=L;f[N+6560>>2]=O;f[N+6568>>2]=P;f[N+6576>>2]=M;f[N+6584>>2]=R;f[N+6648>>2]=0;f[N+6652>>2]=0;l4a(N);G=f[N+6648>>2]|0;D=f[N+6652>>2]|0;H=+n[N+6652>>2];f[N+6648>>2]=0;f[N+6652>>2]=0;if((G|0)==5)return}function H3a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0;j=f[a>>2]|0;e=f[c>>2]|0;j=j+(((e-j|0)/240|0)*240|0)|0;c=f[d>>2]|0;if((c|0)==(e|0))return j|0;c=j+(((c-e|0)/240|0)*240|0)|0;i=a+4|0;h=f[i>>2]|0;if((c|0)==(h|0))d=j;else{d=j;do{e=d;a=c;g=e+36|0;do{f[e>>2]=f[a>>2];e=e+4|0;a=a+4|0}while((e|0)<(g|0));a=c+40|0;k=+p[a>>3];g=d+40|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+48|0;k=+p[g>>3];a=d+48|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+56|0;k=+p[a>>3];g=d+56|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+64|0;k=+p[g>>3];a=d+64|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+72|0;k=+p[a>>3];g=d+72|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+80|0;k=+p[g>>3];a=d+80|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=d+88|0;g=c+88|0;e=f[g>>2]|0;f[g>>2]=f[a>>2];f[a>>2]=e;a=c+92|0;e=f[a>>2]|0;g=d+92|0;f[a>>2]=f[g>>2];f[g>>2]=e;g=c+96|0;e=f[g>>2]|0;a=d+96|0;f[g>>2]=f[a>>2];f[a>>2]=e;a=d+100|0;e=c+100|0;g=f[e>>2]|0;f[e>>2]=f[a>>2];f[a>>2]=g;a=c+104|0;g=f[a>>2]|0;e=d+104|0;f[a>>2]=f[e>>2];f[e>>2]=g;e=c+108|0;g=f[e>>2]|0;a=d+108|0;f[e>>2]=f[a>>2];f[a>>2]=g;a=c+112|0;k=+p[a>>3];g=d+112|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+120|0;k=+p[g>>3];a=d+120|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+128|0;k=+p[a>>3];g=d+128|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+136|0;k=+p[g>>3];a=d+136|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+144|0;k=+p[a>>3];g=d+144|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+152|0;k=+p[g>>3];a=d+152|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+160|0;k=+p[a>>3];g=d+160|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=c+168|0;k=+p[g>>3];a=d+168|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+176|0;k=+p[a>>3];g=d+176|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=d+184|0;a=c+184|0;f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[g+12>>2]=f[a+12>>2];g=c+200|0;k=+p[g>>3];a=d+200|0;p[g>>3]=+p[a>>3];p[a>>3]=k;a=c+208|0;k=+p[a>>3];g=d+208|0;p[a>>3]=+p[g>>3];p[g>>3]=k;g=d+216|0;a=c+216|0;f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[g+12>>2]=f[a+12>>2];b[g+16>>0]=b[a+16>>0]|0;c=c+240|0;d=d+240|0}while((c|0)!=(h|0));c=f[i>>2]|0}if((c|0)==(d|0))return j|0;f[i>>2]=c+(~(((c+-240-d|0)>>>0)/240|0)*240|0);return j|0}function I3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;i=j;g=f[a+8>>2]|0;d=a+4|0;c=f[d>>2]|0;if(((g-c|0)/240|0)>>>0>=b>>>0){do{Krb(c|0,0,240)|0;c=(f[d>>2]|0)+240|0;f[d>>2]=c;b=b+-1|0}while((b|0)!=0);u=j;return}d=f[a>>2]|0;e=(c-d|0)/240|0;c=e+b|0;if(c>>>0>17895697)fob(a);d=(g-d|0)/240|0;g=d<<1;c=d>>>0<8947848?(g>>>0<c>>>0?c:g):17895697;f[i+12>>2]=0;f[i+16>>2]=a+8;do if(!c)h=0;else if(c>>>0>17895697)ud();else{h=Wpb(c*240|0)|0;break}while(0);f[i>>2]=h;e=h+(e*240|0)|0;d=i+8|0;g=i+4|0;f[g>>2]=e;f[i+12>>2]=h+(c*240|0);Krb(e|0,0,b*240|0)|0;f[d>>2]=e+(b*240|0);AM(a,i);c=f[g>>2]|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~(((b+-240-c|0)>>>0)/240|0)*240|0);c=f[i>>2]|0;if(c|0)Zpb(c);u=j;return}function J3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=f[b+16>>2];T3a(a,f[b+4>>2]|0);b=f[b+8>>2]|0;if(!b)return;p=a+4|0;q=a+12|0;s=a+16|0;t=a+8|0;r=b;c=f[p>>2]|0;while(1){k=f[b+8>>2]|0;m=X(k,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;m=m>>>15^m;l=(c|0)==0;j=k;a:do if(l){b=0;o=19}else{i=c+-1|0;h=(i&c|0)==0;if(h)b=m&i;else if(m>>>0<c>>>0)b=m;else b=(m>>>0)%(c>>>0)|0;d=f[(f[a>>2]|0)+(b<<2)>>2]|0;if(!d)o=19;else{if(h)while(1){d=f[d>>2]|0;if(!d){o=19;break a}h=f[d+4>>2]|0;if(!((h|0)==(m|0)|(h&i|0)==(b|0))){o=19;break a}if((f[d+8>>2]|0)==(j|0))break a}do{d=f[d>>2]|0;if(!d){o=19;break a}h=f[d+4>>2]|0;if((h|0)!=(m|0)){if(h>>>0>=c>>>0)h=(h>>>0)%(c>>>0)|0;if((h|0)!=(b|0)){o=19;break a}}}while((f[d+8>>2]|0)!=(j|0))}}while(0);if((o|0)==19){o=0;h=Wpb(12)|0;f[h+8>>2]=k;f[h+4>>2]=m;f[h>>2]=0;e=+(((f[q>>2]|0)+1|0)>>>0);g=+n[s>>2];do if(l|g*+(c>>>0)<e){b=c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1;d=~~+W(+(e/g))>>>0;T3a(a,b>>>0<d>>>0?d:b);b=f[p>>2]|0;d=b+-1|0;if(!(d&b)){c=b;b=d&m;break}if(m>>>0<b>>>0){c=b;b=m}else{c=b;b=(m>>>0)%(b>>>0)|0}}while(0);d=(f[a>>2]|0)+(b<<2)|0;b=f[d>>2]|0;if(!b){f[h>>2]=f[t>>2];f[t>>2]=h;f[d>>2]=t;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;d=c+-1|0;if(!(d&c))b=b&d;else if(b>>>0>=c>>>0)b=(b>>>0)%(c>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=32}}else{f[h>>2]=f[b>>2];o=32}if((o|0)==32){o=0;f[b>>2]=h}f[q>>2]=(f[q>>2]|0)+1}b=f[r>>2]|0;if(!b)break;else r=b}return}function K3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+16|0;o=q;mwa(o,f[a>>2]|0,b);h=f[o>>2]|0;b=f[o+4>>2]|0;if(b|0)Ppb(b);i=h;o=f[a+4>>2]|0;m=X(i,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;m=m>>>15^m;j=o+4|0;k=f[j>>2]|0;l=(k|0)==0;a:do if(l)b=0;else{g=k+-1|0;c=(g&k|0)==0;if(c)b=g&m;else if(m>>>0<k>>>0)b=m;else b=(m>>>0)%(k>>>0)|0;a=f[(f[o>>2]|0)+(b<<2)>>2]|0;if(a){if(c){while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if(!((c|0)==(m|0)|(c&g|0)==(b|0)))break a;if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)!=(b|0))break a}if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}}while(0);h=Wpb(12)|0;f[h+8>>2]=i;f[h+4>>2]=m;f[h>>2]=0;g=o+12|0;d=+(((f[g>>2]|0)+1|0)>>>0);e=+n[o+16>>2];do if(l|e*+(k>>>0)<d){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;a=~~+W(+(d/e))>>>0;T3a(o,b>>>0<a>>>0?a:b);b=f[j>>2]|0;a=b+-1|0;if(!(a&b)){c=b;b=a&m;break}if(m>>>0<b>>>0){c=b;b=m}else{c=b;b=(m>>>0)%(b>>>0)|0}}else c=k;while(0);a=(f[o>>2]|0)+(b<<2)|0;b=f[a>>2]|0;if(!b){b=o+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[a>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;a=c+-1|0;if(!(a&c))b=b&a;else if(b>>>0>=c>>>0)b=(b>>>0)%(c>>>0)|0;b=(f[o>>2]|0)+(b<<2)|0;p=32}}else{f[h>>2]=f[b>>2];p=32}if((p|0)==32)f[b>>2]=h;f[g>>2]=(f[g>>2]|0)+1;p=0;u=q;return p|0}function L3a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0.0;i=f[a>>2]|0;d=f[b>>2]|0;i=i+(((d-i|0)/192|0)*192|0)|0;b=f[c>>2]|0;if((b|0)==(d|0))return i|0;b=i+(((b-d|0)/192|0)*192|0)|0;h=a+4|0;g=f[h>>2]|0;if((b|0)==(g|0))c=i;else{c=i;do{d=c;a=b;e=d+36|0;do{f[d>>2]=f[a>>2];d=d+4|0;a=a+4|0}while((d|0)<(e|0));a=b+40|0;j=+p[a>>3];d=c+40|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+48|0;j=+p[d>>3];a=c+48|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+56|0;j=+p[a>>3];d=c+56|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+64|0;j=+p[d>>3];a=c+64|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+72|0;j=+p[a>>3];d=c+72|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+80|0;j=+p[d>>3];a=c+80|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=c+88|0;d=b+88|0;e=f[d>>2]|0;f[d>>2]=f[a>>2];f[a>>2]=e;a=b+92|0;e=f[a>>2]|0;d=c+92|0;f[a>>2]=f[d>>2];f[d>>2]=e;d=b+96|0;e=f[d>>2]|0;a=c+96|0;f[d>>2]=f[a>>2];f[a>>2]=e;a=c+100|0;e=b+100|0;d=f[e>>2]|0;f[e>>2]=f[a>>2];f[a>>2]=d;a=b+104|0;d=f[a>>2]|0;e=c+104|0;f[a>>2]=f[e>>2];f[e>>2]=d;e=b+108|0;d=f[e>>2]|0;a=c+108|0;f[e>>2]=f[a>>2];f[a>>2]=d;a=b+112|0;j=+p[a>>3];d=c+112|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+120|0;j=+p[d>>3];a=c+120|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+128|0;j=+p[a>>3];d=c+128|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+136|0;j=+p[d>>3];a=c+136|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+144|0;j=+p[a>>3];d=c+144|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+152|0;j=+p[d>>3];a=c+152|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+160|0;j=+p[a>>3];d=c+160|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+168|0;j=+p[d>>3];a=c+168|0;p[d>>3]=+p[a>>3];p[a>>3]=j;a=b+176|0;j=+p[a>>3];d=c+176|0;p[a>>3]=+p[d>>3];p[d>>3]=j;d=b+184|0;a=f[d+4>>2]|0;e=c+184|0;f[e>>2]=f[d>>2];f[e+4>>2]=a;b=b+192|0;c=c+192|0}while((b|0)!=(g|0));b=f[h>>2]|0}if((b|0)==(c|0))return i|0;f[h>>2]=b+(~(((b+-192-c|0)>>>0)/192|0)*192|0);return i|0}function M3a(a,c){a=a|0;c=c|0;var d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0.0,l=0,m=0,o=0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;N=0;na=u;u=u+3632|0;a:while(1){l=c;Y=c+-208|0;B=c+-416|0;C=c+-24|0;M=c+-16|0;Z=c+-172|0;_=c+-168|0;$=c+-164|0;S=c+-160|0;T=c+-156|0;U=c+-152|0;V=c+-144|0;W=c+-136|0;X=c+-128|0;ea=c+-120|0;aa=c+-116|0;ba=c+-112|0;ca=c+-108|0;fa=c+-88|0;ga=c+-80|0;ha=c+-72|0;ia=c+-64|0;ja=c+-56|0;ka=c+-48|0;la=c+-40|0;ma=c+-32|0;da=c+-24|0;i=a;while(1){R=i;b:while(1){m=R;switch((l-m|0|0)/208|0|0){case 2:{N=5;break a}case 3:{N=15;break a}case 4:{N=16;break a}case 5:{N=17;break a}case 1:case 0:{N=144;break a}default:{}}if((l-m|0|0)<1456){N=19;break a}o=R+((((l-m|0)>>>0)/416|0)*208|0)|0;if((l-m|0|0)>207792)j=$3a(R,R+((((l-m|0)>>>0)/832|0)*208|0)|0,o,o+((((l-m|0)>>>0)/832|0)*208|0)|0,Y)|0;else j=Z3a(R,o,Y)|0;z=R+184|0;g=~~+p[z>>3]>>>0;A=R+((((l-m|0)>>>0)/416|0)*208|0)+184|0;h=~~+p[A>>3]>>>0;if(g>>>0<h>>>0){F=Y;I=j;break}if(g>>>0<=h>>>0){d=+p[R+192>>3];e=+p[R+((((l-m|0)>>>0)/416|0)*208|0)+192>>3];if(d<e){F=Y;I=j;break}if(!(d>e))if(B5a(R,o)|0){F=Y;I=j;break}}f[na+312>>2]=E;f[na+392>>2]=R;f[na+600>>2]=aa;f[na+648>>2]=ba;f[na+688>>2]=ca;f[na+824>>2]=da;f[na+832>>2]=S;f[na+864>>2]=T;f[na+888>>2]=U;f[na+920>>2]=V;f[na+944>>2]=W;f[na+968>>2]=X;f[na+1016>>2]=ea;f[na+1032>>2]=fa;f[na+1064>>2]=ga;f[na+1096>>2]=ha;f[na+1152>>2]=l;f[na+1160>>2]=ia;f[na+1216>>2]=ja;f[na+1280>>2]=ka;f[na+1312>>2]=la;f[na+1360>>2]=ma;f[na+1424>>2]=m;f[na+1488>>2]=o;f[na+1496>>2]=z;f[na+1512>>2]=A;f[na+1600>>2]=Y;f[na+2024>>2]=B;f[na+2280>>2]=K;f[na+2496>>2]=C;f[na+2936>>2]=M;f[na+3288>>2]=Z;f[na+3352>>2]=_;f[na+3376>>2]=$;f[na+3408>>2]=O;f[na+3424>>2]=P;f[na+3432>>2]=Q;f[na+3448>>2]=N;f[na+3504>>2]=0;f[na+3508>>2]=0;o4a(na);E=f[na+312>>2]|0;R=f[na+392>>2]|0;K=f[na+2280>>2]|0;O=f[na+3408>>2]|0;P=f[na+3424>>2]|0;Q=f[na+3432>>2]|0;N=f[na+3448>>2]|0;G=f[na+3504>>2]|0;D=f[na+3508>>2]|0;H=+n[na+3508>>2];f[na+3504>>2]=0;f[na+3508>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:break b;case 7:break a}if((G|0)==3)continue;if((G|0)==4)switch(D|0){case 8:continue b}}f[na+288>>2]=i;f[na+312>>2]=E;f[na+336>>2]=j;f[na+352>>2]=c;f[na+392>>2]=R;f[na+440>>2]=F;f[na+464>>2]=I;f[na+536>>2]=J;f[na+1152>>2]=l;f[na+1424>>2]=m;f[na+1488>>2]=o;f[na+2280>>2]=K;f[na+3304>>2]=L;f[na+3408>>2]=O;f[na+3424>>2]=P;f[na+3432>>2]=Q;f[na+3448>>2]=N;f[na+3496>>2]=0;f[na+3500>>2]=0;n4a(na);i=f[na+288>>2]|0;F=f[na+440>>2]|0;I=f[na+464>>2]|0;J=f[na+536>>2]|0;L=f[na+3304>>2]|0;O=f[na+3408>>2]|0;P=f[na+3424>>2]|0;Q=f[na+3432>>2]|0;N=f[na+3448>>2]|0;G=f[na+3496>>2]|0;D=f[na+3500>>2]|0;H=+n[na+3500>>2];f[na+3496>>2]=0;f[na+3500>>2]=0;if((G|0)==1)break;if((G|0)==3)continue}if((N|0)==142){N=0;M3a(J+208|0,c);a=R;c=J;continue}else if((N|0)==143){N=0;if(L){N=144;break}else{a=R;c=J;continue}}}a=1;if(a)if((N|0)==5){a=~~+p[C>>3]>>>0;c=~~+p[R+184>>3]>>>0;if(a>>>0>=c>>>0){if(a>>>0>c>>>0){u=na;return}d=+p[M>>3];e=+p[R+192>>3];if(!(d<e)){if(d>e){u=na;return}if(!(B5a(Y,R)|0)){u=na;return}}}O=na+24|0;P=R;Q=O+36|0;do{f[O>>2]=f[P>>2];O=O+4|0;P=P+4|0}while((O|0)<(Q|0));a=f[R+36>>2]|0;c=f[R+40>>2]|0;g=f[R+44>>2]|0;h=f[R+48>>2]|0;i=f[R+52>>2]|0;j=f[R+56>>2]|0;d=+p[R+64>>3];e=+p[R+72>>3];k=+p[R+80>>3];O=R+88|0;l=f[O>>2]|0;P=R+92|0;m=f[P>>2]|0;Q=R+96|0;o=f[Q>>2]|0;f[Q>>2]=0;f[P>>2]=0;f[O>>2]=0;O=R+100|0;f[(na+232|0)>>2]=f[O>>2];f[(na+232|0)+4>>2]=f[O+4>>2];f[(na+232|0)+8>>2]=f[O+8>>2];f[(na+232|0)+12>>2]=f[O+12>>2];f[(na+232|0)+16>>2]=f[O+16>>2];q=+p[R+120>>3];r=+p[R+128>>3];s=+p[R+136>>3];t=+p[R+144>>3];v=+p[R+152>>3];w=+p[R+160>>3];x=+p[R+168>>3];y=+p[R+176>>3];O=R+184|0;f[na>>2]=f[O>>2];f[na+4>>2]=f[O+4>>2];f[na+8>>2]=f[O+8>>2];f[na+12>>2]=f[O+12>>2];b[na+16>>0]=b[O+16>>0]|0;N3a(R,Y)|0;O=Y;P=na+24|0;Q=O+36|0;do{f[O>>2]=f[P>>2];O=O+4|0;P=P+4|0}while((O|0)<(Q|0));f[Z>>2]=a;f[_>>2]=c;f[$>>2]=g;f[S>>2]=h;f[T>>2]=i;f[U>>2]=j;p[V>>3]=d;p[W>>3]=e;p[X>>3]=k;a=f[ea>>2]|0;if(a|0){c=f[aa>>2]|0;if((c|0)!=(a|0))f[aa>>2]=c+(~(((c+-12-a|0)>>>0)/12|0)*12|0);Zpb(a);f[ba>>2]=0;f[aa>>2]=0;f[ea>>2]=0}f[ea>>2]=l;f[aa>>2]=m;f[ba>>2]=o;f[ca>>2]=f[(na+232|0)>>2];f[ca+4>>2]=f[(na+232|0)+4>>2];f[ca+8>>2]=f[(na+232|0)+8>>2];f[ca+12>>2]=f[(na+232|0)+12>>2];f[ca+16>>2]=f[(na+232|0)+16>>2];p[fa>>3]=q;p[ga>>3]=r;p[ha>>3]=s;p[ia>>3]=t;p[ja>>3]=v;p[ka>>3]=w;p[la>>3]=x;p[ma>>3]=y;f[da>>2]=f[na>>2];f[da+4>>2]=f[na+4>>2];f[da+8>>2]=f[na+8>>2];f[da+12>>2]=f[na+12>>2];b[da+16>>0]=b[na+16>>0]|0;u=na;return}else a=1;f[na+352>>2]=c;f[na+392>>2]=R;f[na+1600>>2]=Y;f[na+3408>>2]=O;f[na+3424>>2]=P;f[na+3432>>2]=Q;f[na+3448>>2]=N;f[na+3456>>2]=a;f[na+3488>>2]=0;f[na+3492>>2]=0;m4a(na);G=f[na+3488>>2]|0;D=f[na+3492>>2]|0;H=+n[na+3492>>2];f[na+3488>>2]=0;f[na+3492>>2]=0;if((G|0)==5)return}function N3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0.0;d=a;e=c;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));i=a+36|0;h=c+36|0;d=f[h>>2]|0;f[h>>2]=f[i>>2];f[i>>2]=d;i=c+40|0;d=f[i>>2]|0;h=a+40|0;f[i>>2]=f[h>>2];f[h>>2]=d;h=c+44|0;d=f[h>>2]|0;i=a+44|0;f[h>>2]=f[i>>2];f[i>>2]=d;i=a+48|0;d=c+48|0;h=f[d>>2]|0;f[d>>2]=f[i>>2];f[i>>2]=h;i=c+52|0;h=f[i>>2]|0;d=a+52|0;f[i>>2]=f[d>>2];f[d>>2]=h;d=c+56|0;h=f[d>>2]|0;i=a+56|0;f[d>>2]=f[i>>2];f[i>>2]=h;i=c+64|0;j=+p[i>>3];h=a+64|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=c+72|0;j=+p[h>>3];i=a+72|0;p[h>>3]=+p[i>>3];p[i>>3]=j;i=c+80|0;j=+p[i>>3];h=a+80|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=a+88|0;i=c+88|0;d=f[h>>2]|0;g=a+92|0;if(!d)d=a+96|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~(((e+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);d=a+96|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[i>>2];h=c+92|0;f[g>>2]=f[h>>2];g=c+96|0;f[d>>2]=f[g>>2];f[g>>2]=0;f[h>>2]=0;f[i>>2]=0;i=a+100|0;h=c+100|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[i+16>>2]=f[h+16>>2];i=c+120|0;j=+p[i>>3];h=a+120|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=c+128|0;j=+p[h>>3];i=a+128|0;p[h>>3]=+p[i>>3];p[i>>3]=j;i=c+136|0;j=+p[i>>3];h=a+136|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=c+144|0;j=+p[h>>3];i=a+144|0;p[h>>3]=+p[i>>3];p[i>>3]=j;i=c+152|0;j=+p[i>>3];h=a+152|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=c+160|0;j=+p[h>>3];i=a+160|0;p[h>>3]=+p[i>>3];p[i>>3]=j;i=c+168|0;j=+p[i>>3];h=a+168|0;p[i>>3]=+p[h>>3];p[h>>3]=j;h=c+176|0;j=+p[h>>3];i=a+176|0;p[h>>3]=+p[i>>3];p[i>>3]=j;i=a+184|0;c=c+184|0;f[i>>2]=f[c>>2];f[i+4>>2]=f[c+4>>2];f[i+8>>2]=f[c+8>>2];f[i+12>>2]=f[c+12>>2];b[i+16>>0]=b[c+16>>0]|0;return a|0}function O3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;h=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;if(((h-d|0)/208|0)>>>0>=c>>>0){do{Krb(d|0,0,208)|0;f[d+100>>2]=-1;b[d+200>>0]=0;d=(f[m>>2]|0)+208|0;f[m>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;g=(d-e|0)/208|0;d=g+c|0;if(d>>>0>20648881)fob(a);j=(h-e|0)/208|0;k=j<<1;d=j>>>0<10324440?(k>>>0<d>>>0?d:k):20648881;do if(!d)i=0;else if(d>>>0>20648881)ud();else{i=Wpb(d*208|0)|0;break}while(0);j=i+(g*208|0)|0;e=j;g=i+(d*208|0)|0;k=e;d=j;do{Krb(d|0,0,208)|0;f[d+100>>2]=-1;b[d+200>>0]=0;d=k+208|0;k=d;c=c+-1|0}while((c|0)!=0);h=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(h|0)){c=e;i=h;d=h}else{c=j;do{d=d+-208|0;eM(c+-208|0,d);c=e+-208|0;e=c}while((d|0)!=(h|0));c=e;i=f[a>>2]|0;d=f[m>>2]|0}f[a>>2]=c;f[m>>2]=k;f[l>>2]=g;h=i;if((d|0)!=(h|0))do{c=f[d+-120>>2]|0;if(c|0){e=d+-116|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~(((g+-12-c|0)>>>0)/12|0)*12|0);Zpb(c)}d=d+-208|0}while((d|0)!=(h|0));if(!i)return;Zpb(i);return}function P3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+16|0;o=q;mwa(o,f[a>>2]|0,b);h=f[o>>2]|0;b=f[o+4>>2]|0;if(b|0)Ppb(b);i=h;o=f[a+4>>2]|0;m=X(i,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;m=m>>>15^m;j=o+4|0;k=f[j>>2]|0;l=(k|0)==0;a:do if(l)b=0;else{g=k+-1|0;c=(g&k|0)==0;if(c)b=g&m;else if(m>>>0<k>>>0)b=m;else b=(m>>>0)%(k>>>0)|0;a=f[(f[o>>2]|0)+(b<<2)>>2]|0;if(a){if(c){while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if(!((c|0)==(m|0)|(c&g|0)==(b|0)))break a;if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)!=(b|0))break a}if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}}while(0);h=Wpb(12)|0;f[h+8>>2]=i;f[h+4>>2]=m;f[h>>2]=0;g=o+12|0;d=+(((f[g>>2]|0)+1|0)>>>0);e=+n[o+16>>2];do if(l|e*+(k>>>0)<d){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;a=~~+W(+(d/e))>>>0;T3a(o,b>>>0<a>>>0?a:b);b=f[j>>2]|0;a=b+-1|0;if(!(a&b)){c=b;b=a&m;break}if(m>>>0<b>>>0){c=b;b=m}else{c=b;b=(m>>>0)%(b>>>0)|0}}else c=k;while(0);a=(f[o>>2]|0)+(b<<2)|0;b=f[a>>2]|0;if(!b){b=o+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[a>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;a=c+-1|0;if(!(a&c))b=b&a;else if(b>>>0>=c>>>0)b=(b>>>0)%(c>>>0)|0;b=(f[o>>2]|0)+(b<<2)|0;p=32}}else{f[h>>2]=f[b>>2];p=32}if((p|0)==32)f[b>>2]=h;f[g>>2]=(f[g>>2]|0)+1;p=0;u=q;return p|0}function Q3a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0.0;F=0;J=u;u=u+2704|0;a:while(1){z=c;v=c+-120|0;A=c+-240|0;d=c+-24|0;h=c+-16|0;w=c+-80|0;x=c+-72|0;y=c+-64|0;q=c+-56|0;r=c+-40|0;s=c+-32|0;t=c+-24|0;k=a;f[J+224>>2]=k;f[J+240>>2]=a;f[J+288>>2]=c;f[J+320>>2]=I;f[J+840>>2]=q;f[J+912>>2]=r;f[J+976>>2]=s;f[J+1008>>2]=t;f[J+1256>>2]=z;f[J+1712>>2]=v;f[J+2200>>2]=A;f[J+2304>>2]=d;f[J+2352>>2]=h;f[J+2376>>2]=w;f[J+2408>>2]=x;f[J+2440>>2]=y;f[J+2504>>2]=B;f[J+2520>>2]=C;f[J+2528>>2]=E;f[J+2536>>2]=F;f[J+2584>>2]=0;f[J+2588>>2]=0;q4a(J);a=f[J+240>>2]|0;c=f[J+288>>2]|0;I=f[J+320>>2]|0;B=f[J+2504>>2]|0;C=f[J+2520>>2]|0;E=f[J+2528>>2]|0;F=f[J+2536>>2]|0;G=f[J+2584>>2]|0;D=f[J+2588>>2]|0;H=+n[J+2588>>2];f[J+2584>>2]=0;f[J+2588>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break a}if((G|0)==3)continue}a=1;if(a)if((F|0)==5){a=~~+p[d>>3]>>>0;c=~~+p[I+96>>3]>>>0;if(a>>>0>=c>>>0){if(a>>>0>c>>>0){u=J;return}e=+p[h>>3];g=+p[I+104>>3];if(!(e<g)){if(e>g){u=J;return}if(!(C5a(v,I)|0)){u=J;return}}}B=J+24|0;C=I;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));j=I+40|0;k=I+48|0;a=I+56|0;e=+p[j>>3];g=+p[k>>3];l=+p[a>>3];c=I+64|0;f[(J+64|0)>>2]=f[c>>2];f[(J+64|0)+4>>2]=f[c+4>>2];f[(J+64|0)+8>>2]=f[c+8>>2];f[(J+64|0)+12>>2]=f[c+12>>2];d=I+80|0;h=I+88|0;m=+p[d>>3];o=+p[h>>3];i=I+96|0;f[J>>2]=f[i>>2];f[J+4>>2]=f[i+4>>2];f[J+8>>2]=f[i+8>>2];f[J+12>>2]=f[i+12>>2];b[J+16>>0]=b[i+16>>0]|0;B=I;C=v;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));K=+p[w>>3];p[w>>3]=e;p[j>>3]=K;K=+p[x>>3];p[x>>3]=+p[k>>3];p[k>>3]=K;K=+p[y>>3];p[y>>3]=+p[a>>3];p[a>>3]=K;f[c>>2]=f[q>>2];f[c+4>>2]=f[q+4>>2];f[c+8>>2]=f[q+8>>2];f[c+12>>2]=f[q+12>>2];K=+p[r>>3];p[r>>3]=+p[d>>3];p[d>>3]=K;p[h>>3]=+p[s>>3];f[i>>2]=f[t>>2];f[i+4>>2]=f[t+4>>2];f[i+8>>2]=f[t+8>>2];f[i+12>>2]=f[t+12>>2];b[i+16>>0]=b[t+16>>0]|0;B=v;C=J+24|0;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));p[w>>3]=e;p[x>>3]=g;p[y>>3]=l;f[q>>2]=f[(J+64|0)>>2];f[q+4>>2]=f[(J+64|0)+4>>2];f[q+8>>2]=f[(J+64|0)+8>>2];f[q+12>>2]=f[(J+64|0)+12>>2];p[r>>3]=m;p[s>>3]=o;f[t>>2]=f[J>>2];f[t+4>>2]=f[J+4>>2];f[t+8>>2]=f[J+8>>2];f[t+12>>2]=f[J+12>>2];b[t+16>>0]=b[J+16>>0]|0;u=J;return}else a=1;if(a)if((F|0)==11){V3a(I,I+120|0,v)|0;u=J;return}else if((F|0)==12){W3a(I,I+120|0,I+240|0,v)|0;u=J;return}else if((F|0)==13){X3a(I,I+120|0,I+240|0,I+360|0,v)|0;u=J;return}else a=1;if(a)if((F|0)==15){d=I+240|0;V3a(I,I+120|0,d)|0;a=I+360|0;if((a|0)==(c|0)){u=J;return}x=(J+64|0)+40|0;y=(J+64|0)+64|0;z=(J+64|0)+80|0;A=(J+64|0)+96|0;w=a;while(1){a=~~+p[w+96>>3]>>>0;h=~~+p[d+96>>3]>>>0;if(a>>>0<h>>>0)F=22;else if(a>>>0<=h>>>0){e=+p[w+104>>3];g=+p[d+104>>3];if(e<g)F=22;else if(!(e>g))if(C5a(w,d)|0)F=22}if((F|0)==22){F=0;B=J+64|0;C=w;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));a=w+40|0;f[x>>2]=f[a>>2];f[x+4>>2]=f[a+4>>2];f[x+8>>2]=f[a+8>>2];f[x+12>>2]=f[a+12>>2];f[x+16>>2]=f[a+16>>2];f[x+20>>2]=f[a+20>>2];p[x>>3]=+p[a>>3];p[((J+64|0)+48|0)>>3]=+p[w+48>>3];p[((J+64|0)+56|0)>>3]=+p[w+56>>3];a=w+64|0;f[y>>2]=f[a>>2];f[y+4>>2]=f[a+4>>2];f[y+8>>2]=f[a+8>>2];f[y+12>>2]=f[a+12>>2];a=w+80|0;f[z>>2]=f[a>>2];f[z+4>>2]=f[a+4>>2];f[z+8>>2]=f[a+8>>2];f[z+12>>2]=f[a+12>>2];p[z>>3]=+p[a>>3];p[((J+64|0)+88|0)>>3]=+p[w+88>>3];a=w+96|0;f[A>>2]=f[a>>2];f[A+4>>2]=f[a+4>>2];f[A+8>>2]=f[a+8>>2];f[A+12>>2]=f[a+12>>2];b[A+16>>0]=b[a+16>>0]|0;a=w;while(1){B=a;C=d;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));t=d+40|0;K=+p[t>>3];v=a+40|0;p[t>>3]=+p[v>>3];p[v>>3]=K;v=d+48|0;K=+p[v>>3];k=a+48|0;p[v>>3]=+p[k>>3];p[k>>3]=K;k=d+56|0;K=+p[k>>3];r=a+56|0;p[k>>3]=+p[r>>3];p[r>>3]=K;r=a+64|0;q=d+64|0;f[r>>2]=f[q>>2];f[r+4>>2]=f[q+4>>2];f[r+8>>2]=f[q+8>>2];f[r+12>>2]=f[q+12>>2];r=d+80|0;K=+p[r>>3];s=a+80|0;p[r>>3]=+p[s>>3];p[s>>3]=K;s=d+88|0;K=+p[s>>3];E=a+88|0;p[s>>3]=+p[E>>3];p[E>>3]=K;E=a+96|0;j=d+96|0;f[E>>2]=f[j>>2];f[E+4>>2]=f[j+4>>2];f[E+8>>2]=f[j+8>>2];f[E+12>>2]=f[j+12>>2];b[E+16>>0]=b[j+16>>0]|0;if((d|0)==(I|0))break;i=d+-120|0;a=~~+p[((J+64|0)+96|0)>>3]>>>0;h=~~+p[d+-24>>3]>>>0;if(a>>>0<h>>>0){a=d;d=i;continue}if(a>>>0>h>>>0)break;e=+p[((J+64|0)+104|0)>>3];g=+p[d+-16>>3];if(e<g){a=d;d=i;continue}if(e>g)break;if(C5a(J+64|0,i)|0){a=d;d=i}else break}B=d;C=J+64|0;E=B+36|0;do{f[B>>2]=f[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(E|0));K=+p[((J+64|0)+40|0)>>3];p[((J+64|0)+40|0)>>3]=+p[t>>3];p[t>>3]=K;K=+p[((J+64|0)+48|0)>>3];p[((J+64|0)+48|0)>>3]=+p[v>>3];p[v>>3]=K;K=+p[((J+64|0)+56|0)>>3];p[((J+64|0)+56|0)>>3]=+p[k>>3];p[k>>3]=K;f[q>>2]=f[y>>2];f[q+4>>2]=f[y+4>>2];f[q+8>>2]=f[y+8>>2];f[q+12>>2]=f[y+12>>2];K=+p[((J+64|0)+80|0)>>3];p[((J+64|0)+80|0)>>3]=+p[r>>3];p[r>>3]=K;K=+p[((J+64|0)+88|0)>>3];p[((J+64|0)+88|0)>>3]=+p[s>>3];p[s>>3]=K;f[j>>2]=f[A>>2];f[j+4>>2]=f[A+4>>2];f[j+8>>2]=f[A+8>>2];f[j+12>>2]=f[A+12>>2];b[j+16>>0]=b[A+16>>0]|0}a=w+120|0;if((a|0)==(c|0))break;else{d=w;w=a}}u=J;return}else a=1;if(a)if((F|0)==111)if(1){u=J;return}}function R3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+8|0;h=f[n>>2]|0;o=a+4|0;d=f[o>>2]|0;if(((h-d|0)/120|0)>>>0>=c>>>0){do{l=d+120|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(l|0));d=(f[o>>2]|0)+120|0;f[o>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;g=(d-e|0)/120|0;d=g+c|0;if(d>>>0>35791394)fob(a);l=(h-e|0)/120|0;m=l<<1;d=l>>>0<17895697?(m>>>0<d>>>0?d:m):35791394;do if(!d)i=0;else if(d>>>0>35791394)ud();else{i=Wpb(d*120|0)|0;break}while(0);h=i+(g*120|0)|0;g=h;e=i+(d*120|0)|0;d=h;m=g;do{l=d+120|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(l|0));d=m+120|0;m=d;c=c+-1|0}while((c|0)!=0);k=f[a>>2]|0;d=f[o>>2]|0;if((d|0)==(k|0)){c=g;d=k}else{j=d;c=g;do{g=j;j=j+-120|0;d=h+-120|0;i=j;l=d+36|0;do{f[d>>2]=f[i>>2];d=d+4|0;i=i+4|0}while((d|0)<(l|0));p[h+-80>>3]=+p[g+-80>>3];p[h+-72>>3]=+p[g+-72>>3];p[h+-64>>3]=+p[g+-64>>3];l=h+-56|0;i=g+-56|0;f[l>>2]=f[i>>2];f[l+4>>2]=f[i+4>>2];f[l+8>>2]=f[i+8>>2];f[l+12>>2]=f[i+12>>2];p[h+-40>>3]=+p[g+-40>>3];p[h+-32>>3]=+p[g+-32>>3];l=h+-24|0;i=g+-24|0;f[l>>2]=f[i>>2];f[l+4>>2]=f[i+4>>2];f[l+8>>2]=f[i+8>>2];f[l+12>>2]=f[i+12>>2];b[l+16>>0]=b[i+16>>0]|0;h=c+-120|0;c=h}while((j|0)!=(k|0));d=f[a>>2]|0}f[a>>2]=c;f[o>>2]=m;f[n>>2]=e;if(!d)return;Zpb(d);return}function S3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+16|0;o=q;mwa(o,f[a>>2]|0,b);h=f[o>>2]|0;b=f[o+4>>2]|0;if(b|0)Ppb(b);i=h;o=f[a+4>>2]|0;m=X(i,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;m=m>>>15^m;j=o+4|0;k=f[j>>2]|0;l=(k|0)==0;a:do if(l)b=0;else{g=k+-1|0;c=(g&k|0)==0;if(c)b=g&m;else if(m>>>0<k>>>0)b=m;else b=(m>>>0)%(k>>>0)|0;a=f[(f[o>>2]|0)+(b<<2)>>2]|0;if(a){if(c){while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if(!((c|0)==(m|0)|(c&g|0)==(b|0)))break a;if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}while(1){a=f[a>>2]|0;if(!a)break a;c=f[a+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)!=(b|0))break a}if((f[a+8>>2]|0)==(h|0)){b=1;break}}u=q;return b|0}}while(0);h=Wpb(12)|0;f[h+8>>2]=i;f[h+4>>2]=m;f[h>>2]=0;g=o+12|0;d=+(((f[g>>2]|0)+1|0)>>>0);e=+n[o+16>>2];do if(l|e*+(k>>>0)<d){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;a=~~+W(+(d/e))>>>0;T3a(o,b>>>0<a>>>0?a:b);b=f[j>>2]|0;a=b+-1|0;if(!(a&b)){c=b;b=a&m;break}if(m>>>0<b>>>0){c=b;b=m}else{c=b;b=(m>>>0)%(b>>>0)|0}}else c=k;while(0);a=(f[o>>2]|0)+(b<<2)|0;b=f[a>>2]|0;if(!b){b=o+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[a>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;a=c+-1|0;if(!(a&c))b=b&a;else if(b>>>0>=c>>>0)b=(b>>>0)%(c>>>0)|0;b=(f[o>>2]|0)+(b<<2)|0;p=32}}else{f[h>>2]=f[b>>2];p=32}if((p|0)==32)f[b>>2]=h;f[g>>2]=(f[g>>2]|0)+1;p=0;u=q;return p|0}function T3a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){U3a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;U3a(a,b);return}function U3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function V3a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,o=0,q=0,r=0,s=0,t=0,v=0.0;t=u;u=u+720|0;j=+p[(c+96|0)>>3];e=~~+p[(a+96|0)>>3]>>>0;if(~~j>>>0>>>0<e>>>0){m=1;h=j}else if(~~j>>>0>>>0>e>>>0){m=0;h=j}else{h=+p[c+104>>3];i=+p[a+104>>3];if(h<i){m=1;h=j}else if(h>i){m=0;h=j}else{m=C5a(c,a)|0;h=+p[(c+96|0)>>3]}}g=~~+p[(d+96|0)>>3]>>>0;e=~~h>>>0;if(g>>>0<e>>>0)e=1;else if(g>>>0>e>>>0)e=0;else{h=+p[d+104>>3];i=+p[c+104>>3];if(h<i)e=1;else if(h>i)e=0;else e=C5a(d,c)|0}if(!m){if(!e){c=0;u=t;return c|0}q=t+24|0;r=c;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));h=+p[(c+40|0)>>3];i=+p[(c+48|0)>>3];j=+p[(c+56|0)>>3];f[(t+64|0)>>2]=f[(c+64|0)>>2];f[(t+64|0)+4>>2]=f[(c+64|0)+4>>2];f[(t+64|0)+8>>2]=f[(c+64|0)+8>>2];f[(t+64|0)+12>>2]=f[(c+64|0)+12>>2];k=+p[(c+80|0)>>3];l=+p[(c+88|0)>>3];f[t>>2]=f[(c+96|0)>>2];f[t+4>>2]=f[(c+96|0)+4>>2];f[t+8>>2]=f[(c+96|0)+8>>2];f[t+12>>2]=f[(c+96|0)+12>>2];b[t+16>>0]=b[(c+96|0)+16>>0]|0;q=c;r=d;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));v=+p[(d+40|0)>>3];p[(d+40|0)>>3]=h;p[(c+40|0)>>3]=v;v=+p[(d+48|0)>>3];p[(d+48|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=v;v=+p[(d+56|0)>>3];p[(d+56|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=v;f[(c+64|0)>>2]=f[(d+64|0)>>2];f[(c+64|0)+4>>2]=f[(d+64|0)+4>>2];f[(c+64|0)+8>>2]=f[(d+64|0)+8>>2];f[(c+64|0)+12>>2]=f[(d+64|0)+12>>2];p[(c+80|0)>>3]=+p[(d+80|0)>>3];p[(c+88|0)>>3]=+p[(d+88|0)>>3];f[(c+96|0)>>2]=f[(d+96|0)>>2];f[(c+96|0)+4>>2]=f[(d+96|0)+4>>2];f[(c+96|0)+8>>2]=f[(d+96|0)+8>>2];f[(c+96|0)+12>>2]=f[(d+96|0)+12>>2];b[(c+96|0)+16>>0]=b[(d+96|0)+16>>0]|0;q=d;r=t+24|0;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));p[(d+40|0)>>3]=h;p[(d+48|0)>>3]=i;p[(d+56|0)>>3]=j;f[(d+64|0)>>2]=f[(t+64|0)>>2];f[(d+64|0)+4>>2]=f[(t+64|0)+4>>2];f[(d+64|0)+8>>2]=f[(t+64|0)+8>>2];f[(d+64|0)+12>>2]=f[(t+64|0)+12>>2];p[(d+80|0)>>3]=k;p[(d+88|0)>>3]=l;f[(d+96|0)>>2]=f[t>>2];f[(d+96|0)+4>>2]=f[t+4>>2];f[(d+96|0)+8>>2]=f[t+8>>2];f[(d+96|0)+12>>2]=f[t+12>>2];b[(d+96|0)+16>>0]=b[t+16>>0]|0;e=~~+p[(c+96|0)>>3]>>>0;g=~~+p[(a+96|0)>>3]>>>0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){c=1;u=t;return c|0}h=+p[c+104>>3];i=+p[a+104>>3];if(!(h<i)){if(h>i){c=1;u=t;return c|0}if(!(C5a(c,a)|0)){c=1;u=t;return c|0}}}q=t+24|0;r=a;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));h=+p[(a+40|0)>>3];i=+p[(a+48|0)>>3];j=+p[(a+56|0)>>3];f[(t+64|0)>>2]=f[(a+64|0)>>2];f[(t+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(t+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(t+64|0)+12>>2]=f[(a+64|0)+12>>2];k=+p[(a+80|0)>>3];l=+p[(a+88|0)>>3];f[t>>2]=f[(a+96|0)>>2];f[t+4>>2]=f[(a+96|0)+4>>2];f[t+8>>2]=f[(a+96|0)+8>>2];f[t+12>>2]=f[(a+96|0)+12>>2];b[t+16>>0]=b[(a+96|0)+16>>0]|0;q=a;r=c;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));v=+p[(c+40|0)>>3];p[(c+40|0)>>3]=h;p[(a+40|0)>>3]=v;v=+p[(c+48|0)>>3];p[(c+48|0)>>3]=+p[(a+48|0)>>3];p[(a+48|0)>>3]=v;v=+p[(c+56|0)>>3];p[(c+56|0)>>3]=+p[(a+56|0)>>3];p[(a+56|0)>>3]=v;f[(a+64|0)>>2]=f[(c+64|0)>>2];f[(a+64|0)+4>>2]=f[(c+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(c+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(c+64|0)+12>>2];p[(a+80|0)>>3]=+p[(c+80|0)>>3];p[(a+88|0)>>3]=+p[(c+88|0)>>3];f[(a+96|0)>>2]=f[(c+96|0)>>2];f[(a+96|0)+4>>2]=f[(c+96|0)+4>>2];f[(a+96|0)+8>>2]=f[(c+96|0)+8>>2];f[(a+96|0)+12>>2]=f[(c+96|0)+12>>2];b[(a+96|0)+16>>0]=b[(c+96|0)+16>>0]|0;q=c;r=t+24|0;s=q+36|0;do{f[q>>2]=f[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));p[(c+40|0)>>3]=h;p[(c+48|0)>>3]=i;p[(c+56|0)>>3]=j;f[(c+64|0)>>2]=f[(t+64|0)>>2];f[(c+64|0)+4>>2]=f[(t+64|0)+4>>2];f[(c+64|0)+8>>2]=f[(t+64|0)+8>>2];f[(c+64|0)+12>>2]=f[(t+64|0)+12>>2];p[(c+80|0)>>3]=k;p[(c+88|0)>>3]=l;f[(c+96|0)>>2]=f[t>>2];f[(c+96|0)+4>>2]=f[t+4>>2];f[(c+96|0)+8>>2]=f[t+8>>2];f[(c+96|0)+12>>2]=f[t+12>>2];b[(c+96|0)+16>>0]=b[t+16>>0]|0;c=2;u=t;return c|0}f[t+96>>2]=a;f[t+104>>2]=c;f[t+112>>2]=d;f[t+120>>2]=o;f[t+136>>2]=e;f[t+608>>2]=q;f[t+624>>2]=r;f[t+632>>2]=s;f[t+640>>2]=0;f[t+644>>2]=0;r4a(t);G=f[t+640>>2]|0;D=f[t+644>>2]|0;H=+n[t+644>>2];f[t+640>>2]=0;f[t+644>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function W3a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0.0,s=0.0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0;O=u;u=u+80|0;L=O+64|0;K=O+24|0;M=O;N=V3a(a,c,d)|0;j=~~+p[e+96>>3]>>>0;t=d+96|0;g=~~+p[t>>3]>>>0;if(j>>>0>=g>>>0){if(j>>>0>g>>>0){u=O;return N|0}h=+p[e+104>>3];i=+p[d+104>>3];if(!(h<i)){if(h>i){u=O;return N|0}if(!(C5a(e,d)|0)){u=O;return N|0}}}H=K;I=d;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));F=d+40|0;G=d+48|0;A=d+56|0;h=+p[F>>3];i=+p[G>>3];q=+p[A>>3];B=d+64|0;f[L>>2]=f[B>>2];f[L+4>>2]=f[B+4>>2];f[L+8>>2]=f[B+8>>2];f[L+12>>2]=f[B+12>>2];C=d+80|0;D=d+88|0;r=+p[C>>3];s=+p[D>>3];E=d+96|0;f[M>>2]=f[E>>2];f[M+4>>2]=f[E+4>>2];f[M+8>>2]=f[E+8>>2];f[M+12>>2]=f[E+12>>2];b[M+16>>0]=b[E+16>>0]|0;H=d;I=e;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));g=e+40|0;P=+p[g>>3];p[g>>3]=h;p[F>>3]=P;j=e+48|0;P=+p[j>>3];p[j>>3]=+p[G>>3];p[G>>3]=P;k=e+56|0;P=+p[k>>3];p[k>>3]=+p[A>>3];p[A>>3]=P;l=e+64|0;f[B>>2]=f[l>>2];f[B+4>>2]=f[l+4>>2];f[B+8>>2]=f[l+8>>2];f[B+12>>2]=f[l+12>>2];m=e+80|0;p[C>>3]=+p[m>>3];n=e+88|0;p[D>>3]=+p[n>>3];o=e+96|0;f[E>>2]=f[o>>2];f[E+4>>2]=f[o+4>>2];f[E+8>>2]=f[o+8>>2];f[E+12>>2]=f[o+12>>2];b[E+16>>0]=b[o+16>>0]|0;H=e;I=K;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[g>>3]=h;p[j>>3]=i;p[k>>3]=q;f[l>>2]=f[L>>2];f[l+4>>2]=f[L+4>>2];f[l+8>>2]=f[L+8>>2];f[l+12>>2]=f[L+12>>2];p[m>>3]=r;p[n>>3]=s;f[o>>2]=f[M>>2];f[o+4>>2]=f[M+4>>2];f[o+8>>2]=f[M+8>>2];f[o+12>>2]=f[M+12>>2];b[o+16>>0]=b[M+16>>0]|0;k=N+1|0;g=~~+p[t>>3]>>>0;l=c+96|0;j=~~+p[l>>3]>>>0;if(g>>>0>=j>>>0){if(g>>>0>j>>>0){N=k;u=O;return N|0}h=+p[d+104>>3];i=+p[c+104>>3];if(!(h<i)){if(h>i){N=k;u=O;return N|0}if(!(C5a(d,c)|0)){N=k;u=O;return N|0}}}H=K;I=c;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));y=c+40|0;z=c+48|0;e=c+56|0;h=+p[y>>3];i=+p[z>>3];q=+p[e>>3];t=c+64|0;f[L>>2]=f[t>>2];f[L+4>>2]=f[t+4>>2];f[L+8>>2]=f[t+8>>2];f[L+12>>2]=f[t+12>>2];v=c+80|0;w=c+88|0;r=+p[v>>3];s=+p[w>>3];x=c+96|0;f[M>>2]=f[x>>2];f[M+4>>2]=f[x+4>>2];f[M+8>>2]=f[x+8>>2];f[M+12>>2]=f[x+12>>2];b[M+16>>0]=b[x+16>>0]|0;H=c;I=d;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));P=+p[F>>3];p[F>>3]=h;p[y>>3]=P;P=+p[G>>3];p[G>>3]=+p[z>>3];p[z>>3]=P;P=+p[A>>3];p[A>>3]=+p[e>>3];p[e>>3]=P;f[t>>2]=f[B>>2];f[t+4>>2]=f[B+4>>2];f[t+8>>2]=f[B+8>>2];f[t+12>>2]=f[B+12>>2];p[v>>3]=+p[C>>3];p[w>>3]=+p[D>>3];f[x>>2]=f[E>>2];f[x+4>>2]=f[E+4>>2];f[x+8>>2]=f[E+8>>2];f[x+12>>2]=f[E+12>>2];b[x+16>>0]=b[E+16>>0]|0;H=d;I=K;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[F>>3]=h;p[G>>3]=i;p[A>>3]=q;f[B>>2]=f[L>>2];f[B+4>>2]=f[L+4>>2];f[B+8>>2]=f[L+8>>2];f[B+12>>2]=f[L+12>>2];p[C>>3]=r;p[D>>3]=s;f[E>>2]=f[M>>2];f[E+4>>2]=f[M+4>>2];f[E+8>>2]=f[M+8>>2];f[E+12>>2]=f[M+12>>2];b[E+16>>0]=b[M+16>>0]|0;k=N+2|0;g=~~+p[l>>3]>>>0;j=~~+p[a+96>>3]>>>0;if(g>>>0>=j>>>0){if(g>>>0>j>>>0){N=k;u=O;return N|0}h=+p[c+104>>3];i=+p[a+104>>3];if(!(h<i)){if(h>i){N=k;u=O;return N|0}if(!(C5a(c,a)|0)){N=k;u=O;return N|0}}}H=K;I=a;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));n=a+40|0;o=a+48|0;g=a+56|0;h=+p[n>>3];i=+p[o>>3];q=+p[g>>3];j=a+64|0;f[L>>2]=f[j>>2];f[L+4>>2]=f[j+4>>2];f[L+8>>2]=f[j+8>>2];f[L+12>>2]=f[j+12>>2];k=a+80|0;l=a+88|0;r=+p[k>>3];s=+p[l>>3];m=a+96|0;f[M>>2]=f[m>>2];f[M+4>>2]=f[m+4>>2];f[M+8>>2]=f[m+8>>2];f[M+12>>2]=f[m+12>>2];b[M+16>>0]=b[m+16>>0]|0;H=a;I=c;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));P=+p[y>>3];p[y>>3]=h;p[n>>3]=P;P=+p[z>>3];p[z>>3]=+p[o>>3];p[o>>3]=P;P=+p[e>>3];p[e>>3]=+p[g>>3];p[g>>3]=P;f[j>>2]=f[t>>2];f[j+4>>2]=f[t+4>>2];f[j+8>>2]=f[t+8>>2];f[j+12>>2]=f[t+12>>2];p[k>>3]=+p[v>>3];p[l>>3]=+p[w>>3];f[m>>2]=f[x>>2];f[m+4>>2]=f[x+4>>2];f[m+8>>2]=f[x+8>>2];f[m+12>>2]=f[x+12>>2];b[m+16>>0]=b[x+16>>0]|0;H=c;I=K;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[y>>3]=h;p[z>>3]=i;p[e>>3]=q;f[t>>2]=f[L>>2];f[t+4>>2]=f[L+4>>2];f[t+8>>2]=f[L+8>>2];f[t+12>>2]=f[L+12>>2];p[v>>3]=r;p[w>>3]=s;f[x>>2]=f[M>>2];f[x+4>>2]=f[M+4>>2];f[x+8>>2]=f[M+8>>2];f[x+12>>2]=f[M+12>>2];b[x+16>>0]=b[M+16>>0]|0;N=N+3|0;u=O;return N|0}function X3a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0.0;t=u;u=u+640|0;s=W3a(a,c,d,e)|0;i=~~+p[g+96>>3]>>>0;h=~~+p[(e+96|0)>>3]>>>0;if(i>>>0>=h>>>0){if(i>>>0>h>>>0){u=t;return s|0}j=+p[g+104>>3];k=+p[e+104>>3];if(!(j<k)){if(j>k){u=t;return s|0}if(!(C5a(g,e)|0)){u=t;return s|0}}}h=t+24|0;i=e;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));j=+p[(e+40|0)>>3];k=+p[(e+48|0)>>3];l=+p[(e+56|0)>>3];f[(t+64|0)>>2]=f[(e+64|0)>>2];f[(t+64|0)+4>>2]=f[(e+64|0)+4>>2];f[(t+64|0)+8>>2]=f[(e+64|0)+8>>2];f[(t+64|0)+12>>2]=f[(e+64|0)+12>>2];m=+p[(e+80|0)>>3];o=+p[(e+88|0)>>3];f[t>>2]=f[(e+96|0)>>2];f[t+4>>2]=f[(e+96|0)+4>>2];f[t+8>>2]=f[(e+96|0)+8>>2];f[t+12>>2]=f[(e+96|0)+12>>2];b[t+16>>0]=b[(e+96|0)+16>>0]|0;h=e;i=g;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));v=+p[(g+40|0)>>3];p[(g+40|0)>>3]=j;p[(e+40|0)>>3]=v;v=+p[(g+48|0)>>3];p[(g+48|0)>>3]=+p[(e+48|0)>>3];p[(e+48|0)>>3]=v;v=+p[(g+56|0)>>3];p[(g+56|0)>>3]=+p[(e+56|0)>>3];p[(e+56|0)>>3]=v;f[(e+64|0)>>2]=f[(g+64|0)>>2];f[(e+64|0)+4>>2]=f[(g+64|0)+4>>2];f[(e+64|0)+8>>2]=f[(g+64|0)+8>>2];f[(e+64|0)+12>>2]=f[(g+64|0)+12>>2];p[(e+80|0)>>3]=+p[(g+80|0)>>3];p[(e+88|0)>>3]=+p[(g+88|0)>>3];f[(e+96|0)>>2]=f[(g+96|0)>>2];f[(e+96|0)+4>>2]=f[(g+96|0)+4>>2];f[(e+96|0)+8>>2]=f[(g+96|0)+8>>2];f[(e+96|0)+12>>2]=f[(g+96|0)+12>>2];b[(e+96|0)+16>>0]=b[(g+96|0)+16>>0]|0;h=g;i=t+24|0;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));p[(g+40|0)>>3]=j;p[(g+48|0)>>3]=k;p[(g+56|0)>>3]=l;f[(g+64|0)>>2]=f[(t+64|0)>>2];f[(g+64|0)+4>>2]=f[(t+64|0)+4>>2];f[(g+64|0)+8>>2]=f[(t+64|0)+8>>2];f[(g+64|0)+12>>2]=f[(t+64|0)+12>>2];p[(g+80|0)>>3]=m;p[(g+88|0)>>3]=o;f[(g+96|0)>>2]=f[t>>2];f[(g+96|0)+4>>2]=f[t+4>>2];f[(g+96|0)+8>>2]=f[t+8>>2];f[(g+96|0)+12>>2]=f[t+12>>2];b[(g+96|0)+16>>0]=b[t+16>>0]|0;h=~~+p[(e+96|0)>>3]>>>0;i=~~+p[(d+96|0)>>3]>>>0;if(h>>>0>=i>>>0){if(h>>>0>i>>>0){s=s+1|0;u=t;return s|0}j=+p[e+104>>3];k=+p[d+104>>3];if(!(j<k)){if(j>k){s=s+1|0;u=t;return s|0}if(!(C5a(e,d)|0)){s=s+1|0;u=t;return s|0}}}h=t+24|0;i=d;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));j=+p[(d+40|0)>>3];k=+p[(d+48|0)>>3];l=+p[(d+56|0)>>3];f[(t+64|0)>>2]=f[(d+64|0)>>2];f[(t+64|0)+4>>2]=f[(d+64|0)+4>>2];f[(t+64|0)+8>>2]=f[(d+64|0)+8>>2];f[(t+64|0)+12>>2]=f[(d+64|0)+12>>2];m=+p[(d+80|0)>>3];o=+p[(d+88|0)>>3];f[t>>2]=f[(d+96|0)>>2];f[t+4>>2]=f[(d+96|0)+4>>2];f[t+8>>2]=f[(d+96|0)+8>>2];f[t+12>>2]=f[(d+96|0)+12>>2];b[t+16>>0]=b[(d+96|0)+16>>0]|0;h=d;i=e;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));v=+p[(e+40|0)>>3];p[(e+40|0)>>3]=j;p[(d+40|0)>>3]=v;v=+p[(e+48|0)>>3];p[(e+48|0)>>3]=+p[(d+48|0)>>3];p[(d+48|0)>>3]=v;v=+p[(e+56|0)>>3];p[(e+56|0)>>3]=+p[(d+56|0)>>3];p[(d+56|0)>>3]=v;f[(d+64|0)>>2]=f[(e+64|0)>>2];f[(d+64|0)+4>>2]=f[(e+64|0)+4>>2];f[(d+64|0)+8>>2]=f[(e+64|0)+8>>2];f[(d+64|0)+12>>2]=f[(e+64|0)+12>>2];p[(d+80|0)>>3]=+p[(e+80|0)>>3];p[(d+88|0)>>3]=+p[(e+88|0)>>3];f[(d+96|0)>>2]=f[(e+96|0)>>2];f[(d+96|0)+4>>2]=f[(e+96|0)+4>>2];f[(d+96|0)+8>>2]=f[(e+96|0)+8>>2];f[(d+96|0)+12>>2]=f[(e+96|0)+12>>2];b[(d+96|0)+16>>0]=b[(e+96|0)+16>>0]|0;h=e;i=t+24|0;q=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(q|0));p[(e+40|0)>>3]=j;p[(e+48|0)>>3]=k;p[(e+56|0)>>3]=l;f[(e+64|0)>>2]=f[(t+64|0)>>2];f[(e+64|0)+4>>2]=f[(t+64|0)+4>>2];f[(e+64|0)+8>>2]=f[(t+64|0)+8>>2];f[(e+64|0)+12>>2]=f[(t+64|0)+12>>2];p[(e+80|0)>>3]=m;p[(e+88|0)>>3]=o;f[(e+96|0)>>2]=f[t>>2];f[(e+96|0)+4>>2]=f[t+4>>2];f[t+96>>2]=a;f[t+104>>2]=c;f[t+112>>2]=d;f[t+120>>2]=e;f[t+136>>2]=r;f[t+336>>2]=s;f[t+536>>2]=h;f[t+552>>2]=i;f[t+560>>2]=q;f[t+568>>2]=0;f[t+572>>2]=0;s4a(t);G=f[t+568>>2]|0;D=f[t+572>>2]|0;H=+n[t+572>>2];f[t+568>>2]=0;f[t+572>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function Y3a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0.0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0;O=u;u=u+160|0;N=O+40|0;x=O+24|0;y=O;switch((c-a|0)/120|0|0){case 2:{w=c+-120|0;e=~~+p[c+-24>>3]>>>0;d=~~+p[a+96>>3]>>>0;if(e>>>0>=d>>>0){if(e>>>0>d>>>0){c=1;u=O;return c|0}g=+p[c+-16>>3];h=+p[a+104>>3];if(!(g<h)){if(g>h){c=1;u=O;return c|0}if(!(C5a(w,a)|0)){c=1;u=O;return c|0}}}K=N;L=a;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));d=a+40|0;e=a+48|0;i=a+56|0;g=+p[d>>3];h=+p[e>>3];s=+p[i>>3];k=a+64|0;f[x>>2]=f[k>>2];f[x+4>>2]=f[k+4>>2];f[x+8>>2]=f[k+8>>2];f[x+12>>2]=f[k+12>>2];m=a+80|0;o=a+88|0;t=+p[m>>3];v=+p[o>>3];r=a+96|0;f[y>>2]=f[r>>2];f[y+4>>2]=f[r+4>>2];f[y+8>>2]=f[r+8>>2];f[y+12>>2]=f[r+12>>2];b[y+16>>0]=b[r+16>>0]|0;K=a;L=w;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));q=c+-80|0;P=+p[q>>3];p[q>>3]=g;p[d>>3]=P;n=c+-72|0;P=+p[n>>3];p[n>>3]=+p[e>>3];p[e>>3]=P;l=c+-64|0;P=+p[l>>3];p[l>>3]=+p[i>>3];p[i>>3]=P;j=c+-56|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];i=c+-40|0;p[m>>3]=+p[i>>3];e=c+-32|0;p[o>>3]=+p[e>>3];d=c+-24|0;f[r>>2]=f[d>>2];f[r+4>>2]=f[d+4>>2];f[r+8>>2]=f[d+8>>2];f[r+12>>2]=f[d+12>>2];b[r+16>>0]=b[d+16>>0]|0;K=w;L=N;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));p[q>>3]=g;p[n>>3]=h;p[l>>3]=s;f[j>>2]=f[x>>2];f[j+4>>2]=f[x+4>>2];f[j+8>>2]=f[x+8>>2];f[j+12>>2]=f[x+12>>2];p[i>>3]=t;p[e>>3]=v;f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];b[d+16>>0]=b[y+16>>0]|0;c=1;u=O;return c|0}case 3:{V3a(a,a+120|0,c+-120|0)|0;c=1;u=O;return c|0}case 4:{W3a(a,a+120|0,a+240|0,c+-120|0)|0;c=1;u=O;return c|0}case 5:{X3a(a,a+120|0,a+240|0,a+360|0,c+-120|0)|0;c=1;u=O;return c|0}case 1:case 0:{c=1;u=O;return c|0}default:{e=a+240|0;V3a(a,a+120|0,e)|0;d=a+360|0;a:do if((d|0)==(c|0)){e=1;d=0}else{y=N+40|0;z=N+48|0;A=N+56|0;B=N+64|0;C=N+80|0;D=N+88|0;E=N+96|0;F=N+96|0;G=N+104|0;H=N+40|0;I=N+80|0;x=d;d=0;while(1){i=~~+p[x+96>>3]>>>0;j=~~+p[e+96>>3]>>>0;if(i>>>0<j>>>0)J=18;else if(i>>>0<=j>>>0){g=+p[x+104>>3];h=+p[e+104>>3];if(g<h)J=18;else if(!(g>h))if(C5a(x,e)|0)J=18}if((J|0)==18){J=0;K=N;L=x;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));i=x+40|0;f[y>>2]=f[i>>2];f[y+4>>2]=f[i+4>>2];f[y+8>>2]=f[i+8>>2];f[y+12>>2]=f[i+12>>2];f[y+16>>2]=f[i+16>>2];f[y+20>>2]=f[i+20>>2];p[y>>3]=+p[i>>3];p[z>>3]=+p[x+48>>3];p[A>>3]=+p[x+56>>3];i=x+64|0;f[B>>2]=f[i>>2];f[B+4>>2]=f[i+4>>2];f[B+8>>2]=f[i+8>>2];f[B+12>>2]=f[i+12>>2];i=x+80|0;f[C>>2]=f[i>>2];f[C+4>>2]=f[i+4>>2];f[C+8>>2]=f[i+8>>2];f[C+12>>2]=f[i+12>>2];p[C>>3]=+p[i>>3];p[D>>3]=+p[x+88>>3];i=x+96|0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[E+12>>2]=f[i+12>>2];b[E+16>>0]=b[i+16>>0]|0;i=x;while(1){K=i;L=e;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));r=e+40|0;P=+p[r>>3];w=i+40|0;p[r>>3]=+p[w>>3];p[w>>3]=P;w=e+48|0;P=+p[w>>3];m=i+48|0;p[w>>3]=+p[m>>3];p[m>>3]=P;m=e+56|0;P=+p[m>>3];o=i+56|0;p[m>>3]=+p[o>>3];p[o>>3]=P;o=i+64|0;n=e+64|0;f[o>>2]=f[n>>2];f[o+4>>2]=f[n+4>>2];f[o+8>>2]=f[n+8>>2];f[o+12>>2]=f[n+12>>2];o=e+80|0;P=+p[o>>3];q=i+80|0;p[o>>3]=+p[q>>3];p[q>>3]=P;q=e+88|0;P=+p[q>>3];M=i+88|0;p[q>>3]=+p[M>>3];p[M>>3]=P;M=i+96|0;l=e+96|0;f[M>>2]=f[l>>2];f[M+4>>2]=f[l+4>>2];f[M+8>>2]=f[l+8>>2];f[M+12>>2]=f[l+12>>2];b[M+16>>0]=b[l+16>>0]|0;if((e|0)==(a|0))break;k=e+-120|0;i=~~+p[F>>3]>>>0;j=~~+p[e+-24>>3]>>>0;if(i>>>0<j>>>0){i=e;e=k;continue}if(i>>>0>j>>>0)break;g=+p[G>>3];h=+p[e+-16>>3];if(g<h){i=e;e=k;continue}if(g>h)break;if(C5a(N,k)|0){i=e;e=k}else break}K=e;L=N;M=K+36|0;do{f[K>>2]=f[L>>2];K=K+4|0;L=L+4|0}while((K|0)<(M|0));P=+p[H>>3];p[H>>3]=+p[r>>3];p[r>>3]=P;P=+p[z>>3];p[z>>3]=+p[w>>3];p[w>>3]=P;P=+p[A>>3];p[A>>3]=+p[m>>3];p[m>>3]=P;f[n>>2]=f[B>>2];f[n+4>>2]=f[B+4>>2];f[n+8>>2]=f[B+8>>2];f[n+12>>2]=f[B+12>>2];P=+p[I>>3];p[I>>3]=+p[o>>3];p[o>>3]=P;P=+p[D>>3];p[D>>3]=+p[q>>3];p[q>>3]=P;f[l>>2]=f[E>>2];f[l+4>>2]=f[E+4>>2];f[l+8>>2]=f[E+8>>2];f[l+12>>2]=f[E+12>>2];b[l+16>>0]=b[E+16>>0]|0;d=d+1|0;if((d|0)==8){e=0;d=(x+120|0)==(c|0);break a}}e=x+120|0;if((e|0)==(c|0)){e=1;d=0;break}else{M=x;x=e;e=M}}}while(0);c=d|e;u=O;return c|0}}return 0}function Z3a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,E=0,F=0,I=0;I=u;u=u+1312|0;j=+p[(c+184|0)>>3];e=~~+p[(a+184|0)>>3]>>>0;if(~~j>>>0>>>0<e>>>0){k=1;h=j}else if(~~j>>>0>>>0>e>>>0){k=0;h=j}else{h=+p[c+192>>3];i=+p[a+192>>3];if(h<i){k=1;h=j}else if(h>i){k=0;h=j}else{k=B5a(c,a)|0;h=+p[(c+184|0)>>3]}}g=~~+p[(d+184|0)>>3]>>>0;e=~~h>>>0;if(g>>>0<e>>>0)e=1;else if(g>>>0>e>>>0)e=0;else{h=+p[d+192>>3];i=+p[c+192>>3];if(h<i)e=1;else if(h>i)e=0;else e=B5a(d,c)|0}if(!k){if(!e){c=0;u=I;return c|0}C=I+24|0;E=c;F=C+36|0;do{f[C>>2]=f[E>>2];C=C+4|0;E=E+4|0}while((C|0)<(F|0));e=f[(c+36|0)>>2]|0;g=f[(c+40|0)>>2]|0;k=f[(c+44|0)>>2]|0;l=f[(c+48|0)>>2]|0;m=f[(c+52|0)>>2]|0;o=f[(c+56|0)>>2]|0;h=+p[(c+64|0)>>3];i=+p[(c+72|0)>>3];j=+p[(c+80|0)>>3];q=f[(c+88|0)>>2]|0;r=f[(c+92|0)>>2]|0;s=f[(c+96|0)>>2]|0;f[(c+96|0)>>2]=0;f[(c+92|0)>>2]=0;f[(c+88|0)>>2]=0;f[(I+60|0)>>2]=f[(c+100|0)>>2];f[(I+60|0)+4>>2]=f[(c+100|0)+4>>2];f[(I+60|0)+8>>2]=f[(c+100|0)+8>>2];f[(I+60|0)+12>>2]=f[(c+100|0)+12>>2];f[(I+60|0)+16>>2]=f[(c+100|0)+16>>2];t=+p[(c+120|0)>>3];v=+p[(c+128|0)>>3];w=+p[(c+136|0)>>3];x=+p[(c+144|0)>>3];y=+p[(c+152|0)>>3];z=+p[(c+160|0)>>3];A=+p[(c+168|0)>>3];B=+p[(c+176|0)>>3];f[I>>2]=f[(c+184|0)>>2];f[I+4>>2]=f[(c+184|0)+4>>2];f[I+8>>2]=f[(c+184|0)+8>>2];f[I+12>>2]=f[(c+184|0)+12>>2];b[I+16>>0]=b[(c+184|0)+16>>0]|0;N3a(c,d)|0;C=d;E=I+24|0;F=C+36|0;do{f[C>>2]=f[E>>2];C=C+4|0;E=E+4|0}while((C|0)<(F|0));f[d+36>>2]=e;f[d+40>>2]=g;f[d+44>>2]=k;f[d+48>>2]=l;f[d+52>>2]=m;f[d+56>>2]=o;p[d+64>>3]=h;p[d+72>>3]=i;p[d+80>>3]=j;e=f[(d+88|0)>>2]|0;if(!e)e=d+96|0;else{g=f[(d+92|0)>>2]|0;if((g|0)!=(e|0))f[(d+92|0)>>2]=g+(~(((g+-12-e|0)>>>0)/12|0)*12|0);Zpb(e);f[(d+96|0)>>2]=0;f[(d+92|0)>>2]=0;f[(d+88|0)>>2]=0;e=d+96|0}f[(d+88|0)>>2]=q;f[(d+92|0)>>2]=r;f[e>>2]=s;f[(d+100|0)>>2]=f[(I+60|0)>>2];f[(d+100|0)+4>>2]=f[(I+60|0)+4>>2];f[(d+100|0)+8>>2]=f[(I+60|0)+8>>2];f[(d+100|0)+12>>2]=f[(I+60|0)+12>>2];f[(d+100|0)+16>>2]=f[(I+60|0)+16>>2];p[d+120>>3]=t;p[d+128>>3]=v;p[d+136>>3]=w;p[d+144>>3]=x;p[d+152>>3]=y;p[d+160>>3]=z;p[d+168>>3]=A;p[d+176>>3]=B;f[(d+184|0)>>2]=f[I>>2];f[(d+184|0)+4>>2]=f[I+4>>2];f[(d+184|0)+8>>2]=f[I+8>>2];f[(d+184|0)+12>>2]=f[I+12>>2];b[(d+184|0)+16>>0]=b[I+16>>0]|0;e=~~+p[(c+184|0)>>3]>>>0;g=~~+p[(a+184|0)>>3]>>>0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){c=1;u=I;return c|0}h=+p[c+192>>3];i=+p[a+192>>3];if(!(h<i)){if(h>i){c=1;u=I;return c|0}if(!(B5a(c,a)|0)){c=1;u=I;return c|0}}}C=I+24|0;E=a;F=C+36|0;do{f[C>>2]=f[E>>2];C=C+4|0;E=E+4|0}while((C|0)<(F|0));e=f[a+36>>2]|0;g=f[a+40>>2]|0;k=f[a+44>>2]|0;l=f[a+48>>2]|0;m=f[a+52>>2]|0;o=f[a+56>>2]|0;h=+p[a+64>>3];i=+p[a+72>>3];j=+p[a+80>>3];q=f[(a+88|0)>>2]|0;r=f[(a+92|0)>>2]|0;s=f[(a+96|0)>>2]|0;f[(a+96|0)>>2]=0;f[(a+92|0)>>2]=0;f[(a+88|0)>>2]=0;f[(I+60|0)>>2]=f[(a+100|0)>>2];f[(I+60|0)+4>>2]=f[(a+100|0)+4>>2];f[(I+60|0)+8>>2]=f[(a+100|0)+8>>2];f[(I+60|0)+12>>2]=f[(a+100|0)+12>>2];f[(I+60|0)+16>>2]=f[(a+100|0)+16>>2];t=+p[a+120>>3];v=+p[a+128>>3];w=+p[a+136>>3];x=+p[a+144>>3];y=+p[a+152>>3];z=+p[a+160>>3];A=+p[a+168>>3];B=+p[a+176>>3];f[I>>2]=f[(a+184|0)>>2];f[I+4>>2]=f[(a+184|0)+4>>2];f[I+8>>2]=f[(a+184|0)+8>>2];f[I+12>>2]=f[(a+184|0)+12>>2];b[I+16>>0]=b[(a+184|0)+16>>0]|0;N3a(a,c)|0;C=c;E=I+24|0;F=C+36|0;do{f[C>>2]=f[E>>2];C=C+4|0;E=E+4|0}while((C|0)<(F|0));f[(c+36|0)>>2]=e;f[(c+40|0)>>2]=g;f[(c+44|0)>>2]=k;f[(c+48|0)>>2]=l;f[(c+52|0)>>2]=m;f[(c+56|0)>>2]=o;p[(c+64|0)>>3]=h;p[(c+72|0)>>3]=i;p[(c+80|0)>>3]=j;e=f[(c+88|0)>>2]|0;if(e|0){g=f[(c+92|0)>>2]|0;if((g|0)!=(e|0))f[(c+92|0)>>2]=g+(~(((g+-12-e|0)>>>0)/12|0)*12|0);Zpb(e);f[(c+96|0)>>2]=0;f[(c+92|0)>>2]=0;f[(c+88|0)>>2]=0}f[(c+88|0)>>2]=q;f[(c+92|0)>>2]=r;f[(c+96|0)>>2]=s;f[(c+100|0)>>2]=f[(I+60|0)>>2];f[(c+100|0)+4>>2]=f[(I+60|0)+4>>2];f[(c+100|0)+8>>2]=f[(I+60|0)+8>>2];f[(c+100|0)+12>>2]=f[(I+60|0)+12>>2];f[(c+100|0)+16>>2]=f[(I+60|0)+16>>2];p[(c+120|0)>>3]=t;p[(c+128|0)>>3]=v;p[(c+136|0)>>3]=w;p[(c+144|0)>>3]=x;p[(c+152|0)>>3]=y;p[(c+160|0)>>3]=z;p[(c+168|0)>>3]=A;p[(c+176|0)>>3]=B;f[(c+184|0)>>2]=f[I>>2];f[(c+184|0)+4>>2]=f[I+4>>2];f[(c+184|0)+8>>2]=f[I+8>>2];f[(c+184|0)+12>>2]=f[I+12>>2];b[(c+184|0)+16>>0]=b[I+16>>0]|0;c=2;u=I;return c|0}f[I+96>>2]=a;f[I+104>>2]=c;f[I+112>>2]=d;f[I+120>>2]=l;f[I+136>>2]=e;f[I+1200>>2]=C;f[I+1216>>2]=E;f[I+1224>>2]=F;f[I+1232>>2]=0;f[I+1236>>2]=0;t4a(I);G=f[I+1232>>2]|0;D=f[I+1236>>2]|0;H=+n[I+1236>>2];f[I+1232>>2]=0;f[I+1236>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function _3a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0,r=0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=u;u=u+80|0;va=za+24|0;wa=za+60|0;xa=za;ya=Z3a(a,c,d)|0;j=~~+p[e+184>>3]>>>0;C=d+184|0;g=~~+p[C>>3]>>>0;if(j>>>0>=g>>>0){if(j>>>0>g>>>0){u=za;return ya|0}h=+p[e+192>>3];i=+p[d+192>>3];if(!(h<i)){if(h>i){u=za;return ya|0}if(!(B5a(e,d)|0)){u=za;return ya|0}}}sa=va;ta=d;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));ca=d+36|0;ba=d+40|0;Y=d+44|0;g=f[ca>>2]|0;j=f[ba>>2]|0;k=f[Y>>2]|0;da=d+48|0;Z=d+52|0;_=d+56|0;l=f[da>>2]|0;m=f[Z>>2]|0;n=f[_>>2]|0;$=d+72|0;aa=d+80|0;ea=d+64|0;h=+p[ea>>3];i=+p[$>>3];o=+p[aa>>3];ma=d+88|0;q=f[ma>>2]|0;na=d+92|0;r=f[na>>2]|0;oa=d+96|0;s=f[oa>>2]|0;f[oa>>2]=0;f[na>>2]=0;f[ma>>2]=0;fa=d+100|0;f[wa>>2]=f[fa>>2];f[wa+4>>2]=f[fa+4>>2];f[wa+8>>2]=f[fa+8>>2];f[wa+12>>2]=f[fa+12>>2];f[wa+16>>2]=f[fa+16>>2];ga=d+128|0;ha=d+136|0;pa=d+120|0;t=+p[pa>>3];v=+p[ga>>3];w=+p[ha>>3];ia=d+152|0;ja=d+160|0;qa=d+144|0;x=+p[qa>>3];y=+p[ia>>3];z=+p[ja>>3];ka=d+176|0;ra=d+168|0;A=+p[ra>>3];B=+p[ka>>3];la=d+184|0;f[xa>>2]=f[la>>2];f[xa+4>>2]=f[la+4>>2];f[xa+8>>2]=f[la+8>>2];f[xa+12>>2]=f[la+12>>2];b[xa+16>>0]=b[la+16>>0]|0;N3a(d,e)|0;sa=e;ta=va;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));f[e+36>>2]=g;f[e+40>>2]=j;f[e+44>>2]=k;f[e+48>>2]=l;f[e+52>>2]=m;f[e+56>>2]=n;p[e+64>>3]=h;p[e+72>>3]=i;p[e+80>>3]=o;l=e+88|0;g=f[l>>2]|0;k=e+92|0;if(!g)g=e+96|0;else{j=f[k>>2]|0;if((j|0)!=(g|0))f[k>>2]=j+(~(((j+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);g=e+96|0;f[g>>2]=0;f[k>>2]=0;f[l>>2]=0}f[l>>2]=q;f[k>>2]=r;f[g>>2]=s;k=e+100|0;f[k>>2]=f[wa>>2];f[k+4>>2]=f[wa+4>>2];f[k+8>>2]=f[wa+8>>2];f[k+12>>2]=f[wa+12>>2];f[k+16>>2]=f[wa+16>>2];p[e+120>>3]=t;p[e+128>>3]=v;p[e+136>>3]=w;p[e+144>>3]=x;p[e+152>>3]=y;p[e+160>>3]=z;p[e+168>>3]=A;p[e+176>>3]=B;k=e+184|0;f[k>>2]=f[xa>>2];f[k+4>>2]=f[xa+4>>2];f[k+8>>2]=f[xa+8>>2];f[k+12>>2]=f[xa+12>>2];b[k+16>>0]=b[xa+16>>0]|0;k=ya+1|0;g=~~+p[C>>3]>>>0;e=c+184|0;j=~~+p[e>>3]>>>0;if(g>>>0>=j>>>0){if(g>>>0>j>>>0){ya=k;u=za;return ya|0}h=+p[d+192>>3];i=+p[c+192>>3];if(!(h<i)){if(h>i){ya=k;u=za;return ya|0}if(!(B5a(d,c)|0)){ya=k;u=za;return ya|0}}}sa=va;ta=c;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));J=c+36|0;H=c+40|0;C=c+44|0;g=f[J>>2]|0;j=f[H>>2]|0;k=f[C>>2]|0;K=c+48|0;D=c+52|0;E=c+56|0;l=f[K>>2]|0;m=f[D>>2]|0;n=f[E>>2]|0;F=c+72|0;G=c+80|0;I=c+64|0;h=+p[I>>3];i=+p[F>>3];o=+p[G>>3];S=c+88|0;q=f[S>>2]|0;T=c+92|0;r=f[T>>2]|0;U=c+96|0;s=f[U>>2]|0;f[U>>2]=0;f[T>>2]=0;f[S>>2]=0;L=c+100|0;f[wa>>2]=f[L>>2];f[wa+4>>2]=f[L+4>>2];f[wa+8>>2]=f[L+8>>2];f[wa+12>>2]=f[L+12>>2];f[wa+16>>2]=f[L+16>>2];M=c+128|0;N=c+136|0;V=c+120|0;t=+p[V>>3];v=+p[M>>3];w=+p[N>>3];O=c+152|0;P=c+160|0;W=c+144|0;x=+p[W>>3];y=+p[O>>3];z=+p[P>>3];Q=c+176|0;X=c+168|0;A=+p[X>>3];B=+p[Q>>3];R=c+184|0;f[xa>>2]=f[R>>2];f[xa+4>>2]=f[R+4>>2];f[xa+8>>2]=f[R+8>>2];f[xa+12>>2]=f[R+12>>2];b[xa+16>>0]=b[R+16>>0]|0;N3a(c,d)|0;sa=d;ta=va;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));f[ca>>2]=g;f[ba>>2]=j;f[Y>>2]=k;f[da>>2]=l;f[Z>>2]=m;f[_>>2]=n;p[ea>>3]=h;p[$>>3]=i;p[aa>>3]=o;g=f[ma>>2]|0;if(g|0){j=f[na>>2]|0;if((j|0)!=(g|0))f[na>>2]=j+(~(((j+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);f[oa>>2]=0;f[na>>2]=0;f[ma>>2]=0}f[ma>>2]=q;f[na>>2]=r;f[oa>>2]=s;f[fa>>2]=f[wa>>2];f[fa+4>>2]=f[wa+4>>2];f[fa+8>>2]=f[wa+8>>2];f[fa+12>>2]=f[wa+12>>2];f[fa+16>>2]=f[wa+16>>2];p[pa>>3]=t;p[ga>>3]=v;p[ha>>3]=w;p[qa>>3]=x;p[ia>>3]=y;p[ja>>3]=z;p[ra>>3]=A;p[ka>>3]=B;f[la>>2]=f[xa>>2];f[la+4>>2]=f[xa+4>>2];f[la+8>>2]=f[xa+8>>2];f[la+12>>2]=f[xa+12>>2];b[la+16>>0]=b[xa+16>>0]|0;k=ya+2|0;g=~~+p[e>>3]>>>0;j=~~+p[a+184>>3]>>>0;if(g>>>0>=j>>>0){if(g>>>0>j>>>0){ya=k;u=za;return ya|0}h=+p[c+192>>3];i=+p[a+192>>3];if(!(h<i)){if(h>i){ya=k;u=za;return ya|0}if(!(B5a(c,a)|0)){ya=k;u=za;return ya|0}}}sa=va;ta=a;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));g=f[a+36>>2]|0;j=f[a+40>>2]|0;k=f[a+44>>2]|0;l=f[a+48>>2]|0;m=f[a+52>>2]|0;n=f[a+56>>2]|0;h=+p[a+64>>3];i=+p[a+72>>3];o=+p[a+80>>3];sa=a+88|0;q=f[sa>>2]|0;ta=a+92|0;r=f[ta>>2]|0;ua=a+96|0;s=f[ua>>2]|0;f[ua>>2]=0;f[ta>>2]=0;f[sa>>2]=0;sa=a+100|0;f[wa>>2]=f[sa>>2];f[wa+4>>2]=f[sa+4>>2];f[wa+8>>2]=f[sa+8>>2];f[wa+12>>2]=f[sa+12>>2];f[wa+16>>2]=f[sa+16>>2];t=+p[a+120>>3];v=+p[a+128>>3];w=+p[a+136>>3];x=+p[a+144>>3];y=+p[a+152>>3];z=+p[a+160>>3];A=+p[a+168>>3];B=+p[a+176>>3];sa=a+184|0;f[xa>>2]=f[sa>>2];f[xa+4>>2]=f[sa+4>>2];f[xa+8>>2]=f[sa+8>>2];f[xa+12>>2]=f[sa+12>>2];b[xa+16>>0]=b[sa+16>>0]|0;N3a(a,c)|0;sa=c;ta=va;ua=sa+36|0;do{f[sa>>2]=f[ta>>2];sa=sa+4|0;ta=ta+4|0}while((sa|0)<(ua|0));f[J>>2]=g;f[H>>2]=j;f[C>>2]=k;f[K>>2]=l;f[D>>2]=m;f[E>>2]=n;p[I>>3]=h;p[F>>3]=i;p[G>>3]=o;g=f[S>>2]|0;if(g|0){j=f[T>>2]|0;if((j|0)!=(g|0))f[T>>2]=j+(~(((j+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);f[U>>2]=0;f[T>>2]=0;f[S>>2]=0}f[S>>2]=q;f[T>>2]=r;f[U>>2]=s;f[L>>2]=f[wa>>2];f[L+4>>2]=f[wa+4>>2];f[L+8>>2]=f[wa+8>>2];f[L+12>>2]=f[wa+12>>2];f[L+16>>2]=f[wa+16>>2];p[V>>3]=t;p[M>>3]=v;p[N>>3]=w;p[W>>3]=x;p[O>>3]=y;p[P>>3]=z;p[X>>3]=A;p[Q>>3]=B;f[R>>2]=f[xa>>2];f[R+4>>2]=f[xa+4>>2];f[R+8>>2]=f[xa+8>>2];f[R+12>>2]=f[xa+12>>2];b[R+16>>0]=b[xa+16>>0]|0;ya=ya+3|0;u=za;return ya|0}function $3a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0.0,l=0.0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0,I=0,J=0,K=0,L=0,M=0;M=u;u=u+1088|0;L=_3a(a,c,d,e)|0;i=~~+p[g+184>>3]>>>0;h=~~+p[(e+184|0)>>3]>>>0;if(i>>>0>=h>>>0){if(i>>>0>h>>>0){u=M;return L|0}j=+p[g+192>>3];k=+p[e+192>>3];if(!(j<k)){if(j>k){u=M;return L|0}if(!(B5a(g,e)|0)){u=M;return L|0}}}F=M+24|0;I=e;J=F+36|0;do{f[F>>2]=f[I>>2];F=F+4|0;I=I+4|0}while((F|0)<(J|0));h=f[(e+36|0)>>2]|0;i=f[(e+40|0)>>2]|0;m=f[(e+44|0)>>2]|0;o=f[(e+48|0)>>2]|0;q=f[(e+52|0)>>2]|0;r=f[(e+56|0)>>2]|0;j=+p[(e+64|0)>>3];k=+p[(e+72|0)>>3];l=+p[(e+80|0)>>3];s=f[(e+88|0)>>2]|0;t=f[(e+92|0)>>2]|0;v=f[(e+96|0)>>2]|0;f[(e+96|0)>>2]=0;f[(e+92|0)>>2]=0;f[(e+88|0)>>2]=0;f[(M+60|0)>>2]=f[(e+100|0)>>2];f[(M+60|0)+4>>2]=f[(e+100|0)+4>>2];f[(M+60|0)+8>>2]=f[(e+100|0)+8>>2];f[(M+60|0)+12>>2]=f[(e+100|0)+12>>2];f[(M+60|0)+16>>2]=f[(e+100|0)+16>>2];w=+p[(e+120|0)>>3];x=+p[(e+128|0)>>3];y=+p[(e+136|0)>>3];z=+p[(e+144|0)>>3];A=+p[(e+152|0)>>3];B=+p[(e+160|0)>>3];C=+p[(e+168|0)>>3];E=+p[(e+176|0)>>3];f[M>>2]=f[(e+184|0)>>2];f[M+4>>2]=f[(e+184|0)+4>>2];f[M+8>>2]=f[(e+184|0)+8>>2];f[M+12>>2]=f[(e+184|0)+12>>2];b[M+16>>0]=b[(e+184|0)+16>>0]|0;N3a(e,g)|0;F=g;I=M+24|0;J=F+36|0;do{f[F>>2]=f[I>>2];F=F+4|0;I=I+4|0}while((F|0)<(J|0));f[g+36>>2]=h;f[g+40>>2]=i;f[g+44>>2]=m;f[g+48>>2]=o;f[g+52>>2]=q;f[g+56>>2]=r;p[g+64>>3]=j;p[g+72>>3]=k;p[g+80>>3]=l;h=f[(g+88|0)>>2]|0;if(!h)h=g+96|0;else{i=f[(g+92|0)>>2]|0;if((i|0)!=(h|0))f[(g+92|0)>>2]=i+(~(((i+-12-h|0)>>>0)/12|0)*12|0);Zpb(h);f[(g+96|0)>>2]=0;f[(g+92|0)>>2]=0;f[(g+88|0)>>2]=0;h=g+96|0}f[(g+88|0)>>2]=s;f[(g+92|0)>>2]=t;f[h>>2]=v;f[(g+100|0)>>2]=f[(M+60|0)>>2];f[(g+100|0)+4>>2]=f[(M+60|0)+4>>2];f[(g+100|0)+8>>2]=f[(M+60|0)+8>>2];f[(g+100|0)+12>>2]=f[(M+60|0)+12>>2];f[(g+100|0)+16>>2]=f[(M+60|0)+16>>2];p[g+120>>3]=w;p[g+128>>3]=x;p[g+136>>3]=y;p[g+144>>3]=z;p[g+152>>3]=A;p[g+160>>3]=B;p[g+168>>3]=C;p[g+176>>3]=E;f[(g+184|0)>>2]=f[M>>2];f[(g+184|0)+4>>2]=f[M+4>>2];f[(g+184|0)+8>>2]=f[M+8>>2];f[(g+184|0)+12>>2]=f[M+12>>2];b[(g+184|0)+16>>0]=b[M+16>>0]|0;h=~~+p[(e+184|0)>>3]>>>0;i=~~+p[(d+184|0)>>3]>>>0;if(h>>>0>=i>>>0){if(h>>>0>i>>>0){L=L+1|0;u=M;return L|0}j=+p[e+192>>3];k=+p[d+192>>3];if(!(j<k)){if(j>k){L=L+1|0;u=M;return L|0}if(!(B5a(e,d)|0)){L=L+1|0;u=M;return L|0}}}F=M+24|0;I=d;J=F+36|0;do{f[F>>2]=f[I>>2];F=F+4|0;I=I+4|0}while((F|0)<(J|0));i=f[(d+36|0)>>2]|0;m=f[(d+40|0)>>2]|0;o=f[(d+44|0)>>2]|0;q=f[(d+48|0)>>2]|0;r=f[(d+52|0)>>2]|0;h=f[(d+56|0)>>2]|0;j=+p[(d+64|0)>>3];k=+p[(d+72|0)>>3];l=+p[(d+80|0)>>3];s=f[(d+88|0)>>2]|0;t=f[(d+92|0)>>2]|0;v=f[(d+96|0)>>2]|0;f[(d+96|0)>>2]=0;f[(d+92|0)>>2]=0;f[(d+88|0)>>2]=0;f[(M+60|0)>>2]=f[(d+100|0)>>2];f[(M+60|0)+4>>2]=f[(d+100|0)+4>>2];f[(M+60|0)+8>>2]=f[(d+100|0)+8>>2];f[(M+60|0)+12>>2]=f[(d+100|0)+12>>2];f[(M+60|0)+16>>2]=f[(d+100|0)+16>>2];w=+p[(d+120|0)>>3];x=+p[(d+128|0)>>3];y=+p[(d+136|0)>>3];z=+p[(d+144|0)>>3];A=+p[(d+152|0)>>3];B=+p[(d+160|0)>>3];C=+p[(d+168|0)>>3];E=+p[(d+176|0)>>3];f[M>>2]=f[(d+184|0)>>2];f[M+4>>2]=f[(d+184|0)+4>>2];f[M+8>>2]=f[(d+184|0)+8>>2];f[M+12>>2]=f[(d+184|0)+12>>2];b[M+16>>0]=b[(d+184|0)+16>>0]|0;N3a(d,e)|0;F=e;I=M+24|0;J=F+36|0;do{f[F>>2]=f[I>>2];F=F+4|0;I=I+4|0}while((F|0)<(J|0));f[(e+36|0)>>2]=i;f[(e+40|0)>>2]=m;f[(e+44|0)>>2]=o;f[(e+48|0)>>2]=q;f[(e+52|0)>>2]=r;f[(e+56|0)>>2]=h;p[(e+64|0)>>3]=j;p[(e+72|0)>>3]=k;p[(e+80|0)>>3]=l;h=f[(e+88|0)>>2]|0;if(h|0){i=f[(e+92|0)>>2]|0;if((i|0)!=(h|0))f[(e+92|0)>>2]=i+(~(((i+-12-h|0)>>>0)/12|0)*12|0);Zpb(h);f[(e+96|0)>>2]=0;f[(e+92|0)>>2]=0;f[(e+88|0)>>2]=0}f[(e+88|0)>>2]=s;f[(e+92|0)>>2]=t;f[(e+96|0)>>2]=v;f[(e+100|0)>>2]=f[(M+60|0)>>2];f[(e+100|0)+4>>2]=f[(M+60|0)+4>>2];f[(e+100|0)+8>>2]=f[(M+60|0)+8>>2];f[(e+100|0)+12>>2]=f[(M+60|0)+12>>2];f[(e+100|0)+16>>2]=f[(M+60|0)+16>>2];p[(e+120|0)>>3]=w;p[(e+128|0)>>3]=x;p[(e+136|0)>>3]=y;p[(e+144|0)>>3]=z;p[(e+152|0)>>3]=A;p[(e+160|0)>>3]=B;p[(e+168|0)>>3]=C;f[M+96>>2]=a;f[M+104>>2]=c;f[M+112>>2]=d;f[M+120>>2]=e;f[M+136>>2]=K;n[M+272>>2]=E;f[M+888>>2]=L;f[M+992>>2]=F;f[M+1008>>2]=I;f[M+1016>>2]=J;f[M+1024>>2]=0;f[M+1028>>2]=0;u4a(M);G=f[M+1024>>2]|0;D=f[M+1028>>2]|0;H=+n[M+1028>>2];f[M+1024>>2]=0;f[M+1028>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function a4a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0.0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0.0,J=0.0,K=0.0,L=0,M=0,N=0,O=0,P=0;L=0;P=u;u=u+1296|0;d=1;h=(c-a|0)/208|0|0;if(d)switch(h|0){case 2:{h=~~+p[c+-24>>3]>>>0;d=~~+p[a+184>>3]>>>0;if(h>>>0>=d>>>0){if(h>>>0>d>>>0){c=1;u=P;return c|0}e=+p[c+-16>>3];g=+p[a+192>>3];if(!(e<g)){if(e>g){c=1;u=P;return c|0}if(!(B5a(c+-208|0,a)|0)){c=1;u=P;return c|0}}}M=P+24|0;N=a;O=M+36|0;do{f[M>>2]=f[N>>2];M=M+4|0;N=N+4|0}while((M|0)<(O|0));d=f[a+36>>2]|0;h=f[a+40>>2]|0;i=f[a+44>>2]|0;j=f[a+48>>2]|0;k=f[a+52>>2]|0;l=f[a+56>>2]|0;e=+p[a+64>>3];g=+p[a+72>>3];s=+p[a+80>>3];m=f[(a+88|0)>>2]|0;o=f[(a+92|0)>>2]|0;q=f[(a+96|0)>>2]|0;f[(a+96|0)>>2]=0;f[(a+92|0)>>2]=0;f[(a+88|0)>>2]=0;f[(P+232|0)>>2]=f[(a+100|0)>>2];f[(P+232|0)+4>>2]=f[(a+100|0)+4>>2];f[(P+232|0)+8>>2]=f[(a+100|0)+8>>2];f[(P+232|0)+12>>2]=f[(a+100|0)+12>>2];f[(P+232|0)+16>>2]=f[(a+100|0)+16>>2];A=+p[a+120>>3];B=+p[a+128>>3];C=+p[a+136>>3];E=+p[a+144>>3];F=+p[a+152>>3];I=+p[a+160>>3];J=+p[a+168>>3];K=+p[a+176>>3];f[P>>2]=f[(a+184|0)>>2];f[P+4>>2]=f[(a+184|0)+4>>2];f[P+8>>2]=f[(a+184|0)+8>>2];f[P+12>>2]=f[(a+184|0)+12>>2];b[P+16>>0]=b[(a+184|0)+16>>0]|0;N3a(a,c+-208|0)|0;M=c+-208|0;N=P+24|0;O=M+36|0;do{f[M>>2]=f[N>>2];M=M+4|0;N=N+4|0}while((M|0)<(O|0));f[c+-172>>2]=d;f[c+-168>>2]=h;f[c+-164>>2]=i;f[c+-160>>2]=j;f[c+-156>>2]=k;f[c+-152>>2]=l;p[c+-144>>3]=e;p[c+-136>>3]=g;p[c+-128>>3]=s;d=f[(c+-120|0)>>2]|0;if(!d)d=c+-112|0;else{h=f[(c+-116|0)>>2]|0;if((h|0)!=(d|0))f[(c+-116|0)>>2]=h+(~(((h+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);f[(c+-112|0)>>2]=0;f[(c+-116|0)>>2]=0;f[(c+-120|0)>>2]=0;d=c+-112|0}f[(c+-120|0)>>2]=m;f[(c+-116|0)>>2]=o;f[d>>2]=q;f[(c+-108|0)>>2]=f[(P+232|0)>>2];f[(c+-108|0)+4>>2]=f[(P+232|0)+4>>2];f[(c+-108|0)+8>>2]=f[(P+232|0)+8>>2];f[(c+-108|0)+12>>2]=f[(P+232|0)+12>>2];f[(c+-108|0)+16>>2]=f[(P+232|0)+16>>2];p[c+-88>>3]=A;p[c+-80>>3]=B;p[c+-72>>3]=C;p[c+-64>>3]=E;p[c+-56>>3]=F;p[c+-48>>3]=I;p[c+-40>>3]=J;p[c+-32>>3]=K;f[(c+-24|0)>>2]=f[P>>2];f[(c+-24|0)+4>>2]=f[P+4>>2];f[(c+-24|0)+8>>2]=f[P+8>>2];f[(c+-24|0)+12>>2]=f[P+12>>2];b[(c+-24|0)+16>>0]=b[P+16>>0]|0;c=1;u=P;return c|0}default:d=1}if(d)switch(h|0){case 3:{Z3a(a,a+208|0,c+-208|0)|0;c=1;u=P;return c|0}case 4:{_3a(a,a+208|0,a+416|0,c+-208|0)|0;c=1;u=P;return c|0}case 5:{$3a(a,a+208|0,a+416|0,a+624|0,c+-208|0)|0;c=1;u=P;return c|0}case 1:case 0:{c=1;u=P;return c|0}default:d=1}if(d)switch(h|0){default:{Z3a(a,a+208|0,a+416|0)|0;a:{d=1;if(d){d=0;if((a+624|0|0)==(c|0)){x=1;z=0}else d=1}if(d)if(1){t=(P+24|0)+36|0;v=(P+24|0)+48|0;w=(P+24|0)+64|0;l=(P+24|0)+100|0;m=(P+24|0)+120|0;o=(P+24|0)+144|0;q=(P+24|0)+168|0;r=(P+24|0)+184|0;k=a+624|0;i=0;j=a+416|0;while(1){d=~~+p[k+184>>3]>>>0;h=~~+p[j+184>>3]>>>0;if(d>>>0<h>>>0)L=23;else if(d>>>0>h>>>0)y=i;else{e=+p[k+192>>3];g=+p[j+192>>3];if(e<g)L=23;else if(e>g)y=i;else if(B5a(k,j)|0)L=23;else y=i}if((L|0)==23){L=0;M=P+24|0;N=k;O=M+36|0;do{f[M>>2]=f[N>>2];M=M+4|0;N=N+4|0}while((M|0)<(O|0));h=k+36|0;f[t>>2]=f[h>>2];f[t+4>>2]=f[h+4>>2];f[t+8>>2]=f[h+8>>2];f[t>>2]=f[h>>2];f[((P+24|0)+40|0)>>2]=f[k+40>>2];f[((P+24|0)+44|0)>>2]=f[k+44>>2];h=k+48|0;f[v>>2]=f[h>>2];f[v+4>>2]=f[h+4>>2];f[v+8>>2]=f[h+8>>2];f[v>>2]=f[h>>2];f[((P+24|0)+52|0)>>2]=f[k+52>>2];f[((P+24|0)+56|0)>>2]=f[k+56>>2];h=k+64|0;f[w>>2]=f[h>>2];f[w+4>>2]=f[h+4>>2];f[P+272>>2]=a;f[P+280>>2]=c;f[P+304>>2]=k;f[P+312>>2]=i;f[P+320>>2]=j;f[P+336>>2]=x;f[P+344>>2]=y;f[P+352>>2]=z;f[P+392>>2]=l;f[P+400>>2]=m;f[P+408>>2]=o;f[P+416>>2]=q;f[P+424>>2]=r;f[P+488>>2]=h;f[P+1128>>2]=t;f[P+1136>>2]=v;f[P+1144>>2]=w;f[P+1152>>2]=M;f[P+1168>>2]=N;f[P+1176>>2]=O;f[P+1224>>2]=0;f[P+1228>>2]=0;v4a(P);x=f[P+336>>2]|0;y=f[P+344>>2]|0;z=f[P+352>>2]|0;G=f[P+1224>>2]|0;D=f[P+1228>>2]|0;H=+n[P+1228>>2];f[P+1224>>2]=0;f[P+1228>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 2:break a}}d=k+208|0;if((d|0)==(c|0)){x=1;z=0;break}else{j=k;k=d;i=y}}}}c=z|x;u=P;return c|0}}return 0}function b4a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0.0,i=0,j=0.0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0,ga=0,ha=0,ia=0,ja=0.0,ka=0;ga=u;u=u+2144|0;j=+p[(c+216|0)>>3];e=~~+p[(a+216|0)>>3]>>>0;if(~~j>>>0>>>0<e>>>0){k=1;g=j}else if(~~j>>>0>>>0>e>>>0){k=0;g=j}else{g=+p[c+224>>3];h=+p[a+224>>3];if(g<h){k=1;g=j}else if(g>h){k=0;g=j}else{k=A5a(c,a)|0;g=+p[(c+216|0)>>3]}}i=~~+p[(d+216|0)>>3]>>>0;e=~~g>>>0;if(i>>>0<e>>>0)I=1;else if(i>>>0>e>>>0)I=0;else{g=+p[d+224>>3];h=+p[c+224>>3];if(g<h)I=1;else if(g>h)I=0;else I=A5a(d,c)|0}if(!k){if(!I){ia=0;u=ga;return ia|0}fa=ga+24|0;ha=c;ia=fa+36|0;do{f[fa>>2]=f[ha>>2];fa=fa+4|0;ha=ha+4|0}while((fa|0)<(ia|0));g=+p[(c+40|0)>>3];h=+p[(c+48|0)>>3];j=+p[(c+56|0)>>3];l=+p[(c+64|0)>>3];m=+p[(c+72|0)>>3];o=+p[(c+80|0)>>3];e=f[(c+88|0)>>2]|0;i=f[(c+92|0)>>2]|0;k=f[(c+96|0)>>2]|0;q=f[(c+100|0)>>2]|0;r=f[(c+104|0)>>2]|0;s=f[(c+108|0)>>2]|0;t=+p[(c+112|0)>>3];v=+p[(c+120|0)>>3];w=+p[(c+128|0)>>3];x=+p[(c+136|0)>>3];y=+p[(c+144|0)>>3];z=+p[(c+152|0)>>3];A=+p[(c+160|0)>>3];B=+p[(c+168|0)>>3];C=+p[(c+176|0)>>3];f[(ga+64|0)>>2]=f[(c+184|0)>>2];f[(ga+64|0)+4>>2]=f[(c+184|0)+4>>2];f[(ga+64|0)+8>>2]=f[(c+184|0)+8>>2];f[(ga+64|0)+12>>2]=f[(c+184|0)+12>>2];E=+p[(c+200|0)>>3];F=+p[(c+208|0)>>3];f[ga>>2]=f[(c+216|0)>>2];f[ga+4>>2]=f[(c+216|0)+4>>2];f[ga+8>>2]=f[(c+216|0)+8>>2];f[ga+12>>2]=f[(c+216|0)+12>>2];b[ga+16>>0]=b[(c+216|0)+16>>0]|0;fa=c;ha=d;ia=fa+36|0;do{f[fa>>2]=f[ha>>2];fa=fa+4|0;ha=ha+4|0}while((fa|0)<(ia|0));ja=+p[(d+40|0)>>3];p[(d+40|0)>>3]=g;p[(c+40|0)>>3]=ja;ja=+p[(d+48|0)>>3];p[(d+48|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=ja;ja=+p[(d+56|0)>>3];p[(d+56|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=ja;ja=+p[(d+64|0)>>3];p[(d+64|0)>>3]=+p[(c+64|0)>>3];p[(c+64|0)>>3]=ja;ja=+p[(d+72|0)>>3];p[(d+72|0)>>3]=+p[(c+72|0)>>3];p[(c+72|0)>>3]=ja;ja=+p[(d+80|0)>>3];p[(d+80|0)>>3]=+p[(c+80|0)>>3];p[(c+80|0)>>3]=ja;ka=f[(d+88|0)>>2]|0;f[(d+88|0)>>2]=e;f[(c+88|0)>>2]=ka;ka=f[(d+92|0)>>2]|0;f[(d+92|0)>>2]=f[(c+92|0)>>2];f[(c+92|0)>>2]=ka;ka=f[(d+96|0)>>2]|0;f[(d+96|0)>>2]=f[(c+96|0)>>2];f[(c+96|0)>>2]=ka;ka=f[(d+100|0)>>2]|0;f[(d+100|0)>>2]=f[(c+100|0)>>2];f[(c+100|0)>>2]=ka;f[(c+104|0)>>2]=f[(d+104|0)>>2];f[(c+108|0)>>2]=f[(d+108|0)>>2];ja=+p[(d+112|0)>>3];p[(d+112|0)>>3]=+p[(c+112|0)>>3];p[(c+112|0)>>3]=ja;ja=+p[(d+120|0)>>3];p[(d+120|0)>>3]=+p[(c+120|0)>>3];p[(c+120|0)>>3]=ja;ja=+p[(d+128|0)>>3];p[(d+128|0)>>3]=+p[(c+128|0)>>3];p[(c+128|0)>>3]=ja;ja=+p[(d+136|0)>>3];p[(d+136|0)>>3]=+p[(c+136|0)>>3];p[(c+136|0)>>3]=ja;ja=+p[(d+144|0)>>3];p[(d+144|0)>>3]=+p[(c+144|0)>>3];p[(c+144|0)>>3]=ja;ja=+p[(d+152|0)>>3];p[(d+152|0)>>3]=+p[(c+152|0)>>3];p[(c+152|0)>>3]=ja;ja=+p[(d+160|0)>>3];p[(d+160|0)>>3]=+p[(c+160|0)>>3];f[ga+96>>2]=a;f[ga+104>>2]=c;f[ga+112>>2]=d;f[ga+120>>2]=J;n[ga+160>>2]=ja;n[ga+1152>>2]=g;n[ga+1184>>2]=h;n[ga+1224>>2]=j;n[ga+1248>>2]=l;n[ga+1280>>2]=m;n[ga+1320>>2]=o;f[ga+1368>>2]=e;f[ga+1408>>2]=i;f[ga+1448>>2]=k;f[ga+1504>>2]=q;f[ga+1536>>2]=r;f[ga+1576>>2]=s;n[ga+1592>>2]=t;n[ga+1680>>2]=v;n[ga+1768>>2]=w;n[ga+1784>>2]=x;n[ga+1792>>2]=y;n[ga+1800>>2]=z;n[ga+1808>>2]=A;n[ga+1816>>2]=B;n[ga+1824>>2]=C;n[ga+1832>>2]=E;n[ga+1840>>2]=F;f[ga+1968>>2]=fa;f[ga+1984>>2]=ha;f[ga+1992>>2]=ia;f[ga+2016>>2]=0;f[ga+2020>>2]=0;y4a(ga);J=f[ga+120>>2]|0;fa=f[ga+1968>>2]|0;ha=f[ga+1984>>2]|0;ia=f[ga+1992>>2]|0;G=f[ga+2016>>2]|0;D=f[ga+2020>>2]|0;H=+n[ga+2020>>2];f[ga+2016>>2]=0;f[ga+2020>>2]=0;if((G|0)==6)return D|0}f[ga+96>>2]=a;f[ga+104>>2]=c;f[ga+112>>2]=d;f[ga+120>>2]=J;f[ga+136>>2]=I;n[ga+952>>2]=K;n[ga+960>>2]=L;n[ga+968>>2]=M;n[ga+976>>2]=N;n[ga+984>>2]=O;n[ga+992>>2]=P;f[ga+1e3>>2]=Q;f[ga+1008>>2]=R;f[ga+1016>>2]=S;f[ga+1024>>2]=T;f[ga+1032>>2]=U;f[ga+1040>>2]=V;n[ga+1048>>2]=W;n[ga+1056>>2]=X;n[ga+1064>>2]=Y;n[ga+1072>>2]=Z;n[ga+1080>>2]=_;n[ga+1088>>2]=$;n[ga+1096>>2]=aa;n[ga+1104>>2]=ba;n[ga+1112>>2]=ca;n[ga+1120>>2]=da;n[ga+1128>>2]=ea;f[ga+1968>>2]=fa;f[ga+1984>>2]=ha;f[ga+1992>>2]=ia;f[ga+2008>>2]=0;f[ga+2012>>2]=0;x4a(ga);J=f[ga+120>>2]|0;K=+n[ga+952>>2];L=+n[ga+960>>2];M=+n[ga+968>>2];N=+n[ga+976>>2];O=+n[ga+984>>2];P=+n[ga+992>>2];Q=f[ga+1e3>>2]|0;R=f[ga+1008>>2]|0;S=f[ga+1016>>2]|0;T=f[ga+1024>>2]|0;U=f[ga+1032>>2]|0;V=f[ga+1040>>2]|0;W=+n[ga+1048>>2];X=+n[ga+1056>>2];Y=+n[ga+1064>>2];Z=+n[ga+1072>>2];_=+n[ga+1080>>2];$=+n[ga+1088>>2];aa=+n[ga+1096>>2];ba=+n[ga+1104>>2];ca=+n[ga+1112>>2];da=+n[ga+1120>>2];ea=+n[ga+1128>>2];fa=f[ga+1968>>2]|0;ha=f[ga+1984>>2]|0;ia=f[ga+1992>>2]|0;G=f[ga+2008>>2]|0;D=f[ga+2012>>2]|0;H=+n[ga+2012>>2];f[ga+2008>>2]=0;f[ga+2012>>2]=0;if((G|0)==6)return D|0;f[ga+96>>2]=a;f[ga+104>>2]=c;f[ga+112>>2]=d;f[ga+120>>2]=J;n[ga+952>>2]=K;n[ga+960>>2]=L;n[ga+968>>2]=M;n[ga+976>>2]=N;n[ga+984>>2]=O;n[ga+992>>2]=P;f[ga+1e3>>2]=Q;f[ga+1008>>2]=R;f[ga+1016>>2]=S;f[ga+1024>>2]=T;f[ga+1032>>2]=U;f[ga+1040>>2]=V;n[ga+1048>>2]=W;n[ga+1056>>2]=X;n[ga+1064>>2]=Y;n[ga+1072>>2]=Z;n[ga+1080>>2]=_;n[ga+1088>>2]=$;n[ga+1096>>2]=aa;n[ga+1104>>2]=ba;n[ga+1112>>2]=ca;n[ga+1120>>2]=da;n[ga+1128>>2]=ea;f[ga+1968>>2]=fa;f[ga+1984>>2]=ha;f[ga+1992>>2]=ia;f[ga+2e3>>2]=0;f[ga+2004>>2]=0;w4a(ga);G=f[ga+2e3>>2]|0;D=f[ga+2004>>2]|0;H=+n[ga+2004>>2];f[ga+2e3>>2]=0;f[ga+2004>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function c4a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0.0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;y=f[a+320>>2]|0;w=f[a+2016>>2]|0;d=f[a+2336>>2]|0;t=f[a+2344>>2]|0;k=f[a+2352>>2]|0;r=f[a+3440>>2]|0;z=f[a+5296>>2]|0;B=f[a+5312>>2]|0;C=f[a+5320>>2]|0;A=f[a+5400>>2]|0;a:do{m=1;if(m){m=0;if(!(b[y+8>>0]|0))if(((t|0)/120|0)>>>0>1&(b[y+20>>0]|0)!=0){i=1;l=+p[d+96>>3];while(1){D=l;l=+p[d+(i*120|0)+96>>3];if(!(!(D<l)|!(l>=1.0)))break;i=i+1|0;if(i>>>0>=((t|0)/120|0)>>>0){i=r;break a}}if(i>>>0>((t|0)/120|0)>>>0){R3a(y+144|0,i-((t|0)/120|0)|0);i=f[(y+148|0)>>2]|0;break}if(i>>>0<((t|0)/120|0)>>>0){i=d+(i*120|0)|0;if((i|0)==(k|0))i=r;else{f[(y+148|0)>>2]=k+(~(((k+-120-i|0)>>>0)/120|0)*120|0)|0;i=k+(~(((k+-120-i|0)>>>0)/120|0)*120|0)|0}}else i=r}else i=r;else m=1}if(m)if(1){do{i=1;if(i){i=0;if(!t){o=d;q=r}else i=1}if(i)if(1){i=0;while(1){if(i|0?+p[d+(i*120|0)+96>>3]<1.0:0)s=d;else{if(!(N4a(y,d+(i*120|0)|0)|0))break;s=f[(y+144|0)>>2]|0}b[d+(i*120|0)+112>>0]=1;d=i+1|0;if(d>>>0<((t|0)/120|0)>>>0){i=d;d=s}else{A=280;break}}if((A|0)==280){o=s;q=f[(y+148|0)>>2]|0;break}d=i+1|0;b:do if(d>>>0<((t|0)/120|0)>>>0){k=d;while(1){d=f[(y+144|0)>>2]|0;D=+p[d+(k*120|0)+96>>3];if(!((D>=1.0?!(+p[d+(i*120|0)+96>>3]<D):1)|(b[(y+20|0)>>0]|0)==0))break;s=(N4a(y,d+(k*120|0)|0)|0)&1;b[d+(k*120|0)+112>>0]=s;d=k+1|0;if(d>>>0<((t|0)/120|0)>>>0){i=k;k=d}else break b}i=f[(y+148|0)>>2]|0;if(k>>>0>((i-d|0)/120|0)>>>0){R3a(y+144|0,k-((i-d|0)/120|0)|0);break}if(k>>>0<((i-d|0)/120|0)>>>0){d=d+(k*120|0)|0;if((d|0)!=(i|0))f[(y+148|0)>>2]=i+(~(((i+-120-d|0)>>>0)/120|0)*120|0)}}while(0);i=f[(y+144|0)>>2]|0;k=f[(y+148|0)>>2]|0;c:do if((i|0)==(k|0)){v=i;A=294}else{d=i;do{if(b[d+112>>0]|0){v=d;A=294;break c}d=d+120|0}while((d|0)!=(k|0));g=k;u=i;c=k}while(0);if((A|0)==294){d=v;if((v|0)==(k|0)){g=d;u=i;c=k}else{c=d;g=d;d:while(1){do{d=c;c=d+120|0;if((d+120|0|0)==(k|0))break d}while((b[d+232>>0]|0)!=0);i=g;z=g;B=d+120|0;C=z+36|0;do{f[z>>2]=f[B>>2];z=z+4|0;B=B+4|0}while((z|0)<(C|0));D=+p[(d+160|0)>>3];p[(d+160|0)>>3]=+p[(i+40|0)>>3];p[(i+40|0)>>3]=D;D=+p[(d+168|0)>>3];p[(d+168|0)>>3]=+p[(i+48|0)>>3];p[(i+48|0)>>3]=D;D=+p[(d+176|0)>>3];p[(d+176|0)>>3]=+p[(i+56|0)>>3];p[(i+56|0)>>3]=D;f[(i+64|0)>>2]=f[(d+184|0)>>2];f[(i+64|0)+4>>2]=f[(d+184|0)+4>>2];f[(i+64|0)+8>>2]=f[(d+184|0)+8>>2];f[(i+64|0)+12>>2]=f[(d+184|0)+12>>2];D=+p[(d+200|0)>>3];p[(d+200|0)>>3]=+p[(i+80|0)>>3];p[(i+80|0)>>3]=D;D=+p[(d+208|0)>>3];p[(d+208|0)>>3]=+p[(i+88|0)>>3];p[(i+88|0)>>3]=D;f[(i+96|0)>>2]=f[(d+216|0)>>2];f[(i+96|0)+4>>2]=f[(d+216|0)+4>>2];f[(i+96|0)+8>>2]=f[(d+216|0)+8>>2];f[(i+96|0)+12>>2]=f[(d+216|0)+12>>2];b[(i+96|0)+16>>0]=b[(d+216|0)+16>>0]|0;g=i+120|0}u=f[(y+144|0)>>2]|0;c=f[(y+148|0)>>2]|0}}d=u+(((g-u|0)/120|0)*120|0)|0;if((c|0)==(g|0)){i=c;break a}g=d+(((c-g|0)/120|0)*120|0)|0;if((g|0)!=(c|0)){do{z=d;B=g;C=z+36|0;do{f[z>>2]=f[B>>2];z=z+4|0;B=B+4|0}while((z|0)<(C|0));u=g+40|0;D=+p[u>>3];v=d+40|0;p[u>>3]=+p[v>>3];p[v>>3]=D;v=g+48|0;D=+p[v>>3];u=d+48|0;p[v>>3]=+p[u>>3];p[u>>3]=D;u=g+56|0;D=+p[u>>3];v=d+56|0;p[u>>3]=+p[v>>3];p[v>>3]=D;v=d+64|0;u=g+64|0;f[v>>2]=f[u>>2];f[v+4>>2]=f[u+4>>2];f[v+8>>2]=f[u+8>>2];f[v+12>>2]=f[u+12>>2];v=g+80|0;D=+p[v>>3];u=d+80|0;p[v>>3]=+p[u>>3];p[u>>3]=D;u=g+88|0;D=+p[u>>3];v=d+88|0;p[u>>3]=+p[v>>3];p[v>>3]=D;v=d+96|0;u=g+96|0;f[v>>2]=f[u>>2];f[v+4>>2]=f[u+4>>2];f[v+8>>2]=f[u+8>>2];f[v+12>>2]=f[u+12>>2];b[v+16>>0]=b[u+16>>0]|0;g=g+120|0;d=d+120|0}while((g|0)!=(c|0));c=f[(y+148|0)>>2]|0}if((c|0)==(d|0)){i=c;break a}i=c+(~(((c+-120-d|0)>>>0)/120|0)*120|0)|0;f[(y+148|0)>>2]=i;break a}}while(0);if((q|0)==(o|0))i=q;else{i=q+(~(((q+-120-o|0)>>>0)/120|0)*120|0)|0;f[(y+148|0)>>2]=i}}}while(0);c=f[(y+144|0)>>2]|0;if((c|0)!=(i|0))do{mwa(a+296|0,w,c);d=f[(a+296|0)>>2]|0;g=f[((a+296|0)+4|0)>>2]|0;if(g|0)Ppb(g);u=f[d+4>>2]|0;v=Ng[f[(f[u>>2]|0)+16>>2]&511](u)|0;f[c+16>>2]=v;nh[f[(f[u>>2]|0)+12>>2]&1023](a+144|0,u);u=f[(a+144|0)+4>>2]|0;v=c+8|0;f[v>>2]=f[(a+144|0)>>2];f[v+4>>2]=u;f[c+32>>2]=((j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16)&16777215)>>>19&15;p[c+64>>3]=+p[c+96>>3];p[c+72>>3]=+p[c+104>>3];c=c+120|0}while((c|0)!=(i|0));if(b[y+22>>0]|0){f[(a+272|0)>>2]=0;f[(a+272|0)+4>>2]=0;f[(a+272|0)+8>>2]=0;f[(a+272|0)+12>>2]=0;n[(a+272|0)+16>>2]=1.0;J3a(a+120|0,a+272|0);c=f[(y+144|0)>>2]|0;i=f[(y+148|0)>>2]|0;f[(a+144|0)>>2]=w;f[(a+144|0)+4>>2]=a+120|0;e:do if((c|0)==(i|0)){x=c;A=316}else{do{if(S3a(a+144|0,c)|0){x=c;A=316;break e}c=c+120|0}while((c|0)!=(i|0));e=i}while(0);f:do if((A|0)==316){c=x;if((x|0)==(i|0))e=c;else{d=c;e=c;while(1){c=d;do{d=c;c=d+120|0;if((d+120|0|0)==(i|0))break f}while(S3a(a+144|0,d+120|0)|0);g=e;z=e;B=d+120|0;C=z+36|0;do{f[z>>2]=f[B>>2];z=z+4|0;B=B+4|0}while((z|0)<(C|0));D=+p[(d+160|0)>>3];p[(d+160|0)>>3]=+p[(g+40|0)>>3];p[(g+40|0)>>3]=D;D=+p[(d+168|0)>>3];p[(d+168|0)>>3]=+p[(g+48|0)>>3];p[(g+48|0)>>3]=D;D=+p[(d+176|0)>>3];p[(d+176|0)>>3]=+p[(g+56|0)>>3];p[(g+56|0)>>3]=D;f[(g+64|0)>>2]=f[(d+184|0)>>2];f[(g+64|0)+4>>2]=f[(d+184|0)+4>>2];f[(g+64|0)+8>>2]=f[(d+184|0)+8>>2];f[(g+64|0)+12>>2]=f[(d+184|0)+12>>2];D=+p[(d+200|0)>>3];p[(d+200|0)>>3]=+p[(g+80|0)>>3];p[(g+80|0)>>3]=D;D=+p[(d+208|0)>>3];p[(d+208|0)>>3]=+p[(g+88|0)>>3];p[(g+88|0)>>3]=D;f[(g+96|0)>>2]=f[(d+216|0)>>2];f[(g+96|0)+4>>2]=f[(d+216|0)+4>>2];f[(g+96|0)+8>>2]=f[(d+216|0)+8>>2];f[(g+96|0)+12>>2]=f[(d+216|0)+12>>2];b[(g+96|0)+16>>0]=b[(d+216|0)+16>>0]|0;d=c;e=g+120|0}}}while(0);c=f[(y+148|0)>>2]|0;d=f[(y+144|0)>>2]|0;d=d+(((e-d|0)/120|0)*120|0)|0;if((c|0)!=(e|0)){e=d+(((c-e|0)/120|0)*120|0)|0;if((e|0)!=(c|0)){do{z=d;B=e;C=z+36|0;do{f[z>>2]=f[B>>2];z=z+4|0;B=B+4|0}while((z|0)<(C|0));w=e+40|0;D=+p[w>>3];x=d+40|0;p[w>>3]=+p[x>>3];p[x>>3]=D;x=e+48|0;D=+p[x>>3];w=d+48|0;p[x>>3]=+p[w>>3];p[w>>3]=D;w=e+56|0;D=+p[w>>3];x=d+56|0;p[w>>3]=+p[x>>3];p[x>>3]=D;x=d+64|0;w=e+64|0;f[x>>2]=f[w>>2];f[x+4>>2]=f[w+4>>2];f[x+8>>2]=f[w+8>>2];f[x+12>>2]=f[w+12>>2];x=e+80|0;D=+p[x>>3];w=d+80|0;p[x>>3]=+p[w>>3];p[w>>3]=D;w=e+88|0;D=+p[w>>3];x=d+88|0;p[w>>3]=+p[x>>3];p[x>>3]=D;x=d+96|0;w=e+96|0;f[x>>2]=f[w>>2];f[x+4>>2]=f[w+4>>2];f[x+8>>2]=f[w+8>>2];f[x+12>>2]=f[w+12>>2];b[x+16>>0]=b[w+16>>0]|0;e=e+120|0;d=d+120|0}while((e|0)!=(c|0));c=f[(y+148|0)>>2]|0}if((c|0)!=(d|0))f[(y+148|0)>>2]=c+(~(((c+-120-d|0)>>>0)/120|0)*120|0)}c=f[(a+120|0)+8>>2]|0;if(c|0)do{y=c;c=f[c>>2]|0;Zpb(y)}while((c|0)!=0);c=f[(a+120|0)>>2]|0;f[(a+120|0)>>2]=0;if(c|0)Zpb(c);c=f[(a+272|0)+8>>2]|0;if(c|0)do{y=c;c=f[c>>2]|0;Zpb(y)}while((c|0)!=0);c=f[(a+272|0)>>2]|0;f[(a+272|0)>>2]=0;if(c|0)Zpb(c)}f[a+5296>>2]=z;f[a+5312>>2]=B;f[a+5320>>2]=C;f[a+5400>>2]=A}function d4a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0.0,l=0.0,m=0.0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0.0;E=f[a+320>>2]|0;s=f[a+3416>>2]|0;B=f[a+4728>>2]|0;u=f[a+4912>>2]|0;x=f[a+4920>>2]|0;i=f[a+4928>>2]|0;F=f[a+5400>>2]|0;a:do{r=1;if(r){r=0;if(!(b[(E+8|0)>>0]|0))if(((x|0)/208|0)>>>0>1&(b[E+20>>0]|0)!=0){d=1;k=+p[u+184>>3];while(1){l=k;k=+p[u+(d*208|0)+184>>3];if(!(!(l<k)|!(k>=1.0)))break;d=d+1|0;if(d>>>0>=((x|0)/208|0)>>>0){d=s;break a}}if(d>>>0>((x|0)/208|0)>>>0){O3a(E+132|0,d-((x|0)/208|0)|0);d=f[(E+136|0)>>2]|0;break}if(d>>>0<((x|0)/208|0)>>>0){d=u+(d*208|0)|0;if((d|0)==(i|0))d=s;else{o=i;while(1){i=o+-208|0;f[(E+136|0)>>2]=i;q=f[o+-120>>2]|0;if(q){i=o+-116|0;o=f[i>>2]|0;if((o|0)!=(q|0))f[i>>2]=o+(~(((o+-12-q|0)>>>0)/12|0)*12|0);Zpb(q);i=f[(E+136|0)>>2]|0}if((i|0)==(d|0))break;else o=i}}}else d=s}else d=s;else r=1}if(r)if(1){do{d=1;if(d){d=0;if(!x){w=u;t=s}else d=1}if(d)if(1){i=0;d=u;while(1){if(i|0?+p[d+(i*208|0)+184>>3]<1.0:0)v=d;else{if(!(I4a(E,d+(i*208|0)|0)|0))break;v=f[(E+132|0)>>2]|0}b[d+(i*208|0)+200>>0]=1;d=i+1|0;if(d>>>0<((x|0)/208|0)>>>0){i=d;d=v}else{F=149;break}}if((F|0)==149){w=v;t=f[(E+136|0)>>2]|0;break}d=i+1|0;b:do if(d>>>0<((x|0)/208|0)>>>0){q=d;while(1){o=f[(E+132|0)>>2]|0;l=+p[o+(q*208|0)+184>>3];if(!((l>=1.0?!(+p[o+(i*208|0)+184>>3]<l):1)|(b[(E+20|0)>>0]|0)==0))break;d=(I4a(E,o+(q*208|0)|0)|0)&1;b[o+(q*208|0)+200>>0]=d;d=q+1|0;if(d>>>0<((x|0)/208|0)>>>0){i=q;q=d}else break b}d=f[(E+136|0)>>2]|0;if(q>>>0>((d-o|0)/208|0)>>>0){O3a(E+132|0,q-((d-o|0)/208|0)|0);break}if(q>>>0<((d-o|0)/208|0)>>>0){q=o+(q*208|0)|0;if((q|0)!=(d|0)){i=d;while(1){d=i+-208|0;f[(E+136|0)>>2]=d;o=f[i+-120>>2]|0;if(o){d=i+-116|0;i=f[d>>2]|0;if((i|0)!=(o|0))f[d>>2]=i+(~(((i+-12-o|0)>>>0)/12|0)*12|0);Zpb(o);d=f[(E+136|0)>>2]|0}if((d|0)==(q|0))break;else i=d}}}}while(0);i=f[(E+132|0)>>2]|0;o=f[(E+136|0)>>2]|0;c:do if((i|0)==(o|0)){z=i;F=171}else{d=i;do{if(b[d+200>>0]|0){z=d;F=171;break c}d=d+208|0}while((d|0)!=(o|0));g=o;c=o;y=i}while(0);if((F|0)==171){g=z;if((z|0)==(o|0)){c=o;y=i}else{c=g;d:while(1){do{d=c;c=d+208|0;if((d+208|0|0)==(o|0))break d}while((b[d+408>>0]|0)!=0);z=g;N3a(z,d+208|0)|0;g=z+208|0}c=f[(E+136|0)>>2]|0;y=f[(E+132|0)>>2]|0}}d=y+(((g-y|0)/208|0)*208|0)|0;if((c|0)==(g|0)){d=c;break a}g=d+(((c-g|0)/208|0)*208|0)|0;if((g|0)!=(c|0)){do{N3a(d,g)|0;g=g+208|0;d=d+208|0}while((g|0)!=(c|0));c=f[(E+136|0)>>2]|0}if((c|0)==(d|0)){d=c;break a}while(1){g=c+-208|0;f[(E+136|0)>>2]=g;i=f[c+-120>>2]|0;if(!i)c=g;else{c=c+-116|0;g=f[c>>2]|0;if((g|0)!=(i|0))f[c>>2]=g+(~(((g+-12-i|0)>>>0)/12|0)*12|0);Zpb(i);c=f[(E+136|0)>>2]|0}if((c|0)==(d|0))break a}}}while(0);if((t|0)==(w|0))d=t;else{d=t;while(1){c=d+-208|0;f[(E+136|0)>>2]=c;g=f[d+-120>>2]|0;if(g){c=d+-116|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~(((d+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);c=f[(E+136|0)>>2]|0}if((c|0)==(w|0)){d=w;break}else d=c}}}}while(0);c=f[(E+132|0)>>2]|0;if((c|0)!=(d|0))do{mwa(a+296|0,B,c);u=f[(a+296|0)>>2]|0;g=f[((a+296|0)+4|0)>>2]|0;if(g|0)Ppb(g);o=f[(u+4|0)>>2]|0;i=Ng[f[(f[o>>2]|0)+16>>2]&511](o)|0;f[c+16>>2]=i;nh[f[(f[o>>2]|0)+12>>2]&1023](a+144|0,o);o=f[(a+144|0)+4>>2]|0;i=c+8|0;f[i>>2]=f[(a+144|0)>>2];f[i+4>>2]=o;f[c+32>>2]=((j[(u+200|0)>>1]|h[(u+200|0)+2>>0]<<16)&16777215)>>>19&15;p[c+104>>3]=+p[c+184>>3];p[c+112>>3]=+p[c+192>>3];i=c+36|0;f[i>>2]=1065353216;o=c+40|0;f[o>>2]=1065353216;q=c+44|0;f[q>>2]=1065353216;r=c+48|0;f[r>>2]=0;s=c+52|0;f[s>>2]=0;t=c+56|0;f[t>>2]=0;g=f[c+24>>2]|0;if((g|0)>-1){f[(a+272|0)>>2]=g;if(b[(E+25|0)>>0]|0){fka(a+144|0,u,1,a+272|0,1);g=f[(a+144|0)>>2]|0;f[(a+144|0)>>2]=f[i>>2];f[i>>2]=g;g=f[((a+144|0)+4|0)>>2]|0;f[((a+144|0)+4|0)>>2]=f[o>>2];f[o>>2]=g;g=f[((a+144|0)+8|0)>>2]|0;f[((a+144|0)+8|0)>>2]=f[q>>2];f[q>>2]=g;g=f[((a+144|0)+12|0)>>2]|0;f[((a+144|0)+12|0)>>2]=f[r>>2];f[r>>2]=g;g=f[((a+144|0)+16|0)>>2]|0;f[((a+144|0)+16|0)>>2]=f[s>>2];f[s>>2]=g;f[t>>2]=f[((a+144|0)+20|0)>>2];g=f[(a+272|0)>>2]|0}s=c+88|0;dka(f[(f[(u+4|0)>>2]|0)+44>>2]|0,g,s);D4a(a+144|0,E,f[u+96>>2]|0,u);q=f[s>>2]|0;r=f[c+92>>2]|0;if((q|0)!=(r|0)){g=q;do{I=+n[g>>2];y=g+4|0;H=+n[y>>2];z=g+8|0;G=+n[z>>2];k=I*+n[((a+144|0)+4|0)>>2]+H*+n[((a+144|0)+20|0)>>2]+G*+n[((a+144|0)+36|0)>>2]+ +n[((a+144|0)+52|0)>>2];l=I*+n[((a+144|0)+8|0)>>2]+H*+n[((a+144|0)+24|0)>>2]+G*+n[((a+144|0)+40|0)>>2]+ +n[((a+144|0)+56|0)>>2];n[g>>2]=+n[(a+144|0)>>2]*I+ +n[((a+144|0)+16|0)>>2]*H+ +n[((a+144|0)+32|0)>>2]*G+ +n[((a+144|0)+48|0)>>2];n[y>>2]=k;n[z>>2]=l;g=g+12|0}while((g|0)!=(r|0))}e:do if(!(r-q|0)){k=C;g=c+100|0}else{g=c+100|0;i=0;k=C;l=C;o=q;while(1){p[(a+144|0)>>3]=+n[o+(i*12|0)>>2];p[((a+144|0)+8|0)>>3]=+n[o+(i*12|0)+4>>2];p[((a+144|0)+16|0)>>3]=+n[o+(i*12|0)+8>>2];o=f[(u+108|0)>>2]|0;if(!o)F=203;else if(p5a(E,o,a+144|0)|0)F=203;else{A=k;m=l}if((F|0)==203){F=0;z5a(a+120|0,E,a+144|0,0);do if(b[(a+120|0)>>0]|0){m=+p[((a+120|0)+16|0)>>3];if(!(m<k))break;l=+p[((a+120|0)+8|0)>>3];f[g>>2]=i;k=m}while(0);A=k;m=l}i=i+1|0;if(i>>>0>=((r-q|0|0)/12|0)>>>0){k=m;break e}k=A;l=m;o=f[s>>2]|0}}while(0);i=f[g>>2]|0;if((i|0)>-1){z=f[s>>2]|0;p[(a+144|0)>>3]=+n[z+(i*12|0)>>2];p[((a+144|0)+8|0)>>3]=+n[z+(i*12|0)+4>>2];p[((a+144|0)+16|0)>>3]=+n[z+(i*12|0)+8>>2];nXa(a+120|0,f[(E+56|0)>>2]|0,a+144|0);b[(a+112|0)>>0]=0;p[(a+40|0)>>3]=+p[(a+144|0)>>3];p[(a+48|0)>>3]=+p[((a+144|0)+8|0)>>3];p[(a+56|0)>>3]=+p[((a+144|0)+16|0)>>3];H=+p[(a+120|0)>>3];p[(a+80|0)>>3]=H;I=+p[((a+120|0)+8|0)>>3];p[(a+88|0)>>3]=I;z=f[(E+56|0)>>2]|0;H=H-+p[z+24>>3];I=I-+p[z+32>>3];p[(a+96|0)>>3]=H*H+I*I;p[(a+104|0)>>3]=k;do if(b[(E+8|0)>>0]|0){if(!(N4a(E,a)|0))break;f[g>>2]=-1}while(0)}}c=c+208|0}while((c|0)!=(d|0));if(b[E+22>>0]|0){f[(a+272|0)>>2]=0;f[(a+272|0)+4>>2]=0;f[(a+272|0)+8>>2]=0;f[(a+272|0)+12>>2]=0;n[(a+272|0)+16>>2]=1.0;J3a(a+252|0,a+272|0);c=f[(E+132|0)>>2]|0;g=f[(E+136|0)>>2]|0;f[(a+144|0)>>2]=B;f[(a+144|0)+4>>2]=a+252|0;f:do if((c|0)==(g|0)){D=c;F=219}else{do{if(P3a(a+144|0,c)|0){D=c;F=219;break f}c=c+208|0}while((c|0)!=(g|0));e=g}while(0);g:do if((F|0)==219){d=D;if((D|0)==(g|0))e=d;else{c=d;e=d;while(1){do{d=c+208|0;c=d;if((d|0)==(g|0))break g}while(P3a(a+144|0,d)|0);D=e;N3a(D,d)|0;e=D+208|0}}}while(0);c=f[(E+136|0)>>2]|0;d=f[(E+132|0)>>2]|0;d=d+(((e-d|0)/208|0)*208|0)|0;if((c|0)!=(e|0)){e=d+(((c-e|0)/208|0)*208|0)|0;if((e|0)!=(c|0)){do{N3a(d,e)|0;e=e+208|0;d=d+208|0}while((e|0)!=(c|0));c=f[(E+136|0)>>2]|0}if((c|0)!=(d|0))do{e=c+-208|0;f[(E+136|0)>>2]=e;g=f[c+-120>>2]|0;if(!g)c=e;else{c=c+-116|0;e=f[c>>2]|0;if((e|0)!=(g|0))f[c>>2]=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);c=f[(E+136|0)>>2]|0}}while((c|0)!=(d|0))}c=f[(a+252|0)+8>>2]|0;if(c|0)do{E=c;c=f[c>>2]|0;Zpb(E)}while((c|0)!=0);c=f[(a+252|0)>>2]|0;f[(a+252|0)>>2]=0;if(c|0)Zpb(c);c=f[(a+272|0)+8>>2]|0;if(c|0)do{E=c;c=f[c>>2]|0;Zpb(E)}while((c|0)!=0);c=f[(a+272|0)>>2]|0;f[(a+272|0)>>2]=0;if(c|0)Zpb(c)}f[a+5400>>2]=F}function e4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0;t=f[a+320>>2]|0;l=f[a+816>>2]|0;u=f[a+1360>>2]|0;c=f[a+3392>>2]|0;v=f[a+5296>>2]|0;y=f[a+5312>>2]|0;z=f[a+5320>>2]|0;w=f[a+5400>>2]|0;x=f[a+5424>>2]|0;if(x){x=0;if(1){k=f[(t+48|0)>>2]|0;l=b[t+32>>0]|0;d=f[(t+156|0)>>2]|0;m=f[(t+160|0)>>2]|0;a:do if((d|0)==(m|0)){i=d;w=23}else{do{if(!(qxa(k,d,l)|0)){i=d;w=23;break a}d=d+240|0}while((d|0)!=(m|0));h=m}while(0);b:do if((w|0)==23){e=i;d=1;if(d){d=0;if((i|0)==(m|0))h=e;else d=1}if(d)if(1){d=e;h=e;while(1){do{e=d;d=e+240|0;if((e+240|0|0)==(m|0))break b}while(!(qxa(k,e+240|0,l)|0));i=h;v=h;y=e+240|0;z=v+36|0;do{f[v>>2]=f[y>>2];v=v+4|0;y=y+4|0}while((v|0)<(z|0));j=+p[(e+280|0)>>3];p[(e+280|0)>>3]=+p[(i+40|0)>>3];p[(i+40|0)>>3]=j;j=+p[(e+288|0)>>3];p[(e+288|0)>>3]=+p[(i+48|0)>>3];p[(i+48|0)>>3]=j;j=+p[(e+296|0)>>3];p[(e+296|0)>>3]=+p[(i+56|0)>>3];p[(i+56|0)>>3]=j;j=+p[(e+304|0)>>3];p[(e+304|0)>>3]=+p[(i+64|0)>>3];p[(i+64|0)>>3]=j;j=+p[(e+312|0)>>3];p[(e+312|0)>>3]=+p[(i+72|0)>>3];p[(i+72|0)>>3]=j;j=+p[(e+320|0)>>3];p[(e+320|0)>>3]=+p[(i+80|0)>>3];p[(i+80|0)>>3]=j;h=f[(e+328|0)>>2]|0;f[(e+328|0)>>2]=f[(i+88|0)>>2];f[(i+88|0)>>2]=h;h=f[(e+332|0)>>2]|0;f[(e+332|0)>>2]=f[(i+92|0)>>2];f[(i+92|0)>>2]=h;h=f[(e+336|0)>>2]|0;f[(e+336|0)>>2]=f[(i+96|0)>>2];f[(i+96|0)>>2]=h;h=f[(e+340|0)>>2]|0;f[(e+340|0)>>2]=f[(i+100|0)>>2];f[(i+100|0)>>2]=h;h=f[(e+344|0)>>2]|0;f[(e+344|0)>>2]=f[(i+104|0)>>2];f[(i+104|0)>>2]=h;h=f[(e+348|0)>>2]|0;f[(e+348|0)>>2]=f[(i+108|0)>>2];f[(i+108|0)>>2]=h;j=+p[(e+352|0)>>3];p[(e+352|0)>>3]=+p[(i+112|0)>>3];p[(i+112|0)>>3]=j;j=+p[(e+360|0)>>3];p[(e+360|0)>>3]=+p[(i+120|0)>>3];p[(i+120|0)>>3]=j;j=+p[(e+368|0)>>3];p[(e+368|0)>>3]=+p[(i+128|0)>>3];p[(i+128|0)>>3]=j;j=+p[(e+376|0)>>3];p[(e+376|0)>>3]=+p[(i+136|0)>>3];p[(i+136|0)>>3]=j;j=+p[(e+384|0)>>3];p[(e+384|0)>>3]=+p[(i+144|0)>>3];p[(i+144|0)>>3]=j;j=+p[(e+392|0)>>3];p[(e+392|0)>>3]=+p[(i+152|0)>>3];p[(i+152|0)>>3]=j;j=+p[(e+400|0)>>3];p[(e+400|0)>>3]=+p[(i+160|0)>>3];p[(i+160|0)>>3]=j;j=+p[(e+408|0)>>3];p[(e+408|0)>>3]=+p[(i+168|0)>>3];p[(i+168|0)>>3]=j;j=+p[(e+416|0)>>3];p[(e+416|0)>>3]=+p[(i+176|0)>>3];p[(i+176|0)>>3]=j;f[(i+184|0)>>2]=f[(e+424|0)>>2];f[(i+184|0)+4>>2]=f[(e+424|0)+4>>2];f[(i+184|0)+8>>2]=f[(e+424|0)+8>>2];f[(i+184|0)+12>>2]=f[(e+424|0)+12>>2];j=+p[(e+440|0)>>3];p[(e+440|0)>>3]=+p[(i+200|0)>>3];p[(i+200|0)>>3]=j;j=+p[(e+448|0)>>3];p[(e+448|0)>>3]=+p[(i+208|0)>>3];p[(i+208|0)>>3]=j;f[(i+216|0)>>2]=f[(e+456|0)>>2];f[(i+216|0)+4>>2]=f[(e+456|0)+4>>2];f[(i+216|0)+8>>2]=f[(e+456|0)+8>>2];f[(i+216|0)+12>>2]=f[(e+456|0)+12>>2];b[(i+216|0)+16>>0]=b[(e+456|0)+16>>0]|0;h=i+240|0}}}while(0);f[(a+272|0)>>2]=h;f[(a+120|0)>>2]=f[(t+160|0)>>2];f[(a+296|0)>>2]=f[(a+272|0)>>2];f[(a+144|0)>>2]=f[(a+120|0)>>2];H3a(t+156|0,a+296|0,a+144|0)|0;l=t+160|0}else x=1}i=f[l>>2]|0;d=f[(t+156|0)>>2]|0;k=(i-d|0|0)/240|0;c:do{h=1;if(h){h=0;if(!(b[t+8>>0]|0)){if(k>>>0>1&(b[t+20>>0]|0)!=0){e=1;j=+p[d+216>>3];while(1){A=j;j=+p[d+(e*240|0)+216>>3];if(!(!(A<j)|!(j>=1.0)))break;e=e+1|0;if(e>>>0>=k>>>0)break c}if(e>>>0>k>>>0){I3a(t+156|0,e-k|0);break}if(e>>>0<k>>>0){e=d+(e*240|0)|0;if((e|0)!=(i|0))f[(t+160|0)>>2]=i+(~(((i+-240-e|0)>>>0)/240|0)*240|0)}}}else h=1}if(h)if(1){do{e=1;if(e){e=0;if(!(i-d|0)){n=d;o=i}else e=1}if(e)if(1){e=0;while(1){if(e|0?+p[d+(e*240|0)+216>>3]<1.0:0)q=d;else{if(!(O4a(t,d+(e*240|0)|0)|0))break;q=f[(t+156|0)>>2]|0}b[d+(e*240|0)+232>>0]=1;d=e+1|0;if(d>>>0<k>>>0){e=d;d=q}else{w=46;break}}if((w|0)==46){n=q;o=f[(t+160|0)>>2]|0;break}d=e+1|0;d:do if(d>>>0<k>>>0){h=d;while(1){d=f[(t+156|0)>>2]|0;A=+p[d+(h*240|0)+216>>3];if(!((A>=1.0?!(+p[d+(e*240|0)+216>>3]<A):1)|(b[(t+20|0)>>0]|0)==0))break;q=(O4a(t,d+(h*240|0)|0)|0)&1;b[d+(h*240|0)+232>>0]=q;d=h+1|0;if(d>>>0<k>>>0){e=h;h=d}else break d}e=f[l>>2]|0;if(h>>>0>((e-d|0)/240|0)>>>0){I3a(t+156|0,h-((e-d|0)/240|0)|0);break}if(h>>>0<((e-d|0)/240|0)>>>0){d=d+(h*240|0)|0;if((d|0)!=(e|0))f[(t+160|0)>>2]=e+(~(((e+-240-d|0)>>>0)/240|0)*240|0)}}while(0);d=f[(t+156|0)>>2]|0;i=f[(t+160|0)>>2]|0;e:do if((d|0)==(i|0)){r=d;w=59}else while(1){if(b[d+232>>0]|0){r=d;w=59;break e}d=d+240|0;if((d|0)==(i|0)){g=i;s=i;break}}while(0);if((w|0)==59){e=r;d=1;if(d){d=0;if((r|0)==(i|0)){g=e;s=i}else d=1}if(d)if(1){d=e;g=e;f:while(1){do{e=d;d=e+240|0;if((e+240|0|0)==(i|0))break f}while((b[e+472>>0]|0)!=0);h=g;v=g;y=e+240|0;z=v+36|0;do{f[v>>2]=f[y>>2];v=v+4|0;y=y+4|0}while((v|0)<(z|0));A=+p[(e+280|0)>>3];p[(e+280|0)>>3]=+p[(h+40|0)>>3];p[(h+40|0)>>3]=A;A=+p[(e+288|0)>>3];p[(e+288|0)>>3]=+p[(h+48|0)>>3];p[(h+48|0)>>3]=A;A=+p[(e+296|0)>>3];p[(e+296|0)>>3]=+p[(h+56|0)>>3];p[(h+56|0)>>3]=A;A=+p[(e+304|0)>>3];p[(e+304|0)>>3]=+p[(h+64|0)>>3];p[(h+64|0)>>3]=A;A=+p[(e+312|0)>>3];p[(e+312|0)>>3]=+p[(h+72|0)>>3];p[(h+72|0)>>3]=A;A=+p[(e+320|0)>>3];p[(e+320|0)>>3]=+p[(h+80|0)>>3];p[(h+80|0)>>3]=A;g=f[(e+328|0)>>2]|0;f[(e+328|0)>>2]=f[(h+88|0)>>2];f[(h+88|0)>>2]=g;g=f[(e+332|0)>>2]|0;f[(e+332|0)>>2]=f[(h+92|0)>>2];f[(h+92|0)>>2]=g;g=f[(e+336|0)>>2]|0;f[(e+336|0)>>2]=f[(h+96|0)>>2];f[(h+96|0)>>2]=g;g=f[(e+340|0)>>2]|0;f[(e+340|0)>>2]=f[(h+100|0)>>2];f[(h+100|0)>>2]=g;g=f[(e+344|0)>>2]|0;f[(e+344|0)>>2]=f[(h+104|0)>>2];f[(h+104|0)>>2]=g;g=f[(e+348|0)>>2]|0;f[(e+348|0)>>2]=f[(h+108|0)>>2];f[(h+108|0)>>2]=g;A=+p[(e+352|0)>>3];p[(e+352|0)>>3]=+p[(h+112|0)>>3];p[(h+112|0)>>3]=A;A=+p[(e+360|0)>>3];p[(e+360|0)>>3]=+p[(h+120|0)>>3];p[(h+120|0)>>3]=A;A=+p[(e+368|0)>>3];p[(e+368|0)>>3]=+p[(h+128|0)>>3];p[(h+128|0)>>3]=A;A=+p[(e+376|0)>>3];p[(e+376|0)>>3]=+p[(h+136|0)>>3];p[(h+136|0)>>3]=A;A=+p[(e+384|0)>>3];p[(e+384|0)>>3]=+p[(h+144|0)>>3];p[(h+144|0)>>3]=A;A=+p[(e+392|0)>>3];p[(e+392|0)>>3]=+p[(h+152|0)>>3];p[(h+152|0)>>3]=A;A=+p[(e+400|0)>>3];p[(e+400|0)>>3]=+p[(h+160|0)>>3];p[(h+160|0)>>3]=A;A=+p[(e+408|0)>>3];p[(e+408|0)>>3]=+p[(h+168|0)>>3];p[(h+168|0)>>3]=A;A=+p[(e+416|0)>>3];p[(e+416|0)>>3]=+p[(h+176|0)>>3];p[(h+176|0)>>3]=A;f[(h+184|0)>>2]=f[(e+424|0)>>2];f[(h+184|0)+4>>2]=f[(e+424|0)+4>>2];f[(h+184|0)+8>>2]=f[(e+424|0)+8>>2];f[(h+184|0)+12>>2]=f[(e+424|0)+12>>2];A=+p[(e+440|0)>>3];p[(e+440|0)>>3]=+p[(h+200|0)>>3];p[(h+200|0)>>3]=A;A=+p[(e+448|0)>>3];p[(e+448|0)>>3]=+p[(h+208|0)>>3];p[(h+208|0)>>3]=A;f[(h+216|0)>>2]=f[(e+456|0)>>2];f[(h+216|0)+4>>2]=f[(e+456|0)+4>>2];f[(h+216|0)+8>>2]=f[(e+456|0)+8>>2];f[(h+216|0)+12>>2]=f[(e+456|0)+12>>2];b[(h+216|0)+16>>0]=b[(e+456|0)+16>>0]|0;g=h+240|0}s=f[l>>2]|0}}f[a>>2]=g;f[(a+252|0)>>2]=s;f[(a+296|0)>>2]=f[a>>2];f[(a+144|0)>>2]=f[(a+252|0)>>2];H3a(t+156|0,a+296|0,a+144|0)|0;break c}}while(0);if((o|0)!=(n|0))f[(t+160|0)>>2]=o+(~(((o+-240-n|0)>>>0)/240|0)*240|0)}}while(0);d=f[(t+156|0)>>2]|0;h=f[(t+160|0)>>2]|0;if((d|0)!=(h|0))do{mwa(a+232|0,u,d);e=f[(a+232|0)>>2]|0;g=f[((a+232|0)+4|0)>>2]|0;if(g|0)Ppb(g);C=+p[d+120>>3];j=+p[d+144>>3]-C;E=+p[d+128>>3];D=+p[d+176>>3]-E;E=+p[d+152>>3]-E;C=+p[d+168>>3]-C;B=+p[d+112>>3];A=+p[d+160>>3]-B;B=+p[d+136>>3]-B;p[d+64>>3]=j*D-E*C;p[d+72>>3]=E*A-D*B;p[d+80>>3]=C*B-j*A;p[d+184>>3]=+p[d+216>>3];p[d+192>>3]=+p[d+224>>3];F3a(a+248|0,e,d);d=d+240|0}while((d|0)!=(h|0));f[a+816>>2]=l;f[a+3400>>2]=c;f[a+5296>>2]=v;f[a+5312>>2]=y;f[a+5320>>2]=z;f[a+5400>>2]=w;f[a+5424>>2]=x}function f4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0;q=f[a+320>>2]|0;r=f[a+5296>>2]|0;t=f[a+5312>>2]|0;v=f[a+5320>>2]|0;s=f[a+5400>>2]|0;a:{if(b[q+111>>0]|0){n=f[(q+48|0)>>2]|0;c=f[(q+144|0)>>2]|0;h=f[(q+148|0)>>2]|0;if((c|0)!=(h|0)){Q3a(c,h);c=1;if(c){c=0;if(!(b[q+23>>0]|0)){g=f[(q+148|0)>>2]|0;d=g}else c=1}if(c)if(1){j=f[(q+48|0)>>2]|0;k=b[q+32>>0]|0;c=f[(q+144|0)>>2]|0;l=f[(q+148|0)>>2]|0;b:do if((c|0)==(l|0)){i=c;s=252}else{do{if(!(qxa(j,c,k)|0)){i=c;s=252;break b}c=c+120|0}while((c|0)!=(l|0));m=l}while(0);c:do if((s|0)==252){c=i;if((i|0)==(l|0))m=c;else{d=c;g=c;while(1){c=d;do{d=c;c=d+120|0;if((d+120|0|0)==(l|0)){m=g;break c}}while(!(qxa(j,d+120|0,k)|0));h=g;r=g;t=d+120|0;v=r+36|0;do{f[r>>2]=f[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(v|0));w=+p[(d+160|0)>>3];p[(d+160|0)>>3]=+p[(h+40|0)>>3];p[(h+40|0)>>3]=w;w=+p[(d+168|0)>>3];p[(d+168|0)>>3]=+p[(h+48|0)>>3];p[(h+48|0)>>3]=w;w=+p[(d+176|0)>>3];p[(d+176|0)>>3]=+p[(h+56|0)>>3];p[(h+56|0)>>3]=w;f[(h+64|0)>>2]=f[(d+184|0)>>2];f[(h+64|0)+4>>2]=f[(d+184|0)+4>>2];f[(h+64|0)+8>>2]=f[(d+184|0)+8>>2];f[(h+64|0)+12>>2]=f[(d+184|0)+12>>2];w=+p[(d+200|0)>>3];p[(d+200|0)>>3]=+p[(h+80|0)>>3];p[(h+80|0)>>3]=w;w=+p[(d+208|0)>>3];p[(d+208|0)>>3]=+p[(h+88|0)>>3];p[(h+88|0)>>3]=w;f[(h+96|0)>>2]=f[(d+216|0)>>2];f[(h+96|0)+4>>2]=f[(d+216|0)+4>>2];f[(h+96|0)+8>>2]=f[(d+216|0)+8>>2];f[(h+96|0)+12>>2]=f[(d+216|0)+12>>2];b[(h+96|0)+16>>0]=b[(d+216|0)+16>>0]|0;d=c;g=h+120|0}}}while(0);g=m;h=f[(q+148|0)>>2]|0;c=f[(q+144|0)>>2]|0;c=c+(((m-c|0)/120|0)*120|0)|0;if((h|0)==(g|0))d=h;else{d=c+(((h-m|0)/120|0)*120|0)|0;if((d|0)==(h|0)){g=h;d=h}else{do{r=c;t=d;v=r+36|0;do{f[r>>2]=f[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(v|0));l=d+40|0;w=+p[l>>3];m=c+40|0;p[l>>3]=+p[m>>3];p[m>>3]=w;m=d+48|0;w=+p[m>>3];l=c+48|0;p[m>>3]=+p[l>>3];p[l>>3]=w;l=d+56|0;w=+p[l>>3];m=c+56|0;p[l>>3]=+p[m>>3];p[m>>3]=w;m=c+64|0;l=d+64|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];f[m+12>>2]=f[l+12>>2];m=d+80|0;w=+p[m>>3];l=c+80|0;p[m>>3]=+p[l>>3];p[l>>3]=w;l=d+88|0;w=+p[l>>3];m=c+88|0;p[l>>3]=+p[m>>3];p[m>>3]=w;m=c+96|0;l=d+96|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];f[m+12>>2]=f[l+12>>2];b[m+16>>0]=b[l+16>>0]|0;d=d+120|0;c=c+120|0}while((d|0)!=(h|0));d=f[(q+148|0)>>2]|0;g=d}if((g|0)!=(c|0)){g=g+(~(((g+-120-c|0)>>>0)/120|0)*120|0)|0;f[(q+148|0)>>2]=g;d=g}}}l=f[(q+144|0)>>2]|0;m=d-l|0;f[a+320>>2]=q;f[a+2016>>2]=n;f[a+2336>>2]=l;f[a+2344>>2]=m;f[a+2352>>2]=d;f[a+3440>>2]=g;f[a+5296>>2]=r;f[a+5312>>2]=t;f[a+5320>>2]=v;f[a+5400>>2]=s;f[a+5520>>2]=0;f[a+5524>>2]=0;c4a(a);r=f[a+5296>>2]|0;t=f[a+5312>>2]|0;v=f[a+5320>>2]|0;s=f[a+5400>>2]|0}}if(!(b[q+23>>0]|0)){u=a;f[a+5544>>2]=5;break a}h=f[(q+48|0)>>2]|0;i=b[q+32>>0]|0;c=f[(q+120|0)>>2]|0;j=f[(q+124|0)>>2]|0;d:do if((c|0)==(j|0)){o=c;s=342}else{do{if(!(qxa(h,c,i)|0)){o=c;s=342;break d}c=c+192|0}while((c|0)!=(j|0));e=j}while(0);e:do if((s|0)==342){d=o;c=1;if(c){c=0;if((o|0)==(j|0))e=d;else c=1}if(c)if(1){c=d;e=d;while(1){do{d=c;c=d+192|0;if((d+192|0|0)==(j|0))break e}while(!(qxa(h,d+192|0,i)|0));g=e;r=e;t=d+192|0;v=r+36|0;do{f[r>>2]=f[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(v|0));w=+p[(d+232|0)>>3];p[(d+232|0)>>3]=+p[(g+40|0)>>3];p[(g+40|0)>>3]=w;w=+p[(d+240|0)>>3];p[(d+240|0)>>3]=+p[(g+48|0)>>3];p[(g+48|0)>>3]=w;w=+p[(d+248|0)>>3];p[(d+248|0)>>3]=+p[(g+56|0)>>3];p[(g+56|0)>>3]=w;w=+p[(d+256|0)>>3];p[(d+256|0)>>3]=+p[(g+64|0)>>3];p[(g+64|0)>>3]=w;w=+p[(d+264|0)>>3];p[(d+264|0)>>3]=+p[(g+72|0)>>3];p[(g+72|0)>>3]=w;w=+p[(d+272|0)>>3];p[(d+272|0)>>3]=+p[(g+80|0)>>3];p[(g+80|0)>>3]=w;e=f[(d+280|0)>>2]|0;f[(d+280|0)>>2]=f[(g+88|0)>>2];f[(g+88|0)>>2]=e;e=f[(d+284|0)>>2]|0;f[(d+284|0)>>2]=f[(g+92|0)>>2];f[(g+92|0)>>2]=e;e=f[(d+288|0)>>2]|0;f[(d+288|0)>>2]=f[(g+96|0)>>2];f[(g+96|0)>>2]=e;e=f[(d+292|0)>>2]|0;f[(d+292|0)>>2]=f[(g+100|0)>>2];f[(g+100|0)>>2]=e;e=f[(d+296|0)>>2]|0;f[(d+296|0)>>2]=f[(g+104|0)>>2];f[(g+104|0)>>2]=e;e=f[(d+300|0)>>2]|0;f[(d+300|0)>>2]=f[(g+108|0)>>2];f[(g+108|0)>>2]=e;w=+p[(d+304|0)>>3];p[(d+304|0)>>3]=+p[(g+112|0)>>3];p[(g+112|0)>>3]=w;w=+p[(d+312|0)>>3];p[(d+312|0)>>3]=+p[(g+120|0)>>3];p[(g+120|0)>>3]=w;w=+p[(d+320|0)>>3];p[(d+320|0)>>3]=+p[(g+128|0)>>3];p[(g+128|0)>>3]=w;w=+p[(d+328|0)>>3];p[(d+328|0)>>3]=+p[(g+136|0)>>3];p[(g+136|0)>>3]=w;w=+p[(d+336|0)>>3];p[(d+336|0)>>3]=+p[(g+144|0)>>3];p[(g+144|0)>>3]=w;w=+p[(d+344|0)>>3];p[(d+344|0)>>3]=+p[(g+152|0)>>3];p[(g+152|0)>>3]=w;w=+p[(d+352|0)>>3];p[(d+352|0)>>3]=+p[(g+160|0)>>3];p[(g+160|0)>>3]=w;w=+p[(d+360|0)>>3];p[(d+360|0)>>3]=+p[(g+168|0)>>3];p[(g+168|0)>>3]=w;w=+p[(d+368|0)>>3];p[(d+368|0)>>3]=+p[(g+176|0)>>3];p[(g+176|0)>>3]=w;e=f[(d+376|0)+4>>2]|0;f[(g+184|0)>>2]=f[(d+376|0)>>2];f[(g+184|0)+4>>2]=e;e=g+192|0}}}while(0);f[(a+272|0)>>2]=e;f[(a+120|0)>>2]=f[(q+124|0)>>2];f[(a+296|0)>>2]=f[(a+272|0)>>2];f[(a+144|0)>>2]=f[(a+120|0)>>2];L3a(q+120|0,a+296|0,a+144|0)|0;u=a;f[a+5544>>2]=5;break a}f[a+5296>>2]=r;f[a+5312>>2]=t;f[a+5320>>2]=v;f[a+5400>>2]=s}function g4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0;A=f[a+320>>2]|0;y=f[a+1360>>2]|0;c=f[a+2800>>2]|0;v=f[a+3312>>2]|0;B=f[a+3392>>2]|0;C=f[a+5296>>2]|0;F=f[a+5312>>2]|0;G=f[a+5320>>2]|0;D=f[a+5400>>2]|0;E=f[a+5416>>2]|0;if(E){E=0;if(1){f[(a+248|0)>>2]=A;do{mwa(a+240|0,y,c);u=f[(a+240|0)>>2]|0;d=f[((a+240|0)+4|0)>>2]|0;if(d|0)Ppb(d);d=c+144|0;g=c+120|0;K=+p[g>>3];I=+p[d>>3]-K;h=c+176|0;i=c+128|0;M=+p[i>>3];L=+p[h>>3]-M;j=c+152|0;M=+p[j>>3]-M;k=c+168|0;K=+p[k>>3]-K;l=c+160|0;m=c+112|0;J=+p[m>>3];H=+p[l>>3]-J;o=c+136|0;J=+p[o>>3]-J;q=c+64|0;p[q>>3]=I*L-M*K;r=c+72|0;p[r>>3]=M*H-L*J;s=c+80|0;p[s>>3]=K*J-I*H;t=c+190|0;if(!(b[t>>0]|0)){D4a(a+144|0,A,f[u+96>>2]|0,u);V=+n[(a+144|0)>>2];R=+n[((a+144|0)+4|0)>>2];H=+n[((a+144|0)+8|0)>>2];U=+n[((a+144|0)+16|0)>>2];Q=+n[((a+144|0)+20|0)>>2];J=+n[((a+144|0)+24|0)>>2];T=+n[((a+144|0)+32|0)>>2];P=+n[((a+144|0)+36|0)>>2];L=+n[((a+144|0)+40|0)>>2];S=+n[((a+144|0)+48|0)>>2];O=+n[((a+144|0)+52|0)>>2];M=+n[((a+144|0)+56|0)>>2];N=1.0/((Q*L-J*P)*V+((U*P-Q*T)*H+(J*T-U*L)*R));K=+p[q>>3];I=+p[r>>3];W=+p[s>>3];p[q>>3]=W*((R*J-H*Q)*N)+(K*((Q*L-J*P)*N)+I*((H*P-R*L)*N));p[r>>3]=W*((H*U-V*J)*N)+(K*((J*T-U*L)*N)+I*((V*L-H*T)*N));p[s>>3]=W*((V*Q-R*U)*N)+(K*((U*P-Q*T)*N)+I*((R*T-V*P)*N));N=+p[m>>3];I=+p[g>>3];K=+p[i>>3];p[m>>3]=N*V+I*U+K*T+S;p[g>>3]=N*R+I*Q+K*P+O;p[i>>3]=N*H+I*J+K*L+M;K=+p[o>>3];I=+p[d>>3];N=+p[j>>3];p[o>>3]=K*V+I*U+N*T+S;p[d>>3]=K*R+I*Q+N*P+O;p[j>>3]=K*H+I*J+N*L+M;N=+p[l>>3];I=+p[k>>3];K=+p[h>>3];p[l>>3]=N*V+I*U+K*T+S;p[k>>3]=N*R+I*Q+K*P+O;p[h>>3]=N*H+I*J+K*L+M;b[t>>0]=1}F3a(a+248|0,u,c);u=f[(A+60|0)>>2]|0;U=+p[(A+112|0)>>3];V=+p[u+8>>3]+U*+p[u+32>>3];W=+p[u+16>>3]+U*+p[u+40>>3];p[c+40>>3]=+p[u>>3]+U*+p[u+24>>3];p[c+48>>3]=V;p[c+56>>3]=W;c=c+192|0}while((c|0)!=(v|0));if((f[(A+120|0)>>2]|0)==(f[(A+124|0)>>2]|0)){B=a+248|0;D=17}else if(!(b[A+20>>0]|0)){B=a+248|0;D=17}else{c=f[(A+156|0)>>2]|0;d=f[(A+160|0)>>2]|0;if((d|0)==(c|0))w=a+248|0;else{f[(A+160|0)>>2]=d+(~(((d+-240-c|0)>>>0)/240|0)*240|0);w=a+248|0}}}else E=1}if((D|0)==17){G3a(f[(A+156|0)>>2]|0,f[(A+160|0)>>2]|0);c=1;if(c){c=0;if(!(b[A+23>>0]|0))x=A+160|0;else c=1}f[a+320>>2]=A;f[a+816>>2]=x;f[a+1360>>2]=y;f[a+3392>>2]=B;f[a+3400>>2]=w;f[a+5296>>2]=C;f[a+5312>>2]=F;f[a+5320>>2]=G;f[a+5400>>2]=D;f[a+5424>>2]=c;f[a+5536>>2]=0;f[a+5540>>2]=0;e4a(a);C=f[a+5296>>2]|0;F=f[a+5312>>2]|0;G=f[a+5320>>2]|0;D=f[a+5400>>2]|0}if(b[A+22>>0]|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[a+16>>2]=1.0;J3a(a+208|0,a);c=f[(A+120|0)>>2]|0;h=f[(A+124|0)>>2]|0;f[(a+144|0)>>2]=y;f[(a+144|0)+4>>2]=a+208|0;a:do if((c|0)==(h|0)){z=c;D=76}else{do{if(K3a(a+144|0,c)|0){z=c;D=76;break a}c=c+192|0}while((c|0)!=(h|0));e=h}while(0);b:do if((D|0)==76){d=z;c=1;if(c){c=0;if((z|0)==(h|0))e=d;else c=1}if(c)if(1){c=d;e=d;while(1){do{d=c;c=d+192|0;if((d+192|0|0)==(h|0))break b}while(K3a(a+144|0,d+192|0)|0);g=e;C=e;F=d+192|0;G=C+36|0;do{f[C>>2]=f[F>>2];C=C+4|0;F=F+4|0}while((C|0)<(G|0));W=+p[(d+232|0)>>3];p[(d+232|0)>>3]=+p[(g+40|0)>>3];p[(g+40|0)>>3]=W;W=+p[(d+240|0)>>3];p[(d+240|0)>>3]=+p[(g+48|0)>>3];p[(g+48|0)>>3]=W;W=+p[(d+248|0)>>3];p[(d+248|0)>>3]=+p[(g+56|0)>>3];p[(g+56|0)>>3]=W;W=+p[(d+256|0)>>3];p[(d+256|0)>>3]=+p[(g+64|0)>>3];p[(g+64|0)>>3]=W;W=+p[(d+264|0)>>3];p[(d+264|0)>>3]=+p[(g+72|0)>>3];p[(g+72|0)>>3]=W;W=+p[(d+272|0)>>3];p[(d+272|0)>>3]=+p[(g+80|0)>>3];p[(g+80|0)>>3]=W;e=f[(d+280|0)>>2]|0;f[(d+280|0)>>2]=f[(g+88|0)>>2];f[(g+88|0)>>2]=e;e=f[(d+284|0)>>2]|0;f[(d+284|0)>>2]=f[(g+92|0)>>2];f[(g+92|0)>>2]=e;e=f[(d+288|0)>>2]|0;f[(d+288|0)>>2]=f[(g+96|0)>>2];f[(g+96|0)>>2]=e;e=f[(d+292|0)>>2]|0;f[(d+292|0)>>2]=f[(g+100|0)>>2];f[(g+100|0)>>2]=e;e=f[(d+296|0)>>2]|0;f[(d+296|0)>>2]=f[(g+104|0)>>2];f[(g+104|0)>>2]=e;e=f[(d+300|0)>>2]|0;f[(d+300|0)>>2]=f[(g+108|0)>>2];f[(g+108|0)>>2]=e;W=+p[(d+304|0)>>3];p[(d+304|0)>>3]=+p[(g+112|0)>>3];p[(g+112|0)>>3]=W;W=+p[(d+312|0)>>3];p[(d+312|0)>>3]=+p[(g+120|0)>>3];p[(g+120|0)>>3]=W;W=+p[(d+320|0)>>3];p[(d+320|0)>>3]=+p[(g+128|0)>>3];p[(g+128|0)>>3]=W;W=+p[(d+328|0)>>3];p[(d+328|0)>>3]=+p[(g+136|0)>>3];p[(g+136|0)>>3]=W;W=+p[(d+336|0)>>3];p[(d+336|0)>>3]=+p[(g+144|0)>>3];p[(g+144|0)>>3]=W;W=+p[(d+344|0)>>3];p[(d+344|0)>>3]=+p[(g+152|0)>>3];p[(g+152|0)>>3]=W;W=+p[(d+352|0)>>3];p[(d+352|0)>>3]=+p[(g+160|0)>>3];p[(g+160|0)>>3]=W;W=+p[(d+360|0)>>3];p[(d+360|0)>>3]=+p[(g+168|0)>>3];p[(g+168|0)>>3]=W;W=+p[(d+368|0)>>3];p[(d+368|0)>>3]=+p[(g+176|0)>>3];p[(g+176|0)>>3]=W;e=f[(d+376|0)+4>>2]|0;f[(g+184|0)>>2]=f[(d+376|0)>>2];f[(g+184|0)+4>>2]=e;e=g+192|0}}}while(0);f[(a+272|0)>>2]=e;f[(a+120|0)>>2]=f[(A+124|0)>>2];f[(a+296|0)>>2]=f[(a+272|0)>>2];f[(a+144|0)>>2]=f[(a+120|0)>>2];L3a(A+120|0,a+296|0,a+144|0)|0;c=f[(a+208|0)+8>>2]|0;if(c|0)do{A=c;c=f[c>>2]|0;Zpb(A)}while((c|0)!=0);c=f[(a+208|0)>>2]|0;f[(a+208|0)>>2]=0;if(c|0)Zpb(c);c=f[a+8>>2]|0;if(c|0)do{A=c;c=f[c>>2]|0;Zpb(A)}while((c|0)!=0);c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c)}f[a+3392>>2]=B;f[a+5296>>2]=C;f[a+5312>>2]=F;f[a+5320>>2]=G;f[a+5400>>2]=D;f[a+5416>>2]=E}function h4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;c=f[a+408>>2]|0;k=f[a+416>>2]|0;l=f[a+432>>2]|0;J=f[a+1832>>2]|0;K=f[a+1840>>2]|0;m=f[a+1856>>2]|0;n=f[a+1864>>2]|0;L=f[a+1872>>2]|0;M=f[a+1888>>2]|0;N=f[a+1896>>2]|0;o=f[a+1904>>2]|0;O=f[a+1912>>2]|0;q=f[a+1928>>2]|0;I=c+40|0;f[J>>2]=f[I>>2];f[J+4>>2]=f[I+4>>2];f[J+8>>2]=f[I+8>>2];f[J+12>>2]=f[I+12>>2];f[J+16>>2]=f[I+16>>2];f[J+20>>2]=f[I+20>>2];p[J>>3]=+p[I>>3];p[((a+64|0)+48|0)>>3]=+p[c+48>>3];p[((a+64|0)+56|0)>>3]=+p[c+56>>3];J=c+64|0;f[K>>2]=f[J>>2];f[K+4>>2]=f[J+4>>2];f[K+8>>2]=f[J+8>>2];f[K+12>>2]=f[J+12>>2];f[K+16>>2]=f[J+16>>2];f[K+20>>2]=f[J+20>>2];p[K>>3]=+p[J>>3];p[((a+64|0)+72|0)>>3]=+p[c+72>>3];p[((a+64|0)+80|0)>>3]=+p[c+80>>3];K=c+88|0;f[m>>2]=f[K>>2];f[m+4>>2]=f[K+4>>2];f[m+8>>2]=f[K+8>>2];f[m>>2]=f[K>>2];f[((a+64|0)+92|0)>>2]=f[c+92>>2];f[((a+64|0)+96|0)>>2]=f[c+96>>2];K=c+100|0;f[n>>2]=f[K>>2];f[n+4>>2]=f[K+4>>2];f[n+8>>2]=f[K+8>>2];f[n>>2]=f[K>>2];f[((a+64|0)+104|0)>>2]=f[c+104>>2];f[((a+64|0)+108|0)>>2]=f[c+108>>2];K=c+112|0;f[L>>2]=f[K>>2];f[L+4>>2]=f[K+4>>2];f[L+8>>2]=f[K+8>>2];f[L+12>>2]=f[K+12>>2];f[L+16>>2]=f[K+16>>2];f[L+20>>2]=f[K+20>>2];p[L>>3]=+p[K>>3];p[((a+64|0)+120|0)>>3]=+p[c+120>>3];p[((a+64|0)+128|0)>>3]=+p[c+128>>3];L=c+136|0;f[M>>2]=f[L>>2];f[M+4>>2]=f[L+4>>2];f[M+8>>2]=f[L+8>>2];f[M+12>>2]=f[L+12>>2];f[M+16>>2]=f[L+16>>2];f[M+20>>2]=f[L+20>>2];p[M>>3]=+p[L>>3];p[((a+64|0)+144|0)>>3]=+p[c+144>>3];p[((a+64|0)+152|0)>>3]=+p[c+152>>3];M=c+160|0;f[N>>2]=f[M>>2];f[N+4>>2]=f[M+4>>2];f[N+8>>2]=f[M+8>>2];f[N+12>>2]=f[M+12>>2];f[N+16>>2]=f[M+16>>2];f[N+20>>2]=f[M+20>>2];p[N>>3]=+p[M>>3];p[((a+64|0)+168|0)>>3]=+p[c+168>>3];p[((a+64|0)+176|0)>>3]=+p[c+176>>3];N=c+184|0;f[o>>2]=f[N>>2];f[o+4>>2]=f[N+4>>2];f[o+8>>2]=f[N+8>>2];f[o+12>>2]=f[N+12>>2];N=c+200|0;f[O>>2]=f[N>>2];f[O+4>>2]=f[N+4>>2];f[O+8>>2]=f[N+8>>2];f[O+12>>2]=f[N+12>>2];p[O>>3]=+p[N>>3];p[((a+64|0)+208|0)>>3]=+p[c+208>>3];O=c+216|0;f[q>>2]=f[O>>2];f[q+4>>2]=f[O+4>>2];f[q+8>>2]=f[O+8>>2];f[q+12>>2]=f[O+12>>2];b[q+16>>0]=b[O+16>>0]|0;while(1){d=c;h=k;i=d+36|0;do{f[d>>2]=f[h>>2];d=d+4|0;h=h+4|0}while((d|0)<(i|0));r=k+40|0;g=+p[r>>3];s=c+40|0;p[r>>3]=+p[s>>3];p[s>>3]=g;s=k+48|0;g=+p[s>>3];t=c+48|0;p[s>>3]=+p[t>>3];p[t>>3]=g;t=k+56|0;g=+p[t>>3];u=c+56|0;p[t>>3]=+p[u>>3];p[u>>3]=g;u=k+64|0;g=+p[u>>3];v=c+64|0;p[u>>3]=+p[v>>3];p[v>>3]=g;v=k+72|0;g=+p[v>>3];w=c+72|0;p[v>>3]=+p[w>>3];p[w>>3]=g;w=k+80|0;g=+p[w>>3];y=c+80|0;p[w>>3]=+p[y>>3];p[y>>3]=g;y=c+88|0;x=k+88|0;A=f[x>>2]|0;f[x>>2]=f[y>>2];f[y>>2]=A;y=k+92|0;A=f[y>>2]|0;z=c+92|0;f[y>>2]=f[z>>2];f[z>>2]=A;z=k+96|0;A=f[z>>2]|0;B=c+96|0;f[z>>2]=f[B>>2];f[B>>2]=A;B=c+100|0;A=k+100|0;E=f[A>>2]|0;f[A>>2]=f[B>>2];f[B>>2]=E;B=k+104|0;E=f[B>>2]|0;C=c+104|0;f[B>>2]=f[C>>2];f[C>>2]=E;C=k+108|0;E=f[C>>2]|0;D=c+108|0;f[C>>2]=f[D>>2];f[D>>2]=E;D=k+112|0;g=+p[D>>3];E=c+112|0;p[D>>3]=+p[E>>3];p[E>>3]=g;E=k+120|0;g=+p[E>>3];F=c+120|0;p[E>>3]=+p[F>>3];p[F>>3]=g;F=k+128|0;g=+p[F>>3];G=c+128|0;p[F>>3]=+p[G>>3];p[G>>3]=g;G=k+136|0;g=+p[G>>3];H=c+136|0;p[G>>3]=+p[H>>3];p[H>>3]=g;H=k+144|0;g=+p[H>>3];I=c+144|0;p[H>>3]=+p[I>>3];p[I>>3]=g;I=k+152|0;g=+p[I>>3];J=c+152|0;p[I>>3]=+p[J>>3];p[J>>3]=g;J=k+160|0;g=+p[J>>3];K=c+160|0;p[J>>3]=+p[K>>3];p[K>>3]=g;K=k+168|0;g=+p[K>>3];L=c+168|0;p[K>>3]=+p[L>>3];p[L>>3]=g;L=k+176|0;g=+p[L>>3];N=c+176|0;p[L>>3]=+p[N>>3];p[N>>3]=g;N=c+184|0;M=k+184|0;f[N>>2]=f[M>>2];f[N+4>>2]=f[M+4>>2];f[N+8>>2]=f[M+8>>2];f[N+12>>2]=f[M+12>>2];N=k+200|0;g=+p[N>>3];O=c+200|0;p[N>>3]=+p[O>>3];p[O>>3]=g;O=k+208|0;g=+p[O>>3];i=c+208|0;p[O>>3]=+p[i>>3];p[i>>3]=g;i=c+216|0;j=k+216|0;f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];b[i+16>>0]=b[j+16>>0]|0;if((k|0)==(l|0))break;h=k+-240|0;c=~~+p[((a+64|0)+216|0)>>3]>>>0;d=~~+p[k+-24>>3]>>>0;if(c>>>0<d>>>0){c=k;k=h;continue}if(c>>>0>d>>>0)break;e=+p[((a+64|0)+224|0)>>3];g=+p[k+-16>>3];if(e<g){c=k;k=h;continue}if(e>g)break;if(A5a(a+64|0,h)|0){c=k;k=h}else break}d=k;h=a+64|0;i=d+36|0;do{f[d>>2]=f[h>>2];d=d+4|0;h=h+4|0}while((d|0)<(i|0));g=+p[((a+64|0)+40|0)>>3];p[((a+64|0)+40|0)>>3]=+p[r>>3];p[r>>3]=g;g=+p[((a+64|0)+48|0)>>3];p[((a+64|0)+48|0)>>3]=+p[s>>3];p[s>>3]=g;g=+p[((a+64|0)+56|0)>>3];p[((a+64|0)+56|0)>>3]=+p[t>>3];p[t>>3]=g;g=+p[((a+64|0)+64|0)>>3];p[((a+64|0)+64|0)>>3]=+p[u>>3];p[u>>3]=g;g=+p[((a+64|0)+72|0)>>3];p[((a+64|0)+72|0)>>3]=+p[v>>3];p[v>>3]=g;g=+p[((a+64|0)+80|0)>>3];p[((a+64|0)+80|0)>>3]=+p[w>>3];p[w>>3]=g;w=f[m>>2]|0;f[m>>2]=f[x>>2];f[x>>2]=w;x=f[((a+64|0)+92|0)>>2]|0;f[((a+64|0)+92|0)>>2]=f[y>>2];f[y>>2]=x;y=f[((a+64|0)+96|0)>>2]|0;f[((a+64|0)+96|0)>>2]=f[z>>2];f[z>>2]=y;z=f[n>>2]|0;f[n>>2]=f[A>>2];f[A>>2]=z;A=f[((a+64|0)+104|0)>>2]|0;f[((a+64|0)+104|0)>>2]=f[B>>2];f[B>>2]=A;B=f[((a+64|0)+108|0)>>2]|0;f[((a+64|0)+108|0)>>2]=f[C>>2];f[C>>2]=B;g=+p[((a+64|0)+112|0)>>3];p[((a+64|0)+112|0)>>3]=+p[D>>3];p[D>>3]=g;g=+p[((a+64|0)+120|0)>>3];p[((a+64|0)+120|0)>>3]=+p[E>>3];p[E>>3]=g;g=+p[((a+64|0)+128|0)>>3];p[((a+64|0)+128|0)>>3]=+p[F>>3];p[F>>3]=g;g=+p[((a+64|0)+136|0)>>3];p[((a+64|0)+136|0)>>3]=+p[G>>3];p[G>>3]=g;g=+p[((a+64|0)+144|0)>>3];p[((a+64|0)+144|0)>>3]=+p[H>>3];p[H>>3]=g;g=+p[((a+64|0)+152|0)>>3];p[((a+64|0)+152|0)>>3]=+p[I>>3];p[I>>3]=g;g=+p[((a+64|0)+160|0)>>3];p[((a+64|0)+160|0)>>3]=+p[J>>3];p[J>>3]=g;g=+p[((a+64|0)+168|0)>>3];p[((a+64|0)+168|0)>>3]=+p[K>>3];p[K>>3]=g;g=+p[((a+64|0)+176|0)>>3];p[((a+64|0)+176|0)>>3]=+p[L>>3];p[L>>3]=g;f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];f[M+8>>2]=f[o+8>>2];f[M+12>>2]=f[o+12>>2];g=+p[((a+64|0)+200|0)>>3];p[((a+64|0)+200|0)>>3]=+p[N>>3];p[N>>3]=g;g=+p[((a+64|0)+208|0)>>3];p[((a+64|0)+208|0)>>3]=+p[O>>3];p[O>>3]=g;f[j>>2]=f[q>>2];f[j+4>>2]=f[q+4>>2];f[j+8>>2]=f[q+8>>2];f[j+12>>2]=f[q+12>>2];b[j+16>>0]=b[q+16>>0]|0;f[a+6544>>2]=d;f[a+6560>>2]=h;f[a+6568>>2]=i}function i4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0.0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0.0;sa=f[a+336>>2]|0;ta=f[a+400>>2]|0;ua=f[a+432>>2]|0;i=f[a+496>>2]|0;k=f[a+520>>2]|0;ma=f[a+592>>2]|0;va=f[a+2040>>2]|0;wa=f[a+2784>>2]|0;d=f[a+3024>>2]|0;c=f[a+5112>>2]|0;xa=f[a+6520>>2]|0;ya=f[a+6544>>2]|0;Aa=f[a+6560>>2]|0;Ba=f[a+6568>>2]|0;za=f[a+6576>>2]|0;a:{b:{h=1;if(h)if(c>>>0<i>>>0)while(1){o=d+216|0;q=d+224|0;while(1){h=~~+p[c+216>>3]>>>0;j=+p[o>>3];if(h>>>0>=~~j>>>0>>>0){if(h>>>0>~~j>>>0>>>0){qa=j;break}e=+p[c+224>>3];g=+p[q>>3];if(!(e<g)){if(e>g){qa=j;break}if(!(A5a(c,d)|0)){za=87;break}}}c=c+240|0}if((za|0)==87){za=0;qa=+p[o>>3]}m=i+-240|0;h=~~+p[i+-24>>3]>>>0;l=~~qa>>>0;c:do if(h>>>0>=l>>>0){j=qa;n=m;while(1){if(h>>>0>l>>>0)e=j;else{e=+p[i+-16>>3];g=+p[q>>3];if(e<g){m=n;break c}if(e>g)e=j;else{if(A5a(n,d)|0){m=n;break c}e=+p[o>>3]}}m=n+-240|0;h=~~+p[n+-24>>3]>>>0;l=~~e>>>0;if(h>>>0<l>>>0){i=n;break}else{i=n;j=e;n=m}}}while(0);if(c>>>0>m>>>0){na=d;la=k;ma=c;break b}ya=a+24|0;Aa=c;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));h=c+40|0;l=c+48|0;n=c+56|0;e=+p[h>>3];g=+p[l>>3];j=+p[n>>3];o=c+64|0;q=c+72|0;r=c+80|0;S=+p[o>>3];T=+p[q>>3];U=+p[r>>3];s=c+88|0;t=c+92|0;u=c+96|0;_=f[s>>2]|0;ka=f[t>>2]|0;la=f[u>>2]|0;v=c+100|0;w=c+104|0;x=c+108|0;ma=f[v>>2]|0;na=f[w>>2]|0;oa=f[x>>2]|0;y=c+112|0;A=c+120|0;C=c+128|0;$=+p[y>>3];aa=+p[A>>3];ba=+p[C>>3];E=c+136|0;G=c+144|0;I=c+152|0;ca=+p[E>>3];da=+p[G>>3];ea=+p[I>>3];K=c+160|0;M=c+168|0;O=c+176|0;fa=+p[K>>3];ga=+p[M>>3];ha=+p[O>>3];Q=c+184|0;f[(a+64|0)>>2]=f[Q>>2];f[(a+64|0)+4>>2]=f[Q+4>>2];f[(a+64|0)+8>>2]=f[Q+8>>2];f[(a+64|0)+12>>2]=f[Q+12>>2];V=c+200|0;X=c+208|0;ia=+p[V>>3];ja=+p[X>>3];Z=c+216|0;f[a>>2]=f[Z>>2];f[a+4>>2]=f[Z+4>>2];f[a+8>>2]=f[Z+8>>2];f[a+12>>2]=f[Z+12>>2];b[a+16>>0]=b[Z+16>>0]|0;ya=c;Aa=m;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));pa=i+-200|0;Ca=+p[pa>>3];p[pa>>3]=e;p[h>>3]=Ca;Y=i+-192|0;Ca=+p[Y>>3];p[Y>>3]=+p[l>>3];p[l>>3]=Ca;W=i+-184|0;Ca=+p[W>>3];p[W>>3]=+p[n>>3];p[n>>3]=Ca;R=i+-176|0;Ca=+p[R>>3];p[R>>3]=+p[o>>3];p[o>>3]=Ca;P=i+-168|0;Ca=+p[P>>3];p[P>>3]=+p[q>>3];p[q>>3]=Ca;N=i+-160|0;Ca=+p[N>>3];p[N>>3]=+p[r>>3];p[r>>3]=Ca;L=i+-152|0;J=f[L>>2]|0;f[L>>2]=_;f[s>>2]=J;J=i+-148|0;H=f[J>>2]|0;f[J>>2]=f[t>>2];f[t>>2]=H;H=i+-144|0;F=f[H>>2]|0;f[H>>2]=f[u>>2];f[u>>2]=F;F=i+-140|0;D=f[F>>2]|0;f[F>>2]=f[v>>2];f[v>>2]=D;D=i+-136|0;B=f[D>>2]|0;f[D>>2]=f[w>>2];f[w>>2]=B;B=i+-132|0;f[x>>2]=f[B>>2];z=i+-128|0;Ca=+p[z>>3];p[z>>3]=+p[y>>3];p[y>>3]=Ca;x=i+-120|0;Ca=+p[x>>3];p[x>>3]=+p[A>>3];p[A>>3]=Ca;w=i+-112|0;Ca=+p[w>>3];p[w>>3]=+p[C>>3];p[C>>3]=Ca;v=i+-104|0;Ca=+p[v>>3];p[v>>3]=+p[E>>3];p[E>>3]=Ca;u=i+-96|0;Ca=+p[u>>3];p[u>>3]=+p[G>>3];p[G>>3]=Ca;t=i+-88|0;Ca=+p[t>>3];p[t>>3]=+p[I>>3];p[I>>3]=Ca;s=i+-80|0;Ca=+p[s>>3];p[s>>3]=+p[K>>3];p[K>>3]=Ca;r=i+-72|0;Ca=+p[r>>3];p[r>>3]=+p[M>>3];p[M>>3]=Ca;q=i+-64|0;Ca=+p[q>>3];p[q>>3]=+p[O>>3];p[O>>3]=Ca;o=i+-56|0;f[Q>>2]=f[o>>2];f[Q+4>>2]=f[o+4>>2];f[Q+8>>2]=f[o+8>>2];f[Q+12>>2]=f[o+12>>2];n=i+-40|0;Ca=+p[n>>3];p[n>>3]=+p[V>>3];p[V>>3]=Ca;l=i+-32|0;p[X>>3]=+p[l>>3];h=i+-24|0;f[Z>>2]=f[h>>2];f[Z+4>>2]=f[h+4>>2];f[Z+8>>2]=f[h+8>>2];f[Z+12>>2]=f[h+12>>2];b[Z+16>>0]=b[h+16>>0]|0;ya=m;Aa=a+24|0;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));p[pa>>3]=e;p[Y>>3]=g;p[W>>3]=j;p[R>>3]=S;p[P>>3]=T;p[N>>3]=U;f[L>>2]=_;f[J>>2]=ka;f[H>>2]=la;f[F>>2]=ma;f[D>>2]=na;f[B>>2]=oa;p[z>>3]=$;p[x>>3]=aa;p[w>>3]=ba;p[v>>3]=ca;p[u>>3]=da;p[t>>3]=ea;p[s>>3]=fa;p[r>>3]=ga;p[q>>3]=ha;f[o>>2]=f[(a+64|0)>>2];f[o+4>>2]=f[(a+64|0)+4>>2];f[o+8>>2]=f[(a+64|0)+8>>2];f[o+12>>2]=f[(a+64|0)+12>>2];p[n>>3]=ia;p[l>>3]=ja;f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];b[h+16>>0]=b[a+16>>0]|0;d=(d|0)==(c|0)?m:d;i=m;c=c+240|0;k=k+1|0}else h=1;if(h)if(1){na=d;la=k;ma=c}}do{c=1;if(c){c=0;if((ma|0)==(na|0))ra=la;else c=1}if(c)if(1){c=~~+p[na+216>>3]>>>0;d=~~+p[ma+216>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){ra=la;break}e=+p[na+224>>3];g=+p[ma+224>>3];if(!(e<g)){if(e>g){ra=la;break}if(!(A5a(na,ma)|0)){ra=la;break}}}ya=a+24|0;Aa=ma;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));c=ma+40|0;d=ma+48|0;h=ma+56|0;e=+p[c>>3];g=+p[d>>3];j=+p[h>>3];i=ma+64|0;k=ma+72|0;l=ma+80|0;S=+p[i>>3];T=+p[k>>3];U=+p[l>>3];m=ma+88|0;n=ma+92|0;o=ma+96|0;V=f[m>>2]|0;W=f[n>>2]|0;X=f[o>>2]|0;q=ma+100|0;r=ma+104|0;s=ma+108|0;Y=f[q>>2]|0;Z=f[r>>2]|0;_=f[s>>2]|0;t=ma+112|0;v=ma+120|0;x=ma+128|0;$=+p[t>>3];aa=+p[v>>3];ba=+p[x>>3];z=ma+136|0;B=ma+144|0;D=ma+152|0;ca=+p[z>>3];da=+p[B>>3];ea=+p[D>>3];F=ma+160|0;H=ma+168|0;J=ma+176|0;fa=+p[F>>3];ga=+p[H>>3];ha=+p[J>>3];L=ma+184|0;f[(a+64|0)>>2]=f[L>>2];f[(a+64|0)+4>>2]=f[L+4>>2];f[(a+64|0)+8>>2]=f[L+8>>2];f[(a+64|0)+12>>2]=f[L+12>>2];N=ma+200|0;P=ma+208|0;ia=+p[N>>3];ja=+p[P>>3];R=ma+216|0;f[a>>2]=f[R>>2];f[a+4>>2]=f[R+4>>2];f[a+8>>2]=f[R+8>>2];f[a+12>>2]=f[R+12>>2];b[a+16>>0]=b[R+16>>0]|0;ya=ma;Aa=na;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));ka=na+40|0;Ca=+p[ka>>3];p[ka>>3]=e;p[c>>3]=Ca;Q=na+48|0;Ca=+p[Q>>3];p[Q>>3]=+p[d>>3];p[d>>3]=Ca;O=na+56|0;Ca=+p[O>>3];p[O>>3]=+p[h>>3];p[h>>3]=Ca;M=na+64|0;Ca=+p[M>>3];p[M>>3]=+p[i>>3];p[i>>3]=Ca;K=na+72|0;Ca=+p[K>>3];p[K>>3]=+p[k>>3];p[k>>3]=Ca;I=na+80|0;Ca=+p[I>>3];p[I>>3]=+p[l>>3];p[l>>3]=Ca;G=na+88|0;E=f[G>>2]|0;f[G>>2]=V;f[m>>2]=E;E=na+92|0;C=f[E>>2]|0;f[E>>2]=f[n>>2];f[n>>2]=C;C=na+96|0;A=f[C>>2]|0;f[C>>2]=f[o>>2];f[o>>2]=A;A=na+100|0;y=f[A>>2]|0;f[A>>2]=f[q>>2];f[q>>2]=y;y=na+104|0;f[r>>2]=f[y>>2];w=na+108|0;f[s>>2]=f[w>>2];u=na+112|0;Ca=+p[u>>3];p[u>>3]=+p[t>>3];p[t>>3]=Ca;s=na+120|0;Ca=+p[s>>3];p[s>>3]=+p[v>>3];p[v>>3]=Ca;r=na+128|0;Ca=+p[r>>3];p[r>>3]=+p[x>>3];p[x>>3]=Ca;q=na+136|0;Ca=+p[q>>3];p[q>>3]=+p[z>>3];p[z>>3]=Ca;o=na+144|0;Ca=+p[o>>3];p[o>>3]=+p[B>>3];p[B>>3]=Ca;n=na+152|0;Ca=+p[n>>3];p[n>>3]=+p[D>>3];p[D>>3]=Ca;m=na+160|0;Ca=+p[m>>3];p[m>>3]=+p[F>>3];p[F>>3]=Ca;l=na+168|0;Ca=+p[l>>3];p[l>>3]=+p[H>>3];p[H>>3]=Ca;k=na+176|0;Ca=+p[k>>3];p[k>>3]=+p[J>>3];p[J>>3]=Ca;i=na+184|0;f[L>>2]=f[i>>2];f[L+4>>2]=f[i+4>>2];f[L+8>>2]=f[i+8>>2];f[L+12>>2]=f[i+12>>2];h=na+200|0;p[N>>3]=+p[h>>3];d=na+208|0;p[P>>3]=+p[d>>3];c=na+216|0;f[R>>2]=f[c>>2];f[R+4>>2]=f[c+4>>2];f[R+8>>2]=f[c+8>>2];f[R+12>>2]=f[c+12>>2];b[R+16>>0]=b[c+16>>0]|0;ya=na;Aa=a+24|0;Ba=ya+36|0;do{f[ya>>2]=f[Aa>>2];ya=ya+4|0;Aa=Aa+4|0}while((ya|0)<(Ba|0));p[ka>>3]=e;p[Q>>3]=g;p[O>>3]=j;p[M>>3]=S;p[K>>3]=T;p[I>>3]=U;f[G>>2]=V;f[E>>2]=W;f[C>>2]=X;f[A>>2]=Y;f[y>>2]=Z;f[w>>2]=_;p[u>>3]=$;p[s>>3]=aa;p[r>>3]=ba;p[q>>3]=ca;p[o>>3]=da;p[n>>3]=ea;p[m>>3]=fa;p[l>>3]=ga;p[k>>3]=ha;f[i>>2]=f[(a+64|0)>>2];f[i+4>>2]=f[(a+64|0)+4>>2];f[i+8>>2]=f[(a+64|0)+8>>2];f[i+12>>2]=f[(a+64|0)+12>>2];p[h>>3]=ia;p[d>>3]=ja;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];b[c+16>>0]=b[a+16>>0]|0;ra=la+1|0}}while(0);if(!ra){xa=B4a(ua,ma)|0;c=ma+240|0;if(B4a(c,ta)|0){za=110;f[a+6624>>2]=1;break a}if(xa){sa=c;f[a+6624>>2]=3;break a}}ta=ma;if(((ta-wa|0)/240|0|0)>=((va-ta|0)/240|0|0)){za=109;f[a+6624>>2]=1;break a}G3a(ua,ma);sa=ma+240|0}f[a+336>>2]=sa;f[a+592>>2]=ma;f[a+6520>>2]=xa;f[a+6544>>2]=ya;f[a+6560>>2]=Aa;f[a+6568>>2]=Ba;f[a+6576>>2]=za}function j4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0.0;za=f[a+432>>2]|0;O=f[a+1720>>2]|0;P=f[a+1784>>2]|0;ca=f[a+1808>>2]|0;da=f[a+1848>>2]|0;ea=f[a+1880>>2]|0;fa=f[a+1920>>2]|0;ga=f[a+1936>>2]|0;ha=f[a+1968>>2]|0;ia=f[a+1992>>2]|0;ja=f[a+2016>>2]|0;ka=f[a+2048>>2]|0;la=f[a+2064>>2]|0;ma=f[a+2096>>2]|0;na=f[a+2160>>2]|0;oa=f[a+2232>>2]|0;pa=f[a+2296>>2]|0;qa=f[a+2368>>2]|0;ra=f[a+2432>>2]|0;sa=f[a+2504>>2]|0;ta=f[a+2568>>2]|0;k=f[a+2640>>2]|0;ua=f[a+2648>>2]|0;va=f[a+2720>>2]|0;Aa=f[a+3032>>2]|0;m=f[a+3104>>2]|0;g=f[a+3112>>2]|0;h=f[a+3120>>2]|0;l=f[a+4176>>2]|0;wa=f[a+4832>>2]|0;xa=f[a+5368>>2]|0;ya=f[a+5936>>2]|0;Ba=f[a+6544>>2]|0;Da=f[a+6560>>2]|0;Ea=f[a+6568>>2]|0;Ca=f[a+6576>>2]|0;a:{do{i=1;if(i){i=0;if(g>>>0<h>>>0)c=m;else i=1}if(i)if(1){if(g>>>0<=h>>>0){e=+p[za+224>>3];d=+p[l>>3];if(e<d){c=m;break}if(!(e>d))if(A5a(za,k)|0){c=m;break}}if((m|0)==(k|0)){Ca=111;f[a+6632>>2]=2;f[a+6636>>2]=4;break a}i=za+224|0;c=m;while(1){g=~~+p[Aa>>3]>>>0;h=~~+p[c+216>>3]>>>0;if(g>>>0<h>>>0)break;if(g>>>0<=h>>>0){d=+p[i>>3];e=+p[c+224>>3];if(d<e)break;if(!(d>e))if(A5a(za,c)|0)break}c=c+240|0;if((c|0)==(k|0)){Ca=111;f[a+6632>>2]=2;f[a+6636>>2]=4;break a}}Ba=a+24|0;Da=c;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));q=c+40|0;D=c+48|0;g=c+56|0;d=+p[q>>3];e=+p[D>>3];j=+p[g>>3];h=c+64|0;i=c+72|0;l=c+80|0;Q=+p[h>>3];R=+p[i>>3];S=+p[l>>3];G=c+88|0;m=c+92|0;n=c+96|0;H=f[G>>2]|0;I=f[m>>2]|0;J=f[n>>2]|0;K=c+100|0;o=c+104|0;r=c+108|0;L=f[K>>2]|0;M=f[o>>2]|0;N=f[r>>2]|0;s=c+112|0;t=c+120|0;u=c+128|0;T=+p[s>>3];U=+p[t>>3];V=+p[u>>3];v=c+136|0;w=c+144|0;x=c+152|0;W=+p[v>>3];X=+p[w>>3];Y=+p[x>>3];y=c+160|0;z=c+168|0;A=c+176|0;Z=+p[y>>3];_=+p[z>>3];$=+p[A>>3];B=c+184|0;f[(a+64|0)>>2]=f[B>>2];f[(a+64|0)+4>>2]=f[B+4>>2];f[(a+64|0)+8>>2]=f[B+8>>2];f[(a+64|0)+12>>2]=f[B+12>>2];C=c+200|0;E=c+208|0;aa=+p[C>>3];ba=+p[E>>3];F=c+216|0;f[a>>2]=f[F>>2];f[a+4>>2]=f[F+4>>2];f[a+8>>2]=f[F+8>>2];f[a+12>>2]=f[F+12>>2];b[a+16>>0]=b[F+16>>0]|0;Ba=c;Da=k;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));Fa=+p[wa>>3];p[wa>>3]=d;p[q>>3]=Fa;Fa=+p[xa>>3];p[xa>>3]=+p[D>>3];p[D>>3]=Fa;Fa=+p[ya>>3];p[ya>>3]=+p[g>>3];p[g>>3]=Fa;Fa=+p[O>>3];p[O>>3]=+p[h>>3];p[h>>3]=Fa;Fa=+p[P>>3];p[P>>3]=+p[i>>3];p[i>>3]=Fa;Fa=+p[ca>>3];p[ca>>3]=+p[l>>3];p[l>>3]=Fa;Ba=f[da>>2]|0;f[da>>2]=H;f[G>>2]=Ba;Ba=f[ea>>2]|0;f[ea>>2]=f[m>>2];f[m>>2]=Ba;Ba=f[fa>>2]|0;f[fa>>2]=f[n>>2];f[n>>2]=Ba;Ba=f[ga>>2]|0;f[ga>>2]=f[K>>2];f[K>>2]=Ba;Ba=f[ha>>2]|0;f[ha>>2]=f[o>>2];f[o>>2]=Ba;f[r>>2]=f[ia>>2];Fa=+p[ja>>3];p[ja>>3]=+p[s>>3];p[s>>3]=Fa;Fa=+p[ka>>3];p[ka>>3]=+p[t>>3];p[t>>3]=Fa;Fa=+p[la>>3];p[la>>3]=+p[u>>3];p[u>>3]=Fa;Fa=+p[ma>>3];p[ma>>3]=+p[v>>3];p[v>>3]=Fa;Fa=+p[na>>3];p[na>>3]=+p[w>>3];p[w>>3]=Fa;Fa=+p[oa>>3];p[oa>>3]=+p[x>>3];p[x>>3]=Fa;Fa=+p[pa>>3];p[pa>>3]=+p[y>>3];p[y>>3]=Fa;Fa=+p[qa>>3];p[qa>>3]=+p[z>>3];p[z>>3]=Fa;Fa=+p[ra>>3];p[ra>>3]=+p[A>>3];p[A>>3]=Fa;f[B>>2]=f[sa>>2];f[B+4>>2]=f[sa+4>>2];f[B+8>>2]=f[sa+8>>2];f[B+12>>2]=f[sa+12>>2];Fa=+p[ta>>3];p[ta>>3]=+p[C>>3];p[C>>3]=Fa;p[E>>3]=+p[ua>>3];f[F>>2]=f[va>>2];f[F+4>>2]=f[va+4>>2];f[F+8>>2]=f[va+8>>2];f[F+12>>2]=f[va+12>>2];b[F+16>>0]=b[va+16>>0]|0;Ba=k;Da=a+24|0;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));p[wa>>3]=d;p[xa>>3]=e;p[ya>>3]=j;p[O>>3]=Q;p[P>>3]=R;p[ca>>3]=S;f[da>>2]=H;f[ea>>2]=I;f[fa>>2]=J;f[ga>>2]=L;f[ha>>2]=M;f[ia>>2]=N;p[ja>>3]=T;p[ka>>3]=U;p[la>>3]=V;p[ma>>3]=W;p[na>>3]=X;p[oa>>3]=Y;p[pa>>3]=Z;p[qa>>3]=_;p[ra>>3]=$;f[sa>>2]=f[(a+64|0)>>2];f[sa+4>>2]=f[(a+64|0)+4>>2];f[sa+8>>2]=f[(a+64|0)+8>>2];f[sa+12>>2]=f[(a+64|0)+12>>2];p[ta>>3]=aa;p[ua>>3]=ba;f[va>>2]=f[a>>2];f[va+4>>2]=f[a+4>>2];f[va+8>>2]=f[a+8>>2];f[va+12>>2]=f[a+12>>2];b[va+16>>0]=b[a+16>>0]|0;c=c+240|0}}while(0);if((c|0)==(k|0)){Ca=111;f[a+6632>>2]=2;f[a+6636>>2]=4;break a}oa=za+224|0;while(1){d=+p[Aa>>3];g=~~+p[c+216>>3]>>>0;b:do if(~~d>>>0>>>0>=g>>>0){j=d;i=~~d>>>0;h=g;while(1){if(i>>>0>h>>>0)d=j;else{d=+p[oa>>3];e=+p[c+224>>3];if(d<e)break b;if(d>e)d=j;else{if(A5a(za,c)|0)break b;d=+p[Aa>>3]}}g=c+240|0;i=~~d>>>0;h=~~+p[c+456>>3]>>>0;if(i>>>0<h>>>0){c=g;break}else{c=g;j=d}}}while(0);while(1){na=k+-240|0;g=~~+p[Aa>>3]>>>0;h=~~+p[k+-24>>3]>>>0;if(g>>>0<h>>>0){k=na;continue}if(g>>>0>h>>>0)break;d=+p[oa>>3];e=+p[k+-16>>3];if(d<e){k=na;continue}if(d>e)break;if(A5a(za,na)|0)k=na;else break}if(c>>>0>=na>>>0){za=c;f[a+6632>>2]=4;f[a+6636>>2]=5;break a}Ba=a+24|0;Da=c;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));g=c+40|0;h=c+48|0;i=c+56|0;d=+p[g>>3];e=+p[h>>3];j=+p[i>>3];l=c+64|0;m=c+72|0;n=c+80|0;Q=+p[l>>3];R=+p[m>>3];S=+p[n>>3];o=c+88|0;q=c+92|0;r=c+96|0;ga=f[o>>2]|0;ha=f[q>>2]|0;ia=f[r>>2]|0;s=c+100|0;t=c+104|0;u=c+108|0;ja=f[s>>2]|0;ka=f[t>>2]|0;la=f[u>>2]|0;v=c+112|0;x=c+120|0;z=c+128|0;T=+p[v>>3];U=+p[x>>3];V=+p[z>>3];B=c+136|0;D=c+144|0;F=c+152|0;W=+p[B>>3];X=+p[D>>3];Y=+p[F>>3];H=c+160|0;J=c+168|0;L=c+176|0;Z=+p[H>>3];_=+p[J>>3];$=+p[L>>3];N=c+184|0;f[(a+64|0)>>2]=f[N>>2];f[(a+64|0)+4>>2]=f[N+4>>2];f[(a+64|0)+8>>2]=f[N+8>>2];f[(a+64|0)+12>>2]=f[N+12>>2];P=c+200|0;da=c+208|0;aa=+p[P>>3];ba=+p[da>>3];fa=c+216|0;f[a>>2]=f[fa>>2];f[a+4>>2]=f[fa+4>>2];f[a+8>>2]=f[fa+8>>2];f[a+12>>2]=f[fa+12>>2];b[a+16>>0]=b[fa+16>>0]|0;Ba=c;Da=na;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));ma=k+-200|0;Fa=+p[ma>>3];p[ma>>3]=d;p[g>>3]=Fa;ea=k+-192|0;Fa=+p[ea>>3];p[ea>>3]=+p[h>>3];p[h>>3]=Fa;ca=k+-184|0;Fa=+p[ca>>3];p[ca>>3]=+p[i>>3];p[i>>3]=Fa;O=k+-176|0;Fa=+p[O>>3];p[O>>3]=+p[l>>3];p[l>>3]=Fa;M=k+-168|0;Fa=+p[M>>3];p[M>>3]=+p[m>>3];p[m>>3]=Fa;K=k+-160|0;Fa=+p[K>>3];p[K>>3]=+p[n>>3];p[n>>3]=Fa;I=k+-152|0;G=f[I>>2]|0;f[I>>2]=ga;f[o>>2]=G;G=k+-148|0;E=f[G>>2]|0;f[G>>2]=f[q>>2];f[q>>2]=E;E=k+-144|0;C=f[E>>2]|0;f[E>>2]=f[r>>2];f[r>>2]=C;C=k+-140|0;A=f[C>>2]|0;f[C>>2]=f[s>>2];f[s>>2]=A;A=k+-136|0;y=f[A>>2]|0;f[A>>2]=f[t>>2];f[t>>2]=y;y=k+-132|0;f[u>>2]=f[y>>2];w=k+-128|0;Fa=+p[w>>3];p[w>>3]=+p[v>>3];p[v>>3]=Fa;u=k+-120|0;Fa=+p[u>>3];p[u>>3]=+p[x>>3];p[x>>3]=Fa;t=k+-112|0;Fa=+p[t>>3];p[t>>3]=+p[z>>3];p[z>>3]=Fa;s=k+-104|0;Fa=+p[s>>3];p[s>>3]=+p[B>>3];p[B>>3]=Fa;r=k+-96|0;Fa=+p[r>>3];p[r>>3]=+p[D>>3];p[D>>3]=Fa;q=k+-88|0;Fa=+p[q>>3];p[q>>3]=+p[F>>3];p[F>>3]=Fa;o=k+-80|0;Fa=+p[o>>3];p[o>>3]=+p[H>>3];p[H>>3]=Fa;n=k+-72|0;Fa=+p[n>>3];p[n>>3]=+p[J>>3];p[J>>3]=Fa;m=k+-64|0;Fa=+p[m>>3];p[m>>3]=+p[L>>3];p[L>>3]=Fa;l=k+-56|0;f[N>>2]=f[l>>2];f[N+4>>2]=f[l+4>>2];f[N+8>>2]=f[l+8>>2];f[N+12>>2]=f[l+12>>2];i=k+-40|0;Fa=+p[i>>3];p[i>>3]=+p[P>>3];p[P>>3]=Fa;h=k+-32|0;p[da>>3]=+p[h>>3];g=k+-24|0;f[fa>>2]=f[g>>2];f[fa+4>>2]=f[g+4>>2];f[fa+8>>2]=f[g+8>>2];f[fa+12>>2]=f[g+12>>2];b[fa+16>>0]=b[g+16>>0]|0;Ba=na;Da=a+24|0;Ea=Ba+36|0;do{f[Ba>>2]=f[Da>>2];Ba=Ba+4|0;Da=Da+4|0}while((Ba|0)<(Ea|0));p[ma>>3]=d;p[ea>>3]=e;p[ca>>3]=j;p[O>>3]=Q;p[M>>3]=R;p[K>>3]=S;f[I>>2]=ga;f[G>>2]=ha;f[E>>2]=ia;f[C>>2]=ja;f[A>>2]=ka;f[y>>2]=la;p[w>>3]=T;p[u>>3]=U;p[t>>3]=V;p[s>>3]=W;p[r>>3]=X;p[q>>3]=Y;p[o>>3]=Z;p[n>>3]=_;p[m>>3]=$;f[l>>2]=f[(a+64|0)>>2];f[l+4>>2]=f[(a+64|0)+4>>2];f[l+8>>2]=f[(a+64|0)+8>>2];f[l+12>>2]=f[(a+64|0)+12>>2];p[i>>3]=aa;p[h>>3]=ba;f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[g+12>>2]=f[a+12>>2];b[g+16>>0]=b[a+16>>0]|0;k=na;c=c+240|0}}f[a+432>>2]=za;f[a+6544>>2]=Ba;f[a+6560>>2]=Da;f[a+6568>>2]=Ea;f[a+6576>>2]=Ca}function k4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0.0,la=0.0,ma=0.0,na=0.0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0.0;qa=f[a+352>>2]|0;ta=f[a+400>>2]|0;wa=f[a+1720>>2]|0;xa=f[a+1784>>2]|0;ya=f[a+1808>>2]|0;za=f[a+1848>>2]|0;Aa=f[a+1880>>2]|0;Ba=f[a+1920>>2]|0;Ca=f[a+1936>>2]|0;Da=f[a+1968>>2]|0;Ea=f[a+1992>>2]|0;Ga=f[a+2040>>2]|0;Ra=f[a+2640>>2]|0;Wa=f[a+3080>>2]|0;Xa=f[a+3584>>2]|0;Ya=f[a+4176>>2]|0;_a=f[a+4832>>2]|0;$a=f[a+5368>>2]|0;ab=f[a+5936>>2]|0;cb=f[a+6544>>2]|0;eb=f[a+6560>>2]|0;fb=f[a+6568>>2]|0;db=f[a+6576>>2]|0;a:{Fa=ta+-128|0;Ha=ta+-120|0;Ia=ta+-112|0;Ja=ta+-104|0;Ka=ta+-96|0;La=ta+-88|0;Ma=ta+-80|0;Na=ta+-72|0;Oa=ta+-64|0;Pa=ta+-56|0;Qa=ta+-40|0;Sa=ta+-32|0;Ta=ta+-24|0;pa=qa;while(1){ua=pa;b:while(1){Ua=ua;switch((Ga-Ua|0|0)/240|0|0){case 2:{db=5;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}case 3:{db=11;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}case 4:{db=12;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}case 5:{db=13;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}case 1:case 0:{db=111;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}default:{}}if((Ga-Ua|0|0)<1680){db=15;f[a+6640>>2]=2;f[a+6644>>2]=8;break a}Va=ua+((((Ga-Ua|0)>>>0)/480|0)*240|0)|0;if((Ga-Ua|0|0)>239760)sa=A4a(ua,ua+((((Ga-Ua|0)>>>0)/960|0)*240|0)|0,Va,Va+((((Ga-Ua|0)>>>0)/960|0)*240|0)|0,Ra)|0;else sa=b4a(ua,Va,Ra)|0;k=ua+216|0;c=~~+p[k>>3]>>>0;l=ua+((((Ga-Ua|0)>>>0)/480|0)*240|0)+216|0;d=~~+p[l>>3]>>>0;if(c>>>0<d>>>0){i=Ra;j=sa;break}if(c>>>0<=d>>>0){e=+p[ua+224>>3];g=+p[ua+((((Ga-Ua|0)>>>0)/480|0)*240|0)+224>>3];if(e<g){i=Ra;j=sa;break}if(!(e>g))if(A5a(ua,Va)|0){i=Ra;j=sa;break}}if((ua|0)!=(Wa|0)){h=ua+((((Ga-Ua|0)>>>0)/480|0)*240|0)+224|0;ra=Ra;Za=Wa;while(1){c=~~+p[ra+-24>>3]>>>0;d=~~+p[l>>3]>>>0;if(c>>>0<d>>>0){db=78;break b}if(c>>>0<=d>>>0){e=+p[ra+-16>>3];g=+p[h>>3];if(e<g){db=78;break b}if(!(e>g))if(A5a(Za,Va)|0){db=78;break b}}c=Za+-240|0;if((ua|0)==(c|0))break;else{ra=Za;Za=c}}}ba=ua+240|0;ca=~~+p[k>>3]>>>0;oa=~~+p[Xa>>3]>>>0;f[a+432>>2]=ua;f[a+1720>>2]=wa;f[a+1784>>2]=xa;f[a+1808>>2]=ya;f[a+1848>>2]=za;f[a+1880>>2]=Aa;f[a+1920>>2]=Ba;f[a+1936>>2]=Ca;f[a+1968>>2]=Da;f[a+1992>>2]=Ea;f[a+2016>>2]=Fa;f[a+2048>>2]=Ha;f[a+2064>>2]=Ia;f[a+2096>>2]=Ja;f[a+2160>>2]=Ka;f[a+2232>>2]=La;f[a+2296>>2]=Ma;f[a+2368>>2]=Na;f[a+2432>>2]=Oa;f[a+2504>>2]=Pa;f[a+2568>>2]=Qa;f[a+2640>>2]=Ra;f[a+2648>>2]=Sa;f[a+2720>>2]=Ta;f[a+3032>>2]=k;f[a+3104>>2]=ba;f[a+3112>>2]=ca;f[a+3120>>2]=oa;f[a+4176>>2]=Ya;f[a+4832>>2]=_a;f[a+5368>>2]=$a;f[a+5936>>2]=ab;f[a+6544>>2]=cb;f[a+6560>>2]=eb;f[a+6568>>2]=fb;f[a+6576>>2]=db;f[a+6632>>2]=0;f[a+6636>>2]=0;j4a(a);ua=f[a+432>>2]|0;cb=f[a+6544>>2]|0;eb=f[a+6560>>2]|0;fb=f[a+6568>>2]|0;db=f[a+6576>>2]|0;G=f[a+6632>>2]|0;D=f[a+6636>>2]|0;H=+n[a+6636>>2];f[a+6632>>2]=0;f[a+6636>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:{f[a+6640>>2]=2;f[a+6644>>2]=8;break a}}if((G|0)==3)continue;if((G|0)==4)switch(D|0){case 5:continue b}}if((db|0)==78){db=0;cb=a+24|0;eb=ua;fb=cb+36|0;do{f[cb>>2]=f[eb>>2];cb=cb+4|0;eb=eb+4|0}while((cb|0)<(fb|0));c=ua+40|0;d=ua+48|0;h=ua+56|0;e=+p[c>>3];g=+p[d>>3];V=+p[h>>3];i=ua+64|0;j=ua+72|0;k=ua+80|0;W=+p[i>>3];X=+p[j>>3];Y=+p[k>>3];l=ua+88|0;m=ua+92|0;o=ua+96|0;Z=f[l>>2]|0;_=f[m>>2]|0;$=f[o>>2]|0;q=ua+100|0;r=ua+104|0;s=ua+108|0;aa=f[q>>2]|0;ba=f[r>>2]|0;ca=f[s>>2]|0;t=ua+112|0;v=ua+120|0;x=ua+128|0;da=+p[t>>3];ea=+p[v>>3];fa=+p[x>>3];z=ua+136|0;B=ua+144|0;E=ua+152|0;ga=+p[z>>3];ha=+p[B>>3];ia=+p[E>>3];I=ua+160|0;K=ua+168|0;M=ua+176|0;ja=+p[I>>3];ka=+p[K>>3];la=+p[M>>3];O=ua+184|0;f[(a+64|0)>>2]=f[O>>2];f[(a+64|0)+4>>2]=f[O+4>>2];f[(a+64|0)+8>>2]=f[O+8>>2];f[(a+64|0)+12>>2]=f[O+12>>2];Q=ua+200|0;S=ua+208|0;ma=+p[Q>>3];na=+p[S>>3];U=ua+216|0;f[a>>2]=f[U>>2];f[a+4>>2]=f[U+4>>2];f[a+8>>2]=f[U+8>>2];f[a+12>>2]=f[U+12>>2];b[a+16>>0]=b[U+16>>0]|0;cb=ua;eb=Za;fb=cb+36|0;do{f[cb>>2]=f[eb>>2];cb=cb+4|0;eb=eb+4|0}while((cb|0)<(fb|0));oa=ra+-200|0;gb=+p[oa>>3];p[oa>>3]=e;p[c>>3]=gb;T=ra+-192|0;gb=+p[T>>3];p[T>>3]=+p[d>>3];p[d>>3]=gb;R=ra+-184|0;gb=+p[R>>3];p[R>>3]=+p[h>>3];p[h>>3]=gb;P=ra+-176|0;gb=+p[P>>3];p[P>>3]=+p[i>>3];p[i>>3]=gb;N=ra+-168|0;gb=+p[N>>3];p[N>>3]=+p[j>>3];p[j>>3]=gb;L=ra+-160|0;gb=+p[L>>3];p[L>>3]=+p[k>>3];p[k>>3]=gb;J=ra+-152|0;F=f[J>>2]|0;f[J>>2]=Z;f[l>>2]=F;F=ra+-148|0;C=f[F>>2]|0;f[F>>2]=f[m>>2];f[m>>2]=C;C=ra+-144|0;A=f[C>>2]|0;f[C>>2]=f[o>>2];f[o>>2]=A;A=ra+-140|0;y=f[A>>2]|0;f[A>>2]=f[q>>2];f[q>>2]=y;y=ra+-136|0;w=f[y>>2]|0;f[y>>2]=f[r>>2];f[r>>2]=w;w=ra+-132|0;f[s>>2]=f[w>>2];u=ra+-128|0;gb=+p[u>>3];p[u>>3]=+p[t>>3];p[t>>3]=gb;s=ra+-120|0;gb=+p[s>>3];p[s>>3]=+p[v>>3];p[v>>3]=gb;r=ra+-112|0;gb=+p[r>>3];p[r>>3]=+p[x>>3];p[x>>3]=gb;q=ra+-104|0;gb=+p[q>>3];p[q>>3]=+p[z>>3];p[z>>3]=gb;o=ra+-96|0;gb=+p[o>>3];p[o>>3]=+p[B>>3];p[B>>3]=gb;m=ra+-88|0;gb=+p[m>>3];p[m>>3]=+p[E>>3];p[E>>3]=gb;l=ra+-80|0;gb=+p[l>>3];p[l>>3]=+p[I>>3];p[I>>3]=gb;k=ra+-72|0;gb=+p[k>>3];p[k>>3]=+p[K>>3];p[K>>3]=gb;j=ra+-64|0;gb=+p[j>>3];p[j>>3]=+p[M>>3];p[M>>3]=gb;i=ra+-56|0;f[O>>2]=f[i>>2];f[O+4>>2]=f[i+4>>2];f[O+8>>2]=f[i+8>>2];f[O+12>>2]=f[i+12>>2];h=ra+-40|0;gb=+p[h>>3];p[h>>3]=+p[Q>>3];p[Q>>3]=gb;d=ra+-32|0;p[S>>3]=+p[d>>3];c=ra+-24|0;f[U>>2]=f[c>>2];f[U+4>>2]=f[c+4>>2];f[U+8>>2]=f[c+8>>2];f[U+12>>2]=f[c+12>>2];b[U+16>>0]=b[c+16>>0]|0;cb=Za;eb=a+24|0;fb=cb+36|0;do{f[cb>>2]=f[eb>>2];cb=cb+4|0;eb=eb+4|0}while((cb|0)<(fb|0));p[oa>>3]=e;p[T>>3]=g;p[R>>3]=V;p[P>>3]=W;p[N>>3]=X;p[L>>3]=Y;f[J>>2]=Z;f[F>>2]=_;f[C>>2]=$;f[A>>2]=aa;f[y>>2]=ba;f[w>>2]=ca;p[u>>3]=da;p[s>>3]=ea;p[r>>3]=fa;p[q>>3]=ga;p[o>>3]=ha;p[m>>3]=ia;p[l>>3]=ja;p[k>>3]=ka;p[j>>3]=la;f[i>>2]=f[(a+64|0)>>2];f[i+4>>2]=f[(a+64|0)+4>>2];f[i+8>>2]=f[(a+64|0)+8>>2];f[i+12>>2]=f[(a+64|0)+12>>2];p[h>>3]=ma;p[d>>3]=na;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];b[c+16>>0]=b[a+16>>0]|0;i=Za;j=sa+1|0}sa=ua+240|0;f[a+336>>2]=pa;f[a+400>>2]=ta;f[a+432>>2]=ua;f[a+496>>2]=i;f[a+520>>2]=j;f[a+592>>2]=va;f[a+2040>>2]=Ga;f[a+2784>>2]=Ua;f[a+3024>>2]=Va;f[a+5112>>2]=sa;f[a+6520>>2]=bb;f[a+6544>>2]=cb;f[a+6560>>2]=eb;f[a+6568>>2]=fb;f[a+6576>>2]=db;f[a+6624>>2]=0;f[a+6628>>2]=0;i4a(a);pa=f[a+336>>2]|0;va=f[a+592>>2]|0;bb=f[a+6520>>2]|0;cb=f[a+6544>>2]|0;eb=f[a+6560>>2]|0;fb=f[a+6568>>2]|0;db=f[a+6576>>2]|0;G=f[a+6624>>2]|0;D=f[a+6628>>2]|0;H=+n[a+6628>>2];f[a+6624>>2]=0;f[a+6628>>2]=0;if((G|0)==1)break;if((G|0)==3)continue}if((db|0)==109){db=0;G3a(va+240|0,ta);qa=ua;ta=va;f[a+6640>>2]=3;break a}else if((db|0)==110){db=0;if(bb){db=111;f[a+6640>>2]=1;break a}else{qa=ua;ta=va;f[a+6640>>2]=3;break a}}}f[a+352>>2]=qa;f[a+400>>2]=ta;f[a+432>>2]=ua;f[a+2016>>2]=Fa;f[a+2048>>2]=Ha;f[a+2064>>2]=Ia;f[a+2096>>2]=Ja;f[a+2160>>2]=Ka;f[a+2232>>2]=La;f[a+2296>>2]=Ma;f[a+2368>>2]=Na;f[a+2432>>2]=Oa;f[a+2504>>2]=Pa;f[a+2568>>2]=Qa;f[a+2648>>2]=Sa;f[a+2720>>2]=Ta;f[a+6544>>2]=cb;f[a+6560>>2]=eb;f[a+6568>>2]=fb;f[a+6576>>2]=db}function l4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0.0;v=f[a+400>>2]|0;za=f[a+432>>2]|0;$=f[a+1720>>2]|0;aa=f[a+1784>>2]|0;ba=f[a+1808>>2]|0;ca=f[a+1848>>2]|0;da=f[a+1880>>2]|0;ea=f[a+1920>>2]|0;fa=f[a+1936>>2]|0;ga=f[a+1968>>2]|0;ha=f[a+1992>>2]|0;ia=f[a+2016>>2]|0;ja=f[a+2048>>2]|0;ka=f[a+2064>>2]|0;la=f[a+2096>>2]|0;ma=f[a+2160>>2]|0;na=f[a+2232>>2]|0;oa=f[a+2296>>2]|0;pa=f[a+2368>>2]|0;qa=f[a+2432>>2]|0;ra=f[a+2504>>2]|0;sa=f[a+2568>>2]|0;ta=f[a+2640>>2]|0;ua=f[a+2648>>2]|0;va=f[a+2720>>2]|0;c=f[a+3584>>2]|0;e=f[a+4176>>2]|0;wa=f[a+4832>>2]|0;xa=f[a+5368>>2]|0;ya=f[a+5936>>2]|0;Aa=f[a+6544>>2]|0;Da=f[a+6560>>2]|0;Ea=f[a+6568>>2]|0;Ba=f[a+6576>>2]|0;Ca=f[a+6584>>2]|0;a:{if(Ca){Ca=0;if((Ba|0)==5){c=~~+p[c>>3]>>>0;d=~~+p[za+216>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){u=a;f[a+6648>>2]=5;break a}h=+p[e>>3];i=+p[za+224>>3];if(!(h<i)){if(h>i){u=a;f[a+6648>>2]=5;break a}if(!(A5a(ta,za)|0)){u=a;f[a+6648>>2]=5;break a}}}Aa=a+24|0;Da=za;Ea=Aa+36|0;do{f[Aa>>2]=f[Da>>2];Aa=Aa+4|0;Da=Da+4|0}while((Aa|0)<(Ea|0));m=za+40|0;B=za+48|0;c=za+56|0;h=+p[m>>3];i=+p[B>>3];E=+p[c>>3];d=za+64|0;e=za+72|0;g=za+80|0;F=+p[d>>3];G=+p[e>>3];H=+p[g>>3];I=za+88|0;j=za+92|0;k=za+96|0;J=f[I>>2]|0;K=f[j>>2]|0;L=f[k>>2]|0;M=za+100|0;l=za+104|0;n=za+108|0;N=f[M>>2]|0;O=f[l>>2]|0;P=f[n>>2]|0;o=za+112|0;q=za+120|0;r=za+128|0;Q=+p[o>>3];R=+p[q>>3];S=+p[r>>3];s=za+136|0;t=za+144|0;v=za+152|0;T=+p[s>>3];U=+p[t>>3];V=+p[v>>3];w=za+160|0;x=za+168|0;y=za+176|0;W=+p[w>>3];X=+p[x>>3];Y=+p[y>>3];z=za+184|0;f[(a+64|0)>>2]=f[z>>2];f[(a+64|0)+4>>2]=f[z+4>>2];f[(a+64|0)+8>>2]=f[z+8>>2];f[(a+64|0)+12>>2]=f[z+12>>2];A=za+200|0;C=za+208|0;Z=+p[A>>3];_=+p[C>>3];D=za+216|0;f[a>>2]=f[D>>2];f[a+4>>2]=f[D+4>>2];f[a+8>>2]=f[D+8>>2];f[a+12>>2]=f[D+12>>2];b[a+16>>0]=b[D+16>>0]|0;Aa=za;Da=ta;Ea=Aa+36|0;do{f[Aa>>2]=f[Da>>2];Aa=Aa+4|0;Da=Da+4|0}while((Aa|0)<(Ea|0));Fa=+p[wa>>3];p[wa>>3]=h;p[m>>3]=Fa;Fa=+p[xa>>3];p[xa>>3]=+p[B>>3];p[B>>3]=Fa;Fa=+p[ya>>3];p[ya>>3]=+p[c>>3];p[c>>3]=Fa;Fa=+p[$>>3];p[$>>3]=+p[d>>3];p[d>>3]=Fa;Fa=+p[aa>>3];p[aa>>3]=+p[e>>3];p[e>>3]=Fa;Fa=+p[ba>>3];p[ba>>3]=+p[g>>3];p[g>>3]=Fa;Aa=f[ca>>2]|0;f[ca>>2]=J;f[I>>2]=Aa;Aa=f[da>>2]|0;f[da>>2]=f[j>>2];f[j>>2]=Aa;Aa=f[ea>>2]|0;f[ea>>2]=f[k>>2];f[k>>2]=Aa;Aa=f[fa>>2]|0;f[fa>>2]=f[M>>2];f[M>>2]=Aa;Aa=f[ga>>2]|0;f[ga>>2]=f[l>>2];f[l>>2]=Aa;f[n>>2]=f[ha>>2];Fa=+p[ia>>3];p[ia>>3]=+p[o>>3];p[o>>3]=Fa;Fa=+p[ja>>3];p[ja>>3]=+p[q>>3];p[q>>3]=Fa;Fa=+p[ka>>3];p[ka>>3]=+p[r>>3];p[r>>3]=Fa;Fa=+p[la>>3];p[la>>3]=+p[s>>3];p[s>>3]=Fa;Fa=+p[ma>>3];p[ma>>3]=+p[t>>3];p[t>>3]=Fa;Fa=+p[na>>3];p[na>>3]=+p[v>>3];p[v>>3]=Fa;Fa=+p[oa>>3];p[oa>>3]=+p[w>>3];p[w>>3]=Fa;Fa=+p[pa>>3];p[pa>>3]=+p[x>>3];p[x>>3]=Fa;Fa=+p[qa>>3];p[qa>>3]=+p[y>>3];p[y>>3]=Fa;f[z>>2]=f[ra>>2];f[z+4>>2]=f[ra+4>>2];f[z+8>>2]=f[ra+8>>2];f[z+12>>2]=f[ra+12>>2];Fa=+p[sa>>3];p[sa>>3]=+p[A>>3];p[A>>3]=Fa;p[C>>3]=+p[ua>>3];f[D>>2]=f[va>>2];f[D+4>>2]=f[va+4>>2];f[D+8>>2]=f[va+8>>2];f[D+12>>2]=f[va+12>>2];b[D+16>>0]=b[va+16>>0]|0;Aa=ta;Da=a+24|0;Ea=Aa+36|0;do{f[Aa>>2]=f[Da>>2];Aa=Aa+4|0;Da=Da+4|0}while((Aa|0)<(Ea|0));p[wa>>3]=h;p[xa>>3]=i;p[ya>>3]=E;p[$>>3]=F;p[aa>>3]=G;p[ba>>3]=H;f[ca>>2]=J;f[da>>2]=K;f[ea>>2]=L;f[fa>>2]=N;f[ga>>2]=O;f[ha>>2]=P;p[ia>>3]=Q;p[ja>>3]=R;p[ka>>3]=S;p[la>>3]=T;p[ma>>3]=U;p[na>>3]=V;p[oa>>3]=W;p[pa>>3]=X;p[qa>>3]=Y;f[ra>>2]=f[(a+64|0)>>2];f[ra+4>>2]=f[(a+64|0)+4>>2];f[ra+8>>2]=f[(a+64|0)+8>>2];f[ra+12>>2]=f[(a+64|0)+12>>2];p[sa>>3]=Z;p[ua>>3]=_;f[va>>2]=f[a>>2];f[va+4>>2]=f[a+4>>2];f[va+8>>2]=f[a+8>>2];f[va+12>>2]=f[a+12>>2];b[va+16>>0]=b[a+16>>0]|0;u=a;f[a+6648>>2]=5;break a}else Ca=1}if(Ca){Ca=0;if((Ba|0)==11){b4a(za,za+240|0,ta)|0;u=a;f[a+6648>>2]=5;break a}else if((Ba|0)==12){z4a(za,za+240|0,za+480|0,ta)|0;u=a;f[a+6648>>2]=5;break a}else if((Ba|0)==13){A4a(za,za+240|0,za+480|0,za+720|0,ta)|0;u=a;f[a+6648>>2]=5;break a}else Ca=1}if(Ca){Ca=0;if((Ba|0)==15){d=za+480|0;b4a(za,za+240|0,d)|0;c=za+720|0;if((c|0)==(v|0)){u=a;f[a+6648>>2]=5;break a}j=(a+64|0)+40|0;k=(a+64|0)+64|0;l=(a+64|0)+88|0;m=(a+64|0)+100|0;n=(a+64|0)+112|0;o=(a+64|0)+136|0;q=(a+64|0)+160|0;r=(a+64|0)+184|0;s=(a+64|0)+200|0;t=(a+64|0)+216|0;while(1){e=~~+p[c+216>>3]>>>0;g=~~+p[d+216>>3]>>>0;if(e>>>0<g>>>0)Ba=22;else if(e>>>0<=g>>>0){h=+p[c+224>>3];i=+p[d+224>>3];if(h<i)Ba=22;else if(!(h>i))if(A5a(c,d)|0)Ba=22}if((Ba|0)==22){Ba=0;Aa=a+64|0;Da=c;Ea=Aa+36|0;do{f[Aa>>2]=f[Da>>2];Aa=Aa+4|0;Da=Da+4|0}while((Aa|0)<(Ea|0));f[a+408>>2]=c;f[a+416>>2]=d;f[a+432>>2]=za;f[a+1832>>2]=j;f[a+1840>>2]=k;f[a+1856>>2]=l;f[a+1864>>2]=m;f[a+1872>>2]=n;f[a+1888>>2]=o;f[a+1896>>2]=q;f[a+1904>>2]=r;f[a+1912>>2]=s;f[a+1928>>2]=t;f[a+6544>>2]=Aa;f[a+6560>>2]=Da;f[a+6568>>2]=Ea;f[a+6616>>2]=0;f[a+6620>>2]=0;h4a(a);Aa=f[a+6544>>2]|0;Da=f[a+6560>>2]|0;Ea=f[a+6568>>2]|0}d=c+240|0;if((d|0)==(v|0))break;else{ya=c;c=d;d=ya}}u=a;f[a+6648>>2]=5;break a}else Ca=1}if(Ca){Ca=0;if((Ba|0)==111)if(1){u=a;f[a+6648>>2]=5;break a}else Ca=1}}f[a+6544>>2]=Aa;f[a+6560>>2]=Da;f[a+6568>>2]=Ea;f[a+6576>>2]=Ba;f[a+6584>>2]=Ca}function m4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=f[a+352>>2]|0;z=f[a+392>>2]|0;c=f[a+1600>>2]|0;k=f[a+3408>>2]|0;l=f[a+3424>>2]|0;m=f[a+3432>>2]|0;A=f[a+3448>>2]|0;B=f[a+3456>>2]|0;a:{if(B){B=0;if((A|0)==15){Z3a(z,z+208|0,c)|0;u=a;f[a+3488>>2]=5;break a}else if((A|0)==16){_3a(z,z+208|0,z+416|0,c)|0;u=a;f[a+3488>>2]=5;break a}else if((A|0)==17){$3a(z,z+208|0,z+416|0,z+624|0,c)|0;u=a;f[a+3488>>2]=5;break a}else B=1}if(B){B=0;if((A|0)==19){d=z+416|0;Z3a(z,z+208|0,d)|0;c=z+624|0;if((c|0)==(y|0)){u=a;f[a+3488>>2]=5;break a}v=(a+24|0)+36|0;w=(a+24|0)+48|0;x=(a+24|0)+64|0;o=(a+24|0)+100|0;q=(a+24|0)+120|0;r=(a+24|0)+144|0;s=(a+24|0)+168|0;t=(a+24|0)+184|0;n=c;while(1){c=~~+p[n+184>>3]>>>0;h=~~+p[d+184>>3]>>>0;if(c>>>0<h>>>0)A=26;else if(c>>>0<=h>>>0){e=+p[n+192>>3];g=+p[d+192>>3];if(e<g)A=26;else if(!(e>g))if(B5a(n,d)|0)A=26}if((A|0)==26){A=0;k=a+24|0;l=n;m=k+36|0;do{f[k>>2]=f[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));m=n+36|0;f[v>>2]=f[m>>2];f[v+4>>2]=f[m+4>>2];f[v+8>>2]=f[m+8>>2];f[v>>2]=f[m>>2];f[((a+24|0)+40|0)>>2]=f[n+40>>2];f[((a+24|0)+44|0)>>2]=f[n+44>>2];m=n+48|0;f[w>>2]=f[m>>2];f[w+4>>2]=f[m+4>>2];f[w+8>>2]=f[m+8>>2];f[w>>2]=f[m>>2];f[((a+24|0)+52|0)>>2]=f[n+52>>2];f[((a+24|0)+56|0)>>2]=f[n+56>>2];m=n+64|0;f[x>>2]=f[m>>2];f[x+4>>2]=f[m+4>>2];f[x+8>>2]=f[m+8>>2];f[x+12>>2]=f[m+12>>2];f[x+16>>2]=f[m+16>>2];f[x+20>>2]=f[m+20>>2];p[x>>3]=+p[m>>3];p[((a+24|0)+72|0)>>3]=+p[n+72>>3];p[((a+24|0)+80|0)>>3]=+p[n+80>>3];m=n+88|0;f[((a+24|0)+96|0)>>2]=0;f[((a+24|0)+88|0)>>2]=f[m>>2];l=n+92|0;f[((a+24|0)+92|0)>>2]=f[l>>2];k=n+96|0;f[((a+24|0)+96|0)>>2]=f[k>>2];f[k>>2]=0;f[l>>2]=0;f[m>>2]=0;m=n+100|0;f[o>>2]=f[m>>2];f[o+4>>2]=f[m+4>>2];f[o+8>>2]=f[m+8>>2];f[o+12>>2]=f[m+12>>2];f[o+16>>2]=f[m+16>>2];m=n+120|0;f[q>>2]=f[m>>2];f[q+4>>2]=f[m+4>>2];f[q+8>>2]=f[m+8>>2];f[q+12>>2]=f[m+12>>2];f[q+16>>2]=f[m+16>>2];f[q+20>>2]=f[m+20>>2];p[q>>3]=+p[m>>3];p[((a+24|0)+128|0)>>3]=+p[n+128>>3];p[((a+24|0)+136|0)>>3]=+p[n+136>>3];m=n+144|0;f[r>>2]=f[m>>2];f[r+4>>2]=f[m+4>>2];f[r+8>>2]=f[m+8>>2];f[r+12>>2]=f[m+12>>2];f[r+16>>2]=f[m+16>>2];f[r+20>>2]=f[m+20>>2];p[r>>3]=+p[m>>3];p[((a+24|0)+152|0)>>3]=+p[n+152>>3];p[((a+24|0)+160|0)>>3]=+p[n+160>>3];m=n+168|0;f[s>>2]=f[m>>2];f[s+4>>2]=f[m+4>>2];f[s+8>>2]=f[m+8>>2];f[s+12>>2]=f[m+12>>2];p[s>>3]=+p[m>>3];p[((a+24|0)+176|0)>>3]=+p[n+176>>3];m=n+184|0;f[t>>2]=f[m>>2];f[t+4>>2]=f[m+4>>2];f[t+8>>2]=f[m+8>>2];f[t+12>>2]=f[m+12>>2];b[t+16>>0]=b[m+16>>0]|0;N3a(n,d)|0;b:do if((d|0)==(z|0))i=z;else{h=d;while(1){i=h;h=h+-208|0;c=~~+p[((a+24|0)+184|0)>>3]>>>0;d=~~+p[i+-24>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0)break b;e=+p[((a+24|0)+192|0)>>3];g=+p[i+-16>>3];if(!(e<g)){if(e>g)break b;if(!(B5a(a+24|0,h)|0))break b}}N3a(i,h)|0;if((h|0)==(z|0)){i=z;break}}}while(0);k=i;l=a+24|0;m=k+36|0;do{f[k>>2]=f[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));j=i+36|0;c=f[v>>2]|0;f[v>>2]=f[j>>2];f[j>>2]=c;j=f[((a+24|0)+40|0)>>2]|0;c=i+40|0;f[((a+24|0)+40|0)>>2]=f[c>>2];f[c>>2]=j;c=f[((a+24|0)+44|0)>>2]|0;j=i+44|0;f[((a+24|0)+44|0)>>2]=f[j>>2];f[j>>2]=c;j=i+48|0;c=f[w>>2]|0;f[w>>2]=f[j>>2];f[j>>2]=c;j=f[((a+24|0)+52|0)>>2]|0;c=i+52|0;f[((a+24|0)+52|0)>>2]=f[c>>2];f[c>>2]=j;c=f[((a+24|0)+56|0)>>2]|0;j=i+56|0;f[((a+24|0)+56|0)>>2]=f[j>>2];f[j>>2]=c;g=+p[((a+24|0)+64|0)>>3];j=i+64|0;p[((a+24|0)+64|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+72|0)>>3];j=i+72|0;p[((a+24|0)+72|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+80|0)>>3];j=i+80|0;p[((a+24|0)+80|0)>>3]=+p[j>>3];p[j>>3]=g;j=i+88|0;c=f[j>>2]|0;h=i+92|0;if(!c)c=i+96|0;else{d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);c=i+96|0;f[c>>2]=0;f[h>>2]=0;f[j>>2]=0}f[j>>2]=f[((a+24|0)+88|0)>>2];f[h>>2]=f[((a+24|0)+92|0)>>2];f[c>>2]=f[((a+24|0)+96|0)>>2];f[((a+24|0)+96|0)>>2]=0;f[((a+24|0)+92|0)>>2]=0;f[((a+24|0)+88|0)>>2]=0;j=i+100|0;f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];f[j+12>>2]=f[o+12>>2];f[j+16>>2]=f[o+16>>2];g=+p[((a+24|0)+120|0)>>3];j=i+120|0;p[((a+24|0)+120|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+128|0)>>3];j=i+128|0;p[((a+24|0)+128|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+136|0)>>3];j=i+136|0;p[((a+24|0)+136|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+144|0)>>3];j=i+144|0;p[((a+24|0)+144|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+152|0)>>3];j=i+152|0;p[((a+24|0)+152|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+160|0)>>3];j=i+160|0;p[((a+24|0)+160|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+168|0)>>3];j=i+168|0;p[((a+24|0)+168|0)>>3]=+p[j>>3];p[j>>3]=g;g=+p[((a+24|0)+176|0)>>3];j=i+176|0;p[((a+24|0)+176|0)>>3]=+p[j>>3];p[j>>3]=g;j=i+184|0;f[j>>2]=f[t>>2];f[j+4>>2]=f[t+4>>2];f[j+8>>2]=f[t+8>>2];f[j+12>>2]=f[t+12>>2];b[j+16>>0]=b[t+16>>0]|0}c=n+208|0;if((c|0)==(y|0))break;else{d=n;n=c}}u=a;f[a+3488>>2]=5;break a}else B=1}if(B){B=0;if((A|0)==144)if(1){u=a;f[a+3488>>2]=5;break a}else B=1}}f[a+3408>>2]=k;f[a+3424>>2]=l;f[a+3432>>2]=m;f[a+3448>>2]=A;f[a+3456>>2]=B}function n4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;J=f[a+288>>2]|0;y=f[a+312>>2]|0;z=f[a+336>>2]|0;K=f[a+352>>2]|0;L=f[a+392>>2]|0;H=f[a+440>>2]|0;I=f[a+464>>2]|0;D=f[a+536>>2]|0;M=f[a+1152>>2]|0;N=f[a+1424>>2]|0;B=f[a+1488>>2]|0;A=f[a+2280>>2]|0;O=f[a+3304>>2]|0;P=f[a+3408>>2]|0;R=f[a+3424>>2]|0;S=f[a+3432>>2]|0;Q=f[a+3448>>2]|0;a:{if((Q|0)==96){Q=0;P=a+24|0;R=L;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));c=f[L+36>>2]|0;d=f[L+40>>2]|0;i=f[L+44>>2]|0;j=f[L+48>>2]|0;k=f[L+52>>2]|0;l=f[L+56>>2]|0;e=+p[L+64>>3];g=+p[L+72>>3];h=+p[L+80>>3];P=L+88|0;m=f[P>>2]|0;R=L+92|0;n=f[R>>2]|0;S=L+96|0;o=f[S>>2]|0;f[S>>2]=0;f[R>>2]=0;f[P>>2]=0;P=L+100|0;f[(a+232|0)>>2]=f[P>>2];f[(a+232|0)+4>>2]=f[P+4>>2];f[(a+232|0)+8>>2]=f[P+8>>2];f[(a+232|0)+12>>2]=f[P+12>>2];f[(a+232|0)+16>>2]=f[P+16>>2];q=+p[L+120>>3];r=+p[L+128>>3];s=+p[L+136>>3];t=+p[L+144>>3];u=+p[L+152>>3];v=+p[L+160>>3];w=+p[L+168>>3];x=+p[L+176>>3];P=L+184|0;f[a>>2]=f[P>>2];f[a+4>>2]=f[P+4>>2];f[a+8>>2]=f[P+8>>2];f[a+12>>2]=f[P+12>>2];b[a+16>>0]=b[P+16>>0]|0;N3a(L,A)|0;P=A;R=a+24|0;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));f[y+-172>>2]=c;f[y+-168>>2]=d;f[y+-164>>2]=i;f[y+-160>>2]=j;f[y+-156>>2]=k;f[y+-152>>2]=l;p[y+-144>>3]=e;p[y+-136>>3]=g;p[y+-128>>3]=h;j=y+-120|0;c=f[j>>2]|0;i=y+-116|0;if(!c)c=y+-112|0;else{d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);c=y+-112|0;f[c>>2]=0;f[i>>2]=0;f[j>>2]=0}f[j>>2]=m;f[i>>2]=n;f[c>>2]=o;H=y+-108|0;f[H>>2]=f[(a+232|0)>>2];f[H+4>>2]=f[(a+232|0)+4>>2];f[H+8>>2]=f[(a+232|0)+8>>2];f[H+12>>2]=f[(a+232|0)+12>>2];f[H+16>>2]=f[(a+232|0)+16>>2];p[y+-88>>3]=q;p[y+-80>>3]=r;p[y+-72>>3]=s;p[y+-64>>3]=t;p[y+-56>>3]=u;p[y+-48>>3]=v;p[y+-40>>3]=w;p[y+-32>>3]=x;H=y+-24|0;f[H>>2]=f[a>>2];f[H+4>>2]=f[a+4>>2];f[H+8>>2]=f[a+8>>2];f[H+12>>2]=f[a+12>>2];b[H+16>>0]=b[a+16>>0]|0;H=A;I=z+1|0}c=L+208|0;b:{d=1;if(d)if(c>>>0<H>>>0){j=H;C=I;while(1){l=B+184|0;m=B+192|0;while(1){d=~~+p[c+184>>3]>>>0;h=+p[l>>3];if(d>>>0>=~~h>>>0>>>0){if(d>>>0>~~h>>>0>>>0){F=h;break}e=+p[c+192>>3];g=+p[m>>3];if(!(e<g)){if(e>g){F=h;break}if(!(B5a(c,B)|0)){Q=110;break}}}c=c+208|0}if((Q|0)==110){Q=0;F=+p[l>>3]}k=j+-208|0;d=~~+p[j+-24>>3]>>>0;i=~~F>>>0;c:do if(d>>>0<i>>>0){A=j;j=k}else{h=F;while(1){if(d>>>0>i>>>0)e=h;else{e=+p[j+-16>>3];g=+p[m>>3];if(e<g){A=j;j=k;break c}if(e>g)e=h;else{if(B5a(k,B)|0){A=j;j=k;break c}e=+p[l>>3]}}j=k+-208|0;d=~~+p[k+-24>>3]>>>0;i=~~e>>>0;if(d>>>0<i>>>0){A=k;break}else{E=k;k=j;h=e;j=E}}}while(0);if(c>>>0>j>>>0){E=B;D=c;break b}P=a+24|0;R=c;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));d=f[c+36>>2]|0;i=f[c+40>>2]|0;k=f[c+44>>2]|0;l=f[c+48>>2]|0;m=f[c+52>>2]|0;n=f[c+56>>2]|0;e=+p[c+64>>3];g=+p[c+72>>3];h=+p[c+80>>3];P=c+88|0;o=f[P>>2]|0;R=c+92|0;y=f[R>>2]|0;S=c+96|0;z=f[S>>2]|0;f[S>>2]=0;f[R>>2]=0;f[P>>2]=0;P=c+100|0;f[(a+232|0)>>2]=f[P>>2];f[(a+232|0)+4>>2]=f[P+4>>2];f[(a+232|0)+8>>2]=f[P+8>>2];f[(a+232|0)+12>>2]=f[P+12>>2];f[(a+232|0)+16>>2]=f[P+16>>2];q=+p[c+120>>3];r=+p[c+128>>3];s=+p[c+136>>3];t=+p[c+144>>3];u=+p[c+152>>3];v=+p[c+160>>3];w=+p[c+168>>3];x=+p[c+176>>3];P=c+184|0;f[a>>2]=f[P>>2];f[a+4>>2]=f[P+4>>2];f[a+8>>2]=f[P+8>>2];f[a+12>>2]=f[P+12>>2];b[a+16>>0]=b[P+16>>0]|0;N3a(c,j)|0;P=j;R=a+24|0;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));f[A+-172>>2]=d;f[A+-168>>2]=i;f[A+-164>>2]=k;f[A+-160>>2]=l;f[A+-156>>2]=m;f[A+-152>>2]=n;p[A+-144>>3]=e;p[A+-136>>3]=g;p[A+-128>>3]=h;l=A+-120|0;d=f[l>>2]|0;k=A+-116|0;if(!d)d=A+-112|0;else{i=f[k>>2]|0;if((i|0)!=(d|0))f[k>>2]=i+(~(((i+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);d=A+-112|0;f[d>>2]=0;f[k>>2]=0;f[l>>2]=0}f[l>>2]=o;f[k>>2]=y;f[d>>2]=z;E=A+-108|0;f[E>>2]=f[(a+232|0)>>2];f[E+4>>2]=f[(a+232|0)+4>>2];f[E+8>>2]=f[(a+232|0)+8>>2];f[E+12>>2]=f[(a+232|0)+12>>2];f[E+16>>2]=f[(a+232|0)+16>>2];p[A+-88>>3]=q;p[A+-80>>3]=r;p[A+-72>>3]=s;p[A+-64>>3]=t;p[A+-56>>3]=u;p[A+-48>>3]=v;p[A+-40>>3]=w;p[A+-32>>3]=x;E=A+-24|0;f[E>>2]=f[a>>2];f[E+4>>2]=f[a+4>>2];f[E+8>>2]=f[a+8>>2];f[E+12>>2]=f[a+12>>2];b[E+16>>0]=b[a+16>>0]|0;B=(B|0)==(c|0)?j:B;c=c+208|0;C=C+1|0}}else d=1;if(d)if(1){E=B;C=I;D=c}}do{c=1;if(c){c=0;if((D|0)==(E|0))G=C;else c=1}if(c)if(1){c=~~+p[E+184>>3]>>>0;d=~~+p[D+184>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){G=C;break}e=+p[E+192>>3];g=+p[D+192>>3];if(!(e<g)){if(e>g){G=C;break}if(!(B5a(E,D)|0)){G=C;break}}}P=a+24|0;R=D;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));c=f[D+36>>2]|0;d=f[D+40>>2]|0;i=f[D+44>>2]|0;j=f[D+48>>2]|0;k=f[D+52>>2]|0;l=f[D+56>>2]|0;e=+p[D+64>>3];g=+p[D+72>>3];h=+p[D+80>>3];P=D+88|0;m=f[P>>2]|0;R=D+92|0;n=f[R>>2]|0;S=D+96|0;o=f[S>>2]|0;f[S>>2]=0;f[R>>2]=0;f[P>>2]=0;P=D+100|0;f[(a+232|0)>>2]=f[P>>2];f[(a+232|0)+4>>2]=f[P+4>>2];f[(a+232|0)+8>>2]=f[P+8>>2];f[(a+232|0)+12>>2]=f[P+12>>2];f[(a+232|0)+16>>2]=f[P+16>>2];q=+p[D+120>>3];r=+p[D+128>>3];s=+p[D+136>>3];t=+p[D+144>>3];u=+p[D+152>>3];v=+p[D+160>>3];w=+p[D+168>>3];x=+p[D+176>>3];P=D+184|0;f[a>>2]=f[P>>2];f[a+4>>2]=f[P+4>>2];f[a+8>>2]=f[P+8>>2];f[a+12>>2]=f[P+12>>2];b[a+16>>0]=b[P+16>>0]|0;N3a(D,E)|0;P=E;R=a+24|0;S=P+36|0;do{f[P>>2]=f[R>>2];P=P+4|0;R=R+4|0}while((P|0)<(S|0));f[E+36>>2]=c;f[E+40>>2]=d;f[E+44>>2]=i;f[E+48>>2]=j;f[E+52>>2]=k;f[E+56>>2]=l;p[E+64>>3]=e;p[E+72>>3]=g;p[E+80>>3]=h;j=E+88|0;c=f[j>>2]|0;i=E+92|0;if(!c)c=E+96|0;else{d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);c=E+96|0;f[c>>2]=0;f[i>>2]=0;f[j>>2]=0}f[j>>2]=m;f[i>>2]=n;f[c>>2]=o;G=E+100|0;f[G>>2]=f[(a+232|0)>>2];f[G+4>>2]=f[(a+232|0)+4>>2];f[G+8>>2]=f[(a+232|0)+8>>2];f[G+12>>2]=f[(a+232|0)+12>>2];f[G+16>>2]=f[(a+232|0)+16>>2];p[E+120>>3]=q;p[E+128>>3]=r;p[E+136>>3]=s;p[E+144>>3]=t;p[E+152>>3]=u;p[E+160>>3]=v;p[E+168>>3]=w;p[E+176>>3]=x;G=E+184|0;f[G>>2]=f[a>>2];f[G+4>>2]=f[a+4>>2];f[G+8>>2]=f[a+8>>2];f[G+12>>2]=f[a+12>>2];b[G+16>>0]=b[a+16>>0]|0;G=C+1|0}}while(0);if(!G){O=a4a(L,D)|0;c=D+208|0;if(a4a(c,K)|0){Q=143;f[a+3496>>2]=1;break a}if(O){J=c;f[a+3496>>2]=3;break a}}K=D;if(((K-N|0)/208|0|0)>=((M-K|0)/208|0|0)){Q=142;f[a+3496>>2]=1;break a}M3a(L,D);J=D+208|0}f[a+288>>2]=J;f[a+440>>2]=H;f[a+464>>2]=I;f[a+536>>2]=D;f[a+3304>>2]=O;f[a+3408>>2]=P;f[a+3424>>2]=R;f[a+3432>>2]=S;f[a+3448>>2]=Q}function o4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;W=f[a+312>>2]|0;X=f[a+392>>2]|0;J=f[a+600>>2]|0;K=f[a+648>>2]|0;L=f[a+688>>2]|0;M=f[a+824>>2]|0;A=f[a+832>>2]|0;B=f[a+864>>2]|0;C=f[a+888>>2]|0;D=f[a+920>>2]|0;E=f[a+944>>2]|0;F=f[a+968>>2]|0;N=f[a+1016>>2]|0;O=f[a+1032>>2]|0;P=f[a+1064>>2]|0;Q=f[a+1096>>2]|0;g=f[a+1152>>2]|0;R=f[a+1160>>2]|0;S=f[a+1216>>2]|0;T=f[a+1280>>2]|0;U=f[a+1312>>2]|0;V=f[a+1360>>2]|0;h=f[a+1424>>2]|0;m=f[a+1488>>2]|0;Y=f[a+1496>>2]|0;n=f[a+1512>>2]|0;k=f[a+1600>>2]|0;j=f[a+2024>>2]|0;Z=f[a+2280>>2]|0;o=f[a+2496>>2]|0;q=f[a+2936>>2]|0;G=f[a+3288>>2]|0;H=f[a+3352>>2]|0;I=f[a+3376>>2]|0;_=f[a+3408>>2]|0;aa=f[a+3424>>2]|0;ba=f[a+3432>>2]|0;$=f[a+3448>>2]|0;a:{if((X|0)!=(j|0)){l=X+((((g-h|0)>>>0)/416|0)*208|0)+192|0;W=k;Z=j;while(1){g=~~+p[W+-24>>3]>>>0;h=~~+p[n>>3]>>>0;if(g>>>0<h>>>0){$=96;f[a+3504>>2]=2;f[a+3508>>2]=4;break a}if(g>>>0<=h>>>0){d=+p[W+-16>>3];e=+p[l>>3];if(d<e){$=96;f[a+3504>>2]=2;f[a+3508>>2]=4;break a}if(!(d>e))if(B5a(Z,m)|0){$=96;f[a+3504>>2]=2;f[a+3508>>2]=4;break a}}g=Z+-208|0;if((X|0)==(g|0))break;else{W=Z;Z=g}}}l=X+208|0;j=~~+p[Y>>3]>>>0;g=~~+p[o>>3]>>>0;do{h=1;if(h){h=0;if(j>>>0<g>>>0)c=l;else h=1}if(h)if(1){if(j>>>0<=g>>>0){e=+p[X+192>>3];d=+p[q>>3];if(e<d){c=l;break}if(!(e>d))if(B5a(X,k)|0){c=l;break}}if((l|0)==(k|0)){$=144;f[a+3504>>2]=2;f[a+3508>>2]=7;break a}j=X+192|0;c=l;while(1){g=~~+p[Y>>3]>>>0;h=~~+p[c+184>>3]>>>0;if(g>>>0<h>>>0)break;if(g>>>0<=h>>>0){d=+p[j>>3];e=+p[c+192>>3];if(d<e)break;if(!(d>e))if(B5a(X,c)|0)break}c=c+208|0;if((c|0)==(k|0)){$=144;f[a+3504>>2]=2;f[a+3508>>2]=7;break a}}_=a+24|0;aa=c;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));g=f[c+36>>2]|0;h=f[c+40>>2]|0;j=f[c+44>>2]|0;l=f[c+48>>2]|0;m=f[c+52>>2]|0;n=f[c+56>>2]|0;d=+p[c+64>>3];e=+p[c+72>>3];i=+p[c+80>>3];_=c+88|0;o=f[_>>2]|0;aa=c+92|0;q=f[aa>>2]|0;ba=c+96|0;r=f[ba>>2]|0;f[ba>>2]=0;f[aa>>2]=0;f[_>>2]=0;_=c+100|0;f[(a+232|0)>>2]=f[_>>2];f[(a+232|0)+4>>2]=f[_+4>>2];f[(a+232|0)+8>>2]=f[_+8>>2];f[(a+232|0)+12>>2]=f[_+12>>2];f[(a+232|0)+16>>2]=f[_+16>>2];s=+p[c+120>>3];t=+p[c+128>>3];u=+p[c+136>>3];v=+p[c+144>>3];w=+p[c+152>>3];x=+p[c+160>>3];y=+p[c+168>>3];z=+p[c+176>>3];_=c+184|0;f[a>>2]=f[_>>2];f[a+4>>2]=f[_+4>>2];f[a+8>>2]=f[_+8>>2];f[a+12>>2]=f[_+12>>2];b[a+16>>0]=b[_+16>>0]|0;N3a(c,k)|0;_=k;aa=a+24|0;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));f[G>>2]=g;f[H>>2]=h;f[I>>2]=j;f[A>>2]=l;f[B>>2]=m;f[C>>2]=n;p[D>>3]=d;p[E>>3]=e;p[F>>3]=i;g=f[N>>2]|0;if(g|0){h=f[J>>2]|0;if((h|0)!=(g|0))f[J>>2]=h+(~(((h+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);f[K>>2]=0;f[J>>2]=0;f[N>>2]=0}f[N>>2]=o;f[J>>2]=q;f[K>>2]=r;f[L>>2]=f[(a+232|0)>>2];f[L+4>>2]=f[(a+232|0)+4>>2];f[L+8>>2]=f[(a+232|0)+8>>2];f[L+12>>2]=f[(a+232|0)+12>>2];f[L+16>>2]=f[(a+232|0)+16>>2];p[O>>3]=s;p[P>>3]=t;p[Q>>3]=u;p[R>>3]=v;p[S>>3]=w;p[T>>3]=x;p[U>>3]=y;p[V>>3]=z;f[M>>2]=f[a>>2];f[M+4>>2]=f[a+4>>2];f[M+8>>2]=f[a+8>>2];f[M+12>>2]=f[a+12>>2];b[M+16>>0]=b[a+16>>0]|0;c=c+208|0}}while(0);if((c|0)==(k|0)){$=144;f[a+3504>>2]=2;f[a+3508>>2]=7;break a}B=X+192|0;while(1){d=+p[Y>>3];g=~~+p[c+184>>3]>>>0;b:do if(~~d>>>0>>>0>=g>>>0){j=~~d>>>0;i=d;while(1){if(j>>>0>g>>>0)d=i;else{d=+p[B>>3];e=+p[c+192>>3];if(d<e)break b;if(d>e)d=i;else{if(B5a(X,c)|0)break b;d=+p[Y>>3]}}h=c+208|0;j=~~d>>>0;g=~~+p[c+392>>3]>>>0;if(j>>>0<g>>>0){c=h;break}else{c=h;i=d}}}while(0);while(1){A=k+-208|0;g=~~+p[Y>>3]>>>0;h=~~+p[k+-24>>3]>>>0;if(g>>>0<h>>>0){k=A;continue}if(g>>>0>h>>>0)break;d=+p[B>>3];e=+p[k+-16>>3];if(d<e){k=A;continue}if(d>e)break;if(B5a(X,A)|0)k=A;else break}if(c>>>0>=A>>>0){X=c;f[a+3504>>2]=4;f[a+3508>>2]=8;break a}_=a+24|0;aa=c;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));g=f[c+36>>2]|0;h=f[c+40>>2]|0;j=f[c+44>>2]|0;l=f[c+48>>2]|0;m=f[c+52>>2]|0;n=f[c+56>>2]|0;d=+p[c+64>>3];e=+p[c+72>>3];i=+p[c+80>>3];_=c+88|0;o=f[_>>2]|0;aa=c+92|0;q=f[aa>>2]|0;ba=c+96|0;r=f[ba>>2]|0;f[ba>>2]=0;f[aa>>2]=0;f[_>>2]=0;_=c+100|0;f[(a+232|0)>>2]=f[_>>2];f[(a+232|0)+4>>2]=f[_+4>>2];f[(a+232|0)+8>>2]=f[_+8>>2];f[(a+232|0)+12>>2]=f[_+12>>2];f[(a+232|0)+16>>2]=f[_+16>>2];s=+p[c+120>>3];t=+p[c+128>>3];u=+p[c+136>>3];v=+p[c+144>>3];w=+p[c+152>>3];x=+p[c+160>>3];y=+p[c+168>>3];z=+p[c+176>>3];_=c+184|0;f[a>>2]=f[_>>2];f[a+4>>2]=f[_+4>>2];f[a+8>>2]=f[_+8>>2];f[a+12>>2]=f[_+12>>2];b[a+16>>0]=b[_+16>>0]|0;N3a(c,A)|0;_=A;aa=a+24|0;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));f[k+-172>>2]=g;f[k+-168>>2]=h;f[k+-164>>2]=j;f[k+-160>>2]=l;f[k+-156>>2]=m;f[k+-152>>2]=n;p[k+-144>>3]=d;p[k+-136>>3]=e;p[k+-128>>3]=i;l=k+-120|0;g=f[l>>2]|0;j=k+-116|0;if(!g)g=k+-112|0;else{h=f[j>>2]|0;if((h|0)!=(g|0))f[j>>2]=h+(~(((h+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);g=k+-112|0;f[g>>2]=0;f[j>>2]=0;f[l>>2]=0}f[l>>2]=o;f[j>>2]=q;f[g>>2]=r;V=k+-108|0;f[V>>2]=f[(a+232|0)>>2];f[V+4>>2]=f[(a+232|0)+4>>2];f[V+8>>2]=f[(a+232|0)+8>>2];f[V+12>>2]=f[(a+232|0)+12>>2];f[V+16>>2]=f[(a+232|0)+16>>2];p[k+-88>>3]=s;p[k+-80>>3]=t;p[k+-72>>3]=u;p[k+-64>>3]=v;p[k+-56>>3]=w;p[k+-48>>3]=x;p[k+-40>>3]=y;p[k+-32>>3]=z;k=k+-24|0;f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[k+12>>2]=f[a+12>>2];b[k+16>>0]=b[a+16>>0]|0;k=A;c=c+208|0}}f[a+312>>2]=W;f[a+392>>2]=X;f[a+2280>>2]=Z;f[a+3408>>2]=_;f[a+3424>>2]=aa;f[a+3432>>2]=ba;f[a+3448>>2]=$}function p4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0;F=f[a+224>>2]|0;u=f[a+248>>2]|0;v=f[a+272>>2]|0;G=f[a+288>>2]|0;H=f[a+320>>2]|0;D=f[a+384>>2]|0;E=f[a+408>>2]|0;z=f[a+480>>2]|0;I=f[a+1056>>2]|0;x=f[a+1072>>2]|0;J=f[a+1256>>2]|0;w=f[a+1608>>2]|0;K=f[a+2264>>2]|0;L=f[a+2504>>2]|0;N=f[a+2520>>2]|0;O=f[a+2528>>2]|0;M=f[a+2536>>2]|0;a:{if((M|0)==78){M=0;L=a+24|0;N=H;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));c=H+40|0;d=H+48|0;i=H+56|0;e=+p[c>>3];g=+p[d>>3];h=+p[i>>3];j=H+64|0;f[(a+64|0)>>2]=f[j>>2];f[(a+64|0)+4>>2]=f[j+4>>2];f[(a+64|0)+8>>2]=f[j+8>>2];f[(a+64|0)+12>>2]=f[j+12>>2];l=H+80|0;n=H+88|0;r=+p[l>>3];s=+p[n>>3];q=H+96|0;f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[a+12>>2]=f[q+12>>2];b[a+16>>0]=b[q+16>>0]|0;L=H;N=w;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));t=u+-80|0;P=+p[t>>3];p[t>>3]=e;p[c>>3]=P;o=u+-72|0;P=+p[o>>3];p[o>>3]=+p[d>>3];p[d>>3]=P;m=u+-64|0;P=+p[m>>3];p[m>>3]=+p[i>>3];p[i>>3]=P;k=u+-56|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];i=u+-40|0;P=+p[i>>3];p[i>>3]=+p[l>>3];p[l>>3]=P;d=u+-32|0;p[n>>3]=+p[d>>3];c=u+-24|0;f[q>>2]=f[c>>2];f[q+4>>2]=f[c+4>>2];f[q+8>>2]=f[c+8>>2];f[q+12>>2]=f[c+12>>2];b[q+16>>0]=b[c+16>>0]|0;L=w;N=a+24|0;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));p[t>>3]=e;p[o>>3]=g;p[m>>3]=h;f[k>>2]=f[(a+64|0)>>2];f[k+4>>2]=f[(a+64|0)+4>>2];f[k+8>>2]=f[(a+64|0)+8>>2];f[k+12>>2]=f[(a+64|0)+12>>2];p[i>>3]=r;p[d>>3]=s;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];b[c+16>>0]=b[a+16>>0]|0;D=w;E=v+1|0}c=H+120|0;b:{d=1;if(d)if(c>>>0<D>>>0){j=D;y=E;while(1){l=x+96|0;m=x+104|0;while(1){d=~~+p[c+96>>3]>>>0;h=+p[l>>3];if(d>>>0>=~~h>>>0>>>0){if(d>>>0>~~h>>>0>>>0){B=h;break}e=+p[c+104>>3];g=+p[m>>3];if(!(e<g)){if(e>g){B=h;break}if(!(C5a(c,x)|0)){M=87;break}}}c=c+120|0}if((M|0)==87){M=0;B=+p[l>>3]}k=j+-120|0;d=~~+p[j+-24>>3]>>>0;i=~~B>>>0;c:do if(d>>>0<i>>>0){w=j;j=k}else{h=B;while(1){if(d>>>0>i>>>0)e=h;else{e=+p[j+-16>>3];g=+p[m>>3];if(e<g){w=j;j=k;break c}if(e>g)e=h;else{if(C5a(k,x)|0){w=j;j=k;break c}e=+p[l>>3]}}j=k+-120|0;d=~~+p[k+-24>>3]>>>0;i=~~e>>>0;if(d>>>0<i>>>0){w=k;break}else{A=k;k=j;h=e;j=A}}}while(0);if(c>>>0>j>>>0){A=x;z=c;break b}L=a+24|0;N=c;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));d=c+40|0;i=c+48|0;k=c+56|0;e=+p[d>>3];g=+p[i>>3];h=+p[k>>3];l=c+64|0;f[(a+64|0)>>2]=f[l>>2];f[(a+64|0)+4>>2]=f[l+4>>2];f[(a+64|0)+8>>2]=f[l+8>>2];f[(a+64|0)+12>>2]=f[l+12>>2];n=c+80|0;q=c+88|0;r=+p[n>>3];s=+p[q>>3];u=c+96|0;f[a>>2]=f[u>>2];f[a+4>>2]=f[u+4>>2];f[a+8>>2]=f[u+8>>2];f[a+12>>2]=f[u+12>>2];b[a+16>>0]=b[u+16>>0]|0;L=c;N=j;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));v=w+-80|0;P=+p[v>>3];p[v>>3]=e;p[d>>3]=P;t=w+-72|0;P=+p[t>>3];p[t>>3]=+p[i>>3];p[i>>3]=P;o=w+-64|0;P=+p[o>>3];p[o>>3]=+p[k>>3];p[k>>3]=P;m=w+-56|0;f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[l+12>>2]=f[m+12>>2];k=w+-40|0;P=+p[k>>3];p[k>>3]=+p[n>>3];p[n>>3]=P;i=w+-32|0;p[q>>3]=+p[i>>3];d=w+-24|0;f[u>>2]=f[d>>2];f[u+4>>2]=f[d+4>>2];f[u+8>>2]=f[d+8>>2];f[u+12>>2]=f[d+12>>2];b[u+16>>0]=b[d+16>>0]|0;L=j;N=a+24|0;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));p[v>>3]=e;p[t>>3]=g;p[o>>3]=h;f[m>>2]=f[(a+64|0)>>2];f[m+4>>2]=f[(a+64|0)+4>>2];f[m+8>>2]=f[(a+64|0)+8>>2];f[m+12>>2]=f[(a+64|0)+12>>2];p[k>>3]=r;p[i>>3]=s;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];b[d+16>>0]=b[a+16>>0]|0;x=(x|0)==(c|0)?j:x;c=c+120|0;y=y+1|0}}else d=1;if(d)if(1){A=x;y=E;z=c}}do{c=1;if(c){c=0;if((z|0)==(A|0))C=y;else c=1}if(c)if(1){c=~~+p[A+96>>3]>>>0;d=~~+p[z+96>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){C=y;break}e=+p[A+104>>3];g=+p[z+104>>3];if(!(e<g)){if(e>g){C=y;break}if(!(C5a(A,z)|0)){C=y;break}}}L=a+24|0;N=z;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));c=z+40|0;d=z+48|0;i=z+56|0;e=+p[c>>3];g=+p[d>>3];h=+p[i>>3];j=z+64|0;f[(a+64|0)>>2]=f[j>>2];f[(a+64|0)+4>>2]=f[j+4>>2];f[(a+64|0)+8>>2]=f[j+8>>2];f[(a+64|0)+12>>2]=f[j+12>>2];l=z+80|0;n=z+88|0;r=+p[l>>3];s=+p[n>>3];q=z+96|0;f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[a+12>>2]=f[q+12>>2];b[a+16>>0]=b[q+16>>0]|0;L=z;N=A;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));t=A+40|0;P=+p[t>>3];p[t>>3]=e;p[c>>3]=P;o=A+48|0;P=+p[o>>3];p[o>>3]=+p[d>>3];p[d>>3]=P;m=A+56|0;P=+p[m>>3];p[m>>3]=+p[i>>3];p[i>>3]=P;k=A+64|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];i=A+80|0;p[l>>3]=+p[i>>3];d=A+88|0;p[n>>3]=+p[d>>3];c=A+96|0;f[q>>2]=f[c>>2];f[q+4>>2]=f[c+4>>2];f[q+8>>2]=f[c+8>>2];f[q+12>>2]=f[c+12>>2];b[q+16>>0]=b[c+16>>0]|0;L=A;N=a+24|0;O=L+36|0;do{f[L>>2]=f[N>>2];L=L+4|0;N=N+4|0}while((L|0)<(O|0));p[t>>3]=e;p[o>>3]=g;p[m>>3]=h;f[k>>2]=f[(a+64|0)>>2];f[k+4>>2]=f[(a+64|0)+4>>2];f[k+8>>2]=f[(a+64|0)+8>>2];f[k+12>>2]=f[(a+64|0)+12>>2];p[i>>3]=r;p[d>>3]=s;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];b[c+16>>0]=b[a+16>>0]|0;C=y+1|0}}while(0);if(!C){K=Y3a(H,z)|0;c=z+120|0;if(Y3a(c,G)|0){M=110;f[a+2576>>2]=1;break a}if(K){F=c;f[a+2576>>2]=3;break a}}G=z;if(((G-I|0)/120|0|0)>=((J-G|0)/120|0|0)){M=109;f[a+2576>>2]=1;break a}Q3a(H,z);F=z+120|0}f[a+224>>2]=F;f[a+384>>2]=D;f[a+408>>2]=E;f[a+480>>2]=z;f[a+2264>>2]=K;f[a+2504>>2]=L;f[a+2520>>2]=N;f[a+2528>>2]=O;f[a+2536>>2]=M}function q4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,o=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0.0;A=f[a+224>>2]|0;B=f[a+240>>2]|0;E=f[a+288>>2]|0;L=f[a+840>>2]|0;M=f[a+912>>2]|0;N=f[a+976>>2]|0;O=f[a+1008>>2]|0;Q=f[a+1256>>2]|0;S=f[a+1712>>2]|0;T=f[a+2200>>2]|0;V=f[a+2304>>2]|0;W=f[a+2352>>2]|0;X=f[a+2376>>2]|0;Y=f[a+2408>>2]|0;Z=f[a+2440>>2]|0;_=f[a+2504>>2]|0;aa=f[a+2520>>2]|0;ba=f[a+2528>>2]|0;$=f[a+2536>>2]|0;a:{while(1){F=A;b:while(1){k=F;switch((Q-k|0|0)/120|0|0){case 2:{$=5;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}case 3:{$=11;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}case 4:{$=12;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}case 5:{$=13;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}case 1:case 0:{$=111;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}default:{}}if((Q-k|0|0)<840){$=15;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}l=F+((((Q-k|0)>>>0)/240|0)*120|0)|0;if((Q-k|0|0)>119880)i=X3a(F,F+((((Q-k|0)>>>0)/480|0)*120|0)|0,l,l+((((Q-k|0)>>>0)/480|0)*120|0)|0,S)|0;else i=V3a(F,l,S)|0;P=F+96|0;c=~~+p[P>>3]>>>0;m=F+((((Q-k|0)>>>0)/240|0)*120|0)+96|0;g=~~+p[m>>3]>>>0;if(c>>>0<g>>>0){I=S;J=i;break}if(c>>>0<=g>>>0){d=+p[F+104>>3];e=+p[F+((((Q-k|0)>>>0)/240|0)*120|0)+104>>3];if(d<e){I=S;J=i;break}if(!(d>e))if(C5a(F,l)|0){I=S;J=i;break}}if((F|0)!=(T|0)){h=F+((((Q-k|0)>>>0)/240|0)*120|0)+104|0;C=S;R=T;while(1){c=~~+p[C+-24>>3]>>>0;g=~~+p[m>>3]>>>0;if(c>>>0<g>>>0){$=78;break b}if(c>>>0<=g>>>0){d=+p[C+-16>>3];e=+p[h>>3];if(d<e){$=78;break b}if(!(d>e))if(C5a(R,l)|0){$=78;break b}}c=R+-120|0;if((F|0)==(c|0))break;else{C=R;R=c}}}c=F+120|0;g=~~+p[P>>3]>>>0;h=~~+p[V>>3]>>>0;do{i=1;if(i){i=0;if(g>>>0<h>>>0)z=c;else i=1}if(i)if(1){if(g>>>0<=h>>>0){d=+p[F+104>>3];e=+p[W>>3];if(d<e){z=c;break}if(!(d>e))if(C5a(F,S)|0){z=c;break}}if((c|0)==(S|0)){$=111;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}i=F+104|0;while(1){g=~~+p[P>>3]>>>0;h=~~+p[c+96>>3]>>>0;if(g>>>0<h>>>0)break;if(g>>>0<=h>>>0){d=+p[i>>3];e=+p[c+104>>3];if(d<e)break;if(!(d>e))if(C5a(F,c)|0)break}c=c+120|0;if((c|0)==(S|0)){$=111;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}}_=a+24|0;aa=c;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));m=c+40|0;o=c+48|0;g=c+56|0;d=+p[m>>3];e=+p[o>>3];j=+p[g>>3];h=c+64|0;f[(a+64|0)>>2]=f[h>>2];f[(a+64|0)+4>>2]=f[h+4>>2];f[(a+64|0)+8>>2]=f[h+8>>2];f[(a+64|0)+12>>2]=f[h+12>>2];i=c+80|0;k=c+88|0;q=+p[i>>3];r=+p[k>>3];l=c+96|0;f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];f[a+12>>2]=f[l+12>>2];b[a+16>>0]=b[l+16>>0]|0;_=c;aa=S;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));ca=+p[X>>3];p[X>>3]=d;p[m>>3]=ca;ca=+p[Y>>3];p[Y>>3]=+p[o>>3];p[o>>3]=ca;ca=+p[Z>>3];p[Z>>3]=+p[g>>3];p[g>>3]=ca;f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];ca=+p[M>>3];p[M>>3]=+p[i>>3];p[i>>3]=ca;p[k>>3]=+p[N>>3];f[l>>2]=f[O>>2];f[l+4>>2]=f[O+4>>2];f[l+8>>2]=f[O+8>>2];f[l+12>>2]=f[O+12>>2];b[l+16>>0]=b[O+16>>0]|0;_=S;aa=a+24|0;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));p[X>>3]=d;p[Y>>3]=e;p[Z>>3]=j;f[L>>2]=f[(a+64|0)>>2];f[L+4>>2]=f[(a+64|0)+4>>2];f[L+8>>2]=f[(a+64|0)+8>>2];f[L+12>>2]=f[(a+64|0)+12>>2];p[M>>3]=q;p[N>>3]=r;f[O>>2]=f[a>>2];f[O+4>>2]=f[a+4>>2];f[O+8>>2]=f[a+8>>2];f[O+12>>2]=f[a+12>>2];b[O+16>>0]=b[a+16>>0]|0;z=c+120|0}}while(0);if((z|0)==(S|0)){$=111;f[a+2584>>2]=2;f[a+2588>>2]=11;break a}y=F+104|0;k=S;c=z;while(1){d=+p[P>>3];g=~~+p[c+96>>3]>>>0;c:do if(~~d>>>0>>>0>=g>>>0){i=~~d>>>0;j=d;while(1){if(i>>>0>g>>>0)d=j;else{d=+p[y>>3];e=+p[c+104>>3];if(d<e)break c;if(d>e)d=j;else{if(C5a(F,c)|0)break c;d=+p[P>>3]}}h=c+120|0;i=~~d>>>0;g=~~+p[c+216>>3]>>>0;if(i>>>0<g>>>0){c=h;break}else{c=h;j=d}}}while(0);while(1){x=k+-120|0;g=~~+p[P>>3]>>>0;h=~~+p[k+-24>>3]>>>0;if(g>>>0<h>>>0){k=x;continue}if(g>>>0>h>>>0)break;d=+p[y>>3];e=+p[k+-16>>3];if(d<e){k=x;continue}if(d>e)break;if(C5a(F,x)|0)k=x;else break}if(c>>>0>=x>>>0){F=c;continue b}_=a+24|0;aa=c;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));g=c+40|0;h=c+48|0;i=c+56|0;d=+p[g>>3];e=+p[h>>3];j=+p[i>>3];l=c+64|0;f[(a+64|0)>>2]=f[l>>2];f[(a+64|0)+4>>2]=f[l+4>>2];f[(a+64|0)+8>>2]=f[l+8>>2];f[(a+64|0)+12>>2]=f[l+12>>2];o=c+80|0;t=c+88|0;q=+p[o>>3];r=+p[t>>3];v=c+96|0;f[a>>2]=f[v>>2];f[a+4>>2]=f[v+4>>2];f[a+8>>2]=f[v+8>>2];f[a+12>>2]=f[v+12>>2];b[a+16>>0]=b[v+16>>0]|0;_=c;aa=x;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));w=k+-80|0;ca=+p[w>>3];p[w>>3]=d;p[g>>3]=ca;u=k+-72|0;ca=+p[u>>3];p[u>>3]=+p[h>>3];p[h>>3]=ca;s=k+-64|0;ca=+p[s>>3];p[s>>3]=+p[i>>3];p[i>>3]=ca;m=k+-56|0;f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[l+12>>2]=f[m+12>>2];i=k+-40|0;ca=+p[i>>3];p[i>>3]=+p[o>>3];p[o>>3]=ca;h=k+-32|0;p[t>>3]=+p[h>>3];g=k+-24|0;f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];f[v+12>>2]=f[g+12>>2];b[v+16>>0]=b[g+16>>0]|0;_=x;aa=a+24|0;ba=_+36|0;do{f[_>>2]=f[aa>>2];_=_+4|0;aa=aa+4|0}while((_|0)<(ba|0));p[w>>3]=d;p[u>>3]=e;p[s>>3]=j;f[m>>2]=f[(a+64|0)>>2];f[m+4>>2]=f[(a+64|0)+4>>2];f[m+8>>2]=f[(a+64|0)+8>>2];f[m+12>>2]=f[(a+64|0)+12>>2];p[i>>3]=q;p[h>>3]=r;f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[g+12>>2]=f[a+12>>2];b[g+16>>0]=b[a+16>>0]|0;k=x;c=c+120|0}}f[a+224>>2]=A;f[a+248>>2]=C;f[a+272>>2]=i;f[a+288>>2]=E;f[a+320>>2]=F;f[a+384>>2]=I;f[a+408>>2]=J;f[a+480>>2]=K;f[a+1056>>2]=k;f[a+1072>>2]=l;f[a+1256>>2]=Q;f[a+1608>>2]=R;f[a+2264>>2]=U;f[a+2504>>2]=_;f[a+2520>>2]=aa;f[a+2528>>2]=ba;f[a+2536>>2]=$;f[a+2576>>2]=0;f[a+2580>>2]=0;p4a(a);A=f[a+224>>2]|0;I=f[a+384>>2]|0;J=f[a+408>>2]|0;K=f[a+480>>2]|0;U=f[a+2264>>2]|0;_=f[a+2504>>2]|0;aa=f[a+2520>>2]|0;ba=f[a+2528>>2]|0;$=f[a+2536>>2]|0;G=f[a+2576>>2]|0;D=f[a+2580>>2]|0;H=+n[a+2580>>2];f[a+2576>>2]=0;f[a+2580>>2]=0;if((G|0)==1)break;if((G|0)==3)continue}if(($|0)==109){$=0;Q3a(K+120|0,E);B=F;E=K;f[a+2584>>2]=3;break a}else if(($|0)==110){$=0;if(U){$=111;f[a+2584>>2]=1;break a}else{B=F;E=K;f[a+2584>>2]=3;break a}}}f[a+224>>2]=A;f[a+240>>2]=B;f[a+288>>2]=E;f[a+320>>2]=F;f[a+2504>>2]=_;f[a+2520>>2]=aa;f[a+2528>>2]=ba;f[a+2536>>2]=$}function r4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0,o=0,q=0,r=0;c=f[a+96>>2]|0;m=f[a+104>>2]|0;n=f[a+112>>2]|0;r=f[a+136>>2]|0;a:{if(r){o=a+24|0;q=c;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));d=+p[(c+40|0)>>3];e=+p[(c+48|0)>>3];g=+p[(c+56|0)>>3];f[(a+64|0)>>2]=f[(c+64|0)>>2];f[(a+64|0)+4>>2]=f[(c+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(c+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(c+64|0)+12>>2];h=+p[(c+80|0)>>3];i=+p[(c+88|0)>>3];f[a>>2]=f[(c+96|0)>>2];f[a+4>>2]=f[(c+96|0)+4>>2];f[a+8>>2]=f[(c+96|0)+8>>2];f[a+12>>2]=f[(c+96|0)+12>>2];b[a+16>>0]=b[(c+96|0)+16>>0]|0;o=c;q=n;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));l=+p[(n+40|0)>>3];p[(n+40|0)>>3]=d;p[(c+40|0)>>3]=l;l=+p[(n+48|0)>>3];p[(n+48|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=l;l=+p[(n+56|0)>>3];p[(n+56|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=l;f[(c+64|0)>>2]=f[(n+64|0)>>2];f[(c+64|0)+4>>2]=f[(n+64|0)+4>>2];f[(c+64|0)+8>>2]=f[(n+64|0)+8>>2];f[(c+64|0)+12>>2]=f[(n+64|0)+12>>2];p[(c+80|0)>>3]=+p[(n+80|0)>>3];p[(c+88|0)>>3]=+p[(n+88|0)>>3];f[(c+96|0)>>2]=f[(n+96|0)>>2];f[(c+96|0)+4>>2]=f[(n+96|0)+4>>2];f[(c+96|0)+8>>2]=f[(n+96|0)+8>>2];f[(c+96|0)+12>>2]=f[(n+96|0)+12>>2];b[(c+96|0)+16>>0]=b[(n+96|0)+16>>0]|0;o=n;q=a+24|0;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));p[(n+40|0)>>3]=d;p[(n+48|0)>>3]=e;p[(n+56|0)>>3]=g;f[(n+64|0)>>2]=f[(a+64|0)>>2];f[(n+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(n+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(n+64|0)+12>>2]=f[(a+64|0)+12>>2];p[(n+80|0)>>3]=h;p[(n+88|0)>>3]=i;f[(n+96|0)>>2]=f[a>>2];f[(n+96|0)+4>>2]=f[a+4>>2];f[(n+96|0)+8>>2]=f[a+8>>2];f[(n+96|0)+12>>2]=f[a+12>>2];b[(n+96|0)+16>>0]=b[a+16>>0]|0;c=1;u=a;f[a+640>>2]=6;f[a+644>>2]=c|0;break a}o=a+24|0;q=c;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));i=+p[(c+40|0)>>3];k=+p[(c+48|0)>>3];l=+p[(c+56|0)>>3];f[(a+64|0)>>2]=f[(c+64|0)>>2];f[(a+64|0)+4>>2]=f[(c+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(c+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(c+64|0)+12>>2];e=+p[(c+80|0)>>3];d=+p[(c+88|0)>>3];f[a>>2]=f[(c+96|0)>>2];f[a+4>>2]=f[(c+96|0)+4>>2];f[a+8>>2]=f[(c+96|0)+8>>2];f[a+12>>2]=f[(c+96|0)+12>>2];b[a+16>>0]=b[(c+96|0)+16>>0]|0;o=c;q=m;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));h=+p[(m+40|0)>>3];p[(m+40|0)>>3]=i;p[(c+40|0)>>3]=h;h=+p[(m+48|0)>>3];p[(m+48|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=h;h=+p[(m+56|0)>>3];p[(m+56|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=h;f[(c+64|0)>>2]=f[(m+64|0)>>2];f[(c+64|0)+4>>2]=f[(m+64|0)+4>>2];f[(c+64|0)+8>>2]=f[(m+64|0)+8>>2];f[(c+64|0)+12>>2]=f[(m+64|0)+12>>2];p[(c+80|0)>>3]=+p[(m+80|0)>>3];p[(c+88|0)>>3]=+p[(m+88|0)>>3];f[(c+96|0)>>2]=f[(m+96|0)>>2];f[(c+96|0)+4>>2]=f[(m+96|0)+4>>2];f[(c+96|0)+8>>2]=f[(m+96|0)+8>>2];f[(c+96|0)+12>>2]=f[(m+96|0)+12>>2];b[(c+96|0)+16>>0]=b[(m+96|0)+16>>0]|0;o=m;q=a+24|0;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));p[(m+40|0)>>3]=i;p[(m+48|0)>>3]=k;p[(m+56|0)>>3]=l;f[(m+64|0)>>2]=f[(a+64|0)>>2];f[(m+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(m+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(m+64|0)+12>>2]=f[(a+64|0)+12>>2];p[(m+80|0)>>3]=e;p[(m+88|0)>>3]=d;f[(m+96|0)>>2]=f[a>>2];f[(m+96|0)+4>>2]=f[a+4>>2];f[(m+96|0)+8>>2]=f[a+8>>2];f[(m+96|0)+12>>2]=f[a+12>>2];b[(m+96|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(n+96|0)>>3]>>>0;j=~~+p[(m+96|0)>>3]>>>0;do if(c>>>0<j>>>0){h=k;g=l}else{if(c>>>0>j>>>0){c=1;u=a;f[a+640>>2]=6;f[a+644>>2]=c|0;break a}g=+p[n+104>>3];h=+p[m+104>>3];if(g<h){h=k;g=l}else{if(g>h){c=1;u=a;f[a+640>>2]=6;f[a+644>>2]=c|0;break a}if(C5a(n,m)|0){i=+p[(m+40|0)>>3];h=+p[(m+48|0)>>3];g=+p[(m+56|0)>>3];e=+p[(m+80|0)>>3];d=+p[(m+88|0)>>3];break}else{c=1;u=a;f[a+640>>2]=6;f[a+644>>2]=c|0;break a}}}while(0);o=a+24|0;q=m;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));f[(a+64|0)>>2]=f[(m+64|0)>>2];f[(a+64|0)+4>>2]=f[(m+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(m+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(m+64|0)+12>>2];f[a>>2]=f[(m+96|0)>>2];f[a+4>>2]=f[(m+96|0)+4>>2];f[a+8>>2]=f[(m+96|0)+8>>2];f[a+12>>2]=f[(m+96|0)+12>>2];b[a+16>>0]=b[(m+96|0)+16>>0]|0;o=m;q=n;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));l=+p[(n+40|0)>>3];p[(n+40|0)>>3]=i;p[(m+40|0)>>3]=l;l=+p[(n+48|0)>>3];p[(n+48|0)>>3]=+p[(m+48|0)>>3];p[(m+48|0)>>3]=l;l=+p[(n+56|0)>>3];p[(n+56|0)>>3]=+p[(m+56|0)>>3];p[(m+56|0)>>3]=l;f[(m+64|0)>>2]=f[(n+64|0)>>2];f[(m+64|0)+4>>2]=f[(n+64|0)+4>>2];f[(m+64|0)+8>>2]=f[(n+64|0)+8>>2];f[(m+64|0)+12>>2]=f[(n+64|0)+12>>2];p[(m+80|0)>>3]=+p[(n+80|0)>>3];p[(m+88|0)>>3]=+p[(n+88|0)>>3];f[(m+96|0)>>2]=f[(n+96|0)>>2];f[(m+96|0)+4>>2]=f[(n+96|0)+4>>2];f[(m+96|0)+8>>2]=f[(n+96|0)+8>>2];f[(m+96|0)+12>>2]=f[(n+96|0)+12>>2];b[(m+96|0)+16>>0]=b[(n+96|0)+16>>0]|0;o=n;q=a+24|0;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));p[(n+40|0)>>3]=i;p[(n+48|0)>>3]=h;p[(n+56|0)>>3]=g;f[(n+64|0)>>2]=f[(a+64|0)>>2];f[(n+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(n+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(n+64|0)+12>>2]=f[(a+64|0)+12>>2];p[(n+80|0)>>3]=e;p[(n+88|0)>>3]=d;f[(n+96|0)>>2]=f[a>>2];f[(n+96|0)+4>>2]=f[a+4>>2];f[(n+96|0)+8>>2]=f[a+8>>2];f[(n+96|0)+12>>2]=f[a+12>>2];b[(n+96|0)+16>>0]=b[a+16>>0]|0;c=2;u=a;f[a+640>>2]=6;f[a+644>>2]=c|0;break a}f[a+120>>2]=c;f[a+608>>2]=o;f[a+624>>2]=q;f[a+632>>2]=r}function s4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0.0;l=f[a+96>>2]|0;m=f[a+104>>2]|0;k=f[a+112>>2]|0;c=f[a+120>>2]|0;n=f[a+336>>2]|0;o=f[a+536>>2]|0;q=f[a+552>>2]|0;r=f[a+560>>2]|0;a:{f[(c+96|0)+8>>2]=f[a+8>>2];f[(c+96|0)+12>>2]=f[a+12>>2];b[(c+96|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(k+96|0)>>3]>>>0;g=~~+p[(m+96|0)>>3]>>>0;if(c>>>0>=g>>>0){if(c>>>0>g>>>0){c=n+2|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}d=+p[k+104>>3];e=+p[m+104>>3];if(!(d<e)){if(d>e){c=n+2|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}if(!(C5a(k,m)|0)){c=n+2|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}}}o=a+24|0;q=m;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));d=+p[(m+40|0)>>3];e=+p[(m+48|0)>>3];h=+p[(m+56|0)>>3];f[(a+64|0)>>2]=f[(m+64|0)>>2];f[(a+64|0)+4>>2]=f[(m+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(m+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(m+64|0)+12>>2];i=+p[(m+80|0)>>3];j=+p[(m+88|0)>>3];f[a>>2]=f[(m+96|0)>>2];f[a+4>>2]=f[(m+96|0)+4>>2];f[a+8>>2]=f[(m+96|0)+8>>2];f[a+12>>2]=f[(m+96|0)+12>>2];b[a+16>>0]=b[(m+96|0)+16>>0]|0;o=m;q=k;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));s=+p[(k+40|0)>>3];p[(k+40|0)>>3]=d;p[(m+40|0)>>3]=s;s=+p[(k+48|0)>>3];p[(k+48|0)>>3]=+p[(m+48|0)>>3];p[(m+48|0)>>3]=s;s=+p[(k+56|0)>>3];p[(k+56|0)>>3]=+p[(m+56|0)>>3];p[(m+56|0)>>3]=s;f[(m+64|0)>>2]=f[(k+64|0)>>2];f[(m+64|0)+4>>2]=f[(k+64|0)+4>>2];f[(m+64|0)+8>>2]=f[(k+64|0)+8>>2];f[(m+64|0)+12>>2]=f[(k+64|0)+12>>2];p[(m+80|0)>>3]=+p[(k+80|0)>>3];p[(m+88|0)>>3]=+p[(k+88|0)>>3];f[(m+96|0)>>2]=f[(k+96|0)>>2];f[(m+96|0)+4>>2]=f[(k+96|0)+4>>2];f[(m+96|0)+8>>2]=f[(k+96|0)+8>>2];f[(m+96|0)+12>>2]=f[(k+96|0)+12>>2];b[(m+96|0)+16>>0]=b[(k+96|0)+16>>0]|0;o=k;q=a+24|0;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));p[(k+40|0)>>3]=d;p[(k+48|0)>>3]=e;p[(k+56|0)>>3]=h;f[(k+64|0)>>2]=f[(a+64|0)>>2];f[(k+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(k+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(k+64|0)+12>>2]=f[(a+64|0)+12>>2];p[(k+80|0)>>3]=i;p[(k+88|0)>>3]=j;f[(k+96|0)>>2]=f[a>>2];f[(k+96|0)+4>>2]=f[a+4>>2];f[(k+96|0)+8>>2]=f[a+8>>2];f[(k+96|0)+12>>2]=f[a+12>>2];b[(k+96|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(m+96|0)>>3]>>>0;g=~~+p[l+96>>3]>>>0;if(c>>>0>=g>>>0){if(c>>>0>g>>>0){c=n+3|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}d=+p[m+104>>3];e=+p[l+104>>3];if(!(d<e)){if(d>e){c=n+3|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}if(!(C5a(m,l)|0)){c=n+3|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}}}o=a+24|0;q=l;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));d=+p[(l+40|0)>>3];e=+p[(l+48|0)>>3];h=+p[(l+56|0)>>3];f[(a+64|0)>>2]=f[(l+64|0)>>2];f[(a+64|0)+4>>2]=f[(l+64|0)+4>>2];f[(a+64|0)+8>>2]=f[(l+64|0)+8>>2];f[(a+64|0)+12>>2]=f[(l+64|0)+12>>2];i=+p[(l+80|0)>>3];j=+p[(l+88|0)>>3];f[a>>2]=f[(l+96|0)>>2];f[a+4>>2]=f[(l+96|0)+4>>2];f[a+8>>2]=f[(l+96|0)+8>>2];f[a+12>>2]=f[(l+96|0)+12>>2];b[a+16>>0]=b[(l+96|0)+16>>0]|0;o=l;q=m;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));s=+p[(m+40|0)>>3];p[(m+40|0)>>3]=d;p[(l+40|0)>>3]=s;s=+p[(m+48|0)>>3];p[(m+48|0)>>3]=+p[(l+48|0)>>3];p[(l+48|0)>>3]=s;s=+p[(m+56|0)>>3];p[(m+56|0)>>3]=+p[(l+56|0)>>3];p[(l+56|0)>>3]=s;f[(l+64|0)>>2]=f[(m+64|0)>>2];f[(l+64|0)+4>>2]=f[(m+64|0)+4>>2];f[(l+64|0)+8>>2]=f[(m+64|0)+8>>2];f[(l+64|0)+12>>2]=f[(m+64|0)+12>>2];p[(l+80|0)>>3]=+p[(m+80|0)>>3];p[(l+88|0)>>3]=+p[(m+88|0)>>3];f[(l+96|0)>>2]=f[(m+96|0)>>2];f[(l+96|0)+4>>2]=f[(m+96|0)+4>>2];f[(l+96|0)+8>>2]=f[(m+96|0)+8>>2];f[(l+96|0)+12>>2]=f[(m+96|0)+12>>2];b[(l+96|0)+16>>0]=b[(m+96|0)+16>>0]|0;o=m;q=a+24|0;r=o+36|0;do{f[o>>2]=f[q>>2];o=o+4|0;q=q+4|0}while((o|0)<(r|0));p[(m+40|0)>>3]=d;p[(m+48|0)>>3]=e;p[(m+56|0)>>3]=h;f[(m+64|0)>>2]=f[(a+64|0)>>2];f[(m+64|0)+4>>2]=f[(a+64|0)+4>>2];f[(m+64|0)+8>>2]=f[(a+64|0)+8>>2];f[(m+64|0)+12>>2]=f[(a+64|0)+12>>2];p[(m+80|0)>>3]=i;p[(m+88|0)>>3]=j;f[(m+96|0)>>2]=f[a>>2];f[(m+96|0)+4>>2]=f[a+4>>2];f[(m+96|0)+8>>2]=f[a+8>>2];f[(m+96|0)+12>>2]=f[a+12>>2];b[(m+96|0)+16>>0]=b[a+16>>0]|0;c=n+4|0;u=a;f[a+568>>2]=6;f[a+572>>2]=c|0;break a}f[a+136>>2]=c;f[a+536>>2]=o;f[a+552>>2]=q;f[a+560>>2]=r}function t4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0;z=f[a+96>>2]|0;A=f[a+104>>2]|0;B=f[a+112>>2]|0;E=f[a+136>>2]|0;a:{if(E){C=a+24|0;D=z;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));c=f[z+36>>2]|0;d=f[z+40>>2]|0;h=f[z+44>>2]|0;i=f[z+48>>2]|0;j=f[z+52>>2]|0;k=f[z+56>>2]|0;e=+p[z+64>>3];g=+p[z+72>>3];l=+p[z+80>>3];m=f[(z+88|0)>>2]|0;n=f[(z+92|0)>>2]|0;o=f[(z+96|0)>>2]|0;f[(z+96|0)>>2]=0;f[(z+92|0)>>2]=0;f[(z+88|0)>>2]=0;f[(a+60|0)>>2]=f[(z+100|0)>>2];f[(a+60|0)+4>>2]=f[(z+100|0)+4>>2];f[(a+60|0)+8>>2]=f[(z+100|0)+8>>2];f[(a+60|0)+12>>2]=f[(z+100|0)+12>>2];f[(a+60|0)+16>>2]=f[(z+100|0)+16>>2];q=+p[z+120>>3];r=+p[z+128>>3];s=+p[z+136>>3];t=+p[z+144>>3];v=+p[z+152>>3];w=+p[z+160>>3];x=+p[z+168>>3];y=+p[z+176>>3];f[a>>2]=f[(z+184|0)>>2];f[a+4>>2]=f[(z+184|0)+4>>2];f[a+8>>2]=f[(z+184|0)+8>>2];f[a+12>>2]=f[(z+184|0)+12>>2];b[a+16>>0]=b[(z+184|0)+16>>0]|0;N3a(z,B)|0;C=B;D=a+24|0;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));f[B+36>>2]=c;f[B+40>>2]=d;f[B+44>>2]=h;f[B+48>>2]=i;f[B+52>>2]=j;f[B+56>>2]=k;p[B+64>>3]=e;p[B+72>>3]=g;p[B+80>>3]=l;c=f[(B+88|0)>>2]|0;if(!c)c=B+96|0;else{d=f[(B+92|0)>>2]|0;if((d|0)!=(c|0))f[(B+92|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);f[(B+96|0)>>2]=0;f[(B+92|0)>>2]=0;f[(B+88|0)>>2]=0;c=B+96|0}f[(B+88|0)>>2]=m;f[(B+92|0)>>2]=n;f[c>>2]=o;f[(B+100|0)>>2]=f[(a+60|0)>>2];f[(B+100|0)+4>>2]=f[(a+60|0)+4>>2];f[(B+100|0)+8>>2]=f[(a+60|0)+8>>2];f[(B+100|0)+12>>2]=f[(a+60|0)+12>>2];f[(B+100|0)+16>>2]=f[(a+60|0)+16>>2];p[B+120>>3]=q;p[B+128>>3]=r;p[B+136>>3]=s;p[B+144>>3]=t;p[B+152>>3]=v;p[B+160>>3]=w;p[B+168>>3]=x;p[B+176>>3]=y;f[(B+184|0)>>2]=f[a>>2];f[(B+184|0)+4>>2]=f[a+4>>2];f[(B+184|0)+8>>2]=f[a+8>>2];f[(B+184|0)+12>>2]=f[a+12>>2];b[(B+184|0)+16>>0]=b[a+16>>0]|0;c=1;u=a;f[a+1232>>2]=6;f[a+1236>>2]=c|0;break a}C=a+24|0;D=z;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));c=f[z+36>>2]|0;d=f[z+40>>2]|0;h=f[z+44>>2]|0;i=f[z+48>>2]|0;j=f[z+52>>2]|0;k=f[z+56>>2]|0;e=+p[z+64>>3];g=+p[z+72>>3];l=+p[z+80>>3];m=f[(z+88|0)>>2]|0;n=f[(z+92|0)>>2]|0;o=f[(z+96|0)>>2]|0;f[(z+96|0)>>2]=0;f[(z+92|0)>>2]=0;f[(z+88|0)>>2]=0;f[(a+60|0)>>2]=f[(z+100|0)>>2];f[(a+60|0)+4>>2]=f[(z+100|0)+4>>2];f[(a+60|0)+8>>2]=f[(z+100|0)+8>>2];f[(a+60|0)+12>>2]=f[(z+100|0)+12>>2];f[(a+60|0)+16>>2]=f[(z+100|0)+16>>2];y=+p[z+120>>3];x=+p[z+128>>3];w=+p[z+136>>3];v=+p[z+144>>3];t=+p[z+152>>3];s=+p[z+160>>3];r=+p[z+168>>3];q=+p[z+176>>3];f[a>>2]=f[(z+184|0)>>2];f[a+4>>2]=f[(z+184|0)+4>>2];f[a+8>>2]=f[(z+184|0)+8>>2];f[a+12>>2]=f[(z+184|0)+12>>2];b[a+16>>0]=b[(z+184|0)+16>>0]|0;N3a(z,A)|0;C=A;D=a+24|0;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));f[(A+36|0)>>2]=c;f[(A+40|0)>>2]=d;f[(A+44|0)>>2]=h;f[(A+48|0)>>2]=i;f[(A+52|0)>>2]=j;f[(A+56|0)>>2]=k;p[(A+64|0)>>3]=e;p[(A+72|0)>>3]=g;p[(A+80|0)>>3]=l;c=f[(A+88|0)>>2]|0;if(!c)c=A+96|0;else{d=f[(A+92|0)>>2]|0;if((d|0)!=(c|0))f[(A+92|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);f[(A+96|0)>>2]=0;f[(A+92|0)>>2]=0;f[(A+88|0)>>2]=0;c=A+96|0}f[(A+88|0)>>2]=m;f[(A+92|0)>>2]=n;f[c>>2]=o;f[(A+100|0)>>2]=f[(a+60|0)>>2];f[(A+100|0)+4>>2]=f[(a+60|0)+4>>2];f[(A+100|0)+8>>2]=f[(a+60|0)+8>>2];f[(A+100|0)+12>>2]=f[(a+60|0)+12>>2];f[(A+100|0)+16>>2]=f[(a+60|0)+16>>2];p[(A+120|0)>>3]=y;p[(A+128|0)>>3]=x;p[(A+136|0)>>3]=w;p[(A+144|0)>>3]=v;p[(A+152|0)>>3]=t;p[(A+160|0)>>3]=s;p[(A+168|0)>>3]=r;p[(A+176|0)>>3]=q;f[(A+184|0)>>2]=f[a>>2];f[(A+184|0)+4>>2]=f[a+4>>2];f[(A+184|0)+8>>2]=f[a+8>>2];f[(A+184|0)+12>>2]=f[a+12>>2];b[(A+184|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(B+184|0)>>3]>>>0;d=~~+p[(A+184|0)>>3]>>>0;do if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=1;u=a;f[a+1232>>2]=6;f[a+1236>>2]=c|0;break a}e=+p[B+192>>3];g=+p[A+192>>3];if(!(e<g)){if(e>g){c=1;u=a;f[a+1232>>2]=6;f[a+1236>>2]=c|0;break a}if(B5a(B,A)|0){m=f[(A+88|0)>>2]|0;n=f[(A+92|0)>>2]|0;o=f[A+96>>2]|0;y=+p[(A+120|0)>>3];x=+p[(A+128|0)>>3];w=+p[(A+136|0)>>3];v=+p[(A+144|0)>>3];t=+p[(A+152|0)>>3];s=+p[(A+160|0)>>3];r=+p[(A+168|0)>>3];q=+p[(A+176|0)>>3];break}else{c=1;u=a;f[a+1232>>2]=6;f[a+1236>>2]=c|0;break a}}}while(0);C=a+24|0;D=A;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));c=f[(A+36|0)>>2]|0;d=f[(A+40|0)>>2]|0;h=f[(A+44|0)>>2]|0;i=f[(A+48|0)>>2]|0;j=f[(A+52|0)>>2]|0;k=f[(A+56|0)>>2]|0;e=+p[(A+64|0)>>3];g=+p[(A+72|0)>>3];l=+p[(A+80|0)>>3];f[A+96>>2]=0;f[(A+92|0)>>2]=0;f[(A+88|0)>>2]=0;f[(a+60|0)>>2]=f[(A+100|0)>>2];f[(a+60|0)+4>>2]=f[(A+100|0)+4>>2];f[(a+60|0)+8>>2]=f[(A+100|0)+8>>2];f[(a+60|0)+12>>2]=f[(A+100|0)+12>>2];f[(a+60|0)+16>>2]=f[(A+100|0)+16>>2];f[a>>2]=f[(A+184|0)>>2];f[a+4>>2]=f[(A+184|0)+4>>2];f[a+8>>2]=f[(A+184|0)+8>>2];f[a+12>>2]=f[(A+184|0)+12>>2];b[a+16>>0]=b[(A+184|0)+16>>0]|0;N3a(A,B)|0;C=B;D=a+24|0;E=C+36|0;do{f[C>>2]=f[D>>2];C=C+4|0;D=D+4|0}while((C|0)<(E|0));f[B+36>>2]=c;f[B+40>>2]=d;f[B+44>>2]=h;f[B+48>>2]=i;f[B+52>>2]=j;f[B+56>>2]=k;p[B+64>>3]=e;p[B+72>>3]=g;p[B+80>>3]=l;c=f[(B+88|0)>>2]|0;if(!c)c=B+96|0;else{d=f[(B+92|0)>>2]|0;if((d|0)!=(c|0))f[(B+92|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);f[(B+96|0)>>2]=0;f[(B+92|0)>>2]=0;f[(B+88|0)>>2]=0;c=B+96|0}f[(B+88|0)>>2]=m;f[(B+92|0)>>2]=n;f[c>>2]=o;f[(B+100|0)>>2]=f[(a+60|0)>>2];f[(B+100|0)+4>>2]=f[(a+60|0)+4>>2];f[(B+100|0)+8>>2]=f[(a+60|0)+8>>2];f[(B+100|0)+12>>2]=f[(a+60|0)+12>>2];f[(B+100|0)+16>>2]=f[(a+60|0)+16>>2];p[B+120>>3]=y;p[B+128>>3]=x;p[B+136>>3]=w;p[B+144>>3]=v;p[B+152>>3]=t;p[B+160>>3]=s;p[B+168>>3]=r;p[B+176>>3]=q;f[(B+184|0)>>2]=f[a>>2];f[(B+184|0)+4>>2]=f[a+4>>2];f[(B+184|0)+8>>2]=f[a+8>>2];f[(B+184|0)+12>>2]=f[a+12>>2];b[(B+184|0)+16>>0]=b[a+16>>0]|0;c=2;u=a;f[a+1232>>2]=6;f[a+1236>>2]=c|0;break a}f[a+120>>2]=c;f[a+1200>>2]=C;f[a+1216>>2]=D;f[a+1224>>2]=E}function u4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=f[a+96>>2]|0;C=f[a+104>>2]|0;A=f[a+112>>2]|0;c=f[a+120>>2]|0;z=+n[a+272>>2];D=f[a+888>>2]|0;E=f[a+992>>2]|0;F=f[a+1008>>2]|0;G=f[a+1016>>2]|0;a:{p[(c+176|0)>>3]=z;f[(c+184|0)>>2]=f[a>>2];f[(c+184|0)+4>>2]=f[a+4>>2];f[(c+184|0)+8>>2]=f[a+8>>2];f[(c+184|0)+12>>2]=f[a+12>>2];b[(c+184|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(A+184|0)>>3]>>>0;d=~~+p[(C+184|0)>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=D+2|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}e=+p[A+192>>3];g=+p[C+192>>3];if(!(e<g)){if(e>g){c=D+2|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}if(!(B5a(A,C)|0)){c=D+2|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}}}E=a+24|0;F=C;G=E+36|0;do{f[E>>2]=f[F>>2];E=E+4|0;F=F+4|0}while((E|0)<(G|0));c=f[(C+36|0)>>2]|0;d=f[(C+40|0)>>2]|0;h=f[(C+44|0)>>2]|0;i=f[(C+48|0)>>2]|0;j=f[(C+52|0)>>2]|0;k=f[(C+56|0)>>2]|0;e=+p[(C+64|0)>>3];g=+p[(C+72|0)>>3];l=+p[(C+80|0)>>3];m=f[(C+88|0)>>2]|0;o=f[(C+92|0)>>2]|0;q=f[(C+96|0)>>2]|0;f[(C+96|0)>>2]=0;f[(C+92|0)>>2]=0;f[(C+88|0)>>2]=0;f[(a+60|0)>>2]=f[(C+100|0)>>2];f[(a+60|0)+4>>2]=f[(C+100|0)+4>>2];f[(a+60|0)+8>>2]=f[(C+100|0)+8>>2];f[(a+60|0)+12>>2]=f[(C+100|0)+12>>2];f[(a+60|0)+16>>2]=f[(C+100|0)+16>>2];r=+p[(C+120|0)>>3];s=+p[(C+128|0)>>3];t=+p[(C+136|0)>>3];v=+p[(C+144|0)>>3];w=+p[(C+152|0)>>3];x=+p[(C+160|0)>>3];y=+p[(C+168|0)>>3];z=+p[(C+176|0)>>3];f[a>>2]=f[(C+184|0)>>2];f[a+4>>2]=f[(C+184|0)+4>>2];f[a+8>>2]=f[(C+184|0)+8>>2];f[a+12>>2]=f[(C+184|0)+12>>2];b[a+16>>0]=b[(C+184|0)+16>>0]|0;N3a(C,A)|0;E=A;F=a+24|0;G=E+36|0;do{f[E>>2]=f[F>>2];E=E+4|0;F=F+4|0}while((E|0)<(G|0));f[(A+36|0)>>2]=c;f[(A+40|0)>>2]=d;f[(A+44|0)>>2]=h;f[(A+48|0)>>2]=i;f[(A+52|0)>>2]=j;f[(A+56|0)>>2]=k;p[(A+64|0)>>3]=e;p[(A+72|0)>>3]=g;p[(A+80|0)>>3]=l;c=f[(A+88|0)>>2]|0;if(c|0){d=f[(A+92|0)>>2]|0;if((d|0)!=(c|0))f[(A+92|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);f[(A+96|0)>>2]=0;f[(A+92|0)>>2]=0;f[(A+88|0)>>2]=0}f[(A+88|0)>>2]=m;f[(A+92|0)>>2]=o;f[(A+96|0)>>2]=q;f[(A+100|0)>>2]=f[(a+60|0)>>2];f[(A+100|0)+4>>2]=f[(a+60|0)+4>>2];f[(A+100|0)+8>>2]=f[(a+60|0)+8>>2];f[(A+100|0)+12>>2]=f[(a+60|0)+12>>2];f[(A+100|0)+16>>2]=f[(a+60|0)+16>>2];p[(A+120|0)>>3]=r;p[(A+128|0)>>3]=s;p[(A+136|0)>>3]=t;p[(A+144|0)>>3]=v;p[(A+152|0)>>3]=w;p[(A+160|0)>>3]=x;p[(A+168|0)>>3]=y;p[(A+176|0)>>3]=z;f[(A+184|0)>>2]=f[a>>2];f[(A+184|0)+4>>2]=f[a+4>>2];f[(A+184|0)+8>>2]=f[a+8>>2];f[(A+184|0)+12>>2]=f[a+12>>2];b[(A+184|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(C+184|0)>>3]>>>0;d=~~+p[B+184>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=D+3|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}e=+p[C+192>>3];g=+p[B+192>>3];if(!(e<g)){if(e>g){c=D+3|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}if(!(B5a(C,B)|0)){c=D+3|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}}}E=a+24|0;F=B;G=E+36|0;do{f[E>>2]=f[F>>2];E=E+4|0;F=F+4|0}while((E|0)<(G|0));c=f[B+36>>2]|0;d=f[B+40>>2]|0;h=f[B+44>>2]|0;i=f[B+48>>2]|0;j=f[B+52>>2]|0;k=f[B+56>>2]|0;e=+p[B+64>>3];g=+p[B+72>>3];l=+p[B+80>>3];m=f[(B+88|0)>>2]|0;o=f[(B+92|0)>>2]|0;q=f[(B+96|0)>>2]|0;f[(B+96|0)>>2]=0;f[(B+92|0)>>2]=0;f[(B+88|0)>>2]=0;f[(a+60|0)>>2]=f[(B+100|0)>>2];f[(a+60|0)+4>>2]=f[(B+100|0)+4>>2];f[(a+60|0)+8>>2]=f[(B+100|0)+8>>2];f[(a+60|0)+12>>2]=f[(B+100|0)+12>>2];f[(a+60|0)+16>>2]=f[(B+100|0)+16>>2];r=+p[B+120>>3];s=+p[B+128>>3];t=+p[B+136>>3];v=+p[B+144>>3];w=+p[B+152>>3];x=+p[B+160>>3];y=+p[B+168>>3];z=+p[B+176>>3];f[a>>2]=f[(B+184|0)>>2];f[a+4>>2]=f[(B+184|0)+4>>2];f[a+8>>2]=f[(B+184|0)+8>>2];f[a+12>>2]=f[(B+184|0)+12>>2];b[a+16>>0]=b[(B+184|0)+16>>0]|0;N3a(B,C)|0;E=C;F=a+24|0;G=E+36|0;do{f[E>>2]=f[F>>2];E=E+4|0;F=F+4|0}while((E|0)<(G|0));f[(C+36|0)>>2]=c;f[(C+40|0)>>2]=d;f[(C+44|0)>>2]=h;f[(C+48|0)>>2]=i;f[(C+52|0)>>2]=j;f[(C+56|0)>>2]=k;p[(C+64|0)>>3]=e;p[(C+72|0)>>3]=g;p[(C+80|0)>>3]=l;c=f[(C+88|0)>>2]|0;if(c|0){d=f[(C+92|0)>>2]|0;if((d|0)!=(c|0))f[(C+92|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);f[(C+96|0)>>2]=0;f[(C+92|0)>>2]=0;f[(C+88|0)>>2]=0}f[(C+88|0)>>2]=m;f[(C+92|0)>>2]=o;f[(C+96|0)>>2]=q;f[(C+100|0)>>2]=f[(a+60|0)>>2];f[(C+100|0)+4>>2]=f[(a+60|0)+4>>2];f[(C+100|0)+8>>2]=f[(a+60|0)+8>>2];f[(C+100|0)+12>>2]=f[(a+60|0)+12>>2];f[(C+100|0)+16>>2]=f[(a+60|0)+16>>2];p[(C+120|0)>>3]=r;p[(C+128|0)>>3]=s;p[(C+136|0)>>3]=t;p[(C+144|0)>>3]=v;p[(C+152|0)>>3]=w;p[(C+160|0)>>3]=x;p[(C+168|0)>>3]=y;p[(C+176|0)>>3]=z;f[(C+184|0)>>2]=f[a>>2];f[(C+184|0)+4>>2]=f[a+4>>2];f[(C+184|0)+8>>2]=f[a+8>>2];f[(C+184|0)+12>>2]=f[a+12>>2];b[(C+184|0)+16>>0]=b[a+16>>0]|0;c=D+4|0;u=a;f[a+1024>>2]=6;f[a+1028>>2]=c|0;break a}f[a+136>>2]=c;f[a+992>>2]=E;f[a+1008>>2]=F;f[a+1016>>2]=G}function v4a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;j=f[a+272>>2]|0;x=f[a+280>>2]|0;t=f[a+304>>2]|0;q=f[a+312>>2]|0;c=f[a+320>>2]|0;u=f[a+336>>2]|0;v=f[a+344>>2]|0;w=f[a+352>>2]|0;r=f[a+392>>2]|0;k=f[a+400>>2]|0;l=f[a+408>>2]|0;m=f[a+416>>2]|0;s=f[a+424>>2]|0;e=f[a+488>>2]|0;n=f[a+1128>>2]|0;o=f[a+1136>>2]|0;i=f[a+1144>>2]|0;a:{f[i+8>>2]=f[e+8>>2];f[i+12>>2]=f[e+12>>2];f[i+16>>2]=f[e+16>>2];f[i+20>>2]=f[e+20>>2];p[i>>3]=+p[e>>3];p[((a+24|0)+72|0)>>3]=+p[t+72>>3];p[((a+24|0)+80|0)>>3]=+p[t+80>>3];i=t+88|0;f[((a+24|0)+96|0)>>2]=0;f[((a+24|0)+88|0)>>2]=f[i>>2];e=t+92|0;f[((a+24|0)+92|0)>>2]=f[e>>2];d=t+96|0;f[((a+24|0)+96|0)>>2]=f[d>>2];f[d>>2]=0;f[e>>2]=0;f[i>>2]=0;i=t+100|0;f[r>>2]=f[i>>2];f[r+4>>2]=f[i+4>>2];f[r+8>>2]=f[i+8>>2];f[r+12>>2]=f[i+12>>2];f[r+16>>2]=f[i+16>>2];i=t+120|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];f[k+16>>2]=f[i+16>>2];f[k+20>>2]=f[i+20>>2];p[k>>3]=+p[i>>3];p[((a+24|0)+128|0)>>3]=+p[t+128>>3];p[((a+24|0)+136|0)>>3]=+p[t+136>>3];k=t+144|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];f[l+16>>2]=f[k+16>>2];f[l+20>>2]=f[k+20>>2];p[l>>3]=+p[k>>3];p[((a+24|0)+152|0)>>3]=+p[t+152>>3];p[((a+24|0)+160|0)>>3]=+p[t+160>>3];l=t+168|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];f[m+12>>2]=f[l+12>>2];p[m>>3]=+p[l>>3];p[((a+24|0)+176|0)>>3]=+p[t+176>>3];m=t+184|0;f[s>>2]=f[m>>2];f[s+4>>2]=f[m+4>>2];f[s+8>>2]=f[m+8>>2];f[s+12>>2]=f[m+12>>2];b[s+16>>0]=b[m+16>>0]|0;N3a(t,c)|0;b:do if((c|0)==(j|0))i=j;else while(1){i=c;c=c+-208|0;d=~~+p[((a+24|0)+184|0)>>3]>>>0;e=~~+p[i+-24>>3]>>>0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0)break b;g=+p[((a+24|0)+192|0)>>3];h=+p[i+-16>>3];if(!(g<h)){if(g>h)break b;if(!(B5a(a+24|0,c)|0))break b}}N3a(i,c)|0;if((c|0)==(j|0)){i=j;break}}while(0);k=i;l=a+24|0;m=k+36|0;do{f[k>>2]=f[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));j=i+36|0;c=f[n>>2]|0;f[n>>2]=f[j>>2];f[j>>2]=c;j=f[((a+24|0)+40|0)>>2]|0;c=i+40|0;f[((a+24|0)+40|0)>>2]=f[c>>2];f[c>>2]=j;c=f[((a+24|0)+44|0)>>2]|0;j=i+44|0;f[((a+24|0)+44|0)>>2]=f[j>>2];f[j>>2]=c;j=i+48|0;c=f[o>>2]|0;f[o>>2]=f[j>>2];f[j>>2]=c;j=f[((a+24|0)+52|0)>>2]|0;c=i+52|0;f[((a+24|0)+52|0)>>2]=f[c>>2];f[c>>2]=j;c=f[((a+24|0)+56|0)>>2]|0;j=i+56|0;f[((a+24|0)+56|0)>>2]=f[j>>2];f[j>>2]=c;h=+p[((a+24|0)+64|0)>>3];j=i+64|0;p[((a+24|0)+64|0)>>3]=+p[j>>3];p[j>>3]=h;h=+p[((a+24|0)+72|0)>>3];j=i+72|0;p[((a+24|0)+72|0)>>3]=+p[j>>3];p[j>>3]=h;h=+p[((a+24|0)+80|0)>>3];j=i+80|0;p[((a+24|0)+80|0)>>3]=+p[j>>3];p[j>>3]=h;j=i+88|0;c=f[j>>2]|0;e=i+92|0;if(!c)c=i+96|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);c=i+96|0;f[c>>2]=0;f[e>>2]=0;f[j>>2]=0}f[j>>2]=f[((a+24|0)+88|0)>>2];f[e>>2]=f[((a+24|0)+92|0)>>2];f[c>>2]=f[((a+24|0)+96|0)>>2];f[((a+24|0)+96|0)>>2]=0;f[((a+24|0)+92|0)>>2]=0;f[((a+24|0)+88|0)>>2]=0;c=i+100|0;f[c>>2]=f[r>>2];f[c+4>>2]=f[r+4>>2];f[c+8>>2]=f[r+8>>2];f[c+12>>2]=f[r+12>>2];f[c+16>>2]=f[r+16>>2];h=+p[((a+24|0)+120|0)>>3];c=i+120|0;p[((a+24|0)+120|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+128|0)>>3];c=i+128|0;p[((a+24|0)+128|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+136|0)>>3];c=i+136|0;p[((a+24|0)+136|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+144|0)>>3];c=i+144|0;p[((a+24|0)+144|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+152|0)>>3];c=i+152|0;p[((a+24|0)+152|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+160|0)>>3];c=i+160|0;p[((a+24|0)+160|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+168|0)>>3];c=i+168|0;p[((a+24|0)+168|0)>>3]=+p[c>>3];p[c>>3]=h;h=+p[((a+24|0)+176|0)>>3];c=i+176|0;p[((a+24|0)+176|0)>>3]=+p[c>>3];p[c>>3]=h;c=i+184|0;f[c>>2]=f[s>>2];f[c+4>>2]=f[s+4>>2];f[c+8>>2]=f[s+8>>2];f[c+12>>2]=f[s+12>>2];b[c+16>>0]=b[s+16>>0]|0;c=q+1|0;if((c|0)==8){u=0;w=(t+208|0)==(x|0);f[a+1224>>2]=2;f[a+1228>>2]=2;break a}else v=c}f[a+336>>2]=u;f[a+344>>2]=v;f[a+352>>2]=w;f[a+1152>>2]=k;f[a+1168>>2]=l;f[a+1176>>2]=m}function w4a(a){a=a|0;var c=0,d=0.0,e=0.0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0,I=0,J=0,K=0,L=0;J=f[a+96>>2]|0;H=f[a+104>>2]|0;I=f[a+112>>2]|0;j=+n[a+952>>2];o=+n[a+960>>2];r=+n[a+968>>2];t=+n[a+976>>2];w=+n[a+984>>2];y=+n[a+992>>2];l=f[a+1e3>>2]|0;A=f[a+1008>>2]|0;B=f[a+1016>>2]|0;C=f[a+1024>>2]|0;D=f[a+1032>>2]|0;E=f[a+1040>>2]|0;z=+n[a+1048>>2];x=+n[a+1056>>2];v=+n[a+1064>>2];s=+n[a+1072>>2];q=+n[a+1080>>2];m=+n[a+1088>>2];k=+n[a+1096>>2];F=+n[a+1104>>2];G=+n[a+1112>>2];e=+n[a+1120>>2];d=+n[a+1128>>2];a:{b[(J+216|0)+16>>0]=b[(H+216|0)+16>>0]|0;J=H;K=a+24|0;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));p[(H+40|0)>>3]=j;p[(H+48|0)>>3]=o;p[(H+56|0)>>3]=r;p[(H+64|0)>>3]=t;p[(H+72|0)>>3]=w;p[(H+80|0)>>3]=y;f[(H+88|0)>>2]=l;f[(H+92|0)>>2]=A;f[(H+96|0)>>2]=B;f[(H+100|0)>>2]=C;f[(H+104|0)>>2]=D;f[(H+108|0)>>2]=E;p[(H+112|0)>>3]=z;p[(H+120|0)>>3]=x;p[(H+128|0)>>3]=v;p[(H+136|0)>>3]=s;p[(H+144|0)>>3]=q;p[(H+152|0)>>3]=m;p[(H+160|0)>>3]=k;p[(H+168|0)>>3]=F;p[(H+176|0)>>3]=G;f[(H+184|0)>>2]=f[(a+64|0)>>2];f[(H+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(H+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(H+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(H+200|0)>>3]=e;p[(H+208|0)>>3]=d;f[(H+216|0)>>2]=f[a>>2];f[(H+216|0)+4>>2]=f[a+4>>2];f[(H+216|0)+8>>2]=f[a+8>>2];f[(H+216|0)+12>>2]=f[a+12>>2];b[(H+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(I+216|0)>>3]>>>0;g=~~+p[(H+216|0)>>3]>>>0;do if(c>>>0<g>>>0){g=D;c=E;i=F;h=G}else{if(c>>>0>g>>>0){c=1;u=a;f[a+2e3>>2]=6;f[a+2004>>2]=c|0;break a}h=+p[I+224>>3];i=+p[H+224>>3];if(h<i){g=D;c=E;i=F;h=G}else{if(h>i){c=1;u=a;f[a+2e3>>2]=6;f[a+2004>>2]=c|0;break a}if(A5a(I,H)|0){j=+p[(H+40|0)>>3];l=f[(H+88|0)>>2]|0;o=+p[(H+48|0)>>3];r=+p[(H+56|0)>>3];t=+p[(H+64|0)>>3];w=+p[(H+72|0)>>3];y=+p[(H+80|0)>>3];A=f[(H+92|0)>>2]|0;B=f[(H+96|0)>>2]|0;C=f[(H+100|0)>>2]|0;g=f[(H+104|0)>>2]|0;c=f[(H+108|0)>>2]|0;z=+p[(H+112|0)>>3];x=+p[(H+120|0)>>3];v=+p[(H+128|0)>>3];s=+p[(H+136|0)>>3];q=+p[(H+144|0)>>3];m=+p[(H+152|0)>>3];k=+p[(H+160|0)>>3];i=+p[(H+168|0)>>3];h=+p[(H+176|0)>>3];e=+p[(H+200|0)>>3];d=+p[(H+208|0)>>3];break}else{c=1;u=a;f[a+2e3>>2]=6;f[a+2004>>2]=c|0;break a}}}while(0);J=a+24|0;K=H;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));f[(a+64|0)>>2]=f[(H+184|0)>>2];f[(a+64|0)+4>>2]=f[(H+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(H+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(H+184|0)+12>>2];f[a>>2]=f[(H+216|0)>>2];f[a+4>>2]=f[(H+216|0)+4>>2];f[a+8>>2]=f[(H+216|0)+8>>2];f[a+12>>2]=f[(H+216|0)+12>>2];b[a+16>>0]=b[(H+216|0)+16>>0]|0;J=H;K=I;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));G=+p[(I+40|0)>>3];p[(I+40|0)>>3]=j;p[(H+40|0)>>3]=G;G=+p[(I+48|0)>>3];p[(I+48|0)>>3]=+p[(H+48|0)>>3];p[(H+48|0)>>3]=G;G=+p[(I+56|0)>>3];p[(I+56|0)>>3]=+p[(H+56|0)>>3];p[(H+56|0)>>3]=G;G=+p[(I+64|0)>>3];p[(I+64|0)>>3]=+p[(H+64|0)>>3];p[(H+64|0)>>3]=G;G=+p[(I+72|0)>>3];p[(I+72|0)>>3]=+p[(H+72|0)>>3];p[(H+72|0)>>3]=G;G=+p[(I+80|0)>>3];p[(I+80|0)>>3]=+p[(H+80|0)>>3];p[(H+80|0)>>3]=G;J=f[(I+88|0)>>2]|0;f[(I+88|0)>>2]=l;f[(H+88|0)>>2]=J;J=f[(I+92|0)>>2]|0;f[(I+92|0)>>2]=f[(H+92|0)>>2];f[(H+92|0)>>2]=J;J=f[(I+96|0)>>2]|0;f[(I+96|0)>>2]=f[(H+96|0)>>2];f[(H+96|0)>>2]=J;J=f[(I+100|0)>>2]|0;f[(I+100|0)>>2]=f[(H+100|0)>>2];f[(H+100|0)>>2]=J;f[(H+104|0)>>2]=f[(I+104|0)>>2];f[(H+108|0)>>2]=f[(I+108|0)>>2];G=+p[(I+112|0)>>3];p[(I+112|0)>>3]=+p[(H+112|0)>>3];p[(H+112|0)>>3]=G;G=+p[(I+120|0)>>3];p[(I+120|0)>>3]=+p[(H+120|0)>>3];p[(H+120|0)>>3]=G;G=+p[(I+128|0)>>3];p[(I+128|0)>>3]=+p[(H+128|0)>>3];p[(H+128|0)>>3]=G;G=+p[(I+136|0)>>3];p[(I+136|0)>>3]=+p[(H+136|0)>>3];p[(H+136|0)>>3]=G;G=+p[(I+144|0)>>3];p[(I+144|0)>>3]=+p[(H+144|0)>>3];p[(H+144|0)>>3]=G;G=+p[(I+152|0)>>3];p[(I+152|0)>>3]=+p[(H+152|0)>>3];p[(H+152|0)>>3]=G;G=+p[(I+160|0)>>3];p[(I+160|0)>>3]=+p[(H+160|0)>>3];p[(H+160|0)>>3]=G;G=+p[(I+168|0)>>3];p[(I+168|0)>>3]=+p[(H+168|0)>>3];p[(H+168|0)>>3]=G;G=+p[(I+176|0)>>3];p[(I+176|0)>>3]=+p[(H+176|0)>>3];p[(H+176|0)>>3]=G;f[(H+184|0)>>2]=f[(I+184|0)>>2];f[(H+184|0)+4>>2]=f[(I+184|0)+4>>2];f[(H+184|0)+8>>2]=f[(I+184|0)+8>>2];f[(H+184|0)+12>>2]=f[(I+184|0)+12>>2];p[(H+200|0)>>3]=+p[(I+200|0)>>3];p[(H+208|0)>>3]=+p[(I+208|0)>>3];f[(H+216|0)>>2]=f[(I+216|0)>>2];f[(H+216|0)+4>>2]=f[(I+216|0)+4>>2];f[(H+216|0)+8>>2]=f[(I+216|0)+8>>2];f[(H+216|0)+12>>2]=f[(I+216|0)+12>>2];b[(H+216|0)+16>>0]=b[(I+216|0)+16>>0]|0;J=I;K=a+24|0;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));p[(I+40|0)>>3]=j;p[(I+48|0)>>3]=o;p[(I+56|0)>>3]=r;p[(I+64|0)>>3]=t;p[(I+72|0)>>3]=w;p[(I+80|0)>>3]=y;f[(I+88|0)>>2]=l;f[(I+92|0)>>2]=A;f[(I+96|0)>>2]=B;f[(I+100|0)>>2]=C;f[(I+104|0)>>2]=g;f[(I+108|0)>>2]=c;p[(I+112|0)>>3]=z;p[(I+120|0)>>3]=x;p[(I+128|0)>>3]=v;p[(I+136|0)>>3]=s;p[(I+144|0)>>3]=q;p[(I+152|0)>>3]=m;p[(I+160|0)>>3]=k;p[(I+168|0)>>3]=i;p[(I+176|0)>>3]=h;f[(I+184|0)>>2]=f[(a+64|0)>>2];f[(I+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(I+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(I+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(I+200|0)>>3]=e;p[(I+208|0)>>3]=d;f[(I+216|0)>>2]=f[a>>2];f[(I+216|0)+4>>2]=f[a+4>>2];f[(I+216|0)+8>>2]=f[a+8>>2];f[(I+216|0)+12>>2]=f[a+12>>2];b[(I+216|0)+16>>0]=b[a+16>>0]|0;c=2;u=a;f[a+2e3>>2]=6;f[a+2004>>2]=c|0;break a}f[a+120>>2]=c;f[a+1968>>2]=J;f[a+1984>>2]=K;f[a+1992>>2]=L}function x4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0,ba=0,ca=0,da=0.0;D=f[a+96>>2]|0;d=f[a+104>>2]|0;E=f[a+112>>2]|0;c=f[a+120>>2]|0;ca=f[a+136>>2]|0;F=+n[a+952>>2];G=+n[a+960>>2];H=+n[a+968>>2];I=+n[a+976>>2];J=+n[a+984>>2];K=+n[a+992>>2];L=f[a+1e3>>2]|0;M=f[a+1008>>2]|0;N=f[a+1016>>2]|0;O=f[a+1024>>2]|0;P=f[a+1032>>2]|0;Q=f[a+1040>>2]|0;R=+n[a+1048>>2];S=+n[a+1056>>2];T=+n[a+1064>>2];U=+n[a+1072>>2];V=+n[a+1080>>2];W=+n[a+1088>>2];X=+n[a+1096>>2];Y=+n[a+1104>>2];Z=+n[a+1112>>2];_=+n[a+1120>>2];$=+n[a+1128>>2];a:{if(ca){aa=a+24|0;ba=D;ca=aa+36|0;do{f[aa>>2]=f[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));e=+p[(D+40|0)>>3];g=+p[(D+48|0)>>3];h=+p[(D+56|0)>>3];i=+p[(D+64|0)>>3];j=+p[(D+72|0)>>3];k=+p[(D+80|0)>>3];c=f[(D+88|0)>>2]|0;d=f[(D+92|0)>>2]|0;l=f[(D+96|0)>>2]|0;m=f[(D+100|0)>>2]|0;o=f[(D+104|0)>>2]|0;q=f[(D+108|0)>>2]|0;r=+p[(D+112|0)>>3];s=+p[(D+120|0)>>3];t=+p[(D+128|0)>>3];v=+p[(D+136|0)>>3];w=+p[(D+144|0)>>3];x=+p[(D+152|0)>>3];y=+p[(D+160|0)>>3];z=+p[(D+168|0)>>3];A=+p[(D+176|0)>>3];f[(a+64|0)>>2]=f[(D+184|0)>>2];f[(a+64|0)+4>>2]=f[(D+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(D+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(D+184|0)+12>>2];B=+p[(D+200|0)>>3];C=+p[(D+208|0)>>3];f[a>>2]=f[(D+216|0)>>2];f[a+4>>2]=f[(D+216|0)+4>>2];f[a+8>>2]=f[(D+216|0)+8>>2];f[a+12>>2]=f[(D+216|0)+12>>2];b[a+16>>0]=b[(D+216|0)+16>>0]|0;aa=D;ba=E;ca=aa+36|0;do{f[aa>>2]=f[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));da=+p[(E+40|0)>>3];p[(E+40|0)>>3]=e;p[(D+40|0)>>3]=da;da=+p[(E+48|0)>>3];p[(E+48|0)>>3]=+p[(D+48|0)>>3];p[(D+48|0)>>3]=da;da=+p[(E+56|0)>>3];p[(E+56|0)>>3]=+p[(D+56|0)>>3];p[(D+56|0)>>3]=da;da=+p[(E+64|0)>>3];p[(E+64|0)>>3]=+p[(D+64|0)>>3];p[(D+64|0)>>3]=da;da=+p[(E+72|0)>>3];p[(E+72|0)>>3]=+p[(D+72|0)>>3];p[(D+72|0)>>3]=da;da=+p[(E+80|0)>>3];p[(E+80|0)>>3]=+p[(D+80|0)>>3];p[(D+80|0)>>3]=da;aa=f[(E+88|0)>>2]|0;f[(E+88|0)>>2]=c;f[(D+88|0)>>2]=aa;aa=f[(E+92|0)>>2]|0;f[(E+92|0)>>2]=f[(D+92|0)>>2];f[(D+92|0)>>2]=aa;aa=f[(E+96|0)>>2]|0;f[(E+96|0)>>2]=f[(D+96|0)>>2];f[(D+96|0)>>2]=aa;aa=f[(E+100|0)>>2]|0;f[(E+100|0)>>2]=f[(D+100|0)>>2];f[(D+100|0)>>2]=aa;f[(D+104|0)>>2]=f[(E+104|0)>>2];f[(D+108|0)>>2]=f[(E+108|0)>>2];da=+p[(E+112|0)>>3];p[(E+112|0)>>3]=+p[(D+112|0)>>3];p[(D+112|0)>>3]=da;da=+p[(E+120|0)>>3];p[(E+120|0)>>3]=+p[(D+120|0)>>3];p[(D+120|0)>>3]=da;da=+p[(E+128|0)>>3];p[(E+128|0)>>3]=+p[(D+128|0)>>3];p[(D+128|0)>>3]=da;da=+p[(E+136|0)>>3];p[(E+136|0)>>3]=+p[(D+136|0)>>3];p[(D+136|0)>>3]=da;da=+p[(E+144|0)>>3];p[(E+144|0)>>3]=+p[(D+144|0)>>3];p[(D+144|0)>>3]=da;da=+p[(E+152|0)>>3];p[(E+152|0)>>3]=+p[(D+152|0)>>3];p[(D+152|0)>>3]=da;da=+p[(E+160|0)>>3];p[(E+160|0)>>3]=+p[(D+160|0)>>3];p[(D+160|0)>>3]=da;da=+p[(E+168|0)>>3];p[(E+168|0)>>3]=+p[(D+168|0)>>3];p[(D+168|0)>>3]=da;da=+p[(E+176|0)>>3];p[(E+176|0)>>3]=+p[(D+176|0)>>3];p[(D+176|0)>>3]=da;f[(D+184|0)>>2]=f[(E+184|0)>>2];f[(D+184|0)+4>>2]=f[(E+184|0)+4>>2];f[(D+184|0)+8>>2]=f[(E+184|0)+8>>2];f[(D+184|0)+12>>2]=f[(E+184|0)+12>>2];p[(D+200|0)>>3]=+p[(E+200|0)>>3];p[(D+208|0)>>3]=+p[(E+208|0)>>3];f[(D+216|0)>>2]=f[(E+216|0)>>2];f[(D+216|0)+4>>2]=f[(E+216|0)+4>>2];f[(D+216|0)+8>>2]=f[(E+216|0)+8>>2];f[(D+216|0)+12>>2]=f[(E+216|0)+12>>2];b[(D+216|0)+16>>0]=b[(E+216|0)+16>>0]|0;aa=E;ba=a+24|0;ca=aa+36|0;do{f[aa>>2]=f[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));p[(E+40|0)>>3]=e;p[(E+48|0)>>3]=g;p[(E+56|0)>>3]=h;p[(E+64|0)>>3]=i;p[(E+72|0)>>3]=j;p[(E+80|0)>>3]=k;f[(E+88|0)>>2]=c;f[(E+92|0)>>2]=d;f[(E+96|0)>>2]=l;f[(E+100|0)>>2]=m;f[(E+104|0)>>2]=o;f[(E+108|0)>>2]=q;p[(E+112|0)>>3]=r;p[(E+120|0)>>3]=s;p[(E+128|0)>>3]=t;p[(E+136|0)>>3]=v;p[(E+144|0)>>3]=w;p[(E+152|0)>>3]=x;p[(E+160|0)>>3]=y;p[(E+168|0)>>3]=z;p[(E+176|0)>>3]=A;f[(E+184|0)>>2]=f[(a+64|0)>>2];f[(E+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(E+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(E+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(E+200|0)>>3]=B;p[(E+208|0)>>3]=C;f[(E+216|0)>>2]=f[a>>2];f[(E+216|0)+4>>2]=f[a+4>>2];f[(E+216|0)+8>>2]=f[a+8>>2];f[(E+216|0)+12>>2]=f[a+12>>2];b[(E+216|0)+16>>0]=b[a+16>>0]|0;c=1;u=a;f[a+2008>>2]=6;f[a+2012>>2]=c|0;break a}aa=a+24|0;ba=D;ca=aa+36|0;do{f[aa>>2]=f[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));F=+p[(D+40|0)>>3];G=+p[(D+48|0)>>3];H=+p[(D+56|0)>>3];I=+p[(D+64|0)>>3];J=+p[(D+72|0)>>3];K=+p[(D+80|0)>>3];L=f[(D+88|0)>>2]|0;M=f[(D+92|0)>>2]|0;N=f[(D+96|0)>>2]|0;O=f[(D+100|0)>>2]|0;P=f[(D+104|0)>>2]|0;Q=f[(D+108|0)>>2]|0;R=+p[(D+112|0)>>3];S=+p[(D+120|0)>>3];T=+p[(D+128|0)>>3];U=+p[(D+136|0)>>3];V=+p[(D+144|0)>>3];W=+p[(D+152|0)>>3];X=+p[(D+160|0)>>3];Y=+p[(D+168|0)>>3];Z=+p[(D+176|0)>>3];f[(a+64|0)>>2]=f[(D+184|0)>>2];f[(a+64|0)+4>>2]=f[(D+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(D+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(D+184|0)+12>>2];_=+p[(D+200|0)>>3];$=+p[(D+208|0)>>3];f[a>>2]=f[(D+216|0)>>2];f[a+4>>2]=f[(D+216|0)+4>>2];f[a+8>>2]=f[(D+216|0)+8>>2];f[a+12>>2]=f[(D+216|0)+12>>2];b[a+16>>0]=b[(D+216|0)+16>>0]|0;aa=D;ba=d;ca=aa+36|0;do{f[aa>>2]=f[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));da=+p[(d+40|0)>>3];p[(d+40|0)>>3]=F;p[(D+40|0)>>3]=da;da=+p[(d+48|0)>>3];p[(d+48|0)>>3]=+p[(D+48|0)>>3];p[(D+48|0)>>3]=da;da=+p[(d+56|0)>>3];p[(d+56|0)>>3]=+p[(D+56|0)>>3];p[(D+56|0)>>3]=da;da=+p[(d+64|0)>>3];p[(d+64|0)>>3]=+p[(D+64|0)>>3];p[(D+64|0)>>3]=da;da=+p[(d+72|0)>>3];p[(d+72|0)>>3]=+p[(D+72|0)>>3];p[(D+72|0)>>3]=da;da=+p[(d+80|0)>>3];p[(d+80|0)>>3]=+p[(D+80|0)>>3];p[(D+80|0)>>3]=da;E=f[(d+88|0)>>2]|0;f[(d+88|0)>>2]=L;f[(D+88|0)>>2]=E;E=f[(d+92|0)>>2]|0;f[(d+92|0)>>2]=f[(D+92|0)>>2];f[(D+92|0)>>2]=E;E=f[(d+96|0)>>2]|0;f[(d+96|0)>>2]=f[(D+96|0)>>2];f[(D+96|0)>>2]=E;E=f[(d+100|0)>>2]|0;f[(d+100|0)>>2]=f[(D+100|0)>>2];f[(D+100|0)>>2]=E;f[(D+104|0)>>2]=f[(d+104|0)>>2];f[(D+108|0)>>2]=f[(d+108|0)>>2];da=+p[(d+112|0)>>3];p[(d+112|0)>>3]=+p[(D+112|0)>>3];p[(D+112|0)>>3]=da;da=+p[(d+120|0)>>3];p[(d+120|0)>>3]=+p[(D+120|0)>>3];p[(D+120|0)>>3]=da;da=+p[(d+128|0)>>3];p[(d+128|0)>>3]=+p[(D+128|0)>>3];p[(D+128|0)>>3]=da;da=+p[(d+136|0)>>3];p[(d+136|0)>>3]=+p[(D+136|0)>>3];p[(D+136|0)>>3]=da;da=+p[(d+144|0)>>3];p[(d+144|0)>>3]=+p[(D+144|0)>>3];p[(D+144|0)>>3]=da;da=+p[(d+152|0)>>3];p[(d+152|0)>>3]=+p[(D+152|0)>>3];p[(D+152|0)>>3]=da;da=+p[(d+160|0)>>3];p[(d+160|0)>>3]=+p[(D+160|0)>>3];p[(D+160|0)>>3]=da;da=+p[(d+168|0)>>3];p[(d+168|0)>>3]=+p[(D+168|0)>>3];p[(D+168|0)>>3]=da;da=+p[(d+176|0)>>3];p[(d+176|0)>>3]=+p[(D+176|0)>>3];p[(D+176|0)>>3]=da;f[(D+184|0)>>2]=f[(d+184|0)>>2];f[(D+184|0)+4>>2]=f[(d+184|0)+4>>2];f[(D+184|0)+8>>2]=f[(d+184|0)+8>>2];f[(D+184|0)+12>>2]=f[(d+184|0)+12>>2];p[(D+200|0)>>3]=+p[(d+200|0)>>3];p[(D+208|0)>>3]=+p[(d+208|0)>>3];f[(D+216|0)>>2]=f[(d+216|0)>>2];f[(D+216|0)+4>>2]=f[(d+216|0)+4>>2];f[(D+216|0)+8>>2]=f[(d+216|0)+8>>2];f[(D+216|0)+12>>2]=f[(d+216|0)+12>>2]}f[a+120>>2]=c;n[a+952>>2]=F;n[a+960>>2]=G;n[a+968>>2]=H;n[a+976>>2]=I;n[a+984>>2]=J;n[a+992>>2]=K;f[a+1e3>>2]=L;f[a+1008>>2]=M;f[a+1016>>2]=N;f[a+1024>>2]=O;f[a+1032>>2]=P;f[a+1040>>2]=Q;n[a+1048>>2]=R;n[a+1056>>2]=S;n[a+1064>>2]=T;n[a+1072>>2]=U;n[a+1080>>2]=V;n[a+1088>>2]=W;n[a+1096>>2]=X;n[a+1104>>2]=Y;n[a+1112>>2]=Z;n[a+1120>>2]=_;n[a+1128>>2]=$;f[a+1968>>2]=aa;f[a+1984>>2]=ba;f[a+1992>>2]=ca}function y4a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0;E=f[a+96>>2]|0;F=f[a+104>>2]|0;c=f[a+112>>2]|0;J=+n[a+160>>2];e=+n[a+1152>>2];g=+n[a+1184>>2];h=+n[a+1224>>2];i=+n[a+1248>>2];j=+n[a+1280>>2];k=+n[a+1320>>2];d=f[a+1368>>2]|0;l=f[a+1408>>2]|0;m=f[a+1448>>2]|0;o=f[a+1504>>2]|0;q=f[a+1536>>2]|0;D=f[a+1576>>2]|0;r=+n[a+1592>>2];s=+n[a+1680>>2];t=+n[a+1768>>2];v=+n[a+1784>>2];w=+n[a+1792>>2];x=+n[a+1800>>2];y=+n[a+1808>>2];z=+n[a+1816>>2];A=+n[a+1824>>2];B=+n[a+1832>>2];C=+n[a+1840>>2];a:{p[(F+160|0)>>3]=J;J=+p[(c+168|0)>>3];p[(c+168|0)>>3]=+p[(F+168|0)>>3];p[(F+168|0)>>3]=J;J=+p[(c+176|0)>>3];p[(c+176|0)>>3]=+p[(F+176|0)>>3];p[(F+176|0)>>3]=J;f[(F+184|0)>>2]=f[(c+184|0)>>2];f[(F+184|0)+4>>2]=f[(c+184|0)+4>>2];f[(F+184|0)+8>>2]=f[(c+184|0)+8>>2];f[(F+184|0)+12>>2]=f[(c+184|0)+12>>2];p[(F+200|0)>>3]=+p[(c+200|0)>>3];p[(F+208|0)>>3]=+p[(c+208|0)>>3];f[(F+216|0)>>2]=f[(c+216|0)>>2];f[(F+216|0)+4>>2]=f[(c+216|0)+4>>2];f[(F+216|0)+8>>2]=f[(c+216|0)+8>>2];f[(F+216|0)+12>>2]=f[(c+216|0)+12>>2];b[(F+216|0)+16>>0]=b[(c+216|0)+16>>0]|0;G=c;H=a+24|0;I=G+36|0;do{f[G>>2]=f[H>>2];G=G+4|0;H=H+4|0}while((G|0)<(I|0));p[(c+40|0)>>3]=e;p[(c+48|0)>>3]=g;p[(c+56|0)>>3]=h;p[(c+64|0)>>3]=i;p[(c+72|0)>>3]=j;p[(c+80|0)>>3]=k;f[(c+88|0)>>2]=d;f[(c+92|0)>>2]=l;f[(c+96|0)>>2]=m;f[(c+100|0)>>2]=o;f[(c+104|0)>>2]=q;f[(c+108|0)>>2]=D;p[(c+112|0)>>3]=r;p[(c+120|0)>>3]=s;p[(c+128|0)>>3]=t;p[(c+136|0)>>3]=v;p[(c+144|0)>>3]=w;p[(c+152|0)>>3]=x;p[(c+160|0)>>3]=y;p[(c+168|0)>>3]=z;p[(c+176|0)>>3]=A;f[(c+184|0)>>2]=f[(a+64|0)>>2];f[(c+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(c+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(c+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(c+200|0)>>3]=B;p[(c+208|0)>>3]=C;f[(c+216|0)>>2]=f[a>>2];f[(c+216|0)+4>>2]=f[a+4>>2];f[(c+216|0)+8>>2]=f[a+8>>2];f[(c+216|0)+12>>2]=f[a+12>>2];b[(c+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(F+216|0)>>3]>>>0;d=~~+p[(E+216|0)>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=1;u=a;f[a+2016>>2]=6;f[a+2020>>2]=c|0;break a}e=+p[F+224>>3];g=+p[E+224>>3];if(!(e<g)){if(e>g){c=1;u=a;f[a+2016>>2]=6;f[a+2020>>2]=c|0;break a}if(!(A5a(F,E)|0)){c=1;u=a;f[a+2016>>2]=6;f[a+2020>>2]=c|0;break a}}}G=a+24|0;H=E;I=G+36|0;do{f[G>>2]=f[H>>2];G=G+4|0;H=H+4|0}while((G|0)<(I|0));e=+p[(E+40|0)>>3];g=+p[(E+48|0)>>3];h=+p[(E+56|0)>>3];i=+p[(E+64|0)>>3];j=+p[(E+72|0)>>3];k=+p[(E+80|0)>>3];c=f[(E+88|0)>>2]|0;d=f[(E+92|0)>>2]|0;l=f[(E+96|0)>>2]|0;m=f[(E+100|0)>>2]|0;o=f[(E+104|0)>>2]|0;q=f[(E+108|0)>>2]|0;r=+p[(E+112|0)>>3];s=+p[(E+120|0)>>3];t=+p[(E+128|0)>>3];v=+p[(E+136|0)>>3];w=+p[(E+144|0)>>3];x=+p[(E+152|0)>>3];y=+p[(E+160|0)>>3];z=+p[(E+168|0)>>3];A=+p[(E+176|0)>>3];f[(a+64|0)>>2]=f[(E+184|0)>>2];f[(a+64|0)+4>>2]=f[(E+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(E+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(E+184|0)+12>>2];B=+p[(E+200|0)>>3];C=+p[(E+208|0)>>3];f[a>>2]=f[(E+216|0)>>2];f[a+4>>2]=f[(E+216|0)+4>>2];f[a+8>>2]=f[(E+216|0)+8>>2];f[a+12>>2]=f[(E+216|0)+12>>2];b[a+16>>0]=b[(E+216|0)+16>>0]|0;G=E;H=F;I=G+36|0;do{f[G>>2]=f[H>>2];G=G+4|0;H=H+4|0}while((G|0)<(I|0));J=+p[(F+40|0)>>3];p[(F+40|0)>>3]=e;p[(E+40|0)>>3]=J;J=+p[(F+48|0)>>3];p[(F+48|0)>>3]=+p[(E+48|0)>>3];p[(E+48|0)>>3]=J;J=+p[(F+56|0)>>3];p[(F+56|0)>>3]=+p[(E+56|0)>>3];p[(E+56|0)>>3]=J;J=+p[(F+64|0)>>3];p[(F+64|0)>>3]=+p[(E+64|0)>>3];p[(E+64|0)>>3]=J;J=+p[(F+72|0)>>3];p[(F+72|0)>>3]=+p[(E+72|0)>>3];p[(E+72|0)>>3]=J;J=+p[(F+80|0)>>3];p[(F+80|0)>>3]=+p[(E+80|0)>>3];p[(E+80|0)>>3]=J;G=f[(F+88|0)>>2]|0;f[(F+88|0)>>2]=c;f[(E+88|0)>>2]=G;G=f[(F+92|0)>>2]|0;f[(F+92|0)>>2]=f[(E+92|0)>>2];f[(E+92|0)>>2]=G;G=f[(F+96|0)>>2]|0;f[(F+96|0)>>2]=f[(E+96|0)>>2];f[(E+96|0)>>2]=G;G=f[(F+100|0)>>2]|0;f[(F+100|0)>>2]=f[(E+100|0)>>2];f[(E+100|0)>>2]=G;f[(E+104|0)>>2]=f[(F+104|0)>>2];f[(E+108|0)>>2]=f[(F+108|0)>>2];J=+p[(F+112|0)>>3];p[(F+112|0)>>3]=+p[(E+112|0)>>3];p[(E+112|0)>>3]=J;J=+p[(F+120|0)>>3];p[(F+120|0)>>3]=+p[(E+120|0)>>3];p[(E+120|0)>>3]=J;J=+p[(F+128|0)>>3];p[(F+128|0)>>3]=+p[(E+128|0)>>3];p[(E+128|0)>>3]=J;J=+p[(F+136|0)>>3];p[(F+136|0)>>3]=+p[(E+136|0)>>3];p[(E+136|0)>>3]=J;J=+p[(F+144|0)>>3];p[(F+144|0)>>3]=+p[(E+144|0)>>3];p[(E+144|0)>>3]=J;J=+p[(F+152|0)>>3];p[(F+152|0)>>3]=+p[(E+152|0)>>3];p[(E+152|0)>>3]=J;J=+p[(F+160|0)>>3];p[(F+160|0)>>3]=+p[(E+160|0)>>3];p[(E+160|0)>>3]=J;J=+p[(F+168|0)>>3];p[(F+168|0)>>3]=+p[(E+168|0)>>3];p[(E+168|0)>>3]=J;J=+p[(F+176|0)>>3];p[(F+176|0)>>3]=+p[(E+176|0)>>3];p[(E+176|0)>>3]=J;f[(E+184|0)>>2]=f[(F+184|0)>>2];f[(E+184|0)+4>>2]=f[(F+184|0)+4>>2];f[(E+184|0)+8>>2]=f[(F+184|0)+8>>2];f[(E+184|0)+12>>2]=f[(F+184|0)+12>>2];p[(E+200|0)>>3]=+p[(F+200|0)>>3];p[(E+208|0)>>3]=+p[(F+208|0)>>3];f[(E+216|0)>>2]=f[(F+216|0)>>2];f[(E+216|0)+4>>2]=f[(F+216|0)+4>>2];f[(E+216|0)+8>>2]=f[(F+216|0)+8>>2];f[(E+216|0)+12>>2]=f[(F+216|0)+12>>2];b[(E+216|0)+16>>0]=b[(F+216|0)+16>>0]|0;G=F;H=a+24|0;I=G+36|0;do{f[G>>2]=f[H>>2];G=G+4|0;H=H+4|0}while((G|0)<(I|0));p[(F+40|0)>>3]=e;p[(F+48|0)>>3]=g;p[(F+56|0)>>3]=h;p[(F+64|0)>>3]=i;p[(F+72|0)>>3]=j;p[(F+80|0)>>3]=k;f[(F+88|0)>>2]=c;f[(F+92|0)>>2]=d;f[(F+96|0)>>2]=l;f[(F+100|0)>>2]=m;f[(F+104|0)>>2]=o;f[(F+108|0)>>2]=q;p[(F+112|0)>>3]=r;p[(F+120|0)>>3]=s;p[(F+128|0)>>3]=t;p[(F+136|0)>>3]=v;p[(F+144|0)>>3]=w;p[(F+152|0)>>3]=x;p[(F+160|0)>>3]=y;p[(F+168|0)>>3]=z;p[(F+176|0)>>3]=A;f[(F+184|0)>>2]=f[(a+64|0)>>2];f[(F+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(F+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(F+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(F+200|0)>>3]=B;p[(F+208|0)>>3]=C;f[(F+216|0)>>2]=f[a>>2];f[(F+216|0)+4>>2]=f[a+4>>2];f[(F+216|0)+8>>2]=f[a+8>>2];f[(F+216|0)+12>>2]=f[a+12>>2];b[(F+216|0)+16>>0]=b[a+16>>0]|0;c=2;u=a;f[a+2016>>2]=6;f[a+2020>>2]=c|0;break a}f[a+120>>2]=c;f[a+1968>>2]=G;f[a+1984>>2]=H;f[a+1992>>2]=I}
function z4a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0,ja=0,ka=0,la=0.0,ma=0;ka=u;u=u+1376|0;ja=b4a(a,c,d)|0;j=~~+p[e+216>>3]>>>0;g=~~+p[(d+216|0)>>3]>>>0;if(j>>>0>=g>>>0){if(j>>>0>g>>>0){u=ka;return ja|0}h=+p[e+224>>3];i=+p[d+224>>3];if(!(h<i)){if(h>i){u=ka;return ja|0}if(!(A5a(e,d)|0)){u=ka;return ja|0}}}J=ka+24|0;K=d;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));h=+p[(d+40|0)>>3];i=+p[(d+48|0)>>3];k=+p[(d+56|0)>>3];l=+p[(d+64|0)>>3];m=+p[(d+72|0)>>3];o=+p[(d+80|0)>>3];g=f[(d+88|0)>>2]|0;j=f[(d+92|0)>>2]|0;q=f[(d+96|0)>>2]|0;r=f[(d+100|0)>>2]|0;s=f[(d+104|0)>>2]|0;t=f[(d+108|0)>>2]|0;v=+p[(d+112|0)>>3];w=+p[(d+120|0)>>3];x=+p[(d+128|0)>>3];y=+p[(d+136|0)>>3];z=+p[(d+144|0)>>3];A=+p[(d+152|0)>>3];B=+p[(d+160|0)>>3];C=+p[(d+168|0)>>3];E=+p[(d+176|0)>>3];f[(ka+64|0)>>2]=f[(d+184|0)>>2];f[(ka+64|0)+4>>2]=f[(d+184|0)+4>>2];f[(ka+64|0)+8>>2]=f[(d+184|0)+8>>2];f[(ka+64|0)+12>>2]=f[(d+184|0)+12>>2];F=+p[(d+200|0)>>3];I=+p[(d+208|0)>>3];f[ka>>2]=f[(d+216|0)>>2];f[ka+4>>2]=f[(d+216|0)+4>>2];f[ka+8>>2]=f[(d+216|0)+8>>2];f[ka+12>>2]=f[(d+216|0)+12>>2];b[ka+16>>0]=b[(d+216|0)+16>>0]|0;J=d;K=e;L=J+36|0;do{f[J>>2]=f[K>>2];J=J+4|0;K=K+4|0}while((J|0)<(L|0));la=+p[(e+40|0)>>3];p[(e+40|0)>>3]=h;p[(d+40|0)>>3]=la;la=+p[(e+48|0)>>3];p[(e+48|0)>>3]=+p[(d+48|0)>>3];p[(d+48|0)>>3]=la;la=+p[(e+56|0)>>3];p[(e+56|0)>>3]=+p[(d+56|0)>>3];p[(d+56|0)>>3]=la;la=+p[(e+64|0)>>3];p[(e+64|0)>>3]=+p[(d+64|0)>>3];p[(d+64|0)>>3]=la;la=+p[(e+72|0)>>3];p[(e+72|0)>>3]=+p[(d+72|0)>>3];p[(d+72|0)>>3]=la;la=+p[(e+80|0)>>3];p[(e+80|0)>>3]=+p[(d+80|0)>>3];p[(d+80|0)>>3]=la;ma=f[(e+88|0)>>2]|0;f[(e+88|0)>>2]=g;f[(d+88|0)>>2]=ma;ma=f[(e+92|0)>>2]|0;f[(e+92|0)>>2]=f[(d+92|0)>>2];f[(d+92|0)>>2]=ma;ma=f[(e+96|0)>>2]|0;f[(e+96|0)>>2]=f[(d+96|0)>>2];f[(d+96|0)>>2]=ma;ma=f[(e+100|0)>>2]|0;f[(e+100|0)>>2]=f[(d+100|0)>>2];f[(d+100|0)>>2]=ma;f[(d+104|0)>>2]=f[(e+104|0)>>2];f[(d+108|0)>>2]=f[(e+108|0)>>2];la=+p[(e+112|0)>>3];p[(e+112|0)>>3]=+p[(d+112|0)>>3];p[(d+112|0)>>3]=la;la=+p[(e+120|0)>>3];p[(e+120|0)>>3]=+p[(d+120|0)>>3];p[(d+120|0)>>3]=la;la=+p[(e+128|0)>>3];p[(e+128|0)>>3]=+p[(d+128|0)>>3];p[(d+128|0)>>3]=la;f[ka+104>>2]=c;f[ka+112>>2]=d;f[ka+120>>2]=e;f[ka+128>>2]=M;n[ka+184>>2]=N;n[ka+192>>2]=O;n[ka+200>>2]=P;n[ka+208>>2]=Q;n[ka+216>>2]=R;n[ka+224>>2]=S;f[ka+232>>2]=T;f[ka+240>>2]=U;f[ka+248>>2]=V;f[ka+256>>2]=W;f[ka+264>>2]=X;f[ka+272>>2]=Y;n[ka+280>>2]=Z;n[ka+296>>2]=_;n[ka+304>>2]=$;n[ka+312>>2]=aa;n[ka+320>>2]=ba;n[ka+328>>2]=ca;n[ka+336>>2]=da;n[ka+344>>2]=ea;n[ka+352>>2]=fa;n[ka+360>>2]=ga;n[ka+368>>2]=ha;f[ka+440>>2]=ia;n[ka+560>>2]=h;n[ka+616>>2]=i;n[ka+688>>2]=k;n[ka+776>>2]=l;n[ka+832>>2]=m;n[ka+872>>2]=o;f[ka+952>>2]=g;f[ka+960>>2]=j;f[ka+968>>2]=q;f[ka+976>>2]=r;f[ka+984>>2]=s;f[ka+992>>2]=t;n[ka+1e3>>2]=v;n[ka+1008>>2]=w;n[ka+1016>>2]=x;n[ka+1024>>2]=y;n[ka+1032>>2]=z;n[ka+1040>>2]=A;f[ka+1048>>2]=ja;n[ka+1056>>2]=B;n[ka+1064>>2]=C;n[ka+1072>>2]=E;n[ka+1080>>2]=F;n[ka+1088>>2]=I;f[ka+1248>>2]=J;f[ka+1264>>2]=K;f[ka+1272>>2]=L;f[ka+1288>>2]=0;f[ka+1292>>2]=0;T6a(ka);M=f[ka+128>>2]|0;N=+n[ka+184>>2];O=+n[ka+192>>2];P=+n[ka+200>>2];Q=+n[ka+208>>2];R=+n[ka+216>>2];S=+n[ka+224>>2];T=f[ka+232>>2]|0;U=f[ka+240>>2]|0;V=f[ka+248>>2]|0;W=f[ka+256>>2]|0;X=f[ka+264>>2]|0;Y=f[ka+272>>2]|0;Z=+n[ka+280>>2];_=+n[ka+296>>2];$=+n[ka+304>>2];aa=+n[ka+312>>2];ba=+n[ka+320>>2];ca=+n[ka+328>>2];da=+n[ka+336>>2];ea=+n[ka+344>>2];fa=+n[ka+352>>2];ga=+n[ka+360>>2];ha=+n[ka+368>>2];ia=f[ka+440>>2]|0;J=f[ka+1248>>2]|0;K=f[ka+1264>>2]|0;L=f[ka+1272>>2]|0;G=f[ka+1288>>2]|0;D=f[ka+1292>>2]|0;H=+n[ka+1292>>2];f[ka+1288>>2]=0;f[ka+1292>>2]=0;if((G|0)==6)return D|0;f[ka+96>>2]=a;f[ka+104>>2]=c;f[ka+112>>2]=d;f[ka+128>>2]=M;n[ka+184>>2]=N;n[ka+192>>2]=O;n[ka+200>>2]=P;n[ka+208>>2]=Q;n[ka+216>>2]=R;n[ka+224>>2]=S;f[ka+232>>2]=T;f[ka+240>>2]=U;f[ka+248>>2]=V;f[ka+256>>2]=W;f[ka+264>>2]=X;f[ka+272>>2]=Y;n[ka+280>>2]=Z;n[ka+296>>2]=_;n[ka+304>>2]=$;n[ka+312>>2]=aa;n[ka+320>>2]=ba;n[ka+328>>2]=ca;n[ka+336>>2]=da;n[ka+344>>2]=ea;n[ka+352>>2]=fa;n[ka+360>>2]=ga;n[ka+368>>2]=ha;f[ka+440>>2]=ia;f[ka+1048>>2]=ja;f[ka+1248>>2]=J;f[ka+1264>>2]=K;f[ka+1272>>2]=L;f[ka+1280>>2]=0;f[ka+1284>>2]=0;S6a(ka);G=f[ka+1280>>2]|0;D=f[ka+1284>>2]|0;H=+n[ka+1284>>2];f[ka+1280>>2]=0;f[ka+1284>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function A4a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0,$=0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0.0,oa=0.0,pa=0.0,qa=0.0,ra=0.0,sa=0.0;$=u;u=u+1792|0;_=z4a(a,b,c,d)|0;j=~~+p[e+216>>3]>>>0;g=~~+p[(d+216|0)>>3]>>>0;if(j>>>0>=g>>>0){if(j>>>0>g>>>0){u=$;return _|0}h=+p[e+224>>3];i=+p[d+224>>3];if(!(h<i)){if(h>i){u=$;return _|0}if(!(A5a(e,d)|0)){u=$;return _|0}}}g=$+24|0;j=d;k=g+36|0;do{f[g>>2]=f[j>>2];g=g+4|0;j=j+4|0}while((g|0)<(k|0));sa=+p[(d+40|0)>>3];ra=+p[(d+48|0)>>3];qa=+p[(d+56|0)>>3];pa=+p[(d+64|0)>>3];oa=+p[(d+72|0)>>3];na=+p[(d+80|0)>>3];ma=f[(d+88|0)>>2]|0;la=f[(d+92|0)>>2]|0;ka=f[(d+96|0)>>2]|0;ja=f[(d+100|0)>>2]|0;ia=f[(d+104|0)>>2]|0;ha=f[(d+108|0)>>2]|0;ga=+p[(d+112|0)>>3];fa=+p[(d+120|0)>>3];ea=+p[(d+128|0)>>3];da=+p[(d+136|0)>>3];ca=+p[(d+144|0)>>3];ba=+p[(d+152|0)>>3];aa=+p[(d+160|0)>>3];h=+p[(d+168|0)>>3];i=+p[(d+176|0)>>3];f[($+64|0)>>2]=f[(d+184|0)>>2];f[($+64|0)+4>>2]=f[(d+184|0)+4>>2];f[($+64|0)+8>>2]=f[(d+184|0)+8>>2];f[($+64|0)+12>>2]=f[(d+184|0)+12>>2];f[$+112>>2]=c;f[$+120>>2]=d;f[$+128>>2]=e;f[$+136>>2]=l;n[$+200>>2]=m;n[$+208>>2]=o;n[$+216>>2]=q;n[$+224>>2]=r;n[$+232>>2]=s;n[$+240>>2]=t;f[$+248>>2]=v;f[$+256>>2]=w;f[$+264>>2]=x;f[$+272>>2]=y;f[$+280>>2]=z;n[$+616>>2]=sa;n[$+688>>2]=ra;n[$+776>>2]=qa;n[$+832>>2]=pa;n[$+880>>2]=oa;n[$+928>>2]=na;f[$+984>>2]=ma;f[$+1040>>2]=la;f[$+1112>>2]=ka;f[$+1248>>2]=ja;f[$+1296>>2]=ia;f[$+1344>>2]=ha;n[$+1384>>2]=ga;n[$+1392>>2]=fa;n[$+1400>>2]=ea;n[$+1408>>2]=da;n[$+1416>>2]=ca;n[$+1424>>2]=ba;n[$+1432>>2]=aa;n[$+1440>>2]=h;n[$+1448>>2]=i;f[$+1488>>2]=_;f[$+1624>>2]=g;f[$+1640>>2]=j;f[$+1648>>2]=k;f[$+1672>>2]=0;f[$+1676>>2]=0;W6a($);l=f[$+136>>2]|0;m=+n[$+200>>2];o=+n[$+208>>2];q=+n[$+216>>2];r=+n[$+224>>2];s=+n[$+232>>2];t=+n[$+240>>2];v=f[$+248>>2]|0;w=f[$+256>>2]|0;x=f[$+264>>2]|0;y=f[$+272>>2]|0;z=f[$+280>>2]|0;g=f[$+1624>>2]|0;j=f[$+1640>>2]|0;k=f[$+1648>>2]|0;G=f[$+1672>>2]|0;D=f[$+1676>>2]|0;H=+n[$+1676>>2];f[$+1672>>2]=0;f[$+1676>>2]=0;if((G|0)==6)return D|0;f[$+104>>2]=b;f[$+112>>2]=c;f[$+120>>2]=d;f[$+136>>2]=l;n[$+200>>2]=m;n[$+208>>2]=o;n[$+216>>2]=q;n[$+224>>2]=r;n[$+232>>2]=s;n[$+240>>2]=t;f[$+248>>2]=v;f[$+256>>2]=w;f[$+264>>2]=x;f[$+272>>2]=y;f[$+280>>2]=z;n[$+584>>2]=A;n[$+592>>2]=B;n[$+600>>2]=C;n[$+608>>2]=E;n[$+624>>2]=F;n[$+632>>2]=I;f[$+640>>2]=J;f[$+648>>2]=K;f[$+656>>2]=L;f[$+664>>2]=M;f[$+672>>2]=N;f[$+680>>2]=O;n[$+696>>2]=P;n[$+704>>2]=Q;n[$+712>>2]=R;n[$+720>>2]=S;n[$+728>>2]=T;n[$+736>>2]=U;n[$+744>>2]=V;n[$+752>>2]=W;n[$+760>>2]=X;n[$+768>>2]=Y;n[$+784>>2]=Z;f[$+1488>>2]=_;f[$+1624>>2]=g;f[$+1640>>2]=j;f[$+1648>>2]=k;f[$+1664>>2]=0;f[$+1668>>2]=0;V6a($);l=f[$+136>>2]|0;A=+n[$+584>>2];B=+n[$+592>>2];C=+n[$+600>>2];E=+n[$+608>>2];F=+n[$+624>>2];I=+n[$+632>>2];J=f[$+640>>2]|0;K=f[$+648>>2]|0;L=f[$+656>>2]|0;M=f[$+664>>2]|0;N=f[$+672>>2]|0;O=f[$+680>>2]|0;P=+n[$+696>>2];Q=+n[$+704>>2];R=+n[$+712>>2];S=+n[$+720>>2];T=+n[$+728>>2];U=+n[$+736>>2];V=+n[$+744>>2];W=+n[$+752>>2];X=+n[$+760>>2];Y=+n[$+768>>2];Z=+n[$+784>>2];g=f[$+1624>>2]|0;j=f[$+1640>>2]|0;k=f[$+1648>>2]|0;G=f[$+1664>>2]|0;D=f[$+1668>>2]|0;H=+n[$+1668>>2];f[$+1664>>2]=0;f[$+1668>>2]=0;if((G|0)==6)return D|0;f[$+96>>2]=a;f[$+104>>2]=b;f[$+112>>2]=c;f[$+136>>2]=l;n[$+584>>2]=A;n[$+592>>2]=B;n[$+600>>2]=C;n[$+608>>2]=E;n[$+624>>2]=F;n[$+632>>2]=I;f[$+640>>2]=J;f[$+648>>2]=K;f[$+656>>2]=L;f[$+664>>2]=M;f[$+672>>2]=N;f[$+680>>2]=O;n[$+696>>2]=P;n[$+704>>2]=Q;n[$+712>>2]=R;n[$+720>>2]=S;n[$+728>>2]=T;n[$+736>>2]=U;n[$+744>>2]=V;n[$+752>>2]=W;n[$+760>>2]=X;n[$+768>>2]=Y;n[$+784>>2]=Z;f[$+1488>>2]=_;f[$+1624>>2]=g;f[$+1640>>2]=j;f[$+1648>>2]=k;f[$+1656>>2]=0;f[$+1660>>2]=0;U6a($);G=f[$+1656>>2]|0;D=f[$+1660>>2]|0;H=+n[$+1660>>2];f[$+1656>>2]=0;f[$+1660>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function B4a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0.0,F=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0;B=0;C=u;u=u+1952|0;c=1;g=(b-a|0)/240|0|0;if(c)switch(g|0){case 2:{g=~~+p[b+-24>>3]>>>0;c=~~+p[a+216>>3]>>>0;if(g>>>0>=c>>>0){if(g>>>0>c>>>0){b=1;u=C;return b|0}d=+p[b+-16>>3];e=+p[a+224>>3];if(!(d<e)){if(d>e){b=1;u=C;return b|0}if(!(A5a(b+-240|0,a)|0)){b=1;u=C;return b|0}}}c=C+40|0;g=a;i=c+36|0;do{f[c>>2]=f[g>>2];c=c+4|0;g=g+4|0}while((c|0)<(i|0));R=+p[(a+40|0)>>3];Q=+p[(a+48|0)>>3];P=+p[(a+56|0)>>3];O=+p[(a+64|0)>>3];N=+p[(a+72|0)>>3];M=+p[(a+80|0)>>3];w=f[(a+88|0)>>2]|0;x=f[(a+92|0)>>2]|0;y=f[(a+96|0)>>2]|0;z=f[(a+100|0)>>2]|0;A=f[(a+104|0)>>2]|0;B=f[(a+108|0)>>2]|0;L=+p[(a+112|0)>>3];K=+p[(a+120|0)>>3];J=+p[(a+128|0)>>3];I=+p[(a+136|0)>>3];F=+p[(a+144|0)>>3];E=+p[(a+152|0)>>3];d=+p[(a+160|0)>>3];e=+p[(a+168|0)>>3];f[C+304>>2]=a;f[C+312>>2]=b;f[C+400>>2]=h;n[C+632>>2]=R;n[C+704>>2]=Q;n[C+776>>2]=P;n[C+840>>2]=O;n[C+912>>2]=N;n[C+976>>2]=M;f[C+1104>>2]=w;f[C+1176>>2]=x;f[C+1248>>2]=y;f[C+1336>>2]=z;f[C+1376>>2]=A;f[C+1424>>2]=B;n[C+1472>>2]=L;n[C+1520>>2]=K;n[C+1568>>2]=J;n[C+1584>>2]=I;n[C+1592>>2]=F;n[C+1600>>2]=E;n[C+1608>>2]=d;n[C+1616>>2]=e;f[C+1792>>2]=c;f[C+1808>>2]=g;f[C+1816>>2]=i;f[C+1864>>2]=0;f[C+1868>>2]=0;Y6a(C);G=f[C+1864>>2]|0;D=f[C+1868>>2]|0;H=+n[C+1868>>2];f[C+1864>>2]=0;f[C+1868>>2]=0;if((G|0)==6)return D|0}default:c=1}if(c)switch(g|0){case 3:{b4a(a,a+240|0,b+-240|0)|0;b=1;u=C;return b|0}case 4:{z4a(a,a+240|0,a+480|0,b+-240|0)|0;b=1;u=C;return b|0}case 5:{A4a(a,a+240|0,a+480|0,a+720|0,b+-240|0)|0;b=1;u=C;return b|0}case 1:case 0:{b=1;u=C;return b|0}default:c=1}if(c)switch(g|0){default:{b4a(a,a+240|0,a+480|0)|0;a:{c=1;if(c){c=0;if((a+720|0|0)==(b|0)){y=1;A=0}else c=1}if(c)if(1){l=(C+40|0)+40|0;m=(C+40|0)+64|0;o=(C+40|0)+88|0;q=(C+40|0)+100|0;r=(C+40|0)+112|0;s=(C+40|0)+136|0;t=(C+40|0)+160|0;v=(C+40|0)+184|0;w=(C+40|0)+200|0;x=(C+40|0)+216|0;k=a+720|0;h=0;j=a+480|0;while(1){c=~~+p[k+216>>3]>>>0;g=~~+p[j+216>>3]>>>0;if(c>>>0<g>>>0)B=18;else if(c>>>0>g>>>0)z=h;else{d=+p[k+224>>3];e=+p[j+224>>3];if(d<e)B=18;else if(d>e)z=h;else if(A5a(k,j)|0)B=18;else z=h}if((B|0)==18){B=0;c=C+40|0;g=k;i=c+36|0;do{f[c>>2]=f[g>>2];c=c+4|0;g=g+4|0}while((c|0)<(i|0));S=k+40|0;f[l>>2]=f[S>>2];f[l+4>>2]=f[S+4>>2];f[l+8>>2]=f[S+8>>2];f[l+12>>2]=f[S+12>>2];f[l+16>>2]=f[S+16>>2];f[l+20>>2]=f[S+20>>2];p[l>>3]=+p[S>>3];p[((C+40|0)+48|0)>>3]=+p[k+48>>3];p[((C+40|0)+56|0)>>3]=+p[k+56>>3];S=k+64|0;f[m>>2]=f[S>>2];f[m+4>>2]=f[S+4>>2];f[m+8>>2]=f[S+8>>2];f[m+12>>2]=f[S+12>>2];f[m+16>>2]=f[S+16>>2];f[m+20>>2]=f[S+20>>2];f[C+304>>2]=a;f[C+312>>2]=b;f[C+328>>2]=k;f[C+336>>2]=h;f[C+344>>2]=j;f[C+360>>2]=y;f[C+368>>2]=z;f[C+392>>2]=A;f[C+440>>2]=m;f[C+448>>2]=o;f[C+456>>2]=q;f[C+464>>2]=r;f[C+472>>2]=s;f[C+480>>2]=t;f[C+488>>2]=v;f[C+496>>2]=w;f[C+504>>2]=x;f[C+560>>2]=S;f[C+1792>>2]=c;f[C+1808>>2]=g;f[C+1816>>2]=i;f[C+1856>>2]=0;f[C+1860>>2]=0;X6a(C);y=f[C+360>>2]|0;z=f[C+368>>2]|0;A=f[C+392>>2]|0;G=f[C+1856>>2]|0;D=f[C+1860>>2]|0;H=+n[C+1860>>2];f[C+1856>>2]=0;f[C+1860>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 1:break a}}c=k+240|0;if((c|0)==(b|0)){y=1;A=0;break}else{j=k;k=c;h=z}}}}S=A|y;u=C;return S|0}}return 0}function C4a(){if(!(b[209528]|0))rrb(209528)|0;f[52808]=215189;return}function D4a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[b+56>>2]|0;if(!e)e=0;else e=f[f[e>>2]>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];Pja(f[b+48>>2]|0,e,d,a);return}function E4a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;q=u;u=u+1120|0;j=q+1048|0;o=q+520|0;l=q+1040|0;m=q;if(b[a+55>>0]|0)if(!(f[d+196>>2]&16777216)){u=q;return}g=a+56|0;do if(b[a+23>>0]|0){if(f[g>>2]|0)if(b[a+8>>0]|0)break;if(!(qxa(f[a+48>>2]|0,d+116|0,b[a+32>>0]|0)|0)){u=q;return}}while(0);h=f[d+4>>2]|0;i=f[d+96>>2]|0;g=f[g>>2]|0;if(!g)g=0;else g=f[f[g>>2]>>2]|0;f[j>>2]=f[i>>2];H=j+4|0;f[H>>2]=f[i+4>>2];G=j+8|0;f[G>>2]=f[i+8>>2];F=j+12|0;f[F>>2]=f[i+12>>2];E=j+16|0;f[E>>2]=f[i+16>>2];D=j+20|0;f[D>>2]=f[i+20>>2];C=j+24|0;f[C>>2]=f[i+24>>2];B=j+28|0;f[B>>2]=f[i+28>>2];A=j+32|0;f[A>>2]=f[i+32>>2];z=j+36|0;f[z>>2]=f[i+36>>2];y=j+40|0;f[y>>2]=f[i+40>>2];x=j+44|0;f[x>>2]=f[i+44>>2];w=j+48|0;f[w>>2]=f[i+48>>2];v=j+52|0;f[v>>2]=f[i+52>>2];t=j+56|0;f[t>>2]=f[i+56>>2];s=j+60|0;f[s>>2]=f[i+60>>2];Pja(f[a+48>>2]|0,g,d,j);f[o>>2]=a;k=a+120|0;f[o+4>>2]=k;r=o+8|0;f[r>>2]=d;g=o+12|0;f[g>>2]=h;jka(o+16|0,f[h+44>>2]|0);f[o+100>>2]=i;p[o+104>>3]=+n[j>>2];p[o+112>>3]=+n[H>>2];p[o+120>>3]=+n[G>>2];p[o+128>>3]=+n[F>>2];p[o+136>>3]=+n[E>>2];p[o+144>>3]=+n[D>>2];p[o+152>>3]=+n[C>>2];p[o+160>>3]=+n[B>>2];p[o+168>>3]=+n[A>>2];p[o+176>>3]=+n[z>>2];p[o+184>>3]=+n[y>>2];p[o+192>>3]=+n[x>>2];p[o+200>>3]=+n[w>>2];p[o+208>>3]=+n[v>>2];p[o+216>>3]=+n[t>>2];p[o+224>>3]=+n[s>>2];i=(f[(f[r>>2]|0)+4>>2]|0)!=(f[g>>2]|0);b[o+361>>0]=i&1;j=d+196|0;if(i)g=1;else g=(f[j>>2]|0)>>>1&1;b[o+362>>0]=g;p[o+368>>3]=+p[(f[o>>2]|0)+112>>3];f[o+504>>2]=0;p[o+512>>3]=0.0;F4a(o,c,e)|0;if(f[j>>2]&1048576|0)if(!(b[a+21>>0]|0)){h=Uoa(d)|0;h=f[h>>2]|0;soa(l);i=f[l>>2]|0;g=f[l+4>>2]|0;if(g|0)Ppb(g);f[m>>2]=a;f[m+4>>2]=k;G=m+8|0;f[G>>2]=d;H=m+12|0;f[H>>2]=h;jka(m+16|0,f[h+44>>2]|0);f[m+100>>2]=i;p[m+104>>3]=+n[i>>2];p[m+112>>3]=+n[i+4>>2];p[m+120>>3]=+n[i+8>>2];p[m+128>>3]=+n[i+12>>2];p[m+136>>3]=+n[i+16>>2];p[m+144>>3]=+n[i+20>>2];p[m+152>>3]=+n[i+24>>2];p[m+160>>3]=+n[i+28>>2];p[m+168>>3]=+n[i+32>>2];p[m+176>>3]=+n[i+36>>2];p[m+184>>3]=+n[i+40>>2];p[m+192>>3]=+n[i+44>>2];p[m+200>>3]=+n[i+48>>2];p[m+208>>3]=+n[i+52>>2];p[m+216>>3]=+n[i+56>>2];p[m+224>>3]=+n[i+60>>2];H=(f[(f[G>>2]|0)+4>>2]|0)!=(f[H>>2]|0);b[m+361>>0]=H&1;if(H)g=1;else g=(f[j>>2]|0)>>>1&1;b[m+362>>0]=g;p[m+368>>3]=+p[(f[m>>2]|0)+112>>3];f[m+504>>2]=0;p[m+512>>3]=0.0;F4a(m,c,e)|0;g=m+64|0;h=f[m+76>>2]|0;if(h|0)Pha(h,g);g=f[g>>2]|0;if(g|0){h=m+68|0;i=f[h>>2]|0;if((i|0)!=(g|0))f[h>>2]=i+(~((i+-4-g|0)>>>2)<<2);Zpb(g)}g=m+48|0;h=f[m+60>>2]|0;if(h|0)Qha(h,g);i=f[g>>2]|0;if(i|0){g=m+52|0;h=f[g>>2]|0;if((h|0)!=(i|0))f[g>>2]=h+(~((h+-2-i|0)>>>1)<<1);Zpb(i)}}g=o+64|0;h=f[o+76>>2]|0;if(h|0)Pha(h,g);g=f[g>>2]|0;if(g|0){h=o+68|0;i=f[h>>2]|0;if((i|0)!=(g|0))f[h>>2]=i+(~((i+-4-g|0)>>>2)<<2);Zpb(g)}g=o+48|0;h=f[o+60>>2]|0;if(h|0)Qha(h,g);i=f[g>>2]|0;if(i|0){g=o+52|0;h=f[g>>2]|0;if((h|0)!=(i|0))f[g>>2]=h+(~((h+-2-i|0)>>>1)<<1);Zpb(i)}u=q;return}function F4a(a,c,d){a=a|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=0;o=u;u=u+4176|0;i=f[a>>2]|0;h=(b[i+24>>0]|0)!=0;e=(f[(f[(f[(a+12|0)>>2]|0)+44>>2]|0)+24>>2]|0)!=0;if(!(f[i+56>>2]|0))l=0;else if((b[i+12>>0]|0)==0|e^1)l=1;else l=(c|0)==2?1:(f[(f[a+8>>2]|0)+196>>2]&24576|0)==24576;do if(!(c&1))j=0;else if(!(b[i+109>>0]|0))j=0;else{if(!(b[i+20>>0]|0)){if(!e){j=0;break}}else if(!(+p[i+112>>3]>=d)|e^1){j=0;break}if(h)e=(b[i+26>>0]|0)==0;else e=0;j=YWa(i+52|0,e,f[i+104>>2]|0,f[a+8>>2]|0)|0}while(0);if((c&2|0)!=0|l){c=f[a>>2]|0;if(!(b[c+110>>0]|0))g=0;else if(!(f[(f[(f[(a+12|0)>>2]|0)+44>>2]|0)+28>>2]|0))g=0;else{if(h)e=(b[c+27>>0]|0)==0;else e=0;g=ZWa(i+52|0,e,f[c+104>>2]|0,f[a+8>>2]|0)|0;c=f[a>>2]|0}if(!(b[c+111>>0]|0))c=0;else if(!(f[(f[(f[(a+12|0)>>2]|0)+44>>2]|0)+32>>2]|0))c=0;else{if(h)e=(b[c+28>>0]|0)==0;else e=0;c=_Wa(i+52|0,e,f[c+104>>2]|0,f[a+8>>2]|0)|0}}else{g=0;c=0}if(!(c|(j|g))){m=0;u=o;return m|0}e=f[(f[(a+8|0)>>2]|0)+108>>2]|0;if(e|0)if(!(q5a(f[a>>2]|0,e)|0)){m=0;u=o;return m|0}i=1;f[o+656>>2]=a;n[o+672>>2]=d;f[o+920>>2]=k;f[o+3160>>2]=l;f[o+3712>>2]=g;f[o+3728>>2]=j;f[o+3744>>2]=c;f[o+3816>>2]=m;f[o+3824>>2]=i;f[o+3968>>2]=0;f[o+3972>>2]=0;a7a(o);G=f[o+3968>>2]|0;D=f[o+3972>>2]|0;H=+n[o+3972>>2];f[o+3968>>2]=0;f[o+3972>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function G4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;k=f[m>>2]|0;d=f[a>>2]|0;j=(k-d|0)/208|0;e=j+1|0;c=d;g=k;if(e>>>0>20648881)fob(a);n=a+8|0;l=((f[n>>2]|0)-d|0)/208|0;h=l<<1;h=l>>>0<10324440?(h>>>0<e>>>0?e:h):20648881;do if(!h)i=0;else if(h>>>0>20648881)ud();else{i=Wpb(h*208|0)|0;break}while(0);d=i+(j*208|0)|0;e=d;l=i+(h*208|0)|0;Krb(d|0,0,208)|0;f[i+(j*208|0)+100>>2]=-1;b[i+(j*208|0)+200>>0]=0;h=d+208|0;if((g|0)==(c|0))i=k;else{do{g=g+-208|0;eM(d+-208|0,g);d=e+-208|0;e=d}while((g|0)!=(c|0));i=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=h;f[n>>2]=l;h=i;if((c|0)!=(h|0))do{d=f[c+-120>>2]|0;if(d|0){e=c+-116|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-12-d|0)>>>0)/12|0)*12|0);Zpb(d)}c=c+-208|0}while((c|0)!=(h|0));if(!i)return;Zpb(i);return}function H4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;o=a+4|0;c=f[o>>2]|0;d=f[a>>2]|0;g=(c-d|0)/120|0;e=g+1|0;n=d;i=c;if(e>>>0>35791394)fob(a);q=a+8|0;l=((f[q>>2]|0)-d|0)/120|0;m=l<<1;e=l>>>0<17895697?(m>>>0<e>>>0?e:m):35791394;do if(!e)h=0;else if(e>>>0>35791394)ud();else{h=Wpb(e*120|0)|0;break}while(0);g=h+(g*120|0)|0;d=g;l=h+(e*120|0)|0;j=g;k=j+120|0;do{f[j>>2]=0;j=j+4|0}while((j|0)<(k|0));m=g+120|0;if((i|0)!=(n|0)){h=i;e=g;do{c=h;h=h+-120|0;j=e+-120|0;g=h;k=j+36|0;do{f[j>>2]=f[g>>2];j=j+4|0;g=g+4|0}while((j|0)<(k|0));p[e+-80>>3]=+p[c+-80>>3];p[e+-72>>3]=+p[c+-72>>3];p[e+-64>>3]=+p[c+-64>>3];k=e+-56|0;j=c+-56|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];p[e+-40>>3]=+p[c+-40>>3];p[e+-32>>3]=+p[c+-32>>3];k=e+-24|0;j=c+-24|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];b[k+16>>0]=b[j+16>>0]|0;e=d+-120|0;d=e}while((h|0)!=(n|0));c=f[a>>2]|0}f[a>>2]=d;f[o>>2]=m;f[q>>2]=l;if(!c)return;Zpb(c);return}function I4a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0;v=u;u=u+1552|0;m=v+1408|0;e=v+1040|0;j=v+840|0;k=v+792|0;q=v+16|0;l=v+1544|0;r=v;s=v+1536|0;h=a+56|0;d=c+168|0;i=a+104|0;if(!(S4a(a,f[h>>2]|0,d,f[i>>2]|0)|0)){t=1;u=v;return t|0}if(+p[c+184>>3]<1.0){if((f[a+120>>2]|0)==(f[a+124>>2]|0)){t=0;u=v;return t|0}t=+p[a+112>>3]*1.0001<+p[c+192>>3];u=v;return t|0}o=a+64|0;g=~~+p[c+176>>3]>>>0&-2;f[s>>2]=~~+p[d>>3]>>>0&-2;f[s+4>>2]=g;g=J4a(o,s)|0;if(!g)t=7;else if(!(+p[g+16>>3]<=+p[c+192>>3]))t=7;else d=1;a:do if((t|0)==7){g=f[f[h>>2]>>2]|0;f[e>>2]=f[g>>2];p[e+8>>3]=+p[g+8>>3];p[e+16>>3]=+p[g+16>>3];p[e+24>>3]=+p[g+24>>3];p[e+32>>3]=+p[g+32>>3];p[e+40>>3]=+p[g+40>>3];p[e+48>>3]=+p[g+48>>3];p[e+56>>3]=+p[g+56>>3];p[e+64>>3]=+p[g+64>>3];p[e+72>>3]=+p[g+72>>3];p[e+80>>3]=+p[g+80>>3];p[e+88>>3]=+p[g+88>>3];p[e+96>>3]=+p[g+96>>3];p[e+104>>3]=+p[g+104>>3];p[e+112>>3]=+p[g+112>>3];p[e+120>>3]=+p[g+120>>3];p[e+128>>3]=+p[g+128>>3];p[e+136>>3]=+p[g+136>>3];p[e+144>>3]=+p[g+144>>3];p[e+152>>3]=+p[g+152>>3];p[e+160>>3]=+p[g+160>>3];p[e+168>>3]=+p[g+168>>3];p[e+176>>3]=+p[g+176>>3];p[e+184>>3]=+p[g+184>>3];p[e+192>>3]=+p[g+192>>3];p[e+200>>3]=+p[g+200>>3];p[e+208>>3]=+p[g+208>>3];p[e+216>>3]=+p[g+216>>3];p[e+224>>3]=+p[g+224>>3];p[e+232>>3]=+p[g+232>>3];p[e+240>>3]=+p[g+240>>3];p[e+248>>3]=+p[g+248>>3];p[e+256>>3]=+p[g+256>>3];p[e+264>>3]=+p[g+264>>3];p[e+272>>3]=+p[g+272>>3];p[e+280>>3]=+p[g+280>>3];p[e+288>>3]=+p[g+288>>3];p[e+296>>3]=+p[g+296>>3];p[e+304>>3]=+p[g+304>>3];p[e+312>>3]=+p[g+312>>3];p[e+320>>3]=+p[g+320>>3];p[e+328>>3]=+p[g+328>>3];p[e+336>>3]=+p[g+336>>3];p[e+344>>3]=+p[g+344>>3];p[e+352>>3]=+p[g+352>>3];p[e+360>>3]=+p[g+360>>3];lXa(j,e,d,(f[h>>2]|0)+8|0);d=k;e=a;g=d+48|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));b[k+20>>0]=1;b[k+27>>0]=0;b[k+28>>0]=0;b[k+22>>0]=1;b[k+23>>0]=0;b[k+9>>0]=0;f[k+16>>2]=-1;e=f[a+48>>2]|0;f[l>>2]=j;b[l+4>>0]=0;d=f[i>>2]|0;b[m>>0]=b[l>>0]|0;b[m+1>>0]=b[l+1>>0]|0;b[m+2>>0]=b[l+2>>0]|0;b[m+3>>0]=b[l+3>>0]|0;b[m+4>>0]=b[l+4>>0]|0;b[m+5>>0]=b[l+5>>0]|0;b[m+6>>0]=b[l+6>>0]|0;b[m+7>>0]=b[l+7>>0]|0;DXa(q,k,1,e,a+52|0,m,d);d=q+60|0;e=f[d>>2]|0;k=e+24|0;A=+p[k>>3];y=-A;l=e+32|0;B=+p[l>>3];x=-B;g=e+40|0;z=+p[g>>3];w=-z;z=+L(+(A*A+(B*B+z*z)));B=+p[c+64>>3]+y/z*.0001;A=+p[c+72>>3]+x/z*.0001;z=w/z*.0001+ +p[c+80>>3];p[e>>3]=B;p[e+8>>3]=A;p[e+16>>3]=z;p[k>>3]=y;p[l>>3]=x;p[g>>3]=w;n[e+48>>2]=B;n[e+52>>2]=A;n[e+56>>2]=z;n[e+60>>2]=y;n[e+64>>2]=x;n[e+68>>2]=w;w=+rWa(f[d>>2]|0,(f[f[q+56>>2]>>2]|0)+8|0);d=q+88|0;p[d>>3]=w;e=q+112|0;p[e>>3]=w;g=f[a+120>>2]|0;do if((g|0)==(f[a+124>>2]|0))t=12;else{p[m>>3]=1.0;a=m+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+40>>3]=1.0;a=m+48|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+80>>3]=1.0;a=m+88|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+120>>3]=1.0;a=dXa(f[g+184>>2]|0)|0;v5a(r,q,g+112|0,m,a,+p[e>>3],(b[g+188>>0]|0)!=0,(b[g+189>>0]|0)!=0);if(b[r>>0]|0)if(+p[r+8>>3]<+p[d>>3]){uXa(q);break}t=12}while(0);do if((t|0)==12){b[q+96>>0]=1;OXa(q);if((f[q+120>>2]|0)==(f[q+124>>2]|0)){uXa(q);d=0;break a}else{t=+p[e>>3]<+p[d>>3];uXa(q);if(t)break;else{d=0;break a}}}while(0);B=+p[c+192>>3];d=K4a(o,s)|0;p[d>>3]=B;d=1}while(0);t=d;u=v;return t|0}function J4a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=(k<<6)+-1640531527+(k>>>2)+i^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function K4a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0;j=f[b>>2]|0;i=f[b+4>>2]|0;q=(j<<6)+-1640531527+(j>>>2)+i^j;k=a+4|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(m)b=0;else{g=l+-1|0;c=(g&l|0)==0;if(c)h=q&g;else if(q>>>0<l>>>0)h=q;else h=(q>>>0)%(l>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{b=f[b>>2]|0;if(!b)b=h;else{if(c){while(1){o=f[b+4>>2]|0;if(!((o|0)==(q|0)|(o&g|0)==(h|0))){b=h;break a}if((f[b+8>>2]|0)==(j|0))if((f[b+12>>2]|0)==(i|0))break;b=f[b>>2]|0;if(!b){b=h;break a}}a=b+16|0;return a|0}while(1){c=f[b+4>>2]|0;if((c|0)!=(q|0)){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}if((f[b+8>>2]|0)==(j|0))if((f[b+12>>2]|0)==(i|0))break;b=f[b>>2]|0;if(!b){b=h;break a}}a=b+16|0;return a|0}}}while(0);o=Wpb(24)|0;f[o+8>>2]=j;f[o+12>>2]=i;p[o+16>>3]=0.0;f[o+4>>2]=q;f[o>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(m|e*+(l>>>0)<d){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;c=~~+W(+(d/e))>>>0;L4a(a,b>>>0<c>>>0?c:b);b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&q;break}if(q>>>0<b>>>0){g=b;b=q}else{g=b;b=(q>>>0)%(b>>>0)|0}}else g=l;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[o>>2]=f[b>>2];f[b>>2]=o;f[c>>2]=b;b=f[o>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;r=33}}else{f[o>>2]=f[b>>2];r=33}if((r|0)==33)f[b>>2]=o;f[h>>2]=(f[h>>2]|0)+1;a=o;a=a+16|0;return a|0}function L4a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){M4a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;M4a(a,b);return}function M4a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function N4a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0;v=u;u=u+1552|0;m=v+1408|0;e=v+1040|0;j=v+840|0;k=v+792|0;q=v+16|0;l=v+1544|0;r=v;s=v+1536|0;h=a+56|0;d=c+80|0;i=a+104|0;if(!(S4a(a,f[h>>2]|0,d,f[i>>2]|0)|0)){t=1;u=v;return t|0}if(+p[c+96>>3]<1.0){if((f[a+120>>2]|0)==(f[a+124>>2]|0)){t=0;u=v;return t|0}t=+p[a+112>>3]*1.0001<+p[c+104>>3];u=v;return t|0}o=a+64|0;g=~~+p[c+88>>3]>>>0&-2;f[s>>2]=~~+p[d>>3]>>>0&-2;f[s+4>>2]=g;g=J4a(o,s)|0;if(!g)t=7;else if(!(+p[g+16>>3]<=+p[c+104>>3]))t=7;else d=1;a:do if((t|0)==7){g=f[f[h>>2]>>2]|0;f[e>>2]=f[g>>2];p[e+8>>3]=+p[g+8>>3];p[e+16>>3]=+p[g+16>>3];p[e+24>>3]=+p[g+24>>3];p[e+32>>3]=+p[g+32>>3];p[e+40>>3]=+p[g+40>>3];p[e+48>>3]=+p[g+48>>3];p[e+56>>3]=+p[g+56>>3];p[e+64>>3]=+p[g+64>>3];p[e+72>>3]=+p[g+72>>3];p[e+80>>3]=+p[g+80>>3];p[e+88>>3]=+p[g+88>>3];p[e+96>>3]=+p[g+96>>3];p[e+104>>3]=+p[g+104>>3];p[e+112>>3]=+p[g+112>>3];p[e+120>>3]=+p[g+120>>3];p[e+128>>3]=+p[g+128>>3];p[e+136>>3]=+p[g+136>>3];p[e+144>>3]=+p[g+144>>3];p[e+152>>3]=+p[g+152>>3];p[e+160>>3]=+p[g+160>>3];p[e+168>>3]=+p[g+168>>3];p[e+176>>3]=+p[g+176>>3];p[e+184>>3]=+p[g+184>>3];p[e+192>>3]=+p[g+192>>3];p[e+200>>3]=+p[g+200>>3];p[e+208>>3]=+p[g+208>>3];p[e+216>>3]=+p[g+216>>3];p[e+224>>3]=+p[g+224>>3];p[e+232>>3]=+p[g+232>>3];p[e+240>>3]=+p[g+240>>3];p[e+248>>3]=+p[g+248>>3];p[e+256>>3]=+p[g+256>>3];p[e+264>>3]=+p[g+264>>3];p[e+272>>3]=+p[g+272>>3];p[e+280>>3]=+p[g+280>>3];p[e+288>>3]=+p[g+288>>3];p[e+296>>3]=+p[g+296>>3];p[e+304>>3]=+p[g+304>>3];p[e+312>>3]=+p[g+312>>3];p[e+320>>3]=+p[g+320>>3];p[e+328>>3]=+p[g+328>>3];p[e+336>>3]=+p[g+336>>3];p[e+344>>3]=+p[g+344>>3];p[e+352>>3]=+p[g+352>>3];p[e+360>>3]=+p[g+360>>3];lXa(j,e,d,(f[h>>2]|0)+8|0);d=k;e=a;g=d+48|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));b[k+20>>0]=1;b[k+27>>0]=0;b[k+28>>0]=0;b[k+22>>0]=1;b[k+23>>0]=0;b[k+9>>0]=0;f[k+16>>2]=-1;e=f[a+48>>2]|0;f[l>>2]=j;b[l+4>>0]=0;d=f[i>>2]|0;b[m>>0]=b[l>>0]|0;b[m+1>>0]=b[l+1>>0]|0;b[m+2>>0]=b[l+2>>0]|0;b[m+3>>0]=b[l+3>>0]|0;b[m+4>>0]=b[l+4>>0]|0;b[m+5>>0]=b[l+5>>0]|0;b[m+6>>0]=b[l+6>>0]|0;b[m+7>>0]=b[l+7>>0]|0;DXa(q,k,1,e,a+52|0,m,d);d=q+60|0;e=f[d>>2]|0;k=e+24|0;A=+p[k>>3];y=-A;l=e+32|0;B=+p[l>>3];x=-B;g=e+40|0;z=+p[g>>3];w=-z;z=+L(+(A*A+(B*B+z*z)));B=+p[c+40>>3]+y/z*.0001;A=+p[c+48>>3]+x/z*.0001;z=w/z*.0001+ +p[c+56>>3];p[e>>3]=B;p[e+8>>3]=A;p[e+16>>3]=z;p[k>>3]=y;p[l>>3]=x;p[g>>3]=w;n[e+48>>2]=B;n[e+52>>2]=A;n[e+56>>2]=z;n[e+60>>2]=y;n[e+64>>2]=x;n[e+68>>2]=w;w=+rWa(f[d>>2]|0,(f[f[q+56>>2]>>2]|0)+8|0);d=q+88|0;p[d>>3]=w;e=q+112|0;p[e>>3]=w;g=f[a+120>>2]|0;do if((g|0)==(f[a+124>>2]|0))t=12;else{p[m>>3]=1.0;a=m+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+40>>3]=1.0;a=m+48|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+80>>3]=1.0;a=m+88|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+120>>3]=1.0;a=dXa(f[g+184>>2]|0)|0;v5a(r,q,g+112|0,m,a,+p[e>>3],(b[g+188>>0]|0)!=0,(b[g+189>>0]|0)!=0);if(b[r>>0]|0)if(+p[r+8>>3]<+p[d>>3]){uXa(q);break}t=12}while(0);do if((t|0)==12){b[q+96>>0]=1;OXa(q);if((f[q+120>>2]|0)==(f[q+124>>2]|0)){uXa(q);d=0;break a}else{t=+p[e>>3]<+p[d>>3];uXa(q);if(t)break;else{d=0;break a}}}while(0);B=+p[c+104>>3];d=K4a(o,s)|0;p[d>>3]=B;d=1}while(0);t=d;u=v;return t|0}function O4a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0;v=u;u=u+1552|0;m=v+1408|0;e=v+1040|0;j=v+840|0;k=v+792|0;q=v+16|0;l=v+1544|0;r=v;s=v+1536|0;h=a+56|0;d=c+200|0;i=a+104|0;if(!(S4a(a,f[h>>2]|0,d,f[i>>2]|0)|0)){t=1;u=v;return t|0}if(+p[c+216>>3]<1.0){if((f[a+120>>2]|0)==(f[a+124>>2]|0)){t=0;u=v;return t|0}t=+p[a+112>>3]*1.0001<+p[c+224>>3];u=v;return t|0}o=a+64|0;g=~~+p[c+208>>3]>>>0&-2;f[s>>2]=~~+p[d>>3]>>>0&-2;f[s+4>>2]=g;g=J4a(o,s)|0;if(!g)t=7;else if(!(+p[g+16>>3]<=+p[c+224>>3]))t=7;else d=1;a:do if((t|0)==7){g=f[f[h>>2]>>2]|0;f[e>>2]=f[g>>2];p[e+8>>3]=+p[g+8>>3];p[e+16>>3]=+p[g+16>>3];p[e+24>>3]=+p[g+24>>3];p[e+32>>3]=+p[g+32>>3];p[e+40>>3]=+p[g+40>>3];p[e+48>>3]=+p[g+48>>3];p[e+56>>3]=+p[g+56>>3];p[e+64>>3]=+p[g+64>>3];p[e+72>>3]=+p[g+72>>3];p[e+80>>3]=+p[g+80>>3];p[e+88>>3]=+p[g+88>>3];p[e+96>>3]=+p[g+96>>3];p[e+104>>3]=+p[g+104>>3];p[e+112>>3]=+p[g+112>>3];p[e+120>>3]=+p[g+120>>3];p[e+128>>3]=+p[g+128>>3];p[e+136>>3]=+p[g+136>>3];p[e+144>>3]=+p[g+144>>3];p[e+152>>3]=+p[g+152>>3];p[e+160>>3]=+p[g+160>>3];p[e+168>>3]=+p[g+168>>3];p[e+176>>3]=+p[g+176>>3];p[e+184>>3]=+p[g+184>>3];p[e+192>>3]=+p[g+192>>3];p[e+200>>3]=+p[g+200>>3];p[e+208>>3]=+p[g+208>>3];p[e+216>>3]=+p[g+216>>3];p[e+224>>3]=+p[g+224>>3];p[e+232>>3]=+p[g+232>>3];p[e+240>>3]=+p[g+240>>3];p[e+248>>3]=+p[g+248>>3];p[e+256>>3]=+p[g+256>>3];p[e+264>>3]=+p[g+264>>3];p[e+272>>3]=+p[g+272>>3];p[e+280>>3]=+p[g+280>>3];p[e+288>>3]=+p[g+288>>3];p[e+296>>3]=+p[g+296>>3];p[e+304>>3]=+p[g+304>>3];p[e+312>>3]=+p[g+312>>3];p[e+320>>3]=+p[g+320>>3];p[e+328>>3]=+p[g+328>>3];p[e+336>>3]=+p[g+336>>3];p[e+344>>3]=+p[g+344>>3];p[e+352>>3]=+p[g+352>>3];p[e+360>>3]=+p[g+360>>3];lXa(j,e,d,(f[h>>2]|0)+8|0);d=k;e=a;g=d+48|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));b[k+20>>0]=1;b[k+27>>0]=0;b[k+28>>0]=0;b[k+22>>0]=1;b[k+23>>0]=0;b[k+9>>0]=0;f[k+16>>2]=-1;e=f[a+48>>2]|0;f[l>>2]=j;b[l+4>>0]=0;d=f[i>>2]|0;b[m>>0]=b[l>>0]|0;b[m+1>>0]=b[l+1>>0]|0;b[m+2>>0]=b[l+2>>0]|0;b[m+3>>0]=b[l+3>>0]|0;b[m+4>>0]=b[l+4>>0]|0;b[m+5>>0]=b[l+5>>0]|0;b[m+6>>0]=b[l+6>>0]|0;b[m+7>>0]=b[l+7>>0]|0;DXa(q,k,1,e,a+52|0,m,d);d=q+60|0;e=f[d>>2]|0;k=e+24|0;A=+p[k>>3];y=-A;l=e+32|0;B=+p[l>>3];x=-B;g=e+40|0;z=+p[g>>3];w=-z;z=+L(+(A*A+(B*B+z*z)));B=+p[c+40>>3]+y/z*.0001;A=+p[c+48>>3]+x/z*.0001;z=w/z*.0001+ +p[c+56>>3];p[e>>3]=B;p[e+8>>3]=A;p[e+16>>3]=z;p[k>>3]=y;p[l>>3]=x;p[g>>3]=w;n[e+48>>2]=B;n[e+52>>2]=A;n[e+56>>2]=z;n[e+60>>2]=y;n[e+64>>2]=x;n[e+68>>2]=w;w=+rWa(f[d>>2]|0,(f[f[q+56>>2]>>2]|0)+8|0);d=q+88|0;p[d>>3]=w;e=q+112|0;p[e>>3]=w;g=f[a+120>>2]|0;do if((g|0)==(f[a+124>>2]|0))t=12;else{p[m>>3]=1.0;a=m+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+40>>3]=1.0;a=m+48|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+80>>3]=1.0;a=m+88|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;p[m+120>>3]=1.0;a=dXa(f[g+184>>2]|0)|0;v5a(r,q,g+112|0,m,a,+p[e>>3],(b[g+188>>0]|0)!=0,(b[g+189>>0]|0)!=0);if(b[r>>0]|0)if(+p[r+8>>3]<+p[d>>3]){uXa(q);break}t=12}while(0);do if((t|0)==12){b[q+96>>0]=1;OXa(q);if((f[q+120>>2]|0)==(f[q+124>>2]|0)){uXa(q);d=0;break a}else{t=+p[e>>3]<+p[d>>3];uXa(q);if(t)break;else{d=0;break a}}}while(0);B=+p[c+224>>3];d=K4a(o,s)|0;p[d>>3]=B;d=1}while(0);t=d;u=v;return t|0}function P4a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+64|0;c=j+48|0;h=j;i=a+109|0;b[c>>0]=b[i>>0]|0;b[c+1>>0]=b[i+1>>0]|0;b[c+2>>0]=b[i+2>>0]|0;pXa(i,b[a+108>>0]|0);i=uva(f[a+48>>2]|0)|0;d=f[a+56>>2]|0;e=a+104|0;g=f[e>>2]|0;if(!g){if(AOa(i)|0){f[h>>2]=a;f[h+4>>2]=d;BOa(i,83,h);f[e>>2]=0;if(b[a+96>>0]|0)if((f[a+120>>2]|0)!=(f[a+124>>2]|0))p[a+112>>3]=0.0}}else{Q4a(h,a,wOa(i,g,0)|0,d+24|0);FXa(a+120|0,h);AL(h)}i=a+109|0;b[i>>0]=b[c>>0]|0;b[i+1>>0]=b[c+1>>0]|0;b[i+2>>0]=b[c+2>>0]|0;u=j;return}function Q4a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0;g=u;u=u+1408|0;i=g+1360|0;k=g+1344|0;j=g+976|0;m=g+776|0;h=g;l=g+1392|0;o=f[c+56>>2]|0;zSa(i,d);n=+(~~(+p[i+24>>3]*+p[o+16>>3])|0);p[k>>3]=+(~~(+p[i+16>>3]*+p[o+8>>3])|0);p[k+8>>3]=n;jXa(j,d+16|0,k,f[c+16>>2]|0);lXa(m,j,e,k);k=b[c+108>>0]|0;j=f[c+48>>2]|0;f[l>>2]=m;b[l+4>>0]=0;e=f[c+104>>2]|0;b[i>>0]=b[l>>0]|0;b[i+1>>0]=b[l+1>>0]|0;b[i+2>>0]=b[l+2>>0]|0;b[i+3>>0]=b[l+3>>0]|0;b[i+4>>0]=b[l+4>>0]|0;b[i+5>>0]=b[l+5>>0]|0;b[i+6>>0]=b[l+6>>0]|0;b[i+7>>0]=b[l+7>>0]|0;DXa(h,c,k,j,c+52|0,i,e);IXa(h,d);E3a(h);EXa(a,h+120|0);uXa(h);u=g;return}function R4a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0,n=0.0,o=0,q=0,r=0.0;o=u;u=u+64|0;i=o+16|0;m=o;if(!(b[c+748>>0]&1)){u=o;return}if(!(GXa((f[d>>2]|0)+120|0)|0)){u=o;return}q=f[d+4>>2]|0;zSa(i,c);e=+p[q+8>>3];g=+p[q+16>>3];h=~~(+p[i+24>>3]*g);j=+(~~(e*+p[i>>3])|0);k=+p[q+24>>3]-j;l=+(~~g-h-~~(g*+p[i+8>>3])|0);n=+p[q+32>>3]-l;if(!(k<0.0|n<0.0)){r=+(~~(+p[i+16>>3]*e)|0);e=e-j;j=+(h|0);l=g-l;if(k>=(e<r?e:r)?0:!(n>=(l<j?l:j))){p[m>>3]=k;p[m+8>>3]=n;f[(f[d>>2]|0)+104>>2]=a;Q4a(i,f[d>>2]|0,c,m);FXa((f[d>>2]|0)+120|0,i);AL(i)}}u=o;return}function S4a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0.0,s=0.0;q=u;u=u+32|0;o=q;j=f[a+56>>2]|0;h=+p[d>>3];if(h<0.0){o=0;u=q;return o|0}n=d+8|0;g=+p[n>>3];if(g<0.0){o=0;u=q;return o|0}if(h>+p[j+8>>3]){o=0;u=q;return o|0}if(g>+p[j+16>>3]){o=0;u=q;return o|0}if(!e){o=1;u=q;return o|0}a=wOa(uva(f[a+48>>2]|0)|0,e,0)|0;if(!(b[a+748>>0]&1)){o=0;u=q;return o|0}zSa(o,a);m=+p[c+8>>3];k=+p[c+16>>3];a=~~(+p[o+24>>3]*k);l=+(~~(m*+p[o>>3])|0);h=+p[d>>3]-l;i=+(~~k-a-~~(k*+p[o+8>>3])|0);g=+p[n>>3]-i;if(h<0.0|g<0.0){o=0;u=q;return o|0}else{r=+(~~(+p[o+16>>3]*m)|0);s=m-l;m=+(a|0);l=k-i;u=q;return (h>=(s<r?s:r)?0:!(g>=(l<m?l:m)))|0}return 0}function T4a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;t=a+d|0;u=c+e|0;v=u+-12|0;if(!e){if((d|0)!=1){w=-1;return w|0}w=((b[a>>0]|0)!=0)<<31>>31;return w|0}n=t+-15|0;o=t+-8|0;p=t+-5|0;q=u+-5|0;r=u+-8|0;s=r;e=a;g=c;a:while(1){d=e+1|0;l=h[e>>0]|0;e=l>>>4;if((e|0)==15){e=15;do{m=d;d=d+1|0;m=b[m>>0]|0;e=e+(m&255)|0}while(m<<24>>24==-1&d>>>0<n>>>0);if((e|0)<0)break}m=g+e|0;i=d+e|0;if(m>>>0>v>>>0|i>>>0>o>>>0){w=9;break}else e=g;while(1){j=d;x=j;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;k=e;g=k;b[g>>0]=x;b[g+1>>0]=x>>8;b[g+2>>0]=x>>16;b[g+3>>0]=x>>24;k=k+4|0;b[k>>0]=j;b[k+1>>0]=j>>8;b[k+2>>0]=j>>16;b[k+3>>0]=j>>24;e=e+8|0;if(e>>>0>=m>>>0)break;else d=d+8|0}g=h[i+1>>0]<<8|h[i>>0];j=g&65535;k=m+(0-g)|0;d=i+2|0;if(k>>>0<c>>>0)break;e=l&15;if((e|0)==15){e=15;do{if(d>>>0>p>>>0)break a;x=d;d=d+1|0;x=b[x>>0]|0;e=e+(x&255)|0}while(x<<24>>24==-1);if((e|0)<0)break}l=m+(e+4)|0;if((j&65535)<8){x=f[33672+(g<<2)>>2]|0;b[m>>0]=b[k>>0]|0;b[m+1>>0]=b[k+1>>0]|0;b[m+2>>0]=b[k+2>>0]|0;b[m+3>>0]=b[k+3>>0]|0;g=k+(f[33704+(g<<2)>>2]|0)|0;k=m+4|0;j=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[k>>0]=j;b[k+1>>0]=j>>8;b[k+2>>0]=j>>16;b[k+3>>0]=j>>24;g=g+(0-x)|0}else{x=k;i=x;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;x=x+4|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;g=m;j=g;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;g=g+4|0;b[g>>0]=x;b[g+1>>0]=x>>8;b[g+2>>0]=x>>16;b[g+3>>0]=x>>24;g=k+8|0}e=m+8|0;if(l>>>0<=v>>>0)while(1){m=g;j=m;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;x=e;k=x;b[k>>0]=j;b[k+1>>0]=j>>8;b[k+2>>0]=j>>16;b[k+3>>0]=j>>24;x=x+4|0;b[x>>0]=m;b[x+1>>0]=m>>8;b[x+2>>0]=m>>16;b[x+3>>0]=m>>24;e=e+8|0;if(e>>>0<l>>>0)g=g+8|0;else{e=d;g=l;continue a}}if(l>>>0>q>>>0)break;if(e>>>0<r>>>0){i=e;j=g;while(1){m=j;y=m;y=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;x=i;k=x;b[k>>0]=y;b[k+1>>0]=y>>8;b[k+2>>0]=y>>16;b[k+3>>0]=y>>24;x=x+4|0;b[x>>0]=m;b[x+1>>0]=m>>8;b[x+2>>0]=m>>16;b[x+3>>0]=m>>24;i=i+8|0;if(i>>>0>=r>>>0)break;else j=j+8|0}g=g+(s-e)|0;e=r}if(e>>>0>=l>>>0){e=d;g=l;continue}while(1){i=e+1|0;b[e>>0]=b[g>>0]|0;if(i>>>0<l>>>0){g=g+1|0;e=i}else{e=d;g=l;continue a}}}if((w|0)==9)if(!(m>>>0>u>>>0|(i|0)!=(t|0))){Irb(g|0,d|0,e|0)|0;y=m-c|0;return y|0}y=a+-1-d|0;return y|0}function U4a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+8|0;f[d>>2]=b;f[d+4>>2]=c;d=vrb(b|0,c|0,-1379879466,1625958382)|0;e=a+16|0;f[e>>2]=d;f[e+4>>2]=I;e=vrb(b|0,c|0,668265295,-1028477379)|0;d=a+24|0;f[d>>2]=e;f[d+4>>2]=I;d=a+32|0;f[d>>2]=b;f[d+4>>2]=c;b=vrb(b|0,c|0,2048144761,1640531534)|0;c=a+40|0;f[c>>2]=b;f[c+4>>2]=I;c=a;f[c>>2]=0;f[c+4>>2]=0;f[a+80>>2]=0;return 0}function V4a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b+c|0;d=a;d=vrb(f[d>>2]|0,f[d+4>>2]|0,c|0,0)|0;s=a;f[s>>2]=d;f[s+4>>2]=I;s=a+80|0;d=f[s>>2]|0;do if((d+c|0)>>>0<32){Irb(a+48+d|0,b|0,c|0)|0;b=(f[s>>2]|0)+c|0}else{if(d){m=a+48|0;Irb(m+d|0,b|0,32-d|0)|0;q=m;m=m+4|0;m=Brb(h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24|0,h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24|0,668265295,-1028477379)|0;q=a+16|0;o=q;m=vrb(f[o>>2]|0,f[o+4>>2]|0,m|0,I|0)|0;o=I;n=Frb(m|0,o|0,31)|0;p=I;o=Erb(m|0,o|0,33)|0;p=Brb(n|o|0,p|I|0,-2048144761,-1640531535)|0;f[q>>2]=p;f[q+4>>2]=I;q=a+56|0;p=q;q=q+4|0;q=Brb(h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24|0,h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24|0,668265295,-1028477379)|0;p=a+24|0;o=p;q=vrb(f[o>>2]|0,f[o+4>>2]|0,q|0,I|0)|0;o=I;n=Frb(q|0,o|0,31)|0;m=I;o=Erb(q|0,o|0,33)|0;m=Brb(n|o|0,m|I|0,-2048144761,-1640531535)|0;f[p>>2]=m;f[p+4>>2]=I;p=a+64|0;m=p;p=p+4|0;p=Brb(h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24|0,h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24|0,668265295,-1028477379)|0;m=a+32|0;o=m;p=vrb(f[o>>2]|0,f[o+4>>2]|0,p|0,I|0)|0;o=I;n=Frb(p|0,o|0,31)|0;q=I;o=Erb(p|0,o|0,33)|0;q=Brb(n|o|0,q|I|0,-2048144761,-1640531535)|0;f[m>>2]=q;f[m+4>>2]=I;m=a+72|0;q=m;m=m+4|0;m=Brb(h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24|0,h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24|0,668265295,-1028477379)|0;q=a+40|0;o=q;m=vrb(f[o>>2]|0,f[o+4>>2]|0,m|0,I|0)|0;o=I;n=Frb(m|0,o|0,31)|0;p=I;o=Erb(m|0,o|0,33)|0;p=Brb(n|o|0,p|I|0,-2048144761,-1640531535)|0;f[q>>2]=p;f[q+4>>2]=I;b=b+(32-(f[s>>2]|0))|0;f[s>>2]=0}if((b+32|0)>>>0<=r>>>0){m=r+-32|0;n=a+16|0;c=n;o=a+24|0;g=o;p=a+32|0;j=p;q=a+40|0;l=q;d=f[c>>2]|0;c=f[c+4>>2]|0;e=f[g>>2]|0;g=f[g+4>>2]|0;i=f[j>>2]|0;j=f[j+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;do{t=b;u=t;t=t+4|0;t=Brb(h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24|0,h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24|0,668265295,-1028477379)|0;t=vrb(t|0,I|0,d|0,c|0)|0;u=I;v=Frb(t|0,u|0,31)|0;w=I;u=Erb(t|0,u|0,33)|0;d=Brb(v|u|0,w|I|0,-2048144761,-1640531535)|0;c=I;w=b+8|0;u=w;w=w+4|0;w=Brb(h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24|0,h[w>>0]|h[w+1>>0]<<8|h[w+2>>0]<<16|h[w+3>>0]<<24|0,668265295,-1028477379)|0;w=vrb(w|0,I|0,e|0,g|0)|0;u=I;v=Frb(w|0,u|0,31)|0;t=I;u=Erb(w|0,u|0,33)|0;e=Brb(v|u|0,t|I|0,-2048144761,-1640531535)|0;g=I;t=b+16|0;u=t;t=t+4|0;t=Brb(h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24|0,h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24|0,668265295,-1028477379)|0;t=vrb(t|0,I|0,i|0,j|0)|0;u=I;v=Frb(t|0,u|0,31)|0;w=I;u=Erb(t|0,u|0,33)|0;i=Brb(v|u|0,w|I|0,-2048144761,-1640531535)|0;j=I;w=b+24|0;u=w;w=w+4|0;w=Brb(h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24|0,h[w>>0]|h[w+1>>0]<<8|h[w+2>>0]<<16|h[w+3>>0]<<24|0,668265295,-1028477379)|0;w=vrb(w|0,I|0,k|0,l|0)|0;u=I;v=Frb(w|0,u|0,31)|0;t=I;u=Erb(w|0,u|0,33)|0;k=Brb(v|u|0,t|I|0,-2048144761,-1640531535)|0;l=I;b=b+32|0}while(b>>>0<=m>>>0);w=n;f[w>>2]=d;f[w+4>>2]=c;w=o;f[w>>2]=e;f[w+4>>2]=g;w=p;f[w>>2]=i;f[w+4>>2]=j;w=q;f[w>>2]=k;f[w+4>>2]=l}if(b>>>0<r>>>0){w=r-b|0;Irb(a+48|0,b|0,w|0)|0;b=w;break}else return 0}while(0);f[s>>2]=b;return 0}function W4a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=a+48|0;i=g+(f[a+80>>2]|0)|0;b=a;e=f[b>>2]|0;b=f[b+4>>2]|0;if(b>>>0>0|(b|0)==0&e>>>0>31){p=a+16|0;m=f[p>>2]|0;p=f[p+4>>2]|0;n=a+24|0;j=f[n>>2]|0;n=f[n+4>>2]|0;l=a+32|0;c=f[l>>2]|0;l=f[l+4>>2]|0;k=a+40|0;d=f[k>>2]|0;k=f[k+4>>2]|0;s=Frb(m|0,p|0,1)|0;o=I;q=Erb(m|0,p|0,63)|0;o=o|I;u=Frb(j|0,n|0,7)|0;t=I;r=Erb(j|0,n|0,57)|0;o=vrb(u|r|0,t|I|0,s|q|0,o|0)|0;q=I;s=Frb(c|0,l|0,12)|0;t=I;r=Erb(c|0,l|0,52)|0;t=vrb(o|0,q|0,s|r|0,t|I|0)|0;r=I;s=Frb(d|0,k|0,18)|0;q=I;o=Erb(d|0,k|0,46)|0;q=vrb(t|0,r|0,s|o|0,q|I|0)|0;o=I;s=Brb(m|0,p|0,668265295,-1028477379)|0;r=I;p=Brb(m|0,p|0,-2147483648,-1813351001)|0;m=I;r=Erb(s|0,r|0,33)|0;m=Brb(r|p|0,I|m|0,-2048144761,-1640531535)|0;o=Brb(q^m|0,o^I|0,-2048144761,-1640531535)|0;o=vrb(o|0,I|0,-1028477341,-2048144777)|0;m=I;q=Brb(j|0,n|0,668265295,-1028477379)|0;p=I;n=Brb(j|0,n|0,-2147483648,-1813351001)|0;j=I;p=Erb(q|0,p|0,33)|0;j=Brb(p|n|0,I|j|0,-2048144761,-1640531535)|0;m=Brb(o^j|0,m^I|0,-2048144761,-1640531535)|0;m=vrb(m|0,I|0,-1028477341,-2048144777)|0;j=I;o=Brb(c|0,l|0,668265295,-1028477379)|0;n=I;l=Brb(c|0,l|0,-2147483648,-1813351001)|0;c=I;n=Erb(o|0,n|0,33)|0;c=Brb(n|l|0,I|c|0,-2048144761,-1640531535)|0;j=Brb(m^c|0,j^I|0,-2048144761,-1640531535)|0;j=vrb(j|0,I|0,-1028477341,-2048144777)|0;c=I;m=Brb(d|0,k|0,668265295,-1028477379)|0;l=I;k=Brb(d|0,k|0,-2147483648,-1813351001)|0;d=I;l=Erb(m|0,l|0,33)|0;d=Brb(l|k|0,I|d|0,-2048144761,-1640531535)|0;c=Brb(j^d|0,c^I|0,-2048144761,-1640531535)|0;c=vrb(c|0,I|0,-1028477341,-2048144777)|0;d=I}else{c=a+8|0;c=vrb(f[c>>2]|0,f[c+4>>2]|0,374761413,668265263)|0;d=I}c=vrb(c|0,d|0,e|0,b|0)|0;b=I;e=a+56|0;if(i>>>0<e>>>0)e=g;else{d=g;while(1){u=d;u=h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24;d=d+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;s=Brb(u|0,d|0,668265295,-1028477379)|0;t=I;d=Brb(u|0,d|0,-2147483648,-1813351001)|0;u=I;t=Erb(s|0,t|0,33)|0;u=Brb(t|d|0,I|u|0,-2048144761,-1640531535)|0;u=u^c;b=I^b;d=Frb(u|0,b|0,27)|0;c=I;b=Erb(u|0,b|0,37)|0;c=Brb(d|b|0,c|I|0,-2048144761,-1640531535)|0;c=vrb(c|0,I|0,-1028477341,-2048144777)|0;b=I;d=e+8|0;if(d>>>0>i>>>0)break;else{u=e;e=d;d=u}}}d=e+4|0;if(d>>>0>i>>>0)d=e;else{t=Brb(h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24|0,0,-2048144761,-1640531535)|0;t=t^c;b=I^b;u=Frb(t|0,b|0,23)|0;c=I;b=Erb(t|0,b|0,41)|0;c=Brb(u|b|0,c|I|0,668265295,-1028477379)|0;c=vrb(c|0,I|0,-1640531463,374761393)|0;b=I}if(d>>>0>=i>>>0){u=c;t=b;s=Erb(u|0,t|0,33)|0;r=I;u=s^u;t=r^t;t=Brb(u|0,t|0,668265295,-1028477379)|0;u=I;r=Erb(t|0,u|0,29)|0;s=I;t=r^t;u=s^u;u=Brb(t|0,u|0,-1640531463,374761393)|0;t=I;u=t^u;I=t;return u|0}do{t=Brb(h[d>>0]|0|0,0,374761413,668265263)|0;t=t^c;b=I^b;u=Frb(t|0,b|0,11)|0;c=I;b=Erb(t|0,b|0,53)|0;c=Brb(u|b|0,c|I|0,-2048144761,-1640531535)|0;b=I;d=d+1|0}while((d|0)!=(i|0));u=Erb(c|0,b|0,33)|0;t=I;u=u^c;t=t^b;t=Brb(u|0,t|0,668265295,-1028477379)|0;u=I;r=Erb(t|0,u|0,29)|0;s=I;t=r^t;u=s^u;u=Brb(t|0,u|0,-1640531463,374761393)|0;t=I;u=t^u;I=t;return u|0}function X4a(a){a=a|0;return a>>>0>4294967278|0}function Y4a(a,b,c,e,g){a=a|0;b=b|0;c=c|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;i=e+g|0;if(g>>>0<4){e=-10;return e|0}j=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;k=j&15;g=k+5|0;if(g>>>0>15){e=-13;return e|0}f[c>>2]=g;g=32<<k;c=g|1;a:do if(g>>>0>1){t=i+-7|0;u=i+-4|0;v=u;s=i+-5|0;n=0;r=0;l=4;o=j>>>4;i=g;q=k+6|0;g=e;b:while(1){do if(!n){j=r;p=g;n=l;g=o}else{c:do if((o&65535|0)==65535){k=r;j=o;while(1){k=k+24|0;if(g>>>0>=s>>>0)break;g=g+2|0;j=(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24)>>>l;if((j&65535|0)!=65535)break c}j=j>>>16;l=l+16|0;p=(j|0)==65535;k=p?k+24|0:k;l=p?l+16|0:l;j=p?0:j}else{k=r;j=o}while(0);m=j&3;if((m|0)==3){do{k=k+3|0;j=j>>>2;l=l+2|0;m=j&3}while((m|0)==3);o=j;j=m}else{o=j;j=m}j=k+j|0;l=l+2|0;if(j>>>0>(f[b>>2]|0)>>>0){g=-15;break b}if(j>>>0>r>>>0)Krb(a+(r<<1)|0,0,j-r<<1|0)|0;else j=r;k=g+(l>>3)|0;if(g>>>0>t>>>0&k>>>0>u>>>0){p=g;n=l;g=o>>>2;break}else{g=l&7;p=k;n=g;g=(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>g;break}}while(0);l=(i<<1)+-1|0;k=g&i+-1;m=l-c<<16>>16;if(k>>>0<m>>>0)g=q+-1|0;else{g=g&l;k=g<<16>>16;k=(k|0)<(i|0)?g:k-m|0;g=q}l=g+n|0;n=(k&65535)+-1<<16>>16;r=n<<16>>16;c=c-((n<<16>>16<0?0-r|0:r)<<16>>16)|0;r=j+1|0;d[a+(j<<1)>>1]=n;n=n<<16>>16==0&1;if((c|0)<(i|0)){g=q;do{g=g+-1|0;i=i>>1}while((c|0)<(i|0));k=i;m=g}else{k=i;m=q}g=p+(l>>3)|0;if(p>>>0>t>>>0&g>>>0>u>>>0){g=u;i=l-(v-p<<3)|0}else i=l&7;if(!((c|0)>1?r>>>0<=(f[b>>2]|0)>>>0:0))break a;else{l=i;o=(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24)>>>(i&31);i=k;q=m}}return g|0}else{j=-1;i=4;g=e}while(0);if((c|0)!=1|(i|0)>32){e=-11;return e|0}f[b>>2]=j;e=g+(i+7>>3)-e|0;return e|0}function Z4a(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;m=b[i>>0]|0;l=m&255;do if(m<<24>>24<0){k=l+-127|0;l=(l+-126|0)>>>1;if(l>>>0>=j>>>0){e=-10;return e|0}if(k>>>0>=c>>>0){e=-11;return e|0}i=i+1|0;if(!k){c=d;i=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(i|0));c=0;i=0;break}else{c=0;do{n=i+(c>>>1)|0;b[a+c>>0]=(h[n>>0]|0)>>>4;b[a+(c|1)>>0]=b[n>>0]&15;c=c+2|0}while(c>>>0<k>>>0);m=l;n=9}}else{if(l>>>0>=j>>>0){e=-10;return e|0}k=b5a(a,c+-1|0,i+1|0,l)|0;if(k>>>0<4294967279){m=l;n=9}else{e=k;return e|0}}while(0);a:do if((n|0)==9){c=d;i=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(i|0));if(!k){c=0;l=m;i=0}else{c=0;j=0;while(1){i=a+j|0;l=b[i>>0]|0;if((l&255)>15){k=-11;break}n=d+((l&255)<<2)|0;f[n>>2]=(f[n>>2]|0)+1;c=(1<<(h[i>>0]|0)>>1)+c|0;j=j+1|0;if(j>>>0>=k>>>0){l=m;i=k;break a}}return k|0}}while(0);k=31-(_(c|0)|0)+1|0;if(k>>>0>16){e=-11;return e|0}f[g>>2]=k;g=(1<<k)-c|0;n=31-(_(g|0)|0)|0;k=n+1|0;if((1<<n|0)!=(g|0)){e=-11;return e|0}b[a+i>>0]=k;a=d+(k<<2)|0;f[a>>2]=(f[a>>2]|0)+1;d=f[d+4>>2]|0;if(!(d>>>0>1&(d&1|0)==0)){e=-11;return e|0}f[e>>2]=i+1;e=l+1|0;return e|0}function _4a(a,c,e,f){a=a|0;c=c|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+512|0;q=t;r=a+4|0;o=e+1|0;s=1<<f;p=s+-1|0;if(e>>>0>255){s=-14;u=t;return s|0}if(f>>>0>12){s=-13;u=t;return s|0}k=f&65535;l=(o|0)==0;if(l){d[a>>1]=k;d[a+2>>1]=1}else{m=65536<<f+-1>>16;j=0;e=p;g=1;while(1){i=d[c+(j<<1)>>1]|0;if(i<<16>>16==-1){b[r+(e<<2)+2>>0]=j;n=e+-1|0;e=1}else{n=e;e=i;g=(m|0)>(i<<16>>16|0)?g:0}d[q+(j<<1)>>1]=e;j=j+1|0;if((j|0)==(o|0))break;else e=n}d[a>>1]=k;d[a+2>>1]=g;if(!l){l=(s>>>3)+3+(s>>>1)|0;k=0;e=0;do{g=d[c+(k<<1)>>1]|0;if(g<<16>>16>0){j=k&255;i=g<<16>>16;g=0;do{b[r+(e<<2)+2>>0]=j;do e=l+e&p;while(e>>>0>n>>>0);g=g+1|0}while((g|0)<(i|0))}k=k+1|0}while((k|0)!=(o|0));if(e|0){s=-1;u=t;return s|0}}}g=f+-31|0;e=0;do{p=r+(e<<2)|0;o=q+((h[p+2>>0]|0)<<1)|0;f=d[o>>1]|0;d[o>>1]=f+1<<16>>16;f=f&65535;o=g+(_(f|0)|0)|0;b[p+3>>0]=o;d[p>>1]=(f<<(o&255))-s;e=e+1|0}while(e>>>0<s>>>0);e=0;u=t;return e|0}function $4a(a,c){a=a|0;c=c|0;var e=0;e=a+4|0;d[a>>1]=0;d[a+2>>1]=0;d[e>>1]=0;b[e+2>>0]=c;b[e+3>>0]=0;return 0}function a5a(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=(d[g+2>>1]|0)!=0;s=a+c|0;r=s+-3|0;if(!f){v=-10;return v|0}do if(f>>>0>3){l=f+-4|0;c=b[e+(f+-1)>>0]|0;if(!(c<<24>>24)){v=-1;return v|0}i=e+l|0;k=(_(c&255|0)|0)+-23|0;if(f>>>0<4294967279)c=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;else{v=f;return v|0}}else{c=h[e>>0]|0;switch(f|0){case 2:{v=6;break}case 3:{c=h[e+2>>0]<<16|c;v=6;break}default:{}}if((v|0)==6)c=(h[e+1>>0]<<8)+c|0;i=b[e+(f+-1)>>0]|0;if(!(i<<24>>24)){v=-1;return v|0}else{k=(4-f<<3)+-23+(_(i&255|0)|0)|0;l=0;break}}while(0);i=e+l|0;n=d[g>>1]|0;o=n&65535;n=31-n&31;p=c<<(k&31)>>>1>>>n;m=k+o|0;do if(m>>>0>32)f=c;else{if((l|0)>=4){l=l-(m>>>3)|0;f=e+l|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;m=m&7;break}k=m>>>3;i=(i+(0-k)|0)>>>0<e>>>0?l:k;k=l-i|0;if(!l){f=c;l=0}else{f=e+k|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;m=m-(i<<3)|0;l=k}}while(0);i=e+l|0;u=g+4|0;c=f<<(m&31)>>>1>>>n;k=m+o|0;a:do if(k>>>0>32){i=a;m=p}else{if((l|0)<4)if(!l)l=0;else{q=k>>>3;q=(i+(0-q)|0)>>>0<e>>>0?l:q;l=l-q|0;f=e+l|0;k=k-(q<<3)|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;if(k>>>0>32){i=a;m=p;break}}else{l=l-(k>>>3)|0;f=e+l|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;k=k&7}i=a;o=p;n=f;while(1){f=e+l|0;if((l|0)<4){if(!l){m=o;f=n;l=0;break a}q=k>>>3;m=(f+(0-q)|0)>>>0<e>>>0;q=m?l:q;m=m&1;f=q;k=k-(q<<3)|0}else{m=0;f=k>>>3;k=k&7}l=l-f|0;q=e+l|0;f=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;if(!(i>>>0<r>>>0&(m|0)==0)){m=o;break a}p=d[u+(o<<2)>>1]|0;n=b[u+(o<<2)+2>>0]|0;o=b[u+(o<<2)+3>>0]|0;m=o&255;g=f<<(k&31);if(t){w=k+m|0;b[i>>0]=n;k=b[u+(c<<2)+3>>0]|0;m=f<<(w&31)>>>(0-k&31);n=(g>>>(0-o&31))+(p&65535)|0;k=w+(k&255)|0}else{w=k+m|0;b[i>>0]=n;k=b[u+(c<<2)+3>>0]|0;m=f<<(w&31)>>>1>>>(31-k&31);n=(g>>>1>>>(31-o&31))+(p&65535)|0;k=w+(k&255)|0}p=m+(j[u+(c<<2)>>1]|0)|0;b[i+1>>0]=b[u+(c<<2)+2>>0]|0;if(k>>>0>32)break;if((l|0)<4){if(!l){l=0;break}c=k>>>3;w=(q+(0-c)|0)>>>0<e>>>0;q=w?l:c;l=l-q|0;c=e+l|0;k=k-(q<<3)|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;if(w){f=c;break}else f=c}else{l=l-(k>>>3)|0;f=e+l|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;k=k&7}g=d[u+(n<<2)>>1]|0;m=b[u+(n<<2)+2>>0]|0;n=b[u+(n<<2)+3>>0]|0;c=n&255;o=f<<(k&31);if(t){w=k+c|0;b[i+2>>0]=m;k=b[u+(p<<2)+3>>0]|0;c=f<<(w&31)>>>(0-k&31);m=(o>>>(0-n&31))+(g&65535)|0;k=w+(k&255)|0}else{w=k+c|0;b[i+2>>0]=m;k=b[u+(p<<2)+3>>0]|0;c=f<<(w&31)>>>1>>>(31-k&31);m=(o>>>1>>>(31-n&31))+(g&65535)|0;k=w+(k&255)|0}c=c+(j[u+(p<<2)>>1]|0)|0;b[i+3>>0]=b[u+(p<<2)+2>>0]|0;i=i+4|0;if(k>>>0>32)break a;else{o=m;n=f}}i=i+2|0;c=p;m=n}while(0);r=s+-2|0;if(i>>>0>r>>>0){w=-9;return w|0}q=t?0:31;p=(t^1)&1;g=i;o=m;while(1){n=e+l|0;i=b[u+(o<<2)+3>>0]|0;m=k+(i&255)|0;w=o;o=(f<<(k&31)>>>p>>>(q-i&31))+(j[u+(o<<2)>>1]|0)|0;i=g+1|0;b[g>>0]=b[u+(w<<2)+2>>0]|0;if(m>>>0>32){k=2;v=55;break}if((l|0)<4)if(!l)n=0;else{v=m>>>3;v=(n+(0-v)|0)>>>0<e>>>0?l:v;k=v;m=m-(v<<3)|0;v=46}else{k=m>>>3;m=m&7;v=46}if((v|0)==46){v=0;n=l-k|0;f=e+n|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24}l=e+n|0;if(i>>>0>r>>>0){c=-9;v=56;break}t=b[u+(c<<2)+3>>0]|0;k=m+(t&255)|0;w=c;c=(f<<(m&31)>>>p>>>(q-t&31))+(j[u+(c<<2)>>1]|0)|0;m=g+2|0;b[i>>0]=b[u+(w<<2)+2>>0]|0;if(k>>>0>32){i=m;k=3;c=o;v=55;break}if((n|0)<4)if(!n)l=0;else{v=k>>>3;v=(l+(0-v)|0)>>>0<e>>>0?n:v;i=v;k=k-(v<<3)|0;v=51}else{i=k>>>3;k=k&7;v=51}if((v|0)==51){v=0;l=n-i|0;f=e+l|0;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24}if(m>>>0>r>>>0){c=-9;v=56;break}else g=m}if((v|0)==55){b[i>>0]=b[u+(c<<2)+2>>0]|0;w=g+k-a|0;return w|0}else if((v|0)==56)return c|0;return 0}function b5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16912|0;h=l+16400|0;k=l+8|0;i=l+4|0;j=l;f[j>>2]=255;if(d>>>0<2)e=-10;else{e=Y4a(h,j,i,c,d)|0;if(e>>>0<4294967279){c=c+e|0;g=d-e|0;if(e>>>0<d>>>0){e=_4a(k,h,f[j>>2]|0,f[i>>2]|0)|0;if(e>>>0<4294967279)e=a5a(a,b,c,g,k)|0}else e=-10}}u=l;return e|0}function c5a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+336|0;m=p+80|0;n=p+8|0;g=p+4|0;i=p;f[g>>2]=0;f[i>>2]=0;o=a+4|0;c=Z4a(m,256,n,i,g,c,d)|0;if(X4a(c)|0){o=c;u=p;return o|0}e=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;d=f[g>>2]|0;if(d>>>0>((e&255)+1|0)>>>0){o=-13;u=p;return o|0}l=e&-16776961|d<<16&16711680;b[a>>0]=l;b[a+1>>0]=l>>8;b[a+2>>0]=l>>16;b[a+3>>0]=l>>24;l=d+1|0;if(l>>>0>1){d=1;e=0;do{k=n+(d<<2)|0;j=e;e=(f[k>>2]<<d+-1)+e|0;f[k>>2]=j;d=d+1|0}while(d>>>0<l>>>0)}g=f[i>>2]|0;if(!g){o=c;u=p;return o|0}else e=0;do{k=h[m+e>>0]|0;a=e&255;i=l-k&255;j=n+(k<<2)|0;d=f[j>>2]|0;k=d+(1<<k>>1)|0;if(d>>>0<k>>>0)do{b[o+(d<<1)>>0]=a;b[o+(d<<1)+1>>0]=i;d=d+1|0}while(d>>>0<k>>>0);f[j>>2]=k;e=e+1|0}while(e>>>0<g>>>0);u=p;return c|0}function d5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=c+4|0;i=f[p>>2]|0;a:do if(i>>>0<=32){n=c+8|0;o=c+12|0;l=d+-4|0;m=0-g&31;while(1){j=f[n>>2]|0;k=f[o>>2]|0;if(j>>>0<(k+4|0)>>>0){if((j|0)==(k|0))break a;q=i>>>3;r=(j+(0-q)|0)>>>0<k>>>0;q=r?j-k|0:q;j=j+(0-q)|0;f[n>>2]=j;k=r&1;i=i-(q<<3)|0}else{j=j+(0-(i>>>3))|0;f[n>>2]=j;k=0;i=i&7}f[p>>2]=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[c>>2]=j;if(a>>>0>l>>>0|(k|0)!=0)break a;j=j<<(i&31)>>>m;r=b[e+(j<<1)>>0]|0;f[p>>2]=i+(h[e+(j<<1)+1>>0]|0);b[a>>0]=r;r=f[p>>2]|0;j=f[c>>2]<<(r&31)>>>m;i=b[e+(j<<1)>>0]|0;f[p>>2]=r+(h[e+(j<<1)+1>>0]|0);j=a+2|0;b[a+1>>0]=i;i=f[p>>2]|0;if(i>>>0>32){a=j;break}else a=j}}while(0);l=c+8|0;m=c+12|0;n=0-g&31;b:do if(i>>>0>32)j=a;else while(1){j=f[l>>2]|0;k=f[m>>2]|0;if(j>>>0<(k+4|0)>>>0){if((j|0)==(k|0)){j=a;break b}r=i>>>3;q=(j+(0-r)|0)>>>0<k>>>0;r=q?j-k|0:r;j=j+(0-r)|0;f[l>>2]=j;k=q&1;i=i-(r<<3)|0}else{j=j+(0-(i>>>3))|0;f[l>>2]=j;k=0;i=i&7}f[p>>2]=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[c>>2]=j;if(!(a>>>0<d>>>0&(k|0)==0)){j=a;break b}j=j<<(i&31)>>>n;r=b[e+(j<<1)>>0]|0;f[p>>2]=i+(h[e+(j<<1)+1>>0]|0);j=a+1|0;b[a>>0]=r;i=f[p>>2]|0;if(i>>>0>32)break;else a=j}while(0);if(j>>>0>=d>>>0)return;a=0-g&31;q=f[c>>2]<<(i&31)>>>a;r=b[e+(q<<1)>>0]|0;f[p>>2]=i+(h[e+(q<<1)+1>>0]|0);i=j+1|0;b[j>>0]=r;if((i|0)==(d|0))return;do{g=f[p>>2]|0;q=f[c>>2]<<(g&31)>>>a;r=b[e+(q<<1)>>0]|0;f[p>>2]=g+(h[e+(q<<1)+1>>0]|0);b[i>>0]=r;i=i+1|0}while((i|0)!=(d|0));return}function e5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n;i=c5a(a,e,g)|0;if(X4a(i)|0){m=i;u=n;return m|0}if(i>>>0>=g>>>0){m=-10;u=n;return m|0}j=e+i|0;i=g-i|0;l=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;do if(!i){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;i=-10}else{f[m+12>>2]=j;if(i>>>0>3){e=e+g+-4|0;f[m+8>>2]=e;f[m>>2]=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=b[j+(i+-1)>>0]|0;g=m+4|0;if(!(e<<24>>24)){f[g>>2]=0;i=-1;break}else{k=(_(e&255|0)|0)+-23|0;f[g>>2]=k;break}}f[m+8>>2]=j;e=h[j>>0]|0;f[m>>2]=e;switch(i|0){case 2:{k=11;break}case 3:{e=(h[j+2>>0]|0)<<16|e;f[m>>2]=e;k=11;break}default:{}}if((k|0)==11)f[m>>2]=((h[j+1>>0]|0)<<8)+e;e=b[j+(i+-1)>>0]|0;g=m+4|0;if(!(e<<24>>24)){f[g>>2]=0;i=-1;break}else{k=(4-i<<3)+-23+(_(e&255|0)|0)|0;f[g>>2]=k;break}}while(0);if(!(X4a(i)|0)){d5a(c,m,c+d|0,a+4|0,l>>>16&255);i=((f[m+4>>2]|0)!=32?1:(f[m+8>>2]|0)!=(f[m+12>>2]|0))?-11:d}m=i;u=n;return m|0}function f5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;y=0;D=u;u=u+1056|0;if(e>>>0<10){g=-11;u=D;return g|0}l=h[d>>0]|h[d+1>>0]<<8;o=h[(d+2|0)>>0]|h[(d+2|0)+1>>0]<<8;v=h[(d+4|0)>>0]|h[(d+4|0)+1>>0]<<8;i=e+-6-(l&65535)-(o&65535)-(v&65535)|0;m=(d+6|0)+(l&65535)|0;q=m+(o&65535)|0;x=q+(v&65535)|0;B=a+((c+3|0)>>>2)|0;C=B+((c+3|0)>>>2)|0;A=(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24)>>>16;j=1;if(j){j=0;if(i>>>0>e>>>0)z=-11;else j=1}if(j)if(1){do if(!(l<<16>>16)){f[(D+48|0)>>2]=0;f[(D+48|0)+4>>2]=0;f[(D+48|0)+8>>2]=0;f[(D+48|0)+12>>2]=0;r=-10;s=0}else{f[(D+48|0)+12>>2]=d+6|0;if((l&65535)>3){f[(D+48|0)+8>>2]=m+-4|0;f[(D+48|0)>>2]=h[(m+-4|0)>>0]|h[(m+-4|0)+1>>0]<<8|h[(m+-4|0)+2>>0]<<16|h[(m+-4|0)+3>>0]<<24;e=b[(d+6|0)+((l&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+48|0)+4|0)>>2]=0;r=-1;s=0;break}else{s=(_(e&255|0)|0)+-23|0;f[((D+48|0)+4|0)>>2]=s;r=l&65535;break}}f[(D+48|0)+8>>2]=d+6|0;e=h[(d+6|0)>>0]|0;f[(D+48|0)>>2]=e;switch(l<<16>>16){case 2:{k=e;y=11;break}case 3:{k=(h[d+8>>0]|0)<<16|e;f[(D+48|0)>>2]=k;y=11;break}default:{}}if((y|0)==11)f[(D+48|0)>>2]=((h[d+7>>0]|0)<<8)+k;e=b[(d+6|0)+((l&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+48|0)+4|0)>>2]=0;r=-1;s=0;break}else{s=(4-(l&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+48|0)+4|0)>>2]=s;r=l&65535;break}}while(0);t=1;if(t){t=0;if(!(X4a(r)|0)){do if(!(o<<16>>16)){f[(D+32|0)>>2]=0;f[(D+32|0)+4>>2]=0;f[(D+32|0)+8>>2]=0;f[(D+32|0)+12>>2]=0;k=-10}else{f[(D+32|0)+12>>2]=m;if((o&65535)>3){f[(D+32|0)+8>>2]=q+-4|0;f[(D+32|0)>>2]=h[(q+-4|0)>>0]|h[(q+-4|0)+1>>0]<<8|h[(q+-4|0)+2>>0]<<16|h[(q+-4|0)+3>>0]<<24;e=b[m+((o&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+32|0)+4|0)>>2]=0;k=-1;break}else{k=(_(e&255|0)|0)+-23|0;f[((D+32|0)+4|0)>>2]=k;k=o&65535;break}}f[(D+32|0)+8>>2]=m;e=h[m>>0]|0;f[(D+32|0)>>2]=e;switch(o<<16>>16){case 2:{n=e;y=24;break}case 3:{n=(h[m+2>>0]|0)<<16|e;f[(D+32|0)>>2]=n;y=24;break}default:{}}if((y|0)==24)f[(D+32|0)>>2]=((h[m+1>>0]|0)<<8)+n;e=b[m+((o&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+32|0)+4|0)>>2]=0;k=-1;break}else{k=(4-(o&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+32|0)+4|0)>>2]=k;k=o&65535;break}}while(0);l=1;if(l){l=0;if(!(X4a(k)|0)){do if(!(v<<16>>16)){f[(D+16|0)>>2]=0;f[(D+16|0)+4>>2]=0;f[(D+16|0)+8>>2]=0;f[(D+16|0)+12>>2]=0;j=-10}else{f[(D+16|0)+12>>2]=q;if((v&65535)>3){f[(D+16|0)+8>>2]=x+-4|0;f[(D+16|0)>>2]=h[(x+-4|0)>>0]|h[(x+-4|0)+1>>0]<<8|h[(x+-4|0)+2>>0]<<16|h[(x+-4|0)+3>>0]<<24;e=b[q+((v&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+16|0)+4|0)>>2]=0;j=-1;break}else{j=(_(e&255|0)|0)+-23|0;f[((D+16|0)+4|0)>>2]=j;j=v&65535;break}}f[(D+16|0)+8>>2]=q;e=h[q>>0]|0;f[(D+16|0)>>2]=e;switch(v<<16>>16){case 2:{p=e;y=37;break}case 3:{p=(h[q+2>>0]|0)<<16|e;f[(D+16|0)>>2]=p;y=37;break}default:{}}if((y|0)==37)f[(D+16|0)>>2]=((h[q+1>>0]|0)<<8)+p;e=b[q+((v&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+16|0)+4|0)>>2]=0;j=-1;break}else{j=(4-(v&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+16|0)+4|0)>>2]=j;j=v&65535;break}}while(0);d=1;if(d){d=0;if(!(X4a(j)|0)){do if(!i){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;i=-10}else{f[D+12>>2]=x;if(i>>>0>3){f[D+8>>2]=x+i+-4|0;f[D>>2]=h[(x+i+-4|0)>>0]|h[(x+i+-4|0)+1>>0]<<8|h[(x+i+-4|0)+2>>0]<<16|h[(x+i+-4|0)+3>>0]<<24;e=b[x+(i+-1)>>0]|0;if(!(e<<24>>24)){f[(D+4|0)>>2]=0;i=-1;break}else{y=(_(e&255|0)|0)+-23|0;f[(D+4|0)>>2]=y;break}}f[D+8>>2]=x;e=h[x>>0]|0;f[D>>2]=e;switch(i|0){case 2:{w=e;y=50;break}case 3:{w=(h[x+2>>0]|0)<<16|e;f[D>>2]=w;y=50;break}default:{}}if((y|0)==50)f[D>>2]=((h[x+1>>0]|0)<<8)+w;e=b[x+(i+-1)>>0]|0;if(!(e<<24>>24)){f[(D+4|0)>>2]=0;i=-1;break}else{y=(4-i<<3)+-23+(_(e&255|0)|0)|0;f[(D+4|0)>>2]=y;break}}while(0);e=1;if(e){e=0;if(!(X4a(i)|0)){f[D+80>>2]=a;f[D+88>>2]=c;f[D+112>>2]=g;f[D+272>>2]=z;f[D+352>>2]=A;f[D+616>>2]=B;f[D+624>>2]=C;f[D+832>>2]=s;f[D+992>>2]=0;f[D+996>>2]=0;b7a(D);z=f[D+272>>2]|0}else e=1}if(e)if(1)z=i}else d=1}if(d)if(1)z=j}else l=1}if(l)if(1)z=k}else t=1}if(t)if(1)z=r}g=z;u=D;return g|0}function g5a(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=u;u=u+2144|0;E=J+1304|0;F=J+1236|0;l=J+1888|0;G=J+1376|0;o=J+1168|0;H=J+1096|0;I=J+8|0;g=J+4|0;i=J;k=o;m=k+68|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(m|0));k=H;m=k+72|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(m|0));j=H+4|0;B=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;C=B&255;D=a+4|0;if((B&255)>16){I=-13;u=J;return I|0}A=Z4a(l,256,o,i,g,c,e)|0;if(X4a(A)|0){I=A;u=J;return I|0}m=f[g>>2]|0;if(m>>>0>C>>>0){I=-13;u=J;return I|0}else p=m;while(1)if(!(f[o+(p<<2)>>2]|0))p=p+-1|0;else break;n=p+1|0;k=n>>>0>1;if(k){c=1;e=0;while(1){g=(f[o+(c<<2)>>2]|0)+e|0;f[j+(c<<2)>>2]=e;c=c+1|0;if((c|0)==(n|0)){z=g;break}else e=g}}else z=0;f[j>>2]=z;e=f[i>>2]|0;if(e|0){c=0;do{x=b[l+c>>0]|0;w=j+((x&255)<<2)|0;y=f[w>>2]|0;f[w>>2]=y+1;b[G+(y<<1)>>0]=c;b[G+(y<<1)+1>>0]=x;c=c+1|0}while(c>>>0<e>>>0)}f[j>>2]=0;if(k){g=C+-1-m|0;c=1;e=0;do{y=e;e=(f[o+(c<<2)>>2]<<g+c)+e|0;f[I+(c<<2)>>2]=y;c=c+1|0}while((c|0)!=(n|0))}c=1-p+m|0;g=C+1-c|0;if(!(c>>>0>=g>>>0|k^1))do{e=1;do{f[I+(c*68|0)+(e<<2)>>2]=(f[I+(e<<2)>>2]|0)>>>c;e=e+1|0}while((e|0)!=(n|0));c=c+1|0}while((c|0)!=(g|0));x=m+1|0;y=x-C|0;v=x-p|0;k=F;i=I;m=k+68|0;do{f[k>>2]=f[i>>2];k=k+4|0;i=i+4|0}while((k|0)<(m|0));if(z|0){t=0;do{j=b[G+(t<<1)>>0]|0;w=h[G+(t<<1)+1>>0]|0;s=x-w|0;w=F+(w<<2)|0;e=f[w>>2]|0;n=C-s|0;o=1<<n;if(n>>>0<v>>>0){c=o+e|0;if(e>>>0<c>>>0){g=s<<16&16711680|j&255|16777216;do{s=D+(e<<2)|0;d[s>>1]=g;d[s+2>>1]=g>>>16;e=e+1|0}while((e|0)!=(c|0))}}else{c=s+y|0;g=(c|0)>1;c=g?c:1;r=f[H+(c<<2)>>2]|0;p=D+(e<<2)|0;q=G+(r<<1)|0;r=z-r|0;k=E;i=I+(s*68|0)|0;m=k+68|0;do{f[k>>2]=f[i>>2];k=k+4|0;i=i+4|0}while((k|0)<(m|0));if(g){i=f[E+(c<<2)>>2]|0;if(i|0){g=s<<16&16711680|j&255|16777216;c=0;do{m=p+(c<<2)|0;d[m>>1]=g;d[m+2>>1]=g>>>16;c=c+1|0}while((c|0)!=(i|0))}}if(r|0){l=j&255;g=0;do{j=h[q+(g<<1)+1>>0]|0;i=x-j|0;j=E+(j<<2)|0;c=f[j>>2]|0;k=(1<<n-i)+c|0;i=(h[q+(g<<1)>>0]|0)<<8|l|i+s<<16&16711680|33554432;do{m=p+(c<<2)|0;c=c+1|0;d[m>>1]=i;d[m+2>>1]=i>>>16}while(c>>>0<k>>>0);f[j>>2]=k;g=g+1|0}while((g|0)!=(r|0))}c=o+e|0}f[w>>2]=c;t=t+1|0}while((t|0)!=(z|0))}I=B&-16776961|C<<16|256;b[a>>0]=I;b[a+1>>0]=I>>8;b[a+2>>0]=I>>16;b[a+3>>0]=I>>24;I=A;u=J;return I|0}function h5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=c+4|0;i=f[q>>2]|0;a:do if(i>>>0>32)p=10;else{n=c+8|0;o=c+12|0;l=d+-7|0;m=0-g&31;while(1){j=f[n>>2]|0;k=f[o>>2]|0;if(j>>>0<(k+4|0)>>>0){if((j|0)==(k|0))break;r=i>>>3;s=(j+(0-r)|0)>>>0<k>>>0;r=s?j-k|0:r;j=j+(0-r)|0;f[n>>2]=j;k=s&1;i=i-(r<<3)|0}else{j=j+(0-(i>>>3))|0;f[n>>2]=j;k=0;i=i&7}f[q>>2]=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[c>>2]=j;if(!(a>>>0<l>>>0&(k|0)==0)){p=9;break}s=j<<(i&31)>>>m;i=e+(s<<2)|0;i=h[i>>0]|h[i+1>>0]<<8;b[a>>0]=i;b[a+1>>0]=i>>8;i=(f[q>>2]|0)+(h[e+(s<<2)+2>>0]|0)|0;f[q>>2]=i;s=a+(h[e+(s<<2)+3>>0]|0)|0;a=f[c>>2]<<(i&31)>>>m;i=e+(a<<2)|0;i=h[i>>0]|h[i+1>>0]<<8;b[s>>0]=i;b[s+1>>0]=i>>8;i=(f[q>>2]|0)+(h[e+(a<<2)+2>>0]|0)|0;f[q>>2]=i;a=s+(h[e+(a<<2)+3>>0]|0)|0;if(i>>>0>32){p=10;break a}}if((p|0)==9)if(i>>>0>32){p=10;break}m=c+8|0;n=c+12|0;k=d+-2|0;o=0-g&31;do{j=f[m>>2]|0;l=f[n>>2]|0;if(j>>>0<(l+4|0)>>>0){if((j|0)==(l|0))break a;s=i>>>3;r=(j+(0-s)|0)>>>0<l>>>0;s=r?j-l|0:s;j=j+(0-s)|0;f[m>>2]=j;l=r&1;i=i-(s<<3)|0}else{j=j+(0-(i>>>3))|0;f[m>>2]=j;l=0;i=i&7}f[q>>2]=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[c>>2]=j;if(a>>>0>k>>>0|(l|0)!=0)break a;s=j<<(i&31)>>>o;i=e+(s<<2)|0;i=h[i>>0]|h[i+1>>0]<<8;b[a>>0]=i;b[a+1>>0]=i>>8;i=(f[q>>2]|0)+(h[e+(s<<2)+2>>0]|0)|0;f[q>>2]=i;a=a+(h[e+(s<<2)+3>>0]|0)|0}while(i>>>0<=32)}while(0);if((p|0)==10)k=d+-2|0;if(a>>>0>k>>>0)j=a;else{j=0-g&31;do{s=f[c>>2]<<(i&31)>>>j;i=e+(s<<2)|0;i=h[i>>0]|h[i+1>>0]<<8;b[a>>0]=i;b[a+1>>0]=i>>8;i=(f[q>>2]|0)+(h[e+(s<<2)+2>>0]|0)|0;f[q>>2]=i;a=a+(h[e+(s<<2)+3>>0]|0)|0}while(a>>>0<=k>>>0);j=a}if(j>>>0>=d>>>0)return;a=f[c>>2]<<(i&31)>>>(0-g&31);b[j>>0]=b[e+(a<<2)>>0]|0;if((b[e+(a<<2)+3>>0]|0)==1){f[q>>2]=(f[q>>2]|0)+(h[e+(a<<2)+2>>0]|0);return}i=f[q>>2]|0;if(i>>>0>=32)return;s=i+(h[e+(a<<2)+2>>0]|0)|0;f[q>>2]=s>>>0<32?s:32;return}function i5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;x=0;D=u;u=u+1088|0;if(e>>>0<10){g=-11;u=D;return g|0}k=h[d>>0]|h[d+1>>0]<<8;n=h[(d+2|0)>>0]|h[(d+2|0)+1>>0]<<8;q=h[(d+4|0)>>0]|h[(d+4|0)+1>>0]<<8;y=e+-6-(k&65535)-(n&65535)-(q&65535)|0;l=(d+6|0)+(k&65535)|0;p=l+(n&65535)|0;w=p+(q&65535)|0;B=a+((c+3|0)>>>2)|0;C=B+((c+3|0)>>>2)|0;A=(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24)>>>16;i=1;if(i){i=0;if(y>>>0>e>>>0)z=-11;else i=1}if(i)if(1){do if(!(k<<16>>16)){f[(D+48|0)>>2]=0;f[(D+48|0)+4>>2]=0;f[(D+48|0)+8>>2]=0;f[(D+48|0)+12>>2]=0;r=-10;s=0}else{f[(D+48|0)+12>>2]=d+6|0;if((k&65535)>3){f[(D+48|0)+8>>2]=l+-4|0;f[(D+48|0)>>2]=h[(l+-4|0)>>0]|h[(l+-4|0)+1>>0]<<8|h[(l+-4|0)+2>>0]<<16|h[(l+-4|0)+3>>0]<<24;e=b[(d+6|0)+((k&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+48|0)+4|0)>>2]=0;r=-1;s=0;break}else{s=(_(e&255|0)|0)+-23|0;f[((D+48|0)+4|0)>>2]=s;r=k&65535;break}}f[(D+48|0)+8>>2]=d+6|0;e=h[(d+6|0)>>0]|0;f[(D+48|0)>>2]=e;switch(k<<16>>16){case 2:{j=e;x=11;break}case 3:{j=(h[d+8>>0]|0)<<16|e;f[(D+48|0)>>2]=j;x=11;break}default:{}}if((x|0)==11)f[(D+48|0)>>2]=((h[d+7>>0]|0)<<8)+j;e=b[(d+6|0)+((k&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+48|0)+4|0)>>2]=0;r=-1;s=0;break}else{s=(4-(k&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+48|0)+4|0)>>2]=s;r=k&65535;break}}while(0);t=1;if(t){t=0;if(!(X4a(r)|0)){do if(!(n<<16>>16)){f[(D+32|0)>>2]=0;f[(D+32|0)+4>>2]=0;f[(D+32|0)+8>>2]=0;f[(D+32|0)+12>>2]=0;l=-10}else{f[(D+32|0)+12>>2]=l;if((n&65535)>3){f[(D+32|0)+8>>2]=p+-4|0;f[(D+32|0)>>2]=h[(p+-4|0)>>0]|h[(p+-4|0)+1>>0]<<8|h[(p+-4|0)+2>>0]<<16|h[(p+-4|0)+3>>0]<<24;e=b[l+((n&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+32|0)+4|0)>>2]=0;l=-1;break}else{l=(_(e&255|0)|0)+-23|0;f[((D+32|0)+4|0)>>2]=l;l=n&65535;break}}f[(D+32|0)+8>>2]=l;e=h[l>>0]|0;f[(D+32|0)>>2]=e;switch(n<<16>>16){case 2:{m=e;x=24;break}case 3:{m=(h[l+2>>0]|0)<<16|e;f[(D+32|0)>>2]=m;x=24;break}default:{}}if((x|0)==24)f[(D+32|0)>>2]=((h[l+1>>0]|0)<<8)+m;e=b[l+((n&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+32|0)+4|0)>>2]=0;l=-1;break}else{l=(4-(n&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+32|0)+4|0)>>2]=l;l=n&65535;break}}while(0);m=1;if(m){m=0;if(!(X4a(l)|0)){do if(!(q<<16>>16)){f[(D+16|0)>>2]=0;f[(D+16|0)+4>>2]=0;f[(D+16|0)+8>>2]=0;f[(D+16|0)+12>>2]=0;j=-10}else{f[(D+16|0)+12>>2]=p;if((q&65535)>3){f[(D+16|0)+8>>2]=w+-4|0;f[(D+16|0)>>2]=h[(w+-4|0)>>0]|h[(w+-4|0)+1>>0]<<8|h[(w+-4|0)+2>>0]<<16|h[(w+-4|0)+3>>0]<<24;e=b[p+((q&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+16|0)+4|0)>>2]=0;j=-1;break}else{j=(_(e&255|0)|0)+-23|0;f[((D+16|0)+4|0)>>2]=j;j=q&65535;break}}f[(D+16|0)+8>>2]=p;e=h[p>>0]|0;f[(D+16|0)>>2]=e;switch(q<<16>>16){case 2:{o=e;x=37;break}case 3:{o=(h[p+2>>0]|0)<<16|e;f[(D+16|0)>>2]=o;x=37;break}default:{}}if((x|0)==37)f[(D+16|0)>>2]=((h[p+1>>0]|0)<<8)+o;e=b[p+((q&65535)+-1)>>0]|0;if(!(e<<24>>24)){f[((D+16|0)+4|0)>>2]=0;j=-1;break}else{j=(4-(q&65535)<<3)+-23+(_(e&255|0)|0)|0;f[((D+16|0)+4|0)>>2]=j;j=q&65535;break}}while(0);k=1;if(k){k=0;if(!(X4a(j)|0)){do if(!y){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;e=-10;i=0}else{f[D+12>>2]=w;if(y>>>0>3){f[D+8>>2]=w+y+-4|0;f[D>>2]=h[(w+y+-4|0)>>0]|h[(w+y+-4|0)+1>>0]<<8|h[(w+y+-4|0)+2>>0]<<16|h[(w+y+-4|0)+3>>0]<<24;e=b[w+(y+-1)>>0]|0;if(!(e<<24>>24)){f[(D+4|0)>>2]=0;e=-1;i=0;break}else{i=(_(e&255|0)|0)+-23|0;f[(D+4|0)>>2]=i;e=y;break}}f[D+8>>2]=w;e=h[w>>0]|0;f[D>>2]=e;switch(y|0){case 2:{v=e;x=50;break}case 3:{v=(h[w+2>>0]|0)<<16|e;f[D>>2]=v;x=50;break}default:{}}if((x|0)==50)f[D>>2]=((h[w+1>>0]|0)<<8)+v;e=b[w+(y+-1)>>0]|0;if(!(e<<24>>24)){f[(D+4|0)>>2]=0;e=-1;i=0;break}else{i=(4-y<<3)+-23+(_(e&255|0)|0)|0;f[(D+4|0)>>2]=i;e=y;break}}while(0);d=1;if(d){d=0;if(!(X4a(e)|0)){q=(D+48|0)+4|0;v=(D+32|0)+4|0;w=(D+16|0)+4|0;E=a;n=B;o=C;p=C+((c+3|0)>>>2)|0;x=s;y=i;f[D+80>>2]=a;f[D+88>>2]=c;f[D+112>>2]=g;f[D+144>>2]=E;f[D+152>>2]=n;f[D+160>>2]=o;f[D+168>>2]=p;f[D+272>>2]=z;f[D+296>>2]=A;f[D+440>>2]=q;f[D+448>>2]=v;f[D+456>>2]=w;f[D+472>>2]=x;f[D+560>>2]=B;f[D+568>>2]=C;f[D+616>>2]=y;f[D+1024>>2]=0;f[D+1028>>2]=0;c7a(D);z=f[D+272>>2]|0}else d=1}if(d)if(1)z=e}else k=1}if(k)if(1)z=j}else m=1}if(m)if(1)z=l}else t=1}if(t)if(1)z=r}E=z;u=D;return E|0}function j5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;k=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;if(!(k&65280)){do if(!e){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;e=-10}else{f[l+12>>2]=d;if(e>>>0>3){i=d+e+-4|0;f[l+8>>2]=i;f[l>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=b[d+(e+-1)>>0]|0;d=l+4|0;if(!(i<<24>>24)){f[d>>2]=0;e=-1;break}else{j=(_(i&255|0)|0)+-23|0;f[d>>2]=j;break}}f[l+8>>2]=d;i=h[d>>0]|0;f[l>>2]=i;switch(e|0){case 2:{j=25;break}case 3:{i=(h[d+2>>0]|0)<<16|i;f[l>>2]=i;j=25;break}default:{}}if((j|0)==25)f[l>>2]=((h[d+1>>0]|0)<<8)+i;i=b[d+(e+-1)>>0]|0;d=l+4|0;if(!(i<<24>>24)){f[d>>2]=0;e=-1;break}else{j=(4-e<<3)+-23+(_(i&255|0)|0)|0;f[d>>2]=j;break}}while(0);if(!(X4a(e)|0)){d5a(a,l,a+c|0,g+4|0,k>>>16&255);e=((f[l+4>>2]|0)!=32?1:(f[l+8>>2]|0)!=(f[l+12>>2]|0))?-11:c}l=e;u=m;return l|0}else{do if(!e){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;e=-10}else{f[l+12>>2]=d;if(e>>>0>3){i=d+e+-4|0;f[l+8>>2]=i;f[l>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=b[d+(e+-1)>>0]|0;d=l+4|0;if(!(i<<24>>24)){f[d>>2]=0;e=-1;break}else{k=(_(i&255|0)|0)+-23|0;f[d>>2]=k;break}}f[l+8>>2]=d;i=h[d>>0]|0;f[l>>2]=i;switch(e|0){case 2:{j=10;break}case 3:{i=(h[d+2>>0]|0)<<16|i;f[l>>2]=i;j=10;break}default:{}}if((j|0)==10)f[l>>2]=((h[d+1>>0]|0)<<8)+i;i=b[d+(e+-1)>>0]|0;d=l+4|0;if(!(i<<24>>24)){f[d>>2]=0;e=-1;break}else{k=(4-e<<3)+-23+(_(i&255|0)|0)|0;f[d>>2]=k;break}}while(0);if(!(X4a(e)|0)){h5a(a,l,a+c|0,g+4|0,(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24)>>>16&255);e=((f[l+4>>2]|0)!=32?1:(f[l+8>>2]|0)!=(f[l+12>>2]|0))?-11:c}l=e;u=m;return l|0}return 0}function k5a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!(((h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24)>>>8&255)<<24>>24)){e=f5a(a,b,c,d,e)|0;return e|0}else{e=i5a(a,b,c,d,e)|0;return e|0}return 0}function l5a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;if(!c){e=-9;return e|0}if(e>>>0>=c>>>0|e>>>0<2){e=-11;return e|0}h=(e<<4>>>0)/(c>>>0)|0;i=c>>>8;g=(X(f[33736+(h*24|0)+4>>2]|0,i)|0)+(f[33736+(h*24|0)>>2]|0)|0;h=(X(f[33736+(h*24|0)+12>>2]|0,i)|0)+(f[33736+(h*24|0)+8>>2]|0)|0;if(((h>>>3)+h|0)>>>0<g>>>0){g=g5a(a,d,e)|0;if(X4a(g)|0){i=g;return i|0}if(g>>>0>=e>>>0){i=-10;return i|0}i=i5a(b,c,d+g|0,e-g|0,a)|0;return i|0}else{g=c5a(a,d,e)|0;if(X4a(g)|0){i=g;return i|0}if(g>>>0>=e>>>0){i=-10;return i|0}i=f5a(b,c,d+g|0,e-g|0,a)|0;return i|0}return 0}function m5a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=f[a+24>>2]|0;h=f[a+28>>2]|0;a:do if((g|0)!=(h|0)){if(!c){while(1){if(!(b[g+33>>0]|0))if(!(o5a(g,d)|0)){g=0;break}g=g+36|0;if((g|0)==(h|0))break a}return g|0}b:while(1){switch(b[g+33>>0]|0){case 0:{if(!(o5a(g,d)|0)){g=0;h=28;break b}break}case 1:{if(!(n5a(g,e)|0)){g=0;h=28;break b}break}default:{}}g=g+36|0;if((g|0)==(h|0))break a}if((h|0)==28)return g|0}while(0);g=f[a>>2]|0;h=f[a+4>>2]|0;c:do if((g|0)!=(h|0)){if(!c){while(1){if(!(b[g+33>>0]|0))if(o5a(g,d)|0){g=0;break}g=g+36|0;if((g|0)==(h|0))break c}return g|0}d:while(1){switch(b[g+33>>0]|0){case 0:{if(o5a(g,d)|0){g=0;h=28;break d}break}case 1:{if(n5a(g,e)|0){g=0;h=28;break d}break}default:{}}g=g+36|0;if((g|0)==(h|0))break c}if((h|0)==28)return g|0}while(0);g=f[a+12>>2]|0;a=f[a+16>>2]|0;if((g|0)==(a|0)){e=1;return e|0}if(c)i=g;else{while(1){if(!(b[g+33>>0]|0))if(o5a(g,d)|0){g=0;h=28;break}g=g+36|0;if((g|0)==(a|0)){g=1;h=28;break}}if((h|0)==28)return g|0}e:while(1){switch(b[i+33>>0]|0){case 0:{if(o5a(i,d)|0){g=0;h=28;break e}break}case 1:{if(n5a(i,e)|0){g=0;h=28;break e}break}default:{}}i=i+36|0;if((i|0)==(a|0)){g=1;h=28;break}}if((h|0)==28)return g|0;return 0}function n5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0,M=0.0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0,U=0;L=u;u=u+48|0;F=L;c=f[a+12>>2]|0;if(!c){D=0.0;E=0.0;G=1.0;H=0.0;I=0.0;J=0.0;K=1.0;C=0.0}else{D=+n[c+48>>2];E=+n[c+52>>2];G=+n[c>>2];H=+n[c+16>>2];I=+n[c+32>>2];J=+n[c+4>>2];K=+n[c+20>>2];C=+n[c+36>>2]}c=f[a>>2]|0;k=f[a+4>>2]|0;if((c|0)==(k|0)){F=2;F=(F|0)!=2;u=L;return F|0}l=F+4|0;m=F+8|0;o=F+12|0;p=F+16|0;q=F+20|0;r=F+24|0;t=F+28|0;v=F+32|0;w=F+4|0;x=F+16|0;y=F+12|0;z=F+24|0;A=F+28|0;B=F+32|0;h=c;while(1){a=f[h>>2]|0;i=f[h+4>>2]|0;j=(i|0)==0;if(!j)Npb(i);g=a+40|0;d=f[g>>2]|0;e=a+44|0;c=f[e>>2]|0;if((d|0)==(c|0)){D1a(a);d=f[g>>2]|0;a=d;c=f[e>>2]|0}else a=d;e=c-d|0;d=(e|0)/12|0;a:do if(!e)c=6;else{c=0;while(1){T=f[a+(c*12|0)>>2]|0;f[F>>2]=T;S=f[a+(c*12|0)+4>>2]|0;f[l>>2]=S;R=f[a+(c*12|0)+8>>2]|0;f[m>>2]=R;e=c+1|0;Q=f[a+(e*12|0)>>2]|0;f[o>>2]=Q;P=f[a+(e*12|0)+4>>2]|0;f[p>>2]=P;e=f[a+(e*12|0)+8>>2]|0;f[q>>2]=e;U=c+2|0;f[r>>2]=f[a+(U*12|0)>>2];f[t>>2]=f[a+(U*12|0)+4>>2];f[v>>2]=f[a+(U*12|0)+8>>2];O=(f[s>>2]=T,+n[s>>2]);N=(f[s>>2]=S,+n[s>>2]);M=(f[s>>2]=R,+n[s>>2]);n[F>>2]=D+(G*O+H*N+I*M);n[w>>2]=E+(J*O+K*N+C*M);M=(f[s>>2]=Q,+n[s>>2]);N=(f[s>>2]=P,+n[s>>2]);O=(f[s>>2]=e,+n[s>>2]);n[y>>2]=D+(G*M+H*N+I*O);n[x>>2]=E+(J*M+K*N+C*O);O=+n[z>>2];N=+n[A>>2];M=+n[B>>2];n[z>>2]=D+(G*O+H*N+I*M);n[A>>2]=E+(J*O+K*N+C*M);n[m>>2]=0.0;n[q>>2]=0.0;n[v>>2]=0.0;c=c+3|0;if(nWa(F,b)|0){c=1;break a}if(c>>>0>=d>>>0){c=6;break a}a=f[g>>2]|0}}while(0);if(!j)Ppb(i);h=h+8|0;if((c|0)!=6){a=18;break}if((h|0)==(k|0)){c=2;a=18;break}}if((a|0)==18){U=(c|0)!=2;u=L;return U|0}return 0}function o5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0,Q=0,R=0.0,S=0,T=0.0,U=0.0,V=0.0,W=0,X=0,Y=0,Z=0,_=0,$=0;S=u;u=u+48|0;P=S+36|0;Q=S;c=f[a+12>>2]|0;if(!c){F=0.0;G=0.0;H=1.0;I=0.0;J=0.0;K=0.0;L=1.0;M=0.0;N=0.0;O=0.0;R=1.0;E=0.0}else{F=+n[c+32>>2];G=+n[c+4>>2];H=+n[c+20>>2];I=+n[c+36>>2];J=+n[c+8>>2];K=+n[c+24>>2];L=+n[c+40>>2];M=+n[c+48>>2];N=+n[c+52>>2];O=+n[c+56>>2];R=+n[c>>2];E=+n[c+16>>2]}c=f[a>>2]|0;k=f[a+4>>2]|0;if((c|0)==(k|0)){Q=2;Q=(Q|0)!=2;u=S;return Q|0}l=Q+4|0;m=Q+8|0;o=Q+12|0;p=Q+16|0;q=Q+20|0;r=Q+24|0;t=Q+28|0;v=Q+32|0;w=Q+4|0;x=Q+8|0;y=Q+16|0;z=Q+20|0;A=Q+12|0;B=Q+24|0;C=Q+28|0;D=Q+32|0;h=c;while(1){a=f[h>>2]|0;i=f[h+4>>2]|0;j=(i|0)==0;if(!j)Npb(i);g=a+40|0;d=f[g>>2]|0;e=a+44|0;c=f[e>>2]|0;if((d|0)==(c|0)){D1a(a);d=f[g>>2]|0;a=d;c=f[e>>2]|0}else a=d;e=c-d|0;d=(e|0)/12|0;a:do if(!e)c=6;else{c=0;while(1){_=f[a+(c*12|0)>>2]|0;f[Q>>2]=_;Z=f[a+(c*12|0)+4>>2]|0;f[l>>2]=Z;Y=f[a+(c*12|0)+8>>2]|0;f[m>>2]=Y;e=c+1|0;X=f[a+(e*12|0)>>2]|0;f[o>>2]=X;W=f[a+(e*12|0)+4>>2]|0;f[p>>2]=W;e=f[a+(e*12|0)+8>>2]|0;f[q>>2]=e;$=c+2|0;f[r>>2]=f[a+($*12|0)>>2];f[t>>2]=f[a+($*12|0)+4>>2];f[v>>2]=f[a+($*12|0)+8>>2];V=(f[s>>2]=_,+n[s>>2]);U=(f[s>>2]=Z,+n[s>>2]);T=(f[s>>2]=Y,+n[s>>2]);n[Q>>2]=M+(R*V+E*U+F*T);n[w>>2]=N+(G*V+H*U+I*T);n[x>>2]=O+(J*V+K*U+L*T);T=(f[s>>2]=X,+n[s>>2]);U=(f[s>>2]=W,+n[s>>2]);V=(f[s>>2]=e,+n[s>>2]);n[A>>2]=M+(R*T+E*U+F*V);n[y>>2]=N+(G*T+H*U+I*V);n[z>>2]=O+(J*T+K*U+L*V);V=+n[B>>2];U=+n[C>>2];T=+n[D>>2];n[B>>2]=M+(R*V+E*U+F*T);n[C>>2]=N+(G*V+H*U+I*T);n[D>>2]=O+(J*V+K*U+L*T);c=c+3|0;if(xWa(b,Q,P)|0){c=1;break a}if(c>>>0>=d>>>0){c=6;break a}a=f[g>>2]|0}}while(0);if(!j)Ppb(i);h=h+8|0;if((c|0)!=6){a=18;break}if((h|0)==(k|0)){c=2;a=18;break}}if((a|0)==18){$=(c|0)!=2;u=S;return $|0}return 0}function p5a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0,q=0,r=0;r=u;u=u+64|0;o=r+16|0;q=r;d=f[a+56>>2]|0;if(!d){a=f[a+60>>2]|0;e=+p[a>>3];h=+p[c>>3]-e;l=+p[a+8>>3];i=+p[c+8>>3]-l;m=+p[a+16>>3];k=+p[c+16>>3]-m;j=+L(+(h*h+(i*i+k*k)));a=0;g=0.0;h=h/j;i=i/j;j=k/j;k=0.0}else{a=f[d>>2]|0;i=+p[c>>3];h=+p[c+8>>3];e=+p[c+16>>3];k=1.0/(i*+p[a+96>>3]+h*+p[a+128>>3]+e*+p[a+160>>3]+ +p[a+192>>3]);g=(+p[a+72>>3]*i+ +p[a+104>>3]*h+ +p[a+136>>3]*e+ +p[a+168>>3])*k;k=(i*+p[a+80>>3]+h*+p[a+112>>3]+e*+p[a+144>>3]+ +p[a+176>>3])*k;p[q>>3]=g;p[q+8>>3]=k;kXa(o,a,q);a=1;e=+p[o>>3];h=+p[o+24>>3];i=+p[o+32>>3];j=+p[o+40>>3];l=+p[o+8>>3];m=+p[o+16>>3]}n[o>>2]=e;n[o+4>>2]=l;n[o+8>>2]=m;n[o+12>>2]=h;n[o+16>>2]=i;n[o+20>>2]=j;n[q>>2]=g;n[q+4>>2]=k;n[q+8>>2]=0.0;q=m5a(b,a,o,q)|0;u=r;return q|0}function q5a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m;l=a+584|0;i=X(c,1540483477)|0;i=(X(i>>>24^i,1540483477)|0)^1866966612;i=X(i>>>13^i,1540483477)|0;i=i>>>15^i;h=f[a+588>>2]|0;a:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)k=g&i;else if(i>>>0<h>>>0)k=i;else k=(i>>>0)%(h>>>0)|0;d=f[(f[l>>2]|0)+(k<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){b:do if(e)while(1){h=f[d+4>>2]|0;e=(h|0)==(i|0);if(!(e|(h&g|0)==(k|0)))break a;if(e)if((f[d+8>>2]|0)==(c|0))break b;d=f[d>>2]|0;if(!d)break a}else while(1){e=f[d+4>>2]|0;if((e|0)==(i|0)){if((f[d+8>>2]|0)==(c|0))break b}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(k|0))break a}d=f[d>>2]|0;if(!d)break a}while(0);l=(b[d+12>>0]|0)!=0;u=m;return l|0}}}while(0);k=f[a+56>>2]|0;k=m5a(c,(k|0)!=0,(f[a+60>>2]|0)+48|0,k+40|0)|0;f[j>>2]=c;l=r5a(l,j)|0;b[l>>0]=k&1;l=k;u=m;return l|0}function r5a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;k=f[c>>2]|0;p=X(k,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;l=a+4|0;m=f[l>>2]|0;o=(m|0)==0;i=k;a:do if(o)c=0;else{h=m+-1|0;d=(h&m|0)==0;if(d)j=p&h;else if(p>>>0<m>>>0)j=p;else j=(p>>>0)%(m>>>0)|0;c=f[(f[a>>2]|0)+(j<<2)>>2]|0;if(!c)c=j;else{if(d){do{c=f[c>>2]|0;if(!c){c=j;break a}d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&h|0)==(j|0))){c=j;break a}}while((f[c+8>>2]|0)!=(i|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=j;break a}d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=m>>>0)d=(d>>>0)%(m>>>0)|0;if((d|0)!=(j|0)){c=j;break a}}}while((f[c+8>>2]|0)!=(i|0));a=c+12|0;return a|0}}while(0);j=Wpb(16)|0;f[j+8>>2]=k;b[j+12>>0]=0;f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(m>>>0)<e){c=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;d=~~+W(+(e/g))>>>0;s5a(a,c>>>0<d>>>0?d:c);c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}else h=m;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=30}}else{f[j>>2]=f[c>>2];q=30}if((q|0)==30)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+12|0;return a|0}function s5a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){t5a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;t5a(a,b);return}function t5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function u5a(){if(!(b[209528]|0))rrb(209528)|0;f[52809]=215189;return}function v5a(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0;C=u;u=u+32|0;A=C;w=+p[d>>3];t=+p[d+24>>3];if(w==t)if(+p[d+8>>3]==+p[d+32>>3]){if(!(+p[d+16>>3]==+p[d+40>>3]))B=4}else B=4;else B=4;do if((B|0)==4){v=+p[d+48>>3];if(w==v)if(+p[d+8>>3]==+p[d+56>>3])if(+p[d+16>>3]==+p[d+64>>3])break;k=d+32|0;if(t==v){r=+p[k>>3];s=+p[d+56>>3];if(r==s)if(+p[d+40>>3]==+p[d+64>>3])break}else{r=+p[k>>3];s=+p[d+56>>3]}q=f[c+60>>2]|0;G=+p[d+8>>3];x=r-G;r=+p[d+16>>3];E=+p[d+64>>3]-r;H=+p[d+40>>3]-r;z=s-G;F=x*E-H*z;s=v-w;y=t-w;E=H*s-E*y;s=z*y-x*s;x=+p[q>>3];m=q+8|0;y=+p[m>>3];o=q+16|0;z=+p[o>>3];r=w*F+(G*E+r*s)-(F*x+(y*E+s*z));k=q+24|0;t=+p[k>>3];l=q+32|0;v=+p[l>>3];n=q+40|0;w=+p[n>>3];s=F*t+(E*v+s*w);D=s<0.0;s=D?-s:s;r=D?-r:r;do if(!(!(r>=0.0)|!(r<=s*h))){h=r/s;p[A>>3]=x+h*t;p[A+8>>3]=y+h*v;p[A+16>>3]=z+h*w;if(!(oWa(d,A)|0))break;if(e|0)if(eXa((f[f[c+56>>2]>>2]|0)+8|0,d,e,g,i)|0)break;a:do if(!j){t=+p[q>>3]+h*+p[k>>3];s=+p[m>>3]+h*+p[l>>3];r=+p[o>>3]+h*+p[n>>3];l=f[c+744>>2]|0;q=f[c+748>>2]|0;if((l|0)!=(q|0)){k=0;while(1){m=f[l>>2]|0;o=f[l+4>>2]|0;if((m|0)==(o|0))k=(k|0)>0?k:0;else{n=2;do{D=+p[m+24>>3]+(t*+p[m>>3]+(s*+p[m+8>>3]+r*+p[m+16>>3]))<0.0?0:2;n=(D|0)<(n|0)?D:n;m=m+32|0}while((m|0)!=(o|0));if((n|0)==2)break;else k=(k|0)<(n|0)?n:k}l=l+12|0;if((l|0)==(q|0)){B=26;break}}b:do if((B|0)==26){switch(k|0){case 0:break a;case 2:break b;default:{}}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=C;return}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=C;return}}while(0);b[a>>0]=1;p[a+8>>3]=h;u=C;return}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=C;return}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=C;return}function w5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0;g=+p[c>>3];f=+p[c+8>>3];e=+p[c+16>>3];h=+K(+(g*+p[b>>3]+f*+p[b+8>>3]+(e*+p[b+16>>3]+ +p[b+24>>3])));p[a+8>>3]=h;g=+p[d>>3]-g;f=+p[d+8>>3]-f;e=+p[d+16>>3]-e;p[a>>3]=g*g+(f*f+e*e);return}function x5a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0.0,D=0.0,E=0.0,F=0.0;A=u;u=u+80|0;w=A+72|0;z=A+56|0;y=A+40|0;x=A;f[w>>2]=c;l=c+744|0;a:do if(!e){g=f[l>>2]|0;k=f[c+748>>2]|0;if((g|0)!=(k|0)){o=+p[d>>3];q=+p[d+8>>3];r=+p[d+16>>3];s=+p[d+24>>3];t=+p[d+32>>3];v=+p[d+40>>3];e=0;while(1){c=f[g>>2]|0;j=f[g+4>>2]|0;if((c|0)==(j|0))e=(e|0)>0?e:0;else{i=2;do{E=+p[c>>3];D=+p[c+8>>3];B=+p[c+16>>3];F=+p[c+24>>3];h=!(F+(o*E+(q*D+r*B))<0.0);if(!(F+(s*E+(t*D+v*B))<0.0)){h=h?2:1;m=9}else if(h)h=1;else{h=0;m=9}if((m|0)==9){m=0;h=(h|0)==0?0:(h|0)==2?2:1}i=(h|0)<(i|0)?h:i;c=c+32|0}while((c|0)!=(j|0));if((i|0)==2)break;else e=(e|0)<(i|0)?i:e}g=g+12|0;if((g|0)==(k|0)){m=13;break}}b:do if((m|0)==13){switch(e|0){case 0:break a;case 2:break b;case 1:break;default:{e=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(e|0));u=A;return}}Rja(z,f[52809]|0);Rja(y,f[52809]|0);DZa(l,d,z,y);b[a>>0]=0;c=a+8|0;p[c>>3]=C;e=f[y>>2]|0;n=y+4|0;m=(f[n>>2]|0)-e|0;g=e+(((m|0)/24|0)*24|0)|0;if(m|0){h=x+8|0;i=x+16|0;j=a+16|0;k=x+24|0;d=a+24|0;l=x+32|0;m=a+32|0;do{y5a(x,w,e);if(b[x>>0]|0)if(+p[h>>3]<+p[c>>3]){f[a>>2]=f[x>>2];f[a+4>>2]=f[x+4>>2];f[a+8>>2]=f[x+8>>2];f[a+12>>2]=f[x+12>>2];p[j>>3]=+p[i>>3];p[d>>3]=+p[k>>3];p[m>>3]=+p[l>>3]}e=e+48|0}while((e|0)!=(g|0))}a=f[y+12>>2]|0;if(a|0)Wja(a,y);a=f[y>>2]|0;if(a|0){e=f[n>>2]|0;if((e|0)!=(a|0))f[n>>2]=e+(~(((e+-24-a|0)>>>0)/24|0)*24|0);Zpb(a)}a=f[z+12>>2]|0;if(a|0)Wja(a,z);c=f[z>>2]|0;if(c|0){a=z+4|0;e=f[a>>2]|0;if((e|0)!=(c|0))f[a>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}u=A;return}while(0);e=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(e|0));u=A;return}}while(0);y5a(a,w,d);u=A;return}function y5a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,s=0,t=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0;t=u;u=u+64|0;e=t+48|0;j=t+40|0;k=t+32|0;l=t+24|0;m=t;h=+p[d+24>>3]-+p[d>>3];p[m>>3]=h;n=d+8|0;i=+p[d+32>>3]-+p[n>>3];o=m+8|0;p[o>>3]=i;r=d+16|0;q=+p[d+40>>3]-+p[r>>3];s=m+16|0;p[s>>3]=q;if(h==0.0&i==0.0&q==0.0){e=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(e|0));u=t;return}z=f[(f[c>>2]|0)+60>>2]|0;vWa(z,e,j,d,m,k,l);q=+p[e>>3]/+p[j>>3];g=+p[k>>3]/+p[l>>3];i=+p[d>>3]+g*+p[m>>3];h=+p[n>>3]+g*+p[o>>3];g=+p[r>>3]+g*+p[s>>3];c=f[f[(f[c>>2]|0)+56>>2]>>2]|0;v=+K(+(i*+p[c+328>>3]+h*+p[c+336>>3]+(g*+p[c+344>>3]+ +p[c+352>>3])));y=+p[z>>3]+q*+p[z+24>>3]-i;x=+p[z+8>>3]+q*+p[z+32>>3]-h;w=+p[z+16>>3]+q*+p[z+40>>3]-g;v=+p[c+360>>3]*v;if(!(y*y+(x*x+w*w)<=v*v)){e=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(e|0));u=t;return}else{b[a>>0]=1;p[a+8>>3]=q;p[a+16>>3]=i;p[a+24>>3]=h;p[a+32>>3]=g;u=t;return}}function z5a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,q=0,r=0,s=0.0,t=0.0;q=f[c+60>>2]|0;a:do if(!e){i=f[c+744>>2]|0;n=f[c+748>>2]|0;if((i|0)!=(n|0)){g=+p[d>>3];h=+p[d+8>>3];m=+p[d+16>>3];e=0;while(1){j=f[i>>2]|0;l=f[i+4>>2]|0;if((j|0)==(l|0))e=(e|0)>0?e:0;else{k=2;do{r=+p[j+24>>3]+(g*+p[j>>3]+(h*+p[j+8>>3]+m*+p[j+16>>3]))<0.0?0:2;k=(r|0)<(k|0)?r:k;j=j+32|0}while((j|0)!=(l|0));if((k|0)==2)break;else e=(e|0)<(k|0)?k:e}i=i+12|0;if((i|0)==(n|0)){o=9;break}}b:do if((o|0)==9){switch(e|0){case 0:break a;case 2:break b;default:{}}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}}while(0);h=+wWa(q,d);r=f[f[c+56>>2]>>2]|0;t=+p[d>>3];s=+p[d+8>>3];g=+p[d+16>>3];m=+K(+(t*+p[r+328>>3]+s*+p[r+336>>3]+(g*+p[r+344>>3]+ +p[r+352>>3])));t=+p[q>>3]+h*+p[q+24>>3]-t;s=+p[q+8>>3]+h*+p[q+32>>3]-s;g=+p[q+16>>3]+h*+p[q+40>>3]-g;g=t*t+(s*s+g*g);m=+p[r+360>>3]*m;if(!(g<=m*m)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}else{b[a>>0]=1;p[a+8>>3]=h;p[a+16>>3]=g;return}}function A5a(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;d=f[b>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+4>>2]|0;d=f[b+4>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+20>>2]|0;d=f[b+20>>2]|0;if((c|0)<(d|0))c=1;else if((c|0)>(d|0))c=0;else c=(f[a+24>>2]|0)<(f[b+24>>2]|0)}}return c|0}function B5a(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;d=f[b>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+4>>2]|0;d=f[b+4>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+20>>2]|0;d=f[b+20>>2]|0;if((c|0)<(d|0))c=1;else if((c|0)>(d|0))c=0;else c=(f[a+24>>2]|0)<(f[b+24>>2]|0)}}return c|0}function C5a(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;d=f[b>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+4>>2]|0;d=f[b+4>>2]|0;if(c>>>0<d>>>0)c=1;else if(c>>>0>d>>>0)c=0;else{c=f[a+20>>2]|0;d=f[b+20>>2]|0;if((c|0)<(d|0))c=1;else if((c|0)>(d|0))c=0;else c=(f[a+24>>2]|0)<(f[b+24>>2]|0)}}return c|0}function D5a(a,b){a=a|0;b=b|0;var c=0,d=0;d=Wpb(28)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=34128;c=d+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a>>2]=c;f[a+4>>2]=d;f[d+16>>2]=b;ve(1,c|0);return}function E5a(a){a=a|0;f[a>>2]=34128;M7a(211248,f[a+12>>2]|0);Hpb(a);return}function F5a(a){a=a|0;f[a>>2]=34128;M7a(211248,f[a+12>>2]|0);Hpb(a);Zpb(a);return}function G5a(a){a=a|0;M7a(211248,f[a+12>>2]|0);return}function H5a(a){a=a|0;Zpb(a);return}function I5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a+8>>2]=b;f[a+12>>2]=d;g=a+4|0;e=f[g>>2]|0;h=f[a>>2]|0;a=L7a(211248,e)|0;K7a(211248,e,h)|0;Sd(f[g>>2]|0,b|0,c|0,d|0);K7a(211248,e,a)|0;return}function J5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=a+4|0;e=f[g>>2]|0;h=f[a>>2]|0;a=L7a(211248,e)|0;K7a(211248,e,h)|0;Td(f[g>>2]|0,b|0,c|0,d|0);K7a(211248,e,a)|0;return}function K5a(a){a=a|0;f[a>>2]=34156;S7a(211248,f[a+12>>2]|0);Hpb(a);return}function L5a(a){a=a|0;f[a>>2]=34156;S7a(211248,f[a+12>>2]|0);Hpb(a);Zpb(a);return}function M5a(a){a=a|0;S7a(211248,f[a+12>>2]|0);return}function N5a(a){a=a|0;Zpb(a);return}function O5a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=Wpb(32)|0;f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=34156;k=i+12|0;f[k>>2]=0;j=i+16|0;f[j>>2]=6408;g=i+20|0;f[g>>2]=0;h=i+24|0;f[h>>2]=0;f[a>>2]=k;f[a+4>>2]=i;xe(1,k|0);a=u6a()|0;a=a?e:0;e=f[52837]|0;O7a(211248,f[k>>2]|0)|0;if(!a)Pe(36161,b|0,c|0,d|0);f[j>>2]=b;f[g>>2]=c;f[h>>2]=d;f[i+28>>2]=a;O7a(211248,e)|0;return}function P5a(a){a=a|0;var b=0;b=f[a+8>>2]|0;if(b|0)if(f[b+8>>2]|0){b=f[b+16>>2]|0;return b|0}a=f[a>>2]|0;if(!a){b=0;return b|0}if(!(f[a>>2]|0)){b=0;return b|0}b=f[a+8>>2]|0;return b|0}function Q5a(a){a=a|0;var b=0;b=f[a+8>>2]|0;if(b|0)if(f[b+8>>2]|0){b=f[b+20>>2]|0;return b|0}a=f[a>>2]|0;if(!a){b=0;return b|0}if(!(f[a>>2]|0)){b=0;return b|0}b=f[a+12>>2]|0;return b|0}function R5a(a){a=a|0;var b=0,c=0,d=0,e=0;T7a(211248,f[a>>2]|0);b=f[a+76>>2]|0;if(b|0)Ppb(b);b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(b|0)Ppb(b);e=a+4|0;b=f[e>>2]|0;if(!b)return;d=a+8|0;a=f[d>>2]|0;if((a|0)!=(b|0)){do{f[d>>2]=a+-24;c=f[a+-12>>2]|0;if(c|0)Ppb(c);a=f[a+-20>>2]|0;if(a|0)Ppb(a);a=f[d>>2]|0}while((a|0)!=(b|0));b=f[e>>2]|0}Zpb(b);return}function S5a(a){a=a|0;var c=0,d=0,e=0;d=Wpb(108)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=34184;c=d+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;f[d+44>>2]=3553;e=d+48|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[d+68>>2]=3553;e=d+72|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[d+92>>2]=3553;f[d+96>>2]=0;b[d+104>>0]=0;f[a>>2]=c;f[a+4>>2]=d;we(1,c|0);return}function T5a(a){a=a|0;f[a>>2]=34184;R5a(a+12|0);Hpb(a);return}function U5a(a){a=a|0;f[a>>2]=34184;R5a(a+12|0);Hpb(a);Zpb(a);return}function V5a(a){a=a|0;R5a(a+12|0);return}function W5a(a){a=a|0;Zpb(a);return}function X5a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Wpb(108)|0;f[m+4>>2]=0;f[m+8>>2]=0;f[m>>2]=34184;n=m+12|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[n+12>>2]=0;f[n+16>>2]=0;f[n+20>>2]=0;f[n+24>>2]=0;f[n+28>>2]=0;f[m+44>>2]=3553;l=m+48|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;f[m+68>>2]=3553;l=m+72|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;f[m+92>>2]=3553;f[m+96>>2]=0;b[m+104>>0]=0;f[a>>2]=n;f[a+4>>2]=m;we(1,n|0);if(d){j=c+4|0;k=c+8|0;d=f[k>>2]|0;a=f[j>>2]|0;if((d|0)!=(a|0)){i=0;do{h=a;g=f[h+(i*24|0)+8>>2]|0;if(!g)l=5;else if(!(f[g+8>>2]|0))l=5;else l=7;if((l|0)==5){l=0;g=f[h+(i*24|0)>>2]|0;if(g)if(f[g>>2]|0)l=7}if((l|0)==7){Y5a(n,i,h+(i*24|0)|0);a=f[j>>2]|0;d=f[k>>2]|0}i=i+1|0}while(i>>>0<((d-a|0)/24|0)>>>0)}}if(!e)return;d=c+16|0;a=f[c+24>>2]|0;if(!a)l=12;else if(!(f[a+8>>2]|0))l=12;else l=14;if((l|0)==12){a=f[d>>2]|0;if(a|0)if(f[a>>2]|0)l=14}if((l|0)==14)if(Z5a(n,36096,m+28|0,d)|0)b[m+104>>0]=0;d=c+40|0;a=f[c+48>>2]|0;if(!a)l=18;else if(!(f[a+8>>2]|0))l=18;else l=20;if((l|0)==18){a=f[d>>2]|0;if(a|0)if(f[a>>2]|0)l=20}if((l|0)==20)Z5a(n,36128,m+52|0,d)|0;d=c+64|0;a=f[c+72>>2]|0;if(!a)l=23;else if(!(f[a+8>>2]|0))l=23;if((l|0)==23){a=f[d>>2]|0;if(!a)return;if(!(f[a>>2]|0))return}if(!(Z5a(n,33306,m+76|0,d)|0))return;b[m+104>>0]=0;return}function Y5a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+1024|0;n=o;l=a+4|0;m=a+8|0;d=f[m>>2]|0;h=f[l>>2]|0;g=(d-h|0)/24|0;do if(g>>>0>b>>>0){d=f[h+(b*24|0)+8>>2]|0;if(d|0){e=f[d+8>>2]|0;if(e|0){d=f[c+8>>2]|0;if(!d)d=0;else d=f[d+8>>2]|0;if((e|0)!=(d|0))break;if((f[h+(b*24|0)+16>>2]|0)!=(f[c+16>>2]|0))break;if((f[h+(b*24|0)+20>>2]|0)!=(f[c+20>>2]|0))break;u=o;return}}d=f[c+8>>2]|0;if(d|0)if(f[d+8>>2]|0)break;d=f[h+(b*24|0)>>2]|0;if(!d)e=0;else e=f[d>>2]|0;d=f[c>>2]|0;if(!d)d=0;else d=f[d>>2]|0;if((e|0)==(d|0)){u=o;return}}else{e=f[c+8>>2]|0;if(!e)k=18;else if(!(f[e+8>>2]|0))k=18;if((k|0)==18){e=f[c>>2]|0;if(!e){u=o;return}if(!(f[e>>2]|0)){u=o;return}}e=b+1|0;if(e>>>0>g>>>0){_5a(l,e-g|0);break}if(e>>>0<g>>>0){g=h+(e*24|0)|0;if((g|0)!=(d|0))do{f[m>>2]=d+-24;e=f[d+-12>>2]|0;if(e|0)Ppb(e);d=f[d+-20>>2]|0;if(d|0)Ppb(d);d=f[m>>2]|0}while((d|0)!=(g|0))}}while(0);i=f[52838]|0;j=f[52839]|0;P7a(211248,f[a>>2]|0)|0;Z5a(a,b+36064|0,(f[l>>2]|0)+(b*24|0)|0,c)|0;if((((f[m>>2]|0)-(f[l>>2]|0)|0)/24|0)>>>0>1)if(y6a()|0){h=f[l>>2]|0;g=((f[m>>2]|0)-h|0)/24|0;g=g>>>0<256?g:256;if(g|0){e=0;do{d=f[h+(e*24|0)+8>>2]|0;if(!d)k=35;else if(!(f[d+8>>2]|0))k=35;else k=37;if((k|0)==35){k=0;d=f[h+(e*24|0)>>2]|0;if(!d)d=0;else if(!(f[d>>2]|0))d=0;else k=37}if((k|0)==37)d=e+36064|0;f[n+(e<<2)>>2]=d;e=e+1|0}while(e>>>0<g>>>0)}me(g|0,n|0)}if((i|0)==(j|0)){P7a(211248,i)|0;u=o;return}else{Q7a(211248,i)|0;R7a(211248,j)|0;u=o;return}}function Z5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[c+8>>2]|0;l=(k|0)==0;if(l)j=8;else{h=f[k+8>>2]|0;if(!h)j=8;else{e=f[d+8>>2]|0;if(!e)g=0;else g=f[e+8>>2]|0;if((h|0)==(g|0))if((f[c+16>>2]|0)==(f[d+16>>2]|0))if((f[c+20>>2]|0)==(f[d+20>>2]|0)){d=0;return d|0}else j=16;else j=16;else j=16}}do if((j|0)==8){i=f[d+8>>2]|0;if(i|0)if(f[i+8>>2]|0){h=d+8|0;e=i;j=17;break}e=f[c>>2]|0;if(!e)g=0;else g=f[e>>2]|0;e=f[d>>2]|0;if(!e)e=0;else e=f[e>>2]|0;if((g|0)==(e|0)){d=0;return d|0}else{e=i;j=16}}while(0);if((j|0)==16){h=d+8|0;if(!e)j=23;else j=17}do if((j|0)==17)if(!(f[e+8>>2]|0))j=23;else{g=f[52838]|0;i=f[52839]|0;P7a(211248,f[a>>2]|0)|0;e=f[d+8>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;te(36160,b|0,f[d+16>>2]|0,e|0,f[d+20>>2]|0);if((g|0)==(i|0)){P7a(211248,g)|0;break}else{Q7a(211248,g)|0;R7a(211248,i)|0;break}}while(0);do if((j|0)==23){e=f[d>>2]|0;if(e|0)if(f[e>>2]|0){g=f[52838]|0;i=f[52839]|0;P7a(211248,f[a>>2]|0)|0;e=f[d>>2]|0;if(!e)e=0;else e=f[e>>2]|0;se(36160,b|0,36161,e|0);if((g|0)==(i|0)){P7a(211248,g)|0;break}else{Q7a(211248,g)|0;R7a(211248,i)|0;break}}if(l)j=32;else if(!(f[k+8>>2]|0))j=32;if((j|0)==32){e=f[c>>2]|0;if(!e)break;if(!(f[e>>2]|0))break}e=f[52838]|0;g=f[52839]|0;P7a(211248,f[a>>2]|0)|0;se(36160,b|0,36161,0);if((e|0)==(g|0)){P7a(211248,e)|0;break}else{Q7a(211248,e)|0;R7a(211248,g)|0;break}}while(0);e=f[d>>2]|0;g=f[d+4>>2]|0;if(g|0)Npb(g);f[c>>2]=e;b=c+4|0;e=f[b>>2]|0;f[b>>2]=g;if(e|0)Ppb(e);e=f[h>>2]|0;g=f[d+12>>2]|0;if(g|0)Npb(g);f[c+8>>2]=e;b=c+12|0;e=f[b>>2]|0;f[b>>2]=g;if(e|0)Ppb(e);a=d+16|0;b=f[a+4>>2]|0;d=c+16|0;f[d>>2]=f[a>>2];f[d+4>>2]=b;d=1;return d|0}function _5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/24|0)>>>0>=b>>>0){do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=3553;f[c+20>>2]=0;c=(f[k>>2]|0)+24|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/24|0;c=e+b|0;if(c>>>0>178956970)fob(a);g=(g-d|0)/24|0;i=g<<1;c=g>>>0<89478485?(i>>>0<c>>>0?c:i):178956970;do if(!c)h=0;else if(c>>>0>178956970)ud();else{h=Wpb(c*24|0)|0;break}while(0);g=h+(e*24|0)|0;d=g;e=h+(c*24|0)|0;i=d;c=g;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=3553;f[c+20>>2]=0;c=i+24|0;i=c;b=b+-1|0}while((b|0)!=0);h=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(h|0)){c=d;g=h;b=h}else{b=g;do{m=c;c=c+-24|0;f[b+-24>>2]=f[c>>2];g=m+-20|0;f[b+-20>>2]=f[g>>2];f[c>>2]=0;f[g>>2]=0;g=m+-16|0;f[b+-16>>2]=f[g>>2];l=m+-12|0;f[b+-12>>2]=f[l>>2];f[g>>2]=0;f[l>>2]=0;m=m+-8|0;l=f[m+4>>2]|0;g=b+-8|0;f[g>>2]=f[m>>2];f[g+4>>2]=l;b=d+-24|0;d=b}while((c|0)!=(h|0));c=d;g=f[a>>2]|0;b=f[k>>2]|0}f[a>>2]=c;f[k>>2]=i;f[j>>2]=e;d=g;if((b|0)!=(d|0))do{c=f[b+-12>>2]|0;if(c|0)Ppb(c);c=f[b+-20>>2]|0;b=b+-24|0;if(c|0)Ppb(c)}while((b|0)!=(d|0));if(!g)return;Zpb(g);return}function $5a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;h=m;i=h+16|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[i>>2]=3553;j=h+20|0;f[j>>2]=0;k=h+8|0;l=f[c>>2]|0;c=f[c+4>>2]|0;g=c;if(!c){f[k>>2]=l;f[h+12>>2]=g;f[i>>2]=d;f[j>>2]=e;Y5a(a,b,h);u=m;return}else{Npb(c);f[k>>2]=l;f[h+12>>2]=g;f[i>>2]=d;f[j>>2]=e;Y5a(a,b,h);Ppb(c);u=m;return}}function a6a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=3553;f[e+20>>2]=0;g=f[c>>2]|0;c=f[c+4>>2]|0;d=c;if(!c){f[e>>2]=g;f[e+4>>2]=d;Y5a(a,b,e);u=h;return}else{Npb(c);f[e>>2]=g;f[e+4>>2]=d;Y5a(a,b,e);Ppb(c);u=h;return}}function b6a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+64|0;k=l+32|0;j=l+24|0;h=l;if((e|0)==0&g)if(r6a()|0){D8a(j);v8a(h);x8a(h,9728,9728);M8a(f[j>>2]|0,34041,c,d,h);e=k+16|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[e>>2]=3553;g=k+20|0;f[g>>2]=0;i=f[j>>2]|0;h=j+4|0;c=f[h>>2]|0;d=(c|0)==0;if(!d)Npb(c);f[k+8>>2]=i;f[k+12>>2]=c;f[e>>2]=3553;f[g>>2]=0;if(Z5a(a,33306,a+64|0,k)|0)b[a+92>>0]=0;if(!d)Ppb(c);h=f[h>>2]|0;if(h|0)Ppb(h);u=l;return 1}O5a(j,34041,c,d,e);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=3553;f[k+20>>2]=0;d=f[j>>2]|0;h=f[j+4>>2]|0;c=(h|0)==0;if(!c)Npb(h);f[k>>2]=d;f[k+4>>2]=h;if(Z5a(a,33306,a+64|0,k)|0)b[a+92>>0]=0;if(!c){Ppb(h);Ppb(h)}u=l;return 1}function c6a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;d=f[a+4>>2]|0;if((d|0)==(f[a+8>>2]|0)){c=0;return c|0}e=f[d+8>>2]|0;if(!e)h=5;else if(!(f[e+8>>2]|0))h=5;else{g=e+16|0;d=e+20|0}do if((h|0)==5){d=f[d>>2]|0;if(!d){c=0;return c|0}if(!(f[d>>2]|0)){c=0;return c|0}else{g=d+8|0;d=d+12|0;break}}while(0);b6a(a,f[g>>2]|0,f[d>>2]|0,b,c,0)|0;c=1;return c|0}function d6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[b>>2]|0;if(!e){e=0;return e|0}b=f[a+48>>2]|0;if(!b)d=9;else{c=f[b+8>>2]|0;if(!c)d=9;else{b=f[e+48>>2]|0;if(!b)b=0;else b=f[b+8>>2]|0;if((c|0)!=(b|0)){e=0;return e|0}if((f[a+56>>2]|0)!=(f[e+56>>2]|0)){e=0;return e|0}if((f[a+60>>2]|0)!=(f[e+60>>2]|0)){e=0;return e|0}}}if((d|0)==9){b=f[e+48>>2]|0;if(b|0)if(f[b+8>>2]|0){e=0;return e|0}b=f[a+40>>2]|0;if(!b)c=0;else c=f[b>>2]|0;b=f[e+40>>2]|0;if(!b)b=0;else b=f[b>>2]|0;if((c|0)!=(b|0)){e=0;return e|0}}b=f[a+72>>2]|0;if(b|0){c=f[b+8>>2]|0;if(c|0){b=f[e+72>>2]|0;if(!b)b=0;else b=f[b+8>>2]|0;if((c|0)!=(b|0)){e=0;return e|0}if((f[a+80>>2]|0)!=(f[e+80>>2]|0)){e=0;return e|0}e=(f[a+84>>2]|0)==(f[e+84>>2]|0);return e|0}}b=f[e+72>>2]|0;if(b|0)if(f[b+8>>2]|0){e=0;return e|0}b=f[a+64>>2]|0;if(!b)c=0;else c=f[b>>2]|0;b=f[e+64>>2]|0;if(!b)b=0;else b=f[b>>2]|0;e=(c|0)==(b|0);return e|0}function e6a(a){a=a|0;switch(Ee()|0){case 0:{a=a?0:193431;break}case 1280:{a=193548;break}case 1281:{a=193531;break}case 1282:{a=193510;break}case 1286:{a=193477;break}case 1285:{a=193460;break}default:a=193443}return a|0}function f6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209872]|0){u=c;return 211240}if(!(rrb(209872)|0)){u=c;return 211240}f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}u=c;return 211240}function g6a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;i=0;q=u;u=u+2448|0;f[((q+152|0)+4|0)>>2]=0;f[((q+152|0)+8|0)>>2]=0;o=(q+152|0)+4|0;f[(q+152|0)>>2]=o;g=Je(7939)|0;f[(q+164|0)>>2]=0;f[(q+164|0)+4>>2]=0;f[(q+164|0)+8>>2]=0;h=cdb(g)|0;if(h>>>0>4294967279)aqb(q+164|0);if(h>>>0<11){b[((q+164|0)+11|0)>>0]=h;if(!h){d=q+164|0;j=(q+164|0)+11|0}else{c=q+164|0;e=(q+164|0)+11|0;i=6}}else{c=Wpb(h+16&-16)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=h+16&-16|-2147483648;f[(q+164|0)+4>>2]=h;e=(q+164|0)+11|0;i=6}if((i|0)==6){Irb(c|0,g|0,h|0)|0;d=c;j=e}b[d+h>>0]=0;g=(q+12|0)+8|0;f[(q+12|0)>>2]=11676;f[((q+12|0)+60|0)>>2]=11696;f[(q+12|0)+4>>2]=0;Yfb((q+12|0)+60|0,g);f[(q+12|0)+132>>2]=0;f[(q+12|0)+136>>2]=-1;f[(q+12|0)>>2]=34216;f[(q+12|0)+60>>2]=34236;agb(g);f[g>>2]=31144;h=(q+12|0)+40|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[(q+12|0)+56>>2]=8;DIa(g,q+164|0);if((b[j>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;c=0;while(1){if(c<<24>>24<0){b[f[q>>2]>>0]=0;f[(q+4|0)>>2]=0}else{b[q>>0]=0;b[(q+11|0)>>0]=0}h6a(q+12|0,q)|0;c=b[(q+11|0)>>0]|0;if(!((c<<24>>24<0?f[(q+4|0)>>2]|0:c&255)|0))break;d=i6a(q+152|0,q+164|0,q)|0;if(!(f[d>>2]|0)){c=Wpb(28)|0;cqb(c+16|0,q);e=f[(q+164|0)>>2]|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=e;f[d>>2]=c;e=f[f[(q+152|0)>>2]>>2]|0;if(e){f[(q+152|0)>>2]=e;c=f[d>>2]|0}tEa(f[((q+152|0)+4|0)>>2]|0,c);f[((q+152|0)+8|0)>>2]=(f[((q+152|0)+8|0)>>2]|0)+1}c=b[(q+11|0)>>0]|0}if(c<<24>>24<0)Zpb(f[q>>2]|0);f[(q+12|0)>>2]=34216;f[((q+12|0)+60|0)>>2]=34236;f[g>>2]=31144;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);Teb(g);Ffb(q+12|0,34248);Oeb((q+12|0)+60|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=25;d=c;e=193580;g=d+25|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+25>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=19;d=c;e=193606;g=d+19|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+19>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+1>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=17;d=c;e=193626;g=d+17|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+17>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+2>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=25;d=c;e=193644;g=d+25|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+25>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+3>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(48)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483600;f[(q+164|0)+4>>2]=33;d=c;e=193670;g=d+33|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+33>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+4>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=25;d=c;e=193704;g=d+25|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+25>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+5>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=27;d=c;e=193730;g=d+27|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+27>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+6>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=20;d=c;e=193758;g=d+20|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+20>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+7>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=27;d=c;e=193779;g=d+27|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+27>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+8>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);c=Wpb(32)|0;f[(q+164|0)>>2]=c;f[(q+164|0)+8>>2]=-2147483616;f[(q+164|0)+4>>2]=25;d=c;e=193807;g=d+25|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+25>>0]=0;j=(j6a(q+152|0,q+164|0)|0)!=(o|0)&1;b[a+9>>0]=j;if((b[(q+164|0)+11>>0]|0)<0)Zpb(f[(q+164|0)>>2]|0);g=Wpb(48)|0;f[(q+164|0)>>2]=g;f[(q+164|0)+8>>2]=-2147483600;f[(q+164|0)+4>>2]=32;h=g;i=193833;j=h+32|0;f[q+192>>2]=a;f[q+912>>2]=g;f[q+1280>>2]=l;f[q+1680>>2]=o;f[q+2144>>2]=h;f[q+2160>>2]=i;f[q+2168>>2]=j;f[q+2216>>2]=0;f[q+2220>>2]=0;h7a(q);l=f[q+1280>>2]|0;j=f[q+2144>>2]|0;i=f[q+2160>>2]|0;h=f[q+2168>>2]|0;f[q+192>>2]=a;f[q+1280>>2]=l;f[q+1664>>2]=m;f[q+1680>>2]=o;f[q+2144>>2]=j;f[q+2160>>2]=i;f[q+2168>>2]=h;f[q+2208>>2]=0;f[q+2212>>2]=0;g7a(q);m=f[q+1664>>2]|0;h=f[q+2144>>2]|0;i=f[q+2160>>2]|0;j=f[q+2168>>2]|0;f[q+192>>2]=a;f[q+1664>>2]=m;f[q+1680>>2]=o;f[q+2040>>2]=p;f[q+2144>>2]=h;f[q+2160>>2]=i;f[q+2168>>2]=j;f[q+2200>>2]=0;f[q+2204>>2]=0;f7a(q);p=f[q+2040>>2]|0;j=f[q+2144>>2]|0;i=f[q+2160>>2]|0;h=f[q+2168>>2]|0;f[q+192>>2]=a;f[q+488>>2]=k;f[q+1680>>2]=o;f[q+2040>>2]=p;f[q+2144>>2]=j;f[q+2160>>2]=i;f[q+2168>>2]=h;f[q+2192>>2]=0;f[q+2196>>2]=0;e7a(q);p=f[q+488>>2]|0;h=f[q+2144>>2]|0;i=f[q+2160>>2]|0;j=f[q+2168>>2]|0;f[q+192>>2]=a;f[q+488>>2]=p;f[q+1680>>2]=o;f[q+2144>>2]=h;f[q+2160>>2]=i;f[q+2168>>2]=j;f[q+2184>>2]=0;f[q+2188>>2]=0;d7a(q);G=f[q+2184>>2]|0;D=f[q+2188>>2]|0;H=+n[q+2188>>2];f[q+2184>>2]=0;f[q+2188>>2]=0;if((G|0)==5)return}function h6a(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m+4|0;g=m;cgb(l,a,0);if(!(b[l>>0]|0)){c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(c,f[c+16>>2]|4);u=m;return a|0}e=c+11|0;if((b[e>>0]|0)<0){b[f[c>>2]>>0]=0;f[c+4>>2]=0}else{b[c>>0]=0;b[e>>0]=0}e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+12>>2]|0;l=(l|0)<1?2147483647:l;_fb(g,e);e=Chb(g,213216)|0;Dhb(g);a:do if((l|0)>0){k=e+8|0;e=0;while(1){g=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;i=f[g+12>>2]|0;if((i|0)==(f[g+16>>2]|0)){g=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;if((g|0)==-1){g=2;break a}}else g=h[i>>0]|0;i=g&255;if(i<<24>>24>-1)if(d[(f[k>>2]|0)+(g<<24>>24<<1)>>1]&8192){g=0;break a}qqb(c,i);e=e+1|0;g=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;i=g+12|0;j=f[i>>2]|0;if((j|0)==(f[g+16>>2]|0))Ng[f[(f[g>>2]|0)+40>>2]&511](g)|0;else f[i>>2]=j+1;if((e|0)>=(l|0)){g=0;break}}}else{e=0;g=0}while(0);f[a+(f[(f[a>>2]|0)+-12>>2]|0)+12>>2]=0;c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(c,f[c+16>>2]|((e|0)==0?g|4:g));u=m;return a|0}function i6a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=a+4|0;g=f[e>>2]|0;if(!g){f[c>>2]=e;c=e;return c|0}m=b[d+11>>0]|0;l=m<<24>>24<0;m=l?f[d+4>>2]|0:m&255;l=l?f[d>>2]|0:d;d=a+4|0;while(1){h=g+16|0;a=b[h+11>>0]|0;i=a<<24>>24<0;a=i?f[g+20>>2]|0:a&255;j=a>>>0<m>>>0;e=j?a:m;if(!e)k=6;else{e=idb(l,i?f[h>>2]|0:h,e)|0;if(!e)k=6;else if((e|0)<0)k=8;else k=10}if((k|0)==6)if(m>>>0<a>>>0)k=8;else k=10;if((k|0)==8){e=f[g>>2]|0;if(!e){k=9;break}else d=g}else if((k|0)==10){k=0;e=m>>>0<a>>>0?m:a;if(!e)k=12;else{e=idb(i?f[h>>2]|0:h,l,e)|0;if(!e)k=12;else if((e|0)>=0){k=16;break}}if((k|0)==12)if(!j){k=16;break}d=g+4|0;e=f[d>>2]|0;if(!e){k=15;break}}g=e}if((k|0)==9){f[c>>2]=g;c=g;return c|0}else if((k|0)==15){f[c>>2]=g;c=d;return c|0}else if((k|0)==16){f[c>>2]=g;c=d;return c|0}return 0}function j6a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+4|0;d=f[l>>2]|0;do if(d|0){k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;a=l;a:while(1){c=d;while(1){e=c+16|0;h=b[e+11>>0]|0;g=h<<24>>24<0;h=g?f[c+20>>2]|0:h&255;d=k>>>0<h>>>0?k:h;if(!d)i=6;else{d=idb(g?f[e>>2]|0:e,j,d)|0;if(!d)i=6;else if((d|0)>=0)break}if((i|0)==6){i=0;if(h>>>0>=k>>>0)break}c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(l|0)){d=a+16|0;g=b[d+11>>0]|0;e=g<<24>>24<0;g=e?f[a+20>>2]|0:g&255;c=g>>>0<k>>>0?g:k;if(c|0){c=idb(j,e?f[d>>2]|0:d,c)|0;if(c|0){if((c|0)<0)break;return a|0}}if(k>>>0>=g>>>0){l=a;return l|0}}}while(0);return l|0}function k6a(a,c){a=a|0;c=c|0;if(!c)return;k6a(a,f[c>>2]|0);k6a(a,f[c+4>>2]|0);a=c+16|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);Zpb(c);return}function l6a(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=34216;c=a+60|0;f[c>>2]=34236;d=a+8|0;f[d>>2]=31144;e=a+40|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Ffb(a,34248);Oeb(c);return}function m6a(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=34216;c=a+60|0;f[c>>2]=34236;d=a+8|0;f[d>>2]=31144;e=a+40|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Ffb(a,34248);Oeb(c);Zpb(a);return}function n6a(a){a=a|0;var c=0,d=0,e=0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[a>>2]=34216;c=a+60|0;f[c>>2]=34236;d=a+8|0;f[d>>2]=31144;e=a+40|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Ffb(a,34248);Oeb(c);return}function o6a(a){a=a|0;var c=0,d=0,e=0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[a>>2]=34216;c=a+60|0;f[c>>2]=34236;d=a+8|0;f[d>>2]=31144;e=a+40|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Ffb(a,34248);Oeb(c);Zpb(a);return}function p6a(){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);return 215198}function q6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209888]|0){a=b[215311]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209888)|0)){a=b[215311]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215213]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215227]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215236]|0}else a=1}else a=1}b[215311]=a;d=b[215311]|0;d=d<<24>>24!=0;u=c;return d|0}function r6a(){var a=0;if(!(b[209896]|0))if(rrb(209896)|0){if(!(xd(2)|0))a=(q6a()|0)&1;else a=0;b[215312]=a}return (b[215312]|0)!=0|0}function s6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209904]|0){a=b[215313]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209904)|0)){a=b[215313]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215198]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215278]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215310]|0}else a=1}else a=1}b[215313]=a;d=b[215313]|0;d=d<<24>>24!=0;u=c;return d|0}function t6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209912]|0){a=b[215314]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209912)|0)){a=b[215314]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215228]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215275]|0}else a=1}b[215314]=a;d=b[215314]|0;d=d<<24>>24!=0;u=c;return d|0}function u6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209920]|0){a=b[215315]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209920)|0)){a=b[215315]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215229]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215276]|0}else a=1}b[215315]=a;d=b[215315]|0;d=d<<24>>24!=0;u=c;return d|0}function v6a(){var a=0,c=0,d=0;d=u;u=u+16|0;a=d+8|0;c=d;if(!(b[209928]|0))if(rrb(209928)|0){Ie(35632,36338,a|0,c|0);b[217393]=(f[c>>2]|0)!=0&1}u=d;return (b[217393]|0)!=0|0}function w6a(){return 0}function x6a(){var a=0;if(!(b[209936]|0))if(rrb(209936)|0){a=(xd(3)|0)!=0&1;b[215316]=a}return (b[215316]|0)!=0|0}function y6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209944]|0){a=b[215317]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209944)|0)){a=b[215317]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215214]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);if(!(b[215225]|0)){if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215270]|0}else a=1}else a=1}b[215317]=a;d=b[215317]|0;d=d<<24>>24!=0;u=c;return d|0}function z6a(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;if(b[209952]|0){a=b[215318]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(rrb(209952)|0)){a=b[215318]|0;a=a<<24>>24!=0;u=c;return a|0}if(!(b[209872]|0))if(rrb(209872)|0){f[52810]=2;f[52811]=0;d=Je(7938)|0;f[a>>2]=211240;f[a+4>>2]=211244;if((Udb(d,193564,a)|0)!=2){f[52810]=2;f[52811]=0}}if((f[52810]|0)>>>0>2)a=1;else{if(!(b[209880]|0))if(rrb(209880)|0)g6a(215198);a=b[215204]|0}b[215318]=a;d=b[215318]|0;d=d<<24>>24!=0;u=c;return d|0}function A6a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function B6a(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;b[a+8>>0]=3;b[a+9>>0]=0;return}function C6a(a,c){a=a|0;c=c|0;var d=0,e=0;e=f[c>>2]|0;f[c>>2]=0;d=f[a>>2]|0;f[a>>2]=e;if(d|0)_pb(d);f[a+4>>2]=f[c+4>>2];b[a+8>>0]=b[c+8>>0]|0;b[a+9>>0]=b[c+9>>0]|0;return a|0}function D6a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;f[a>>2]=0;if(!(e<<24>>24))g=(g&255)>3?3:g<<24>>24==2?1:g;h=Ypb(d,217392)|0;f[a>>2]=h;if(!h){g=3;d=0;e=0}else Irb(h|0,c|0,d|0)|0;b[a+9>>0]=e;f[a+4>>2]=d;b[a+8>>0]=g;return}function E6a(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=6408;f[a+16>>2]=5121;return}function F6a(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b>>2]|0;f[b>>2]=0;c=f[a>>2]|0;f[a>>2]=d;if(c|0)_pb(c);f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[a+16>>2]=f[b+16>>2];return a|0}function G6a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;f[a>>2]=0;f[a+4>>2]=b;f[a+8>>2]=c;f[a+12>>2]=d;f[a+16>>2]=e;switch(d|0){case 6409:{d=1;break}case 6410:{d=2;break}case 6407:{d=3;break}case 6408:{d=4;break}default:return}if((e|0)!=5121)return;d=X(X(c,b)|0,d)|0;b=Ypb(d,217392)|0;f[a>>2]=b;if(!b)return;Irb(b|0,g|0,d|0)|0;return}function H6a(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[52813]|0;b=b>>>0<8?b:8;if(!b)return;d=f[52828]|0;e=f[52831]|0;c=0;do{f[a+(c<<2)>>2]=f[d+(c<<2)>>2];f[a+32+(c<<2)>>2]=f[e+(c<<2)>>2];c=c+1|0}while(c>>>0<b>>>0);return}function I6a(a){a=a|0;var b=0,c=0,d=0,e=0;e=f[52827]|0;c=f[52813]|0;c=c>>>0<8?c:8;if(!c){E7a(211248,e)|0;return}else d=0;do{b=a+(d<<2)|0;if((f[b>>2]|0)!=(f[(f[52828]|0)+(d<<2)>>2]|0)){E7a(211248,d)|0;F7a(211248,f[b>>2]|0)|0}b=a+32+(d<<2)|0;if((f[b>>2]|0)!=(f[(f[52831]|0)+(d<<2)>>2]|0)){E7a(211248,d)|0;G7a(211248,f[b>>2]|0)|0}d=d+1|0}while(d>>>0<c>>>0);E7a(211248,e)|0;return}function J6a(a){a=a|0;var b=0;f[a>>2]=34268;b=f[a+12>>2]|0;if(b|0)de(b|0);Hpb(a);return}function K6a(a){a=a|0;var b=0;f[a>>2]=34268;b=f[a+12>>2]|0;if(b|0)de(b|0);Hpb(a);Zpb(a);return}function L6a(a){a=a|0;a=f[a+12>>2]|0;if(!a)return;de(a|0);return}function M6a(a){a=a|0;Zpb(a);return}function N6a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;p=q+28|0;m=q+16|0;l=q+4|0;k=q;if(d|0)if(f[e+16>>2]|0){f[p>>2]=0;o=p+4|0;f[o>>2]=0;f[p+8>>2]=0;f[m>>2]=0;n=m+4|0;f[n>>2]=0;f[m+8>>2]=0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;i=cdb(d)|0;if(i>>>0>4294967279)aqb(l);if(i>>>0<11){g=l+11|0;b[g>>0]=i;if(!i)h=l;else{h=l;j=9}}else{g=i+16&-16;h=Wpb(g)|0;f[l>>2]=h;f[l+8>>2]=g|-2147483648;f[l+4>>2]=i;g=l+11|0;j=9}if((j|0)==9)Irb(h|0,d|0,i|0)|0;b[h+i>>0]=0;O6a(l,p,m,0,e)|0;if((b[g>>0]|0)<0)Zpb(f[l>>2]|0);g=cdb(d)|0;h=Xpb(g+5|0)|0;i=h;f[l>>2]=i;b[h+1>>0]=47;b[h>>0]=47;b[h+2>>0]=94;Irb(h+3|0,d|0,g|0)|0;b[h+(g+3)>>0]=10;b[h+(g+4)>>0]=0;g=f[o>>2]|0;if(g>>>0<(f[p+8>>2]|0)>>>0){f[l>>2]=0;f[g>>2]=i;f[o>>2]=g+4}else P6a(p,l);f[k>>2]=h;g=f[n>>2]|0;if(g>>>0<(f[m+8>>2]|0)>>>0){f[g>>2]=i;f[n>>2]=(f[n>>2]|0)+4}else Q6a(m,k);g=f[l>>2]|0;f[l>>2]=0;if(g|0)_pb(g);g=Wpb(20)|0;f[g+4>>2]=0;f[g+8>>2]=0;f[g>>2]=34268;i=g+12|0;f[i>>2]=0;e=i;j=g;f[g+16>>2]=c;c=_d(c|0)|0;f[i>>2]=c;g=f[m>>2]|0;Re(c|0,(f[n>>2]|0)-g>>2|0,g|0,0);g=f[m>>2]|0;if(g|0){h=f[n>>2]|0;if((h|0)!=(g|0))f[n>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g)}g=f[p>>2]|0;if(g|0){h=f[o>>2]|0;if((h|0)!=(g|0)){do{n=h+-4|0;f[o>>2]=n;h=f[n>>2]|0;f[n>>2]=0;if(h|0)_pb(h);h=f[o>>2]|0}while((h|0)!=(g|0));g=f[p>>2]|0}Zpb(g)}Yd(f[i>>2]|0);f[a>>2]=e;f[a+4>>2]=j;u=q;return}f[a>>2]=0;f[a+4>>2]=0;u=q;return}function O6a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+64|0;w=D+40|0;A=D+20|0;B=D+12|0;C=D;m=D+36|0;x=D+32|0;y=D+16|0;z=D+8|0;f[C>>2]=0;l=a+11|0;f[w>>2]=(b[l>>0]|0)<0?f[a>>2]|0:a;f[A>>2]=C;f[B>>2]=D+4;i=f[g+16>>2]|0;if(!i)ud();do if(Rg[f[(f[i>>2]|0)+24>>2]&15](i,w,A,B)|0){i=f[C>>2]|0;j=c+4|0;k=f[j>>2]|0;if(k>>>0<(f[c+8>>2]|0)>>>0){f[C>>2]=0;f[k>>2]=i;f[j>>2]=k+4;n=i;i=1;break}else{P6a(c,C);n=i;i=1;break}}else{n=0;i=0}while(0);j=f[C>>2]|0;f[C>>2]=0;if(j|0)_pb(j);if(!i){C=e;u=D;return C|0}j=b[l>>0]|0;v=j<<24>>24<0;i=v?f[a>>2]|0:a;k=i;j=i+(v?f[a+4>>2]|0:j&255)|0;while(1){if((j|0)==(i|0)){v=14;break}j=j+-1|0;if(Hcb(197619,h[j>>0]|0,2)|0){v=13;break}}if((v|0)==13){i=j-k|0;if((i|0)==-1)v=14;else dqb(A,a,0,i+1|0,w)}if((v|0)==14){f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0}f[m>>2]=(f[d>>2]|0)+(e<<2);f[B>>2]=n;f[w>>2]=f[m>>2];R6a(d,w,B)|0;p=A+11|0;q=A+4|0;r=w+11|0;s=w+8|0;t=w+4|0;o=e+1|0;i=n;a:while(1){while(1){if(!i)break a;j=b[i>>0]|0;if(!(j<<24>>24))break a;else k=i;b:while(1){switch(j<<24>>24){case 35:{j=k;v=22;break b}case 9:case 32:break;default:{a=0;m=0;n=0;e=0;j=k;break b}}j=k+1|0;k=j;j=b[j>>0]|0}c:do if((v|0)==22){d:while(1){v=0;k=j+1|0;switch(b[k>>0]|0){case 9:case 32:{j=k;v=22;break}default:break d}}if(ndb(k,197622,7)|0){l=(ndb(k,197630,6)|0)==0;a=l;m=0;n=0;e=0;j=l?j+7|0:k;break}j=j+8|0;e:while(1){switch(b[j>>0]|0){case 34:break e;case 9:case 32:break;default:{a=0;m=0;n=0;e=0;break c}}j=j+1|0}k=j+1|0;l=k;f:while(1){j=b[l>>0]|0;switch(j<<24>>24){case 0:case 10:case 34:break f;default:{}}l=l+1|0}j=j<<24>>24==34;a=0;m=j;n=j?l:0;e=k;j=j?l+1|0:l}while(0);g:do{l=j;k=b[j>>0]|0;h:while(1){switch(k<<24>>24){case 0:{j=l;break g}case 92:break;default:break h}j=l+1|0;k=b[j>>0]|0;switch(k<<24>>24){case 10:case 13:{j=l;k=92;v=36;break g}default:l=j}}j=l+1|0}while(k<<24>>24!=10);i:do if((v|0)==36)while(1){v=0;switch(k<<24>>24){case 10:case 13:case 92:break;default:break i}k=j+1|0;b[j>>0]=32;j=k;k=b[k>>0]|0;v=36}while(0);if(m)break;if(a){v=54;break}else i=j}if((v|0)==54){v=0;b[i>>0]=0;f[B>>2]=197637;e=f6a()|0;if((f[e>>2]|0)>>>0>2)f[B>>2]=197651;f[y>>2]=(f[d>>2]|0)+(o<<2);f[w>>2]=f[y>>2];i7a(d,w,B)|0;f[z>>2]=(f[d>>2]|0)+(o+1<<2);f[C>>2]=j;f[w>>2]=f[z>>2];R6a(d,w,C)|0;o=o+2|0;i=j;continue}b[i>>0]=0;b[n>>0]=0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;i=b[p>>0]|0;if(i<<24>>24<0){k=f[q>>2]|0;a=cdb(e)|0;l=f[A>>2]|0}else{l=A;a=cdb(e)|0;k=i&255}i=k+a|0;if(i>>>0>4294967279){v=44;break}if(i>>>0<11){b[r>>0]=k;i=w}else{n=i+16&-16;i=Wpb(n)|0;f[w>>2]=i;f[s>>2]=n|-2147483648;f[t>>2]=k}if(k|0)Irb(i|0,l|0,k|0)|0;b[i+k>>0]=0;oqb(w,e,a)|0;i=O6a(w,c,d,o,g)|0;if((b[r>>0]|0)<0)Zpb(f[w>>2]|0);f[x>>2]=(f[d>>2]|0)+(i<<2);f[B>>2]=j;f[w>>2]=f[x>>2];R6a(d,w,B)|0;o=i+1|0;i=j}if((v|0)==44)aqb(w);if((b[p>>0]|0)<0)Zpb(f[A>>2]|0);C=o;u=D;return C|0}function P6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;c=f[a>>2]|0;e=(f[j>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>1;c=i>>2>>>0<536870911?(c>>>0<d>>>0?d:c):1073741823;do if(!c)g=0;else if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;break}while(0);d=g+(e<<2)|0;e=d;i=g+(c<<2)|0;h=f[b>>2]|0;f[b>>2]=0;f[d>>2]=h;h=d+4|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;g=b;c=b}else{do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(b|0));d=e;g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)_pb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Q6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function R6a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=f[a>>2]|0;e=g;j=(f[b>>2]|0)-e|0;o=g+(j>>2<<2)|0;p=a+4|0;h=f[p>>2]|0;n=a+8|0;m=f[n>>2]|0;b=h;d=m;if(h>>>0<m>>>0){if((o|0)==(h|0)){f[o>>2]=f[c>>2];f[p>>2]=(f[p>>2]|0)+4;p=o;return p|0}e=b-(o+4)|0;g=e>>2;b=o+(g<<2)|0;if(b>>>0<h>>>0){d=h;do{f[d>>2]=f[b>>2];b=b+4|0;d=(f[p>>2]|0)+4|0;f[p>>2]=d}while(b>>>0<h>>>0)}if(g|0)Jrb(h+(0-g<<2)|0,o|0,e|0)|0;f[o>>2]=f[c>>2];p=o;return p|0}b=(b-e>>2)+1|0;if(b>>>0>1073741823)fob(a);m=d-e|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<b>>>0?b:d):1073741823;m=o;h=j>>2;do if(!d){k=0;l=0}else if(d>>>0>1073741823)ud();else{l=Wpb(d<<2)|0;k=l;break}while(0);b=k+(h<<2)|0;e=b;i=k+(d<<2)|0;do if((h|0)==(d|0)){if((j|0)>0){b=b+(((d+1|0)/-2|0)<<2)|0;e=b;break}d=d<<2>>1;d=(d|0)==0?1:d;if(d>>>0>1073741823)ud();j=Wpb(d<<2)|0;b=j+(d>>>2<<2)|0;e=b;d=j+(d<<2)|0;if(!k)i=d;else{Zpb(l);i=d;g=f[a>>2]|0}}while(0);f[b>>2]=f[c>>2];b=e+4|0;d=m-g|0;h=e+(0-(d>>2)<<2)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[p>>2]|0)-m|0;if((d|0)>0){Irb(b|0,o|0,d|0)|0;b=b+(d>>>2<<2)|0}d=f[a>>2]|0;f[a>>2]=h;f[p>>2]=b;f[n>>2]=i;if(!d){p=e;return p|0}Zpb(d);p=e;return p|0}function S6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;E=f[a+96>>2]|0;F=f[a+104>>2]|0;D=f[a+112>>2]|0;e=+n[a+184>>2];g=+n[a+192>>2];h=+n[a+200>>2];i=+n[a+208>>2];j=+n[a+216>>2];k=+n[a+224>>2];c=f[a+232>>2]|0;d=f[a+240>>2]|0;l=f[a+248>>2]|0;m=f[a+256>>2]|0;o=f[a+264>>2]|0;q=f[a+272>>2]|0;r=+n[a+280>>2];s=+n[a+296>>2];t=+n[a+304>>2];v=+n[a+312>>2];w=+n[a+320>>2];x=+n[a+328>>2];y=+n[a+336>>2];z=+n[a+344>>2];A=+n[a+352>>2];B=+n[a+360>>2];C=+n[a+368>>2];H=f[a+440>>2]|0;G=f[a+1048>>2]|0;a:{f[(D+92|0)>>2]=f[(F+92|0)>>2];f[(F+92|0)>>2]=H;H=f[(D+96|0)>>2]|0;f[(D+96|0)>>2]=f[(F+96|0)>>2];f[(F+96|0)>>2]=H;H=f[(D+100|0)>>2]|0;f[(D+100|0)>>2]=f[(F+100|0)>>2];f[(F+100|0)>>2]=H;f[(F+104|0)>>2]=f[(D+104|0)>>2];f[(F+108|0)>>2]=f[(D+108|0)>>2];K=+p[(D+112|0)>>3];p[(D+112|0)>>3]=+p[(F+112|0)>>3];p[(F+112|0)>>3]=K;K=+p[(D+120|0)>>3];p[(D+120|0)>>3]=+p[(F+120|0)>>3];p[(F+120|0)>>3]=K;K=+p[(D+128|0)>>3];p[(D+128|0)>>3]=+p[(F+128|0)>>3];p[(F+128|0)>>3]=K;K=+p[(D+136|0)>>3];p[(D+136|0)>>3]=+p[(F+136|0)>>3];p[(F+136|0)>>3]=K;K=+p[(D+144|0)>>3];p[(D+144|0)>>3]=+p[(F+144|0)>>3];p[(F+144|0)>>3]=K;K=+p[(D+152|0)>>3];p[(D+152|0)>>3]=+p[(F+152|0)>>3];p[(F+152|0)>>3]=K;K=+p[(D+160|0)>>3];p[(D+160|0)>>3]=+p[(F+160|0)>>3];p[(F+160|0)>>3]=K;K=+p[(D+168|0)>>3];p[(D+168|0)>>3]=+p[(F+168|0)>>3];p[(F+168|0)>>3]=K;K=+p[(D+176|0)>>3];p[(D+176|0)>>3]=+p[(F+176|0)>>3];p[(F+176|0)>>3]=K;f[(F+184|0)>>2]=f[(D+184|0)>>2];f[(F+184|0)+4>>2]=f[(D+184|0)+4>>2];f[(F+184|0)+8>>2]=f[(D+184|0)+8>>2];f[(F+184|0)+12>>2]=f[(D+184|0)+12>>2];p[(F+200|0)>>3]=+p[(D+200|0)>>3];p[(F+208|0)>>3]=+p[(D+208|0)>>3];f[(F+216|0)>>2]=f[(D+216|0)>>2];f[(F+216|0)+4>>2]=f[(D+216|0)+4>>2];f[(F+216|0)+8>>2]=f[(D+216|0)+8>>2];f[(F+216|0)+12>>2]=f[(D+216|0)+12>>2];b[(F+216|0)+16>>0]=b[(D+216|0)+16>>0]|0;H=D;I=a+24|0;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[(D+40|0)>>3]=e;p[(D+48|0)>>3]=g;p[(D+56|0)>>3]=h;p[(D+64|0)>>3]=i;p[(D+72|0)>>3]=j;p[(D+80|0)>>3]=k;f[(D+88|0)>>2]=c;f[(D+92|0)>>2]=d;f[(D+96|0)>>2]=l;f[(D+100|0)>>2]=m;f[(D+104|0)>>2]=o;f[(D+108|0)>>2]=q;p[(D+112|0)>>3]=r;p[(D+120|0)>>3]=s;p[(D+128|0)>>3]=t;p[(D+136|0)>>3]=v;p[(D+144|0)>>3]=w;p[(D+152|0)>>3]=x;p[(D+160|0)>>3]=y;p[(D+168|0)>>3]=z;p[(D+176|0)>>3]=A;f[(D+184|0)>>2]=f[(a+64|0)>>2];f[(D+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(D+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(D+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(D+200|0)>>3]=B;p[(D+208|0)>>3]=C;f[(D+216|0)>>2]=f[a>>2];f[(D+216|0)+4>>2]=f[a+4>>2];f[(D+216|0)+8>>2]=f[a+8>>2];f[(D+216|0)+12>>2]=f[a+12>>2];b[(D+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(F+216|0)>>3]>>>0;d=~~+p[E+216>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=G+2|0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}e=+p[F+224>>3];g=+p[E+224>>3];if(!(e<g)){if(e>g){c=G+2|0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}if(!(A5a(F,E)|0)){c=G+2|0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}}}H=a+24|0;I=E;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));e=+p[(E+40|0)>>3];g=+p[(E+48|0)>>3];h=+p[(E+56|0)>>3];i=+p[(E+64|0)>>3];j=+p[(E+72|0)>>3];k=+p[(E+80|0)>>3];c=f[(E+88|0)>>2]|0;d=f[(E+92|0)>>2]|0;l=f[(E+96|0)>>2]|0;m=f[(E+100|0)>>2]|0;o=f[(E+104|0)>>2]|0;q=f[(E+108|0)>>2]|0;r=+p[(E+112|0)>>3];s=+p[(E+120|0)>>3];t=+p[(E+128|0)>>3];v=+p[(E+136|0)>>3];w=+p[(E+144|0)>>3];x=+p[(E+152|0)>>3];y=+p[(E+160|0)>>3];z=+p[(E+168|0)>>3];A=+p[(E+176|0)>>3];f[(a+64|0)>>2]=f[(E+184|0)>>2];f[(a+64|0)+4>>2]=f[(E+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(E+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(E+184|0)+12>>2];B=+p[(E+200|0)>>3];C=+p[(E+208|0)>>3];f[a>>2]=f[(E+216|0)>>2];f[a+4>>2]=f[(E+216|0)+4>>2];f[a+8>>2]=f[(E+216|0)+8>>2];f[a+12>>2]=f[(E+216|0)+12>>2];b[a+16>>0]=b[(E+216|0)+16>>0]|0;H=E;I=F;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));K=+p[(F+40|0)>>3];p[(F+40|0)>>3]=e;p[(E+40|0)>>3]=K;K=+p[(F+48|0)>>3];p[(F+48|0)>>3]=+p[(E+48|0)>>3];p[(E+48|0)>>3]=K;K=+p[(F+56|0)>>3];p[(F+56|0)>>3]=+p[(E+56|0)>>3];p[(E+56|0)>>3]=K;K=+p[(F+64|0)>>3];p[(F+64|0)>>3]=+p[(E+64|0)>>3];p[(E+64|0)>>3]=K;K=+p[(F+72|0)>>3];p[(F+72|0)>>3]=+p[(E+72|0)>>3];p[(E+72|0)>>3]=K;K=+p[(F+80|0)>>3];p[(F+80|0)>>3]=+p[(E+80|0)>>3];p[(E+80|0)>>3]=K;H=f[(F+88|0)>>2]|0;f[(F+88|0)>>2]=c;f[(E+88|0)>>2]=H;H=f[(F+92|0)>>2]|0;f[(F+92|0)>>2]=f[(E+92|0)>>2];f[(E+92|0)>>2]=H;H=f[(F+96|0)>>2]|0;f[(F+96|0)>>2]=f[(E+96|0)>>2];f[(E+96|0)>>2]=H;H=f[(F+100|0)>>2]|0;f[(F+100|0)>>2]=f[(E+100|0)>>2];f[(E+100|0)>>2]=H;f[(E+104|0)>>2]=f[(F+104|0)>>2];f[(E+108|0)>>2]=f[(F+108|0)>>2];K=+p[(F+112|0)>>3];p[(F+112|0)>>3]=+p[(E+112|0)>>3];p[(E+112|0)>>3]=K;K=+p[(F+120|0)>>3];p[(F+120|0)>>3]=+p[(E+120|0)>>3];p[(E+120|0)>>3]=K;K=+p[(F+128|0)>>3];p[(F+128|0)>>3]=+p[(E+128|0)>>3];p[(E+128|0)>>3]=K;K=+p[(F+136|0)>>3];p[(F+136|0)>>3]=+p[(E+136|0)>>3];p[(E+136|0)>>3]=K;K=+p[(F+144|0)>>3];p[(F+144|0)>>3]=+p[(E+144|0)>>3];p[(E+144|0)>>3]=K;K=+p[(F+152|0)>>3];p[(F+152|0)>>3]=+p[(E+152|0)>>3];p[(E+152|0)>>3]=K;K=+p[(F+160|0)>>3];p[(F+160|0)>>3]=+p[(E+160|0)>>3];p[(E+160|0)>>3]=K;K=+p[(F+168|0)>>3];p[(F+168|0)>>3]=+p[(E+168|0)>>3];p[(E+168|0)>>3]=K;K=+p[(F+176|0)>>3];p[(F+176|0)>>3]=+p[(E+176|0)>>3];p[(E+176|0)>>3]=K;f[(E+184|0)>>2]=f[(F+184|0)>>2];f[(E+184|0)+4>>2]=f[(F+184|0)+4>>2];f[(E+184|0)+8>>2]=f[(F+184|0)+8>>2];f[(E+184|0)+12>>2]=f[(F+184|0)+12>>2];p[(E+200|0)>>3]=+p[(F+200|0)>>3];p[(E+208|0)>>3]=+p[(F+208|0)>>3];f[(E+216|0)>>2]=f[(F+216|0)>>2];f[(E+216|0)+4>>2]=f[(F+216|0)+4>>2];f[(E+216|0)+8>>2]=f[(F+216|0)+8>>2];f[(E+216|0)+12>>2]=f[(F+216|0)+12>>2];b[(E+216|0)+16>>0]=b[(F+216|0)+16>>0]|0;H=F;I=a+24|0;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[(F+40|0)>>3]=e;p[(F+48|0)>>3]=g;p[(F+56|0)>>3]=h;p[(F+64|0)>>3]=i;p[(F+72|0)>>3]=j;p[(F+80|0)>>3]=k;f[(F+88|0)>>2]=c;f[(F+92|0)>>2]=d;f[(F+96|0)>>2]=l;f[(F+100|0)>>2]=m;f[(F+104|0)>>2]=o;f[(F+108|0)>>2]=q;p[(F+112|0)>>3]=r;p[(F+120|0)>>3]=s;p[(F+128|0)>>3]=t;p[(F+136|0)>>3]=v;p[(F+144|0)>>3]=w;p[(F+152|0)>>3]=x;p[(F+160|0)>>3]=y;p[(F+168|0)>>3]=z;p[(F+176|0)>>3]=A;f[(F+184|0)>>2]=f[(a+64|0)>>2];f[(F+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(F+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(F+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(F+200|0)>>3]=B;p[(F+208|0)>>3]=C;f[(F+216|0)>>2]=f[a>>2];f[(F+216|0)+4>>2]=f[a+4>>2];f[(F+216|0)+8>>2]=f[a+8>>2];f[(F+216|0)+12>>2]=f[a+12>>2];b[(F+216|0)+16>>0]=b[a+16>>0]|0;c=G+3|0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[a+128>>2]=c;f[a+1248>>2]=H;f[a+1264>>2]=I;f[a+1272>>2]=J}function T6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0.0;F=f[a+104>>2]|0;ca=f[a+112>>2]|0;m=f[a+120>>2]|0;E=f[a+128>>2]|0;G=+n[a+184>>2];H=+n[a+192>>2];I=+n[a+200>>2];J=+n[a+208>>2];K=+n[a+216>>2];L=+n[a+224>>2];M=f[a+232>>2]|0;N=f[a+240>>2]|0;O=f[a+248>>2]|0;P=f[a+256>>2]|0;Q=f[a+264>>2]|0;R=f[a+272>>2]|0;S=+n[a+280>>2];T=+n[a+296>>2];U=+n[a+304>>2];V=+n[a+312>>2];W=+n[a+320>>2];X=+n[a+328>>2];Y=+n[a+336>>2];Z=+n[a+344>>2];_=+n[a+352>>2];$=+n[a+360>>2];aa=+n[a+368>>2];ba=f[a+440>>2]|0;e=+n[a+560>>2];g=+n[a+616>>2];h=+n[a+688>>2];i=+n[a+776>>2];j=+n[a+832>>2];k=+n[a+872>>2];c=f[a+952>>2]|0;d=f[a+960>>2]|0;l=f[a+968>>2]|0;o=f[a+976>>2]|0;q=f[a+984>>2]|0;r=f[a+992>>2]|0;s=+n[a+1e3>>2];t=+n[a+1008>>2];v=+n[a+1016>>2];w=+n[a+1024>>2];x=+n[a+1032>>2];y=+n[a+1040>>2];da=f[a+1048>>2]|0;z=+n[a+1056>>2];A=+n[a+1064>>2];B=+n[a+1072>>2];C=+n[a+1080>>2];D=+n[a+1088>>2];a:{ha=+p[(m+136|0)>>3];p[(m+136|0)>>3]=+p[(ca+136|0)>>3];p[(ca+136|0)>>3]=ha;ha=+p[(m+144|0)>>3];p[(m+144|0)>>3]=+p[(ca+144|0)>>3];p[(ca+144|0)>>3]=ha;ha=+p[(m+152|0)>>3];p[(m+152|0)>>3]=+p[(ca+152|0)>>3];p[(ca+152|0)>>3]=ha;ha=+p[(m+160|0)>>3];p[(m+160|0)>>3]=+p[(ca+160|0)>>3];p[(ca+160|0)>>3]=ha;ha=+p[(m+168|0)>>3];p[(m+168|0)>>3]=+p[(ca+168|0)>>3];p[(ca+168|0)>>3]=ha;ha=+p[(m+176|0)>>3];p[(m+176|0)>>3]=+p[(ca+176|0)>>3];p[(ca+176|0)>>3]=ha;f[(ca+184|0)>>2]=f[(m+184|0)>>2];f[(ca+184|0)+4>>2]=f[(m+184|0)+4>>2];f[(ca+184|0)+8>>2]=f[(m+184|0)+8>>2];f[(ca+184|0)+12>>2]=f[(m+184|0)+12>>2];p[(ca+200|0)>>3]=+p[(m+200|0)>>3];p[(ca+208|0)>>3]=+p[(m+208|0)>>3];f[(ca+216|0)>>2]=f[(m+216|0)>>2];f[(ca+216|0)+4>>2]=f[(m+216|0)+4>>2];f[(ca+216|0)+8>>2]=f[(m+216|0)+8>>2];f[(ca+216|0)+12>>2]=f[(m+216|0)+12>>2];b[(ca+216|0)+16>>0]=b[(m+216|0)+16>>0]|0;ea=m;fa=a+24|0;ga=ea+36|0;do{f[ea>>2]=f[fa>>2];ea=ea+4|0;fa=fa+4|0}while((ea|0)<(ga|0));p[(m+40|0)>>3]=e;p[(m+48|0)>>3]=g;p[(m+56|0)>>3]=h;p[(m+64|0)>>3]=i;p[(m+72|0)>>3]=j;p[(m+80|0)>>3]=k;f[(m+88|0)>>2]=c;f[(m+92|0)>>2]=d;f[(m+96|0)>>2]=l;f[(m+100|0)>>2]=o;f[(m+104|0)>>2]=q;f[(m+108|0)>>2]=r;p[(m+112|0)>>3]=s;p[(m+120|0)>>3]=t;p[(m+128|0)>>3]=v;p[(m+136|0)>>3]=w;p[(m+144|0)>>3]=x;p[(m+152|0)>>3]=y;p[(m+160|0)>>3]=z;p[(m+168|0)>>3]=A;p[(m+176|0)>>3]=B;f[(m+184|0)>>2]=f[(a+64|0)>>2];f[(m+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(m+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(m+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(m+200|0)>>3]=C;p[(m+208|0)>>3]=D;f[(m+216|0)>>2]=f[a>>2];f[(m+216|0)+4>>2]=f[a+4>>2];f[(m+216|0)+8>>2]=f[a+8>>2];f[(m+216|0)+12>>2]=f[a+12>>2];b[(m+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(ca+216|0)>>3]>>>0;d=~~+p[(F+216|0)>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){E=da+1|0;u=a;f[a+1288>>2]=6;f[a+1292>>2]=E|0;break a}e=+p[ca+224>>3];g=+p[F+224>>3];if(!(e<g)){if(e>g){E=da+1|0;u=a;f[a+1288>>2]=6;f[a+1292>>2]=E|0;break a}if(!(A5a(ca,F)|0)){E=da+1|0;u=a;f[a+1288>>2]=6;f[a+1292>>2]=E|0;break a}}}ea=a+24|0;fa=F;ga=ea+36|0;do{f[ea>>2]=f[fa>>2];ea=ea+4|0;fa=fa+4|0}while((ea|0)<(ga|0));G=+p[(F+40|0)>>3];H=+p[(F+48|0)>>3];I=+p[(F+56|0)>>3];J=+p[(F+64|0)>>3];K=+p[(F+72|0)>>3];L=+p[(F+80|0)>>3];M=f[(F+88|0)>>2]|0;N=f[(F+92|0)>>2]|0;O=f[(F+96|0)>>2]|0;P=f[(F+100|0)>>2]|0;Q=f[(F+104|0)>>2]|0;R=f[(F+108|0)>>2]|0;S=+p[(F+112|0)>>3];T=+p[(F+120|0)>>3];U=+p[(F+128|0)>>3];V=+p[(F+136|0)>>3];W=+p[(F+144|0)>>3];X=+p[(F+152|0)>>3];Y=+p[(F+160|0)>>3];Z=+p[(F+168|0)>>3];_=+p[(F+176|0)>>3];f[(a+64|0)>>2]=f[(F+184|0)>>2];f[(a+64|0)+4>>2]=f[(F+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(F+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(F+184|0)+12>>2];$=+p[(F+200|0)>>3];aa=+p[(F+208|0)>>3];f[a>>2]=f[(F+216|0)>>2];f[a+4>>2]=f[(F+216|0)+4>>2];f[a+8>>2]=f[(F+216|0)+8>>2];f[a+12>>2]=f[(F+216|0)+12>>2];b[a+16>>0]=b[(F+216|0)+16>>0]|0;ea=F;fa=ca;ga=ea+36|0;do{f[ea>>2]=f[fa>>2];ea=ea+4|0;fa=fa+4|0}while((ea|0)<(ga|0));ha=+p[(ca+40|0)>>3];p[(ca+40|0)>>3]=G;p[(F+40|0)>>3]=ha;ha=+p[(ca+48|0)>>3];p[(ca+48|0)>>3]=+p[(F+48|0)>>3];p[(F+48|0)>>3]=ha;ha=+p[(ca+56|0)>>3];p[(ca+56|0)>>3]=+p[(F+56|0)>>3];p[(F+56|0)>>3]=ha;ha=+p[(ca+64|0)>>3];p[(ca+64|0)>>3]=+p[(F+64|0)>>3];p[(F+64|0)>>3]=ha;ha=+p[(ca+72|0)>>3];p[(ca+72|0)>>3]=+p[(F+72|0)>>3];p[(F+72|0)>>3]=ha;ha=+p[(ca+80|0)>>3];p[(ca+80|0)>>3]=+p[(F+80|0)>>3];p[(F+80|0)>>3]=ha;ba=f[(ca+88|0)>>2]|0;f[(ca+88|0)>>2]=M;f[(F+88|0)>>2]=ba;ba=f[(ca+92|0)>>2]|0}f[a+128>>2]=E;n[a+184>>2]=G;n[a+192>>2]=H;n[a+200>>2]=I;n[a+208>>2]=J;n[a+216>>2]=K;n[a+224>>2]=L;f[a+232>>2]=M;f[a+240>>2]=N;f[a+248>>2]=O;f[a+256>>2]=P;f[a+264>>2]=Q;f[a+272>>2]=R;n[a+280>>2]=S;n[a+296>>2]=T;n[a+304>>2]=U;n[a+312>>2]=V;n[a+320>>2]=W;n[a+328>>2]=X;n[a+336>>2]=Y;n[a+344>>2]=Z;n[a+352>>2]=_;n[a+360>>2]=$;n[a+368>>2]=aa;f[a+440>>2]=ba;f[a+1248>>2]=ea;f[a+1264>>2]=fa;f[a+1272>>2]=ga}function U6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;E=f[a+96>>2]|0;F=f[a+104>>2]|0;c=f[a+112>>2]|0;e=+n[a+584>>2];g=+n[a+592>>2];h=+n[a+600>>2];i=+n[a+608>>2];j=+n[a+624>>2];k=+n[a+632>>2];d=f[a+640>>2]|0;l=f[a+648>>2]|0;m=f[a+656>>2]|0;o=f[a+664>>2]|0;q=f[a+672>>2]|0;D=f[a+680>>2]|0;r=+n[a+696>>2];s=+n[a+704>>2];t=+n[a+712>>2];v=+n[a+720>>2];w=+n[a+728>>2];x=+n[a+736>>2];y=+n[a+744>>2];z=+n[a+752>>2];A=+n[a+760>>2];B=+n[a+768>>2];C=+n[a+784>>2];G=f[a+1488>>2]|0;a:{K=+p[(c+160|0)>>3];p[(c+160|0)>>3]=+p[(F+160|0)>>3];p[(F+160|0)>>3]=K;K=+p[(c+168|0)>>3];p[(c+168|0)>>3]=+p[(F+168|0)>>3];p[(F+168|0)>>3]=K;K=+p[(c+176|0)>>3];p[(c+176|0)>>3]=+p[(F+176|0)>>3];p[(F+176|0)>>3]=K;f[(F+184|0)>>2]=f[(c+184|0)>>2];f[(F+184|0)+4>>2]=f[(c+184|0)+4>>2];f[(F+184|0)+8>>2]=f[(c+184|0)+8>>2];f[(F+184|0)+12>>2]=f[(c+184|0)+12>>2];p[(F+200|0)>>3]=+p[(c+200|0)>>3];p[(F+208|0)>>3]=+p[(c+208|0)>>3];f[(F+216|0)>>2]=f[(c+216|0)>>2];f[(F+216|0)+4>>2]=f[(c+216|0)+4>>2];f[(F+216|0)+8>>2]=f[(c+216|0)+8>>2];f[(F+216|0)+12>>2]=f[(c+216|0)+12>>2];b[(F+216|0)+16>>0]=b[(c+216|0)+16>>0]|0;H=c;I=a+24|0;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[(c+40|0)>>3]=e;p[(c+48|0)>>3]=g;p[(c+56|0)>>3]=h;p[(c+64|0)>>3]=i;p[(c+72|0)>>3]=j;p[(c+80|0)>>3]=k;f[(c+88|0)>>2]=d;f[(c+92|0)>>2]=l;f[(c+96|0)>>2]=m;f[(c+100|0)>>2]=o;f[(c+104|0)>>2]=q;f[(c+108|0)>>2]=D;p[(c+112|0)>>3]=r;p[(c+120|0)>>3]=s;p[(c+128|0)>>3]=t;p[(c+136|0)>>3]=v;p[(c+144|0)>>3]=w;p[(c+152|0)>>3]=x;p[(c+160|0)>>3]=y;p[(c+168|0)>>3]=z;p[(c+176|0)>>3]=A;f[(c+184|0)>>2]=f[(a+64|0)>>2];f[(c+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(c+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(c+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(c+200|0)>>3]=B;p[(c+208|0)>>3]=C;f[(c+216|0)>>2]=f[a>>2];f[(c+216|0)+4>>2]=f[a+4>>2];f[(c+216|0)+8>>2]=f[a+8>>2];f[(c+216|0)+12>>2]=f[a+12>>2];b[(c+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(F+216|0)>>3]>>>0;d=~~+p[E+216>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){c=G+3|0;u=a;f[a+1656>>2]=6;f[a+1660>>2]=c|0;break a}e=+p[F+224>>3];g=+p[E+224>>3];if(!(e<g)){if(e>g){c=G+3|0;u=a;f[a+1656>>2]=6;f[a+1660>>2]=c|0;break a}if(!(A5a(F,E)|0)){c=G+3|0;u=a;f[a+1656>>2]=6;f[a+1660>>2]=c|0;break a}}}H=a+24|0;I=E;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));e=+p[(E+40|0)>>3];g=+p[(E+48|0)>>3];h=+p[(E+56|0)>>3];i=+p[(E+64|0)>>3];j=+p[(E+72|0)>>3];k=+p[(E+80|0)>>3];c=f[(E+88|0)>>2]|0;d=f[(E+92|0)>>2]|0;l=f[(E+96|0)>>2]|0;m=f[(E+100|0)>>2]|0;o=f[(E+104|0)>>2]|0;q=f[(E+108|0)>>2]|0;r=+p[(E+112|0)>>3];s=+p[(E+120|0)>>3];t=+p[(E+128|0)>>3];v=+p[(E+136|0)>>3];w=+p[(E+144|0)>>3];x=+p[(E+152|0)>>3];y=+p[(E+160|0)>>3];z=+p[(E+168|0)>>3];A=+p[(E+176|0)>>3];f[(a+64|0)>>2]=f[(E+184|0)>>2];f[(a+64|0)+4>>2]=f[(E+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(E+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(E+184|0)+12>>2];B=+p[(E+200|0)>>3];C=+p[(E+208|0)>>3];f[a>>2]=f[(E+216|0)>>2];f[a+4>>2]=f[(E+216|0)+4>>2];f[a+8>>2]=f[(E+216|0)+8>>2];f[a+12>>2]=f[(E+216|0)+12>>2];b[a+16>>0]=b[(E+216|0)+16>>0]|0;H=E;I=F;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));K=+p[(F+40|0)>>3];p[(F+40|0)>>3]=e;p[(E+40|0)>>3]=K;K=+p[(F+48|0)>>3];p[(F+48|0)>>3]=+p[(E+48|0)>>3];p[(E+48|0)>>3]=K;K=+p[(F+56|0)>>3];p[(F+56|0)>>3]=+p[(E+56|0)>>3];p[(E+56|0)>>3]=K;K=+p[(F+64|0)>>3];p[(F+64|0)>>3]=+p[(E+64|0)>>3];p[(E+64|0)>>3]=K;K=+p[(F+72|0)>>3];p[(F+72|0)>>3]=+p[(E+72|0)>>3];p[(E+72|0)>>3]=K;K=+p[(F+80|0)>>3];p[(F+80|0)>>3]=+p[(E+80|0)>>3];p[(E+80|0)>>3]=K;H=f[(F+88|0)>>2]|0;f[(F+88|0)>>2]=c;f[(E+88|0)>>2]=H;H=f[(F+92|0)>>2]|0;f[(F+92|0)>>2]=f[(E+92|0)>>2];f[(E+92|0)>>2]=H;H=f[(F+96|0)>>2]|0;f[(F+96|0)>>2]=f[(E+96|0)>>2];f[(E+96|0)>>2]=H;H=f[(F+100|0)>>2]|0;f[(F+100|0)>>2]=f[(E+100|0)>>2];f[(E+100|0)>>2]=H;f[(E+104|0)>>2]=f[(F+104|0)>>2];f[(E+108|0)>>2]=f[(F+108|0)>>2];K=+p[(F+112|0)>>3];p[(F+112|0)>>3]=+p[(E+112|0)>>3];p[(E+112|0)>>3]=K;K=+p[(F+120|0)>>3];p[(F+120|0)>>3]=+p[(E+120|0)>>3];p[(E+120|0)>>3]=K;K=+p[(F+128|0)>>3];p[(F+128|0)>>3]=+p[(E+128|0)>>3];p[(E+128|0)>>3]=K;K=+p[(F+136|0)>>3];p[(F+136|0)>>3]=+p[(E+136|0)>>3];p[(E+136|0)>>3]=K;K=+p[(F+144|0)>>3];p[(F+144|0)>>3]=+p[(E+144|0)>>3];p[(E+144|0)>>3]=K;K=+p[(F+152|0)>>3];p[(F+152|0)>>3]=+p[(E+152|0)>>3];p[(E+152|0)>>3]=K;K=+p[(F+160|0)>>3];p[(F+160|0)>>3]=+p[(E+160|0)>>3];p[(E+160|0)>>3]=K;K=+p[(F+168|0)>>3];p[(F+168|0)>>3]=+p[(E+168|0)>>3];p[(E+168|0)>>3]=K;K=+p[(F+176|0)>>3];p[(F+176|0)>>3]=+p[(E+176|0)>>3];p[(E+176|0)>>3]=K;f[(E+184|0)>>2]=f[(F+184|0)>>2];f[(E+184|0)+4>>2]=f[(F+184|0)+4>>2];f[(E+184|0)+8>>2]=f[(F+184|0)+8>>2];f[(E+184|0)+12>>2]=f[(F+184|0)+12>>2];p[(E+200|0)>>3]=+p[(F+200|0)>>3];p[(E+208|0)>>3]=+p[(F+208|0)>>3];f[(E+216|0)>>2]=f[(F+216|0)>>2];f[(E+216|0)+4>>2]=f[(F+216|0)+4>>2];f[(E+216|0)+8>>2]=f[(F+216|0)+8>>2];f[(E+216|0)+12>>2]=f[(F+216|0)+12>>2];b[(E+216|0)+16>>0]=b[(F+216|0)+16>>0]|0;H=F;I=a+24|0;J=H+36|0;do{f[H>>2]=f[I>>2];H=H+4|0;I=I+4|0}while((H|0)<(J|0));p[(F+40|0)>>3]=e;p[(F+48|0)>>3]=g;p[(F+56|0)>>3]=h;p[(F+64|0)>>3]=i;p[(F+72|0)>>3]=j;p[(F+80|0)>>3]=k;f[(F+88|0)>>2]=c;f[(F+92|0)>>2]=d;f[(F+96|0)>>2]=l;f[(F+100|0)>>2]=m;f[(F+104|0)>>2]=o;f[(F+108|0)>>2]=q;p[(F+112|0)>>3]=r;p[(F+120|0)>>3]=s;p[(F+128|0)>>3]=t;p[(F+136|0)>>3]=v;p[(F+144|0)>>3]=w;p[(F+152|0)>>3]=x;p[(F+160|0)>>3]=y;p[(F+168|0)>>3]=z;p[(F+176|0)>>3]=A;f[(F+184|0)>>2]=f[(a+64|0)>>2];f[(F+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(F+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(F+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(F+200|0)>>3]=B;p[(F+208|0)>>3]=C;f[(F+216|0)>>2]=f[a>>2];f[(F+216|0)+4>>2]=f[a+4>>2];f[(F+216|0)+8>>2]=f[a+8>>2];f[(F+216|0)+12>>2]=f[a+12>>2];b[(F+216|0)+16>>0]=b[a+16>>0]|0;c=G+4|0;u=a;f[a+1656>>2]=6;f[a+1660>>2]=c|0;break a}f[a+136>>2]=c;f[a+1624>>2]=H;f[a+1640>>2]=I;f[a+1648>>2]=J}function V6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0.0;F=f[a+104>>2]|0;G=f[a+112>>2]|0;D=f[a+120>>2]|0;E=f[a+136>>2]|0;e=+n[a+200>>2];g=+n[a+208>>2];h=+n[a+216>>2];i=+n[a+224>>2];j=+n[a+232>>2];k=+n[a+240>>2];c=f[a+248>>2]|0;d=f[a+256>>2]|0;l=f[a+264>>2]|0;m=f[a+272>>2]|0;o=f[a+280>>2]|0;H=+n[a+584>>2];I=+n[a+592>>2];J=+n[a+600>>2];K=+n[a+608>>2];L=+n[a+624>>2];M=+n[a+632>>2];N=f[a+640>>2]|0;O=f[a+648>>2]|0;P=f[a+656>>2]|0;Q=f[a+664>>2]|0;R=f[a+672>>2]|0;S=f[a+680>>2]|0;T=+n[a+696>>2];U=+n[a+704>>2];V=+n[a+712>>2];W=+n[a+720>>2];X=+n[a+728>>2];Y=+n[a+736>>2];Z=+n[a+744>>2];_=+n[a+752>>2];$=+n[a+760>>2];aa=+n[a+768>>2];ba=+n[a+784>>2];ca=f[a+1488>>2]|0;a:{q=f[(G+108|0)>>2]|0;r=+p[(G+112|0)>>3];s=+p[(G+120|0)>>3];t=+p[(G+128|0)>>3];v=+p[(G+136|0)>>3];w=+p[(G+144|0)>>3];x=+p[(G+152|0)>>3];y=+p[(G+160|0)>>3];z=+p[(G+168|0)>>3];A=+p[(G+176|0)>>3];f[(a+64|0)>>2]=f[(G+184|0)>>2];f[(a+64|0)+4>>2]=f[(G+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(G+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(G+184|0)+12>>2];B=+p[(G+200|0)>>3];C=+p[(G+208|0)>>3];f[a>>2]=f[(G+216|0)>>2];f[a+4>>2]=f[(G+216|0)+4>>2];f[a+8>>2]=f[(G+216|0)+8>>2];f[a+12>>2]=f[(G+216|0)+12>>2];b[a+16>>0]=b[(G+216|0)+16>>0]|0;da=G;ea=D;fa=da+36|0;do{f[da>>2]=f[ea>>2];da=da+4|0;ea=ea+4|0}while((da|0)<(fa|0));ga=+p[(D+40|0)>>3];p[(D+40|0)>>3]=e;p[(G+40|0)>>3]=ga;ga=+p[(D+48|0)>>3];p[(D+48|0)>>3]=+p[(G+48|0)>>3];p[(G+48|0)>>3]=ga;ga=+p[(D+56|0)>>3];p[(D+56|0)>>3]=+p[(G+56|0)>>3];p[(G+56|0)>>3]=ga;ga=+p[(D+64|0)>>3];p[(D+64|0)>>3]=+p[(G+64|0)>>3];p[(G+64|0)>>3]=ga;ga=+p[(D+72|0)>>3];p[(D+72|0)>>3]=+p[(G+72|0)>>3];p[(G+72|0)>>3]=ga;ga=+p[(D+80|0)>>3];p[(D+80|0)>>3]=+p[(G+80|0)>>3];p[(G+80|0)>>3]=ga;da=f[(D+88|0)>>2]|0;f[(D+88|0)>>2]=c;f[(G+88|0)>>2]=da;da=f[(D+92|0)>>2]|0;f[(D+92|0)>>2]=f[(G+92|0)>>2];f[(G+92|0)>>2]=da;da=f[(D+96|0)>>2]|0;f[(D+96|0)>>2]=f[(G+96|0)>>2];f[(G+96|0)>>2]=da;da=f[(D+100|0)>>2]|0;f[(D+100|0)>>2]=f[(G+100|0)>>2];f[(G+100|0)>>2]=da;f[(G+104|0)>>2]=f[(D+104|0)>>2];f[(G+108|0)>>2]=f[(D+108|0)>>2];ga=+p[(D+112|0)>>3];p[(D+112|0)>>3]=+p[(G+112|0)>>3];p[(G+112|0)>>3]=ga;ga=+p[(D+120|0)>>3];p[(D+120|0)>>3]=+p[(G+120|0)>>3];p[(G+120|0)>>3]=ga;ga=+p[(D+128|0)>>3];p[(D+128|0)>>3]=+p[(G+128|0)>>3];p[(G+128|0)>>3]=ga;ga=+p[(D+136|0)>>3];p[(D+136|0)>>3]=+p[(G+136|0)>>3];p[(G+136|0)>>3]=ga;ga=+p[(D+144|0)>>3];p[(D+144|0)>>3]=+p[(G+144|0)>>3];p[(G+144|0)>>3]=ga;ga=+p[(D+152|0)>>3];p[(D+152|0)>>3]=+p[(G+152|0)>>3];p[(G+152|0)>>3]=ga;ga=+p[(D+160|0)>>3];p[(D+160|0)>>3]=+p[(G+160|0)>>3];p[(G+160|0)>>3]=ga;ga=+p[(D+168|0)>>3];p[(D+168|0)>>3]=+p[(G+168|0)>>3];p[(G+168|0)>>3]=ga;ga=+p[(D+176|0)>>3];p[(D+176|0)>>3]=+p[(G+176|0)>>3];p[(G+176|0)>>3]=ga;f[(G+184|0)>>2]=f[(D+184|0)>>2];f[(G+184|0)+4>>2]=f[(D+184|0)+4>>2];f[(G+184|0)+8>>2]=f[(D+184|0)+8>>2];f[(G+184|0)+12>>2]=f[(D+184|0)+12>>2];p[(G+200|0)>>3]=+p[(D+200|0)>>3];p[(G+208|0)>>3]=+p[(D+208|0)>>3];f[(G+216|0)>>2]=f[(D+216|0)>>2];f[(G+216|0)+4>>2]=f[(D+216|0)+4>>2];f[(G+216|0)+8>>2]=f[(D+216|0)+8>>2];f[(G+216|0)+12>>2]=f[(D+216|0)+12>>2];b[(G+216|0)+16>>0]=b[(D+216|0)+16>>0]|0;da=D;ea=a+24|0;fa=da+36|0;do{f[da>>2]=f[ea>>2];da=da+4|0;ea=ea+4|0}while((da|0)<(fa|0));p[(D+40|0)>>3]=e;p[(D+48|0)>>3]=g;p[(D+56|0)>>3]=h;p[(D+64|0)>>3]=i;p[(D+72|0)>>3]=j;p[(D+80|0)>>3]=k;f[(D+88|0)>>2]=c;f[(D+92|0)>>2]=d;f[(D+96|0)>>2]=l;f[(D+100|0)>>2]=m;f[(D+104|0)>>2]=o;f[(D+108|0)>>2]=q;p[(D+112|0)>>3]=r;p[(D+120|0)>>3]=s;p[(D+128|0)>>3]=t;p[(D+136|0)>>3]=v;p[(D+144|0)>>3]=w;p[(D+152|0)>>3]=x;p[(D+160|0)>>3]=y;p[(D+168|0)>>3]=z;p[(D+176|0)>>3]=A;f[(D+184|0)>>2]=f[(a+64|0)>>2];f[(D+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(D+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(D+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(D+200|0)>>3]=B;p[(D+208|0)>>3]=C;f[(D+216|0)>>2]=f[a>>2];f[(D+216|0)+4>>2]=f[a+4>>2];f[(D+216|0)+8>>2]=f[a+8>>2];f[(D+216|0)+12>>2]=f[a+12>>2];b[(D+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(G+216|0)>>3]>>>0;d=~~+p[(F+216|0)>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){E=ca+2|0;u=a;f[a+1664>>2]=6;f[a+1668>>2]=E|0;break a}e=+p[G+224>>3];g=+p[F+224>>3];if(!(e<g)){if(e>g){E=ca+2|0;u=a;f[a+1664>>2]=6;f[a+1668>>2]=E|0;break a}if(!(A5a(G,F)|0)){E=ca+2|0;u=a;f[a+1664>>2]=6;f[a+1668>>2]=E|0;break a}}}da=a+24|0;ea=F;fa=da+36|0;do{f[da>>2]=f[ea>>2];da=da+4|0;ea=ea+4|0}while((da|0)<(fa|0));H=+p[(F+40|0)>>3];I=+p[(F+48|0)>>3];J=+p[(F+56|0)>>3];K=+p[(F+64|0)>>3];L=+p[(F+72|0)>>3];M=+p[(F+80|0)>>3];N=f[(F+88|0)>>2]|0;O=f[(F+92|0)>>2]|0;P=f[(F+96|0)>>2]|0;Q=f[(F+100|0)>>2]|0;R=f[(F+104|0)>>2]|0;S=f[(F+108|0)>>2]|0;T=+p[(F+112|0)>>3];U=+p[(F+120|0)>>3];V=+p[(F+128|0)>>3];W=+p[(F+136|0)>>3];X=+p[(F+144|0)>>3];Y=+p[(F+152|0)>>3];Z=+p[(F+160|0)>>3];_=+p[(F+168|0)>>3];$=+p[(F+176|0)>>3];f[(a+64|0)>>2]=f[(F+184|0)>>2];f[(a+64|0)+4>>2]=f[(F+184|0)+4>>2];f[(a+64|0)+8>>2]=f[(F+184|0)+8>>2];f[(a+64|0)+12>>2]=f[(F+184|0)+12>>2];aa=+p[(F+200|0)>>3];ba=+p[(F+208|0)>>3];f[a>>2]=f[(F+216|0)>>2];f[a+4>>2]=f[(F+216|0)+4>>2];f[a+8>>2]=f[(F+216|0)+8>>2];f[a+12>>2]=f[(F+216|0)+12>>2];b[a+16>>0]=b[(F+216|0)+16>>0]|0;da=F;ea=G;fa=da+36|0;do{f[da>>2]=f[ea>>2];da=da+4|0;ea=ea+4|0}while((da|0)<(fa|0));ga=+p[(G+40|0)>>3];p[(G+40|0)>>3]=H;p[(F+40|0)>>3]=ga;ga=+p[(G+48|0)>>3];p[(G+48|0)>>3]=+p[(F+48|0)>>3];p[(F+48|0)>>3]=ga;ga=+p[(G+56|0)>>3];p[(G+56|0)>>3]=+p[(F+56|0)>>3];p[(F+56|0)>>3]=ga;ga=+p[(G+64|0)>>3];p[(G+64|0)>>3]=+p[(F+64|0)>>3];p[(F+64|0)>>3]=ga;ga=+p[(G+72|0)>>3];p[(G+72|0)>>3]=+p[(F+72|0)>>3];p[(F+72|0)>>3]=ga;ga=+p[(G+80|0)>>3];p[(G+80|0)>>3]=+p[(F+80|0)>>3];p[(F+80|0)>>3]=ga;ca=f[(G+88|0)>>2]|0;f[(G+88|0)>>2]=N;f[(F+88|0)>>2]=ca;ca=f[(G+92|0)>>2]|0;f[(G+92|0)>>2]=f[(F+92|0)>>2];f[(F+92|0)>>2]=ca;ca=f[(G+96|0)>>2]|0;f[(G+96|0)>>2]=f[(F+96|0)>>2];f[(F+96|0)>>2]=ca;ca=f[(G+100|0)>>2]|0;f[(G+100|0)>>2]=f[(F+100|0)>>2];f[(F+100|0)>>2]=ca;f[(F+104|0)>>2]=f[(G+104|0)>>2];f[(F+108|0)>>2]=f[(G+108|0)>>2];ga=+p[(G+112|0)>>3];p[(G+112|0)>>3]=+p[(F+112|0)>>3];p[(F+112|0)>>3]=ga;ga=+p[(G+120|0)>>3];p[(G+120|0)>>3]=+p[(F+120|0)>>3];p[(F+120|0)>>3]=ga;ga=+p[(G+128|0)>>3];p[(G+128|0)>>3]=+p[(F+128|0)>>3];p[(F+128|0)>>3]=ga;ga=+p[(G+136|0)>>3];p[(G+136|0)>>3]=+p[(F+136|0)>>3];p[(F+136|0)>>3]=ga;ga=+p[(G+144|0)>>3];p[(G+144|0)>>3]=+p[(F+144|0)>>3];p[(F+144|0)>>3]=ga;ga=+p[(G+152|0)>>3];p[(G+152|0)>>3]=+p[(F+152|0)>>3];p[(F+152|0)>>3]=ga}f[a+136>>2]=E;n[a+584>>2]=H;n[a+592>>2]=I;n[a+600>>2]=J;n[a+608>>2]=K;n[a+624>>2]=L;n[a+632>>2]=M;f[a+640>>2]=N;f[a+648>>2]=O;f[a+656>>2]=P;f[a+664>>2]=Q;f[a+672>>2]=R;f[a+680>>2]=S;n[a+696>>2]=T;n[a+704>>2]=U;n[a+712>>2]=V;n[a+720>>2]=W;n[a+728>>2]=X;n[a+736>>2]=Y;n[a+744>>2]=Z;n[a+752>>2]=_;n[a+760>>2]=$;n[a+768>>2]=aa;n[a+784>>2]=ba;f[a+1624>>2]=da;f[a+1640>>2]=ea;f[a+1648>>2]=fa}function W6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0;Q=f[a+112>>2]|0;R=f[a+120>>2]|0;x=f[a+128>>2]|0;E=f[a+136>>2]|0;F=+n[a+200>>2];G=+n[a+208>>2];H=+n[a+216>>2];I=+n[a+224>>2];J=+n[a+232>>2];K=+n[a+240>>2];L=f[a+248>>2]|0;M=f[a+256>>2]|0;N=f[a+264>>2]|0;O=f[a+272>>2]|0;P=f[a+280>>2]|0;e=+n[a+616>>2];g=+n[a+688>>2];h=+n[a+776>>2];i=+n[a+832>>2];j=+n[a+880>>2];k=+n[a+928>>2];c=f[a+984>>2]|0;d=f[a+1040>>2]|0;l=f[a+1112>>2]|0;m=f[a+1248>>2]|0;o=f[a+1296>>2]|0;q=f[a+1344>>2]|0;r=+n[a+1384>>2];s=+n[a+1392>>2];t=+n[a+1400>>2];v=+n[a+1408>>2];w=+n[a+1416>>2];y=+n[a+1424>>2];z=+n[a+1432>>2];A=+n[a+1440>>2];B=+n[a+1448>>2];S=f[a+1488>>2]|0;a:{C=+p[(R+200|0)>>3];D=+p[(R+208|0)>>3];f[a>>2]=f[(R+216|0)>>2];f[a+4>>2]=f[(R+216|0)+4>>2];f[a+8>>2]=f[(R+216|0)+8>>2];f[a+12>>2]=f[(R+216|0)+12>>2];b[a+16>>0]=b[(R+216|0)+16>>0]|0;T=R;U=x;V=T+36|0;do{f[T>>2]=f[U>>2];T=T+4|0;U=U+4|0}while((T|0)<(V|0));W=+p[(x+40|0)>>3];p[(x+40|0)>>3]=e;p[(R+40|0)>>3]=W;W=+p[(x+48|0)>>3];p[(x+48|0)>>3]=+p[(R+48|0)>>3];p[(R+48|0)>>3]=W;W=+p[(x+56|0)>>3];p[(x+56|0)>>3]=+p[(R+56|0)>>3];p[(R+56|0)>>3]=W;W=+p[(x+64|0)>>3];p[(x+64|0)>>3]=+p[(R+64|0)>>3];p[(R+64|0)>>3]=W;W=+p[(x+72|0)>>3];p[(x+72|0)>>3]=+p[(R+72|0)>>3];p[(R+72|0)>>3]=W;W=+p[(x+80|0)>>3];p[(x+80|0)>>3]=+p[(R+80|0)>>3];p[(R+80|0)>>3]=W;T=f[(x+88|0)>>2]|0;f[(x+88|0)>>2]=c;f[(R+88|0)>>2]=T;T=f[(x+92|0)>>2]|0;f[(x+92|0)>>2]=f[(R+92|0)>>2];f[(R+92|0)>>2]=T;T=f[(x+96|0)>>2]|0;f[(x+96|0)>>2]=f[(R+96|0)>>2];f[(R+96|0)>>2]=T;T=f[(x+100|0)>>2]|0;f[(x+100|0)>>2]=f[(R+100|0)>>2];f[(R+100|0)>>2]=T;f[(R+104|0)>>2]=f[(x+104|0)>>2];f[(R+108|0)>>2]=f[(x+108|0)>>2];W=+p[(x+112|0)>>3];p[(x+112|0)>>3]=+p[(R+112|0)>>3];p[(R+112|0)>>3]=W;W=+p[(x+120|0)>>3];p[(x+120|0)>>3]=+p[(R+120|0)>>3];p[(R+120|0)>>3]=W;W=+p[(x+128|0)>>3];p[(x+128|0)>>3]=+p[(R+128|0)>>3];p[(R+128|0)>>3]=W;W=+p[(x+136|0)>>3];p[(x+136|0)>>3]=+p[(R+136|0)>>3];p[(R+136|0)>>3]=W;W=+p[(x+144|0)>>3];p[(x+144|0)>>3]=+p[(R+144|0)>>3];p[(R+144|0)>>3]=W;W=+p[(x+152|0)>>3];p[(x+152|0)>>3]=+p[(R+152|0)>>3];p[(R+152|0)>>3]=W;W=+p[(x+160|0)>>3];p[(x+160|0)>>3]=+p[(R+160|0)>>3];p[(R+160|0)>>3]=W;W=+p[(x+168|0)>>3];p[(x+168|0)>>3]=+p[(R+168|0)>>3];p[(R+168|0)>>3]=W;W=+p[(x+176|0)>>3];p[(x+176|0)>>3]=+p[(R+176|0)>>3];p[(R+176|0)>>3]=W;f[(R+184|0)>>2]=f[(x+184|0)>>2];f[(R+184|0)+4>>2]=f[(x+184|0)+4>>2];f[(R+184|0)+8>>2]=f[(x+184|0)+8>>2];f[(R+184|0)+12>>2]=f[(x+184|0)+12>>2];p[(R+200|0)>>3]=+p[(x+200|0)>>3];p[(R+208|0)>>3]=+p[(x+208|0)>>3];f[(R+216|0)>>2]=f[(x+216|0)>>2];f[(R+216|0)+4>>2]=f[(x+216|0)+4>>2];f[(R+216|0)+8>>2]=f[(x+216|0)+8>>2];f[(R+216|0)+12>>2]=f[(x+216|0)+12>>2];b[(R+216|0)+16>>0]=b[(x+216|0)+16>>0]|0;T=x;U=a+24|0;V=T+36|0;do{f[T>>2]=f[U>>2];T=T+4|0;U=U+4|0}while((T|0)<(V|0));p[(x+40|0)>>3]=e;p[(x+48|0)>>3]=g;p[(x+56|0)>>3]=h;p[(x+64|0)>>3]=i;p[(x+72|0)>>3]=j;p[(x+80|0)>>3]=k;f[(x+88|0)>>2]=c;f[(x+92|0)>>2]=d;f[(x+96|0)>>2]=l;f[(x+100|0)>>2]=m;f[(x+104|0)>>2]=o;f[(x+108|0)>>2]=q;p[(x+112|0)>>3]=r;p[(x+120|0)>>3]=s;p[(x+128|0)>>3]=t;p[(x+136|0)>>3]=v;p[(x+144|0)>>3]=w;p[(x+152|0)>>3]=y;p[(x+160|0)>>3]=z;p[(x+168|0)>>3]=A;p[(x+176|0)>>3]=B;f[(x+184|0)>>2]=f[(a+64|0)>>2];f[(x+184|0)+4>>2]=f[(a+64|0)+4>>2];f[(x+184|0)+8>>2]=f[(a+64|0)+8>>2];f[(x+184|0)+12>>2]=f[(a+64|0)+12>>2];p[(x+200|0)>>3]=C;p[(x+208|0)>>3]=D;f[(x+216|0)>>2]=f[a>>2];f[(x+216|0)+4>>2]=f[a+4>>2];f[(x+216|0)+8>>2]=f[a+8>>2];f[(x+216|0)+12>>2]=f[a+12>>2];b[(x+216|0)+16>>0]=b[a+16>>0]|0;c=~~+p[(R+216|0)>>3]>>>0;d=~~+p[(Q+216|0)>>3]>>>0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){E=S+1|0;u=a;f[a+1672>>2]=6;f[a+1676>>2]=E|0;break a}e=+p[R+224>>3];g=+p[Q+224>>3];if(!(e<g)){if(e>g){E=S+1|0;u=a;f[a+1672>>2]=6;f[a+1676>>2]=E|0;break a}if(!(A5a(R,Q)|0)){E=S+1|0;u=a;f[a+1672>>2]=6;f[a+1676>>2]=E|0;break a}}}T=a+24|0;U=Q;V=T+36|0;do{f[T>>2]=f[U>>2];T=T+4|0;U=U+4|0}while((T|0)<(V|0));F=+p[(Q+40|0)>>3];G=+p[(Q+48|0)>>3];H=+p[(Q+56|0)>>3];I=+p[(Q+64|0)>>3];J=+p[(Q+72|0)>>3];K=+p[(Q+80|0)>>3];L=f[(Q+88|0)>>2]|0;M=f[(Q+92|0)>>2]|0;N=f[(Q+96|0)>>2]|0;O=f[(Q+100|0)>>2]|0;P=f[(Q+104|0)>>2]|0}f[a+136>>2]=E;n[a+200>>2]=F;n[a+208>>2]=G;n[a+216>>2]=H;n[a+224>>2]=I;n[a+232>>2]=J;n[a+240>>2]=K;f[a+248>>2]=L;f[a+256>>2]=M;f[a+264>>2]=N;f[a+272>>2]=O;f[a+280>>2]=P;f[a+1624>>2]=T;f[a+1640>>2]=U;f[a+1648>>2]=V}function X6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;m=f[a+304>>2]|0;U=f[a+312>>2]|0;Q=f[a+328>>2]|0;l=f[a+336>>2]|0;k=f[a+344>>2]|0;R=f[a+360>>2]|0;S=f[a+368>>2]|0;T=f[a+392>>2]|0;M=f[a+440>>2]|0;n=f[a+448>>2]|0;o=f[a+456>>2]|0;N=f[a+464>>2]|0;O=f[a+472>>2]|0;P=f[a+480>>2]|0;q=f[a+488>>2]|0;c=f[a+496>>2]|0;r=f[a+504>>2]|0;L=f[a+560>>2]|0;a:{p[M>>3]=+p[L>>3];p[((a+40|0)+72|0)>>3]=+p[Q+72>>3];p[((a+40|0)+80|0)>>3]=+p[Q+80>>3];M=Q+88|0;f[n>>2]=f[M>>2];f[n+4>>2]=f[M+4>>2];f[n+8>>2]=f[M+8>>2];f[n>>2]=f[M>>2];f[((a+40|0)+92|0)>>2]=f[Q+92>>2];f[((a+40|0)+96|0)>>2]=f[Q+96>>2];M=Q+100|0;f[o>>2]=f[M>>2];f[o+4>>2]=f[M+4>>2];f[o+8>>2]=f[M+8>>2];f[o>>2]=f[M>>2];f[((a+40|0)+104|0)>>2]=f[Q+104>>2];f[((a+40|0)+108|0)>>2]=f[Q+108>>2];M=Q+112|0;f[N>>2]=f[M>>2];f[N+4>>2]=f[M+4>>2];f[N+8>>2]=f[M+8>>2];f[N+12>>2]=f[M+12>>2];f[N+16>>2]=f[M+16>>2];f[N+20>>2]=f[M+20>>2];p[N>>3]=+p[M>>3];p[((a+40|0)+120|0)>>3]=+p[Q+120>>3];p[((a+40|0)+128|0)>>3]=+p[Q+128>>3];N=Q+136|0;f[O>>2]=f[N>>2];f[O+4>>2]=f[N+4>>2];f[O+8>>2]=f[N+8>>2];f[O+12>>2]=f[N+12>>2];f[O+16>>2]=f[N+16>>2];f[O+20>>2]=f[N+20>>2];p[O>>3]=+p[N>>3];p[((a+40|0)+144|0)>>3]=+p[Q+144>>3];p[((a+40|0)+152|0)>>3]=+p[Q+152>>3];O=Q+160|0;f[P>>2]=f[O>>2];f[P+4>>2]=f[O+4>>2];f[P+8>>2]=f[O+8>>2];f[P+12>>2]=f[O+12>>2];f[P+16>>2]=f[O+16>>2];f[P+20>>2]=f[O+20>>2];p[P>>3]=+p[O>>3];p[((a+40|0)+168|0)>>3]=+p[Q+168>>3];p[((a+40|0)+176|0)>>3]=+p[Q+176>>3];P=Q+184|0;f[q>>2]=f[P>>2];f[q+4>>2]=f[P+4>>2];f[q+8>>2]=f[P+8>>2];f[q+12>>2]=f[P+12>>2];P=Q+200|0;f[c>>2]=f[P>>2];f[c+4>>2]=f[P+4>>2];f[c+8>>2]=f[P+8>>2];f[c+12>>2]=f[P+12>>2];p[c>>3]=+p[P>>3];p[((a+40|0)+208|0)>>3]=+p[Q+208>>3];c=Q+216|0;f[r>>2]=f[c>>2];f[r+4>>2]=f[c+4>>2];f[r+8>>2]=f[c+8>>2];f[r+12>>2]=f[c+12>>2];b[r+16>>0]=b[c+16>>0]|0;c=Q;while(1){d=c;h=k;i=d+36|0;do{f[d>>2]=f[h>>2];d=d+4|0;h=h+4|0}while((d|0)<(i|0));s=k+40|0;g=+p[s>>3];t=c+40|0;p[s>>3]=+p[t>>3];p[t>>3]=g;t=k+48|0;g=+p[t>>3];u=c+48|0;p[t>>3]=+p[u>>3];p[u>>3]=g;u=k+56|0;g=+p[u>>3];v=c+56|0;p[u>>3]=+p[v>>3];p[v>>3]=g;v=k+64|0;g=+p[v>>3];w=c+64|0;p[v>>3]=+p[w>>3];p[w>>3]=g;w=k+72|0;g=+p[w>>3];x=c+72|0;p[w>>3]=+p[x>>3];p[x>>3]=g;x=k+80|0;g=+p[x>>3];z=c+80|0;p[x>>3]=+p[z>>3];p[z>>3]=g;z=c+88|0;y=k+88|0;B=f[y>>2]|0;f[y>>2]=f[z>>2];f[z>>2]=B;z=k+92|0;B=f[z>>2]|0;A=c+92|0;f[z>>2]=f[A>>2];f[A>>2]=B;A=k+96|0;B=f[A>>2]|0;C=c+96|0;f[A>>2]=f[C>>2];f[C>>2]=B;C=c+100|0;B=k+100|0;F=f[B>>2]|0;f[B>>2]=f[C>>2];f[C>>2]=F;C=k+104|0;F=f[C>>2]|0;D=c+104|0;f[C>>2]=f[D>>2];f[D>>2]=F;D=k+108|0;F=f[D>>2]|0;E=c+108|0;f[D>>2]=f[E>>2];f[E>>2]=F;E=k+112|0;g=+p[E>>3];F=c+112|0;p[E>>3]=+p[F>>3];p[F>>3]=g;F=k+120|0;g=+p[F>>3];G=c+120|0;p[F>>3]=+p[G>>3];p[G>>3]=g;G=k+128|0;g=+p[G>>3];H=c+128|0;p[G>>3]=+p[H>>3];p[H>>3]=g;H=k+136|0;g=+p[H>>3];I=c+136|0;p[H>>3]=+p[I>>3];p[I>>3]=g;I=k+144|0;g=+p[I>>3];J=c+144|0;p[I>>3]=+p[J>>3];p[J>>3]=g;J=k+152|0;g=+p[J>>3];K=c+152|0;p[J>>3]=+p[K>>3];p[K>>3]=g;K=k+160|0;g=+p[K>>3];L=c+160|0;p[K>>3]=+p[L>>3];p[L>>3]=g;L=k+168|0;g=+p[L>>3];M=c+168|0;p[L>>3]=+p[M>>3];p[M>>3]=g;M=k+176|0;g=+p[M>>3];O=c+176|0;p[M>>3]=+p[O>>3];p[O>>3]=g;O=c+184|0;N=k+184|0;f[O>>2]=f[N>>2];f[O+4>>2]=f[N+4>>2];f[O+8>>2]=f[N+8>>2];f[O+12>>2]=f[N+12>>2];O=k+200|0;g=+p[O>>3];P=c+200|0;p[O>>3]=+p[P>>3];p[P>>3]=g;P=k+208|0;g=+p[P>>3];i=c+208|0;p[P>>3]=+p[i>>3];p[i>>3]=g;i=c+216|0;j=k+216|0;f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];b[i+16>>0]=b[j+16>>0]|0;if((k|0)==(m|0))break;h=k+-240|0;c=~~+p[((a+40|0)+216|0)>>3]>>>0;d=~~+p[k+-24>>3]>>>0;if(c>>>0<d>>>0){c=k;k=h;continue}if(c>>>0>d>>>0)break;e=+p[((a+40|0)+224|0)>>3];g=+p[k+-16>>3];if(e<g){c=k;k=h;continue}if(e>g)break;if(A5a(a+40|0,h)|0){c=k;k=h}else break}d=k;h=a+40|0;i=d+36|0;do{f[d>>2]=f[h>>2];d=d+4|0;h=h+4|0}while((d|0)<(i|0));g=+p[((a+40|0)+40|0)>>3];p[((a+40|0)+40|0)>>3]=+p[s>>3];p[s>>3]=g;g=+p[((a+40|0)+48|0)>>3];p[((a+40|0)+48|0)>>3]=+p[t>>3];p[t>>3]=g;g=+p[((a+40|0)+56|0)>>3];p[((a+40|0)+56|0)>>3]=+p[u>>3];p[u>>3]=g;g=+p[((a+40|0)+64|0)>>3];p[((a+40|0)+64|0)>>3]=+p[v>>3];p[v>>3]=g;g=+p[((a+40|0)+72|0)>>3];p[((a+40|0)+72|0)>>3]=+p[w>>3];p[w>>3]=g;g=+p[((a+40|0)+80|0)>>3];p[((a+40|0)+80|0)>>3]=+p[x>>3];p[x>>3]=g;c=f[n>>2]|0;f[n>>2]=f[y>>2];f[y>>2]=c;c=f[((a+40|0)+92|0)>>2]|0;f[((a+40|0)+92|0)>>2]=f[z>>2];f[z>>2]=c;c=f[((a+40|0)+96|0)>>2]|0;f[((a+40|0)+96|0)>>2]=f[A>>2];f[A>>2]=c;c=f[o>>2]|0;f[o>>2]=f[B>>2];f[B>>2]=c;c=f[((a+40|0)+104|0)>>2]|0;f[((a+40|0)+104|0)>>2]=f[C>>2];f[C>>2]=c;c=f[((a+40|0)+108|0)>>2]|0;f[((a+40|0)+108|0)>>2]=f[D>>2];f[D>>2]=c;g=+p[((a+40|0)+112|0)>>3];p[((a+40|0)+112|0)>>3]=+p[E>>3];p[E>>3]=g;g=+p[((a+40|0)+120|0)>>3];p[((a+40|0)+120|0)>>3]=+p[F>>3];p[F>>3]=g;g=+p[((a+40|0)+128|0)>>3];p[((a+40|0)+128|0)>>3]=+p[G>>3];p[G>>3]=g;g=+p[((a+40|0)+136|0)>>3];p[((a+40|0)+136|0)>>3]=+p[H>>3];p[H>>3]=g;g=+p[((a+40|0)+144|0)>>3];p[((a+40|0)+144|0)>>3]=+p[I>>3];p[I>>3]=g;g=+p[((a+40|0)+152|0)>>3];p[((a+40|0)+152|0)>>3]=+p[J>>3];p[J>>3]=g;g=+p[((a+40|0)+160|0)>>3];p[((a+40|0)+160|0)>>3]=+p[K>>3];p[K>>3]=g;g=+p[((a+40|0)+168|0)>>3];p[((a+40|0)+168|0)>>3]=+p[L>>3];p[L>>3]=g;g=+p[((a+40|0)+176|0)>>3];p[((a+40|0)+176|0)>>3]=+p[M>>3];p[M>>3]=g;f[N>>2]=f[q>>2];f[N+4>>2]=f[q+4>>2];f[N+8>>2]=f[q+8>>2];f[N+12>>2]=f[q+12>>2];g=+p[((a+40|0)+200|0)>>3];p[((a+40|0)+200|0)>>3]=+p[O>>3];p[O>>3]=g;g=+p[((a+40|0)+208|0)>>3];p[((a+40|0)+208|0)>>3]=+p[P>>3];p[P>>3]=g;f[j>>2]=f[r>>2];f[j+4>>2]=f[r+4>>2];f[j+8>>2]=f[r+8>>2];f[j+12>>2]=f[r+12>>2];b[j+16>>0]=b[r+16>>0]|0;c=l+1|0;if((c|0)==8){R=0;T=(Q+240|0)==(U|0);f[a+1856>>2]=2;f[a+1860>>2]=1;break a}else S=c}f[a+360>>2]=R;f[a+368>>2]=S;f[a+392>>2]=T;f[a+1792>>2]=d;f[a+1808>>2]=h;f[a+1816>>2]=i}function Y6a(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0.0;c=f[a+304>>2]|0;d=f[a+312>>2]|0;e=+n[a+632>>2];g=+n[a+704>>2];h=+n[a+776>>2];i=+n[a+840>>2];j=+n[a+912>>2];k=+n[a+976>>2];l=f[a+1104>>2]|0;m=f[a+1176>>2]|0;o=f[a+1248>>2]|0;q=f[a+1336>>2]|0;r=f[a+1376>>2]|0;s=f[a+1424>>2]|0;t=+n[a+1472>>2];v=+n[a+1520>>2];w=+n[a+1568>>2];x=+n[a+1584>>2];y=+n[a+1592>>2];z=+n[a+1600>>2];A=+n[a+1608>>2];B=+n[a+1616>>2];a:{C=+p[(c+176|0)>>3];f[(a+24|0)>>2]=f[(c+184|0)>>2];f[(a+24|0)+4>>2]=f[(c+184|0)+4>>2];f[(a+24|0)+8>>2]=f[(c+184|0)+8>>2];f[(a+24|0)+12>>2]=f[(c+184|0)+12>>2];D=+p[(c+200|0)>>3];E=+p[(c+208|0)>>3];f[a>>2]=f[(c+216|0)>>2];f[a+4>>2]=f[(c+216|0)+4>>2];f[a+8>>2]=f[(c+216|0)+8>>2];f[a+12>>2]=f[(c+216|0)+12>>2];b[a+16>>0]=b[(c+216|0)+16>>0]|0;F=c;G=d+-240|0;H=F+36|0;do{f[F>>2]=f[G>>2];F=F+4|0;G=G+4|0}while((F|0)<(H|0));I=+p[(d+-200|0)>>3];p[(d+-200|0)>>3]=e;p[(c+40|0)>>3]=I;I=+p[(d+-192|0)>>3];p[(d+-192|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=I;I=+p[(d+-184|0)>>3];p[(d+-184|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=I;I=+p[(d+-176|0)>>3];p[(d+-176|0)>>3]=+p[(c+64|0)>>3];p[(c+64|0)>>3]=I;I=+p[(d+-168|0)>>3];p[(d+-168|0)>>3]=+p[(c+72|0)>>3];p[(c+72|0)>>3]=I;I=+p[(d+-160|0)>>3];p[(d+-160|0)>>3]=+p[(c+80|0)>>3];p[(c+80|0)>>3]=I;F=f[(d+-152|0)>>2]|0;f[(d+-152|0)>>2]=l;f[(c+88|0)>>2]=F;F=f[(d+-148|0)>>2]|0;f[(d+-148|0)>>2]=f[(c+92|0)>>2];f[(c+92|0)>>2]=F;F=f[(d+-144|0)>>2]|0;f[(d+-144|0)>>2]=f[(c+96|0)>>2];f[(c+96|0)>>2]=F;F=f[(d+-140|0)>>2]|0;f[(d+-140|0)>>2]=f[(c+100|0)>>2];f[(c+100|0)>>2]=F;f[(c+104|0)>>2]=f[(d+-136|0)>>2];f[(c+108|0)>>2]=f[(d+-132|0)>>2];I=+p[(d+-128|0)>>3];p[(d+-128|0)>>3]=+p[(c+112|0)>>3];p[(c+112|0)>>3]=I;I=+p[(d+-120|0)>>3];p[(d+-120|0)>>3]=+p[(c+120|0)>>3];p[(c+120|0)>>3]=I;I=+p[(d+-112|0)>>3];p[(d+-112|0)>>3]=+p[(c+128|0)>>3];p[(c+128|0)>>3]=I;I=+p[(d+-104|0)>>3];p[(d+-104|0)>>3]=+p[(c+136|0)>>3];p[(c+136|0)>>3]=I;I=+p[(d+-96|0)>>3];p[(d+-96|0)>>3]=+p[(c+144|0)>>3];p[(c+144|0)>>3]=I;I=+p[(d+-88|0)>>3];p[(d+-88|0)>>3]=+p[(c+152|0)>>3];p[(c+152|0)>>3]=I;I=+p[(d+-80|0)>>3];p[(d+-80|0)>>3]=+p[(c+160|0)>>3];p[(c+160|0)>>3]=I;I=+p[(d+-72|0)>>3];p[(d+-72|0)>>3]=+p[(c+168|0)>>3];p[(c+168|0)>>3]=I;I=+p[(d+-64|0)>>3];p[(d+-64|0)>>3]=+p[(c+176|0)>>3];p[(c+176|0)>>3]=I;f[(c+184|0)>>2]=f[(d+-56|0)>>2];f[(c+184|0)+4>>2]=f[(d+-56|0)+4>>2];f[(c+184|0)+8>>2]=f[(d+-56|0)+8>>2];f[(c+184|0)+12>>2]=f[(d+-56|0)+12>>2];p[(c+200|0)>>3]=+p[(d+-40|0)>>3];p[(c+208|0)>>3]=+p[(d+-32|0)>>3];f[(c+216|0)>>2]=f[(d+-24|0)>>2];f[(c+216|0)+4>>2]=f[(d+-24|0)+4>>2];f[(c+216|0)+8>>2]=f[(d+-24|0)+8>>2];f[(c+216|0)+12>>2]=f[(d+-24|0)+12>>2];b[(c+216|0)+16>>0]=b[(d+-24|0)+16>>0]|0;F=d+-240|0;G=a+40|0;H=F+36|0;do{f[F>>2]=f[G>>2];F=F+4|0;G=G+4|0}while((F|0)<(H|0));p[(d+-200|0)>>3]=e;p[(d+-192|0)>>3]=g;p[(d+-184|0)>>3]=h;p[(d+-176|0)>>3]=i;p[(d+-168|0)>>3]=j;p[(d+-160|0)>>3]=k;f[(d+-152|0)>>2]=l;f[(d+-148|0)>>2]=m;f[(d+-144|0)>>2]=o;f[(d+-140|0)>>2]=q;f[(d+-136|0)>>2]=r;f[(d+-132|0)>>2]=s;p[(d+-128|0)>>3]=t;p[(d+-120|0)>>3]=v;p[(d+-112|0)>>3]=w;p[(d+-104|0)>>3]=x;p[(d+-96|0)>>3]=y;p[(d+-88|0)>>3]=z;p[(d+-80|0)>>3]=A;p[(d+-72|0)>>3]=B;p[(d+-64|0)>>3]=C;f[(d+-56|0)>>2]=f[(a+24|0)>>2];f[(d+-56|0)+4>>2]=f[(a+24|0)+4>>2];f[(d+-56|0)+8>>2]=f[(a+24|0)+8>>2];f[(d+-56|0)+12>>2]=f[(a+24|0)+12>>2];p[(d+-40|0)>>3]=D;p[(d+-32|0)>>3]=E;f[(d+-24|0)>>2]=f[a>>2];f[(d+-24|0)+4>>2]=f[a+4>>2];f[(d+-24|0)+8>>2]=f[a+8>>2];f[(d+-24|0)+12>>2]=f[a+12>>2];b[(d+-24|0)+16>>0]=b[a+16>>0]|0;c=1;u=a;f[a+1864>>2]=6;f[a+1868>>2]=c|0;break a}f[a+400>>2]=c;f[a+1792>>2]=F;f[a+1808>>2]=G;f[a+1816>>2]=H}function Z6a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0;n=f[a+656>>2]|0;r=f[a+696>>2]|0;s=f[a+808>>2]|0;t=f[a+832>>2]|0;i=f[a+936>>2]|0;u=f[a+2128>>2]|0;v=f[a+2136>>2]|0;w=f[a+2144>>2]|0;x=f[a+2152>>2]|0;y=f[a+2160>>2]|0;z=f[a+2168>>2]|0;A=f[a+2176>>2]|0;B=f[a+2312>>2]|0;j=f[a+2440>>2]|0;o=f[a+2448>>2]|0;C=f[a+3784>>2]|0;E=f[a+3800>>2]|0;F=f[a+3808>>2]|0;D=f[a+3816>>2]|0;a:{b:do if(i>>>0<2){p[(a+496|0)>>3]=+p[t>>3];p[((a+496|0)+8|0)>>3]=+p[t+8>>3];p[((a+496|0)+16|0)>>3]=+p[t+16>>3];p[((a+496|0)+24|0)>>3]=+p[t+24>>3];p[((a+496|0)+32|0)>>3]=+p[t+32>>3];p[((a+496|0)+40|0)>>3]=+p[t+40>>3];x5a(a+304|0,f[n>>2]|0,a+496|0,(b[(n+362|0)>>0]|0)!=0);do if(b[(a+304|0)>>0]|0){c=f[(f[(n+8|0)>>2]|0)+108>>2]|0;if(c|0)if(!(p5a(f[n>>2]|0,c,(a+304|0)+16|0)|0))break;b[((a+64|0)+232|0)>>0]=0;d=Eka(f[(n+12|0)>>2]|0,o)|0;e=f[n>>2]|0;c=(f[(f[(f[(n+12|0)>>2]|0)+44>>2]|0)+68>>2]|0)+(d*12|0)+8|0;g=f[c>>2]&255;h=b[e>>0]|0;if(!(h&8))D=212;else if((b[e+4>>0]&g)<<24>>24)D=212;do if((D|0)==212){if(h&4){D=b[e+3>>0]|0;if((D&g)<<24>>24!=D<<24>>24)break}if(h&2)if((b[e+2>>0]&g)<<24>>24)break;if(!(h&1)){l=c;m=d;q=e;D=218;break b}D=b[e+1>>0]|0;if((D&g)<<24>>24!=D<<24>>24){l=c;m=d;q=e;D=218;break b}}while(0)}while(0);D=223}else D=223;while(0);c:do if((D|0)==223){D=0;if(j|(i|0)==1){p[(a+496|0)>>3]=+p[t+24>>3];p[((a+496|0)+8|0)>>3]=+p[t+32>>3];p[((a+496|0)+16|0)>>3]=+p[t+40>>3];p[((a+496|0)+24|0)>>3]=+p[t+48>>3];p[((a+496|0)+32|0)>>3]=+p[t+56>>3];p[((a+496|0)+40|0)>>3]=+p[t+64>>3];x5a(a+304|0,f[n>>2]|0,a+496|0,(b[(n+362|0)>>0]|0)!=0);do if(b[(a+304|0)>>0]|0){c=f[(f[(n+8|0)>>2]|0)+108>>2]|0;if(c|0)if(!(p5a(f[n>>2]|0,c,(a+304|0)+16|0)|0))break;b[((a+64|0)+232|0)>>0]=0;d=Eka(f[(n+12|0)>>2]|0,o)|0;e=f[n>>2]|0;c=(f[(f[(f[(n+12|0)>>2]|0)+44>>2]|0)+68>>2]|0)+(d*12|0)+8|0;g=f[c>>2]&255;h=b[e>>0]|0;if(!(h&8))D=231;else if((b[e+4>>0]&g)<<24>>24)D=231;do if((D|0)==231){D=0;if(h&4){G=b[e+3>>0]|0;if((G&g)<<24>>24!=G<<24>>24)break}if(h&2)if((b[e+2>>0]&g)<<24>>24)break;if(!(h&1)){l=c;m=d;q=e;D=218;break c}G=b[e+1>>0]|0;if((G&g)<<24>>24!=G<<24>>24){l=c;m=d;q=e;D=218;break c}}while(0)}while(0)}if(!(j|(i|0)==0)){k=s;break}p[(a+496|0)>>3]=+p[t+48>>3];p[((a+496|0)+8|0)>>3]=+p[t+56>>3];p[((a+496|0)+16|0)>>3]=+p[t+64>>3];p[((a+496|0)+24|0)>>3]=+p[t>>3];p[((a+496|0)+32|0)>>3]=+p[t+8>>3];p[((a+496|0)+40|0)>>3]=+p[t+16>>3];x5a(a+304|0,f[n>>2]|0,a+496|0,(b[(n+362|0)>>0]|0)!=0);do if(b[(a+304|0)>>0]|0){c=f[(f[(n+8|0)>>2]|0)+108>>2]|0;if(c|0)if(!(p5a(f[n>>2]|0,c,(a+304|0)+16|0)|0))break;b[((a+64|0)+232|0)>>0]=0;d=Eka(f[(n+12|0)>>2]|0,o)|0;e=f[n>>2]|0;c=(f[(f[(f[(n+12|0)>>2]|0)+44>>2]|0)+68>>2]|0)+(d*12|0)+8|0;g=f[c>>2]&255;h=b[e>>0]|0;if(!(h&8))D=245;else if((b[e+4>>0]&g)<<24>>24)D=245;do if((D|0)==245){D=0;if(h&4){G=b[e+3>>0]|0;if((G&g)<<24>>24!=G<<24>>24)break}if(h&2)if((b[e+2>>0]&g)<<24>>24)break;if(!(h&1)){l=c;m=d;q=e;D=218;break c}G=b[e+1>>0]|0;if((G&g)<<24>>24!=G<<24>>24){l=c;m=d;q=e;D=218;break c}}while(0)}while(0);k=s}while(0);if((D|0)==218){D=0;d=(f[(n+8|0)>>2]|0)+116|0;c=f[d+4>>2]|0;f[(a+64|0)>>2]=f[d>>2];f[(a+64|0)+4>>2]=c;f[((a+64|0)+28|0)>>2]=f[l>>2];p[((a+64|0)+112|0)>>3]=+p[t>>3];p[((a+64|0)+120|0)>>3]=+p[t+8>>3];p[((a+64|0)+128|0)>>3]=+p[t+16>>3];p[((a+64|0)+136|0)>>3]=+p[t+24>>3];p[((a+64|0)+144|0)>>3]=+p[t+32>>3];p[((a+64|0)+152|0)>>3]=+p[t+40>>3];p[((a+64|0)+160|0)>>3]=+p[t+48>>3];p[((a+64|0)+168|0)>>3]=+p[t+56>>3];p[((a+64|0)+176|0)>>3]=+p[t+64>>3];c=(b[(n+361|0)>>0]|0)==0;f[((a+64|0)+20|0)>>2]=c?o:-1;f[((a+64|0)+24|0)>>2]=c?m:-1;p[u>>3]=+p[((a+304|0)+16|0)>>3];p[((a+64|0)+48|0)>>3]=+p[((a+304|0)+24|0)>>3];p[((a+64|0)+56|0)>>3]=+p[((a+304|0)+32|0)>>3];nXa(a+48|0,f[q+56>>2]|0,u);I=+p[(a+48|0)>>3];p[(a+48|0)>>3]=+p[((a+64|0)+200|0)>>3];p[((a+64|0)+200|0)>>3]=I;H=+p[((a+48|0)+8|0)>>3];p[((a+64|0)+208|0)>>3]=H;c=f[(f[n>>2]|0)+56>>2]|0;I=I-+p[c+24>>3];H=H-+p[c+32>>3];p[((a+64|0)+216|0)>>3]=I*I+H*H;p[((a+64|0)+224|0)>>3]=+p[((a+304|0)+8|0)>>3];c=f[(n+4|0)>>2]|0;d=f[(c+40|0)>>2]|0;e=1;if(e){e=0;if(d>>>0<(f[c+44>>2]|0)>>>0){C=d;E=a+64|0;F=C+36|0;do{f[C>>2]=f[E>>2];C=C+4|0;E=E+4|0}while((C|0)<(F|0));f[(d+40|0)>>2]=f[u>>2];f[(d+40|0)+4>>2]=f[u+4>>2];f[(d+40|0)+8>>2]=f[u+8>>2];f[(d+40|0)+12>>2]=f[u+12>>2];f[(d+40|0)+16>>2]=f[u+16>>2];f[(d+40|0)+20>>2]=f[u+20>>2];p[(d+40|0)>>3]=+p[u>>3];p[d+48>>3]=+p[((a+64|0)+48|0)>>3];p[d+56>>3]=+p[((a+64|0)+56|0)>>3];f[(d+64|0)>>2]=f[v>>2];f[(d+64|0)+4>>2]=f[v+4>>2];f[(d+64|0)+8>>2]=f[v+8>>2];f[(d+64|0)+12>>2]=f[v+12>>2];f[(d+64|0)+16>>2]=f[v+16>>2];f[(d+64|0)+20>>2]=f[v+20>>2];p[(d+64|0)>>3]=+p[v>>3];p[d+72>>3]=+p[((a+64|0)+72|0)>>3];p[d+80>>3]=+p[((a+64|0)+80|0)>>3];f[(d+88|0)>>2]=f[((a+64|0)+88|0)>>2];f[(d+88|0)+4>>2]=f[((a+64|0)+88|0)+4>>2];f[(d+88|0)+8>>2]=f[((a+64|0)+88|0)+8>>2];f[(d+88|0)>>2]=f[((a+64|0)+88|0)>>2];f[d+92>>2]=f[((a+64|0)+92|0)>>2];f[d+96>>2]=f[((a+64|0)+96|0)>>2];f[(d+100|0)>>2]=f[((a+64|0)+100|0)>>2];f[(d+100|0)+4>>2]=f[((a+64|0)+100|0)+4>>2];f[(d+100|0)+8>>2]=f[((a+64|0)+100|0)+8>>2];f[(d+100|0)>>2]=f[((a+64|0)+100|0)>>2];f[d+104>>2]=f[((a+64|0)+104|0)>>2];f[d+108>>2]=f[((a+64|0)+108|0)>>2];f[(d+112|0)>>2]=f[w>>2];f[(d+112|0)+4>>2]=f[w+4>>2];f[(d+112|0)+8>>2]=f[w+8>>2];f[(d+112|0)+12>>2]=f[w+12>>2];f[(d+112|0)+16>>2]=f[w+16>>2];f[(d+112|0)+20>>2]=f[w+20>>2];p[(d+112|0)>>3]=+p[w>>3];p[d+120>>3]=+p[((a+64|0)+120|0)>>3];p[d+128>>3]=+p[((a+64|0)+128|0)>>3];f[(d+136|0)>>2]=f[x>>2];f[(d+136|0)+4>>2]=f[x+4>>2];f[(d+136|0)+8>>2]=f[x+8>>2];f[(d+136|0)+12>>2]=f[x+12>>2];f[(d+136|0)+16>>2]=f[x+16>>2];f[(d+136|0)+20>>2]=f[x+20>>2];p[(d+136|0)>>3]=+p[x>>3];p[d+144>>3]=+p[((a+64|0)+144|0)>>3];p[d+152>>3]=+p[((a+64|0)+152|0)>>3];f[(d+160|0)>>2]=f[y>>2];f[(d+160|0)+4>>2]=f[y+4>>2];f[(d+160|0)+8>>2]=f[y+8>>2];f[(d+160|0)+12>>2]=f[y+12>>2];f[(d+160|0)+16>>2]=f[y+16>>2];f[(d+160|0)+20>>2]=f[y+20>>2];p[(d+160|0)>>3]=+p[y>>3];p[d+168>>3]=+p[((a+64|0)+168|0)>>3];p[d+176>>3]=+p[((a+64|0)+176|0)>>3];f[(d+184|0)>>2]=f[((a+64|0)+184|0)>>2];f[(d+184|0)+4>>2]=f[((a+64|0)+184|0)+4>>2];f[(d+184|0)+8>>2]=f[((a+64|0)+184|0)+8>>2];f[(d+184|0)+12>>2]=f[((a+64|0)+184|0)+12>>2];f[(d+200|0)>>2]=f[z>>2];f[(d+200|0)+4>>2]=f[z+4>>2];f[(d+200|0)+8>>2]=f[z+8>>2];f[(d+200|0)+12>>2]=f[z+12>>2];p[(d+200|0)>>3]=+p[z>>3];p[d+208>>3]=+p[((a+64|0)+208|0)>>3];f[(d+216|0)>>2]=f[A>>2];f[(d+216|0)+4>>2]=f[A+4>>2];f[(d+216|0)+8>>2]=f[A+8>>2];f[(d+216|0)+12>>2]=f[A+12>>2];b[(d+216|0)+16>>0]=b[A+16>>0]|0;f[(c+40|0)>>2]=(f[(c+40|0)>>2]|0)+240}else e=1}if(e)if(1)BM(c+36|0,a+64|0);k=1}t=t+72|0;if((t|0)==(B|0)){r=k;f[a+3944>>2]=1;break a}else s=k}f[a+696>>2]=r;f[a+808>>2]=s;f[a+832>>2]=t;f[a+3784>>2]=C;f[a+3800>>2]=E;f[a+3808>>2]=F;f[a+3816>>2]=D}function _6a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0;z=f[a+656>>2]|0;s=f[a+704>>2]|0;u=f[a+944>>2]|0;c=f[a+3712>>2]|0;v=f[a+3744>>2]|0;A=f[a+3784>>2]|0;D=f[a+3808>>2]|0;B=f[a+3816>>2]|0;C=f[a+3864>>2]|0;if(C){C=0;if(c){rka(a+64|0,z+16|0);Rja(a+48|0,f[52808]|0);q=0;r=0;while(1){c=vka(a+64|0)|0;G=+n[c+4>>2];E=+n[c+8>>2];H=+n[c+12>>2];F=+n[c+16>>2];I=+n[c+20>>2];p[a>>3]=+n[c>>2];p[(a+8|0)>>3]=G;p[(a+16|0)>>3]=E;p[(a+24|0)>>3]=H;p[(a+32|0)>>3]=F;p[(a+40|0)>>3]=I;Sha(a+304|0,a,z+104|0);p[((a+496|0)+32|0)>>3]=-1.0;I=+p[(a+304|0)>>3];F=(+p[((a+304|0)+24|0)>>3]-I)*.5;H=+p[((a+304|0)+8|0)>>3];E=(+p[((a+304|0)+32|0)>>3]-H)*.5;G=+p[((a+304|0)+16|0)>>3];i=(+p[((a+304|0)+40|0)>>3]-G)*.5;p[(a+496|0)>>3]=I+F;p[((a+496|0)+8|0)>>3]=H+E;p[((a+496|0)+16|0)>>3]=G+i;p[((a+496|0)+24|0)>>3]=F*F+(E*E+i*i);c=1;if(c){c=0;if(!(+C3a(f[z>>2]|0,a+496|0)>=0.0))e=r;else c=1}if(c)if(1){nka(a+64|0,a+48|0);m=f[(a+48|0)>>2]|0;o=f[((a+48|0)+4|0)>>2]|0;c=1;if(c){c=0;if((m|0)==(o|0))d=0;else c=1}if(c)if(1){c=m;do{E=+p[c>>3];l=c+8|0;F=+p[l>>3];t=c+16|0;G=+p[t>>3];H=E*+p[(z+112|0)>>3]+F*+p[(z+144|0)>>3]+G*+p[(z+176|0)>>3]+ +p[(z+208|0)>>3];I=E*+p[(z+120|0)>>3]+F*+p[(z+152|0)>>3]+G*+p[(z+184|0)>>3]+ +p[(z+216|0)>>3];p[c>>3]=+p[(z+104|0)>>3]*E+ +p[(z+136|0)>>3]*F+ +p[(z+168|0)>>3]*G+ +p[(z+200|0)>>3];p[l>>3]=H;p[t>>3]=I;c=c+24|0}while((c|0)!=(o|0));c=0;l=m;do{x5a(a+496|0,f[z>>2]|0,l,(b[(z+362|0)>>0]|0)!=0);do if(b[(a+496|0)>>0]|0){d=f[(f[(z+8|0)>>2]|0)+108>>2]|0;if(d|0)if(!(p5a(f[z>>2]|0,d,(a+496|0)+16|0)|0))break;j=(((l-m|0)/24|0)>>>1)+q|0;k=Fka(f[(z+12|0)>>2]|0,j)|0;d=f[z>>2]|0;h=(f[(f[(f[(z+12|0)>>2]|0)+44>>2]|0)+80>>2]|0)+(k*12|0)+8|0;e=f[h>>2]&255;g=b[d>>0]|0;if(g&8)if(!((b[d+4>>0]&e)<<24>>24))break;if(g&4){t=b[d+3>>0]|0;if((t&e)<<24>>24!=t<<24>>24)break}if(g&2)if((b[d+2>>0]&e)<<24>>24)break;if(g&1){t=b[d+1>>0]|0;if((t&e)<<24>>24==t<<24>>24)break}c=f[(z+4|0)>>2]|0;d=f[(c+16|0)>>2]|0;if(d>>>0<(f[c+20>>2]|0)>>>0){Krb(d|0,0,208)|0;f[d+100>>2]=-1;b[d+200>>0]=0;f[(c+16|0)>>2]=(f[(c+16|0)>>2]|0)+208}else G4a(c+12|0);c=f[(f[(z+4|0)>>2]|0)+16>>2]|0;g=(f[(z+8|0)>>2]|0)+116|0;t=f[g+4>>2]|0;f[(c+-208|0)>>2]=f[g>>2];f[(c+-208|0)+4>>2]=t;p[(c+-144|0)>>3]=+p[((a+496|0)+16|0)>>3];p[c+-136>>3]=+p[((a+496|0)+24|0)>>3];p[c+-128>>3]=+p[((a+496|0)+32|0)>>3];f[(c+-188|0)>>2]=j;f[(c+-184|0)>>2]=k;f[c+-180>>2]=f[h>>2];p[c+-88>>3]=+p[l>>3];p[c+-80>>3]=+p[l+8>>3];p[c+-72>>3]=+p[l+16>>3];p[c+-64>>3]=+p[l+24>>3];p[c+-56>>3]=+p[l+32>>3];p[c+-48>>3]=+p[l+40>>3];nXa(a+304|0,f[(f[z>>2]|0)+56>>2]|0,c+-144|0);H=+p[(a+304|0)>>3];p[(a+304|0)>>3]=+p[(c+-40|0)>>3];p[(c+-40|0)>>3]=H;p[(c+-32|0)>>3]=+p[((a+304|0)+8|0)>>3];t=f[(f[z>>2]|0)+56>>2]|0;H=+p[(c+-40|0)>>3]-+p[t+24>>3];I=+p[(c+-32|0)>>3]-+p[t+32>>3];p[c+-24>>3]=H*H+I*I;p[c+-16>>3]=+p[((a+496|0)+8|0)>>3];t=(b[(z+361|0)>>0]|0)==0;f[(c+-188|0)>>2]=t?j:-1;f[(c+-184|0)>>2]=t?k:-1;c=1}while(0);l=l+48|0}while((l|0)!=(o|0));d=c}e=r|d}if(!(tka(a+64|0)|0))break;uka(a+64|0);q=q+512|0;r=e}c=f[(a+48|0)+12>>2]|0;if(c|0)Wja(c,a+48|0);c=f[(a+48|0)>>2]|0;if(c|0){d=f[((a+48|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+48|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}t=s|e}else C=1}if(C){C=0;if(1)t=s;else C=1}s=1;if(s){s=0;if(v){ska(a+64|0,z+16|0);Rja(a+48|0,f[52808]|0);q=0;r=0;while(1){c=vka(a+64|0)|0;F=+n[c+4>>2];H=+n[c+8>>2];E=+n[c+12>>2];G=+n[c+16>>2];i=+n[c+20>>2];p[a>>3]=+n[c>>2];p[(a+8|0)>>3]=F;p[(a+16|0)>>3]=H;p[(a+24|0)>>3]=E;p[(a+32|0)>>3]=G;p[(a+40|0)>>3]=i;Sha(a+304|0,a,z+104|0);p[((a+496|0)+32|0)>>3]=-1.0;i=+p[(a+304|0)>>3];G=(+p[((a+304|0)+24|0)>>3]-i)*.5;E=+p[((a+304|0)+8|0)>>3];H=(+p[((a+304|0)+32|0)>>3]-E)*.5;F=+p[((a+304|0)+16|0)>>3];I=(+p[((a+304|0)+40|0)>>3]-F)*.5;p[(a+496|0)>>3]=i+G;p[((a+496|0)+8|0)>>3]=E+H;p[((a+496|0)+16|0)>>3]=F+I;p[((a+496|0)+24|0)>>3]=G*G+(H*H+I*I);c=1;if(c){c=0;if(!(+C3a(f[z>>2]|0,a+496|0)>=0.0))x=r;else c=1}if(c)if(1){nka(a+64|0,a+48|0);m=f[(a+48|0)>>2]|0;o=f[((a+48|0)+4|0)>>2]|0;c=1;if(c){c=0;if((m|0)==(o|0))w=0;else c=1}if(c)if(1){c=m;do{E=+p[c>>3];w=c+8|0;F=+p[w>>3];x=c+16|0;G=+p[x>>3];H=E*+p[(z+112|0)>>3]+F*+p[(z+144|0)>>3]+G*+p[(z+176|0)>>3]+ +p[(z+208|0)>>3];I=E*+p[(z+120|0)>>3]+F*+p[(z+152|0)>>3]+G*+p[(z+184|0)>>3]+ +p[(z+216|0)>>3];p[c>>3]=+p[(z+104|0)>>3]*E+ +p[(z+136|0)>>3]*F+ +p[(z+168|0)>>3]*G+ +p[(z+200|0)>>3];p[w>>3]=H;p[x>>3]=I;c=c+24|0}while((c|0)!=(o|0));g=0;l=m;while(1){c=f[(f[(z+8|0)>>2]|0)+108>>2]|0;if(!c)B=161;else if(p5a(f[z>>2]|0,c,l)|0)B=161;else y=g;do if((B|0)==161){B=0;z5a(a+496|0,f[z>>2]|0,l,(b[(z+362|0)>>0]|0)!=0);i=+p[((a+496|0)+8|0)>>3];if(!(b[(a+496|0)>>0]|0))y=g;else{j=((l-m|0)/24|0)+q|0;k=Gka(f[(z+12|0)>>2]|0,j)|0;c=f[z>>2]|0;h=(f[(f[(f[(z+12|0)>>2]|0)+44>>2]|0)+92>>2]|0)+(k*12|0)+8|0;d=f[h>>2]&255;e=b[c>>0]|0;if(e&8)if(!((b[c+4>>0]&d)<<24>>24)){y=g;break}if(e&4){y=b[c+3>>0]|0;if((y&d)<<24>>24!=y<<24>>24){y=g;break}}if(e&2)if((b[c+2>>0]&d)<<24>>24){y=g;break}if(e&1){y=b[c+1>>0]|0;if((y&d)<<24>>24==y<<24>>24){y=g;break}}c=f[(z+4|0)>>2]|0;d=f[(c+28|0)>>2]|0;if(d>>>0<(f[c+32>>2]|0)>>>0){A=d;D=A+120|0;do{f[A>>2]=0;A=A+4|0}while((A|0)<(D|0));f[(c+28|0)>>2]=(f[(c+28|0)>>2]|0)+120}else H4a(c+24|0);y=f[(f[(z+4|0)>>2]|0)+28>>2]|0;w=(f[(z+8|0)>>2]|0)+116|0;x=f[w+4>>2]|0;f[(y+-120|0)>>2]=f[w>>2];f[(y+-120|0)+4>>2]=x;p[(y+-80|0)>>3]=+p[l>>3];p[y+-72>>3]=+p[l+8>>3];p[y+-64>>3]=+p[l+16>>3];f[(y+-100|0)>>2]=j;f[(y+-96|0)>>2]=k;f[y+-92>>2]=f[h>>2];nXa(a+496|0,f[(f[z>>2]|0)+56>>2]|0,y+-80|0);H=+p[(a+496|0)>>3];p[(a+496|0)>>3]=+p[(y+-40|0)>>3];p[(y+-40|0)>>3]=H;p[(y+-32|0)>>3]=+p[((a+496|0)+8|0)>>3];x=f[(f[z>>2]|0)+56>>2]|0;H=+p[(y+-40|0)>>3]-+p[x+24>>3];I=+p[(y+-32|0)>>3]-+p[x+32>>3];p[y+-24>>3]=H*H+I*I;p[y+-16>>3]=i;x=(b[(z+361|0)>>0]|0)==0;f[(y+-100|0)>>2]=x?j:-1;f[(y+-96|0)>>2]=x?k:-1;y=1}}while(0);l=l+24|0;if((l|0)==(o|0)){w=y;break}else g=y}}x=r|w}if(!(tka(a+64|0)|0))break;uka(a+64|0);q=q+512|0;r=x}c=f[(a+48|0)+12>>2]|0;if(c|0)Wja(c,a+48|0);c=f[(a+48|0)>>2]|0;if(c|0){d=f[((a+48|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+48|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}u=t|x}else s=1}if(s)if(1)u=t;f[a+944>>2]=u;f[a+3784>>2]=A;f[a+3808>>2]=D;f[a+3816>>2]=B;f[a+3864>>2]=C}function $6a(a){a=a|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;I=f[a+656>>2]|0;K=f[a+776>>2]|0;L=f[a+792>>2]|0;y=f[a+912>>2]|0;z=f[a+3224>>2]|0;A=f[a+3232>>2]|0;B=f[a+3240>>2]|0;D=f[a+3248>>2]|0;E=f[a+3256>>2]|0;F=f[a+3264>>2]|0;G=f[a+3272>>2]|0;N=f[a+3784>>2]|0;O=f[a+3800>>2]|0;P=f[a+3808>>2]|0;J=f[a+3816>>2]|0;while(1){w=vka(a+64|0)|0;e=+n[w>>2];j=+n[w+4>>2];k=+n[w+8>>2];l=+n[w+12>>2];m=+n[w+16>>2];o=+n[w+20>>2];p[a>>3]=e;p[(a+8|0)>>3]=j;p[(a+16|0)>>3]=k;p[(a+24|0)>>3]=l;p[(a+32|0)>>3]=m;p[(a+40|0)>>3]=o;do if(z){p[((a+496|0)+32|0)>>3]=-1.0;p[(a+496|0)>>3]=(l-e)*.5+e;p[((a+496|0)+8|0)>>3]=(m-j)*.5+j;p[((a+496|0)+16|0)>>3]=(o-k)*.5+k;p[((a+496|0)+24|0)>>3]=(l-e)*.5*((l-e)*.5)+((m-j)*.5*((m-j)*.5)+(o-k)*.5*((o-k)*.5));e=+pWa(f[(f[I>>2]|0)+60>>2]|0,a+496|0);if(!(e>=0.0)){h=K;break}if(!(e<+p[(I+368|0)>>3]))if(b[(f[I>>2]|0)+20>>0]|0){h=K;break}nka(a+64|0,a+48|0);d=f[(a+48|0)>>2]|0;g=f[((a+48|0)+4|0)>>2]|0;J=74}else{Sha(a+304|0,a,I+104|0);p[((a+496|0)+32|0)>>3]=-1.0;e=+p[(a+304|0)>>3];l=(+p[((a+304|0)+24|0)>>3]-e)*.5;j=+p[((a+304|0)+8|0)>>3];m=(+p[((a+304|0)+32|0)>>3]-j)*.5;k=+p[((a+304|0)+16|0)>>3];o=(+p[((a+304|0)+40|0)>>3]-k)*.5;p[(a+496|0)>>3]=e+l;p[((a+496|0)+8|0)>>3]=j+m;p[((a+496|0)+16|0)>>3]=k+o;p[((a+496|0)+24|0)>>3]=l*l+(m*m+o*o);if(!(+C3a(f[I>>2]|0,a+496|0)>=0.0))h=K;else{nka(a+64|0,a+48|0);d=f[(a+48|0)>>2]|0;g=f[((a+48|0)+4|0)>>2]|0;if((d|0)==(g|0))J=74;else{c=d;do{j=+p[c>>3];w=c+8|0;k=+p[w>>3];J=c+16|0;l=+p[J>>3];m=j*+p[(I+112|0)>>3]+k*+p[(I+144|0)>>3]+l*+p[(I+176|0)>>3]+ +p[(I+208|0)>>3];o=j*+p[(I+120|0)>>3]+k*+p[(I+152|0)>>3]+l*+p[(I+184|0)>>3]+ +p[(I+216|0)>>3];p[c>>3]=+p[(I+104|0)>>3]*j+ +p[(I+136|0)>>3]*k+ +p[(I+168|0)>>3]*l+ +p[(I+200|0)>>3];p[w>>3]=m;p[J>>3]=o;c=c+24|0}while((c|0)!=(g|0));J=74}}}while(0);if((J|0)==74){J=0;v=d;c=g-v|0;w=d+(((c|0)/24|0)*24|0)|0;h=1;if(h){h=0;if(!c)i=0;else h=1}if(h)if(1){q=0;u=d;while(1){c=f[I>>2]|0;if(!(b[c+20>>0]|0))e=C;else e=+p[(I+368|0)>>3];v5a(a+496|0,c,u,f[(I+504|0)>>2]|0,y,e,(b[(I+360|0)>>0]|0)!=0,(b[(I+362|0)>>0]|0)!=0);c=1;if(c){c=0;if(!(b[(a+496|0)>>0]|0))r=q;else c=1}if(c)if(1){e=+p[((a+496|0)+8|0)>>3];s=((((u-v|0)/24|0)>>>0)/3|0)+L|0;t=Eka(f[(I+12|0)>>2]|0,s)|0;c=f[I>>2]|0;r=(f[(f[(f[(I+12|0)>>2]|0)+44>>2]|0)+68>>2]|0)+(t*12|0)+8|0;h=f[r>>2]&255;i=b[c>>0]|0;if(!(i&8))J=80;else if(!((b[c+4>>0]&h)<<24>>24))x=q;else J=80;do if((J|0)==80){J=0;if(i&4){Q=b[c+3>>0]|0;if((Q&h)<<24>>24!=Q<<24>>24){x=q;break}}if(i&2)if((b[c+2>>0]&h)<<24>>24){x=q;break}if(i&1){Q=b[c+1>>0]|0;if((Q&h)<<24>>24==Q<<24>>24){x=q;break}}do if(b[(c+9|0)>>0]|0){if(!(b[c+20>>0]|0))break;b[(c+9|0)>>0]=0;c=f[(I+4|0)>>2]|0;h=f[c+36>>2]|0;i=f[(c+40|0)>>2]|0;if((i|0)==(h|0))break;f[(c+40|0)>>2]=i+(~(((i+-240-h|0)>>>0)/240|0)*240|0)}while(0);if(+p[(I+368|0)>>3]>e){do if(b[(f[I>>2]|0)+20>>0]|0){c=f[(I+4|0)>>2]|0;h=f[c>>2]|0;i=f[(c+4|0)>>2]|0;if((i|0)==(h|0))break;f[(c+4|0)>>2]=i+(~(((i+-192-h|0)>>>0)/192|0)*192|0)}while(0);p[(I+368|0)>>3]=e}h=(f[(I+8|0)>>2]|0)+116|0;c=f[h+4>>2]|0;f[(a+304|0)>>2]=f[h>>2];f[(a+304|0)+4>>2]=c;f[((a+304|0)+28|0)>>2]=f[r>>2];p[((a+304|0)+112|0)>>3]=+p[u>>3];p[((a+304|0)+120|0)>>3]=+p[u+8>>3];p[((a+304|0)+128|0)>>3]=+p[u+16>>3];p[((a+304|0)+136|0)>>3]=+p[u+24>>3];p[((a+304|0)+144|0)>>3]=+p[u+32>>3];p[((a+304|0)+152|0)>>3]=+p[u+40>>3];p[((a+304|0)+160|0)>>3]=+p[u+48>>3];p[((a+304|0)+168|0)>>3]=+p[u+56>>3];p[((a+304|0)+176|0)>>3]=+p[u+64>>3];c=(b[(I+361|0)>>0]|0)==0;f[((a+304|0)+20|0)>>2]=c?s:-1;f[((a+304|0)+24|0)>>2]=c?t:-1;f[((a+304|0)+184|0)>>2]=y;b[((a+304|0)+188|0)>>0]=b[(I+360|0)>>0]|0;b[((a+304|0)+189|0)>>0]=b[(I+362|0)>>0]|0;b[((a+304|0)+190|0)>>0]=A;c=f[(I+4|0)>>2]|0;h=f[(c+4|0)>>2]|0;i=1;if(i)if(h>>>0<(f[c+8>>2]|0)>>>0){N=h;O=a+304|0;P=N+36|0;do{f[N>>2]=f[O>>2];N=N+4|0;O=O+4|0}while((N|0)<(P|0));f[(h+40|0)>>2]=f[B>>2];f[(h+40|0)+4>>2]=f[B+4>>2];f[(h+40|0)+8>>2]=f[B+8>>2];f[(h+40|0)+12>>2]=f[B+12>>2];f[(h+40|0)+16>>2]=f[B+16>>2];f[(h+40|0)+20>>2]=f[B+20>>2];p[(h+40|0)>>3]=+p[B>>3];p[h+48>>3]=+p[((a+304|0)+48|0)>>3];p[h+56>>3]=+p[((a+304|0)+56|0)>>3];f[(h+64|0)>>2]=f[D>>2];f[(h+64|0)+4>>2]=f[D+4>>2];f[(h+64|0)+8>>2]=f[D+8>>2];f[(h+64|0)+12>>2]=f[D+12>>2];f[(h+64|0)+16>>2]=f[D+16>>2];f[(h+64|0)+20>>2]=f[D+20>>2];p[(h+64|0)>>3]=+p[D>>3];p[h+72>>3]=+p[((a+304|0)+72|0)>>3];p[h+80>>3]=+p[((a+304|0)+80|0)>>3];f[(h+88|0)>>2]=f[((a+304|0)+88|0)>>2];f[(h+88|0)+4>>2]=f[((a+304|0)+88|0)+4>>2];f[(h+88|0)+8>>2]=f[((a+304|0)+88|0)+8>>2];f[(h+88|0)>>2]=f[((a+304|0)+88|0)>>2];f[h+92>>2]=f[((a+304|0)+92|0)>>2];f[h+96>>2]=f[((a+304|0)+96|0)>>2];f[(h+100|0)>>2]=f[((a+304|0)+100|0)>>2];f[(h+100|0)+4>>2]=f[((a+304|0)+100|0)+4>>2];f[(h+100|0)+8>>2]=f[((a+304|0)+100|0)+8>>2];f[(h+100|0)>>2]=f[((a+304|0)+100|0)>>2];f[h+104>>2]=f[((a+304|0)+104|0)>>2];f[h+108>>2]=f[((a+304|0)+108|0)>>2];f[(h+112|0)>>2]=f[E>>2];f[(h+112|0)+4>>2]=f[E+4>>2];f[(h+112|0)+8>>2]=f[E+8>>2];f[(h+112|0)+12>>2]=f[E+12>>2];f[(h+112|0)+16>>2]=f[E+16>>2];f[(h+112|0)+20>>2]=f[E+20>>2];p[(h+112|0)>>3]=+p[E>>3];p[h+120>>3]=+p[((a+304|0)+120|0)>>3];p[h+128>>3]=+p[((a+304|0)+128|0)>>3];f[(h+136|0)>>2]=f[F>>2];f[(h+136|0)+4>>2]=f[F+4>>2];f[(h+136|0)+8>>2]=f[F+8>>2];f[(h+136|0)+12>>2]=f[F+12>>2];f[(h+136|0)+16>>2]=f[F+16>>2];f[(h+136|0)+20>>2]=f[F+20>>2];p[(h+136|0)>>3]=+p[F>>3];p[h+144>>3]=+p[((a+304|0)+144|0)>>3];p[h+152>>3]=+p[((a+304|0)+152|0)>>3];f[(h+160|0)>>2]=f[G>>2];f[(h+160|0)+4>>2]=f[G+4>>2];f[(h+160|0)+8>>2]=f[G+8>>2];f[(h+160|0)+12>>2]=f[G+12>>2];f[(h+160|0)+16>>2]=f[G+16>>2];f[(h+160|0)+20>>2]=f[G+20>>2];p[(h+160|0)>>3]=+p[G>>3];p[h+168>>3]=+p[((a+304|0)+168|0)>>3];p[h+176>>3]=+p[((a+304|0)+176|0)>>3];x=f[((a+304|0)+184|0)+4>>2]|0;f[(h+184|0)>>2]=f[((a+304|0)+184|0)>>2];f[(h+184|0)+4>>2]=x;f[(c+4|0)>>2]=(f[(c+4|0)>>2]|0)+192;x=1;break}else i=1;if(i)if(1){SL(c,a+304|0);x=1;break}}while(0);r=x}u=u+72|0;if((u|0)==(w|0)){i=r;break}else q=r}}if(K|i){H=f[I>>2]|0;if(!(b[H+96>>0]|0))h=1;else if(+p[(I+368|0)>>3]<+p[H+88>>3]){J=103;break}else h=1}else h=0}if(!(tka(a+64|0)|0)){M=h;break}uka(a+64|0);K=h;L=L+512|0}if((J|0)==103){F2a(H+168|0);M=1}if(z){c=f[I>>2]|0;if(M){m=+p[c+112>>3];o=+p[(I+368|0)>>3]*(1.0/+p[I+512>>3]);p[(I+368|0)>>3]=m<o?m:o}c=f[c+60>>2]|0;p[c>>3]=+p[c+72>>3];p[c+8>>3]=+p[c+80>>3];p[c+16>>3]=+p[c+88>>3];p[c+24>>3]=+p[c+96>>3];p[c+32>>3]=+p[c+104>>3];p[c+40>>3]=+p[c+112>>3];f[c+48>>2]=f[c+120>>2];f[c+52>>2]=f[c+124>>2];f[c+56>>2]=f[c+128>>2];f[c+60>>2]=f[c+132>>2];f[c+64>>2]=f[c+136>>2];f[c+68>>2]=f[c+140>>2];c=f[I>>2]|0;sXa(c+744|0,f[c+760>>2]|0,f[c+764>>2]|0);c=f[(f[I>>2]|0)+56>>2]|0;if(c|0){Q=f[c>>2]|0;p[Q+8>>3]=+p[Q+40>>3];p[Q+16>>3]=+p[Q+48>>3];p[Q+24>>3]=+p[Q+56>>3];p[Q+32>>3]=+p[Q+64>>3]}}if(M){Q=(f[I>>2]|0)+112|0;m=+p[Q>>3];o=+p[(I+368|0)>>3];o=m<o?m:o;p[(I+368|0)>>3]=o;p[Q>>3]=o}c=f[(a+48|0)+12>>2]|0;if(c|0)Wja(c,a+48|0);c=f[(a+48|0)>>2]|0;if(c|0){d=f[((a+48|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+48|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}Q=M;f[a+704>>2]=Q;f[a+776>>2]=K;f[a+792>>2]=L;f[a+3784>>2]=N;f[a+3800>>2]=O;f[a+3808>>2]=P;f[a+3816>>2]=J}function a7a(a){a=a|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,E=0,F=0,I=0,J=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0,aa=0,ba=0;z=f[a+656>>2]|0;v=+n[a+672>>2];m=f[a+3160>>2]|0;o=f[a+3712>>2]|0;q=f[a+3728>>2]|0;r=f[a+3744>>2]|0;J=f[a+3816>>2]|0;L=f[a+3824>>2]|0;a:{if(L){L=0;if(q){b[(z+360|0)>>0]=0;d=f[z>>2]|0;g=f[(d+56|0)>>2]|0;do if(g|0)if(v==0.0){PWa(a+496|0,f[d+48>>2]|0,f[f[g>>2]>>2]|0,f[(z+8|0)>>2]|0,0);t=f[f[(d+56|0)>>2]>>2]|0;e=+p[t+32>>3]+(+p[t+8>>3]*+p[(a+496|0)>>3]+(+p[t+16>>3]*+p[(a+496|0)+8>>3]+ +p[t+24>>3]*+p[(a+496|0)+16>>3]));b[(z+360|0)>>0]=(e<0.0?1:e*e<+p[(a+496|0)+24>>3])&1;break}else{b[(z+360|0)>>0]=0;break}while(0);do if(!(b[(z+361|0)>>0]|0)){g=f[z>>2]|0;d=f[g+56>>2]|0;if(!d)h=0;else h=f[f[d>>2]>>2]|0;d=f[(z+8|0)>>2]|0;t=fxa(f[g+48>>2]|0)|0;d=f[d+196>>2]|0;if((d&32|0)!=0|(d&2048|0)==0&(t^1))if((h|0)==0|(d&24|0)==0){J=37;break}Y=+p[(z+104|0)>>3];Q=+p[z+144>>3];S=+p[z+112>>3];X=+p[z+136>>3];M=+p[z+184>>3];U=+p[z+224>>3];T=+p[z+192>>3];O=+p[z+216>>3];W=+p[z+152>>3];V=+p[z+120>>3];_=+p[z+176>>3];Z=+p[z+208>>3];R=+p[z+160>>3];P=+p[z+128>>3];N=+p[z+168>>3];e=+p[z+200>>3];if(+K(+((V*R-W*P)*(Z*N-_*e)+((Y*Q-S*X)*(M*U-T*O)-(Y*W-X*V)*(U*_-T*Z)+(O*_-M*Z)*(Y*R-X*P)+(S*W-Q*V)*(U*N-T*e)-(S*R-Q*P)*(O*N-M*e))))>1.0e-12){Lga(z+104|0,z+232|0);j=z+232|0;i=f[z>>2]|0;J=43}else k=0}else J=37;while(0);b:do if((J|0)==37){g=f[z+100>>2]|0;d=f[z>>2]|0;do if((g|0)!=(f[(d+608|0)>>2]|0)){f[(d+608|0)>>2]=g;N=+p[(z+104|0)>>3];V=+p[z+144>>3];T=+p[z+112>>3];O=+p[z+136>>3];Z=+p[z+184>>3];R=+p[z+224>>3];S=+p[z+192>>3];X=+p[z+216>>3];P=+p[z+152>>3];Q=+p[z+120>>3];e=+p[z+176>>3];M=+p[z+208>>3];U=+p[z+160>>3];W=+p[z+128>>3];Y=+p[z+168>>3];_=+p[z+200>>3];t=+K(+((Q*U-P*W)*(M*Y-e*_)+((N*V-T*O)*(Z*R-S*X)-(N*P-O*Q)*(R*e-S*M)+(X*e-Z*M)*(N*U-O*W)+(T*P-V*Q)*(R*Y-S*_)-(T*U-V*W)*(X*Y-Z*_))))>1.0e-12;d=f[z>>2]|0;if(t){Lga(z+104|0,d+616|0);d=f[z>>2]|0;break}else{f[d+608>>2]=0;k=0;break b}}while(0);j=d+616|0;i=d;J=43}while(0);if((J|0)==43){d=f[i+60>>2]|0;p[d+72>>3]=+p[d>>3];p[d+80>>3]=+p[d+8>>3];p[d+88>>3]=+p[d+16>>3];p[d+96>>3]=+p[d+24>>3];p[d+104>>3]=+p[d+32>>3];p[d+112>>3]=+p[d+40>>3];f[d+120>>2]=f[d+48>>2];f[d+124>>2]=f[d+52>>2];f[d+128>>2]=f[d+56>>2];f[d+132>>2]=f[d+60>>2];f[d+136>>2]=f[d+64>>2];f[d+140>>2]=f[d+68>>2];SWa(a+496|0,f[(f[z>>2]|0)+60>>2]|0,j,z+512|0);V=+p[(a+496|0)>>3];W=+p[(a+496|0)+8>>3];X=+p[(a+496|0)+16>>3];Y=+p[(a+496|0)+24>>3];Z=+p[(a+496|0)+32>>3];_=+p[(a+496|0)+40>>3];d=f[(f[z>>2]|0)+60>>2]|0;p[d>>3]=V;p[d+8>>3]=W;p[d+16>>3]=X;p[d+24>>3]=Y;p[d+32>>3]=Z;p[d+40>>3]=_;n[d+48>>2]=V;n[d+52>>2]=W;n[d+56>>2]=X;n[d+60>>2]=Y;n[d+64>>2]=Z;n[d+68>>2]=_;p[(z+368|0)>>3]=+p[(z+512|0)>>3]*+p[(z+368|0)>>3];d=f[(f[z>>2]|0)+56>>2]|0;if(d|0){d=f[d>>2]|0;p[d+40>>3]=+p[(d+8|0)>>3];p[d+48>>3]=+p[(d+16|0)>>3];p[d+56>>3]=+p[(d+24|0)>>3];p[d+64>>3]=+p[(d+32|0)>>3];if(b[(z+360|0)>>0]|0){UWa(a+496|0,d+8|0,j,z+104|0);p[(d+8|0)>>3]=+p[(a+496|0)>>3];p[(d+16|0)>>3]=+p[(a+496|0)+8>>3];p[(d+24|0)>>3]=+p[(a+496|0)+16>>3];p[(d+32|0)>>3]=+p[(a+496|0)+24>>3]}}i=f[z>>2]|0;d=f[i+744>>2]|0;i=f[i+748>>2]|0;if((d|0)==(i|0))k=1;else{do{g=f[d>>2]|0;h=f[d+4>>2]|0;if((g|0)!=(h|0))do{UWa(a+496|0,g,j,z+104|0);p[g>>3]=+p[(a+496|0)>>3];p[g+8>>3]=+p[((a+496|0)+8|0)>>3];p[g+16>>3]=+p[((a+496|0)+16|0)>>3];p[g+24>>3]=+p[((a+496|0)+24|0)>>3];g=g+32|0}while((g|0)!=(h|0));d=d+12|0}while((d|0)!=(i|0));k=1}}d=f[z>>2]|0;g=f[d+56>>2]|0;if(g){if(k){f[(a+304|0)>>2]=(f[g>>2]|0)+72;f[(a+304|0)+4>>2]=z+104;Bga(a+496|0,a+304|0)|0;p[z+376>>3]=+p[(a+496|0)>>3];p[z+384>>3]=+p[(a+496|0)+8>>3];p[z+392>>3]=+p[(a+496|0)+16>>3];p[z+400>>3]=+p[(a+496|0)+24>>3];p[z+408>>3]=+p[(a+496|0)+32>>3];p[z+416>>3]=+p[(a+496|0)+40>>3];p[z+424>>3]=+p[(a+496|0)+48>>3];p[z+432>>3]=+p[(a+496|0)+56>>3];p[z+440>>3]=+p[(a+496|0)+64>>3];p[z+448>>3]=+p[(a+496|0)+72>>3];p[z+456>>3]=+p[(a+496|0)+80>>3];p[z+464>>3]=+p[(a+496|0)+88>>3];p[z+472>>3]=+p[(a+496|0)+96>>3];p[z+480>>3]=+p[(a+496|0)+104>>3];p[z+488>>3]=+p[(a+496|0)+112>>3];d=f[z>>2]|0;e=+p[(a+496|0)+120>>3]}else{t=f[g>>2]|0;p[z+376>>3]=+p[t+72>>3];p[z+384>>3]=+p[t+80>>3];p[z+392>>3]=+p[t+88>>3];p[z+400>>3]=+p[t+96>>3];p[z+408>>3]=+p[t+104>>3];p[z+416>>3]=+p[t+112>>3];p[z+424>>3]=+p[t+120>>3];p[z+432>>3]=+p[t+128>>3];p[z+440>>3]=+p[t+136>>3];p[z+448>>3]=+p[t+144>>3];p[z+456>>3]=+p[t+152>>3];p[z+464>>3]=+p[t+160>>3];p[z+472>>3]=+p[t+168>>3];p[z+480>>3]=+p[t+176>>3];p[z+488>>3]=+p[t+184>>3];e=+p[t+192>>3]}p[z+496>>3]=e;f[z+504>>2]=z+376}d=f[d+576>>2]|0;g=f[(f[(f[(z+12|0)>>2]|0)+44>>2]|0)+48>>2]|0;if(!(g&4)){if(g&1)d=dXa(d)|0;h=f[z+100>>2]|0;g=b[(h+120|0)>>0]|0;if(g&8){koa(h);g=b[(h+120|0)>>0]|0}if(g&1)d=dXa(d)|0}else d=0;qka(a+64|0,z+16|0);Rja(a+48|0,f[52808]|0);$=(k^1)&1;g=(a+304|0)+40|0;h=(a+304|0)+64|0;i=(a+304|0)+112|0;j=(a+304|0)+136|0;t=(a+304|0)+160|0;ba=0;aa=0;f[a+656>>2]=z;f[a+704>>2]=l;f[a+776>>2]=ba;f[a+792>>2]=aa;f[a+912>>2]=d;f[a+3224>>2]=k;f[a+3232>>2]=$;f[a+3240>>2]=g;f[a+3248>>2]=h;f[a+3256>>2]=i;f[a+3264>>2]=j;f[a+3272>>2]=t;f[a+3784>>2]=B;f[a+3800>>2]=E;f[a+3808>>2]=F;f[a+3816>>2]=J;f[a+3960>>2]=0;f[a+3964>>2]=0;$6a(a);l=f[a+704>>2]|0;B=f[a+3784>>2]|0;E=f[a+3800>>2]|0;F=f[a+3808>>2]|0;J=f[a+3816>>2]|0}else L=1}if(L){L=0;if(1)l=0;else L=1}d=1;if(d){d=0;if(m){ba=1;f[a+656>>2]=z;f[a+704>>2]=l;f[a+944>>2]=c;f[a+3712>>2]=o;f[a+3744>>2]=r;f[a+3784>>2]=B;f[a+3808>>2]=F;f[a+3816>>2]=J;f[a+3864>>2]=ba;f[a+3952>>2]=0;f[a+3956>>2]=0;_6a(a);c=f[a+944>>2]|0;B=f[a+3784>>2]|0;F=f[a+3808>>2]|0;J=f[a+3816>>2]|0}else d=1}if(d)if(1)c=l;if(c|q^1){u=a;f[a+3968>>2]=6;f[a+3972>>2]=c|0;break a}c=f[z>>2]|0;d=f[(c+56|0)>>2]|0;if(!d){c=0;u=a;f[a+3968>>2]=6;f[a+3972>>2]=c|0;break a}if(!(b[c+9>>0]|0)){c=0;u=a;f[a+3968>>2]=6;f[a+3972>>2]=c|0;break a}b[(z+360|0)>>0]=0;if(v==0.0){PWa(a+496|0,f[c+48>>2]|0,f[f[d>>2]>>2]|0,f[(z+8|0)>>2]|0,0);c=f[f[(c+56|0)>>2]>>2]|0;_=+p[c+32>>3]+(+p[c+8>>3]*+p[(a+496|0)>>3]+(+p[c+16>>3]*+p[(a+496|0)+8>>3]+ +p[c+24>>3]*+p[(a+496|0)+16>>3]));b[(z+360|0)>>0]=(_<0.0?1:_*_<+p[(a+496|0)+24>>3])&1;c=f[(f[z>>2]|0)+56>>2]|0;if(c|0){s=c;J=191}}else{b[(z+360|0)>>0]=0;s=d;J=191}if((J|0)==191){ba=f[s>>2]|0;p[(z+376|0)>>3]=+p[ba+72>>3];p[z+384>>3]=+p[ba+80>>3];p[z+392>>3]=+p[ba+88>>3];p[z+400>>3]=+p[ba+96>>3];p[z+408>>3]=+p[ba+104>>3];p[z+416>>3]=+p[ba+112>>3];p[z+424>>3]=+p[ba+120>>3];p[z+432>>3]=+p[ba+128>>3];p[z+440>>3]=+p[ba+136>>3];p[z+448>>3]=+p[ba+144>>3];p[z+456>>3]=+p[ba+152>>3];p[z+464>>3]=+p[ba+160>>3];p[z+472>>3]=+p[ba+168>>3];p[z+480>>3]=+p[ba+176>>3];p[z+488>>3]=+p[ba+184>>3];p[z+496>>3]=+p[ba+192>>3];f[z+504>>2]=z+376|0}ba=f[(f[(f[(z+12|0)>>2]|0)+44>>2]|0)+48>>2]|0;if(!(ba&4)){c=f[z+100>>2]|0;ba=b[(c+120|0)>>0]|0;if(ba&8)koa(c)}qka(a,z+16|0);Rja(a+624|0,f[52808]|0);l=(a+64|0)+40|0;m=(a+64|0)+64|0;o=(a+64|0)+112|0;q=(a+64|0)+136|0;r=(a+64|0)+160|0;s=(a+64|0)+200|0;t=(a+64|0)+216|0;j=0;k=0;while(1){c=vka(a)|0;X=+n[c+4>>2];Z=+n[c+8>>2];W=+n[c+12>>2];Y=+n[c+16>>2];V=+n[c+20>>2];p[(a+64|0)>>3]=+n[c>>2];p[((a+64|0)+8|0)>>3]=X;p[((a+64|0)+16|0)>>3]=Z;p[((a+64|0)+24|0)>>3]=W;p[((a+64|0)+32|0)>>3]=Y;p[((a+64|0)+40|0)>>3]=V;Sha(a+304|0,a+64|0,z+104|0);p[((a+496|0)+32|0)>>3]=-1.0;V=+p[(a+304|0)>>3];Y=(+p[((a+304|0)+24|0)>>3]-V)*.5;W=+p[((a+304|0)+8|0)>>3];Z=(+p[((a+304|0)+32|0)>>3]-W)*.5;X=+p[((a+304|0)+16|0)>>3];_=(+p[((a+304|0)+40|0)>>3]-X)*.5;p[(a+496|0)>>3]=V+Y;p[((a+496|0)+8|0)>>3]=W+Z;p[((a+496|0)+16|0)>>3]=X+_;p[((a+496|0)+24|0)>>3]=Y*Y+(Z*Z+_*_);c=1;if(c){c=0;if(!(+C3a(f[z>>2]|0,a+496|0)>=0.0))y=j;else c=1}if(c)if(1){nka(a,a+624|0);h=f[(a+624|0)>>2]|0;i=f[((a+624|0)+4|0)>>2]|0;if((h|0)!=(i|0)){c=h;do{W=+p[c>>3];aa=c+8|0;X=+p[aa>>3];ba=c+16|0;Y=+p[ba>>3];Z=W*+p[(z+112|0)>>3]+X*+p[(z+144|0)>>3]+Y*+p[(z+176|0)>>3]+ +p[(z+208|0)>>3];_=W*+p[(z+120|0)>>3]+X*+p[(z+152|0)>>3]+Y*+p[(z+184|0)>>3]+ +p[(z+216|0)>>3];p[c>>3]=+p[(z+104|0)>>3]*W+ +p[(z+136|0)>>3]*X+ +p[(z+168|0)>>3]*Y+ +p[(z+200|0)>>3];p[aa>>3]=Z;p[ba>>3]=_;c=c+24|0}while((c|0)!=(i|0))}c=f[(z+4|0)>>2]|0;g=1;if(g){g=0;if((f[c>>2]|0)==(f[c+4>>2]|0)){c=1;if(c){c=0;if((h|0)==(i|0))x=0;else c=1}if(c)if(1){c=0;d=h;while(1){aa=f[z>>2]|0;w5a(a+496|0,(f[f[aa+56>>2]>>2]|0)+328|0,d,f[aa+60>>2]|0);_=+p[(a+496|0)>>3];_=_<C?_:C;aa=f[z>>2]|0;w5a(a+496|0,(f[f[aa+56>>2]>>2]|0)+328|0,d+24|0,f[aa+60>>2]|0);Z=+p[(a+496|0)>>3];aa=f[z>>2]|0;w5a(a+496|0,(f[f[aa+56>>2]>>2]|0)+328|0,d+48|0,f[aa+60>>2]|0);aa=+p[(a+496|0)>>3]<(Z<_?Z:_);$=aa?2:Z<_&1;ba=((((d-h|0)/24|0)>>>0)/3|0)+k|0;f[a+656>>2]=z;f[a+696>>2]=x;f[a+808>>2]=c;f[a+832>>2]=d;f[a+936>>2]=$;f[a+2128>>2]=l;f[a+2136>>2]=m;f[a+2144>>2]=o;f[a+2152>>2]=q;f[a+2160>>2]=r;f[a+2168>>2]=s;f[a+2176>>2]=t;f[a+2312>>2]=i;f[a+2440>>2]=aa;f[a+2448>>2]=ba;f[a+3784>>2]=B;f[a+3800>>2]=E;f[a+3808>>2]=F;f[a+3816>>2]=J;f[a+3944>>2]=0;f[a+3948>>2]=0;Z6a(a);x=f[a+696>>2]|0;c=f[a+808>>2]|0;d=f[a+832>>2]|0;B=f[a+3784>>2]|0;E=f[a+3800>>2]|0;F=f[a+3808>>2]|0;J=f[a+3816>>2]|0;G=f[a+3944>>2]|0;D=f[a+3948>>2]|0;H=+n[a+3948>>2];f[a+3944>>2]=0;f[a+3948>>2]=0;if((G|0)==1)break}}w=(x&1)!=0}else g=1}if(g)if(1)w=0;if(j|w){A=f[z>>2]|0;if(!(b[A+96>>0]|0))y=1;else if(+p[(z+368|0)>>3]<+p[A+88>>3]){J=256;break}else y=1}else y=0}if(!(tka(a)|0)){J=259;break}uka(a);j=y;k=k+512|0}if((J|0)==256){F2a(A+168|0);J=260}else if((J|0)==259)if(y)J=260;else I=0;if((J|0)==260){I=(f[z>>2]|0)+112|0;Z=+p[I>>3];_=+p[(z+368|0)>>3];_=Z<_?Z:_;p[(z+368|0)>>3]=_;p[I>>3]=_;I=1}c=f[(a+624|0)+12>>2]|0;if(c|0)Wja(c,a+624|0);c=f[(a+624|0)>>2]|0;if(c|0){d=f[((a+624|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+624|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=I;u=a;f[a+3968>>2]=6;f[a+3972>>2]=c|0;break a}f[a+920>>2]=c;f[a+3816>>2]=J;f[a+3824>>2]=L}function b7a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;o=f[a+80>>2]|0;p=f[a+88>>2]|0;v=f[a+112>>2]|0;n=f[a+352>>2]|0;t=f[a+616>>2]|0;u=f[a+624>>2]|0;e=f[a+832>>2]|0;q=(a+48|0)+4|0;r=(a+32|0)+4|0;s=(a+16|0)+4|0;j=o;k=t;l=u;m=u+((p+3|0)>>>2)|0;while(1){do if(e>>>0>32)i=3;else{c=f[((a+48|0)+8|0)>>2]|0;d=f[((a+48|0)+12|0)>>2]|0;if(c>>>0>=(d+4|0)>>>0){i=c+(0-(e>>>3))|0;f[((a+48|0)+8|0)>>2]=i;e=e&7;f[q>>2]=e;f[(a+48|0)>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=0;break}if((c|0)==(d|0)){i=e>>>0<32?1:2;break}else{i=e>>>3;g=(c+(0-i)|0)>>>0<d>>>0?c-d|0:i;f[((a+48|0)+8|0)>>2]=c+(0-g)|0;e=e-(g<<3)|0;f[q>>2]=e;f[(a+48|0)>>2]=h[(c+(0-g)|0)>>0]|h[(c+(0-g)|0)+1>>0]<<8|h[(c+(0-g)|0)+2>>0]<<16|h[(c+(0-g)|0)+3>>0]<<24;i=(c+(0-i)|0)>>>0<d>>>0&1;break}}while(0);c=f[r>>2]|0;do if(c>>>0>32)c=3;else{d=f[((a+32|0)+8|0)>>2]|0;g=f[((a+32|0)+12|0)>>2]|0;if(d>>>0>=(g+4|0)>>>0){f[((a+32|0)+8|0)>>2]=d+(0-(c>>>3))|0;f[r>>2]=c&7;f[(a+32|0)>>2]=h[(d+(0-(c>>>3))|0)>>0]|h[(d+(0-(c>>>3))|0)+1>>0]<<8|h[(d+(0-(c>>>3))|0)+2>>0]<<16|h[(d+(0-(c>>>3))|0)+3>>0]<<24;c=0;break}if((d|0)==(g|0)){c=c>>>0<32?1:2;break}else{w=(d+(0-(c>>>3))|0)>>>0<g>>>0?d-g|0:c>>>3;f[((a+32|0)+8|0)>>2]=d+(0-w)|0;f[r>>2]=c-(w<<3);f[(a+32|0)>>2]=h[(d+(0-w)|0)>>0]|h[(d+(0-w)|0)+1>>0]<<8|h[(d+(0-w)|0)+2>>0]<<16|h[(d+(0-w)|0)+3>>0]<<24;c=(d+(0-(c>>>3))|0)>>>0<g>>>0&1;break}}while(0);i=c|i;c=f[s>>2]|0;do if(c>>>0>32)c=3;else{d=f[((a+16|0)+8|0)>>2]|0;g=f[((a+16|0)+12|0)>>2]|0;if(d>>>0>=(g+4|0)>>>0){f[((a+16|0)+8|0)>>2]=d+(0-(c>>>3))|0;f[s>>2]=c&7;f[(a+16|0)>>2]=h[(d+(0-(c>>>3))|0)>>0]|h[(d+(0-(c>>>3))|0)+1>>0]<<8|h[(d+(0-(c>>>3))|0)+2>>0]<<16|h[(d+(0-(c>>>3))|0)+3>>0]<<24;c=0;break}if((d|0)==(g|0)){c=c>>>0<32?1:2;break}else{w=(d+(0-(c>>>3))|0)>>>0<g>>>0?d-g|0:c>>>3;f[((a+16|0)+8|0)>>2]=d+(0-w)|0;f[s>>2]=c-(w<<3);f[(a+16|0)>>2]=h[(d+(0-w)|0)>>0]|h[(d+(0-w)|0)+1>>0]<<8|h[(d+(0-w)|0)+2>>0]<<16|h[(d+(0-w)|0)+3>>0]<<24;c=(d+(0-(c>>>3))|0)>>>0<g>>>0&1;break}}while(0);i=i|c;c=f[(a+4|0)>>2]|0;do if(c>>>0>32)c=3;else{d=f[(a+8|0)>>2]|0;g=f[(a+12|0)>>2]|0;if(d>>>0>=(g+4|0)>>>0){f[(a+8|0)>>2]=d+(0-(c>>>3))|0;f[(a+4|0)>>2]=c&7;f[a>>2]=h[(d+(0-(c>>>3))|0)>>0]|h[(d+(0-(c>>>3))|0)+1>>0]<<8|h[(d+(0-(c>>>3))|0)+2>>0]<<16|h[(d+(0-(c>>>3))|0)+3>>0]<<24;c=0;break}if((d|0)==(g|0)){c=c>>>0<32?1:2;break}else{w=(d+(0-(c>>>3))|0)>>>0<g>>>0?d-g|0:c>>>3;f[(a+8|0)>>2]=d+(0-w)|0;f[(a+4|0)>>2]=c-(w<<3);f[a>>2]=h[(d+(0-w)|0)>>0]|h[(d+(0-w)|0)+1>>0]<<8|h[(d+(0-w)|0)+2>>0]<<16|h[(d+(0-w)|0)+3>>0]<<24;c=(d+(0-(c>>>3))|0)>>>0<g>>>0&1;break}}while(0);if(!(m>>>0<((o+p|0)+-7|0)>>>0&(i|c|0)==0))break;w=f[(a+48|0)>>2]<<(e&31)>>>(0-n&31);i=b[(v+4|0)+(w<<1)>>0]|0;f[q>>2]=e+(h[(v+4|0)+(w<<1)+1>>0]|0);b[j>>0]=i;i=f[r>>2]|0;w=f[(a+32|0)>>2]<<(i&31)>>>(0-n&31);e=b[(v+4|0)+(w<<1)>>0]|0;f[r>>2]=i+(h[(v+4|0)+(w<<1)+1>>0]|0);b[k>>0]=e;e=f[s>>2]|0;w=f[(a+16|0)>>2]<<(e&31)>>>(0-n&31);i=b[(v+4|0)+(w<<1)>>0]|0;f[s>>2]=e+(h[(v+4|0)+(w<<1)+1>>0]|0);b[l>>0]=i;i=f[(a+4|0)>>2]|0;w=f[a>>2]<<(i&31)>>>(0-n&31);e=b[(v+4|0)+(w<<1)>>0]|0;f[(a+4|0)>>2]=i+(h[(v+4|0)+(w<<1)+1>>0]|0);b[m>>0]=e;e=f[q>>2]|0;w=f[(a+48|0)>>2]<<(e&31)>>>(0-n&31);i=b[(v+4|0)+(w<<1)>>0]|0;f[q>>2]=e+(h[(v+4|0)+(w<<1)+1>>0]|0);b[j+1>>0]=i;i=f[r>>2]|0;w=f[(a+32|0)>>2]<<(i&31)>>>(0-n&31);e=b[(v+4|0)+(w<<1)>>0]|0;f[r>>2]=i+(h[(v+4|0)+(w<<1)+1>>0]|0);b[k+1>>0]=e;e=f[s>>2]|0;w=f[(a+16|0)>>2]<<(e&31)>>>(0-n&31);i=b[(v+4|0)+(w<<1)>>0]|0;f[s>>2]=e+(h[(v+4|0)+(w<<1)+1>>0]|0);b[l+1>>0]=i;i=f[(a+4|0)>>2]|0;w=f[a>>2]<<(i&31)>>>(0-n&31);e=b[(v+4|0)+(w<<1)>>0]|0;f[(a+4|0)>>2]=i+(h[(v+4|0)+(w<<1)+1>>0]|0);b[m+1>>0]=e;j=j+2|0;k=k+2|0;l=l+2|0;m=m+2|0;e=f[q>>2]|0}if(l>>>0>(u+((p+3|0)>>>2)|0)>>>0|(k>>>0>u>>>0|j>>>0>t>>>0))c=-11;else{d5a(j,a+48|0,t,v+4|0,n&255);d5a(k,a+32|0,u,v+4|0,n&255);d5a(l,a+16|0,u+((p+3|0)>>>2)|0,v+4|0,n&255);d5a(m,a,o+p|0,v+4|0,n&255);c=((f[q>>2]|0)==32?(f[((a+48|0)+8|0)>>2]|0)==(f[((a+48|0)+12|0)>>2]|0):0)&((f[r>>2]|0)==32?(f[((a+32|0)+8|0)>>2]|0)==(f[((a+32|0)+12|0)>>2]|0):0)&((f[s>>2]|0)==32?(f[((a+16|0)+8|0)>>2]|0)==(f[((a+16|0)+12|0)>>2]|0):0)&((f[(a+4|0)>>2]|0)==32?(f[(a+8|0)>>2]|0)==(f[(a+12|0)>>2]|0):0)?p:-11}f[a+272>>2]=c}function c7a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=f[a+80>>2]|0;l=f[a+88>>2]|0;r=f[a+112>>2]|0;s=f[a+144>>2]|0;t=f[a+152>>2]|0;u=f[a+160>>2]|0;v=f[a+168>>2]|0;j=f[a+296>>2]|0;m=f[a+440>>2]|0;n=f[a+448>>2]|0;o=f[a+456>>2]|0;w=f[a+472>>2]|0;p=f[a+560>>2]|0;q=f[a+568>>2]|0;x=f[a+616>>2]|0;while(1){do if(w>>>0>32){g=3;i=w}else{c=f[((a+48|0)+8|0)>>2]|0;d=f[((a+48|0)+12|0)>>2]|0;if(c>>>0>=(d+4|0)>>>0){g=c+(0-(w>>>3))|0;f[((a+48|0)+8|0)>>2]=g;i=w&7;f[m>>2]=i;f[(a+48|0)>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;g=0;break}if((c|0)==(d|0)){g=w>>>0<32?1:2;i=w;break}else{g=w>>>3;e=(c+(0-g)|0)>>>0<d>>>0?c-d|0:g;f[((a+48|0)+8|0)>>2]=c+(0-e)|0;i=w-(e<<3)|0;f[m>>2]=i;f[(a+48|0)>>2]=h[(c+(0-e)|0)>>0]|h[(c+(0-e)|0)+1>>0]<<8|h[(c+(0-e)|0)+2>>0]<<16|h[(c+(0-e)|0)+3>>0]<<24;g=(c+(0-g)|0)>>>0<d>>>0&1;break}}while(0);c=f[n>>2]|0;do if(c>>>0>32)c=3;else{d=f[((a+32|0)+8|0)>>2]|0;e=f[((a+32|0)+12|0)>>2]|0;if(d>>>0>=(e+4|0)>>>0){f[((a+32|0)+8|0)>>2]=d+(0-(c>>>3))|0;f[n>>2]=c&7;f[(a+32|0)>>2]=h[(d+(0-(c>>>3))|0)>>0]|h[(d+(0-(c>>>3))|0)+1>>0]<<8|h[(d+(0-(c>>>3))|0)+2>>0]<<16|h[(d+(0-(c>>>3))|0)+3>>0]<<24;c=0;break}if((d|0)==(e|0)){c=c>>>0<32?1:2;break}else{y=(d+(0-(c>>>3))|0)>>>0<e>>>0?d-e|0:c>>>3;f[((a+32|0)+8|0)>>2]=d+(0-y)|0;f[n>>2]=c-(y<<3);f[(a+32|0)>>2]=h[(d+(0-y)|0)>>0]|h[(d+(0-y)|0)+1>>0]<<8|h[(d+(0-y)|0)+2>>0]<<16|h[(d+(0-y)|0)+3>>0]<<24;c=(d+(0-(c>>>3))|0)>>>0<e>>>0&1;break}}while(0);g=c|g;c=f[o>>2]|0;do if(c>>>0>32)c=3;else{d=f[((a+16|0)+8|0)>>2]|0;e=f[((a+16|0)+12|0)>>2]|0;if(d>>>0>=(e+4|0)>>>0){f[((a+16|0)+8|0)>>2]=d+(0-(c>>>3))|0;f[o>>2]=c&7;f[(a+16|0)>>2]=h[(d+(0-(c>>>3))|0)>>0]|h[(d+(0-(c>>>3))|0)+1>>0]<<8|h[(d+(0-(c>>>3))|0)+2>>0]<<16|h[(d+(0-(c>>>3))|0)+3>>0]<<24;c=0;break}if((d|0)==(e|0)){c=c>>>0<32?1:2;break}else{y=(d+(0-(c>>>3))|0)>>>0<e>>>0?d-e|0:c>>>3;f[((a+16|0)+8|0)>>2]=d+(0-y)|0;f[o>>2]=c-(y<<3);f[(a+16|0)>>2]=h[(d+(0-y)|0)>>0]|h[(d+(0-y)|0)+1>>0]<<8|h[(d+(0-y)|0)+2>>0]<<16|h[(d+(0-y)|0)+3>>0]<<24;c=(d+(0-(c>>>3))|0)>>>0<e>>>0&1;break}}while(0);e=g|c;do if(x>>>0>32)c=3;else{c=f[(a+8|0)>>2]|0;d=f[(a+12|0)>>2]|0;if(c>>>0>=(d+4|0)>>>0){c=c+(0-(x>>>3))|0;f[(a+8|0)>>2]=c;f[(a+4|0)>>2]=x&7;f[a>>2]=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;c=0;break}if((c|0)==(d|0)){c=x>>>0<32?1:2;break}else{y=x>>>3;g=(c+(0-y)|0)>>>0<d>>>0?c-d|0:y;f[(a+8|0)>>2]=c+(0-g)|0;f[(a+4|0)>>2]=x-(g<<3);f[a>>2]=h[(c+(0-g)|0)>>0]|h[(c+(0-g)|0)+1>>0]<<8|h[(c+(0-g)|0)+2>>0]<<16|h[(c+(0-g)|0)+3>>0]<<24;c=(c+(0-y)|0)>>>0<d>>>0&1;break}}while(0);if(!(v>>>0<((k+l|0)+-7|0)>>>0&(e|c|0)==0))break;g=f[(a+48|0)>>2]<<(i&31)>>>(0-j&31);i=h[((r+4|0)+(g<<2)|0)>>0]|h[((r+4|0)+(g<<2)|0)+1>>0]<<8;b[s>>0]=i;b[s+1>>0]=i>>8;f[m>>2]=(f[m>>2]|0)+(h[(r+4|0)+(g<<2)+2>>0]|0);g=s+(h[(r+4|0)+(g<<2)+3>>0]|0)|0;i=f[(a+32|0)>>2]<<(f[n>>2]&31)>>>(0-j&31);w=h[((r+4|0)+(i<<2)|0)>>0]|h[((r+4|0)+(i<<2)|0)+1>>0]<<8;b[t>>0]=w;b[t+1>>0]=w>>8;f[n>>2]=(f[n>>2]|0)+(h[(r+4|0)+(i<<2)+2>>0]|0);i=t+(h[(r+4|0)+(i<<2)+3>>0]|0)|0;w=f[(a+16|0)>>2]<<(f[o>>2]&31)>>>(0-j&31);y=h[((r+4|0)+(w<<2)|0)>>0]|h[((r+4|0)+(w<<2)|0)+1>>0]<<8;b[u>>0]=y;b[u+1>>0]=y>>8;f[o>>2]=(f[o>>2]|0)+(h[(r+4|0)+(w<<2)+2>>0]|0);w=u+(h[(r+4|0)+(w<<2)+3>>0]|0)|0;y=f[a>>2]<<(f[(a+4|0)>>2]&31)>>>(0-j&31);e=h[((r+4|0)+(y<<2)|0)>>0]|h[((r+4|0)+(y<<2)|0)+1>>0]<<8;b[v>>0]=e;b[v+1>>0]=e>>8;f[(a+4|0)>>2]=(f[(a+4|0)>>2]|0)+(h[(r+4|0)+(y<<2)+2>>0]|0);y=v+(h[(r+4|0)+(y<<2)+3>>0]|0)|0;e=f[(a+48|0)>>2]<<(f[m>>2]&31)>>>(0-j&31);x=h[((r+4|0)+(e<<2)|0)>>0]|h[((r+4|0)+(e<<2)|0)+1>>0]<<8;b[g>>0]=x;b[g+1>>0]=x>>8;f[m>>2]=(f[m>>2]|0)+(h[(r+4|0)+(e<<2)+2>>0]|0);e=g+(h[(r+4|0)+(e<<2)+3>>0]|0)|0;g=f[(a+32|0)>>2]<<(f[n>>2]&31)>>>(0-j&31);x=h[((r+4|0)+(g<<2)|0)>>0]|h[((r+4|0)+(g<<2)|0)+1>>0]<<8;b[i>>0]=x;b[i+1>>0]=x>>8;f[n>>2]=(f[n>>2]|0)+(h[(r+4|0)+(g<<2)+2>>0]|0);g=i+(h[(r+4|0)+(g<<2)+3>>0]|0)|0;i=f[(a+16|0)>>2]<<(f[o>>2]&31)>>>(0-j&31);x=h[((r+4|0)+(i<<2)|0)>>0]|h[((r+4|0)+(i<<2)|0)+1>>0]<<8;b[w>>0]=x;b[w+1>>0]=x>>8;f[o>>2]=(f[o>>2]|0)+(h[(r+4|0)+(i<<2)+2>>0]|0);i=w+(h[(r+4|0)+(i<<2)+3>>0]|0)|0;w=f[a>>2]<<(f[(a+4|0)>>2]&31)>>>(0-j&31);x=h[((r+4|0)+(w<<2)|0)>>0]|h[((r+4|0)+(w<<2)|0)+1>>0]<<8;b[y>>0]=x;b[y+1>>0]=x>>8;x=(f[(a+4|0)>>2]|0)+(h[(r+4|0)+(w<<2)+2>>0]|0)|0;f[(a+4|0)>>2]=x;s=e;t=g;u=i;v=y+(h[(r+4|0)+(w<<2)+3>>0]|0)|0;w=f[m>>2]|0}if(u>>>0>(q+((l+3|0)>>>2)|0)>>>0|(t>>>0>q>>>0|s>>>0>p>>>0))c=-11;else{h5a(s,a+48|0,p,r+4|0,j&255);h5a(t,a+32|0,q,r+4|0,j&255);h5a(u,a+16|0,q+((l+3|0)>>>2)|0,r+4|0,j&255);h5a(v,a,k+l|0,r+4|0,j&255);c=((f[m>>2]|0)==32?(f[((a+48|0)+8|0)>>2]|0)==(f[((a+48|0)+12|0)>>2]|0):0)&((f[n>>2]|0)==32?(f[((a+32|0)+8|0)>>2]|0)==(f[((a+32|0)+12|0)>>2]|0):0)&((f[o>>2]|0)==32?(f[((a+16|0)+8|0)>>2]|0)==(f[((a+16|0)+12|0)>>2]|0):0)&((f[(a+4|0)>>2]|0)==32?(f[(a+8|0)>>2]|0)==(f[(a+12|0)>>2]|0):0)?l:-11}f[a+144>>2]=s;f[a+152>>2]=t;f[a+160>>2]=u;f[a+168>>2]=v;f[a+272>>2]=c;f[a+472>>2]=w;f[a+616>>2]=x}function d7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;d=f[a+192>>2]|0;c=f[a+488>>2]|0;e=f[a+1680>>2]|0;a:{f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=195858;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+93>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=19;g=c;h=195877;i=g+19|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+19>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+94>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=195897;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+95>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=195924;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+96>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=195955;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+97>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=37;g=c;h=195986;i=g+37|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+37>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+98>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=196024;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+99>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=196042;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+100>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=35;g=c;h=196073;i=g+35|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+35>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+101>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=29;g=c;h=196109;i=g+29|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+29>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+102>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=24;g=c;h=196139;i=g+24|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+24>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+103>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=16;g=c;h=196164;i=g+16|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+16>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+104>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=21;g=c;h=196181;i=g+21|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+21>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+105>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=196203;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+106>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=196227;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+107>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=39;g=c;h=196254;i=g+39|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+39>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+108>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=196294;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+109>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=43;g=c;h=196318;i=g+43|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+43>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+110>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=24;g=c;h=196362;i=g+24|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+24>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+111>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=196387;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;c=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+112>>0]=c;if((b[(a+164|0)+11>>0]|0)>=0){e=f[e>>2]|0;k6a(a+152|0,e);u=a;f[a+2184>>2]=5;break a}Zpb(f[(a+164|0)>>2]|0);e=f[e>>2]|0;k6a(a+152|0,e);u=a;f[a+2184>>2]=5;break a}f[a+2144>>2]=g;f[a+2160>>2]=h;f[a+2168>>2]=i}function e7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;d=f[a+192>>2]|0;e=f[a+1680>>2]|0;i=f[a+2040>>2]|0;b[d+72>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=20;g=c;h=195375;i=g+20|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+20>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+73>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=195396;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+74>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=195415;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+75>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=27;g=c;h=195446;i=g+27|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+27>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+76>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=195474;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+77>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=29;g=c;h=195497;i=g+29|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+29>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+78>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=195527;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+79>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=195554;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+80>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=29;g=c;h=195577;i=g+29|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+29>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+81>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=195607;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+82>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=19;g=c;h=195633;i=g+19|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+19>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+83>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=195653;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+84>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=195672;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+85>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=195698;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+86>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=195724;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+87>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=16;g=c;h=195742;i=g+16|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+16>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+88>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=24;g=c;h=195759;i=g+24|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+24>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+89>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=195784;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+90>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=27;g=c;h=195803;i=g+27|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+27>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+91>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=195831;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;e=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+92>>0]=e;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);e=Wpb(32)|0;f[(a+164|0)>>2]=e;f[a+488>>2]=e;f[a+2144>>2]=g;f[a+2160>>2]=h;f[a+2168>>2]=i}function f7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;d=f[a+192>>2]|0;c=f[a+1664>>2]|0;e=f[a+1680>>2]|0;g=f[a+2144>>2]|0;h=f[a+2160>>2]|0;i=f[a+2168>>2]|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+52>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=194925;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+53>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=194949;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+54>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(16)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483632;f[(a+164|0)+4>>2]=11;g=c;h=194972;i=g+11|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+11>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+55>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=194984;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+56>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=195010;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+57>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=195041;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+58>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=27;g=c;h=195068;i=g+27|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+27>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+59>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=21;g=c;h=195096;i=g+21|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+21>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+60>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=31;g=c;h=195118;i=g+31|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+31>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+61>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=29;g=c;h=195150;i=g+29|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+29>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+62>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=195180;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+63>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=195198;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+64>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=19;g=c;h=195225;i=g+19|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+19>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+65>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=195245;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+66>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(16)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483632;f[(a+164|0)+4>>2]=12;g=c;h=195268;i=g+12|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+12>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+67>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);f[(a+164|0)>>2]=0;f[(a+164|0)+4>>2]=0;f[(a+164|0)+8>>2]=0;b[((a+164|0)+11|0)>>0]=9;g=a+164|0;h=195281;i=g+9|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[(a+164|0)+9>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+68>>0]=i;if((b[((a+164|0)+11|0)>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=29;g=c;h=195291;i=g+29|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+29>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+69>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=195321;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+70>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=16;g=c;h=195339;i=g+16|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+16>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+71>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=195356;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;e=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;f[a+2040>>2]=e;f[a+2144>>2]=g;f[a+2160>>2]=h;f[a+2168>>2]=i}function g7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;d=f[a+192>>2]|0;i=f[a+1280>>2]|0;e=f[a+1680>>2]|0;b[i+32>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+31>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=31;g=c;h=194398;i=g+31|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+31>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+32>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=33;g=c;h=194430;i=g+33|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+33>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+33>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=33;g=c;h=194464;i=g+33|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+33>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+34>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=194498;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+35>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=33;g=c;h=194521;i=g+33|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+33>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+36>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(16)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483632;f[(a+164|0)+4>>2]=11;g=c;h=194555;i=g+11|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+11>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+37>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=20;g=c;h=194567;i=g+20|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+20>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+38>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(16)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483632;f[(a+164|0)+4>>2]=14;g=c;h=194588;i=g+14|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+14>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+39>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(16)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483632;f[(a+164|0)+4>>2]=14;g=c;h=194603;i=g+14|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+14>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+40>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=194618;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+41>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=194644;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+42>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=194675;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+43>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=194693;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+44>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=27;g=c;h=194712;i=g+27|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+27>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+45>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=194740;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+46>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=194767;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+47>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=18;g=c;h=194790;i=g+18|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+18>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+48>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=194809;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+49>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=194833;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+50>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=34;g=c;h=194864;i=g+34|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+34>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+51>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);e=Wpb(32)|0;f[(a+164|0)>>2]=e;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=e;h=194899;i=g+25|0;f[a+1664>>2]=e;f[a+2144>>2]=g;f[a+2160>>2]=h;f[a+2168>>2]=i}function h7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;d=f[a+192>>2]|0;c=f[a+912>>2]|0;e=f[a+1680>>2]|0;g=f[a+2144>>2]|0;h=f[a+2160>>2]|0;i=f[a+2168>>2]|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+32>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+10>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=26;g=c;h=193866;i=g+26|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+26>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+11>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=32;g=c;h=193893;i=g+32|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+32>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+12>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=28;g=c;h=193926;i=g+28|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+28>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+13>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=193955;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+14>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=193978;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+15>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=21;g=c;h=194001;i=g+21|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+21>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+16>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=21;g=c;h=194023;i=g+21|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+21>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+17>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=27;g=c;h=194045;i=g+27|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+27>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+18>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=194073;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+19>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=194099;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+20>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=19;g=c;h=194117;i=g+19|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+19>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+21>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=194137;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+22>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=23;g=c;h=194168;i=g+23|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+23>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+23>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=17;g=c;h=194192;i=g+17|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+17>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+24>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=31;g=c;h=194210;i=g+31|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+31>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+25>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=30;g=c;h=194242;i=g+30|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+30>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+26>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=19;g=c;h=194273;i=g+19|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+19>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+27>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=194293;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+28>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=22;g=c;h=194316;i=g+22|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+22>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+29>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(32)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483616;f[(a+164|0)+4>>2]=25;g=c;h=194339;i=g+25|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));b[c+25>>0]=0;i=(j6a(a+152|0,a+164|0)|0)!=(e|0)&1;b[d+30>>0]=i;if((b[(a+164|0)+11>>0]|0)<0)Zpb(f[(a+164|0)>>2]|0);c=Wpb(48)|0;f[(a+164|0)>>2]=c;f[(a+164|0)+8>>2]=-2147483600;f[(a+164|0)+4>>2]=32;g=c;h=194365;i=g+32|0;do{b[g>>0]=b[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));f[a+1280>>2]=c;f[a+2144>>2]=g;f[a+2160>>2]=h;f[a+2168>>2]=i}
function mJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function nJ(a){a=a|0;Zpb(a);return}function oJ(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function pJ(a){a=a|0;return a+4|0}function qJ(a){a=a|0;var b=0,c=0;a=u;u=u+16|0;b=a;c=Wpb(1)|0;f[b>>2]=c;b=sd(3184,b|0)|0;ed(f[52656]|0);f[52656]=b;ed(0);u=a;return}function rJ(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215174;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215174)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215174,1540483477)|0)>>>24^(X(215174,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215174)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function sJ(a){a=a|0;Zpb(a);return}function tJ(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17148;f[b+4>>2]=f[a+4>>2];return b|0}function uJ(a,b){a=a|0;b=b|0;f[b>>2]=17148;f[b+4>>2]=f[a+4>>2];return}function vJ(a){a=a|0;return}function wJ(a){a=a|0;Zpb(a);return}function xJ(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function yJ(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==75563?a+4|0:0)|0}function zJ(a){a=a|0;return 3744}function AJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function BJ(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;DE(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function CJ(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215175;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215175)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215175,1540483477)|0)>>>24^(X(215175,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215175)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function DJ(a){a=a|0;Zpb(a);return}function EJ(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17192;f[b+4>>2]=f[a+4>>2];return b|0}function FJ(a,b){a=a|0;b=b|0;f[b>>2]=17192;f[b+4>>2]=f[a+4>>2];return}function GJ(a){a=a|0;return}function HJ(a){a=a|0;Zpb(a);return}function IJ(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function JJ(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==75813?a+4|0:0)|0}function KJ(a){a=a|0;return 3768}function LJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function MJ(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;EE(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function NJ(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215176;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215176)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215176,1540483477)|0)>>>24^(X(215176,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215176)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function OJ(a){a=a|0;Zpb(a);return}function PJ(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17236;f[b+4>>2]=f[a+4>>2];return b|0}function QJ(a,b){a=a|0;b=b|0;f[b>>2]=17236;f[b+4>>2]=f[a+4>>2];return}function RJ(a){a=a|0;return}function SJ(a){a=a|0;Zpb(a);return}function TJ(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function UJ(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==76064?a+4|0:0)|0}function VJ(a){a=a|0;return 3792}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function XJ(a){a=a|0;Zpb(a);return}function YJ(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function ZJ(a){a=a|0;return a+4|0}function _J(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(3848,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function $J(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215177;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215177)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215177,1540483477)|0)>>>24^(X(215177,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215177)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function aK(a){a=a|0;Zpb(a);return}function bK(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17304;f[b+4>>2]=f[a+4>>2];return b|0}function cK(a,b){a=a|0;b=b|0;f[b>>2]=17304;f[b+4>>2]=f[a+4>>2];return}function dK(a){a=a|0;return}function eK(a){a=a|0;Zpb(a);return}function fK(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function gK(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==76490?a+4|0:0)|0}function hK(a){a=a|0;return 3872}function iK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function jK(a){a=a|0;Zpb(a);return}function kK(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function lK(a){a=a|0;return a+4|0}function mK(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(3928,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function nK(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215178;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215178)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215178,1540483477)|0)>>>24^(X(215178,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215178)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function oK(a){a=a|0;Zpb(a);return}function pK(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17372;f[b+4>>2]=f[a+4>>2];return b|0}function qK(a,b){a=a|0;b=b|0;f[b>>2]=17372;f[b+4>>2]=f[a+4>>2];return}function rK(a){a=a|0;return}function sK(a){a=a|0;Zpb(a);return}function tK(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function uK(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==76925?a+4|0:0)|0}function vK(a){a=a|0;return 3952}function wK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function xK(a){a=a|0;Zpb(a);return}function yK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((d-c|0)<16){c=0;return c|0}a=a+8|0;d=c;e=a+16|0;do{b[a>>0]=b[d>>0]|0;a=a+1|0;d=d+1|0}while((a|0)<(e|0));c=c+16|0;return c|0}function zK(a){a=a|0;return a+8|0}function AK(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(16)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];f[c>>2]=d;a=sd(4008,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function BK(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215179;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215179)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215179,1540483477)|0)>>>24^(X(215179,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215179)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function CK(a){a=a|0;Zpb(a);return}function DK(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17440;f[b+4>>2]=f[a+4>>2];return b|0}function EK(a,b){a=a|0;b=b|0;f[b>>2]=17440;f[b+4>>2]=f[a+4>>2];return}function FK(a){a=a|0;return}function GK(a){a=a|0;Zpb(a);return}function HK(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function IK(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==77331?a+4|0:0)|0}function JK(a){a=a|0;return 4032}function KK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function LK(a){a=a|0;Zpb(a);return}function MK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((d-c|0)<8){d=0;return d|0}e=c;f=e;f=h[f>>0]|h[f+1>>0]<<8|h[f+2>>0]<<16|h[f+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;d=a+4|0;a=d;b[a>>0]=f;b[a+1>>0]=f>>8;b[a+2>>0]=f>>16;b[a+3>>0]=f>>24;d=d+4|0;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;d=c+8|0;return d|0}function NK(a){a=a|0;return a+4|0}function OK(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=u;u=u+16|0;c=b;d=Wpb(8)|0;g=a;e=f[g+4>>2]|0;a=d;f[a>>2]=f[g>>2];f[a+4>>2]=e;f[c>>2]=d;a=sd(4088,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function PK(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215180;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215180)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215180,1540483477)|0)>>>24^(X(215180,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215180)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function QK(a){a=a|0;Zpb(a);return}function RK(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17508;f[b+4>>2]=f[a+4>>2];return b|0}function SK(a,b){a=a|0;b=b|0;f[b>>2]=17508;f[b+4>>2]=f[a+4>>2];return}function TK(a){a=a|0;return}function UK(a){a=a|0;Zpb(a);return}function VK(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function WK(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==77737?a+4|0:0)|0}function XK(a){a=a|0;return 4112}function YK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function ZK(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(16)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];f[c>>2]=d;a=sd(400,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function _K(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215181;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215181)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215181,1540483477)|0)>>>24^(X(215181,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215181)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function $K(a){a=a|0;Zpb(a);return}function aL(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17552;f[b+4>>2]=f[a+4>>2];return b|0}function bL(a,b){a=a|0;b=b|0;f[b>>2]=17552;f[b+4>>2]=f[a+4>>2];return}function cL(a){a=a|0;return}function dL(a){a=a|0;Zpb(a);return}function eL(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function fL(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==77983?a+4|0:0)|0}function gL(a){a=a|0;return 4136}function hL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function iL(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(12)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[c>>2]=d;a=sd(2048,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function jL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215182;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215182)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215182,1540483477)|0)>>>24^(X(215182,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215182)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function kL(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;g=a+4|0;c=f[g>>2]|0;h=f[a>>2]|0;i=h+4|0;if((c|0)!=((f[i>>2]|0)-(f[h>>2]|0)>>2|0)){i=c;h=f[h>>2]|0;i=h+(i<<2)|0;i=f[i>>2]|0;u=j;return i|0}c=Wpb(944)|0;Krb(c|0,0,944)|0;f[c>>2]=17640;f[c+60>>2]=0;f[c+64>>2]=0;f[c+68>>2]=0;f[c+56>>2]=17688;f[c+72>>2]=17736;f[c+276>>2]=0;f[c+280>>2]=0;f[c+284>>2]=0;f[c+272>>2]=17808;f[c+384>>2]=0;f[c+388>>2]=0;f[c+392>>2]=0;f[c+396>>2]=-1;b[c+496>>0]=0;f[c+288>>2]=17856;f[c+508>>2]=0;f[c+512>>2]=0;f[c+516>>2]=0;f[c+504>>2]=15364;f[c+520>>2]=14484;f[c+540>>2]=0;f[c+544>>2]=0;f[c+548>>2]=0;f[c+536>>2]=17904;b[c+672>>0]=0;f[c+552>>2]=17952;f[c+684>>2]=0;f[c+688>>2]=0;f[c+692>>2]=0;f[c+680>>2]=17976;b[c+936>>0]=0;f[c+696>>2]=18024;f[e>>2]=c;d=f[i>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=c;f[i>>2]=d+4}else tL(h,e);h=f[a>>2]|0;i=f[g>>2]|0;h=f[h>>2]|0;i=h+(i<<2)|0;i=f[i>>2]|0;u=j;return i|0}function lL(a){a=a|0;Zpb(a);return}function mL(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=17596;f[b+4>>2]=f[a+4>>2];return b|0}function nL(a,b){a=a|0;b=b|0;f[b>>2]=17596;f[b+4>>2]=f[a+4>>2];return}function oL(a){a=a|0;return}function pL(a){a=a|0;Zpb(a);return}function qL(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function rL(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==78249?a+4|0:0)|0}function sL(a){a=a|0;return 4160}function tL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function uL(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=17640;f[a+680>>2]=18e3;b=f[a+684>>2]|0;if(b|0){c=a+688|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-240-b|0)>>>0)/240|0)*240|0);Zpb(b)}f[a+536>>2]=17928;b=f[a+540>>2]|0;if(b|0){c=a+544|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-120-b|0)>>>0)/120|0)*120|0);Zpb(b)}TL(a+272|0);f[a+56>>2]=17712;b=f[a+60>>2]|0;if(!b){f[a>>2]=17664;a=a+4|0;AL(a);return}c=a+64|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-192-b|0)>>>0)/192|0)*192|0);Zpb(b);f[a>>2]=17664;a=a+4|0;AL(a);return}function vL(a){a=a|0;uL(a);Zpb(a);return}function wL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+56|0;d=a+272|0;e=a+536|0;g=a+680|0;b=Qg[f[(f[h>>2]|0)+8>>2]&127](h,b,c)|0;if(!b){h=0;return h|0}b=Qg[f[(f[d>>2]|0)+8>>2]&127](d,b,c)|0;if(!b){h=0;return h|0}b=Qg[f[(f[e>>2]|0)+8>>2]&127](e,b,c)|0;if(!b){h=0;return h|0}b=Qg[f[(f[g>>2]|0)+8>>2]&127](g,b,c)|0;if(!b){h=0;return h|0}h=a+4|0;c=a+60|0;g=f[h>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=g;c=a+8|0;g=a+64|0;h=f[c>>2]|0;f[c>>2]=f[g>>2];f[g>>2]=h;g=a+12|0;h=a+68|0;c=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=c;h=a+16|0;c=a+276|0;g=f[h>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=g;c=a+20|0;g=a+280|0;h=f[c>>2]|0;f[c>>2]=f[g>>2];f[g>>2]=h;g=a+24|0;h=a+284|0;c=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=c;h=a+28|0;c=a+540|0;g=f[h>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=g;c=a+32|0;g=a+544|0;h=f[c>>2]|0;f[c>>2]=f[g>>2];f[g>>2]=h;g=a+36|0;h=a+548|0;c=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=c;h=a+40|0;c=a+684|0;g=f[h>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=g;c=a+44|0;g=a+688|0;h=f[c>>2]|0;f[c>>2]=f[g>>2];f[g>>2]=h;g=a+48|0;h=a+692|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;h=b;return h|0}function xL(a){a=a|0;return a+4|0}function yL(a){a=a|0;f[a>>2]=17664;AL(a+4|0);return}function zL(a){a=a|0;wf()}function AL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+36>>2]|0;if(b|0){c=a+40|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-240-b|0)>>>0)/240|0)*240|0);Zpb(b)}b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-120-b|0)>>>0)/120|0)*120|0);Zpb(b)}g=a+12|0;b=f[g>>2]|0;if(b|0){h=a+16|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-208|0;f[h>>2]=d;e=f[c+-120>>2]|0;if(!e)c=d;else{c=c+-116|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~(((d+-12-e|0)>>>0)/12|0)*12|0);Zpb(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}d=f[a>>2]|0;if(!d)return;b=a+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-192-d|0)>>>0)/192|0)*192|0);Zpb(d);return}function BL(a){a=a|0;var b=0,c=0;f[a>>2]=17712;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-192-c|0)>>>0)/192|0)*192|0);Zpb(c);return}function CL(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=17712;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-192-b|0)>>>0)/192|0)*192|0);Zpb(b);Zpb(a);return}function DL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;if((c-b|0)<4){L=0;return L|0}L=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;b=b+4|0;K=a+4|0;d=f[K>>2]|0;J=a+8|0;e=f[J>>2]|0;if((e|0)!=(d|0))f[J>>2]=e+(~(((e+-192-d|0)>>>0)/192|0)*192|0);QL(K,L);k=a+16|0;if(!L){L=b;return L|0}l=a+24|0;m=a+12|0;n=a+64|0;o=a+72|0;q=a+80|0;r=a+88|0;s=a+96|0;t=a+104|0;u=a+112|0;v=a+116|0;w=a+120|0;x=a+124|0;y=a+128|0;z=a+132|0;A=a+136|0;B=a+144|0;C=a+152|0;D=a+160|0;E=a+168|0;F=a+176|0;G=a+184|0;H=a+192|0;I=a+200|0;j=a+208|0;i=0;while(1){b=IL(k,b,c)|0;if(!b){b=0;d=11;break}d=f[J>>2]|0;if(d>>>0<(f[m>>2]|0)>>>0){e=d;a=l;g=e+36|0;do{f[e>>2]=f[a>>2];e=e+4|0;a=a+4|0}while((e|0)<(g|0));e=d+40|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[d+48>>3]=+p[o>>3];p[d+56>>3]=+p[q>>3];e=d+64|0;f[e>>2]=f[r>>2];f[e+4>>2]=f[r+4>>2];f[e+8>>2]=f[r+8>>2];f[e+12>>2]=f[r+12>>2];f[e+16>>2]=f[r+16>>2];f[e+20>>2]=f[r+20>>2];p[e>>3]=+p[r>>3];p[d+72>>3]=+p[s>>3];p[d+80>>3]=+p[t>>3];e=d+88|0;f[e>>2]=f[u>>2];f[e+4>>2]=f[u+4>>2];f[e+8>>2]=f[u+8>>2];f[e>>2]=f[u>>2];f[d+92>>2]=f[v>>2];f[d+96>>2]=f[w>>2];e=d+100|0;f[e>>2]=f[x>>2];f[e+4>>2]=f[x+4>>2];f[e+8>>2]=f[x+8>>2];f[e>>2]=f[x>>2];f[d+104>>2]=f[y>>2];f[d+108>>2]=f[z>>2];e=d+112|0;f[e>>2]=f[A>>2];f[e+4>>2]=f[A+4>>2];f[e+8>>2]=f[A+8>>2];f[e+12>>2]=f[A+12>>2];f[e+16>>2]=f[A+16>>2];f[e+20>>2]=f[A+20>>2];p[e>>3]=+p[A>>3];p[d+120>>3]=+p[B>>3];p[d+128>>3]=+p[C>>3];e=d+136|0;f[e>>2]=f[D>>2];f[e+4>>2]=f[D+4>>2];f[e+8>>2]=f[D+8>>2];f[e+12>>2]=f[D+12>>2];f[e+16>>2]=f[D+16>>2];f[e+20>>2]=f[D+20>>2];p[e>>3]=+p[D>>3];p[d+144>>3]=+p[E>>3];p[d+152>>3]=+p[F>>3];e=d+160|0;f[e>>2]=f[G>>2];f[e+4>>2]=f[G+4>>2];f[e+8>>2]=f[G+8>>2];f[e+12>>2]=f[G+12>>2];f[e+16>>2]=f[G+16>>2];f[e+20>>2]=f[G+20>>2];p[e>>3]=+p[G>>3];p[d+168>>3]=+p[H>>3];p[d+176>>3]=+p[I>>3];e=j;a=f[e+4>>2]|0;g=d+184|0;f[g>>2]=f[e>>2];f[g+4>>2]=a;f[J>>2]=(f[J>>2]|0)+192}else SL(K,l);i=i+1|0;if(i>>>0>=L>>>0){d=11;break}}if((d|0)==11)return b|0;return 0}function EL(a){a=a|0;return a+4|0}function FL(a){a=a|0;var b=0,c=0;f[a>>2]=17712;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-192-c|0)>>>0)/192|0)*192|0);Zpb(c);return}function GL(a){a=a|0;wf()}function HL(a){a=a|0;Zpb(a);return}function IL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0,S=0,T=0,U=0,V=0,W=0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0,ca=0,da=0.0,ea=0.0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=u;u=u+240|0;ja=ka+192|0;ia=ka;f[ia>>2]=17760;ba=LL(ia,b,c)|0;if(!ba){u=ka;return ba|0}b=a+8|0;ca=ia+8|0;fa=ja;ga=b;ha=fa+36|0;do{f[fa>>2]=f[ga>>2];fa=fa+4|0;ga=ga+4|0}while((fa|0)<(ha|0));c=a+48|0;d=a+56|0;e=a+64|0;da=+p[c>>3];ea=+p[d>>3];N=+p[e>>3];g=a+72|0;h=a+80|0;i=a+88|0;O=+p[g>>3];P=+p[h>>3];Q=+p[i>>3];j=a+96|0;k=a+100|0;l=a+104|0;R=f[j>>2]|0;S=f[k>>2]|0;T=f[l>>2]|0;m=a+108|0;o=a+112|0;r=a+116|0;U=f[m>>2]|0;V=f[o>>2]|0;W=f[r>>2]|0;t=a+120|0;w=a+128|0;y=a+136|0;X=+p[t>>3];Y=+p[w>>3];Z=+p[y>>3];A=a+144|0;C=a+152|0;E=a+160|0;_=+p[A>>3];$=+p[C>>3];aa=+p[E>>3];G=a+168|0;I=a+176|0;J=a+184|0;K=+p[G>>3];L=+p[I>>3];M=+p[J>>3];fa=b;ga=ca;ha=fa+36|0;do{f[fa>>2]=f[ga>>2];fa=fa+4|0;ga=ga+4|0}while((fa|0)<(ha|0));H=ia+48|0;p[c>>3]=+p[H>>3];F=ia+56|0;p[d>>3]=+p[F>>3];D=ia+64|0;p[e>>3]=+p[D>>3];B=ia+72|0;p[g>>3]=+p[B>>3];z=ia+80|0;p[h>>3]=+p[z>>3];x=ia+88|0;p[i>>3]=+p[x>>3];v=ia+96|0;f[j>>2]=f[v>>2];s=ia+100|0;f[k>>2]=f[s>>2];q=ia+104|0;f[l>>2]=f[q>>2];n=ia+108|0;f[m>>2]=f[n>>2];l=ia+112|0;f[o>>2]=f[l>>2];k=ia+116|0;f[r>>2]=f[k>>2];j=ia+120|0;p[t>>3]=+p[j>>3];i=ia+128|0;p[w>>3]=+p[i>>3];h=ia+136|0;p[y>>3]=+p[h>>3];g=ia+144|0;p[A>>3]=+p[g>>3];e=ia+152|0;p[C>>3]=+p[e>>3];d=ia+160|0;p[E>>3]=+p[d>>3];a=ia+168|0;p[G>>3]=+p[a>>3];c=ia+176|0;p[I>>3]=+p[c>>3];b=ia+184|0;p[J>>3]=+p[b>>3];fa=ca;ga=ja;ha=fa+36|0;do{f[fa>>2]=f[ga>>2];fa=fa+4|0;ga=ga+4|0}while((fa|0)<(ha|0));p[H>>3]=da;p[F>>3]=ea;p[D>>3]=N;p[B>>3]=O;p[z>>3]=P;p[x>>3]=Q;f[v>>2]=R;f[s>>2]=S;f[q>>2]=T;f[n>>2]=U;f[l>>2]=V;f[k>>2]=W;p[j>>3]=X;p[i>>3]=Y;p[h>>3]=Z;p[g>>3]=_;p[e>>3]=$;p[d>>3]=aa;p[a>>3]=K;p[c>>3]=L;p[b>>3]=M;u=ka;return ba|0}function JL(a){a=a|0;return a+8|0}function KL(a){a=a|0;Zpb(a);return}function LL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0,r=0,t=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0;B=u;u=u+80|0;A=B+40|0;t=B;f[t>>2]=17784;g=OL(t,c,d)|0;if(!g){A=0;u=B;return A|0}if((d-g|0)<24){A=0;u=B;return A|0}b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];b[s+4>>0]=b[g+4>>0];b[s+5>>0]=b[g+5>>0];b[s+6>>0]=b[g+6>>0];b[s+7>>0]=b[g+7>>0];x=+p[s>>3];c=g+8|0;b[s>>0]=b[c>>0];b[s+1>>0]=b[c+1>>0];b[s+2>>0]=b[c+2>>0];b[s+3>>0]=b[c+3>>0];b[s+4>>0]=b[c+4>>0];b[s+5>>0]=b[c+5>>0];b[s+6>>0]=b[c+6>>0];b[s+7>>0]=b[c+7>>0];y=+p[s>>3];c=g+16|0;b[s>>0]=b[c>>0];b[s+1>>0]=b[c+1>>0];b[s+2>>0]=b[c+2>>0];b[s+3>>0]=b[c+3>>0];b[s+4>>0]=b[c+4>>0];b[s+5>>0]=b[c+5>>0];b[s+6>>0]=b[c+6>>0];b[s+7>>0]=b[c+7>>0];z=+p[s>>3];c=g+24|0;if((d-c|0)<24){A=0;u=B;return A|0}e=g+48|0;if((d-e|0)<24){A=0;u=B;return A|0}r=g+40|0;b[s>>0]=b[r>>0];b[s+1>>0]=b[r+1>>0];b[s+2>>0]=b[r+2>>0];b[s+3>>0]=b[r+3>>0];b[s+4>>0]=b[r+4>>0];b[s+5>>0]=b[r+5>>0];b[s+6>>0]=b[r+6>>0];b[s+7>>0]=b[r+7>>0];w=+p[s>>3];r=g+32|0;b[s>>0]=b[r>>0];b[s+1>>0]=b[r+1>>0];b[s+2>>0]=b[r+2>>0];b[s+3>>0]=b[r+3>>0];b[s+4>>0]=b[r+4>>0];b[s+5>>0]=b[r+5>>0];b[s+6>>0]=b[r+6>>0];b[s+7>>0]=b[r+7>>0];v=+p[s>>3];b[s>>0]=b[c>>0];b[s+1>>0]=b[c+1>>0];b[s+2>>0]=b[c+2>>0];b[s+3>>0]=b[c+3>>0];b[s+4>>0]=b[c+4>>0];b[s+5>>0]=b[c+5>>0];b[s+6>>0]=b[c+6>>0];b[s+7>>0]=b[c+7>>0];o=+p[s>>3];r=g+72|0;n=g+68|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=g+64|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;l=g+60|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;q=g+56|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;k=g+52|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;i=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;j=a+8|0;c=t+4|0;d=A;e=j;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=j;e=c;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=c;e=A;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));p[a+48>>3]=x;p[a+56>>3]=y;p[a+64>>3]=z;p[a+72>>3]=o;p[a+80>>3]=v;p[a+88>>3]=w;f[a+96>>2]=i;f[a+100>>2]=k;f[a+104>>2]=q;f[a+108>>2]=l;f[a+112>>2]=m;f[a+116>>2]=n;A=r;u=B;return A|0}function ML(a){a=a|0;return a+8|0}function NL(a){a=a|0;Zpb(a);return}function OL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;if((c-b|0)<8){b=0;return b|0}m=b;n=m;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;d=b+8|0;if((c-d|0)<8){b=0;return b|0}l=d;k=l;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;d=b+16|0;if((c-d|0)<4){b=0;return b|0}j=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=b+20|0;if((c-d|0)<4){b=0;return b|0}i=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=b+24|0;if((c-d|0)<4){b=0;return b|0}d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=b+28|0;if((c-e|0)<4){b=0;return b|0}g=b+32|0;if((c-g|0)<4){b=0;return b|0}e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;c=a+4|0;f[c>>2]=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;f[c+4>>2]=m;n=a+12|0;f[n>>2]=k;f[n+4>>2]=l;f[a+20>>2]=j;f[a+24>>2]=i;f[a+28>>2]=d;f[a+32>>2]=e;f[a+36>>2]=g;b=b+36|0;return b|0}function PL(a){a=a|0;return a+4|0}function QL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;d=f[a>>2]|0;if((((f[a+8>>2]|0)-d|0)/192|0)>>>0>=b>>>0){u=h;return}c=f[a+4>>2]|0;f[g+12>>2]=0;f[g+16>>2]=a+8;if(b>>>0>22369621)ud();i=Wpb(b*192|0)|0;f[g>>2]=i;d=i+(((c-d|0)/192|0)*192|0)|0;e=g+8|0;f[e>>2]=d;c=g+4|0;f[c>>2]=d;f[g+12>>2]=i+(b*192|0);RL(a,g);c=f[c>>2]|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~(((d+-192-c|0)>>>0)/192|0)*192|0);c=f[g>>2]|0;if(c|0)Zpb(c);u=h;return}function RL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=f[a>>2]|0;k=a+4|0;c=f[k>>2]|0;l=b+4|0;if((c|0)==(j|0)){i=l;h=a;l=f[l>>2]|0;f[h>>2]=l;f[i>>2]=j;j=b+8|0;l=f[k>>2]|0;h=f[j>>2]|0;f[k>>2]=h;f[j>>2]=l;j=a+8|0;l=b+12|0;k=f[j>>2]|0;a=f[l>>2]|0;f[j>>2]=a;f[l>>2]=k;l=f[i>>2]|0;f[b>>2]=l;return}e=f[l>>2]|0;do{d=c;c=c+-192|0;g=e+-192|0;h=c;i=g+36|0;do{f[g>>2]=f[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));p[e+-152>>3]=+p[d+-152>>3];p[e+-144>>3]=+p[d+-144>>3];p[e+-136>>3]=+p[d+-136>>3];p[e+-128>>3]=+p[d+-128>>3];p[e+-120>>3]=+p[d+-120>>3];p[e+-112>>3]=+p[d+-112>>3];f[e+-104>>2]=f[d+-104>>2];f[e+-100>>2]=f[d+-100>>2];f[e+-96>>2]=f[d+-96>>2];f[e+-92>>2]=f[d+-92>>2];f[e+-88>>2]=f[d+-88>>2];f[e+-84>>2]=f[d+-84>>2];p[e+-80>>3]=+p[d+-80>>3];p[e+-72>>3]=+p[d+-72>>3];p[e+-64>>3]=+p[d+-64>>3];p[e+-56>>3]=+p[d+-56>>3];p[e+-48>>3]=+p[d+-48>>3];p[e+-40>>3]=+p[d+-40>>3];p[e+-32>>3]=+p[d+-32>>3];p[e+-24>>3]=+p[d+-24>>3];p[e+-16>>3]=+p[d+-16>>3];g=d+-8|0;h=f[g+4>>2]|0;i=e+-8|0;f[i>>2]=f[g>>2];f[i+4>>2]=h;e=(f[l>>2]|0)+-192|0;f[l>>2]=e}while((c|0)!=(j|0));i=a;h=e;j=f[a>>2]|0;f[i>>2]=h;f[l>>2]=j;j=b+8|0;i=f[k>>2]|0;h=f[j>>2]|0;f[k>>2]=h;f[j>>2]=i;a=a+8|0;k=b+12|0;j=f[a>>2]|0;i=f[k>>2]|0;f[a>>2]=i;f[k>>2]=j;l=f[l>>2]|0;f[b>>2]=l;return}function SL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l;c=f[a>>2]|0;j=((f[a+4>>2]|0)-c|0)/192|0;d=j+1|0;if(d>>>0>22369621)fob(a);i=((f[a+8>>2]|0)-c|0)/192|0;c=i<<1;c=i>>>0<11184810?(c>>>0<d>>>0?d:c):22369621;f[k+12>>2]=0;f[k+16>>2]=a+8;do if(!c)h=0;else if(c>>>0>22369621)ud();else{h=Wpb(c*192|0)|0;break}while(0);f[k>>2]=h;d=h+(j*192|0)|0;i=k+8|0;f[i>>2]=d;g=k+4|0;f[g>>2]=d;f[k+12>>2]=h+(c*192|0);c=d;d=b;e=c+36|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));d=h+(j*192|0)+40|0;c=b+40|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];p[d>>3]=+p[c>>3];p[h+(j*192|0)+48>>3]=+p[b+48>>3];p[h+(j*192|0)+56>>3]=+p[b+56>>3];d=h+(j*192|0)+64|0;c=b+64|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];p[d>>3]=+p[c>>3];p[h+(j*192|0)+72>>3]=+p[b+72>>3];p[h+(j*192|0)+80>>3]=+p[b+80>>3];d=h+(j*192|0)+88|0;c=b+88|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d>>2]=f[c>>2];f[h+(j*192|0)+92>>2]=f[b+92>>2];f[h+(j*192|0)+96>>2]=f[b+96>>2];d=h+(j*192|0)+100|0;c=b+100|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d>>2]=f[c>>2];f[h+(j*192|0)+104>>2]=f[b+104>>2];f[h+(j*192|0)+108>>2]=f[b+108>>2];d=h+(j*192|0)+112|0;c=b+112|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];p[d>>3]=+p[c>>3];p[h+(j*192|0)+120>>3]=+p[b+120>>3];p[h+(j*192|0)+128>>3]=+p[b+128>>3];d=h+(j*192|0)+136|0;c=b+136|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];p[d>>3]=+p[c>>3];p[h+(j*192|0)+144>>3]=+p[b+144>>3];p[h+(j*192|0)+152>>3]=+p[b+152>>3];d=h+(j*192|0)+160|0;c=b+160|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];p[d>>3]=+p[c>>3];p[h+(j*192|0)+168>>3]=+p[b+168>>3];p[h+(j*192|0)+176>>3]=+p[b+176>>3];b=b+184|0;d=f[b+4>>2]|0;c=h+(j*192|0)+184|0;f[c>>2]=f[b>>2];f[c+4>>2]=d;f[i>>2]=(f[i>>2]|0)+192;RL(a,k);c=f[g>>2]|0;d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~(((d+-192-c|0)>>>0)/192|0)*192|0);c=f[k>>2]|0;if(!c){u=l;return}Zpb(c);u=l;return}function TL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=17808;b=a+16|0;f[b>>2]=17856;f[a+232>>2]=15388;c=f[a+236>>2]|0;if(c|0){d=a+240|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);Zpb(c)}f[b>>2]=17880;b=f[a+112>>2]|0;if(b|0){c=a+116|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a>>2]=17832;g=a+4|0;b=f[g>>2]|0;if(!b)return;a=a+8|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{d=c+-208|0;f[a>>2]=d;e=f[c+-120>>2]|0;if(!e)c=d;else{c=c+-116|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~(((d+-12-e|0)>>>0)/12|0)*12|0);Zpb(e);c=f[a>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b);return}function UL(a){a=a|0;TL(a);Zpb(a);return}function VL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;if((d-c|0)<4){M=0;return M|0}M=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;c=c+4|0;L=a+4|0;j=f[L>>2]|0;K=a+8|0;e=f[K>>2]|0;if((e|0)!=(j|0))do{g=e+-208|0;f[K>>2]=g;i=f[e+-120>>2]|0;if(!i)e=g;else{e=e+-116|0;g=f[e>>2]|0;if((g|0)!=(i|0))f[e>>2]=g+(~(((g+-12-i|0)>>>0)/12|0)*12|0);Zpb(i);e=f[K>>2]|0}}while((e|0)!=(j|0));dM(L,M);l=a+16|0;if(!M){M=c;return M|0}m=a+24|0;n=a+12|0;o=a+60|0;q=a+64|0;r=a+68|0;s=a+72|0;t=a+76|0;u=a+80|0;v=a+88|0;w=a+96|0;x=a+104|0;y=a+112|0;z=a+116|0;A=a+120|0;B=a+124|0;C=a+144|0;D=a+152|0;E=a+160|0;F=a+168|0;G=a+176|0;H=a+184|0;I=a+192|0;J=a+200|0;k=a+208|0;a=0;while(1){c=$L(l,c,d)|0;if(!c){c=0;e=15;break}e=f[K>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){g=e;i=m;j=g+36|0;do{f[g>>2]=f[i>>2];g=g+4|0;i=i+4|0}while((g|0)<(j|0));i=e+36|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i>>2]=f[o>>2];f[e+40>>2]=f[q>>2];f[e+44>>2]=f[r>>2];i=e+48|0;f[i>>2]=f[s>>2];f[i+4>>2]=f[s+4>>2];f[i+8>>2]=f[s+8>>2];f[i>>2]=f[s>>2];f[e+52>>2]=f[t>>2];f[e+56>>2]=f[u>>2];i=e+64|0;f[i>>2]=f[v>>2];f[i+4>>2]=f[v+4>>2];f[i+8>>2]=f[v+8>>2];f[i+12>>2]=f[v+12>>2];f[i+16>>2]=f[v+16>>2];f[i+20>>2]=f[v+20>>2];p[i>>3]=+p[v>>3];p[e+72>>3]=+p[w>>3];p[e+80>>3]=+p[x>>3];i=e+88|0;f[i>>2]=0;j=e+92|0;f[j>>2]=0;f[e+96>>2]=0;f[i>>2]=f[y>>2];f[j>>2]=f[z>>2];f[e+96>>2]=f[A>>2];f[A>>2]=0;f[z>>2]=0;f[y>>2]=0;j=e+100|0;f[j>>2]=f[B>>2];f[j+4>>2]=f[B+4>>2];f[j+8>>2]=f[B+8>>2];f[j+12>>2]=f[B+12>>2];f[j+16>>2]=f[B+16>>2];j=e+120|0;f[j>>2]=f[C>>2];f[j+4>>2]=f[C+4>>2];f[j+8>>2]=f[C+8>>2];f[j+12>>2]=f[C+12>>2];f[j+16>>2]=f[C+16>>2];f[j+20>>2]=f[C+20>>2];p[j>>3]=+p[C>>3];p[e+128>>3]=+p[D>>3];p[e+136>>3]=+p[E>>3];j=e+144|0;f[j>>2]=f[F>>2];f[j+4>>2]=f[F+4>>2];f[j+8>>2]=f[F+8>>2];f[j+12>>2]=f[F+12>>2];f[j+16>>2]=f[F+16>>2];f[j+20>>2]=f[F+20>>2];p[j>>3]=+p[F>>3];p[e+152>>3]=+p[G>>3];p[e+160>>3]=+p[H>>3];j=e+168|0;f[j>>2]=f[I>>2];f[j+4>>2]=f[I+4>>2];f[j+8>>2]=f[I+8>>2];f[j+12>>2]=f[I+12>>2];p[j>>3]=+p[I>>3];p[e+176>>3]=+p[J>>3];j=e+184|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];b[j+16>>0]=b[k+16>>0]|0;f[K>>2]=(f[K>>2]|0)+208}else fM(L,m);a=a+1|0;if(a>>>0>=M>>>0){e=15;break}}if((e|0)==15)return c|0;return 0}function WL(a){a=a|0;return a+4|0}function XL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=17832;g=a+4|0;b=f[g>>2]|0;if(!b)return;e=a+8|0;a=f[e>>2]|0;if((a|0)!=(b|0)){c=a;while(1){a=c+-208|0;f[e>>2]=a;d=f[c+-120>>2]|0;if(d){a=c+-116|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);a=f[e>>2]|0}if((a|0)==(b|0))break;else c=a}b=f[g>>2]|0}Zpb(b);return}function YL(a){a=a|0;wf()}function ZL(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=17856;f[a+216>>2]=15388;b=f[a+220>>2]|0;if(b|0){c=a+224|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a>>2]=17880;d=f[a+96>>2]|0;if(!d)return;b=a+100|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);return}function _L(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=17856;f[a+216>>2]=15388;b=f[a+220>>2]|0;if(b|0){c=a+224|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}f[a>>2]=17880;b=f[a+96>>2]|0;if(!b){Zpb(a);return}c=a+100|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);Zpb(a);return}function $L(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;z=a+216|0;C=d;if((C-c|0)<8){C=0;return C|0}B=c;A=B;A=h[A>>0]|h[A+1>>0]<<8|h[A+2>>0]<<16|h[A+3>>0]<<24;B=B+4|0;B=h[B>>0]|h[B+1>>0]<<8|h[B+2>>0]<<16|h[B+3>>0]<<24;e=c+8|0;if((C-e|0)<8){C=0;return C|0}y=e;x=y;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;y=y+4|0;y=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;e=c+16|0;if((C-e|0)<4){C=0;return C|0}w=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+20|0;if((C-e|0)<4){C=0;return C|0}v=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+24|0;if((C-e|0)<4){C=0;return C|0}u=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+28|0;if((C-e|0)<4){C=0;return C|0}g=c+32|0;if((C-g|0)<4){C=0;return C|0}t=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+36|0;r=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;if((C-e|0)<24){C=0;return C|0}n=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;o=c+40|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;q=c+44|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;g=c+48|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;l=c+52|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;m=c+56|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=c+60|0;if((C-e|0)<24){C=0;return C|0}b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];i=+p[s>>3];e=c+68|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];j=+p[s>>3];e=c+76|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];k=+p[s>>3];e=Qg[f[(f[z>>2]|0)+8>>2]&127](z,c+84|0,d)|0;if(!e){C=0;return C|0}if((C-e|0)<4){C=0;return C|0}C=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;z=a+8|0;f[z>>2]=A;f[z+4>>2]=B;B=a+16|0;f[B>>2]=x;f[B+4>>2]=y;f[a+24>>2]=w;f[a+28>>2]=v;f[a+32>>2]=u;f[a+36>>2]=t;f[a+40>>2]=r;f[a+44>>2]=n;f[a+48>>2]=o;f[a+52>>2]=q;f[a+56>>2]=g;f[a+60>>2]=l;f[a+64>>2]=m;p[a+72>>3]=i;p[a+80>>3]=j;p[a+88>>3]=k;B=a+96|0;A=a+220|0;z=f[B>>2]|0;f[B>>2]=f[A>>2];f[A>>2]=z;A=a+100|0;z=a+224|0;B=f[A>>2]|0;f[A>>2]=f[z>>2];f[z>>2]=B;z=a+104|0;B=a+228|0;A=f[z>>2]|0;f[z>>2]=f[B>>2];f[B>>2]=A;f[a+108>>2]=C;C=e+4|0;return C|0}function aM(a){a=a|0;return a+8|0}function bM(a){a=a|0;var b=0,c=0;f[a>>2]=17880;c=f[a+96>>2]|0;if(!c)return;a=a+100|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function cM(a){a=a|0;wf()}function dM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[a>>2]|0;c=d;if((((f[k>>2]|0)-d|0)/208|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>20648881)ud();g=f[l>>2]|0;i=Wpb(b*208|0)|0;h=i+(((g-d|0)/208|0)*208|0)|0;j=h;i=i+(b*208|0)|0;d=g;if((d|0)==(c|0)){e=j;h=g}else{e=j;b=h;do{d=d+-208|0;eM(b+-208|0,d);b=e+-208|0;e=b}while((d|0)!=(c|0));h=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=i;g=h;if((c|0)!=(g|0))do{d=f[c+-120>>2]|0;if(d|0){b=c+-116|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~(((e+-12-d|0)>>>0)/12|0)*12|0);Zpb(d)}c=c+-208|0}while((c|0)!=(g|0));if(!h)return;Zpb(h);return}function eM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=a;e=c;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];p[a+64>>3]=+p[c+64>>3];p[a+72>>3]=+p[c+72>>3];p[a+80>>3]=+p[c+80>>3];e=a+88|0;g=c+88|0;f[e>>2]=0;j=a+92|0;f[j>>2]=0;f[a+96>>2]=0;i=c+92|0;d=(f[i>>2]|0)-(f[g>>2]|0)|0;h=(d|0)/12|0;if(d|0){if(h>>>0>357913941)fob(e);d=Wpb(d)|0;f[j>>2]=d;f[e>>2]=d;f[a+96>>2]=d+(h*12|0);e=f[g>>2]|0;g=f[i>>2]|0;if((e|0)!=(g|0)){do{f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];e=e+12|0;d=d+12|0}while((e|0)!=(g|0));f[j>>2]=d}}j=a+100|0;i=c+100|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];f[j+12>>2]=f[i+12>>2];f[j+16>>2]=f[i+16>>2];p[a+120>>3]=+p[c+120>>3];p[a+128>>3]=+p[c+128>>3];p[a+136>>3]=+p[c+136>>3];p[a+144>>3]=+p[c+144>>3];p[a+152>>3]=+p[c+152>>3];p[a+160>>3]=+p[c+160>>3];p[a+168>>3]=+p[c+168>>3];p[a+176>>3]=+p[c+176>>3];a=a+184|0;c=c+184|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];b[a+16>>0]=b[c+16>>0]|0;return}function fM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;d=f[a>>2]|0;k=((f[m>>2]|0)-d|0)/208|0;e=k+1|0;if(e>>>0>20648881)fob(a);n=a+8|0;l=((f[n>>2]|0)-d|0)/208|0;d=l<<1;d=l>>>0<10324440?(d>>>0<e>>>0?e:d):20648881;do if(!d)j=0;else if(d>>>0>20648881)ud();else{j=Wpb(d*208|0)|0;break}while(0);g=j+(k*208|0)|0;e=g;l=j+(d*208|0)|0;d=g;h=c;i=d+36|0;do{f[d>>2]=f[h>>2];d=d+4|0;h=h+4|0}while((d|0)<(i|0));i=j+(k*208|0)+36|0;h=c+36|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i>>2]=f[h>>2];f[j+(k*208|0)+40>>2]=f[c+40>>2];f[j+(k*208|0)+44>>2]=f[c+44>>2];i=j+(k*208|0)+48|0;h=c+48|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i>>2]=f[h>>2];f[j+(k*208|0)+52>>2]=f[c+52>>2];f[j+(k*208|0)+56>>2]=f[c+56>>2];i=j+(k*208|0)+64|0;h=c+64|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[i+16>>2]=f[h+16>>2];f[i+20>>2]=f[h+20>>2];p[i>>3]=+p[h>>3];p[j+(k*208|0)+72>>3]=+p[c+72>>3];p[j+(k*208|0)+80>>3]=+p[c+80>>3];i=c+88|0;f[j+(k*208|0)+96>>2]=0;f[j+(k*208|0)+88>>2]=f[i>>2];h=c+92|0;f[j+(k*208|0)+92>>2]=f[h>>2];d=c+96|0;f[j+(k*208|0)+96>>2]=f[d>>2];f[d>>2]=0;f[h>>2]=0;f[i>>2]=0;i=j+(k*208|0)+100|0;h=c+100|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[i+16>>2]=f[h+16>>2];i=j+(k*208|0)+120|0;h=c+120|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[i+16>>2]=f[h+16>>2];f[i+20>>2]=f[h+20>>2];p[i>>3]=+p[h>>3];p[j+(k*208|0)+128>>3]=+p[c+128>>3];p[j+(k*208|0)+136>>3]=+p[c+136>>3];i=j+(k*208|0)+144|0;h=c+144|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];f[i+16>>2]=f[h+16>>2];f[i+20>>2]=f[h+20>>2];p[i>>3]=+p[h>>3];p[j+(k*208|0)+152>>3]=+p[c+152>>3];p[j+(k*208|0)+160>>3]=+p[c+160>>3];i=j+(k*208|0)+168|0;h=c+168|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];p[i>>3]=+p[h>>3];p[j+(k*208|0)+176>>3]=+p[c+176>>3];i=j+(k*208|0)+184|0;h=c+184|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];b[i+16>>0]=b[h+16>>0]|0;i=g+208|0;h=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(h|0)){c=h;d=h}else{do{d=d+-208|0;eM(g+-208|0,d);g=e+-208|0;e=g}while((d|0)!=(h|0));c=f[a>>2]|0;d=f[m>>2]|0}f[a>>2]=e;f[m>>2]=i;f[n>>2]=l;i=c;if((d|0)!=(i|0))do{e=f[d+-120>>2]|0;if(e|0){g=d+-116|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~(((h+-12-e|0)>>>0)/12|0)*12|0);Zpb(e)}d=d+-208|0}while((d|0)!=(i|0));if(!c)return;Zpb(c);return}function gM(a){a=a|0;var b=0,c=0;f[a>>2]=17928;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-120-c|0)>>>0)/120|0)*120|0);Zpb(c);return}function hM(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=17928;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-120-b|0)>>>0)/120|0)*120|0);Zpb(b);Zpb(a);return}function iM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0.0,N=0.0,O=0,P=0;J=d;if((J-c|0)<4){K=0;return K|0}K=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;o=c+4|0;I=a+4|0;i=f[I>>2]|0;H=a+8|0;d=f[H>>2]|0;c=i;if((d|0)!=(i|0)){d=d+(~(((d+-120-c|0)>>>0)/120|0)*120|0)|0;f[H>>2]=d}e=d;G=a+12|0;if((((f[G>>2]|0)-c|0)/120|0)>>>0<K>>>0){if(K>>>0>35791394)ud();k=Wpb(K*120|0)|0;g=k+(((e-c|0)/120|0)*120|0)|0;j=g;k=k+(K*120|0)|0;if((d|0)==(i|0)){c=j;d=e}else{c=j;do{e=d;d=d+-120|0;l=g+-120|0;m=d;n=l+36|0;do{f[l>>2]=f[m>>2];l=l+4|0;m=m+4|0}while((l|0)<(n|0));p[g+-80>>3]=+p[e+-80>>3];p[g+-72>>3]=+p[e+-72>>3];p[g+-64>>3]=+p[e+-64>>3];F=g+-56|0;E=e+-56|0;f[F>>2]=f[E>>2];f[F+4>>2]=f[E+4>>2];f[F+8>>2]=f[E+8>>2];f[F+12>>2]=f[E+12>>2];p[g+-40>>3]=+p[e+-40>>3];p[g+-32>>3]=+p[e+-32>>3];F=g+-24|0;E=e+-24|0;f[F>>2]=f[E>>2];f[F+4>>2]=f[E+4>>2];f[F+8>>2]=f[E+8>>2];f[F+12>>2]=f[E+12>>2];b[F+16>>0]=b[E+16>>0]|0;g=c+-120|0;c=g}while((d|0)!=(i|0));d=f[I>>2]|0}f[I>>2]=c;f[H>>2]=j;f[G>>2]=k;if(d|0)Zpb(d)}if(!K){K=o;return K|0}t=a+24|0;u=a+32|0;v=a+40|0;x=a+44|0;y=a+48|0;z=a+52|0;B=a+56|0;r=a+64|0;w=a+72|0;A=a+80|0;C=a+64|0;D=a+88|0;E=a+104|0;F=a+112|0;q=a+120|0;m=o;a=0;while(1){if((J-m|0)<8){d=0;c=26;break}o=m;n=o;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;o=o+4|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;d=m+8|0;if((J-d|0)<8){d=0;c=26;break}l=d;k=l;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;d=m+16|0;if((J-d|0)<4){d=0;c=26;break}j=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=m+20|0;if((J-d|0)<4){d=0;c=26;break}i=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=m+24|0;if((J-d|0)<4){d=0;c=26;break}e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=m+28|0;if((J-d|0)<4){d=0;c=26;break}c=m+32|0;if((J-c|0)<4){d=0;c=26;break}g=m+36|0;if((J-g|0)<24){d=0;c=26;break}c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;O=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;d=m+60|0;P=m+52|0;b[s>>0]=b[P>>0];b[s+1>>0]=b[P+1>>0];b[s+2>>0]=b[P+2>>0];b[s+3>>0]=b[P+3>>0];b[s+4>>0]=b[P+4>>0];b[s+5>>0]=b[P+5>>0];b[s+6>>0]=b[P+6>>0];b[s+7>>0]=b[P+7>>0];L=+p[s>>3];m=m+44|0;b[s>>0]=b[m>>0];b[s+1>>0]=b[m+1>>0];b[s+2>>0]=b[m+2>>0];b[s+3>>0]=b[m+3>>0];b[s+4>>0]=b[m+4>>0];b[s+5>>0]=b[m+5>>0];b[s+6>>0]=b[m+6>>0];b[s+7>>0]=b[m+7>>0];M=+p[s>>3];b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];b[s+4>>0]=b[g+4>>0];b[s+5>>0]=b[g+5>>0];b[s+6>>0]=b[g+6>>0];b[s+7>>0]=b[g+7>>0];N=+p[s>>3];m=t;f[m>>2]=n;f[m+4>>2]=o;o=u;f[o>>2]=k;f[o+4>>2]=l;f[v>>2]=j;f[x>>2]=i;f[y>>2]=e;f[z>>2]=O;f[B>>2]=c;p[r>>3]=N;p[w>>3]=M;p[A>>3]=L;c=f[H>>2]|0;if(c>>>0<(f[G>>2]|0)>>>0){l=c;m=t;n=l+36|0;do{f[l>>2]=f[m>>2];l=l+4|0;m=m+4|0}while((l|0)<(n|0));P=c+40|0;f[P>>2]=f[C>>2];f[P+4>>2]=f[C+4>>2];f[P+8>>2]=f[C+8>>2];f[P+12>>2]=f[C+12>>2];f[P+16>>2]=f[C+16>>2];f[P+20>>2]=f[C+20>>2];p[P>>3]=+p[C>>3];p[c+48>>3]=+p[w>>3];p[c+56>>3]=+p[A>>3];P=c+64|0;f[P>>2]=f[D>>2];f[P+4>>2]=f[D+4>>2];f[P+8>>2]=f[D+8>>2];f[P+12>>2]=f[D+12>>2];P=c+80|0;f[P>>2]=f[E>>2];f[P+4>>2]=f[E+4>>2];f[P+8>>2]=f[E+8>>2];f[P+12>>2]=f[E+12>>2];p[P>>3]=+p[E>>3];p[c+88>>3]=+p[F>>3];P=c+96|0;f[P>>2]=f[q>>2];f[P+4>>2]=f[q+4>>2];f[P+8>>2]=f[q+8>>2];f[P+12>>2]=f[q+12>>2];b[P+16>>0]=b[q+16>>0]|0;f[H>>2]=(f[H>>2]|0)+120}else pM(I,t);a=a+1|0;if(a>>>0>=K>>>0){c=26;break}else m=d}if((c|0)==26)return d|0;return 0}function jM(a){a=a|0;return a+4|0}function kM(a){a=a|0;var b=0,c=0;f[a>>2]=17928;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-120-c|0)>>>0)/120|0)*120|0);Zpb(c);return}function lM(a){a=a|0;wf()}function mM(a){a=a|0;Zpb(a);return}function nM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,t=0.0,u=0.0;if((d-c|0)<8){c=0;return c|0}o=c;q=o;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;o=o+4|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;e=c+8|0;if((d-e|0)<8){c=0;return c|0}n=e;m=n;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;n=n+4|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;e=c+16|0;if((d-e|0)<4){c=0;return c|0}l=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+20|0;if((d-e|0)<4){c=0;return c|0}k=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+24|0;if((d-e|0)<4){c=0;return c|0}e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;g=c+28|0;if((d-g|0)<4){c=0;return c|0}i=c+32|0;if((d-i|0)<4){c=0;return c|0}j=c+36|0;if((d-j|0)<24){c=0;return c|0}i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=c+52|0;b[s>>0]=b[d>>0];b[s+1>>0]=b[d+1>>0];b[s+2>>0]=b[d+2>>0];b[s+3>>0]=b[d+3>>0];b[s+4>>0]=b[d+4>>0];b[s+5>>0]=b[d+5>>0];b[s+6>>0]=b[d+6>>0];b[s+7>>0]=b[d+7>>0];r=+p[s>>3];d=c+44|0;b[s>>0]=b[d>>0];b[s+1>>0]=b[d+1>>0];b[s+2>>0]=b[d+2>>0];b[s+3>>0]=b[d+3>>0];b[s+4>>0]=b[d+4>>0];b[s+5>>0]=b[d+5>>0];b[s+6>>0]=b[d+6>>0];b[s+7>>0]=b[d+7>>0];t=+p[s>>3];b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];b[s+4>>0]=b[j+4>>0];b[s+5>>0]=b[j+5>>0];b[s+6>>0]=b[j+6>>0];b[s+7>>0]=b[j+7>>0];u=+p[s>>3];j=a+8|0;f[j>>2]=q;f[j+4>>2]=o;q=a+16|0;f[q>>2]=m;f[q+4>>2]=n;f[a+24>>2]=l;f[a+28>>2]=k;f[a+32>>2]=e;f[a+36>>2]=g;f[a+40>>2]=i;p[a+48>>3]=u;p[a+56>>3]=t;p[a+64>>3]=r;c=c+60|0;return c|0}function oM(a){a=a|0;return a+8|0}function pM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0;s=a+4|0;d=f[s>>2]|0;e=f[a>>2]|0;j=(d-e|0)/120|0;g=j+1|0;q=e;h=d;if(g>>>0>35791394)fob(a);r=a+8|0;n=((f[r>>2]|0)-e|0)/120|0;o=n<<1;g=n>>>0<17895697?(o>>>0<g>>>0?g:o):35791394;do if(!g)i=0;else if(g>>>0>35791394)ud();else{i=Wpb(g*120|0)|0;break}while(0);k=i+(j*120|0)|0;e=k;o=i+(g*120|0)|0;l=k;m=c;n=l+36|0;do{f[l>>2]=f[m>>2];l=l+4|0;m=m+4|0}while((l|0)<(n|0));n=i+(j*120|0)+40|0;m=c+40|0;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];f[n+12>>2]=f[m+12>>2];f[n+16>>2]=f[m+16>>2];f[n+20>>2]=f[m+20>>2];p[n>>3]=+p[m>>3];p[i+(j*120|0)+48>>3]=+p[c+48>>3];p[i+(j*120|0)+56>>3]=+p[c+56>>3];n=i+(j*120|0)+64|0;m=c+64|0;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];f[n+12>>2]=f[m+12>>2];n=i+(j*120|0)+80|0;m=c+80|0;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];f[n+12>>2]=f[m+12>>2];p[n>>3]=+p[m>>3];p[i+(j*120|0)+88>>3]=+p[c+88>>3];n=i+(j*120|0)+96|0;c=c+96|0;f[n>>2]=f[c>>2];f[n+4>>2]=f[c+4>>2];f[n+8>>2]=f[c+8>>2];f[n+12>>2]=f[c+12>>2];b[n+16>>0]=b[c+16>>0]|0;c=k+120|0;if((h|0)!=(q|0)){g=k;do{d=h;h=h+-120|0;l=g+-120|0;m=h;n=l+36|0;do{f[l>>2]=f[m>>2];l=l+4|0;m=m+4|0}while((l|0)<(n|0));p[g+-80>>3]=+p[d+-80>>3];p[g+-72>>3]=+p[d+-72>>3];p[g+-64>>3]=+p[d+-64>>3];n=g+-56|0;m=d+-56|0;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];f[n+12>>2]=f[m+12>>2];p[g+-40>>3]=+p[d+-40>>3];p[g+-32>>3]=+p[d+-32>>3];n=g+-24|0;m=d+-24|0;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];f[n+12>>2]=f[m+12>>2];b[n+16>>0]=b[m+16>>0]|0;g=e+-120|0;e=g}while((h|0)!=(q|0));d=f[a>>2]|0}f[a>>2]=e;f[s>>2]=c;f[r>>2]=o;if(!d)return;Zpb(d);return}function qM(a){a=a|0;var b=0,c=0;f[a>>2]=18e3;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-240-c|0)>>>0)/240|0)*240|0);Zpb(c);return}function rM(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=18e3;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-240-b|0)>>>0)/240|0)*240|0);Zpb(b);Zpb(a);return}function sM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;if((d-c|0)<4){P=0;return P|0}P=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;c=c+4|0;O=a+4|0;e=f[O>>2]|0;N=a+8|0;g=f[N>>2]|0;if((g|0)!=(e|0))f[N>>2]=g+(~(((g+-240-e|0)>>>0)/240|0)*240|0);zM(O,P);l=a+16|0;if(!P){P=c;return P|0}m=a+24|0;n=a+12|0;o=a+64|0;q=a+72|0;r=a+80|0;s=a+88|0;t=a+96|0;u=a+104|0;v=a+112|0;w=a+116|0;x=a+120|0;y=a+124|0;z=a+128|0;A=a+132|0;B=a+136|0;C=a+144|0;D=a+152|0;E=a+160|0;F=a+168|0;G=a+176|0;H=a+184|0;I=a+192|0;J=a+200|0;K=a+208|0;L=a+224|0;M=a+232|0;k=a+240|0;j=0;while(1){c=xM(l,c,d)|0;if(!c){c=0;e=11;break}e=f[N>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){g=e;a=m;i=g+36|0;do{f[g>>2]=f[a>>2];g=g+4|0;a=a+4|0}while((g|0)<(i|0));i=e+40|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i+12>>2]=f[o+12>>2];f[i+16>>2]=f[o+16>>2];f[i+20>>2]=f[o+20>>2];p[i>>3]=+p[o>>3];p[e+48>>3]=+p[q>>3];p[e+56>>3]=+p[r>>3];i=e+64|0;f[i>>2]=f[s>>2];f[i+4>>2]=f[s+4>>2];f[i+8>>2]=f[s+8>>2];f[i+12>>2]=f[s+12>>2];f[i+16>>2]=f[s+16>>2];f[i+20>>2]=f[s+20>>2];p[i>>3]=+p[s>>3];p[e+72>>3]=+p[t>>3];p[e+80>>3]=+p[u>>3];i=e+88|0;f[i>>2]=f[v>>2];f[i+4>>2]=f[v+4>>2];f[i+8>>2]=f[v+8>>2];f[i>>2]=f[v>>2];f[e+92>>2]=f[w>>2];f[e+96>>2]=f[x>>2];i=e+100|0;f[i>>2]=f[y>>2];f[i+4>>2]=f[y+4>>2];f[i+8>>2]=f[y+8>>2];f[i>>2]=f[y>>2];f[e+104>>2]=f[z>>2];f[e+108>>2]=f[A>>2];i=e+112|0;f[i>>2]=f[B>>2];f[i+4>>2]=f[B+4>>2];f[i+8>>2]=f[B+8>>2];f[i+12>>2]=f[B+12>>2];f[i+16>>2]=f[B+16>>2];f[i+20>>2]=f[B+20>>2];p[i>>3]=+p[B>>3];p[e+120>>3]=+p[C>>3];p[e+128>>3]=+p[D>>3];i=e+136|0;f[i>>2]=f[E>>2];f[i+4>>2]=f[E+4>>2];f[i+8>>2]=f[E+8>>2];f[i+12>>2]=f[E+12>>2];f[i+16>>2]=f[E+16>>2];f[i+20>>2]=f[E+20>>2];p[i>>3]=+p[E>>3];p[e+144>>3]=+p[F>>3];p[e+152>>3]=+p[G>>3];i=e+160|0;f[i>>2]=f[H>>2];f[i+4>>2]=f[H+4>>2];f[i+8>>2]=f[H+8>>2];f[i+12>>2]=f[H+12>>2];f[i+16>>2]=f[H+16>>2];f[i+20>>2]=f[H+20>>2];p[i>>3]=+p[H>>3];p[e+168>>3]=+p[I>>3];p[e+176>>3]=+p[J>>3];i=e+184|0;f[i>>2]=f[K>>2];f[i+4>>2]=f[K+4>>2];f[i+8>>2]=f[K+8>>2];f[i+12>>2]=f[K+12>>2];i=e+200|0;f[i>>2]=f[L>>2];f[i+4>>2]=f[L+4>>2];f[i+8>>2]=f[L+8>>2];f[i+12>>2]=f[L+12>>2];p[i>>3]=+p[L>>3];p[e+208>>3]=+p[M>>3];i=e+216|0;f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];f[i+12>>2]=f[k+12>>2];b[i+16>>0]=b[k+16>>0]|0;f[N>>2]=(f[N>>2]|0)+240}else BM(O,m);j=j+1|0;if(j>>>0>=P>>>0){e=11;break}}if((e|0)==11)return c|0;return 0}function tM(a){a=a|0;return a+4|0}function uM(a){a=a|0;var b=0,c=0;f[a>>2]=18e3;c=f[a+4>>2]|0;if(!c)return;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-240-c|0)>>>0)/240|0)*240|0);Zpb(c);return}function vM(a){a=a|0;wf()}function wM(a){a=a|0;Zpb(a);return}function xM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0;if((d-c|0)<8){c=0;return c|0}u=c;v=u;v=h[v>>0]|h[v+1>>0]<<8|h[v+2>>0]<<16|h[v+3>>0]<<24;u=u+4|0;u=h[u>>0]|h[u+1>>0]<<8|h[u+2>>0]<<16|h[u+3>>0]<<24;e=c+8|0;if((d-e|0)<8){c=0;return c|0}t=e;r=t;r=h[r>>0]|h[r+1>>0]<<8|h[r+2>>0]<<16|h[r+3>>0]<<24;t=t+4|0;t=h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24;e=c+16|0;if((d-e|0)<4){c=0;return c|0}q=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+20|0;if((d-e|0)<4){c=0;return c|0}o=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+24|0;if((d-e|0)<4){c=0;return c|0}n=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+28|0;if((d-e|0)<4){c=0;return c|0}g=c+32|0;if((d-g|0)<4){c=0;return c|0}m=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=c+36|0;l=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;if((d-e|0)<24){c=0;return c|0}b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];i=+p[s>>3];e=c+44|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];j=+p[s>>3];e=c+52|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];k=+p[s>>3];e=c+60|0;if((d-e|0)<24){c=0;return c|0}g=c+84|0;if((d-g|0)<24){c=0;return c|0}z=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;y=c+88|0;y=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;x=c+92|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;w=c+96|0;w=h[w>>0]|h[w+1>>0]<<8|h[w+2>>0]<<16|h[w+3>>0]<<24;d=c+100|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;g=c+104|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];C=+p[s>>3];e=c+68|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];B=+p[s>>3];e=c+76|0;b[s>>0]=b[e>>0];b[s+1>>0]=b[e+1>>0];b[s+2>>0]=b[e+2>>0];b[s+3>>0]=b[e+3>>0];b[s+4>>0]=b[e+4>>0];b[s+5>>0]=b[e+5>>0];b[s+6>>0]=b[e+6>>0];b[s+7>>0]=b[e+7>>0];A=+p[s>>3];e=a+8|0;f[e>>2]=v;f[e+4>>2]=u;v=a+16|0;f[v>>2]=r;f[v+4>>2]=t;f[a+24>>2]=q;f[a+28>>2]=o;f[a+32>>2]=n;f[a+36>>2]=m;f[a+40>>2]=l;p[a+48>>3]=i;p[a+56>>3]=j;p[a+64>>3]=k;p[a+72>>3]=C;p[a+80>>3]=B;p[a+88>>3]=A;f[a+96>>2]=z;f[a+100>>2]=y;f[a+104>>2]=x;f[a+108>>2]=w;f[a+112>>2]=d;f[a+116>>2]=g;c=c+108|0;return c|0}function yM(a){a=a|0;return a+8|0}function zM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;d=f[a>>2]|0;if((((f[a+8>>2]|0)-d|0)/240|0)>>>0>=b>>>0){u=h;return}c=f[a+4>>2]|0;f[g+12>>2]=0;f[g+16>>2]=a+8;if(b>>>0>17895697)ud();i=Wpb(b*240|0)|0;f[g>>2]=i;d=i+(((c-d|0)/240|0)*240|0)|0;e=g+8|0;f[e>>2]=d;c=g+4|0;f[c>>2]=d;f[g+12>>2]=i+(b*240|0);AM(a,g);c=f[c>>2]|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~(((d+-240-c|0)>>>0)/240|0)*240|0);c=f[g>>2]|0;if(c|0)Zpb(c);u=h;return}function AM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=f[a>>2]|0;l=a+4|0;d=f[l>>2]|0;m=c+4|0;if((d|0)==(k|0)){j=m;i=a;m=f[m>>2]|0;f[i>>2]=m;f[j>>2]=k;k=c+8|0;m=f[l>>2]|0;i=f[k>>2]|0;f[l>>2]=i;f[k>>2]=m;k=a+8|0;m=c+12|0;l=f[k>>2]|0;a=f[m>>2]|0;f[k>>2]=a;f[m>>2]=l;m=f[j>>2]|0;f[c>>2]=m;return}g=f[m>>2]|0;do{e=d;d=d+-240|0;h=g+-240|0;i=d;j=h+36|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));p[g+-200>>3]=+p[e+-200>>3];p[g+-192>>3]=+p[e+-192>>3];p[g+-184>>3]=+p[e+-184>>3];p[g+-176>>3]=+p[e+-176>>3];p[g+-168>>3]=+p[e+-168>>3];p[g+-160>>3]=+p[e+-160>>3];f[g+-152>>2]=f[e+-152>>2];f[g+-148>>2]=f[e+-148>>2];f[g+-144>>2]=f[e+-144>>2];f[g+-140>>2]=f[e+-140>>2];f[g+-136>>2]=f[e+-136>>2];f[g+-132>>2]=f[e+-132>>2];p[g+-128>>3]=+p[e+-128>>3];p[g+-120>>3]=+p[e+-120>>3];p[g+-112>>3]=+p[e+-112>>3];p[g+-104>>3]=+p[e+-104>>3];p[g+-96>>3]=+p[e+-96>>3];p[g+-88>>3]=+p[e+-88>>3];p[g+-80>>3]=+p[e+-80>>3];p[g+-72>>3]=+p[e+-72>>3];p[g+-64>>3]=+p[e+-64>>3];j=g+-56|0;i=e+-56|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];f[j+12>>2]=f[i+12>>2];p[g+-40>>3]=+p[e+-40>>3];p[g+-32>>3]=+p[e+-32>>3];j=g+-24|0;i=e+-24|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];f[j+12>>2]=f[i+12>>2];b[j+16>>0]=b[i+16>>0]|0;g=(f[m>>2]|0)+-240|0;f[m>>2]=g}while((d|0)!=(k|0));j=a;i=g;k=f[a>>2]|0;f[j>>2]=i;f[m>>2]=k;k=c+8|0;j=f[l>>2]|0;i=f[k>>2]|0;f[l>>2]=i;f[k>>2]=j;a=a+8|0;l=c+12|0;k=f[a>>2]|0;j=f[l>>2]|0;f[a>>2]=j;f[l>>2]=k;m=f[m>>2]|0;f[c>>2]=m;return}function BM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m;d=f[a>>2]|0;k=((f[a+4>>2]|0)-d|0)/240|0;e=k+1|0;if(e>>>0>17895697)fob(a);j=((f[a+8>>2]|0)-d|0)/240|0;d=j<<1;d=j>>>0<8947848?(d>>>0<e>>>0?e:d):17895697;f[l+12>>2]=0;f[l+16>>2]=a+8;do if(!d)i=0;else if(d>>>0>17895697)ud();else{i=Wpb(d*240|0)|0;break}while(0);f[l>>2]=i;e=i+(k*240|0)|0;j=l+8|0;f[j>>2]=e;h=l+4|0;f[h>>2]=e;f[l+12>>2]=i+(d*240|0);d=e;e=c;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=i+(k*240|0)+40|0;e=c+40|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+48>>3]=+p[c+48>>3];p[i+(k*240|0)+56>>3]=+p[c+56>>3];d=i+(k*240|0)+64|0;e=c+64|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+72>>3]=+p[c+72>>3];p[i+(k*240|0)+80>>3]=+p[c+80>>3];d=i+(k*240|0)+88|0;e=c+88|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d>>2]=f[e>>2];f[i+(k*240|0)+92>>2]=f[c+92>>2];f[i+(k*240|0)+96>>2]=f[c+96>>2];d=i+(k*240|0)+100|0;e=c+100|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d>>2]=f[e>>2];f[i+(k*240|0)+104>>2]=f[c+104>>2];f[i+(k*240|0)+108>>2]=f[c+108>>2];d=i+(k*240|0)+112|0;e=c+112|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+120>>3]=+p[c+120>>3];p[i+(k*240|0)+128>>3]=+p[c+128>>3];d=i+(k*240|0)+136|0;e=c+136|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+144>>3]=+p[c+144>>3];p[i+(k*240|0)+152>>3]=+p[c+152>>3];d=i+(k*240|0)+160|0;e=c+160|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+168>>3]=+p[c+168>>3];p[i+(k*240|0)+176>>3]=+p[c+176>>3];d=i+(k*240|0)+184|0;e=c+184|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];d=i+(k*240|0)+200|0;e=c+200|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];p[d>>3]=+p[e>>3];p[i+(k*240|0)+208>>3]=+p[c+208>>3];d=i+(k*240|0)+216|0;e=c+216|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b[d+16>>0]=b[e+16>>0]|0;f[j>>2]=(f[j>>2]|0)+240;AM(a,l);d=f[h>>2]|0;e=f[j>>2]|0;if((e|0)!=(d|0))f[j>>2]=e+(~(((e+-240-d|0)>>>0)/240|0)*240|0);d=f[l>>2]|0;if(!d){u=m;return}Zpb(d);u=m;return}function CM(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;DM(c,a);ed(f[52656]|0);f[52656]=f[c>>2];ed(0);u=b;return}function DM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;h=u;u=u+1648|0;d=od()|0;f[a>>2]=d;c=1;if(c){c=0;if((f[b>>2]|0)==(f[(b+4|0)>>2]|0)){g=nd(79913)|0;rd(d|0,g|0,2);ed(g|0);ed(2)}else c=1}if(c)if(1){g=od()|0;e=nd(79913)|0;rd(d|0,e|0,g|0);ed(e|0);e=md()|0;c=nd(79918)|0;rd(g|0,c|0,e|0);ed(c|0);c=f[b>>2]|0;if((f[(b+4|0)>>2]|0)!=(c|0)){d=0;do{l=c;i=od()|0;f[h>>2]=d;j=sd(13536,h|0)|0;rd(e|0,j|0,i|0);ed(j|0);j=nd(79927)|0;k=Wpb(8)|0;m=l+(d*192|0)|0;o=f[m+4>>2]|0;f[k>>2]=f[m>>2];f[k+4>>2]=o;f[h>>2]=k;k=sd(4520,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(79939)|0;k=Wpb(8)|0;o=l+(d*192|0)+8|0;m=f[o+4>>2]|0;f[k>>2]=f[o>>2];f[k+4>>2]=m;f[h>>2]=k;k=sd(4528,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(79951)|0;f[h>>2]=f[l+(d*192|0)+16>>2];k=sd(13536,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(79961)|0;f[h>>2]=f[l+(d*192|0)+20>>2];k=sd(13528,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(79975)|0;f[h>>2]=f[l+(d*192|0)+24>>2];k=sd(13528,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(79988)|0;f[h>>2]=f[l+(d*192|0)+28>>2];k=sd(13536,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(8e4)|0;f[h>>2]=f[l+(d*192|0)+32>>2];k=sd(13536,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(80013)|0;k=Wpb(24)|0;p[k>>3]=+p[l+(d*192|0)+40>>3];p[k+8>>3]=+p[l+(d*192|0)+48>>3];p[k+16>>3]=+p[l+(d*192|0)+56>>3];f[h>>2]=k;k=sd(4656,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(80022)|0;k=Wpb(24)|0;p[k>>3]=+p[l+(d*192|0)+64>>3];p[k+8>>3]=+p[l+(d*192|0)+72>>3];p[k+16>>3]=+p[l+(d*192|0)+80>>3];f[h>>2]=k;k=sd(4656,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);j=nd(114532)|0;k=Wpb(24)|0;f[k>>2]=f[l+(d*192|0)+88>>2];f[k+4>>2]=f[l+(d*192|0)+92>>2];f[k+8>>2]=f[l+(d*192|0)+96>>2];f[k+12>>2]=f[l+(d*192|0)+100>>2];f[k+16>>2]=f[l+(d*192|0)+104>>2];f[k+20>>2]=f[l+(d*192|0)+108>>2];f[h>>2]=k;k=sd(1392,h|0)|0;rd(i|0,j|0,k|0);ed(k|0);ed(j|0);ed(i|0);d=d+1|0;c=f[b>>2]|0}while(d>>>0<(((f[(b+4|0)>>2]|0)-c|0)/192|0)>>>0)}ed(e|0);ed(g|0)}c=1;if(c){c=0;if((f[(b+36|0)>>2]|0)==(f[(b+40|0)>>2]|0)){m=f[a>>2]|0;o=nd(80029)|0;rd(m|0,o|0,2);ed(o|0);ed(2)}else c=1}f[h+32>>2]=a;f[h+40>>2]=b;f[h+1560>>2]=c;f[h+1576>>2]=0;f[h+1580>>2]=0;kY(h);G=f[h+1576>>2]|0;D=f[h+1580>>2]|0;H=+n[h+1580>>2];f[h+1576>>2]=0;f[h+1580>>2]=0;if((G|0)==5)return}function EM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215183;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215183)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215183,1540483477)|0)>>>24^(X(215183,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215183)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function FM(a){a=a|0;Zpb(a);return}function GM(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=18048;f[b+4>>2]=f[a+4>>2];return b|0}function HM(a,b){a=a|0;b=b|0;f[b>>2]=18048;f[b+4>>2]=f[a+4>>2];return}function IM(a){a=a|0;return}function JM(a){a=a|0;Zpb(a);return}function KM(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function LM(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==80921?a+4|0:0)|0}function MM(a){a=a|0;return 4688}function NM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function OM(a){a=a|0;Zpb(a);return}function PM(a,c,d){a=a|0;c=c|0;d=d|0;if((d-c|0)<1){d=0;return d|0}b[a+4>>0]=b[c>>0]|0;d=c+1|0;return d|0}function QM(a){a=a|0;return a+4|0}function RM(a){a=a|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=b[a>>0]|0;a=nd(81177)|0;f[e>>2]=g&255;e=sd(13496,e|0)|0;rd(d|0,a|0,e|0);ed(e|0);ed(a|0);ed(f[52656]|0);f[52656]=d;ed(0);u=c;return}function SM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215184;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215184)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215184,1540483477)|0)>>>24^(X(215184,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215184)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function TM(a){a=a|0;Zpb(a);return}function UM(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=18116;f[b+4>>2]=f[a+4>>2];return b|0}function VM(a,b){a=a|0;b=b|0;f[b>>2]=18116;f[b+4>>2]=f[a+4>>2];return}function WM(a){a=a|0;return}function XM(a){a=a|0;Zpb(a);return}function YM(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function ZM(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==81362?a+4|0:0)|0}function _M(a){a=a|0;return 4760}function $M(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function aN(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(12)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[c>>2]=d;a=sd(1152,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function bN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215185;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215185)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215185,1540483477)|0)>>>24^(X(215185,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215185)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function cN(a){a=a|0;Zpb(a);return}function dN(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=18160;f[b+4>>2]=f[a+4>>2];return b|0}function eN(a,b){a=a|0;b=b|0;f[b>>2]=18160;f[b+4>>2]=f[a+4>>2];return}function fN(a){a=a|0;return}function gN(a){a=a|0;Zpb(a);return}function hN(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function iN(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==81647?a+4|0:0)|0}function jN(a){a=a|0;return 4784}function kN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function lN(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=Wpb(16)|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];f[c>>2]=d;a=sd(824,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function mN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215186;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215186)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215186,1540483477)|0)>>>24^(X(215186,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215186)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function nN(a){a=a|0;Zpb(a);return}function oN(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=18204;f[b+4>>2]=f[a+4>>2];return b|0}function pN(a,b){a=a|0;b=b|0;f[b>>2]=18204;f[b+4>>2]=f[a+4>>2];return}function qN(a){a=a|0;return}function rN(a){a=a|0;Zpb(a);return}function sN(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function tN(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==81895?a+4|0:0)|0}function uN(a){a=a|0;return 4808}function vN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function wN(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=f[a>>2];a=sd(13536,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function xN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;j=k;f[h>>2]=215187;i=a+36|0;e=f[a+40>>2]|0;a:do if(e|0){d=e+-1|0;c=(d&e|0)==0;if(c)g=d&((X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0));else if(e>>>0>((X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)g=(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0);else g=(((X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0))>>>0)%(e>>>0)|0;b=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(c)while(1){e=f[b+4>>2]|0;c=(e|0)==((X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0);if(!(c|(e&d|0)==(g|0)))break a;if(c)if((f[b+8>>2]|0)==215187)break b;b=f[b>>2]|0;if(!b)break a}else while(1){c=f[b+4>>2]|0;if((c|0)==((X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)>>>15^(X(((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612)>>>13^((X((X(215187,1540483477)|0)>>>24^(X(215187,1540483477)|0),1540483477)|0)^1866966612),1540483477)|0)|0)){if((f[b+8>>2]|0)==215187)break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);j=a+24|0;a=f[b+12>>2]|0;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}}}while(0);d=a+24|0;e=a+28|0;c=(f[e>>2]|0)-(f[d>>2]|0)>>2;b=Cw(i,h)|0;f[b>>2]=c;b=Wpb(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[j>>2]=b;c=f[e>>2]|0;if(c>>>0<(f[a+32>>2]|0)>>>0){f[c>>2]=b;f[e>>2]=c+4}else Fw(d,j);j=e;a=-1;j=f[j>>2]|0;a=j+(a<<2)|0;a=f[a>>2]|0;u=k;return a|0}function yN(a){a=a|0;Zpb(a);return}function zN(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=18248;f[b+4>>2]=f[a+4>>2];return b|0}function AN(a,b){a=a|0;b=b|0;f[b>>2]=18248;f[b+4>>2]=f[a+4>>2];return}function BN(a){a=a|0;return}function CN(a){a=a|0;Zpb(a);return}function DN(a,b){a=a|0;b=b|0;fh[f[a+4>>2]&2047](f[b>>2]|0);return}function EN(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==82106?a+4|0:0)|0}function FN(a){a=a|0;return 4832}function GN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;g=f[l>>2]|0;j=f[a>>2]|0;e=g-j>>2;d=e+1|0;c=j;if(d>>>0>1073741823)fob(a);k=a+8|0;m=(f[k>>2]|0)-j|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(!h)i=0;else if(h>>>0>1073741823)ud();else{i=Wpb(h<<2)|0;break}while(0);d=i+(e<<2)|0;e=d;i=i+(h<<2)|0;f[d>>2]=f[b>>2];h=d+4|0;if((g|0)==(c|0))g=j;else{do{g=g+-4|0;m=f[g>>2]|0;f[g>>2]=0;f[d+-4>>2]=m;d=e+-4|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function HN(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=h[a>>0];a=sd(13496,c|0)|0;ed(f[52656]|0);f[52656]=a;ed(0);u=b;return}function IN(a){a=a|0;f[a>>2]=18292;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function JN(a){a=a|0;f[a>>2]=18292;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function KN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+4|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+4|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function LN(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];ed(cd(f[a+8>>2]|0,1,18316,d|0)|0);u=c;return}function MN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function NN(a){a=a|0;return 0}function ON(a){a=a|0;var b=0;f[a>>2]=18328;ed(f[a+28>>2]|0);ed(f[a+24>>2]|0);ed(f[a+20>>2]|0);f[a>>2]=18352;b=f[a+4>>2]|0;if(!b)return;a=a+8|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function PN(a){a=a|0;var b=0,c=0;f[a>>2]=18328;ed(f[a+28>>2]|0);ed(f[a+24>>2]|0);ed(f[a+20>>2]|0);f[a>>2]=18352;c=f[a+4>>2]|0;if(!c){Zpb(a);return}b=a+8|0;if((f[b>>2]|0)!=(c|0))f[b>>2]=c;Zpb(c);Zpb(a);return}function QN(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0.0;k=u;u=u+32|0;i=k;j=k+24|0;h=e+g|0;g=f[a+20>>2]|0;if(!(b[208816]|0))if(rrb(208816)|0){l=gd(3,18368)|0;f[52689]=l}l=f[52689]|0;f[i>>2]=e;f[i+8>>2]=h;m=+dd(l|0,g|0,69983,j|0,i|0);h=~~m>>>0;l=h;qd(f[j>>2]|0);jd(l|0);f[i>>2]=h;j=ld(f[a+24>>2]|0,1,18380,i|0)|0;f[i>>2]=c;f[i+8>>2]=d;jd(j|0);f[i+16>>2]=j;ed(cd(f[a+28>>2]|0,3,18384,i|0)|0);ed(j|0);ed(l|0);u=k;return}function RN(a){a=a|0;wf()}function SN(a){a=a|0;var b=0;f[a>>2]=18352;b=f[a+4>>2]|0;if(!b)return;a=a+8|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function TN(){return Wpb(12)|0}function UN(a){a=a|0;if(!a)return;Zpb(a);return}function VN(a,b){a=a|0;b=b|0;return +(+n[b+(a<<2)>>2])}function WN(a,b,c){a=a|0;b=b|0;c=+c;n[b+(a<<2)>>2]=c;return}function XN(){return Wpb(24)|0}function YN(a){a=a|0;if(!a)return;Zpb(a);return}function ZN(a,b){a=a|0;b=b|0;return +(+p[b+(a<<3)>>3])}function _N(a,b,c){a=a|0;b=b|0;c=+c;p[b+(a<<3)>>3]=c;return}function $N(){return Wpb(16)|0}function aO(a){a=a|0;if(!a)return;Zpb(a);return}function bO(a,b){a=a|0;b=b|0;return +(+n[b+(a<<2)>>2])}function cO(a,b,c){a=a|0;b=b|0;c=+c;n[b+(a<<2)>>2]=c;return}function dO(){return Wpb(16)|0}function eO(a){a=a|0;if(!a)return;Zpb(a);return}function fO(a,b){a=a|0;b=b|0;return +(+Kg[f[a>>2]&63](b))}function gO(a,b,c){a=a|0;b=b|0;c=+c;gh[f[a>>2]&63](b,c);return}function hO(){return Wpb(64)|0}function iO(a){a=a|0;if(!a)return;Zpb(a);return}function jO(a,b){a=a|0;b=b|0;return +(+Kg[f[a>>2]&63](b))}function kO(a,b,c){a=a|0;b=b|0;c=+c;gh[f[a>>2]&63](b,c);return}function lO(){return Wpb(128)|0}function mO(a){a=a|0;if(!a)return;Zpb(a);return}function nO(a,b){a=a|0;b=b|0;return +(+Kg[f[a>>2]&63](b))}function oO(a,b,c){a=a|0;b=b|0;c=+c;gh[f[a>>2]&63](b,c);return}function pO(){return Wpb(12)|0}function qO(a){a=a|0;if(!a)return;Zpb(a);return}function rO(a,b){a=a|0;b=b|0;return +(+n[b+(a<<2)>>2])}function sO(a,b,c){a=a|0;b=b|0;c=+c;n[b+(a<<2)>>2]=c;return}function tO(){return Wpb(16)|0}function uO(a){a=a|0;if(!a)return;Zpb(a);return}function vO(a,b){a=a|0;b=b|0;return +(+n[b+(a<<2)>>2])}function wO(a,b,c){a=a|0;b=b|0;c=+c;n[b+(a<<2)>>2]=c;return}function xO(){return Wpb(8)|0}function yO(a){a=a|0;if(!a)return;Zpb(a);return}function zO(a,b){a=a|0;b=b|0;b=Ng[f[a>>2]&511](b)|0;return f[b>>2]|0}function AO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;a=f[a>>2]|0;f[e>>2]=c;nh[a&1023](b,e);u=d;return}function BO(){return Wpb(8)|0}function CO(a){a=a|0;if(!a)return;Zpb(a);return}function DO(a,b){a=a|0;b=b|0;b=Ng[f[a>>2]&511](b)|0;return f[b>>2]|0}function EO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;a=f[a>>2]|0;f[e>>2]=c;nh[a&1023](b,e);u=d;return}function FO(){return Wpb(1)|0}function GO(a){a=a|0;if(!a)return;Zpb(a);return}function HO(){var a=0,b=0,c=0;a=Wpb(48)|0;b=a;c=b+48|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));return a|0}function IO(a){a=a|0;if(!a)return;Zpb(a);return}function JO(a,b){a=a|0;b=b|0;a=Ng[f[a>>2]&511](b)|0;b=Wpb(24)|0;p[b>>3]=+p[a>>3];p[b+8>>3]=+p[a+8>>3];p[b+16>>3]=+p[a+16>>3];return b|0}function KO(a,b,c){a=a|0;b=b|0;c=c|0;nh[f[a>>2]&1023](b,c);return}function LO(){var a=0;a=Wpb(32)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return a|0}function MO(a){a=a|0;if(!a)return;Zpb(a);return}function NO(a,b){a=a|0;b=b|0;a=b+(f[a>>2]|0)|0;b=Wpb(16)|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];return b|0}function OO(a,b,c){a=a|0;b=b|0;c=c|0;b=b+(f[a>>2]|0)|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];return}function PO(){var a=0;a=Wpb(32)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return a|0}function QO(a){a=a|0;if(!a)return;Zpb(a);return}function RO(a,b){a=a|0;b=b|0;a=b+(f[a>>2]|0)|0;b=Wpb(32)|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];f[b+16>>2]=f[a+16>>2];f[b+20>>2]=f[a+20>>2];f[b+24>>2]=f[a+24>>2];f[b+28>>2]=f[a+28>>2];return b|0}function SO(a,b,c){a=a|0;b=b|0;c=c|0;b=b+(f[a>>2]|0)|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[b+16>>2]=f[c+16>>2];f[b+20>>2]=f[c+20>>2];f[b+24>>2]=f[c+24>>2];f[b+28>>2]=f[c+28>>2];return}function TO(){var a=0;a=Wpb(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return a|0}function UO(a){a=a|0;if(!a)return;Zpb(a);return}function VO(a,b){a=a|0;b=b|0;return +(+p[b+(f[a>>2]|0)>>3])}function WO(a,b,c){a=a|0;b=b|0;c=+c;p[b+(f[a>>2]|0)>>3]=c;return}function XO(){var a=0,b=0;a=Wpb(8)|0;b=a;f[b>>2]=0;f[b+4>>2]=0;return a|0}function YO(a){a=a|0;if(!a)return;Zpb(a);return}function ZO(a,b){a=a|0;b=b|0;return f[b+(f[a>>2]|0)>>2]|0}function _O(a,b,c){a=a|0;b=b|0;c=c|0;f[b+(f[a>>2]|0)>>2]=c;return}function $O(){return Wpb(8)|0}function aP(a){a=a|0;if(!a)return;Zpb(a);return}function bP(a,b){a=a|0;b=b|0;return +(+n[b+(f[a>>2]|0)>>2])}function cP(a,b,c){a=a|0;b=b|0;c=+c;n[b+(f[a>>2]|0)>>2]=c;return}function dP(){return Wpb(16)|0}function eP(a){a=a|0;if(!a)return;Zpb(a);return}function fP(a,b){a=a|0;b=b|0;return +(+p[b+(f[a>>2]|0)>>3])}function gP(a,b,c){a=a|0;b=b|0;c=+c;p[b+(f[a>>2]|0)>>3]=c;return}function hP(){var a=0;a=Wpb(24)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return a|0}function iP(a){a=a|0;if(!a)return;Zpb(a);return}function jP(a,b){a=a|0;b=b|0;a=b+(f[a>>2]|0)|0;b=Wpb(12)|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return b|0}function kP(a,b,c){a=a|0;b=b|0;c=c|0;b=b+(f[a>>2]|0)|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];return}function lP(){var a=0,b=0,c=0;a=Wpb(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));return a|0}function mP(a){a=a|0;if(!a)return;Zpb(a);return}function nP(a,b){a=a|0;b=b|0;a=b+(f[a>>2]|0)|0;b=Wpb(24)|0;p[b>>3]=+p[a>>3];p[b+8>>3]=+p[a+8>>3];p[b+16>>3]=+p[a+16>>3];return b|0}function oP(a,b,c){a=a|0;b=b|0;c=c|0;b=b+(f[a>>2]|0)|0;p[b>>3]=+p[c>>3];p[b+8>>3]=+p[c+8>>3];p[b+16>>3]=+p[c+16>>3];return}function pP(a,b){a=a|0;b=b|0;return +(+p[b+(f[a>>2]|0)>>3])}function qP(a,b,c){a=a|0;b=b|0;c=+c;p[b+(f[a>>2]|0)>>3]=c;return}function rP(){var a=0;a=Wpb(24)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return a|0}function sP(a){a=a|0;if(!a)return;Zpb(a);return}function tP(a,b){a=a|0;b=b|0;return +(+p[b+(f[a>>2]|0)>>3])}function uP(a,b,c){a=a|0;b=b|0;c=+c;p[b+(f[a>>2]|0)>>3]=c;return}function vP(a,b){a=a|0;b=b|0;return f[b+(f[a>>2]|0)>>2]|0}function wP(a,b,c){a=a|0;b=b|0;c=c|0;f[b+(f[a>>2]|0)>>2]=c;return}function xP(a){a=a|0;return 5240}function yP(a){a=a|0;if(!a)return;Zpb(a);return}function zP(a){a=a|0;ah[a&63]();return}function AP(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function BP(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=+i;Mh[a&3](b,c,d,e,f,g,h,i);return}function CP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;Lh[a&3](b,c,d,e,f,g,h);return}function DP(a,b){a=a|0;b=b|0;a=Ng[a&511](b)|0;b=Wpb(128)|0;p[b>>3]=+p[a>>3];p[b+8>>3]=+p[a+8>>3];p[b+16>>3]=+p[a+16>>3];p[b+24>>3]=+p[a+24>>3];p[b+32>>3]=+p[a+32>>3];p[b+40>>3]=+p[a+40>>3];p[b+48>>3]=+p[a+48>>3];p[b+56>>3]=+p[a+56>>3];p[b+64>>3]=+p[a+64>>3];p[b+72>>3]=+p[a+72>>3];p[b+80>>3]=+p[a+80>>3];p[b+88>>3]=+p[a+88>>3];p[b+96>>3]=+p[a+96>>3];p[b+104>>3]=+p[a+104>>3];p[b+112>>3]=+p[a+112>>3];p[b+120>>3]=+p[a+120>>3];return b|0}function EP(a,b){a=a|0;b=b|0;return Ng[a&511](b)|0}function FP(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function GP(a,b){a=a|0;b=b|0;a=Ng[a&511](b)|0;b=Wpb(24)|0;p[b>>3]=+p[a>>3];p[b+8>>3]=+p[a+8>>3];p[b+16>>3]=+p[a+16>>3];return b|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function IP(a,b){a=a|0;b=b|0;return +(+Kg[a&63](b))}function JP(a,b,c){a=a|0;b=b|0;c=+c;gh[a&63](b,c);return}function KP(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;hh[a&7](b,c,d);return}function LP(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;ih[a&1](b,c,d,e);return}function MP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0;e=u;u=u+32|0;f=e;p[f>>3]=+p[c>>3];p[f+8>>3]=+p[c+8>>3];p[f+16>>3]=+p[c+16>>3];oh[a&31](b,f,d);u=e;return}function NP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;ph[a&7](b,c,d,e);return}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+32|0;e=d;wh[a&127](e,b,c);c=Wpb(24)|0;p[c>>3]=+p[e>>3];p[c+8>>3]=+p[e+8>>3];p[c+16>>3]=+p[e+16>>3];u=d;return c|0}function PP(a){a=a|0;return Mg[a&31]()|0}function QP(a,b){a=a|0;b=b|0;return Ng[a&511](b)|0}function RP(a,b,c,d,e,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=+g;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0;l=u;u=u+16|0;m=l+4|0;n=l;f[m>>2]=j;f[n>>2]=k;Jh[a&1](b,c,d,e,g,h,i,m,n);ed(f[n>>2]|0);ed(f[m>>2]|0);u=l;return}function SP(a){a=a|0;return Mg[a&31]()|0}function TP(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=+r;var s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+48|0;w=z+24|0;x=z+12|0;y=z;s=c+4|0;t=f[c>>2]|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;if(t>>>0>4294967279)aqb(w);if(t>>>0<11){b[w+11>>0]=t;if(!t)c=w;else{c=w;v=6}}else{v=t+16&-16;c=Wpb(v)|0;f[w>>2]=c;f[w+8>>2]=v|-2147483648;f[w+4>>2]=t;v=6}if((v|0)==6)Irb(c|0,s|0,t|0)|0;b[c+t>>0]=0;s=d+4|0;t=f[d>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if(t>>>0>4294967279)aqb(x);if(t>>>0<11){b[x+11>>0]=t;if(!t)c=x;else{c=x;v=12}}else{v=t+16&-16;c=Wpb(v)|0;f[x>>2]=c;f[x+8>>2]=v|-2147483648;f[x+4>>2]=t;v=12}if((v|0)==12)Irb(c|0,s|0,t|0)|0;b[c+t>>0]=0;t=e+4|0;d=f[e>>2]|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;if(d>>>0>4294967279)aqb(y);if(d>>>0<11){s=y+11|0;b[s>>0]=d;if(!d)c=y;else{c=y;v=18}}else{s=d+16&-16;c=Wpb(s)|0;f[y>>2]=c;f[y+8>>2]=s|-2147483648;f[y+4>>2]=d;s=y+11|0;v=18}if((v|0)==18)Irb(c|0,t|0,d|0)|0;b[c+d>>0]=0;c=_g[a&1](w,x,y,g,h,i,j,k,l,m,n,o,p,q,r)|0;if((b[s>>0]|0)<0)Zpb(f[y>>2]|0);if((b[x+11>>0]|0)<0)Zpb(f[x>>2]|0);if((b[w+11>>0]|0)>=0){u=z;return c|0}Zpb(f[w>>2]|0);u=z;return c|0}function UP(a,b){a=a|0;b=b|0;a=Ng[a&511](b)|0;b=Wpb(24)|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];f[b+16>>2]=f[a+16>>2];f[b+20>>2]=f[a+20>>2];return b|0}function VP(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;e=b;fh[a&2047](e);a=Wpb(8)|0;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;u=b;return a|0}function WP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=b;wh[a&127](g,c,d);ed(f[g>>2]|0);u=e;return}function XP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return Tg[a&1](b,c,d,e,f,g)|0}function YP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;Eh[a&255](g,b,c,d);jd(f[g>>2]|0);d=f[g>>2]|0;ed(d|0);u=e;return d|0}function ZP(a){a=a|0;return 5312}function _P(a){a=a|0;if(!a)return;Zpb(a);return}function $P(a){a=a|0;f[a>>2]=18828;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function aQ(a){a=a|0;f[a>>2]=18828;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function bQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function cQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=h[b>>0];b=sd(2384,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function dQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function eQ(a){a=a|0;return 0}function fQ(a,b,c,d,e,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0;o=u;u=u+16|0;p=o+4|0;q=o;f[p>>2]=m;f[q>>2]=n;$h[a&7](b,c,d,e,g,h,i,j,k,l,p,q);ed(f[q>>2]|0);ed(f[p>>2]|0);u=o;return}function gQ(a){a=a|0;f[a>>2]=18912;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function hQ(a){a=a|0;f[a>>2]=18912;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function iQ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function jQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;iF(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function kQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function lQ(a){a=a|0;return 0}function mQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g+4|0;i=g;f[h>>2]=d;f[i>>2]=e;Eh[a&255](b,c,h,i);ed(f[i>>2]|0);ed(f[h>>2]|0);u=g;return}function nQ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;f[e>>2]=b;f[g>>2]=c;nh[a&1023](e,g);ed(f[g>>2]|0);ed(f[e>>2]|0);u=d;return}function oQ(a){a=a|0;f[a>>2]=18976;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function pQ(a){a=a|0;f[a>>2]=18976;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function qQ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function rQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;iF(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function tQ(a){a=a|0;f[a>>2]=19008;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function uQ(a){a=a|0;f[a>>2]=19008;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function vQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;qA(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function wQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function xQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function yQ(a){a=a|0;return 0}function zQ(a){a=a|0;f[a>>2]=19040;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function AQ(a){a=a|0;f[a>>2]=19040;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;mC(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function CQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function DQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function EQ(a){a=a|0;return 0}function FQ(a){a=a|0;f[a>>2]=19072;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function GQ(a){a=a|0;f[a>>2]=19072;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function IQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function KQ(a){a=a|0;return 0}function LQ(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function MQ(a){a=a|0;f[a>>2]=19128;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function NQ(a){a=a|0;f[a>>2]=19128;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function OQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;mC(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function PQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function QQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function RQ(a){a=a|0;f[a>>2]=19160;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function SQ(a){a=a|0;f[a>>2]=19160;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function TQ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function VQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function WQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[g>>2]=c;f[h>>2]=d;wh[a&127](b,g,h);ed(f[h>>2]|0);ed(f[g>>2]|0);u=e;return}function XQ(a){a=a|0;f[a>>2]=19208;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function YQ(a){a=a|0;f[a>>2]=19208;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function ZQ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function _Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;AF(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function $Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function aR(a){a=a|0;return 0}function bR(a){a=a|0;f[a>>2]=19240;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function cR(a){a=a|0;f[a>>2]=19240;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function dR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;VB(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function eR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function fR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function gR(a){a=a|0;return 0}function hR(a){a=a|0;f[a>>2]=19272;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function iR(a){a=a|0;f[a>>2]=19272;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function jR(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function kR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function lR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function mR(a){a=a|0;return 0}function nR(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function oR(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0;q=u;u=u+16|0;r=q+4|0;s=q;f[r>>2]=o;f[s>>2]=p;bi[a&3](b,c,d,e,g,h,i,j,k,l,m,n,r,s);ed(f[s>>2]|0);ed(f[r>>2]|0);u=q;return}function pR(a){a=a|0;f[a>>2]=19388;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function qR(a){a=a|0;f[a>>2]=19388;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function rR(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function sR(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=h[b>>0];b=sd(3024,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function tR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function uR(a){a=a|0;return 0}function vR(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,v=0;s=u;u=u+16|0;t=s+4|0;v=s;f[t>>2]=q;f[v>>2]=r;di[a&7](b,c,d,e,g,h,i,j,k,l,m,n,o,p,t,v);ed(f[v>>2]|0);ed(f[t>>2]|0);u=s;return}function wR(a){a=a|0;f[a>>2]=19488;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function xR(a){a=a|0;f[a>>2]=19488;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function yR(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function zR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;iF(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function AR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function BR(a){a=a|0;f[a>>2]=19520;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function CR(a){a=a|0;f[a>>2]=19520;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function DR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;$C(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function ER(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function FR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function GR(a){a=a|0;return 0}function HR(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g+4|0;i=g;f[h>>2]=d;f[i>>2]=e;Eh[a&255](b,c,h,i);ed(f[i>>2]|0);ed(f[h>>2]|0);u=g;return}function IR(a){a=a|0;f[a>>2]=19572;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function JR(a){a=a|0;f[a>>2]=19572;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function KR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function LR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function MR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function NR(a){a=a|0;return 0}function OR(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function PR(a){a=a|0;f[a>>2]=19628;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function QR(a){a=a|0;f[a>>2]=19628;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function RR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=c+8|0;mG(d,b);jd(f[d>>2]|0);f[e>>2]=f[d>>2];ed(cd(f[a+4>>2]|0,1,16304,e|0)|0);ed(f[d>>2]|0);u=c;return}function SR(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=h[b>>0];b=sd(2944,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function TR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function UR(a){a=a|0;return 0}function VR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[g>>2]=c;f[h>>2]=d;wh[a&127](b,g,h);ed(f[h>>2]|0);ed(f[g>>2]|0);u=e;return}function WR(a){a=a|0;f[a>>2]=19676;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function XR(a){a=a|0;f[a>>2]=19676;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function YR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function ZR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;CE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function _R(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function $R(a){a=a|0;return 0}function aS(a,b,c,d,e,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0;l=u;u=u+16|0;m=l+4|0;n=l;f[m>>2]=j;f[n>>2]=k;Yh[a&7](b,c,d,e,g,h,i,m,n);ed(f[n>>2]|0);ed(f[m>>2]|0);u=l;return}function bS(a){a=a|0;f[a>>2]=19748;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function cS(a){a=a|0;f[a>>2]=19748;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function dS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function eS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;CE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function fS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function gS(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;k=u;u=u+16|0;l=k+4|0;m=k;f[l>>2]=i;f[m>>2]=j;Xh[a&15](b,c,d,e,g,h,l,m);ed(f[m>>2]|0);ed(f[l>>2]|0);u=k;return}function hS(a){a=a|0;f[a>>2]=19816;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function iS(a){a=a|0;f[a>>2]=19816;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function jS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function kS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;CE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function lS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function mS(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+16|0;k=j+4|0;l=j;f[k>>2]=h;f[l>>2]=i;Wh[a&63](b,c,d,e,g,k,l);ed(f[l>>2]|0);ed(f[k>>2]|0);u=j;return}function nS(a){a=a|0;f[a>>2]=19880;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function oS(a){a=a|0;f[a>>2]=19880;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function pS(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function qS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;AF(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function rS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function sS(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=d;f[j>>2]=e;Kh[a&255](b,c,i,j,g);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function tS(a){a=a|0;f[a>>2]=19936;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function uS(a){a=a|0;f[a>>2]=19936;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function vS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+4|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+4|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function wS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function xS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function yS(a){a=a|0;return 0}function zS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b,c,d,e);return}function AS(a){a=a|0;f[a>>2]=19988;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function BS(a){a=a|0;f[a>>2]=19988;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function ES(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function FS(a){a=a|0;return 0}function GS(a){a=a|0;f[a>>2]=20020;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function HS(a){a=a|0;f[a>>2]=20020;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function LS(a){a=a|0;f[a>>2]=20052;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function MS(a){a=a|0;f[a>>2]=20052;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function NS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function OS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function PS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function QS(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+16|0;k=j+4|0;l=j;f[k>>2]=g;f[l>>2]=h;Wh[a&63](b,c,d,e,k,l,i);ed(f[l>>2]|0);ed(f[k>>2]|0);u=j;return}function RS(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Wh[a&63](b,c,d,e,f,g,h);return}function SS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b,c,d,e);return}function TS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wh[a&127](b,c,d);return}function US(a){a=a|0;f[a>>2]=20184;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function VS(a){a=a|0;f[a>>2]=20184;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function WS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+4|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+4|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function XS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function YS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function ZS(a){a=a|0;return 0}function _S(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=e;f[k>>2]=g;Sh[a&63](b,c,d,j,k,h);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function $S(a){a=a|0;f[a>>2]=20244;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function aT(a){a=a|0;f[a>>2]=20244;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function bT(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function cT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;GH(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function dT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function eT(a){a=a|0;return 0}function fT(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+16|0;k=j+4|0;l=j;f[k>>2]=g;f[l>>2]=h;Wh[a&63](b,c,d,e,k,l,i);ed(f[l>>2]|0);ed(f[k>>2]|0);u=j;return}function gT(a){a=a|0;f[a>>2]=20308;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function hT(a){a=a|0;f[a>>2]=20308;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function jT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function kT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function lT(a){a=a|0;f[a>>2]=20340;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function mT(a){a=a|0;f[a>>2]=20340;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function nT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function oT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function pT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function qT(a){a=a|0;f[a>>2]=20372;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function rT(a){a=a|0;f[a>>2]=20372;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function sT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function tT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function uT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function vT(a){a=a|0;f[a>>2]=20404;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function wT(a){a=a|0;f[a>>2]=20404;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function xT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function yT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function zT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function AT(a){a=a|0;f[a>>2]=20436;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function BT(a){a=a|0;f[a>>2]=20436;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function CT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function DT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function ET(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function FT(a){a=a|0;f[a>>2]=20468;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function GT(a){a=a|0;f[a>>2]=20468;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function HT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function IT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function JT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function KT(a){a=a|0;f[a>>2]=20500;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function LT(a){a=a|0;f[a>>2]=20500;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function MT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function NT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function OT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function PT(a){a=a|0;f[a>>2]=20532;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function QT(a){a=a|0;f[a>>2]=20532;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function RT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function ST(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function TT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function UT(a){a=a|0;f[a>>2]=20564;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function VT(a){a=a|0;f[a>>2]=20564;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function WT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function XT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function YT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function ZT(a){a=a|0;f[a>>2]=20596;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function _T(a){a=a|0;f[a>>2]=20596;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function $T(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function aU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function bU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function cU(a){a=a|0;f[a>>2]=20628;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function dU(a){a=a|0;f[a>>2]=20628;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function eU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function fU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function gU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function hU(a){a=a|0;f[a>>2]=20660;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function iU(a){a=a|0;f[a>>2]=20660;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function jU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function kU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function lU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function mU(a){a=a|0;f[a>>2]=20692;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function nU(a){a=a|0;f[a>>2]=20692;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function oU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function pU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function qU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function rU(a){a=a|0;f[a>>2]=20724;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function sU(a){a=a|0;f[a>>2]=20724;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function tU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function uU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function vU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function wU(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;rh[a&3](b,c,d,e,f);return}function xU(a){a=a|0;f[a>>2]=20780;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function yU(a){a=a|0;f[a>>2]=20780;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function zU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;MA(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function AU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function BU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function CU(a){a=a|0;return 0}function DU(a){a=a|0;f[a>>2]=20812;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function EU(a){a=a|0;f[a>>2]=20812;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function FU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(24)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];f[e+20>>2]=f[b+20>>2];f[d>>2]=e;b=sd(1392,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function GU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function HU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function IU(a){a=a|0;return 0}function JU(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=g;f[k>>2]=h;Sh[a&63](b,c,d,e,j,k);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function KU(a){a=a|0;f[a>>2]=20872;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function LU(a){a=a|0;f[a>>2]=20872;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function MU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(24)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];f[e+20>>2]=f[b+20>>2];f[d>>2]=e;b=sd(1392,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function NU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function OU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function PU(a){a=a|0;f[a>>2]=20904;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function QU(a){a=a|0;f[a>>2]=20904;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function RU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(24)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];f[e+20>>2]=f[b+20>>2];f[d>>2]=e;b=sd(1392,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function SU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function TU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function UU(a){a=a|0;return 0}function VU(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function WU(a){a=a|0;f[a>>2]=20960;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function XU(a){a=a|0;f[a>>2]=20960;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function YU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(24)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];f[e+20>>2]=f[b+20>>2];f[d>>2]=e;b=sd(1392,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function ZU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function _U(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function $U(a){a=a|0;f[a>>2]=20992;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function aV(a){a=a|0;f[a>>2]=20992;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function bV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(24)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];f[e+20>>2]=f[b+20>>2];f[d>>2]=e;b=sd(1392,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function cV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function dV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function eV(a){a=a|0;f[a>>2]=21024;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function fV(a){a=a|0;f[a>>2]=21024;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function gV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function hV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function iV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function jV(a){a=a|0;return 0}function kV(a){a=a|0;f[a>>2]=21056;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function lV(a){a=a|0;f[a>>2]=21056;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function mV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(56)|0;p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];p[e+24>>3]=+p[b+24>>3];p[e+32>>3]=+p[b+32>>3];p[e+40>>3]=+p[b+40>>3];p[e+48>>3]=+p[b+48>>3];f[d>>2]=e;b=sd(3648,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function nV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function oV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function pV(a){a=a|0;return 0}function qV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g+4|0;i=g;f[h>>2]=d;f[i>>2]=e;Eh[a&255](b,c,h,i);ed(f[i>>2]|0);ed(f[h>>2]|0);u=g;return}function rV(a){a=a|0;f[a>>2]=21108;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function sV(a){a=a|0;f[a>>2]=21108;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function tV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(56)|0;p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];p[e+24>>3]=+p[b+24>>3];p[e+32>>3]=+p[b+32>>3];p[e+40>>3]=+p[b+40>>3];p[e+48>>3]=+p[b+48>>3];f[d>>2]=e;b=sd(3648,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function uV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function vV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function wV(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=g;f[k>>2]=h;Sh[a&63](b,c,d,e,j,k);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function xV(a){a=a|0;f[a>>2]=21168;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function yV(a){a=a|0;f[a>>2]=21168;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function zV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(56)|0;p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];p[e+24>>3]=+p[b+24>>3];p[e+32>>3]=+p[b+32>>3];p[e+40>>3]=+p[b+40>>3];p[e+48>>3]=+p[b+48>>3];f[d>>2]=e;b=sd(3648,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function AV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function BV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function CV(a){a=a|0;return 0}function DV(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function EV(a){a=a|0;f[a>>2]=21224;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function FV(a){a=a|0;f[a>>2]=21224;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function GV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(56)|0;p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];p[e+24>>3]=+p[b+24>>3];p[e+32>>3]=+p[b+32>>3];p[e+40>>3]=+p[b+40>>3];p[e+48>>3]=+p[b+48>>3];f[d>>2]=e;b=sd(3648,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function HV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;EE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function IV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function JV(a){a=a|0;f[a>>2]=21256;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function KV(a){a=a|0;f[a>>2]=21256;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function LV(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function MV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function NV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function OV(a){a=a|0;f[a>>2]=21288;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function PV(a){a=a|0;f[a>>2]=21288;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function QV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+4|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+4|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function RV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function SV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function TV(a){a=a|0;f[a>>2]=21320;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function UV(a){a=a|0;f[a>>2]=21320;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function VV(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function WV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function XV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function YV(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=e;f[k>>2]=g;Sh[a&63](b,c,d,j,k,h);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function ZV(a){a=a|0;f[a>>2]=21380;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function _V(a){a=a|0;f[a>>2]=21380;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function $V(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function aW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function bW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function cW(a){a=a|0;f[a>>2]=21412;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function dW(a){a=a|0;f[a>>2]=21412;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function eW(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function fW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;VH(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function gW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function hW(a){a=a|0;return 0}function iW(a,b,c,d,e,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0;p=u;u=u+16|0;q=p+4|0;r=p;f[q>>2]=m;f[r>>2]=n;ai[a&7](b,c,d,e,g,h,i,j,k,l,q,r,o);ed(f[r>>2]|0);ed(f[q>>2]|0);u=p;return}function jW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b,c,d,e);return}function kW(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;Bh[a&3](b,c,d,e,f);return}function lW(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=e;f[k>>2]=g;Sh[a&63](b,c,d,j,k,h);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function mW(a){a=a|0;f[a>>2]=21572;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function nW(a){a=a|0;f[a>>2]=21572;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function oW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;Qy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function pW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function qW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function rW(a){a=a|0;return 0}function sW(a){a=a|0;f[a>>2]=21604;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function tW(a){a=a|0;f[a>>2]=21604;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function uW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;xy(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function vW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function wW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function xW(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Hh[a&7](b,c,d,e,f,g);return}function yW(a){a=a|0;f[a>>2]=21664;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function zW(a){a=a|0;f[a>>2]=21664;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function AW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;Wz(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function BW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function CW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function DW(a){a=a|0;return 0}function EW(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Kh[a&255](b,c,d,e,f);return}function FW(a){a=a|0;f[a>>2]=21720;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function GW(a){a=a|0;f[a>>2]=21720;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function HW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;IC(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function IW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function JW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function KW(a){a=a|0;return 0}function LW(a){a=a|0;f[a>>2]=21752;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function MW(a){a=a|0;f[a>>2]=21752;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function NW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;IC(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function OW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function PW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function QW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Wh[a&63](b,c,d,e,f,g,h);return}function RW(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Sh[a&63](b,c,d,e,f,g);return}function SW(a){a=a|0;f[a>>2]=21844;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function TW(a){a=a|0;f[a>>2]=21844;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function UW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;IC(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function VW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function WW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function XW(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;Ih[a&3](b,c,d,e,f,g,h);return}function YW(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function ZW(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;th[a&3](b,c,d,e,f,g,h,i,j,k);return}function _W(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function $W(a){a=a|0;f[a>>2]=21976;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function aX(a){a=a|0;f[a>>2]=21976;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function bX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function cX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function dX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function eX(a){a=a|0;return 0}function fX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[g>>2]=c;f[h>>2]=d;wh[a&127](b,g,h);ed(f[h>>2]|0);ed(f[g>>2]|0);u=e;return}function gX(a){a=a|0;f[a>>2]=22024;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function hX(a){a=a|0;f[a>>2]=22024;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function iX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function jX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function kX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function lX(a){a=a|0;return 0}function mX(a){a=a|0;f[a>>2]=22056;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function nX(a){a=a|0;f[a>>2]=22056;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function oX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function pX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function qX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function rX(a,b,c,d,e,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0;l=u;u=u+16|0;m=l+4|0;n=l;f[m>>2]=j;f[n>>2]=k;Qh[a&3](b,c,d,e,g,h,i,m,n);ed(f[n>>2]|0);ed(f[m>>2]|0);u=l;return}function sX(a){a=a|0;f[a>>2]=22128;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function tX(a){a=a|0;f[a>>2]=22128;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function uX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function vX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function wX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function xX(a){a=a|0;f[a>>2]=22160;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function yX(a){a=a|0;f[a>>2]=22160;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function zX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function AX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function BX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function CX(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i+4|0;k=i;f[j>>2]=g;f[k>>2]=h;Sh[a&63](b,c,d,e,j,k);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function DX(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function EX(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function FX(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0;w=u;u=u+16|0;v=w;b[a>>0]=0;b[a+1>>0]=0;b[a+2>>0]=0;b[a+3>>0]=0;b[a+4>>0]=0;l=a+8|0;b[l>>0]=1;m=a+9|0;b[m>>0]=0;n=a+10|0;b[n>>0]=0;o=a+11|0;b[o>>0]=1;q=a+12|0;b[q>>0]=0;r=a+13|0;b[r>>0]=0;f[a+16>>2]=-1;e=a+20|0;b[e>>0]=1;g=a+21|0;b[g>>0]=0;h=a+22|0;b[h>>0]=1;s=a+23|0;b[s>>0]=0;i=a+24|0;b[i>>0]=1;j=a+25|0;b[j>>0]=1;t=a+26|0;k=a+40|0;d[t>>1]=0;d[t+2>>1]=0;d[t+4>>1]=0;b[t+6>>0]=0;p[k>>3]=C;if(GX(c,104735)|0){x=f[c>>2]|0;z=nd(104735)|0;x=id(x|0,z|0)|0;ed(z|0);y=+bd(x|0,13496,v|0);qd(f[v>>2]|0);b[a+1>>0]=~~y;ed(x|0);b[a>>0]=b[a>>0]|1}if(GX(c,104752)|0){z=f[c>>2]|0;x=nd(104752)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13496,v|0);qd(f[v>>2]|0);b[a+2>>0]=~~y;ed(z|0);b[a>>0]=b[a>>0]|2}if(GX(c,104769)|0){z=f[c>>2]|0;x=nd(104769)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13496,v|0);qd(f[v>>2]|0);b[a+3>>0]=~~y;ed(z|0);b[a>>0]=b[a>>0]|4}if(GX(c,104785)|0){z=f[c>>2]|0;x=nd(104785)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13496,v|0);qd(f[v>>2]|0);b[a+4>>0]=~~y;ed(z|0);b[a>>0]=b[a>>0]|8}if(GX(c,104801)|0){z=f[c>>2]|0;x=nd(104801)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[l>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104823)|0){z=f[c>>2]|0;x=nd(104823)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[m>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104844)|0){z=f[c>>2]|0;x=nd(104844)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[n>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104859)|0){z=f[c>>2]|0;x=nd(104859)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[o>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104877)|0){z=f[c>>2]|0;x=nd(104877)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[q>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104923)|0){z=f[c>>2]|0;x=nd(104923)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[r>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104942)|0){z=f[c>>2]|0;x=nd(104942)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[e>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104965)|0){z=f[c>>2]|0;x=nd(104965)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[g>>0]=y!=0.0&1;ed(z|0)}if(GX(c,104987)|0){z=f[c>>2]|0;x=nd(104987)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[h>>0]=y!=0.0&1;ed(z|0)}if(GX(c,105015)|0){z=f[c>>2]|0;x=nd(105015)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[i>>0]=y!=0.0&1;ed(z|0)}if(GX(c,105033)|0){z=f[c>>2]|0;x=nd(105033)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13480,v|0);qd(f[v>>2]|0);b[j>>0]=y!=0.0&1;ed(z|0)}if(GX(c,105055)|0){z=f[c>>2]|0;x=nd(105055)|0;z=id(z|0,x|0)|0;ed(x|0);y=+bd(z|0,13568,v|0);qd(f[v>>2]|0);p[k>>3]=y;ed(z|0)}if(GX(c,105072)|0){e=f[c>>2]|0;z=nd(105072)|0;e=id(e|0,z|0)|0;ed(z|0);y=+bd(e|0,13496,v|0);qd(f[v>>2]|0);b[a+32>>0]=~~y;ed(e|0);e=1}else e=0;b[s>>0]=e;if(GX(c,105080)|0){e=f[c>>2]|0;z=nd(105080)|0;e=id(e|0,z|0)|0;ed(z|0);y=+bd(e|0,13496,v|0);qd(f[v>>2]|0);ed(e|0);e=~~y&255}else e=0;b[t>>0]=e&1;b[a+27>>0]=(e&255)>>>1&1;b[a+28>>0]=(e&255)>>>2&1;if(!(GX(c,105109)|0)){x=0;v=x&1;z=a+29|0;b[z>>0]=v;z=a+30|0;v=(x&255)>>>1;v=v&1;b[z>>0]=v;z=a+31|0;x=(x&255)>>>2;x=x&1;b[z>>0]=x;u=w;return}x=f[c>>2]|0;z=nd(105109)|0;x=id(x|0,z|0)|0;ed(z|0);y=+bd(x|0,13496,v|0);qd(f[v>>2]|0);ed(x|0);x=~~y&255;v=x&1;z=a+29|0;b[z>>0]=v;z=a+30|0;v=(x&255)>>>1;v=v&1;b[z>>0]=v;z=a+31|0;x=(x&255)>>>2;x=x&1;b[z>>0]=x;u=w;return}function GX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=u;u=u+16|0;h=c;d=fd(45348)|0;i=nd(105143)|0;e=id(d|0,i|0)|0;ed(i|0);i=nd(105153)|0;g=id(e|0,i|0)|0;ed(i|0);b=nd(b|0)|0;f[h>>2]=b;b=HX(g,105168,a,h)|0;ed(f[h>>2]|0);ed(g|0);ed(e|0);ed(d|0);u=c;return b|0}function HX(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0;i=u;u=u+32|0;g=i;h=i+16|0;if(!(b[209520]|0))if(rrb(209520)|0){j=gd(3,22232)|0;f[52690]=j}j=f[52690]|0;jd(f[d>>2]|0);f[g>>2]=f[d>>2];jd(f[e>>2]|0);f[g+8>>2]=f[e>>2];k=+dd(j|0,a|0,c|0,h|0,g|0);qd(f[h>>2]|0);u=i;return k!=0.0|0}function IX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=u;u=u+16|0;h=g+8|0;i=g+4|0;j=g;f[h>>2]=c;f[i>>2]=d;f[j>>2]=e;Eh[a&255](b,h,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);ed(f[h>>2]|0);u=g;return}function JX(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;j=u;u=u+16|0;k=j+8|0;l=j+4|0;m=j;f[k>>2]=g;f[l>>2]=h;f[m>>2]=i;Wh[a&63](b,c,d,e,k,l,m);ed(f[m>>2]|0);ed(f[l>>2]|0);ed(f[k>>2]|0);u=j;return}function KX(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0;j=u;u=u+16|0;h=j;b[a>>0]=0;d=a+1|0;b[d>>0]=1;i=a+2|0;e=a+8|0;b[i>>0]=0;b[i+1>>0]=0;b[i+2>>0]=0;b[i+3>>0]=0;b[i+4>>0]=0;b[i+5>>0]=0;g=a+12|0;b[e>>0]=1;b[e+1>>0]=1;b[e+2>>0]=1;b[e+3>>0]=1;b[g>>0]=0;b[g+1>>0]=0;b[g+2>>0]=0;b[g+3>>0]=0;if(GX(c,105173)|0){k=f[c>>2]|0;m=nd(105173)|0;k=id(k|0,m|0)|0;ed(m|0);l=+bd(k|0,13480,h|0);qd(f[h>>2]|0);b[e>>0]=l!=0.0&1;ed(k|0)}if(GX(c,105184)|0){m=f[c>>2]|0;k=nd(105184)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[a+9>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105195)|0){m=f[c>>2]|0;k=nd(105195)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[a+10>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105207)|0){m=f[c>>2]|0;k=nd(105207)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[a+11>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105229)|0){m=f[c>>2]|0;k=nd(105229)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[g>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105256)|0){m=f[c>>2]|0;k=nd(105256)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[a>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105277)|0){m=f[c>>2]|0;k=nd(105277)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[a+13>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105015)|0){m=f[c>>2]|0;k=nd(105015)|0;m=id(m|0,k|0)|0;ed(k|0);l=+bd(m|0,13480,h|0);qd(f[h>>2]|0);b[d>>0]=l!=0.0&1;ed(m|0)}if(GX(c,105072)|0){d=f[c>>2]|0;m=nd(105072)|0;d=id(d|0,m|0)|0;ed(m|0);l=+bd(d|0,13496,h|0);qd(f[h>>2]|0);b[a+14>>0]=~~l;ed(d|0);d=1}else d=0;b[a+15>>0]=d;if(GX(c,105080)|0){d=f[c>>2]|0;m=nd(105080)|0;d=id(d|0,m|0)|0;ed(m|0);l=+bd(d|0,13496,h|0);qd(f[h>>2]|0);ed(d|0);d=~~l&255}else d=0;b[i>>0]=d&1;b[a+3>>0]=(d&255)>>>1&1;b[a+4>>0]=(d&255)>>>2&1;if(!(GX(c,105109)|0)){k=0;i=k&1;m=a+5|0;b[m>>0]=i;m=a+6|0;i=(k&255)>>>1;i=i&1;b[m>>0]=i;m=a+7|0;k=(k&255)>>>2;k=k&1;b[m>>0]=k;u=j;return}k=f[c>>2]|0;i=nd(105109)|0;k=id(k|0,i|0)|0;ed(i|0);l=+bd(k|0,13496,h|0);qd(f[h>>2]|0);ed(k|0);k=~~l&255;i=k&1;m=a+5|0;b[m>>0]=i;m=a+6|0;i=(k&255)>>>1;i=i&1;b[m>>0]=i;m=a+7|0;k=(k&255)>>>2;k=k&1;b[m>>0]=k;u=j;return}function LX(a){a=a|0;f[a>>2]=22304;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function MX(a){a=a|0;f[a>>2]=22304;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function NX(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function OX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function PX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function QX(a){a=a|0;return 0}function RX(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;j=u;u=u+16|0;k=j+8|0;l=j+4|0;m=j;f[k>>2]=g;f[l>>2]=h;f[m>>2]=i;Wh[a&63](b,c,d,e,k,l,m);ed(f[m>>2]|0);ed(f[l>>2]|0);ed(f[k>>2]|0);u=j;return}function SX(a){a=a|0;f[a>>2]=22368;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function TX(a){a=a|0;f[a>>2]=22368;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function UX(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function VX(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function WX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function XX(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=u;u=u+16|0;j=i+8|0;k=i+4|0;l=i;f[j>>2]=e;f[k>>2]=g;f[l>>2]=h;Sh[a&63](b,c,d,j,k,l);ed(f[l>>2]|0);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function YX(a){a=a|0;f[a>>2]=22428;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function ZX(a){a=a|0;f[a>>2]=22428;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function _X(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function $X(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function aY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function bY(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=u;u=u+16|0;j=i+8|0;k=i+4|0;l=i;f[j>>2]=e;f[k>>2]=g;f[l>>2]=h;Sh[a&63](b,c,d,j,k,l);ed(f[l>>2]|0);ed(f[k>>2]|0);ed(f[j>>2]|0);u=i;return}function cY(a){a=a|0;f[a>>2]=22488;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function dY(a){a=a|0;f[a>>2]=22488;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function eY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function fY(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function gY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function hY(a,b,c,d,e,g){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=u;u=u+16|0;i=h+8|0;j=h+4|0;k=h;f[i>>2]=d;f[j>>2]=e;f[k>>2]=g;mh[a&3](b,c,i,j,k);ed(f[k>>2]|0);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function iY(a){a=a|0;f[a>>2]=22544;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function jY(a){a=a|0;f[a>>2]=22544;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function kY(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;m=f[a+32>>2]|0;n=f[a+40>>2]|0;o=f[a+1560>>2]|0;a:{if(o){o=0;if(1){d=od()|0;b=f[m>>2]|0;e=nd(80029)|0;rd(b|0,e|0,d|0);ed(e|0);e=md()|0;b=nd(79918)|0;rd(d|0,b|0,e|0);ed(b|0);b=f[(n+36|0)>>2]|0;if((f[(n+40|0)>>2]|0)!=(b|0)){c=0;do{i=b;l=od()|0;f[a>>2]=c;k=sd(13536,a|0)|0;rd(e|0,k|0,l|0);ed(k|0);k=nd(79927)|0;j=Wpb(8)|0;h=i+(c*240|0)|0;g=f[h+4>>2]|0;f[j>>2]=f[h>>2];f[j+4>>2]=g;f[a>>2]=j;j=sd(4520,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(79939)|0;j=Wpb(8)|0;g=i+(c*240|0)+8|0;h=f[g+4>>2]|0;f[j>>2]=f[g>>2];f[j+4>>2]=h;f[a>>2]=j;j=sd(4528,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(79951)|0;f[a>>2]=f[i+(c*240|0)+16>>2];j=sd(13536,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(79961)|0;f[a>>2]=f[i+(c*240|0)+20>>2];j=sd(13528,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(79975)|0;f[a>>2]=f[i+(c*240|0)+24>>2];j=sd(13528,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(79988)|0;f[a>>2]=f[i+(c*240|0)+28>>2];j=sd(13536,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(8e4)|0;f[a>>2]=f[i+(c*240|0)+32>>2];j=sd(13536,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(80043)|0;p[a>>3]=+p[i+(c*240|0)+184>>3];j=sd(13568,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(80056)|0;p[a>>3]=+p[i+(c*240|0)+192>>3];j=sd(13568,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(80013)|0;j=Wpb(24)|0;p[j>>3]=+p[i+(c*240|0)+40>>3];p[j+8>>3]=+p[i+(c*240|0)+48>>3];p[j+16>>3]=+p[i+(c*240|0)+56>>3];f[a>>2]=j;j=sd(4656,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(80022)|0;j=Wpb(24)|0;p[j>>3]=+p[i+(c*240|0)+64>>3];p[j+8>>3]=+p[i+(c*240|0)+72>>3];p[j+16>>3]=+p[i+(c*240|0)+80>>3];f[a>>2]=j;j=sd(4656,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);k=nd(114532)|0;j=Wpb(24)|0;f[j>>2]=f[i+(c*240|0)+88>>2];f[j+4>>2]=f[i+(c*240|0)+92>>2];f[j+8>>2]=f[i+(c*240|0)+96>>2];f[j+12>>2]=f[i+(c*240|0)+100>>2];f[j+16>>2]=f[i+(c*240|0)+104>>2];f[j+20>>2]=f[i+(c*240|0)+108>>2];f[a>>2]=j;j=sd(1392,a|0)|0;rd(l|0,k|0,j|0);ed(j|0);ed(k|0);ed(l|0);c=c+1|0;b=f[(n+36|0)>>2]|0}while(c>>>0<(((f[(n+40|0)>>2]|0)-b|0)/240|0)>>>0)}ed(e|0);ed(d|0)}else o=1}b=1;if(b){b=0;if((f[(n+12|0)>>2]|0)==(f[(n+16|0)>>2]|0)){k=f[m>>2]|0;l=nd(80064)|0;rd(k|0,l|0,2);ed(l|0);ed(2)}else b=1}if(b)if(1){k=od()|0;b=f[m>>2]|0;l=nd(80064)|0;rd(b|0,l|0,k|0);ed(l|0);l=md()|0;b=nd(79918)|0;rd(k|0,b|0,l|0);ed(b|0);b=f[(n+12|0)>>2]|0;if((f[(n+16|0)>>2]|0)!=(b|0)){j=0;do{e=od()|0;f[a>>2]=j;g=sd(13536,a|0)|0;rd(l|0,g|0,e|0);ed(g|0);g=nd(79927)|0;h=Wpb(8)|0;i=b+(j*208|0)|0;c=f[i+4>>2]|0;f[h>>2]=f[i>>2];f[h+4>>2]=c;f[a>>2]=h;h=sd(4520,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(79939)|0;h=Wpb(8)|0;c=b+(j*208|0)+8|0;i=f[c+4>>2]|0;f[h>>2]=f[c>>2];f[h+4>>2]=i;f[a>>2]=h;h=sd(4528,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(79951)|0;f[a>>2]=f[b+(j*208|0)+16>>2];h=sd(13536,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(80069)|0;f[a>>2]=f[b+(j*208|0)+20>>2];h=sd(13528,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(79975)|0;f[a>>2]=f[b+(j*208|0)+24>>2];h=sd(13528,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(79988)|0;f[a>>2]=f[b+(j*208|0)+28>>2];h=sd(13536,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(8e4)|0;f[a>>2]=f[b+(j*208|0)+32>>2];h=sd(13536,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(80043)|0;p[a>>3]=+p[b+(j*208|0)+104>>3];h=sd(13568,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(80056)|0;p[a>>3]=+p[b+(j*208|0)+112>>3];h=sd(13568,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(114532)|0;h=Wpb(24)|0;f[h>>2]=f[b+(j*208|0)+36>>2];f[h+4>>2]=f[b+(j*208|0)+40>>2];f[h+8>>2]=f[b+(j*208|0)+44>>2];f[h+12>>2]=f[b+(j*208|0)+48>>2];f[h+16>>2]=f[b+(j*208|0)+52>>2];f[h+20>>2]=f[b+(j*208|0)+56>>2];f[a>>2]=h;h=sd(1392,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=nd(80079)|0;h=Wpb(24)|0;p[h>>3]=+p[b+(j*208|0)+64>>3];p[h+8>>3]=+p[b+(j*208|0)+72>>3];p[h+16>>3]=+p[b+(j*208|0)+80>>3];f[a>>2]=h;h=sd(4656,a|0)|0;rd(e|0,g|0,h|0);ed(h|0);ed(g|0);g=md()|0;h=nd(80085)|0;rd(e|0,h|0,g|0);ed(h|0);h=b+(j*208|0)+88|0;i=b+(j*208|0)+92|0;c=f[h>>2]|0;if((f[i>>2]|0)!=(c|0)){d=0;do{r=c;q=d*3|0;f[a>>2]=q;s=sd(13536,a|0)|0;f[a>>2]=f[r+(d*12|0)>>2];t=sd(13560,a|0)|0;rd(g|0,s|0,t|0);ed(t|0);ed(s|0);f[a>>2]=q+1;s=sd(13536,a|0)|0;f[a>>2]=f[r+(d*12|0)+4>>2];t=sd(13560,a|0)|0;rd(g|0,s|0,t|0);ed(t|0);ed(s|0);f[a>>2]=q+2;q=sd(13536,a|0)|0;f[a>>2]=f[r+(d*12|0)+8>>2];r=sd(13560,a|0)|0;rd(g|0,q|0,r|0);ed(r|0);ed(q|0);d=d+1|0;c=f[h>>2]|0}while(d>>>0<(((f[i>>2]|0)-c|0)/12|0)>>>0)}t=nd(80105)|0;f[a>>2]=f[b+(j*208|0)+100>>2];b=sd(13528,a|0)|0;rd(e|0,t|0,b|0);ed(b|0);ed(t|0);ed(g|0);ed(e|0);j=j+1|0;b=f[(n+12|0)>>2]|0}while(j>>>0<(((f[(n+16|0)>>2]|0)-b|0)/208|0)>>>0)}ed(l|0);ed(k|0)}if((f[(n+24|0)>>2]|0)==(f[(n+28|0)>>2]|0)){s=f[m>>2]|0;t=nd(80079)|0;rd(s|0,t|0,2);ed(t|0);ed(2);u=a;f[a+1576>>2]=5;break a}e=od()|0;b=f[m>>2]|0;d=nd(80079)|0;rd(b|0,d|0,e|0);ed(d|0);d=md()|0;b=nd(79918)|0;rd(e|0,b|0,d|0);ed(b|0);b=f[(n+24|0)>>2]|0;if((f[(n+28|0)>>2]|0)!=(b|0)){c=0;do{q=b;t=od()|0;f[a>>2]=c;s=sd(13536,a|0)|0;rd(d|0,s|0,t|0);ed(s|0);s=nd(79927)|0;r=Wpb(8)|0;m=q+(c*120|0)|0;l=f[m+4>>2]|0;f[r>>2]=f[m>>2];f[r+4>>2]=l;f[a>>2]=r;r=sd(4520,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(79939)|0;r=Wpb(8)|0;l=q+(c*120|0)+8|0;m=f[l+4>>2]|0;f[r>>2]=f[l>>2];f[r+4>>2]=m;f[a>>2]=r;r=sd(4528,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(79951)|0;f[a>>2]=f[q+(c*120|0)+16>>2];r=sd(13536,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(80132)|0;f[a>>2]=f[q+(c*120|0)+20>>2];r=sd(13528,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(79975)|0;f[a>>2]=f[q+(c*120|0)+24>>2];r=sd(13528,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(79988)|0;f[a>>2]=f[q+(c*120|0)+28>>2];r=sd(13536,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(8e4)|0;f[a>>2]=f[q+(c*120|0)+32>>2];r=sd(13536,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(80043)|0;p[a>>3]=+p[q+(c*120|0)+64>>3];r=sd(13568,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(80056)|0;p[a>>3]=+p[q+(c*120|0)+72>>3];r=sd(13568,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);s=nd(80079)|0;r=Wpb(24)|0;p[r>>3]=+p[q+(c*120|0)+40>>3];p[r+8>>3]=+p[q+(c*120|0)+48>>3];p[r+16>>3]=+p[q+(c*120|0)+56>>3];f[a>>2]=r;r=sd(4656,a|0)|0;rd(t|0,s|0,r|0);ed(r|0);ed(s|0);ed(t|0);c=c+1|0;b=f[(n+24|0)>>2]|0}while(c>>>0<(((f[(n+28|0)>>2]|0)-b|0)/120|0)>>>0)}ed(d|0);ed(e|0);u=a;f[a+1576>>2]=5;break a}f[a+1560>>2]=o}
function fi(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function gi(){return u|0}function hi(a){a=a|0;u=a}function ii(a,b){a=a|0;b=b|0;u=a;v=b}function ji(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function ki(a){a=a|0;I=a}function li(){return I|0}function mi(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;m=s;r=e;l=r+g|0;j=f[52658]|0;a:do if(j|0){i=j+-1|0;h=(i&j|0)==0;if(h)k=i&a;else if(j>>>0>a>>>0)k=a;else k=(a>>>0)%(j>>>0)|0;g=f[(f[52657]|0)+(k<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){b:do if(h)while(1){p=f[g+4>>2]|0;h=(p|0)==(a|0);if(!(h|(p&i|0)==(k|0)))break a;if(h)if((f[g+8>>2]|0)==(a|0)){o=g;break b}g=f[g>>2]|0;if(!g)break a}else while(1){h=f[g+4>>2]|0;if((h|0)==(a|0)){if((f[g+8>>2]|0)==(a|0)){o=g;break b}}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0))break a}g=f[g>>2]|0;if(!g)break a}while(0);p=o+12|0;if(!(b[208088]|0))if(rrb(208088)|0){if(!(b[208096]|0))if(rrb(208096)|0){g=210664;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[52679]=1.0}if(!(b[215136]|0)){b[215136]=1;Ev(210664,0,1095);Fv(210664,1,1096);Gv(210664,2,1097);Hv(210664,3,1098);Iv(210664,4,1099);Jv(210664,5,1100);Kv(210664,6,1101);Lv(210664,7,1102);Mv(210664,8,1103);Nv(210664,9,1104);Ov(210664,10,1105);Pv(210664,11,1106);Qv(210664,12,1107);Rv(210664,13,1108);Sv(210664,14,1109);Tv(210664,15,1110);Uv(210664,16,1111);Vv(210664,17,1112);Wv(210664,18,1113);Xv(210664,19,1114);Yv(210664,20,1115);Zv(210664,21,1116);_v(210664,22,1117);$v(210664,23,1118);aw(210664,24,1119);bw(210664,25,1120);cw(210664,26,1121);dw(210664,27,1122);ew(210664,28,1123);fw(210664,29,1124);gw(210664,30,1125);hw(210664,31,1126);iw(210664,32,1127);jw(210664,33,1128);kw(210664,34,1129);lw(210664,35,1130);mw(210664,36,1131);nw(210664,37,1132);ow(210664,38,1133);pw(210664,39,1134);qw(210664,40,1135);rw(210664,41,1136);sw(210664,42,1137);tw(210664,43,1138);uw(210664,44,1139);vw(210664,45,1140);ww(210664,46,1141);xw(210664,47,1142);yw(210664,48,1143);zw(210664,49,1144);Aw(210664,50,1145)}}j=c<<24>>24==0;if(j)g=d[o+20>>1]|0;else if(c<<24>>24==1)g=d[p+10>>1]|0;else g=46;g=g&65535;a=f[52669]|0;h=a;do if((f[52670]|0)-a>>5>>>0>g>>>0){i=h+(g<<5)|0;a=f[i>>2]|0;if((Qg[f[(f[a>>2]|0)+8>>2]&127](a,r,l)|0)==(l|0)){l=f[i>>2]|0;l=Ng[f[(f[l>>2]|0)+12>>2]&511](l)|0;f[m>>2]=l;g=f[h+(g<<5)+24>>2]|0;if(!g)ud();nh[f[(f[g>>2]|0)+24>>2]&1023](g,m);if(j){jd(f[52656]|0);f[m>>2]=f[52656];ed(cd(f[p>>2]|0,1,16304,m|0)|0);break}g=o+16|0;if(c<<24>>24==1){jd(f[52656]|0);f[m>>2]=f[52656];ed(cd(f[g>>2]|0,1,16304,m|0)|0);break}else{l=f[52656]|0;f[52656]=0;c=l;jd(c|0);f[m>>2]=l;ed(cd(f[g>>2]|0,1,16304,m|0)|0);ed(c|0);break}}else q=35}else q=35;while(0);if((q|0)==35)xd(0)|0;g=f[o>>2]|0;c=f[52658]|0;h=f[o+4>>2]|0;k=c+-1|0;a=(k&c|0)==0;if(a)l=k&h;else if(h>>>0<c>>>0)l=h;else l=(h>>>0)%(c>>>0)|0;j=(f[52657]|0)+(l<<2)|0;m=f[j>>2]|0;while(1){h=f[m>>2]|0;if((h|0)==(o|0))break;else m=h}if((m|0)==210636)q=53;else{h=f[m+4>>2]|0;if(a)h=h&k;else if(h>>>0>=c>>>0)h=(h>>>0)%(c>>>0)|0;if((h|0)==(l|0)){h=g;q=61}else q=53}do if((q|0)==53){if(g|0){h=f[g+4>>2]|0;if(a)i=h&k;else if(h>>>0<c>>>0)i=h;else i=(h>>>0)%(c>>>0)|0;if((i|0)==(l|0)){q=63;break}}f[j>>2]=0;h=f[o>>2]|0;q=61}while(0);if((q|0)==61){g=h;if(h){h=f[h+4>>2]|0;q=63}}if((q|0)==63){if(a)h=h&k;else if(h>>>0>=c>>>0)h=(h>>>0)%(c>>>0)|0;if((h|0)!=(l|0)){f[(f[52657]|0)+(h<<2)>>2]=m;g=f[o>>2]|0}}f[m>>2]=g;f[o>>2]=0;f[52660]=(f[52660]|0)+-1;ed(f[o+16>>2]|0);ed(f[p>>2]|0);Zpb(o)}}}while(0);if(!e){u=s;return}_pb(r);u=s;return}function ni(a){a=a|0;var b=0,c=0;a=u;u=u+1168|0;Wc(1152,43708,82486,1,82488,1146);Xc(1152,13560,82491,8,0,13560,82495,1,0);Xc(1152,13560,82491,8,1,13560,82495,1,1);Xc(1152,13560,82491,8,2,13560,82495,1,2);Jc(1152);Wc(4656,43717,82486,2,82488,1147);Xc(4656,13568,82500,9,0,13568,82504,2,0);Xc(4656,13568,82500,9,1,13568,82504,2,1);Xc(4656,13568,82500,9,2,13568,82504,2,2);Jc(4656);Wc(824,43726,82486,3,82488,1148);Xc(824,13560,82491,10,0,13560,82495,3,0);Xc(824,13560,82491,10,1,13560,82495,3,1);Xc(824,13560,82491,10,2,13560,82495,3,2);Xc(824,13560,82491,10,3,13560,82495,3,3);Jc(824);Wc(4896,43735,82486,4,82488,1149);b=Wpb(4)|0;f[b>>2]=6;c=Wpb(4)|0;f[c>>2]=12;Xc(4896,13560,82491,11,b|0,13560,82495,4,c|0);c=Wpb(4)|0;f[c>>2]=7;b=Wpb(4)|0;f[b>>2]=13;Xc(4896,13560,82491,11,c|0,13560,82495,4,b|0);b=Wpb(4)|0;f[b>>2]=8;c=Wpb(4)|0;f[c>>2]=14;Xc(4896,13560,82491,11,b|0,13560,82495,4,c|0);c=Wpb(4)|0;f[c>>2]=9;b=Wpb(4)|0;f[b>>2]=15;Xc(4896,13560,82491,11,c|0,13560,82495,4,b|0);Jc(4896);Wc(1872,43743,82486,5,82488,1150);b=Wpb(4)|0;f[b>>2]=10;c=Wpb(4)|0;f[c>>2]=16;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=11;b=Wpb(4)|0;f[b>>2]=17;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=12;c=Wpb(4)|0;f[c>>2]=18;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=13;b=Wpb(4)|0;f[b>>2]=19;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=14;c=Wpb(4)|0;f[c>>2]=20;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=15;b=Wpb(4)|0;f[b>>2]=21;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=16;c=Wpb(4)|0;f[c>>2]=22;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=17;b=Wpb(4)|0;f[b>>2]=23;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=18;c=Wpb(4)|0;f[c>>2]=24;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=19;b=Wpb(4)|0;f[b>>2]=25;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=20;c=Wpb(4)|0;f[c>>2]=26;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=21;b=Wpb(4)|0;f[b>>2]=27;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=22;c=Wpb(4)|0;f[c>>2]=28;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=23;b=Wpb(4)|0;f[b>>2]=29;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);b=Wpb(4)|0;f[b>>2]=24;c=Wpb(4)|0;f[c>>2]=30;Xc(1872,13560,82491,12,b|0,13560,82495,5,c|0);c=Wpb(4)|0;f[c>>2]=25;b=Wpb(4)|0;f[b>>2]=31;Xc(1872,13560,82491,12,c|0,13560,82495,5,b|0);Jc(1872);Wc(5024,43752,82486,6,82488,1151);b=Wpb(4)|0;f[b>>2]=26;c=Wpb(4)|0;f[c>>2]=32;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=27;b=Wpb(4)|0;f[b>>2]=33;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=28;c=Wpb(4)|0;f[c>>2]=34;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=29;b=Wpb(4)|0;f[b>>2]=35;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=30;c=Wpb(4)|0;f[c>>2]=36;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=31;b=Wpb(4)|0;f[b>>2]=37;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=32;c=Wpb(4)|0;f[c>>2]=38;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=33;b=Wpb(4)|0;f[b>>2]=39;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=34;c=Wpb(4)|0;f[c>>2]=40;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=35;b=Wpb(4)|0;f[b>>2]=41;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=36;c=Wpb(4)|0;f[c>>2]=42;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=37;b=Wpb(4)|0;f[b>>2]=43;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=38;c=Wpb(4)|0;f[c>>2]=44;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=39;b=Wpb(4)|0;f[b>>2]=45;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);b=Wpb(4)|0;f[b>>2]=40;c=Wpb(4)|0;f[c>>2]=46;Xc(5024,13568,82500,13,b|0,13568,82504,6,c|0);c=Wpb(4)|0;f[c>>2]=41;b=Wpb(4)|0;f[b>>2]=47;Xc(5024,13568,82500,13,c|0,13568,82504,6,b|0);Jc(5024);Wc(2048,43761,82486,7,82488,1152);Xc(2048,13560,82491,14,0,13560,82495,7,0);Xc(2048,13560,82491,14,1,13560,82495,7,1);Xc(2048,13560,82491,14,2,13560,82495,7,2);Jc(2048);Wc(400,43770,82486,8,82488,1153);Xc(400,13560,82491,15,0,13560,82495,8,0);Xc(400,13560,82491,15,1,13560,82495,8,1);Xc(400,13560,82491,15,2,13560,82495,8,2);Xc(400,13560,82491,15,3,13560,82495,8,3);Jc(400);Wc(4528,43780,82486,9,82488,1154);b=Wpb(4)|0;f[b>>2]=434;c=Wpb(4)|0;f[c>>2]=680;Xc(4528,13536,83121,141,b|0,13536,83125,37,c|0);c=Wpb(4)|0;f[c>>2]=435;b=Wpb(4)|0;f[b>>2]=681;Xc(4528,13536,83121,141,c|0,13536,83125,37,b|0);Jc(4528);Wc(4520,43783,82486,10,82488,1155);b=Wpb(4)|0;f[b>>2]=436;c=Wpb(4)|0;f[c>>2]=682;Xc(4520,13536,83121,142,b|0,13536,83125,38,c|0);c=Wpb(4)|0;f[c>>2]=437;b=Wpb(4)|0;f[b>>2]=683;Xc(4520,13536,83121,142,c|0,13536,83125,38,b|0);Jc(4520);Yc(3184,43787,82486,11,82488,1156);Kc(3184);Yc(3104,43792,82486,12,82488,1157);b=Wpb(4)|0;f[b>>2]=438;c=Wpb(4)|0;f[c>>2]=684;Zc(3104,43796,4656,83121,143,b|0,4656,83125,39,c|0);c=Wpb(4)|0;f[c>>2]=439;b=Wpb(4)|0;f[b>>2]=685;Zc(3104,43803,4656,83121,143,c|0,4656,83125,39,b|0);Kc(3104);Yc(5040,43813,82486,13,82488,1158);b=Wpb(4)|0;f[b>>2]=0;c=Wpb(4)|0;f[c>>2]=0;Zc(5040,43828,400,83121,144,b|0,400,83125,40,c|0);c=Wpb(4)|0;f[c>>2]=16;b=Wpb(4)|0;f[b>>2]=16;Zc(5040,43836,400,83121,144,c|0,400,83125,40,b|0);Kc(5040);Yc(1272,43845,82486,14,82488,1159);b=Wpb(4)|0;f[b>>2]=0;c=Wpb(4)|0;f[c>>2]=0;Zc(1272,43859,5040,83121,145,b|0,5040,83125,41,c|0);Kc(1272);Yc(3392,43866,82486,15,82488,1160);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(3392,43877,13568,82500,16,c|0,13568,82504,9,b|0);b=Wpb(4)|0;f[b>>2]=8;c=Wpb(4)|0;f[c>>2]=8;Zc(3392,43890,13568,82500,16,b|0,13568,82504,9,c|0);Kc(3392);Yc(5048,43904,82486,16,82488,1161);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(5048,43925,13536,83121,146,c|0,13536,83125,42,b|0);b=Wpb(4)|0;f[b>>2]=4;c=Wpb(4)|0;f[c>>2]=4;Zc(5048,43944,13536,83121,146,b|0,13536,83125,42,c|0);Kc(5048);Yc(4088,43971,82486,17,82488,1162);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(4088,43978,13560,82491,17,c|0,13560,82495,10,b|0);b=Wpb(4)|0;f[b>>2]=4;c=Wpb(4)|0;f[c>>2]=4;Zc(4088,43982,13560,82491,17,b|0,13560,82495,10,c|0);Kc(4088);Yc(4008,43986,82486,18,82488,1163);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(4008,43978,13568,82500,18,c|0,13568,82504,11,b|0);b=Wpb(4)|0;f[b>>2]=8;c=Wpb(4)|0;f[c>>2]=8;Zc(4008,43982,13568,82500,18,b|0,13568,82504,11,c|0);Kc(4008);Yc(1392,43993,82486,19,82488,1164);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(1392,43978,1152,83121,147,c|0,1152,83125,43,b|0);b=Wpb(4)|0;f[b>>2]=12;c=Wpb(4)|0;f[c>>2]=12;Zc(1392,43982,1152,83121,147,b|0,1152,83125,43,c|0);Kc(1392);Yc(3648,43999,82486,20,82488,1165);c=Wpb(4)|0;f[c>>2]=0;b=Wpb(4)|0;f[b>>2]=0;Zc(3648,44012,4656,83121,148,c|0,4656,83125,44,b|0);b=Wpb(4)|0;f[b>>2]=24;c=Wpb(4)|0;f[c>>2]=24;Zc(3648,44019,4656,83121,148,b|0,4656,83125,44,c|0);c=Wpb(4)|0;f[c>>2]=48;b=Wpb(4)|0;f[b>>2]=48;Zc(3648,44026,13568,82500,19,c|0,13568,82504,12,b|0);Kc(3648);Yc(5056,44035,82486,21,82488,1166);b=Wpb(4)|0;f[b>>2]=0;c=Wpb(4)|0;f[c>>2]=0;Zc(5056,44046,13568,82500,20,b|0,13568,82504,13,c|0);c=Wpb(4)|0;f[c>>2]=8;b=Wpb(4)|0;f[b>>2]=8;Zc(5056,44064,13536,83121,149,c|0,13536,83125,45,b|0);b=Wpb(4)|0;f[b>>2]=12;c=Wpb(4)|0;f[c>>2]=12;Zc(5056,44080,13536,83121,149,b|0,13536,83125,45,c|0);c=Wpb(4)|0;f[c>>2]=16;b=Wpb(4)|0;f[b>>2]=16;Zc(5056,44095,13536,83121,149,c|0,13536,83125,45,b|0);f[a+1040>>2]=0;f[a+1044>>2]=0;yr(a);f[a+1032>>2]=0;f[a+1036>>2]=0;xr(a);G=f[a+1032>>2]|0;D=f[a+1036>>2]|0;H=+n[a+1036>>2];f[a+1032>>2]=0;f[a+1036>>2]=0;if((G|0)==5){u=a;return}u=a}function oi(a){a=a|0;return +(+n[a>>2])}function pi(a,b){a=a|0;b=+b;n[a>>2]=b;return}function qi(a){a=a|0;return +(+n[a+4>>2])}function ri(a,b){a=a|0;b=+b;n[a+4>>2]=b;return}function si(a){a=a|0;return +(+n[a+8>>2])}function ti(a,b){a=a|0;b=+b;n[a+8>>2]=b;return}function ui(a){a=a|0;return +(+n[a+12>>2])}function vi(a,b){a=a|0;b=+b;n[a+12>>2]=b;return}function wi(a){a=a|0;return +(+n[a>>2])}function xi(a,b){a=a|0;b=+b;n[a>>2]=b;return}function yi(a){a=a|0;return +(+n[a+4>>2])}function zi(a,b){a=a|0;b=+b;n[a+4>>2]=b;return}function Ai(a){a=a|0;return +(+n[a+8>>2])}function Bi(a,b){a=a|0;b=+b;n[a+8>>2]=b;return}function Ci(a){a=a|0;return +(+n[a+12>>2])}function Di(a,b){a=a|0;b=+b;n[a+12>>2]=b;return}function Ei(a){a=a|0;return +(+n[a+16>>2])}function Fi(a,b){a=a|0;b=+b;n[a+16>>2]=b;return}function Gi(a){a=a|0;return +(+n[a+20>>2])}function Hi(a,b){a=a|0;b=+b;n[a+20>>2]=b;return}function Ii(a){a=a|0;return +(+n[a+24>>2])}function Ji(a,b){a=a|0;b=+b;n[a+24>>2]=b;return}function Ki(a){a=a|0;return +(+n[a+28>>2])}function Li(a,b){a=a|0;b=+b;n[a+28>>2]=b;return}function Mi(a){a=a|0;return +(+n[a+32>>2])}function Ni(a,b){a=a|0;b=+b;n[a+32>>2]=b;return}function Oi(a){a=a|0;return +(+n[a+36>>2])}function Pi(a,b){a=a|0;b=+b;n[a+36>>2]=b;return}function Qi(a){a=a|0;return +(+n[a+40>>2])}function Ri(a,b){a=a|0;b=+b;n[a+40>>2]=b;return}function Si(a){a=a|0;return +(+n[a+44>>2])}function Ti(a,b){a=a|0;b=+b;n[a+44>>2]=b;return}function Ui(a){a=a|0;return +(+n[a+48>>2])}function Vi(a,b){a=a|0;b=+b;n[a+48>>2]=b;return}function Wi(a){a=a|0;return +(+n[a+52>>2])}function Xi(a,b){a=a|0;b=+b;n[a+52>>2]=b;return}function Yi(a){a=a|0;return +(+n[a+56>>2])}function Zi(a,b){a=a|0;b=+b;n[a+56>>2]=b;return}function _i(a){a=a|0;return +(+n[a+60>>2])}function $i(a,b){a=a|0;b=+b;n[a+60>>2]=b;return}function aj(a){a=a|0;return +(+p[a>>3])}function bj(a,b){a=a|0;b=+b;p[a>>3]=b;return}function cj(a){a=a|0;return +(+p[a+8>>3])}function dj(a,b){a=a|0;b=+b;p[a+8>>3]=b;return}function ej(a){a=a|0;return +(+p[a+16>>3])}function fj(a,b){a=a|0;b=+b;p[a+16>>3]=b;return}function gj(a){a=a|0;return +(+p[a+24>>3])}function hj(a,b){a=a|0;b=+b;p[a+24>>3]=b;return}function ij(a){a=a|0;return +(+p[a+32>>3])}function jj(a,b){a=a|0;b=+b;p[a+32>>3]=b;return}function kj(a){a=a|0;return +(+p[a+40>>3])}function lj(a,b){a=a|0;b=+b;p[a+40>>3]=b;return}function mj(a){a=a|0;return +(+p[a+48>>3])}function nj(a,b){a=a|0;b=+b;p[a+48>>3]=b;return}function oj(a){a=a|0;return +(+p[a+56>>3])}function pj(a,b){a=a|0;b=+b;p[a+56>>3]=b;return}function qj(a){a=a|0;return +(+p[a+64>>3])}function rj(a,b){a=a|0;b=+b;p[a+64>>3]=b;return}function sj(a){a=a|0;return +(+p[a+72>>3])}function tj(a,b){a=a|0;b=+b;p[a+72>>3]=b;return}function uj(a){a=a|0;return +(+p[a+80>>3])}function vj(a,b){a=a|0;b=+b;p[a+80>>3]=b;return}function wj(a){a=a|0;return +(+p[a+88>>3])}function xj(a,b){a=a|0;b=+b;p[a+88>>3]=b;return}function yj(a){a=a|0;return +(+p[a+96>>3])}function zj(a,b){a=a|0;b=+b;p[a+96>>3]=b;return}function Aj(a){a=a|0;return +(+p[a+104>>3])}function Bj(a,b){a=a|0;b=+b;p[a+104>>3]=b;return}function Cj(a){a=a|0;return +(+p[a+112>>3])}function Dj(a,b){a=a|0;b=+b;p[a+112>>3]=b;return}function Ej(a){a=a|0;return +(+p[a+120>>3])}function Fj(a,b){a=a|0;b=+b;p[a+120>>3]=b;return}function Gj(a){a=a|0;return a|0}function Hj(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function Ij(a){a=a|0;return a+4|0}function Jj(a,b){a=a|0;b=b|0;f[a+4>>2]=f[b>>2];return}function Kj(a){a=a|0;return a|0}function Lj(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function Mj(a){a=a|0;return a+4|0}function Nj(a,b){a=a|0;b=b|0;f[a+4>>2]=f[b>>2];return}function Oj(a){a=a|0;return a|0}function Pj(a,b){a=a|0;b=b|0;p[a>>3]=+p[b>>3];p[a+8>>3]=+p[b+8>>3];p[a+16>>3]=+p[b+16>>3];return}function Qj(a){a=a|0;return a+24|0}function Rj(a,b){a=a|0;b=b|0;p[a+24>>3]=+p[b>>3];p[a+32>>3]=+p[b+8>>3];p[a+40>>3]=+p[b+16>>3];return}function Sj(a){a=a|0;jga(a);return}function Tj(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;fga(a,b,c,d,e,f,g,h);return}function Uj(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;fga(a,b,c,d,e,f,g,0.0);return}function Vj(a){a=a|0;var b=0,c=0;b=u;u=u+688|0;c=b;jga(c);HI(a,c)|0;u=b;return}function Wj(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;var h=0,i=0;h=u;u=u+688|0;i=h;fga(i,b,c,d,e,f,g,0.0);HI(a,i)|0;u=h;return}function Xj(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;var i=0,j=0;i=u;u=u+688|0;j=i;fga(j,b,c,d,e,f,g,h);HI(a,j)|0;u=i;return}function Yj(a){a=a|0;return Fga(a)|0}function Zj(a){a=a|0;return Gga(a)|0}function _j(a){a=a|0;return Iga(a)|0}function $j(a){a=a|0;return b[a>>0]|0}function ak(a,b){a=a|0;b=b|0;oga(a,b);return}function bk(a){a=a|0;return a+8|0}function ck(a,b){a=a|0;b=b|0;gga(a,b);return}function dk(a){a=a|0;return a+32|0}function ek(a,b){a=a|0;b=b|0;mga(a,b);return}function fk(a){a=a|0;return a+56|0}function gk(a,b){a=a|0;b=b|0;nga(a,b);return}function hk(a){a=a|0;return +(+sga(a))}function ik(a,b){a=a|0;b=+b;iga(a,b);return}function jk(a){a=a|0;return +(+p[a+208>>3])}function kk(a){a=a|0;return +(+p[a+216>>3])}function lk(a,b){a=a|0;b=+b;pga(a,b);return}function mk(a,b,c){a=a|0;b=+b;c=+c;hga(a,b,c);return}function nk(a,b){a=a|0;b=+b;rga(a,b);return}function ok(a,b,c){a=a|0;b=+b;c=+c;qga(a,b,c);return}function pk(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;tga(a,b,c,d);return}function qk(a,b,c){a=a|0;b=+b;c=+c;xga(a,b,c);return}function rk(a,b){a=a|0;b=+b;yga(a,b);return}function sk(a,b){a=a|0;b=+b;zga(a,b);return}function tk(a,b,c){a=a|0;b=+b;c=+c;uga(a,b,c);return}function uk(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0;d=u;u=u+32|0;e=d;p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];vga(a,e,c);u=d;return}function vk(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;wga(a,b,c,d);return}function wk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+32|0;e=d;Kga(e,b,c);p[a>>3]=+p[e>>3];p[a+8>>3]=+p[e+8>>3];p[a+16>>3]=+p[e+16>>3];u=d;return}function xk(){return 688}function yk(a){a=a|0;return Xpb(a)|0}function zk(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;l=u;u=u+16|0;k=l;m=l+4|0;n=Wpb(12)|0;f[n>>2]=18292;f[n+4>>2]=f[i>>2];f[i>>2]=0;f[n+8>>2]=f[j>>2];f[j>>2]=0;f[k>>2]=n;f[m>>2]=b;d3(k,a,m,c,d,e,g,h);a=f[m>>2]|0;f[m>>2]=0;if(a|0)_pb(a);a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=l;return}function Ak(a){a=a|0;if(!a)return;_pb(a);return}function Bk(a){a=a|0;return a|0}function Ck(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(!(b[208808]|0))if(rrb(208808)|0){f[52682]=0;f[52683]=0;f[52684]=0;f[52685]=0;f[52681]=18328;e=hd(82365)|0;f[52686]=e;e=fd(82372)|0;f[52687]=e;f[52688]=1}e=_2()|0;e=Ng[f[(f[e>>2]|0)+16>>2]&511](e)|0;f[52685]=e;e=c;ed(f[52688]|0);f[52688]=f[a>>2];f[a>>2]=0;b0a(210724,e,d);if(!c)return;_pb(e);return}function Dk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;c=B3(i,c,d,e,g)|0;a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return c|0}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return c|0}function Ek(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j+12|0;i=j;f[g>>2]=b;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;K4(i,g,d);b=f[e>>2]|0;if((b|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);b=f[e>>2]|0}}if(b|0){c=f[h>>2]|0;if((c|0)!=(b|0))f[h>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}Qy(a,i);d=f[i>>2]|0;if(!d){u=j;return}b=i+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);u=j;return}function Fk(a,b,c,d,e,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+48|0;s=r+40|0;p=r+20|0;n=r;f[p>>2]=a;f[p+4>>2]=b;o=p+8|0;f[o>>2]=0;q=p+12|0;f[q>>2]=0;f[p+16>>2]=0;f[n>>2]=c;f[n+4>>2]=d;c=n+8|0;f[c>>2]=0;d=n+12|0;f[d>>2]=0;f[n+16>>2]=0;l=f[l>>2]|0;jd(l|0);m=f[m>>2]|0;jd(m|0);a=Wpb(12)|0;f[a>>2]=18828;f[a+4>>2]=l;f[a+8>>2]=m;f[s>>2]=a;J7(s,p,n,e,g,h,i,j,k);a=f[s>>2]|0;f[s>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[c>>2]|0;if((a|0)==(f[d>>2]|0)){b=f[n>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Zpb(a)}a=f[o>>2]|0;if((a|0)==(f[q>>2]|0)){b=f[p>>2]|0;if(b){_pb(b);a=f[o>>2]|0}}if(!a){u=r;return}if((f[q>>2]|0)!=(a|0))f[q>>2]=a;Zpb(a);u=r;return}function Gk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=18912;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;K7(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+32|0;d=b;c=b+16|0;e=b+8|0;L7(e);DE(c,e);c=f[c>>2]|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Ik(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=18976;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;M7(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Jk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19008;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;S7(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Kk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19040;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;_7(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Lk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=19072;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;j8(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19128;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;g8(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Nk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=19160;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;m8(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Ok(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+32|0;d=b;c=b+16|0;e=b+8|0;p8(e);EE(c,e);c=f[c>>2]|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Pk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;c=u;u=u+32|0;d=c;e=c+16|0;g=c+8|0;C3(g,a);EE(e,g);a=f[e>>2]|0;jd(a|0);f[d>>2]=a;ed(cd(f[b>>2]|0,1,16304,d|0)|0);ed(a|0);u=c;return}function Qk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19208;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;q8(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Rk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19240;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;E8(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Sk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=19272;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;M8(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Tk(a,b,c,d,e,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=u;u=u+112|0;z=y;A=y+96|0;B=y+88|0;w=y+68|0;t=y+48|0;q=y+28|0;p=y+8|0;f[w>>2]=e;f[w+4>>2]=g;v=w+8|0;f[v>>2]=0;x=w+12|0;f[x>>2]=0;f[w+16>>2]=0;f[t>>2]=h;f[t+4>>2]=i;r=t+8|0;f[r>>2]=0;s=t+12|0;f[s>>2]=0;f[t+16>>2]=0;f[q>>2]=j;f[q+4>>2]=k;j=q+8|0;f[j>>2]=0;k=q+12|0;f[k>>2]=0;f[q+16>>2]=0;f[p>>2]=l;f[p+4>>2]=m;h=p+8|0;f[h>>2]=0;i=p+12|0;f[i>>2]=0;f[p+16>>2]=0;e=f[n>>2]|0;jd(e|0);o=f[o>>2]|0;jd(o|0);Q6(B,a,b,c,d,w,t,q,p);DE(A,B);d=f[A>>2]|0;jd(d|0);f[z>>2]=d;ed(cd(e|0,1,16304,z|0)|0);ed(d|0);ed(o|0);ed(e|0);e=f[h>>2]|0;if((e|0)==(f[i>>2]|0)){g=f[p>>2]|0;if(g){_pb(g);e=f[h>>2]|0}}if(e|0){g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}e=f[j>>2]|0;if((e|0)==(f[k>>2]|0)){g=f[q>>2]|0;if(g){_pb(g);e=f[j>>2]|0}}if(e|0){g=f[k>>2]|0;if((g|0)!=(e|0))f[k>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}e=f[r>>2]|0;if((e|0)==(f[s>>2]|0)){g=f[t>>2]|0;if(g){_pb(g);e=f[r>>2]|0}}if(e|0){g=f[s>>2]|0;if((g|0)!=(e|0))f[s>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}e=f[v>>2]|0;if((e|0)==(f[x>>2]|0)){g=f[w>>2]|0;if(g){_pb(g);e=f[v>>2]|0}}if(!e){u=y;return}g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e);u=y;return}function Uk(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+96|0;B=A+88|0;y=A+68|0;w=A+48|0;s=A+28|0;r=A+8|0;C=A;f[y>>2]=h;f[y+4>>2]=i;x=y+8|0;f[x>>2]=0;z=y+12|0;f[z>>2]=0;f[y+16>>2]=0;f[w>>2]=j;f[w+4>>2]=k;t=w+8|0;f[t>>2]=0;v=w+12|0;f[v>>2]=0;f[w+16>>2]=0;f[s>>2]=l;f[s+4>>2]=m;l=s+8|0;f[l>>2]=0;m=s+12|0;f[m>>2]=0;f[s+16>>2]=0;f[r>>2]=n;f[r+4>>2]=o;j=r+8|0;f[j>>2]=0;k=r+12|0;f[k>>2]=0;f[r+16>>2]=0;f[C>>2]=a;f[C+4>>2]=b;p=f[p>>2]|0;jd(p|0);q=f[q>>2]|0;jd(q|0);h=Wpb(12)|0;f[h>>2]=19388;f[h+4>>2]=p;f[h+8>>2]=q;f[B>>2]=h;R6(B,C,c,d,e,g,y,w,s,r);h=f[B>>2]|0;f[B>>2]=0;if(h|0)fh[f[(f[h>>2]|0)+4>>2]&2047](h);ed(0);ed(0);h=f[j>>2]|0;if((h|0)==(f[k>>2]|0)){i=f[r>>2]|0;if(i){_pb(i);h=f[j>>2]|0}}if(h|0){i=f[k>>2]|0;if((i|0)!=(h|0))f[k>>2]=i+(~((i+-4-h|0)>>>2)<<2);Zpb(h)}h=f[l>>2]|0;if((h|0)==(f[m>>2]|0)){i=f[s>>2]|0;if(i){_pb(i);h=f[l>>2]|0}}if(h|0){i=f[m>>2]|0;if((i|0)!=(h|0))f[m>>2]=i+(~((i+-4-h|0)>>>2)<<2);Zpb(h)}h=f[t>>2]|0;if((h|0)==(f[v>>2]|0)){i=f[w>>2]|0;if(i){_pb(i);h=f[t>>2]|0}}if(h|0){i=f[v>>2]|0;if((i|0)!=(h|0))f[v>>2]=i+(~((i+-4-h|0)>>>2)<<2);Zpb(h)}i=f[x>>2]|0;if((i|0)==(f[z>>2]|0)){h=f[y>>2]|0;if(h){_pb(h);i=f[x>>2]|0}}if(!i){u=A;return}h=f[z>>2]|0;if((h|0)!=(i|0))f[z>>2]=h+(~((h+-4-i|0)>>>2)<<2);Zpb(i);u=A;return}function Vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19488;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;c7(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Wk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e;h=Wpb(12)|0;f[h>>2]=19520;f[h+4>>2]=f[c>>2];f[c>>2]=0;f[h+8>>2]=f[d>>2];f[d>>2]=0;f[g>>2]=h;j7(g,a,b);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function Xk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=19572;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;q7(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=j;return}function Yk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;g=Wpb(12)|0;f[g>>2]=19628;f[g+4>>2]=f[b>>2];f[b>>2]=0;f[g+8>>2]=f[c>>2];f[c>>2]=0;f[e>>2]=g;y7(e,a);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function Zk(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;k=u;u=u+16|0;l=k;m=Wpb(12)|0;f[m>>2]=19676;f[m+4>>2]=f[i>>2];f[i>>2]=0;f[m+8>>2]=f[j>>2];f[j>>2]=0;f[l>>2]=m;Q9(l,a,b,c,d,e,g,h);a=f[l>>2]|0;f[l>>2]=0;if(!a){u=k;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=k;return}function _k(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+16|0;k=j;l=Wpb(12)|0;f[l>>2]=19748;f[l+4>>2]=f[h>>2];f[h>>2]=0;f[l+8>>2]=f[i>>2];f[i>>2]=0;f[k>>2]=l;oaa(k,a,b,c,d,e,g);a=f[k>>2]|0;f[k>>2]=0;if(!a){u=j;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=j;return}function $k(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i;k=Wpb(12)|0;f[k>>2]=19816;f[k+4>>2]=f[g>>2];f[g>>2]=0;f[k+8>>2]=f[h>>2];f[h>>2]=0;f[j>>2]=k;paa(j,a,b,c,d,e);a=f[j>>2]|0;f[j>>2]=0;if(!a){u=i;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=i;return}function al(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19880;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;K9(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function bl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19936;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;t9(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function cl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;qaa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function dl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;raa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function el(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;saa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;taa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=19988;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;uaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function hl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20020;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;xaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function il(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20052;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Aaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function jl(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l;o=l+40|0;m=l+28|0;j=l+8|0;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;e=f[e>>2]|0;jd(e|0);b=f[g>>2]|0;jd(b|0);Gda(m,h&255,j,c,d);xy(o,m);a=f[o>>2]|0;jd(a|0);f[n>>2]=a;ed(cd(e|0,1,16304,n|0)|0);ed(a|0);a=f[m>>2]|0;if(a|0)Zpb(a);ed(b|0);ed(e|0);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function kl(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;Hda(h&255,j,c,d,e,g);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function ll(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Ida(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function ml(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;Jda(c&255,e);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function nl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=20184;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;vba(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function ol(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;m=l+20|0;j=l;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=20244;f[a+4>>2]=e;f[a+8>>2]=g;f[m>>2]=a;Dba(m,h&255,j,c,d);a=f[m>>2]|0;f[m>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function pl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=20308;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Rba(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function ql(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20340;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Eaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function rl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Daa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function sl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20372;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Iaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function tl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Haa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function ul(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20404;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Maa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function vl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Laa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function wl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20436;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Qaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function xl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Paa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20468;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Uaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function zl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Taa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Al(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20500;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Yaa(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Bl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Xaa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Cl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20532;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;aba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Dl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;$aa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function El(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20564;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;eba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;dba(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20596;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;iba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Hl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;hba(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Il(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20628;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;mba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Jl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;lba(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Kl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20660;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;qba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Ll(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;pba(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Ml(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;tba(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Nl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20692;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;uba(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Ol(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;mea(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Pl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;nea(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Ql(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20724;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;B9(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Rl(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;I9(e&255,h,c,d);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Sl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;J9(c&255,e);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function Tl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20780;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;X8(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Ul(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=20812;f[a+4>>2]=e;f[a+8>>2]=g;f[l>>2]=a;e9(l,i,c,d);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Vl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=20872;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;m9(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Wl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=20904;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;Xba(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=j;return}function Xl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=20960;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;ica(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=j;return}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=20992;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;jca(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=j;return}function Zl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21024;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;kca(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=j;return}function _l(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e;h=Wpb(12)|0;f[h>>2]=21056;f[h+4>>2]=f[c>>2];f[c>>2]=0;f[h+8>>2]=f[d>>2];f[d>>2]=0;f[g>>2]=h;sca(g,a,b);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function $l(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h;j=Wpb(12)|0;f[j>>2]=21108;f[j+4>>2]=f[e>>2];f[e>>2]=0;f[j+8>>2]=f[g>>2];f[g>>2]=0;f[i>>2]=j;zca(i,a,b,c,d);a=f[i>>2]|0;f[i>>2]=0;if(!a){u=h;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=h;return}function am(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g;i=Wpb(12)|0;f[i>>2]=21168;f[i+4>>2]=f[d>>2];f[d>>2]=0;f[i+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=i;Cca(h,a,b,c);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function bm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g;i=Wpb(12)|0;f[i>>2]=21224;f[i+4>>2]=f[d>>2];f[d>>2]=0;f[i+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=i;Kca(h,a,b,c);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function cm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=21256;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Lca(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function dm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=21288;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Oca(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function em(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21320;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Rca(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function fm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21380;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Xca(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function gm(a,b,c,d,e,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0;r=u;u=u+32|0;s=r+20|0;p=r;f[p>>2]=a;f[p+4>>2]=b;o=p+8|0;f[o>>2]=0;q=p+12|0;f[q>>2]=0;f[p+16>>2]=0;l=f[l>>2]|0;jd(l|0);m=f[m>>2]|0;jd(m|0);a=Wpb(12)|0;f[a>>2]=21412;f[a+4>>2]=l;f[a+8>>2]=m;f[s>>2]=a;kda(s,n&255,p,c,d,e,g,h,i,j,k);a=f[s>>2]|0;f[s>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[o>>2]|0;if((a|0)==(f[q>>2]|0)){b=f[p>>2]|0;if(b){_pb(b);a=f[o>>2]|0}}if(!a){u=r;return}b=f[q>>2]|0;if((b|0)!=(a|0))f[q>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=r;return}function hm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Fda(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function im(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Kda(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function jm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Lda(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function km(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;Mda(e&255,h,c,d);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function lm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Nda(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function mm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;n=m;o=m+40|0;i=m+28|0;k=m+8|0;f[k>>2]=a;f[k+4>>2]=b;j=k+8|0;f[j>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;h=f[d>>2]|0;jd(h|0);e=f[e>>2]|0;jd(e|0);Oda(i,g&255,k,c);Qy(o,i);d=f[o>>2]|0;jd(d|0);f[n>>2]=d;ed(cd(h|0,1,16304,n|0)|0);ed(d|0);d=f[i>>2]|0;if(d|0){a=i+4|0;b=f[a>>2]|0;if((b|0)!=(d|0))f[a>>2]=b+(~((b+-4-d|0)>>>2)<<2);Zpb(d)}ed(e|0);ed(h|0);a=f[j>>2]|0;if((a|0)==(f[l>>2]|0)){b=f[k>>2]|0;if(b){_pb(b);a=f[j>>2]|0}}if(!a){u=m;return}b=f[l>>2]|0;if((b|0)!=(a|0))f[l>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function nm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21572;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Pda(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function om(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21604;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Wda(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function pm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;Gea(g&255,i,c,d,e);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function qm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;Hea(c&255,e);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function rm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=21664;f[a+4>>2]=c;f[a+8>>2]=d;f[k>>2]=a;Iea(k,e&255,h);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function sm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;Qea(e&255,h,c,d);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function tm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;Rea(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function um(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21720;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Sea(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function vm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=21752;f[a+4>>2]=d;f[a+8>>2]=e;f[l>>2]=a;Tea(l,g&255,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function wm(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;$ea(h&255,j,c,d,e,g);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function xm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;afa(g&255,i,c,d,e);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function ym(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;bfa(d&255,g,c);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function zm(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+48|0;o=n;p=n+40|0;j=n+28|0;l=n+8|0;f[l>>2]=a;f[l+4>>2]=b;k=l+8|0;f[k>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;i=f[e>>2]|0;jd(i|0);g=f[g>>2]|0;jd(g|0);cfa(j,h&255,l,c,d);IC(p,j);e=f[p>>2]|0;jd(e|0);f[o>>2]=e;ed(cd(i|0,1,16304,o|0)|0);ed(e|0);e=f[j>>2]|0;if(e|0){a=j+4|0;b=f[a>>2]|0;if((b|0)!=(e|0))f[a>>2]=b+(~(((b+-12-e|0)>>>0)/12|0)*12|0);Zpb(e)}ed(g|0);ed(i|0);a=f[k>>2]|0;if((a|0)==(f[m>>2]|0)){b=f[l>>2]|0;if(b){_pb(b);a=f[k>>2]|0}}if(!a){u=n;return}b=f[m>>2]|0;if((b|0)!=(a|0))f[m>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Am(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;m=l+20|0;j=l;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=21844;f[a+4>>2]=e;f[a+8>>2]=g;f[m>>2]=a;dfa(m,h&255,j,c,d);a=f[m>>2]|0;f[m>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function Bm(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;k=m+20|0;i=m;f[k>>2]=a;f[k+4>>2]=b;j=k+8|0;f[j>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;f[i>>2]=c;f[i+4>>2]=d;c=i+8|0;f[c>>2]=0;d=i+12|0;f[d>>2]=0;f[i+16>>2]=0;gfa(h&255,k,i,e,g);a=f[c>>2]|0;if((a|0)==(f[d>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Zpb(a)}a=f[j>>2]|0;if((a|0)==(f[l>>2]|0)){b=f[k>>2]|0;if(b){_pb(b);a=f[j>>2]|0}}if(!a){u=m;return}b=f[l>>2]|0;if((b|0)!=(a|0))f[l>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Cm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;hfa(c&255,e);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function Dm(a){a=a|0;S8(a);return}function Em(a,b){a=a|0;b=b|0;T8(a,b);return}function Fm(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=+c;d=d|0;e=+e;f=f|0;g=+g;h=h|0;i=+i;j=j|0;U8(a,b,c,d,e,f,g,h,i,j);return}function Gm(a,b){a=a|0;b=b|0;V8(a,b);return}function Hm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;g=Wpb(12)|0;f[g>>2]=21976;f[g+4>>2]=f[b>>2];f[b>>2]=0;f[g+8>>2]=f[c>>2];f[c>>2]=0;f[e>>2]=g;n3(e,a);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function Im(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i;g=i+8|0;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;a=f[c>>2]|0;jd(a|0);d=f[d>>2]|0;jd(d|0);o3(g);c=Wpb(1)|0;f[j>>2]=c;c=sd(3184,j|0)|0;jd(c|0);f[j>>2]=c;ed(cd(a|0,1,16304,j|0)|0);ed(c|0);ed(d|0);ed(a|0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}if((f[h>>2]|0)!=(a|0))f[h>>2]=a;Zpb(a);u=i;return}function Jm(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Km(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=w3()|0;f[d>>2]=c;c=sd(13536,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Lm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22024;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;x3(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=i;return}function Mm(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=+g;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+48|0;p=o+40|0;m=o+20|0;k=o;f[m>>2]=a;f[m+4>>2]=b;l=m+8|0;f[l>>2]=0;n=m+12|0;f[n>>2]=0;f[m+16>>2]=0;f[k>>2]=c;f[k+4>>2]=d;c=k+8|0;f[c>>2]=0;d=k+12|0;f[d>>2]=0;f[k+16>>2]=0;i=f[i>>2]|0;jd(i|0);j=f[j>>2]|0;jd(j|0);a=Wpb(12)|0;f[a>>2]=22056;f[a+4>>2]=i;f[a+8>>2]=j;f[p>>2]=a;z3(p,m,k,e,g,h);a=f[p>>2]|0;f[p>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[c>>2]|0;if((a|0)==(f[d>>2]|0)){b=f[k>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){b=f[d>>2]|0;if((b|0)!=(a|0))f[d>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}a=f[l>>2]|0;if((a|0)==(f[n>>2]|0)){b=f[m>>2]|0;if(b){_pb(b);a=f[l>>2]|0}}if(!a){u=o;return}if((f[n>>2]|0)!=(a|0))f[n>>2]=a;Zpb(a);u=o;return}function Nm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22128;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;E3(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=i;return}function Om(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;m=l+40|0;j=l+20|0;h=l;f[j>>2]=a;f[j+4>>2]=b;i=j+8|0;f[i>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;f[h>>2]=c;f[h+4>>2]=d;c=h+8|0;f[c>>2]=0;d=h+12|0;f[d>>2]=0;f[h+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=22160;f[a+4>>2]=e;f[a+8>>2]=g;f[m>>2]=a;F3(m,j,h);a=f[m>>2]|0;f[m>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[c>>2]|0;if((a|0)==(f[d>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){b=f[d>>2]|0;if((b|0)!=(a|0))f[d>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a)}a=f[i>>2]|0;if((a|0)==(f[k>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[i>>2]|0}}if(!a){u=l;return}b=f[k>>2]|0;if((b|0)!=(a|0))f[k>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=l;return}function Pm(a){a=a|0;t4(a);return}function Qm(){var a=0,c=0,d=0,e=0,g=0;d=u;u=u+688|0;a=d;r4(a);if(!(b[209512]|0))if(rrb(209512)|0)jga(208824);b[208824]=b[a>>0]|0;p[26104]=+p[a+8>>3];p[26105]=+p[a+16>>3];p[26106]=+p[a+24>>3];p[26107]=+p[a+32>>3];p[26108]=+p[a+40>>3];p[26109]=+p[a+48>>3];p[26110]=+p[a+56>>3];p[26111]=+p[a+64>>3];p[26112]=+p[a+72>>3];p[26113]=+p[a+80>>3];p[26114]=+p[a+88>>3];p[26115]=+p[a+96>>3];p[26116]=+p[a+104>>3];p[26117]=+p[a+112>>3];p[26118]=+p[a+120>>3];p[26119]=+p[a+128>>3];p[26120]=+p[a+136>>3];p[26121]=+p[a+144>>3];p[26122]=+p[a+152>>3];p[26123]=+p[a+160>>3];p[26124]=+p[a+168>>3];p[26125]=+p[a+176>>3];p[26126]=+p[a+184>>3];p[26127]=+p[a+192>>3];p[26128]=+p[a+200>>3];c=209032;e=a+208|0;g=c+40|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));p[26134]=+p[a+248>>3];p[26135]=+p[a+256>>3];p[26136]=+p[a+264>>3];p[26137]=+p[a+272>>3];p[26138]=+p[a+280>>3];p[26139]=+p[a+288>>3];p[26140]=+p[a+296>>3];p[26141]=+p[a+304>>3];p[26142]=+p[a+312>>3];p[26143]=+p[a+320>>3];p[26144]=+p[a+328>>3];p[26145]=+p[a+336>>3];p[26146]=+p[a+344>>3];p[26147]=+p[a+352>>3];p[26148]=+p[a+360>>3];p[26149]=+p[a+368>>3];p[26150]=+p[a+376>>3];p[26151]=+p[a+384>>3];p[26152]=+p[a+392>>3];p[26153]=+p[a+400>>3];p[26154]=+p[a+408>>3];p[26155]=+p[a+416>>3];p[26156]=+p[a+424>>3];p[26157]=+p[a+432>>3];p[26158]=+p[a+440>>3];p[26159]=+p[a+448>>3];p[26160]=+p[a+456>>3];p[26161]=+p[a+464>>3];p[26162]=+p[a+472>>3];p[26163]=+p[a+480>>3];p[26164]=+p[a+488>>3];p[26165]=+p[a+496>>3];p[26166]=+p[a+504>>3];p[26167]=+p[a+512>>3];p[26168]=+p[a+520>>3];p[26169]=+p[a+528>>3];p[26170]=+p[a+536>>3];p[26171]=+p[a+544>>3];p[26172]=+p[a+552>>3];p[26173]=+p[a+560>>3];p[26174]=+p[a+568>>3];p[26175]=+p[a+576>>3];p[26176]=+p[a+584>>3];p[26177]=+p[a+592>>3];p[26178]=+p[a+600>>3];p[26179]=+p[a+608>>3];p[26180]=+p[a+616>>3];p[26181]=+p[a+624>>3];f[52364]=f[a+632>>2];f[52365]=f[a+636>>2];f[52366]=f[a+640>>2];f[52367]=f[a+644>>2];f[52368]=f[a+648>>2];f[52369]=f[a+652>>2];f[52370]=f[a+656>>2];f[52371]=f[a+660>>2];f[52372]=f[a+664>>2];g=a+668|0;f[52373]=f[g>>2];f[52374]=f[g+4>>2];f[52375]=f[g+8>>2];b[209504]=b[g+12>>0]|0;u=d;return 208824}function Rm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+704|0;h=j+688|0;i=j;g=f[a>>2]|0;jd(g|0);a=f[c>>2]|0;jd(a|0);r4(i);if(!(b[208800]|0))if(rrb(208800)|0)jga(208112);b[208112]=b[i>>0]|0;p[26015]=+p[i+8>>3];p[26016]=+p[i+16>>3];p[26017]=+p[i+24>>3];p[26018]=+p[i+32>>3];p[26019]=+p[i+40>>3];p[26020]=+p[i+48>>3];p[26021]=+p[i+56>>3];p[26022]=+p[i+64>>3];p[26023]=+p[i+72>>3];p[26024]=+p[i+80>>3];p[26025]=+p[i+88>>3];p[26026]=+p[i+96>>3];p[26027]=+p[i+104>>3];p[26028]=+p[i+112>>3];p[26029]=+p[i+120>>3];p[26030]=+p[i+128>>3];p[26031]=+p[i+136>>3];p[26032]=+p[i+144>>3];p[26033]=+p[i+152>>3];p[26034]=+p[i+160>>3];p[26035]=+p[i+168>>3];p[26036]=+p[i+176>>3];p[26037]=+p[i+184>>3];p[26038]=+p[i+192>>3];p[26039]=+p[i+200>>3];c=208320;d=i+208|0;e=c+40|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));p[26045]=+p[i+248>>3];p[26046]=+p[i+256>>3];p[26047]=+p[i+264>>3];p[26048]=+p[i+272>>3];p[26049]=+p[i+280>>3];p[26050]=+p[i+288>>3];p[26051]=+p[i+296>>3];p[26052]=+p[i+304>>3];p[26053]=+p[i+312>>3];p[26054]=+p[i+320>>3];p[26055]=+p[i+328>>3];p[26056]=+p[i+336>>3];p[26057]=+p[i+344>>3];p[26058]=+p[i+352>>3];p[26059]=+p[i+360>>3];p[26060]=+p[i+368>>3];p[26061]=+p[i+376>>3];p[26062]=+p[i+384>>3];p[26063]=+p[i+392>>3];p[26064]=+p[i+400>>3];p[26065]=+p[i+408>>3];p[26066]=+p[i+416>>3];p[26067]=+p[i+424>>3];p[26068]=+p[i+432>>3];p[26069]=+p[i+440>>3];p[26070]=+p[i+448>>3];p[26071]=+p[i+456>>3];p[26072]=+p[i+464>>3];p[26073]=+p[i+472>>3];p[26074]=+p[i+480>>3];p[26075]=+p[i+488>>3];p[26076]=+p[i+496>>3];p[26077]=+p[i+504>>3];p[26078]=+p[i+512>>3];p[26079]=+p[i+520>>3];p[26080]=+p[i+528>>3];p[26081]=+p[i+536>>3];p[26082]=+p[i+544>>3];p[26083]=+p[i+552>>3];p[26084]=+p[i+560>>3];p[26085]=+p[i+568>>3];p[26086]=+p[i+576>>3];p[26087]=+p[i+584>>3];p[26088]=+p[i+592>>3];p[26089]=+p[i+600>>3];p[26090]=+p[i+608>>3];p[26091]=+p[i+616>>3];p[26092]=+p[i+624>>3];f[52186]=f[i+632>>2];f[52187]=f[i+636>>2];f[52188]=f[i+640>>2];f[52189]=f[i+644>>2];f[52190]=f[i+648>>2];f[52191]=f[i+652>>2];f[52192]=f[i+656>>2];f[52193]=f[i+660>>2];f[52194]=f[i+664>>2];i=i+668|0;f[52195]=f[i>>2];f[52196]=f[i+4>>2];f[52197]=f[i+8>>2];b[208792]=b[i+12>>0]|0;f[h>>2]=208112;i=sd(13536,h|0)|0;jd(i|0);f[h>>2]=i;ed(cd(g|0,1,16304,h|0)|0);ed(i|0);ed(a|0);ed(g|0);u=j;return}function Sm(){t3();return}function Tm(){s3();return}function Um(a){a=a|0;t5(a);return}function Vm(a){a=a|0;u5(a);return}function Wm(a){a=a|0;v5(a);return}function Xm(a,b){a=a|0;b=b|0;q5(a,b);return}function Ym(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+32|0;d=b;e=b+8|0;u4(e);c=Wpb(24)|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];f[c+16>>2]=f[e+16>>2];f[c+20>>2]=f[e+20>>2];f[d>>2]=c;c=sd(1392,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Zm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+112|0;h=e+48|0;i=e+104|0;g=e+56|0;j=e;FX(j,b);c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);C4(g,j,a);DM(i,g);b=f[i>>2]|0;jd(b|0);f[h>>2]=b;ed(cd(c|0,1,16304,h|0)|0);ed(b|0);AL(g);ed(d|0);ed(c|0);u=e;return}function _m(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=u;u=u+144|0;k=i+72|0;l=i+128|0;j=i+80|0;o=i+48|0;n=i;r$(o);FX(n,e);m=~~+p[o+8>>3]>>>0;e=~~+p[o+16>>3]>>>0;g=f[g>>2]|0;jd(g|0);h=f[h>>2]|0;jd(h|0);D4(j,n,a,b,c,m,e,d);DM(l,j);e=f[l>>2]|0;jd(e|0);f[k>>2]=e;ed(cd(g|0,1,16304,k|0)|0);ed(e|0);AL(j);ed(h|0);ed(g|0);u=i;return}function $m(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=u;u=u+48|0;j=i+24|0;m=i;l=i+32|0;r$(m);KX(l,e);k=~~+p[m+8>>3]>>>0;e=~~+p[m+16>>3]>>>0;m=f[g>>2]|0;jd(m|0);g=f[h>>2]|0;jd(g|0);h=Wpb(12)|0;f[h>>2]=22304;f[h+4>>2]=m;f[h+8>>2]=g;f[j>>2]=h;F4(j,l,a,b,c,d,k,e);a=f[j>>2]|0;f[j>>2]=0;if(!a){ed(0);ed(0);u=i;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);u=i;return}function an(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+48|0;l=k+20|0;m=k+24|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;e=f[e>>2]|0;jd(e|0);b=f[g>>2]|0;jd(b|0);KX(m,d);jd(e|0);jd(b|0);a=Wpb(12)|0;f[a>>2]=22368;f[a+4>>2]=e;f[a+8>>2]=b;f[l>>2]=a;E4(l,m,i,c);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);ed(b|0);ed(e|0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-16-a|0)>>>4)<<4);Zpb(a);u=k;return}function bn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+48|0;i=h+24|0;l=h;k=h+32|0;r$(l);KX(k,d);j=~~+p[l+8>>3]>>>0;d=~~+p[l+16>>3]>>>0;l=f[e>>2]|0;jd(l|0);e=f[g>>2]|0;jd(e|0);g=Wpb(12)|0;f[g>>2]=22428;f[g+4>>2]=l;f[g+8>>2]=e;f[i>>2]=g;G4(i,k,a,b,c,j,d);a=f[i>>2]|0;f[i>>2]=0;if(!a){ed(0);ed(0);u=h;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);u=h;return}function cn(a,b,c,d,e){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+32|0;h=g;i=g+8|0;KX(i,c);c=f[d>>2]|0;jd(c|0);d=f[e>>2]|0;jd(d|0);e=Wpb(12)|0;f[e>>2]=22488;f[e+4>>2]=c;f[e+8>>2]=d;f[h>>2]=e;H4(h,i,a,b);a=f[h>>2]|0;f[h>>2]=0;if(!a){ed(0);ed(0);u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);u=g;return}function dn(a){a=a|0;I4(a);return}function en(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e;h=Wpb(12)|0;f[h>>2]=22544;f[h+4>>2]=f[c>>2];f[c>>2]=0;f[h+8>>2]=f[d>>2];f[d>>2]=0;f[g>>2]=h;J4(g,a,b);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function fn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22576;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;b5(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-16-a|0)>>>4)<<4);Zpb(a);u=i;return}function gn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=22608;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;e5(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-16-a|0)>>>4)<<4);Zpb(a);u=j;return}function hn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22664;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;c5(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=i;return}function jn(){d5();return}function kn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22696;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;f5(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-4-a|0)>>>2)<<2);Zpb(a);u=i;return}function ln(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g;i=Wpb(12)|0;f[i>>2]=22728;f[i+4>>2]=f[d>>2];f[d>>2]=0;f[i+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=i;h5(h,a,b,c);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function mn(){l5();return}function nn(){m5();return}function on(){n5();return}function pn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22784;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;Q4(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function qn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=22816;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;Z4(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function rn(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(w5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function sn(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(x5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function tn(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(y5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function un(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(z5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function vn(a){a=a|0;A5(a);return}function wn(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(B5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function xn(a){a=a|0;C5(a);return}function yn(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(D5()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function zn(a){a=a|0;E5(a);return}function An(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+z4();p[d>>3]=e;c=sd(13568,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Bn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+A4();p[d>>3]=e;c=sd(13568,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Cn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+32|0;d=b+16|0;e=b;B4(e);c=Wpb(16)|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];f[d>>2]=c;c=sd(3392,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Dn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+32|0;d=b+16|0;e=b;O4(e);c=Wpb(16)|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];f[d>>2]=c;c=sd(4008,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function En(a,b){a=+a;b=+b;P4(a,b);return}function Fn(){v4();return}function Gn(){w4();return}function Hn(){x4();return}function In(){y4();return}function Jn(a){a=a|0;A6(a);return}function Kn(a,b){a=a|0;b=b|0;B6(a,b);return}function Ln(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=u;u=u+48|0;d=b;c=b+40|0;e=b+8|0;C6(e);$x(c,e);c=f[c>>2]|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Mn(a){a=a|0;U5(a);return}function Nn(a){a=a|0;V5(a);return}function On(a){a=+a;W5(a);return}function Pn(a){a=a|0;X5(a);return}function Qn(a){a=a|0;Y5(a);return}function Rn(a){a=a|0;Z5(a);return}function Sn(a){a=a|0;i6(a);return}function Tn(a){a=a|0;j6(a);return}function Un(a){a=a|0;k6(a);return}function Vn(a){a=a|0;l6(a);return}function Wn(a){a=a|0;m6(a);return}function Xn(a){a=a|0;b6(a);return}function Yn(a){a=a|0;c6(a);return}function Zn(a){a=a|0;d6(a);return}function _n(a){a=a|0;e6(a);return}function $n(a){a=a|0;f6(a);return}function ao(a){a=a|0;g6(a);return}function bo(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(n6()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function co(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+o6();n[d>>2]=e;c=sd(13560,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function eo(a){a=a|0;p6(a);return}function fo(a){a=+a;q6(a);return}function go(a){a=+a;r6(a);return}function ho(a){a=+a;s6(a);return}function io(a){a=+a;t6(a);return}function jo(a){a=a|0;u6(a);return}function ko(a){a=a|0;v6(a);return}function lo(a){a=+a;w6(a);return}function mo(a){a=+a;x6(a);return}function no(a){a=+a;y6(a);return}function oo(a){a=a|0;z6(a);return}function po(a){a=a|0;h6(a);return}function qo(a){a=a|0;_5(a);return}function ro(a){a=a|0;$5(a);return}function so(a){a=a|0;a6(a);return}function to(a){a=a|0;D6(a);return}function uo(){E6();return}function vo(a){a=+a;F6(a);return}function wo(a){a=+a;G6(a);return}function xo(a){a=+a;H6(a);return}function yo(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=u;u=u+16|0;c=b+8|0;d=b;g=a;e=f[g+4>>2]|0;a=d;f[a>>2]=f[g>>2];f[a+4>>2]=e;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];I6(c);u=b;return}function zo(){J6();return}function Ao(a){a=a|0;K6(a);return}function Bo(a){a=a|0;wfa(a);return}function Co(){xfa();return}function Do(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yfa(a,b,c,d);return}function Eo(){L6();return}function Fo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(12)|0;f[e>>2]=22972;f[e+4>>2]=f[a>>2];f[a>>2]=0;f[e+8>>2]=f[b>>2];f[b>>2]=0;f[d>>2]=e;ifa(d);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function Go(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;M6(e,c);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function Ho(a){a=+a;N6(a);return}function Io(){O6();return}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=u;u=u+32|0;i=g+16|0;h=g+8|0;j=g;k=Wpb(12)|0;f[k>>2]=23020;f[k+4>>2]=f[d>>2];f[d>>2]=0;f[k+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=k;d=f[c+4>>2]|0;e=j;f[e>>2]=f[c>>2];f[e+4>>2]=d;f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];Zda(h,a,b,i);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function Ko(a,b){a=a|0;b=b|0;jea(a,b);return}function Lo(a,b){a=a|0;b=+b;kea(a,b);return}function Mo(a){a=a|0;lea(a);return}function No(a,b){a=+a;b=b|0;oea(a,b);return}function Oo(a){a=a|0;pea(a);return}function Po(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+qea();p[d>>3]=e;c=sd(13568,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Qo(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(rea()|0)&255;f[d>>2]=c;c=sd(3928,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Ro(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(sea()|0)&255;f[d>>2]=c;c=sd(3848,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function So(a){a=a|0;tea(a);return}function To(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=(uea()|0)&1;f[d>>2]=c;c=sd(13480,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Uo(a){a=a|0;vea(a);return}function Vo(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Aea()|0;f[d>>2]=c;c=sd(13536,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Wo(a){a=+a;wea(a);return}function Xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+Bea();n[d>>2]=e;c=sd(13560,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Yo(a){a=+a;xea(a);return}function Zo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+Cea();n[d>>2]=e;c=sd(13560,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function _o(a){a=+a;yea(a);return}function $o(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+Dea();n[d>>2]=e;c=sd(13560,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function ap(a){a=+a;zea(a);return}function bp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+Eea();n[d>>2]=e;c=sd(13560,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function cp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;P6(e,c);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function dp(a){a=a|0;zfa(a);return}function ep(a){a=+a;Afa(a);return}function fp(a){a=+a;Bfa(a);return}function gp(a){a=+a;Cfa(a);return}function hp(a){a=a|0;Dfa(a);return}function ip(a,b){a=a|0;b=+b;Efa(a,b);return}function jp(a,b){a=a|0;b=b|0;Ffa(a,b);return}function kp(a,b,c){a=a|0;b=+b;c=c|0;Gfa(a,b,c);return}function lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+20|0;e=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;f[e>>2]=c;f[e+4>>2]=d;c=e+8|0;f[c>>2]=0;d=e+12|0;f[d>>2]=0;f[e+16>>2]=0;Hfa(h,e);a=f[c>>2]|0;if((a|0)==(f[d>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){b=f[d>>2]|0;if((b|0)!=(a|0))f[d>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function mp(){Lfa();return}function np(a,b,c){a=a|0;b=b|0;c=c|0;Mfa(a,b,c);return}function op(a){a=a|0;Ofa(a);return}function pp(a,b){a=a|0;b=b|0;Pfa(a,b);return}function qp(a){a=a|0;Nfa(a);return}function rp(a){a=a|0;Qfa(a);return}function sp(a){a=+a;Rfa(a);return}function tp(a){a=a|0;Sfa(a);return}function up(a){a=a|0;Tfa(a);return}function vp(a){a=+a;Ufa(a);return}function wp(a){a=a|0;Vfa(a);return}function xp(a){a=a|0;Wfa(a);return}function yp(a){a=+a;Xfa(a);return}function zp(a){a=+a;Yfa(a);return}function Ap(a){a=a|0;Zfa(a);return}function Bp(a){a=+a;_fa(a);return}function Cp(a){a=a|0;$fa(a);return}function Dp(a){a=+a;aga(a);return}function Ep(a){a=+a;bga(a);return}function Fp(a){a=a|0;cga(a);return}function Gp(a,b){a=+a;b=b|0;dga(a,b);return}function Hp(a,b,c){a=+a;b=+b;c=c|0;ega(a,b,c);return}function Ip(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=23228;f[a+4>>2]=e;f[a+8>>2]=g;f[l>>2]=a;G3(l,i,c,d);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Jp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;l=k+20|0;i=k;f[i>>2]=a;f[i+4>>2]=b;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;e=f[e>>2]|0;jd(e|0);g=f[g>>2]|0;jd(g|0);a=Wpb(12)|0;f[a>>2]=23260;f[a+4>>2]=e;f[a+8>>2]=g;f[l>>2]=a;d4(l,i,c,d);a=f[l>>2]|0;f[l>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){b=f[i>>2]|0;if(b){_pb(b);a=f[h>>2]|0}}if(!a){u=k;return}b=f[j>>2]|0;if((b|0)!=(a|0))f[j>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function Kp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;f[e>>2]=a;f[e+4>>2]=b;d=e+8|0;f[d>>2]=0;g=e+12|0;f[g>>2]=0;f[e+16>>2]=0;o5(c&255,e);a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){b=f[e>>2]|0;if(b){_pb(b);a=f[d>>2]|0}}if(!a){u=h;return}b=f[g>>2]|0;if((b|0)!=(a|0))f[g>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function Lp(a){a=a|0;p5(a);return}function Mp(a){a=a|0;r5(a);return}function Np(a){a=+a;s5(a);return}function Op(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=Wpb(12)|0;f[e>>2]=23292;f[e+4>>2]=f[a>>2];f[a>>2]=0;f[e+8>>2]=f[b>>2];f[b>>2]=0;f[d>>2]=e;q3(d);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;c=u;u=u+16|0;d=c;a=(r3(a)|0)&1;f[d>>2]=a;a=sd(13480,d|0)|0;jd(a|0);f[d>>2]=a;ed(cd(f[b>>2]|0,1,16304,d|0)|0);ed(a|0);u=c;return}function Qp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=23340;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;f4(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Rp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+20|0;h=j;f[h>>2]=a;f[h+4>>2]=b;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;d=f[d>>2]|0;jd(d|0);e=f[e>>2]|0;jd(e|0);a=Wpb(12)|0;f[a>>2]=23396;f[a+4>>2]=d;f[a+8>>2]=e;f[k>>2]=a;n4(k,h,c);a=f[k>>2]|0;f[k>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){b=f[h>>2]|0;if(b){_pb(b);a=f[g>>2]|0}}if(!a){u=j;return}b=f[i>>2]|0;if((b|0)!=(a|0))f[i>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Sp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;j=i+20|0;g=i;f[g>>2]=a;f[g+4>>2]=b;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=23428;f[a+4>>2]=c;f[a+8>>2]=d;f[j>>2]=a;o4(j,g);a=f[j>>2]|0;f[j>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[e>>2]|0}}if(!a){u=i;return}b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Tp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+128|0;h=g+120|0;e=g;t_(e,a);c=f[c>>2]|0;jd(c|0);d=f[d>>2]|0;jd(d|0);a=Wpb(12)|0;f[a>>2]=23460;f[a+4>>2]=c;f[a+8>>2]=d;f[h>>2]=a;N5(h,e);a=f[h>>2]|0;f[h>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);ed(0);ed(0);a=e+92|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=e+80|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=e+32|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);a=e+4|0;if((b[a+11>>0]|0)>=0){u=g;return}Zpb(f[a>>2]|0);u=g;return}function Up(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g;i=Wpb(12)|0;f[i>>2]=23508;f[i+4>>2]=f[d>>2];f[d>>2]=0;f[i+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=i;p4(h,a,b,c);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function Vp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;h=g;i=Wpb(12)|0;f[i>>2]=23564;f[i+4>>2]=f[d>>2];f[d>>2]=0;f[i+8>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=i;q4(h,a,b,c);a=f[h>>2]|0;f[h>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function Wp(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;l$(a,b,c,d);return}function Xp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;b=u;u=u+16|0;d=b;e=+M5();p[d>>3]=e;c=sd(13568,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function Yp(a){a=a|0;F5(a);return}function Zp(a){a=+a;G5(a);return}function _p(a){a=+a;H5(a);return}function $p(a){a=+a;I5(a);return}function aq(a){a=+a;J5(a);return}function bq(a){a=a|0;K5(a);return}function cq(a){a=a|0;L5(a);return}function dq(a){a=a|0;Fea(a);return}function eq(a,c,e,g,h,i,j,k,l,m,n,o){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;w=u;u=u+96|0;y=w+76|0;z=w+72|0;x=w+82|0;G=w+80|0;F=w+68|0;E=w+64|0;D=w+60|0;C=w+56|0;B=w+52|0;A=w+44|0;t=w+20|0;r=w;p=w+48|0;q=w+40|0;f[t>>2]=a;f[t+4>>2]=c;s=t+8|0;f[s>>2]=0;v=t+12|0;f[v>>2]=0;f[t+16>>2]=0;f[r>>2]=e;f[r+4>>2]=g;e=r+8|0;f[e>>2]=0;g=r+12|0;f[g>>2]=0;f[r+16>>2]=0;a=f[n>>2]|0;f[p>>2]=a;jd(a|0);a=f[o>>2]|0;f[q>>2]=a;jd(a|0);f[F>>2]=h;f[E>>2]=i;f[D>>2]=j;f[C>>2]=k;f[B>>2]=l;f[A>>2]=m;d[G>>1]=187;l=f[52664]|0;a=l-(f[52663]|0)|0;f[z>>2]=l;b[x>>0]=0;f[y>>2]=f[z>>2];V_(210652,y,1,x)|0;b[(f[52663]|0)+a>>0]=82;U_(210652,G,t,r,F,E,D,C,B,A);a=(f[52662]|0)+1|0;f[52662]=a;l=f[52664]|0;m=l-(f[52663]|0)|0;f[z>>2]=l;b[x>>0]=0;f[y>>2]=f[z>>2];V_(210652,y,4,x)|0;m=(f[52663]|0)+m|0;b[m>>0]=a;b[m+1>>0]=a>>8;b[m+2>>0]=a>>16;b[m+3>>0]=a>>24;T_(a,37,p,20,q);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[q>>2]|0);ed(f[p>>2]|0);a=f[e>>2]|0;if((a|0)==(f[g>>2]|0)){c=f[r>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(a|0){if((f[g>>2]|0)!=(a|0))f[g>>2]=a;Zpb(a)}a=f[s>>2]|0;if((a|0)==(f[v>>2]|0)){c=f[t>>2]|0;if(c){_pb(c);a=f[s>>2]|0}}if(!a){u=w;return}if((f[v>>2]|0)!=(a|0))f[v>>2]=a;Zpb(a);u=w;return}function fq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=188;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,23,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function gq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=189;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,37,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function hq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=190;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,23,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function iq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=191;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,9,h,11,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function jq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=192;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,14,h,11,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function kq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+48|0;h=p+32|0;i=p+24|0;j=p+36|0;n=p;l=p+28|0;m=p+20|0;f[n>>2]=a;f[n+4>>2]=c;k=n+8|0;f[k>>2]=0;o=n+12|0;f[o>>2]=0;f[n+16>>2]=0;e=f[e>>2]|0;f[l>>2]=e;jd(e|0);e=f[g>>2]|0;f[m>>2]=e;jd(e|0);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;e=g-(f[52663]|0)|0;f[i>>2]=g;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,j)|0;e=(f[52663]|0)+e|0;b[e>>0]=194;b[e+1>>0]=0;X_(210652,n);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,16,j)|0;e=f[52663]|0;g=e+g|0;a=d;c=g+16|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;f[i>>2]=d;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,j)|0;j=(f[52663]|0)+(d-e)|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;T_(a,36,l,11,m);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[m>>2]|0);ed(f[l>>2]|0);a=f[k>>2]|0;if((a|0)==(f[o>>2]|0)){c=f[n>>2]|0;if(c){_pb(c);a=f[k>>2]|0}}if(!a){u=p;return}c=f[o>>2]|0;if((c|0)!=(a|0))f[o>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=p;return}function lq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=193;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,14,h,11,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function mq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+48|0;h=p+32|0;i=p+24|0;j=p+36|0;n=p;l=p+28|0;m=p+20|0;f[n>>2]=a;f[n+4>>2]=c;k=n+8|0;f[k>>2]=0;o=n+12|0;f[o>>2]=0;f[n+16>>2]=0;e=f[e>>2]|0;f[l>>2]=e;jd(e|0);e=f[g>>2]|0;f[m>>2]=e;jd(e|0);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;e=g-(f[52663]|0)|0;f[i>>2]=g;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,j)|0;e=(f[52663]|0)+e|0;b[e>>0]=195;b[e+1>>0]=0;X_(210652,n);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,16,j)|0;e=f[52663]|0;g=e+g|0;a=d;c=g+16|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;f[i>>2]=d;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,j)|0;j=(f[52663]|0)+(d-e)|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;T_(a,36,l,11,m);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[m>>2]|0);ed(f[l>>2]|0);a=f[k>>2]|0;if((a|0)==(f[o>>2]|0)){c=f[n>>2]|0;if(c){_pb(c);a=f[k>>2]|0}}if(!a){u=p;return}c=f[o>>2]|0;if((c|0)!=(a|0))f[o>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=p;return}function nq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=u;u=u+16|0;i=d+4|0;j=d;h=d+8|0;e=f[52664]|0;k=e-(f[52663]|0)|0;f[j>>2]=e;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,1,h)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;e=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,2,h)|0;e=(f[52663]|0)+e|0;b[e>>0]=197;b[e+1>>0]=0;e=(f[52662]|0)+1|0;f[52662]=e;k=f[52664]|0;g=k-(f[52663]|0)|0;f[j>>2]=k;b[h>>0]=0;f[i>>2]=f[j>>2];V_(210652,i,4,h)|0;g=(f[52663]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;T_(e,38,a,0,c);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=d;return}f[52664]=a;u=d;return}function oq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;g=l+4|0;i=l;j=l+8|0;h=f[52664]|0;k=h-(f[52663]|0)|0;f[i>>2]=h;b[j>>0]=0;f[g>>2]=f[i>>2];V_(210652,g,1,j)|0;b[(f[52663]|0)+k>>0]=82;k=f[52664]|0;h=k-(f[52663]|0)|0;f[i>>2]=k;b[j>>0]=0;f[g>>2]=f[i>>2];V_(210652,g,2,j)|0;h=(f[52663]|0)+h|0;b[h>>0]=196;b[h+1>>0]=0;h=f[52664]|0;k=h-(f[52663]|0)|0;f[i>>2]=h;b[j>>0]=0;f[g>>2]=f[i>>2];V_(210652,g,64,j)|0;h=f[52663]|0;k=h+k|0;e=k+64|0;do{b[k>>0]=b[a>>0]|0;k=k+1|0;a=a+1|0}while((k|0)<(e|0));a=(f[52662]|0)+1|0;f[52662]=a;k=f[52664]|0;f[i>>2]=k;b[j>>0]=0;f[g>>2]=f[i>>2];V_(210652,g,4,j)|0;k=(f[52663]|0)+(k-h)|0;b[k>>0]=a;b[k+1>>0]=a>>8;b[k+2>>0]=a>>16;b[k+3>>0]=a>>24;T_(a,38,c,0,d);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=l;return}f[52664]=a;u=l;return}function pq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=198;b[a+1>>0]=0;Y_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,24,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function qq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=199;b[a+1>>0]=0;Y_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,13,h,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function rq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+48|0;h=p+32|0;i=p+24|0;j=p+36|0;n=p;l=p+28|0;m=p+20|0;f[n>>2]=a;f[n+4>>2]=c;k=n+8|0;f[k>>2]=0;o=n+12|0;f[o>>2]=0;f[n+16>>2]=0;e=f[e>>2]|0;f[l>>2]=e;jd(e|0);e=f[g>>2]|0;f[m>>2]=e;jd(e|0);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,1,j)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;e=g-(f[52663]|0)|0;f[i>>2]=g;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,2,j)|0;e=(f[52663]|0)+e|0;b[e>>0]=200;b[e+1>>0]=0;Y_(210652,n);e=f[52664]|0;g=e-(f[52663]|0)|0;f[i>>2]=e;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,64,j)|0;e=f[52663]|0;g=e+g|0;a=d;c=g+64|0;do{b[g>>0]=b[a>>0]|0;g=g+1|0;a=a+1|0}while((g|0)<(c|0));a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;f[i>>2]=d;b[j>>0]=0;f[h>>2]=f[i>>2];V_(210652,h,4,j)|0;j=(f[52663]|0)+(d-e)|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;T_(a,36,l,12,m);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[m>>2]|0);ed(f[l>>2]|0);a=f[k>>2]|0;if((a|0)==(f[o>>2]|0)){c=f[n>>2]|0;if(c){_pb(c);a=f[k>>2]|0}}if(!a){u=p;return}c=f[o>>2]|0;if((c|0)!=(a|0))f[o>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=p;return}function sq(a,c,d,e,g,h,i,j,k,l,m,n,o,p){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;B=u;u=u+112|0;D=B+96|0;E=B+92|0;C=B+100|0;F=B+80|0;z=B+60|0;x=B+40|0;t=B+20|0;s=B;q=B+88|0;r=B+84|0;f[z>>2]=g;f[z+4>>2]=h;y=z+8|0;f[y>>2]=0;A=z+12|0;f[A>>2]=0;f[z+16>>2]=0;f[x>>2]=i;f[x+4>>2]=j;v=x+8|0;f[v>>2]=0;w=x+12|0;f[w>>2]=0;f[x+16>>2]=0;f[t>>2]=k;f[t+4>>2]=l;k=t+8|0;f[k>>2]=0;l=t+12|0;f[l>>2]=0;f[t+16>>2]=0;f[s>>2]=m;f[s+4>>2]=n;i=s+8|0;f[i>>2]=0;j=s+12|0;f[j>>2]=0;f[s+16>>2]=0;g=f[o>>2]|0;f[q>>2]=g;jd(g|0);g=f[p>>2]|0;f[r>>2]=g;jd(g|0);f[F>>2]=e;e=f[52664]|0;g=e-(f[52663]|0)|0;f[E>>2]=e;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,1,C)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;e=g-(f[52663]|0)|0;f[E>>2]=g;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,2,C)|0;e=(f[52663]|0)+e|0;b[e>>0]=201;b[e+1>>0]=0;e=f[52664]|0;g=e-(f[52663]|0)|0;f[E>>2]=e;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,4,C)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;g=f[52664]|0;e=g-(f[52663]|0)|0;f[E>>2]=g;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,4,C)|0;e=(f[52663]|0)+e|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;e=f[52664]|0;g=e-(f[52663]|0)|0;f[E>>2]=e;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,4,C)|0;g=(f[52663]|0)+g|0;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;Z_(210652,F,z,x,t,s);g=(f[52662]|0)+1|0;f[52662]=g;d=f[52664]|0;e=d-(f[52663]|0)|0;f[E>>2]=d;b[C>>0]=0;f[D>>2]=f[E>>2];V_(210652,D,4,C)|0;e=(f[52663]|0)+e|0;b[e>>0]=g;b[e+1>>0]=g>>8;b[e+2>>0]=g>>16;b[e+3>>0]=g>>24;T_(g,37,q,0,r);g=f[52663]|0;oc(g|0,g+((f[52664]|0)-g)|0);g=f[52663]|0;if((f[52664]|0)!=(g|0))f[52664]=g;ed(f[r>>2]|0);ed(f[q>>2]|0);g=f[i>>2]|0;if((g|0)==(f[j>>2]|0)){h=f[s>>2]|0;if(h){_pb(h);g=f[i>>2]|0}}if(g|0){h=f[j>>2]|0;if((h|0)!=(g|0))f[j>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g)}g=f[k>>2]|0;if((g|0)==(f[l>>2]|0)){h=f[t>>2]|0;if(h){_pb(h);g=f[k>>2]|0}}if(g|0){h=f[l>>2]|0;if((h|0)!=(g|0))f[l>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g)}g=f[v>>2]|0;if((g|0)==(f[w>>2]|0)){h=f[x>>2]|0;if(h){_pb(h);g=f[v>>2]|0}}if(g|0){h=f[w>>2]|0;if((h|0)!=(g|0))f[w>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g)}g=f[y>>2]|0;if((g|0)==(f[A>>2]|0)){h=f[z>>2]|0;if(h){_pb(h);g=f[y>>2]|0}}if(!g){u=B;return}h=f[A>>2]|0;if((h|0)!=(g|0))f[A>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g);u=B;return}function tq(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=u;u=u+112|0;F=D+96|0;G=D+92|0;E=D+100|0;H=D+80|0;B=D+60|0;z=D+40|0;w=D+20|0;v=D;s=D+88|0;t=D+84|0;f[B>>2]=i;f[B+4>>2]=j;A=B+8|0;f[A>>2]=0;C=B+12|0;f[C>>2]=0;f[B+16>>2]=0;f[z>>2]=k;f[z+4>>2]=l;x=z+8|0;f[x>>2]=0;y=z+12|0;f[y>>2]=0;f[z+16>>2]=0;f[w>>2]=m;f[w+4>>2]=n;m=w+8|0;f[m>>2]=0;n=w+12|0;f[n>>2]=0;f[w+16>>2]=0;f[v>>2]=o;f[v+4>>2]=p;k=v+8|0;f[k>>2]=0;l=v+12|0;f[l>>2]=0;f[v+16>>2]=0;i=f[q>>2]|0;f[s>>2]=i;jd(i|0);i=f[r>>2]|0;f[t>>2]=i;jd(i|0);f[H>>2]=h;i=f[52664]|0;h=i-(f[52663]|0)|0;f[G>>2]=i;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,1,E)|0;b[(f[52663]|0)+h>>0]=82;h=f[52664]|0;i=h-(f[52663]|0)|0;f[G>>2]=h;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,2,E)|0;i=(f[52663]|0)+i|0;b[i>>0]=206;b[i+1>>0]=0;i=f[52664]|0;h=i-(f[52663]|0)|0;f[G>>2]=i;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,8,E)|0;h=(f[52663]|0)+h|0;i=h;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;h=h+4|0;b[h>>0]=c;b[h+1>>0]=c>>8;b[h+2>>0]=c>>16;b[h+3>>0]=c>>24;h=f[52664]|0;i=h-(f[52663]|0)|0;f[G>>2]=h;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,4,E)|0;i=(f[52663]|0)+i|0;b[i>>0]=d;b[i+1>>0]=d>>8;b[i+2>>0]=d>>16;b[i+3>>0]=d>>24;i=f[52664]|0;h=i-(f[52663]|0)|0;f[G>>2]=i;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,4,E)|0;h=(f[52663]|0)+h|0;b[h>>0]=e;b[h+1>>0]=e>>8;b[h+2>>0]=e>>16;b[h+3>>0]=e>>24;h=f[52664]|0;i=h-(f[52663]|0)|0;f[G>>2]=h;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,4,E)|0;i=(f[52663]|0)+i|0;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;Z_(210652,H,B,z,w,v);i=(f[52662]|0)+1|0;f[52662]=i;g=f[52664]|0;h=g-(f[52663]|0)|0;f[G>>2]=g;b[E>>0]=0;f[F>>2]=f[G>>2];V_(210652,F,4,E)|0;h=(f[52663]|0)+h|0;b[h>>0]=i;b[h+1>>0]=i>>8;b[h+2>>0]=i>>16;b[h+3>>0]=i>>24;T_(i,36,s,27,t);i=f[52663]|0;oc(i|0,i+((f[52664]|0)-i)|0);i=f[52663]|0;if((f[52664]|0)!=(i|0))f[52664]=i;ed(f[t>>2]|0);ed(f[s>>2]|0);j=f[k>>2]|0;if((j|0)==(f[l>>2]|0)){i=f[v>>2]|0;if(i){_pb(i);j=f[k>>2]|0}}if(j|0){i=f[l>>2]|0;if((i|0)!=(j|0))f[l>>2]=i+(~((i+-4-j|0)>>>2)<<2);Zpb(j)}i=f[m>>2]|0;if((i|0)==(f[n>>2]|0)){j=f[w>>2]|0;if(j){_pb(j);i=f[m>>2]|0}}if(i|0){j=f[n>>2]|0;if((j|0)!=(i|0))f[n>>2]=j+(~((j+-4-i|0)>>>2)<<2);Zpb(i)}i=f[x>>2]|0;if((i|0)==(f[y>>2]|0)){j=f[z>>2]|0;if(j){_pb(j);i=f[x>>2]|0}}if(i|0){j=f[y>>2]|0;if((j|0)!=(i|0))f[y>>2]=j+(~((j+-4-i|0)>>>2)<<2);Zpb(i)}i=f[A>>2]|0;if((i|0)==(f[C>>2]|0)){j=f[B>>2]|0;if(j){_pb(j);i=f[A>>2]|0}}if(!i){u=D;return}j=f[C>>2]|0;if((j|0)!=(i|0))f[C>>2]=j+(~((j+-4-i|0)>>>2)<<2);Zpb(i);u=D;return}function uq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=202;b[a+1>>0]=0;X_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,36,h,23,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function vq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;g=u;u=u+16|0;j=g+4|0;k=g;i=g+8|0;n=f[52664]|0;l=n-(f[52663]|0)|0;f[k>>2]=n;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+l>>0]=82;l=f[52664]|0;n=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;n=(f[52663]|0)+n|0;b[n>>0]=204;b[n+1>>0]=0;n=f[52664]|0;l=n-(f[52663]|0)|0;f[k>>2]=n;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,8,i)|0;n=a;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;l=(f[52663]|0)+l|0;m=l;b[m>>0]=n;b[m+1>>0]=n>>8;b[m+2>>0]=n>>16;b[m+3>>0]=n>>24;l=l+4|0;b[l>>0]=a;b[l+1>>0]=a>>8;b[l+2>>0]=a>>16;b[l+3>>0]=a>>24;l=f[52664]|0;a=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;a=(f[52663]|0)+a|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=(f[52662]|0)+1|0;f[52662]=a;l=f[52664]|0;c=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;c=(f[52663]|0)+c|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;T_(a,16,d,37,e);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=g;return}f[52664]=a;u=g;return}function wq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+24|0;o=n+36|0;l=n;j=n+28|0;k=n+20|0;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[g>>2]|0;f[k>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=205;b[e+1>>0]=0;__(210652,l);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,8,o)|0;e=d;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,18,j,37,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=n;return}function xq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;e=u;u=u+16|0;j=e+4|0;k=e;i=e+8|0;l=f[52664]|0;g=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,1,i)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;l=g-(f[52663]|0)|0;f[k>>2]=g;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,2,i)|0;l=(f[52663]|0)+l|0;b[l>>0]=203;b[l+1>>0]=0;l=f[52664]|0;g=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,8,i)|0;l=a;m=l;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;a=(f[52663]|0)+g|0;g=a;b[g>>0]=m;b[g+1>>0]=m>>8;b[g+2>>0]=m>>16;b[g+3>>0]=m>>24;a=a+4|0;b[a>>0]=l;b[a+1>>0]=l>>8;b[a+2>>0]=l>>16;b[a+3>>0]=l>>24;a=(f[52662]|0)+1|0;f[52662]=a;l=f[52664]|0;g=l-(f[52663]|0)|0;f[k>>2]=l;b[i>>0]=0;f[j>>2]=f[k>>2];V_(210652,j,4,i)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,25,c,26,d);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=e;return}f[52664]=a;u=e;return}function yq(a,c,d,e,g,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=u;u=u+16|0;o=m+4|0;p=m;n=m+8|0;s=f[52664]|0;r=s-(f[52663]|0)|0;f[p>>2]=s;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+r>>0]=82;r=f[52664]|0;s=r-(f[52663]|0)|0;f[p>>2]=r;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;s=(f[52663]|0)+s|0;b[s>>0]=214;b[s+1>>0]=0;s=f[52664]|0;r=s-(f[52663]|0)|0;f[p>>2]=s;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,8,n)|0;s=a;s=h[s>>0]|h[s+1>>0]<<8|h[s+2>>0]<<16|h[s+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;r=(f[52663]|0)+r|0;q=r;b[q>>0]=s;b[q+1>>0]=s>>8;b[q+2>>0]=s>>16;b[q+3>>0]=s>>24;r=r+4|0;b[r>>0]=a;b[r+1>>0]=a>>8;b[r+2>>0]=a>>16;b[r+3>>0]=a>>24;r=f[52664]|0;a=r-(f[52663]|0)|0;f[p>>2]=r;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,8,n)|0;r=c;r=h[r>>0]|h[r+1>>0]<<8|h[r+2>>0]<<16|h[r+3>>0]<<24;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;a=(f[52663]|0)+a|0;q=a;b[q>>0]=r;b[q+1>>0]=r>>8;b[q+2>>0]=r>>16;b[q+3>>0]=r>>24;a=a+4|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,8,n)|0;a=d;q=a;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;c=(f[52663]|0)+c|0;d=c;b[d>>0]=q;b[d+1>>0]=q>>8;b[d+2>>0]=q>>16;b[d+3>>0]=q>>24;c=c+4|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,8,n)|0;c=e;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;d=a;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,8,n)|0;a=g;d=a;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;g=(f[52663]|0)+e|0;e=g;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;g=g+4|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;g=f[52664]|0;a=g-(f[52663]|0)|0;f[p>>2]=g;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;a=(f[52663]|0)+a|0;b[a>>0]=i;b[a+1>>0]=i>>8;i=f[52664]|0;a=i-(f[52663]|0)|0;f[p>>2]=i;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;a=(f[52663]|0)+a|0;b[a>>0]=j;b[a+1>>0]=j>>8;b[a+2>>0]=j>>16;b[a+3>>0]=j>>24;a=(f[52662]|0)+1|0;f[52662]=a;i=f[52664]|0;j=i-(f[52663]|0)|0;f[p>>2]=i;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;j=(f[52663]|0)+j|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;T_(a,38,k,21,l);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=m;return}f[52664]=a;u=m;return}function zq(a,c,d,e,g,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+16|0;n=l+4|0;o=l;m=l+8|0;r=f[52664]|0;q=r-(f[52663]|0)|0;f[o>>2]=r;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+q>>0]=82;q=f[52664]|0;r=q-(f[52663]|0)|0;f[o>>2]=q;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;r=(f[52663]|0)+r|0;b[r>>0]=215;b[r+1>>0]=0;r=f[52664]|0;q=r-(f[52663]|0)|0;f[o>>2]=r;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,8,m)|0;r=a;r=h[r>>0]|h[r+1>>0]<<8|h[r+2>>0]<<16|h[r+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;q=(f[52663]|0)+q|0;p=q;b[p>>0]=r;b[p+1>>0]=r>>8;b[p+2>>0]=r>>16;b[p+3>>0]=r>>24;q=q+4|0;b[q>>0]=a;b[q+1>>0]=a>>8;b[q+2>>0]=a>>16;b[q+3>>0]=a>>24;q=f[52664]|0;a=q-(f[52663]|0)|0;f[o>>2]=q;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,8,m)|0;q=c;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;a=(f[52663]|0)+a|0;p=a;b[p>>0]=q;b[p+1>>0]=q>>8;b[p+2>>0]=q>>16;b[p+3>>0]=q>>24;a=a+4|0;b[a>>0]=c;b[a+1>>0]=c>>8;b[a+2>>0]=c>>16;b[a+3>>0]=c>>24;a=f[52664]|0;c=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,8,m)|0;a=d;p=a;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;c=(f[52663]|0)+c|0;d=c;b[d>>0]=p;b[d+1>>0]=p>>8;b[d+2>>0]=p>>16;b[d+3>>0]=p>>24;c=c+4|0;b[c>>0]=a;b[c+1>>0]=a>>8;b[c+2>>0]=a>>16;b[c+3>>0]=a>>24;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,8,m)|0;c=e;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;d=a;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=f[52664]|0;e=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,8,m)|0;a=g;d=a;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;g=(f[52663]|0)+e|0;e=g;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;g=g+4|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;g=f[52664]|0;a=g-(f[52663]|0)|0;f[o>>2]=g;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=i;b[a+1>>0]=i>>8;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;i=g-(f[52663]|0)|0;f[o>>2]=g;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;T_(a,38,j,21,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=l;return}f[52664]=a;u=l;return}function Aq(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=u;u=u+16|0;m=k+4|0;n=k;l=k+8|0;o=f[52664]|0;p=o-(f[52663]|0)|0;f[n>>2]=o;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+p>>0]=82;p=f[52664]|0;o=p-(f[52663]|0)|0;f[n>>2]=p;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,2,l)|0;o=(f[52663]|0)+o|0;b[o>>0]=216;b[o+1>>0]=0;o=f[52664]|0;p=o-(f[52663]|0)|0;f[n>>2]=o;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,8,l)|0;o=a;q=o;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;o=o+4|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;a=(f[52663]|0)+p|0;p=a;b[p>>0]=q;b[p+1>>0]=q>>8;b[p+2>>0]=q>>16;b[p+3>>0]=q>>24;a=a+4|0;b[a>>0]=o;b[a+1>>0]=o>>8;b[a+2>>0]=o>>16;b[a+3>>0]=o>>24;a=f[52664]|0;o=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,8,l)|0;a=c;p=a;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;o=(f[52663]|0)+o|0;c=o;b[c>>0]=p;b[c+1>>0]=p>>8;b[c+2>>0]=p>>16;b[c+3>>0]=p>>24;o=o+4|0;b[o>>0]=a;b[o+1>>0]=a>>8;b[o+2>>0]=a>>16;b[o+3>>0]=a>>24;o=f[52664]|0;a=o-(f[52663]|0)|0;f[n>>2]=o;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,8,l)|0;o=d;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;d=d+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;a=(f[52663]|0)+a|0;c=a;b[c>>0]=o;b[c+1>>0]=o>>8;b[c+2>>0]=o>>16;b[c+3>>0]=o>>24;a=a+4|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=f[52664]|0;d=a-(f[52663]|0)|0;f[n>>2]=a;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,8,l)|0;a=e;c=a;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;a=a+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;e=(f[52663]|0)+d|0;d=e;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;e=e+4|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;e=f[52664]|0;a=e-(f[52663]|0)|0;f[n>>2]=e;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,8,l)|0;e=g;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[n>>2]=e;b[l>>0]=0;f[m>>2]=f[n>>2];V_(210652,m,4,l)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,38,i,21,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)==(a|0)){u=k;return}f[52664]=a;u=k;return}function Bq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=217;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,36,i,24,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Cq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=241;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,11,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Dq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=27;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Eq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=14;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Fq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=17;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Gq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=23;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Hq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=236;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Iq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=239;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Jq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=246;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Kq(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+48|0;q=o+32|0;r=o+20|0;p=o+36|0;m=o;j=o+28|0;k=o+24|0;f[m>>2]=a;f[m+4>>2]=c;l=m+8|0;f[l>>2]=0;n=m+12|0;f[n>>2]=0;f[m+16>>2]=0;a=f[g>>2]|0;f[j>>2]=a;jd(a|0);h=f[h>>2]|0;f[k>>2]=h;jd(h|0);h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,2,p)|0;h=(f[52663]|0)+h|0;b[h>>0]=233;b[h+1>>0]=0;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+a>>0]=i;Y_(210652,m);a=f[52664]|0;h=a-(f[52663]|0)|0;f[r>>2]=a;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,1,p)|0;b[(f[52663]|0)+h>>0]=d;h=f[52664]|0;a=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;a=(f[52663]|0)+a|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;h=f[52664]|0;i=h-(f[52663]|0)|0;f[r>>2]=h;b[p>>0]=0;f[q>>2]=f[r>>2];V_(210652,q,4,p)|0;i=(f[52663]|0)+i|0;b[i>>0]=a;b[i+1>>0]=a>>8;b[i+2>>0]=a>>16;b[i+3>>0]=a>>24;T_(a,5,j,0,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[l>>2]|0;if((a|0)==(f[n>>2]|0)){c=f[m>>2]|0;if(c){_pb(c);a=f[l>>2]|0}}if(!a){u=o;return}c=f[n>>2]|0;if((c|0)!=(a|0))f[n>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=o;return}function Lq(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+32|0;o=m+24|0;p=m+20|0;n=m+28|0;k=m;f[k>>2]=a;f[k+4>>2]=c;j=k+8|0;f[j>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;c=(f[52663]|0)+c|0;b[c>>0]=12;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[p>>2]=c;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=i;Y_(210652,k);a=f[52664]|0;i=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+i>>0]=d;i=f[52664]|0;a=i-(f[52663]|0)|0;f[p>>2]=i;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;a=(f[52663]|0)+a|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=f[52664]|0;i=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;i=(f[52663]|0)+i|0;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[p>>2]=i;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=h&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[j>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Mq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=209;b[c+1>>0]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Nq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=207;b[c+1>>0]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function Oq(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=240;b[a+1>>0]=0;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,12,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Pq(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+48|0;r=p+32|0;s=p+20|0;q=p+36|0;n=p;k=p+28|0;l=p+24|0;f[n>>2]=a;f[n+4>>2]=c;m=n+8|0;f[m>>2]=0;o=n+12|0;f[o>>2]=0;f[n+16>>2]=0;a=f[g>>2]|0;f[k>>2]=a;jd(a|0);i=f[i>>2]|0;f[l>>2]=i;jd(i|0);i=f[52664]|0;a=i-(f[52663]|0)|0;f[s>>2]=i;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,1,q)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;i=a-(f[52663]|0)|0;f[s>>2]=a;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,2,q)|0;i=(f[52663]|0)+i|0;b[i>>0]=18;b[i+1>>0]=1;i=f[52664]|0;a=i-(f[52663]|0)|0;f[s>>2]=i;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,1,q)|0;b[(f[52663]|0)+a>>0]=j;Y_(210652,n);a=f[52664]|0;i=a-(f[52663]|0)|0;f[s>>2]=a;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,4,q)|0;i=(f[52663]|0)+i|0;b[i>>0]=d;b[i+1>>0]=d>>8;b[i+2>>0]=d>>16;b[i+3>>0]=d>>24;i=f[52664]|0;a=i-(f[52663]|0)|0;f[s>>2]=i;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,8,q)|0;i=e;g=i;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=(f[52663]|0)+a|0;j=a;b[j>>0]=g;b[j+1>>0]=g>>8;b[j+2>>0]=g>>16;b[j+3>>0]=g>>24;a=a+4|0;b[a>>0]=i;b[a+1>>0]=i>>8;b[a+2>>0]=i>>16;b[a+3>>0]=i>>24;a=(f[52662]|0)+1|0;f[52662]=a;i=f[52664]|0;j=i-(f[52663]|0)|0;f[s>>2]=i;b[q>>0]=0;f[r>>2]=f[s>>2];V_(210652,r,4,q)|0;j=(f[52663]|0)+j|0;b[j>>0]=a;b[j+1>>0]=a>>8;b[j+2>>0]=a>>16;b[j+3>>0]=a>>24;T_(a,36,k,30,l);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[l>>2]|0);ed(f[k>>2]|0);a=f[m>>2]|0;if((a|0)==(f[o>>2]|0)){c=f[n>>2]|0;if(c){_pb(c);a=f[m>>2]|0}}if(!a){u=p;return}c=f[o>>2]|0;if((c|0)!=(a|0))f[o>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=p;return}function Qq(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[e>>2]|0;f[k>>2]=a;jd(a|0);a=f[g>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=34;b[a+1>>0]=1;a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=h;Y_(210652,l);g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=d;b[a+1>>0]=d>>8;b[a+2>>0]=d>>16;b[a+3>>0]=d>>24;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,36,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function Rq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=219;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Sq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=255;b[c+1>>0]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Tq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=222;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Uq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=4;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Vq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=248;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Wq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=25;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Xq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=247;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function Yq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=24;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function Zq(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=223;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function _q(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=5;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function $q(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=226;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function ar(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=8;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function br(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=224;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function cr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=6;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function dr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=225;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function er(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=7;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function fr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=227;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function gr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=9;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function hr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=234;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function ir(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=13;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function jr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=244;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function kr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=22;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function lr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=15;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function mr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=237;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function nr(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=28;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function or(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;l=j+24|0;m=j+20|0;k=j+28|0;h=j;f[h>>2]=a;f[h+4>>2]=c;g=h+8|0;f[g>>2]=0;i=h+12|0;f[i>>2]=0;f[h+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[m>>2]=a;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,2,k)|0;c=(f[52663]|0)+c|0;b[c>>0]=10;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[m>>2]=c;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=e;Y_(210652,h);e=f[52664]|0;a=e-(f[52663]|0)|0;f[m>>2]=e;b[k>>0]=0;f[l>>2]=f[m>>2];V_(210652,l,1,k)|0;b[(f[52663]|0)+a>>0]=d&1;a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[g>>2]|0;if((a|0)==(f[i>>2]|0)){c=f[h>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=j;return}c=f[i>>2]|0;if((c|0)!=(a|0))f[i>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=j;return}function pr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=250;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,5,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function qr(a,c,d,e,g){a=a|0;c=c|0;d=+d;e=+e;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0;k=u;u=u+32|0;m=k+24|0;o=k+20|0;l=k+28|0;i=k;f[i>>2]=a;f[i+4>>2]=c;h=i+8|0;f[h>>2]=0;j=i+12|0;f[j>>2]=0;f[i+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[o>>2]=a;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,2,l)|0;c=(f[52663]|0)+c|0;b[c>>0]=3;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[o>>2]=c;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,1,l)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,i);a=f[52664]|0;g=a-(f[52663]|0)|0;f[o>>2]=a;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,4,l)|0;g=(f[52663]|0)+g|0;n[s>>2]=d;b[g>>0]=b[s>>0];b[g+1>>0]=b[s+1>>0];b[g+2>>0]=b[s+2>>0];b[g+3>>0]=b[s+3>>0];g=f[52664]|0;a=g-(f[52663]|0)|0;f[o>>2]=g;b[l>>0]=0;f[m>>2]=f[o>>2];V_(210652,m,4,l)|0;a=(f[52663]|0)+a|0;n[s>>2]=e;b[a>>0]=b[s>>0];b[a+1>>0]=b[s+1>>0];b[a+2>>0]=b[s+2>>0];b[a+3>>0]=b[s+3>>0];a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[h>>2]|0;if((a|0)==(f[j>>2]|0)){c=f[i>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=k;return}c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=k;return}function rr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+32|0;k=i+24|0;l=i+20|0;j=i+28|0;g=i;f[g>>2]=a;f[g+4>>2]=c;e=g+8|0;f[e>>2]=0;h=g+12|0;f[h>>2]=0;f[g+16>>2]=0;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;c=a-(f[52663]|0)|0;f[l>>2]=a;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,2,j)|0;c=(f[52663]|0)+c|0;b[c>>0]=31;b[c+1>>0]=1;c=f[52664]|0;a=c-(f[52663]|0)|0;f[l>>2]=c;b[j>>0]=0;f[k>>2]=f[l>>2];V_(210652,k,1,j)|0;b[(f[52663]|0)+a>>0]=d;Y_(210652,g);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;a=f[e>>2]|0;if((a|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[e>>2]|0}}if(!a){u=i;return}c=f[h>>2]|0;if((c|0)!=(a|0))f[h>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=i;return}function sr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+48|0;o=m+32|0;p=m+24|0;n=m+36|0;k=m;i=m+28|0;j=m+20|0;f[k>>2]=a;f[k+4>>2]=c;h=k+8|0;f[h>>2]=0;l=k+12|0;f[l>>2]=0;f[k+16>>2]=0;a=f[d>>2]|0;f[i>>2]=a;jd(a|0);e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[p>>2]=a;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,2,n)|0;e=(f[52663]|0)+e|0;b[e>>0]=242;b[e+1>>0]=0;e=f[52664]|0;a=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,1,n)|0;b[(f[52663]|0)+a>>0]=g;Y_(210652,k);a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[p>>2]=e;b[n>>0]=0;f[o>>2]=f[p>>2];V_(210652,o,4,n)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,10,i,12,j);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[j>>2]|0);ed(f[i>>2]|0);a=f[h>>2]|0;if((a|0)==(f[l>>2]|0)){c=f[k>>2]|0;if(c){_pb(c);a=f[h>>2]|0}}if(!a){u=m;return}c=f[l>>2]|0;if((c|0)!=(a|0))f[l>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=m;return}function tr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+20|0;o=n+36|0;l=n;k=n+28|0;i=n+24|0;f[l>>2]=a;f[l+4>>2]=c;j=l+8|0;f[j>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;a=f[g>>2]|0;f[k>>2]=a;jd(a|0);a=f[h>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=82;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;a=(f[52663]|0)+a|0;b[a>>0]=249;b[a+1>>0]=0;Y_(210652,l);a=f[52664]|0;g=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+g>>0]=d&1;g=f[52664]|0;a=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=e&1;a=(f[52662]|0)+1|0;f[52662]=a;g=f[52664]|0;h=g-(f[52663]|0)|0;f[q>>2]=g;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;h=(f[52663]|0)+h|0;b[h>>0]=a;b[h+1>>0]=a>>8;b[h+2>>0]=a>>16;b[h+3>>0]=a>>24;T_(a,33,k,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[k>>2]|0);a=f[j>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[j>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=n;return}function ur(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;n=l+32|0;o=l+28|0;m=l+36|0;j=l;h=l+24|0;i=l+20|0;f[j>>2]=a;f[j+4>>2]=c;g=j+8|0;f[g>>2]=0;k=j+12|0;f[k>>2]=0;f[j+16>>2]=0;a=f[d>>2]|0;f[h>>2]=a;jd(a|0);a=f[e>>2]|0;f[i>>2]=a;jd(a|0);a=f[52664]|0;d=a-(f[52663]|0)|0;f[o>>2]=a;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,1,m)|0;b[(f[52663]|0)+d>>0]=82;d=f[52664]|0;a=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,2,m)|0;a=(f[52663]|0)+a|0;b[a>>0]=228;b[a+1>>0]=0;Y_(210652,j);a=(f[52662]|0)+1|0;f[52662]=a;d=f[52664]|0;e=d-(f[52663]|0)|0;f[o>>2]=d;b[m>>0]=0;f[n>>2]=f[o>>2];V_(210652,n,4,m)|0;e=(f[52663]|0)+e|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;T_(a,33,h,12,i);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[i>>2]|0);ed(f[h>>2]|0);a=f[g>>2]|0;if((a|0)==(f[k>>2]|0)){c=f[j>>2]|0;if(c){_pb(c);a=f[g>>2]|0}}if(!a){u=l;return}c=f[k>>2]|0;if((c|0)!=(a|0))f[k>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=l;return}function vr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+24|0;o=n+36|0;l=n;j=n+28|0;k=n+20|0;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[g>>2]|0;f[k>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=235;b[e+1>>0]=0;__(210652,l);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,8,o)|0;e=d;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,33,j,38,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=n;return}function wr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+48|0;p=n+32|0;q=n+24|0;o=n+36|0;l=n;j=n+28|0;k=n+20|0;f[l>>2]=a;f[l+4>>2]=c;i=l+8|0;f[i>>2]=0;m=l+12|0;f[m>>2]=0;f[l+16>>2]=0;e=f[e>>2]|0;f[j>>2]=e;jd(e|0);e=f[g>>2]|0;f[k>>2]=e;jd(e|0);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,1,o)|0;b[(f[52663]|0)+a>>0]=82;a=f[52664]|0;e=a-(f[52663]|0)|0;f[q>>2]=a;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,2,o)|0;e=(f[52663]|0)+e|0;b[e>>0]=238;b[e+1>>0]=0;__(210652,l);e=f[52664]|0;a=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,8,o)|0;e=d;d=e;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=e+4|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;a=(f[52663]|0)+a|0;g=a;b[g>>0]=d;b[g+1>>0]=d>>8;b[g+2>>0]=d>>16;b[g+3>>0]=d>>24;a=a+4|0;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;a=(f[52662]|0)+1|0;f[52662]=a;e=f[52664]|0;g=e-(f[52663]|0)|0;f[q>>2]=e;b[o>>0]=0;f[p>>2]=f[q>>2];V_(210652,p,4,o)|0;g=(f[52663]|0)+g|0;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;T_(a,33,j,38,k);a=f[52663]|0;oc(a|0,a+((f[52664]|0)-a)|0);a=f[52663]|0;if((f[52664]|0)!=(a|0))f[52664]=a;ed(f[k>>2]|0);ed(f[j>>2]|0);a=f[i>>2]|0;if((a|0)==(f[m>>2]|0)){c=f[l>>2]|0;if(c){_pb(c);a=f[i>>2]|0}}if(!a){u=n;return}c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a);u=n;return}function xr(a){a=a|0;a:{Nc(5312,51881,2,22212,83955,698,1214);Nc(5312,51907,3,18956,83125,50,730);Nc(5312,51933,2,18400,83955,686,1215);Nc(5312,51963,3,18956,83125,50,731);Nc(5312,51993,2,22888,108929,53,13);Nc(5312,52024,3,18956,83125,50,732);Nc(5312,52055,2,22888,108929,53,14);Nc(5312,52090,3,18956,83125,50,733);Nc(5312,52125,2,22888,108929,53,15);Nc(5312,52163,3,18956,83125,50,734);Nc(5312,52201,2,22888,108929,53,16);Nc(5312,52227,3,18956,83125,50,735);Nc(5312,52253,4,23112,84142,118,64);Nc(5312,52274,2,22212,83955,698,1216);Nc(5312,52290,2,22888,108929,53,17);Nc(5312,52308,2,22888,108929,53,18);Nc(5312,52335,2,22888,108929,53,19);Nc(5312,52358,2,18400,83955,686,1217);Nc(5312,52377,3,23128,82495,17,55);Nc(5312,52395,3,21900,83125,57,736);Nc(5312,52415,4,23140,109417,1,2);Nc(5312,52436,5,21492,84910,83,119);Nc(5312,52452,1,18396,82488,1168,20);Nc(5312,52466,4,23156,84142,120,65);Nc(5312,52486,2,23172,83955,737,1218);Nc(5312,52501,3,23180,83125,66,738);Nc(5312,52528,2,22212,83955,698,1219);Nc(5312,52551,2,22936,83955,723,1220);Nc(5312,52572,2,22888,108929,53,20);Nc(5312,52595,2,18400,83955,686,1221);Nc(5312,52621,2,18400,83955,686,1222);Nc(5312,52648,2,22888,108929,53,21);Nc(5312,52676,2,22212,83955,698,1223);Nc(5312,52716,2,22212,83955,698,1224);Nc(5312,52737,2,22888,108929,53,22);Nc(5312,52760,2,22888,108929,53,23);Nc(5312,52792,2,22936,83955,723,1225);Nc(5312,52811,2,22888,108929,53,24);Nc(5312,52832,2,22212,83955,698,1226);Nc(5312,52859,2,22888,108929,53,25);Nc(5312,52886,2,22888,108929,53,26);Nc(5312,52915,2,18400,83955,686,1227);Nc(5312,52946,3,23192,109423,3,2);Nc(5312,52978,4,23204,109428,1,1);Nc(5312,53009,7,20836,92224,11,43);Nc(5312,53030,7,20836,92224,11,44);Nc(5312,53058,4,20160,84142,82,67);Nc(5312,53078,2,22212,83955,698,1228);Nc(5312,53110,2,18400,83955,686,1229);Nc(5312,53123,2,22888,108929,53,27);Nc(5312,53144,3,18956,83125,50,739);Nc(5312,53164,4,23316,84142,121,68);Nc(5312,53190,6,23364,86261,45,90);Nc(5312,53204,6,23364,86261,45,91);Nc(5312,53218,5,18936,84910,47,122);Nc(5312,53235,4,23484,84142,123,69);Nc(5312,53247,6,23532,86261,46,92);Nc(5312,53267,6,23532,86261,46,93);Nc(5312,53283,5,23588,83999,2,3);Nc(5312,53303,3,18956,83125,50,740);Nc(5312,53319,2,18400,83955,686,1230);Nc(5312,53335,2,23608,111881,56,28);Nc(5312,53351,2,23608,111881,56,29);Nc(5312,53378,2,23608,111881,56,30);Nc(5312,53405,2,23608,111881,56,31);Nc(5312,53441,2,23616,83955,741,1231);Nc(5312,53459,2,23616,83955,741,1232);Nc(5312,53476,2,22212,83955,698,1233);Mc(7104,7112,7128,0,83950,454,83953,0,83953,0,53503,82488,1234);Nc(7104,46435,13,18852,84598,5,4);Nc(7104,46448,5,18936,84910,47,124);Nc(7104,46462,3,18956,83125,50,742);Nc(7104,46478,5,18936,84910,47,125);Nc(7104,46495,5,18936,84910,47,126);Nc(7104,46527,5,18936,84910,47,127);Nc(7104,46552,6,19096,86261,19,94);Nc(7104,46577,5,18936,84910,47,128);Nc(7104,46603,6,19096,86261,19,95);Nc(7104,46629,3,18956,83125,50,743);Nc(7104,46629,4,19184,84142,71,70);Nc(7104,46643,5,18936,84910,47,129);Nc(7104,46658,5,18936,84910,47,130);Nc(7104,46677,6,19296,86261,20,96);Nc(7104,46696,15,19320,87886,1,3);Nc(7104,46712,17,19412,88234,1,6);Nc(7104,46729,5,18936,84910,47,131);Nc(7104,46746,5,19544,84910,51,132);Nc(7104,46775,6,19596,86261,21,97);Nc(7104,46805,4,19652,84142,76,71);Nc(7104,46822,10,19700,89804,1,5);Nc(7104,46822,9,19772,90067,4,9);Nc(7104,46822,8,19840,90327,2,24);Nc(7104,46842,6,19904,86261,22,98);Nc(7104,46863,6,19904,86261,22,99);Nc(7104,46888,5,19960,84910,55,133);Nc(7104,46912,5,19960,84910,55,134);Nc(7104,46941,5,19960,84910,55,135);Nc(7104,46970,5,19960,84910,55,136);Nc(7104,47e3,6,19904,86261,22,100);Nc(7104,47029,6,19904,86261,22,101);Nc(7104,47058,6,19904,86261,22,102);Nc(7104,47088,8,20076,90327,3,25);Nc(7104,47123,8,20108,90327,4,26);Nc(7104,47158,5,20140,84910,59,137);Nc(7104,47193,4,20160,84142,82,72);Nc(7104,47231,7,20208,92224,9,47);Nc(7104,47254,8,20268,90327,5,27);Nc(7104,47277,7,20208,92224,9,48);Nc(7104,47302,6,19904,86261,22,103);Nc(7104,47329,5,19960,84910,55,138);Nc(7104,47356,6,19904,86261,22,104);Nc(7104,47381,5,19960,84910,55,139);Nc(7104,47406,6,19904,86261,22,105);Nc(7104,47442,5,19960,84910,55,140);Nc(7104,47478,6,19904,86261,22,106);Nc(7104,47509,5,19960,84910,55,141);Nc(7104,47540,6,19904,86261,22,107);Nc(7104,47569,5,19960,84910,55,142);Nc(7104,47598,6,19904,86261,22,108);Nc(7104,47626,5,19960,84910,55,143);Nc(7104,47654,6,19904,86261,22,109);Nc(7104,47681,5,19960,84910,55,144);Nc(7104,47708,6,19904,86261,22,110);Nc(7104,47746,5,19960,84910,55,145);Nc(7104,47784,6,19904,86261,22,111);Nc(7104,47821,5,19960,84910,55,146);Nc(7104,47858,6,19904,86261,22,112);Nc(7104,47890,5,19960,84910,55,147);Nc(7104,47922,6,19904,86261,22,113);Nc(7104,47962,5,19960,84910,55,148);Nc(7104,48002,5,19960,84910,55,149);Nc(7104,48030,6,19904,86261,22,114);Nc(7104,48058,5,19960,84910,55,150);Nc(7104,48079,5,19960,84910,55,151);Nc(7104,48105,6,19904,86261,22,115);Nc(7104,48132,6,20748,96435,1,2);Nc(7104,48159,4,20160,84142,82,73);Nc(7104,48188,6,19904,86261,22,116);Nc(7104,48224,7,20836,92224,11,49);Nc(7104,48259,5,18936,84910,47,152);Nc(7104,48299,6,20928,86261,26,117);Nc(7104,48335,6,20928,86261,26,118);Nc(7104,48371,6,20928,86261,26,119);Nc(7104,48408,6,20928,86261,26,120);Nc(7104,48442,5,21080,84910,78,153);Nc(7104,48486,7,21132,92224,12,50);Nc(7104,48530,6,21192,86261,28,121);Nc(7104,48573,6,21192,86261,28,122);Nc(7104,48617,6,19904,86261,22,123);Nc(7104,48653,6,19904,86261,22,124);Nc(7104,48687,7,21344,92224,13,51);Nc(7104,48719,7,21344,92224,13,52);Nc(7104,48750,14,21436,101394,2,7);Nc(7104,48774,5,20140,84910,59,154);Nc(7104,48800,5,21492,84910,83,155);Nc(7104,48826,5,21492,84910,83,156);Nc(7104,48855,6,21512,101410,4,2);Nc(7104,48879,5,20140,84910,59,157);Nc(7104,48905,7,21536,92224,14,53);Nc(7104,48929,7,21536,92224,14,54);Nc(7104,48962,7,21536,92224,14,55);Nc(7104,48991,7,21628,102107,1,6);Nc(7104,49021,4,20160,84142,82,74);Nc(7104,49053,6,19904,86261,22,125);Nc(7104,49083,6,21688,86261,34,126);Nc(7104,49105,5,20140,84910,59,158);Nc(7104,49129,7,21536,92224,14,56);Nc(7104,49151,7,21536,92224,14,57);Nc(7104,49182,8,21776,90327,6,28);Nc(7104,49211,7,21808,92224,16,58);Nc(7104,49242,5,20140,84910,59,159);Nc(7104,49274,8,20076,90327,3,29);Nc(7104,49303,8,20076,90327,3,30);Nc(7104,49341,8,21868,103582,1,2);Nc(7104,49369,4,20160,84142,82,75);Nc(7104,49399,2,18400,83955,686,1235);Nc(7104,49415,3,21900,83125,57,744);Nc(7104,49433,11,21912,103592,1,2);Nc(7104,49453,3,21956,83125,58,745);Nc(7104,53508,1,18396,82488,1168,21);Nc(7104,49472,4,22e3,84142,105,76);Nc(7104,49491,5,18936,84910,47,160);Nc(7104,49501,3,18956,83125,50,746);Nc(7104,49512,3,18956,83125,50,747);Nc(7104,49528,5,18936,84910,47,161);Nc(7104,49555,10,22080,104321,1,2);Nc(7104,49568,5,18936,84910,47,162);Nc(7104,49585,7,22184,92224,19,59);Nc(7104,49598,2,18400,83955,686,1236);Nc(7104,49608,3,18956,83125,50,748);Nc(7104,49618,3,18956,83125,50,748);Nc(7104,49635,1,18396,82488,1168,22);Nc(7104,49650,1,18396,82488,1168,23);Nc(7104,49664,2,22212,83955,698,1237);Nc(7104,49680,2,22212,83955,698,1238);Nc(7104,49696,2,22212,83955,698,1239);Nc(7104,49713,3,22220,83125,60,749);Nc(7104,49739,3,18956,83125,50,750);Nc(7104,49759,5,22244,84910,86,163);Nc(7104,49776,8,22264,90327,7,31);Nc(7104,49794,8,22328,90327,8,32);Nc(7104,49819,7,22392,92224,22,60);Nc(7104,49850,7,22452,92224,23,61);Nc(7104,49873,6,22512,106413,1,2);Nc(7104,49894,2,18400,83955,686,1240);Nc(7104,49913,5,18936,84910,47,164);Nc(7104,49936,5,18936,84910,47,165);Nc(7104,49954,6,22632,86261,41,127);Nc(7104,49976,5,18936,84910,47,166);Nc(7104,49998,1,18396,82488,1168,24);Nc(7104,50023,5,18936,84910,47,167);Nc(7104,50042,6,22752,108297,1,2);Nc(7104,50056,1,18396,82488,1168,25);Nc(7104,50071,1,18396,82488,1168,26);Nc(7104,50084,1,18396,82488,1168,27);Nc(7104,53548,5,18936,84910,47,168);Nc(7104,50127,3,18956,83125,50,751);Nc(7104,50143,3,18956,83125,50,752);Nc(7104,50159,3,18956,83125,50,753);Nc(7104,50176,3,18956,83125,50,754);Nc(7104,50197,2,22212,83955,698,1241);Nc(7104,50218,3,18956,83125,50,755);Nc(7104,50238,2,22212,83955,698,1242);Nc(7104,50258,3,18956,83125,50,756);Nc(7104,50280,2,22212,83955,698,1243);Nc(7104,50302,3,18956,83125,50,757);Nc(7104,50318,3,18956,83125,50,758);Nc(7104,50335,3,18956,83125,50,759);Nc(7104,50349,3,18956,83125,50,760);Nc(7104,50370,3,22840,108924,6,2);Nc(7104,50391,1,18396,82488,1168,28);Nc(7104,50411,1,18396,82488,1168,29);Nc(7104,50424,1,18396,82488,1168,30);Nc(7104,50439,1,18396,82488,1168,31);Nc(7104,50455,2,22852,83955,711,1244);Nc(7104,50474,3,22860,83125,61,761);Nc(7104,50496,3,18956,83125,50,762);Nc(7104,50518,2,22872,83955,714,1245);Nc(7104,50530,2,22880,83955,715,1246);Nc(7104,50547,2,22888,108929,53,32);Nc(7104,50579,2,22896,83955,716,1247);Nc(7104,50608,2,22896,83955,716,1248);Nc(7104,50636,2,22896,83955,716,1249);Nc(7104,50659,2,22852,83955,711,1250);Nc(7104,50687,2,22852,83955,711,1251);Nc(7104,50714,2,22852,83955,711,1252);Nc(7104,50736,2,22852,83955,711,1253);Nc(7104,50771,2,22852,83955,711,1254);Nc(7104,50805,2,22852,83955,711,1255);Nc(7104,50834,2,22852,83955,711,1256);Nc(7104,50864,2,22852,83955,711,1257);Nc(7104,50906,2,22852,83955,711,1258);Nc(7104,50947,2,22852,83955,711,1259);Nc(7104,50992,2,22852,83955,711,1260);Nc(7104,51036,3,18956,83125,50,763);Nc(7104,51063,3,18956,83125,50,764);Nc(7104,51089,2,22212,83955,698,1261);Nc(7104,51116,2,22888,108929,53,33);Nc(7104,51142,2,22888,108929,53,34);Nc(7104,51171,2,22888,108929,53,35);Nc(7104,51195,2,22888,108929,53,36);Nc(7104,51223,2,18400,83955,686,1262);Nc(7104,51250,2,18400,83955,686,1263);Nc(7104,51281,2,22888,108929,53,37);Nc(7104,51313,2,22888,108929,53,38);Nc(7104,51345,2,22888,108929,53,39);Nc(7104,51372,2,18400,83955,686,1264);Nc(7104,51401,2,22852,83955,711,1265);Nc(7104,51425,2,22904,83955,719,1266);Nc(7104,51445,2,22912,83955,720,1267);Nc(7104,51460,2,22920,83955,721,1268);Nc(7104,51480,2,18400,83955,686,1269);Nc(7104,51495,1,18396,82488,1168,32);Nc(7104,51512,2,22888,108929,53,40);Nc(7104,51528,2,22888,108929,53,41);Nc(7104,51550,2,22888,108929,53,42);Nc(7104,51567,2,22928,83955,722,1270);Nc(7104,51587,1,18396,82488,1168,33);Nc(7104,51609,2,22212,83955,698,1271);Nc(7104,51628,2,22936,83955,723,1272);Nc(7104,51649,1,18396,82488,1168,34);Nc(7104,51661,5,22944,84910,88,169);Nc(7104,51670,1,18396,82488,1168,35);Nc(7104,51682,3,18956,83125,50,765);Nc(7104,51703,4,22996,84142,117,77);Nc(7104,51716,2,22888,108929,53,43);Nc(7104,51724,1,18396,82488,1168,36);Nc(7104,51737,6,23044,86261,42,128);Nc(7104,51753,3,23068,83125,63,766);Nc(7104,51771,3,23080,82495,16,57);Nc(7104,51786,2,22920,83955,721,1273);Nc(7104,51810,3,23092,109412,1,3);Nc(7104,51823,2,23104,83955,726,1274);Nc(7104,51837,3,18956,83125,50,767);Nc(7104,51850,3,18956,83125,50,768);Nc(7104,51867,3,18956,83125,50,769);Nc(7104,51881,2,22212,83955,698,1275);Nc(7104,51907,3,18956,83125,50,770);Nc(7104,51933,2,18400,83955,686,1276);Nc(7104,51963,3,18956,83125,50,771);Nc(7104,51993,2,22888,108929,53,44);Nc(7104,52024,3,18956,83125,50,772);Nc(7104,52055,2,22888,108929,53,45);Nc(7104,52090,3,18956,83125,50,773);Nc(7104,52125,2,22888,108929,53,46);Nc(7104,52163,3,18956,83125,50,774);Nc(7104,52201,2,22888,108929,53,47);Nc(7104,52227,3,18956,83125,50,775);Nc(7104,52253,4,23112,84142,118,78);Nc(7104,52274,2,22212,83955,698,1277);Nc(7104,52290,2,22888,108929,53,48);Nc(7104,52308,2,22888,108929,53,49);Nc(7104,52335,2,22888,108929,53,50);Nc(7104,52358,2,18400,83955,686,1278);Nc(7104,52377,3,23128,82495,17,58);Nc(7104,52395,3,21900,83125,57,776);Nc(7104,52415,4,23140,109417,1,4);Nc(7104,52436,5,21492,84910,83,170);Nc(7104,52452,1,18396,82488,1168,37);Nc(7104,52466,4,23156,84142,120,79);Nc(7104,52486,2,23172,83955,737,1279);Nc(7104,52501,3,23180,83125,66,777);Nc(7104,52528,2,22212,83955,698,1280);Nc(7104,52551,2,22936,83955,723,1281);Nc(7104,52572,2,22888,108929,53,51);Nc(7104,52595,2,18400,83955,686,1282);Nc(7104,52621,2,18400,83955,686,1283);Nc(7104,52648,2,22888,108929,53,52);Nc(7104,52676,2,22212,83955,698,1284);Nc(7104,52716,2,22212,83955,698,1285);Nc(7104,52737,2,22888,108929,53,53);Nc(7104,52760,2,22888,108929,53,54);Nc(7104,52792,2,22936,83955,723,1286);Nc(7104,52811,2,22888,108929,53,55);Nc(7104,52832,2,22212,83955,698,1287);Nc(7104,52859,2,22888,108929,53,56);Nc(7104,52886,2,22888,108929,53,57);Nc(7104,52915,2,18400,83955,686,1288);Nc(7104,52946,3,23192,109423,3,4);Nc(7104,52978,4,23204,109428,1,2);Nc(7104,53009,7,20836,92224,11,62);Nc(7104,53030,7,20836,92224,11,63);Nc(7104,53058,4,20160,84142,82,80);Nc(7104,53078,2,22212,83955,698,1289);Nc(7104,53110,2,18400,83955,686,1290);Nc(7104,53123,2,22888,108929,53,58);Nc(7104,53144,3,18956,83125,50,778);Nc(7104,53164,4,23316,84142,121,81);Nc(7104,53190,6,23364,86261,45,129);Nc(7104,53204,6,23364,86261,45,130);Nc(7104,53218,5,18936,84910,47,171);Nc(7104,53235,4,23484,84142,123,82);Nc(7104,53247,6,23532,86261,46,131);Nc(7104,53267,6,23532,86261,46,132);Nc(7104,53283,5,23588,83999,2,4);Nc(7104,53303,3,18956,83125,50,779);Nc(7104,53319,2,18400,83955,686,1291);Nc(7104,53335,2,23608,111881,56,59);Nc(7104,53351,2,23608,111881,56,60);Nc(7104,53378,2,23608,111881,56,61);Nc(7104,53405,2,23608,111881,56,62);Nc(7104,53441,2,23616,83955,741,1292);Nc(7104,53459,2,23616,83955,741,1293);Nc(7104,53476,2,22212,83955,698,1294);Nc(7104,53564,5,23624,84910,133,172);f[a+1032>>2]=5;break a}}function yr(a){a=a|0;var b=0;b=Wpb(4)|0;f[b>>2]=20;a=Wpb(4)|0;f[a>>2]=20;Zc(5056,44114,13536,83121,149,b|0,13536,83125,45,a|0);Kc(5056);Pc(5064,44126,1,0);Qc(5064,44137,0);Qc(5064,44149,1);Qc(5064,44162,2);Pc(5072,44172,1,0);Qc(5072,44181,0);Qc(5072,44189,1);Qc(5072,44199,2);Qc(5072,44210,3);Pc(5080,44215,1,0);Qc(5080,44231,0);Qc(5080,44236,1);Qc(5080,44245,2);Qc(5080,44256,3);Pc(5088,44265,1,0);Qc(5088,44279,0);Qc(5088,44287,1);Pc(5096,44310,1,0);Qc(5096,44231,0);Qc(5096,44327,1);Pc(5104,44332,1,0);Qc(5104,44344,0);Qc(5104,44348,1);Qc(5104,44355,2);Qc(5104,44360,3);Pc(5112,44366,1,0);Qc(5112,44383,0);Qc(5112,44392,1);Pc(5120,44404,1,0);Qc(5120,44416,0);Qc(5120,44422,1);Qc(5120,44428,2);Pc(5128,44435,1,0);Qc(5128,44448,0);Qc(5128,44466,1);Qc(5128,44476,2);Pc(2448,44494,1,0);Qc(2448,44522,0);Qc(2448,44537,1);Qc(2448,44551,2);Pc(2384,44564,1,0);Qc(2384,44581,0);Qc(2384,44595,1);Qc(2384,44603,2);Qc(2384,44621,3);Qc(2384,44636,4);Pc(3248,44653,1,0);Qc(3248,44672,0);Qc(3248,44551,1);Pc(2944,44694,1,0);Qc(2944,44435,0);Qc(2944,44715,1);Qc(2944,44723,2);Qc(2944,44729,3);Pc(2528,44740,1,0);Qc(2528,44760,0);Qc(2528,44783,1);Pc(5136,44806,4,0);Qc(5136,44818,0);Qc(5136,44825,1);Qc(5136,44831,2);Qc(5136,44837,3);Qc(5136,44849,4);Qc(5136,44854,5);Pc(5144,44858,4,0);Qc(5144,44872,0);Qc(5144,44879,1);Pc(5152,44885,4,0);Qc(5152,44906,0);Qc(5152,44909,1);Pc(5160,44913,4,0);Qc(5160,44906,0);Qc(5160,44909,1);Pc(5168,44931,4,0);Qc(5168,44955,0);Pc(5176,44958,4,0);Qc(5176,44231,0);Qc(5176,44974,1);Pc(5184,44980,1,0);Qc(5184,44992,0);Qc(5184,44999,1);Qc(5184,45018,2);Pc(5192,45045,1,0);Qc(5192,45059,0);Qc(5192,45075,1);Qc(5192,45091,2);Qc(5192,45108,3);Qc(5192,45125,4);Qc(5192,45135,5);Qc(5192,45146,6);Qc(5192,45158,7);Qc(5192,45171,8);Pc(3928,45178,1,0);Qc(3928,45192,0);Qc(3928,45205,1);Qc(3928,45215,2);Qc(3928,45221,3);Qc(3928,45245,4);Qc(3928,45270,5);Pc(3848,45299,1,0);Qc(3848,45310,0);Qc(3848,45317,1);Qc(3848,45322,2);Pc(1024,45329,1,0);Qc(1024,45348,0);Qc(1024,45215,1);Pc(4864,45355,4,1);Qc(4864,45366,0);Qc(4864,45374,1);Qc(4864,45387,2);Pc(3024,45409,1,0);Qc(3024,44715,0);Pc(3312,45430,1,0);Qc(3312,45450,0);Qc(3312,45461,1);Pc(5200,45483,1,0);Qc(5200,45348,0);Qc(5200,45215,1);Qc(5200,45221,2);Qc(5200,45245,3);Pc(5208,45505,1,0);Qc(5208,45515,0);Pc(5216,45527,1,0);Qc(5216,45537,0);Qc(5216,45546,1);Pc(5224,45557,1,0);Qc(5224,44992,0);Qc(5224,45574,1);Qc(5224,45592,2);Pc(5232,45611,1,0);Qc(5232,45215,0);Qc(5232,45622,1);Mc(5240,5248,5264,0,83950,440,83953,0,83953,0,45629,82488,1167);Nc(5240,45634,1,18396,82488,1168,2);Nc(5240,45652,1,18396,82488,1168,3);Nc(5240,45668,2,18400,83955,686,1169);Nc(5240,45668,9,18408,83959,1,1);Nc(5240,45668,8,18444,83970,1,1);Nc(5240,45682,2,18400,83955,686,1170);Nc(5240,45682,8,18444,83970,1,2);Nc(5240,45682,9,18408,83959,1,2);Nc(5240,45695,2,18476,83121,150,441);Nc(5240,45713,2,18476,83121,150,442);Nc(5240,45737,2,18476,83121,150,443);Nc(5240,45755,2,18484,83121,151,444);Nc(5240,45773,3,18492,83125,46,687);Nc(5240,45794,2,18504,83121,152,445);Nc(5240,45810,3,18512,83125,47,688);Nc(5240,45829,2,18504,83121,152,446);Nc(5240,45845,3,18512,83125,47,689);Nc(5240,45864,2,18504,83121,152,447);Nc(5240,45878,3,18512,83125,47,690);Nc(5240,45895,2,18524,82500,21,42);Nc(5240,45912,3,18532,82504,14,48);Nc(5240,45932,2,18524,82500,21,43);Nc(5240,45950,2,18524,82500,21,44);Nc(5240,45969,3,18532,82504,14,49);Nc(5240,45969,4,18544,83980,1,2);Nc(5240,45985,3,18532,82504,14,50);Nc(5240,45985,4,18544,83980,1,3);Nc(5240,46009,5,18560,83986,1,1);Nc(5240,46022,4,18544,83980,1,4);Nc(5240,46033,3,18532,82504,14,51);Nc(5240,46045,3,18532,82504,14,52);Nc(5240,46057,4,18544,83980,1,5);Nc(5240,46070,4,18580,83993,1,15);Nc(5240,46087,5,18596,83999,1,2);Nc(5240,46108,3,18616,84006,112,48);Nc(5240,46125,1,18628,83950,448,22);Nc(5240,46139,2,18632,83121,153,449);Nc(5240,46159,10,18640,84011,1,1);Nc(5240,46175,2,18400,83955,686,1171);Nc(5240,46197,1,18680,83950,450,23);Nc(5240,46210,16,18684,84124,1,1);Nc(5240,46222,1,18396,82488,1168,4);Nc(5240,46240,2,18748,83121,154,451);Nc(5240,46258,1,18628,83950,448,24);Nc(5240,46275,1,18628,83950,448,25);Nc(5240,46293,1,18756,83950,452,1172);Nc(5240,46314,4,18760,84142,64,49);Nc(5240,46328,7,18776,84148,1,1);Nc(5240,46348,4,18804,84157,9,65);Nc(5240,46367,1,18628,83950,448,26);Nc(5240,46394,1,18628,83950,448,27);Nc(5240,46413,1,18628,83950,448,28);Mc(5312,5320,5336,0,83950,453,83953,0,83953,0,46430,82488,1173);Nc(5312,46435,13,18852,84598,5,3);Nc(5312,46448,5,18936,84910,47,66);Nc(5312,46462,3,18956,83125,50,691);Nc(5312,46478,5,18936,84910,47,67);Nc(5312,46495,5,18936,84910,47,68);Nc(5312,46527,5,18936,84910,47,69);Nc(5312,46552,6,19096,86261,19,48);Nc(5312,46577,5,18936,84910,47,70);Nc(5312,46603,6,19096,86261,19,49);Nc(5312,46629,3,18956,83125,50,692);Nc(5312,46629,4,19184,84142,71,51);Nc(5312,46643,5,18936,84910,47,72);Nc(5312,46658,5,18936,84910,47,73);Nc(5312,46677,6,19296,86261,20,50);Nc(5312,46696,15,19320,87886,1,1);Nc(5312,46712,17,19412,88234,1,5);Nc(5312,46729,5,18936,84910,47,74);Nc(5312,46746,5,19544,84910,51,75);Nc(5312,46775,6,19596,86261,21,52);Nc(5312,46805,4,19652,84142,76,52);Nc(5312,46822,10,19700,89804,1,3);Nc(5312,46822,9,19772,90067,4,1);Nc(5312,46822,8,19840,90327,2,6);Nc(5312,46842,6,19904,86261,22,53);Nc(5312,46863,6,19904,86261,22,54);Nc(5312,46888,5,19960,84910,55,77);Nc(5312,46912,5,19960,84910,55,78);Nc(5312,46941,5,19960,84910,55,79);Nc(5312,46970,5,19960,84910,55,80);Nc(5312,47e3,6,19904,86261,22,56);Nc(5312,47029,6,19904,86261,22,57);Nc(5312,47058,6,19904,86261,22,58);Nc(5312,47088,8,20076,90327,3,7);Nc(5312,47123,8,20108,90327,4,8);Nc(5312,47158,5,20140,84910,59,81);Nc(5312,47193,4,20160,84142,82,53);Nc(5312,47231,7,20208,92224,9,23);Nc(5312,47254,8,20268,90327,5,10);Nc(5312,47277,7,20208,92224,9,24);Nc(5312,47302,6,19904,86261,22,60);Nc(5312,47329,5,19960,84910,55,83);Nc(5312,47356,6,19904,86261,22,61);Nc(5312,47381,5,19960,84910,55,84);Nc(5312,47406,6,19904,86261,22,62);Nc(5312,47442,5,19960,84910,55,85);Nc(5312,47478,6,19904,86261,22,63);Nc(5312,47509,5,19960,84910,55,86);Nc(5312,47540,6,19904,86261,22,64);Nc(5312,47569,5,19960,84910,55,87);Nc(5312,47598,6,19904,86261,22,65);Nc(5312,47626,5,19960,84910,55,88);Nc(5312,47654,6,19904,86261,22,66);Nc(5312,47681,5,19960,84910,55,89);Nc(5312,47708,6,19904,86261,22,67);Nc(5312,47746,5,19960,84910,55,90);Nc(5312,47784,6,19904,86261,22,68);Nc(5312,47821,5,19960,84910,55,91);Nc(5312,47858,6,19904,86261,22,69);Nc(5312,47890,5,19960,84910,55,92);Nc(5312,47922,6,19904,86261,22,70);Nc(5312,47962,5,19960,84910,55,93);Nc(5312,48002,5,19960,84910,55,94);Nc(5312,48030,6,19904,86261,22,71);Nc(5312,48058,5,19960,84910,55,95);Nc(5312,48079,5,19960,84910,55,96);Nc(5312,48105,6,19904,86261,22,72);Nc(5312,48132,6,20748,96435,1,1);Nc(5312,48159,4,20160,84142,82,54);Nc(5312,48188,6,19904,86261,22,73);Nc(5312,48224,7,20836,92224,11,25);Nc(5312,48259,5,18936,84910,47,97);Nc(5312,48299,6,20928,86261,26,74);Nc(5312,48335,6,20928,86261,26,75);Nc(5312,48371,6,20928,86261,26,76);Nc(5312,48408,6,20928,86261,26,77);Nc(5312,48442,5,21080,84910,78,98);Nc(5312,48486,7,21132,92224,12,27);Nc(5312,48530,6,21192,86261,28,79);Nc(5312,48573,6,21192,86261,28,80);Nc(5312,48617,6,19904,86261,22,81);Nc(5312,48653,6,19904,86261,22,82);Nc(5312,48687,7,21344,92224,13,29);Nc(5312,48719,7,21344,92224,13,30);Nc(5312,48750,14,21436,101394,2,6);Nc(5312,48774,5,20140,84910,59,99);Nc(5312,48800,5,21492,84910,83,100);Nc(5312,48826,5,21492,84910,83,101);Nc(5312,48855,6,21512,101410,4,1);Nc(5312,48879,5,20140,84910,59,102);Nc(5312,48905,7,21536,92224,14,31);Nc(5312,48929,7,21536,92224,14,32);Nc(5312,48962,7,21536,92224,14,33);Nc(5312,48991,7,21628,102107,1,5);Nc(5312,49021,4,20160,84142,82,55);Nc(5312,49053,6,19904,86261,22,84);Nc(5312,49083,6,21688,86261,34,85);Nc(5312,49105,5,20140,84910,59,103);Nc(5312,49129,7,21536,92224,14,35);Nc(5312,49151,7,21536,92224,14,36);Nc(5312,49182,8,21776,90327,6,15);Nc(5312,49211,7,21808,92224,16,37);Nc(5312,49242,5,20140,84910,59,104);Nc(5312,49274,8,20076,90327,3,17);Nc(5312,49303,8,20076,90327,3,18);Nc(5312,49341,8,21868,103582,1,1);Nc(5312,49369,4,20160,84142,82,56);Nc(5312,49399,2,18400,83955,686,1174);Nc(5312,49415,3,21900,83125,57,693);Nc(5312,49433,11,21912,103592,1,1);Nc(5312,49453,3,21956,83125,58,694);Nc(5312,49472,4,22e3,84142,105,59);Nc(5312,49491,5,18936,84910,47,106);Nc(5312,49501,3,18956,83125,50,695);Nc(5312,49512,3,18956,83125,50,696);Nc(5312,49528,5,18936,84910,47,107);Nc(5312,49555,10,22080,104321,1,1);Nc(5312,49568,5,18936,84910,47,108);Nc(5312,49585,7,22184,92224,19,38);Nc(5312,49598,2,18400,83955,686,1175);Nc(5312,49608,1,18628,83950,448,29);Nc(5312,49618,3,18956,83125,50,697);Nc(5312,49635,1,18396,82488,1168,5);Nc(5312,49650,1,18396,82488,1168,6);Nc(5312,49664,2,22212,83955,698,1176);Nc(5312,49680,2,22212,83955,698,1177);Nc(5312,49696,2,22212,83955,698,1178);Nc(5312,49713,3,22220,83125,60,699);Nc(5312,49739,3,18956,83125,50,700);Nc(5312,49759,5,22244,84910,86,109);Nc(5312,49776,8,22264,90327,7,20);Nc(5312,49794,8,22328,90327,8,21);Nc(5312,49819,7,22392,92224,22,39);Nc(5312,49850,7,22452,92224,23,40);Nc(5312,49873,6,22512,106413,1,1);Nc(5312,49894,2,18400,83955,686,1179);Nc(5312,49913,5,18936,84910,47,110);Nc(5312,49936,5,18936,84910,47,111);Nc(5312,49954,6,22632,86261,41,87);Nc(5312,49976,5,18936,84910,47,112);Nc(5312,49998,1,18396,82488,1168,7);Nc(5312,50023,5,18936,84910,47,113);Nc(5312,50042,6,22752,108297,1,1);Nc(5312,50056,1,18396,82488,1168,8);Nc(5312,50071,1,18396,82488,1168,9);Nc(5312,50084,1,18396,82488,1168,10);Nc(5312,50098,5,18936,84910,47,114);Nc(5312,50110,5,18936,84910,47,115);Nc(5312,50127,3,18956,83125,50,701);Nc(5312,50143,3,18956,83125,50,702);Nc(5312,50159,3,18956,83125,50,703);Nc(5312,50176,3,18956,83125,50,704);Nc(5312,50197,2,22212,83955,698,1180);Nc(5312,50218,3,18956,83125,50,705);Nc(5312,50238,2,22212,83955,698,1181);Nc(5312,50258,3,18956,83125,50,706);Nc(5312,50280,2,22212,83955,698,1182);Nc(5312,50302,3,18956,83125,50,707);Nc(5312,50318,3,18956,83125,50,708);Nc(5312,50335,3,18956,83125,50,709);Nc(5312,50349,3,18956,83125,50,710);Nc(5312,50370,3,22840,108924,6,1);Nc(5312,50391,1,18396,82488,1168,11);Nc(5312,50411,1,18396,82488,1168,12);Nc(5312,50424,1,18396,82488,1168,13);Nc(5312,50439,1,18396,82488,1168,14);Nc(5312,50455,2,22852,83955,711,1183);Nc(5312,50474,3,22860,83125,61,712);Nc(5312,50496,3,18956,83125,50,713);Nc(5312,50518,2,22872,83955,714,1184);Nc(5312,50530,2,22880,83955,715,1185);Nc(5312,50547,2,22888,108929,53,1);Nc(5312,50579,2,22896,83955,716,1186);Nc(5312,50608,2,22896,83955,716,1187);Nc(5312,50636,2,22896,83955,716,1188);Nc(5312,50659,2,22852,83955,711,1189);Nc(5312,50687,2,22852,83955,711,1190);Nc(5312,50714,2,22852,83955,711,1191);Nc(5312,50736,2,22852,83955,711,1192);Nc(5312,50771,2,22852,83955,711,1193);Nc(5312,50805,2,22852,83955,711,1194);Nc(5312,50834,2,22852,83955,711,1195);Nc(5312,50864,2,22852,83955,711,1196);Nc(5312,50906,2,22852,83955,711,1197);Nc(5312,50947,2,22852,83955,711,1198);Nc(5312,50992,2,22852,83955,711,1199);Nc(5312,51036,3,18956,83125,50,717);Nc(5312,51063,3,18956,83125,50,718);Nc(5312,51089,2,22212,83955,698,1200);Nc(5312,51116,2,22888,108929,53,2);Nc(5312,51142,2,22888,108929,53,3);Nc(5312,51171,2,22888,108929,53,4);Nc(5312,51195,2,22888,108929,53,5);Nc(5312,51223,2,18400,83955,686,1201);Nc(5312,51250,2,18400,83955,686,1202);Nc(5312,51281,2,22888,108929,53,6);Nc(5312,51313,2,22888,108929,53,7);Nc(5312,51345,2,22888,108929,53,8);Nc(5312,51372,2,18400,83955,686,1203);Nc(5312,51401,2,22852,83955,711,1204);Nc(5312,51425,2,22904,83955,719,1205);Nc(5312,51445,2,22912,83955,720,1206);Nc(5312,51460,2,22920,83955,721,1207);Nc(5312,51480,2,18400,83955,686,1208);Nc(5312,51495,1,18396,82488,1168,15);Nc(5312,51512,2,22888,108929,53,9);Nc(5312,51528,2,22888,108929,53,10);Nc(5312,51550,2,22888,108929,53,11);Nc(5312,51567,2,22928,83955,722,1209);Nc(5312,51587,1,18396,82488,1168,16);Nc(5312,51609,2,22212,83955,698,1210);Nc(5312,51628,2,22936,83955,723,1211);Nc(5312,51649,1,18396,82488,1168,17);Nc(5312,51661,5,22944,84910,88,116);Nc(5312,51670,1,18396,82488,1168,18);Nc(5312,51682,3,18956,83125,50,724);Nc(5312,51703,4,22996,84142,117,62);Nc(5312,51716,2,22888,108929,53,12);Nc(5312,51724,1,18396,82488,1168,19);Nc(5312,51737,6,23044,86261,42,89);Nc(5312,51753,3,23068,83125,63,725);Nc(5312,51771,3,23080,82495,16,54);Nc(5312,51786,2,22920,83955,721,1212);Nc(5312,51810,3,23092,109412,1,1);Nc(5312,51823,2,23104,83955,726,1213);Nc(5312,51837,3,18956,83125,50,727);Nc(5312,51850,3,18956,83125,50,728);Nc(5312,51867,3,18956,83125,50,729)}
function yhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Uhb(a,j,i,d,e,g)|0;u=h;return g|0}function zhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Shb(a,j,i,d,e,g)|0;u=h;return g|0}function Ahb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Nhb(a,j,i,d,e,g)|0;u=h;return g|0}function Bhb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;z=u;u=u+240|0;w=z;t=z+204|0;x=z+192|0;y=z+180|0;v=z+176|0;q=z+16|0;r=z+8|0;s=z+4|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[x+(a<<2)>>2]=0;a=a+1|0}_fb(y,e);a=Chb(y,213216)|0;Rg[f[(f[a>>2]|0)+32>>2]&15](a,205326,205352,t)|0;Dhb(y);f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[y+(a<<2)>>2]=0;a=a+1|0}p=y+11|0;o=y+8|0;if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;lqb(y,a,0);a=(b[p>>0]|0)<0?f[y>>2]|0:y;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=y+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){m=0;j=0;k=1}else{e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0))e=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else e=gfb(b[e>>0]|0)|0;if(Zfb(e,ffb()|0)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}i=f[d>>2]|0;do if(!i)A=22;else{e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0))e=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else e=gfb(b[e>>0]|0)|0;if(Zfb(e,ffb()|0)|0){f[d>>2]=0;A=22;break}else if(k)break;else break a}while(0);if((A|0)==22){A=0;if(k){i=0;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){lqb(y,e<<1,0);if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;lqb(y,a,0);a=(b[p>>0]|0)<0?f[y>>2]|0:y;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0))e=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else e=gfb(b[e>>0]|0)|0;if(Ehb(e&255,16,a,v,s,0,x,q,r,t)|0)break;e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){Ng[f[(f[m>>2]|0)+40>>2]&511](m)|0;i=m;continue}else{f[k>>2]=e+1;gfb(b[e>>0]|0)|0;i=m;continue}}lqb(y,(f[v>>2]|0)-a|0,0);t=(b[p>>0]|0)<0?f[y>>2]|0:y;v=Fhb()|0;f[w>>2]=h;if((Ghb(t,v,205359,w)|0)!=1)f[g>>2]=4;if(!m)e=1;else{a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](m)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)A=49;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;A=49;break}else if(e)break;else{A=51;break}}while(0);if((A|0)==49)if(e)A=51;if((A|0)==51)f[g>>2]=f[g>>2]|2;A=f[c>>2]|0;eqb(y);eqb(x);u=z;return A|0}function Chb(a,b){a=a|0;b=b|0;a=f[a>>2]|0;return Ihb(a,Hhb(b)|0)|0}function Dhb(a){a=a|0;Lpb(f[a>>2]|0)|0;return}function Ehb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(b[l+24>>0]|0)==a<<24>>24;if(!m)if((b[l+25>>0]|0)!=a<<24>>24){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if(a<<24>>24==h<<24>>24?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+26|0;h=0;while(1){m=l+h|0;if((h|0)==26){m=i;break}if((b[m>>0]|0)==a<<24>>24)break;else h=h+1|0}m=m-l|0;if((m|0)>23)m=-1;else{switch(c|0){case 10:case 8:{if((m|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[205326+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[205326+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function Fhb(){var a=0;if(!(b[209968]|0))if(rrb(209968)|0){a=seb(2147483647,205362,0)|0;f[53306]=a}return f[53306]|0}function Ghb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=peb(b)|0;b=Vdb(a,c,g)|0;if(d|0)peb(d)|0;u=e;return b|0}function Hhb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+48|0;b=e+32|0;c=e+24|0;d=e;g=e+16|0;f[g>>2]=1296;f[g+4>>2]=0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];Khb(d,b,a);if((f[a>>2]|0)!=-1){f[b>>2]=d;f[c>>2]=b;Vpb(a,c,1297)}u=e;return (f[a+4>>2]|0)+-1|0}function Ihb(a,b){a=a|0;b=b|0;return f[(f[a+8>>2]|0)+(b<<2)>>2]|0}function Jhb(a){a=a|0;var b=0;b=f[53307]|0;f[53307]=b+1;f[a+4>>2]=b+1;return}function Khb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[b>>2]|0;b=f[b+4>>2]|0;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=b;return}function Lhb(a){a=a|0;Mhb(f[f[a>>2]>>2]|0);return}function Mhb(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;d=f[a+8>>2]|0;c=(f[a>>2]|0)+(d>>1)|0;if(!(d&1))a=b;else a=f[(f[c>>2]|0)+b>>2]|0;fh[a&2047](c);return}function Nhb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+240|0;s=D+200|0;t=D+199|0;v=D+198|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+197|0;r=D+196|0;Ohb(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}o=B+11|0;q=B+8|0;if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Phb(a&255,w,r,e,x,b[t>>0]|0,b[v>>0]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Qhb(e,f[x>>2]|0,g);p[h>>3]=F;Rhb(C,y,f[z>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function Ohb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;i=h;_fb(i,c);c=Chb(i,213216)|0;Rg[f[(f[c>>2]|0)+32>>2]&15](c,205326,205358,d)|0;d=Chb(i,213232)|0;c=Ng[f[(f[d>>2]|0)+12>>2]&511](d)|0;b[e>>0]=c;e=Ng[f[(f[d>>2]|0)+16>>2]&511](d)|0;b[g>>0]=e;nh[f[(f[d>>2]|0)+20>>2]&1023](a,d);Dhb(i);u=h;return}function Phb(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0;a:do if(a<<24>>24==h<<24>>24)if(!(b[c>>0]|0))h=-1;else{b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(!((g<<24>>24<0?f[j+4>>2]|0:g&255)|0))h=0;else{h=f[l>>2]|0;if((h-k|0)<160){k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k;h=0}else h=0}}else{if(a<<24>>24==i<<24>>24){o=b[j+11>>0]|0;if((o<<24>>24<0?f[j+4>>2]|0:o&255)|0){if(!(b[c>>0]|0)){h=-1;break}h=f[l>>2]|0;if((h-k|0)>=160){h=0;break}k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k;f[m>>2]=0;h=0;break}}o=n+32|0;i=0;while(1){h=n+i|0;if((i|0)==32){h=o;break}if((b[h>>0]|0)==a<<24>>24)break;else i=i+1|0}i=h-n|0;if((i|0)>31)h=-1;else{o=b[205326+i>>0]|0;switch(i|0){case 24:case 25:{h=f[g>>2]|0;if((h|0)!=(e|0))if((b[h+-1>>0]&95)!=(b[d>>0]&127)){h=-1;break a}f[g>>2]=h+1;b[h>>0]=o;h=0;break a}case 23:case 22:{b[d>>0]=80;h=f[g>>2]|0;f[g>>2]=h+1;b[h>>0]=o;h=0;break a}default:{h=o&95;if((h|0)==(b[d>>0]|0)){b[d>>0]=h|128;if(b[c>>0]|0){b[c>>0]=0;d=b[j+11>>0]|0;if((d<<24>>24<0?f[j+4>>2]|0:d&255)|0){h=f[l>>2]|0;if((h-k|0)<160){k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k}}}}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=o;if((i|0)>21){h=0;break a}f[m>>2]=(f[m>>2]|0)+1;h=0;break a}}}}while(0);return h|0}function Qhb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=Tbb()|0;g=f[g>>2]|0;j=Tbb()|0;f[j>>2]=0;d=+scb(a,e,Fhb()|0);a=Tbb()|0;a=f[a>>2]|0;if(!a){j=Tbb()|0;f[j>>2]=g}if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function Rhb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=a+11|0;h=b[i>>0]|0;j=a+4|0;g=f[j>>2]|0;do if((h<<24>>24<0?g:h&255)|0){if((c|0)!=(d|0)){g=d;h=c;while(1){g=g+-4|0;if(h>>>0>=g>>>0)break;l=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=l;h=h+4|0}h=b[i>>0]|0;g=f[j>>2]|0}j=h<<24>>24<0;l=j?f[a>>2]|0:a;a=d+-4|0;j=l+(j?g:h&255)|0;g=l;while(1){h=b[g>>0]|0;i=h<<24>>24>0&h<<24>>24!=127;if(c>>>0>=a>>>0)break;if(i)if((f[c>>2]|0)!=(h<<24>>24|0)){k=10;break}c=c+4|0;g=(j-g|0)>1?g+1|0:g}if((k|0)==10){f[e>>2]=4;break}if(i)if(((f[a>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0)f[e>>2]=4}while(0);return}function Shb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+240|0;s=D+200|0;t=D+199|0;v=D+198|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+197|0;r=D+196|0;Ohb(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}o=B+11|0;q=B+8|0;if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Phb(a&255,w,r,e,x,b[t>>0]|0,b[v>>0]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Thb(e,f[x>>2]|0,g);p[h>>3]=F;Rhb(C,y,f[z>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function Thb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=Tbb()|0;g=f[g>>2]|0;j=Tbb()|0;f[j>>2]=0;d=+rcb(a,e,Fhb()|0);a=Tbb()|0;a=f[a>>2]|0;if(!a){j=Tbb()|0;f[j>>2]=g}if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function Uhb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+240|0;s=D+200|0;t=D+199|0;v=D+198|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+197|0;r=D+196|0;Ohb(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}p=B+11|0;q=B+8|0;if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[p>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){o=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;o=0;j=0;k=1}else{o=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[p>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[p>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=o+12|0;a=f[k>>2]|0;l=o+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else a=gfb(b[a>>0]|0)|0;if(Phb(a&255,w,r,e,x,b[t>>0]|0,b[v>>0]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;i=o;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=o;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Vhb(e,f[x>>2]|0,g);n[h>>2]=F;Rhb(C,y,f[z>>2]|0,g);if(!o)e=1;else{a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](o)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function Vhb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=Tbb()|0;g=f[g>>2]|0;j=Tbb()|0;f[j>>2]=0;d=+qcb(a,e,Fhb()|0);a=Tbb()|0;a=f[a>>2]|0;if(!a){j=Tbb()|0;f[j>>2]=g}if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function Whb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+224|0;q=A+198|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Yhb(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,x,e,s,w,b[r>>0]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=Zhb(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;f[h+4>>2]=I;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Xhb(a){a=a|0;switch(f[a+4>>2]&74){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function Yhb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=u;u=u+16|0;h=g;_fb(h,c);c=Chb(h,213216)|0;Rg[f[(f[c>>2]|0)+32>>2]&15](c,205326,205352,d)|0;d=Chb(h,213232)|0;c=Ng[f[(f[d>>2]|0)+16>>2]&511](d)|0;b[e>>0]=c;nh[f[(f[d>>2]|0)+20>>2]&1023](a,d);Dhb(h);u=g;return}function Zhb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;do if((a|0)==(c|0)){f[d>>2]=4;e=0;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;e=0;a=0;break}i=Tbb()|0;i=f[i>>2]|0;g=Tbb()|0;f[g>>2]=0;a=Deb(a,h,e,Fhb()|0)|0;e=I;g=Tbb()|0;g=f[g>>2]|0;if(!g){l=Tbb()|0;f[l>>2]=i}if((f[h>>2]|0)==(c|0)){if((g|0)==34){a=-1;e=-1;j=8}}else{a=0;e=0;j=8}if((j|0)==8)f[d>>2]=4}while(0);I=e;u=k;return a|0}function _hb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+224|0;q=A+198|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Yhb(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,x,e,s,w,b[r>>0]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=$hb(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function $hb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=Tbb()|0;i=f[i>>2]|0;g=Tbb()|0;f[g>>2]=0;a=Deb(a,h,e,Fhb()|0)|0;e=I;g=Tbb()|0;g=f[g>>2]|0;if(!g){k=Tbb()|0;f[k>>2]=i}do if((f[h>>2]|0)==(c|0))if(e>>>0>0|(e|0)==0&a>>>0>4294967295|(g|0)==34){f[d>>2]=4;a=-1;break}else break;else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function aib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+224|0;q=A+198|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Yhb(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,x,e,s,w,b[r>>0]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=bib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function bib(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=Tbb()|0;i=f[i>>2]|0;g=Tbb()|0;f[g>>2]=0;a=Deb(a,h,e,Fhb()|0)|0;e=I;g=Tbb()|0;g=f[g>>2]|0;if(!g){k=Tbb()|0;f[k>>2]=i}do if((f[h>>2]|0)==(c|0))if(e>>>0>0|(e|0)==0&a>>>0>4294967295|(g|0)==34){f[d>>2]=4;a=-1;break}else break;else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function cib(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+224|0;r=B+198|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;v=B+8|0;w=B+4|0;x=B;y=Xhb(g)|0;Yhb(z,g,r,s);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}p=A+11|0;q=A+8|0;if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(A,a,0);g=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=g;f[w>>2]=v;f[x>>2]=0;n=A+4|0;k=f[c>>2]|0;j=k;a:while(1){if(!j){o=0;k=0;l=1}else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;o=0;k=0;l=1}else{o=j;l=0}}j=f[e>>2]|0;do if(!j)C=19;else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[e>>2]=0;C=19;break}else if(l)break;else break a}while(0);if((C|0)==19){C=0;if(l){j=0;break}else j=0}l=b[p>>0]|0;l=l<<24>>24<0?f[n>>2]|0:l&255;if((f[t>>2]|0)==(g+l|0)){lqb(A,l<<1,0);if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(A,a,0);g=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=g+l}l=o+12|0;a=f[l>>2]|0;m=o+16|0;if((a|0)==(f[m>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,y,g,t,x,b[s>>0]|0,z,v,w,r)|0)break;a=f[l>>2]|0;if((a|0)==(f[m>>2]|0)){Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;j=o;continue}else{f[l>>2]=a+1;gfb(b[a>>0]|0)|0;j=o;continue}}s=b[z+11>>0]|0;if((s<<24>>24<0?f[z+4>>2]|0:s&255)|0){a=f[w>>2]|0;if((a-v|0)<160){x=f[x>>2]|0;f[w>>2]=a+4;f[a>>2]=x}}y=dib(g,f[t>>2]|0,h,y)|0;d[i>>1]=y;Rhb(z,v,f[w>>2]|0,h);if(!o)g=1;else{a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0))a=Ng[f[(f[k>>2]|0)+36>>2]&511](o)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;g=1}else g=0}do if(!j)C=47;else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[e>>2]=0;C=47;break}else if(g)break;else{C=49;break}}while(0);if((C|0)==47)if(g)C=49;if((C|0)==49)f[h>>2]=f[h>>2]|2;C=f[c>>2]|0;eqb(A);eqb(z);u=B;return C|0}function dib(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=Tbb()|0;i=f[i>>2]|0;g=Tbb()|0;f[g>>2]=0;a=Deb(a,h,e,Fhb()|0)|0;e=I;g=Tbb()|0;g=f[g>>2]|0;if(!g){k=Tbb()|0;f[k>>2]=i}do if((f[h>>2]|0)==(c|0))if(e>>>0>0|(e|0)==0&a>>>0>65535|(g|0)==34){f[d>>2]=4;a=-1;break}else{a=a&65535;break}else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function eib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+224|0;q=A+198|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Yhb(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,x,e,s,w,b[r>>0]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=fib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;f[h+4>>2]=I;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function fib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;d=0;a=0}else{h=Tbb()|0;h=f[h>>2]|0;e=Tbb()|0;f[e>>2]=0;a=Eeb(a,g,d,Fhb()|0)|0;d=I;e=Tbb()|0;e=f[e>>2]|0;if(!e){j=Tbb()|0;f[j>>2]=h}if((f[g>>2]|0)==(b|0)){if((e|0)==34){f[c>>2]=4;d=(d|0)>0|(d|0)==0&a>>>0>0;a=d?-1:0;d=d?2147483647:-2147483648}}else{f[c>>2]=4;a=0;d=0}}I=d;u=i;return a|0}function gib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+224|0;q=A+198|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Yhb(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Ehb(a&255,x,e,s,w,b[r>>0]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+1;gfb(b[a>>0]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=hib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function hib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;a=0}else{h=Tbb()|0;h=f[h>>2]|0;e=Tbb()|0;f[e>>2]=0;a=Eeb(a,g,d,Fhb()|0)|0;d=I;e=Tbb()|0;e=f[e>>2]|0;if(!e){j=Tbb()|0;f[j>>2]=h}a:do if((f[g>>2]|0)==(b|0)){do if((e|0)==34){f[c>>2]=4;if((d|0)>0|(d|0)==0&a>>>0>0){a=2147483647;break a}}else{if((d|0)<-1|(d|0)==-1&a>>>0<2147483648){f[c>>2]=4;break}if((d|0)>0|(d|0)==0&a>>>0>2147483647){f[c>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}else{f[c>>2]=4;a=0}while(0)}u=i;return a|0}function iib(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+112|0;k=x;l=(e-d|0)/12|0;if(l>>>0>100){k=Kbb(l)|0;if(!k)$pb();else{j=k;v=k}}else{j=k;v=0}n=d;o=j;k=0;while(1){if((n|0)==(e|0))break;m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;l=l+-1|0;k=k+1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}t=0;r=k;a:while(1){k=f[a>>2]|0;do if(!k)o=1;else{m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0))k=Ng[f[(f[k>>2]|0)+36>>2]&511](k)|0;else k=gfb(b[m>>0]|0)|0;if(Zfb(k,ffb()|0)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}while(0);m=f[c>>2]|0;if(!m){m=0;k=1}else{k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0))k=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else k=gfb(b[k>>0]|0)|0;if(Zfb(k,ffb()|0)|0){f[c>>2]=0;m=0;k=1}else k=0}n=f[a>>2]|0;if(!((l|0)!=0&(o^k)))break;k=f[n+12>>2]|0;if((k|0)==(f[n+16>>2]|0))k=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else k=gfb(b[k>>0]|0)|0;k=k&255;if(!i)k=Pg[f[(f[g>>2]|0)+12>>2]&255](g,k)|0;s=t+1|0;p=d;o=0;q=j;while(1){if((p|0)==(e|0))break;do if((b[q>>0]|0)==1){n=p+11|0;if((b[n>>0]|0)<0)m=f[p>>2]|0;else m=p;m=b[m+t>>0]|0;if(!i)m=Pg[f[(f[g>>2]|0)+12>>2]&255](g,m)|0;if(k<<24>>24!=m<<24>>24){b[q>>0]=0;m=o;n=r;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){b[q>>0]=2;m=1;n=r+1|0;l=l+-1|0}else{m=1;n=r}}else{m=o;n=r}while(0);p=p+12|0;o=m;q=q+1|0;r=n}if(!o){t=s;continue}k=f[a>>2]|0;m=k+12|0;n=f[m>>2]|0;if((n|0)==(f[k+16>>2]|0))Ng[f[(f[k>>2]|0)+40>>2]&511](k)|0;else{f[m>>2]=n+1;gfb(b[n>>0]|0)|0}if((r+l|0)>>>0>1){n=d;o=j;k=r}else{t=s;continue}while(1){if((n|0)==(e|0)){t=s;r=k;continue a}if((b[o>>0]|0)==2){m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}do if(!n)l=1;else{k=f[n+12>>2]|0;if((k|0)==(f[n+16>>2]|0))k=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else k=gfb(b[k>>0]|0)|0;if(Zfb(k,ffb()|0)|0){f[a>>2]=0;l=1;break}else{l=(f[a>>2]|0)==0;break}}while(0);do if(!m)w=41;else{k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0))k=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else k=gfb(b[k>>0]|0)|0;if(Zfb(k,ffb()|0)|0){f[c>>2]=0;w=41;break}else if(l)break;else{w=77;break}}while(0);if((w|0)==41)if(l)w=77;if((w|0)==77)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){w=81;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((w|0)==81){f[h>>2]=f[h>>2]|4;d=e}Lbb(v);u=x;return d|0}function jib(a){a=a|0;ghb(a);return}function kib(a){a=a|0;ghb(a);Zpb(a);return}function lib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+48|0;i=o+40|0;n=o+16|0;j=o+8|0;k=o+12|0;l=o+4|0;m=o;if(!(f[e+4>>2]&1)){f[j>>2]=-1;m=f[(f[a>>2]|0)+16>>2]|0;f[k>>2]=f[c>>2];f[l>>2]=f[d>>2];f[n>>2]=f[k>>2];f[i>>2]=f[l>>2];n=Xg[m&63](a,n,i,e,g,j)|0;f[c>>2]=n;switch(f[j>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}i=f[c>>2]|0}else{_fb(i,e);l=Chb(i,213248)|0;Dhb(i);_fb(i,e);a=Chb(i,213256)|0;Dhb(i);nh[f[(f[a>>2]|0)+24>>2]&1023](n,a);nh[f[(f[a>>2]|0)+28>>2]&1023](n+12|0,a);f[m>>2]=f[d>>2];a=n+24|0;f[i>>2]=f[m>>2];i=(Jib(c,i,n,a,l,g,1)|0)==(n|0)&1;b[h>>0]=i;i=f[c>>2]|0;do{a=a+-12|0;sqb(a)}while((a|0)!=(n|0))}u=o;return i|0}function mib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Iib(a,j,i,d,e,g)|0;u=h;return g|0}function nib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Hib(a,j,i,d,e,g)|0;u=h;return g|0}function oib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Gib(a,j,i,d,e,g)|0;u=h;return g|0}function pib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Fib(a,j,i,d,e,g)|0;u=h;return g|0}function qib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Eib(a,j,i,d,e,g)|0;u=h;return g|0}function rib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Cib(a,j,i,d,e,g)|0;u=h;return g|0}function sib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Bib(a,j,i,d,e,g)|0;u=h;return g|0}function tib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Aib(a,j,i,d,e,g)|0;u=h;return g|0}function uib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=xib(a,j,i,d,e,g)|0;u=h;return g|0}function vib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;z=u;u=u+320|0;w=z;t=z+208|0;x=z+192|0;y=z+180|0;v=z+176|0;q=z+16|0;r=z+8|0;s=z+4|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[x+(a<<2)>>2]=0;a=a+1|0}_fb(y,e);a=Chb(y,213248)|0;Rg[f[(f[a>>2]|0)+48>>2]&15](a,205326,205352,t)|0;Dhb(y);f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[y+(a<<2)>>2]=0;a=a+1|0}p=y+11|0;o=y+8|0;if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;lqb(y,a,0);a=(b[p>>0]|0)<0?f[y>>2]|0:y;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=y+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){m=0;j=0;k=1}else{e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0))e=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else e=yfb(f[e>>2]|0)|0;if($fb(e,xfb()|0)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}i=f[d>>2]|0;do if(!i)A=22;else{e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0))e=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else e=yfb(f[e>>2]|0)|0;if($fb(e,xfb()|0)|0){f[d>>2]=0;A=22;break}else if(k)break;else break a}while(0);if((A|0)==22){A=0;if(k){i=0;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){lqb(y,e<<1,0);if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;lqb(y,a,0);a=(b[p>>0]|0)<0?f[y>>2]|0:y;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0))e=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else e=yfb(f[e>>2]|0)|0;if(wib(e,16,a,v,s,0,x,q,r,t)|0)break;e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){Ng[f[(f[m>>2]|0)+40>>2]&511](m)|0;i=m;continue}else{f[k>>2]=e+4;yfb(f[e>>2]|0)|0;i=m;continue}}lqb(y,(f[v>>2]|0)-a|0,0);t=(b[p>>0]|0)<0?f[y>>2]|0:y;v=Fhb()|0;f[w>>2]=h;if((Ghb(t,v,205359,w)|0)!=1)f[g>>2]=4;if(!m)e=1;else{a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](m)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)A=49;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;A=49;break}else if(e)break;else{A=51;break}}while(0);if((A|0)==49)if(e)A=51;if((A|0)==51)f[g>>2]=f[g>>2]|2;A=f[c>>2]|0;eqb(y);eqb(x);u=z;return A|0}function wib(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(f[l+96>>2]|0)==(a|0);if(!m)if((f[l+100>>2]|0)!=(a|0)){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if((a|0)==(h|0)?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+104|0;h=0;while(1){m=l+(h<<2)|0;if((h|0)==26){m=i;break}if((f[m>>2]|0)==(a|0))break;else h=h+1|0}m=m-l|0;h=m>>2;if((m|0)>92)m=-1;else{switch(c|0){case 10:case 8:{if((h|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[205326+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[205326+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function xib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+352|0;s=D+208|0;t=D+200|0;v=D+196|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+337|0;r=D+336|0;yib(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}o=B+11|0;q=B+8|0;if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(zib(a,w,r,e,x,f[t>>2]|0,f[v>>2]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Qhb(e,f[x>>2]|0,g);p[h>>3]=F;Rhb(C,y,f[z>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function yib(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=u;u=u+16|0;h=g;_fb(h,b);b=Chb(h,213248)|0;Rg[f[(f[b>>2]|0)+48>>2]&15](b,205326,205358,c)|0;c=Chb(h,213256)|0;b=Ng[f[(f[c>>2]|0)+12>>2]&511](c)|0;f[d>>2]=b;d=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;f[e>>2]=d;nh[f[(f[c>>2]|0)+20>>2]&1023](a,c);Dhb(h);u=g;return}function zib(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0;a:do if((a|0)==(h|0))if(!(b[c>>0]|0))h=-1;else{b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(!((g<<24>>24<0?f[j+4>>2]|0:g&255)|0))h=0;else{h=f[l>>2]|0;if((h-k|0)<160){k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k;h=0}else h=0}}else{if((a|0)==(i|0)){o=b[j+11>>0]|0;if((o<<24>>24<0?f[j+4>>2]|0:o&255)|0){if(!(b[c>>0]|0)){h=-1;break}h=f[l>>2]|0;if((h-k|0)>=160){h=0;break}k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k;f[m>>2]=0;h=0;break}}o=n+128|0;i=0;while(1){h=n+(i<<2)|0;if((i|0)==32){h=o;break}if((f[h>>2]|0)==(a|0))break;else i=i+1|0}i=h-n|0;h=i>>2;if((i|0)>124)h=-1;else{o=b[205326+h>>0]|0;switch(h|0){case 24:case 25:{h=f[g>>2]|0;if((h|0)!=(e|0))if((b[h+-1>>0]&95)!=(b[d>>0]&127)){h=-1;break a}f[g>>2]=h+1;b[h>>0]=o;h=0;break a}case 23:case 22:{b[d>>0]=80;break}default:{h=o&95;if((h|0)==(b[d>>0]|0)){b[d>>0]=h|128;if(b[c>>0]|0){b[c>>0]=0;d=b[j+11>>0]|0;if((d<<24>>24<0?f[j+4>>2]|0:d&255)|0){h=f[l>>2]|0;if((h-k|0)<160){k=f[m>>2]|0;f[l>>2]=h+4;f[h>>2]=k}}}}}}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=o;if((i|0)>84)h=0;else{f[m>>2]=(f[m>>2]|0)+1;h=0}}}while(0);return h|0}function Aib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+352|0;s=D+208|0;t=D+200|0;v=D+196|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+337|0;r=D+336|0;yib(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}o=B+11|0;q=B+8|0;if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[o>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[o>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(zib(a,w,r,e,x,f[t>>2]|0,f[v>>2]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Thb(e,f[x>>2]|0,g);p[h>>3]=F;Rhb(C,y,f[z>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function Bib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;D=u;u=u+352|0;s=D+208|0;t=D+200|0;v=D+196|0;C=D+184|0;B=D+172|0;x=D+168|0;y=D+8|0;z=D+4|0;A=D;w=D+337|0;r=D+336|0;yib(C,e,s,t,v);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}p=B+11|0;q=B+8|0;if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[p>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e;f[z>>2]=y;f[A>>2]=0;b[w>>0]=1;b[r>>0]=69;m=B+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){o=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;o=0;j=0;k=1}else{o=i;k=0}}i=f[d>>2]|0;do if(!i)E=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=19;break}else if(k)break;else break a}while(0);if((E|0)==19){E=0;if(k){i=0;break}else i=0}k=b[p>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[x>>2]|0)==(e+k|0)){lqb(B,k<<1,0);if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(B,a,0);e=(b[p>>0]|0)<0?f[B>>2]|0:B;f[x>>2]=e+k}k=o+12|0;a=f[k>>2]|0;l=o+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else a=yfb(f[a>>2]|0)|0;if(zib(a,w,r,e,x,f[t>>2]|0,f[v>>2]|0,C,y,z,A,s)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;i=o;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=o;continue}}v=b[C+11>>0]|0;if(!((b[w>>0]|0)==0?1:((v<<24>>24<0?f[C+4>>2]|0:v&255)|0)==0)){a=f[z>>2]|0;if((a-y|0)<160){A=f[A>>2]|0;f[z>>2]=a+4;f[a>>2]=A}}F=+Vhb(e,f[x>>2]|0,g);n[h>>2]=F;Rhb(C,y,f[z>>2]|0,g);if(!o)e=1;else{a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](o)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)E=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;E=47;break}else if(e)break;else{E=49;break}}while(0);if((E|0)==47)if(e)E=49;if((E|0)==49)f[g>>2]=f[g>>2]|2;E=f[c>>2]|0;eqb(B);eqb(C);u=D;return E|0}function Cib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+304|0;q=A+200|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Dib(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,x,e,s,w,f[r>>2]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=Zhb(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;f[h+4>>2]=I;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Dib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;_fb(g,b);b=Chb(g,213248)|0;Rg[f[(f[b>>2]|0)+48>>2]&15](b,205326,205352,c)|0;c=Chb(g,213256)|0;b=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;f[d>>2]=b;nh[f[(f[c>>2]|0)+20>>2]&1023](a,c);Dhb(g);u=e;return}function Eib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+304|0;q=A+200|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Dib(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,x,e,s,w,f[r>>2]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=$hb(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Fib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+304|0;q=A+200|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Dib(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,x,e,s,w,f[r>>2]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=bib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Gib(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+304|0;r=B+200|0;s=B+196|0;z=B+184|0;A=B+172|0;t=B+168|0;v=B+8|0;w=B+4|0;x=B;y=Xhb(g)|0;Dib(z,g,r,s);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}p=A+11|0;q=A+8|0;if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(A,a,0);g=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=g;f[w>>2]=v;f[x>>2]=0;n=A+4|0;k=f[c>>2]|0;j=k;a:while(1){if(!j){o=0;k=0;l=1}else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;o=0;k=0;l=1}else{o=j;l=0}}j=f[e>>2]|0;do if(!j)C=19;else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[e>>2]=0;C=19;break}else if(l)break;else break a}while(0);if((C|0)==19){C=0;if(l){j=0;break}else j=0}l=b[p>>0]|0;l=l<<24>>24<0?f[n>>2]|0:l&255;if((f[t>>2]|0)==(g+l|0)){lqb(A,l<<1,0);if((b[p>>0]|0)<0)a=(f[q>>2]&2147483647)+-1|0;else a=10;lqb(A,a,0);g=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=g+l}l=o+12|0;a=f[l>>2]|0;m=o+16|0;if((a|0)==(f[m>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,y,g,t,x,f[s>>2]|0,z,v,w,r)|0)break;a=f[l>>2]|0;if((a|0)==(f[m>>2]|0)){Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;j=o;continue}else{f[l>>2]=a+4;yfb(f[a>>2]|0)|0;j=o;continue}}s=b[z+11>>0]|0;if((s<<24>>24<0?f[z+4>>2]|0:s&255)|0){a=f[w>>2]|0;if((a-v|0)<160){x=f[x>>2]|0;f[w>>2]=a+4;f[a>>2]=x}}y=dib(g,f[t>>2]|0,h,y)|0;d[i>>1]=y;Rhb(z,v,f[w>>2]|0,h);if(!o)g=1;else{a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0))a=Ng[f[(f[k>>2]|0)+36>>2]&511](o)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;g=1}else g=0}do if(!j)C=47;else{a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[e>>2]=0;C=47;break}else if(g)break;else{C=49;break}}while(0);if((C|0)==47)if(g)C=49;if((C|0)==49)f[h>>2]=f[h>>2]|2;C=f[c>>2]|0;eqb(A);eqb(z);u=B;return C|0}function Hib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+304|0;q=A+200|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Dib(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,x,e,s,w,f[r>>2]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=fib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;f[h+4>>2]=I;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Iib(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+304|0;q=A+200|0;r=A+196|0;y=A+184|0;z=A+172|0;s=A+168|0;t=A+8|0;v=A+4|0;w=A;x=Xhb(e)|0;Dib(y,e,q,r);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}o=z+11|0;p=z+8|0;if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e;f[v>>2]=t;f[w>>2]=0;m=z+4|0;j=f[c>>2]|0;i=j;a:while(1){if(!i){n=0;j=0;k=1}else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;n=0;j=0;k=1}else{n=i;k=0}}i=f[d>>2]|0;do if(!i)B=19;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=19;break}else if(k)break;else break a}while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}k=b[o>>0]|0;k=k<<24>>24<0?f[m>>2]|0:k&255;if((f[s>>2]|0)==(e+k|0)){lqb(z,k<<1,0);if((b[o>>0]|0)<0)a=(f[p>>2]&2147483647)+-1|0;else a=10;lqb(z,a,0);e=(b[o>>0]|0)<0?f[z>>2]|0:z;f[s>>2]=e+k}k=n+12|0;a=f[k>>2]|0;l=n+16|0;if((a|0)==(f[l>>2]|0))a=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if(wib(a,x,e,s,w,f[r>>2]|0,y,t,v,q)|0)break;a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){Ng[f[(f[n>>2]|0)+40>>2]&511](n)|0;i=n;continue}else{f[k>>2]=a+4;yfb(f[a>>2]|0)|0;i=n;continue}}r=b[y+11>>0]|0;if((r<<24>>24<0?f[y+4>>2]|0:r&255)|0){a=f[v>>2]|0;if((a-t|0)<160){w=f[w>>2]|0;f[v>>2]=a+4;f[a>>2]=w}}x=hib(e,f[s>>2]|0,g,x)|0;f[h>>2]=x;Rhb(y,t,f[v>>2]|0,g);if(!n)e=1;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;e=1}else e=0}do if(!i)B=47;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;B=47;break}else if(e)break;else{B=49;break}}while(0);if((B|0)==47)if(e)B=49;if((B|0)==49)f[g>>2]=f[g>>2]|2;B=f[c>>2]|0;eqb(z);eqb(y);u=A;return B|0}function Jib(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+112|0;k=x;l=(e-d|0)/12|0;if(l>>>0>100){k=Kbb(l)|0;if(!k)$pb();else{j=k;v=k}}else{j=k;v=0}k=0;n=d;o=j;while(1){if((n|0)==(e|0))break;m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;k=k+1|0;l=l+-1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}t=0;r=k;a:while(1){k=f[a>>2]|0;do if(!k)o=1;else{m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0))k=Ng[f[(f[k>>2]|0)+36>>2]&511](k)|0;else k=yfb(f[m>>2]|0)|0;if($fb(k,xfb()|0)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}while(0);m=f[c>>2]|0;if(!m){m=0;k=1}else{k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0))k=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else k=yfb(f[k>>2]|0)|0;if($fb(k,xfb()|0)|0){f[c>>2]=0;m=0;k=1}else k=0}n=f[a>>2]|0;if(!((l|0)!=0&(o^k)))break;k=f[n+12>>2]|0;if((k|0)==(f[n+16>>2]|0))k=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else k=yfb(f[k>>2]|0)|0;if(!i)k=Pg[f[(f[g>>2]|0)+28>>2]&255](g,k)|0;s=t+1|0;p=d;o=0;q=j;while(1){if((p|0)==(e|0))break;do if((b[q>>0]|0)==1){n=p+8+3|0;if((b[n>>0]|0)<0)m=f[p>>2]|0;else m=p;m=f[m+(t<<2)>>2]|0;if(!i)m=Pg[f[(f[g>>2]|0)+28>>2]&255](g,m)|0;if((k|0)!=(m|0)){b[q>>0]=0;m=o;n=r;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){b[q>>0]=2;m=1;n=r+1|0;l=l+-1|0}else{m=1;n=r}}else{m=o;n=r}while(0);p=p+12|0;o=m;q=q+1|0;r=n}if(!o){t=s;continue}k=f[a>>2]|0;m=k+12|0;n=f[m>>2]|0;if((n|0)==(f[k+16>>2]|0))Ng[f[(f[k>>2]|0)+40>>2]&511](k)|0;else{f[m>>2]=n+4;yfb(f[n>>2]|0)|0}if((r+l|0)>>>0>1){n=d;o=j;k=r}else{t=s;continue}while(1){if((n|0)==(e|0)){t=s;r=k;continue a}if((b[o>>0]|0)==2){m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}do if(!n)l=1;else{k=f[n+12>>2]|0;if((k|0)==(f[n+16>>2]|0))k=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else k=yfb(f[k>>2]|0)|0;if($fb(k,xfb()|0)|0){f[a>>2]=0;l=1;break}else{l=(f[a>>2]|0)==0;break}}while(0);do if(!m)w=41;else{k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0))k=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else k=yfb(f[k>>2]|0)|0;if($fb(k,xfb()|0)|0){f[c>>2]=0;w=41;break}else if(l)break;else{w=77;break}}while(0);if((w|0)==41)if(l)w=77;if((w|0)==77)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){w=81;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((w|0)==81){f[h>>2]=f[h>>2]|4;d=e}Lbb(v);u=x;return d|0}function Kib(a){a=a|0;ghb(a);return}function Lib(a){a=a|0;ghb(a);Zpb(a);return}function Mib(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=Ug[j&31](a,k,d,e,g&1)|0}else{_fb(k,d);a=Chb(k,213232)|0;Dhb(k);d=f[a>>2]|0;if(g)nh[f[d+24>>2]&1023](k,a);else nh[f[d+28>>2]&1023](k,a);i=k+11|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+(h?f[j>>2]|0:a&255)|0))break;a=b[g>>0]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=gfb(a)|0;a=Pg[h&255](d,a)|0}else{f[e>>2]=h+1;b[h>>0]=a;a=gfb(a)|0}if(Zfb(a,ffb()|0)|0)f[c>>2]=0}g=g+1|0;a=b[i>>0]|0;d=f[k>>2]|0}a=f[c>>2]|0;eqb(k)}u=l;return a|0}function Nib(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=u;u=u+64|0;i=a;m=a+52|0;n=a+39|0;h=a+16|0;l=a+12|0;k=a+4|0;j=a+8|0;b[m>>0]=b[205580]|0;b[m+1>>0]=b[205581]|0;b[m+2>>0]=b[205582]|0;b[m+3>>0]=b[205583]|0;b[m+4>>0]=b[205584]|0;b[m+5>>0]=b[205585]|0;Zib(m+1|0,205586,1,f[d+4>>2]|0);o=Fhb()|0;f[i>>2]=g;g=n+(Uib(n,13,o,m,i)|0)|0;m=Vib(n,g,d)|0;_fb(i,d);_ib(n,m,g,h,l,k,i);Dhb(i);f[j>>2]=f[c>>2];c=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=GIa(i,h,c,g,d,e)|0;u=a;return g|0}function Oib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=u;u=u+96|0;i=a+8|0;n=a;m=a+71|0;h=a+28|0;l=a+24|0;k=a+16|0;j=a+20|0;o=n;f[o>>2]=37;f[o+4>>2]=0;Zib(n+1|0,205577,1,f[c+4>>2]|0);o=Fhb()|0;p=i;f[p>>2]=e;f[p+4>>2]=g;e=m+(Uib(m,23,o,n,i)|0)|0;g=Vib(m,e,c)|0;_fb(i,c);_ib(m,g,e,h,l,k,i);Dhb(i);f[j>>2]=f[b>>2];e=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=GIa(i,h,e,g,c,d)|0;u=a;return g|0}function Pib(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=u;u=u+64|0;i=a;m=a+52|0;n=a+40|0;h=a+16|0;l=a+12|0;k=a+4|0;j=a+8|0;b[m>>0]=b[205580]|0;b[m+1>>0]=b[205581]|0;b[m+2>>0]=b[205582]|0;b[m+3>>0]=b[205583]|0;b[m+4>>0]=b[205584]|0;b[m+5>>0]=b[205585]|0;Zib(m+1|0,205586,0,f[d+4>>2]|0);o=Fhb()|0;f[i>>2]=g;g=n+(Uib(n,12,o,m,i)|0)|0;m=Vib(n,g,d)|0;_fb(i,d);_ib(n,m,g,h,l,k,i);Dhb(i);f[j>>2]=f[c>>2];c=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=GIa(i,h,c,g,d,e)|0;u=a;return g|0}function Qib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=u;u=u+96|0;i=a+8|0;n=a;m=a+71|0;h=a+28|0;l=a+24|0;k=a+16|0;j=a+20|0;o=n;f[o>>2]=37;f[o+4>>2]=0;Zib(n+1|0,205577,0,f[c+4>>2]|0);o=Fhb()|0;p=i;f[p>>2]=e;f[p+4>>2]=g;e=m+(Uib(m,23,o,n,i)|0)|0;g=Vib(m,e,c)|0;_fb(i,c);_ib(m,g,e,h,l,k,i);Dhb(i);f[j>>2]=f[b>>2];e=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=GIa(i,h,e,g,c,d)|0;u=a;return g|0}function Rib(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;w=u;u=u+176|0;r=w+72|0;l=w+48|0;k=w+32|0;h=w+24|0;g=w+8|0;j=w;n=w+134|0;m=w+68|0;o=w+76|0;v=w+64|0;s=w+60|0;t=w+56|0;i=j;f[i>>2]=37;f[i+4>>2]=0;i=Wib(j+1|0,217391,f[c+4>>2]|0)|0;f[m>>2]=n;a=Fhb()|0;if(i){f[g>>2]=f[c+8>>2];p[g+8>>3]=e;a=Uib(n,30,a,j,g)|0}else{p[h>>3]=e;a=Uib(n,30,a,j,h)|0}if((a|0)>29){a=Fhb()|0;if(i){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;g=Xib(m,a,j,k)|0}else{p[l>>3]=e;g=Xib(m,a,j,l)|0}a=f[m>>2]|0;if(!a)$pb();else{q=g;z=a;A=a}}else{q=a;z=0;A=f[m>>2]|0}g=A+q|0;h=Vib(A,g,c)|0;if((A|0)==(n|0)){x=o;y=0}else{a=Kbb(q<<1)|0;if(!a)$pb();else{x=a;y=a}}_fb(r,c);Yib(A,h,g,x,v,s,r);Dhb(r);f[t>>2]=f[b>>2];b=f[v>>2]|0;A=f[s>>2]|0;f[r>>2]=f[t>>2];A=GIa(r,x,b,A,c,d)|0;Lbb(y);Lbb(z);u=w;return A|0}function Sib(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;w=u;u=u+176|0;r=w+72|0;l=w+48|0;k=w+32|0;h=w+24|0;g=w+8|0;j=w;n=w+134|0;m=w+68|0;o=w+76|0;v=w+64|0;s=w+60|0;t=w+56|0;i=j;f[i>>2]=37;f[i+4>>2]=0;i=Wib(j+1|0,205575,f[c+4>>2]|0)|0;f[m>>2]=n;a=Fhb()|0;if(i){f[g>>2]=f[c+8>>2];p[g+8>>3]=e;a=Uib(n,30,a,j,g)|0}else{p[h>>3]=e;a=Uib(n,30,a,j,h)|0}if((a|0)>29){a=Fhb()|0;if(i){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;g=Xib(m,a,j,k)|0}else{p[l>>3]=e;g=Xib(m,a,j,l)|0}a=f[m>>2]|0;if(!a)$pb();else{q=g;z=a;A=a}}else{q=a;z=0;A=f[m>>2]|0}g=A+q|0;h=Vib(A,g,c)|0;if((A|0)==(n|0)){x=o;y=0}else{a=Kbb(q<<1)|0;if(!a)$pb();else{x=a;y=a}}_fb(r,c);Yib(A,h,g,x,v,s,r);Dhb(r);f[t>>2]=f[b>>2];b=f[v>>2]|0;A=f[s>>2]|0;f[r>>2]=f[t>>2];A=GIa(r,x,b,A,c,d)|0;Lbb(y);Lbb(z);u=w;return A|0}function Tib(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;a=u;u=u+80|0;l=a;k=a+68|0;h=a+48|0;j=a+8|0;m=a+4|0;b[k>>0]=b[205569]|0;b[k+1>>0]=b[205570]|0;b[k+2>>0]=b[205571]|0;b[k+3>>0]=b[205572]|0;b[k+4>>0]=b[205573]|0;b[k+5>>0]=b[205574]|0;i=Fhb()|0;f[l>>2]=g;g=Uib(h,20,i,k,l)|0;k=h+g|0;i=Vib(h,k,d)|0;_fb(l,d);n=Chb(l,213216)|0;Dhb(l);Rg[f[(f[n>>2]|0)+32>>2]&15](n,h,k,j)|0;g=j+g|0;f[m>>2]=f[c>>2];f[l>>2]=f[m>>2];g=GIa(l,j,(i|0)==(k|0)?g:j+(i-h)|0,g,d,e)|0;u=a;return g|0}function Uib(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=u;u=u+16|0;h=g;f[h>>2]=e;e=peb(c)|0;c=vcb(a,b,d,h)|0;if(e|0)peb(e)|0;u=g;return c|0}function Vib(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;a:do switch((f[d+4>>2]&176)<<24>>24){case 16:{d=b[a>>0]|0;switch(d<<24>>24){case 43:case 45:{a=a+1|0;break a}default:{}}if((c-a|0)>1&d<<24>>24==48){switch(b[a+1>>0]|0){case 88:case 120:break;default:{e=7;break a}}a=a+2|0}else e=7;break}case 32:{a=c;break}default:e=7}while(0);return a|0}function Wib(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(d&2048){b[a>>0]=43;a=a+1|0}if(d&1024){b[a>>0]=35;a=a+1|0}h=d&260;e=(d&16384|0)!=0;f=(h|0)==260;if(f)g=0;else{b[a>>0]=46;b[a+1>>0]=42;g=1;a=a+2|0}while(1){d=b[c>>0]|0;if(!(d<<24>>24))break;b[a>>0]=d;c=c+1|0;a=a+1|0}a:do switch(h&511){case 4:{d=e?70:102;break}case 256:{d=e?69:101;break}default:if(f){d=e?65:97;break a}else{d=e?71:103;break a}}while(0);b[a>>0]=d;return g|0}function Xib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=peb(b)|0;b=xeb(a,c,g)|0;if(d|0)peb(d)|0;u=e;return b|0}function Yib(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+16|0;s=w;t=Chb(i,213216)|0;r=Chb(i,213232)|0;nh[f[(f[r>>2]|0)+20>>2]&1023](s,r);f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{q=Pg[f[(f[t>>2]|0)+28>>2]&255](t,i)|0;j=f[h>>2]|0;f[h>>2]=j+1;b[j>>0]=q;j=a+1|0;break}default:j=a}q=d;a:do if((q-j|0)>1)if((b[j>>0]|0)==48){i=j+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:{i=j;v=10;break a}}o=Pg[f[(f[t>>2]|0)+28>>2]&255](t,48)|0;p=f[h>>2]|0;f[h>>2]=p+1;b[p>>0]=o;j=j+2|0;p=Pg[f[(f[t>>2]|0)+28>>2]&255](t,b[i>>0]|0)|0;i=f[h>>2]|0;f[h>>2]=i+1;b[i>>0]=p;i=j;while(1){if(i>>>0>=d>>>0)break a;p=b[i>>0]|0;if(!(veb(p,Fhb()|0)|0))break a;i=i+1|0}}else{i=j;v=10}else{i=j;v=10}while(0);b:do if((v|0)==10)while(1){v=0;if(i>>>0>=d>>>0)break b;p=b[i>>0]|0;if(!(teb(p,Fhb()|0)|0))break b;i=i+1|0;v=10}while(0);o=s+11|0;n=b[o>>0]|0;p=s+4|0;c:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){Rg[f[(f[t>>2]|0)+32>>2]&15](t,j,i,f[h>>2]|0)|0;f[h>>2]=(f[h>>2]|0)+(i-j);k=t}else{d:do if((j|0)!=(i|0)){k=i;l=j;while(1){k=k+-1|0;if(l>>>0>=k>>>0)break d;n=b[l>>0]|0;b[l>>0]=b[k>>0]|0;b[k>>0]=n;l=l+1|0}}while(0);n=Ng[f[(f[r>>2]|0)+16>>2]&511](r)|0;m=j;l=0;k=0;while(1){if(m>>>0>=i>>>0)break;x=b[((b[o>>0]|0)<0?f[s>>2]|0:s)+k>>0]|0;if(x<<24>>24>0&(l|0)==(x<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+1;b[l>>0]=n;l=b[o>>0]|0;k=k+(k>>>0<((l<<24>>24<0?f[p>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}y=Pg[f[(f[t>>2]|0)+28>>2]&255](t,b[m>>0]|0)|0;x=f[h>>2]|0;f[h>>2]=x+1;b[x>>0]=y;m=m+1|0;l=l+1|0}k=e+(j-a)|0;j=f[h>>2]|0;if((k|0)==(j|0))k=t;else while(1){j=j+-1|0;if(k>>>0>=j>>>0){k=t;break c}y=b[k>>0]|0;b[k>>0]=b[j>>0]|0;b[j>>0]=y;k=k+1|0}}while(0);while(1){if(i>>>0>=d>>>0)break;j=b[i>>0]|0;if(j<<24>>24==46){v=29;break}x=Pg[f[(f[k>>2]|0)+28>>2]&255](t,j)|0;y=f[h>>2]|0;f[h>>2]=y+1;b[y>>0]=x;i=i+1|0}if((v|0)==29){x=Ng[f[(f[r>>2]|0)+12>>2]&511](r)|0;y=f[h>>2]|0;f[h>>2]=y+1;b[y>>0]=x;i=i+1|0}Rg[f[(f[t>>2]|0)+32>>2]&15](t,i,d,f[h>>2]|0)|0;y=(f[h>>2]|0)+(q-i)|0;f[h>>2]=y;f[g>>2]=(c|0)==(d|0)?y:e+(c-a)|0;eqb(s);u=w;return}function Zib(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;if(e&2048){b[a>>0]=43;a=a+1|0}if(!(e&512))f=a;else{b[a>>0]=35;f=a+1|0}while(1){a=b[c>>0]|0;if(!(a<<24>>24))break;b[f>>0]=a;c=c+1|0;f=f+1|0}switch(e&74){case 64:{a=111;break}case 8:{a=e&16384|0?88:120;break}default:a=d?100:117}b[f>>0]=a;return}function _ib(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;p=Chb(i,213216)|0;l=Chb(i,213232)|0;nh[f[(f[l>>2]|0)+20>>2]&1023](q,l);n=q+11|0;m=b[n>>0]|0;o=q+4|0;if(!((m<<24>>24<0?f[o>>2]|0:m&255)|0)){Rg[f[(f[p>>2]|0)+32>>2]&15](p,a,d,e)|0;i=e+(d-a)|0;f[h>>2]=i}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{m=Pg[f[(f[p>>2]|0)+28>>2]&255](p,i)|0;i=f[h>>2]|0;f[h>>2]=i+1;b[i>>0]=m;i=a+1|0;break}default:i=a}a:do if((d-i|0)>1)if((b[i>>0]|0)==48){j=i+1|0;switch(b[j>>0]|0){case 88:case 120:break;default:break a}m=Pg[f[(f[p>>2]|0)+28>>2]&255](p,48)|0;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=m;k=Pg[f[(f[p>>2]|0)+28>>2]&255](p,b[j>>0]|0)|0;m=f[h>>2]|0;f[h>>2]=m+1;b[m>>0]=k;i=i+2|0}while(0);b:do if((i|0)!=(d|0)){j=d;k=i;while(1){j=j+-1|0;if(k>>>0>=j>>>0)break b;m=b[k>>0]|0;b[k>>0]=b[j>>0]|0;b[j>>0]=m;k=k+1|0}}while(0);m=Ng[f[(f[l>>2]|0)+16>>2]&511](l)|0;l=i;j=0;k=0;while(1){if(l>>>0>=d>>>0)break;s=b[((b[n>>0]|0)<0?f[q>>2]|0:q)+j>>0]|0;if(s<<24>>24!=0&(k|0)==(s<<24>>24|0)){k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=m;k=b[n>>0]|0;j=j+(j>>>0<((k<<24>>24<0?f[o>>2]|0:k&255)+-1|0)>>>0&1)|0;k=0}t=Pg[f[(f[p>>2]|0)+28>>2]&255](p,b[l>>0]|0)|0;s=f[h>>2]|0;f[h>>2]=s+1;b[s>>0]=t;l=l+1|0;k=k+1|0}i=e+(i-a)|0;j=f[h>>2]|0;if((i|0)!=(j|0)){while(1){j=j+-1|0;if(i>>>0>=j>>>0)break;t=b[i>>0]|0;b[i>>0]=b[j>>0]|0;b[j>>0]=t;i=i+1|0}i=f[h>>2]|0}}f[g>>2]=(c|0)==(d|0)?i:e+(c-a)|0;eqb(q);u=r;return}function $ib(a){a=a|0;ghb(a);return}function ajb(a){a=a|0;ghb(a);Zpb(a);return}function bjb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=Ug[j&31](a,k,d,e,g&1)|0}else{_fb(k,d);a=Chb(k,213256)|0;Dhb(k);d=f[a>>2]|0;if(g)nh[f[d+24>>2]&1023](k,a);else nh[f[d+28>>2]&1023](k,a);i=k+8+3|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+((h?f[j>>2]|0:a&255)<<2)|0))break;a=f[g>>2]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=yfb(a)|0;a=Pg[h&255](d,a)|0}else{f[e>>2]=h+4;f[h>>2]=a;a=yfb(a)|0}if($fb(a,xfb()|0)|0)f[c>>2]=0}g=g+4|0;a=b[i>>0]|0;d=f[k>>2]|0}a=f[c>>2]|0;sqb(k)}u=l;return a|0}function cjb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=u;u=u+128|0;i=a;m=a+122|0;n=a+108|0;h=a+16|0;l=a+12|0;k=a+4|0;j=a+8|0;b[m>>0]=b[205580]|0;b[m+1>>0]=b[205581]|0;b[m+2>>0]=b[205582]|0;b[m+3>>0]=b[205583]|0;b[m+4>>0]=b[205584]|0;b[m+5>>0]=b[205585]|0;Zib(m+1|0,205586,1,f[d+4>>2]|0);o=Fhb()|0;f[i>>2]=g;g=n+(Uib(n,13,o,m,i)|0)|0;m=Vib(n,g,d)|0;_fb(i,d);mjb(n,m,g,h,l,k,i);Dhb(i);f[j>>2]=f[c>>2];c=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=jjb(i,h,c,g,d,e)|0;u=a;return g|0}function djb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=u;u=u+224|0;i=a+8|0;n=a;m=a+200|0;h=a+28|0;l=a+24|0;k=a+16|0;j=a+20|0;o=n;f[o>>2]=37;f[o+4>>2]=0;Zib(n+1|0,205577,1,f[c+4>>2]|0);o=Fhb()|0;p=i;f[p>>2]=e;f[p+4>>2]=g;e=m+(Uib(m,23,o,n,i)|0)|0;g=Vib(m,e,c)|0;_fb(i,c);mjb(m,g,e,h,l,k,i);Dhb(i);f[j>>2]=f[b>>2];e=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=jjb(i,h,e,g,c,d)|0;u=a;return g|0}function ejb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=u;u=u+128|0;i=a;m=a+112|0;n=a+100|0;h=a+16|0;l=a+12|0;k=a+4|0;j=a+8|0;b[m>>0]=b[205580]|0;b[m+1>>0]=b[205581]|0;b[m+2>>0]=b[205582]|0;b[m+3>>0]=b[205583]|0;b[m+4>>0]=b[205584]|0;b[m+5>>0]=b[205585]|0;Zib(m+1|0,205586,0,f[d+4>>2]|0);o=Fhb()|0;f[i>>2]=g;g=n+(Uib(n,12,o,m,i)|0)|0;m=Vib(n,g,d)|0;_fb(i,d);mjb(n,m,g,h,l,k,i);Dhb(i);f[j>>2]=f[c>>2];c=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=jjb(i,h,c,g,d,e)|0;u=a;return g|0}function fjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=u;u=u+224|0;i=a+8|0;n=a;m=a+200|0;h=a+28|0;l=a+24|0;k=a+16|0;j=a+20|0;o=n;f[o>>2]=37;f[o+4>>2]=0;Zib(n+1|0,205577,0,f[c+4>>2]|0);o=Fhb()|0;p=i;f[p>>2]=e;f[p+4>>2]=g;e=m+(Uib(m,23,o,n,i)|0)|0;g=Vib(m,e,c)|0;_fb(i,c);mjb(m,g,e,h,l,k,i);Dhb(i);f[j>>2]=f[b>>2];e=f[l>>2]|0;g=f[k>>2]|0;f[i>>2]=f[j>>2];g=jjb(i,h,e,g,c,d)|0;u=a;return g|0}function gjb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=u;u=u+336|0;r=y+300|0;l=y+48|0;k=y+32|0;h=y+24|0;g=y+8|0;j=y;n=y+304|0;m=y+296|0;o=y+68|0;v=y+64|0;s=y+60|0;t=y+56|0;i=j;f[i>>2]=37;f[i+4>>2]=0;i=Wib(j+1|0,217391,f[c+4>>2]|0)|0;f[m>>2]=n;a=Fhb()|0;if(i){f[g>>2]=f[c+8>>2];p[g+8>>3]=e;a=Uib(n,30,a,j,g)|0}else{p[h>>3]=e;a=Uib(n,30,a,j,h)|0}if((a|0)>29){a=Fhb()|0;if(i){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;g=Xib(m,a,j,k)|0}else{p[l>>3]=e;g=Xib(m,a,j,l)|0}a=f[m>>2]|0;if(!a)$pb();else{q=g;A=a;x=a}}else{q=a;A=0;x=f[m>>2]|0}g=x+q|0;h=Vib(x,g,c)|0;do if((x|0)==(n|0)){w=o;z=1;B=0}else{a=Kbb(q<<3)|0;if(!a)$pb();else{w=a;z=0;B=a;break}}while(0);_fb(r,c);ljb(x,h,g,w,v,s,r);Dhb(r);f[t>>2]=f[b>>2];x=f[v>>2]|0;a=f[s>>2]|0;f[r>>2]=f[t>>2];a=jjb(r,w,x,a,c,d)|0;f[b>>2]=a;if(!z)Lbb(B);Lbb(A);u=y;return a|0}function hjb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=u;u=u+336|0;r=y+300|0;l=y+48|0;k=y+32|0;h=y+24|0;g=y+8|0;j=y;n=y+304|0;m=y+296|0;o=y+68|0;v=y+64|0;s=y+60|0;t=y+56|0;i=j;f[i>>2]=37;f[i+4>>2]=0;i=Wib(j+1|0,205575,f[c+4>>2]|0)|0;f[m>>2]=n;a=Fhb()|0;if(i){f[g>>2]=f[c+8>>2];p[g+8>>3]=e;a=Uib(n,30,a,j,g)|0}else{p[h>>3]=e;a=Uib(n,30,a,j,h)|0}if((a|0)>29){a=Fhb()|0;if(i){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;g=Xib(m,a,j,k)|0}else{p[l>>3]=e;g=Xib(m,a,j,l)|0}a=f[m>>2]|0;if(!a)$pb();else{q=g;A=a;x=a}}else{q=a;A=0;x=f[m>>2]|0}g=x+q|0;h=Vib(x,g,c)|0;do if((x|0)==(n|0)){w=o;z=1;B=0}else{a=Kbb(q<<3)|0;if(!a)$pb();else{w=a;z=0;B=a;break}}while(0);_fb(r,c);ljb(x,h,g,w,v,s,r);Dhb(r);f[t>>2]=f[b>>2];x=f[v>>2]|0;a=f[s>>2]|0;f[r>>2]=f[t>>2];a=jjb(r,w,x,a,c,d)|0;f[b>>2]=a;if(!z)Lbb(B);Lbb(A);u=y;return a|0}function ijb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;a=u;u=u+192|0;l=a;k=a+176|0;h=a+156|0;j=a+4|0;m=a+152|0;b[k>>0]=b[205569]|0;b[k+1>>0]=b[205570]|0;b[k+2>>0]=b[205571]|0;b[k+3>>0]=b[205572]|0;b[k+4>>0]=b[205573]|0;b[k+5>>0]=b[205574]|0;i=Fhb()|0;f[l>>2]=g;g=Uib(h,20,i,k,l)|0;k=h+g|0;i=Vib(h,k,d)|0;_fb(l,d);n=Chb(l,213248)|0;Dhb(l);Rg[f[(f[n>>2]|0)+48>>2]&15](n,h,k,j)|0;g=j+(g<<2)|0;f[m>>2]=f[c>>2];f[l>>2]=f[m>>2];g=jjb(l,j,(i|0)==(k|0)?g:j+(i-h<<2)|0,g,d,e)|0;u=a;return g|0}function jjb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+16|0;p=r+12|0;q=r;i=f[a>>2]|0;a:do if(!i)i=0;else{s=c;j=e-s>>2;l=g+12|0;k=f[l>>2]|0;j=(k|0)>(j|0)?k-j|0:0;k=d;s=k-s|0;g=s>>2;if((s|0)>0)if((Qg[f[(f[i>>2]|0)+48>>2]&127](i,c,g)|0)!=(g|0)){f[a>>2]=0;i=0;break}do if((j|0)>0){f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;if(j>>>0>1073741807)aqb(q);do if(j>>>0<2){n=q+8+3|0;b[n>>0]=j;m=q;o=q}else{g=j+4&-4;if(g>>>0>1073741823)ud();else{m=Wpb(g<<2)|0;f[q>>2]=m;n=q+8|0;f[n>>2]=g|-2147483648;f[q+4>>2]=j;n=n+3|0;o=q;break}}while(0);kjb(m,j,h)|0;f[p>>2]=0;mhb(m+(j<<2)|0,p);if((Qg[f[(f[i>>2]|0)+48>>2]&127](i,(b[n>>0]|0)<0?f[q>>2]|0:o,j)|0)==(j|0)){sqb(q);break}else{f[a>>2]=0;sqb(q);i=0;break a}}while(0);s=e-k|0;e=s>>2;if((s|0)>0)if((Qg[f[(f[i>>2]|0)+48>>2]&127](i,d,e)|0)!=(e|0)){f[a>>2]=0;i=0;break}f[l>>2]=0}while(0);u=r;return i|0}function kjb(a,b,c){a=a|0;b=b|0;c=c|0;if(b)feb(a,c,b)|0;return a|0}function ljb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+16|0;s=w;t=Chb(i,213248)|0;q=Chb(i,213256)|0;nh[f[(f[q>>2]|0)+20>>2]&1023](s,q);f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{r=Pg[f[(f[t>>2]|0)+44>>2]&255](t,i)|0;i=f[h>>2]|0;f[h>>2]=i+4;f[i>>2]=r;i=a+1|0;break}default:i=a}r=d;a:do if((r-i|0)>1)if((b[i>>0]|0)==48){j=i+1|0;switch(b[j>>0]|0){case 88:case 120:break;default:{j=i;v=10;break a}}o=Pg[f[(f[t>>2]|0)+44>>2]&255](t,48)|0;p=f[h>>2]|0;f[h>>2]=p+4;f[p>>2]=o;i=i+2|0;p=Pg[f[(f[t>>2]|0)+44>>2]&255](t,b[j>>0]|0)|0;j=f[h>>2]|0;f[h>>2]=j+4;f[j>>2]=p;j=i;while(1){if(j>>>0>=d>>>0)break a;p=b[j>>0]|0;if(!(veb(p,Fhb()|0)|0))break a;j=j+1|0}}else{j=i;v=10}else{j=i;v=10}while(0);b:do if((v|0)==10)while(1){v=0;if(j>>>0>=d>>>0)break b;p=b[j>>0]|0;if(!(teb(p,Fhb()|0)|0))break b;j=j+1|0;v=10}while(0);o=s+11|0;n=b[o>>0]|0;p=s+4|0;c:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){Rg[f[(f[t>>2]|0)+48>>2]&15](t,i,j,f[h>>2]|0)|0;i=(f[h>>2]|0)+(j-i<<2)|0;f[h>>2]=i;k=t}else{d:do if((i|0)!=(j|0)){k=j;l=i;while(1){k=k+-1|0;if(l>>>0>=k>>>0)break d;n=b[l>>0]|0;b[l>>0]=b[k>>0]|0;b[k>>0]=n;l=l+1|0}}while(0);n=Ng[f[(f[q>>2]|0)+16>>2]&511](q)|0;m=i;k=0;l=0;while(1){if(m>>>0>=j>>>0)break;x=b[((b[o>>0]|0)<0?f[s>>2]|0:s)+k>>0]|0;if(x<<24>>24>0&(l|0)==(x<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+4;f[l>>2]=n;l=b[o>>0]|0;k=k+(k>>>0<((l<<24>>24<0?f[p>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}y=Pg[f[(f[t>>2]|0)+44>>2]&255](t,b[m>>0]|0)|0;x=f[h>>2]|0;f[h>>2]=x+4;f[x>>2]=y;m=m+1|0;l=l+1|0}i=e+(i-a<<2)|0;l=f[h>>2]|0;if((i|0)==(l|0))k=t;else{k=l;while(1){k=k+-4|0;if(i>>>0>=k>>>0){k=t;i=l;break c}y=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=y;i=i+4|0}}}while(0);while(1){if(j>>>0>=d>>>0)break;i=b[j>>0]|0;if(i<<24>>24==46){v=29;break}x=Pg[f[(f[k>>2]|0)+44>>2]&255](t,i)|0;y=f[h>>2]|0;i=y+4|0;f[h>>2]=i;f[y>>2]=x;j=j+1|0}if((v|0)==29){x=Ng[f[(f[q>>2]|0)+12>>2]&511](q)|0;y=f[h>>2]|0;i=y+4|0;f[h>>2]=i;f[y>>2]=x;j=j+1|0}Rg[f[(f[t>>2]|0)+48>>2]&15](t,j,d,i)|0;y=(f[h>>2]|0)+(r-j<<2)|0;f[h>>2]=y;f[g>>2]=(c|0)==(d|0)?y:e+(c-a<<2)|0;eqb(s);u=w;return}function mjb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;p=Chb(i,213248)|0;l=Chb(i,213256)|0;nh[f[(f[l>>2]|0)+20>>2]&1023](q,l);n=q+11|0;m=b[n>>0]|0;o=q+4|0;if(!((m<<24>>24<0?f[o>>2]|0:m&255)|0)){Rg[f[(f[p>>2]|0)+48>>2]&15](p,a,d,e)|0;i=e+(d-a<<2)|0;f[h>>2]=i}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{m=Pg[f[(f[p>>2]|0)+44>>2]&255](p,i)|0;i=f[h>>2]|0;f[h>>2]=i+4;f[i>>2]=m;i=a+1|0;break}default:i=a}a:do if((d-i|0)>1)if((b[i>>0]|0)==48){j=i+1|0;switch(b[j>>0]|0){case 88:case 120:break;default:break a}m=Pg[f[(f[p>>2]|0)+44>>2]&255](p,48)|0;k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=m;k=Pg[f[(f[p>>2]|0)+44>>2]&255](p,b[j>>0]|0)|0;m=f[h>>2]|0;f[h>>2]=m+4;f[m>>2]=k;i=i+2|0}while(0);b:do if((i|0)!=(d|0)){j=d;k=i;while(1){j=j+-1|0;if(k>>>0>=j>>>0)break b;m=b[k>>0]|0;b[k>>0]=b[j>>0]|0;b[j>>0]=m;k=k+1|0}}while(0);m=Ng[f[(f[l>>2]|0)+16>>2]&511](l)|0;l=i;j=0;k=0;while(1){if(l>>>0>=d>>>0)break;s=b[((b[n>>0]|0)<0?f[q>>2]|0:q)+j>>0]|0;if(s<<24>>24!=0&(k|0)==(s<<24>>24|0)){k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=m;k=b[n>>0]|0;j=j+(j>>>0<((k<<24>>24<0?f[o>>2]|0:k&255)+-1|0)>>>0&1)|0;k=0}t=Pg[f[(f[p>>2]|0)+44>>2]&255](p,b[l>>0]|0)|0;s=f[h>>2]|0;f[h>>2]=s+4;f[s>>2]=t;l=l+1|0;k=k+1|0}i=e+(i-a<<2)|0;j=f[h>>2]|0;if((i|0)!=(j|0)){while(1){j=j+-4|0;if(i>>>0>=j>>>0)break;t=f[i>>2]|0;f[i>>2]=f[j>>2];f[j>>2]=t;i=i+4|0}i=f[h>>2]|0}}f[g>>2]=(c|0)==(d|0)?i:e+(c-a<<2)|0;eqb(q);u=r;return}function njb(a){a=a|0;ghb(a);return}function ojb(a){a=a|0;ghb(a);Zpb(a);return}function pjb(a){a=a|0;return 2}function qjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Ijb(a,j,i,d,e,g,206105,206113)|0;u=h;return g|0}function rjb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=u;u=u+16|0;j=i+12|0;k=i+8|0;m=i+4|0;l=i;n=a+8|0;n=Ng[f[(f[n>>2]|0)+20>>2]&511](n)|0;f[m>>2]=f[c>>2];f[l>>2]=f[d>>2];d=b[n+11>>0]|0;o=d<<24>>24<0;c=o?f[n>>2]|0:n;d=c+(o?f[n+4>>2]|0:d&255)|0;f[k>>2]=f[m>>2];f[j>>2]=f[l>>2];h=Ijb(a,k,j,e,g,h,c,d)|0;u=i;return h|0}function sjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213216)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Gjb(a,g+24|0,b,i,e,d);u=h;return f[b>>2]|0}function tjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213216)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Hjb(a,g+16|0,b,i,e,d);u=h;return f[b>>2]|0}function ujb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213216)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Tjb(a,g+20|0,b,i,e,d);u=h;return f[b>>2]|0}function vjb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;S=u;u=u+144|0;k=S+128|0;j=S+112|0;Q=S+124|0;R=S+120|0;l=S+116|0;m=S+108|0;n=S+104|0;o=S+100|0;p=S+96|0;q=S+92|0;r=S+88|0;s=S+84|0;t=S+80|0;v=S+76|0;w=S+72|0;x=S+68|0;y=S+64|0;z=S+60|0;A=S+56|0;B=S+52|0;C=S+48|0;D=S+44|0;E=S+40|0;F=S+36|0;G=S+32|0;H=S+28|0;I=S+24|0;J=S+20|0;K=S+16|0;L=S+12|0;M=S+8|0;N=S+4|0;O=S;f[g>>2]=0;_fb(k,e);P=Chb(k,213216)|0;Dhb(k);do switch(i<<24>>24|0){case 65:case 97:{f[Q>>2]=f[d>>2];f[k>>2]=f[Q>>2];Gjb(a,h+24|0,c,k,g,P);T=26;break}case 104:case 66:case 98:{f[R>>2]=f[d>>2];f[k>>2]=f[R>>2];Hjb(a,h+16|0,c,k,g,P);T=26;break}case 99:{R=a+8|0;R=Ng[f[(f[R>>2]|0)+12>>2]&511](R)|0;f[l>>2]=f[c>>2];f[m>>2]=f[d>>2];T=b[R+11>>0]|0;d=T<<24>>24<0;i=d?f[R>>2]|0:R;T=i+(d?f[R+4>>2]|0:T&255)|0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];T=Ijb(a,j,k,e,g,h,i,T)|0;f[c>>2]=T;T=26;break}case 101:case 100:{f[n>>2]=f[d>>2];f[k>>2]=f[n>>2];Jjb(a,h+12|0,c,k,g,P);T=26;break}case 68:{f[o>>2]=f[c>>2];f[p>>2]=f[d>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];T=Ijb(a,j,k,e,g,h,206065,206073)|0;f[c>>2]=T;T=26;break}case 70:{f[q>>2]=f[c>>2];f[r>>2]=f[d>>2];f[j>>2]=f[q>>2];f[k>>2]=f[r>>2];T=Ijb(a,j,k,e,g,h,206073,206081)|0;f[c>>2]=T;T=26;break}case 72:{f[s>>2]=f[d>>2];f[k>>2]=f[s>>2];Kjb(a,h+8|0,c,k,g,P);T=26;break}case 73:{f[t>>2]=f[d>>2];f[k>>2]=f[t>>2];Ljb(a,h+8|0,c,k,g,P);T=26;break}case 106:{f[v>>2]=f[d>>2];f[k>>2]=f[v>>2];Mjb(a,h+28|0,c,k,g,P);T=26;break}case 109:{f[w>>2]=f[d>>2];f[k>>2]=f[w>>2];Njb(a,h+16|0,c,k,g,P);T=26;break}case 77:{f[x>>2]=f[d>>2];f[k>>2]=f[x>>2];Ojb(a,h+4|0,c,k,g,P);T=26;break}case 116:case 110:{f[y>>2]=f[d>>2];f[k>>2]=f[y>>2];Pjb(a,c,k,g,P);T=26;break}case 112:{f[z>>2]=f[d>>2];f[k>>2]=f[z>>2];Qjb(a,h+8|0,c,k,g,P);T=26;break}case 114:{f[A>>2]=f[c>>2];f[B>>2]=f[d>>2];f[j>>2]=f[A>>2];f[k>>2]=f[B>>2];T=Ijb(a,j,k,e,g,h,206081,206092)|0;f[c>>2]=T;T=26;break}case 82:{f[C>>2]=f[c>>2];f[D>>2]=f[d>>2];f[j>>2]=f[C>>2];f[k>>2]=f[D>>2];T=Ijb(a,j,k,e,g,h,206092,206097)|0;f[c>>2]=T;T=26;break}case 83:{f[E>>2]=f[d>>2];f[k>>2]=f[E>>2];Rjb(a,h,c,k,g,P);T=26;break}case 84:{f[F>>2]=f[c>>2];f[G>>2]=f[d>>2];f[j>>2]=f[F>>2];f[k>>2]=f[G>>2];T=Ijb(a,j,k,e,g,h,206097,206105)|0;f[c>>2]=T;T=26;break}case 119:{f[H>>2]=f[d>>2];f[k>>2]=f[H>>2];Sjb(a,h+24|0,c,k,g,P);T=26;break}case 120:{i=f[(f[a>>2]|0)+20>>2]|0;f[I>>2]=f[c>>2];f[J>>2]=f[d>>2];f[j>>2]=f[I>>2];f[k>>2]=f[J>>2];j=Xg[i&63](a,j,k,e,g,h)|0;break}case 88:{R=a+8|0;R=Ng[f[(f[R>>2]|0)+24>>2]&511](R)|0;f[K>>2]=f[c>>2];f[L>>2]=f[d>>2];T=b[R+11>>0]|0;d=T<<24>>24<0;i=d?f[R>>2]|0:R;T=i+(d?f[R+4>>2]|0:T&255)|0;f[j>>2]=f[K>>2];f[k>>2]=f[L>>2];T=Ijb(a,j,k,e,g,h,i,T)|0;f[c>>2]=T;T=26;break}case 121:{f[M>>2]=f[d>>2];f[k>>2]=f[M>>2];Tjb(a,h+20|0,c,k,g,P);T=26;break}case 89:{f[N>>2]=f[d>>2];f[k>>2]=f[N>>2];Ujb(a,h+20|0,c,k,g,P);T=26;break}case 37:{f[O>>2]=f[d>>2];f[k>>2]=f[O>>2];Vjb(a,c,k,g,P);T=26;break}default:{f[g>>2]=f[g>>2]|4;T=26}}while(0);if((T|0)==26)j=f[c>>2]|0;u=S;return j|0}function wjb(a){a=a|0;if(!(b[210040]|0))if(rrb(210040)|0){Fjb();f[53522]=213920}return f[53522]|0}function xjb(a){a=a|0;if(!(b[210024]|0))if(rrb(210024)|0){Ejb();f[53479]=213628}return f[53479]|0}function yjb(a){a=a|0;if(!(b[210008]|0))if(rrb(210008)|0){Djb();f[53406]=213336}return f[53406]|0}function zjb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;if(!(b[21e4]|0))if(rrb(21e4)|0){f[53331]=0;f[53332]=0;f[53333]=0;d=Vfb(205823)|0;if(d>>>0>4294967279)aqb(213324);if(d>>>0<11){b[213335]=d;a=213324}else{g=d+16&-16;a=Wpb(g)|0;f[53331]=a;f[53333]=g|-2147483648;f[53332]=d}hfb(a,205823,d)|0;b[c>>0]=0;Wfb(a+d|0,c)}u=e;return 213324}function Ajb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;if(!(b[209992]|0))if(rrb(209992)|0){f[53328]=0;f[53329]=0;f[53330]=0;d=Vfb(205811)|0;if(d>>>0>4294967279)aqb(213312);if(d>>>0<11){b[213323]=d;a=213312}else{g=d+16&-16;a=Wpb(g)|0;f[53328]=a;f[53330]=g|-2147483648;f[53329]=d}hfb(a,205811,d)|0;b[c>>0]=0;Wfb(a+d|0,c)}u=e;return 213312}function Bjb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;if(!(b[209984]|0))if(rrb(209984)|0){f[53325]=0;f[53326]=0;f[53327]=0;d=Vfb(205802)|0;if(d>>>0>4294967279)aqb(213300);if(d>>>0<11){b[213311]=d;a=213300}else{g=d+16&-16;a=Wpb(g)|0;f[53325]=a;f[53327]=g|-2147483648;f[53326]=d}hfb(a,205802,d)|0;b[c>>0]=0;Wfb(a+d|0,c)}u=e;return 213300}function Cjb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;if(!(b[209976]|0))if(rrb(209976)|0){f[53322]=0;f[53323]=0;f[53324]=0;d=Vfb(205793)|0;if(d>>>0>4294967279)aqb(213288);if(d>>>0<11){b[213299]=d;a=213288}else{g=d+16&-16;a=Wpb(g)|0;f[53322]=a;f[53324]=g|-2147483648;f[53323]=d}hfb(a,205793,d)|0;b[c>>0]=0;Wfb(a+d|0,c)}u=e;return 213288}function Djb(){var a=0,c=0;if(!(b[210016]|0))if(rrb(210016)|0){c=213336;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=213624)}kqb(213336,205844)|0;kqb(213348,205847)|0;return}function Ejb(){var a=0,c=0;if(!(b[210032]|0))if(rrb(210032)|0){c=213628;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=213916)}kqb(213628,205850)|0;kqb(213640,205858)|0;kqb(213652,205867)|0;kqb(213664,205873)|0;kqb(213676,205879)|0;kqb(213688,205883)|0;kqb(213700,205888)|0;kqb(213712,205893)|0;kqb(213724,205900)|0;kqb(213736,205910)|0;kqb(213748,205918)|0;kqb(213760,205927)|0;kqb(213772,205936)|0;kqb(213784,205940)|0;kqb(213796,205944)|0;kqb(213808,205948)|0;kqb(213820,205879)|0;kqb(213832,205952)|0;kqb(213844,205956)|0;kqb(213856,205960)|0;kqb(213868,205964)|0;kqb(213880,205968)|0;kqb(213892,205972)|0;kqb(213904,205976)|0;return}function Fjb(){var a=0,c=0;if(!(b[210048]|0))if(rrb(210048)|0){c=213920;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=214088)}kqb(213920,205980)|0;kqb(213932,205987)|0;kqb(213944,205994)|0;kqb(213956,206002)|0;kqb(213968,206012)|0;kqb(213980,206021)|0;kqb(213992,206028)|0;kqb(214004,206037)|0;kqb(214016,206041)|0;kqb(214028,206045)|0;kqb(214040,206049)|0;kqb(214052,206053)|0;kqb(214064,206057)|0;kqb(214076,206061)|0;return}function Gjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;a=a+8|0;a=Ng[f[f[a>>2]>>2]&511](a)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];a=(iib(c,i,a,a+168|0,g,e,0)|0)-a|0;if((a|0)<168)f[b>>2]=((a|0)/12|0|0)%7|0;u=h;return}function Hjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;a=a+8|0;a=Ng[f[(f[a>>2]|0)+4>>2]&511](a)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];a=(iib(c,i,a,a+288|0,g,e,0)|0)-a|0;if((a|0)<288)f[b>>2]=((a|0)/12|0|0)%12|0;u=h;return}function Ijb(a,c,e,g,h,i,j,k){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+16|0;t=A+12|0;s=A+8|0;x=A+4|0;y=A;_fb(t,g);v=Chb(t,213216)|0;Dhb(t);f[h>>2]=0;w=v+8|0;l=0;a:while(1){r=(j|0)!=(k|0);m=l;while(1){l=f[c>>2]|0;if(!(r&(m|0)==0))break a;n=l;if(!l){l=0;p=1;q=n}else{m=f[l+12>>2]|0;if((m|0)==(f[l+16>>2]|0))m=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else m=gfb(b[m>>0]|0)|0;if(Zfb(m,ffb()|0)|0){f[c>>2]=0;l=0;p=1;q=0}else{p=0;q=n}}o=f[e>>2]|0;m=o;do if(!o)z=16;else{n=f[o+12>>2]|0;if((n|0)==(f[o+16>>2]|0))n=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else n=gfb(b[n>>0]|0)|0;if(Zfb(n,ffb()|0)|0){f[e>>2]=0;m=0;z=16;break}else if(p)break;else{z=62;break a}}while(0);if((z|0)==16){z=0;if(p){z=62;break a}else o=0}if((Qg[f[(f[v>>2]|0)+36>>2]&127](v,b[j>>0]|0,0)|0)<<24>>24==37){z=19;break}m=b[j>>0]|0;if(m<<24>>24>-1){n=f[w>>2]|0;if(d[n+(m<<24>>24<<1)>>1]&8192){z=26;break}}n=l+12|0;m=f[n>>2]|0;o=l+16|0;if((m|0)==(f[o>>2]|0))m=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else m=gfb(b[m>>0]|0)|0;q=Pg[f[(f[v>>2]|0)+12>>2]&255](v,m&255)|0;if(q<<24>>24==(Pg[f[(f[v>>2]|0)+12>>2]&255](v,b[j>>0]|0)|0)<<24>>24){z=56;break}f[h>>2]=4;m=4}b:do if((z|0)==19){z=0;p=j+1|0;if((p|0)==(k|0)){z=62;break a}n=Qg[f[(f[v>>2]|0)+36>>2]&127](v,b[p>>0]|0,0)|0;switch(n<<24>>24){case 48:case 69:{j=j+2|0;if((j|0)==(k|0)){z=62;break a}o=n;l=Qg[f[(f[v>>2]|0)+36>>2]&127](v,b[j>>0]|0,0)|0;j=p;break}default:{o=0;l=n}}r=f[(f[a>>2]|0)+36>>2]|0;f[x>>2]=q;f[y>>2]=m;f[s>>2]=f[x>>2];f[t>>2]=f[y>>2];r=Zg[r&15](a,s,t,g,h,i,l,o)|0;f[c>>2]=r;j=j+2|0}else if((z|0)==26){while(1){z=0;j=j+1|0;if((j|0)==(k|0)){j=k;break}m=b[j>>0]|0;if(m<<24>>24<=-1)break;if(!(d[n+(m<<24>>24<<1)>>1]&8192))break;else z=26}m=o;while(1){if(!l){p=1;l=0}else{n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0))n=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else n=gfb(b[n>>0]|0)|0;if(Zfb(n,ffb()|0)|0){f[c>>2]=0;p=1;l=0}else p=0}do if(!o)z=42;else{n=f[o+12>>2]|0;if((n|0)==(f[o+16>>2]|0))n=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else n=gfb(b[n>>0]|0)|0;if(Zfb(n,ffb()|0)|0){f[e>>2]=0;m=0;z=42;break}else if(p^(m|0)==0){q=m;o=m;break}else break b}while(0);if((z|0)==42){z=0;if(p)break b;else{q=m;o=0}}n=l+12|0;m=f[n>>2]|0;p=l+16|0;if((m|0)==(f[p>>2]|0))m=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else m=gfb(b[m>>0]|0)|0;if((m&255)<<24>>24<=-1)break b;if(!(d[(f[w>>2]|0)+(m<<24>>24<<1)>>1]&8192))break b;m=f[n>>2]|0;if((m|0)==(f[p>>2]|0)){Ng[f[(f[l>>2]|0)+40>>2]&511](l)|0;m=q;continue}else{f[n>>2]=m+1;gfb(b[m>>0]|0)|0;m=q;continue}}}else if((z|0)==56){z=0;m=f[n>>2]|0;if((m|0)==(f[o>>2]|0))Ng[f[(f[l>>2]|0)+40>>2]&511](l)|0;else{f[n>>2]=m+1;gfb(b[m>>0]|0)|0}j=j+1|0}while(0);l=f[h>>2]|0}if((z|0)==62)f[h>>2]=4;if(!l){l=0;n=1}else{j=f[l+12>>2]|0;if((j|0)==(f[l+16>>2]|0))j=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else j=gfb(b[j>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[c>>2]=0;l=0;n=1}else n=0}j=f[e>>2]|0;do if(!j)z=75;else{m=f[j+12>>2]|0;if((m|0)==(f[j+16>>2]|0))j=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else j=gfb(b[m>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[e>>2]=0;z=75;break}else if(n)break;else{z=77;break}}while(0);if((z|0)==75)if(n)z=77;if((z|0)==77)f[h>>2]=f[h>>2]|2;u=A;return l|0}function Jjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a+-1|0)>>>0<31&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Kjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<24&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Ljb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a+-1|0)>>>0<12&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Mjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,3)|0;c=f[e>>2]|0;if((a|0)<366&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Njb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<13&(c&4|0)==0)f[b>>2]=a+-1;else f[e>>2]=c|4;u=h;return}function Ojb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<60&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Pjb(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=h+8|0;a:while(1){a=f[c>>2]|0;do if(!a)i=1;else{h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;i=1;break}else{i=(f[c>>2]|0)==0;break}}while(0);h=f[e>>2]|0;do if(!h)k=15;else{a=f[h+12>>2]|0;if((a|0)==(f[h+16>>2]|0))a=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[e>>2]=0;k=15;break}else if(i){i=h;break}else{i=h;break a}}while(0);if((k|0)==15){k=0;if(i){i=0;break}else i=0}a=f[c>>2]|0;h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if((a&255)<<24>>24<=-1)break;if(!(d[(f[j>>2]|0)+(a<<24>>24<<1)>>1]&8192))break;a=f[c>>2]|0;h=a+12|0;i=f[h>>2]|0;if((i|0)==(f[a+16>>2]|0)){Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;continue}else{f[h>>2]=i+1;gfb(b[i>>0]|0)|0;continue}}a=f[c>>2]|0;do if(!a)h=1;else{h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;h=1;break}else{h=(f[c>>2]|0)==0;break}}while(0);do if(!i)k=38;else{a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[e>>2]=0;k=38;break}else if(h)break;else{k=40;break}}while(0);if((k|0)==38)if(h)k=40;if((k|0)==40)f[g>>2]=f[g>>2]|2;return}function Qjb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m+4|0;l=m;j=a+8|0;j=Ng[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+11>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+12+11>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)==(0-a|0))f[g>>2]=f[g>>2]|4;else{f[l>>2]=f[e>>2];f[k>>2]=f[l>>2];a=(iib(d,k,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}while(0);u=m;return}function Rjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<61&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Sjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,1)|0;c=f[e>>2]|0;if((a|0)<7&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Tjb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,4)|0;if(!(f[e>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;f[b>>2]=a+-1900}u=h;return}function Ujb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Wjb(c,a,e,g,4)|0;if(!(f[e>>2]&4))f[b>>2]=a+-1900;u=h;return}function Vjb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;a=f[c>>2]|0;do if(!a)i=1;else{h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;i=1;break}else{i=(f[c>>2]|0)==0;break}}while(0);h=f[d>>2]|0;do if(!h)k=14;else{a=f[h+12>>2]|0;if((a|0)==(f[h+16>>2]|0))a=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;k=14;break}else if(i){j=h;k=16;break}else{a=6;k=38;break}}while(0);if((k|0)==14)if(i){a=6;k=38}else{j=0;k=16}a:do if((k|0)==16){a=f[c>>2]|0;h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if((Qg[f[(f[g>>2]|0)+36>>2]&127](g,a&255,0)|0)<<24>>24==37){a=f[c>>2]|0;h=a+12|0;i=f[h>>2]|0;if((i|0)==(f[a+16>>2]|0))Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;else{f[h>>2]=i+1;gfb(b[i>>0]|0)|0}a=f[c>>2]|0;do if(!a)h=1;else{h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[h>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;h=1;break}else{h=(f[c>>2]|0)==0;break}}while(0);do if(j|0){a=f[j+12>>2]|0;if((a|0)==(f[j+16>>2]|0))a=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;break}else if(h)break a;else{a=2;k=38;break a}}while(0);if(h){a=2;k=38}}else{a=4;k=38}}while(0);if((k|0)==38)f[e>>2]=f[e>>2]|a;return}function Wjb(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;i=f[a>>2]|0;do if(!i)k=1;else{j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))i=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=gfb(b[j>>0]|0)|0;if(Zfb(i,ffb()|0)|0){f[a>>2]=0;k=1;break}else{k=(f[a>>2]|0)==0;break}}while(0);j=f[c>>2]|0;do if(!j)s=14;else{i=f[j+12>>2]|0;if((i|0)==(f[j+16>>2]|0))i=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else i=gfb(b[i>>0]|0)|0;if(Zfb(i,ffb()|0)|0){f[c>>2]=0;s=14;break}else if(k){s=17;break}else{s=16;break}}while(0);if((s|0)==14)if(k)s=16;else{j=0;s=17}a:do if((s|0)==16){f[e>>2]=f[e>>2]|6;i=0}else if((s|0)==17){i=f[a>>2]|0;k=f[i+12>>2]|0;if((k|0)==(f[i+16>>2]|0))i=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=gfb(b[k>>0]|0)|0;k=i&255;if(k<<24>>24>-1){r=g+8|0;if(d[(f[r>>2]|0)+(i<<24>>24<<1)>>1]&2048){i=(Qg[f[(f[g>>2]|0)+36>>2]&127](g,k,0)|0)<<24>>24;k=f[a>>2]|0;l=k+12|0;m=f[l>>2]|0;if((m|0)==(f[k+16>>2]|0)){Ng[f[(f[k>>2]|0)+40>>2]&511](k)|0;n=j;l=j}else{f[l>>2]=m+1;gfb(b[m>>0]|0)|0;n=j;l=j}while(1){i=i+-48|0;q=h+-1|0;j=f[a>>2]|0;do if(!j)m=1;else{k=f[j+12>>2]|0;if((k|0)==(f[j+16>>2]|0))j=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else j=gfb(b[k>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[a>>2]=0;m=1;break}else{m=(f[a>>2]|0)==0;break}}while(0);do if(!l){p=n;j=1;o=0}else{j=f[l+12>>2]|0;if((j|0)==(f[l+16>>2]|0))j=Ng[f[(f[l>>2]|0)+36>>2]&511](l)|0;else j=gfb(b[j>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[c>>2]=0;p=0;j=1;o=0;break}else{p=n;j=(n|0)==0;o=n;break}}while(0);k=f[a>>2]|0;if(!((h|0)>1&(m^j)))break;j=f[k+12>>2]|0;if((j|0)==(f[k+16>>2]|0))j=Ng[f[(f[k>>2]|0)+36>>2]&511](k)|0;else j=gfb(b[j>>0]|0)|0;k=j&255;if(k<<24>>24<=-1)break a;if(!(d[(f[r>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=(i*10|0)+((Qg[f[(f[g>>2]|0)+36>>2]&127](g,k,0)|0)<<24>>24)|0;j=f[a>>2]|0;k=j+12|0;l=f[k>>2]|0;if((l|0)==(f[j+16>>2]|0)){Ng[f[(f[j>>2]|0)+40>>2]&511](j)|0;h=q;n=p;l=o;continue}else{f[k>>2]=l+1;gfb(b[l>>0]|0)|0;h=q;n=p;l=o;continue}}do if(!k)k=1;else{j=f[k+12>>2]|0;if((j|0)==(f[k+16>>2]|0))j=Ng[f[(f[k>>2]|0)+36>>2]&511](k)|0;else j=gfb(b[j>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[a>>2]=0;k=1;break}else{k=(f[a>>2]|0)==0;break}}while(0);do if(!p)s=62;else{j=f[p+12>>2]|0;if((j|0)==(f[p+16>>2]|0))j=Ng[f[(f[p>>2]|0)+36>>2]&511](p)|0;else j=gfb(b[j>>0]|0)|0;if(Zfb(j,ffb()|0)|0){f[c>>2]=0;s=62;break}else if(k)break a;else break}while(0);if((s|0)==62)if(!k)break;f[e>>2]=f[e>>2]|2;break}}f[e>>2]=f[e>>2]|4;i=0}while(0);return i|0}function Xjb(a){a=a|0;ghb(a);return}function Yjb(a){a=a|0;ghb(a);Zpb(a);return}function Zjb(a){a=a|0;return 2}function _jb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=rkb(a,j,i,d,e,g,41348,41380)|0;u=h;return g|0}function $jb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=u;u=u+16|0;j=i+12|0;k=i+8|0;m=i+4|0;l=i;n=a+8|0;n=Ng[f[(f[n>>2]|0)+20>>2]&511](n)|0;f[m>>2]=f[c>>2];f[l>>2]=f[d>>2];d=b[n+8+3>>0]|0;o=d<<24>>24<0;c=o?f[n>>2]|0:n;d=c+((o?f[n+4>>2]|0:d&255)<<2)|0;f[k>>2]=f[m>>2];f[j>>2]=f[l>>2];h=rkb(a,k,j,e,g,h,c,d)|0;u=i;return h|0}function akb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213248)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];pkb(a,g+24|0,b,i,e,d);u=h;return f[b>>2]|0}function bkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213248)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];qkb(a,g+16|0,b,i,e,d);u=h;return f[b>>2]|0}function ckb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;_fb(i,d);d=Chb(i,213248)|0;Dhb(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Ckb(a,g+20|0,b,i,e,d);u=h;return f[b>>2]|0}function dkb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;S=u;u=u+144|0;k=S+128|0;j=S+112|0;Q=S+124|0;R=S+120|0;l=S+116|0;m=S+108|0;n=S+104|0;o=S+100|0;p=S+96|0;q=S+92|0;r=S+88|0;s=S+84|0;t=S+80|0;v=S+76|0;w=S+72|0;x=S+68|0;y=S+64|0;z=S+60|0;A=S+56|0;B=S+52|0;C=S+48|0;D=S+44|0;E=S+40|0;F=S+36|0;G=S+32|0;H=S+28|0;I=S+24|0;J=S+20|0;K=S+16|0;L=S+12|0;M=S+8|0;N=S+4|0;O=S;f[g>>2]=0;_fb(k,e);P=Chb(k,213248)|0;Dhb(k);do switch(i<<24>>24|0){case 65:case 97:{f[Q>>2]=f[d>>2];f[k>>2]=f[Q>>2];pkb(a,h+24|0,c,k,g,P);T=26;break}case 104:case 66:case 98:{f[R>>2]=f[d>>2];f[k>>2]=f[R>>2];qkb(a,h+16|0,c,k,g,P);T=26;break}case 99:{R=a+8|0;R=Ng[f[(f[R>>2]|0)+12>>2]&511](R)|0;f[l>>2]=f[c>>2];f[m>>2]=f[d>>2];T=b[R+8+3>>0]|0;d=T<<24>>24<0;i=d?f[R>>2]|0:R;T=i+((d?f[R+4>>2]|0:T&255)<<2)|0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];T=rkb(a,j,k,e,g,h,i,T)|0;f[c>>2]=T;T=26;break}case 101:case 100:{f[n>>2]=f[d>>2];f[k>>2]=f[n>>2];skb(a,h+12|0,c,k,g,P);T=26;break}case 68:{f[o>>2]=f[c>>2];f[p>>2]=f[d>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];T=rkb(a,j,k,e,g,h,41188,41220)|0;f[c>>2]=T;T=26;break}case 70:{f[q>>2]=f[c>>2];f[r>>2]=f[d>>2];f[j>>2]=f[q>>2];f[k>>2]=f[r>>2];T=rkb(a,j,k,e,g,h,41220,41252)|0;f[c>>2]=T;T=26;break}case 72:{f[s>>2]=f[d>>2];f[k>>2]=f[s>>2];tkb(a,h+8|0,c,k,g,P);T=26;break}case 73:{f[t>>2]=f[d>>2];f[k>>2]=f[t>>2];ukb(a,h+8|0,c,k,g,P);T=26;break}case 106:{f[v>>2]=f[d>>2];f[k>>2]=f[v>>2];vkb(a,h+28|0,c,k,g,P);T=26;break}case 109:{f[w>>2]=f[d>>2];f[k>>2]=f[w>>2];wkb(a,h+16|0,c,k,g,P);T=26;break}case 77:{f[x>>2]=f[d>>2];f[k>>2]=f[x>>2];xkb(a,h+4|0,c,k,g,P);T=26;break}case 116:case 110:{f[y>>2]=f[d>>2];f[k>>2]=f[y>>2];ykb(a,c,k,g,P);T=26;break}case 112:{f[z>>2]=f[d>>2];f[k>>2]=f[z>>2];zkb(a,h+8|0,c,k,g,P);T=26;break}case 114:{f[A>>2]=f[c>>2];f[B>>2]=f[d>>2];f[j>>2]=f[A>>2];f[k>>2]=f[B>>2];T=rkb(a,j,k,e,g,h,41252,41296)|0;f[c>>2]=T;T=26;break}case 82:{f[C>>2]=f[c>>2];f[D>>2]=f[d>>2];f[j>>2]=f[C>>2];f[k>>2]=f[D>>2];T=rkb(a,j,k,e,g,h,41296,41316)|0;f[c>>2]=T;T=26;break}case 83:{f[E>>2]=f[d>>2];f[k>>2]=f[E>>2];Akb(a,h,c,k,g,P);T=26;break}case 84:{f[F>>2]=f[c>>2];f[G>>2]=f[d>>2];f[j>>2]=f[F>>2];f[k>>2]=f[G>>2];T=rkb(a,j,k,e,g,h,41316,41348)|0;f[c>>2]=T;T=26;break}case 119:{f[H>>2]=f[d>>2];f[k>>2]=f[H>>2];Bkb(a,h+24|0,c,k,g,P);T=26;break}case 120:{i=f[(f[a>>2]|0)+20>>2]|0;f[I>>2]=f[c>>2];f[J>>2]=f[d>>2];f[j>>2]=f[I>>2];f[k>>2]=f[J>>2];j=Xg[i&63](a,j,k,e,g,h)|0;break}case 88:{R=a+8|0;R=Ng[f[(f[R>>2]|0)+24>>2]&511](R)|0;f[K>>2]=f[c>>2];f[L>>2]=f[d>>2];T=b[R+8+3>>0]|0;d=T<<24>>24<0;i=d?f[R>>2]|0:R;T=i+((d?f[R+4>>2]|0:T&255)<<2)|0;f[j>>2]=f[K>>2];f[k>>2]=f[L>>2];T=rkb(a,j,k,e,g,h,i,T)|0;f[c>>2]=T;T=26;break}case 121:{f[M>>2]=f[d>>2];f[k>>2]=f[M>>2];Ckb(a,h+20|0,c,k,g,P);T=26;break}case 89:{f[N>>2]=f[d>>2];f[k>>2]=f[N>>2];Dkb(a,h+20|0,c,k,g,P);T=26;break}case 37:{f[O>>2]=f[d>>2];f[k>>2]=f[O>>2];Ekb(a,c,k,g,P);T=26;break}default:{f[g>>2]=f[g>>2]|4;T=26}}while(0);if((T|0)==26)j=f[c>>2]|0;u=S;return j|0}function ekb(a){a=a|0;if(!(b[210120]|0))if(rrb(210120)|0){okb();f[53725]=214732}return f[53725]|0}function fkb(a){a=a|0;if(!(b[210104]|0))if(rrb(210104)|0){nkb();f[53682]=214440}return f[53682]|0}function gkb(a){a=a|0;if(!(b[210088]|0))if(rrb(210088)|0){mkb();f[53609]=214148}return f[53609]|0}function hkb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;a=e;if(!(b[210080]|0))if(rrb(210080)|0){f[53534]=0;f[53535]=0;f[53536]=0;d=lkb(40220)|0;if(d>>>0>1073741807)aqb(214136);do if(d>>>0<2){b[214147]=d;g=214136}else{c=d+4&-4;if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;f[53534]=g;f[53536]=c|-2147483648;f[53535]=d;break}}while(0);zfb(g,40220,d)|0;f[a>>2]=0;mhb(g+(d<<2)|0,a)}u=e;return 214136}function ikb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;a=e;if(!(b[210072]|0))if(rrb(210072)|0){f[53531]=0;f[53532]=0;f[53533]=0;d=lkb(40172)|0;if(d>>>0>1073741807)aqb(214124);do if(d>>>0<2){b[214135]=d;g=214124}else{c=d+4&-4;if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;f[53531]=g;f[53533]=c|-2147483648;f[53532]=d;break}}while(0);zfb(g,40172,d)|0;f[a>>2]=0;mhb(g+(d<<2)|0,a)}u=e;return 214124}function jkb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;a=e;if(!(b[210064]|0))if(rrb(210064)|0){f[53528]=0;f[53529]=0;f[53530]=0;d=lkb(40136)|0;if(d>>>0>1073741807)aqb(214112);do if(d>>>0<2){b[214123]=d;g=214112}else{c=d+4&-4;if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;f[53528]=g;f[53530]=c|-2147483648;f[53529]=d;break}}while(0);zfb(g,40136,d)|0;f[a>>2]=0;mhb(g+(d<<2)|0,a)}u=e;return 214112}function kkb(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;a=e;if(!(b[210056]|0))if(rrb(210056)|0){f[53525]=0;f[53526]=0;f[53527]=0;d=lkb(40100)|0;if(d>>>0>1073741807)aqb(214100);do if(d>>>0<2){b[214111]=d;g=214100}else{c=d+4&-4;if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;f[53525]=g;f[53527]=c|-2147483648;f[53526]=d;break}}while(0);zfb(g,40100,d)|0;f[a>>2]=0;mhb(g+(d<<2)|0,a)}u=e;return 214100}function lkb(a){a=a|0;return $cb(a)|0}function mkb(){var a=0,c=0;if(!(b[210096]|0))if(rrb(210096)|0){c=214148;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=214436)}xqb(214148,40304)|0;xqb(214160,40316)|0;return}function nkb(){var a=0,c=0;if(!(b[210112]|0))if(rrb(210112)|0){c=214440;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=214728)}xqb(214440,40328)|0;xqb(214452,40360)|0;xqb(214464,40396)|0;xqb(214476,40420)|0;xqb(214488,40444)|0;xqb(214500,40460)|0;xqb(214512,40480)|0;xqb(214524,40500)|0;xqb(214536,40528)|0;xqb(214548,40568)|0;xqb(214560,40600)|0;xqb(214572,40636)|0;xqb(214584,40672)|0;xqb(214596,40688)|0;xqb(214608,40704)|0;xqb(214620,40720)|0;xqb(214632,40444)|0;xqb(214644,40736)|0;xqb(214656,40752)|0;xqb(214668,40768)|0;xqb(214680,40784)|0;xqb(214692,40800)|0;xqb(214704,40816)|0;xqb(214716,40832)|0;return}function okb(){var a=0,c=0;if(!(b[210128]|0))if(rrb(210128)|0){c=214732;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=214900)}xqb(214732,40848)|0;xqb(214744,40876)|0;xqb(214756,40904)|0;xqb(214768,40936)|0;xqb(214780,40976)|0;xqb(214792,41012)|0;xqb(214804,41040)|0;xqb(214816,41076)|0;xqb(214828,41092)|0;xqb(214840,41108)|0;xqb(214852,41124)|0;xqb(214864,41140)|0;xqb(214876,41156)|0;xqb(214888,41172)|0;return}function pkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;a=a+8|0;a=Ng[f[f[a>>2]>>2]&511](a)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];a=(Jib(c,i,a,a+168|0,g,e,0)|0)-a|0;if((a|0)<168)f[b>>2]=((a|0)/12|0|0)%7|0;u=h;return}function qkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;a=a+8|0;a=Ng[f[(f[a>>2]|0)+4>>2]&511](a)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];a=(Jib(c,i,a,a+288|0,g,e,0)|0)-a|0;if((a|0)<288)f[b>>2]=((a|0)/12|0|0)%12|0;u=h;return}function rkb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;r=x+12|0;q=x+8|0;t=x+4|0;v=x;_fb(r,d);s=Chb(r,213248)|0;Dhb(r);f[e>>2]=0;j=0;a:while(1){p=(h|0)!=(i|0);k=j;while(1){j=f[b>>2]|0;if(!(p&(k|0)==0))break a;l=j;if(!j){j=0;n=1;o=l}else{k=f[j+12>>2]|0;if((k|0)==(f[j+16>>2]|0))k=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else k=yfb(f[k>>2]|0)|0;if($fb(k,xfb()|0)|0){f[b>>2]=0;j=0;n=1;o=0}else{n=0;o=l}}m=f[c>>2]|0;k=m;do if(!m)w=16;else{l=f[m+12>>2]|0;if((l|0)==(f[m+16>>2]|0))l=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else l=yfb(f[l>>2]|0)|0;if($fb(l,xfb()|0)|0){f[c>>2]=0;k=0;w=16;break}else if(n)break;else{w=59;break a}}while(0);if((w|0)==16){w=0;if(n){w=59;break a}else m=0}if((Qg[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0)<<24>>24==37){w=19;break}if(Qg[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0){w=25;break}l=j+12|0;k=f[l>>2]|0;m=j+16|0;if((k|0)==(f[m>>2]|0))k=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else k=yfb(f[k>>2]|0)|0;o=Pg[f[(f[s>>2]|0)+28>>2]&255](s,k)|0;if((o|0)==(Pg[f[(f[s>>2]|0)+28>>2]&255](s,f[h>>2]|0)|0)){w=53;break}f[e>>2]=4;k=4}b:do if((w|0)==19){w=0;n=h+4|0;if((n|0)==(i|0)){w=59;break a}l=Qg[f[(f[s>>2]|0)+52>>2]&127](s,f[n>>2]|0,0)|0;switch(l<<24>>24){case 48:case 69:{h=h+8|0;if((h|0)==(i|0)){w=59;break a}m=l;j=Qg[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0;h=n;break}default:{m=0;j=l}}p=f[(f[a>>2]|0)+36>>2]|0;f[t>>2]=o;f[v>>2]=k;f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];p=Zg[p&15](a,q,r,d,e,g,j,m)|0;f[b>>2]=p;h=h+8|0}else if((w|0)==25){while(1){w=0;h=h+4|0;if((h|0)==(i|0)){h=i;break}if(Qg[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0)w=25;else break}k=m;n=m;while(1){if(!j){m=1;j=0}else{l=f[j+12>>2]|0;if((l|0)==(f[j+16>>2]|0))l=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else l=yfb(f[l>>2]|0)|0;if($fb(l,xfb()|0)|0){f[b>>2]=0;m=1;j=0}else m=0}do if(!n)w=40;else{l=f[n+12>>2]|0;if((l|0)==(f[n+16>>2]|0))l=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else l=yfb(f[l>>2]|0)|0;if($fb(l,xfb()|0)|0){f[c>>2]=0;k=0;w=40;break}else if(m^(k|0)==0){o=k;n=k;break}else break b}while(0);if((w|0)==40){w=0;if(m)break b;else{o=k;n=0}}l=j+12|0;k=f[l>>2]|0;m=j+16|0;if((k|0)==(f[m>>2]|0))k=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else k=yfb(f[k>>2]|0)|0;if(!(Qg[f[(f[s>>2]|0)+12>>2]&127](s,8192,k)|0))break b;k=f[l>>2]|0;if((k|0)==(f[m>>2]|0)){Ng[f[(f[j>>2]|0)+40>>2]&511](j)|0;k=o;continue}else{f[l>>2]=k+4;yfb(f[k>>2]|0)|0;k=o;continue}}}else if((w|0)==53){w=0;k=f[l>>2]|0;if((k|0)==(f[m>>2]|0))Ng[f[(f[j>>2]|0)+40>>2]&511](j)|0;else{f[l>>2]=k+4;yfb(f[k>>2]|0)|0}h=h+4|0}while(0);j=f[e>>2]|0}if((w|0)==59)f[e>>2]=4;if(!j){j=0;l=1}else{h=f[j+12>>2]|0;if((h|0)==(f[j+16>>2]|0))h=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else h=yfb(f[h>>2]|0)|0;if($fb(h,xfb()|0)|0){f[b>>2]=0;j=0;l=1}else l=0}h=f[c>>2]|0;do if(!h)w=72;else{k=f[h+12>>2]|0;if((k|0)==(f[h+16>>2]|0))h=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else h=yfb(f[k>>2]|0)|0;if($fb(h,xfb()|0)|0){f[c>>2]=0;w=72;break}else if(l)break;else{w=74;break}}while(0);if((w|0)==72)if(l)w=74;if((w|0)==74)f[e>>2]=f[e>>2]|2;u=x;return j|0}function skb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a+-1|0)>>>0<31&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function tkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<24&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function ukb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a+-1|0)>>>0<12&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function vkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,3)|0;c=f[e>>2]|0;if((a|0)<366&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function wkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<13&(c&4|0)==0)f[b>>2]=a+-1;else f[e>>2]=c|4;u=h;return}function xkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<60&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function ykb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a:while(1){a=f[b>>2]|0;do if(!a)h=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if($fb(a,xfb()|0)|0){f[b>>2]=0;h=1;break}else{h=(f[b>>2]|0)==0;break}}while(0);g=f[c>>2]|0;do if(!g)i=15;else{a=f[g+12>>2]|0;if((a|0)==(f[g+16>>2]|0))a=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;i=15;break}else if(h){h=g;break}else{h=g;break a}}while(0);if((i|0)==15){i=0;if(h){h=0;break}else h=0}a=f[b>>2]|0;g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if(!(Qg[f[(f[e>>2]|0)+12>>2]&127](e,8192,a)|0))break;a=f[b>>2]|0;g=a+12|0;h=f[g>>2]|0;if((h|0)==(f[a+16>>2]|0)){Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;continue}else{f[g>>2]=h+4;yfb(f[h>>2]|0)|0;continue}}a=f[b>>2]|0;do if(!a)g=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if($fb(a,xfb()|0)|0){f[b>>2]=0;g=1;break}else{g=(f[b>>2]|0)==0;break}}while(0);do if(!h)i=37;else{a=f[h+12>>2]|0;if((a|0)==(f[h+16>>2]|0))a=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;i=37;break}else if(g)break;else{i=39;break}}while(0);if((i|0)==37)if(g)i=39;if((i|0)==39)f[d>>2]=f[d>>2]|2;return}function zkb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m+4|0;l=m;j=a+8|0;j=Ng[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+8+3>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+20+3>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)==(0-a|0))f[g>>2]=f[g>>2]|4;else{f[l>>2]=f[e>>2];f[k>>2]=f[l>>2];a=(Jib(d,k,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}while(0);u=m;return}function Akb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,2)|0;c=f[e>>2]|0;if((a|0)<61&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Bkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,1)|0;c=f[e>>2]|0;if((a|0)<7&(c&4|0)==0)f[b>>2]=a;else f[e>>2]=c|4;u=h;return}function Ckb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,4)|0;if(!(f[e>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;f[b>>2]=a+-1900}u=h;return}function Dkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;a=h+4|0;i=h;f[i>>2]=f[d>>2];f[a>>2]=f[i>>2];a=Fkb(c,a,e,g,4)|0;if(!(f[e>>2]&4))f[b>>2]=a+-1900;u=h;return}function Ekb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;a=f[b>>2]|0;do if(!a)h=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if($fb(a,xfb()|0)|0){f[b>>2]=0;h=1;break}else{h=(f[b>>2]|0)==0;break}}while(0);g=f[c>>2]|0;do if(!g)j=14;else{a=f[g+12>>2]|0;if((a|0)==(f[g+16>>2]|0))a=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;j=14;break}else if(h){i=g;j=16;break}else{a=6;j=38;break}}while(0);if((j|0)==14)if(h){a=6;j=38}else{i=0;j=16}a:do if((j|0)==16){a=f[b>>2]|0;g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if((Qg[f[(f[e>>2]|0)+52>>2]&127](e,a,0)|0)<<24>>24==37){a=f[b>>2]|0;g=a+12|0;h=f[g>>2]|0;if((h|0)==(f[a+16>>2]|0))Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;else{f[g>>2]=h+4;yfb(f[h>>2]|0)|0}a=f[b>>2]|0;do if(!a)g=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if($fb(a,xfb()|0)|0){f[b>>2]=0;g=1;break}else{g=(f[b>>2]|0)==0;break}}while(0);do if(i|0){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))a=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;break}else if(g)break a;else{a=2;j=38;break a}}while(0);if(g){a=2;j=38}}else{a=4;j=38}}while(0);if((j|0)==38)f[d>>2]=f[d>>2]|a;return}function Fkb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=f[a>>2]|0;do if(!g)i=1;else{h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=yfb(f[h>>2]|0)|0;if($fb(g,xfb()|0)|0){f[a>>2]=0;i=1;break}else{i=(f[a>>2]|0)==0;break}}while(0);h=f[b>>2]|0;do if(!h)p=14;else{g=f[h+12>>2]|0;if((g|0)==(f[h+16>>2]|0))g=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else g=yfb(f[g>>2]|0)|0;if($fb(g,xfb()|0)|0){f[b>>2]=0;p=14;break}else if(i){p=17;break}else{p=16;break}}while(0);if((p|0)==14)if(i)p=16;else{h=0;p=17}a:do if((p|0)==16){f[c>>2]=f[c>>2]|6;g=0}else if((p|0)==17){g=f[a>>2]|0;i=f[g+12>>2]|0;if((i|0)==(f[g+16>>2]|0))g=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=yfb(f[i>>2]|0)|0;if(!(Qg[f[(f[d>>2]|0)+12>>2]&127](d,2048,g)|0)){f[c>>2]=f[c>>2]|4;g=0;break}g=(Qg[f[(f[d>>2]|0)+52>>2]&127](d,g,0)|0)<<24>>24;i=f[a>>2]|0;j=i+12|0;k=f[j>>2]|0;if((k|0)==(f[i+16>>2]|0)){Ng[f[(f[i>>2]|0)+40>>2]&511](i)|0;l=h;j=h}else{f[j>>2]=k+4;yfb(f[k>>2]|0)|0;l=h;j=h}while(1){g=g+-48|0;o=e+-1|0;h=f[a>>2]|0;do if(!h)k=1;else{i=f[h+12>>2]|0;if((i|0)==(f[h+16>>2]|0))h=Ng[f[(f[h>>2]|0)+36>>2]&511](h)|0;else h=yfb(f[i>>2]|0)|0;if($fb(h,xfb()|0)|0){f[a>>2]=0;k=1;break}else{k=(f[a>>2]|0)==0;break}}while(0);do if(!j){n=l;h=1;m=0}else{h=f[j+12>>2]|0;if((h|0)==(f[j+16>>2]|0))h=Ng[f[(f[j>>2]|0)+36>>2]&511](j)|0;else h=yfb(f[h>>2]|0)|0;if($fb(h,xfb()|0)|0){f[b>>2]=0;n=0;h=1;m=0;break}else{n=l;h=(l|0)==0;m=l;break}}while(0);i=f[a>>2]|0;if(!((e|0)>1&(k^h)))break;h=f[i+12>>2]|0;if((h|0)==(f[i+16>>2]|0))h=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else h=yfb(f[h>>2]|0)|0;if(!(Qg[f[(f[d>>2]|0)+12>>2]&127](d,2048,h)|0))break a;g=(g*10|0)+((Qg[f[(f[d>>2]|0)+52>>2]&127](d,h,0)|0)<<24>>24)|0;h=f[a>>2]|0;i=h+12|0;j=f[i>>2]|0;if((j|0)==(f[h+16>>2]|0)){Ng[f[(f[h>>2]|0)+40>>2]&511](h)|0;e=o;l=n;j=m;continue}else{f[i>>2]=j+4;yfb(f[j>>2]|0)|0;e=o;l=n;j=m;continue}}do if(!i)i=1;else{h=f[i+12>>2]|0;if((h|0)==(f[i+16>>2]|0))h=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else h=yfb(f[h>>2]|0)|0;if($fb(h,xfb()|0)|0){f[a>>2]=0;i=1;break}else{i=(f[a>>2]|0)==0;break}}while(0);do if(!n)p=60;else{h=f[n+12>>2]|0;if((h|0)==(f[n+16>>2]|0))h=Ng[f[(f[n>>2]|0)+36>>2]&511](n)|0;else h=yfb(f[h>>2]|0)|0;if($fb(h,xfb()|0)|0){f[b>>2]=0;p=60;break}else if(i)break a;else break}while(0);if((p|0)==60)if(!i)break;f[c>>2]=f[c>>2]|2}while(0);return g|0}function Gkb(a){a=a|0;Lkb(a+8|0);ghb(a);return}function Hkb(a){a=a|0;Lkb(a+8|0);ghb(a);Zpb(a);return}function Ikb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;j=u;u=u+112|0;d=j+4|0;e=j;f[e>>2]=d+100;Jkb(a+8|0,d,e,g,h,i);i=f[e>>2]|0;h=d;d=f[c>>2]|0;while(1){if((h|0)==(i|0))break;e=b[h>>0]|0;if(!d)d=0;else{a=d+24|0;g=f[a>>2]|0;if((g|0)==(f[d+28>>2]|0)){c=f[(f[d>>2]|0)+52>>2]|0;e=gfb(e)|0;e=Pg[c&255](d,e)|0}else{f[a>>2]=g+1;b[g>>0]=e;e=gfb(e)|0}c=Zfb(e,ffb()|0)|0;d=c?0:d}h=h+1|0}u=j;return d|0}function Jkb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+16|0;i=l;b[i>>0]=37;j=i+1|0;b[j>>0]=g;k=i+2|0;b[k>>0]=h;b[i+3>>0]=0;if(h<<24>>24){b[j>>0]=h;b[k>>0]=g}k=Kkb(c,f[d>>2]|0)|0;k=c+(Ff(c|0,k|0,i|0,e|0,f[a>>2]|0)|0)|0;f[d>>2]=k;u=l;return}function Kkb(a,b){a=a|0;b=b|0;return b-a|0}function Lkb(a){a=a|0;var b=0;b=f[a>>2]|0;if((b|0)!=(Fhb()|0))web(f[a>>2]|0);return}function Mkb(a){a=a|0;Lkb(a+8|0);ghb(a);return}function Nkb(a){a=a|0;Lkb(a+8|0);ghb(a);Zpb(a);return}function Okb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;i=u;u=u+416|0;c=i+8|0;d=i;f[d>>2]=c+400;Pkb(a+8|0,c,d,e,g,h);h=f[d>>2]|0;g=c;c=f[b>>2]|0;while(1){if((g|0)==(h|0))break;d=f[g>>2]|0;if(!c)c=0;else{a=c+24|0;e=f[a>>2]|0;if((e|0)==(f[c+28>>2]|0)){b=f[(f[c>>2]|0)+52>>2]|0;d=yfb(d)|0;d=Pg[b&255](c,d)|0}else{f[a>>2]=e+4;f[e>>2]=d;d=yfb(d)|0}b=$fb(d,xfb()|0)|0;c=b?0:c}g=g+4|0}u=i;return c|0}function Pkb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+128|0;k=h+16|0;l=h+12|0;i=h;j=h+8|0;f[l>>2]=k+100;Jkb(a,k,l,d,e,g);d=i;f[d>>2]=0;f[d+4>>2]=0;f[j>>2]=k;d=Qkb(b,f[c>>2]|0)|0;a=peb(f[a>>2]|0)|0;d=jdb(b,j,d,i)|0;if(a|0)peb(a)|0;if((d|0)==-1)Rkb(0);else{f[c>>2]=b+(d<<2);u=h;return}}function Qkb(a,b){a=a|0;b=b|0;return b-a>>2|0}function Rkb(a){a=a|0;ud()}function Skb(a){a=a|0;ghb(a);return}function Tkb(a){a=a|0;ghb(a);Zpb(a);return}function Ukb(a){a=a|0;return 127}function Vkb(a){a=a|0;return 127}function Wkb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Xkb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Ykb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Zkb(a,c){a=a|0;c=c|0;var d=0;c=u;u=u+16|0;d=c;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+11>>0]=1;blb(a,1,45)|0;b[d>>0]=0;Wfb(a+1|0,d);u=c;return}function _kb(a){a=a|0;return 0}function $kb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function alb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function blb(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)Krb(a|0,(gfb(c)|0)&255|0,b|0)|0;return a|0}function clb(a){a=a|0;ghb(a);return}function dlb(a){a=a|0;ghb(a);Zpb(a);return}function elb(a){a=a|0;return 127}function flb(a){a=a|0;return 127}function glb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function hlb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function ilb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function jlb(a,c){a=a|0;c=c|0;var d=0;c=u;u=u+16|0;d=c;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+11>>0]=1;blb(a,1,45)|0;b[d>>0]=0;Wfb(a+1|0,d);u=c;return}function klb(a){a=a|0;return 0}function llb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function mlb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function nlb(a){a=a|0;ghb(a);return}function olb(a){a=a|0;ghb(a);Zpb(a);return}function plb(a){a=a|0;return 2147483647}function qlb(a){a=a|0;return 2147483647}function rlb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function slb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function tlb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function ulb(a,c){a=a|0;c=c|0;var d=0;c=u;u=u+16|0;d=c;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+8+3>>0]=1;kjb(a,1,45)|0;f[d>>2]=0;mhb(a+4|0,d);u=c;return}function vlb(a){a=a|0;return 0}function wlb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function xlb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function ylb(a){a=a|0;ghb(a);return}function zlb(a){a=a|0;ghb(a);Zpb(a);return}function Alb(a){a=a|0;return 2147483647}function Blb(a){a=a|0;return 2147483647}function Clb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Dlb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Elb(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Flb(a,c){a=a|0;c=c|0;var d=0;c=u;u=u+16|0;d=c;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+8+3>>0]=1;kjb(a,1,45)|0;f[d>>2]=0;mhb(a+4|0,d);u=c;return}function Glb(a){a=a|0;return 0}function Hlb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function Ilb(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function Jlb(a){a=a|0;ghb(a);return}function Klb(a){a=a|0;ghb(a);Zpb(a);return}function Llb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+240|0;n=x+24|0;q=x;m=x+140|0;w=x+16|0;p=x+12|0;s=x+8|0;j=x+136|0;y=x+4|0;o=x+36|0;f[w>>2]=m;v=w+4|0;f[v>>2]=1298;_fb(s,g);a=Chb(s,213216)|0;b[j>>0]=0;f[y>>2]=f[d>>2];l=f[g+4>>2]|0;f[n>>2]=f[y>>2];if(Olb(c,n,e,s,l,h,j,a,w,p,m+100|0)|0){Rg[f[(f[a>>2]|0)+32>>2]&15](a,206630,206640,n)|0;l=f[p>>2]|0;e=f[w>>2]|0;a=l-e|0;if((a|0)>98){a=Kbb(a+2|0)|0;if(!a)$pb();else{k=a;r=a}}else{k=o;r=0}if(!(b[j>>0]|0))a=k;else{b[k>>0]=45;a=k+1|0}k=n+10|0;m=n;j=e;g=a;a=l;while(1){if(j>>>0>=a>>>0)break;e=b[j>>0]|0;a=n;while(1){if((a|0)==(k|0)){a=k;break}if((b[a>>0]|0)==e<<24>>24)break;a=a+1|0}b[g>>0]=b[206630+(a-m)>>0]|0;j=j+1|0;g=g+1|0;a=f[p>>2]|0}b[g>>0]=0;f[q>>2]=i;if((Udb(o,206641,q)|0)!=1)Rkb(0);if(r|0)Lbb(r)}a=f[c>>2]|0;do if(!a)g=1;else{e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[e>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;g=1;break}else{g=(f[c>>2]|0)==0;break}}while(0);a=f[d>>2]|0;do if(!a)t=32;else{e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[e>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;t=32;break}else if(g)break;else{t=34;break}}while(0);if((t|0)==32)if(g)t=34;if((t|0)==34)f[h>>2]=f[h>>2]|2;e=f[c>>2]|0;Dhb(s);a=f[w>>2]|0;f[w>>2]=0;if(a|0)fh[f[v>>2]&2047](a);u=x;return e|0}function Mlb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+144|0;j=t+24|0;a=t+32|0;s=t+16|0;m=t+8|0;p=t;k=t+28|0;n=t+4|0;f[s>>2]=a;r=s+4|0;f[r>>2]=1298;_fb(p,g);l=Chb(p,213216)|0;b[k>>0]=0;o=f[d>>2]|0;f[n>>2]=o;g=f[g+4>>2]|0;f[j>>2]=f[n>>2];n=o;if(Olb(c,j,e,p,g,h,k,l,s,m,a+100|0)|0){a=i+11|0;if((b[a>>0]|0)<0){e=f[i>>2]|0;b[j>>0]=0;Wfb(e,j);f[i+4>>2]=0}else{b[j>>0]=0;Wfb(i,j);b[a>>0]=0}if(b[k>>0]|0)qqb(i,Pg[f[(f[l>>2]|0)+28>>2]&255](l,45)|0);k=Pg[f[(f[l>>2]|0)+28>>2]&255](l,48)|0;g=f[m>>2]|0;j=g+-1|0;a=f[s>>2]|0;while(1){if(a>>>0>=j>>>0)break;if((b[a>>0]|0)!=k<<24>>24)break;a=a+1|0}Plb(i,a,g)|0}a=f[c>>2]|0;do if(!a)g=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=gfb(b[g>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[c>>2]=0;g=1;break}else{g=(f[c>>2]|0)==0;break}}while(0);do if(!o)q=25;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](n)|0;else a=gfb(b[a>>0]|0)|0;if(Zfb(a,ffb()|0)|0){f[d>>2]=0;q=25;break}else if(g)break;else{q=27;break}}while(0);if((q|0)==25)if(g)q=27;if((q|0)==27)f[h>>2]=f[h>>2]|2;g=f[c>>2]|0;Dhb(p);a=f[s>>2]|0;f[s>>2]=0;if(a|0)fh[f[r>>2]&2047](a);u=t;return g|0}function Nlb(a){a=a|0;return}function Olb(a,c,e,g,h,i,j,k,l,m,o){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;C=0;F=u;u=u+2224|0;f[(F+88|0)>>2]=o;f[(F+80|0)>>2]=F+96|0;f[((F+80|0)+4|0)>>2]=1298;f[(F+72|0)>>2]=F+96|0;f[(F+68|0)>>2]=(F+96|0)+400;f[(F+56|0)>>2]=0;f[(F+56|0)+4>>2]=0;f[(F+56|0)+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[(F+56|0)+(o<<2)>>2]=0;o=o+1|0}f[(F+44|0)>>2]=0;f[(F+44|0)+4>>2]=0;f[(F+44|0)+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[(F+44|0)+(o<<2)>>2]=0;o=o+1|0}f[(F+32|0)>>2]=0;f[(F+32|0)+4>>2]=0;f[(F+32|0)+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[(F+32|0)+(o<<2)>>2]=0;o=o+1|0}f[(F+20|0)>>2]=0;f[(F+20|0)+4>>2]=0;f[(F+20|0)+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[(F+20|0)+(o<<2)>>2]=0;o=o+1|0}f[(F+8|0)>>2]=0;f[(F+8|0)+4>>2]=0;f[(F+8|0)+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[(F+8|0)+(o<<2)>>2]=0;o=o+1|0}Rlb(e,g,F+500|0,F+497|0,F+496|0,F+56|0,F+44|0,F+32|0,F+20|0,F+4|0);f[m>>2]=f[l>>2];v=(F+32|0)+11|0;w=(F+20|0)+11|0;E=0;t=0;a:while(1){if(t>>>0>=4){C=234;break}o=f[a>>2]|0;do if(!o)g=1;else{e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}while(0);e=f[c>>2]|0;do if(!e)C=31;else{o=f[e+12>>2]|0;if((o|0)==(f[e+16>>2]|0))o=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else o=gfb(b[o>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[c>>2]=0;C=31;break}else if(g){z=e;break}else{C=234;break a}}while(0);if((C|0)==31){C=0;if(g){C=234;break}else z=0}b:do{g=1;p=b[(F+500|0)+t>>0]|0;if(g){g=0;switch(p|0){case 1:{if((t|0)==3)q=E;else{o=f[a>>2]|0;e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if((o&255)<<24>>24<=-1){C=44;break a}if(!(d[(f[(k+8|0)>>2]|0)+(o<<24>>24<<1)>>1]&8192)){C=44;break a}o=f[a>>2]|0;e=f[(o+12|0)>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;else{f[(o+12|0)>>2]=e+1;o=gfb(b[e>>0]|0)|0}qqb(F+8|0,o&255);r=z;s=z;C=46}break}case 0:{if((t|0)==3)q=E;else{r=z;s=z;C=46}break}default:g=1}}f[F+528>>2]=a;f[F+536>>2]=c;f[F+560>>2]=h;f[F+576>>2]=j;f[F+584>>2]=k;f[F+592>>2]=l;f[F+600>>2]=m;f[F+888>>2]=E;f[F+896>>2]=t;f[F+912>>2]=q;f[F+1488>>2]=v;f[F+1520>>2]=w;f[F+2016>>2]=z;f[F+2104>>2]=C;f[F+2112>>2]=g;f[F+2120>>2]=p;f[F+2128>>2]=0;f[F+2132>>2]=0;fnb(F);q=f[F+912>>2]|0;C=f[F+2104>>2]|0;G=f[F+2128>>2]|0;D=f[F+2132>>2]|0;H=+n[F+2132>>2];f[F+2128>>2]=0;f[F+2132>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break b;case 20:break a}}while(0);c:do if((C|0)==46)while(1){C=0;o=f[a>>2]|0;do if(!o)e=1;else{e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}while(0);do if(!s){x=r;C=59}else{o=f[s+12>>2]|0;if((o|0)==(f[s+16>>2]|0))o=Ng[f[(f[s>>2]|0)+36>>2]&511](s)|0;else o=gfb(b[o>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[c>>2]=0;x=0;C=59;break}else if(e^(r|0)==0){y=r;A=r;break}else{q=E;break c}}while(0);if((C|0)==59){C=0;if(e){q=E;break c}else{y=x;A=0}}o=f[a>>2]|0;e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if((o&255)<<24>>24<=-1){q=E;break c}if(!(d[(f[(k+8|0)>>2]|0)+(o<<24>>24<<1)>>1]&8192)){q=E;break c}o=f[a>>2]|0;e=f[(o+12|0)>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+40>>2]&511](o)|0;else{f[(o+12|0)>>2]=e+1;o=gfb(b[e>>0]|0)|0}qqb(F+8|0,o&255);r=y;s=A}while(0);E=q;t=t+1|0}d:do if((C|0)==44){f[i>>2]=f[i>>2]|4;B=0}else if((C|0)==103){f[i>>2]=f[i>>2]|4;B=0}else if((C|0)==144){f[i>>2]=f[i>>2]|4;B=0}else if((C|0)==232){f[i>>2]=f[i>>2]|4;B=0}else if((C|0)==234){e:do if(E|0){q=E+11|0;r=E+4|0;p=1;f:while(1){o=b[q>>0]|0;if(o<<24>>24<0)o=f[r>>2]|0;else o=o&255;if(p>>>0>=o>>>0)break e;o=f[a>>2]|0;do if(!o)g=1;else{e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}while(0);o=f[c>>2]|0;do if(!o)C=253;else{e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if(Zfb(o,ffb()|0)|0){f[c>>2]=0;C=253;break}else if(g)break;else break f}while(0);if((C|0)==253){C=0;if(g)break}o=f[a>>2]|0;e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))o=Ng[f[(f[o>>2]|0)+36>>2]&511](o)|0;else o=gfb(b[e>>0]|0)|0;if((b[q>>0]|0)<0)e=f[E>>2]|0;else e=E;if((b[e+p>>0]|0)!=(o&255)<<24>>24)break;o=p+1|0;e=f[a>>2]|0;g=f[(e+12|0)>>2]|0;if((g|0)==(f[e+16>>2]|0)){Ng[f[(f[e>>2]|0)+40>>2]&511](e)|0;p=o;continue}else{f[(e+12|0)>>2]=g+1;gfb(b[g>>0]|0)|0;p=o;continue}}f[i>>2]=f[i>>2]|4;B=0;break d}while(0);o=f[(F+80|0)>>2]|0;e=f[(F+72|0)>>2]|0;if((o|0)==(e|0))B=1;else{f[F>>2]=0;Rhb(F+56|0,o,e,F);if(!(f[F>>2]|0)){B=1;break}else{f[i>>2]=f[i>>2]|4;B=0;break}}}while(0);eqb(F+8|0);eqb(F+20|0);eqb(F+32|0);eqb(F+44|0);eqb(F+56|0);o=f[(F+80|0)>>2]|0;f[(F+80|0)>>2]=0;if(o|0)fh[f[((F+80|0)+4|0)>>2]&2047](o);u=F;return B|0}function Plb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;j=c;o=p+12|0;k=p;m=a+11|0;h=b[m>>0]|0;e=h<<24>>24<0;if(e){l=f[a+4>>2]|0;i=(f[a+8>>2]&2147483647)+-1|0}else{l=h&255;i=10}n=d-j|0;do if(n|0){if(e){g=f[a>>2]|0;e=f[a+4>>2]|0}else{g=a;e=h&255}if(Qlb(c,g,g+e|0)|0){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;if(n>>>0>4294967279)aqb(k);if(n>>>0<11){b[k+11>>0]=n;g=k}else{m=n+16&-16;g=Wpb(m)|0;f[k>>2]=g;f[k+8>>2]=m|-2147483648;f[k+4>>2]=n}e=g;while(1){if((c|0)==(d|0))break;Wfb(e,c);c=c+1|0;e=e+1|0}b[o>>0]=0;Wfb(g+n|0,o);o=b[k+11>>0]|0;d=o<<24>>24<0;oqb(a,d?f[k>>2]|0:k,d?f[k+4>>2]|0:o&255)|0;eqb(k);break}if((i-l|0)>>>0<n>>>0)nqb(a,i,l+n-i|0,l,l,0,0);if((b[m>>0]|0)<0)h=f[a>>2]|0;else h=a;g=d+(l-j)|0;e=h+l|0;while(1){if((c|0)==(d|0))break;Wfb(e,c);e=e+1|0;c=c+1|0}b[o>>0]=0;Wfb(h+g|0,o);c=l+n|0;if((b[m>>0]|0)<0){f[a+4>>2]=c;break}else{b[m>>0]=c;break}}while(0);u=p;return a|0}function Qlb(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function Rlb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;n=o;if(a){c=Chb(c,214936)|0;nh[f[(f[c>>2]|0)+44>>2]&1023](m,c);a=f[m>>2]|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;nh[f[(f[c>>2]|0)+32>>2]&1023](n,c);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[m>>0]=0;Wfb(a,m);f[k+4>>2]=0;a=k}else{b[m>>0]=0;Wfb(k,m);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+28>>2]&1023](n,c);a=j+11|0;if((b[a>>0]|0)<0){a=f[j>>2]|0;b[m>>0]=0;Wfb(a,m);f[j+4>>2]=0;a=j}else{b[m>>0]=0;Wfb(j,m);b[a>>0]=0;a=j}jqb(j,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);a=Ng[f[(f[c>>2]|0)+12>>2]&511](c)|0;b[e>>0]=a;a=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;b[g>>0]=a;nh[f[(f[c>>2]|0)+20>>2]&1023](n,c);a=h+11|0;if((b[a>>0]|0)<0){a=f[h>>2]|0;b[m>>0]=0;Wfb(a,m);f[h+4>>2]=0;a=h}else{b[m>>0]=0;Wfb(h,m);b[a>>0]=0;a=h}jqb(h,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+24>>2]&1023](n,c);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;Wfb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;Wfb(i,m);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);a=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0}else{c=Chb(c,214928)|0;nh[f[(f[c>>2]|0)+44>>2]&1023](m,c);a=f[m>>2]|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;nh[f[(f[c>>2]|0)+32>>2]&1023](n,c);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[m>>0]=0;Wfb(a,m);f[k+4>>2]=0;a=k}else{b[m>>0]=0;Wfb(k,m);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+28>>2]&1023](n,c);a=j+11|0;if((b[a>>0]|0)<0){a=f[j>>2]|0;b[m>>0]=0;Wfb(a,m);f[j+4>>2]=0;a=j}else{b[m>>0]=0;Wfb(j,m);b[a>>0]=0;a=j}jqb(j,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);a=Ng[f[(f[c>>2]|0)+12>>2]&511](c)|0;b[e>>0]=a;a=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;b[g>>0]=a;nh[f[(f[c>>2]|0)+20>>2]&1023](n,c);a=h+11|0;if((b[a>>0]|0)<0){a=f[h>>2]|0;b[m>>0]=0;Wfb(a,m);f[h+4>>2]=0;a=h}else{b[m>>0]=0;Wfb(h,m);b[a>>0]=0;a=h}jqb(h,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+24>>2]&1023](n,c);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;Wfb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;Wfb(i,m);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);a=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0}f[l>>2]=a;u=o;return}function Slb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=a+4|0;e=(f[i>>2]|0)!=1298;d=f[a>>2]|0;g=(f[c>>2]|0)-d|0;g=g>>>0<2147483647?g<<1:-1;g=(g|0)==0?1:g;h=(f[b>>2]|0)-d|0;d=Mbb(e?d:0,g)|0;if(!d)$pb();if(e)f[a>>2]=d;else{e=f[a>>2]|0;f[a>>2]=d;if(e){fh[f[i>>2]&2047](e);d=f[a>>2]|0}}f[i>>2]=1299;f[b>>2]=d+h;f[c>>2]=(f[a>>2]|0)+g;return}function Tlb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=a+4|0;e=(f[i>>2]|0)!=1298;d=f[a>>2]|0;g=(f[c>>2]|0)-d|0;g=g>>>0<2147483647?g<<1:-1;g=(g|0)==0?4:g;h=(f[b>>2]|0)-d>>2;d=Mbb(e?d:0,g)|0;if(!d)$pb();if(e)f[a>>2]=d;else{e=f[a>>2]|0;f[a>>2]=d;if(e){fh[f[i>>2]&2047](e);d=f[a>>2]|0}}f[i>>2]=1299;f[b>>2]=d+(h<<2);f[c>>2]=(f[a>>2]|0)+(g>>>2<<2);return}function Ulb(a){a=a|0;ghb(a);return}function Vlb(a){a=a|0;ghb(a);Zpb(a);return}function Wlb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+576|0;n=x+424|0;q=x;m=x+24|0;w=x+16|0;p=x+12|0;s=x+8|0;j=x+564|0;y=x+4|0;o=x+464|0;f[w>>2]=m;v=w+4|0;f[v>>2]=1298;_fb(s,g);a=Chb(s,213248)|0;b[j>>0]=0;f[y>>2]=f[d>>2];l=f[g+4>>2]|0;f[n>>2]=f[y>>2];if(Ylb(c,n,e,s,l,h,j,a,w,p,m+400|0)|0){Rg[f[(f[a>>2]|0)+48>>2]&15](a,206740,206750,n)|0;l=f[p>>2]|0;e=f[w>>2]|0;a=l-e|0;if((a|0)>392){a=Kbb((a>>>2)+2|0)|0;if(!a)$pb();else{k=a;r=a}}else{k=o;r=0}if(!(b[j>>0]|0))a=k;else{b[k>>0]=45;a=k+1|0}k=n+40|0;m=n;j=e;g=a;a=l;while(1){if(j>>>0>=a>>>0)break;e=f[j>>2]|0;a=n;while(1){if((a|0)==(k|0)){a=k;break}if((f[a>>2]|0)==(e|0))break;a=a+4|0}b[g>>0]=b[206740+(a-m>>2)>>0]|0;j=j+4|0;g=g+1|0;a=f[p>>2]|0}b[g>>0]=0;f[q>>2]=i;if((Udb(o,206641,q)|0)!=1)Rkb(0);if(r|0)Lbb(r)}a=f[c>>2]|0;do if(!a)g=1;else{e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[e>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;g=1;break}else{g=(f[c>>2]|0)==0;break}}while(0);a=f[d>>2]|0;do if(!a)t=32;else{e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[e>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;t=32;break}else if(g)break;else{t=34;break}}while(0);if((t|0)==32)if(g)t=34;if((t|0)==34)f[h>>2]=f[h>>2]|2;e=f[c>>2]|0;Dhb(s);a=f[w>>2]|0;f[w>>2]=0;if(a|0)fh[f[v>>2]&2047](a);u=x;return e|0}function Xlb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+432|0;j=t+424|0;a=t+24|0;s=t+16|0;m=t+8|0;p=t;k=t+428|0;n=t+4|0;f[s>>2]=a;r=s+4|0;f[r>>2]=1298;_fb(p,g);l=Chb(p,213248)|0;b[k>>0]=0;o=f[d>>2]|0;f[n>>2]=o;g=f[g+4>>2]|0;f[j>>2]=f[n>>2];n=o;if(Ylb(c,j,e,p,g,h,k,l,s,m,a+400|0)|0){a=i+8+3|0;if((b[a>>0]|0)<0){e=f[i>>2]|0;f[j>>2]=0;mhb(e,j);f[i+4>>2]=0}else{f[j>>2]=0;mhb(i,j);b[a>>0]=0}if(b[k>>0]|0)Aqb(i,Pg[f[(f[l>>2]|0)+44>>2]&255](l,45)|0);k=Pg[f[(f[l>>2]|0)+44>>2]&255](l,48)|0;g=f[m>>2]|0;j=g+-4|0;a=f[s>>2]|0;while(1){if(a>>>0>=j>>>0)break;if((f[a>>2]|0)!=(k|0))break;a=a+4|0}Zlb(i,a,g)|0}a=f[c>>2]|0;do if(!a)g=1;else{g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))a=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;else a=yfb(f[g>>2]|0)|0;if($fb(a,xfb()|0)|0){f[c>>2]=0;g=1;break}else{g=(f[c>>2]|0)==0;break}}while(0);do if(!o)q=25;else{a=f[n+12>>2]|0;if((a|0)==(f[n+16>>2]|0))a=Ng[f[(f[o>>2]|0)+36>>2]&511](n)|0;else a=yfb(f[a>>2]|0)|0;if($fb(a,xfb()|0)|0){f[d>>2]=0;q=25;break}else if(g)break;else{q=27;break}}while(0);if((q|0)==25)if(g)q=27;if((q|0)==27)f[h>>2]=f[h>>2]|2;g=f[c>>2]|0;Dhb(p);a=f[s>>2]|0;f[s>>2]=0;if(a|0)fh[f[r>>2]&2047](a);u=t;return g|0}function Ylb(a,c,d,e,g,h,i,j,k,l,m){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;C=0;F=u;u=u+2256|0;f[(F+96|0)>>2]=m;f[(F+88|0)>>2]=F+104|0;f[((F+88|0)+4|0)>>2]=1298;f[(F+80|0)>>2]=F+104|0;f[(F+76|0)>>2]=(F+104|0)+400;f[(F+56|0)>>2]=0;f[(F+56|0)+4>>2]=0;f[(F+56|0)+8>>2]=0;m=0;while(1){if((m|0)==3)break;f[(F+56|0)+(m<<2)>>2]=0;m=m+1|0}f[(F+44|0)>>2]=0;f[(F+44|0)+4>>2]=0;f[(F+44|0)+8>>2]=0;m=0;while(1){if((m|0)==3)break;f[(F+44|0)+(m<<2)>>2]=0;m=m+1|0}f[(F+32|0)>>2]=0;f[(F+32|0)+4>>2]=0;f[(F+32|0)+8>>2]=0;m=0;while(1){if((m|0)==3)break;f[(F+32|0)+(m<<2)>>2]=0;m=m+1|0}f[(F+20|0)>>2]=0;f[(F+20|0)+4>>2]=0;f[(F+20|0)+8>>2]=0;m=0;while(1){if((m|0)==3)break;f[(F+20|0)+(m<<2)>>2]=0;m=m+1|0}f[(F+8|0)>>2]=0;f[(F+8|0)+4>>2]=0;f[(F+8|0)+8>>2]=0;m=0;while(1){if((m|0)==3)break;f[(F+8|0)+(m<<2)>>2]=0;m=m+1|0}$lb(d,e,F+504|0,F+72|0,F+68|0,F+56|0,F+44|0,F+32|0,F+20|0,F+4|0);f[l>>2]=f[k>>2];t=(F+32|0)+8+3|0;v=(F+20|0)+8+3|0;w=(F+44|0)+8+3|0;E=0;s=0;a:while(1){if(s>>>0>=4){C=229;break}m=f[a>>2]|0;do if(!m)e=1;else{d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if($fb(m,xfb()|0)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}while(0);d=f[c>>2]|0;do if(!d)C=31;else{m=f[d+12>>2]|0;if((m|0)==(f[d+16>>2]|0))m=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0;else m=yfb(f[m>>2]|0)|0;if($fb(m,xfb()|0)|0){f[c>>2]=0;C=31;break}else if(e){z=d;break}else{C=229;break a}}while(0);if((C|0)==31){C=0;if(e){C=229;break}else z=0}b:do{e=1;o=b[(F+504|0)+s>>0]|0;if(e){e=0;switch(o|0){case 1:{if((s|0)==3)p=E;else{m=f[a>>2]|0;d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if(!(Qg[f[(f[j>>2]|0)+12>>2]&127](j,8192,m)|0)){C=43;break a}m=f[a>>2]|0;d=f[(m+12|0)>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+40>>2]&511](m)|0;else{f[(m+12|0)>>2]=d+4;m=yfb(f[d>>2]|0)|0}Aqb(F+8|0,m);q=z;r=z;C=45}break}case 0:{if((s|0)==3)p=E;else{q=z;r=z;C=45}break}default:e=1}}f[F+528>>2]=a;f[F+536>>2]=c;f[F+560>>2]=g;f[F+576>>2]=i;f[F+584>>2]=j;f[F+592>>2]=k;f[F+600>>2]=l;f[F+888>>2]=E;f[F+896>>2]=s;f[F+912>>2]=p;f[F+1512>>2]=t;f[F+1560>>2]=v;f[F+1624>>2]=w;f[F+2040>>2]=z;f[F+2128>>2]=C;f[F+2136>>2]=e;f[F+2144>>2]=o;f[F+2152>>2]=0;f[F+2156>>2]=0;gnb(F);p=f[F+912>>2]|0;C=f[F+2128>>2]|0;G=f[F+2152>>2]|0;D=f[F+2156>>2]|0;H=+n[F+2156>>2];f[F+2152>>2]=0;f[F+2156>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break b;case 19:break a}}while(0);c:do if((C|0)==45)while(1){C=0;m=f[a>>2]|0;do if(!m)d=1;else{d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if($fb(m,xfb()|0)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}while(0);do if(!r){x=q;C=58}else{m=f[r+12>>2]|0;if((m|0)==(f[r+16>>2]|0))m=Ng[f[(f[r>>2]|0)+36>>2]&511](r)|0;else m=yfb(f[m>>2]|0)|0;if($fb(m,xfb()|0)|0){f[c>>2]=0;x=0;C=58;break}else if(d^(q|0)==0){y=q;A=q;break}else{p=E;break c}}while(0);if((C|0)==58){C=0;if(d){p=E;break c}else{y=x;A=0}}m=f[a>>2]|0;d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if(!(Qg[f[(f[j>>2]|0)+12>>2]&127](j,8192,m)|0)){p=E;break c}m=f[a>>2]|0;d=f[(m+12|0)>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+40>>2]&511](m)|0;else{f[(m+12|0)>>2]=d+4;m=yfb(f[d>>2]|0)|0}Aqb(F+8|0,m);q=y;r=A}while(0);E=p;s=s+1|0}d:do if((C|0)==43){f[h>>2]=f[h>>2]|4;B=0}else if((C|0)==101){f[h>>2]=f[h>>2]|4;B=0}else if((C|0)==141){f[h>>2]=f[h>>2]|4;B=0}else if((C|0)==227){f[h>>2]=f[h>>2]|4;B=0}else if((C|0)==229){e:do if(E|0){p=E+8+3|0;q=E+4|0;o=1;f:while(1){m=b[p>>0]|0;if(m<<24>>24<0)m=f[q>>2]|0;else m=m&255;if(o>>>0>=m>>>0)break e;m=f[a>>2]|0;do if(!m)e=1;else{d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if($fb(m,xfb()|0)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}while(0);m=f[c>>2]|0;do if(!m)C=248;else{d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if($fb(m,xfb()|0)|0){f[c>>2]=0;C=248;break}else if(e)break;else break f}while(0);if((C|0)==248){C=0;if(e)break}m=f[a>>2]|0;d=f[m+12>>2]|0;if((d|0)==(f[m+16>>2]|0))m=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0;else m=yfb(f[d>>2]|0)|0;if((b[p>>0]|0)<0)d=f[E>>2]|0;else d=E;if((m|0)!=(f[d+(o<<2)>>2]|0))break;m=o+1|0;d=f[a>>2]|0;e=f[(d+12|0)>>2]|0;if((e|0)==(f[d+16>>2]|0)){Ng[f[(f[d>>2]|0)+40>>2]&511](d)|0;o=m;continue}else{f[(d+12|0)>>2]=e+4;yfb(f[e>>2]|0)|0;o=m;continue}}f[h>>2]=f[h>>2]|4;B=0;break d}while(0);m=f[(F+88|0)>>2]|0;d=f[(F+80|0)>>2]|0;if((m|0)==(d|0))B=1;else{f[F>>2]=0;Rhb(F+56|0,m,d,F);if(!(f[F>>2]|0)){B=1;break}else{f[h>>2]=f[h>>2]|4;B=0;break}}}while(0);sqb(F+8|0);sqb(F+20|0);sqb(F+32|0);sqb(F+44|0);eqb(F+56|0);m=f[(F+88|0)>>2]|0;f[(F+88|0)>>2]=0;if(m|0)fh[f[((F+88|0)+4|0)>>2]&2047](m);u=F;return B|0}function Zlb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;o=q+12|0;l=q;e=a+8|0;p=e+3|0;i=b[p>>0]|0;g=i<<24>>24<0;if(g){n=f[a+4>>2]|0;h=(f[e>>2]&2147483647)+-1|0}else{n=i&255;h=1}m=d-c>>2;do if(m|0){if(g){g=f[a>>2]|0;e=f[a+4>>2]|0}else{g=a;e=i&255}if(_lb(c,g,g+(e<<2)|0)|0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;if(m>>>0>1073741807)aqb(l);do if(m>>>0<2){b[l+8+3>>0]=m;j=c;k=l}else{e=m+4&-4;if(e>>>0>1073741823)ud();else{k=Wpb(e<<2)|0;f[l>>2]=k;f[l+8>>2]=e|-2147483648;f[l+4>>2]=m;j=c;break}}while(0);while(1){if((j|0)==(d|0))break;mhb(k,j);j=j+4|0;k=k+4|0}f[o>>2]=0;mhb(k,o);p=b[l+8+3>>0]|0;o=p<<24>>24<0;zqb(a,o?f[l>>2]|0:l,o?f[l+4>>2]|0:p&255)|0;sqb(l);break}if((h-n|0)>>>0<m>>>0)yqb(a,h,n+m-h|0,n,n,0,0);if((b[p>>0]|0)<0)e=f[a>>2]|0;else e=a;e=e+(n<<2)|0;while(1){if((c|0)==(d|0))break;mhb(e,c);e=e+4|0;c=c+4|0}f[o>>2]=0;mhb(e,o);c=n+m|0;if((b[p>>0]|0)<0){f[a+4>>2]=c;break}else{b[p>>0]=c;break}}while(0);u=q;return a|0}function _lb(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function $lb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;n=o;if(a){c=Chb(c,214952)|0;nh[f[(f[c>>2]|0)+44>>2]&1023](m,c);a=f[m>>2]|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;nh[f[(f[c>>2]|0)+32>>2]&1023](n,c);a=k+8+3|0;if((b[a>>0]|0)<0){d=f[k>>2]|0;f[m>>2]=0;mhb(d,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);nh[f[(f[c>>2]|0)+28>>2]&1023](n,c);a=j+8+3|0;if((b[a>>0]|0)<0){k=f[j>>2]|0;f[m>>2]=0;mhb(k,m);f[j+4>>2]=0}else{f[m>>2]=0;mhb(j,m);b[a>>0]=0}wqb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[c>>2]|0)+12>>2]&511](c)|0;f[e>>2]=a;a=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;f[g>>2]=a;nh[f[(f[c>>2]|0)+20>>2]&1023](n,c);a=h+11|0;if((b[a>>0]|0)<0){a=f[h>>2]|0;b[m>>0]=0;Wfb(a,m);f[h+4>>2]=0;a=h}else{b[m>>0]=0;Wfb(h,m);b[a>>0]=0;a=h}jqb(h,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+24>>2]&1023](n,c);a=i+8+3|0;if((b[a>>0]|0)<0){h=f[i>>2]|0;f[m>>2]=0;mhb(h,m);f[i+4>>2]=0}else{f[m>>2]=0;mhb(i,m);b[a>>0]=0}wqb(i,0);f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0}else{c=Chb(c,214944)|0;nh[f[(f[c>>2]|0)+44>>2]&1023](m,c);a=f[m>>2]|0;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;nh[f[(f[c>>2]|0)+32>>2]&1023](n,c);a=k+8+3|0;if((b[a>>0]|0)<0){d=f[k>>2]|0;f[m>>2]=0;mhb(d,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);nh[f[(f[c>>2]|0)+28>>2]&1023](n,c);a=j+8+3|0;if((b[a>>0]|0)<0){k=f[j>>2]|0;f[m>>2]=0;mhb(k,m);f[j+4>>2]=0}else{f[m>>2]=0;mhb(j,m);b[a>>0]=0}wqb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[c>>2]|0)+12>>2]&511](c)|0;f[e>>2]=a;a=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;f[g>>2]=a;nh[f[(f[c>>2]|0)+20>>2]&1023](n,c);a=h+11|0;if((b[a>>0]|0)<0){a=f[h>>2]|0;b[m>>0]=0;Wfb(a,m);f[h+4>>2]=0;a=h}else{b[m>>0]=0;Wfb(h,m);b[a>>0]=0;a=h}jqb(h,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[c>>2]|0)+24>>2]&1023](n,c);a=i+8+3|0;if((b[a>>0]|0)<0){h=f[i>>2]|0;f[m>>2]=0;mhb(h,m);f[i+4>>2]=0}else{f[m>>2]=0;mhb(i,m);b[a>>0]=0}wqb(i,0);f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0}f[l>>2]=a;u=o;return}function amb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=a+4|0;e=(f[i>>2]|0)!=1298;d=f[a>>2]|0;g=(f[c>>2]|0)-d|0;g=g>>>0<2147483647?g<<1:-1;g=(g|0)==0?4:g;h=(f[b>>2]|0)-d>>2;d=Mbb(e?d:0,g)|0;if(!d)$pb();if(e)f[a>>2]=d;else{e=f[a>>2]|0;f[a>>2]=d;if(e){fh[f[i>>2]&2047](e);d=f[a>>2]|0}}f[i>>2]=1299;f[b>>2]=d+(h<<2);f[c>>2]=(f[a>>2]|0)+(g>>>2<<2);return}function bmb(a){a=a|0;ghb(a);return}function cmb(a){a=a|0;ghb(a);Zpb(a);return}function dmb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;F=u;u=u+384|0;q=F+8|0;j=F;a=F+284|0;k=F+72|0;i=F+184|0;E=F+68|0;r=F+180|0;s=F+177|0;t=F+176|0;B=F+56|0;C=F+44|0;D=F+32|0;n=F+28|0;o=F+76|0;v=F+24|0;w=F+16|0;x=F+20|0;f[k>>2]=a;p[q>>3]=h;a=pdb(a,100,206846,q)|0;if(a>>>0>99){a=Fhb()|0;p[j>>3]=h;a=Xib(k,a,206846,j)|0;i=f[k>>2]|0;if(!i)$pb();j=Kbb(a)|0;if(!j)$pb();else{y=j;A=a;H=j;I=i}}else{y=i;A=a;H=0;I=0}_fb(E,e);m=Chb(E,213216)|0;l=f[k>>2]|0;Rg[f[(f[m>>2]|0)+32>>2]&15](m,l,l+A|0,y)|0;if(!A)l=0;else l=(b[f[k>>2]>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[D+(a<<2)>>2]=0;a=a+1|0}fmb(d,l,E,r,s,t,B,C,D,n);k=f[n>>2]|0;if((A|0)>(k|0)){i=b[D+11>>0]|0;j=b[C+11>>0]|0;a=1;i=(i<<24>>24<0?f[D+4>>2]|0:i&255)+(A-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[D+11>>0]|0;i=b[C+11>>0]|0;a=2;i=i<<24>>24<0?f[C+4>>2]|0:i&255;j=j<<24>>24<0?f[D+4>>2]|0:j&255}a=j+k+i+a|0;if(a>>>0>100){a=Kbb(a)|0;if(!a)$pb();else{z=a;G=a}}else{z=o;G=0}gmb(z,v,w,f[e+4>>2]|0,y,y+A|0,m,l,r,b[s>>0]|0,b[t>>0]|0,B,C,D,k);f[x>>2]=f[c>>2];c=f[v>>2]|0;a=f[w>>2]|0;f[q>>2]=f[x>>2];a=GIa(q,z,c,a,e,g)|0;if(G|0)Lbb(G);eqb(D);eqb(C);eqb(B);Dhb(E);if(H|0)Lbb(H);if(I|0)Lbb(I);u=F;return a|0}function emb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=u;u=u+176|0;p=D+56|0;C=D+52|0;v=D+164|0;w=D+161|0;x=D+160|0;z=D+40|0;A=D+28|0;B=D+16|0;l=D+12|0;n=D+60|0;q=D+8|0;r=D+4|0;s=D;_fb(C,e);t=Chb(C,213216)|0;i=h+11|0;o=b[i>>0]|0;a=o<<24>>24<0;j=h+4|0;if(!((a?f[j>>2]|0:o&255)|0))o=0;else{o=b[(a?f[h>>2]|0:h)>>0]|0;o=o<<24>>24==(Pg[f[(f[t>>2]|0)+28>>2]&255](t,45)|0)<<24>>24};f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}fmb(d,o,C,v,w,x,z,A,B,l);k=b[i>>0]|0;m=k<<24>>24<0;k=m?f[j>>2]|0:k&255;j=f[l>>2]|0;if((k|0)>(j|0)){i=b[B+11>>0]|0;d=b[A+11>>0]|0;a=1;i=(i<<24>>24<0?f[B+4>>2]|0:i&255)+(k-j<<1)|0;d=d<<24>>24<0?f[A+4>>2]|0:d&255}else{d=b[B+11>>0]|0;i=b[A+11>>0]|0;a=2;i=i<<24>>24<0?f[A+4>>2]|0:i&255;d=d<<24>>24<0?f[B+4>>2]|0:d&255}a=d+j+i+a|0;if(a>>>0>100){a=Kbb(a)|0;if(!a)$pb();else{y=a;E=a}}else{y=n;E=0}h=m?f[h>>2]|0:h;gmb(y,q,r,f[e+4>>2]|0,h,h+k|0,t,o,v,b[w>>0]|0,b[x>>0]|0,z,A,B,j);f[s>>2]=f[c>>2];h=f[q>>2]|0;a=f[r>>2]|0;f[p>>2]=f[s>>2];a=GIa(p,y,h,a,e,g)|0;if(E|0)Lbb(E);eqb(B);eqb(A);eqb(z);Dhb(C);u=D;return a|0}function fmb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p+12|0;o=p;if(a){m=Chb(d,214936)|0;if(c){nh[f[(f[m>>2]|0)+44>>2]&1023](n,m);a=f[n>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[m>>2]|0)+32>>2]&1023](o,m);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[n>>0]=0;Wfb(a,n);f[k+4>>2]=0;a=k}else{b[n>>0]=0;Wfb(k,n);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);d=m}else{nh[f[(f[m>>2]|0)+40>>2]&1023](n,m);a=f[n>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[m>>2]|0)+28>>2]&1023](o,m);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[n>>0]=0;Wfb(a,n);f[k+4>>2]=0;a=k}else{b[n>>0]=0;Wfb(k,n);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);d=m}a=Ng[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=a;a=Ng[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=a;nh[f[(f[d>>2]|0)+20>>2]&1023](o,m);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[n>>0]=0;Wfb(a,n);f[i+4>>2]=0;a=i}else{b[n>>0]=0;Wfb(i,n);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);nh[f[(f[d>>2]|0)+24>>2]&1023](o,m);a=j+11|0;if((b[a>>0]|0)<0){a=f[j>>2]|0;b[n>>0]=0;Wfb(a,n);f[j+4>>2]=0;a=j}else{b[n>>0]=0;Wfb(j,n);b[a>>0]=0;a=j}jqb(j,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);a=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0}else{m=Chb(d,214928)|0;if(c){nh[f[(f[m>>2]|0)+44>>2]&1023](n,m);a=f[n>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[m>>2]|0)+32>>2]&1023](o,m);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[n>>0]=0;Wfb(a,n);f[k+4>>2]=0;a=k}else{b[n>>0]=0;Wfb(k,n);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);d=m}else{nh[f[(f[m>>2]|0)+40>>2]&1023](n,m);a=f[n>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[m>>2]|0)+28>>2]&1023](o,m);a=k+11|0;if((b[a>>0]|0)<0){a=f[k>>2]|0;b[n>>0]=0;Wfb(a,n);f[k+4>>2]=0;a=k}else{b[n>>0]=0;Wfb(k,n);b[a>>0]=0;a=k}jqb(k,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);d=m}a=Ng[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=a;a=Ng[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=a;nh[f[(f[d>>2]|0)+20>>2]&1023](o,m);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[n>>0]=0;Wfb(a,n);f[i+4>>2]=0;a=i}else{b[n>>0]=0;Wfb(i,n);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);nh[f[(f[d>>2]|0)+24>>2]&1023](o,m);a=j+11|0;if((b[a>>0]|0)<0){a=f[j>>2]|0;b[n>>0]=0;Wfb(a,n);f[j+4>>2]=0;a=j}else{b[n>>0]=0;Wfb(j,n);b[a>>0]=0;a=j}jqb(j,0);f[a>>2]=f[o>>2];f[a+4>>2]=f[o+4>>2];f[a+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}eqb(o);a=Ng[f[(f[m>>2]|0)+36>>2]&511](m)|0}f[l>>2]=a;u=p;return}function gmb(a,c,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;f[e>>2]=a;z=q+11|0;H=q+4|0;A=p+11|0;B=p+4|0;C=(g&512|0)==0;D=j+8|0;E=(r|0)>0;F=o+11|0;G=o+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(b[l+y>>0]|0){case 0:{f[c>>2]=f[e>>2];break}case 1:{f[c>>2]=f[e>>2];w=Pg[f[(f[j>>2]|0)+28>>2]&255](j,32)|0;x=f[e>>2]|0;f[e>>2]=x+1;b[x>>0]=w;break}case 3:{x=b[z>>0]|0;s=x<<24>>24<0;if((s?f[H>>2]|0:x&255)|0){w=b[(s?f[q>>2]|0:q)>>0]|0;x=f[e>>2]|0;f[e>>2]=x+1;b[x>>0]=w}break}case 2:{t=b[A>>0]|0;s=t<<24>>24<0;t=s?f[B>>2]|0:t&255;if(!(C|(t|0)==0)){x=s?f[p>>2]|0:p;u=x+t|0;s=f[e>>2]|0;t=x;while(1){if((t|0)==(u|0))break;b[s>>0]=b[t>>0]|0;s=s+1|0;t=t+1|0}f[e>>2]=s}break}case 4:{t=f[e>>2]|0;h=k?h+1|0:h;u=h;while(1){if(u>>>0>=i>>>0)break;s=b[u>>0]|0;if(s<<24>>24<=-1)break;if(!(d[(f[D>>2]|0)+(s<<24>>24<<1)>>1]&2048))break;u=u+1|0}if(E){v=r;while(1){s=(v|0)>0;if(!(u>>>0>h>>>0&s))break;x=u+-1|0;s=b[x>>0]|0;w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=s;v=v+-1|0;u=x}if(s)w=Pg[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;else w=0;s=v;while(1){v=f[e>>2]|0;f[e>>2]=v+1;if((s|0)<=0)break;b[v>>0]=w;s=s+-1|0}b[v>>0]=m}b:do if((u|0)==(h|0)){w=Pg[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;x=f[e>>2]|0;f[e>>2]=x+1;b[x>>0]=w}else{x=b[F>>0]|0;s=x<<24>>24<0;if(!((s?f[G>>2]|0:x&255)|0)){w=-1;v=0;x=0}else{w=b[(s?f[o>>2]|0:o)>>0]|0;v=0;x=0}while(1){if((u|0)==(h|0))break b;if((x|0)==(w|0)){w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=n;v=v+1|0;w=b[F>>0]|0;s=w<<24>>24<0;if(v>>>0<(s?f[G>>2]|0:w&255)>>>0){w=b[(s?f[o>>2]|0:o)+v>>0]|0;w=w<<24>>24==127?-1:w<<24>>24;s=0}else{w=x;s=0}}else s=x;I=u+-1|0;J=b[I>>0]|0;x=f[e>>2]|0;f[e>>2]=x+1;b[x>>0]=J;x=s+1|0;u=I}}while(0);s=f[e>>2]|0;if((t|0)!=(s|0))while(1){s=s+-1|0;if(t>>>0>=s>>>0)break a;J=b[t>>0]|0;b[t>>0]=b[s>>0]|0;b[s>>0]=J;t=t+1|0}break}default:{}}while(0);y=y+1|0}h=b[z>>0]|0;s=h<<24>>24<0;h=s?f[H>>2]|0:h&255;if(h>>>0>1){J=s?f[q>>2]|0:q;t=J+h|0;s=f[e>>2]|0;h=J;while(1){h=h+1|0;if((h|0)==(t|0))break;b[s>>0]=b[h>>0]|0;s=s+1|0}f[e>>2]=s}switch((g&176)<<24>>24){case 32:{f[c>>2]=f[e>>2];break}case 16:break;default:f[c>>2]=a}return}function hmb(a){a=a|0;ghb(a);return}function imb(a){a=a|0;ghb(a);Zpb(a);return}function jmb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;F=u;u=u+1008|0;q=F+8|0;j=F;a=F+896|0;k=F+888|0;i=F+488|0;E=F+480|0;r=F+892|0;s=F+476|0;t=F+472|0;B=F+460|0;C=F+448|0;D=F+436|0;n=F+432|0;o=F+32|0;v=F+24|0;w=F+16|0;x=F+20|0;f[k>>2]=a;p[q>>3]=h;a=pdb(a,100,206846,q)|0;if(a>>>0>99){a=Fhb()|0;p[j>>3]=h;a=Xib(k,a,206846,j)|0;i=f[k>>2]|0;if(!i)$pb();j=Kbb(a<<2)|0;if(!j)$pb();else{y=j;A=a;H=j;I=i}}else{y=i;A=a;H=0;I=0}_fb(E,e);m=Chb(E,213248)|0;l=f[k>>2]|0;Rg[f[(f[m>>2]|0)+48>>2]&15](m,l,l+A|0,y)|0;if(!A)l=0;else l=(b[f[k>>2]>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[D+(a<<2)>>2]=0;a=a+1|0}lmb(d,l,E,r,s,t,B,C,D,n);k=f[n>>2]|0;if((A|0)>(k|0)){i=b[D+8+3>>0]|0;j=b[C+8+3>>0]|0;a=1;i=(i<<24>>24<0?f[D+4>>2]|0:i&255)+(A-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[D+8+3>>0]|0;i=b[C+8+3>>0]|0;a=2;i=i<<24>>24<0?f[C+4>>2]|0:i&255;j=j<<24>>24<0?f[D+4>>2]|0:j&255}a=j+k+i+a|0;if(a>>>0>100){a=Kbb(a<<2)|0;if(!a)$pb();else{z=a;G=a}}else{z=o;G=0}mmb(z,v,w,f[e+4>>2]|0,y,y+(A<<2)|0,m,l,r,f[s>>2]|0,f[t>>2]|0,B,C,D,k);f[x>>2]=f[c>>2];c=f[v>>2]|0;a=f[w>>2]|0;f[q>>2]=f[x>>2];a=jjb(q,z,c,a,e,g)|0;if(G|0)Lbb(G);sqb(D);sqb(C);eqb(B);Dhb(E);if(H|0)Lbb(H);if(I|0)Lbb(I);u=F;return a|0}function kmb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=u;u=u+480|0;p=D+468|0;C=D+464|0;v=D+472|0;w=D+460|0;x=D+456|0;z=D+444|0;A=D+432|0;B=D+420|0;l=D+416|0;n=D+16|0;q=D+8|0;r=D+4|0;s=D;_fb(C,e);t=Chb(C,213248)|0;i=h+8+3|0;o=b[i>>0]|0;a=o<<24>>24<0;j=h+4|0;if(!((a?f[j>>2]|0:o&255)|0))o=0;else{o=f[(a?f[h>>2]|0:h)>>2]|0;o=(o|0)==(Pg[f[(f[t>>2]|0)+44>>2]&255](t,45)|0)};f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}lmb(d,o,C,v,w,x,z,A,B,l);k=b[i>>0]|0;m=k<<24>>24<0;k=m?f[j>>2]|0:k&255;j=f[l>>2]|0;if((k|0)>(j|0)){i=b[B+8+3>>0]|0;d=b[A+8+3>>0]|0;a=1;i=(i<<24>>24<0?f[B+4>>2]|0:i&255)+(k-j<<1)|0;d=d<<24>>24<0?f[A+4>>2]|0:d&255}else{d=b[B+8+3>>0]|0;i=b[A+8+3>>0]|0;a=2;i=i<<24>>24<0?f[A+4>>2]|0:i&255;d=d<<24>>24<0?f[B+4>>2]|0:d&255}a=d+j+i+a|0;if(a>>>0>100){a=Kbb(a<<2)|0;if(!a)$pb();else{y=a;E=a}}else{y=n;E=0}h=m?f[h>>2]|0:h;mmb(y,q,r,f[e+4>>2]|0,h,h+(k<<2)|0,t,o,v,f[w>>2]|0,f[x>>2]|0,z,A,B,j);f[s>>2]=f[c>>2];h=f[q>>2]|0;a=f[r>>2]|0;f[p>>2]=f[s>>2];a=jjb(p,y,h,a,e,g)|0;if(E|0)Lbb(E);sqb(B);sqb(A);eqb(z);Dhb(C);u=D;return a|0}function lmb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;n=o;if(a){d=Chb(d,214952)|0;if(c){nh[f[(f[d>>2]|0)+44>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[d>>2]|0)+32>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;mhb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n)}else{nh[f[(f[d>>2]|0)+40>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[d>>2]|0)+28>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;mhb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n)}a=Ng[f[(f[d>>2]|0)+12>>2]&511](d)|0;f[g>>2]=a;a=Ng[f[(f[d>>2]|0)+16>>2]&511](d)|0;f[h>>2]=a;nh[f[(f[d>>2]|0)+20>>2]&1023](n,d);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;Wfb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;Wfb(i,m);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[d>>2]|0)+24>>2]&1023](n,d);a=j+8+3|0;if((b[a>>0]|0)<0){i=f[j>>2]|0;f[m>>2]=0;mhb(i,m);f[j+4>>2]=0}else{f[m>>2]=0;mhb(j,m);b[a>>0]=0}wqb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0}else{d=Chb(d,214944)|0;if(c){nh[f[(f[d>>2]|0)+44>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[d>>2]|0)+32>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;mhb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n)}else{nh[f[(f[d>>2]|0)+40>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;nh[f[(f[d>>2]|0)+28>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;mhb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;mhb(k,m);b[a>>0]=0}wqb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n)}a=Ng[f[(f[d>>2]|0)+12>>2]&511](d)|0;f[g>>2]=a;a=Ng[f[(f[d>>2]|0)+16>>2]&511](d)|0;f[h>>2]=a;nh[f[(f[d>>2]|0)+20>>2]&1023](n,d);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;Wfb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;Wfb(i,m);b[a>>0]=0;a=i}jqb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}eqb(n);nh[f[(f[d>>2]|0)+24>>2]&1023](n,d);a=j+8+3|0;if((b[a>>0]|0)<0){i=f[j>>2]|0;f[m>>2]=0;mhb(i,m);f[j+4>>2]=0}else{f[m>>2]=0;mhb(j,m);b[a>>0]=0}wqb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}sqb(n);a=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0}f[l>>2]=a;u=o;return}function mmb(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f[d>>2]=a;z=p+8+3|0;G=p+4|0;A=o+8+3|0;B=o+4|0;C=(e&512|0)==0;D=(q|0)>0;E=n+11|0;F=n+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(b[k+y>>0]|0){case 0:{f[c>>2]=f[d>>2];break}case 1:{f[c>>2]=f[d>>2];w=Pg[f[(f[i>>2]|0)+44>>2]&255](i,32)|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w;break}case 3:{x=b[z>>0]|0;r=x<<24>>24<0;if((r?f[G>>2]|0:x&255)|0){w=f[(r?f[p>>2]|0:p)>>2]|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w}break}case 2:{v=b[A>>0]|0;r=v<<24>>24<0;v=r?f[B>>2]|0:v&255;if(!(C|(v|0)==0)){u=r?f[o>>2]|0:o;s=u+(v<<2)|0;t=f[d>>2]|0;r=t;while(1){if((u|0)==(s|0))break;f[r>>2]=f[u>>2];r=r+4|0;u=u+4|0}f[d>>2]=t+(v<<2)}break}case 4:{s=f[d>>2]|0;g=j?g+4|0:g;r=g;while(1){if(r>>>0>=h>>>0)break;if(!(Qg[f[(f[i>>2]|0)+12>>2]&127](i,2048,f[r>>2]|0)|0))break;r=r+4|0}if(D){u=q;while(1){t=(u|0)>0;if(!(r>>>0>g>>>0&t))break;x=r+-4|0;v=f[x>>2]|0;w=f[d>>2]|0;f[d>>2]=w+4;f[w>>2]=v;u=u+-1|0;r=x}if(t)w=Pg[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;else w=0;v=f[d>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;f[v>>2]=w;u=u+-1|0;v=t}f[d>>2]=t;f[v>>2]=l}if((r|0)==(g|0)){w=Pg[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;x=f[d>>2]|0;r=x+4|0;f[d>>2]=r;f[x>>2]=w}else{x=b[E>>0]|0;t=x<<24>>24<0;if(!((t?f[F>>2]|0:x&255)|0)){v=-1;u=0;w=0}else{v=b[(t?f[n>>2]|0:n)>>0]|0;u=0;w=0}while(1){if((r|0)==(g|0))break;t=f[d>>2]|0;if((w|0)==(v|0)){x=t+4|0;f[d>>2]=x;f[t>>2]=m;u=u+1|0;v=b[E>>0]|0;t=v<<24>>24<0;if(u>>>0<(t?f[F>>2]|0:v&255)>>>0){v=b[(t?f[n>>2]|0:n)+u>>0]|0;v=v<<24>>24==127?-1:v<<24>>24;w=0;t=x}else{v=w;w=0;t=x}}x=r+-4|0;H=f[x>>2]|0;f[d>>2]=t+4;f[t>>2]=H;w=w+1|0;r=x}r=f[d>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;H=f[s>>2]|0;f[s>>2]=f[r>>2];f[r>>2]=H;s=s+4|0}break}default:{}}while(0);y=y+1|0}r=b[z>>0]|0;g=r<<24>>24<0;r=g?f[G>>2]|0:r&255;if(r>>>0>1){s=f[p>>2]|0;u=g?s+4|0:G;r=(g?s:p)+(r<<2)|0;s=f[d>>2]|0;t=r-u|0;g=s;while(1){if((u|0)==(r|0))break;f[g>>2]=f[u>>2];g=g+4|0;u=u+4|0}f[d>>2]=s+(t>>>2<<2)}switch((e&176)<<24>>24){case 32:{f[c>>2]=f[d>>2];break}case 16:break;default:f[c>>2]=a}return}function nmb(a){a=a|0;ghb(a);return}function omb(a){a=a|0;ghb(a);Zpb(a);return}function pmb(a,c,d){a=a|0;c=c|0;d=d|0;d=oeb((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function qmb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}k=b[h+11>>0]|0;l=k<<24>>24<0;c=l?f[h>>2]|0:h;h=c+(l?f[h+4>>2]|0:k&255)|0;while(1){if(c>>>0>=h>>>0)break;qqb(i,b[c>>0]|0);c=c+1|0}c=(b[i+11>>0]|0)<0?f[i>>2]|0:i;d=ueb((d|0)==-1?-1:d<<1,e,g,c)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[a+(h<<2)>>2]=0;h=h+1|0}h=c+(cdb(d)|0)|0;while(1){if(c>>>0>=h>>>0)break;qqb(a,b[c>>0]|0);c=c+1|0}eqb(i);u=j;return}function rmb(a,b){a=a|0;b=b|0;return}function smb(a){a=a|0;ghb(a);return}function tmb(a){a=a|0;ghb(a);Zpb(a);return}function umb(a,c,d){a=a|0;c=c|0;d=d|0;d=oeb((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function vmb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+176|0;p=t+168|0;q=t+40|0;r=t+36|0;s=t+32|0;n=t;l=t+24|0;o=t+16|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[n+(c<<2)>>2]=0;c=c+1|0}f[l+4>>2]=0;f[l>>2]=41836;j=b[h+8+3>>0]|0;k=j<<24>>24<0;c=k?f[h>>2]|0:h;j=c+((k?f[h+4>>2]|0:j&255)<<2)|0;k=q+32|0;h=c;c=0;while(1){if(!((c|0)!=2&h>>>0<j>>>0))break;f[s>>2]=h;i=Zg[f[(f[l>>2]|0)+12>>2]&15](l,p,h,j,s,q,k,r)|0;if((i|0)==2?1:(f[s>>2]|0)==(h|0)){m=7;break}else c=q;while(1){if(c>>>0>=(f[r>>2]|0)>>>0)break;qqb(n,b[c>>0]|0);c=c+1|0}h=f[s>>2]|0;c=i}if((m|0)==7)Rkb(0);ghb(l);i=(b[n+11>>0]|0)<0?f[n>>2]|0:n;h=ueb((d|0)==-1?-1:d<<1,e,g,i)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}f[o+4>>2]=0;f[o>>2]=41884;j=i+(cdb(h)|0)|0;k=j;l=q+128|0;h=i;c=0;while(1){if(!((c|0)!=2&h>>>0<j>>>0)){m=21;break}f[s>>2]=h;i=Zg[f[(f[o>>2]|0)+16>>2]&15](o,p,h,(k-h|0)>32?h+32|0:j,s,q,l,r)|0;if((i|0)==2?1:(f[s>>2]|0)==(h|0)){m=17;break}else c=q;while(1){if(c>>>0>=(f[r>>2]|0)>>>0)break;Aqb(a,f[c>>2]|0);c=c+4|0}h=f[s>>2]|0;c=i}if((m|0)==17)Rkb(0);else if((m|0)==21){ghb(o);eqb(n);u=t;return}}function wmb(a,b){a=a|0;b=b|0;return}function xmb(a){a=a|0;ghb(a);Zpb(a);return}function ymb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Hmb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function zmb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Gmb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function Amb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function Bmb(a){a=a|0;return 0}function Cmb(a){a=a|0;return 0}function Dmb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Fmb(c,d,e,1114111,0)|0}function Emb(a){a=a|0;return 4}function Fmb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c;if(!(f&4)){n=0;f=a}else if((o-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69){n=0;f=(b[a+2>>0]|0)==-65?a+3|0:a}else{n=0;f=a}else{n=0;f=a}else{n=0;f=a}a:while(1){if(!(n>>>0<d>>>0&f>>>0<c>>>0)){p=34;break}l=b[f>>0]|0;m=l&255;do if(l<<24>>24>-1){if(m>>>0>e>>>0){p=34;break a}f=f+1|0}else{if((l&255)<194){p=34;break a}if((l&255)<224){if((o-f|0)<2){p=34;break a}g=h[f+1>>0]|0;if((g&192|0)!=128){p=34;break a}if((g&63|m<<6&1984)>>>0>e>>>0){p=34;break a}f=f+2|0;break}if((l&255)<240){g=f;if((o-g|0)<3){p=34;break a}j=b[f+1>>0]|0;i=b[f+2>>0]|0;switch(l<<24>>24){case -32:{if((j&-32)<<24>>24!=-96){f=g;break a}break}case -19:{if((j&-32)<<24>>24!=-128){f=g;break a}break}default:if((j&-64)<<24>>24!=-128){f=g;break a}}g=i&255;if((g&192|0)!=128){p=34;break a}if(((j&63)<<6|m<<12&61440|g&63)>>>0>e>>>0){p=34;break a}else{f=f+3|0;break}}if((l&255)>=245){p=34;break a}g=f;if((o-g|0)<4){p=34;break a}k=b[f+1>>0]|0;i=b[f+2>>0]|0;j=b[f+3>>0]|0;switch(l<<24>>24){case -16:{if((k+112&255)>=48){f=g;break a}break}case -12:{if((k&-16)<<24>>24!=-128){f=g;break a}break}default:if((k&-64)<<24>>24!=-128){f=g;break a}}i=i&255;if((i&192|0)!=128){p=34;break a}g=j&255;if((g&192|0)!=128){p=34;break a}if(((k&63)<<12|m<<18&1835008|i<<6&4032|g&63)>>>0>e>>>0){p=34;break a}else f=f+4|0}while(0);n=n+1|0}return f-a|0}function Gmb(a,c,d,e,g,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;f[d>>2]=a;f[i>>2]=e;if(!(k&4))e=c;else{a=f[d>>2]|0;e=c;if((e-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69)if((b[a+2>>0]|0)==-65)f[d>>2]=a+3}a:while(1){p=f[d>>2]|0;a=p>>>0<c>>>0;if(!a){r=36;break}q=f[i>>2]|0;if(q>>>0>=g>>>0){r=36;break}n=b[p>>0]|0;a=n&255;do if(n<<24>>24>-1)if(a>>>0>j>>>0){a=2;break a}else k=1;else{if((n&255)<194){a=2;break a}if((n&255)<224){if((e-p|0)<2){a=1;break a}k=h[p+1>>0]|0;if((k&192|0)!=128){a=2;break a}a=k&63|a<<6&1984;if(a>>>0>j>>>0){a=2;break a}else{k=2;break}}if((n&255)<240){if((e-p|0)<3){a=1;break a}l=b[p+1>>0]|0;k=b[p+2>>0]|0;switch(n<<24>>24){case -32:{if((l&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((l&-32)<<24>>24!=-128){a=2;break a}break}default:if((l&-64)<<24>>24!=-128){a=2;break a}}k=k&255;if((k&192|0)!=128){a=2;break a}a=(l&63)<<6|a<<12&61440|k&63;if(a>>>0>j>>>0){a=2;break a}else{k=3;break}}if((n&255)>=245){a=2;break a}if((e-p|0)<4){a=1;break a}o=b[p+1>>0]|0;k=b[p+2>>0]|0;m=b[p+3>>0]|0;switch(n<<24>>24){case -16:{if((o+112&255)>=48){a=2;break a}break}case -12:{if((o&-16)<<24>>24!=-128){a=2;break a}break}default:if((o&-64)<<24>>24!=-128){a=2;break a}}l=k&255;if((l&192|0)!=128){a=2;break a}k=m&255;if((k&192|0)!=128){a=2;break a}a=(o&63)<<12|a<<18&1835008|l<<6&4032|k&63;if(a>>>0>j>>>0){a=2;break a}else k=4}while(0);f[q>>2]=a;f[d>>2]=p+k;f[i>>2]=(f[i>>2]|0)+4}if((r|0)==36)a=a&1;return a|0}function Hmb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;f[d>>2]=a;f[h>>2]=e;l=g;if(!(j&2))k=4;else if((l-e|0)<3)a=1;else{f[h>>2]=e+1;b[e>>0]=-17;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=-69;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=-65;k=4}a:do if((k|0)==4){a=f[d>>2]|0;while(1){if(a>>>0>=c>>>0){a=0;break a}e=f[a>>2]|0;if(e>>>0>i>>>0|(e&-2048|0)==55296){a=2;break a}do if(e>>>0<128){a=f[h>>2]|0;if((l-a|0)<1){a=1;break a}f[h>>2]=a+1;b[a>>0]=e}else{if(e>>>0<2048){a=f[h>>2]|0;if((l-a|0)<2){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>6|192;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}a=f[h>>2]|0;g=l-a|0;if(e>>>0<65536){if((g|0)<3){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>12|224;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>6&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}else{if((g|0)<4){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>18|240;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>12&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>6&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}}while(0);a=(f[d>>2]|0)+4|0;f[d>>2]=a}}while(0);return a|0}function Imb(a){a=a|0;ghb(a);Zpb(a);return}function Jmb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function Kmb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function Lmb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function Mmb(a){a=a|0;return 1}function Nmb(a){a=a|0;return 1}function Omb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0<e>>>0?d:e)|0}function Pmb(a){a=a|0;return 1}function Qmb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+16|0;p=q;n=q+8|0;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(f[k>>2]|0))break;k=k+4|0}f[j>>2]=h;f[g>>2]=d;m=i;o=a+8|0;a:while(1){if((h|0)==(i|0)|(d|0)==(e|0)){k=35;break}r=c;l=f[r+4>>2]|0;a=p;f[a>>2]=f[r>>2];f[a+4>>2]=l;a=peb(f[o>>2]|0)|0;l=ydb(h,g,k-d>>2,m-h|0,c)|0;if(a|0)peb(a)|0;switch(l|0){case -1:{k=10;break a}case 0:{d=1;k=32;break a}default:{}}h=(f[j>>2]|0)+l|0;f[j>>2]=h;if((h|0)==(i|0)){k=33;break}if((k|0)==(e|0)){k=e;d=f[g>>2]|0}else{h=peb(f[o>>2]|0)|0;d=Ocb(n,0,c)|0;if(h|0)peb(h)|0;if((d|0)==-1){d=2;k=31;break}if(d>>>0>(m-(f[j>>2]|0)|0)>>>0){d=1;k=31;break}else h=n;while(1){if(!d)break;l=b[h>>0]|0;r=f[j>>2]|0;f[j>>2]=r+1;b[r>>0]=l;h=h+1|0;d=d+-1|0}d=(f[g>>2]|0)+4|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(f[k>>2]|0))break;k=k+4|0}h=f[j>>2]|0}}if((k|0)==10){f[j>>2]=h;while(1){if((d|0)==(f[g>>2]|0))break;r=f[d>>2]|0;k=peb(f[o>>2]|0)|0;h=Ocb(h,r,p)|0;if(k|0)peb(k)|0;if((h|0)==-1)break;h=(f[j>>2]|0)+h|0;f[j>>2]=h;d=d+4|0}f[g>>2]=d;d=2;k=32}else if((k|0)==31)k=32;else if((k|0)==33){d=f[g>>2]|0;k=35}if((k|0)!=32)if((k|0)==35)d=(d|0)!=(e|0)&1;u=q;return d|0}function Rmb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;p=q;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}f[j>>2]=h;f[g>>2]=d;n=i;o=a+8|0;a=h;while(1){if((a|0)==(i|0)|(d|0)==(e|0)){a=32;break}l=c;h=f[l+4>>2]|0;m=p;f[m>>2]=f[l>>2];f[m+4>>2]=h;m=k;h=peb(f[o>>2]|0)|0;l=wdb(a,g,m-d|0,n-a>>2,c)|0;if(h|0)peb(h)|0;if((l|0)==-1){k=a;a=10;break}a=(f[j>>2]|0)+(l<<2)|0;f[j>>2]=a;if((a|0)==(i|0)){a=29;break}d=f[g>>2]|0;if((k|0)==(e|0))k=e;else{k=peb(f[o>>2]|0)|0;d=sdb(a,d,1,c)|0;if(k|0)peb(k)|0;if(d|0){d=2;a=28;break}f[j>>2]=(f[j>>2]|0)+4;d=(f[g>>2]|0)+1|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}a=f[j>>2]|0}}do if((a|0)==10){a:while(1){f[j>>2]=k;if((d|0)==(f[g>>2]|0)){a=18;break}a=peb(f[o>>2]|0)|0;k=sdb(k,d,m-d|0,p)|0;if(a|0)peb(a)|0;switch(k|0){case -1:{a=15;break a}case -2:{a=16;break a}case 0:{k=1;break}default:{}}d=d+k|0;k=(f[j>>2]|0)+4|0;a=10}if((a|0)==15){f[g>>2]=d;d=2;a=28;break}else if((a|0)==16){f[g>>2]=d;d=1;a=28;break}else if((a|0)==18){f[g>>2]=d;d=(d|0)!=(e|0)&1;a=28;break}}else if((a|0)==29){d=f[g>>2]|0;a=32}while(0);if((a|0)!=28)if((a|0)==32)d=(d|0)!=(e|0)&1;u=q;return d|0}function Smb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;f[g>>2]=d;d=peb(f[a+8>>2]|0)|0;a=Ocb(h,0,c)|0;if(d|0)peb(d)|0;a:do if((a+1|0)>>>0<2)a=2;else{a=a+-1|0;if(a>>>0>(e-(f[g>>2]|0)|0)>>>0)a=1;else while(1){if(!a){a=0;break a}c=b[h>>0]|0;e=f[g>>2]|0;f[g>>2]=e+1;b[e>>0]=c;h=h+1|0;a=a+-1|0}}while(0);u=i;return a|0}function Tmb(a){a=a|0;var b=0,c=0;a=a+8|0;b=peb(f[a>>2]|0)|0;c=qdb(0,0,4)|0;if(b|0)peb(b)|0;if(!c){a=f[a>>2]|0;if(!a)a=1;else{b=peb(a)|0;a=Bdb()|0;if(b|0)peb(b)|0;return (a|0)==1|0}}else a=-1;return a|0}function Umb(a){a=a|0;return 0}function Vmb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=d;j=a+8|0;h=0;i=0;a:while(1){if((c|0)==(d|0)|h>>>0>=e>>>0)break;g=peb(f[j>>2]|0)|0;a=xdb(c,k-c|0,b)|0;if(g|0)peb(g)|0;switch(a|0){case -2:case -1:break a;case 0:{a=1;break}default:{}}h=h+1|0;i=a+i|0;c=c+a|0}return i|0}function Wmb(a){a=a|0;var b=0;a=f[a+8>>2]|0;if(!a)a=1;else{b=peb(a)|0;a=Bdb()|0;if(b)peb(b)|0}return a|0}function Xmb(a){a=a|0;var b=0,c=0;f[a>>2]=41932;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(Fhb()|0))web(f[b>>2]|0);ghb(a);return}function Ymb(a){a=a|0;Xmb(a);Zpb(a);return}function Zmb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=inb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function _mb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=hnb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function $mb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function anb(a){a=a|0;return 0}function bnb(a){a=a|0;return 0}function cnb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return enb(c,d,e,1114111,0)|0}function dnb(a){a=a|0;return 4}function enb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c;if(!(f&4)){g=0;f=a}else if((o-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69){g=0;f=(b[a+2>>0]|0)==-65?a+3|0:a}else{g=0;f=a}else{g=0;f=a}else{g=0;f=a}a:while(1){if(!(g>>>0<d>>>0&f>>>0<c>>>0)){p=33;break}m=b[f>>0]|0;n=m&255;if(n>>>0>e>>>0){p=33;break}do if(m<<24>>24>-1)f=f+1|0;else{if((m&255)<194){p=33;break a}if((m&255)<224){if((o-f|0)<2){p=33;break a}i=h[f+1>>0]|0;if((i&192|0)!=128){p=33;break a}if((i&63|n<<6&1984)>>>0>e>>>0){p=33;break a}else{f=f+2|0;break}}if((m&255)<240){i=f;if((o-i|0)<3){p=33;break a}k=b[f+1>>0]|0;j=b[f+2>>0]|0;switch(m<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){f=i;break a}break}case -19:{if((k&-32)<<24>>24!=-128){f=i;break a}break}default:if((k&-64)<<24>>24!=-128){f=i;break a}}i=j&255;if((i&192|0)!=128){p=33;break a}if(((k&63)<<6|n<<12&61440|i&63)>>>0>e>>>0){p=33;break a}else{f=f+3|0;break}}if((m&255)>=245){p=33;break a}i=f;if((d-g|0)>>>0<2|(o-i|0)<4){p=33;break a}l=b[f+1>>0]|0;j=b[f+2>>0]|0;k=b[f+3>>0]|0;switch(m<<24>>24){case -16:{if((l+112&255)>=48){f=i;break a}break}case -12:{if((l&-16)<<24>>24!=-128){f=i;break a}break}default:if((l&-64)<<24>>24!=-128){f=i;break a}}j=j&255;if((j&192|0)!=128){p=33;break a}i=k&255;if((i&192|0)!=128){p=33;break a}if(((l&63)<<12|n<<18&1835008|j<<6&4032|i&63)>>>0>e>>>0){p=33;break a}else{g=g+1|0;f=f+4|0}}while(0);g=g+1|0}return f-a|0}function fnb(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;H=f[a+528>>2]|0;B=f[a+536>>2]|0;r=f[a+560>>2]|0;n=f[a+576>>2]|0;C=f[a+584>>2]|0;E=f[a+592>>2]|0;F=f[a+600>>2]|0;I=f[a+888>>2]|0;l=f[a+896>>2]|0;y=f[a+912>>2]|0;k=f[a+1488>>2]|0;m=f[a+1520>>2]|0;s=f[a+2016>>2]|0;J=f[a+2104>>2]|0;K=f[a+2112>>2]|0;G=f[a+2120>>2]|0;a:{if(K){K=0;switch(G|0){case 3:{j=b[k>>0]|0;j=j<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:j&255;c=b[m>>0]|0;c=c<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:c&255;if((j|0)==(0-c|0))y=I;else{e=f[H>>2]|0;g=f[e+12>>2]|0;i=(g|0)==(f[e+16>>2]|0);if((j|0)==0|(c|0)==0){if(i)c=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else c=gfb(b[g>>0]|0)|0;c=c&255;if(!j){if((b[((b[m>>0]|0)<0?f[(a+20|0)>>2]|0:a+20|0)>>0]|0)!=c<<24>>24){y=I;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0}b[n>>0]=1;y=b[m>>0]|0;y=(y<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:y&255)>>>0>1?a+20|0:I;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}if((b[((b[k>>0]|0)<0?f[(a+32|0)>>2]|0:a+32|0)>>0]|0)!=c<<24>>24){b[n>>0]=1;y=I;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0}y=b[k>>0]|0;y=(y<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:y&255)>>>0>1?a+32|0:I;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}if(i)c=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else c=gfb(b[g>>0]|0)|0;e=f[H>>2]|0;g=f[(e+12|0)>>2]|0;i=(g|0)==(f[e+16>>2]|0);if((b[((b[k>>0]|0)<0?f[(a+32|0)>>2]|0:a+32|0)>>0]|0)==(c&255)<<24>>24){if(i)Ng[f[(f[e>>2]|0)+40>>2]&511](e)|0;else{f[(e+12|0)>>2]=g+1;gfb(b[g>>0]|0)|0}y=b[k>>0]|0;y=(y<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:y&255)>>>0>1?a+32|0:I;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}if(i)c=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else c=gfb(b[g>>0]|0)|0;if((b[((b[m>>0]|0)<0?f[(a+20|0)>>2]|0:a+20|0)>>0]|0)!=(c&255)<<24>>24){J=103;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0}b[n>>0]=1;y=b[m>>0]|0;y=(y<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:y&255)>>>0>1?a+20|0:I}break}default:K=1}}if(K){K=0;switch(G|0){case 2:{if(!(l>>>0<2|(I|0)!=0))if(!((r&512|0)!=0|(l|0)==2&(b[((a+500|0)+3|0)>>0]|0)!=0)){y=0;f[a+2128>>2]=2;f[a+2132>>2]=11;break a}e=b[((a+44|0)+11|0)>>0]|0;c=f[(a+44|0)>>2]|0;n=e<<24>>24<0?c:a+44|0;b:do if(!l){j=s;g=n;i=s}else if((h[(a+500|0)+(l+-1)>>0]|0)<2){g=n+(e<<24>>24<0?f[((a+44|0)+4|0)>>2]|0:e&255)|0;m=n;while(1){i=m;if((g|0)==(i|0))break;j=b[i>>0]|0;if(j<<24>>24<=-1)break;if(!(d[(f[(C+8|0)>>2]|0)+(j<<24>>24<<1)>>1]&8192))break;m=i+1|0}g=m-n|0;i=b[((a+8|0)+11|0)>>0]|0;j=f[((a+8|0)+4|0)>>2]|0;if(g>>>0>(i<<24>>24<0?j:i&255)>>>0){j=s;g=n;i=s}else{L=f[(a+8|0)>>2]|0;l=(i<<24>>24<0?L:a+8|0)+(i<<24>>24<0?j:i&255)|0;k=n;g=(i<<24>>24<0?L+j|0:(a+8|0)+(i&255)|0)+(0-g)|0;while(1){if((g|0)==(l|0)){j=s;g=m;i=s;break b}if((b[g>>0]|0)!=(b[k>>0]|0)){j=s;g=n;i=s;break b}k=k+1|0;g=g+1|0}}}else{j=s;g=n;i=s}while(0);c:while(1){L=e<<24>>24<0;c=(L?c:a+44|0)+(L?f[((a+44|0)+4|0)>>2]|0:e&255)|0;if((c|0)==(g|0))break;c=f[H>>2]|0;do if(!c)e=1;else{e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[H>>2]=0;e=1;break}else{e=(f[H>>2]|0)==0;break}}while(0);do if(!i){p=j;J=132}else{c=f[i+12>>2]|0;if((c|0)==(f[i+16>>2]|0))c=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else c=gfb(b[c>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[B>>2]=0;p=0;J=132;break}else if(e^(j|0)==0){o=j;q=j;break}else{c=g;break c}}while(0);if((J|0)==132){J=0;if(e){c=g;break}else{o=p;q=0}}c=f[H>>2]|0;e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if((b[g>>0]|0)!=(c&255)<<24>>24){c=g;break}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0}j=o;g=g+1|0;e=b[((a+44|0)+11|0)>>0]|0;c=f[(a+44|0)>>2]|0;i=q}if(r&512){L=b[((a+44|0)+11|0)>>0]|0;if(((L<<24>>24<0?f[(a+44|0)>>2]|0:a+44|0)+(L<<24>>24<0?f[((a+44|0)+4|0)>>2]|0:L&255)|0)==(c|0))y=I;else{J=144;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}}else y=I;break}default:K=1}}if(K){K=0;switch(G|0){case 4:{j=0;g=s;i=s;d:while(1){c=f[H>>2]|0;do if(!c)e=1;else{e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[H>>2]=0;e=1;break}else{e=(f[H>>2]|0)==0;break}}while(0);do if(!i){u=g;J=158}else{c=f[i+12>>2]|0;if((c|0)==(f[i+16>>2]|0))c=Ng[f[(f[i>>2]|0)+36>>2]&511](i)|0;else c=gfb(b[c>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[B>>2]=0;u=0;J=158;break}else if(e^(g|0)==0){v=g;w=g;break}else break d}while(0);if((J|0)==158){J=0;if(e){g=u;break}else{v=u;w=0}}c=f[H>>2]|0;e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;e=c&255;if(e<<24>>24>-1)if(!(d[(f[(C+8|0)>>2]|0)+(c<<24>>24<<1)>>1]&2048))J=168;else{c=f[F>>2]|0;if((c|0)==(f[(a+88|0)>>2]|0)){Slb(E,F,a+88|0);c=f[F>>2]|0}f[F>>2]=c+1;b[c>>0]=e;t=j+1|0}else J=168;if((J|0)==168){J=0;L=b[((a+56|0)+11|0)>>0]|0;if(!((b[(a+496|0)>>0]|0)==e<<24>>24&(j|0?((L<<24>>24<0?f[((a+56|0)+4|0)>>2]|0:L&255)|0)!=0:0))){g=v;break}c=f[(a+72|0)>>2]|0;if((c|0)==(f[(a+68|0)>>2]|0)){Tlb(a+80|0,a+72|0,a+68|0);c=f[(a+72|0)>>2]|0}f[(a+72|0)>>2]=c+4;f[c>>2]=j;t=0}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0)){Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;j=t;g=v;i=w;continue}else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0;j=t;g=v;i=w;continue}}c=f[(a+72|0)>>2]|0;if(j|0?(f[(a+80|0)>>2]|0)!=(c|0):0){if((c|0)==(f[(a+68|0)>>2]|0)){Tlb(a+80|0,a+72|0,a+68|0);c=f[(a+72|0)>>2]|0}f[(a+72|0)>>2]=c+4;f[c>>2]=j}e:do if((f[(a+4|0)>>2]|0)>0){c=f[H>>2]|0;do if(!c)e=1;else{e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[H>>2]=0;e=1;break}else{e=(f[H>>2]|0)==0;break}}while(0);do if(!g)J=193;else{c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0))c=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else c=gfb(b[c>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[B>>2]=0;J=193;break}else if(e){x=g;break}else{J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}}while(0);if((J|0)==193){J=0;if(e){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}else x=0}c=f[H>>2]|0;e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if((b[(a+497|0)>>0]|0)!=(c&255)<<24>>24){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0)){Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;i=x;g=x}else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0;i=x;g=x}while(1){if((f[(a+4|0)>>2]|0)<=0)break e;c=f[H>>2]|0;do if(!c)e=1;else{e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[H>>2]=0;e=1;break}else{e=(f[H>>2]|0)==0;break}}while(0);do if(!g){z=i;J=216}else{c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0))c=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else c=gfb(b[c>>0]|0)|0;if(Zfb(c,ffb()|0)|0){f[B>>2]=0;z=0;J=216;break}else if(e^(i|0)==0){A=i;D=i;break}else{J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}}while(0);if((J|0)==216){J=0;if(e){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}else{A=z;D=0}}c=f[H>>2]|0;e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;if((c&255)<<24>>24<=-1){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}if(!(d[(f[(C+8|0)>>2]|0)+(c<<24>>24<<1)>>1]&2048)){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}if((f[F>>2]|0)==(f[(a+88|0)>>2]|0))Slb(E,F,a+88|0);c=f[H>>2]|0;e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=gfb(b[e>>0]|0)|0;e=f[F>>2]|0;f[F>>2]=e+1;b[e>>0]=c;f[(a+4|0)>>2]=(f[(a+4|0)>>2]|0)+-1;c=f[H>>2]|0;e=f[(c+12|0)>>2]|0;if((e|0)==(f[c+16>>2]|0)){Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;i=A;g=D;continue}else{f[(c+12|0)>>2]=e+1;gfb(b[e>>0]|0)|0;i=A;g=D;continue}}}while(0);if((f[F>>2]|0)==(f[E>>2]|0)){J=232;f[a+2128>>2]=2;f[a+2132>>2]=20;break a}else y=I;break}default:K=1}}if(K){K=0;switch(G|0){default:y=I}}}f[a+912>>2]=y;f[a+2104>>2]=J;f[a+2112>>2]=K}function gnb(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;I=f[a+528>>2]|0;C=f[a+536>>2]|0;s=f[a+560>>2]|0;m=f[a+576>>2]|0;D=f[a+584>>2]|0;F=f[a+592>>2]|0;G=f[a+600>>2]|0;J=f[a+888>>2]|0;k=f[a+896>>2]|0;z=f[a+912>>2]|0;j=f[a+1512>>2]|0;l=f[a+1560>>2]|0;t=f[a+1624>>2]|0;u=f[a+2040>>2]|0;K=f[a+2128>>2]|0;L=f[a+2136>>2]|0;H=f[a+2144>>2]|0;a:{if(L){L=0;switch(H|0){case 3:{i=b[j>>0]|0;i=i<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:i&255;c=b[l>>0]|0;c=c<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:c&255;if((i|0)==(0-c|0))z=J;else{d=f[I>>2]|0;e=f[d+12>>2]|0;g=(e|0)==(f[d+16>>2]|0);if((i|0)==0|(c|0)==0){if(g)c=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0;else c=yfb(f[e>>2]|0)|0;if(!i){if((c|0)!=(f[((b[l>>0]|0)<0?f[(a+20|0)>>2]|0:a+20|0)>>2]|0)){z=J;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0}b[m>>0]=1;z=b[l>>0]|0;z=(z<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:z&255)>>>0>1?a+20|0:J;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}if((c|0)!=(f[((b[j>>0]|0)<0?f[(a+32|0)>>2]|0:a+32|0)>>2]|0)){b[m>>0]=1;z=J;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0}z=b[j>>0]|0;z=(z<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:z&255)>>>0>1?a+32|0:J;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}if(g)c=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0;else c=yfb(f[e>>2]|0)|0;d=f[I>>2]|0;e=f[(d+12|0)>>2]|0;g=(e|0)==(f[d+16>>2]|0);if((c|0)==(f[((b[j>>0]|0)<0?f[(a+32|0)>>2]|0:a+32|0)>>2]|0)){if(g)Ng[f[(f[d>>2]|0)+40>>2]&511](d)|0;else{f[(d+12|0)>>2]=e+4;yfb(f[e>>2]|0)|0}z=b[j>>0]|0;z=(z<<24>>24<0?f[((a+32|0)+4|0)>>2]|0:z&255)>>>0>1?a+32|0:J;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}if(g)c=Ng[f[(f[d>>2]|0)+36>>2]&511](d)|0;else c=yfb(f[e>>2]|0)|0;if((c|0)!=(f[((b[l>>0]|0)<0?f[(a+20|0)>>2]|0:a+20|0)>>2]|0)){K=101;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0}b[m>>0]=1;z=b[l>>0]|0;z=(z<<24>>24<0?f[((a+20|0)+4|0)>>2]|0:z&255)>>>0>1?a+20|0:J}break}default:L=1}}if(L){L=0;switch(H|0){case 2:{if(!(k>>>0<2|(J|0)!=0))if(!((s&512|0)!=0|(k|0)==2&(b[((a+504|0)+3|0)>>0]|0)!=0)){z=0;f[a+2152>>2]=2;f[a+2156>>2]=11;break a}e=b[t>>0]|0;c=f[(a+44|0)>>2]|0;d=e<<24>>24<0?c:a+44|0;b:do if(!k){i=u;g=u}else if((h[(a+504|0)+(k+-1)>>0]|0)<2){k=d;while(1){m=e<<24>>24<0;d=k;if(((m?c:a+44|0)+((m?f[((a+44|0)+4|0)>>2]|0:e&255)<<2)|0)==(d|0)){n=e;o=c;break}if(!(Qg[f[(f[D>>2]|0)+12>>2]&127](D,8192,f[d>>2]|0)|0)){K=108;break}k=d+4|0;e=b[t>>0]|0;c=f[(a+44|0)>>2]|0}if((K|0)==108){K=0;n=b[t>>0]|0;o=f[(a+44|0)>>2]|0}d=n<<24>>24<0?o:a+44|0;c=k-d>>2;e=b[((a+8|0)+8+3|0)>>0]|0;g=f[((a+8|0)+4|0)>>2]|0;if(c>>>0>(e<<24>>24<0?g:e&255)>>>0){i=u;e=n;c=o;g=u}else{m=f[(a+8|0)>>2]|0;j=(e<<24>>24<0?m:a+8|0)+((e<<24>>24<0?g:e&255)<<2)|0;i=d;c=(e<<24>>24<0?m+(g<<2)|0:(a+8|0)+((e&255)<<2)|0)+(0-c<<2)|0;while(1){if((c|0)==(j|0)){i=u;d=k;e=n;c=o;g=u;break b}if((f[c>>2]|0)!=(f[i>>2]|0)){i=u;e=n;c=o;g=u;break b}i=i+4|0;c=c+4|0}}}else{i=u;g=u}while(0);c:while(1){o=e<<24>>24<0;c=(o?c:a+44|0)+((o?f[((a+44|0)+4|0)>>2]|0:e&255)<<2)|0;e=d;if((c|0)==(e|0))break;c=f[I>>2]|0;do if(!c)d=1;else{d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if($fb(c,xfb()|0)|0){f[I>>2]=0;d=1;break}else{d=(f[I>>2]|0)==0;break}}while(0);do if(!g){q=i;K=129}else{c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0))c=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else c=yfb(f[c>>2]|0)|0;if($fb(c,xfb()|0)|0){f[C>>2]=0;q=0;K=129;break}else if(d^(i|0)==0){p=i;r=i;break}else{c=e;break c}}while(0);if((K|0)==129){K=0;if(d){c=e;break}else{p=q;r=0}}c=f[I>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if((c|0)!=(f[e>>2]|0)){c=e;break}c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0))Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0}i=p;d=e+4|0;e=b[t>>0]|0;c=f[(a+44|0)>>2]|0;g=r}if(s&512){t=b[t>>0]|0;if(((t<<24>>24<0?f[(a+44|0)>>2]|0:a+44|0)+((t<<24>>24<0?f[((a+44|0)+4|0)>>2]|0:t&255)<<2)|0)==(c|0))z=J;else{K=141;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}}else z=J;break}default:L=1}}if(L){L=0;switch(H|0){case 4:{i=0;e=u;g=u;d:while(1){c=f[I>>2]|0;do if(!c)d=1;else{d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if($fb(c,xfb()|0)|0){f[I>>2]=0;d=1;break}else{d=(f[I>>2]|0)==0;break}}while(0);do if(!g){v=e;K=155}else{c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0))c=Ng[f[(f[g>>2]|0)+36>>2]&511](g)|0;else c=yfb(f[c>>2]|0)|0;if($fb(c,xfb()|0)|0){f[C>>2]=0;v=0;K=155;break}else if(d^(e|0)==0){w=e;x=e;break}else break d}while(0);if((K|0)==155){K=0;if(d){e=v;break}else{w=v;x=0}}c=f[I>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))d=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else d=yfb(f[d>>2]|0)|0;if(Qg[f[(f[D>>2]|0)+12>>2]&127](D,2048,d)|0){c=f[G>>2]|0;if((c|0)==(f[(a+96|0)>>2]|0)){amb(F,G,a+96|0);c=f[G>>2]|0}f[G>>2]=c+4;f[c>>2]=d;c=i+1|0}else{u=b[((a+56|0)+11|0)>>0]|0;if(!((d|0)==(f[(a+68|0)>>2]|0)&(i|0?((u<<24>>24<0?f[((a+56|0)+4|0)>>2]|0:u&255)|0)!=0:0))){e=w;break}c=f[(a+80|0)>>2]|0;if((c|0)==(f[(a+76|0)>>2]|0)){Tlb(a+88|0,a+80|0,a+76|0);c=f[(a+80|0)>>2]|0}f[(a+80|0)>>2]=c+4;f[c>>2]=i;c=0}d=f[I>>2]|0;e=f[(d+12|0)>>2]|0;if((e|0)==(f[d+16>>2]|0)){Ng[f[(f[d>>2]|0)+40>>2]&511](d)|0;i=c;e=w;g=x;continue}else{f[(d+12|0)>>2]=e+4;yfb(f[e>>2]|0)|0;i=c;e=w;g=x;continue}}c=f[(a+80|0)>>2]|0;if(i|0?(f[(a+88|0)>>2]|0)!=(c|0):0){if((c|0)==(f[(a+76|0)>>2]|0)){Tlb(a+88|0,a+80|0,a+76|0);c=f[(a+80|0)>>2]|0}f[(a+80|0)>>2]=c+4;f[c>>2]=i}e:do if((f[(a+4|0)>>2]|0)>0){c=f[I>>2]|0;do if(!c)d=1;else{d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if($fb(c,xfb()|0)|0){f[I>>2]=0;d=1;break}else{d=(f[I>>2]|0)==0;break}}while(0);do if(!e)K=189;else{c=f[e+12>>2]|0;if((c|0)==(f[e+16>>2]|0))c=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else c=yfb(f[c>>2]|0)|0;if($fb(c,xfb()|0)|0){f[C>>2]=0;K=189;break}else if(d){y=e;break}else{K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}}while(0);if((K|0)==189){K=0;if(d){K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}else y=0}c=f[I>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if((c|0)!=(f[(a+72|0)>>2]|0)){K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0)){Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;g=y;e=y}else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0;g=y;e=y}while(1){if((f[(a+4|0)>>2]|0)<=0)break e;c=f[I>>2]|0;do if(!c)d=1;else{d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if($fb(c,xfb()|0)|0){f[I>>2]=0;d=1;break}else{d=(f[I>>2]|0)==0;break}}while(0);do if(!e){A=g;K=212}else{c=f[e+12>>2]|0;if((c|0)==(f[e+16>>2]|0))c=Ng[f[(f[e>>2]|0)+36>>2]&511](e)|0;else c=yfb(f[c>>2]|0)|0;if($fb(c,xfb()|0)|0){f[C>>2]=0;A=0;K=212;break}else if(d^(g|0)==0){B=g;E=g;break}else{K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}}while(0);if((K|0)==212){K=0;if(d){K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}else{B=A;E=0}}c=f[I>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;if(!(Qg[f[(f[D>>2]|0)+12>>2]&127](D,2048,c)|0)){K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}if((f[G>>2]|0)==(f[(a+96|0)>>2]|0))amb(F,G,a+96|0);c=f[I>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0))c=Ng[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=yfb(f[d>>2]|0)|0;d=f[G>>2]|0;f[G>>2]=d+4;f[d>>2]=c;f[(a+4|0)>>2]=(f[(a+4|0)>>2]|0)+-1;c=f[I>>2]|0;d=f[(c+12|0)>>2]|0;if((d|0)==(f[c+16>>2]|0)){Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;g=B;e=E;continue}else{f[(c+12|0)>>2]=d+4;yfb(f[d>>2]|0)|0;g=B;e=E;continue}}}while(0);if((f[G>>2]|0)==(f[F>>2]|0)){K=227;f[a+2152>>2]=2;f[a+2156>>2]=19;break a}else z=J;break}default:L=1}}if(L){L=0;switch(H|0){default:z=J}}}f[a+912>>2]=z;f[a+2128>>2]=K;f[a+2136>>2]=L}
function YTa(a,c,d,e,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0.0,W=0.0,X=0.0;K=0;L=u;u=u+1312|0;H=f[c>>2]|0;if(!H){u=L;return}I=(f[H+4>>2]|0)+8|0;if(!(f[I>>2]|0)){u=L;return}l=f[d>>2]|0;if(!l){D=0;E=0;F=0;G=0;J=0;K=10}else if(!(f[l+72>>2]|0)){D=0;E=0;F=0;G=0;J=0;K=10}else{r=f[l+4>>2]|0;q=f[r+8>>2]|0;r=f[r+12>>2]|0;if(r){Npb(r);l=f[d>>2]|0}m=f[l+72>>2]|0;l=f[l+76>>2]|0;if(l|0)Npb(l);if((m|0)!=0&((q|0)!=0&(f[(H+72|0)>>2]|0)!=0)){D=m;E=q;F=l;G=r;J=1;K=10}else{o=l;p=r}}if((K|0)==10){l=f[(a+16|0)>>2]|0;if(!l){JUa(L+152|0);l=f[(L+152|0)>>2]|0;C=f[((L+152|0)+4|0)>>2]|0;f[(L+152|0)>>2]=0;f[((L+152|0)+4|0)>>2]=0;f[(a+16|0)>>2]=l;l=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=C;if(l|0){Ppb(l);l=f[((L+152|0)+4|0)>>2]|0;if(l|0)Ppb(l)}l=f[(a+16|0)>>2]|0}C=f[52834]|0;I7a(211248,f[l>>2]|0)|0;m=f[52836]|0;o=f[52827]|0;H6a(L+88|0);p=b[211526]|0;r8a(211248,0)|0;q=b[211372]|0;W7a(211248,0)|0;r=f[52853]|0;s=f[52855]|0;t=f[52854]|0;v=f[52856]|0;w=b[211524]|0;p8a(211248,0)|0;x=+n[52845];y=+n[52846];z=+n[52847];A=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;do{B=1;if(B){B=0;if(k){JTa(a);if(!(d6a(f[c>>2]|0,a)|0)){X5a(L+152|0,f[c>>2]|0,0,1);l=f[(L+152|0)>>2]|0;k=f[((L+152|0)+4|0)>>2]|0;f[(L+152|0)>>2]=0;f[((L+152|0)+4|0)>>2]=0;f[a>>2]=l;l=f[(a+4|0)>>2]|0;f[(a+4|0)>>2]=k;if(l|0){Ppb(l);l=f[((L+152|0)+4|0)>>2]|0;if(l|0)Ppb(l)}}l=f[I>>2]|0;nVa(L+152|0,j,f[l+16>>2]|0,f[l+20>>2]|0);f[(L+80|0)>>2]=f[(L+152|0)>>2];l=f[(L+152|0)+4>>2]|0;f[((L+80|0)+4|0)>>2]=l;if(l|0)Npb(l);U=f[52875]|0;T=f[52876]|0;S=f[52877]|0;R=f[52878]|0;Q=f[52879]|0;P=f[52880]|0;k8a(211248,7680,7680,7680)|0;O=f[52867]|0;N=f[52870]|0;M=f[52868]|0;l=f[52871]|0;c=f[52869]|0;k=f[52872]|0;j=1;f[L+192>>2]=a;f[L+208>>2]=d;f[L+216>>2]=e;f[L+224>>2]=g;f[L+232>>2]=h;f[L+240>>2]=i;f[L+288>>2]=D;f[L+296>>2]=E;f[L+376>>2]=U;f[L+384>>2]=T;f[L+392>>2]=S;f[L+400>>2]=R;f[L+408>>2]=H;f[L+416>>2]=Q;f[L+424>>2]=P;f[L+432>>2]=O;f[L+440>>2]=N;f[L+448>>2]=M;f[L+456>>2]=l;f[L+464>>2]=c;f[L+472>>2]=k;f[L+600>>2]=I;f[L+1024>>2]=J;f[L+1232>>2]=K;f[L+1248>>2]=j;f[L+1256>>2]=0;f[L+1260>>2]=0;FWa(L)}else B=1}if(B)if(1){$7a(211248,1,771)|0;p8a(211248,1)|0;if(J){RTa(a);E7a(211248,3)|0;F7a(211248,f[D+8>>2]|0)|0;E7a(211248,2)|0;F7a(211248,f[(f[(H+72|0)>>2]|0)+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[E+8>>2]|0)|0;E7a(211248,0)|0;F7a(211248,f[(f[I>>2]|0)+8>>2]|0)|0;N7a(211248,f[f[a+256>>2]>>2]|0)|0;U=f[a+268>>2]|0;V=+n[a+40>>2];X=V*+n[a+32>>2];W=V*+n[a+36>>2];n[(L+152|0)>>2]=+n[a+28>>2]*V;n[(L+152|0)+4>>2]=X;n[(L+152|0)+8>>2]=W;n[(L+152|0)+12>>2]=V;jf(U|0,1,L+152|0|0);$e(f[a+272>>2]|0,+(+n[a+108>>2]));KUa(f[a+264>>2]|0);break}else{PTa(0,a+236|0,152931);E7a(211248,0)|0;F7a(211248,f[(f[I>>2]|0)+8>>2]|0)|0;QTa(a,b[a+26>>0]|0,a+28|0);break}}}while(0);Y7a(211248,x,y,z,A)|0;p8a(211248,w<<24>>24!=0)|0;_7a(211248,r,s,t,v)|0;W7a(211248,q<<24>>24!=0)|0;r8a(211248,p<<24>>24!=0)|0;I6a(L+88|0);E7a(211248,o)|0;N7a(211248,m)|0;I7a(211248,C)|0;o=F;p=G}if(o|0)Ppb(o);if(!p){u=L;return}Ppb(p);u=L;return}function ZTa(a,b){a=a|0;b=+b;b=b<0.0?0.0:b;n[a+108>>2]=b>1.0?1.0:b;return}function _Ta(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function $Ta(a){a=a|0;var b=0,c=0;f[a+16>>2]=0;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+24>>2]=0;c=a+28|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)return;Ppb(a);return}function aUa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;e=i;h=a+24|0;d=f[h>>2]|0;if(!d){S5a(e);d=f[e>>2]|0;g=e+4|0;j=f[g>>2]|0;f[e>>2]=0;f[g>>2]=0;f[h>>2]=d;e=a+28|0;d=f[e>>2]|0;f[e>>2]=j;if(d|0){Ppb(d);d=f[g>>2]|0;if(d|0)Ppb(d)}d=f[h>>2]|0}if((P5a(d+64|0)|0)==(b|0))if((Q5a((f[h>>2]|0)+64|0)|0)==(c|0)){u=i;return}b6a(f[h>>2]|0,b,c,0,0,0)|0;u=i;return}function bUa(a){a=a|0;var b=0;f[a+24>>2]=0;b=a+28|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;Ppb(a);return}function cUa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;c=f[b>>2]|0;e=a+16|0;if(!c){f[e>>2]=0;e=a+20|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){u=g;return}Ppb(b);u=g;return}if(d6a(c,e)|0){u=g;return}X5a(d,f[b>>2]|0,0,1);b=f[d>>2]|0;c=d+4|0;h=f[c>>2]|0;f[d>>2]=0;f[c>>2]=0;f[e>>2]=b;e=a+20|0;b=f[e>>2]|0;f[e>>2]=h;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}u=g;return}function dUa(a,b){a=a|0;b=b|0;a=f[b>>2]|0;b=f[a+4>>2]|0;P7a(211248,f[a>>2]|0)|0;a=P5a(b)|0;D7a(211248,0,0,a,Q5a(b)|0)|0;return}function eUa(a,b,c){a=a|0;b=b|0;c=c|0;P7a(211248,f[f[b>>2]>>2]|0)|0;a=f[c>>2]|0;D7a(211248,0,0,f[a+16>>2]|0,f[a+20>>2]|0)|0;$5a(f[b>>2]|0,0,c,3553,0);return}function fUa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+64|0;k=o+48|0;l=o;i=o+36|0;j=o+24|0;m=a+(c*28|0)|0;if(f[m>>2]|0){u=o;return}n=f[52836]|0;switch(c|0){case 0:{g=l+16|0;f[l>>2]=31848;f[l+4>>2]=113;f[g>>2]=l;o7a(k,190192,153237,l,1);d=f[k>>2]|0;e=k+4|0;j=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[m>>2]=d;k=a+4|0;d=f[k>>2]|0;f[k>>2]=j;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}d=f[g>>2]|0;if((l|0)==(d|0))fh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)fh[f[(f[d>>2]|0)+20>>2]&2047](d);N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,153590)|0,0);break}case 2:{d=Wpb(32)|0;f[j>>2]=d;f[j+8>>2]=-2147483616;f[j+4>>2]=17;e=d;g=153343;h=e+17|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+17>>0]=0;TUa(i,j);g=l+16|0;d=Wpb(16)|0;f[d>>2]=32088;e=d+4|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[g>>2]=d;o7a(k,190192,153289,l,1);d=f[k>>2]|0;e=k+4|0;h=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[m>>2]=d;k=a+60|0;d=f[k>>2]|0;f[k>>2]=h;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}d=f[g>>2]|0;if((l|0)==(d|0))fh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)fh[f[(f[d>>2]|0)+20>>2]&2047](d);if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,190287)|0,0);bf(u7a(f[m>>2]|0,190296)|0,1);break}default:{g=l+16|0;f[l>>2]=31848;f[l+4>>2]=113;f[g>>2]=l;o7a(k,190192,153289,l,1);d=f[k>>2]|0;e=k+4|0;j=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[m>>2]=d;k=a+(c*28|0)+4|0;d=f[k>>2]|0;f[k>>2]=j;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}d=f[g>>2]|0;if((l|0)==(d|0))fh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)fh[f[(f[d>>2]|0)+20>>2]&2047](d);N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,190287)|0,0)}}l=t7a(f[m>>2]|0,190268)|0;f[a+(c*28|0)+8>>2]=l;l=u7a(f[m>>2]|0,153361)|0;f[a+(c*28|0)+20>>2]=l;l=u7a(f[m>>2]|0,153368)|0;f[a+(c*28|0)+12>>2]=l;l=u7a(f[m>>2]|0,153385)|0;f[a+(c*28|0)+16>>2]=l;m=u7a(f[m>>2]|0,193110)|0;f[a+(c*28|0)+24>>2]=m;N7a(211248,n)|0;u=o;return}function gUa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0;y=u;u=u+288|0;t=y+216|0;v=y+200|0;w=y+136|0;x=y;if(!(v6a()|0)){u=y;return}s=f[52827]|0;H6a(t);h=f[c+72>>2]|0;if(!h){if(g){h=f[(f[c+4>>2]|0)+8>>2]|0;if(!h)h=0;else h=f[h+8>>2]|0;F7a(211248,h)|0;r=0;i=10}}else{F7a(211248,f[h+8>>2]|0)|0;if(!d){r=1;i=10}else{h=f[d+72>>2]|0;if(!h){r=1;i=10}else{E7a(211248,1)|0;F7a(211248,f[h+8>>2]|0)|0;r=2;i=10}}}if((i|0)==10){g=a+84|0;h=f[g>>2]|0;if(!h){JUa(v);q=f[v>>2]|0;h=v+4|0;o=f[h>>2]|0;f[v>>2]=0;f[h>>2]=0;f[g>>2]=q;q=a+88|0;d=f[q>>2]|0;f[q>>2]=o;if(d|0){Ppb(d);h=f[h>>2]|0;if(h|0)Ppb(h)}h=f[g>>2]|0;if(!h)h=0;else i=15}else i=15;if((i|0)==15)h=f[h>>2]|0;q=f[52834]|0;I7a(211248,h)|0;d=f[52836]|0;g=b[211526]|0;r8a(211248,0)|0;i=b[211372]|0;W7a(211248,0)|0;j=f[52853]|0;k=f[52855]|0;l=f[52854]|0;m=f[52856]|0;$7a(211248,1,771)|0;o=b[211524]|0;p8a(211248,1)|0;fUa(a,r);h=f[a+(r*28|0)>>2]|0;if(!h)h=0;else h=f[h>>2]|0;N7a(211248,h)|0;h=c+4|0;c=P5a(f[h>>2]|0)|0;h=Q5a(f[h>>2]|0)|0;n[v>>2]=0.0;n[v+4>>2]=1.0/+(h|0);n[v+8>>2]=1.0/+(c|0);n[v+12>>2]=0.0;df(f[a+(r*28|0)+20>>2]|0,2,v|0);z=+n[a+108>>2];cf(f[a+(r*28|0)+16>>2]|0,+z,+(z+ +n[a+112>>2]));v=f[a+(r*28|0)+12>>2]|0;Lga(Gga(e)|0,x);n[w>>2]=+p[x>>3];n[w+4>>2]=+p[x+8>>3];n[w+8>>2]=+p[x+16>>3];n[w+12>>2]=+p[x+24>>3];n[w+16>>2]=+p[x+32>>3];n[w+20>>2]=+p[x+40>>3];n[w+24>>2]=+p[x+48>>3];n[w+28>>2]=+p[x+56>>3];n[w+32>>2]=+p[x+64>>3];n[w+36>>2]=+p[x+72>>3];n[w+40>>2]=+p[x+80>>3];n[w+44>>2]=+p[x+88>>3];n[w+48>>2]=+p[x+96>>3];n[w+52>>2]=+p[x+104>>3];n[w+56>>2]=+p[x+112>>3];n[w+60>>2]=+p[x+120>>3];lf(v|0,1,0,w|0);x=f[a+(r*28|0)+24>>2]|0;z=+n[a+104>>2];B=z*+n[a+96>>2];A=z*+n[a+100>>2];n[w>>2]=z*+n[a+92>>2];n[w+4>>2]=B;n[w+8>>2]=A;n[w+12>>2]=z;jf(x|0,1,w|0);KUa(f[a+(r*28|0)+8>>2]|0);p8a(211248,o<<24>>24!=0)|0;_7a(211248,j,k,l,m)|0;W7a(211248,i<<24>>24!=0)|0;r8a(211248,g<<24>>24!=0)|0;N7a(211248,d)|0;I7a(211248,q)|0}I6a(t);E7a(211248,s)|0;u=y;return}function hUa(a,b){a=a|0;b=+b;if(!(b<=0.0)){a=a+108|0;if(+n[a>>2]==b)a=0;else{n[a>>2]=b;a=1}}else a=0;return a|0}function iUa(a,b){a=a|0;b=+b;var c=0;c=b>0.0?(n[s>>2]=b,f[s>>2]|0):0;a=a+112|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){c=0;return c|0}f[a>>2]=c;c=1;return c|0}function jUa(a,b){a=a|0;b=b|0;var c=0;c=a+92|0;if(+n[c>>2]==+n[b>>2])if(+n[a+96>>2]==+n[b+4>>2])if(+n[a+100>>2]==+n[b+8>>2]){c=0;return c|0};f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];c=1;return c|0}function kUa(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;c=d+8|0;g=d;n[e>>2]=b;n[c>>2]=0.0;n[g>>2]=1.0;g=b<1.0?e:g;c=f[(+n[g>>2]>0.0?g:c)>>2]|0;f[e>>2]=c;a=a+104|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){g=0;u=d;return g|0}f[a>>2]=c;g=1;u=d;return g|0}function lUa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;t=u;u=u+224|0;o=t;p=t+188|0;q=t+40|0;e=t+200|0;n=t+24|0;m=t+176|0;k=a+8|0;if(f[k>>2]|0)if(f[a+16>>2]|0){u=t;return}r=f[52836]|0;f[p>>2]=0;s=p+4|0;f[s>>2]=0;f[p+8>>2]=0;l=a+56|0;c=f[l>>2]|0;if(!c){c=0;d=0}else{E7(p,c);c=f[p>>2]|0;d=f[s>>2]|0}MUa(d-c>>2,c);if(!(f[k>>2]|0)){h=q+4|0;f[q>>2]=10948;i=q+56|0;f[i>>2]=10968;Yfb(q+56|0,h);f[q+128>>2]=0;f[q+132>>2]=-1;f[q>>2]=31108;f[q+56>>2]=31128;agb(h);f[h>>2]=31144;j=q+36|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[q+52>>2]=16;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;DIa(h,o);if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);g=FIa(q,153600,19)|0;g=FIa(ngb(g,f[l>>2]|0)|0,153620,19)|0;g=ngb(g,(f[l>>2]|0)>>>1)|0;b[o>>0]=10;FIa(g,o,1)|0;EIa(n,h);TUa(e,n);g=o+16|0;d=Wpb(16)|0;f[d>>2]=32088;c=d+4|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[g>>2]=d;if((b[n+11>>0]|0)<0)Zpb(f[n>>2]|0);o7a(n,190192,153399,o,1);e=f[n>>2]|0;c=n+4|0;v=f[c>>2]|0;f[n>>2]=0;f[c>>2]=0;f[k>>2]=e;e=a+12|0;d=f[e>>2]|0;f[e>>2]=v;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}v=t7a(f[k>>2]|0,190268)|0;f[a+24>>2]=v;v=u7a(f[k>>2]|0,153686)|0;f[a+28>>2]=v;N7a(211248,f[f[k>>2]>>2]|0)|0;bf(u7a(f[k>>2]|0,154084)|0,0);v=u7a(f[k>>2]|0,153697)|0;c=f[p>>2]|0;af(v|0,(f[s>>2]|0)-c>>2|0,c|0);c=f[g>>2]|0;if((o|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[q>>2]=31108;f[i>>2]=31128;f[h>>2]=31144;if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);Teb(h);Pfb(q,31204);Oeb(i)}g=a+16|0;if(!(f[g>>2]|0)){h=q+4|0;f[q>>2]=10948;i=q+56|0;f[i>>2]=10968;Yfb(q+56|0,h);f[q+128>>2]=0;f[q+132>>2]=-1;f[q>>2]=31108;f[q+56>>2]=31128;agb(h);f[h>>2]=31144;j=q+36|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[q+52>>2]=16;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;DIa(h,o);if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);e=FIa(q,153600,19)|0;e=FIa(ngb(e,f[l>>2]|0)|0,153620,19)|0;e=FIa(ngb(e,(f[l>>2]|0)>>>1)|0,153449,17)|0;b[o>>0]=10;FIa(e,o,1)|0;EIa(n,h);TUa(m,n);e=o+16|0;v=Wpb(16)|0;f[v>>2]=32088;l=v+4|0;f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[e>>2]=v;if((b[n+11>>0]|0)<0)Zpb(f[n>>2]|0);o7a(n,190192,153399,o,1);v=f[n>>2]|0;d=n+4|0;m=f[d>>2]|0;f[n>>2]=0;f[d>>2]=0;f[g>>2]=v;v=a+20|0;c=f[v>>2]|0;f[v>>2]=m;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}v=t7a(f[g>>2]|0,190268)|0;f[a+32>>2]=v;v=u7a(f[g>>2]|0,153686)|0;f[a+36>>2]=v;v=u7a(f[g>>2]|0,153467)|0;f[a+40>>2]=v;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,154084)|0,0);v=u7a(f[g>>2]|0,153697)|0;c=f[p>>2]|0;af(v|0,(f[s>>2]|0)-c>>2|0,c|0);c=f[e>>2]|0;if((o|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[q>>2]=31108;f[i>>2]=31128;f[h>>2]=31144;if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);Teb(h);Pfb(q,31204);Oeb(i)}c=f[p>>2]|0;if(c|0){d=f[s>>2]|0;if((d|0)!=(c|0))f[s>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}N7a(211248,r)|0;u=t;return}function mUa(a,c,d,e,g){a=a|0;c=c|0;d=+d;e=e|0;g=g|0;var h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;w=u;u=u+48|0;v=w+20|0;k=w;t=a+44|0;if(+n[t>>2]<=0.0){u=w;return}if(!(f[a>>2]|0)){JUa(v);s=f[v>>2]|0;c=v+4|0;r=f[c>>2]|0;f[v>>2]=0;f[c>>2]=0;f[a>>2]=s;s=a+4|0;h=f[s>>2]|0;f[s>>2]=r;if(h|0){Ppb(h);c=f[c>>2]|0;if(c|0)Ppb(c)}}lUa(a);o=b[211526]|0;r8a(211248,0)|0;p=b[211372]|0;W7a(211248,0)|0;q=f[52834]|0;I7a(211248,f[f[a>>2]>>2]|0)|0;r=f[52836]|0;s=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;oVa(v);m=a+56|0;do if((f[m>>2]|0)>>>0>1){y=e+16|0;z=e+20|0;nVa(k,g,f[y>>2]|0,f[z>>2]|0);qVa(v,k)|0;rVa(k);i=+NUa(+n[a+52>>2],b[a+60>>0]|0,+(f[y>>2]|0),+(f[z>>2]|0));x=tVa(v)|0;c=f[52838]|0;h=f[52839]|0;P7a(211248,f[f[x>>2]>>2]|0)|0;x=f[52823]|0;k=f[52824]|0;g=f[52825]|0;l=f[52826]|0;D7a(211248,0,0,f[y>>2]|0,f[z>>2]|0)|0;N7a(211248,f[f[a+8>>2]>>2]|0)|0;F7a(211248,f[e+8>>2]|0)|0;cf(f[a+28>>2]|0,+(i/+(f[y>>2]|0)),0.0);KUa(f[a+24>>2]|0);D7a(211248,x,k,g,l)|0;if((c|0)==(h|0)){P7a(211248,c)|0;break}else{Q7a(211248,c)|0;R7a(211248,h)|0;break}}else i=1.0;while(0);c=f[52853]|0;h=f[52855]|0;k=f[52854]|0;g=f[52856]|0;$7a(211248,1,771)|0;l=b[211524]|0;p8a(211248,1)|0;N7a(211248,f[f[a+16>>2]>>2]|0)|0;if((f[m>>2]|0)>>>0>1){F7a(211248,f[(f[v>>2]|0)+8>>2]|0)|0;cf(f[a+36>>2]|0,0.0,+(i/+(f[e+20>>2]|0)))}else F7a(211248,f[e+8>>2]|0)|0;i=+n[t>>2];j=+n[a+48>>2];if(j>0.0)i=i*+OUa(0.0,j,90.0-+Q(+d)*57.295780181884766);$e(f[a+40>>2]|0,+i);KUa(f[a+32>>2]|0);p8a(211248,l<<24>>24!=0)|0;_7a(211248,c,h,k,g)|0;rVa(v);F7a(211248,s)|0;N7a(211248,r)|0;I7a(211248,q)|0;W7a(211248,p<<24>>24!=0)|0;r8a(211248,o<<24>>24!=0)|0;u=w;return}function nUa(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;c=d+8|0;g=d;n[e>>2]=b;n[c>>2]=0.0;n[g>>2]=1.0;g=b<1.0?e:g;c=f[(+n[g>>2]>0.0?g:c)>>2]|0;f[e>>2]=c;a=a+44|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){g=0;u=d;return g|0}f[a>>2]=c;g=1;u=d;return g|0}function oUa(a,b){a=a|0;b=b|0;var c=0;b=b|1;c=a+56|0;if((f[c>>2]|0)==(b|0)){a=0;return a|0}f[c>>2]=b;f[a+8>>2]=0;c=a+12|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+16>>2]=0;a=a+20|0;b=f[a>>2]|0;f[a>>2]=0;if(!b){a=1;return a|0}Ppb(b);a=1;return a|0}function pUa(a,c,d){a=a|0;c=+c;d=d|0;var e=0;if(c<=0.0){e=0;return e|0}e=a+52|0;a=a+60|0;if(+n[e>>2]==c)if((b[a>>0]|0)==d<<24>>24){e=0;return e|0}n[e>>2]=c;b[a>>0]=d;e=1;return e|0}function qUa(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;c=d+8|0;g=d;n[e>>2]=b;n[c>>2]=90.0;n[g>>2]=0.0;g=b>0.0?e:g;c=f[(+n[g>>2]<90.0?g:c)>>2]|0;f[e>>2]=c;a=a+48|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){g=0;u=d;return g|0}f[a>>2]=c;g=1;u=d;return g|0}function rUa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0;d=u;u=u+1184|0;n=d+1056|0;g=d+928|0;m=d+800|0;i=d+672|0;k=d+544|0;l=d+408|0;j=d+272|0;h=d+136|0;e=d;p[n>>3]=1.0;z=n+8|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;f[z+20>>2]=0;f[z+24>>2]=0;f[z+28>>2]=0;p[n+40>>3]=1.0;z=n+48|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;f[z+20>>2]=0;f[z+24>>2]=0;f[z+28>>2]=0;p[n+80>>3]=1.0;z=n+88|0;f[z>>2]=0;f[z+4>>2]=0;p[n+120>>3]=1.0;w=+p[b>>3];p[n+96>>3]=w;o=+p[b+8>>3];p[n+104>>3]=o;s=+p[b+16>>3];p[n+112>>3]=s;p[g>>3]=1.0;b=g+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;p[g+40>>3]=1.0;b=g+48|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;p[g+80>>3]=1.0;b=g+88|0;f[b>>2]=0;f[b+4>>2]=0;p[g+120>>3]=1.0;p[g+96>>3]=-w;p[g+104>>3]=-o;p[g+112>>3]=-s;s=+p[c+8>>3];o=+p[c+16>>3];b=!(s*s+o*o+0.0>=.001);w=+p[c>>3];y=b?-o:0.0;v=b?0.0:o;x=b?w:-s;r=+L(+(y*y+(v*v+x*x)));y=y/r;v=v/r;r=x/r;x=s*r-o*v;t=o*y-w*r;q=w*v-s*y;c=m+24|0;f[c>>2]=0;f[c+4>>2]=0;c=m+56|0;f[c>>2]=0;f[c+4>>2]=0;c=m+88|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[m+120>>3]=1.0;p[m>>3]=y;p[m+8>>3]=v;p[m+16>>3]=r;p[m+32>>3]=x;p[m+40>>3]=t;p[m+48>>3]=q;p[m+64>>3]=w;p[m+72>>3]=s;p[m+80>>3]=o;p[i>>3]=y;p[i+8>>3]=x;p[i+16>>3]=w;p[i+24>>3]=0.0;p[i+32>>3]=v;p[i+40>>3]=t;p[i+48>>3]=s;p[i+56>>3]=0.0;p[i+64>>3]=r;p[i+72>>3]=q;p[i+80>>3]=o;c=i+88|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[i+120>>3]=1.0;p[k>>3]=1.0;c=k+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[k+40>>3]=1.0;c=k+48|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;c=k+88|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[k+120>>3]=1.0;p[k+80>>3]=-1.0;f[l>>2]=n;f[l+4>>2]=m;c=l+8|0;Bga(c,l)|0;f[j>>2]=c;f[j+4>>2]=k;c=j+8|0;Bga(c,j)|0;f[h>>2]=c;f[h+4>>2]=i;c=h+8|0;Bga(c,h)|0;f[e>>2]=c;f[e+4>>2]=g;c=e+8|0;Bga(c,e)|0;p[a>>3]=+p[c>>3];p[a+8>>3]=+p[e+16>>3];p[a+16>>3]=+p[e+24>>3];p[a+24>>3]=+p[e+32>>3];p[a+32>>3]=+p[e+40>>3];p[a+40>>3]=+p[e+48>>3];p[a+48>>3]=+p[e+56>>3];p[a+56>>3]=+p[e+64>>3];p[a+64>>3]=+p[e+72>>3];p[a+72>>3]=+p[e+80>>3];p[a+80>>3]=+p[e+88>>3];p[a+88>>3]=+p[e+96>>3];p[a+96>>3]=+p[e+104>>3];p[a+104>>3]=+p[e+112>>3];p[a+112>>3]=+p[e+120>>3];p[a+120>>3]=+p[e+128>>3];u=d;return}function sUa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;b=h+24|0;e=h;g=a+8|0;if(f[g>>2]|0){u=h;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,153477,153518,e,1);i=f[b>>2]|0;c=b+4|0;j=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+12|0;b=f[i>>2]|0;f[i>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[g>>2]|0,190268)|0;f[a+56>>2]=j;j=u7a(f[g>>2]|0,193110)|0;f[a+60>>2]=j;j=u7a(f[g>>2]|0,153559)|0;f[a+64>>2]=j;j=f[52836]|0;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,153590)|0,0);N7a(211248,j)|0;u=h;return}function tUa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+208|0;n=r;o=r+188|0;p=r+40|0;h=r+176|0;l=r+24|0;m=a+16|0;if(f[m>>2]|0){u=r;return}g=a+92|0;c=f[g>>2]|0;f[o>>2]=0;q=o+4|0;f[q>>2]=0;f[o+8>>2]=0;do if(!c){d=0;e=0}else if(c>>>0>1073741823)fob(o);else{k=c<<2;d=Wpb(k)|0;f[o>>2]=d;e=d+(c<<2)|0;f[o+8>>2]=e;Krb(d|0,0,k|0)|0;f[q>>2]=e;break}while(0);MUa(e-d>>2,d);i=p+4|0;f[p>>2]=10948;j=p+56|0;f[j>>2]=10968;Yfb(p+56|0,i);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=31108;f[p+56>>2]=31128;agb(i);f[i>>2]=31144;k=p+36|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[p+52>>2]=16;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;DIa(i,n);if((b[n+11>>0]|0)<0)Zpb(f[n>>2]|0);e=FIa(p,153600,19)|0;e=FIa(ngb(e,f[g>>2]|0)|0,153620,19)|0;e=ngb(e,(f[g>>2]|0)>>>1)|0;b[n>>0]=10;FIa(e,n,1)|0;EIa(l,i);TUa(h,l);e=n+16|0;g=Wpb(16)|0;f[g>>2]=32088;d=g+4|0;f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[e>>2]=g;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);o7a(l,190192,153640,n,1);c=f[l>>2]|0;d=l+4|0;h=f[d>>2]|0;f[l>>2]=0;f[d>>2]=0;f[m>>2]=c;l=a+20|0;c=f[l>>2]|0;f[l>>2]=h;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}c=t7a(f[m>>2]|0,190268)|0;f[a+68>>2]=c;c=u7a(f[m>>2]|0,153686)|0;f[a+72>>2]=c;N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,154084)|0,0);m=u7a(f[m>>2]|0,153697)|0;c=f[o>>2]|0;af(m|0,(f[q>>2]|0)-c>>2|0,c|0);c=f[e>>2]|0;if((n|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[p>>2]=31108;f[j>>2]=31128;f[i>>2]=31144;if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);Teb(i);Pfb(p,31204);Oeb(j);c=f[o>>2]|0;if(c|0){d=f[q>>2]|0;if((d|0)!=(c|0))f[q>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}u=r;return}function uUa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;j=u;u=u+16|0;i=j;if(+n[a+88>>2]<=0.0){u=j;return}sUa(a);g=f[a>>2]|0;if(!g){JUa(i);g=f[i>>2]|0;h=i+4|0;k=f[h>>2]|0;f[i>>2]=0;f[h>>2]=0;f[a>>2]=g;i=a+4|0;g=f[i>>2]|0;f[i>>2]=k;if(g|0){Ppb(g);g=f[h>>2]|0;if(g|0)Ppb(g)}g=f[a>>2]|0}k=f[52834]|0;I7a(211248,f[g>>2]|0)|0;i=f[52836]|0;h=f[52827]|0;E7a(211248,0)|0;g=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;l=b[211526]|0;r8a(211248,0)|0;m=b[211372]|0;W7a(211248,0)|0;o=b[211525]|0;q8a(211248,1)|0;wUa(a,vUa(a,c,e)|0,d);q8a(211248,o<<24>>24!=0)|0;W7a(211248,m<<24>>24!=0)|0;r8a(211248,l<<24>>24!=0)|0;F7a(211248,g)|0;E7a(211248,h)|0;N7a(211248,i)|0;I7a(211248,k)|0;u=j;return}function vUa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0.0;l=u;u=u+16|0;i=l+12|0;j=l+8|0;h=l;if((f[a+92>>2]|0)>>>0<2){k=c;u=l;return k|0}k=a+32|0;g=f[k>>2]|0;do if(!g)e=c+16|0;else{e=c+16|0;if((f[g+16>>2]|0)==(f[e>>2]|0))if((f[g+20>>2]|0)==(f[c+20>>2]|0)){if(d)break;if(b[a+100>>0]|0)break;f[a+24>>2]=0;j=a+28|0;e=f[j>>2]|0;f[j>>2]=0;if(e|0)Ppb(e);f[a+40>>2]=0;a=a+44|0;e=f[a>>2]|0;f[a>>2]=0;if(e|0)Ppb(e);k=f[k>>2]|0;u=l;return k|0}f[a+24>>2]=0;d=a+28|0;g=f[d>>2]|0;f[d>>2]=0;if(g|0)Ppb(g);f[a+40>>2]=0;d=a+44|0;g=f[d>>2]|0;f[d>>2]=0;if(g|0)Ppb(g);f[k>>2]=0;d=a+36|0;g=f[d>>2]|0;f[d>>2]=0;if(g|0)Ppb(g);f[a+48>>2]=0;d=a+52|0;g=f[d>>2]|0;f[d>>2]=0;if(g)Ppb(g)}while(0);b[a+100>>0]=0;f[i>>2]=f[e>>2];f[j>>2]=f[c+20>>2];tUa(a);f[h>>2]=i;f[h+4>>2]=j;e=a+40|0;if(!(f[e>>2]|0))xUa(h,a+24|0,e,9728);g=a+48|0;if(!(f[g>>2]|0))xUa(h,k,g,9729);r=+n[a+96>>2]/+(f[i>>2]|0);d=f[52838]|0;h=f[52839]|0;P7a(211248,f[f[e>>2]>>2]|0)|0;q=f[52823]|0;p=f[52824]|0;o=f[52825]|0;m=f[52826]|0;D7a(211248,0,0,f[i>>2]|0,f[j>>2]|0)|0;N7a(211248,f[f[a+16>>2]>>2]|0)|0;F7a(211248,f[c+8>>2]|0)|0;j=a+72|0;cf(f[j>>2]|0,+r,0.0);e=a+68|0;KUa(f[e>>2]|0);P7a(211248,f[f[g>>2]>>2]|0)|0;F7a(211248,f[(f[a+24>>2]|0)+8>>2]|0)|0;cf(f[j>>2]|0,0.0,+r);KUa(f[e>>2]|0);e=f[k>>2]|0;D7a(211248,q,p,o,m)|0;if((d|0)==(h|0))P7a(211248,d)|0;else{Q7a(211248,d)|0;R7a(211248,h)|0}q=e;u=l;return q|0}function wUa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0.0;e=u;u=u+16|0;l=e;j=f[52853]|0;i=f[52855]|0;h=f[52854]|0;g=f[52856]|0;$7a(211248,1,771)|0;k=b[211524]|0;p8a(211248,1)|0;N7a(211248,f[f[a+8>>2]>>2]|0)|0;F7a(211248,f[c+8>>2]|0)|0;c=f[a+60>>2]|0;m=+n[a+88>>2];p=m*+n[a+80>>2];o=m*+n[a+84>>2];n[l>>2]=m*+n[a+76>>2];n[l+4>>2]=p;n[l+8>>2]=o;n[l+12>>2]=m;jf(c|0,1,l|0);lf(f[a+64>>2]|0,1,0,d|0);KUa(f[a+56>>2]|0);p8a(211248,k<<24>>24!=0)|0;_7a(211248,j,i,h,g)|0;u=e;return}function xUa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;g=i+8|0;h=i;v8a(g);x8a(g,d,0);D8a(h);j=f[h>>2]|0;e=h+4|0;k=f[e>>2]|0;f[h>>2]=0;f[e>>2]=0;f[b>>2]=j;j=b+4|0;d=f[j>>2]|0;f[j>>2]=k;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}M8a(f[b>>2]|0,6408,f[f[a>>2]>>2]|0,f[f[a+4>>2]>>2]|0,g);S5a(h);k=f[h>>2]|0;e=h+4|0;j=f[e>>2]|0;f[h>>2]=0;f[e>>2]=0;f[c>>2]=k;k=c+4|0;d=f[k>>2]|0;f[k>>2]=j;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}$5a(f[c>>2]|0,0,b,3553,0);u=i;return}function yUa(a,b){a=a|0;b=b|0;var c=0;c=a+76|0;if(+n[c>>2]==+n[b>>2])if(+n[a+80>>2]==+n[b+4>>2])if(+n[a+84>>2]==+n[b+8>>2]){c=0;return c|0};f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];c=1;return c|0}function zUa(a,b){a=a|0;b=+b;a=a+88|0;if(+n[a>>2]==b){a=0;return a|0}n[a>>2]=b;a=1;return a|0}function AUa(a,c){a=a|0;c=c|0;var d=0;c=c|1;d=a+92|0;if((f[d>>2]|0)==(c|0)){a=0;return a|0}f[d>>2]=c;b[a+100>>0]=1;f[a+16>>2]=0;a=a+20|0;c=f[a>>2]|0;f[a>>2]=0;if(!c){a=1;return a|0}Ppb(c);a=1;return a|0}function BUa(a,c){a=a|0;c=+c;var d=0;if(!(c<=0.0)){d=a+96|0;if(+n[d>>2]==c)a=0;else{n[d>>2]=c;b[a+100>>0]=1;a=1}}else a=0;return a|0}function CUa(a){a=a|0;var b=0,c=0;f[a+24>>2]=0;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+40>>2]=0;c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+32>>2]=0;c=a+36|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+48>>2]=0;c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(!b)return;Ppb(b);return}function DUa(a){a=a|0;var c=0,d=0,e=0;c=a+72|0;d=a;e=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));b[c>>0]=2;e=a+73|0;b[e>>0]=b[e>>0]&-16|1;return}function EUa(a,c){a=a|0;c=c|0;var d=0;d=a+72|0;if(!(c<<24>>24!=4?(b[d>>0]|0)!=c<<24>>24:0))return;b[d>>0]=c;d=a+73|0;b[d>>0]=b[d>>0]|1;return}function FUa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+64|0;l=n+48|0;m=n;i=n+24|0;k=n+40|0;d=c&1;e=a+73|0;g=b[e>>0]|0;if(!(g&1))if(((g&255)>>>1&1|0)==(c&1|0)){u=n;return}b[e>>0]=g&-4|d<<1&255;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;j=f6a()|0;if((f[j>>2]|0)>>>0>2)if(w6a()|0)h=6;else kqb(l,197651)|0;else h=6;if((h|0)==6)kqb(l,197637)|0;switch(b[a+72>>0]|0){case 0:{pqb(l,153707)|0;break}case 1:case 4:{pqb(l,153732)|0;break}case 2:{pqb(l,153760)|0;break}case 3:{pqb(l,153786)|0;break}default:{}}if(c)pqb(l,153813)|0;TUa(i,l);j=m+16|0;h=Wpb(16)|0;f[h>>2]=32088;c=h+4|0;f[c>>2]=f[i>>2];f[c+4>>2]=f[i+4>>2];f[c+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[j>>2]=h;o7a(k,153839,153877,m,1);h=a+8|0;i=f[k>>2]|0;c=k+4|0;g=f[c>>2]|0;f[k>>2]=0;f[c>>2]=0;f[h>>2]=i;i=a+12|0;d=f[i>>2]|0;f[i>>2]=g;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}o7a(k,153915,153954,m,1);g=a+16|0;i=f[k>>2]|0;c=k+4|0;e=f[c>>2]|0;f[k>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+20|0;d=f[i>>2]|0;f[i>>2]=e;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}o7a(k,153993,154032,m,1);e=a+24|0;c=f[k>>2]|0;d=k+4|0;i=f[d>>2]|0;f[k>>2]=0;f[d>>2]=0;f[e>>2]=c;k=a+28|0;c=f[k>>2]|0;f[k>>2]=i;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}c=t7a(f[h>>2]|0,190268)|0;f[a+48>>2]=c;c=t7a(f[g>>2]|0,190268)|0;f[a+56>>2]=c;c=t7a(f[e>>2]|0,190268)|0;f[a+64>>2]=c;c=u7a(f[h>>2]|0,154071)|0;f[a+52>>2]=c;c=u7a(f[g>>2]|0,154071)|0;f[a+60>>2]=c;c=u7a(f[e>>2]|0,154071)|0;f[a+68>>2]=c;c=f[52836]|0;N7a(211248,f[f[h>>2]>>2]|0)|0;bf(u7a(f[h>>2]|0,154084)|0,0);N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,154092)|0,0);bf(u7a(f[g>>2]|0,154100)|0,1);bf(u7a(f[g>>2]|0,154107)|0,2);N7a(211248,f[f[e>>2]>>2]|0)|0;bf(u7a(f[e>>2]|0,154084)|0,0);bf(u7a(f[e>>2]|0,190296)|0,1);N7a(211248,c)|0;c=f[j>>2]|0;if((m|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);u=n;return}function GUa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;e=g;d=a+40|0;if(!(f[d>>2]|0)){D8a(e);h=f[e>>2]|0;b=e+4|0;i=f[b>>2]|0;f[e>>2]=0;f[b>>2]=0;f[d>>2]=h;h=a+44|0;c=f[h>>2]|0;f[h>>2]=i;if(c|0){Ppb(c);b=f[b>>2]|0;if(b|0)Ppb(b)}i=Xpb(179200)|0;e$a(i,179200,154116,36002)|0;h=f[d>>2]|0;v8a(e);L8a(h,6410,160,560,6410,5121,i,e);_pb(i)}d=a+32|0;if(f[d>>2]|0){u=g;return}D8a(e);i=f[e>>2]|0;c=e+4|0;h=f[c>>2]|0;f[e>>2]=0;f[c>>2]=0;f[d>>2]=i;i=a+36|0;b=f[i>>2]|0;f[i>>2]=h;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}i=Xpb(1024)|0;e$a(i,1024,190118,74)|0;h=f[d>>2]|0;v8a(e);L8a(h,6409,64,16,6409,5121,i,e);_pb(i);u=g;return}function HUa(a){a=a|0;var b=0,c=0;f[a+32>>2]=0;c=a+36|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+40>>2]=0;c=a+44|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)return;Ppb(a);return}function IUa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;w=u;u=u+128|0;s=w+100|0;t=w+80|0;q=w+64|0;v=w;r=a+73|0;if(b[r>>0]&8){v=0;u=w;return v|0}if(!(v6a()|0)){v=0;u=w;return v|0}if(u1a()|0)if(s1a()|0)if(v1a(64,-1)|0){v=0;u=w;return v|0}if(!(b[r>>0]&4))e6a(1)|0;GUa(a);FUa(a,e);if(!(f[a>>2]|0)){JUa(s);k=f[s>>2]|0;e=s+4|0;j=f[e>>2]|0;f[s>>2]=0;f[e>>2]=0;f[a>>2]=k;k=a+4|0;g=f[k>>2]|0;f[k>>2]=j;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}}B=f[c>>2]|0;C=f[B+16>>2]|0;B=f[B+20>>2]|0;nVa(s,d,C,B);nVa(t,d,C,B);m=+(C|0);l=+(B|0);n[q>>2]=1.0/m;n[q+4>>2]=1.0/l;n[q+8>>2]=m;n[q+12>>2]=l;d=b[211526]|0;r8a(211248,0)|0;h=b[211372]|0;W7a(211248,0)|0;i=f[52834]|0;I7a(211248,f[f[a>>2]>>2]|0)|0;j=f[52836]|0;k=f[52827]|0;H6a(v);l=+n[52845];m=+n[52846];o=+n[52847];p=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;e=f[52838]|0;g=f[52839]|0;A=f[52823]|0;z=f[52824]|0;y=f[52825]|0;x=f[52826]|0;D7a(211248,0,0,C,B)|0;B=tVa(s)|0;P7a(211248,f[f[B>>2]>>2]|0)|0;Ud(16384);N7a(211248,f[f[a+8>>2]>>2]|0)|0;F7a(211248,f[(f[c>>2]|0)+8>>2]|0)|0;jf(f[a+52>>2]|0,1,q|0);KUa(f[a+48>>2]|0);B=tVa(t)|0;P7a(211248,f[f[B>>2]>>2]|0)|0;Ud(16384);N7a(211248,f[f[a+16>>2]>>2]|0)|0;F7a(211248,f[(f[s>>2]|0)+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[(f[a+40>>2]|0)+8>>2]|0)|0;E7a(211248,2)|0;F7a(211248,f[(f[a+32>>2]|0)+8>>2]|0)|0;jf(f[a+60>>2]|0,1,q|0);KUa(f[a+56>>2]|0);D7a(211248,A,z,y,x)|0;if((e|0)==(g|0))P7a(211248,e)|0;else{Q7a(211248,e)|0;R7a(211248,g)|0}N7a(211248,f[f[a+24>>2]>>2]|0)|0;E7a(211248,0)|0;F7a(211248,f[(f[c>>2]|0)+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[(f[t>>2]|0)+8>>2]|0)|0;jf(f[a+68>>2]|0,1,q|0);KUa(f[a+64>>2]|0);e=b[r>>0]|0;if(!(e&4)){b[r>>0]=e|4;C=(e6a(1)|0)==0;e=b[r>>0]|0;if(!C){e=e|8;b[r>>0]=e}}Y7a(211248,l,m,o,p)|0;I6a(v);E7a(211248,k)|0;N7a(211248,j)|0;I7a(211248,i)|0;W7a(211248,h<<24>>24!=0)|0;r8a(211248,d<<24>>24!=0)|0;rVa(t);rVa(s);C=(e&8)==0;u=w;return C|0}function JUa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;h=j+64|0;g=j;if(!(b[209728]|0))rrb(209728)|0;f[a>>2]=0;i=a+4|0;f[i>>2]=0;c=f[52771]|0;do if(!c)f[i>>2]=0;else{c=Rpb(c)|0;f[i>>2]=c;if(c|0){e=f[52770]|0;f[a>>2]=e;if(!e){Ppb(c);break}else{u=j;return}}}while(0);D5a(h,34962);c=g;d=32124;e=c+64|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));I5a(f[h>>2]|0,64,g,35044);c=f[h>>2]|0;d=h+4|0;e=f[d>>2]|0;if(e|0)Opb(e);f[52770]=c;c=f[52771]|0;f[52771]=e;if(c|0)Qpb(c);f[a>>2]=f[h>>2];f[i>>2]=f[d>>2];u=j;return}function KUa(a){a=a|0;qf(a|0,4,5126,0,0,0);qe(a|0);ke(6,0,4);je(a|0);return}function LUa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;h=j;i=1<<c;g=Xpb(i<<c)|0;d=0;c=g;do{e=0;do{l=(deb()|0)&255;k=c;c=c+1|0;b[k>>0]=l;e=e+1|0}while(e>>>0<i>>>0);d=d+1|0}while(d>>>0<i>>>0);v8a(h);x8a(h,9729,0);w8a(h,10497,0);D8a(a);L8a(f[a>>2]|0,6409,i,i,6409,5121,g,h);_pb(g);u=j;return}function MUa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;switch(a|0){case 1:{n[b>>2]=1.0;return}case 0:return;default:{f=3.328000068664551/+((a+-1|0)>>>0);d=0.0;e=-1.6640000343322754;c=0;while(1){g=+U(+(e*e*-.5));d=d+g;n[b+(c<<2)>>2]=g;c=c+1|0;if((c|0)==(a|0))break;else e=f+e}d=1.0/d;c=0;do{h=b+(c<<2)|0;n[h>>2]=d*+n[h>>2];c=c+1|0}while((c|0)!=(a|0));return}}}function NUa(a,b,c,d){a=+a;b=b|0;c=+c;d=+d;switch(b<<24>>24){case 2:{a=a*d;break}case 1:{a=a*c;break}default:{}}return +a}function OUa(a,b,c){a=+a;b=+b;c=+c;c=(c-a)/(b-a);c=c<1.0?c:1.0;c=c>0.0?c:0.0;return +(c*c*(3.0-c*2.0))}function PUa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function QUa(a){a=a|0;return}function RUa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;b=h+24|0;e=h;g=a+8|0;if(f[g>>2]|0){u=h;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,190192,190229,e,1);i=f[b>>2]|0;c=b+4|0;j=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+12|0;b=f[i>>2]|0;f[i>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[g>>2]|0,190268)|0;f[a+16>>2]=j;j=f[52836]|0;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,190287)|0,0);bf(u7a(f[g>>2]|0,190296)|0,1);N7a(211248,j)|0;u=h;return}function SUa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+64|0;q=r;RUa(a);e=f[a>>2]|0;if(!e){JUa(q);p=f[q>>2]|0;g=q+4|0;o=f[g>>2]|0;f[q>>2]=0;f[g>>2]=0;f[a>>2]=p;p=a+4|0;e=f[p>>2]|0;f[p>>2]=o;if(e|0){Ppb(e);e=f[g>>2]|0;if(e|0)Ppb(e)}e=f[a>>2]|0}p=f[52834]|0;I7a(211248,f[e>>2]|0)|0;g=f[52836]|0;N7a(211248,f[f[a+8>>2]>>2]|0)|0;h=f[52827]|0;H6a(q);i=b[211526]|0;r8a(211248,0)|0;j=b[211372]|0;W7a(211248,0)|0;k=f[52853]|0;l=f[52855]|0;m=f[52854]|0;n=f[52856]|0;$7a(211248,1,771)|0;o=b[211524]|0;p8a(211248,1)|0;E7a(211248,1)|0;e=f[d>>2]|0;if(!e)e=0;else{e=f[(f[e+4>>2]|0)+8>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0}F7a(211248,e)|0;E7a(211248,0)|0;e=f[(f[(f[c>>2]|0)+4>>2]|0)+8>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;F7a(211248,e)|0;KUa(f[a+16>>2]|0);p8a(211248,o<<24>>24!=0)|0;_7a(211248,k,l,m,n)|0;W7a(211248,j<<24>>24!=0)|0;r8a(211248,i<<24>>24!=0)|0;I6a(q);E7a(211248,h)|0;N7a(211248,g)|0;I7a(211248,p)|0;u=r;return}function TUa(a,b){a=a|0;b=b|0;cqb(a,b);return}function UUa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;if(Xcb(190304,c)|0)if(Xcb(190312,c+((cdb(c)|0)+-8)|0)|0){e=Q8a(c,d,e)|0;return e|0}if(d|0){c=b[a+11>>0]|0;if(c<<24>>24<0){c=f[a+4>>2]|0;h=Xpb(c+1|0)|0;g=f[a>>2]|0}else{h=Xpb((c&255)+1|0)|0;c=c&255;g=a}Irb(h|0,g|0,c+1|0)|0;c=f[d>>2]|0;f[d>>2]=h;if(c|0)_pb(c)}if(!e){e=1;return e|0}c=b[a+11>>0]|0;if(c<<24>>24<0)c=f[a+4>>2]|0;else c=c&255;f[e>>2]=c;e=1;return e|0}function VUa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;e=b[c>>0]|0;d=e&255;e=e<<24>>24==0;if(e)a=(d<<6)+-1640531527+(d>>>2)+(h[c+1>>0]|0)^d;else a=d;i=(a<<6)+-1640531527+(a>>>2)+(f[32188+(d<<2)>>2]&f[c+4>>2])^a;if(!e)return i|0;d=c+8|0;e=f[c+16>>2]|0;if(!e)a=0;else{g=c+8+(e<<1)|0;a=h[d>>0]|0;a=(h[c+9>>0]|0)+-1640531527+(a<<6)+(a>>>2)^a;if((e|0)!=1){e=c+10|0;while(1){c=h[e>>0]|0;a=(a<<6)+-1640531527+(a>>>2)+((h[d+3>>0]|0)+-1640531527+(c<<6)+(c>>>2)^c)^a;d=e+2|0;if((d|0)==(g|0))break;else{c=e;e=d;d=c}}}}i=(i<<6)+-1640531527+(i>>>2)+a^i;return i|0}function WUa(){var a=0;if(!(b[209736]|0))if(rrb(209736)|0){a=(((f[52814]|0)+-56|0)>>>0)/3|0;f[52772]=a>>>0<256?a:256}return f[52772]|0}function XUa(){var a=0;if(b[209744]|0)return 211092;if(!(rrb(209744)|0))return 211092;a=Wpb(20)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[a+16>>2]=1.0;f[52773]=a;return 211092}function YUa(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;H=u;u=u+288|0;C=H+24|0;q=H+280|0;E=H+268|0;F=H+256|0;G=H;B=H+120|0;v=H+108|0;r=H+96|0;s=H+84|0;t=H+72|0;w=H+60|0;x=H+48|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;D=G+16|0;f[D>>2]=0;y=B+4|0;f[B>>2]=10948;z=B+56|0;f[z>>2]=10968;Yfb(B+56|0,y);f[B+128>>2]=0;f[B+132>>2]=-1;f[B>>2]=31108;f[B+56>>2]=31128;agb(y);f[y>>2]=31144;A=B+36|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[A+12>>2]=0;f[B+52>>2]=16;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;DIa(y,C);if((b[C+11>>0]|0)<0)Zpb(f[C>>2]|0);if(q1a()|0){p=FIa(B,190321,18)|0;_fb(C,p+(f[(f[p>>2]|0)+-12>>2]|0)|0);o=Chb(C,213216)|0;o=Pg[f[(f[o>>2]|0)+28>>2]&255](o,10)|0;Dhb(C);rgb(p,o)|0;dgb(p)|0}else if(t1a()|0){p=FIa(B,190340,25)|0;_fb(C,p+(f[(f[p>>2]|0)+-12>>2]|0)|0);o=Chb(C,213216)|0;o=Pg[f[(f[o>>2]|0)+28>>2]&255](o,10)|0;Dhb(C);rgb(p,o)|0;dgb(p)|0}if(z6a()|0)FIa(B,190366,23)|0;if(y6a()|0)FIa(B,190390,15)|0;h=c+4|0;if(!(f[h>>2]&4)){a=FIa(B,190429,22)|0;if(!(b[209736]|0))if(rrb(209736)|0){p=(((f[52814]|0)+-56|0)>>>0)/3|0;f[52772]=p>>>0<256?p:256}p=ngb(a,f[52772]|0)|0;b[C>>0]=10;FIa(p,C,1)|0}else FIa(B,190406,22)|0;a=f[h>>2]|0;if(a&1024){FIa(B,190452,17)|0;a=f[h>>2]|0}if(a&8){FIa(B,190470,24)|0;a=f[h>>2]|0}if(a&2048|0)FIa(ngb(FIa(ngb(FIa(B,190495,32)|0,6)|0,190528,43)|0,4)|0,190572,27)|0;switch(b[c>>0]|0){case 1:case 2:{kqb(E,190600)|0;kqb(F,190634)|0;if((b[c>>0]|0)==1)FIa(B,190668,24)|0;break}case 0:{if(!(b[c+1>>0]|0)){kqb(E,190693)|0;kqb(F,190727)|0}break}default:{}}a=f[h>>2]|0;if(a&1){FIa(B,190761,24)|0;a=f[h>>2]|0}if(a&16){FIa(B,190786,21)|0;a=f[h>>2]|0;if(a&32){FIa(B,190808,9)|0;a=f[h>>2]|0}if(a&64|0)FIa(B,190818,10)|0;FIa(B,190829,2)|0;a=f[h>>2]|0;if(a&128){FIa(B,190832,26)|0;a=f[h>>2]|0}}if(a&256){FIa(B,190859,22)|0;a=f[h>>2]|0}if(a&2){FIa(B,190882,20)|0;a=f[h>>2]|0}if(a&512){FIa(B,190903,27)|0;a=f[h>>2]|0}if(a&4096){FIa(B,190931,18)|0;a=f[h>>2]|0;if(a&8192){FIa(B,190950,23)|0;a=f[h>>2]|0}if(a&16384){FIa(B,190974,22)|0;a=f[h>>2]|0}if(a&32768){FIa(B,190997,24)|0;a=f[h>>2]|0}}if(a&65536|0){FIa(B,191022,24)|0;if(f[h>>2]&131072|0)FIa(B,191047,31)|0}j=v+8|0;f[j>>2]=0;k=r+8|0;f[k>>2]=0;l=s+8|0;f[l>>2]=0;m=t+8|0;f[m>>2]=0;n=f[c+16>>2]|0;if(!n){h=0;a=0}else{h=0;o=0;a=0;p=0;do{d[v+(h<<1)>>1]=p;h=(f[j>>2]|0)+1|0;f[j>>2]=h;i=b[c+8+(o<<1)+1>>0]&1;if(i<<24>>24){d[r+(a<<1)>>1]=p;a=(f[k>>2]|0)+1|0;f[k>>2]=a}if(!(b[c+8+(o<<1)>>0]|0)){I=i<<24>>24!=0;o=I?m:l;i=f[o>>2]|0;d[(I?t:s)+(i<<1)>>1]=p;f[o>>2]=i+1}p=p+1<<16>>16;o=p&65535}while(n>>>0>o>>>0)}I=ngb(FIa(B,191079,23)|0,h)|0;b[C>>0]=10;FIa(I,C,1)|0;a=ngb(FIa(B,191103,30)|0,a)|0;b[C>>0]=10;FIa(a,C,1)|0;ZUa(B,191134,v);ZUa(B,191144,r);ZUa(B,191161,s);ZUa(B,191181,t);EIa(x,y);TUa(w,x);t=f[w>>2]|0;v=w+4|0;f[q>>2]=f[v>>2];d[q+4>>1]=d[v+4>>1]|0;b[q+6>>0]=b[v+6>>0]|0;v=b[w+11>>0]|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;a=C+16|0;I=Wpb(16)|0;f[I>>2]=32088;f[I+4>>2]=t;t=I+8|0;f[t>>2]=f[q>>2];d[t+4>>1]=d[q+4>>1]|0;b[t+6>>0]=b[q+6>>0]|0;b[I+15>>0]=v;f[q>>2]=0;d[q+4>>1]=0;b[q+6>>0]=0;f[a>>2]=I;_Ua(C,G);a=f[a>>2]|0;if((C|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);if((b[w+11>>0]|0)<0)Zpb(f[w>>2]|0);if((b[x+11>>0]|0)<0)Zpb(f[x>>2]|0);f[B>>2]=31108;f[z>>2]=31128;f[y>>2]=31144;if((b[A+11>>0]|0)<0)Zpb(f[A>>2]|0);Teb(y);Pfb(B,31204);Oeb(z);j=E+11|0;N6a(C,35633,(b[j>>0]|0)<0?f[E>>2]|0:E,G,0);I=f[C>>2]|0;h=C+4|0;B=f[h>>2]|0;f[C>>2]=0;f[h>>2]=0;f[e>>2]=I;I=e+4|0;a=f[I>>2]|0;f[I>>2]=B;do if(a|0){Ppb(a);a=f[h>>2]|0;if(!a)break;Ppb(a)}while(0);i=F+11|0;N6a(C,35632,(b[i>>0]|0)<0?f[F>>2]|0:F,G,0);I=f[C>>2]|0;h=C+4|0;e=f[h>>2]|0;f[C>>2]=0;f[h>>2]=0;f[g>>2]=I;I=g+4|0;a=f[I>>2]|0;f[I>>2]=e;do if(a|0){Ppb(a);a=f[h>>2]|0;if(!a)break;Ppb(a)}while(0);a=f[D>>2]|0;do if((G|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else{if(!a)break;fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);if((b[i>>0]|0)<0)Zpb(f[F>>2]|0);if((b[j>>0]|0)>=0){u=H;return}Zpb(f[E>>2]|0);u=H;return}function ZUa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;g=e+8|0;if(!(f[g>>2]|0)){u=i;return}j=FIa(a,191202,8)|0;FIa(j,c,cdb(c)|0)|0;g=f[g>>2]|0;c=e+(g<<1)|0;if(g|0)do{j=FIa(a,191211,10)|0;j=lgb(j,d[e>>1]|0)|0;b[h>>0]=41;FIa(j,h,1)|0;e=e+2|0}while((e|0)!=(c|0));_fb(h,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);j=Chb(h,213216)|0;j=Pg[f[(f[j>>2]|0)+28>>2]&255](j,10)|0;Dhb(h);rgb(a,j)|0;dgb(a)|0;u=i;return}function _Ua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i;if((b|0)==(a|0)){u=i;return}e=a+16|0;d=f[e>>2]|0;g=d;h=b+16|0;if((d|0)==(a|0))if((f[h>>2]|0)==(b|0)){nh[f[(f[d>>2]|0)+12>>2]&1023](d,c);g=f[e>>2]|0;fh[f[(f[g>>2]|0)+16>>2]&2047](g);f[e>>2]=0;g=f[h>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,a);g=f[h>>2]|0;fh[f[(f[g>>2]|0)+16>>2]&2047](g);f[h>>2]=0;f[e>>2]=a;nh[f[(f[c>>2]|0)+12>>2]&1023](c,b);fh[f[(f[c>>2]|0)+16>>2]&2047](c);f[h>>2]=b;u=i;return}else{nh[f[(f[d>>2]|0)+12>>2]&1023](d,b);h=f[e>>2]|0;fh[f[(f[h>>2]|0)+16>>2]&2047](h);h=b+16|0;f[e>>2]=f[h>>2];f[h>>2]=b;u=i;return}else{c=f[h>>2]|0;if((b|0)==(c|0)){nh[f[(f[c>>2]|0)+12>>2]&1023](c,a);g=f[h>>2]|0;fh[f[(f[g>>2]|0)+16>>2]&2047](g);f[h>>2]=f[e>>2];f[e>>2]=a;u=i;return}else{f[e>>2]=c;f[h>>2]=g;u=i;return}}}function $Ua(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;u2a(a);j7a(h);b=f[a>>2]|0;a=f[h>>2]|0;e=h+4|0;g=f[e>>2]|0;if(g|0)Npb(g);f[b+184>>2]=a;a=b+188|0;b=f[a>>2]|0;f[a>>2]=g;if(b|0)Ppb(b);q7a(f[h>>2]|0,c);q7a(f[h>>2]|0,d);r7a(f[h>>2]|0,0);b=f[e>>2]|0;if(!b){u=i;return}Ppb(b);u=i;return}function aVa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;o=s+8|0;p=s+4|0;q=s;r=w7a(f[(f[c>>2]|0)+184>>2]|0)|0;l=y7a(f[(f[c>>2]|0)+184>>2]|0)|0;m=Xpb(l+2|0)|0;if(!r){_pb(m);u=s;return}n=m+3|0;k=d+16|0;j=0;do{f[o>>2]=0;f[p>>2]=0;f[q>>2]=0;A7a(f[(f[c>>2]|0)+184>>2]|0,j,l,o,p,q,m);a=f[o>>2]|0;a:do if((a|0)>=4)if(!(ndb(m,191222,3)|0)){if((b[m+(a+-1)>>0]|0)==93){i=m+(a+-2)|0;if(!(Xcb(n,191226)|0)){i=u7a(f[(f[c>>2]|0)+184>>2]|0,m)|0;f[(f[c>>2]|0)+52>>2]=i;break}if(!(Xcb(n,191248)|0)){i=u7a(f[(f[c>>2]|0)+184>>2]|0,m)|0;f[(f[c>>2]|0)+108>>2]=i;break}if(!(Xcb(n,191270)|0)){g=f[k>>2]|0;h=f[p>>2]|0;h=(g|0)<(h|0)?g:h;if((h|0)>0)g=0;else break;while(1){if(!g)a=0;else{d=g;a=0;while(1){a=a+1|0;if(d>>>0<10)break;else d=(d>>>0)/10|0}}e=(a+-1|0)>>>0>2;a=e?1:a;t=i+a+1|0;d=t+-1|0;b[t>>0]=0;b[d>>0]=93;if(a|0){e=e?0:g;do{d=d+-1|0;a=a+-1|0;t=e;e=(e>>>0)/10|0;t=t+48+(X(e,-10)|0)&255;b[d>>0]=t}while((a|0)!=0)}t=u7a(f[(f[c>>2]|0)+184>>2]|0,m)|0;f[(f[c>>2]|0)+36+(g+29<<2)>>2]=t;g=g+1|0;if((g|0)>=(h|0))break a}}if(Xcb(n,191292)|0)break;t=f[k>>2]|0;h=f[p>>2]|0;h=(t|0)<(h|0)?t:h;if((h|0)>0)g=0;else break;while(1){if(!g)a=0;else{d=g;a=0;while(1){a=a+1|0;if(d>>>0<10)break;else d=(d>>>0)/10|0}}e=(a+-1|0)>>>0>2;a=e?1:a;t=i+a+1|0;d=t+-1|0;b[t>>0]=0;b[d>>0]=93;if(a|0){e=e?0:g;do{d=d+-1|0;a=a+-1|0;t=e;e=(e>>>0)/10|0;t=t+48+(X(e,-10)|0)&255;b[d>>0]=t}while((a|0)!=0)}t=u7a(f[(f[c>>2]|0)+184>>2]|0,m)|0;f[(f[c>>2]|0)+36+(g+33<<2)>>2]=t;g=g+1|0;if((g|0)>=(h|0))break a}}d=u7a(f[(f[c>>2]|0)+184>>2]|0,m)|0;do if(!(Xcb(n,191311)|0))a=0;else if(!(Xcb(n,191333)|0))a=1;else if(!(Xcb(n,191349)|0))a=2;else if(!(Xcb(n,191366)|0))a=3;else if(!(Xcb(n,191384)|0))a=5;else if(!(Xcb(n,191404)|0))a=15;else if(!(Xcb(n,191428)|0))a=6;else if(!(Xcb(n,191451)|0))a=7;else if(!(Xcb(n,191459)|0))a=8;else if(!(Xcb(n,191472)|0))a=9;else if(!(Xcb(n,191490)|0))a=10;else if(!(Xcb(n,191501)|0))a=11;else if(!(Xcb(n,191528)|0))a=12;else{if(!(Xcb(n,191547)|0)){a=13;break}if(!(Xcb(n,191560)|0)){a=14;break}if(!(Xcb(n,191572)|0)){a=16;break}if(!(Xcb(n,191596)|0)){a=17;break}if(!(Xcb(n,191616)|0)){a=19;break}if(!(Xcb(n,191626)|0)){a=20;break}if(!(Xcb(n,191641)|0)){a=21;break}if(!(Xcb(n,191665)|0)){a=22;break}if(!(Xcb(n,191689)|0)){a=23;break}if(!(Xcb(n,191708)|0)){a=24;break}if(!(Xcb(n,191722)|0)){a=25;break}if(!(Xcb(n,191739)|0)){a=26;break}if(!(Xcb(n,191770)|0)){a=27;break}if(!(Xcb(n,191787)|0))a=28;else break a}while(0);f[(f[c>>2]|0)+36+(a<<2)>>2]=d}while(0);j=j+1|0}while((j|0)!=(r|0));_pb(m);u=s;return}function bVa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;i=m+8|0;j=m+4|0;k=m;l=v7a(f[(f[b>>2]|0)+184>>2]|0)|0;d=x7a(f[(f[b>>2]|0)+184>>2]|0)|0;e=Xpb(d)|0;if(!l){_pb(e);u=m;return}g=e+3|0;a=0;do{f[i>>2]=0;f[j>>2]=0;f[k>>2]=0;z7a(f[(f[b>>2]|0)+184>>2]|0,a,d,i,j,k,e);do if((f[i>>2]|0)>=4)if(!(ndb(e,191222,3)|0)){h=t7a(f[(f[b>>2]|0)+184>>2]|0,e)|0;if(!(Xcb(g,191814)|0))c=0;else if(!(Xcb(g,191825)|0))c=1;else if(!(Xcb(g,191836)|0))c=2;else if(!(Xcb(g,191851)|0))c=5;else if(!(Xcb(g,191867)|0))c=6;else if(!(Xcb(g,191883)|0))c=7;else if(!(Xcb(g,191899)|0))c=3;else if(!(Xcb(g,191917)|0))c=4;else if(!(Xcb(g,191936)|0))c=8;else break;f[(f[b>>2]|0)+(c<<2)>>2]=h}while(0);a=a+1|0}while((a|0)!=(l|0));_pb(e);u=m;return}function cVa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;dVa(i,c,d,e);g=f[i>>2]|0;if(!g){f[a>>2]=0;e=i+4|0;c=a+4|0}else{c=g;h=g+192|0;e=b[h>>0]|0;do if(!(e&3)){b[h>>0]=e|1;if(s7a(f[g+184>>2]|0)|0){aVa(0,i,d);bVa(0,i,0);c=f[i>>2]|0;d=c+192|0;b[d>>0]=b[d>>0]|2;break}else{c=f[i>>2]|0;break}}while(0);f[a>>2]=c;c=i+4|0;f[a+4>>2]=f[c>>2];f[i>>2]=0;e=c}f[c>>2]=0;c=f[e>>2]|0;if(!c){u=j;return}Ppb(c);u=j;return}function dVa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=0;t=u;u=u+1280|0;g=f[c>>2]|0;r=VUa(0,d)|0;p=f[g+4>>2]|0;a:do if(p|0){if(!((p+-1|0)&p))q=(p+-1|0)&r;else if(r>>>0<p>>>0)q=r;else q=(r>>>0)%(p>>>0)|0;g=f[(f[g>>2]|0)+(q<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){n=b[d>>0]|0;l=b[d+1>>0]|0;o=f[d+4>>2]|0;k=f[d+16>>2]|0;b:{h=1;if(h)if(!((p+-1|0)&p)){if(n<<24>>24)while(1){h=f[g+4>>2]|0;if(!((h|0)==(r|0)|(h&(p+-1|0)|0)==(q|0)))break a;if((h|0)==(r|0))if((b[g+8>>0]|0)==n<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2])){m=g;break b}g=f[g>>2]|0;if(!g)break a}if(!k)while(1){h=f[g+4>>2]|0;if(!((h|0)==(r|0)|(h&(p+-1|0)|0)==(q|0)))break a;if((h|0)==(r|0)){h=g+8|0;if(!(b[h>>0]|0))if((b[h+1>>0]|0)==l<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2]))if(!(f[g+24>>2]|0)){m=g;break b}}g=f[g>>2]|0;if(!g)break a}while(1){h=f[g+4>>2]|0;if(!((h|0)==(r|0)|(h&(p+-1|0)|0)==(q|0)))break a;c:do if((h|0)==(r|0)){j=g+8|0;if(!(b[j>>0]|0))if((b[j+1>>0]|0)==l<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2]))if((f[g+24>>2]|0)==(k|0)){h=d+8|0;i=g+16|0;while(1){if((b[i>>0]|0)!=(b[h>>0]|0))break c;if((b[i+1>>0]|0)!=(b[h+1>>0]|0))break c;i=i+2|0;if((i|0)==(j+8+(k<<1)|0|0)){i=g;s=65;break b}else h=h+2|0}}}while(0);g=f[g>>2]|0;if(!g)break a}}else h=1;if(h)if(1){if(n<<24>>24)while(1){h=f[g+4>>2]|0;if((h|0)==(r|0)){if((b[g+8>>0]|0)==n<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2])){m=g;break b}}else{if(h>>>0>=p>>>0)h=(h>>>0)%(p>>>0)|0;if((h|0)!=(q|0))break a}g=f[g>>2]|0;if(!g)break a}if(!k)while(1){h=f[g+4>>2]|0;if((h|0)==(r|0)){h=g+8|0;if(!(b[h>>0]|0))if((b[h+1>>0]|0)==l<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2]))if(!(f[g+24>>2]|0)){m=g;break b}}else{if(h>>>0>=p>>>0)h=(h>>>0)%(p>>>0)|0;if((h|0)!=(q|0))break a}g=f[g>>2]|0;if(!g)break a}while(1){h=f[g+4>>2]|0;d:do if((h|0)==(r|0)){j=g+8|0;if(!(b[j>>0]|0))if((b[j+1>>0]|0)==l<<24>>24)if(!((f[g+12>>2]^o)&f[(32188+((n&255)<<2)|0)>>2]))if((f[g+24>>2]|0)==(k|0)){h=d+8|0;i=g+16|0;while(1){if((b[i>>0]|0)!=(b[h>>0]|0))break d;if((b[i+1>>0]|0)!=(b[h+1>>0]|0))break d;i=i+2|0;if((i|0)==(j+8+(k<<1)|0|0)){i=g;s=65;break b}else h=h+2|0}}}else{if(h>>>0>=p>>>0)h=(h>>>0)%(p>>>0)|0;if((h|0)!=(q|0))break a}while(0);g=f[g>>2]|0;if(!g)break a}}}if((s|0)==65)if(!i)break;else m=i;if(e){g=f[m+44>>2]|0;f[a>>2]=g;h=f[m+48>>2]|0;f[(a+4|0)>>2]=h;if(h){Npb(h);g=f[a>>2]|0}if(g|0){u=t;return}g=f[(a+4|0)>>2]|0;if(g|0)Ppb(g)}g=f[m+28>>2]|0;f[(t+16|0)>>2]=g;h=f[m+32>>2]|0;f[((t+16|0)+4|0)>>2]=h;if(h)Npb(h);i=f[m+36>>2]|0;f[(t+8|0)>>2]=i;j=f[m+40>>2]|0;f[((t+8|0)+4|0)>>2]=j;if(j)Npb(j);if(g|0)if(!((f[g>>2]|0)==0|(i|0)==0))if(f[i>>2]|0){$Ua(a,0,t+16|0,t+8|0);if(!e){g=f[((t+8|0)+4|0)>>2]|0;if(g|0)Ppb(g);g=f[((t+16|0)+4|0)>>2]|0;if(g|0)Ppb(g);u=t;return}g=f[a>>2]|0;h=f[a+4>>2]|0;if(h|0)Npb(h);f[m+44>>2]=g;a=m+48|0;g=f[a>>2]|0;f[a>>2]=h;if(g|0)Ppb(g);g=f[((t+8|0)+4|0)>>2]|0;if(g|0)Ppb(g);g=f[((t+16|0)+4|0)>>2]|0;if(g|0)Ppb(g);u=t;return}if(j)Ppb(j);if(h)Ppb(h)}}}while(0);f[(t+16|0)>>2]=0;f[((t+16|0)+4|0)>>2]=0;f[(t+8|0)>>2]=0;f[((t+8|0)+4|0)>>2]=0;YUa(0,d,t+16|0,t+8|0);h=f[(t+16|0)>>2]|0;g=1;if(g){g=0;if(!h)s=99;else g=1}if(g)if(1){g=1;if(g){g=0;if(!(f[h>>2]|0))s=99;else g=1}if(g)if(1){h=f[(t+8|0)>>2]|0;g=1;if(g){g=0;if(!h)s=99;else g=1}if(g)if(1){g=1;if(g){g=0;if(!(f[h>>2]|0))s=99;else g=1}if(g)if(1){$Ua(t,0,t+16|0,t+8|0);q=f[c>>2]|0;r=VUa(0,d)|0;c=f[(q+4|0)>>2]|0;f[t+48>>2]=a;f[t+64>>2]=d;f[t+72>>2]=e;f[t+560>>2]=q;f[t+568>>2]=r;f[t+584>>2]=c;f[t+1136>>2]=s;f[t+1208>>2]=0;f[t+1212>>2]=0;GWa(t);s=f[t+1136>>2]|0}}}}if((s|0)==99){f[a>>2]=0;f[a+4>>2]=0}g=f[((t+8|0)+4|0)>>2]|0;if(g|0)Ppb(g);g=f[((t+16|0)+4|0)>>2]|0;if(g|0)Ppb(g);u=t;return}function eVa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Zpb(d);f[a+4>>2]=0;return}if(c>>>0>1073741823)ud();w=Wpb(c<<2)|0;d=f[a>>2]|0;f[a>>2]=w;if(d|0)Zpb(d);f[a+4>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;v=c+-1|0;w=(v&c|0)==0;if(w)d=d&v;else if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{g=i;h=e;e=i}a:while(1){u=g;g=h;t=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(w)g=g&v;else if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;i=f[e>>2]|0;c:do if(!i)h=e;else{n=e+8|0;j=b[n>>0]|0;l=j<<24>>24==0;o=n+1|0;r=e+12|0;s=32188+((j&255)<<2)|0;m=l^1;p=e+24|0;q=e+16|0;if(l)h=e;else{h=e;while(1){if(j<<24>>24!=(b[i+8>>0]|0))break c;if((f[i+12>>2]^f[r>>2])&f[s>>2]|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{q=i;i=h;h=q}}}while(1){j=i+8|0;if(b[j>>0]|0)break c;if((b[o>>0]|0)!=(b[j+1>>0]|0))break c;j=((f[i+12>>2]^f[r>>2])&f[s>>2]|0)!=0;do if(j|m){if(j)break c}else{j=f[p>>2]|0;if((j|0)!=(f[i+24>>2]|0))break c;l=n+8+(j<<1)|0;if(!j)break;j=i+16|0;k=q;while(1){if((b[k>>0]|0)!=(b[j>>0]|0))break c;if((b[k+1>>0]|0)!=(b[j+1>>0]|0))break c;k=k+2|0;if((k|0)==(l|0))break;else j=j+2|0}}while(0);h=f[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);f[t>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[u>>2]|0;if(!e){d=44;break a}}g=f[e>>2]|0;if(!g){d=44;break a}else{u=e;t=e}}f[h>>2]=t;h=f[e>>2]|0;if(!h){d=44;break}else{d=g;g=e}}if((d|0)==44)return}function fVa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+64|0;q=r+48|0;n=r+28|0;p=r;i=f[c>>2]|0;o=c+4|0;m=f[o>>2]|0;a:do if((i|0)!=(m|0)){l=i;while(1){i=l+24|0;j=b[i>>0]|0;if(j&2)if((f[l+16>>2]|0)==(g|0))if((f[l+20>>2]|0)==(h|0)){k=f[l>>2]|0;if((f[k+16>>2]|0)==(d|0))if((f[k+20>>2]|0)==(e|0))break}i=l+28|0;if((i|0)==(m|0))break a;else l=i}b[i>>0]=j&-4|1;f[a>>2]=k;i=f[l+4>>2]|0;f[a+4>>2]=i;if(i|0)Npb(i);f[a+8>>2]=f[l+8>>2];i=f[l+12>>2]|0;f[a+12>>2]=i;if(i|0)Npb(i);f[a+16>>2]=c;u=r;return}while(0);D8a(q);v8a(n);x8a(n,h,0);M8a(f[q>>2]|0,g,d,e,n);f[p>>2]=f[q>>2];d=p+4|0;e=q+4|0;i=f[e>>2]|0;f[d>>2]=i;if(!i){i=p+24|0;j=1}else{Npb(i);j=p+24|0;i=j;j=b[j>>0]&-4|1}k=p+8|0;f[k>>2]=0;l=p+12|0;f[l>>2]=0;m=p+16|0;f[m>>2]=g;f[p+20>>2]=h;b[i>>0]=j;i=f[o>>2]|0;if(i>>>0<(f[c+8>>2]|0)>>>0){f[i>>2]=f[p>>2];f[i+4>>2]=f[d>>2];f[p>>2]=0;f[d>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[k>>2]=0;f[l>>2]=0;p=i+16|0;f[p>>2]=f[m>>2];f[p+4>>2]=f[m+4>>2];b[p+8>>0]=b[m+8>>0]|0;f[o>>2]=(f[o>>2]|0)+28}else{gVa(c,p);i=f[l>>2]|0;if(i|0)Ppb(i)}i=f[d>>2]|0;if(i|0)Ppb(i);f[a>>2]=f[q>>2];i=f[e>>2]|0;f[a+4>>2]=i;if(!i)i=0;else{Npb(i);i=f[e>>2]|0}f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=c;if(i|0)Ppb(i);u=r;return}function gVa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=a+4|0;k=f[o>>2]|0;d=f[a>>2]|0;j=(k-d|0)/28|0;e=j+1|0;m=d;g=k;if(e>>>0>153391689)fob(a);n=a+8|0;l=((f[n>>2]|0)-d|0)/28|0;h=l<<1;h=l>>>0<76695844?(h>>>0<e>>>0?e:h):153391689;do if(!h)i=0;else if(h>>>0>153391689)ud();else{i=Wpb(h*28|0)|0;break}while(0);e=i+(j*28|0)|0;d=e;l=i+(h*28|0)|0;f[e>>2]=f[c>>2];p=c+4|0;f[i+(j*28|0)+4>>2]=f[p>>2];f[c>>2]=0;f[p>>2]=0;p=c+8|0;f[i+(j*28|0)+8>>2]=f[p>>2];h=c+12|0;f[i+(j*28|0)+12>>2]=f[h>>2];f[p>>2]=0;f[h>>2]=0;j=i+(j*28|0)+16|0;c=c+16|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];b[j+8>>0]=b[c+8>>0]|0;c=e+28|0;if((g|0)==(m|0))h=k;else{do{k=g;g=g+-28|0;f[e+-28>>2]=f[g>>2];j=k+-24|0;f[e+-24>>2]=f[j>>2];f[g>>2]=0;f[j>>2]=0;j=k+-20|0;f[e+-20>>2]=f[j>>2];p=k+-16|0;f[e+-16>>2]=f[p>>2];f[j>>2]=0;f[p>>2]=0;p=e+-12|0;k=k+-12|0;f[p>>2]=f[k>>2];f[p+4>>2]=f[k+4>>2];b[p+8>>0]=b[k+8>>0]|0;e=d+-28|0;d=e}while((g|0)!=(m|0));h=f[a>>2]|0}f[a>>2]=d;e=f[o>>2]|0;f[o>>2]=c;f[n>>2]=l;g=h;if((e|0)!=(g|0))do{d=f[e+-16>>2]|0;if(d|0)Ppb(d);d=f[e+-24>>2]|0;e=e+-28|0;if(d|0)Ppb(d)}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function hVa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+16|0;l=o+12|0;k=o+8|0;m=o+4|0;n=o;d=f[a>>2]|0;j=a+4|0;i=f[j>>2]|0;c=i;a:do if((d|0)==(i|0))e=4;else while(1){if(!(b[d+24>>0]&1)){e=4;break a}d=d+28|0;if((d|0)==(i|0)){d=c;break}}while(0);if((e|0)==4){e=d;if((d|0)==(i|0))d=e;else{c=e;d=e;b:while(1){do{g=c;e=g+28|0;c=e;if((e|0)==(i|0))break b}while(!(b[g+52>>0]&1));h=d;q=f[e>>2]|0;r=g+32|0;p=f[r>>2]|0;f[e>>2]=0;f[r>>2]=0;f[d>>2]=q;e=h+4|0;d=f[e>>2]|0;f[e>>2]=p;if(d|0)Ppb(d);p=g+36|0;r=f[p>>2]|0;d=g+40|0;q=f[d>>2]|0;f[p>>2]=0;f[d>>2]=0;f[h+8>>2]=r;r=h+12|0;d=f[r>>2]|0;f[r>>2]=q;if(d|0)Ppb(d);d=h+16|0;r=g+44|0;f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];b[d+8>>0]=b[r+8>>0]|0;d=h+28|0}c=f[j>>2]|0}}f[m>>2]=d;f[n>>2]=c;f[k>>2]=f[m>>2];f[l>>2]=f[n>>2];iVa(a,k,l)|0;u=o;return}function iVa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=f[a>>2]|0;e=f[c>>2]|0;h=h+(((e-h|0)/28|0)*28|0)|0;c=f[d>>2]|0;if((c|0)==(e|0))return h|0;c=h+(((c-e|0)/28|0)*28|0)|0;g=a+4|0;a=f[g>>2]|0;if((c|0)==(a|0))e=h;else{e=h;do{i=f[c>>2]|0;d=c+4|0;j=f[d>>2]|0;f[c>>2]=0;f[d>>2]=0;f[e>>2]=i;i=e+4|0;d=f[i>>2]|0;f[i>>2]=j;if(d|0)Ppb(d);k=c+8|0;j=f[k>>2]|0;d=c+12|0;i=f[d>>2]|0;f[k>>2]=0;f[d>>2]=0;f[e+8>>2]=j;j=e+12|0;d=f[j>>2]|0;f[j>>2]=i;if(d|0)Ppb(d);k=e+16|0;j=c+16|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];b[k+8>>0]=b[j+8>>0]|0;c=c+28|0;e=e+28|0}while((c|0)!=(a|0));c=f[g>>2]|0}if((c|0)==(e|0))return h|0;do{f[g>>2]=c+-28;d=f[c+-16>>2]|0;if(d|0)Ppb(d);c=f[c+-24>>2]|0;if(c|0)Ppb(c);c=f[g>>2]|0}while((c|0)!=(e|0));return h|0}function jVa(a){a=a|0;var b=0;b=Wpb(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[a>>2]=b;return}function kVa(a){a=a|0;var b=0,c=0,d=0,e=0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;a=f[e>>2]|0;if(a|0){d=e+4|0;b=f[d>>2]|0;if((b|0)!=(a|0)){do{f[d>>2]=b+-28;c=f[b+-16>>2]|0;if(c|0)Ppb(c);b=f[b+-24>>2]|0;if(b|0)Ppb(b);b=f[d>>2]|0}while((b|0)!=(a|0));a=f[e>>2]|0}Zpb(a)}Zpb(e);return}function lVa(a){a=a|0;var c=0,d=0,e=0;c=f[a>>2]|0;a=f[c>>2]|0;c=f[c+4>>2]|0;if((a|0)==(c|0))return;do{d=a+24|0;e=b[d>>0]|0;b[d>>0]=((e&255)>>>1&1|e&-2)^1;a=a+28|0}while((a|0)!=(c|0));return}function mVa(a){a=a|0;hVa(f[a>>2]|0);return}function nVa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fVa(a,f[b>>2]|0,c,d,6408,9729);return}function oVa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;return}function pVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=f[b>>2];e=b+4|0;c=f[e>>2]|0;f[a+4>>2]=c;if(c|0)Npb(c);f[a+8>>2]=0;f[a+12>>2]=0;d=b+16|0;f[a+16>>2]=f[d>>2];f[b>>2]=0;c=f[e>>2]|0;f[e>>2]=0;if(!c){f[d>>2]=0;return}Ppb(c);f[d>>2]=0;return}function qVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;e=b+4|0;d=f[e>>2]|0;if(d|0)Npb(d);f[a>>2]=c;g=a+4|0;c=f[g>>2]|0;f[g>>2]=d;if(c|0)Ppb(c);d=b+16|0;f[a+16>>2]=f[d>>2];f[b>>2]=0;c=f[e>>2]|0;f[e>>2]=0;if(!c){f[d>>2]=0;return a|0}Ppb(c);f[d>>2]=0;return a|0}function rVa(a){a=a|0;var b=0;sVa(a);b=f[a+12>>2]|0;if(b|0)Ppb(b);a=f[a+4>>2]|0;if(!a)return;Ppb(a);return}function sVa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;if(!d)return;e=f[a+16>>2]|0;h=a+8|0;c=f[e>>2]|0;e=f[e+4>>2]|0;a:do if((c|0)!=(e|0)){g=c;while(1){if((f[g>>2]|0)==(d|0))break;c=g+28|0;if((c|0)==(e|0))break a;else g=c}e=f[h>>2]|0;c=e;if(e|0){d=g+8|0;if(!(f[d>>2]|0)){e=f[a+12>>2]|0;if(e|0)Npb(e);f[d>>2]=c;d=g+12|0;c=f[d>>2]|0;f[d>>2]=e;if(c|0)Ppb(c)}}g=g+24|0;b[g>>0]=b[g>>0]|2}while(0);f[h>>2]=0;h=a+12|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Ppb(c);f[a>>2]=0;a=a+4|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function tVa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;b=e;d=a+8|0;if(f[d>>2]|0){u=e;return d|0}if(!(f[a>>2]|0)){u=e;return d|0}S5a(b);g=f[b>>2]|0;c=b+4|0;h=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[d>>2]=g;g=a+12|0;b=f[g>>2]|0;f[g>>2]=h;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}$5a(f[d>>2]|0,0,a,3553,0);u=e;return d|0}function uVa(a,c){a=a|0;c=c|0;var d=0,e=0;f[a>>2]=c;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;f[a+44>>2]=0;f[a+52>>2]=0;f[a+56>>2]=0;f[a+60>>2]=0;f[a+68>>2]=0;f[a+72>>2]=0;f[a+76>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;f[a+92>>2]=0;f[a+100>>2]=0;f[a+104>>2]=0;f[a+108>>2]=0;f[a+116>>2]=0;f[a+120>>2]=0;f[a+124>>2]=0;f[a+132>>2]=0;f[a+136>>2]=0;f[a+140>>2]=0;f[a+148>>2]=0;f[a+152>>2]=0;f[a+156>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;f[a+172>>2]=0;f[a+180>>2]=0;f[a+184>>2]=0;f[a+188>>2]=0;f[a+196>>2]=0;f[a+200>>2]=0;f[a+204>>2]=0;f[a+212>>2]=0;f[a+216>>2]=0;f[a+220>>2]=0;f[a+228>>2]=0;f[a+232>>2]=0;f[a+236>>2]=0;f[a+244>>2]=0;f[a+248>>2]=0;f[a+252>>2]=0;f[a+260>>2]=0;f[a+264>>2]=0;f[a+268>>2]=0;n[a+16>>2]=1.1754943508222875e-38;n[a+32>>2]=2.949390792950442e-31;n[a+48>>2]=8.634480793659976e-29;n[a+64>>2]=2.5277850549753892e-26;n[a+80>>2]=7.40021027743059e-24;n[a+96>>2]=2.1664466087939005e-21;n[a+112>>2]=6.34237477651372e-19;n[a+128>>2]=1.8567602772480624e-16;n[a+144>>2]=5.435753640281073e-14;n[a+160>>2]=1.591342509155158e-11;n[a+176>>2]=4.658730290429958e-09;n[a+192>>2]=1.363865294479183e-06;n[a+208>>2]=3.9927801117300987e-04;n[a+224>>2]=.11689052730798721;n[a+240>>2]=34.220252990722656;n[a+256>>2]=3402823466385288598117041.0e14;c=a+344|0;d=a+272|0;e=d+72|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));n[c>>2]=1.0;e=a+348|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+364>>2]=1.0;e=a+368|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+384>>2]=1.0;e=a+388|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+404>>2]=1.0;e=a+408|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+424>>2]=1.0;e=a+428|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+444>>2]=1.0;e=a+448|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+464>>2]=1.0;e=a+468|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+484>>2]=1.0;e=a+488|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+504>>2]=1.0;e=a+508|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+524>>2]=1.0;e=a+528|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+544>>2]=1.0;e=a+548|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+564>>2]=1.0;e=a+568|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+584>>2]=1.0;e=a+588|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+604>>2]=1.0;e=a+608|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+624>>2]=1.0;e=a+628|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+644>>2]=1.0;e=a+648|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+664>>2]=1.0;e=a+668|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+684>>2]=1.0;e=a+688|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+704>>2]=1.0;e=a+708|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+724>>2]=1.0;e=a+728|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+744>>2]=1.0;e=a+748|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+764>>2]=1.0;e=a+768|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+784>>2]=1.0;e=a+788|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[a+804>>2]=1.0;e=a+808|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;f[a+828>>2]=0;a=a+832|0;b[a>>0]=b[a>>0]&-32|7;return}function vVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+312|0;d=a+316|0;e=f[d>>2]|0;if(e>>>0<(f[a+320>>2]|0)>>>0){wVa(e,b);e=(f[d>>2]|0)+524|0;f[d>>2]=e;d=e;e=f[c>>2]|0;e=d-e|0;e=(e|0)/524|0;e=e+-1|0;return e|0}else{xVa(c,b);d=f[d>>2]|0;e=f[c>>2]|0;e=d-e|0;e=(e|0)/524|0;e=e+-1|0;return e|0}return 0}function wVa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;e=f[c>>2]|0;f[c>>2]=0;h=c+4|0;g=f[h>>2]|0;f[h>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;j=c+12|0;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){c=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[e+(c<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}k=a+20|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;n[a+40>>2]=1.0;k=a+44|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+60>>2]=1.0;k=a+64|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+80>>2]=1.0;k=a+84|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+100>>2]=1.0;k=a+104|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+120>>2]=1.0;k=a+124|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+140>>2]=1.0;k=a+144|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+160>>2]=1.0;k=a+164|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+180>>2]=1.0;k=a+184|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+200>>2]=1.0;k=a+204|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+220>>2]=1.0;k=a+224|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+240>>2]=1.0;k=a+244|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+260>>2]=1.0;k=a+264|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+280>>2]=1.0;k=a+284|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+300>>2]=1.0;k=a+304|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+320>>2]=1.0;k=a+324|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+340>>2]=1.0;k=a+344|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+360>>2]=1.0;k=a+364|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+380>>2]=1.0;k=a+384|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+400>>2]=1.0;k=a+404|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+420>>2]=1.0;k=a+424|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+440>>2]=1.0;k=a+444|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+460>>2]=1.0;k=a+464|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+480>>2]=1.0;k=a+484|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+500>>2]=1.0;k=a+504|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;b[k+16>>0]=0;return}function xVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;e=((f[q>>2]|0)-c|0)/524|0;d=e+1|0;if(d>>>0>8196502)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/524|0;c=p<<1;c=p>>>0<4098251?(c>>>0<d>>>0?d:c):8196502;do if(!c)g=0;else if(c>>>0>8196502)ud();else{g=Wpb(c*524|0)|0;break}while(0);e=g+(e*524|0)|0;d=e;p=g+(c*524|0)|0;wVa(e,b);o=e+524|0;n=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(n|0)){c=d;g=n;d=n}else{do{i=c;c=c+-524|0;m=f[c>>2]|0;f[c>>2]=0;j=i+-520|0;h=f[j>>2]|0;f[j>>2]=0;f[e+-524>>2]=m;f[e+-520>>2]=h;j=e+-516|0;k=i+-516|0;g=f[k>>2]|0;f[j>>2]=g;l=i+-512|0;b=f[l>>2]|0;f[e+-512>>2]=b;f[e+-508>>2]=f[i+-508>>2];if(b|0){g=f[g+4>>2]|0;b=h+-1|0;if(!(b&h))g=g&b;else if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;f[m+(g<<2)>>2]=j;f[k>>2]=0;f[l>>2]=0}yVa(e+-504|0,i+-504|0);e=d+-524|0;d=e}while((c|0)!=(n|0));c=d;g=f[a>>2]|0;d=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;e=g;if((d|0)!=(e|0))do{kNa(d+-504|0);c=f[d+-516>>2]|0;d=d+-524|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(e|0));if(!g)return;Zpb(g);return}function yVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+1392|0;f[a>>2]=f[b>>2];e=f[(b+4|0)>>2]|0;f[(b+4|0)>>2]=0;d=f[(b+8|0)>>2]|0;f[(b+8|0)>>2]=0;f[a+4>>2]=e;f[a+8>>2]=d;c=f[(b+12|0)>>2]|0;f[(a+12|0)>>2]=c;h=f[(b+16|0)>>2]|0;f[a+16>>2]=h;f[a+20>>2]=f[b+20>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+12|0;f[(b+12|0)>>2]=0;f[(b+16|0)>>2]=0}e=f[(b+24|0)>>2]|0;f[(b+24|0)>>2]=0;d=f[(b+28|0)>>2]|0;f[(b+28|0)>>2]=0;f[a+24>>2]=e;f[a+28>>2]=d;c=f[(b+32|0)>>2]|0;f[(a+32|0)>>2]=c;h=f[(b+36|0)>>2]|0;f[a+36>>2]=h;f[a+40>>2]=f[b+40>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+32|0;f[(b+32|0)>>2]=0;f[(b+36|0)>>2]=0}e=f[(b+44|0)>>2]|0;f[(b+44|0)>>2]=0;d=f[(b+48|0)>>2]|0;f[(b+48|0)>>2]=0;f[a+44>>2]=e;f[a+48>>2]=d;c=f[(b+52|0)>>2]|0;f[(a+52|0)>>2]=c;h=f[(b+56|0)>>2]|0;f[a+56>>2]=h;f[a+60>>2]=f[b+60>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+52|0;f[(b+52|0)>>2]=0;f[(b+56|0)>>2]=0}e=f[(b+64|0)>>2]|0;f[(b+64|0)>>2]=0;d=f[(b+68|0)>>2]|0;f[(b+68|0)>>2]=0;f[a+64>>2]=e;f[a+68>>2]=d;c=f[(b+72|0)>>2]|0;f[(a+72|0)>>2]=c;h=f[(b+76|0)>>2]|0;f[a+76>>2]=h;f[a+80>>2]=f[b+80>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+72|0;f[(b+72|0)>>2]=0;f[(b+76|0)>>2]=0}e=f[(b+84|0)>>2]|0;f[(b+84|0)>>2]=0;d=f[(b+88|0)>>2]|0;f[(b+88|0)>>2]=0;f[a+84>>2]=e;f[a+88>>2]=d;c=f[(b+92|0)>>2]|0;f[(a+92|0)>>2]=c;h=f[(b+96|0)>>2]|0;f[a+96>>2]=h;f[a+100>>2]=f[b+100>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+92|0;f[(b+92|0)>>2]=0;f[(b+96|0)>>2]=0}e=f[(b+104|0)>>2]|0;f[(b+104|0)>>2]=0;d=f[(b+108|0)>>2]|0;f[(b+108|0)>>2]=0;f[a+104>>2]=e;f[a+108>>2]=d;c=f[(b+112|0)>>2]|0;f[(a+112|0)>>2]=c;h=f[(b+116|0)>>2]|0;f[a+116>>2]=h;f[a+120>>2]=f[b+120>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+112|0;f[(b+112|0)>>2]=0;f[(b+116|0)>>2]=0}e=f[(b+124|0)>>2]|0;f[(b+124|0)>>2]=0;d=f[(b+128|0)>>2]|0;f[(b+128|0)>>2]=0;f[a+124>>2]=e;f[a+128>>2]=d;c=f[(b+132|0)>>2]|0;f[(a+132|0)>>2]=c;h=f[(b+136|0)>>2]|0;f[a+136>>2]=h;f[a+140>>2]=f[b+140>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+132|0;f[(b+132|0)>>2]=0;f[(b+136|0)>>2]=0}e=f[(b+144|0)>>2]|0;f[(b+144|0)>>2]=0;d=f[(b+148|0)>>2]|0;f[(b+148|0)>>2]=0;f[a+144>>2]=e;f[a+148>>2]=d;c=f[(b+152|0)>>2]|0;f[(a+152|0)>>2]=c;h=f[(b+156|0)>>2]|0;f[a+156>>2]=h;f[a+160>>2]=f[b+160>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+152|0;f[(b+152|0)>>2]=0;f[(b+156|0)>>2]=0}e=f[(b+164|0)>>2]|0;f[(b+164|0)>>2]=0;d=f[(b+168|0)>>2]|0;f[(b+168|0)>>2]=0;f[a+164>>2]=e;f[a+168>>2]=d;c=f[(b+172|0)>>2]|0;f[(a+172|0)>>2]=c;h=f[(b+176|0)>>2]|0;f[a+176>>2]=h;f[a+180>>2]=f[b+180>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+172|0;f[(b+172|0)>>2]=0;f[(b+176|0)>>2]=0}e=f[(b+184|0)>>2]|0;f[(b+184|0)>>2]=0;d=f[(b+188|0)>>2]|0;f[(b+188|0)>>2]=0;f[a+184>>2]=e;f[a+188>>2]=d;c=f[(b+192|0)>>2]|0;f[(a+192|0)>>2]=c;h=f[(b+196|0)>>2]|0;f[a+196>>2]=h;f[a+200>>2]=f[b+200>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+192|0;f[(b+192|0)>>2]=0;f[(b+196|0)>>2]=0}e=f[(b+204|0)>>2]|0;f[(b+204|0)>>2]=0;d=f[(b+208|0)>>2]|0;f[(b+208|0)>>2]=0;f[a+204>>2]=e;f[a+208>>2]=d;c=f[(b+212|0)>>2]|0;f[(a+212|0)>>2]=c;h=f[(b+216|0)>>2]|0;f[a+216>>2]=h;f[a+220>>2]=f[b+220>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+212|0;f[(b+212|0)>>2]=0;f[(b+216|0)>>2]=0}e=f[(b+224|0)>>2]|0;f[(b+224|0)>>2]=0;d=f[(b+228|0)>>2]|0;f[(b+228|0)>>2]=0;f[a+224>>2]=e;f[a+228>>2]=d;c=f[(b+232|0)>>2]|0;f[(a+232|0)>>2]=c;h=f[(b+236|0)>>2]|0;f[a+236>>2]=h;f[a+240>>2]=f[b+240>>2];if(h|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=a+232|0;f[(b+232|0)>>2]=0;f[(b+236|0)>>2]=0}h=f[(b+244|0)>>2]|0;f[(b+244|0)>>2]=0;e=f[(b+248|0)>>2]|0;f[(b+248|0)>>2]=0;f[a+244>>2]=h;f[g+16>>2]=a;f[g+24>>2]=b;f[g+160>>2]=e;f[g+976>>2]=h;f[g+1312>>2]=0;f[g+1316>>2]=0;HWa(g);G=f[g+1312>>2]|0;D=f[g+1316>>2]|0;H=+n[g+1316>>2];f[g+1312>>2]=0;f[g+1316>>2]=0;if((G|0)==5){u=g;return}u=g}function zVa(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a+312>>2]|0;c=a+316|0;a=f[c>>2]|0;if((a|0)==(d|0))return;do{b=a+-524|0;f[c>>2]=b;kNa(a+-504|0);a=f[a+-516>>2]|0;if(a|0)do{e=a;a=f[a>>2]|0;Zpb(e)}while((a|0)!=0);a=f[b>>2]|0;f[b>>2]=0;if(a|0)Zpb(a);a=f[c>>2]|0}while((a|0)!=(d|0));return}function AVa(a,b){a=a|0;b=b|0;var c=0;c=f[a+312>>2]|0;return ((((f[a+316>>2]|0)-c|0)/524|0)>>>0>b>>>0?c+(b*524|0)+20|0:a+324|0)|0}function BVa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;j=f[(f[a>>2]|0)+64>>2]|0;g=f[(f[c+4>>2]|0)+44>>2]|0;h=(f[g+28>>2]|0)+(f[g+24>>2]|0)|0;i=f[g+32>>2]|0;if((i|0)==(0-h|0)){u=m;return}a:do if((e|0)==0&(b[g+144>>0]&2)==0){e=h+i|0;d=0}else if((d|0)!=0&(e|0)!=0){g=f[a+300>>2]|0;i=(f[a+296>>2]|0)+((f[a+308>>2]|0)*12|0)|0;if((i|0)!=(g|0)){while(1){h=g+-12|0;if((f[h>>2]|0)==(c|0))break;if((i|0)==(h|0))break a;else g=h}l=g+-4|0;f[l>>2]=(f[l>>2]|0)+e;u=m;return}}while(0);if(fxa(j)|0)k=10;else if(f[c+196>>2]&2048|0)k=10;if((k|0)==10)cxa(j,c);f[l>>2]=c;f[l+4>>2]=d;f[l+8>>2]=e;d=a+300|0;e=f[d>>2]|0;if(e>>>0<(f[a+304>>2]|0)>>>0){f[e>>2]=f[l>>2];f[e+4>>2]=f[l+4>>2];f[e+8>>2]=f[l+8>>2];f[d>>2]=(f[d>>2]|0)+12}else CVa(a+296|0,l);u=m;return}function CVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function DVa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,E=0;y=0;B=u;u=u+7136|0;oQa(a+324|0);i=f[(a+312|0)>>2]|0;j=f[(a+316|0)>>2]|0;if((i|0)!=(j|0))do{oQa(i+20|0);i=i+524|0}while((i|0)!=(j|0));E=f[(f[a>>2]|0)+64>>2]|0;i=f[52825]|0;j=f[52826]|0;C=Hga(c,i,j)|0;n[(B+464|0)>>2]=+p[C>>3];n[(B+464|0)+4>>2]=+p[C+8>>3];f[B+688>>2]=a;f[B+696>>2]=b;f[B+704>>2]=c;f[B+856>>2]=k;f[B+1224>>2]=z;f[B+1248>>2]=A;f[B+2840>>2]=l;f[B+2848>>2]=m;f[B+2856>>2]=o;f[B+2872>>2]=q;f[B+2880>>2]=r;f[B+3848>>2]=s;f[B+3888>>2]=t;f[B+3952>>2]=v;f[B+4968>>2]=w;f[B+5464>>2]=E;f[B+5472>>2]=i;f[B+5480>>2]=j;f[B+5488>>2]=C;n[B+5560>>2]=x;f[B+6760>>2]=y;f[B+6864>>2]=0;f[B+6868>>2]=0;NWa(B);z=f[B+1224>>2]|0;A=f[B+1248>>2]|0;l=f[B+2840>>2]|0;m=f[B+2848>>2]|0;o=f[B+2856>>2]|0;q=f[B+2872>>2]|0;r=f[B+2880>>2]|0;s=f[B+3848>>2]|0;t=f[B+3888>>2]|0;v=f[B+3952>>2]|0;w=f[B+4968>>2]|0;x=+n[B+5560>>2];y=f[B+6760>>2]|0;G=f[B+6864>>2]|0;D=f[B+6868>>2]|0;H=+n[B+6868>>2];f[B+6864>>2]=0;f[B+6868>>2]=0;if((G|0)==6)return D|0;a:while(1){C=f[(a+288|0)>>2]|0;E=(f[(a+284|0)>>2]|0)==(C|0);f[B+688>>2]=a;f[B+704>>2]=c;f[B+712>>2]=d;f[B+720>>2]=e;f[B+728>>2]=g;f[B+736>>2]=h;f[B+1224>>2]=z;f[B+1248>>2]=A;f[B+2840>>2]=l;f[B+2848>>2]=m;f[B+2856>>2]=o;f[B+2872>>2]=q;f[B+2880>>2]=r;f[B+2896>>2]=C;f[B+2904>>2]=E;f[B+3848>>2]=s;f[B+3888>>2]=t;f[B+3952>>2]=v;f[B+4968>>2]=w;f[B+5472>>2]=i;f[B+5480>>2]=j;n[B+5560>>2]=x;f[B+6760>>2]=y;f[B+6856>>2]=0;f[B+6860>>2]=0;MWa(B);y=f[B+6760>>2]|0;G=f[B+6856>>2]|0;D=f[B+6860>>2]|0;H=+n[B+6860>>2];f[B+6856>>2]=0;f[B+6860>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 7:break a}}do{i=f[(a+324|0)>>2]|0;j=f[(a+312|0)>>2]|0;k=f[(a+316|0)>>2]|0;if((j|0)!=(k|0))do{i=(f[j+20>>2]|0)+i|0;j=j+524|0}while((j|0)!=(k|0));if(i>>>0>=e>>>0)break;i=KQa(a+324|0,h)|0;j=f[(a+312|0)>>2]|0;k=f[(a+316|0)>>2]|0;if((j|0)!=(k|0))do{i=i|(KQa(j+20|0,h)|0);j=j+524|0}while((j|0)!=(k|0))}while(i);b:do if(!(b<<24>>24))i=0;else if(!(f[(a+4|0)>>2]|0))if((f[(a+272|0)>>2]|0)==(f[(a+276|0)>>2]|0))if((((f[a+812>>2]|0)-(f[a+808>>2]|0)|0)/60|0|0)==(f[a+820>>2]|0)){i=f[(a+312|0)>>2]|0;j=f[(a+316|0)>>2]|0;if((i|0)!=(j|0))do{if((((f[i+508>>2]|0)-(f[i+504>>2]|0)|0)/60|0|0)!=(f[i+516>>2]|0)){i=1;break b}i=i+524|0}while((i|0)!=(j|0));i=(((f[A>>2]|0)-(f[(a+296|0)>>2]|0)|0)/12|0|0)==(f[z>>2]|0)?0:2}else i=1;else i=1;else i=1;while(0);E=i;u=B;return E|0}function EVa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0.0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=a+20|0;G=a+40|0;o=+n[G>>2];h=a+60|0;g=+n[h>>2];J=a+56|0;B=+n[J>>2];p=a+44|0;x=+n[p>>2];E=a+24|0;f=a+52|0;C=+n[f>>2];F=a+36|0;d=+n[F>>2];i=a+28|0;n[b>>2]=+n[i>>2]*(B*d-o*C)+(+n[H>>2]*(o*g-B*x)+ +n[E>>2]*(x*C-g*d));d=+n[J>>2];y=a+12|0;g=+n[y>>2];z=a+8|0;C=+n[z>>2];x=+n[h>>2];A=a+4|0;B=+n[A>>2];o=+n[f>>2];w=b+4|0;n[w>>2]=-(+n[p>>2]*(C*o-d*B)+(+n[F>>2]*(d*g-C*x)+ +n[G>>2]*(x*B-g*o)));o=+n[z>>2];g=+n[i>>2];B=+n[E>>2];x=+n[y>>2];C=+n[H>>2];d=+n[A>>2];v=b+8|0;n[v>>2]=+n[h>>2]*(B*d-o*C)+(+n[f>>2]*(o*g-B*x)+ +n[J>>2]*(x*C-g*d));d=+n[E>>2];g=+n[p>>2];C=+n[G>>2];x=+n[i>>2];B=+n[F>>2];o=+n[H>>2];u=b+12|0;n[u>>2]=-(+n[y>>2]*(C*o-d*B)+(+n[A>>2]*(d*g-C*x)+ +n[z>>2]*(x*B-g*o)));D=a+32|0;o=+n[D>>2];g=+n[f>>2];I=a+48|0;B=+n[I>>2];x=+n[F>>2];c=a+16|0;C=+n[h>>2];d=+n[p>>2];m=b+32|0;n[m>>2]=+n[H>>2]*(B*d-o*C)+(+n[i>>2]*(o*g-B*x)+ +n[c>>2]*(x*C-g*d));d=+n[I>>2];g=+n[A>>2];C=+n[a>>2];x=+n[f>>2];B=+n[y>>2];o=+n[h>>2];l=b+36|0;n[l>>2]=-(+n[F>>2]*(C*o-d*B)+(+n[p>>2]*(d*g-C*x)+ +n[D>>2]*(x*B-g*o)));o=+n[a>>2];g=+n[H>>2];B=+n[c>>2];x=+n[A>>2];C=+n[i>>2];d=+n[y>>2];k=b+40|0;n[k>>2]=+n[f>>2]*(B*d-o*C)+(+n[h>>2]*(o*g-B*x)+ +n[I>>2]*(x*C-g*d));d=+n[c>>2];g=+n[F>>2];C=+n[D>>2];x=+n[H>>2];B=+n[p>>2];o=+n[i>>2];j=b+44|0;n[j>>2]=-(+n[A>>2]*(C*o-d*B)+(+n[y>>2]*(d*g-C*x)+ +n[a>>2]*(x*B-g*o)));o=+n[p>>2];g=+n[I>>2];B=+n[h>>2];x=+n[D>>2];C=+n[J>>2];d=+n[G>>2];s=b+16|0;n[s>>2]=-(+n[c>>2]*(B*d-o*C)+(+n[E>>2]*(o*g-B*x)+ +n[i>>2]*(x*C-g*d)));d=+n[h>>2];g=+n[a>>2];C=+n[y>>2];x=+n[I>>2];B=+n[z>>2];o=+n[J>>2];r=b+20|0;n[r>>2]=+n[D>>2]*(C*o-d*B)+(+n[G>>2]*(d*g-C*x)+ +n[p>>2]*(x*B-g*o));o=+n[y>>2];g=+n[c>>2];B=+n[i>>2];x=+n[a>>2];C=+n[E>>2];d=+n[z>>2];q=b+24|0;n[q>>2]=-(+n[I>>2]*(B*d-o*C)+(+n[J>>2]*(o*g-B*x)+ +n[h>>2]*(x*C-g*d)));d=+n[i>>2];g=+n[D>>2];C=+n[p>>2];x=+n[c>>2];B=+n[G>>2];o=+n[E>>2];p=b+28|0;n[p>>2]=+n[a>>2]*(C*o-d*B)+(+n[z>>2]*(d*g-C*x)+ +n[y>>2]*(x*B-g*o));o=+n[F>>2];g=+n[J>>2];B=+n[f>>2];x=+n[G>>2];C=+n[I>>2];d=+n[D>>2];d=-(+n[E>>2]*(B*d-o*C)+(+n[c>>2]*(o*g-B*x)+ +n[H>>2]*(x*C-g*d)));i=b+48|0;n[i>>2]=d;g=+n[f>>2];C=+n[z>>2];x=+n[A>>2];B=+n[J>>2];o=+n[a>>2];t=+n[I>>2];h=b+52|0;n[h>>2]=+n[G>>2]*(x*t-g*o)+(+n[D>>2]*(g*C-x*B)+ +n[F>>2]*(B*o-C*t));t=+n[A>>2];C=+n[E>>2];o=+n[H>>2];B=+n[z>>2];x=+n[c>>2];g=+n[a>>2];g=-(+n[J>>2]*(o*g-t*x)+(+n[I>>2]*(t*C-o*B)+ +n[f>>2]*(B*x-C*g)));f=b+56|0;n[f>>2]=g;C=+n[H>>2];x=+n[G>>2];B=+n[F>>2];o=+n[E>>2];t=+n[D>>2];e=+n[c>>2];e=+n[z>>2]*(B*e-C*t)+(+n[a>>2]*(C*x-B*o)+ +n[A>>2]*(o*t-x*e));c=b+60|0;n[c>>2]=e;x=+n[b>>2];t=+n[s>>2];o=+n[m>>2];d=+n[a>>2]*x+ +n[A>>2]*t+(+n[z>>2]*o+ +n[y>>2]*d);n[b>>2]=x/d;n[w>>2]=+n[w>>2]/d;n[v>>2]=+n[v>>2]/d;n[u>>2]=+n[u>>2]/d;n[s>>2]=t/d;n[r>>2]=+n[r>>2]/d;n[q>>2]=+n[q>>2]/d;n[p>>2]=+n[p>>2]/d;n[m>>2]=o/d;n[l>>2]=+n[l>>2]/d;n[k>>2]=+n[k>>2]/d;n[j>>2]=+n[j>>2]/d;n[i>>2]=+n[i>>2]/d;n[h>>2]=+n[h>>2]/d;n[f>>2]=g/d;n[c>>2]=e/d;return}function FVa(a,b,c){a=a|0;b=+b;c=+c;var d=0.0;if(c==0.0)if(b<1.1754943508222875e-38){b=1.1754943508222875e-38;c=1.1754943508222875e-38}else c=1.1754943508222875e-38;d=+U(+((+V(+b)-+V(+c))/31.0));n[a+12>>2]=c;c=d*(d*(d*c));n[a+28>>2]=c;c=d*c;n[a+44>>2]=c;c=d*c;n[a+60>>2]=c;c=d*c;n[a+76>>2]=c;c=d*c;n[a+92>>2]=c;c=d*c;n[a+108>>2]=c;c=d*c;n[a+124>>2]=c;c=d*c;n[a+140>>2]=c;c=d*c;n[a+156>>2]=c;c=d*c;n[a+172>>2]=c;c=d*c;n[a+188>>2]=c;c=d*c;n[a+204>>2]=c;c=d*c;n[a+220>>2]=c;n[a+236>>2]=d*c;n[a+252>>2]=b;return}function GVa(a){a=a|0;var b=0,c=0,d=0;b=f[a+16>>2]|0;c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+32>>2]|0;c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+48>>2]|0;c=a+52|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+64>>2]|0;c=a+68|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+80>>2]|0;c=a+84|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+96>>2]|0;c=a+100|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+112>>2]|0;c=a+116|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+128>>2]|0;c=a+132|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+144>>2]|0;c=a+148|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+160>>2]|0;c=a+164|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+176>>2]|0;c=a+180|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+192>>2]|0;c=a+196|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+208>>2]|0;c=a+212|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+224>>2]|0;c=a+228|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+240>>2]|0;c=a+244|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+256>>2]|0;c=a+260|0;d=f[c>>2]|0;if((d|0)==(b|0)){d=a+4|0;f[d>>2]=0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;return}f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);d=a+4|0;f[d>>2]=0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;return}function HVa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,k=0,l=0;l=u;u=u+16|0;k=l;i=f[a+196>>2]|0;if(!(i&1792|c)){k=0;u=l;return k|0}c=b[a+192>>0]|0;if(!((c&7&((c&255)>>>3&7|b[d>>0]))<<24>>24)){k=0;u=l;return k|0}if(i&33554432|0){d=f[a+104>>2]|0;if(+n[g>>2]*+n[d+240>>2]+(+n[g+4>>2]*+n[d+244>>2]+ +n[g+8>>2]*+n[d+248>>2])<+n[d+252>>2]){k=0;u=l;return k|0}}if(i&24|0){k=1;u=l;return k|0}d=a+200|0;c=j[d>>1]|0|(h[d+2>>0]|0)<<16;if(c&65536){ppa(a);c=j[d>>1]|0|(h[d+2>>0]|0)<<16}n[k>>2]=+n[a+168>>2]+ +n[a+156>>2];n[k+4>>2]=+n[a+172>>2]+ +n[a+160>>2];n[k+8>>2]=+n[a+176>>2]+ +n[a+164>>2];if(c&32768|0)qpa(a);k=Yia(e,k,+n[a+152>>2])|0;u=l;return k|0}function IVa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=f[a>>2]|0;m=(f[k>>2]|0)-l|0;n=m>>4;e=n+1|0;if(e>>>0>268435455)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>3;e=o>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;do if(!e){i=0;j=0}else if(e>>>0>268435455)ud();else{j=Wpb(e<<4)|0;i=j;break}while(0);g=i+(n<<4)|0;b=f[b>>2]|0;o=f[d>>2]|0;f[g>>2]=f[c>>2];f[i+(n<<4)+4>>2]=b;f[i+(n<<4)+8>>2]=o&-234881025;f[i+(n<<4)+12>>2]=-1;if((m|0)>0)Irb(j|0,l|0,m|0)|0;f[a>>2]=i;f[k>>2]=g+16;f[h>>2]=i+(e<<4);if(!l)return;Zpb(l);return}function JVa(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;n[g>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)h=0;else if(+n[a+28>>2]>b)h=1;else if(+n[a+44>>2]>b)h=2;else if(+n[a+60>>2]>b)h=3;else if(+n[a+76>>2]>b)h=4;else if(+n[a+92>>2]>b)h=5;else if(+n[a+108>>2]>b)h=6;else if(+n[a+124>>2]>b)h=7;else if(+n[a+140>>2]>b)h=8;else if(+n[a+156>>2]>b)h=9;else if(+n[a+172>>2]>b)h=10;else if(+n[a+188>>2]>b)h=11;else if(+n[a+204>>2]>b)h=12;else if(+n[a+220>>2]>b)h=13;else if(+n[a+236>>2]>b)h=14;else h=15;i=a+12+(h<<4)+4|0;j=a+12+(h<<4)+8|0;e=f[j>>2]|0;if(e>>>0<(f[a+12+(h<<4)+12>>2]|0)>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];n[e+4>>2]=b;f[e+8>>2]=g&-234881025;f[e+12>>2]=-1;f[j>>2]=(f[j>>2]|0)+16}else IVa(i,g,c,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=k;return}if(!((h|0)!=0&(h|0)==(e|0))){u=k;return}i=f[i>>2]|0;e=f[j>>2]|0;a=e-i|0;if((a|0)<=16){u=k;return}a=((a>>>4)+-2|0)/2|0;c=e+-16|0;b=+n[e+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=k;return}h=f[c>>2]|0;g=e+-8|0;d=f[g>>2]|0;g=f[g+4>>2]|0;while(1){j=c;c=i+(a<<4)|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];f[j+8>>2]=f[c+8>>2];f[j+12>>2]=f[c+12>>2];if(!a){a=0;break}e=(a+-1|0)/2|0;if(!(+n[i+(e<<4)+4>>2]<b))break;else a=e}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;j=i+(a<<4)+8|0;f[j>>2]=d;f[j+4>>2]=g;u=k;return}function KVa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0;f=+n[b>>2];h=+n[b+4>>2];e=+n[b+8>>2];i=+n[c>>2];g=+n[c+4>>2];d=+n[c+8>>2];q=+n[a>>2]*f+(+n[a+4>>2]*h+ +n[a+8>>2]*e);r=+n[a+96>>2]*i+(+n[a+100>>2]*g+ +n[a+104>>2]*d);s=+n[a+12>>2];if(q+r<=s){a=0;return a|0}t=+n[a+16>>2]*f+(+n[a+20>>2]*h+ +n[a+24>>2]*e);u=+n[a+108>>2]*i+(+n[a+112>>2]*g+ +n[a+116>>2]*d);v=+n[a+28>>2];if(t+u<=v){a=0;return a|0}w=+n[a+32>>2]*f+(+n[a+36>>2]*h+ +n[a+40>>2]*e);x=+n[a+120>>2]*i+(+n[a+124>>2]*g+ +n[a+128>>2]*d);y=+n[a+44>>2];if(w+x<=y){a=0;return a|0}j=+n[a+48>>2]*f+(+n[a+52>>2]*h+ +n[a+56>>2]*e);k=+n[a+132>>2]*i+(+n[a+136>>2]*g+ +n[a+140>>2]*d);l=+n[a+60>>2];if(j+k<=l){a=0;return a|0}m=+n[a+64>>2]*f+(+n[a+68>>2]*h+ +n[a+72>>2]*e);o=+n[a+144>>2]*i+(+n[a+148>>2]*g+ +n[a+152>>2]*d);p=+n[a+76>>2];if(m+o<=p){a=0;return a|0}f=+n[a+80>>2]*f+(+n[a+84>>2]*h+ +n[a+88>>2]*e);e=+n[a+156>>2]*i+(+n[a+160>>2]*g+ +n[a+164>>2]*d);d=+n[a+92>>2];if(f+e<=d){a=0;return a|0}a=f-e<d|(m-o<p|(j-k<l|(w-x<y|(t-u<v|q-r<s))))?1:2;return a|0}function LVa(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;n[g>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)h=0;else if(+n[a+28>>2]>b)h=1;else if(+n[a+44>>2]>b)h=2;else if(+n[a+60>>2]>b)h=3;else if(+n[a+76>>2]>b)h=4;else if(+n[a+92>>2]>b)h=5;else if(+n[a+108>>2]>b)h=6;else if(+n[a+124>>2]>b)h=7;else if(+n[a+140>>2]>b)h=8;else if(+n[a+156>>2]>b)h=9;else if(+n[a+172>>2]>b)h=10;else if(+n[a+188>>2]>b)h=11;else if(+n[a+204>>2]>b)h=12;else if(+n[a+220>>2]>b)h=13;else if(+n[a+236>>2]>b)h=14;else h=15;i=a+12+(h<<4)+4|0;j=a+12+(h<<4)+8|0;e=f[j>>2]|0;if(e>>>0<(f[a+12+(h<<4)+12>>2]|0)>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];n[e+4>>2]=b;f[e+8>>2]=g&-234881025|67108864;f[e+12>>2]=-1;f[j>>2]=(f[j>>2]|0)+16}else eWa(i,g,c,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=k;return}if(!((h|0)!=0&(h|0)==(e|0))){u=k;return}i=f[i>>2]|0;e=f[j>>2]|0;a=e-i|0;if((a|0)<=16){u=k;return}a=((a>>>4)+-2|0)/2|0;c=e+-16|0;b=+n[e+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=k;return}h=f[c>>2]|0;g=e+-8|0;d=f[g>>2]|0;g=f[g+4>>2]|0;while(1){j=c;c=i+(a<<4)|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];f[j+8>>2]=f[c+8>>2];f[j+12>>2]=f[c+12>>2];if(!a){a=0;break}e=(a+-1|0)/2|0;if(!(+n[i+(e<<4)+4>>2]<b))break;else a=e}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;j=i+(a<<4)+8|0;f[j>>2]=d;f[j+4>>2]=g;u=k;return}function MVa(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;n[g>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)h=0;else if(+n[a+28>>2]>b)h=1;else if(+n[a+44>>2]>b)h=2;else if(+n[a+60>>2]>b)h=3;else if(+n[a+76>>2]>b)h=4;else if(+n[a+92>>2]>b)h=5;else if(+n[a+108>>2]>b)h=6;else if(+n[a+124>>2]>b)h=7;else if(+n[a+140>>2]>b)h=8;else if(+n[a+156>>2]>b)h=9;else if(+n[a+172>>2]>b)h=10;else if(+n[a+188>>2]>b)h=11;else if(+n[a+204>>2]>b)h=12;else if(+n[a+220>>2]>b)h=13;else if(+n[a+236>>2]>b)h=14;else h=15;i=a+12+(h<<4)+4|0;j=a+12+(h<<4)+8|0;e=f[j>>2]|0;if(e>>>0<(f[a+12+(h<<4)+12>>2]|0)>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];n[e+4>>2]=b;f[e+8>>2]=g&-234881025|134217728;f[e+12>>2]=-1;f[j>>2]=(f[j>>2]|0)+16}else dWa(i,g,c,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=k;return}if(!((h|0)!=0&(h|0)==(e|0))){u=k;return}i=f[i>>2]|0;e=f[j>>2]|0;a=e-i|0;if((a|0)<=16){u=k;return}a=((a>>>4)+-2|0)/2|0;c=e+-16|0;b=+n[e+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=k;return}h=f[c>>2]|0;g=e+-8|0;d=f[g>>2]|0;g=f[g+4>>2]|0;while(1){j=c;c=i+(a<<4)|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];f[j+8>>2]=f[c+8>>2];f[j+12>>2]=f[c+12>>2];if(!a){a=0;break}e=(a+-1|0)/2|0;if(!(+n[i+(e<<4)+4>>2]<b))break;else a=e}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;j=i+(a<<4)+8|0;f[j>>2]=d;f[j+4>>2]=g;u=k;return}function NVa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0.0,k=0.0,l=0.0,m=0,o=0,p=0;p=u;u=u+16|0;m=p;f[m>>2]=c;o=f[a>>2]|0;d=o+832|0;e=c+196|0;g=f[e>>2]|0;if(!((b[d>>0]&8)!=0|(g&4|0)==0)){u=p;return}if(!(g&2048)){g=f[a+16>>2]|0;if(!(OVa(c,f[f[g>>2]>>2]|0,f[g+4>>2]|0,f[g+8>>2]|0,f[g+12>>2]|0)|0)){if(b[d>>0]&16){u=p;return}f[e>>2]=f[e>>2]&-1793;u=p;return}g=f[a+8>>2]|0;e=c+200|0;d=j[e>>1]|0|(h[e+2>>0]|0)<<16;if(d&65536){ppa(c);d=j[e>>1]|0|(h[e+2>>0]|0)<<16}if(d&32768|0)qpa(c);l=+n[g+12>>2]+(+n[c+168>>2]*+n[g>>2]+(+n[c+172>>2]*+n[g+4>>2]+ +n[c+176>>2]*+n[g+8>>2]));l=l*l;JVa(o+4|0,+n[c+152>>2]/(l<9.999999747378752e-06?9.999999747378752e-06:l),m,f[a+12>>2]|0);u=p;return}else{g=f[a+4>>2]|0;if(!(HVa(c,f[f[g>>2]>>2]|0,f[g+4>>2]|0,f[g+8>>2]|0,f[g+12>>2]|0)|0)){if(b[d>>0]&16){u=p;return}f[e>>2]=f[e>>2]&-1793;u=p;return}g=f[a+8>>2]|0;d=c+200|0;e=j[d>>1]|0|(h[d+2>>0]|0)<<16;if(e&65536){ppa(c);e=j[d>>1]|0|(h[d+2>>0]|0)<<16}i=+n[c+168>>2]+ +n[c+156>>2];k=+n[c+172>>2]+ +n[c+160>>2];l=+n[c+176>>2]+ +n[c+164>>2];if(e&32768|0)qpa(c);l=+n[g+12>>2]+(i*+n[g>>2]+(k*+n[g+4>>2]+l*+n[g+8>>2]));l=l*l;JVa(o+4|0,+n[c+152>>2]/(l<9.999999747378752e-06?9.999999747378752e-06:l),m,f[a+12>>2]|0);u=p;return}}function OVa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,k=0,l=0;l=u;u=u+16|0;i=l;k=f[a+196>>2]|0;if(!(k&1792|c)){k=0;u=l;return k|0}c=b[a+192>>0]|0;if(!((c&7&((c&255)>>>3&7|b[d>>0]))<<24>>24)){k=0;u=l;return k|0}if(k&33554432|0){d=f[a+104>>2]|0;if(+n[g>>2]*+n[d+240>>2]+(+n[g+4>>2]*+n[d+244>>2]+ +n[g+8>>2]*+n[d+248>>2])<+n[d+252>>2]){k=0;u=l;return k|0}}if(k&24|0){k=1;u=l;return k|0}c=a+200|0;d=((j[c>>1]|0|(h[c+2>>0]|0)<<16)&65536|0)==0;if(!(k&2048)){if(!d)ppa(a);f[i>>2]=f[a+168>>2];f[i+4>>2]=f[a+172>>2];f[i+8>>2]=f[a+176>>2]}else{if(!d)ppa(a);n[i>>2]=+n[a+168>>2]+ +n[a+156>>2];n[i+4>>2]=+n[a+172>>2]+ +n[a+160>>2];n[i+8>>2]=+n[a+176>>2]+ +n[a+164>>2]}if((j[c>>1]|0|(h[c+2>>0]|0)<<16)&32768|0)qpa(a);k=Yia(e,i,+n[a+152>>2])|0;u=l;return k|0}function PVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;t=v;f[b>>2]=(f[b>>2]|0)+-1;s=b+4|0;c=f[s>>2]|0;a:do if(c|0){e=f[b+12+(c<<4)+4>>2]|0;d=f[b+12+(c<<4)+8>>2]|0;if((e|0)==(d|0)){do{c=c+-1|0;f[s>>2]=c;if(!c)break a;e=f[b+12+(c<<4)+4>>2]|0;d=f[b+12+(c<<4)+8>>2]|0}while((e|0)==(d|0));g=d-e|0;q=g>>4;if((g|0)>16){r=(q+-2|0)/2|0;if((g|0)>=32){p=r;while(1){j=e+(p<<4)|0;c=p<<4;if((r|0)>=(c>>4|0)){d=c>>3|1;c=e+(d<<4)|0;h=c;g=d+1|0;if((g|0)<(q|0)){c=c+16|0;if(+n[e+(d<<4)+4>>2]<+n[c+4>>2])d=g;else c=h}else c=h;l=+n[e+(p<<4)+4>>2];if(!(+n[c+4>>2]<l)){k=f[j>>2]|0;o=e+(p<<4)+8|0;m=f[o>>2]|0;o=f[o+4>>2]|0;while(1){i=j;j=c;f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];if((r|0)<(d|0))break;d=d<<1|1;h=e+(d<<4)|0;g=h;i=d+1|0;if((i|0)<(q|0)){h=h+16|0;if(+n[e+(d<<4)+4>>2]<+n[h+4>>2]){d=i;g=h}}if(+n[g+4>>2]<l)break;else c=g}j=c;f[c>>2]=k;n[j+4>>2]=l;k=j+8|0;f[k>>2]=m;f[k+4>>2]=o}}if((p|0)>0)p=p+-1|0;else break}e=f[s>>2]|0;c=e;d=f[b+12+(e<<4)+8>>2]|0;e=f[b+12+(e<<4)+4>>2]|0}}}r=b+12+(c<<4)+8|0;g=d-e|0;c=g>>4;if((g|0)>16){q=d+-16|0;f[t>>2]=f[e>>2];f[t+4>>2]=f[e+4>>2];f[t+8>>2]=f[e+8>>2];f[t+12>>2]=f[e+12>>2];f[e>>2]=f[q>>2];f[e+4>>2]=f[q+4>>2];f[e+8>>2]=f[q+8>>2];f[e+12>>2]=f[q+12>>2];f[q>>2]=f[t>>2];f[q+4>>2]=f[t+4>>2];f[q+8>>2]=f[t+8>>2];f[q+12>>2]=f[t+12>>2];q=c+-1|0;if((c|0)!=2){p=(c+-3|0)/2|0;c=e+16|0;if((g|0)>48)if(+n[e+20>>2]<+n[e+36>>2]){d=2;c=e+32|0}else d=1;else d=1;l=+n[e+4>>2];if(!(+n[c+4>>2]<l)){k=f[e>>2]|0;o=e+8|0;m=f[o>>2]|0;o=f[o+4>>2]|0;j=e;while(1){t=j;j=c;f[t>>2]=f[j>>2];f[t+4>>2]=f[j+4>>2];f[t+8>>2]=f[j+8>>2];f[t+12>>2]=f[j+12>>2];if((p|0)<(d|0))break;d=d<<1|1;h=e+(d<<4)|0;g=h;i=d+1|0;if((i|0)<(q|0)){h=h+16|0;if(+n[e+(d<<4)+4>>2]<+n[h+4>>2]){d=i;g=h}}if(+n[g+4>>2]<l)break;else c=g}t=c;f[c>>2]=k;n[t+4>>2]=l;t=t+8|0;f[t>>2]=m;f[t+4>>2]=o}}}t=(f[r>>2]|0)+-16|0;f[a>>2]=f[t>>2];f[a+4>>2]=f[t+4>>2];f[a+8>>2]=f[t+8>>2];f[a+12>>2]=f[t+12>>2];f[r>>2]=t;u=v;return}while(0);g=b+8|0;s=f[g>>2]|0;h=f[b+16>>2]|0;c=h+(s<<4)|0;f[t>>2]=f[c>>2];f[t+4>>2]=f[c+4>>2];f[t+8>>2]=f[c+8>>2];f[t+12>>2]=f[c+12>>2];s=s+1|0;f[g>>2]=s;c=b+20|0;b=f[c>>2]|0;d=h;e=b;if((s|0)==(b-d>>4|0)){f[g>>2]=0;if((h|0)!=(e|0))f[c>>2]=e+(~((e+-16-d|0)>>>4)<<4)};f[a>>2]=f[t>>2];f[a+4>>2]=f[t+4>>2];f[a+8>>2]=f[t+8>>2];f[a+12>>2]=f[t+12>>2];u=v;return}function QVa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=a+4|0;b=f[r>>2]|0;a:do if(b|0){c=f[a+12+(b<<4)+4>>2]|0;if((c|0)!=(f[a+12+(b<<4)+8>>2]|0)){r=c;return r|0}do{b=b+-1|0;f[r>>2]=b;if(!b)break a;q=f[a+12+(b<<4)+4>>2]|0;c=f[a+12+(b<<4)+8>>2]|0}while((q|0)==(c|0));b=c-q|0;o=b>>4;if((b|0)<=16){r=q;return r|0}p=(o+-2|0)/2|0;if((b|0)<32){r=q;return r|0}else m=p;while(1){h=q+(m<<4)|0;b=m<<4;if((p|0)>=(b>>4|0)){c=b>>3|1;b=q+(c<<4)|0;e=b;d=c+1|0;if((d|0)<(o|0)){b=b+16|0;if(+n[q+(c<<4)+4>>2]<+n[b+4>>2])c=d;else b=e}else b=e;j=+n[q+(m<<4)+4>>2];if(!(+n[b+4>>2]<j)){i=f[h>>2]|0;l=q+(m<<4)+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;while(1){g=h;h=b;f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];if((p|0)<(c|0))break;c=c<<1|1;e=q+(c<<4)|0;d=e;g=c+1|0;if((g|0)<(o|0)){e=e+16|0;if(+n[q+(c<<4)+4>>2]<+n[e+4>>2]){c=g;d=e}}if(+n[d+4>>2]<j)break;else b=d}h=b;f[b>>2]=i;n[h+4>>2]=j;i=h+8|0;f[i>>2]=k;f[i+4>>2]=l}}if((m|0)>0)m=m+-1|0;else break}r=f[a+12+(f[r>>2]<<4)+4>>2]|0;return r|0}while(0);r=(f[a+16>>2]|0)+(f[a+8>>2]<<4)|0;return r|0}function RVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>4;c=e+1|0;if(c>>>0>268435455)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>3;d=m>>4>>>0<134217727?(d>>>0<c>>>0?c:d):268435455;do if(!d){h=0;i=0}else if(d>>>0>268435455)ud();else{i=Wpb(d<<4)|0;h=i;break}while(0);c=h+(e<<4)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+16;f[l>>2]=h+(d<<4);if(!j)return;Zpb(j);return}function SVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>4;c=e+1|0;if(c>>>0>268435455)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>3;d=m>>4>>>0<134217727?(d>>>0<c>>>0?c:d):268435455;do if(!d){h=0;i=0}else if(d>>>0>268435455)ud();else{i=Wpb(d<<4)|0;h=i;break}while(0);c=h+(e<<4)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+16;f[l>>2]=h+(d<<4);if(!j)return;Zpb(j);return}function TVa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;m=0;p=u;u=u+880|0;k=b;a:while(1){d=k;i=k+-16|0;e=k+-32|0;j=k+-4|0;b=a;while(1){o=b;f[p+48>>2]=c;f[p+56>>2]=b;f[p+120>>2]=k;f[p+160>>2]=o;f[p+296>>2]=g;f[p+560>>2]=h;f[p+632>>2]=d;f[p+648>>2]=i;f[p+688>>2]=e;f[p+720>>2]=j;f[p+816>>2]=m;f[p+832>>2]=0;f[p+836>>2]=0;OWa(p);b=f[p+56>>2]|0;o=f[p+160>>2]|0;g=f[p+296>>2]|0;h=f[p+560>>2]|0;m=f[p+816>>2]|0;G=f[p+832>>2]|0;D=f[p+836>>2]|0;H=+n[p+836>>2];f[p+832>>2]=0;f[p+836>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 13:break a}if((G|0)==3)continue}if((m|0)==91){m=0;TVa(g+16|0,k,c);a=o;k=g;continue}else if((m|0)==92){m=0;if(h){m=93;break}else{a=o;k=g;continue}}}a=1;if(a)if((m|0)==5){a=f[i>>2]|0;b=f[o>>2]|0;if(a>>>0>=b>>>0){if((a|0)!=(b|0)){u=p;return}if((f[j>>2]|0)>=(f[o+12>>2]|0)){u=p;return}};f[p>>2]=f[o>>2];f[p+4>>2]=f[o+4>>2];f[p+8>>2]=f[o+8>>2];f[p+12>>2]=f[o+12>>2];f[o>>2]=f[i>>2];f[o+4>>2]=f[i+4>>2];f[o+8>>2]=f[i+8>>2];f[o+12>>2]=f[i+12>>2];f[i>>2]=f[p>>2];f[i+4>>2]=f[p+4>>2];f[i+8>>2]=f[p+8>>2];f[i+12>>2]=f[p+12>>2];u=p;return}else if((m|0)==9){aWa(o,o+16|0,i,c)|0;u=p;return}else a=1;if(a)if((m|0)==10){e=o+16|0;d=o+32|0;aWa(o,e,d,c)|0;a=f[i>>2]|0;b=f[d>>2]|0;if(a>>>0>=b>>>0){if((a|0)!=(b|0)){u=p;return}if((f[j>>2]|0)>=(f[o+44>>2]|0)){u=p;return}};f[p>>2]=f[d>>2];f[p+4>>2]=f[d+4>>2];f[p+8>>2]=f[d+8>>2];f[p+12>>2]=f[d+12>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];f[i>>2]=f[p>>2];f[i+4>>2]=f[p+4>>2];f[i+8>>2]=f[p+8>>2];f[i+12>>2]=f[p+12>>2];a=f[d>>2]|0;b=f[e>>2]|0;if(a>>>0>=b>>>0){if((a|0)!=(b|0)){u=p;return}if((f[o+44>>2]|0)>=(f[o+28>>2]|0)){u=p;return}};f[p>>2]=f[e>>2];f[p+4>>2]=f[e+4>>2];f[p+8>>2]=f[e+8>>2];f[p+12>>2]=f[e+12>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];a=f[e>>2]|0;b=f[o>>2]|0;if(a>>>0>=b>>>0){if((a|0)!=(b|0)){u=p;return}if((f[o+28>>2]|0)>=(f[o+12>>2]|0)){u=p;return}};f[p>>2]=f[o>>2];f[p+4>>2]=f[o+4>>2];f[p+8>>2]=f[o+8>>2];f[p+12>>2]=f[o+12>>2];f[o>>2]=f[e>>2];f[o+4>>2]=f[e+4>>2];f[o+8>>2]=f[e+8>>2];f[o+12>>2]=f[e+12>>2];f[e>>2]=f[p>>2];f[e+4>>2]=f[p+4>>2];f[e+8>>2]=f[p+8>>2];f[e+12>>2]=f[p+12>>2];u=p;return}else if((m|0)==20){bWa(o,o+16|0,o+32|0,o+48|0,i,c)|0;u=p;return}else a=1;if(a)if((m|0)==22){b=o+32|0;aWa(o,o+16|0,b,c)|0;a=o+48|0;if((a|0)==(k|0)){u=p;return}while(1){c=f[a>>2]|0;d=f[b>>2]|0;if(c>>>0<d>>>0){l=f[a+12>>2]|0;m=27}else if((c|0)==(d|0)){d=f[a+12>>2]|0;if((d|0)<(f[b+12>>2]|0)){l=d;m=27}}if((m|0)==27){m=0;h=a+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];b:do if((b|0)==(o|0))b=o;else while(1){d=b;b=b+-16|0;e=f[b>>2]|0;if(c>>>0>=e>>>0){if((c|0)!=(e|0)){b=d;break b}if((l|0)>=(f[d+-4>>2]|0)){b=d;break b}};f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];if((b|0)==(o|0)){b=o;break}}while(0);f[b>>2]=c;j=b+4|0;f[j>>2]=g;f[j+4>>2]=h;f[b+12>>2]=l}b=a+16|0;if((b|0)==(k|0))break;else{j=a;a=b;b=j}}u=p;return}else if((m|0)==93)if(1){u=p;return}}function UVa(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;n[g>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)h=0;else if(+n[a+28>>2]>b)h=1;else if(+n[a+44>>2]>b)h=2;else if(+n[a+60>>2]>b)h=3;else if(+n[a+76>>2]>b)h=4;else if(+n[a+92>>2]>b)h=5;else if(+n[a+108>>2]>b)h=6;else if(+n[a+124>>2]>b)h=7;else if(+n[a+140>>2]>b)h=8;else if(+n[a+156>>2]>b)h=9;else if(+n[a+172>>2]>b)h=10;else if(+n[a+188>>2]>b)h=11;else if(+n[a+204>>2]>b)h=12;else if(+n[a+220>>2]>b)h=13;else if(+n[a+236>>2]>b)h=14;else h=15;i=a+12+(h<<4)+4|0;j=a+12+(h<<4)+8|0;e=f[j>>2]|0;if(e>>>0<(f[a+12+(h<<4)+12>>2]|0)>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];n[e+4>>2]=b;f[e+8>>2]=g&-234881025|33554432;f[e+12>>2]=-1;f[j>>2]=(f[j>>2]|0)+16}else $Va(i,g,c,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=k;return}if(!((h|0)!=0&(h|0)==(e|0))){u=k;return}i=f[i>>2]|0;e=f[j>>2]|0;a=e-i|0;if((a|0)<=16){u=k;return}a=((a>>>4)+-2|0)/2|0;c=e+-16|0;b=+n[e+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=k;return}h=f[c>>2]|0;g=e+-8|0;d=f[g>>2]|0;g=f[g+4>>2]|0;while(1){j=c;c=i+(a<<4)|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];f[j+8>>2]=f[c+8>>2];f[j+12>>2]=f[c+12>>2];if(!a){a=0;break}e=(a+-1|0)/2|0;if(!(+n[i+(e<<4)+4>>2]<b))break;else a=e}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;j=i+(a<<4)+8|0;f[j>>2]=d;f[j+4>>2]=g;u=k;return}function VVa(a,b,c,d,e){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l;n[h>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)i=0;else if(+n[a+28>>2]>b)i=1;else if(+n[a+44>>2]>b)i=2;else if(+n[a+60>>2]>b)i=3;else if(+n[a+76>>2]>b)i=4;else if(+n[a+92>>2]>b)i=5;else if(+n[a+108>>2]>b)i=6;else if(+n[a+124>>2]>b)i=7;else if(+n[a+140>>2]>b)i=8;else if(+n[a+156>>2]>b)i=9;else if(+n[a+172>>2]>b)i=10;else if(+n[a+188>>2]>b)i=11;else if(+n[a+204>>2]>b)i=12;else if(+n[a+220>>2]>b)i=13;else if(+n[a+236>>2]>b)i=14;else i=15;j=a+12+(i<<4)+4|0;k=a+12+(i<<4)+8|0;g=f[k>>2]|0;if(g>>>0<(f[a+12+(i<<4)+12>>2]|0)>>>0){h=f[d>>2]|0;e=f[e>>2]|0;f[g>>2]=f[c>>2];n[g+4>>2]=b;f[g+8>>2]=e&-234881025;f[g+12>>2]=h;f[k>>2]=(f[k>>2]|0)+16}else _Va(j,h,c,d,e);a=a+4|0;g=f[a>>2]|0;if(i>>>0>g>>>0){f[a>>2]=i;u=l;return}if(!((i|0)!=0&(i|0)==(g|0))){u=l;return}i=f[j>>2]|0;g=f[k>>2]|0;a=g-i|0;if((a|0)<=16){u=l;return}a=((a>>>4)+-2|0)/2|0;c=g+-16|0;b=+n[g+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=l;return}h=f[c>>2]|0;e=g+-8|0;d=f[e>>2]|0;e=f[e+4>>2]|0;while(1){k=c;c=i+(a<<4)|0;f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];f[k+12>>2]=f[c+12>>2];if(!a){a=0;break}g=(a+-1|0)/2|0;if(!(+n[i+(g<<4)+4>>2]<b))break;else a=g}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;k=i+(a<<4)+8|0;f[k>>2]=d;f[k+4>>2]=e;u=l;return}function WVa(a,c,d,e,g,i,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;k=k|0;l=l|0;var m=0.0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;q=s;r=s+4|0;f[q>>2]=c;d=f[d+8>>2]|0;t=d&1792;f[r>>2]=t;p=c+196|0;o=f[p>>2]|0;do if(o&1792|t|0){t=b[c+192>>0]|0;if((t&7&((t&255)>>>3&7|b[e>>0]))<<24>>24){if(o&33554432|0){t=f[c+104>>2]|0;if(+n[k>>2]*+n[t+240>>2]+(+n[k+4>>2]*+n[t+244>>2]+ +n[k+8>>2]*+n[t+248>>2])<+n[t+252>>2])break}if(!(d&268435456)){o=c+200|0;d=j[o>>1]|0|(h[o+2>>0]|0)<<16;if(d&65536){ppa(c);d=j[o>>1]|0|(h[o+2>>0]|0)<<16}if(d&32768|0)qpa(c);if(!(Yia(g,c+168|0,+n[c+152>>2])|0))break}e=a+4|0;if(l){o=c+200|0;d=j[o>>1]|0|(h[o+2>>0]|0)<<16;if(d&65536){ppa(c);d=j[o>>1]|0|(h[o+2>>0]|0)<<16}if(d&32768|0)qpa(c);m=+n[i+12>>2]+(+n[c+168>>2]*+n[i>>2]+(+n[c+172>>2]*+n[i+4>>2]+ +n[c+176>>2]*+n[i+8>>2]));m=m*m;m=+n[c+152>>2]/(m<9.999999747378752e-06?9.999999747378752e-06:m)}else m=0.0;YVa(e,m,q,r);u=s;return}}while(0);if(b[a+832>>0]&16){u=s;return}f[p>>2]=f[p>>2]&-1793;u=s;return}function XVa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function YVa(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;n[g>>2]=b;f[a>>2]=(f[a>>2]|0)+1;if(+n[a+12>>2]>b)h=0;else if(+n[a+28>>2]>b)h=1;else if(+n[a+44>>2]>b)h=2;else if(+n[a+60>>2]>b)h=3;else if(+n[a+76>>2]>b)h=4;else if(+n[a+92>>2]>b)h=5;else if(+n[a+108>>2]>b)h=6;else if(+n[a+124>>2]>b)h=7;else if(+n[a+140>>2]>b)h=8;else if(+n[a+156>>2]>b)h=9;else if(+n[a+172>>2]>b)h=10;else if(+n[a+188>>2]>b)h=11;else if(+n[a+204>>2]>b)h=12;else if(+n[a+220>>2]>b)h=13;else if(+n[a+236>>2]>b)h=14;else h=15;i=a+12+(h<<4)+4|0;j=a+12+(h<<4)+8|0;e=f[j>>2]|0;if(e>>>0<(f[a+12+(h<<4)+12>>2]|0)>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];n[e+4>>2]=b;f[e+8>>2]=g&-234881025;f[e+12>>2]=-1;f[j>>2]=(f[j>>2]|0)+16}else ZVa(i,g,c,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=k;return}if(!((h|0)!=0&(h|0)==(e|0))){u=k;return}i=f[i>>2]|0;e=f[j>>2]|0;a=e-i|0;if((a|0)<=16){u=k;return}a=((a>>>4)+-2|0)/2|0;c=e+-16|0;b=+n[e+-12>>2];if(!(+n[i+(a<<4)+4>>2]<b)){u=k;return}h=f[c>>2]|0;g=e+-8|0;d=f[g>>2]|0;g=f[g+4>>2]|0;while(1){j=c;c=i+(a<<4)|0;f[j>>2]=f[c>>2];f[j+4>>2]=f[c+4>>2];f[j+8>>2]=f[c+8>>2];f[j+12>>2]=f[c+12>>2];if(!a){a=0;break}e=(a+-1|0)/2|0;if(!(+n[i+(e<<4)+4>>2]<b))break;else a=e}f[c>>2]=h;n[i+(a<<4)+4>>2]=b;j=i+(a<<4)+8|0;f[j>>2]=d;f[j+4>>2]=g;u=k;return}function ZVa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=f[a>>2]|0;m=(f[k>>2]|0)-l|0;n=m>>4;e=n+1|0;if(e>>>0>268435455)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>3;e=o>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;do if(!e){i=0;j=0}else if(e>>>0>268435455)ud();else{j=Wpb(e<<4)|0;i=j;break}while(0);g=i+(n<<4)|0;b=f[b>>2]|0;o=f[d>>2]|0;f[g>>2]=f[c>>2];f[i+(n<<4)+4>>2]=b;f[i+(n<<4)+8>>2]=o&-234881025;f[i+(n<<4)+12>>2]=-1;if((m|0)>0)Irb(j|0,l|0,m|0)|0;f[a>>2]=i;f[k>>2]=g+16;f[h>>2]=i+(e<<4);if(!l)return;Zpb(l);return}function _Va(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a+4|0;m=f[a>>2]|0;n=(f[l>>2]|0)-m|0;o=n>>4;g=o+1|0;if(g>>>0>268435455)fob(a);i=a+8|0;p=(f[i>>2]|0)-m|0;h=p>>3;g=p>>4>>>0<134217727?(h>>>0<g>>>0?g:h):268435455;do if(!g){j=0;k=0}else if(g>>>0>268435455)ud();else{k=Wpb(g<<4)|0;j=k;break}while(0);h=j+(o<<4)|0;b=f[b>>2]|0;p=f[d>>2]|0;e=f[e>>2]|0;f[h>>2]=f[c>>2];f[j+(o<<4)+4>>2]=b;f[j+(o<<4)+8>>2]=e&-234881025;f[j+(o<<4)+12>>2]=p;if((n|0)>0)Irb(k|0,m|0,n|0)|0;f[a>>2]=j;f[l>>2]=h+16;f[i>>2]=j+(g<<4);if(!m)return;Zpb(m);return}function $Va(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=f[a>>2]|0;m=(f[k>>2]|0)-l|0;n=m>>4;e=n+1|0;if(e>>>0>268435455)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>3;e=o>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;do if(!e){i=0;j=0}else if(e>>>0>268435455)ud();else{j=Wpb(e<<4)|0;i=j;break}while(0);g=i+(n<<4)|0;b=f[b>>2]|0;o=f[d>>2]|0;f[g>>2]=f[c>>2];f[i+(n<<4)+4>>2]=b;f[i+(n<<4)+8>>2]=o&-234881025|33554432;f[i+(n<<4)+12>>2]=-1;if((m|0)>0)Irb(j|0,l|0,m|0)|0;f[a>>2]=i;f[k>>2]=g+16;f[h>>2]=i+(e<<4);if(!l)return;Zpb(l);return}function aWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;g=f[b>>2]|0;d=f[a>>2]|0;if(g>>>0<d>>>0)e=1;else if((g|0)==(d|0))e=(f[b+12>>2]|0)<(f[a+12>>2]|0);else e=0;d=f[c>>2]|0;if(d>>>0<g>>>0)d=1;else if((d|0)==(g|0))d=(f[c+12>>2]|0)<(f[b+12>>2]|0);else d=0;if(!e){if(!d){b=0;u=i;return b|0};f[h>>2]=f[b>>2];f[h+4>>2]=f[b+4>>2];f[h+8>>2]=f[b+8>>2];f[h+12>>2]=f[b+12>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];d=f[b>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if((d|0)!=(e|0)){b=1;u=i;return b|0}if((f[b+12>>2]|0)>=(f[a+12>>2]|0)){b=1;u=i;return b|0}};f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[b>>2]=f[h>>2];f[b+4>>2]=f[h+4>>2];f[b+8>>2]=f[h+8>>2];f[b+12>>2]=f[h+12>>2];b=2;u=i;return b|0}if(d){f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];b=1;u=i;return b|0};f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[b>>2]=f[h>>2];f[b+4>>2]=f[h+4>>2];f[b+8>>2]=f[h+8>>2];f[b+12>>2]=f[h+12>>2];d=f[c>>2]|0;e=f[b>>2]|0;if(d>>>0>=e>>>0){if((d|0)!=(e|0)){b=1;u=i;return b|0}if((f[c+12>>2]|0)>=(f[b+12>>2]|0)){b=1;u=i;return b|0}};f[h>>2]=f[b>>2];f[h+4>>2]=f[b+4>>2];f[h+8>>2]=f[b+8>>2];f[h+12>>2]=f[b+12>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];b=2;u=i;return b|0}function bWa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;j=aWa(a,b,c,g)|0;g=f[d>>2]|0;h=f[c>>2]|0;if(g>>>0<h>>>0)i=4;else if((g|0)==(h|0))if((f[d+12>>2]|0)<(f[c+12>>2]|0))i=4;do if((i|0)==4){f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];f[k+12>>2]=f[c+12>>2];f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];g=j+1|0;h=f[c>>2]|0;i=f[b>>2]|0;if(h>>>0>=i>>>0){if((h|0)!=(i|0)){j=g;break}if((f[c+12>>2]|0)>=(f[b+12>>2]|0)){j=g;break}};f[k>>2]=f[b>>2];f[k+4>>2]=f[b+4>>2];f[k+8>>2]=f[b+8>>2];f[k+12>>2]=f[b+12>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];g=j+2|0;h=f[b>>2]|0;i=f[a>>2]|0;if(h>>>0>=i>>>0){if((h|0)!=(i|0)){j=g;break}if((f[b+12>>2]|0)>=(f[a+12>>2]|0)){j=g;break}};f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[k+12>>2]=f[a+12>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[b>>2]=f[k>>2];f[b+4>>2]=f[k+4>>2];f[b+8>>2]=f[k+8>>2];f[b+12>>2]=f[k+12>>2];j=j+3|0}while(0);g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if((g|0)!=(h|0)){k=j;u=l;return k|0}if((f[e+12>>2]|0)>=(f[d+12>>2]|0)){k=j;u=l;return k|0}};f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2];f[k+12>>2]=f[d+12>>2];f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[e>>2]=f[k>>2];f[e+4>>2]=f[k+4>>2];f[e+8>>2]=f[k+8>>2];f[e+12>>2]=f[k+12>>2];g=j+1|0;h=f[d>>2]|0;i=f[c>>2]|0;if(h>>>0>=i>>>0){if((h|0)!=(i|0)){k=g;u=l;return k|0}if((f[d+12>>2]|0)>=(f[c+12>>2]|0)){k=g;u=l;return k|0}};f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];f[k+12>>2]=f[c+12>>2];f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];g=j+2|0;h=f[c>>2]|0;i=f[b>>2]|0;if(h>>>0>=i>>>0){if((h|0)!=(i|0)){k=g;u=l;return k|0}if((f[c+12>>2]|0)>=(f[b+12>>2]|0)){k=g;u=l;return k|0}};f[k>>2]=f[b>>2];f[k+4>>2]=f[b+4>>2];f[k+8>>2]=f[b+8>>2];f[k+12>>2]=f[b+12>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];g=j+3|0;h=f[b>>2]|0;i=f[a>>2]|0;if(h>>>0>=i>>>0){if((h|0)!=(i|0)){k=g;u=l;return k|0}if((f[b+12>>2]|0)>=(f[a+12>>2]|0)){k=g;u=l;return k|0}};f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[k+12>>2]=f[a+12>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[b>>2]=f[k>>2];f[b+4>>2]=f[k+4>>2];f[b+8>>2]=f[k+8>>2];f[b+12>>2]=f[k+12>>2];k=j+4|0;u=l;return k|0}function cWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;switch(b-a>>4|0){case 2:{d=b+-16|0;e=f[d>>2]|0;c=f[a>>2]|0;if(e>>>0>=c>>>0){if((e|0)!=(c|0)){l=1;u=m;return l|0}if((f[b+-4>>2]|0)>=(f[a+12>>2]|0)){l=1;u=m;return l|0}};f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[l+12>>2]=f[a+12>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];l=1;u=m;return l|0}case 3:{aWa(a,a+16|0,b+-16|0,c)|0;l=1;u=m;return l|0}case 4:{h=a+16|0;g=a+32|0;e=b+-16|0;aWa(a,h,g,c)|0;c=f[e>>2]|0;d=f[g>>2]|0;if(c>>>0>=d>>>0){if((c|0)!=(d|0)){l=1;u=m;return l|0}if((f[b+-4>>2]|0)>=(f[a+44>>2]|0)){l=1;u=m;return l|0}};f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];f[l+12>>2]=f[g+12>>2];f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[e>>2]=f[l>>2];f[e+4>>2]=f[l+4>>2];f[e+8>>2]=f[l+8>>2];f[e+12>>2]=f[l+12>>2];c=f[g>>2]|0;d=f[h>>2]|0;if(c>>>0>=d>>>0){if((c|0)!=(d|0)){l=1;u=m;return l|0}if((f[a+44>>2]|0)>=(f[a+28>>2]|0)){l=1;u=m;return l|0}};f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];f[l+12>>2]=f[h+12>>2];f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[g>>2]=f[l>>2];f[g+4>>2]=f[l+4>>2];f[g+8>>2]=f[l+8>>2];f[g+12>>2]=f[l+12>>2];c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if((c|0)!=(d|0)){l=1;u=m;return l|0}if((f[a+28>>2]|0)>=(f[a+12>>2]|0)){l=1;u=m;return l|0}};f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[l+12>>2]=f[a+12>>2];f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];l=1;u=m;return l|0}case 5:{bWa(a,a+16|0,a+32|0,a+48|0,b+-16|0,c)|0;l=1;u=m;return l|0}case 1:case 0:{l=1;u=m;return l|0}default:{e=a+32|0;aWa(a,a+16|0,e,c)|0;c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{d=0;while(1){j=f[c>>2]|0;g=f[e>>2]|0;if(j>>>0<g>>>0){g=f[c+12>>2]|0;k=24}else if((j|0)==(g|0)){g=f[c+12>>2]|0;if((g|0)<(f[e+12>>2]|0))k=24}if((k|0)==24){k=0;n=c+4|0;h=f[n+4>>2]|0;i=l;f[i>>2]=f[n>>2];f[i+4>>2]=h;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];b:do if((e|0)==(a|0))e=a;else{h=e;while(1){e=h;h=h+-16|0;i=f[h>>2]|0;if(j>>>0>=i>>>0){if((j|0)!=(i|0))break b;if((g|0)>=(f[e+-4>>2]|0))break b};f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[e+12>>2]=f[h+12>>2];if((h|0)==(a|0)){e=a;break}}}while(0);f[e>>2]=j;i=l;j=f[i+4>>2]|0;n=e+4|0;f[n>>2]=f[i>>2];f[n+4>>2]=j;f[e+12>>2]=g;d=d+1|0;if((d|0)==8){d=0;c=(c+16|0)==(b|0);break a}}e=c+16|0;if((e|0)==(b|0)){d=1;c=0;break}else{n=c;c=e;e=n}}}while(0);n=c|d;u=m;return n|0}}return 0}function dWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=f[a>>2]|0;m=(f[k>>2]|0)-l|0;n=m>>4;e=n+1|0;if(e>>>0>268435455)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>3;e=o>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;do if(!e){i=0;j=0}else if(e>>>0>268435455)ud();else{j=Wpb(e<<4)|0;i=j;break}while(0);g=i+(n<<4)|0;b=f[b>>2]|0;o=f[d>>2]|0;f[g>>2]=f[c>>2];f[i+(n<<4)+4>>2]=b;f[i+(n<<4)+8>>2]=o&-234881025|134217728;f[i+(n<<4)+12>>2]=-1;if((m|0)>0)Irb(j|0,l|0,m|0)|0;f[a>>2]=i;f[k>>2]=g+16;f[h>>2]=i+(e<<4);if(!l)return;Zpb(l);return}function eWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=f[a>>2]|0;m=(f[k>>2]|0)-l|0;n=m>>4;e=n+1|0;if(e>>>0>268435455)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>3;e=o>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;do if(!e){i=0;j=0}else if(e>>>0>268435455)ud();else{j=Wpb(e<<4)|0;i=j;break}while(0);g=i+(n<<4)|0;b=f[b>>2]|0;o=f[d>>2]|0;f[g>>2]=f[c>>2];f[i+(n<<4)+4>>2]=b;f[i+(n<<4)+8>>2]=o&-234881025|67108864;f[i+(n<<4)+12>>2]=-1;if((m|0)>0)Irb(j|0,l|0,m|0)|0;f[a>>2]=i;f[k>>2]=g+16;f[h>>2]=i+(e<<4);if(!l)return;Zpb(l);return}function fWa(a){a=a|0;var b=0,c=0,d=0,e=0;GVa(a+4|0);b=f[a+272>>2]|0;c=a+276|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+296>>2]|0;c=a+300|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);f[a+308>>2]=0;b=f[a+808>>2]|0;c=a+812|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-60-b|0)>>>0)/60|0)*60|0);f[a+820>>2]=0;b=f[a+312>>2]|0;e=f[a+316>>2]|0;if((b|0)==(e|0))return;do{c=f[b+504>>2]|0;d=b+508|0;a=f[d>>2]|0;if((a|0)!=(c|0))f[d>>2]=a+(~(((a+-60-c|0)>>>0)/60|0)*60|0);f[b+516>>2]=0;b=b+524|0}while((b|0)!=(e|0));return}function gWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;k=e;c=c&255;f[k>>2]=f[b+(c<<2)>>2];f[k+4>>2]=f[b+12+(c<<2)>>2];d=+AWa(k,d);k=f[b>>2]|0;f[a>>2]=k;j=f[b+4>>2]|0;f[a+4>>2]=j;i=f[b+8>>2]|0;f[a+8>>2]=i;h=f[b+12>>2]|0;f[a+12>>2]=h;g=f[b+16>>2]|0;f[a+16>>2]=g;b=f[b+20>>2]|0;f[a+20>>2]=b;n[a+12+(c<<2)>>2]=d;f[a+24>>2]=k;f[a+28>>2]=j;f[a+32>>2]=i;f[a+36>>2]=h;f[a+40>>2]=g;f[a+44>>2]=b;n[a+24+(c<<2)>>2]=d;u=e;return}function hWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0,j=0;c=c&255;j=f[b>>2]|0;f[a>>2]=j;i=f[b+4>>2]|0;f[a+4>>2]=i;h=f[b+8>>2]|0;f[a+8>>2]=h;g=f[b+12>>2]|0;f[a+12>>2]=g;e=f[b+16>>2]|0;f[a+16>>2]=e;b=f[b+20>>2]|0;f[a+20>>2]=b;n[a+12+(c<<2)>>2]=d;f[a+24>>2]=j;f[a+28>>2]=i;f[a+32>>2]=h;f[a+36>>2]=g;f[a+40>>2]=e;f[a+44>>2]=b;n[a+24+(c<<2)>>2]=d;return}function iWa(){if(b[209528]|0)return;if(!(rrb(209528)|0))return;return}function jWa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0;n=u;u=u+32|0;m=n;c=f[a>>2]|0;i=f[a+4>>2]|0;if((c|0)==(i|0)){m=1;u=n;return m|0}j=b+8|0;k=b+16|0;l=b+24|0;d=b+32|0;e=b+40|0;g=m+8|0;h=m+16|0;a=c;while(1){r=+p[a>>3];q=+p[a+8>>3];o=+p[a+16>>3];s=+p[a+24>>3];c=s+(r*+p[b>>3]+(q*+p[j>>3]+o*+p[k>>3]))<0.0;if(c^s+(r*+p[l>>3]+(q*+p[d>>3]+o*+p[e>>3]))<0.0){bia(m,a,b,l);c=(c^1)&1;s=+p[m>>3];t=b+(c*24|0)|0;p[m>>3]=+p[t>>3];p[t>>3]=s;s=+p[g>>3];t=b+(c*24|0)+8|0;p[g>>3]=+p[t>>3];p[t>>3]=s;p[b+(c*24|0)+16>>3]=+p[h>>3]}else if(c){a=0;c=7;break}a=a+32|0;if((a|0)==(i|0)){a=1;c=7;break}}if((c|0)==7){u=n;return a|0}return 0}function kWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+368|0;k=l;g=k;p[k>>3]=+p[b>>3];p[k+8>>3]=+p[b+8>>3];p[k+16>>3]=+p[b+16>>3];p[k+24>>3]=+p[b+24>>3];p[k+32>>3]=+p[b+32>>3];p[k+40>>3]=+p[b+40>>3];p[k+48>>3]=+p[b+48>>3];p[k+56>>3]=+p[b+56>>3];p[k+64>>3]=+p[b+64>>3];b=f[a>>2]|0;k=f[a+4>>2]|0;if((b|0)==(k|0)){e=3;b=g}else{e=3;j=b;b=d;while(1){a=b;if(e){i=g;if((j|0)==(c|0)){h=0;do{m=i+(h*24|0)|0;p[a>>3]=+p[m>>3];p[a+8>>3]=+p[i+(h*24|0)+8>>3];p[a+16>>3]=+p[i+(h*24|0)+16>>3];n=m+24|0;p[a+24>>3]=+p[n>>3];p[a+32>>3]=+p[n+8>>3];p[a+40>>3]=+p[n+16>>3];m=m+48|0;p[a+48>>3]=+p[m>>3];p[a+56>>3]=+p[m+8>>3];p[a+64>>3]=+p[m+16>>3];a=a+72|0;h=h+3|0}while(h>>>0<e>>>0)}else{h=0;do{a=a+((lWa(j,i+(h*24|0)|0,a)|0)*24|0)|0;h=h+3|0}while(h>>>0<e>>>0)}}e=(a-b|0)/24|0;j=j+32|0;if((j|0)==(k|0))break;else{n=g;g=b;b=n}}}if((d|0)!=(b|0)&(e|0)!=0)a=0;else{u=l;return e|0}do{p[d+(a*24|0)>>3]=+p[b+(a*24|0)>>3];p[d+(a*24|0)+8>>3]=+p[b+(a*24|0)+8>>3];p[d+(a*24|0)+16>>3]=+p[b+(a*24|0)+16>>3];a=a+1|0}while((a|0)!=(e|0));u=l;return e|0}function lWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0.0;J=u;u=u+144|0;q=J+120|0;g=J+72|0;e=J+24|0;d=J;K=+p[a>>3];o=+p[b>>3];A=b+8|0;y=+p[a+8>>3];h=+p[A>>3];B=b+16|0;z=+p[a+16>>3];i=+p[B>>3];L=+p[a+24>>3];H=b+24|0;j=+p[H>>3];C=b+32|0;k=+p[C>>3];D=b+40|0;l=+p[D>>3];I=b+48|0;m=+p[I>>3];E=b+56|0;n=+p[E>>3];F=b+64|0;r=L+(K*o+(y*h+z*i))<0.0;s=L+(K*j+(y*k+z*l))<0.0;t=L+(K*m+(y*n+z*+p[F>>3]))<0.0;switch(((r&1)+(s&1)<<24>>24)+(t&1)&7){case 0:{d=c;e=b;g=d+72|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));I=3;u=J;return I|0}case 1:{v=g+24|0;x=r?q:g;w=r?g:v;p[x>>3]=o;p[x+8>>3]=h;p[x+16>>3]=i;x=s?q:w;p[x>>3]=j;p[x+8>>3]=k;p[x+16>>3]=l;w=t?q:s?w:w+24|0;p[w>>3]=m;p[w+8>>3]=n;p[w+16>>3]=+p[F>>3];w=d+8|0;t=d+16|0;bia(d,a,q,g);K=+p[d>>3];p[e>>3]=K;L=+p[w>>3];p[e+8>>3]=L;h=+p[t>>3];p[e+16>>3]=h;bia(d,a,q,v);z=+p[d>>3];v=e+24|0;p[d>>3]=+p[v>>3];p[v>>3]=z;o=+p[w>>3];v=e+32|0;p[w>>3]=+p[v>>3];p[v>>3]=o;y=+p[t>>3];p[e+40>>3]=y;j=+p[g>>3];p[c>>3]=j;k=+p[g+8>>3];t=c+8|0;p[t>>3]=k;l=+p[g+16>>3];v=c+16|0;p[v>>3]=l;m=+p[g+24>>3];w=c+24|0;p[w>>3]=m;n=+p[g+32>>3];x=c+32|0;p[x>>3]=n;i=+p[g+40>>3];q=c+40|0;p[q>>3]=i;p[c+48>>3]=K;p[c+56>>3]=L;p[c+64>>3]=h;r=c+72|0;p[r>>3]=m;s=c+80|0;p[s>>3]=n;d=c+88|0;p[d>>3]=i;e=c+96|0;p[e>>3]=z;g=c+104|0;p[g>>3]=o;a=c+112|0;p[a>>3]=y;p[c+120>>3]=K;p[c+128>>3]=L;p[c+136>>3]=h;h=+p[b>>3];if(j==h)if(k==+p[A>>3])if(l==+p[B>>3])if(m==+p[H>>3])if(n==+p[C>>3]){if(!(i==+p[D>>3]))G=9}else G=9;else G=9;else G=9;else G=9;else G=9;do if((G|0)==9){if(j==+p[H>>3])if(k==+p[C>>3])if(l==+p[D>>3])if(m==+p[I>>3])if(n==+p[E>>3])if(i==+p[F>>3])break;if(j==+p[I>>3])if(k==+p[E>>3])if(m==h?l==+p[F>>3]:0)if(n==+p[A>>3])if(i==+p[B>>3])break;p[c>>3]=m;p[t>>3]=n;p[v>>3]=i;p[w>>3]=j;p[x>>3]=k;p[q>>3]=l;p[r>>3]=z;p[s>>3]=o;p[d>>3]=y;p[e>>3]=m;p[g>>3]=n;p[a>>3]=i}while(0);I=6;u=J;return I|0}case 2:{d=c;e=b;g=d+72|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=b+((s&t?0:s?2:1)*24|0)|0;e=q+8|0;g=q+16|0;if(r){bia(q,a,d,b);L=+p[q>>3];p[q>>3]=+p[c>>3];p[c>>3]=L;L=+p[e>>3];b=c+8|0;p[e>>3]=+p[b>>3];p[b>>3]=L;p[c+16>>3]=+p[g>>3]}if(s){bia(q,a,d,H);L=+p[q>>3];H=c+24|0;p[q>>3]=+p[H>>3];p[H>>3]=L;L=+p[e>>3];H=c+32|0;p[e>>3]=+p[H>>3];p[H>>3]=L;p[c+40>>3]=+p[g>>3]}if(!t){I=3;u=J;return I|0}bia(q,a,d,I);L=+p[q>>3];I=c+48|0;p[q>>3]=+p[I>>3];p[I>>3]=L;L=+p[e>>3];I=c+56|0;p[e>>3]=+p[I>>3];p[I>>3]=L;p[c+64>>3]=+p[g>>3];I=3;u=J;return I|0}default:{I=0;u=J;return I|0}}return 0}function mWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0,g=0.0,h=0.0,i=0.0,j=0,k=0.0;if(!b){b=0;return b|0}j=b+-1|0;i=+p[c+8>>3];h=+p[c>>3];f=0;c=0;d=j;g=+p[a+(j<<4)+8>>3];while(1){e=g;g=+p[a+(f<<4)+8>>3];if(g>i^e>i){k=+p[a+(f<<4)>>3];if(h<k+(i-g)*(+p[a+(d<<4)>>3]-k)/(e-g))c=c^1}d=f+1|0;if((d|0)==(b|0))break;else{j=f;f=d;d=j}}return c|0}function nWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0;o=+n[a+24>>2];p=+n[a>>2];w=o-p;q=+n[a+28>>2];r=+n[a+4>>2];c=q-r;j=+n[a+32>>2];k=+n[a+8>>2];f=j-k;l=+n[a+12>>2];v=l-p;m=+n[a+16>>2];t=m-r;i=+n[a+20>>2];h=i-k;u=+n[b>>2]-p;s=+n[b+4>>2]-r;g=+n[b+8>>2]-k;d=w*w+(c*c+f*f);e=w*v+(c*t+f*h);f=w*u+(c*s+f*g);c=v*v+(t*t+h*h);g=v*u+(t*s+h*g);h=d*c-e*e;if(h<0.0){c=c*f-e*g;if(!(c<=0.0)){b=0;return b|0}w=d*g-e*f;if(!(w<=0.0)|!(c+w>=h)){b=0;return b|0}if(k==i&(r==m&p==l)){b=0;return b|0}if(p==o&r==q&k==j){b=0;return b|0}else return i!=j|(m!=q|l!=o)|0}if(h==0.0){b=0;return b|0}c=c*f-e*g;if(!(c>=0.0)){b=0;return b|0}w=d*g-e*f;if(!(w>=0.0)|!(c+w<=h)){b=0;return b|0}if(k==i&(r==m&p==l)){b=0;return b|0}if(p==o&r==q&k==j){b=0;return b|0}b=i!=j|(m!=q|l!=o);return b|0}function oWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0;n=+p[a+48>>3];o=+p[a>>3];w=n-o;q=+p[a+56>>3];r=+p[a+8>>3];c=q-r;j=+p[a+64>>3];k=+p[a+16>>3];f=j-k;l=+p[a+24>>3];v=l-o;m=+p[a+32>>3];t=m-r;i=+p[a+40>>3];h=i-k;u=+p[b>>3]-o;s=+p[b+8>>3]-r;g=+p[b+16>>3]-k;d=w*w+(c*c+f*f);e=w*v+(c*t+f*h);f=w*u+(c*s+f*g);c=v*v+(t*t+h*h);g=v*u+(t*s+h*g);h=d*c-e*e;if(h<0.0){c=c*f-e*g;if(!(c<=0.0)){b=0;return b|0}w=d*g-e*f;if(!(w<=0.0)|!(c+w>=h)){b=0;return b|0}if(k==i&(r==m&o==l)){b=0;return b|0}if(o==n&r==q&k==j){b=0;return b|0}else return i!=j|(m!=q|l!=n)|0}if(h==0.0){b=0;return b|0}c=c*f-e*g;if(!(c>=0.0)){b=0;return b|0}w=d*g-e*f;if(!(w>=0.0)|!(c+w<=h)){b=0;return b|0}if(k==i&(r==m&o==l)){b=0;return b|0}if(o==n&r==q&k==j){b=0;return b|0}b=i!=j|(m!=q|l!=n);return b|0}function pWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;e=+p[a>>3];g=+p[b>>3];l=e-g;h=+p[a+8>>3];i=+p[b+8>>3];k=h-i;c=+p[a+16>>3];d=+p[b+16>>3];j=c-d;f=+p[b+24>>3];if(l*l+(k*k+j*j)<=f){l=0.0;return +l}k=g-e;l=i-h;c=d-c;d=k*+p[a+24>>3]+(l*+p[a+32>>3]+c*+p[a+40>>3]);c=f-(k*k+(l*l+c*c)-d*d);if(c<0.0){l=-1.0;return +l}k=+L(+c);l=d-k;l=!(l>=0.0)?d+k:l;return +l}function qWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0.0,F=0.0;D=u;u=u+192|0;C=D;d=+p[a>>3];i=+p[b>>3];if(!(d>=i)){e=a+8|0;h=+p[b+8>>3]}else{e=a+8|0;g=+p[e>>3];h=+p[b+8>>3];if(g>=h){c=+p[a+16>>3];if(c>=+p[b+16>>3])if(d<=+p[b+24>>3])if(g<=+p[b+32>>3])if(c<=+p[b+40>>3]){B=0.0;u=D;return +B}}}s=+p[b+24>>3];c=(s-i)*.5;o=+p[b+32>>3];g=(o-h)*.5;n=+p[b+40>>3];t=+p[b+16>>3];v=(n-t)*.5;z=i+c;A=h+g;B=t+v;c=c*1.00001;g=g*1.00001;v=v*1.00001;w=z-c;x=A-g;y=B-v;z=c+z;A=g+A;B=v+B;v=h*0.0;g=t*0.0;c=v+g-i;p[C>>3]=-1.0;b=C+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;p[C+24>>3]=-c;i=i*0.0;g=i+(g-h);p[C+32>>3]=0.0;p[C+40>>3]=-1.0;p[C+48>>3]=0.0;p[C+56>>3]=-g;i=i+(v-t);b=C+64|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;p[C+80>>3]=-1.0;p[C+88>>3]=-i;t=o*0.0;v=n*0.0;k=s+(t+v);p[C+96>>3]=1.0;b=C+104|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;p[C+120>>3]=-k;s=s*0.0;p[C+128>>3]=0.0;p[C+136>>3]=1.0;p[C+144>>3]=0.0;p[C+152>>3]=-(s+(o+v));n=s+(t+n);b=C+160|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;p[C+176>>3]=1.0;p[C+184>>3]=-n;t=+p[a>>3];s=+p[e>>3];v=+p[a+16>>3];o=+p[a+24>>3];q=+p[a+32>>3];r=+p[a+40>>3];h=s*0.0;d=v*0.0;j=h+d;c=j-t-c;if(c>0.0){c=-c/(q*0.0+r*0.0-o);if(!(c>=0.0))l=11;else{F=t+o*c;E=s+q*c;m=v+r*c;if(!(F<=z)|(!(m>=y)|(!(F>=w)|!(E>=x)))|!(E<=A)|!(m<=B))l=11}}else l=11;do if((l|0)==11){m=t*0.0;c=m+(d-s)-g;if(c>0.0){c=-c/(o*0.0+(r*0.0-q));if(c>=0.0){F=t+o*c;d=s+q*c;g=v+r*c;if(!(!(F<=z)|(!(g>=y)|(!(F>=w)|!(d>=x)))))if(!(!(d<=A)|!(g<=B)))break}}c=m+(h-v)-i;if(c>0.0){c=-c/(o*0.0+(q*0.0-r));if(c>=0.0){F=t+o*c;d=s+q*c;g=v+r*c;if(!(!(F<=z)|(!(g>=y)|(!(F>=w)|!(d>=x)))))if(!(!(d<=A)|!(g<=B)))break}}c=t+j-k;if(c>0.0){c=-c/(o+(q*0.0+r*0.0));if(c>=0.0){F=t+o*c;d=s+q*c;g=v+r*c;if(!(!(F<=z)|(!(g>=y)|(!(F>=w)|!(d>=x)))))if(!(!(d<=A)|!(g<=B)))break}}d=+p[C+136>>3];g=+p[C+144>>3];c=+p[C+152>>3]+(m+(d*s+g*v));if(c>0.0){c=-c/(o*0.0+(d*q+g*r));if(c>=0.0){F=t+o*c;d=s+q*c;g=v+r*c;if(!(!(F<=z)|(!(g>=y)|(!(F>=w)|!(d>=x)))))if(!(!(d<=A)|!(g<=B)))break}}g=+p[C+160>>3];h=+p[C+168>>3];d=+p[C+176>>3];c=g*t+(h*s+d*v)-n;if(c>0.0){c=-c/(g*o+(h*q+d*r));if(c>=0.0){F=t+o*c;g=s+q*c;d=v+r*c;if(!(!(F<=z)|(!(d>=y)|(!(F>=w)|!(g>=x)))))if(!(!(g<=A)|!(d<=B)))break}}c=-1.0}while(0);F=c;u=D;return +F}function rWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[b>>3];d=+p[b+8>>3];c=+p[b+16>>3];return +(-(+p[b+24>>3]+(e*+p[a>>3]+(d*+p[a+8>>3]+c*+p[a+16>>3])))/(e*+p[a+24>>3]+(d*+p[a+32>>3]+c*+p[a+40>>3])))}function sWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,s=0.0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+240|0;t=y+168|0;x=y+96|0;v=y+24|0;w=y;r=+p[a>>3];s=+p[a+8>>3];h=+p[a+16>>3];i=+p[a+24>>3];e=+p[b>>3];f=+p[b+8>>3];g=+p[b+16>>3];d=i+(r*e+(s*f+h*g));if(d>0.0){k=1;l=0;m=0;j=t}else{j=d<0.0;k=0;l=j&1;m=(j^1)&1;j=j?v:x}p[j>>3]=e;p[j+8>>3]=f;p[j+16>>3]=g;e=+p[b+24>>3];f=+p[b+32>>3];g=+p[b+40>>3];d=i+(r*e+(s*f+h*g));do if(d>0.0){n=k+1|0;o=l;q=m;j=t+(k*24|0)|0}else if(d<0.0){n=k;o=l+1|0;q=m;j=v+(l*24|0)|0;break}else{n=k;o=l;q=m+1|0;j=x+(m*24|0)|0;break}while(0);p[j>>3]=e;p[j+8>>3]=f;p[j+16>>3]=g;f=+p[b+48>>3];g=+p[b+56>>3];e=+p[b+64>>3];d=i+(r*f+(s*g+h*e));do if(d>0.0){k=n+1|0;l=o;m=q;j=t+(n*24|0)|0}else if(d<0.0){k=n;l=o+1|0;m=q;j=v+(o*24|0)|0;break}else{k=n;l=o;m=q+1|0;j=x+(q*24|0)|0;break}while(0);p[j>>3]=f;p[j+8>>3]=g;p[j+16>>3]=e;if((l|0)==3|(k|0)==3){x=0;u=y;return x|0}if((l|0)==1&(k|0)==1){bia(w,a,t,v);s=+p[w>>3];p[w>>3]=+p[c>>3];p[c>>3]=s;t=w+8|0;s=+p[t>>3];v=c+8|0;p[t>>3]=+p[v>>3];p[v>>3]=s;p[c+16>>3]=+p[w+16>>3];p[c+24>>3]=+p[x>>3];p[c+32>>3]=+p[x+8>>3];p[c+40>>3]=+p[x+16>>3];x=1;u=y;return x|0}switch(m|0){case 0:{if(k>>>0<l>>>0){x=t+8|0;q=t+16|0;i=+p[t>>3];r=+p[x>>3];s=+p[q>>3];p[t>>3]=+p[v>>3];b=v+8|0;p[x>>3]=+p[b>>3];x=v+16|0;p[q>>3]=+p[x>>3];p[v>>3]=i;p[b>>3]=r;p[x>>3]=s;x=t+24|0;b=t+32|0;q=t+40|0;s=+p[x>>3];r=+p[b>>3];i=+p[q>>3];o=v+24|0;p[x>>3]=+p[o>>3];x=v+32|0;p[b>>3]=+p[x>>3];b=v+40|0;p[q>>3]=+p[b>>3];p[o>>3]=s;p[x>>3]=r;p[b>>3]=i;b=t+48|0;x=t+56|0;o=t+64|0;i=+p[b>>3];r=+p[x>>3];s=+p[o>>3];q=v+48|0;p[b>>3]=+p[q>>3];b=v+56|0;p[x>>3]=+p[b>>3];x=v+64|0;p[o>>3]=+p[x>>3];p[q>>3]=i;p[b>>3]=r;p[x>>3]=s}bia(w,a,t,v);s=+p[w>>3];p[w>>3]=+p[c>>3];p[c>>3]=s;b=w+8|0;s=+p[b>>3];x=c+8|0;p[b>>3]=+p[x>>3];p[x>>3]=s;p[c+16>>3]=+p[w+16>>3];bia(w,a,t+24|0,v);s=+p[w>>3];v=c+24|0;p[w>>3]=+p[v>>3];p[v>>3]=s;v=w+8|0;s=+p[v>>3];x=c+32|0;p[v>>3]=+p[x>>3];p[x>>3]=s;p[c+40>>3]=+p[w+16>>3];x=1;u=y;return x|0}case 1:{x=0;u=y;return x|0}default:{d=+p[x>>3];p[c>>3]=d;e=+p[x+8>>3];p[c+8>>3]=e;f=+p[x+16>>3];p[c+16>>3]=f;g=+p[x+24>>3];p[c+24>>3]=g;h=+p[x+32>>3];p[c+32>>3]=h;i=+p[x+40>>3];p[c+40>>3]=i;if((m|0)==2){x=1;u=y;return x|0}p[c+48>>3]=g;p[c+56>>3]=h;p[c+64>>3]=i;i=+p[x+48>>3];p[c+72>>3]=i;r=+p[x+56>>3];p[c+80>>3]=r;s=+p[x+64>>3];p[c+88>>3]=s;p[c+96>>3]=i;p[c+104>>3]=r;p[c+112>>3]=s;p[c+120>>3]=d;p[c+128>>3]=e;p[c+136>>3]=f;x=3;u=y;return x|0}}return 0}function tWa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0;x=+p[a>>3];y=+p[b>>3]-x;v=a+8|0;m=+p[v>>3];w=+p[b+8>>3]-m;u=a+16|0;l=+p[u>>3];o=+p[b+16>>3]-l;g=+p[c>>3];q=+p[d>>3]-g;r=c+8|0;h=+p[r>>3];s=+p[d+8>>3]-h;t=c+16|0;i=+p[t>>3];n=+p[d+16>>3]-i;g=x-g;h=m-h;i=l-i;l=y*y+(w*w+o*o);m=q*q+(s*s+n*n);k=g*q+(h*s+i*n);a=l<=1.0e-08;b=!(m<=1.0e-08);if(!(b|a^1)){p[e>>3]=x;d=e+8|0;p[d>>3]=+p[v>>3];v=e+16|0;p[v>>3]=+p[u>>3];x=+p[c>>3];p[f>>3]=x;y=+p[r>>3];p[f+8>>3]=y;w=+p[t>>3];p[f+16>>3]=w;x=+p[e>>3]-x;y=+p[d>>3]-y;w=+p[v>>3]-w;x=x*x;y=y*y;w=w*w;y=w+y;y=x+y;return +y}do if(a){g=k/m;h=0.0;g=g<0.0?0.0:g>1.0?1.0:g}else{j=g*y+(h*w+i*o);if(!b){h=-j/l;h=h<0.0?0.0:h>1.0?1.0:h;g=0.0;break}i=y*q+(w*s+o*n);g=l*m-i*i;if(g!=0.0){h=(i*k-j*m)/g;h=h<0.0?0.0:h>1.0?1.0:h}else h=0.0;g=k+i*h;if(g<0.0){h=-j/l;h=h<0.0?0.0:h>1.0?1.0:h;g=0.0;break}if(g>m){h=(i-j)/l;h=h<0.0?0.0:h>1.0?1.0:h;g=1.0;break}else{g=g/m;break}}while(0);p[e>>3]=x+h*y;d=e+8|0;p[d>>3]=+p[v>>3]+h*w;v=e+16|0;p[v>>3]=+p[u>>3]+h*o;x=+p[c>>3]+g*q;p[f>>3]=x;y=+p[r>>3]+g*s;p[f+8>>3]=y;w=+p[t>>3]+g*n;p[f+16>>3]=w;x=+p[e>>3]-x;y=+p[d>>3]-y;w=+p[v>>3]-w;x=x*x;y=y*y;w=w*w;y=w+y;y=x+y;return +y}function uWa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;B=+p[d>>3];C=+p[c>>3];D=B-C;y=+p[d+8>>3];z=+p[c+8>>3];A=y-z;x=+p[d+16>>3];r=+p[c+16>>3];s=x-r;t=+p[e>>3];u=t-C;v=+p[e+8>>3];w=v-z;o=+p[e+16>>3];q=o-r;g=+p[b>>3];m=g-C;h=+p[b+8>>3];n=h-z;f=+p[b+16>>3];k=f-r;i=m*D+(n*A+k*s);k=m*u+(n*w+k*q);if(i<=0.0&k<=0.0){p[a>>3]=C;p[a+8>>3]=z;D=r;a=a+16|0;p[a>>3]=D;return}j=g-B;n=h-y;m=f-x;l=D*j+(A*n+s*m);m=u*j+(w*n+q*m);if(!(!(l>=0.0)|!(m<=l))){p[a>>3]=B;p[a+8>>3]=y;D=x;a=a+16|0;p[a>>3]=D;return}n=i*m-k*l;if(l<=0.0&(i>=0.0&n<=0.0)){B=i/(i-l);p[a>>3]=C+B*D;p[a+8>>3]=z+B*A;D=r+B*s;a=a+16|0;p[a>>3]=D;return}g=g-t;h=h-v;j=f-o;f=D*g+(A*h+s*j);j=u*g+(w*h+q*j);if(!(!(j>=0.0)|!(f<=j))){p[a>>3]=t;p[a+8>>3]=v;D=o;a=a+16|0;p[a>>3]=D;return}i=k*f-i*j;if(j<=0.0&(k>=0.0&i<=0.0)){D=k/(k-j);p[a>>3]=C+D*u;p[a+8>>3]=z+D*w;D=r+D*q;a=a+16|0;p[a>>3]=D;return}h=l*j-m*f;if(h<=0.0){g=m-l;if(g>=0.0){f=f-j;if(f>=0.0){D=g/(g+f);p[a>>3]=B+D*(t-B);p[a+8>>3]=y+D*(v-y);D=x+D*(o-x);a=a+16|0;p[a>>3]=D;return}}}B=1.0/(n+(h+i));y=i*B;B=n*B;p[a>>3]=C+y*D+B*u;p[a+8>>3]=z+y*A+B*w;D=r+y*s+B*q;a=a+16|0;p[a>>3]=D;return}function vWa(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0;q=+p[e>>3];j=+p[e+8>>3];h=+p[e+16>>3];o=+p[d>>3]-+p[a>>3];l=+p[d+8>>3]-+p[a+8>>3];i=+p[d+16>>3]-+p[a+16>>3];s=+p[a+24>>3];r=+p[a+32>>3];n=+p[a+40>>3];m=q*s+(j*r+h*n);k=q*q+(j*j+h*h);n=o*s+(l*r+i*n);i=q*o+(j*l+h*i);h=k-m*m;if(h<1.0e-08){l=i;i=0.0;h=1.0}else{j=i*m-k*n;if(j>-0.0){l=-i;i=0.0}else{l=-(i-m*n);i=-j;k=h}}if(l<0.0){e=n<0.0;l=0.0;i=e?0.0:n;h=e?h:1.0}else{j=n+m;a=j<0.0;if(l>k){l=k;i=a?0.0:j;h=a?h:1.0}}do if(+K(+i)<1.0e-08){p[b>>3]=0.0;h=1.0}else if(h<0.0){p[b>>3]=-i;h=-h;break}else{p[b>>3]=i;break}while(0);p[c>>3]=h;c=+K(+l)<1.0e-08;p[f>>3]=c?0.0:l;p[g>>3]=c?1.0:k;return}function wWa(a,b){a=a|0;b=b|0;var c=0.0;c=+p[a+24>>3]*(+p[b>>3]-+p[a>>3])+(+p[a+32>>3]*(+p[b+8>>3]-+p[a+8>>3])+ +p[a+40>>3]*(+p[b+16>>3]-+p[a+16>>3]));return +(c<0.0?0.0:c)}function xWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+n[b+4>>2];g=+n[b+16>>2]-j;d=+n[b+8>>2];l=+n[b+32>>2]-d;e=+n[b+20>>2]-d;i=+n[b+28>>2]-j;m=g*l-e*i;k=+n[b>>2];f=+n[b+24>>2]-k;h=+n[b+12>>2]-k;l=e*f-l*h;f=i*h-g*f;g=+n[a>>2];h=+n[a+4>>2];i=+n[a+8>>2];d=k*m+(j*l+d*f)-(m*g+(h*l+f*i));j=+n[a+12>>2];k=+n[a+16>>2];e=+n[a+20>>2];f=m*j+(l*k+f*e);a=f<0.0;d=a?-d:d;if(d>=0.0){m=d/(a?-f:f);n[c>>2]=g+m*j;n[c+4>>2]=h+m*k;n[c+8>>2]=i+m*e;if(nWa(b,c)|0){c=1;return c|0}}c=0;return c|0}function yWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0.0;I=u;u=u+208|0;o=I+56|0;q=I+48|0;t=I+40|0;v=I+32|0;w=I+24|0;B=I;if(zWa(a,b,d)|0){p[c>>3]=+p[d>>3];p[c+8>>3]=+p[d+8>>3];p[c+16>>3]=+p[d+16>>3];l=0.0;u=I;return +l}i=+p[b>>3];p[o>>3]=i;f=+p[b+8>>3];L=o+8|0;p[L>>3]=f;h=+p[b+16>>3];K=o+16|0;p[K>>3]=h;j=+p[b+24>>3];p[o+24>>3]=j;g=+p[b+32>>3];p[o+32>>3]=g;k=+p[b+40>>3];p[o+40>>3]=k;p[o+48>>3]=j;m=o+56|0;p[m>>3]=g;n=o+64|0;p[n>>3]=k;e=+p[b+48>>3];p[o+72>>3]=e;l=+p[b+56>>3];p[o+80>>3]=l;J=+p[b+64>>3];p[o+88>>3]=J;p[o+96>>3]=e;z=o+104|0;p[z>>3]=l;C=o+112|0;p[C>>3]=J;p[o+120>>3]=i;p[o+128>>3]=f;p[o+136>>3]=h;A=B+8|0;D=B+16|0;b=a+24|0;r=a+8|0;s=a+32|0;x=a+16|0;y=a+40|0;E=c+8|0;F=c+16|0;G=d+8|0;H=d+16|0;p[B>>3]=j-i;p[A>>3]=g-f;p[D>>3]=k-h;vWa(a,q,t,o,B,v,w);h=+p[q>>3]/+p[t>>3];k=+p[v>>3]/+p[w>>3];f=+p[a>>3]+h*+p[b>>3];g=+p[r>>3]+h*+p[s>>3];h=+p[x>>3]+h*+p[y>>3];i=+p[o>>3]+k*+p[B>>3];j=+p[L>>3]+k*+p[A>>3];k=+p[K>>3]+k*+p[D>>3];J=f-i;l=g-j;e=h-k;e=J*J+(l*l+e*e);if(e<1797693134862315708145274.0e284){p[c>>3]=f;p[E>>3]=g;p[F>>3]=h;p[d>>3]=i;p[G>>3]=j;p[H>>3]=k}else e=1797693134862315708145274.0e284;L=o+48|0;p[B>>3]=+p[o+72>>3]-+p[L>>3];p[A>>3]=+p[o+80>>3]-+p[m>>3];p[D>>3]=+p[o+88>>3]-+p[n>>3];vWa(a,q,t,L,B,v,w);k=+p[q>>3]/+p[t>>3];f=+p[v>>3]/+p[w>>3];i=+p[a>>3]+k*+p[b>>3];j=+p[r>>3]+k*+p[s>>3];k=+p[x>>3]+k*+p[y>>3];l=+p[L>>3]+f*+p[B>>3];h=+p[m>>3]+f*+p[A>>3];f=+p[n>>3]+f*+p[D>>3];M=i-l;J=j-h;g=k-f;g=M*M+(J*J+g*g);if(g<e){p[c>>3]=i;p[E>>3]=j;p[F>>3]=k;p[d>>3]=l;p[G>>3]=h;p[H>>3]=f;e=g}L=o+96|0;p[B>>3]=+p[o+120>>3]-+p[L>>3];p[A>>3]=+p[o+128>>3]-+p[z>>3];p[D>>3]=+p[o+136>>3]-+p[C>>3];vWa(a,q,t,L,B,v,w);j=+p[q>>3]/+p[t>>3];f=+p[v>>3]/+p[w>>3];l=+p[a>>3]+j*+p[b>>3];k=+p[r>>3]+j*+p[s>>3];j=+p[x>>3]+j*+p[y>>3];i=+p[L>>3]+f*+p[B>>3];h=+p[z>>3]+f*+p[A>>3];f=+p[C>>3]+f*+p[D>>3];J=l-i;M=k-h;g=j-f;g=J*J+(M*M+g*g);if(g<e){p[c>>3]=l;p[E>>3]=k;p[F>>3]=j;p[d>>3]=i;p[G>>3]=h;p[H>>3]=f;e=g}M=e;u=I;return +M}function zWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+p[b+8>>3];g=+p[b+32>>3]-j;d=+p[b+16>>3];l=+p[b+64>>3]-d;e=+p[b+40>>3]-d;i=+p[b+56>>3]-j;m=g*l-e*i;k=+p[b>>3];f=+p[b+48>>3]-k;h=+p[b+24>>3]-k;l=e*f-l*h;f=i*h-g*f;g=+p[a>>3];h=+p[a+8>>3];i=+p[a+16>>3];d=k*m+(j*l+d*f)-(m*g+(h*l+f*i));j=+p[a+24>>3];k=+p[a+32>>3];e=+p[a+40>>3];f=m*j+(l*k+f*e);a=f<0.0;d=a?-d:d;if(d>=0.0){m=d/(a?-f:f);p[c>>3]=g+m*j;p[c+8>>3]=h+m*k;p[c+16>>3]=i+m*e;if(oWa(b,c)|0){c=1;return c|0}}c=0;return c|0}function AWa(a,b){a=a|0;b=+b;var c=0.0;c=+n[a>>2];return +(c+(+n[a+4>>2]-c)*b)}function BWa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;h=j+16|0;i=j;k=fxa(b)|0;g=f[d+196>>2]|0;if((g&32|0)!=0|(g&2048|0)==0&(k^1))if((c|0)==0|(g&24|0)==0){npa(d,h,i);l=f[h+4>>2]|0;g=f[h+8>>2]|0;b=f[i>>2]|0;c=f[i+4>>2]|0;k=f[i+8>>2]|0;f[a>>2]=f[h>>2];f[a+4>>2]=l;f[a+8>>2]=g;f[a+12>>2]=b;f[a+16>>2]=c;f[a+20>>2]=k;if(e|0){l=f[d+96>>2]|0;f[e>>2]=f[l>>2];f[e+4>>2]=f[l+4>>2];f[e+8>>2]=f[l+8>>2];f[e+12>>2]=f[l+12>>2];f[e+16>>2]=f[l+16>>2];f[e+20>>2]=f[l+20>>2];f[e+24>>2]=f[l+24>>2];f[e+28>>2]=f[l+28>>2];f[e+32>>2]=f[l+32>>2];f[e+36>>2]=f[l+36>>2];f[e+40>>2]=f[l+40>>2];f[e+44>>2]=f[l+44>>2];f[e+48>>2]=f[l+48>>2];f[e+52>>2]=f[l+52>>2];f[e+56>>2]=f[l+56>>2];f[e+60>>2]=f[l+60>>2]}u=j;return}CWa(h,b,c,d,e);i=f[h>>2]|0;f[h>>2]=f[a>>2];f[a>>2]=i;i=h+4|0;l=f[i>>2]|0;k=a+4|0;f[i>>2]=f[k>>2];f[k>>2]=l;k=h+8|0;l=f[k>>2]|0;i=a+8|0;f[k>>2]=f[i>>2];f[i>>2]=l;i=a+12|0;l=h+12|0;k=f[l>>2]|0;f[l>>2]=f[i>>2];f[i>>2]=k;i=h+16|0;k=f[i>>2]|0;l=a+16|0;f[i>>2]=f[l>>2];f[l>>2]=k;f[a+20>>2]=f[h+20>>2];u=j;return}function CWa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0,L=0;D=u;u=u+160|0;o=D+88|0;B=D+24|0;C=D;K=f[d+4>>2]|0;L=f[d+96>>2]|0;f[o>>2]=f[L>>2];p=o+4|0;f[p>>2]=f[L+4>>2];q=o+8|0;f[q>>2]=f[L+8>>2];r=o+12|0;f[r>>2]=f[L+12>>2];s=o+16|0;f[s>>2]=f[L+16>>2];t=o+20|0;f[t>>2]=f[L+20>>2];v=o+24|0;f[v>>2]=f[L+24>>2];w=o+28|0;f[w>>2]=f[L+28>>2];x=o+32|0;f[x>>2]=f[L+32>>2];y=o+36|0;f[y>>2]=f[L+36>>2];z=o+40|0;f[z>>2]=f[L+40>>2];A=o+44|0;f[A>>2]=f[L+44>>2];G=o+48|0;f[G>>2]=f[L+48>>2];F=o+52|0;f[F>>2]=f[L+52>>2];E=o+56|0;f[E>>2]=f[L+56>>2];g=o+60|0;f[g>>2]=f[L+60>>2];Pja(b,c,d,o);b=f[K+44>>2]|0;J=+n[b+120>>2];k=+n[b+132>>2];h=J-k;I=+n[b+124>>2];l=+n[b+136>>2];i=I-l;H=+n[b+128>>2];m=+n[b+140>>2];j=H-m;k=J+k;l=I+l;m=H+m;o=f[o>>2]|0;f[B>>2]=o;p=f[p>>2]|0;f[B+4>>2]=p;q=f[q>>2]|0;f[B+8>>2]=q;r=f[r>>2]|0;f[B+12>>2]=r;s=f[s>>2]|0;f[B+16>>2]=s;t=f[t>>2]|0;f[B+20>>2]=t;v=f[v>>2]|0;f[B+24>>2]=v;w=f[w>>2]|0;f[B+28>>2]=w;x=f[x>>2]|0;f[B+32>>2]=x;y=f[y>>2]|0;f[B+36>>2]=y;z=f[z>>2]|0;f[B+40>>2]=z;A=f[A>>2]|0;f[B+44>>2]=A;b=f[G>>2]|0;f[B+48>>2]=b;c=f[F>>2]|0;f[B+52>>2]=c;d=f[E>>2]|0;f[B+56>>2]=d;g=f[g>>2]|0;f[B+60>>2]=g;if(!e){n[C>>2]=h;L=C+4|0;n[L>>2]=i;L=C+8|0;n[L>>2]=j;L=C+12|0;n[L>>2]=k;L=C+16|0;n[L>>2]=l;L=C+20|0;n[L>>2]=m;DWa(a,C,B);u=D;return}f[e>>2]=o;f[e+4>>2]=p;f[e+8>>2]=q;f[e+12>>2]=r;f[e+16>>2]=s;f[e+20>>2]=t;f[e+24>>2]=v;f[e+28>>2]=w;f[e+32>>2]=x;f[e+36>>2]=y;f[e+40>>2]=z;f[e+44>>2]=A;f[e+48>>2]=b;f[e+52>>2]=c;f[e+56>>2]=d;f[e+60>>2]=g;n[C>>2]=h;L=C+4|0;n[L>>2]=i;L=C+8|0;n[L>>2]=j;L=C+12|0;n[L>>2]=k;L=C+16|0;n[L>>2]=l;L=C+20|0;n[L>>2]=m;DWa(a,C,B);u=D;return}function DWa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0;J=u;u=u+128|0;g=J+24|0;E=J;H=f[b>>2]|0;k=f[b+4>>2]|0;h=f[b+8>>2]|0;f[g>>2]=H;F=g+4|0;f[F>>2]=k;G=g+8|0;f[G>>2]=h;j=f[b+12>>2]|0;f[g+12>>2]=j;f[g+16>>2]=k;f[g+20>>2]=h;i=f[b+16>>2]|0;f[g+24>>2]=H;f[g+28>>2]=i;f[g+32>>2]=h;f[g+36>>2]=j;f[g+40>>2]=i;f[g+44>>2]=h;h=f[b+20>>2]|0;f[g+48>>2]=H;f[g+52>>2]=k;f[g+56>>2]=h;f[g+60>>2]=j;f[g+64>>2]=k;f[g+68>>2]=h;f[g+72>>2]=H;f[g+76>>2]=i;f[g+80>>2]=h;H=g+84|0;f[H>>2]=j;f[g+88>>2]=i;f[g+92>>2]=h;h=g+96|0;i=c+16|0;j=c+32|0;k=c+4|0;l=c+20|0;m=c+36|0;o=c+8|0;p=c+24|0;q=c+40|0;r=c+12|0;t=c+28|0;v=c+44|0;w=E+4|0;x=E+8|0;y=E+12|0;z=c+48|0;A=c+52|0;B=c+56|0;C=c+60|0;D=E+16|0;b=g;do{P=+n[b>>2];L=b+4|0;O=+n[L>>2];K=b+8|0;d=+n[K>>2];e=P*+n[k>>2]+O*+n[l>>2]+d*+n[m>>2];N=P*+n[o>>2]+O*+n[p>>2]+d*+n[q>>2];M=P*+n[r>>2]+O*+n[t>>2]+d*+n[v>>2];d=+n[c>>2]*P+ +n[i>>2]*O+ +n[j>>2]*d+ +n[z>>2];n[E>>2]=d;e=e+ +n[A>>2];n[w>>2]=e;n[x>>2]=N+ +n[B>>2];n[y>>2]=M+ +n[C>>2];f[D>>2]=0;n[b>>2]=d;n[L>>2]=e;f[K>>2]=f[x>>2];b=b+12|0}while((b|0)!=(h|0));m=a+12|0;L=f[g>>2]|0;f[m>>2]=L;k=f[F>>2]|0;l=a+16|0;f[l>>2]=k;K=f[G>>2]|0;i=a+20|0;f[i>>2]=K;f[a>>2]=L;j=a+4|0;f[j>>2]=k;k=a+8|0;f[k>>2]=K;d=(f[s>>2]=L,+n[s>>2]);while(1){h=g+12|0;e=+n[h>>2];if(e<d){b=a;I=5}else if(e>+n[m>>2]){b=m;I=5}if((I|0)==5){I=0;n[b>>2]=e}d=+n[g+16>>2];if(d<+n[j>>2]){b=a;I=8}else if(d>+n[l>>2]){b=m;I=8}if((I|0)==8){I=0;n[b+4>>2]=d}d=+n[g+20>>2];if(d<+n[k>>2]){b=a;I=13}else if(d>+n[i>>2]){b=m;I=13}if((I|0)==13){I=0;n[b+8>>2]=d}if((h|0)==(H|0))break;g=h;d=+n[a>>2]}u=J;return}function EWa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;H=u;u=u+240|0;X=H+176|0;F=H+48|0;G=H;Y=f[d+4>>2]|0;Z=f[d+96>>2]|0;f[X>>2]=f[Z>>2];W=X+4|0;f[W>>2]=f[Z+4>>2];V=X+8|0;f[V>>2]=f[Z+8>>2];U=X+12|0;f[U>>2]=f[Z+12>>2];T=X+16|0;f[T>>2]=f[Z+16>>2];S=X+20|0;f[S>>2]=f[Z+20>>2];R=X+24|0;f[R>>2]=f[Z+24>>2];Q=X+28|0;f[Q>>2]=f[Z+28>>2];P=X+32|0;f[P>>2]=f[Z+32>>2];O=X+36|0;f[O>>2]=f[Z+36>>2];N=X+40|0;f[N>>2]=f[Z+40>>2];M=X+44|0;f[M>>2]=f[Z+44>>2];L=X+48|0;f[L>>2]=f[Z+48>>2];K=X+52|0;f[K>>2]=f[Z+52>>2];J=X+56|0;f[J>>2]=f[Z+56>>2];I=X+60|0;f[I>>2]=f[Z+60>>2];Pja(b,c,d,X);d=f[Y+44>>2]|0;z=+n[d+120>>2];t=+n[d+132>>2];q=z-t;y=+n[d+124>>2];v=+n[d+136>>2];r=y-v;x=+n[d+128>>2];w=+n[d+140>>2];s=x-w;t=z+t;v=y+v;w=x+w;x=+n[X>>2];p[F>>3]=x;y=+n[W>>2];p[F+8>>3]=y;z=+n[V>>2];p[F+16>>3]=z;A=+n[U>>2];p[F+24>>3]=A;B=+n[T>>2];p[F+32>>3]=B;C=+n[S>>2];p[F+40>>3]=C;D=+n[R>>2];p[F+48>>3]=D;E=+n[Q>>2];p[F+56>>3]=E;g=+n[P>>2];p[F+64>>3]=g;h=+n[O>>2];p[F+72>>3]=h;i=+n[N>>2];p[F+80>>3]=i;j=+n[M>>2];p[F+88>>3]=j;k=+n[L>>2];p[F+96>>3]=k;l=+n[K>>2];p[F+104>>3]=l;m=+n[J>>2];p[F+112>>3]=m;o=+n[I>>2];p[F+120>>3]=o;if(!e){z=q;A=r;B=s;C=t;D=v;E=w;p[G>>3]=z;Z=G+8|0;p[Z>>3]=A;Z=G+16|0;p[Z>>3]=B;Z=G+24|0;p[Z>>3]=C;Z=G+32|0;p[Z>>3]=D;Z=G+40|0;p[Z>>3]=E;Sha(a,G,F);u=H;return}p[e>>3]=x;p[e+8>>3]=y;p[e+16>>3]=z;p[e+24>>3]=A;p[e+32>>3]=B;p[e+40>>3]=C;p[e+48>>3]=D;p[e+56>>3]=E;p[e+64>>3]=g;p[e+72>>3]=h;p[e+80>>3]=i;p[e+88>>3]=j;p[e+96>>3]=k;p[e+104>>3]=l;p[e+112>>3]=m;p[e+120>>3]=o;z=q;A=r;B=s;C=t;D=v;E=w;p[G>>3]=z;Z=G+8|0;p[Z>>3]=A;Z=G+16|0;p[Z>>3]=B;Z=G+24|0;p[Z>>3]=C;Z=G+32|0;p[Z>>3]=D;Z=G+40|0;p[Z>>3]=E;Sha(a,G,F);u=H;return}function FWa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0,P=0.0;q=f[a+192>>2]|0;c=f[a+208>>2]|0;l=f[a+216>>2]|0;m=f[a+224>>2]|0;E=f[a+232>>2]|0;F=f[a+240>>2]|0;e=f[a+288>>2]|0;g=f[a+296>>2]|0;r=f[a+376>>2]|0;s=f[a+384>>2]|0;t=f[a+392>>2]|0;u=f[a+400>>2]|0;h=f[a+408>>2]|0;v=f[a+416>>2]|0;w=f[a+424>>2]|0;x=f[a+432>>2]|0;y=f[a+440>>2]|0;z=f[a+448>>2]|0;A=f[a+456>>2]|0;B=f[a+464>>2]|0;C=f[a+472>>2]|0;i=f[a+600>>2]|0;D=f[a+1024>>2]|0;G=f[a+1232>>2]|0;H=f[a+1248>>2]|0;if(H){H=0;if(D){KTa(q);if(!(d6a(f[c>>2]|0,q+8|0)|0)){X5a(a+16|0,f[c>>2]|0,0,1);c=f[(a+16|0)>>2]|0;p=f[((a+16|0)+4|0)>>2]|0;f[(a+16|0)>>2]=0;f[((a+16|0)+4|0)>>2]=0;f[(q+8|0)>>2]=c;c=f[(q+12|0)>>2]|0;f[(q+12|0)>>2]=p;if(c|0){Ppb(c);c=f[((a+16|0)+4|0)>>2]|0;if(c|0)Ppb(c)}}c=f[52838]|0;d=f[52839]|0;P7a(211248,f[f[q>>2]>>2]|0)|0;L=f[(a+80|0)>>2]|0;j=f[52823]|0;k=f[52824]|0;o=f[52825]|0;p=f[52826]|0;D7a(211248,0,0,f[L+16>>2]|0,f[L+20>>2]|0)|0;L=b[211368]|0;K=b[211369]|0;J=b[211370]|0;I=b[211371]|0;$5a(f[q>>2]|0,0,a+80|0,3553,0);Ud(16384);M=b[211532]|0;u8a(211248,1)|0;N7a(211248,f[f[q+112>>2]>>2]|0)|0;V7a(211248,1,0,0,0)|0;e8a(211248,517,0,l)|0;KUa(f[(q+136|0)>>2]|0);V7a(211248,0,1,0,0)|0;e8a(211248,517,0,m)|0;KUa(f[(q+136|0)>>2]|0);P7a(211248,f[f[(q+8|0)>>2]>>2]|0)|0;$5a(f[(q+8|0)>>2]|0,0,a+80|0,3553,0);V7a(211248,0,0,1,0)|0;e8a(211248,517,0,l)|0;KUa(f[(q+136|0)>>2]|0);V7a(211248,0,0,0,1)|0;e8a(211248,517,0,m)|0;KUa(f[(q+136|0)>>2]|0);u8a(211248,M<<24>>24!=0)|0;V7a(211248,L<<24>>24!=0,K<<24>>24!=0,J<<24>>24!=0,I<<24>>24!=0)|0;D7a(211248,j,k,o,p)|0;if((c|0)==(d|0))P7a(211248,c)|0;else{Q7a(211248,c)|0;R7a(211248,d)|0}M=f[52827]|0;H6a(a+16|0);E7a(211248,4)|0;F7a(211248,f[e+8>>2]|0)|0;E7a(211248,3)|0;F7a(211248,f[(f[(h+72|0)>>2]|0)+8>>2]|0)|0;E7a(211248,2)|0;F7a(211248,f[g+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[(f[i>>2]|0)+8>>2]|0)|0;E7a(211248,0)|0;F7a(211248,f[(f[(a+80|0)>>2]|0)+8>>2]|0)|0;$7a(211248,1,771)|0;p8a(211248,1)|0;N7a(211248,f[f[q+128>>2]>>2]|0)|0;L=f[q+164>>2]|0;N=+n[q+40>>2];P=N*+n[q+32>>2];O=N*+n[q+36>>2];n[a>>2]=+n[q+28>>2]*N;n[a+4>>2]=P;n[a+8>>2]=O;n[a+12>>2]=N;jf(L|0,1,a|0);L=f[q+168>>2]|0;N=+n[q+56>>2];O=N*+n[q+48>>2];P=N*+n[q+52>>2];n[a>>2]=+n[q+44>>2]*N;n[a+4>>2]=O;n[a+8>>2]=P;n[a+12>>2]=N;jf(L|0,1,a|0);L=f[q+172>>2]|0;N=+n[q+72>>2];P=N*+n[q+64>>2];O=N*+n[q+68>>2];n[a>>2]=+n[q+60>>2]*N;n[a+4>>2]=P;n[a+8>>2]=O;n[a+12>>2]=N;jf(L|0,1,a|0);$e(f[q+160>>2]|0,+(+n[q+108>>2]));KUa(f[q+156>>2]|0);I6a(a+16|0);E7a(211248,M)|0}else H=1}if(H){H=0;if(1){PTa(0,q+236|0,152931);E7a(211248,0)|0;F7a(211248,f[(f[i>>2]|0)+8>>2]|0)|0;c=b[(q+24|0)>>0]|0;a:do if(c<<24>>24==(b[(q+25|0)>>0]|0)){switch(c<<24>>24){case 2:case 0:{k=1;break a}default:{}}if(+n[q+44>>2]==+n[q+60>>2])if(+n[q+48>>2]==+n[q+64>>2])if(+n[q+52>>2]==+n[q+68>>2])k=+n[q+56>>2]==+n[q+72>>2];else k=0;else k=0;else k=0}else k=0;while(0);c=f[52838]|0;d=f[52839]|0;P7a(211248,f[f[q>>2]>>2]|0)|0;j=f[(a+80|0)>>2]|0;e=f[52823]|0;g=f[52824]|0;h=f[52825]|0;i=f[52826]|0;D7a(211248,0,0,f[j+16>>2]|0,f[j+20>>2]|0)|0;$5a(f[q>>2]|0,0,a+80|0,3553,0);Ud(16384);j=b[211532]|0;u8a(211248,1)|0;e8a(211248,514,0,m|l)|0;QTa(q,b[q+26>>0]|0,q+28|0);if(k){e8a(211248,517,0,m|l)|0;QTa(q,b[(q+24|0)>>0]|0,q+44|0)}else{e8a(211248,514,l,m|l)|0;QTa(q,b[(q+24|0)>>0]|0,q+44|0);e8a(211248,517,0,m)|0;QTa(q,b[(q+25|0)>>0]|0,q+60|0)}u8a(211248,j<<24>>24!=0)|0;D7a(211248,e,g,h,i)|0;if((c|0)==(d|0))P7a(211248,c)|0;else{Q7a(211248,c)|0;R7a(211248,d)|0}N7a(211248,f[f[q+236>>2]>>2]|0)|0;F7a(211248,f[(f[(a+80|0)>>2]|0)+8>>2]|0)|0;$7a(211248,1,771)|0;p8a(211248,1)|0;KUa(f[q+244>>2]|0)}else H=1}if(+n[(q+88|0)>>2]>0.0)G=51;else if(+n[q+104>>2]>0.0)G=51;if((G|0)==51){F7a(211248,0)|0;c=f[52838]|0;d=f[52839]|0;P7a(211248,f[f[q>>2]>>2]|0)|0;j=f[(a+80|0)>>2]|0;e=f[52823]|0;g=f[52824]|0;h=f[52825]|0;i=f[52826]|0;D7a(211248,0,0,f[j+16>>2]|0,f[j+20>>2]|0)|0;j=b[211524]|0;p8a(211248,0)|0;k=b[211368]|0;l=b[211369]|0;m=b[211370]|0;o=b[211371]|0;Ud(16384);p=b[211532]|0;u8a(211248,1)|0;N7a(211248,f[f[q+112>>2]>>2]|0)|0;if(+n[(q+88|0)>>2]>0.0){V7a(211248,1,0,0,0)|0;e8a(211248,517,0,E)|0;KUa(f[q+136>>2]|0)}if(+n[(q+104|0)>>2]>0.0){V7a(211248,0,1,0,0)|0;e8a(211248,517,0,F)|0;KUa(f[q+136>>2]|0)}if(D){P7a(211248,f[f[q+8>>2]>>2]|0)|0;if(+n[(q+88|0)>>2]>0.0){V7a(211248,1,0,0,0)|0;e8a(211248,517,0,E)|0;KUa(f[q+136>>2]|0)}if(+n[(q+104|0)>>2]>0.0){V7a(211248,0,1,0,0)|0;e8a(211248,517,0,F)|0;KUa(f[q+136>>2]|0)}}u8a(211248,p<<24>>24!=0)|0;V7a(211248,k<<24>>24!=0,l<<24>>24!=0,m<<24>>24!=0,o<<24>>24!=0)|0;p8a(211248,j<<24>>24!=0)|0;D7a(211248,e,g,h,i)|0;if((c|0)==(d|0))P7a(211248,c)|0;else{Q7a(211248,c)|0;R7a(211248,d)|0}N7a(211248,f[f[q+120>>2]>>2]|0)|0;F7a(211248,f[(f[(a+80|0)>>2]|0)+8>>2]|0)|0;M=f[q+144>>2]|0;P=+n[(q+88|0)>>2];O=P*+n[q+80>>2];N=P*+n[q+84>>2];n[(a+16|0)>>2]=+n[q+76>>2]*P;n[(a+16|0)+4>>2]=O;n[(a+16|0)+8>>2]=N;n[(a+16|0)+12>>2]=P;jf(M|0,1,a+16|0|0);M=f[q+148>>2]|0;P=+n[(q+104|0)>>2];N=P*+n[q+96>>2];O=P*+n[q+100>>2];n[(a+16|0)>>2]=+n[q+92>>2]*P;n[(a+16|0)+4>>2]=N;n[(a+16|0)+8>>2]=O;n[(a+16|0)+12>>2]=P;jf(M|0,1,a+16|0|0);M=f[(a+80|0)>>2]|0;cf(f[q+152>>2]|0,+(1.5/+(f[M+16>>2]|0)),+(1.5/+(f[M+20>>2]|0)));KUa(f[q+140>>2]|0)}if((x|0)==(y|0)&(z|0)==(A|0)&(B|0)==(C|0))e8a(211248,x,z,B)|0;else{f8a(211248,x,z,B)|0;g8a(211248,y,A,C)|0}if((r|0)==(u|0)&(s|0)==(v|0)&(t|0)==(w|0))k8a(211248,r,s,t)|0;else{l8a(211248,r,s,t)|0;m8a(211248,u,v,w)|0}c=f[((a+80|0)+4|0)>>2]|0;if(c|0)Ppb(c);rVa(a+152|0);f[a+1232>>2]=G;f[a+1248>>2]=H}function GWa(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=f[a+48>>2]|0;s=f[a+64>>2]|0;x=f[a+72>>2]|0;w=f[a+560>>2]|0;u=f[a+568>>2]|0;i=f[a+584>>2]|0;y=f[a+1136>>2]|0;a:{d=1;if(d){d=0;if(!i){c=0;y=161}else d=1}if(d)if(1){if(!((i+-1|0)&i))r=(i+-1|0)&u;else if(u>>>0<i>>>0)r=u;else r=(u>>>0)%(i>>>0)|0;d=f[(f[w>>2]|0)+(r<<2)>>2]|0;j=1;if(j){j=0;if(!d){c=r;y=161}else j=1}if(j)if(1){j=f[d>>2]|0;d=1;if(d){d=0;if(!j){c=r;y=161}else d=1}if(d)if(1){p=b[s>>0]|0;o=b[s+1>>0]|0;q=f[s+4>>2]|0;m=f[s+16>>2]|0;if(!((i+-1|0)&i)){if(p<<24>>24){d=j;while(1){o=f[d+4>>2]|0;if(!((o|0)==(u|0)|(o&(i+-1|0)|0)==(r|0))){c=r;y=161;break a}if((b[d+8>>0]|0)==p<<24>>24)if(!((f[d+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2])){t=d;break a}d=f[d>>2]|0;if(!d){c=r;y=161;break a}}}if(!m)while(1){m=f[j+4>>2]|0;if(!((m|0)==(u|0)|(m&(i+-1|0)|0)==(r|0))){c=r;y=161;break a}d=j+8|0;do if(!(b[d>>0]|0)){if((b[d+1>>0]|0)!=o<<24>>24)break;if((f[j+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2]|0)break;if(!(f[j+24>>2]|0)){t=j;break a}}while(0);j=f[j>>2]|0;if(!j){c=r;y=161;break a}}while(1){l=f[j+4>>2]|0;if(!((l|0)==(u|0)|(l&(i+-1|0)|0)==(r|0))){c=r;y=161;break a}l=j+8|0;b:do if(!(b[l>>0]|0))if((b[l+1>>0]|0)==o<<24>>24){if((f[j+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2]|0)break;if((f[j+24>>2]|0)!=(m|0))break;d=s+8|0;k=j+16|0;while(1){if((b[k>>0]|0)!=(b[d>>0]|0))break b;if((b[k+1>>0]|0)!=(b[d+1>>0]|0))break b;k=k+2|0;if((k|0)==(l+8+(m<<1)|0|0)){t=j;break a}else d=d+2|0}}while(0);j=f[j>>2]|0;if(!j){c=r;y=161;break a}}}if(p<<24>>24)while(1){d=f[j+4>>2]|0;if((d|0)!=(u|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(r|0)){c=r;y=161;break a}}if((b[j+8>>0]|0)==p<<24>>24)if(!((f[j+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2])){t=j;break a}j=f[j>>2]|0;if(!j){c=r;y=161;break a}}if(!m)while(1){d=f[j+4>>2]|0;if((d|0)!=(u|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(r|0)){c=r;y=161;break a}}d=j+8|0;do if(!(b[d>>0]|0))if((b[d+1>>0]|0)==o<<24>>24){if((f[j+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2]|0)break;if(!(f[j+24>>2]|0)){t=j;break a}}while(0);j=f[j>>2]|0;if(!j){c=r;y=161;break a}}while(1){d=f[j+4>>2]|0;if((d|0)!=(u|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(r|0)){c=r;y=161;break a}}l=j+8|0;c:do if(!(b[l>>0]|0))if((b[l+1>>0]|0)==o<<24>>24)if(!((f[j+12>>2]^q)&f[(32188+((p&255)<<2)|0)>>2])){if((f[j+24>>2]|0)!=(m|0))break;d=s+8|0;k=j+16|0;while(1){if((b[k>>0]|0)!=(b[d>>0]|0))break c;if((b[k+1>>0]|0)!=(b[d+1>>0]|0))break c;k=k+2|0;if((k|0)==(l+8+(m<<1)|0|0)){t=j;break a}else d=d+2|0}}while(0);j=f[j>>2]|0;if(!j){c=r;y=161;break}}}}}}if((y|0)==161){j=Wpb(52)|0;t=f[s+4>>2]|0;f[(j+8|0)>>2]=f[s>>2];f[(j+8|0)+4>>2]=t;b[(j+16|0)>>0]=0;b[(j+16|0)+1>>0]=0;b[(j+16|0)+2>>0]=0;b[(j+16|0)+3>>0]=0;b[((j+16|0)+4|0)>>0]=0;b[((j+16|0)+4|0)+1>>0]=0;b[((j+16|0)+4|0)+2>>0]=0;b[((j+16|0)+4|0)+3>>0]=0;t=f[s+16>>2]|0;f[(j+24|0)>>2]=t;if(t|0){d=0;do{r=s+8+(d<<1)|0;t=j+16+(d<<1)|0;r=h[r>>0]|h[r+1>>0]<<8;b[t>>0]=r;b[t+1>>0]=r>>8;d=d+1|0}while(d>>>0<(f[(j+24|0)>>2]|0)>>>0)}f[(j+28|0)>>2]=0;f[(j+28|0)+4>>2]=0;f[(j+28|0)+8>>2]=0;f[(j+28|0)+12>>2]=0;f[(j+28|0)+16>>2]=0;f[(j+28|0)+20>>2]=0;f[j+4>>2]=u;f[j>>2]=0;e=+(((f[(w+12|0)>>2]|0)+1|0)>>>0);g=+n[(w+16|0)>>2];do if((i|0)==0|g*+(i>>>0)<e){c=~~+W(+(e/g))>>>0;c=(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0<c>>>0?c:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;i=f[(w+4|0)>>2]|0}if(c>>>0>i>>>0)eVa(w,c);else if(c>>>0<i>>>0){d=~~+W(+(+((f[(w+12|0)>>2]|0)>>>0)/+n[(w+16|0)>>2]))>>>0;if(i>>>0>2&(i+-1&i|0)==0)d=1<<32-(_(d+-1|0)|0);else d=Meb(d)|0;c=c>>>0<d>>>0?d:c;if(c>>>0<i>>>0)eVa(w,c)}c=f[(w+4|0)>>2]|0;if(!((c+-1|0)&c)){i=c;c=(c+-1|0)&u;break}if(u>>>0<c>>>0){i=c;c=u}else{i=c;c=(u>>>0)%(c>>>0)|0}}while(0);c=(f[w>>2]|0)+(c<<2)|0;d=f[c>>2]|0;if(!d){f[j>>2]=f[(w+8|0)>>2];f[(w+8|0)>>2]=j;f[c>>2]=w+8|0;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=i+-1|0;if(!(d&i))c=c&d;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;v=(f[w>>2]|0)+(c<<2)|0;y=187}}else{f[j>>2]=f[d>>2];v=d;y=187}if((y|0)==187)f[v>>2]=j;f[(w+12|0)>>2]=(f[(w+12|0)>>2]|0)+1;t=j}c=f[(a+16|0)>>2]|0;d=f[((a+16|0)+4|0)>>2]|0;if(d|0)Npb(d);f[t+28>>2]=c;w=t+32|0;c=f[w>>2]|0;f[w>>2]=d;if(c|0)Ppb(c);c=f[(a+8|0)>>2]|0;d=f[((a+8|0)+4|0)>>2]|0;if(d|0)Npb(d);f[t+36>>2]=c;w=t+40|0;c=f[w>>2]|0;f[w>>2]=d;if(c|0)Ppb(c);if(x){c=f[a>>2]|0;d=f[(a+4|0)>>2]|0;if(d|0)Npb(d);f[t+44>>2]=c;x=t+48|0;c=f[x>>2]|0;f[x>>2]=d;if(!c){c=a+4|0;d=a}else{Ppb(c);c=a+4|0;d=a}}else{c=a+4|0;d=a}f[z>>2]=f[d>>2];f[z+4>>2]=f[c>>2];f[c>>2]=0;f[a+1136>>2]=y}function HWa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;g=f[a+16>>2]|0;h=f[a+24>>2]|0;d=f[a+160>>2]|0;e=f[a+976>>2]|0;a:{f[g+248>>2]=d;c=f[(h+252|0)>>2]|0;f[(g+252|0)>>2]=c;i=f[(h+256|0)>>2]|0;f[g+256>>2]=i;f[g+260>>2]=f[h+260>>2];if(i|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=g+252|0;f[(h+252|0)>>2]=0;f[(h+256|0)>>2]=0}e=f[(h+264|0)>>2]|0;f[(h+264|0)>>2]=0;d=f[(h+268|0)>>2]|0;f[(h+268|0)>>2]=0;f[g+264>>2]=e;f[g+268>>2]=d;c=f[(h+272|0)>>2]|0;f[(g+272|0)>>2]=c;i=f[(h+276|0)>>2]|0;f[g+276>>2]=i;f[g+280>>2]=f[h+280>>2];if(i|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=g+272|0;f[(h+272|0)>>2]=0;f[(h+276|0)>>2]=0}e=f[(h+284|0)>>2]|0;f[(h+284|0)>>2]=0;d=f[(h+288|0)>>2]|0;f[(h+288|0)>>2]=0;f[g+284>>2]=e;f[g+288>>2]=d;c=f[(h+292|0)>>2]|0;f[(g+292|0)>>2]=c;i=f[(h+296|0)>>2]|0;f[g+296>>2]=i;f[g+300>>2]=f[h+300>>2];if(i|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=g+292|0;f[(h+292|0)>>2]=0;f[(h+296|0)>>2]=0}e=f[(h+304|0)>>2]|0;f[(h+304|0)>>2]=0;d=f[(h+308|0)>>2]|0;f[(h+308|0)>>2]=0;f[g+304>>2]=e;f[g+308>>2]=d;c=f[(h+312|0)>>2]|0;f[(g+312|0)>>2]=c;i=f[(h+316|0)>>2]|0;f[g+316>>2]=i;f[g+320>>2]=f[h+320>>2];if(i|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[e+(c<<2)>>2]=g+312|0;f[(h+312|0)>>2]=0;f[(h+316|0)>>2]=0}e=f[(h+324|0)>>2]|0;f[(h+324|0)>>2]=0;d=f[(h+328|0)>>2]|0;f[(h+328|0)>>2]=0;f[g+324>>2]=e;f[g+328>>2]=d;c=f[(h+332|0)>>2]|0;f[(g+332|0)>>2]=c;i=f[(h+336|0)>>2]|0;f[g+336>>2]=i;f[g+340>>2]=f[h+340>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+332|0;f[(h+332|0)>>2]=0;f[(h+336|0)>>2]=0}e=f[(h+344|0)>>2]|0;f[(h+344|0)>>2]=0;d=f[(h+348|0)>>2]|0;f[(h+348|0)>>2]=0;f[g+344>>2]=e;f[g+348>>2]=d;c=f[(h+352|0)>>2]|0;f[(g+352|0)>>2]=c;i=f[(h+356|0)>>2]|0;f[g+356>>2]=i;f[g+360>>2]=f[h+360>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+352|0;f[(h+352|0)>>2]=0;f[(h+356|0)>>2]=0}e=f[(h+364|0)>>2]|0;f[(h+364|0)>>2]=0;d=f[(h+368|0)>>2]|0;f[(h+368|0)>>2]=0;f[g+364>>2]=e;f[g+368>>2]=d;c=f[(h+372|0)>>2]|0;f[(g+372|0)>>2]=c;i=f[(h+376|0)>>2]|0;f[g+376>>2]=i;f[g+380>>2]=f[h+380>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+372|0;f[(h+372|0)>>2]=0;f[(h+376|0)>>2]=0}e=f[(h+384|0)>>2]|0;f[(h+384|0)>>2]=0;d=f[(h+388|0)>>2]|0;f[(h+388|0)>>2]=0;f[g+384>>2]=e;f[g+388>>2]=d;c=f[(h+392|0)>>2]|0;f[(g+392|0)>>2]=c;i=f[(h+396|0)>>2]|0;f[g+396>>2]=i;f[g+400>>2]=f[h+400>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+392|0;f[(h+392|0)>>2]=0;f[(h+396|0)>>2]=0}e=f[(h+404|0)>>2]|0;f[(h+404|0)>>2]=0;d=f[(h+408|0)>>2]|0;f[(h+408|0)>>2]=0;f[g+404>>2]=e;f[g+408>>2]=d;c=f[(h+412|0)>>2]|0;f[(g+412|0)>>2]=c;i=f[(h+416|0)>>2]|0;f[g+416>>2]=i;f[g+420>>2]=f[h+420>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+412|0;f[(h+412|0)>>2]=0;f[(h+416|0)>>2]=0}e=f[(h+424|0)>>2]|0;f[(h+424|0)>>2]=0;d=f[(h+428|0)>>2]|0;f[(h+428|0)>>2]=0;f[g+424>>2]=e;f[g+428>>2]=d;c=f[(h+432|0)>>2]|0;f[(g+432|0)>>2]=c;i=f[(h+436|0)>>2]|0;f[g+436>>2]=i;f[g+440>>2]=f[h+440>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+432|0;f[(h+432|0)>>2]=0;f[(h+436|0)>>2]=0}e=f[(h+444|0)>>2]|0;f[(h+444|0)>>2]=0;d=f[(h+448|0)>>2]|0;f[(h+448|0)>>2]=0;f[g+444>>2]=e;f[g+448>>2]=d;c=f[(h+452|0)>>2]|0;f[(g+452|0)>>2]=c;i=f[(h+456|0)>>2]|0;f[g+456>>2]=i;f[g+460>>2]=f[h+460>>2];if(i|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+452|0;f[(h+452|0)>>2]=0;f[(h+456|0)>>2]=0}e=f[(h+464|0)>>2]|0;f[(h+464|0)>>2]=0;d=f[(h+468|0)>>2]|0;f[(h+468|0)>>2]=0;f[g+464>>2]=e;f[g+468>>2]=d;c=f[(h+472|0)>>2]|0;f[(g+472|0)>>2]=c;i=f[(h+476|0)>>2]|0;f[g+476>>2]=i;f[g+480>>2]=f[h+480>>2];if(!i){e=g+484|0;i=h+484|0;f[e>>2]=0;d=g+488|0;f[d>>2]=0;j=g+492|0;f[j>>2]=0;j=f[i>>2]|0;f[e>>2]=j;e=h+488|0;j=f[e>>2]|0;f[d>>2]=j;d=h+492|0;j=f[d>>2]|0;c=g+492|0;f[c>>2]=j;f[d>>2]=0;f[e>>2]=0;f[i>>2]=0;i=g+496|0;e=h+496|0;e=f[e>>2]|0;f[i>>2]=e;i=g+500|0;h=h+500|0;h=b[h>>0]|0;b[i>>0]=h;f[a+1312>>2]=5;break a}c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[e+(c<<2)>>2]=g+472|0;f[(h+472|0)>>2]=0;f[(h+476|0)>>2]=0;i=g+484|0;j=h+484|0;f[i>>2]=0;e=g+488|0;f[e>>2]=0;c=g+492|0;f[c>>2]=0;c=f[j>>2]|0;f[i>>2]=c;i=h+488|0;c=f[i>>2]|0;f[e>>2]=c;e=h+492|0;c=f[e>>2]|0;d=g+492|0;f[d>>2]=c;f[e>>2]=0;f[i>>2]=0;f[j>>2]=0;j=g+496|0;i=h+496|0;i=f[i>>2]|0;f[j>>2]=i;j=g+500|0;i=h+500|0;i=b[i>>0]|0;b[j>>0]=i;f[a+1312>>2]=5;break a}}function IWa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0;w=f[a+688>>2]|0;c=f[a+2840>>2]|0;v=f[a+2848>>2]|0;i=f[a+3136>>2]|0;s=f[a+3848>>2]|0;t=f[a+3888>>2]|0;u=f[a+3952>>2]|0;h=+n[a+5560>>2];x=f[a+6760>>2]|0;a:{if(i&67108864|0){g=f[(a+592|0)>>2]|0;i=+n[c>>2]>h;do if(f[(g+36|0)>>2]|0){hWa(a,g,b[g+48>>0]|0,+n[g+44>>2]);e=f[(g+36|0)>>2]|0;f[e>>2]=f[a>>2];f[e+4>>2]=f[(a+4|0)>>2];f[e+8>>2]=f[(a+8|0)>>2];f[e+12>>2]=f[(a+12|0)>>2];f[e+16>>2]=f[(a+16|0)>>2];f[e+20>>2]=f[(a+20|0)>>2];f[e+52>>2]=f[(a+24|0)>>2];f[e+56>>2]=f[(a+28|0)>>2];f[e+60>>2]=f[(a+32|0)>>2];f[e+64>>2]=f[(a+36|0)>>2];f[e+68>>2]=f[(a+40|0)>>2];f[e+72>>2]=f[(a+44|0)>>2];c=f[v>>2]|0;f[(a+620|0)>>2]=e;f[(a+608|0)>>2]=c;d=1;if(d)if(i){b:do if(!(c&268435456)){C=+n[e>>2];B=(+n[e+12>>2]-C)*.5;n[a>>2]=B;A=+n[e+4>>2];z=(+n[e+16>>2]-A)*.5;n[(a+4|0)>>2]=z;y=+n[e+8>>2];h=(+n[e+20>>2]-y)*.5;n[(a+8|0)>>2]=h;n[(a+632|0)>>2]=C+B;n[((a+632|0)+4|0)>>2]=A+z;n[((a+632|0)+8|0)>>2]=y+h;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break b;case 2:break;default:{x=416;break b}}j=f[(a+608|0)>>2]|0;x=415}else{j=c;x=415}while(0);if((x|0)==415){f[(a+608|0)>>2]=j|268435456;x=416}if((x|0)==416){x=0;r=f[(a+620|0)>>2]|0;h=+n[r>>2];z=(+n[r+12>>2]-h)*.5;y=+n[r+4>>2];A=(+n[r+16>>2]-y)*.5;C=+n[r+8>>2];B=(+n[r+20>>2]-C)*.5;C=+n[u>>2]+((h+z)*+n[(a+368|0)>>2]+((y+A)*+n[s>>2]+(C+B)*+n[t>>2]));LVa(w+4|0,(z*z+(A*A+B*B))/(C*C<9.999999747378752e-06?9.999999747378752e-06:C*C),a+620|0,a+608|0)}c=f[v>>2]|0;f[(a+620|0)>>2]=e+52|0;f[(a+608|0)>>2]=c;c:do if(!(c&268435456)){h=+n[(e+52|0)>>2];y=(+n[e+64>>2]-h)*.5;n[a>>2]=y;z=+n[e+56>>2];A=(+n[e+68>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+60>>2];C=(+n[e+72>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break c;case 2:break;default:{x=479;break c}}p=f[(a+608|0)>>2]|0;x=478}else{p=c;x=478}while(0);if((x|0)==478){f[(a+608|0)>>2]=p|268435456;x=479}if((x|0)==479){x=0;v=f[(a+620|0)>>2]|0;h=+n[v>>2];z=(+n[v+12>>2]-h)*.5;y=+n[v+4>>2];A=(+n[v+16>>2]-y)*.5;C=+n[v+8>>2];B=(+n[v+20>>2]-C)*.5;C=+n[u>>2]+((h+z)*+n[(a+368|0)>>2]+((y+A)*+n[s>>2]+(C+B)*+n[t>>2]));LVa(w+4|0,(z*z+(A*A+B*B))/(C*C<9.999999747378752e-06?9.999999747378752e-06:C*C),a+620|0,a+608|0)}break}else d=1;if(d)if(1){d:do if(!(c&268435456)){h=+n[e>>2];y=(+n[e+12>>2]-h)*.5;n[a>>2]=y;z=+n[e+4>>2];A=(+n[e+16>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+8>>2];C=(+n[e+20>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break d;case 2:break;default:{x=421;break d}}k=f[(a+608|0)>>2]|0;x=420}else{k=c;x=420}while(0);if((x|0)==420){f[(a+608|0)>>2]=k|268435456;x=421}if((x|0)==421){x=0;LVa(w+4|0,0.0,a+620|0,a+608|0)}c=f[v>>2]|0;f[(a+620|0)>>2]=e+52|0;f[(a+608|0)>>2]=c;e:do if(!(c&268435456)){h=+n[(e+52|0)>>2];y=(+n[e+64>>2]-h)*.5;n[a>>2]=y;z=+n[e+56>>2];A=(+n[e+68>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+60>>2];C=(+n[e+72>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break e;case 2:break;default:{x=474;break e}}o=f[(a+608|0)>>2]|0;x=473}else{o=c;x=473}while(0);if((x|0)==473){f[(a+608|0)>>2]=o|268435456;x=474}if((x|0)==474){x=0;LVa(w+4|0,0.0,a+620|0,a+608|0)}break}}while(0);c=f[g+24>>2]|0;d=f[g+28>>2]|0;if((c|0)==(d|0)){f[a+6824>>2]=1;break a}while(1){WVa(w,f[c>>2]|0,a+592|0,a+668|0,a+104|0,a+368|0,a+384|0,i);c=c+4|0;if((c|0)==(d|0)){f[a+6824>>2]=2;f[a+6828>>2]=9;break a}}}i=f[(a+592|0)>>2]|0;g=+n[c>>2]>h;do if(f[(i+36|0)>>2]|0){hWa(a,i,b[i+48>>0]|0,+n[i+44>>2]);e=f[(i+36|0)>>2]|0;f[e>>2]=f[a>>2];f[e+4>>2]=f[(a+4|0)>>2];f[e+8>>2]=f[(a+8|0)>>2];f[e+12>>2]=f[(a+12|0)>>2];f[e+16>>2]=f[(a+16|0)>>2];f[e+20>>2]=f[(a+20|0)>>2];f[e+52>>2]=f[(a+24|0)>>2];f[e+56>>2]=f[(a+28|0)>>2];f[e+60>>2]=f[(a+32|0)>>2];f[e+64>>2]=f[(a+36|0)>>2];f[e+68>>2]=f[(a+40|0)>>2];f[e+72>>2]=f[(a+44|0)>>2];c=f[v>>2]|0;f[(a+620|0)>>2]=e;f[(a+608|0)>>2]=c;d=1;if(d)if(g){f:do if(!(c&268435456)){h=+n[e>>2];y=(+n[e+12>>2]-h)*.5;n[a>>2]=y;z=+n[e+4>>2];A=(+n[e+16>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+8>>2];C=(+n[e+20>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break f;case 2:break;default:{x=432;break f}}l=f[(a+608|0)>>2]|0;x=431}else{l=c;x=431}while(0);if((x|0)==431){f[(a+608|0)>>2]=l|268435456;x=432}if((x|0)==432){x=0;q=f[(a+620|0)>>2]|0;h=+n[q>>2];z=(+n[q+12>>2]-h)*.5;y=+n[q+4>>2];A=(+n[q+16>>2]-y)*.5;C=+n[q+8>>2];B=(+n[q+20>>2]-C)*.5;C=+n[u>>2]+((h+z)*+n[(a+368|0)>>2]+((y+A)*+n[s>>2]+(C+B)*+n[t>>2]));MVa(w+4|0,(z*z+(A*A+B*B))/(C*C<9.999999747378752e-06?9.999999747378752e-06:C*C),a+620|0,a+608|0)}c=f[v>>2]|0;f[(a+620|0)>>2]=e+52|0;f[(a+608|0)>>2]=c;g:do if(!(c&268435456)){h=+n[(e+52|0)>>2];y=(+n[e+64>>2]-h)*.5;n[a>>2]=y;z=+n[e+56>>2];A=(+n[e+68>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+60>>2];C=(+n[e+72>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break g;case 2:break;default:{x=489;break g}}r=f[(a+608|0)>>2]|0;x=488}else{r=c;x=488}while(0);if((x|0)==488){f[(a+608|0)>>2]=r|268435456;x=489}if((x|0)==489){x=0;r=f[(a+620|0)>>2]|0;h=+n[r>>2];z=(+n[r+12>>2]-h)*.5;y=+n[r+4>>2];A=(+n[r+16>>2]-y)*.5;C=+n[r+8>>2];B=(+n[r+20>>2]-C)*.5;C=+n[u>>2]+((h+z)*+n[(a+368|0)>>2]+((y+A)*+n[s>>2]+(C+B)*+n[t>>2]));MVa(w+4|0,(z*z+(A*A+B*B))/(C*C<9.999999747378752e-06?9.999999747378752e-06:C*C),a+620|0,a+608|0)}break}else d=1;if(d)if(1){h:do if(!(c&268435456)){h=+n[e>>2];y=(+n[e+12>>2]-h)*.5;n[a>>2]=y;z=+n[e+4>>2];A=(+n[e+16>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+8>>2];C=(+n[e+20>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break h;case 2:break;default:{x=437;break h}}m=f[(a+608|0)>>2]|0;x=436}else{m=c;x=436}while(0);if((x|0)==436){f[(a+608|0)>>2]=m|268435456;x=437}if((x|0)==437){x=0;MVa(w+4|0,0.0,a+620|0,a+608|0)}c=f[v>>2]|0;f[(a+620|0)>>2]=e+52|0;f[(a+608|0)>>2]=c;i:do if(!(c&268435456)){h=+n[(e+52|0)>>2];y=(+n[e+64>>2]-h)*.5;n[a>>2]=y;z=+n[e+56>>2];A=(+n[e+68>>2]-z)*.5;n[(a+4|0)>>2]=A;B=+n[e+60>>2];C=(+n[e+72>>2]-B)*.5;n[(a+8|0)>>2]=C;n[(a+632|0)>>2]=h+y;n[((a+632|0)+4|0)>>2]=z+A;n[((a+632|0)+8|0)>>2]=B+C;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break i;case 2:break;default:{x=484;break i}}q=f[(a+608|0)>>2]|0;x=483}else{q=c;x=483}while(0);if((x|0)==483){f[(a+608|0)>>2]=q|268435456;x=484}if((x|0)==484){x=0;MVa(w+4|0,0.0,a+620|0,a+608|0)}break}}while(0);c=f[i+24>>2]|0;i=f[i+28>>2]|0;if((c|0)!=(i|0))if(g){g=c;do{c=f[g>>2]|0;do if(f[c+20>>2]|0){e=Mla(c)|0;d=f[v>>2]|0;if(!(d&268435456)){c=KVa(a+104|0,e+44|0,e+56|0)|0;if(!c)break;d=f[v>>2]|0}else c=2;f[a>>2]=(c|0)==2?d|268435456:d;C=+n[u>>2]+(+n[e+44>>2]*+n[(a+368|0)>>2]+(+n[e+48>>2]*+n[s>>2]+ +n[e+52>>2]*+n[t>>2]));C=+n[e+68>>2]/(C*C<9.999999747378752e-06?9.999999747378752e-06:C*C);f[(a+632|0)>>2]=e;UVa(w+4|0,C,a+632|0,a)}while(0);g=g+4|0}while((g|0)!=(i|0))}else{g=c;do{c=f[g>>2]|0;do if(f[c+20>>2]|0){e=Mla(c)|0;d=f[v>>2]|0;if(!(d&268435456)){c=KVa(a+104|0,e+44|0,e+56|0)|0;if(!c)break;d=f[v>>2]|0}else c=2;f[a>>2]=(c|0)==2?d|268435456:d;f[(a+632|0)>>2]=e;UVa(w+4|0,0.0,a+632|0,a)}while(0);g=g+4|0}while((g|0)!=(i|0))}}f[a+6760>>2]=x}function JWa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0.0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;ma=f[a+688>>2]|0;o=f[a+704>>2]|0;p=f[a+712>>2]|0;na=f[a+728>>2]|0;oa=f[a+736>>2]|0;k=f[a+864>>2]|0;l=f[a+872>>2]|0;W=f[a+2840>>2]|0;X=f[a+2848>>2]|0;ga=f[a+2872>>2]|0;ha=f[a+2880>>2]|0;s=f[a+3136>>2]|0;c=f[a+3456>>2]|0;i=f[a+4968>>2]|0;q=f[a+5472>>2]|0;r=f[a+5480>>2]|0;$=+n[a+5560>>2];la=f[a+6760>>2]|0;a:{if((c|0)>-1){Q=f[(f[(a+592|0)>>2]|0)+24>>2]|0;R=f[Q+(c*20|0)>>2]|0;P=f[Q+(c*20|0)+4>>2]|0;O=(f[R+48>>2]&32768|0)!=0;Q=(f[Q+(c*20|0)+8>>2]|0)-P>>2;if(Q|0){K=0;E=0;L=0;M=0;N=0;F=0.0;G=0.0;c=0;I=0;J=0;d=s;H=f[R+36>>2]|0;e=0;D=f[R+40>>2]|0;s=0;C=f[R+44>>2]|0;i=0;while(1){q=f[P+(c<<2)>>2]|0;f[(a+528|0)>>2]=0;f[(a+528|0)+4>>2]=0;f[(a+528|0)+8>>2]=0;r=f[q+108>>2]|0;m=d&768|f[(q+196|0)>>2]&14742403;b[(a+96|0)>>0]=0;b[(a+80|0)>>0]=0;rQa(f[ma>>2]|0,q,m,O,a+540|0,a+528|0,a+96|0,a+80|0,a,a+64|0);o=f[a>>2]|0;p=f[(a+64|0)>>2]|0;d=f[(q+196|0)>>2]|0;if(!(d&8388608)){z=-1.0;A=-1.0;B=-1.0}else{l=f[(q+104|0)>>2]|0;z=+n[l+256>>2];A=+n[l+260>>2];B=+n[l+264>>2]}n[(a+552|0)>>2]=z;n[((a+552|0)+4|0)>>2]=A;n[((a+552|0)+8|0)>>2]=B;if(!(f[(a+528|0)>>2]|0)){g=f[(q+12|0)>>2]|0;if(!g){spa(q,0);d=f[(q+196|0)>>2]|0;g=f[(q+12|0)>>2]|0}f[(a+528|0)>>2]=g}if(!(d&8388608)){w=-1.0;x=-1.0;y=-1.0}else{l=f[(q+104|0)>>2]|0;w=+n[l+268>>2];x=+n[l+272>>2];y=+n[l+276>>2]}n[((a+552|0)+12|0)>>2]=w;n[((a+552|0)+16|0)>>2]=x;n[((a+552|0)+20|0)>>2]=y;if(!(f[((a+528|0)+4|0)>>2]|0)){g=f[(q+20|0)>>2]|0;if(!g){spa(q,1);d=f[(q+196|0)>>2]|0;g=f[(q+20|0)>>2]|0}f[((a+528|0)+4|0)>>2]=g}if(!(d&8388608)){t=-1.0;u=-1.0;v=-1.0}else{l=f[(q+104|0)>>2]|0;t=+n[l+280>>2];u=+n[l+284>>2];v=+n[l+288>>2]}n[((a+552|0)+24|0)>>2]=t;n[((a+552|0)+28|0)>>2]=u;n[((a+552|0)+32|0)>>2]=v;if(!(f[((a+528|0)+8|0)>>2]|0)){d=f[(q+28|0)>>2]|0;if(!d){spa(q,2);d=f[(q+28|0)>>2]|0}f[((a+528|0)+8|0)>>2]=d}b:do if((b[q+203>>0]&3)==1){d=f[(q+196|0)>>2]|0;if(d&4|0){l=0;break}l=j[(q+200|0)>>1]|h[(q+200|0)+2>>0]<<16;if(d>>>28&7|d&67108864|l&7|(l&16777215)>>>3&7|0){WVa(ma,q,a+592|0,a+668|0,a+104|0,a+368|0,a+384|0,+n[W>>2]>$);l=0;break}do if(d&33554432|0){l=f[(q+104|0)>>2]|0;if(!(+n[(a+384|0)>>2]*+n[l+240>>2]+(+n[((a+384|0)+4|0)>>2]*+n[l+244>>2]+ +n[((a+384|0)+8|0)>>2]*+n[l+248>>2])<+n[l+252>>2]))break;if(b[(ma+832|0)>>0]&16){l=0;break b}f[(q+196|0)>>2]=d&-1793;l=0;break b}while(0);g=b[q+192>>0]|0;g=g&7&((g&255)>>>3&7|b[(a+668|0)>>0]);if(b[(ma+832|0)>>0]&16){l=g;break}f[(q+196|0)>>2]=d&-1793;l=g}else l=0;while(0);d=f[(ma+312|0)>>2]|0;k=f[(ma+316|0)>>2]|0;do if((d|0)==(k|0))V=ma+324|0;else{la=f[(q+116|0)+4>>2]|0;f[a>>2]=f[(q+116|0)>>2];f[a+4>>2]=la;while(1){g=d+524|0;if(XVa(d,a)|0){la=356;break}if((g|0)==(k|0)){la=354;break}else d=g}if((la|0)==354){la=0;V=ma+324|0;break}else if((la|0)==356){la=0;V=d+20|0;break}}while(0);if(f[(q+196|0)>>2]&1048576|0)AQa(V,f[ma>>2]|0,q,l,f[X>>2]&1792,f[(ma+828|0)>>2]|0,na,oa);c:do if(((o|m)&p|0)==(J|0)&(c|0?l<<24>>24==L<<24>>24:0)){if(!(J&8388608))la=362;else if(!(v!=+n[((a+632|0)+32|0)>>2]|w==+n[((a+632|0)+12|0)>>2]&(((A!=+n[((a+632|0)+4|0)>>2]?1:z!=+n[(a+632|0)>>2])|B!=+n[((a+632|0)+8|0)>>2])^1)&x==+n[((a+632|0)+16|0)>>2]&y==+n[((a+632|0)+20|0)>>2]&t==+n[((a+632|0)+24|0)>>2]&u==+n[((a+632|0)+28|0)>>2]^1))la=362;do if((la|0)==362){la=0;if(+n[(a+540|0)>>2]!=+n[(a+620|0)>>2])break;if(+n[((a+540|0)+4|0)>>2]!=+n[((a+620|0)+4|0)>>2])break;if(+n[((a+540|0)+8|0)>>2]!=+n[((a+620|0)+8|0)>>2])break;if((f[(a+528|0)>>2]|0)!=(f[(a+608|0)>>2]|0))break;if((f[((a+528|0)+4|0)>>2]|0)!=(f[((a+608|0)+4|0)>>2]|0))break;if(!((r|0)==(E|0)&((V|0)==(K|0)?(f[((a+528|0)+8|0)>>2]|0)==(f[((a+608|0)+8|0)>>2]|0):0)))break;if((h[(a+96|0)>>0]|0)!=(M&1|0))break;if((h[(a+80|0)>>0]|0)!=(N&1|0))break;if(!(J&1)){aa=I;ba=K;S=E;ca=L;da=M;ea=N;T=F;U=G;fa=J;Y=e;Z=s;_=i;ia=H;ja=D;ka=C;break c}if(+n[q+144>>2]!=F)break;if(!(+n[q+148>>2]!=G)){aa=I;ba=K;S=E;ca=L;da=M;ea=N;T=F;U=G;fa=J;Y=e;Z=s;_=i;ia=H;ja=D;ka=C;break c}}while(0);if(!(J&768))la=379;else la=375}else if((J&768|0)==0|(c|0)==0)la=379;else la=375;while(0);if((la|0)==375){d=f[ma>>2]|0;g=P+(I<<2)|0;la=c-I|0;f[a>>2]=R;f[(a+8|0)>>2]=0;f[(a+12|0)>>2]=0;f[(a+16|0)>>2]=la;f[(a+20|0)>>2]=I;f[(a+24|0)>>2]=J;n[(a+40|0)>>2]=1.0;if(la>>>0>1)f[(a+4|0)>>2]=g;else f[(a+4|0)>>2]=f[g>>2];yQa(K,d,a,L,f[(a+608|0)>>2]|0,a+632|0,+n[(a+620|0)>>2],H,e,f[((a+608|0)+4|0)>>2]|0,ga,+n[((a+620|0)+4|0)>>2],D,s,f[((a+608|0)+8|0)>>2]|0,ha,+n[((a+620|0)+8|0)>>2],C,i,M,N,f[(ma+828|0)>>2]|0,na,oa);la=379}if((la|0)==379){la=0;f[(a+620|0)>>2]=f[(a+540|0)>>2];f[(a+620|0)+4>>2]=f[(a+540|0)+4>>2];f[(a+620|0)+8>>2]=f[(a+540|0)+8>>2];f[(a+608|0)>>2]=f[(a+528|0)>>2];f[(a+608|0)+4>>2]=f[(a+528|0)+4>>2];f[(a+608|0)+8>>2]=f[(a+528|0)+8>>2];f[(a+632|0)>>2]=f[(a+552|0)>>2];f[(a+632|0)+4>>2]=f[(a+552|0)+4>>2];f[(a+632|0)+8>>2]=f[(a+552|0)+8>>2];f[ga>>2]=f[((a+552|0)+12|0)>>2];f[ga+4>>2]=f[((a+552|0)+12|0)+4>>2];f[ga+8>>2]=f[((a+552|0)+12|0)+8>>2];f[ha>>2]=f[((a+552|0)+24|0)>>2];f[ha+4>>2]=f[((a+552|0)+24|0)+4>>2];f[ha+8>>2]=f[((a+552|0)+24|0)+8>>2];aa=c;ba=V;S=r;ca=l;da=(b[(a+96|0)>>0]|0)!=0;ea=(b[(a+80|0)>>0]|0)!=0;T=+n[q+144>>2];U=+n[q+148>>2];fa=(o|m)&p;Y=0;Z=0;_=0;ia=H+e|0;ja=D+s|0;ka=C+i|0}i=f[(R+52|0)>>2]|0;e=Y+(f[i+(c*12|0)>>2]|0)|0;g=Z+(f[i+(c*12|0)+4>>2]|0)|0;i=_+(f[i+(c*12|0)+8>>2]|0)|0;c=c+1|0;if((c|0)==(Q|0))break;K=ba;E=S;L=ca;M=da;N=ea;F=T;G=U;I=aa;J=fa;d=f[X>>2]|0;H=ia;D=ja;s=g;C=ka}if(fa&768|0){d=f[ma>>2]|0;c=P+(aa<<2)|0;_=Q-aa|0;f[a>>2]=R;f[(a+8|0)>>2]=0;f[(a+12|0)>>2]=0;f[(a+16|0)>>2]=_;f[(a+20|0)>>2]=aa;f[(a+24|0)>>2]=fa;n[(a+40|0)>>2]=1.0;if(_>>>0>1)f[(a+4|0)>>2]=c;else f[(a+4|0)>>2]=f[c>>2];yQa(ba,d,a,ca,f[(a+608|0)>>2]|0,a+632|0,+n[(a+620|0)>>2],ia,e,f[((a+608|0)+4|0)>>2]|0,ga,+n[((a+620|0)+4|0)>>2],ja,g,f[((a+608|0)+8|0)>>2]|0,ha,+n[((a+620|0)+8|0)>>2],ka,i,da,ea,f[(ma+828|0)>>2]|0,na,oa)}}f[a+6832>>2]=1;break a}if(!(s&234881024)){c=f[(a+592|0)>>2]|0;g=f[(c+196|0)>>2]|0;if(!(b[(ma+832|0)>>0]&16))f[(c+196|0)>>2]=g&-1793;d=f[(ma+312|0)>>2]|0;e=f[(ma+316|0)>>2]|0;do if((d|0)==(e|0))m=ma+324|0;else{la=f[(c+116|0)+4>>2]|0;f[a>>2]=f[(c+116|0)>>2];f[a+4>>2]=la;while(1){c=d+524|0;if(XVa(d,a)|0){la=395;break}if((c|0)==(e|0)){la=393;break}else d=c}if((la|0)==393){la=0;m=ma+324|0;break}else if((la|0)==395){la=0;m=d+20|0;break}}while(0);if(!((g|s)&1792)){f[a+6832>>2]=1;break a}c=f[(a+592|0)>>2]|0;if(f[c+196>>2]&1048576|0)AQa(m,f[ma>>2]|0,c,b[(a+668|0)>>0]|0,(g|s)&1792,f[(ma+828|0)>>2]|0,na,oa);if(!((g|s)&768)){f[a+6832>>2]=1;break a}do if(i&(l|0)==0){c=f[(a+592|0)>>2]|0;ja=f[c+196>>2]|0;ka=j[(c+200|0)>>1]|h[(c+200|0)+2>>0]<<16;if(!(ja>>>28&7|ja&67108864|ka&7|(ka&16777215)>>>3&7)){ka=f[(f[c+4>>2]|0)+44>>2]|0;if((f[ka+112>>2]|0)-(f[ka+108>>2]|0)>>2>>>0<=2)break;d=f[c+96>>2]|0;c=b[(d+120|0)>>0]|0;if(c&16){loa(d);c=b[(d+120|0)>>0]|0}if(c&2)break;BQa(m,f[ma>>2]|0,f[(a+592|0)>>2]|0,b[(a+668|0)>>0]|0,(g|s)&1792,f[(ma+828|0)>>2]|0,na,oa);f[a+6832>>2]=2;f[a+6836>>2]=3;break a}}while(0);vqa(f[(a+592|0)>>2]|0,p,o,q,r);zQa(m,f[ma>>2]|0,f[(a+592|0)>>2]|0,k,l,b[(a+668|0)>>0]|0,(g|s)&1792,f[(ma+828|0)>>2]|0,na,oa);f[a+6832>>2]=1;break a}}f[a+6760>>2]=la}function KWa(a){a=a|0;var c=0,d=0,e=0,g=0.0,i=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0;v=f[a+688>>2]|0;q=f[a+696>>2]|0;o=f[a+1224>>2]|0;p=f[a+1248>>2]|0;s=f[a+3848>>2]|0;t=f[a+3888>>2]|0;u=f[a+3952>>2]|0;r=f[a+5464>>2]|0;m=f[a+6760>>2]|0;w=f[a+6768>>2]|0;c=f[a+6776>>2]|0;if(w){w=0;switch(c|0){default:{c=f[v+272>>2]|0;d=f[(v+276|0)>>2]|0;if((d|0)!=(c|0))f[(v+276|0)>>2]=d+(~((d+-16-c|0)>>>4)<<4);GVa(v+4|0);c=f[v+808>>2]|0;d=f[(v+812|0)>>2]|0;if((d|0)!=(c|0))f[(v+812|0)>>2]=d+(~(((d+-60-c|0)>>>0)/60|0)*60|0);f[v+820>>2]=0;c=f[(v+312|0)>>2]|0;m=f[(v+316|0)>>2]|0;if((c|0)==(m|0))m=181;else{do{d=f[c+504>>2]|0;e=c+508|0;l=f[e>>2]|0;if((l|0)!=(d|0))f[e>>2]=l+(~(((l+-60-d|0)>>>0)/60|0)*60|0);f[c+516>>2]=0;c=c+524|0}while((c|0)!=(m|0));m=181}}}}if((m|0)==181){c=f[v+296>>2]|0;d=f[(v+300|0)>>2]|0;if((d|0)!=(c|0))f[(v+300|0)>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);f[(v+308|0)>>2]=0;f[(a+96|0)>>2]=0;if((q&255)<2|(b[(v+832|0)>>0]&16)!=0)f[(a+96|0)>>2]=768;else if(q<<24>>24==2)f[(a+96|0)>>2]=512;f[(a+80|0)>>2]=a+96|0;f[((a+80|0)+4|0)>>2]=a+668|0;f[((a+80|0)+8|0)>>2]=a+104|0;f[((a+80|0)+12|0)>>2]=a+384|0;f[(a+64|0)>>2]=a+96|0;f[((a+64|0)+4|0)>>2]=a+668|0;f[((a+64|0)+8|0)>>2]=a+104|0;f[((a+64|0)+12|0)>>2]=a+384|0;dxa(r);a:{d=1;if(d){d=0;if(fxa(r)|0){c=(uwa(r)|0)+8|0;c=f[c>>2]|0;if(c|0){d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0);b:while(1){do{e=f[d+12>>2]|0;f[a>>2]=e;if(!((j[(e+200|0)>>1]|h[(e+200|0)+2>>0]<<16)&7864320)){r=HVa(e,f[f[(a+64|0)>>2]>>2]|0,f[((a+64|0)+4|0)>>2]|0,f[((a+64|0)+8|0)>>2]|0,f[((a+64|0)+12|0)>>2]|0)|0;e=b[(v+832|0)>>0]|0;c:do if(r){l=f[a>>2]|0;do if(!(e&8)){if(!(f[l+196>>2]&4))break;e=f[(v+288|0)>>2]|0;if(e>>>0<(f[(v+292|0)>>2]|0)>>>0){q=f[(a+100|0)>>2]|0;r=f[(a+96|0)>>2]|0;f[e>>2]=l;f[e+4>>2]=q;f[e+8>>2]=r&-234881025;f[e+12>>2]=-1;f[(v+288|0)>>2]=(f[(v+288|0)>>2]|0)+16;break c}else{IVa(v+284|0,a+100|0,a,a+96|0);break c}}while(0);e=j[(l+200|0)>>1]|h[(l+200|0)+2>>0]<<16;if(e&65536){ppa(l);e=j[(l+200|0)>>1]|h[(l+200|0)+2>>0]<<16}g=+n[l+168>>2]+ +n[l+156>>2];i=+n[l+172>>2]+ +n[l+160>>2];k=+n[l+176>>2]+ +n[l+164>>2];if(e&32768|0)qpa(l);k=+n[u>>2]+(g*+n[(a+368|0)>>2]+(i*+n[s>>2]+k*+n[t>>2]));JVa(v+4|0,+n[l+152>>2]/(k*k<9.999999747378752e-06?9.999999747378752e-06:k*k),a,a+96|0)}else if(!(e&16)){r=(f[a>>2]|0)+196|0;f[r>>2]=f[r>>2]&-1793}while(0)}d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue b}}}}else d=1}if(d)if(1){c=Uwa(r)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(a+608|0)>>2]=f[c>>2];f[(a+592|0)>>2]=f[(c+4|0)>>2];f[(a+620|0)>>2]=f[(a+608|0)>>2];f[(a+632|0)>>2]=f[(a+592|0)>>2];b[a>>0]=b[(a+552|0)>>0]|0;d=$ia(a+620|0,a+632|0,a)|0;f[(a+540|0)>>2]=d;f[(a+528|0)>>2]=f[(c+4|0)>>2];f[(a+632|0)>>2]=f[(a+540|0)>>2];f[a>>2]=f[(a+528|0)>>2];aja(c,a+632|0,a)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;d:do if((c|0)!=(d|0))while(1){q=f[c>>2]|0;p=f[(a+96|0)>>2]|0;f[(a+620|0)>>2]=q;f[(a+608|0)>>2]=p;z=+n[q>>2];y=(+n[q+12>>2]-z)*.5;n[a>>2]=y;x=+n[q+4>>2];g=(+n[q+16>>2]-x)*.5;n[(a+4|0)>>2]=g;i=+n[q+8>>2];k=(+n[q+20>>2]-i)*.5;n[(a+8|0)>>2]=k;n[(a+632|0)>>2]=z+y;n[((a+632|0)+4|0)>>2]=x+g;n[((a+632|0)+8|0)>>2]=i+k;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break;case 2:{f[(a+608|0)>>2]=f[(a+608|0)>>2]|268435456;m=225;break}default:m=225}if((m|0)==225){m=0;q=f[(a+620|0)>>2]|0;g=+n[q>>2];k=(+n[q+12>>2]-g)*.5;i=+n[q+4>>2];x=(+n[q+16>>2]-i)*.5;z=+n[q+8>>2];y=(+n[q+20>>2]-z)*.5;z=+n[u>>2]+((g+k)*+n[(a+368|0)>>2]+((i+x)*+n[s>>2]+(z+y)*+n[t>>2]));LVa(v+4|0,(k*k+(x*x+y*y))/(z*z<9.999999747378752e-06?9.999999747378752e-06:z*z),a+620|0,a+608|0)}c=c+4|0;if((c|0)==(d|0))break d}while(0);c=yva(r)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(a+608|0)>>2]=f[c>>2];f[(a+592|0)>>2]=f[(c+4|0)>>2];f[(a+620|0)>>2]=f[(a+608|0)>>2];f[(a+632|0)>>2]=f[(a+592|0)>>2];b[a>>0]=b[(a+552|0)>>0]|0;d=bja(a+620|0,a+632|0,a)|0;f[(a+540|0)>>2]=d;f[(a+528|0)>>2]=f[(c+4|0)>>2];f[(a+632|0)>>2]=f[(a+540|0)>>2];f[a>>2]=f[(a+528|0)>>2];cja(c,a+632|0,a)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;e:do if((c|0)!=(d|0))while(1){q=f[c>>2]|0;p=f[(a+96|0)>>2]|0;f[(a+620|0)>>2]=q;f[(a+608|0)>>2]=p;g=+n[q>>2];i=(+n[q+12>>2]-g)*.5;n[a>>2]=i;k=+n[q+4>>2];x=(+n[q+16>>2]-k)*.5;n[(a+4|0)>>2]=x;y=+n[q+8>>2];z=(+n[q+20>>2]-y)*.5;n[(a+8|0)>>2]=z;n[(a+632|0)>>2]=g+i;n[((a+632|0)+4|0)>>2]=k+x;n[((a+632|0)+8|0)>>2]=y+z;switch(KVa(a+104|0,a+632|0,a)|0){case 0:break;case 2:{f[(a+608|0)>>2]=f[(a+608|0)>>2]|268435456;m=230;break}default:m=230}if((m|0)==230){m=0;q=f[(a+620|0)>>2]|0;g=+n[q>>2];k=(+n[q+12>>2]-g)*.5;i=+n[q+4>>2];x=(+n[q+16>>2]-i)*.5;z=+n[q+8>>2];y=(+n[q+20>>2]-z)*.5;z=+n[u>>2]+((g+k)*+n[(a+368|0)>>2]+((i+x)*+n[s>>2]+(z+y)*+n[t>>2]));MVa(v+4|0,(k*k+(x*x+y*y))/(z*z<9.999999747378752e-06?9.999999747378752e-06:z*z),a+620|0,a+608|0)}c=c+4|0;if((c|0)==(d|0))break e}while(0);f[a>>2]=v;f[a+4>>2]=a+64|0;f[a+8>>2]=a+368|0;f[a+12>>2]=a+96|0;f[a+16>>2]=a+80|0;d=Twa(r)|0;c=f[d>>2]|0;d=f[d+4>>2]|0;if((c|0)!=(d|0))do{NVa(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));u=(b[(v+832|0)>>0]&8)==0;c=(Pwa(r)|0)+8|0;c=f[c>>2]|0;if(u){if(c)do{d=f[c+8>>2]|0;f[(a+632|0)>>2]=d;do if(!((j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16)&7864320)){if(!(f[d+196>>2]&2048)){if(!(OVa(d,f[f[(a+80|0)>>2]>>2]|0,f[((a+80|0)+4|0)>>2]|0,f[((a+80|0)+8|0)>>2]|0,f[((a+80|0)+12|0)>>2]|0)|0))m=247}else if(!(HVa(d,f[f[(a+64|0)>>2]>>2]|0,f[((a+64|0)+4|0)>>2]|0,f[((a+64|0)+8|0)>>2]|0,f[((a+64|0)+12|0)>>2]|0)|0))m=247;if((m|0)==247){m=0;if(b[(v+832|0)>>0]&16)break;u=(f[(a+632|0)>>2]|0)+196|0;f[u>>2]=f[u>>2]&-1793;break}d=f[(v+288|0)>>2]|0;if(d>>>0<(f[(v+292|0)>>2]|0)>>>0){t=f[(a+100|0)>>2]|0;u=f[(a+96|0)>>2]|0;f[d>>2]=f[(a+632|0)>>2];f[d+4>>2]=t;f[d+8>>2]=u&-234881025;f[d+12>>2]=-1;f[(v+288|0)>>2]=(f[(v+288|0)>>2]|0)+16;break}else{IVa(v+284|0,a+100|0,a+632|0,a+96|0);break}}while(0);c=f[c>>2]|0}while((c|0)!=0)}else if(c)do{d=f[c+8>>2]|0;if(!((j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16)&7864320))NVa(a,d);c=f[c>>2]|0}while((c|0)!=0)}}o=v+308|0;p=v+300|0}r=(a+592|0)+4|0;s=(a+592|0)+8|0;t=(a+592|0)+12|0;u=(a+632|0)+12|0;v=(a+632|0)+24|0;f[a+1224>>2]=o;f[a+1248>>2]=p;f[a+2840>>2]=r;f[a+2848>>2]=s;f[a+2856>>2]=t;f[a+2872>>2]=u;f[a+2880>>2]=v;f[a+6760>>2]=m;f[a+6768>>2]=w}function LWa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;V=f[a+688>>2]|0;R=f[a+6760>>2]|0;W=f[a+6768>>2]|0;G=f[a+6776>>2]|0;if(W){W=0;switch(G|0){case 3:{if(f[(V+4|0)>>2]|0){u=f[(V+24|0)>>2]|0;v=f[(V+20|0)>>2]|0;w=f[(V+12|0)>>2]|0;a:do if((v+(w<<4)|0|0)==(u|0)){q=v+(w<<4)|0;R=17}else{i=v+(w<<4)|0;while(1){if(!(f[i+8>>2]&1792)){q=i;R=17;break a}i=i+16|0;if((i|0)==(u|0)){m=u;p=v;r=u;t=u;break}}}while(0);if((R|0)==17){m=q;if((q|0)==(u|0)){p=v;r=u;t=u}else{i=m;b:while(1){do{p=i;i=p+16|0;if((p+16|0|0)==(u|0))break b}while(!(f[p+24>>2]&1792|0));t=m;f[t>>2]=f[(p+16|0)>>2];f[t+4>>2]=f[(p+16|0)+4>>2];f[t+8>>2]=f[(p+16|0)+8>>2];f[t+12>>2]=f[(p+16|0)+12>>2];m=m+16|0}t=f[(V+24|0)>>2]|0;p=f[(V+20|0)>>2]|0;r=t}}s=p+(m-p>>4<<4)|0;if((r|0)==(m|0))m=t;else{i=s+(r-m>>4<<4)|0;q=t-i|0;if(!(q>>4)){m=t;i=t}else{Jrb(s|0,i|0,q|0)|0;i=f[(V+24|0)>>2]|0;m=i}p=i+(~((i+-16-(s+(q>>4<<4)|0)|0)>>>4)<<4)|0;if((i|0)!=(s+(q>>4<<4)|0|0)){f[(V+24|0)>>2]=p;m=p}}q=f[(V+20|0)>>2]|0;i=f[(V+12|0)>>2]|0;if(!i)i=m;else{r=m-(q+(i<<4)|0)|0;if(!(r>>4))i=m;else{Jrb(q|0,q+(i<<4)|0|0,r|0)|0;m=f[(V+24|0)>>2]|0;i=m}p=m+(~((m+-16-(q+(r>>4<<4)|0)|0)>>>4)<<4)|0;if((m|0)!=(q+(r>>4<<4)|0|0)){f[(V+24|0)>>2]=p;i=p}}f[(V+12|0)>>2]=0;f[(V+4|0)>>2]=w-(u-v>>4)+(f[(V+4|0)>>2]|0)+(i-(f[(V+20|0)>>2]|0)>>4);i=f[(V+8|0)>>2]|0;if(i>>>0>1){w=1;do{t=V+16+(w<<4)+4|0;s=V+16+(w<<4)+8|0;u=f[s>>2]|0;v=f[t>>2]|0;c:do if((u|0)==(v|0)){A=v;R=38}else{i=v;while(1){if(!(f[i+8>>2]&1792)){A=i;R=38;break c}i=i+16|0;if((i|0)==(u|0)){o=u;x=v;y=u;z=u;break}}}while(0);if((R|0)==38){R=0;i=A;if((A|0)==(u|0)){o=i;x=v;y=u;z=u}else{m=i;o=i;d:while(1){i=m;do{m=i;i=m+16|0;if((m+16|0|0)==(u|0))break d}while(!(f[m+24>>2]&1792|0));z=o;f[z>>2]=f[(m+16|0)>>2];f[z+4>>2]=f[(m+16|0)+4>>2];f[z+8>>2]=f[(m+16|0)+8>>2];f[z+12>>2]=f[(m+16|0)+12>>2];m=i;o=o+16|0}z=f[s>>2]|0;x=f[t>>2]|0;y=z}}q=x+(o-x>>4<<4)|0;if((y|0)==(o|0))i=z;else{i=q+(y-o>>4<<4)|0;r=z-i|0;if(!(r>>4)){i=z;m=z}else{Jrb(q|0,i|0,r|0)|0;m=f[s>>2]|0;i=m}p=m+(~((m+-16-(q+(r>>4<<4)|0)|0)>>>4)<<4)|0;if((m|0)!=(q+(r>>4<<4)|0|0)){f[s>>2]=p;i=p}}f[(V+4|0)>>2]=(f[(V+4|0)>>2]|0)-(u-v>>4)+(i-(f[t>>2]|0)>>4);w=w+1|0;i=f[(V+8|0)>>2]|0}while(w>>>0<i>>>0)}if(i|0){s=V+16+(i<<4)+4|0;m=f[s>>2]|0;r=V+16+(i<<4)+8|0;o=f[r>>2]|0;if((m|0)!=(o|0)){while(1){if(!(f[m+8>>2]&1792)){R=53;break}i=m+16|0;if((i|0)==(o|0)){l=o;B=o;C=o;break}else m=i}if((R|0)==53){l=m;if((m|0)==(o|0)){B=o;C=o}else{i=l;e:while(1){do{m=i;i=m+16|0;if((m+16|0|0)==(o|0))break e}while(!(f[m+24>>2]&1792|0));C=l;f[C>>2]=f[(m+16|0)>>2];f[C+4>>2]=f[(m+16|0)+4>>2];f[C+8>>2]=f[(m+16|0)+8>>2];f[C+12>>2]=f[(m+16|0)+12>>2];l=l+16|0}C=f[r>>2]|0;B=C}}if((B|0)!=(l|0)){q=f[s>>2]|0;p=q+(l-q>>4<<4)|0;i=p+(B-l>>4<<4)|0;o=C-i|0;if(!(o>>4)){i=C;l=C}else{Jrb(p|0,i|0,o|0)|0;l=f[r>>2]|0;i=l}m=l+(~((l+-16-(p+(o>>4<<4)|0)|0)>>>4)<<4)|0;if((l|0)!=(p+(o>>4<<4)|0|0)){f[r>>2]=m;i=m}f[(V+4|0)>>2]=(f[(V+4|0)>>2]|0)-(C-q>>4)+(i-(f[s>>2]|0)>>4);u=f[s>>2]|0;t=i-u|0;if((t|0)>16)if((t|0)>=32){s=((t>>4)+-2|0)/2|0;while(1){m=u+(s<<4)|0;i=s<<4;do if((((t>>4)+-2|0)/2|0|0)>=(i>>4|0)){do if(((i>>3|1)+1|0|0)<(t>>4|0)){if(!(+n[u+((i>>3|1)<<4)+4>>2]<+n[((u+((i>>3|1)<<4)|0)+16|0)+4>>2])){l=i>>3|1;i=u+((i>>3|1)<<4)|0;break}l=(i>>3|1)+1|0;i=(u+((i>>3|1)<<4)|0)+16|0}else{l=i>>3|1;i=u+((i>>3|1)<<4)|0}while(0);k=+n[u+(s<<4)+4>>2];if(+n[i+4>>2]<k)break;p=f[m>>2]|0;r=u+(s<<4)+8|0;q=f[r>>2]|0;r=f[r+4>>2]|0;o=m;while(1){C=o;o=i;f[C>>2]=f[o>>2];f[C+4>>2]=f[o+4>>2];f[C+8>>2]=f[o+8>>2];f[C+12>>2]=f[o+12>>2];if((((t>>4)+-2|0)/2|0|0)<(l|0))break;m=l<<1|1;do if((m+1|0|0)<(t>>4|0)){if(!(+n[u+(m<<4)+4>>2]<+n[((u+(m<<4)|0)+16|0)+4>>2])){l=m;m=u+(m<<4)|0;break}l=m+1|0;m=(u+(m<<4)|0)+16|0}else{l=m;m=u+(m<<4)|0}while(0);if(+n[m+4>>2]<k)break;else i=m}C=i;f[i>>2]=p;n[C+4>>2]=k;f[(C+8|0)>>2]=q;f[(C+8|0)+4>>2]=r}while(0);if((s|0)>0)s=s+-1|0;else break}}}}}}l=f[(V+272|0)>>2]|0;m=f[(V+276|0)>>2]|0;f:do if((l|0)==(m|0)){E=l;R=82}else{i=l;while(1){if(!(f[i+8>>2]&1792)){E=i;R=82;break f}i=i+16|0;if((i|0)==(m|0)){j=m;D=l;F=m;c=m;break}}}while(0);if((R|0)==82){j=E;if((E|0)==(m|0)){D=l;F=m;c=m}else{c=j;g:while(1){do{i=c;c=i+16|0;if((i+16|0|0)==(m|0))break g}while(!(f[i+24>>2]&1792|0));R=j;f[R>>2]=f[(i+16|0)>>2];f[R+4>>2]=f[(i+16|0)+4>>2];f[R+8>>2]=f[(i+16|0)+8>>2];f[R+12>>2]=f[(i+16|0)+12>>2];j=j+16|0}c=f[(V+276|0)>>2]|0;D=f[(V+272|0)>>2]|0;F=c}}l=D+(j-D>>4<<4)|0;if((F|0)==(j|0))R=181;else{i=l+(F-j>>4<<4)|0;j=c-i|0;if(j>>4){Jrb(l|0,i|0,j|0)|0;c=f[(V+276|0)>>2]|0}if((c|0)==(l+(j>>4<<4)|0|0))R=181;else{f[(V+276|0)>>2]=c+(~((c+-16-(l+(j>>4<<4)|0)|0)>>>4)<<4);R=181}}break}default:W=1}}if(W){W=0;switch(G|0){case 2:{if(f[(V+4|0)>>2]|0){m=f[(V+24|0)>>2]|0;o=f[(V+20|0)>>2]|0;p=f[(V+12|0)>>2]|0;h:do if((o+(p<<4)|0|0)==(m|0)){I=o+(p<<4)|0;R=97}else{c=o+(p<<4)|0;while(1){if(!(f[c+8>>2]&256)){I=c;R=97;break h}c=c+16|0;if((c|0)==(m|0)){g=m;H=o;J=m;K=m;break}}}while(0);if((R|0)==97){g=I;if((I|0)==(m|0)){H=o;J=m;K=m}else{c=g;i:while(1){do{i=c;c=i+16|0;if((i+16|0|0)==(m|0))break i}while(!(f[i+24>>2]&256|0));K=g;f[K>>2]=f[(i+16|0)>>2];f[K+4>>2]=f[(i+16|0)+4>>2];f[K+8>>2]=f[(i+16|0)+8>>2];f[K+12>>2]=f[(i+16|0)+12>>2];g=g+16|0}K=f[(V+24|0)>>2]|0;H=f[(V+20|0)>>2]|0;J=K}}l=H+(g-H>>4<<4)|0;if((J|0)==(g|0))g=K;else{c=l+(J-g>>4<<4)|0;j=K-c|0;if(!(j>>4)){g=K;c=K}else{Jrb(l|0,c|0,j|0)|0;c=f[(V+24|0)>>2]|0;g=c}i=c+(~((c+-16-(l+(j>>4<<4)|0)|0)>>>4)<<4)|0;if((c|0)!=(l+(j>>4<<4)|0|0)){f[(V+24|0)>>2]=i;g=i}}j=f[(V+20|0)>>2]|0;c=f[(V+12|0)>>2]|0;if(!c)c=g;else{l=g-(j+(c<<4)|0)|0;if(!(l>>4))c=g;else{Jrb(j|0,j+(c<<4)|0|0,l|0)|0;g=f[(V+24|0)>>2]|0;c=g}i=g+(~((g+-16-(j+(l>>4<<4)|0)|0)>>>4)<<4)|0;if((g|0)!=(j+(l>>4<<4)|0|0)){f[(V+24|0)>>2]=i;c=i}}f[(V+12|0)>>2]=0;f[(V+4|0)>>2]=p-(m-o>>4)+(f[(V+4|0)>>2]|0)+(c-(f[(V+20|0)>>2]|0)>>4);c=f[(V+8|0)>>2]|0;if(c>>>0>1){r=1;do{o=V+16+(r<<4)+4|0;m=V+16+(r<<4)+8|0;p=f[m>>2]|0;q=f[o>>2]|0;j:do if((p|0)==(q|0)){O=q;R=118}else{c=q;while(1){if(!(f[c+8>>2]&256)){O=c;R=118;break j}c=c+16|0;if((c|0)==(p|0)){h=p;L=q;M=p;N=p;break}}}while(0);if((R|0)==118){R=0;c=O;if((O|0)==(p|0)){h=c;L=q;M=p;N=p}else{g=c;h=c;k:while(1){c=g;do{g=c;c=g+16|0;if((g+16|0|0)==(p|0))break k}while(!(f[g+24>>2]&256|0));N=h;f[N>>2]=f[(g+16|0)>>2];f[N+4>>2]=f[(g+16|0)+4>>2];f[N+8>>2]=f[(g+16|0)+8>>2];f[N+12>>2]=f[(g+16|0)+12>>2];g=c;h=h+16|0}N=f[m>>2]|0;L=f[o>>2]|0;M=N}}j=L+(h-L>>4<<4)|0;if((M|0)==(h|0))c=N;else{c=j+(M-h>>4<<4)|0;l=N-c|0;if(!(l>>4)){c=N;g=N}else{Jrb(j|0,c|0,l|0)|0;g=f[m>>2]|0;c=g}i=g+(~((g+-16-(j+(l>>4<<4)|0)|0)>>>4)<<4)|0;if((g|0)!=(j+(l>>4<<4)|0|0)){f[m>>2]=i;c=i}}f[(V+4|0)>>2]=(f[(V+4|0)>>2]|0)-(p-q>>4)+(c-(f[o>>2]|0)>>4);r=r+1|0;c=f[(V+8|0)>>2]|0}while(r>>>0<c>>>0)}if(c|0){m=V+16+(c<<4)+4|0;g=f[m>>2]|0;l=V+16+(c<<4)+8|0;h=f[l>>2]|0;if((g|0)!=(h|0)){while(1){if(!(f[g+8>>2]&256)){R=133;break}c=g+16|0;if((c|0)==(h|0)){e=h;P=h;Q=h;break}else g=c}if((R|0)==133){e=g;if((g|0)==(h|0)){P=h;Q=h}else{c=e;l:while(1){do{g=c;c=g+16|0;if((g+16|0|0)==(h|0))break l}while(!(f[g+24>>2]&256|0));Q=e;f[Q>>2]=f[(g+16|0)>>2];f[Q+4>>2]=f[(g+16|0)+4>>2];f[Q+8>>2]=f[(g+16|0)+8>>2];f[Q+12>>2]=f[(g+16|0)+12>>2];e=e+16|0}Q=f[l>>2]|0;P=Q}}if((P|0)!=(e|0)){j=f[m>>2]|0;i=j+(e-j>>4<<4)|0;c=i+(P-e>>4<<4)|0;h=Q-c|0;if(!(h>>4)){c=Q;e=Q}else{Jrb(i|0,c|0,h|0)|0;e=f[l>>2]|0;c=e}g=e+(~((e+-16-(i+(h>>4<<4)|0)|0)>>>4)<<4)|0;if((e|0)!=(i+(h>>4<<4)|0|0)){f[l>>2]=g;c=g}f[(V+4|0)>>2]=(f[(V+4|0)>>2]|0)-(Q-j>>4)+(c-(f[m>>2]|0)>>4);p=f[m>>2]|0;o=c-p|0;if((o|0)>16)if((o|0)>=32){m=((o>>4)+-2|0)/2|0;while(1){h=p+(m<<4)|0;c=m<<4;do if((((o>>4)+-2|0)/2|0|0)>=(c>>4|0)){do if(((c>>3|1)+1|0|0)<(o>>4|0)){if(!(+n[p+((c>>3|1)<<4)+4>>2]<+n[((p+((c>>3|1)<<4)|0)+16|0)+4>>2])){e=c>>3|1;c=p+((c>>3|1)<<4)|0;break}e=(c>>3|1)+1|0;c=(p+((c>>3|1)<<4)|0)+16|0}else{e=c>>3|1;c=p+((c>>3|1)<<4)|0}while(0);k=+n[p+(m<<4)+4>>2];if(+n[c+4>>2]<k)break;i=f[h>>2]|0;l=p+(m<<4)+8|0;j=f[l>>2]|0;l=f[l+4>>2]|0;while(1){Q=h;h=c;f[Q>>2]=f[h>>2];f[Q+4>>2]=f[h+4>>2];f[Q+8>>2]=f[h+8>>2];f[Q+12>>2]=f[h+12>>2];if((((o>>4)+-2|0)/2|0|0)<(e|0))break;g=e<<1|1;do if((g+1|0|0)<(o>>4|0)){if(!(+n[p+(g<<4)+4>>2]<+n[((p+(g<<4)|0)+16|0)+4>>2])){e=g;g=p+(g<<4)|0;break}e=g+1|0;g=(p+(g<<4)|0)+16|0}else{e=g;g=p+(g<<4)|0}while(0);if(+n[g+4>>2]<k)break;else c=g}Q=c;f[c>>2]=i;n[Q+4>>2]=k;f[(Q+8|0)>>2]=j;f[(Q+8|0)+4>>2]=l}while(0);if((m|0)>0)m=m+-1|0;else break}}}}}}e=f[(V+272|0)>>2]|0;g=f[(V+276|0)>>2]|0;m:do if((e|0)==(g|0)){T=e;R=162}else{c=e;while(1){if(!(f[c+8>>2]&256)){T=c;R=162;break m}c=c+16|0;if((c|0)==(g|0)){d=g;S=e;U=g;b=g;break}}}while(0);if((R|0)==162){d=T;if((T|0)==(g|0)){S=e;U=g;b=g}else{b=d;n:while(1){do{c=b;b=c+16|0;if((c+16|0|0)==(g|0))break n}while(!(f[c+24>>2]&256|0));U=d;f[U>>2]=f[(c+16|0)>>2];f[U+4>>2]=f[(c+16|0)+4>>2];f[U+8>>2]=f[(c+16|0)+8>>2];f[U+12>>2]=f[(c+16|0)+12>>2];d=d+16|0}b=f[(V+276|0)>>2]|0;S=f[(V+272|0)>>2]|0;U=b}}e=S+(d-S>>4<<4)|0;if((U|0)==(d|0))R=181;else{c=e+(U-d>>4<<4)|0;d=b-c|0;if(d>>4){Jrb(e|0,c|0,d|0)|0;b=f[(V+276|0)>>2]|0}if((b|0)==(e+(d>>4<<4)|0|0))R=181;else{f[(V+276|0)>>2]=b+(~((b+-16-(e+(d>>4<<4)|0)|0)>>>4)<<4);R=181}}break}default:W=1}}f[a+6760>>2]=R;f[a+6768>>2]=W}function MWa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;P=f[a+688>>2]|0;w=f[a+704>>2]|0;y=f[a+712>>2]|0;g=f[a+720>>2]|0;C=f[a+728>>2]|0;E=f[a+736>>2]|0;m=f[a+1224>>2]|0;o=f[a+1248>>2]|0;s=f[a+2840>>2]|0;Q=f[a+2848>>2]|0;t=f[a+2856>>2]|0;u=f[a+2872>>2]|0;v=f[a+2880>>2]|0;r=f[a+2896>>2]|0;i=f[a+2904>>2]|0;M=f[a+3848>>2]|0;N=f[a+3888>>2]|0;O=f[a+3952>>2]|0;x=f[a+4968>>2]|0;z=f[a+5472>>2]|0;A=f[a+5480>>2]|0;B=+n[a+5560>>2];L=f[a+6760>>2]|0;a:{b:do{l=1;if(l){l=0;if(i){c=f[(P+324|0)>>2]|0;d=f[(P+312|0)>>2]|0;e=f[(P+316|0)>>2]|0;if((d|0)!=(e|0))do{c=(f[d+20>>2]|0)+c|0;d=d+524|0}while((d|0)!=(e|0));if(c>>>0>=g>>>0){f[a+6856>>2]=2;f[a+6860>>2]=7;break a}f[(a+592|0)>>2]=0;n[s>>2]=0.0;f[Q>>2]=0;f[t>>2]=-1;k=1;if(k){k=0;if(i){if(!(f[(P+4|0)>>2]|0)){d=f[(P+272|0)>>2]|0;c=f[(P+276|0)>>2]|0;if((d|0)==(c|0)){c=f[o>>2]|0;d=f[(P+296|0)>>2]|0;e=f[m>>2]|0;if(((c-d|0)/12|0|0)==(e|0)){L=454;f[a+6856>>2]=2;f[a+6860>>2]=7;break a}g=b[(P+832|0)>>0]&16?768:0;i=f[d+(e*12|0)>>2]|0;f[(a+592|0)>>2]=i;n[s>>2]=0.0;f[Q>>2]=g;f[t>>2]=-1;k=f[d+(e*12|0)+4>>2]|0;l=f[d+(e*12|0)+8>>2]|0;f[m>>2]=e+1|0;if((e+1|0)>>>0>=((c-d|0)/12|0)>>>0){if((c|0)!=(d|0))f[o>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);f[m>>2]=0}if(OVa(i,g,a+668|0,a+104|0,a+384|0)|0){o=(f[(a+592|0)>>2]|0)+200|0;if(!((j[o>>1]|h[o+2>>0]<<16)&7864320)){p=k;q=l;L=290;break}}if(b[(P+832|0)>>0]&16)break;o=(f[(a+592|0)>>2]|0)+196|0;f[o>>2]=f[o>>2]&-1793;break}}else{d=f[(P+272|0)>>2]|0;c=f[(P+276|0)>>2]|0}if((d|0)==(c|0)){PVa(a,P+4|0);f[(a+592|0)>>2]=f[a>>2];f[(a+592|0)+4>>2]=f[a+4>>2];f[(a+592|0)+8>>2]=f[a+8>>2];f[(a+592|0)+12>>2]=f[a+12>>2];c:do if(f[(P+4|0)>>2]|0)do{L=(QVa(P+4|0)|0)+4|0;if(!(+n[L>>2]==+n[s>>2]))break c;PVa(a,P+4|0);c=f[(P+276|0)>>2]|0;if(c>>>0<(f[(P+280|0)>>2]|0)>>>0){f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];f[(P+276|0)>>2]=(f[(P+276|0)>>2]|0)+16}else RVa(P+272|0,a)}while((f[(P+4|0)>>2]|0)!=0);while(0);c=f[(P+276|0)>>2]|0;if((f[(P+272|0)>>2]|0)==(c|0)){p=0;q=0;L=290;break}if((c|0)==(f[(P+280|0)>>2]|0)){SVa(P+272|0,a+592|0);c=f[(P+276|0)>>2]|0}else{f[c>>2]=f[(a+592|0)>>2];f[c+4>>2]=f[(a+592|0)+4>>2];f[c+8>>2]=f[(a+592|0)+8>>2];f[c+12>>2]=f[(a+592|0)+12>>2];c=(f[(P+276|0)>>2]|0)+16|0;f[(P+276|0)>>2]=c}TVa(f[(P+272|0)>>2]|0,c,a);d=f[(P+272|0)>>2]|0;c=f[(P+276|0)>>2]|0}if((d|0)==(c|0)){p=0;q=0;L=290}else{c=c+-16|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[(P+276|0)>>2]=c;f[(a+592|0)>>2]=f[a>>2];f[(a+592|0)+4>>2]=f[a+4>>2];f[(a+592|0)+8>>2]=f[a+8>>2];f[(a+592|0)+12>>2]=f[a+12>>2];if((d|0)==(c|0)){p=0;q=0;L=290}else{g=f[(a+592|0)>>2]|0;while(1){e=c;c=c+-16|0;if((f[c>>2]|0)!=(g|0)){p=0;q=0;L=290;break b}if((f[e+-4>>2]|0)!=(f[t>>2]|0)){p=0;q=0;L=290;break b}f[Q>>2]=f[Q>>2]|f[e+-8>>2];f[(P+276|0)>>2]=c;if((d|0)==(c|0)){p=0;q=0;L=290;break}}}}}else k=1}if(k)if(1)L=259}else l=1}if(l)if(1){f[(a+592|0)>>2]=0;n[s>>2]=0.0;f[Q>>2]=0;f[t>>2]=-1;L=259}}while(0);if((L|0)==259){f[a>>2]=f[(r+-16|0)>>2];f[a+4>>2]=f[(r+-16|0)+4>>2];f[a+8>>2]=f[(r+-16|0)+8>>2];f[a+12>>2]=f[(r+-16|0)+12>>2];f[(P+288|0)>>2]=r+-16|0;f[(a+592|0)>>2]=f[a>>2];f[(a+592|0)+4>>2]=f[a+4>>2];f[(a+592|0)+8>>2]=f[a+8>>2];f[(a+592|0)+12>>2]=f[a+12>>2];p=0;q=0;L=290}d:do if((L|0)==290){L=0;d=f[Q>>2]|0;if(d&33554432|0){g=+n[s>>2]>B;e=f[(a+592|0)>>2]|0;c=f[e+12>>2]|0;e=f[e+16>>2]|0;e:do if((c|0)!=(e|0))if(g)while(1){if(!(d&268435456)){d=KVa(a+104|0,c+44|0,c+56|0)|0;if(d|0){F=d;I=f[Q>>2]|0;L=296}}else{F=2;I=d;L=296}if((L|0)==296){L=0;f[a>>2]=(F|0)==2?I|268435456:I;B=+n[O>>2]+(+n[c+44>>2]*+n[(a+368|0)>>2]+(+n[c+48>>2]*+n[M>>2]+ +n[c+52>>2]*+n[N>>2]));B=+n[c+68>>2]/(B*B<9.999999747378752e-06?9.999999747378752e-06:B*B);f[(a+632|0)>>2]=c;UVa(P+4|0,B,a+632|0,a)}c=c+72|0;if((c|0)==(e|0))break e;d=f[Q>>2]|0}else while(1){if(!(d&268435456)){d=KVa(a+104|0,c+44|0,c+56|0)|0;if(d|0){J=d;K=f[Q>>2]|0;L=317}}else{J=2;K=d;L=317}if((L|0)==317){L=0;f[a>>2]=(J|0)==2?K|268435456:K;f[(a+632|0)>>2]=c;UVa(P+4|0,0.0,a+632|0,a)}c=c+72|0;if((c|0)==(e|0))break e;d=f[Q>>2]|0}while(0);f[a>>2]=1;d=f[(a+592|0)>>2]|0;i=(f[d+28>>2]|0)-(f[d+24>>2]|0)|0;f:do if((i|0)>20){if(g)c=1;else{c=1;while(1){d=f[d+24>>2]|0;if(!(f[d+(c*20|0)>>2]|0)){e=f[d+(c*20|0)+4>>2]|0;g=f[d+(c*20|0)+8>>2]|0;if((e|0)!=(g|0)){c=e;do{d=f[c>>2]|0;do if((b[d+203>>0]&3)==1){if(f[d+196>>2]&4|0)break;WVa(P,d,a+592|0,a+668|0,a+104|0,a+368|0,a+384|0,0)}while(0);c=c+4|0}while((c|0)!=(g|0))}}else VVa(P+4|0,0.0,a+592|0,a,Q);c=(f[a>>2]|0)+1|0;f[a>>2]=c;if((c|0)>=((i|0)/20|0|0))break f;d=f[(a+592|0)>>2]|0}}while(1){d=f[d+24>>2]|0;if(!(f[d+(c*20|0)>>2]|0)){e=f[d+(c*20|0)+4>>2]|0;g=f[d+(c*20|0)+8>>2]|0;if((e|0)!=(g|0)){c=e;do{d=f[c>>2]|0;do if((b[d+203>>0]&3)==1){if(f[d+196>>2]&4|0)break;WVa(P,d,a+592|0,a+668|0,a+104|0,a+368|0,a+384|0,1)}while(0);c=c+4|0}while((c|0)!=(g|0))}}else{d=f[(f[d+(c*20|0)+4>>2]|0)+(f[d+(c*20|0)+16>>2]<<2)>>2]|0;c=j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16;if(c&65536){ppa(d);c=j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16}if(c&32768|0)qpa(d);B=+n[O>>2]+(+n[d+168>>2]*+n[(a+368|0)>>2]+(+n[d+172>>2]*+n[M>>2]+ +n[d+176>>2]*+n[N>>2]));VVa(P+4|0,+n[d+152>>2]/(B*B<9.999999747378752e-06?9.999999747378752e-06:B*B),a+592|0,a,Q)}c=(f[a>>2]|0)+1|0;f[a>>2]=c;if((c|0)>=((i|0)/20|0|0))break f;d=f[(a+592|0)>>2]|0}}while(0);break}K=f[t>>2]|0;f[a+688>>2]=P;f[a+704>>2]=w;f[a+712>>2]=y;f[a+728>>2]=C;f[a+736>>2]=E;f[a+864>>2]=p;f[a+872>>2]=q;f[a+2840>>2]=s;f[a+2848>>2]=Q;f[a+2872>>2]=u;f[a+2880>>2]=v;f[a+3136>>2]=d;f[a+3456>>2]=K;f[a+4968>>2]=x;f[a+5472>>2]=z;f[a+5480>>2]=A;n[a+5560>>2]=B;f[a+6760>>2]=L;f[a+6832>>2]=0;f[a+6836>>2]=0;JWa(a);L=f[a+6760>>2]|0;G=f[a+6832>>2]|0;D=f[a+6836>>2]|0;H=+n[a+6836>>2];f[a+6832>>2]=0;f[a+6836>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 3:break d}f[a+688>>2]=P;f[a+2840>>2]=s;f[a+2848>>2]=Q;f[a+3136>>2]=d;f[a+3848>>2]=M;f[a+3888>>2]=N;f[a+3952>>2]=O;n[a+5560>>2]=B;f[a+6760>>2]=L;f[a+6824>>2]=0;f[a+6828>>2]=0;IWa(a);L=f[a+6760>>2]|0;G=f[a+6824>>2]|0;D=f[a+6828>>2]|0;H=+n[a+6828>>2];f[a+6824>>2]=0;f[a+6828>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 9:break d}}while(0)}f[a+6760>>2]=L}function NWa(a){a=a|0;var c=0.0,d=0,e=0,g=0.0,h=0.0,i=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0,R=0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;y=f[a+688>>2]|0;z=f[a+696>>2]|0;e=f[a+704>>2]|0;v=f[a+856>>2]|0;w=f[a+1224>>2]|0;x=f[a+1248>>2]|0;A=f[a+2840>>2]|0;B=f[a+2848>>2]|0;C=f[a+2856>>2]|0;D=f[a+2872>>2]|0;E=f[a+2880>>2]|0;F=f[a+3848>>2]|0;G=f[a+3888>>2]|0;H=f[a+3952>>2]|0;I=f[a+4968>>2]|0;J=f[a+5464>>2]|0;Q=f[a+5472>>2]|0;d=f[a+5480>>2]|0;R=f[a+5488>>2]|0;t=+n[a+5560>>2];K=f[a+6760>>2]|0;a:{n[(a+464|0)+8>>2]=+p[R+16>>3];n[(a+464|0)+12>>2]=+p[R+24>>3];n[(a+464|0)+16>>2]=+p[R+32>>3];n[(a+464|0)+20>>2]=+p[R+40>>3];n[(a+464|0)+24>>2]=+p[R+48>>3];n[(a+464|0)+28>>2]=+p[R+56>>3];n[(a+464|0)+32>>2]=+p[R+64>>3];n[(a+464|0)+36>>2]=+p[R+72>>3];n[((a+464|0)+40|0)>>2]=+p[R+80>>3];n[((a+464|0)+44|0)>>2]=+p[R+88>>3];n[(a+464|0)+48>>2]=+p[R+96>>3];n[(a+464|0)+52>>2]=+p[R+104>>3];n[((a+464|0)+56|0)>>2]=+p[R+112>>3];n[((a+464|0)+60|0)>>2]=+p[R+120>>3];d=Jga(e,Q,d)|0;n[(a+400|0)>>2]=+p[d>>3];n[((a+400|0)+4|0)>>2]=+p[d+8>>3];n[((a+400|0)+8|0)>>2]=+p[d+16>>3];n[((a+400|0)+12|0)>>2]=+p[d+24>>3];n[((a+400|0)+16|0)>>2]=+p[d+32>>3];n[((a+400|0)+20|0)>>2]=+p[d+40>>3];c=+p[d+48>>3];n[(a+400|0)+24>>2]=c;g=+p[d+56>>3];n[(a+400|0)+28>>2]=g;h=+p[d+64>>3];n[(a+400|0)+32>>2]=h;i=+p[d+72>>3];n[(a+400|0)+36>>2]=i;k=+p[d+80>>3];n[(a+400|0)+40>>2]=k;l=+p[d+88>>3];n[(a+400|0)+44>>2]=l;m=+p[d+96>>3];n[(a+400|0)+48>>2]=m;o=+p[d+104>>3];n[(a+400|0)+52>>2]=o;q=+p[d+112>>3];n[(a+400|0)+56>>2]=q;r=+p[d+120>>3];n[(a+400|0)+60>>2]=r;P=+p[e+32>>3]-+p[e+56>>3];O=+p[e+40>>3]-+p[e+64>>3];N=+p[e+48>>3]-+p[e+72>>3];M=+L(+(P*P+(O*O+N*N)));n[(a+384|0)>>2]=P/M;n[((a+384|0)+4|0)>>2]=O/M;n[((a+384|0)+8|0)>>2]=N/M;e=f[y>>2]|0;d=b[e+224>>0]&7&b[(y+832|0)>>0];b[(a+668|0)>>0]=d;e=j[(e+230|0)>>1]|j[(e+230|0)+2>>1]<<16;if(!(e&1))if(!(e&2)){b[(a+668|0)>>0]=d&6;d=d&6}if(!(d<<24>>24)){v=0;u=a;f[a+6864>>2]=6;f[a+6868>>2]=v|0;break a}I=f[((a+400|0)+12|0)>>2]|0;f[(a+368|0)>>2]=I;F=(a+368|0)+4|0;n[F>>2]=g;G=(a+368|0)+8|0;n[G>>2]=l;H=(a+368|0)+12|0;n[H>>2]=r;P=(f[s>>2]=I,+n[s>>2]);S=+n[(a+400|0)>>2];t=+n[((a+400|0)+16|0)>>2];M=+n[((a+400|0)+4|0)>>2];N=+n[((a+400|0)+20|0)>>2];O=+n[((a+400|0)+8|0)>>2];n[(a+104|0)>>2]=P-S;n[(a+104|0)+4>>2]=g-t;n[(a+104|0)+8>>2]=l-h;n[(a+104|0)+12>>2]=r-m;n[(a+104|0)+16>>2]=P-M;n[(a+104|0)+20>>2]=g-N;n[(a+104|0)+24>>2]=l-i;n[(a+104|0)+28>>2]=r-o;n[(a+104|0)+32>>2]=P-O;n[(a+104|0)+36>>2]=g-c;n[(a+104|0)+40>>2]=l-k;n[(a+104|0)+44>>2]=r-q;n[(a+104|0)+48>>2]=S+P;n[(a+104|0)+52>>2]=t+g;n[(a+104|0)+56>>2]=l+h;n[(a+104|0)+60>>2]=r+m;n[(a+104|0)+64>>2]=M+P;n[(a+104|0)+68>>2]=N+g;n[(a+104|0)+72>>2]=l+i;n[(a+104|0)+76>>2]=r+o;n[(a+104|0)+80>>2]=O+P;n[(a+104|0)+84>>2]=g+c;n[(a+104|0)+88>>2]=l+k;n[(a+104|0)+92>>2]=r+q;yha(a+104|0);I=s6a()|0;c=+n[((a+464|0)+44|0)>>2];if(c!=0.0)c=+n[((a+464|0)+56|0)>>2]+ +n[((a+464|0)+40|0)>>2]*((1.0-+n[((a+464|0)+60|0)>>2])/c);else c=.9800000190734863;EVa(a+464|0,a);X=+n[a>>2];W=+n[a+16>>2];q=c*+n[a+32>>2];Y=+n[a+48>>2];U=+n[a+4>>2];T=+n[a+20>>2];r=c*+n[a+36>>2];V=+n[a+52>>2];h=+n[a+8>>2];i=+n[a+24>>2];M=c*+n[a+40>>2];g=+n[a+56>>2];l=+n[a+12>>2];m=+n[a+28>>2];o=c*+n[a+44>>2];k=+n[a+60>>2];N=k+(l*0.0+m*0.0+o);O=(Y+(X*2.4999999441206455e-03+W*0.0+q))/(k+(l*2.4999999441206455e-03+m*0.0+o))-(Y+(X*0.0+W*0.0+q))/N;P=(V+(U*2.4999999441206455e-03+T*0.0+r))/(k+(l*2.4999999441206455e-03+m*0.0+o))-(V+(U*0.0+T*0.0+r))/N;S=(g+(h*2.4999999441206455e-03+i*0.0+M))/(k+(l*2.4999999441206455e-03+m*0.0+o))-(g+(h*0.0+i*0.0+M))/N;t=(k+(l*2.4999999441206455e-03+m*0.0+o))/(k+(l*2.4999999441206455e-03+m*0.0+o))-N/N;q=(Y+(X*0.0+W*2.4999999441206455e-03+q))/(k+(l*0.0+m*2.4999999441206455e-03+o))-(Y+(X*0.0+W*0.0+q))/N;r=(V+(U*0.0+T*2.4999999441206455e-03+r))/(k+(l*0.0+m*2.4999999441206455e-03+o))-(V+(U*0.0+T*0.0+r))/N;M=(g+(h*0.0+i*2.4999999441206455e-03+M))/(k+(l*0.0+m*2.4999999441206455e-03+o))-(g+(h*0.0+i*0.0+M))/N;N=(k+(l*0.0+m*2.4999999441206455e-03+o))/(k+(l*0.0+m*2.4999999441206455e-03+o))-N/N;t=q*q+r*r+(M*M+N*N)<O*O+P*P+(S*S+t*t)?q*q+r*r+(M*M+N*N):O*O+P*P+(S*S+t*t);if(Mwa(f[(f[y>>2]|0)+64>>2]|0,a,a+632|0)|0){T=+n[(a+632|0)>>2];U=+n[a>>2]*.5+T*.5;V=+n[(a+632|0)+4>>2];W=+n[a+4>>2]*.5+V*.5;X=+n[(a+632|0)+8>>2];Y=+n[a+8>>2]*.5+X*.5;c=+n[H>>2]+(U*+n[(a+368|0)>>2]+(W*+n[F>>2]+Y*+n[G>>2]));c=((T-U)*(T-U)+((V-W)*(V-W)+(X-Y)*(X-Y)))/(c*c<9.999999747378752e-06?9.999999747378752e-06:c*c)}else c=0.0;Y=t<c?c:t;n[(a+100|0)>>2]=Y;FVa(y+4|0,Y,t);d=1;e=z<<24>>24;if(d){d=0;switch(e|0){case 4:{w=y+308|0;x=y+300|0;break}default:d=1}}f[a+688>>2]=y;f[a+6760>>2]=K;f[a+6768>>2]=d;f[a+6776>>2]=e;f[a+6848>>2]=0;f[a+6852>>2]=0;LWa(a);R=f[a+6760>>2]|0;K=f[a+6768>>2]|0;f[a+688>>2]=y;f[a+696>>2]=z;f[a+1224>>2]=w;f[a+1248>>2]=x;f[a+2840>>2]=A;f[a+2848>>2]=B;f[a+2856>>2]=C;f[a+2872>>2]=D;f[a+2880>>2]=E;f[a+3848>>2]=F;f[a+3888>>2]=G;f[a+3952>>2]=H;f[a+5464>>2]=J;f[a+6760>>2]=R;f[a+6768>>2]=K;f[a+6776>>2]=e;f[a+6840>>2]=0;f[a+6844>>2]=0;KWa(a);w=f[a+1224>>2]|0;x=f[a+1248>>2]|0;A=f[a+2840>>2]|0;B=f[a+2848>>2]|0;C=f[a+2856>>2]|0;D=f[a+2872>>2]|0;E=f[a+2880>>2]|0;K=f[a+6760>>2]|0}f[a+856>>2]=v;f[a+1224>>2]=w;f[a+1248>>2]=x;f[a+2840>>2]=A;f[a+2848>>2]=B;f[a+2856>>2]=C;f[a+2872>>2]=D;f[a+2880>>2]=E;f[a+3848>>2]=F;f[a+3888>>2]=G;f[a+3952>>2]=H;f[a+4968>>2]=I;n[a+5560>>2]=t;f[a+6760>>2]=K}function OWa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=f[a+48>>2]|0;r=f[a+56>>2]|0;s=f[a+120>>2]|0;t=f[a+160>>2]|0;q=f[a+296>>2]|0;v=f[a+560>>2]|0;w=f[a+632>>2]|0;m=f[a+648>>2]|0;n=f[a+688>>2]|0;o=f[a+720>>2]|0;x=f[a+816>>2]|0;a:{b:while(1){p=t;switch((w-p|0)>>4|0){case 2:{x=5;f[a+832>>2]=2;f[a+836>>2]=13;break a}case 3:{x=9;f[a+832>>2]=2;f[a+836>>2]=13;break a}case 4:{x=10;f[a+832>>2]=2;f[a+836>>2]=13;break a}case 5:{x=20;f[a+832>>2]=2;f[a+836>>2]=13;break a}case 1:case 0:{x=93;f[a+832>>2]=2;f[a+836>>2]=13;break a}default:{}}if((w-p|0|0)<496){x=22;f[a+832>>2]=2;f[a+836>>2]=13;break a}e=t+((((w-p|0)>>4|0)/2|0)<<4)|0;if((w-p|0|0)>15984)h=bWa(t,t+((((w-p|0)>>4|0)/4|0)<<4)|0,e,e+((((w-p|0)>>4|0)/4|0)<<4)|0,m,u)|0;else h=aWa(t,e,m,u)|0;k=f[t>>2]|0;j=f[e>>2]|0;if(k>>>0<j>>>0){c=m;b=h;break}if((k|0)==(j|0))if((f[t+12>>2]|0)<(f[t+((((w-p|0)>>4|0)/2|0)<<4)+12>>2]|0)){c=m;b=h;break}if((t|0)!=(n|0)){i=t+((((w-p|0)>>4|0)/2|0)<<4)+12|0;d=m;l=n;while(1){g=f[l>>2]|0;if(g>>>0<j>>>0){x=68;break b}if((g|0)==(j|0))if((f[d+-4>>2]|0)<(f[i>>2]|0)){x=68;break b}d=l+-16|0;if((t|0)==(d|0))break;else{g=l;l=d;d=g}}}d=t+16|0;e=f[m>>2]|0;do if(k>>>0>=e>>>0){if((k|0)==(e|0))if((f[t+12>>2]|0)<(f[o>>2]|0))break;if((d|0)==(m|0)){x=93;f[a+832>>2]=2;f[a+836>>2]=13;break a}g=t+12|0;while(1){e=f[d>>2]|0;if(k>>>0<e>>>0)break;if((k|0)==(e|0))if((f[g>>2]|0)<(f[d+12>>2]|0))break;d=d+16|0;if((d|0)==(m|0)){x=93;f[a+832>>2]=2;f[a+836>>2]=13;break a}}f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];f[m+12>>2]=f[a+12>>2];d=d+16|0}while(0);if((d|0)==(m|0)){x=93;f[a+832>>2]=2;f[a+836>>2]=13;break a}j=t+12|0;e=m;while(1){i=f[t>>2]|0;g=f[d>>2]|0;c:do if(i>>>0>=g>>>0)do{if((i|0)==(g|0))if((f[j>>2]|0)<(f[d+12>>2]|0))break c;d=d+16|0;g=f[d>>2]|0}while(i>>>0>=g>>>0);while(0);while(1){g=e;e=e+-16|0;h=f[e>>2]|0;if(i>>>0<h>>>0)continue;if((i|0)!=(h|0))break;if((f[j>>2]|0)>=(f[g+-4>>2]|0))break}if(d>>>0>=e>>>0){t=d;continue b};f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[e>>2]=f[a>>2];f[e+4>>2]=f[a+4>>2];f[e+8>>2]=f[a+8>>2];f[e+12>>2]=f[a+12>>2];d=d+16|0}}if((x|0)==68){x=0;f[a>>2]=f[t>>2];f[a+4>>2]=f[t+4>>2];f[a+8>>2]=f[t+8>>2];f[a+12>>2]=f[t+12>>2];f[t>>2]=f[l>>2];f[t+4>>2]=f[l+4>>2];f[t+8>>2]=f[l+8>>2];f[t+12>>2]=f[l+12>>2];f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[l+12>>2]=f[a+12>>2];c=l;b=h+1|0}d=t+16|0;d:do if(d>>>0<c>>>0){j=e;while(1){h=f[j>>2]|0;i=j+12|0;while(1){e=f[d>>2]|0;if(e>>>0>=h>>>0){if((e|0)!=(h|0))break;if((f[d+12>>2]|0)>=(f[i>>2]|0))break}d=d+16|0}g=c+-16|0;e=f[g>>2]|0;e:do if(e>>>0<h>>>0)c=g;else while(1){if((e|0)==(h|0))if((f[c+-4>>2]|0)<(f[i>>2]|0)){c=g;break e}c=g+-16|0;e=f[c>>2]|0;if(e>>>0<h>>>0)break;else{q=g;g=c;c=q}}while(0);if(d>>>0>c>>>0){e=j;q=d;break d};f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];j=(j|0)==(d|0)?c:j;d=d+16|0;b=b+1|0}}else q=d;while(0);do if((q|0)!=(e|0)){c=f[e>>2]|0;d=f[q>>2]|0;if(c>>>0>=d>>>0){if((c|0)!=(d|0))break;if((f[e+12>>2]|0)>=(f[q+12>>2]|0))break};f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[a+12>>2]=f[q+12>>2];f[q>>2]=f[e>>2];f[q+4>>2]=f[e+4>>2];f[q+8>>2]=f[e+8>>2];f[q+12>>2]=f[e+12>>2];f[e>>2]=f[a>>2];f[e+4>>2]=f[a+4>>2];f[e+8>>2]=f[a+8>>2];f[e+12>>2]=f[a+12>>2];b=b+1|0}while(0);if(!b){v=cWa(t,q,u)|0;b=q+16|0;if(cWa(b,s,u)|0){x=92;f[a+832>>2]=1;break a}if(v){r=b;f[a+832>>2]=3;break a}}s=q;if((s-p|0)>=(w-s|0)){x=91;f[a+832>>2]=1;break a}TVa(t,q,u);r=q+16|0}f[a+56>>2]=r;f[a+160>>2]=t;f[a+296>>2]=q;f[a+560>>2]=v;f[a+816>>2]=x}
function lY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+4|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+4|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function mY(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function nY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function oY(a){a=a|0;return 0}function pY(a){a=a|0;f[a>>2]=22576;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function qY(a){a=a|0;f[a>>2]=22576;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function rY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function sY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=h[b>>0];b=sd(2528,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function tY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function uY(a){a=a|0;return 0}function vY(a){a=a|0;f[a>>2]=22608;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function wY(a){a=a|0;f[a>>2]=22608;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function xY(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function yY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function zY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function AY(a){a=a|0;return 0}function BY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function CY(a){a=a|0;f[a>>2]=22664;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function DY(a){a=a|0;f[a>>2]=22664;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function EY(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function FY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function GY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function HY(a){a=a|0;return 0}function IY(a){a=a|0;f[a>>2]=22696;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function JY(a){a=a|0;f[a>>2]=22696;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function KY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;sz(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function LY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function MY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function NY(a){a=a|0;return 0}function OY(a){a=a|0;f[a>>2]=22728;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function PY(a){a=a|0;f[a>>2]=22728;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function QY(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function RY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function SY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function TY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;uh[a&3](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function UY(a){a=a|0;f[a>>2]=22784;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function VY(a){a=a|0;f[a>>2]=22784;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function WY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;o=u;u=u+32|0;j=o;k=o+16|0;l=(f[c+4>>2]|0)-(f[c>>2]|0)>>3;m=md()|0;d=m;if(!l){jd(m|0);f[j>>2]=d;n=a+4|0;n=f[n>>2]|0;n=cd(n|0,1,16304,j|0)|0;ed(n|0);ed(m|0);u=o;return}e=j+8|0;n=0;do{i=f[c>>2]|0;g=f[i+(n<<3)>>2]|0;h=hd(82365)|0;i=(f[i+(n<<3)+4>>2]|0)+g|0;if(!(b[208816]|0))if(rrb(208816)|0){p=gd(3,18368)|0;f[52689]=p}p=f[52689]|0;f[j>>2]=g;f[e>>2]=i;q=+dd(p|0,h|0,69983,k|0,j|0);p=~~q>>>0;i=p;qd(f[k>>2]|0);g=fd(82372)|0;jd(i|0);f[j>>2]=p;p=ld(g|0,1,18380,j|0)|0;ed(g|0);ed(i|0);ed(h|0);f[j>>2]=n;i=sd(13536,j|0)|0;rd(m|0,i|0,p|0);ed(i|0);ed(p|0);n=n+1|0}while((n|0)!=(l|0));jd(m|0);f[j>>2]=d;p=a+4|0;p=f[p>>2]|0;p=cd(p|0,1,16304,j|0)|0;ed(p|0);ed(m|0);u=o;return}function XY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function YY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function ZY(a){a=a|0;return 0}function _Y(a){a=a|0;f[a>>2]=22816;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function $Y(a){a=a|0;f[a>>2]=22816;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function aZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function bZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function cZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function dZ(a,b,c){a=a|0;b=+b;c=+c;ch[a&3](b,c);return}function eZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function fZ(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function gZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function hZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function iZ(a,b){a=a|0;b=+b;bh[a&63](b);return}function jZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function kZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function lZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function mZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function nZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c+8|0;e=c;h=b;g=f[h+4>>2]|0;b=e;f[b>>2]=f[h>>2];f[b+4>>2]=g;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];fh[a&2047](d);u=c;return}function oZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function pZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b,c,d,e);return}function qZ(a){a=a|0;f[a>>2]=22972;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function rZ(a){a=a|0;f[a>>2]=22972;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function sZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function tZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function uZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function vZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wh[a&127](b,c,d);return}function wZ(a){a=a|0;f[a>>2]=23020;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function xZ(a){a=a|0;f[a>>2]=23020;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function zZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DE(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function AZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function BZ(a){a=a|0;return 0}function CZ(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=u;u=u+32|0;k=h+16|0;l=h;i=h+12|0;j=h+8|0;n=d;m=f[n+4>>2]|0;d=l;f[d>>2]=f[n>>2];f[d+4>>2]=m;f[i>>2]=e;f[j>>2]=g;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];Kh[a&255](b,c,k,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function EZ(a,b,c){a=a|0;b=b|0;c=+c;gh[a&63](b,c);return}function FZ(a,b,c){a=a|0;b=+b;c=c|0;eh[a&7](b,c);return}function GZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function HZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wh[a&127](b,c,d);return}function IZ(a,b,c){a=a|0;b=b|0;c=+c;gh[a&63](b,c);return}function JZ(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;lh[a&7](b,c,d);return}function KZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wh[a&127](b,c,d);return}function LZ(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b,c);return}function NZ(a,b,c){a=a|0;b=+b;c=c|0;eh[a&7](b,c);return}function OZ(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;dh[a&3](b,c,d);return}function PZ(a){a=a|0;f[a>>2]=23228;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function QZ(a){a=a|0;f[a>>2]=23228;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function RZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function SZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function TZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function UZ(a){a=a|0;f[a>>2]=23260;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function VZ(a){a=a|0;f[a>>2]=23260;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function WZ(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function XZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function YZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function ZZ(a){a=a|0;f[a>>2]=23292;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function _Z(a){a=a|0;f[a>>2]=23292;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function $Z(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function a_(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function b_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function c_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[g>>2]=c;f[h>>2]=d;wh[a&127](b,g,h);ed(f[h>>2]|0);ed(f[g>>2]|0);u=e;return}function d_(a){a=a|0;f[a>>2]=23340;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function e_(a){a=a|0;f[a>>2]=23340;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function f_(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function g_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function h_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function i_(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function j_(a){a=a|0;f[a>>2]=23396;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function k_(a){a=a|0;f[a>>2]=23396;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function l_(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function m_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function n_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function o_(a){a=a|0;f[a>>2]=23428;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function p_(a){a=a|0;f[a>>2]=23428;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function q_(a,b){a=a|0;b=b|0;var c=0,d=0;b=u;u=u+16|0;d=b;c=Wpb(1)|0;f[d>>2]=c;c=sd(3184,d|0)|0;jd(c|0);f[d>>2]=c;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(c|0);u=b;return}function r_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;g=k;h=md()|0;i=h;d=f[b>>2]|0;j=(f[b+4>>2]|0)-d>>3;if(!j){jd(h|0);f[g>>2]=i;j=a+8|0;j=f[j>>2]|0;j=cd(j|0,1,16304,g|0)|0;ed(j|0);ed(h|0);u=k;return}e=0;c=0;while(1){f[g>>2]=e;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)>>2];m=sd(13536,g|0)|0;rd(h|0,l|0,m|0);ed(m|0);ed(l|0);f[g>>2]=e|1;l=sd(13536,g|0)|0;f[g>>2]=f[d+(c<<3)+4>>2];d=sd(13536,g|0)|0;rd(h|0,l|0,d|0);ed(d|0);ed(l|0);c=c+1|0;if((c|0)==(j|0))break;e=e+2|0;d=f[b>>2]|0}jd(h|0);f[g>>2]=i;m=a+8|0;m=f[m>>2]|0;m=cd(m|0,1,16304,g|0)|0;ed(m|0);ed(h|0);u=k;return}function s_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function t_(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0.0,v=0;r=u;u=u+16|0;g=r+4|0;k=r;b[a>>0]=1;l=a+4|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;b[l+11>>0]=0;b[l>>0]=0;m=a+16|0;b[m>>0]=1;n=a+17|0;b[n>>0]=1;o=a+24|0;p[o>>3]=20.0;q=a+32|0;f[a+40>>2]=0;b[q+11>>0]=7;b[q>>0]=b[111108]|0;b[q+1>>0]=b[111109]|0;b[q+2>>0]=b[111110]|0;b[q+3>>0]=b[111111]|0;b[q+4>>0]=b[111112]|0;b[q+5>>0]=b[111113]|0;b[q+6>>0]=b[111114]|0;b[q+7>>0]=0;d=a+48|0;p[d>>3]=5.5;e=a+56|0;p[e>>3]=5.5;b[a+64>>0]=1;i=a+72|0;h=a+80|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;b[h+11>>0]=7;b[h>>0]=b[111108]|0;b[h+1>>0]=b[111109]|0;b[h+2>>0]=b[111110]|0;b[h+3>>0]=b[111111]|0;b[h+4>>0]=b[111112]|0;b[h+5>>0]=b[111113]|0;b[h+6>>0]=b[111114]|0;b[h+7>>0]=0;h=a+92|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;b[h+11>>0]=0;b[h>>0]=0;p[a+104>>3]=1.0;i=a+112|0;b[i>>0]=0;j=a+113|0;b[j>>0]=0;f[k>>2]=c;if(GX(c,110888)|0){s=f[c>>2]|0;v=nd(110888)|0;s=id(s|0,v|0)|0;ed(v|0);t=+bd(s|0,13480,g|0);qd(f[g>>2]|0);b[a>>0]=t!=0.0&1;ed(s|0)}u_(k,110908,l);if(GX(c,110930)|0){v=f[c>>2]|0;s=nd(110930)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13480,g|0);qd(f[g>>2]|0);b[m>>0]=t!=0.0&1;ed(v|0)}if(GX(c,110949)|0){v=f[c>>2]|0;s=nd(110949)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13480,g|0);qd(f[g>>2]|0);b[n>>0]=t!=0.0&1;ed(v|0)}if(GX(c,110976)|0){v=f[c>>2]|0;s=nd(110976)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13568,g|0);qd(f[g>>2]|0);p[o>>3]=t;ed(v|0)}u_(k,110993,q);if(GX(c,111007)|0){v=f[c>>2]|0;s=nd(111007)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13568,g|0);qd(f[g>>2]|0);p[d>>3]=t;ed(v|0)}if(GX(c,111033)|0){v=f[c>>2]|0;s=nd(111033)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13568,g|0);qd(f[g>>2]|0);p[e>>3]=t;ed(v|0)}u_(k,111055,h);if(GX(c,111081)|0){v=f[c>>2]|0;s=nd(111081)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13480,g|0);qd(f[g>>2]|0);b[i>>0]=t!=0.0&1;ed(v|0)}if(!(GX(c,111093)|0)){u=r;return}v=f[c>>2]|0;s=nd(111093)|0;v=id(v|0,s|0)|0;ed(s|0);t=+bd(v|0,13480,g|0);qd(f[g>>2]|0);b[j>>0]=t!=0.0&1;ed(v|0);u=r;return}function u_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0.0;k=u;u=u+16|0;e=k+12|0;j=k;if(!(GX(f[a>>2]|0,c)|0)){u=k;return}h=f[f[a>>2]>>2]|0;g=nd(c|0)|0;h=id(h|0,g|0)|0;ed(g|0);l=+bd(h|0,5288,e|0);e=f[e>>2]|0;g=~~l>>>0;c=g+4|0;g=f[g>>2]|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;if(g>>>0>4294967279)aqb(j);if(g>>>0<11){b[j+11>>0]=g;if(!g)a=j;else{a=j;i=7}}else{i=g+16&-16;a=Wpb(i)|0;f[j>>2]=a;f[j+8>>2]=i|-2147483648;f[j+4>>2]=g;i=7}if((i|0)==7)Irb(a|0,c|0,g|0)|0;b[a+g>>0]=0;qd(e|0);a=d+11|0;if((b[a>>0]|0)<0){b[f[d>>2]>>0]=0;f[d+4>>2]=0;a=d}else{b[d>>0]=0;b[a>>0]=0;a=d}jqb(d,0);f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;ed(h|0);u=k;return}function v_(a){a=a|0;f[a>>2]=23460;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function w_(a){a=a|0;f[a>>2]=23460;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function x_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;YD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function y_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;YD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function z_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function A_(a){a=a|0;return 0}function B_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+8|0;h=e+4|0;i=e;f[g>>2]=b;f[h>>2]=c;f[i>>2]=d;wh[a&127](g,h,i);ed(f[i>>2]|0);ed(f[h>>2]|0);ed(f[g>>2]|0);u=e;return}function C_(a){a=a|0;f[a>>2]=23508;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function D_(a){a=a|0;f[a>>2]=23508;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function E_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function F_(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function G_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function H_(a){a=a|0;return 0}function I_(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h+4|0;j=h;f[i>>2]=e;f[j>>2]=g;Kh[a&255](b,c,d,i,j);ed(f[j>>2]|0);ed(f[i>>2]|0);u=h;return}function J_(a){a=a|0;f[a>>2]=23564;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);return}function K_(a){a=a|0;f[a>>2]=23564;ed(f[a+8>>2]|0);ed(f[a+4>>2]|0);Zpb(a);return}function L_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=c+8|0;DD(e,b);b=f[e>>2]|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+4>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function M_(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=sd(13536,d|0)|0;jd(b|0);f[d>>2]=b;ed(cd(f[a+8>>2]|0,1,16304,d|0)|0);ed(b|0);u=c;return}function N_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c;d=od()|0;g=nd(81177)|0;f[e>>2]=b&255;b=sd(13496,e|0)|0;rd(d|0,g|0,b|0);ed(b|0);ed(g|0);jd(d|0);f[e>>2]=d;ed(cd(f[a+8>>2]|0,1,16304,e|0)|0);ed(d|0);u=c;return}function O_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;ph[a&7](b,c,d,e);return}function P_(a,b){a=a|0;b=+b;bh[a&63](b);return}function Q_(a,b){a=a|0;b=b|0;fh[a&2047](b);return}function R_(a){a=a|0;return 7104}function S_(a){a=a|0;if(!a)return;Zpb(a);return}function T_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0;o=f[c>>2]|0;f[c>>2]=0;m=f[e>>2]|0;f[e>>2]=0;k=(d&65535)<<16|b&65535;d=f[52658]|0;j=(d|0)==0;a:do if(j)c=0;else{e=d+-1|0;b=(e&d|0)==0;if(b)i=e&a;else if(d>>>0>a>>>0)i=a;else i=(a>>>0)%(d>>>0)|0;c=f[(f[52657]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(b){do{c=f[c>>2]|0;if(!c){c=i;break a}b=f[c+4>>2]|0;if(!((b|0)==(a|0)|(b&e|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(a|0));l=c+12|0;a=f[l>>2]|0;ed(a|0);f[l>>2]=o;o=c+16|0;l=f[o>>2]|0;ed(l|0);f[o>>2]=m;o=c+20|0;f[o>>2]=k;ed(0);ed(0);return}do{c=f[c>>2]|0;if(!c){c=i;break a}b=f[c+4>>2]|0;if((b|0)!=(a|0)){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;if((b|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(a|0));l=c+12|0;a=f[l>>2]|0;ed(a|0);f[l>>2]=o;o=c+16|0;l=f[o>>2]|0;ed(l|0);f[o>>2]=m;o=c+20|0;f[o>>2]=k;ed(0);ed(0);return}}while(0);e=Wpb(24)|0;f[e+8>>2]=a;f[e+12>>2]=2;f[e+16>>2]=2;f[e+4>>2]=a;f[e>>2]=0;g=+(((f[52660]|0)+1|0)>>>0);h=+n[52661];do if(j|h*+(d>>>0)<g){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;j=~~+W(+(g/h))>>>0;c=c>>>0<j>>>0?j:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[52658]|0}if(c>>>0>d>>>0)W_(c);else if(c>>>0<d>>>0){b=~~+W(+(+((f[52660]|0)>>>0)/+n[52661]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)b=1<<32-(_(b+-1|0)|0);else b=Meb(b)|0;c=c>>>0<b>>>0?b:c;if(c>>>0<d>>>0)W_(c)}c=f[52658]|0;b=c+-1|0;if(!(b&c)){d=c;c=b&a;break}if(c>>>0>a>>>0){d=c;c=a}else{d=c;c=(a>>>0)%(c>>>0)|0}}while(0);b=(f[52657]|0)+(c<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[52659];f[52659]=e;f[b>>2]=210636;c=f[e>>2]|0;if(c|0){c=f[c+4>>2]|0;b=d+-1|0;if(!(b&d))c=c&b;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[52657]|0)+(c<<2)|0;l=41}}else{f[e>>2]=f[c>>2];l=41}if((l|0)==41)f[c>>2]=e;f[52660]=(f[52660]|0)+1;l=e;a=l+12|0;j=f[a>>2]|0;ed(j|0);f[a>>2]=o;o=l+16|0;a=f[o>>2]|0;ed(a|0);f[o>>2]=m;o=l+20|0;f[o>>2]=k;ed(0);ed(0);return}function U_(a,c,d,e,g,i,j,k,l,m){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+16|0;n=r+4|0;o=r;p=r+8|0;q=a+4|0;t=f[q>>2]|0;s=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,2,p)|0;s=(f[a>>2]|0)+s|0;t=h[c>>0]|h[c+1>>0]<<8;b[s>>0]=t;b[s+1>>0]=t>>8;s=d+4|0;t=f[s>>2]|0;v=f[q>>2]|0;c=v-(f[a>>2]|0)|0;f[o>>2]=v;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=t;b[c+1>>0]=t>>8;b[c+2>>0]=t>>16;b[c+3>>0]=t>>24;c=f[d>>2]|0;s=f[s>>2]|0;d=c+s|0;if(s|0)do{t=f[q>>2]|0;v=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,1,p)|0;b[(f[a>>2]|0)+v>>0]=b[c>>0]|0;c=c+1|0}while((c|0)!=(d|0));v=e+4|0;d=f[v>>2]|0;t=f[q>>2]|0;c=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;c=f[e>>2]|0;v=f[v>>2]|0;d=c+v|0;if(v|0)do{t=f[q>>2]|0;v=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,1,p)|0;b[(f[a>>2]|0)+v>>0]=b[c>>0]|0;c=c+1|0}while((c|0)!=(d|0));v=f[q>>2]|0;t=v-(f[a>>2]|0)|0;f[o>>2]=v;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;t=(f[a>>2]|0)+t|0;v=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[t>>0]=v;b[t+1>>0]=v>>8;b[t+2>>0]=v>>16;b[t+3>>0]=v>>24;t=f[q>>2]|0;v=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;v=(f[a>>2]|0)+v|0;t=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b[v>>0]=t;b[v+1>>0]=t>>8;b[v+2>>0]=t>>16;b[v+3>>0]=t>>24;v=f[q>>2]|0;t=v-(f[a>>2]|0)|0;f[o>>2]=v;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;t=(f[a>>2]|0)+t|0;v=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;b[t>>0]=v;b[t+1>>0]=v>>8;b[t+2>>0]=v>>16;b[t+3>>0]=v>>24;t=f[q>>2]|0;v=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;v=(f[a>>2]|0)+v|0;t=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;b[v>>0]=t;b[v+1>>0]=t>>8;b[v+2>>0]=t>>16;b[v+3>>0]=t>>24;v=f[q>>2]|0;t=v-(f[a>>2]|0)|0;f[o>>2]=v;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;t=(f[a>>2]|0)+t|0;v=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;b[t>>0]=v;b[t+1>>0]=v>>8;b[t+2>>0]=v>>16;b[t+3>>0]=v>>24;t=f[q>>2]|0;v=t-(f[a>>2]|0)|0;f[o>>2]=t;b[p>>0]=0;f[n>>2]=f[o>>2];V_(a,n,4,p)|0;v=(f[a>>2]|0)+v|0;t=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;b[v>>0]=t;b[v+1>>0]=t>>8;b[v+2>>0]=t>>16;b[v+3>>0]=t>>24;u=r;return}function V_(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=f[a>>2]|0;h=n;i=(f[c>>2]|0)-h|0;n=n+i|0;if(!d){o=n;return o|0}m=a+8|0;g=f[m>>2]|0;o=a+4|0;k=f[o>>2]|0;c=k;if((g-c|0)>>>0>=d>>>0){g=c-n|0;if(g>>>0<d>>>0){c=d-g|0;h=k;do{b[h>>0]=b[e>>0]|0;h=(f[o>>2]|0)+1|0;f[o>>2]=h;c=c+-1|0}while((c|0)!=0);if(!g){o=n;return o|0}}else{g=d;h=k}j=h-(n+d)|0;c=n+j|0;if(c>>>0<k>>>0){i=h;do{b[i>>0]=b[c>>0]|0;c=c+1|0;i=(f[o>>2]|0)+1|0;f[o>>2]=i}while((c|0)!=(k|0))}if(j|0)Jrb(h+(0-j)|0,n|0,j|0)|0;if(n>>>0<=e>>>0)e=(f[o>>2]|0)>>>0>e>>>0?e+d|0:e;Krb(n|0,b[e>>0]|0,g|0)|0;o=n;return o|0}c=c-h+d|0;if((c|0)<0)fob(a);l=g-h|0;j=l<<1;c=l>>>0<1073741823?(j>>>0<c>>>0?c:j):2147483647;j=n;if(!c)g=0;else g=Wpb(c)|0;l=g+i|0;k=g+c|0;g=d;c=l;h=l;do{b[h>>0]=b[e>>0]|0;h=c+1|0;c=h;g=g+-1|0}while((g|0)!=0);e=f[a>>2]|0;g=j-e|0;i=l+(0-g)|0;if((g|0)>0)Irb(i|0,e|0,g|0)|0;g=(f[o>>2]|0)-j|0;if((g|0)>0){Irb(h|0,n|0,g|0)|0;c=h+g|0;e=f[a>>2]|0}f[a>>2]=i;f[o>>2]=c;f[m>>2]=k;if(!e){o=l;return o|0}Zpb(e);o=l;return o|0}function W_(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!a){b=f[52657]|0;f[52657]=0;if(b|0)Zpb(b);f[52658]=0;return}if(a>>>0>1073741823)ud();l=Wpb(a<<2)|0;b=f[52657]|0;f[52657]=l;if(b|0)Zpb(b);f[52658]=a;b=0;do{f[(f[52657]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(a|0));g=f[52659]|0;if(!g)return;b=f[g+4>>2]|0;k=a+-1|0;l=(k&a|0)==0;if(l)b=b&k;else if(b>>>0>=a>>>0)b=(b>>>0)%(a>>>0)|0;f[(f[52657]|0)+(b<<2)>>2]=210636;c=f[g>>2]|0;if(!c)return;else{e=g;d=c;c=g}a:while(1){b:do if(l){j=c;while(1){c=d;while(1){i=f[c+4>>2]&k;if((i|0)==(b|0))break;d=(f[52657]|0)+(i<<2)|0;if(!(f[d>>2]|0)){e=j;b=i;break b}h=c+8|0;d=c;while(1){g=f[d>>2]|0;if(!g)break;if((f[h>>2]|0)==(f[g+8>>2]|0))d=g;else break}f[j>>2]=g;f[d>>2]=f[f[(f[52657]|0)+(i<<2)>>2]>>2];f[f[(f[52657]|0)+(i<<2)>>2]>>2]=c;c=f[e>>2]|0;if(!c){b=37;break a}}d=f[c>>2]|0;if(!d){b=37;break a}else{e=c;j=c}}}else{j=c;while(1){c=d;while(1){d=f[c+4>>2]|0;if(d>>>0<a>>>0)i=d;else i=(d>>>0)%(a>>>0)|0;if((i|0)==(b|0))break;d=(f[52657]|0)+(i<<2)|0;if(!(f[d>>2]|0)){e=j;b=i;break b}g=c+8|0;d=c;while(1){h=f[d>>2]|0;if(!h)break;if((f[g>>2]|0)==(f[h+8>>2]|0))d=h;else break}f[j>>2]=h;f[d>>2]=f[f[(f[52657]|0)+(i<<2)>>2]>>2];f[f[(f[52657]|0)+(i<<2)>>2]>>2]=c;c=f[e>>2]|0;if(!c){b=37;break a}}d=f[c>>2]|0;if(!d){b=37;break a}else{e=c;j=c}}}while(0);f[d>>2]=e;d=f[c>>2]|0;if(!d){b=37;break}else e=c}if((b|0)==37)return}function X_(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;l=p+4|0;m=p;n=p+8|0;d=c+4|0;j=f[d>>2]|0;o=a+4|0;g=f[o>>2]|0;i=g-(f[a>>2]|0)|0;f[m>>2]=g;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;i=(f[a>>2]|0)+i|0;b[i>>0]=j;b[i+1>>0]=j>>8;b[i+2>>0]=j>>16;b[i+3>>0]=j>>24;if(!j){u=p;return}e=f[c>>2]|0;i=f[d>>2]|0;j=e+(i<<3)|0;d=e;g=f[d>>2]|0;d=f[d+4>>2]|0;q=f[o>>2]|0;c=q-(f[a>>2]|0)|0;f[m>>2]=q;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,8,n)|0;c=(f[a>>2]|0)+c|0;q=c;b[q>>0]=g;b[q+1>>0]=g>>8;b[q+2>>0]=g>>16;b[q+3>>0]=g>>24;c=c+4|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;if((i|0)==1)c=0;else{c=0;i=e+8|0;while(1){if((f[i>>2]|0)==(g|0))if((f[e+12>>2]|0)==(d+1|0)){c=c+1|0;d=i}else k=7;else k=7;if((k|0)==7){k=0;q=(c|0)!=0;e=f[o>>2]|0;g=e-(f[a>>2]|0)|0;f[m>>2]=e;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,1,n)|0;b[(f[a>>2]|0)+g>>0]=q&1;if(q){g=f[o>>2]|0;q=g-(f[a>>2]|0)|0;f[m>>2]=g;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;q=(f[a>>2]|0)+q|0;b[q>>0]=c;b[q+1>>0]=c>>8;b[q+2>>0]=c>>16;b[q+3>>0]=c>>24}d=f[o>>2]|0;c=d-(f[a>>2]|0)|0;f[m>>2]=d;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,8,n)|0;d=i;g=d;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=d+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;c=(f[a>>2]|0)+c|0;q=c;b[q>>0]=g;b[q+1>>0]=g>>8;b[q+2>>0]=g>>16;b[q+3>>0]=g>>24;c=c+4|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;c=0;d=i}e=i+8|0;if((e|0)==(j|0))break;else{q=i;i=e;g=f[d>>2]|0;d=f[d+4>>2]|0;e=q}}}q=(c|0)!=0;j=f[o>>2]|0;k=j-(f[a>>2]|0)|0;f[m>>2]=j;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,1,n)|0;b[(f[a>>2]|0)+k>>0]=q&1;if(!q){u=p;return}o=f[o>>2]|0;q=o-(f[a>>2]|0)|0;f[m>>2]=o;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;q=(f[a>>2]|0)+q|0;b[q>>0]=c;b[q+1>>0]=c>>8;b[q+2>>0]=c>>16;b[q+3>>0]=c>>24;u=p;return}function Y_(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;l=p+4|0;m=p;n=p+8|0;d=c+4|0;j=f[d>>2]|0;o=a+4|0;g=f[o>>2]|0;i=g-(f[a>>2]|0)|0;f[m>>2]=g;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;i=(f[a>>2]|0)+i|0;b[i>>0]=j;b[i+1>>0]=j>>8;b[i+2>>0]=j>>16;b[i+3>>0]=j>>24;if(!j){u=p;return}e=f[c>>2]|0;i=f[d>>2]|0;j=e+(i<<3)|0;d=e;g=f[d>>2]|0;d=f[d+4>>2]|0;q=f[o>>2]|0;c=q-(f[a>>2]|0)|0;f[m>>2]=q;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,8,n)|0;c=(f[a>>2]|0)+c|0;q=c;b[q>>0]=g;b[q+1>>0]=g>>8;b[q+2>>0]=g>>16;b[q+3>>0]=g>>24;c=c+4|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;if((i|0)==1)c=0;else{c=0;i=e+8|0;while(1){if((f[i>>2]|0)==(g|0))if((f[e+12>>2]|0)==(d+1|0)){c=c+1|0;d=i}else k=7;else k=7;if((k|0)==7){k=0;q=(c|0)!=0;e=f[o>>2]|0;g=e-(f[a>>2]|0)|0;f[m>>2]=e;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,1,n)|0;b[(f[a>>2]|0)+g>>0]=q&1;if(q){g=f[o>>2]|0;q=g-(f[a>>2]|0)|0;f[m>>2]=g;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;q=(f[a>>2]|0)+q|0;b[q>>0]=c;b[q+1>>0]=c>>8;b[q+2>>0]=c>>16;b[q+3>>0]=c>>24}d=f[o>>2]|0;c=d-(f[a>>2]|0)|0;f[m>>2]=d;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,8,n)|0;d=i;g=d;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=d+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;c=(f[a>>2]|0)+c|0;q=c;b[q>>0]=g;b[q+1>>0]=g>>8;b[q+2>>0]=g>>16;b[q+3>>0]=g>>24;c=c+4|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;c=0;d=i}e=i+8|0;if((e|0)==(j|0))break;else{q=i;i=e;g=f[d>>2]|0;d=f[d+4>>2]|0;e=q}}}q=(c|0)!=0;j=f[o>>2]|0;k=j-(f[a>>2]|0)|0;f[m>>2]=j;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,1,n)|0;b[(f[a>>2]|0)+k>>0]=q&1;if(!q){u=p;return}o=f[o>>2]|0;q=o-(f[a>>2]|0)|0;f[m>>2]=o;b[n>>0]=0;f[l>>2]=f[m>>2];V_(a,l,4,n)|0;q=(f[a>>2]|0)+q|0;b[q>>0]=c;b[q+1>>0]=c>>8;b[q+2>>0]=c>>16;b[q+3>>0]=c>>24;u=p;return}function Z_(a,c,d,e,g,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+16|0;j=n+4|0;k=n;l=n+8|0;m=a+4|0;p=f[m>>2]|0;o=p-(f[a>>2]|0)|0;f[k>>2]=p;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;o=(f[a>>2]|0)+o|0;p=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[o>>0]=p;b[o+1>>0]=p>>8;b[o+2>>0]=p>>16;b[o+3>>0]=p>>24;o=d+4|0;p=f[o>>2]|0;q=f[m>>2]|0;c=q-(f[a>>2]|0)|0;f[k>>2]=q;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=p;b[c+1>>0]=p>>8;b[c+2>>0]=p>>16;b[c+3>>0]=p>>24;c=f[d>>2]|0;o=f[o>>2]|0;d=c+(o<<2)|0;if(!o){__(a,e);__(a,g);__(a,i);u=n;return}do{p=f[m>>2]|0;q=p-(f[a>>2]|0)|0;f[k>>2]=p;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;q=(f[a>>2]|0)+q|0;p=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[q>>0]=p;b[q+1>>0]=p>>8;b[q+2>>0]=p>>16;b[q+3>>0]=p>>24;c=c+4|0}while((c|0)!=(d|0));__(a,e);__(a,g);__(a,i);u=n;return}function __(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;j=n+4|0;k=n;l=n+8|0;d=c+4|0;i=f[d>>2]|0;m=a+4|0;e=f[m>>2]|0;g=e-(f[a>>2]|0)|0;f[k>>2]=e;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;g=(f[a>>2]|0)+g|0;b[g>>0]=i;b[g+1>>0]=i>>8;b[g+2>>0]=i>>16;b[g+3>>0]=i>>24;if(!i){u=n;return}e=f[c>>2]|0;g=f[d>>2]|0;i=e+(g<<2)|0;c=f[e>>2]|0;o=f[m>>2]|0;d=o-(f[a>>2]|0)|0;f[k>>2]=o;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;d=(f[a>>2]|0)+d|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;if((g|0)==1)c=0;else{d=c;c=0;g=e+4|0;do{e=f[g>>2]|0;if((e|0)==(d+1|0)){c=c+1|0;d=e}else{o=(c|0)!=0;d=f[m>>2]|0;e=d-(f[a>>2]|0)|0;f[k>>2]=d;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,1,l)|0;b[(f[a>>2]|0)+e>>0]=o&1;if(o){e=f[m>>2]|0;o=e-(f[a>>2]|0)|0;f[k>>2]=e;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;o=(f[a>>2]|0)+o|0;b[o>>0]=c;b[o+1>>0]=c>>8;b[o+2>>0]=c>>16;b[o+3>>0]=c>>24}d=f[m>>2]|0;c=d-(f[a>>2]|0)|0;f[k>>2]=d;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;c=(f[a>>2]|0)+c|0;d=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;c=0;d=f[g>>2]|0}g=g+4|0}while((g|0)!=(i|0))}o=(c|0)!=0;g=f[m>>2]|0;i=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,1,l)|0;b[(f[a>>2]|0)+i>>0]=o&1;if(!o){u=n;return}m=f[m>>2]|0;o=m-(f[a>>2]|0)|0;f[k>>2]=m;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;o=(f[a>>2]|0)+o|0;b[o>>0]=c;b[o+1>>0]=c>>8;b[o+2>>0]=c>>16;b[o+3>>0]=c>>24;u=n;return}function $_(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+16|0;i=m+4|0;j=m;k=m+8|0;n=c+4|0;o=f[n>>2]|0;l=a+4|0;p=f[l>>2]|0;g=p-(f[a>>2]|0)|0;f[j>>2]=p;b[k>>0]=0;f[i>>2]=f[j>>2];V_(a,i,4,k)|0;g=(f[a>>2]|0)+g|0;b[g>>0]=o;b[g+1>>0]=o>>8;b[g+2>>0]=o>>16;b[g+3>>0]=o>>24;c=f[c>>2]|0;n=f[n>>2]|0;g=c+n|0;if(n|0)do{o=f[l>>2]|0;p=o-(f[a>>2]|0)|0;f[j>>2]=o;b[k>>0]=0;f[i>>2]=f[j>>2];V_(a,i,1,k)|0;b[(f[a>>2]|0)+p>>0]=b[c>>0]|0;c=c+1|0}while((c|0)!=(g|0));p=f[l>>2]|0;o=p-(f[a>>2]|0)|0;f[j>>2]=p;b[k>>0]=0;f[i>>2]=f[j>>2];V_(a,i,4,k)|0;o=(f[a>>2]|0)+o|0;p=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[o>>0]=p;b[o+1>>0]=p>>8;b[o+2>>0]=p>>16;b[o+3>>0]=p>>24;o=f[l>>2]|0;p=o-(f[a>>2]|0)|0;f[j>>2]=o;b[k>>0]=0;f[i>>2]=f[j>>2];V_(a,i,1,k)|0;b[(f[a>>2]|0)+p>>0]=b[e>>0]|0;u=m;return}function a$(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0;j=u;u=u+16|0;d=j+4|0;e=j;g=j+8|0;i=b[c>>0]|0;h=a+4|0;l=f[h>>2]|0;k=l-(f[a>>2]|0)|0;f[e>>2]=l;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,1,g)|0;b[(f[a>>2]|0)+k>>0]=i;k=f[h>>2]|0;i=k-(f[a>>2]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,24,g)|0;i=(f[a>>2]|0)+i|0;k=c+32|0;l=i+24|0;do{b[i>>0]=b[k>>0]|0;i=i+1|0;k=k+1|0}while((i|0)<(l|0));k=f[h>>2]|0;i=k-(f[a>>2]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,24,g)|0;i=(f[a>>2]|0)+i|0;k=c+56|0;l=i+24|0;do{b[i>>0]=b[k>>0]|0;i=i+1|0;k=k+1|0}while((i|0)<(l|0));k=f[h>>2]|0;i=k-(f[a>>2]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,24,g)|0;i=(f[a>>2]|0)+i|0;k=c+8|0;l=i+24|0;do{b[i>>0]=b[k>>0]|0;i=i+1|0;k=k+1|0}while((i|0)<(l|0));n=c+208|0;i=f[n>>2]|0;n=f[n+4>>2]|0;l=f[h>>2]|0;k=l-(f[a>>2]|0)|0;f[e>>2]=l;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,8,g)|0;k=(f[a>>2]|0)+k|0;l=k;b[l>>0]=i;b[l+1>>0]=i>>8;b[l+2>>0]=i>>16;b[l+3>>0]=i>>24;k=k+4|0;b[k>>0]=n;b[k+1>>0]=n>>8;b[k+2>>0]=n>>16;b[k+3>>0]=n>>24;k=c+216|0;n=f[k>>2]|0;k=f[k+4>>2]|0;l=f[h>>2]|0;i=l-(f[a>>2]|0)|0;f[e>>2]=l;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,8,g)|0;i=(f[a>>2]|0)+i|0;l=i;b[l>>0]=n;b[l+1>>0]=n>>8;b[l+2>>0]=n>>16;b[l+3>>0]=n>>24;i=i+4|0;b[i>>0]=k;b[i+1>>0]=k>>8;b[i+2>>0]=k>>16;b[i+3>>0]=k>>24;m=+sga(c);i=f[h>>2]|0;k=i-(f[a>>2]|0)|0;f[e>>2]=i;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,8,g)|0;k=(f[a>>2]|0)+k|0;p[s>>3]=m;b[k>>0]=b[s>>0];b[k+1>>0]=b[s+1>>0];b[k+2>>0]=b[s+2>>0];b[k+3>>0]=b[s+3>>0];b[k+4>>0]=b[s+4>>0];b[k+5>>0]=b[s+5>>0];b[k+6>>0]=b[s+6>>0];b[k+7>>0]=b[s+7>>0];k=f[h>>2]|0;i=k-(f[a>>2]|0)|0;f[e>>2]=k;b[g>>0]=0;f[d>>2]=f[e>>2];V_(a,d,128,g)|0;i=(f[a>>2]|0)+i|0;k=c+80|0;l=i+128|0;do{b[i>>0]=b[k>>0]|0;i=i+1|0;k=k+1|0}while((i|0)<(l|0));u=j;return}function b$(a,c,d,e,g,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0;o=u;u=u+16|0;q=o+4|0;r=o;p=o+8|0;s=a+4|0;v=f[s>>2]|0;t=v-(f[a>>2]|0)|0;f[r>>2]=v;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,4,p)|0;t=(f[a>>2]|0)+t|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[t>>0]=c;b[t+1>>0]=c>>8;b[t+2>>0]=c>>16;b[t+3>>0]=c>>24;t=f[s>>2]|0;c=t-(f[a>>2]|0)|0;f[r>>2]=t;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,1,p)|0;b[(f[a>>2]|0)+c>>0]=b[d>>0]|0;d=f[s>>2]|0;c=d-(f[a>>2]|0)|0;f[r>>2]=d;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,8,p)|0;d=e;t=d;t=h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24;d=d+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=(f[a>>2]|0)+c|0;c=e;b[c>>0]=t;b[c+1>>0]=t>>8;b[c+2>>0]=t>>16;b[c+3>>0]=t>>24;e=e+4|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;e=f[s>>2]|0;d=e-(f[a>>2]|0)|0;f[r>>2]=e;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,1,p)|0;b[(f[a>>2]|0)+d>>0]=b[g>>0]|0;d=f[s>>2]|0;g=d-(f[a>>2]|0)|0;f[r>>2]=d;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,8,p)|0;d=i;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(f[a>>2]|0)+g|0;e=g;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;g=g+4|0;b[g>>0]=i;b[g+1>>0]=i>>8;b[g+2>>0]=i>>16;b[g+3>>0]=i>>24;g=f[s>>2]|0;i=g-(f[a>>2]|0)|0;f[r>>2]=g;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,1,p)|0;b[(f[a>>2]|0)+i>>0]=b[j>>0]|0;j=f[s>>2]|0;i=j-(f[a>>2]|0)|0;f[r>>2]=j;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,8,p)|0;j=k;g=j;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;k=(f[a>>2]|0)+i|0;i=k;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;k=k+4|0;b[k>>0]=j;b[k+1>>0]=j>>8;b[k+2>>0]=j>>16;b[k+3>>0]=j>>24;k=f[s>>2]|0;j=k-(f[a>>2]|0)|0;f[r>>2]=k;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,1,p)|0;b[(f[a>>2]|0)+j>>0]=b[l>>0]|0;j=f[s>>2]|0;l=j-(f[a>>2]|0)|0;f[r>>2]=j;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,8,p)|0;j=m;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;l=(f[a>>2]|0)+l|0;k=l;b[k>>0]=j;b[k+1>>0]=j>>8;b[k+2>>0]=j>>16;b[k+3>>0]=j>>24;l=l+4|0;b[l>>0]=m;b[l+1>>0]=m>>8;b[l+2>>0]=m>>16;b[l+3>>0]=m>>24;l=f[s>>2]|0;m=l-(f[a>>2]|0)|0;f[r>>2]=l;b[p>>0]=0;f[q>>2]=f[r>>2];V_(a,q,1,p)|0;b[(f[a>>2]|0)+m>>0]=b[n>>0]|0;u=o;return}function c$(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;g=l+4|0;i=l;j=l+8|0;k=a+4|0;m=f[k>>2]|0;n=m-(f[a>>2]|0)|0;f[i>>2]=m;b[j>>0]=0;f[g>>2]=f[i>>2];V_(a,g,1,j)|0;b[(f[a>>2]|0)+n>>0]=b[c>>0]|0;n=f[k>>2]|0;m=n-(f[a>>2]|0)|0;f[i>>2]=n;b[j>>0]=0;f[g>>2]=f[i>>2];V_(a,g,2,j)|0;m=(f[a>>2]|0)+m|0;d=h[d>>0]|h[d+1>>0]<<8;b[m>>0]=d;b[m+1>>0]=d>>8;d=e+4|0;m=f[d>>2]|0;n=f[k>>2]|0;c=n-(f[a>>2]|0)|0;f[i>>2]=n;b[j>>0]=0;f[g>>2]=f[i>>2];V_(a,g,4,j)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=m;b[c+1>>0]=m>>8;b[c+2>>0]=m>>16;b[c+3>>0]=m>>24;c=f[e>>2]|0;e=f[d>>2]|0;d=c+e|0;if(!e){u=l;return}do{m=f[k>>2]|0;n=m-(f[a>>2]|0)|0;f[i>>2]=m;b[j>>0]=0;f[g>>2]=f[i>>2];V_(a,g,1,j)|0;b[(f[a>>2]|0)+n>>0]=b[c>>0]|0;c=c+1|0}while((c|0)!=(d|0));u=l;return}function d$(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=u;u=u+16|0;k=o+4|0;l=o;m=o+8|0;n=a+4|0;q=f[n>>2]|0;p=q-(f[a>>2]|0)|0;f[l>>2]=q;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,2,m)|0;p=(f[a>>2]|0)+p|0;q=h[c>>0]|h[c+1>>0]<<8;b[p>>0]=q;b[p+1>>0]=q>>8;p=d+4|0;q=f[p>>2]|0;r=f[n>>2]|0;c=r-(f[a>>2]|0)|0;f[l>>2]=r;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,4,m)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=q;b[c+1>>0]=q>>8;b[c+2>>0]=q>>16;b[c+3>>0]=q>>24;c=f[d>>2]|0;p=f[p>>2]|0;d=c+p|0;if(p|0)do{q=f[n>>2]|0;r=q-(f[a>>2]|0)|0;f[l>>2]=q;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,1,m)|0;b[(f[a>>2]|0)+r>>0]=b[c>>0]|0;c=c+1|0}while((c|0)!=(d|0));r=e+4|0;d=f[r>>2]|0;q=f[n>>2]|0;c=q-(f[a>>2]|0)|0;f[l>>2]=q;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,4,m)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=d;b[c+1>>0]=d>>8;b[c+2>>0]=d>>16;b[c+3>>0]=d>>24;c=f[e>>2]|0;r=f[r>>2]|0;d=c+(r<<3)|0;if(r|0)do{q=f[n>>2]|0;r=q-(f[a>>2]|0)|0;f[l>>2]=q;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,8,m)|0;q=c;e=q;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;r=(f[a>>2]|0)+r|0;p=r;b[p>>0]=e;b[p+1>>0]=e>>8;b[p+2>>0]=e>>16;b[p+3>>0]=e>>24;r=r+4|0;b[r>>0]=q;b[r+1>>0]=q>>8;b[r+2>>0]=q>>16;b[r+3>>0]=q>>24;c=c+8|0}while((c|0)!=(d|0));q=f[n>>2]|0;p=q-(f[a>>2]|0)|0;f[l>>2]=q;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,4,m)|0;p=(f[a>>2]|0)+p|0;q=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[p>>0]=q;b[p+1>>0]=q>>8;b[p+2>>0]=q>>16;b[p+3>>0]=q>>24;p=f[n>>2]|0;q=p-(f[a>>2]|0)|0;f[l>>2]=p;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,8,m)|0;p=i;i=p;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;p=p+4|0;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=(f[a>>2]|0)+q|0;r=q;b[r>>0]=i;b[r+1>>0]=i>>8;b[r+2>>0]=i>>16;b[r+3>>0]=i>>24;q=q+4|0;b[q>>0]=p;b[q+1>>0]=p>>8;b[q+2>>0]=p>>16;b[q+3>>0]=p>>24;q=b[j>>0]|0;p=f[n>>2]|0;r=p-(f[a>>2]|0)|0;f[l>>2]=p;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,1,m)|0;b[(f[a>>2]|0)+r>>0]=q;u=o;return}function e$(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n+4|0;k=n;l=n+8|0;m=a+4|0;g=f[m>>2]|0;i=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,16,l)|0;i=(f[a>>2]|0)+i|0;g=c;h=i+16|0;do{b[i>>0]=b[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));i=d+4|0;h=f[i>>2]|0;g=f[m>>2]|0;c=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=h;b[c+1>>0]=h>>8;b[c+2>>0]=h>>16;b[c+3>>0]=h>>24;c=f[d>>2]|0;i=f[i>>2]|0;d=c+(i<<4)|0;if(i|0)do{g=f[m>>2]|0;i=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,16,l)|0;i=(f[a>>2]|0)+i|0;g=c;h=i+16|0;do{b[i>>0]=b[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));c=c+16|0}while((c|0)!=(d|0));g=f[m>>2]|0;i=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,12,l)|0;i=(f[a>>2]|0)+i|0;g=e;h=i+12|0;do{b[i>>0]=b[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));u=n;return}function f$(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n+4|0;k=n;l=n+8|0;m=a+4|0;g=f[m>>2]|0;i=g-(f[a>>2]|0)|0;f[k>>2]=g;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,1,l)|0;b[(f[a>>2]|0)+i>>0]=b[c>>0]|0;i=f[m>>2]|0;g=i-(f[a>>2]|0)|0;f[k>>2]=i;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,2,l)|0;g=(f[a>>2]|0)+g|0;i=h[d>>0]|h[d+1>>0]<<8;b[g>>0]=i;b[g+1>>0]=i>>8;g=e+4|0;i=f[g>>2]|0;d=f[m>>2]|0;c=d-(f[a>>2]|0)|0;f[k>>2]=d;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,4,l)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=i;b[c+1>>0]=i>>8;b[c+2>>0]=i>>16;b[c+3>>0]=i>>24;c=f[e>>2]|0;g=f[g>>2]|0;i=c+(g<<4)|0;if(!g){u=n;return}do{e=f[m>>2]|0;d=e-(f[a>>2]|0)|0;f[k>>2]=e;b[l>>0]=0;f[j>>2]=f[k>>2];V_(a,j,16,l)|0;d=(f[a>>2]|0)+d|0;e=c;g=d+16|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));c=c+16|0}while((c|0)!=(i|0));u=n;return}function g$(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=o+4|0;l=o;m=o+8|0;n=a+4|0;j=f[n>>2]|0;i=j-(f[a>>2]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,2,m)|0;i=(f[a>>2]|0)+i|0;j=h[c>>0]|h[c+1>>0]<<8;b[i>>0]=j;b[i+1>>0]=j>>8;i=d+4|0;j=f[i>>2]|0;g=f[n>>2]|0;c=g-(f[a>>2]|0)|0;f[l>>2]=g;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,4,m)|0;c=(f[a>>2]|0)+c|0;b[c>>0]=j;b[c+1>>0]=j>>8;b[c+2>>0]=j>>16;b[c+3>>0]=j>>24;c=f[d>>2]|0;i=f[i>>2]|0;j=c+(i<<4)|0;if(i|0)do{g=f[n>>2]|0;d=g-(f[a>>2]|0)|0;f[l>>2]=g;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,16,m)|0;d=(f[a>>2]|0)+d|0;g=c;i=d+16|0;do{b[d>>0]=b[g>>0]|0;d=d+1|0;g=g+1|0}while((d|0)<(i|0));c=c+16|0}while((c|0)!=(j|0));j=f[n>>2]|0;n=j-(f[a>>2]|0)|0;f[l>>2]=j;b[m>>0]=0;f[k>>2]=f[l>>2];V_(a,k,4,m)|0;n=(f[a>>2]|0)+n|0;m=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[n>>0]=m;b[n+1>>0]=m>>8;b[n+2>>0]=m>>16;b[n+3>>0]=m>>24;u=o;return}function h$(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;i=u;u=u+992|0;d=b[c>>0]|0;g=f[(a+4|0)>>2]|0;e=g-(f[a>>2]|0)|0;f[i>>2]=g;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,1,i+8|0)|0;b[(f[a>>2]|0)+e>>0]=d;e=b[((c+4|0)+11|0)>>0]|0;e=e<<24>>24<0?f[(c+8|0)>>2]|0:e&255;d=f[(a+4|0)>>2]|0;g=d-(f[a>>2]|0)|0;f[i>>2]=d;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,4,i+8|0)|0;g=(f[a>>2]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;g=b[((c+4|0)+11|0)>>0]|0;e=g<<24>>24<0?f[(c+4|0)>>2]|0:c+4|0;g=g<<24>>24<0?f[(c+8|0)>>2]|0:g&255;if(g|0){d=e;do{k=b[d>>0]|0;l=f[(a+4|0)>>2]|0;j=l-(f[a>>2]|0)|0;f[i>>2]=l;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,1,i+8|0)|0;b[(f[a>>2]|0)+j>>0]=k;d=d+1|0}while((d|0)!=(e+g|0|0))}l=b[c+16>>0]|0;g=f[(a+4|0)>>2]|0;e=g-(f[a>>2]|0)|0;f[i>>2]=g;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,1,i+8|0)|0;b[(f[a>>2]|0)+e>>0]=l;e=b[c+17>>0]|0;l=f[(a+4|0)>>2]|0;g=l-(f[a>>2]|0)|0;f[i>>2]=l;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,1,i+8|0)|0;b[(f[a>>2]|0)+g>>0]=e;g=f[(a+4|0)>>2]|0;e=g-(f[a>>2]|0)|0;f[i>>2]=g;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,8,i+8|0)|0;g=h[(c+24|0)>>0]|h[(c+24|0)+1>>0]<<8|h[(c+24|0)+2>>0]<<16|h[(c+24|0)+3>>0]<<24;l=h[((c+24|0)+4|0)>>0]|h[((c+24|0)+4|0)+1>>0]<<8|h[((c+24|0)+4|0)+2>>0]<<16|h[((c+24|0)+4|0)+3>>0]<<24;e=(f[a>>2]|0)+e|0;b[e>>0]=g;b[e+1>>0]=g>>8;b[e+2>>0]=g>>16;b[e+3>>0]=g>>24;b[(e+4|0)>>0]=l;b[(e+4|0)+1>>0]=l>>8;b[(e+4|0)+2>>0]=l>>16;b[(e+4|0)+3>>0]=l>>24;e=b[((c+32|0)+11|0)>>0]|0;e=e<<24>>24<0?f[(c+36|0)>>2]|0:e&255;l=f[(a+4|0)>>2]|0;g=l-(f[a>>2]|0)|0;f[i>>2]=l;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,4,i+8|0)|0;g=(f[a>>2]|0)+g|0;b[g>>0]=e;b[g+1>>0]=e>>8;b[g+2>>0]=e>>16;b[g+3>>0]=e>>24;g=b[((c+32|0)+11|0)>>0]|0;e=g<<24>>24<0?f[(c+32|0)>>2]|0:c+32|0;g=g<<24>>24<0?f[(c+36|0)>>2]|0:g&255;if(g|0){d=e;do{k=b[d>>0]|0;j=f[(a+4|0)>>2]|0;l=j-(f[a>>2]|0)|0;f[i>>2]=j;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,1,i+8|0)|0;b[(f[a>>2]|0)+l>>0]=k;d=d+1|0}while((d|0)!=(e+g|0|0))}j=f[(a+4|0)>>2]|0;l=j-(f[a>>2]|0)|0;f[i>>2]=j;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,8,i+8|0)|0;j=h[(c+48|0)>>0]|h[(c+48|0)+1>>0]<<8|h[(c+48|0)+2>>0]<<16|h[(c+48|0)+3>>0]<<24;k=h[((c+48|0)+4|0)>>0]|h[((c+48|0)+4|0)+1>>0]<<8|h[((c+48|0)+4|0)+2>>0]<<16|h[((c+48|0)+4|0)+3>>0]<<24;l=(f[a>>2]|0)+l|0;b[l>>0]=j;b[l+1>>0]=j>>8;b[l+2>>0]=j>>16;b[l+3>>0]=j>>24;b[(l+4|0)>>0]=k;b[(l+4|0)+1>>0]=k>>8;b[(l+4|0)+2>>0]=k>>16;b[(l+4|0)+3>>0]=k>>24;l=f[(a+4|0)>>2]|0;k=l-(f[a>>2]|0)|0;f[i>>2]=l;b[(i+8|0)>>0]=0;f[(i+4|0)>>2]=f[i>>2];V_(a,i+4|0,8,i+8|0)|0;l=h[(c+56|0)>>0]|h[(c+56|0)+1>>0]<<8|h[(c+56|0)+2>>0]<<16|h[(c+56|0)+3>>0]<<24;j=h[((c+56|0)+4|0)>>0]|h[((c+56|0)+4|0)+1>>0]<<8|h[((c+56|0)+4|0)+2>>0]<<16|h[((c+56|0)+4|0)+3>>0]<<24;k=(f[a>>2]|0)+k|0;b[k>>0]=l;b[k+1>>0]=l>>8;b[k+2>>0]=l>>16;b[k+3>>0]=l>>24;b[(k+4|0)>>0]=j;b[(k+4|0)+1>>0]=j>>8;b[(k+4|0)+2>>0]=j>>16;b[(k+4|0)+3>>0]=j>>24;k=b[c+64>>0]|0;j=f[(a+4|0)>>2]|0;l=j-(f[a>>2]|0)|0;f[i>>2]=j;b[(i+8|0)>>0]=0;f[i+32>>2]=a;f[i+40>>2]=c;f[i+168>>2]=k;f[i+184>>2]=l;f[i+936>>2]=0;f[i+940>>2]=0;O8(i);G=f[i+936>>2]|0;D=f[i+940>>2]|0;H=+n[i+940>>2];f[i+936>>2]=0;f[i+940>>2]=0;if((G|0)==5)return}function i$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b,c,d,e);return}function j$(){f[52656]=1;f[52657]=0;f[52658]=0;f[52659]=0;f[52660]=0;n[52661]=1.0;f[52662]=0;f[52663]=0;f[52664]=0;f[52665]=0;ni(0);return}function k$(){f[52691]=0;return}function l$(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if((a|0)<1|(b|0)<1)return;f[1786]=a;f[1787]=b;if(c>=1.0&d>=1.0)p[894]=c;else{p[894]=+(a|0);d=+(b|0)}p[895]=d;if((f[52692]|0)<=0)return;D7a(211248,0,0,a,b)|0;return}function m$(){var a=0,b=0;if((f[52692]|0)<=0){a=0;return a|0}a=f[52817]|0;b=f[52818]|0;a=b>>>0<a>>>0?b:a;return a|0}function n$(){return +(+Ad())}function o$(a,b,c){a=a|0;b=b|0;c=c|0;ac(a|0,b|0,c|0);return}function p$(){bc();return}function q$(a){a=a|0;return}function r$(a){a=a|0;f[a>>2]=f[1786];f[a+4>>2]=f[1787];f[a+8>>2]=f[1788];f[a+12>>2]=f[1789];f[a+16>>2]=f[1790];f[a+20>>2]=f[1791];return}function s$(){var a=0.0,b=0.0,c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+32|0;c=e+24|0;d=e+20|0;i=e+16|0;h=e+8|0;g=e;f[c>>2]=0;f[d>>2]=0;f[i>>2]=0;zd(c|0,d|0,i|0);p[h>>3]=0.0;p[g>>3]=0.0;yd(1,h|0,g|0)|0;c=f[c>>2]|0;d=f[d>>2]|0;b=+p[h>>3];a=+p[g>>3];if((c|0)<1|(d|0)<1){qc();u=e;return 0}f[1786]=c;f[1787]=d;if(b>=1.0&a>=1.0)p[894]=b;else{p[894]=+(c|0);a=+(d|0)}p[895]=a;if((f[52692]|0)<=0){qc();u=e;return 0}D7a(211248,0,0,c,d)|0;qc();u=e;return 0}function t$(){var a=0,c=0,d=0,e=0;d=u;u=u+1168|0;a=Wpb(236)|0;wxa(a,38);c=f[52691]|0;f[52691]=a;if(c){fh[f[(f[c>>2]|0)+4>>2]&2047](c);a=f[52691]|0}c=f[a+228>>2]|0;_Na(c);f[d>>2]=23652;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;a=f[(c+4|0)>>2]|0;if(a>>>0<(f[c+8>>2]|0)>>>0){f[a+16>>2]=a;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,a);e=f[(c+4|0)>>2]|0;b[a+24>>0]=0;f[(c+4|0)>>2]=e+32}else v$(c,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);f[d>>2]=23696;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;a=f[(c+52|0)>>2]|0;if(a>>>0<(f[c+56>>2]|0)>>>0){f[a+16>>2]=a;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,a);e=f[(c+52|0)>>2]|0;b[a+24>>0]=0;f[(c+52|0)>>2]=e+32}else w$(c+48|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);f[d>>2]=23740;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;a=f[(c+28|0)>>2]|0;if(a>>>0<(f[c+32>>2]|0)>>>0){f[a+16>>2]=a;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,a);e=f[(c+28|0)>>2]|0;b[a+24>>0]=0;f[(c+28|0)>>2]=e+32}else x$(c+24|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);f[d>>2]=23784;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;a=f[(c+16|0)>>2]|0;if(a>>>0<(f[c+20>>2]|0)>>>0){f[a+16>>2]=a;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,a);e=f[(c+16|0)>>2]|0;b[a+24>>0]=0;f[(c+16|0)>>2]=e+32}else x$(c+12|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);c=f[52691]|0;f[d>>2]=23828;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;a=f[(c+8|0)>>2]|0;if(a>>>0<(f[c+12>>2]|0)>>>0){f[a+16>>2]=a;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,a);e=f[(c+8|0)>>2]|0;b[a+24>>0]=0;f[(c+8|0)>>2]=e+32}else x$(c+4|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[52691]|0;f[d>>2]=23872;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+24|0)>>2]|0;if(c>>>0<(f[a+28>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+24|0)>>2]|0;b[c+24>>0]=0;f[(a+24|0)>>2]=e+32}else x$(a+20|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[52691]|0;f[d>>2]=23916;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+48|0)>>2]|0;if(c>>>0<(f[a+52>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+48|0)>>2]|0;b[c+24>>0]=0;f[(a+48|0)>>2]=e+32}else y$(a+44|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[52691]|0;f[d>>2]=23960;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+60|0)>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+60|0)>>2]|0;b[c+24>>0]=0;f[(a+60|0)>>2]=e+32}else y$(a+56|0,d,d+24|0);a=f[(d+16|0)>>2]|0;if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[52691]|0;f[d>>2]=24004;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+72|0)>>2]|0;if(c>>>0<(f[a+76>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+72|0)>>2]|0;b[c+24>>0]=0;f[(a+72|0)>>2]=e+32}else y$(a+68|0,d,d+24|0);a=f[(d+16|0)>>2]|0;do if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else{if(!a)break;fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);a=f[52691]|0;f[d>>2]=24048;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+96|0)>>2]|0;if(c>>>0<(f[a+100>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+96|0)>>2]|0;b[c+24>>0]=0;f[(a+96|0)>>2]=e+32}else x$(a+92|0,d,d+24|0);a=f[(d+16|0)>>2]|0;do if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else{if(!a)break;fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);a=f[52691]|0;f[d>>2]=24092;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+108|0)>>2]|0;if(c>>>0<(f[a+112>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+108|0)>>2]|0;b[c+24>>0]=0;f[(a+108|0)>>2]=e+32}else x$(a+104|0,d,d+24|0);a=f[(d+16|0)>>2]|0;do if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else{if(!a)break;fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);a=f[52691]|0;f[d>>2]=24136;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+132|0)>>2]|0;if(c>>>0<(f[a+136>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+132|0)>>2]|0;b[c+24>>0]=0;f[(a+132|0)>>2]=e+32}else z$(a+128|0,d,d+24|0);a=f[(d+16|0)>>2]|0;do if((d|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else{if(!a)break;fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);a=f[52691]|0;f[d>>2]=24180;f[(d+16|0)>>2]=d;b[(d+24|0)>>0]=0;c=f[(a+192|0)>>2]|0;if(c>>>0<(f[a+196>>2]|0)>>>0){f[c+16>>2]=c;e=f[(d+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,c);e=f[(a+192|0)>>2]|0;b[c+24>>0]=0;f[(a+192|0)>>2]=e+32}else A$(a+188|0,d,d+24|0);e=f[(d+16|0)>>2]|0;f[d+184>>2]=e;f[d+1088>>2]=0;f[d+1092>>2]=0;P8(d);G=f[d+1088>>2]|0;D=f[d+1092>>2]|0;H=+n[d+1092>>2];f[d+1088>>2]=0;f[d+1092>>2]=0;if((G|0)==5)return}function u$(){var a=0,c=0;c=Wpb(244)|0;OAa(c,f[52691]|0);a=f[52691]|0;f[52691]=c;if(!a){b[215188]=2;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);b[215188]=2;return}function v$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function w$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function x$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function y$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function z$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function A$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function B$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function C$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function D$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function E$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function F$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+4|0;h=f[p>>2]|0;e=f[a>>2]|0;m=h-e>>5;g=m+1|0;k=e;if(g>>>0>134217727)fob(a);o=a+8|0;j=(f[o>>2]|0)-e|0;n=j>>4;g=j>>5>>>0<67108863?(n>>>0<g>>>0?g:n):134217727;do if(!g)l=0;else if(g>>>0>134217727)ud();else{l=Wpb(g<<5)|0;break}while(0);i=l+(m<<5)|0;e=i;n=l+(g<<5)|0;j=b[d>>0]|0;g=c+16|0;d=f[g>>2]|0;do if(!d)f[l+(m<<5)+16>>2]=0;else if((c|0)==(d|0)){f[l+(m<<5)+16>>2]=i;nh[f[(f[d>>2]|0)+12>>2]&1023](d,i);h=f[p>>2]|0;k=f[a>>2]|0;break}else{f[l+(m<<5)+16>>2]=d;f[g>>2]=0;break}while(0);b[l+(m<<5)+24>>0]=j;l=i+32|0;if((h|0)!=(k|0)){do{d=i+-32|0;g=h;h=h+-32|0;j=g+-16|0;c=f[j>>2]|0;do if(!c)f[i+-16>>2]=0;else if((h|0)==(c|0)){f[i+-16>>2]=d;m=f[j>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,d);break}else{f[i+-16>>2]=c;f[j>>2]=0;break}while(0);b[i+-8>>0]=b[g+-8>>0]|0;i=e+-32|0;e=i}while((h|0)!=(k|0));h=f[a>>2]|0}f[a>>2]=e;e=f[p>>2]|0;f[p>>2]=l;f[o>>2]=n;d=h;if((e|0)!=(d|0))do{g=f[e+-16>>2]|0;e=e+-32|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}while((e|0)!=(d|0));if(!h)return;Zpb(d);return}function G$(a){a=a|0;var b=0,c=0;f[a>>2]=18352;b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b);Zpb(a);return}function H$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;kJa(a,f[52691]|0,b,c,d,e);hc(b|0,c|0,d|0,e|0);return}function I$(a){a=a|0;var b=0;f[a>>2]=24532;f[a+4>>2]=18352;b=f[a+8>>2]|0;if(!b)return;a=a+12|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function J$(a){a=a|0;var b=0,c=0;f[a>>2]=24532;f[a+4>>2]=18352;b=f[a+8>>2]|0;if(!b){Zpb(a);return}c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b);Zpb(a);return}function K$(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;b=Wpb(24)|0;f[b>>2]=24532;d=b+4|0;f[d>>2]=18352;e=b+8|0;f[e>>2]=0;g=b+12|0;f[g>>2]=0;h=b+16|0;f[h>>2]=0;i=f[a+8>>2]|0;c=(f[a+12>>2]|0)-i|0;if(!c){i=b+20|0;h=a+20|0;h=f[h>>2]|0;f[i>>2]=h;f[d>>2]=24576;return b|0}if((c|0)<0)fob(e);j=Wpb(c)|0;f[g>>2]=j;f[e>>2]=j;e=j+c|0;f[h>>2]=e;Irb(j|0,i|0,c|0)|0;f[g>>2]=e;i=b+20|0;h=a+20|0;h=f[h>>2]|0;f[i>>2]=h;f[d>>2]=24576;return b|0}function L$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;f[b>>2]=24532;j=b+4|0;f[j>>2]=18352;d=b+8|0;e=a+8|0;f[d>>2]=0;k=b+12|0;f[k>>2]=0;g=b+16|0;f[g>>2]=0;h=a+12|0;c=(f[h>>2]|0)-(f[e>>2]|0)|0;if(c|0){if((c|0)<0)fob(d);i=Wpb(c)|0;f[k>>2]=i;f[d>>2]=i;f[g>>2]=i+c;d=f[e>>2]|0;c=(f[h>>2]|0)-d|0;if((c|0)>0){Irb(i|0,d|0,c|0)|0;f[k>>2]=i+c}}f[b+20>>2]=f[a+20>>2];f[j>>2]=24576;return}function M$(a){a=a|0;var b=0;f[a+4>>2]=18352;b=f[a+8>>2]|0;if(!b)return;a=a+12|0;if((f[a>>2]|0)!=(b|0))f[a>>2]=b;Zpb(b);return}function N$(a){a=a|0;var b=0,c=0;f[a+4>>2]=18352;b=f[a+8>>2]|0;if(!b){Zpb(a);return}c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b);Zpb(a);return}function O$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=f[b>>2]|0;c=f[c>>2]|0;d=f[52691]|0;d=Ng[f[(f[d>>2]|0)+16>>2]&511](d)|0;f[a+20>>2]=d;b0a(a+4|0,b,c);return}function P$(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112176?a+4|0:0)|0}function Q$(a){a=a|0;return 7200}function R$(a){a=a|0;return}function S$(a){a=a|0;Zpb(a);return}function T$(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24488;return a|0}function U$(a,b){a=a|0;b=b|0;f[b>>2]=24488;return}function V$(a){a=a|0;return}function W$(a){a=a|0;Zpb(a);return}function X$(a,b){a=a|0;b=b|0;dc(f[b>>2]|0);return}function Y$(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112324?a+4|0:0)|0}function Z$(a){a=a|0;return 7232}function _$(a){a=a|0;return}function $$(a){a=a|0;Zpb(a);return}function a0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24444;return a|0}function b0(a,b){a=a|0;b=b|0;f[b>>2]=24444;return}function c0(a){a=a|0;return}function d0(a){a=a|0;Zpb(a);return}function e0(a,b,c){a=a|0;b=b|0;c=c|0;lc(f[b>>2]|0,f[c>>2]|0);return}function f0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112466?a+4|0:0)|0}function g0(a){a=a|0;return 7264}function h0(a){a=a|0;return}function i0(a){a=a|0;Zpb(a);return}function j0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24400;return a|0}function k0(a,b){a=a|0;b=b|0;f[b>>2]=24400;return}function l0(a){a=a|0;return}function m0(a){a=a|0;Zpb(a);return}function n0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;mc(f[b>>2]|0,f[c>>2]|0,f[d>>2]|0,f[e>>2]|0);return}function o0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112610?a+4|0:0)|0}function p0(a){a=a|0;return 7296}function q0(a){a=a|0;return}function r0(a){a=a|0;Zpb(a);return}function s0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24356;return a|0}function t0(a,b){a=a|0;b=b|0;f[b>>2]=24356;return}function u0(a){a=a|0;return}function v0(a){a=a|0;Zpb(a);return}function w0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;nc(f[b>>2]|0,f[c>>2]|0,f[d>>2]|0);return}function x0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112758?a+4|0:0)|0}function y0(a){a=a|0;return 7328}function z0(a){a=a|0;return}function A0(a){a=a|0;Zpb(a);return}function B0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24312;return a|0}function C0(a,b){a=a|0;b=b|0;f[b>>2]=24312;return}function D0(a){a=a|0;return}function E0(a){a=a|0;Zpb(a);return}function F0(a,c,d){a=a|0;c=c|0;d=d|0;ic(f[c>>2]|0,((b[d+11>>0]|0)<0?f[d>>2]|0:d)|0);return}function G0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==112904?a+4|0:0)|0}function H0(a){a=a|0;return 7360}function I0(a){a=a|0;Zpb(a);return}function J0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24268;return a|0}function K0(a,b){a=a|0;b=b|0;f[b>>2]=24268;return}function L0(a){a=a|0;return}function M0(a){a=a|0;Zpb(a);return}function N0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gc(f[b>>2]|0,f[c>>2]|0,f[d>>2]|0);return}function O0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113157?a+4|0:0)|0}function P0(a){a=a|0;return 7392}function Q0(a){a=a|0;return}function R0(a){a=a|0;Zpb(a);return}function S0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24224;return a|0}function T0(a,b){a=a|0;b=b|0;f[b>>2]=24224;return}function U0(a){a=a|0;return}function V0(a){a=a|0;Zpb(a);return}function W0(a,c,d){a=a|0;c=c|0;d=d|0;cc((b[c>>0]|0)!=0|0,f[d>>2]|0);return}function X0(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113267?a+4|0:0)|0}function Y0(a){a=a|0;return 7416}function Z0(a){a=a|0;Zpb(a);return}function _0(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24180;return a|0}function $0(a,b){a=a|0;b=b|0;f[b>>2]=24180;return}function a1(a){a=a|0;return}function b1(a){a=a|0;Zpb(a);return}function c1(a,b,c){a=a|0;b=b|0;c=c|0;$b(f[b>>2]|0,f[c>>2]|0);return}function d1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113411?a+4|0:0)|0}function e1(a){a=a|0;return 7448}function f1(a){a=a|0;Zpb(a);return}function g1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24136;return a|0}function h1(a,b){a=a|0;b=b|0;f[b>>2]=24136;return}function i1(a){a=a|0;return}function j1(a){a=a|0;Zpb(a);return}function k1(a,b){a=a|0;b=b|0;jc(f[b>>2]|0);return}function l1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113520?a+4|0:0)|0}function m1(a){a=a|0;return 7472}function n1(a){a=a|0;return}function o1(a){a=a|0;Zpb(a);return}function p1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24092;return a|0}function q1(a,b){a=a|0;b=b|0;f[b>>2]=24092;return}function r1(a){a=a|0;return}function s1(a){a=a|0;Zpb(a);return}function t1(a){a=a|0;ec(113656);return}function u1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113628?a+4|0:0)|0}function v1(a){a=a|0;return 7496}function w1(a){a=a|0;Zpb(a);return}function x1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24048;return a|0}function y1(a,b){a=a|0;b=b|0;f[b>>2]=24048;return}function z1(a){a=a|0;return}function A1(a){a=a|0;Zpb(a);return}function B1(a){a=a|0;ec(113809);return}function C1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113782?a+4|0:0)|0}function D1(a){a=a|0;return 7528}function E1(a){a=a|0;return}function F1(a){a=a|0;Zpb(a);return}function G1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=24004;return a|0}function H1(a,b){a=a|0;b=b|0;f[b>>2]=24004;return}function I1(a){a=a|0;return}function J1(a){a=a|0;Zpb(a);return}function K1(a,c){a=a|0;c=c|0;fc(113929,((b[c+11>>0]|0)<0?f[c>>2]|0:c)|0);return}function L1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==113902?a+4|0:0)|0}function M1(a){a=a|0;return 7552}function N1(a){a=a|0;Zpb(a);return}function O1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23960;return a|0}function P1(a,b){a=a|0;b=b|0;f[b>>2]=23960;return}function Q1(a){a=a|0;return}function R1(a){a=a|0;Zpb(a);return}function S1(a,c){a=a|0;c=c|0;fc(114196,((b[c+11>>0]|0)<0?f[c>>2]|0:c)|0);return}function T1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114169?a+4|0:0)|0}function U1(a){a=a|0;return 7584}function V1(a){a=a|0;Zpb(a);return}function W1(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23916;return a|0}function X1(a,b){a=a|0;b=b|0;f[b>>2]=23916;return}function Y1(a){a=a|0;return}function Z1(a){a=a|0;Zpb(a);return}function _1(a,c){a=a|0;c=c|0;fc(114367,((b[c+11>>0]|0)<0?f[c>>2]|0:c)|0);return}function $1(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114340?a+4|0:0)|0}function a2(a){a=a|0;return 7608}function b2(a){a=a|0;Zpb(a);return}function c2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23872;return a|0}function d2(a,b){a=a|0;b=b|0;f[b>>2]=23872;return}function e2(a){a=a|0;return}function f2(a){a=a|0;Zpb(a);return}function g2(a){a=a|0;ec(114532);return}function h2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114505?a+4|0:0)|0}function i2(a){a=a|0;return 7632}function j2(a){a=a|0;Zpb(a);return}function k2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23828;return a|0}function l2(a,b){a=a|0;b=b|0;f[b>>2]=23828;return}function m2(a){a=a|0;return}function n2(a){a=a|0;Zpb(a);return}function o2(a){a=a|0;pc();return}function p2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114620?a+4|0:0)|0}function q2(a){a=a|0;return 7656}function r2(a){a=a|0;Zpb(a);return}function s2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23784;return a|0}function t2(a,b){a=a|0;b=b|0;f[b>>2]=23784;return}function u2(a){a=a|0;return}function v2(a){a=a|0;Zpb(a);return}function w2(a){a=a|0;ec(114753);return}function x2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114726?a+4|0:0)|0}function y2(a){a=a|0;return 7680}function z2(a){a=a|0;Zpb(a);return}function A2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23740;return a|0}function B2(a,b){a=a|0;b=b|0;f[b>>2]=23740;return}function C2(a){a=a|0;return}function D2(a){a=a|0;Zpb(a);return}function E2(a){a=a|0;ec(114869);return}function F2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114842?a+4|0:0)|0}function G2(a){a=a|0;return 7704}function H2(a){a=a|0;return}function I2(a){a=a|0;Zpb(a);return}function J2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23696;return a|0}function K2(a,b){a=a|0;b=b|0;f[b>>2]=23696;return}function L2(a){a=a|0;return}function M2(a){a=a|0;Zpb(a);return}function N2(a,b){a=a|0;b=b|0;ec(114989);return}function O2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==114962?a+4|0:0)|0}function P2(a){a=a|0;return 7728}function Q2(a){a=a|0;return}function R2(a){a=a|0;Zpb(a);return}function S2(a){a=a|0;a=Wpb(8)|0;f[a>>2]=23652;return a|0}function T2(a,b){a=a|0;b=b|0;f[b>>2]=23652;return}function U2(a){a=a|0;return}function V2(a){a=a|0;Zpb(a);return}function W2(a,b){a=a|0;b=b|0;kc(b|0,ENa(f[(f[52691]|0)+228>>2]|0)|0);return}function X2(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==115147?a+4|0:0)|0}function Y2(a){a=a|0;return 7760}function Z2(){var a=0;a=f[52691]|0;f[52691]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);b[215188]=0;Xla();if((f[52692]|0)<=0)return;Y7a(211248,0.0,0.0,0.0,0.0)|0;Ud(16384);return}function _2(){return f[52691]|0}function $2(){var a=0,c=0;if(b[215188]|0){c=2;return c|0}if(!(a3()|0)){c=1;return c|0}b[215188]=2;c=Wpb(244)|0;OAa(c,f[52691]|0);a=f[52691]|0;f[52691]=c;if(!a)a=c;else{fh[f[(f[a>>2]|0)+4>>2]&2047](a);a=f[52691]|0}$Na(f[a+228>>2]|0,0);ac(780,c|0,0);ac(781,0,50);c=0;return c|0}function a3(){var a=0,b=0,c=0,d=0,e=0;e=u;u=u+48|0;b=e;if((f[52692]|0)>0){d=1;u=e;return d|0}Hd(b|0);f[b>>2]=1;f[b+16>>2]=1;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+36>>2]=0;f[b+20>>2]=0;c=b+32|0;f[c>>2]=2;a=Fd(0,b|0)|0;f[52692]=a;if((a|0)>0)d=4;else{f[c>>2]=1;a=Fd(0,b|0)|0;f[52692]=a;if((a|0)>0)d=4;else a=0}do if((d|0)==4)if(!(Id(a|0)|0)){C7a(211248);D7a(211248,0,0,f[1786]|0,f[1787]|0)|0;Y7a(211248,0.0,0.0,0.0,0.0)|0;Ud(16640);a=1;break}else{Gd(f[52692]|0)|0;f[52692]=0;a=0;break}while(0);d=a;u=e;return d|0}function b3(a,b){a=a|0;b=b|0;if(!a)return;jBa(b);return}function c3(a,b){a=a|0;b=b|0;if(!a)return;a=f[52691]|0;if(a|0)if(!(JCa(a)|0))KCa(f[52691]|0);ac(781,0,50);return}function d3(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;k=o+8|0;n=o+4|0;m=o;if((b[215188]|2)<<24>>24!=2){n=f[a>>2]|0;m=f[(f[n>>2]|0)+12>>2]|0;f[k>>2]=2;nh[m&1023](n,k);u=o;return}if(!(a3()|0)){n=f[a>>2]|0;m=f[(f[n>>2]|0)+12>>2]|0;f[k>>2]=1;nh[m&1023](n,k);u=o;return}if(!(b[215188]|0)){k=Wpb(244)|0;OAa(k,f[52691]|0);l=f[52691]|0;f[52691]=k;if(l){fh[f[(f[l>>2]|0)+4>>2]&2047](l);k=f[52691]|0}$Na(f[k+228>>2]|0,0);b[215188]=2}k=f[52691]|0;l=Wpb(8)|0;p=f[a>>2]|0;f[a>>2]=0;f[l>>2]=24600;f[l+4>>2]=p;f[n>>2]=l;a=f[d>>2]|0;f[d>>2]=0;f[m>>2]=a;dBa(k,n,c,m,e,g,h,i,j);k=f[m>>2]|0;f[m>>2]=0;if(k|0)_pb(k);k=f[n>>2]|0;f[n>>2]=0;if(k|0)fh[f[(f[k>>2]|0)+4>>2]&2047](k);ac(781,0,50);u=o;return}function e3(a){a=a|0;var b=0;f[a>>2]=24600;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function f3(a){a=a|0;var b=0,c=0;f[a>>2]=24600;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function g3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,b);return}function h3(a,b){a=a|0;b=b|0;return}function i3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function j3(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=+q;var r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=u;u=u+48|0;r=E+36|0;s=E+35|0;t=E+34|0;v=E+33|0;w=E+32|0;x=E+31|0;y=E+30|0;z=E+29|0;A=E+28|0;B=E+16|0;C=E+12|0;D=E;b[r>>0]=e&1;b[s>>0]=g&1;b[t>>0]=h&1;b[v>>0]=i&1;b[w>>0]=j&1;b[x>>0]=k&1;b[y>>0]=l&1;b[z>>0]=m&1;b[A>>0]=n&1;if(b[215188]|0){D=2;u=E;return D|0}if(!(a3()|0)){D=1;u=E;return D|0}b[215188]=1;h=Wpb(240)|0;yCa(h,f[52691]|0);m=f[52691]|0;f[52691]=h;if(!m)m=h;else{fh[f[(f[m>>2]|0)+4>>2]&2047](m);m=f[52691]|0}$Na(f[m+228>>2]|0,0);if(i)b[(f[52691]|0)+217>>0]=1;f[B>>2]=0;g=B+4|0;f[g>>2]=0;f[B+8>>2]=0;f[C>>2]=1;e=B+8|0;k3(B,C,r);n=f[g>>2]|0;m=f[e>>2]|0;f[C>>2]=2;if(n>>>0<m>>>0){f[n>>2]=2;b[n+4>>0]=b[s>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,s);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=4;if(n>>>0<m>>>0){f[n>>2]=4;b[n+4>>0]=b[t>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,t);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=8;if(n>>>0<m>>>0){f[n>>2]=8;b[n+4>>0]=b[v>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,v);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=16;if(n>>>0<m>>>0){f[n>>2]=16;b[n+4>>0]=b[w>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,w);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=32;if(n>>>0<m>>>0){f[n>>2]=32;b[n+4>>0]=b[x>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,x);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=64;if(n>>>0<m>>>0){f[n>>2]=64;b[n+4>>0]=b[y>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,y);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=128;if(n>>>0<m>>>0){f[n>>2]=128;b[n+4>>0]=b[z>>0]|0;n=n+8|0;f[g>>2]=n}else{k3(B,C,z);n=f[g>>2]|0;m=f[e>>2]|0}f[C>>2]=256;if(n>>>0<m>>>0){f[n>>2]=256;b[n+4>>0]=b[A>>0]|0;f[g>>2]=n+8}else k3(B,C,A);CGa(f[h+232>>2]|0,B,o,p,q);m=f[B>>2]|0;if(m|0){n=f[g>>2]|0;if((n|0)!=(m|0))f[g>>2]=n+(~((n+-8-m|0)>>>3)<<3);Zpb(m)}zCa(D,h,(b[c+11>>0]|0)<0?f[c>>2]|0:c,(b[a+11>>0]|0)<0?f[a>>2]|0:a,(b[d+11>>0]|0)<0?f[d>>2]|0:d);if((b[D+11>>0]|0)<0)Zpb(f[D>>2]|0);ac(781,0,50);D=0;u=E;return D|0}function k3(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=a+4|0;l=f[a>>2]|0;m=(f[j>>2]|0)-l|0;n=m>>3;e=n+1|0;if(e>>>0>536870911)fob(a);h=a+8|0;o=(f[h>>2]|0)-l|0;g=o>>2;e=o>>3>>>0<268435455?(g>>>0<e>>>0?e:g):536870911;do if(!e){i=0;k=0}else if(e>>>0>536870911)ud();else{k=Wpb(e<<3)|0;i=k;break}while(0);g=i+(n<<3)|0;f[g>>2]=f[c>>2];b[i+(n<<3)+4>>0]=b[d>>0]|0;if((m|0)>0)Irb(k|0,l|0,m|0)|0;f[a>>2]=i;f[j>>2]=g+8;f[h>>2]=i+(e<<3);if(!l)return;Zpb(l);return}function l3(){KCa(f[52691]|0);return}function m3(){if(!(b[209528]|0))rrb(209528)|0;f[52693]=215189;return}function n3(a,b){a=a|0;b=b|0;a=f[a>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function o3(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=f[a>>2];Ceb(115525,c)|0;u=b;return}function p3(){return}function q3(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;d=(_2()|0)+232|0;d=f[d>>2]|0;e=f[a>>2]|0;f[a>>2]=0;f[c>>2]=e;nFa(d,c);a=f[c>>2]|0;f[c>>2]=0;if(!a){u=b;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=b;return}function r3(a){a=a|0;var b=0;b=(_2()|0)+220|0;return jja(kxa(f[b>>2]|0)|0,a)|0}function s3(){var a=0;a=(_2()|0)+228|0;$Na(f[a>>2]|0,0);return}function t3(){var a=0;a=(_2()|0)+228|0;_Na(f[a>>2]|0);return}function u3(){return 67}function v3(){return eab()|0}function w3(){var a=0;a=(_2()|0)+220|0;return vva(f[a>>2]|0)|0}function x3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;s=w+20|0;q=w+8|0;o=w+4|0;p=w;f[s>>2]=0;v=s+4|0;f[v>>2]=0;f[s+8>>2]=0;f[q>>2]=0;t=q+4|0;f[t>>2]=0;f[q+8>>2]=0;d=b+4|0;c=f[d>>2]|0;n=q+8|0;do if(c|0)if(c>>>0>1073741823)ud();else{m=Wpb(c<<2)|0;f[q>>2]=m;f[t>>2]=m;f[n>>2]=m+(c<<2);break}while(0);m=(_2()|0)+220|0;m=zva(f[m>>2]|0)|0;c=f[b>>2]|0;l=f[d>>2]|0;j=c+(l<<2)|0;if(!l){b=f[a>>2]|0;c=f[b>>2]|0;r=35}else{k=m+4|0;l=s+8|0;i=c;do{h=f[i>>2]|0;f[o>>2]=h;e=f[k>>2]|0;a:do if(!e)r=27;else{d=e+-1|0;b=(d&e|0)==0;if(b)g=d&h;else if(h>>>0<e>>>0)g=h;else g=(h>>>0)%(e>>>0)|0;c=f[(f[m>>2]|0)+(g<<2)>>2]|0;if(!c)r=27;else{c=f[c>>2]|0;if(!c)r=27;else{b:do if(b)while(1){e=f[c+4>>2]|0;b=(h|0)==(e|0);if(!(b|(e&d|0)==(g|0))){r=27;break a}if(b)if((f[c+8>>2]|0)==(h|0))break b;c=f[c>>2]|0;if(!c){r=27;break a}}else while(1){b=f[c+4>>2]|0;if((h|0)==(b|0)){if((f[c+8>>2]|0)==(h|0))break b}else{if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0;if((b|0)!=(g|0)){r=27;break a}}c=f[c>>2]|0;if(!c){r=27;break a}}while(0);c=f[(f[c+12>>2]|0)+8>>2]|0;f[p>>2]=c;b=f[t>>2]|0;if(b>>>0<(f[n>>2]|0)>>>0){f[b>>2]=c;f[t>>2]=b+4}else y3(q,p)}}}while(0);do if((r|0)==27){r=0;c=f[v>>2]|0;if((c|0)==(f[l>>2]|0)){BD(s,o);break}else{f[c>>2]=h;f[v>>2]=c+4;break}}while(0);i=i+4|0}while((i|0)!=(j|0));b=f[a>>2]|0;c=f[b>>2]|0;if((f[s>>2]|0)==(f[v>>2]|0))r=35;else nh[f[c+12>>2]&1023](b,s)}if((r|0)==35)nh[f[c+8>>2]&1023](b,q);c=f[q>>2]|0;if(c|0){b=f[t>>2]|0;if((b|0)!=(c|0))f[t>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}c=f[s>>2]|0;if(!c){u=w;return}b=f[v>>2]|0;if((b|0)!=(c|0))f[v>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);u=w;return}function y3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function z3(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=+g;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+32|0;s=x+16|0;w=x;t=x+12|0;i=f[d+4>>2]|0;r=(i>>>0)/12|0;if((i>>>0)%12|0|0){w=f[a>>2]|0;nh[f[(f[w>>2]|0)+12>>2]&1023](w,s);u=x;return}f[w>>2]=0;v=w+4|0;f[v>>2]=0;f[w+8>>2]=0;n=w+8|0;do if(i>>>0>11)if(i>>>0>460175075)ud();else{j=Wpb(r*112|0)|0;q=j;k=j+(r*112|0)|0;f[w>>2]=q;f[v>>2]=q;f[n>>2]=k;q=8;break}else if(i|0){j=0;k=0;q=8}while(0);a:do if((q|0)==8){d=f[d>>2]|0;m=d+(i<<3)|0;i=d;d=k;while(1){if(j>>>0<d>>>0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;d=j+16|0;l=d+96|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(l|0));j=(f[v>>2]|0)+112|0;f[v>>2]=j}else{A3(w);j=f[v>>2]|0}d=j+-96|0;k=i;l=d+96|0;do{f[d>>2]=f[k>>2];d=d+4|0;k=k+4|0}while((d|0)<(l|0));i=i+96|0;if((i|0)==(m|0))break a;d=f[n>>2]|0}}while(0);d=f[c>>2]|0;m=f[c+4>>2]|0;n=d+m|0;c=s+11|0;o=s+8|0;p=s+4|0;b:do if(!m)i=0;else{i=0;j=d;while(1){m=j;while(1){if(!(b[m>>0]|0))break;d=m+1|0;if((d|0)==(n|0))break b;else m=d}f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;l=m-j|0;if(l>>>0>4294967279){q=20;break}if(l>>>0<11){b[c>>0]=l;d=s}else{k=l+16&-16;d=Wpb(k)|0;f[s>>2]=d;f[o>>2]=k|-2147483648;f[p>>2]=l}if((j|0)!=(m|0)){k=d;while(1){b[k>>0]=b[j>>0]|0;j=j+1|0;if((j|0)==(m|0))break;else k=k+1|0}d=d+l|0}b[d>>0]=0;l=f[w>>2]|0;d=l;if((((f[v>>2]|0)-l|0)/112|0)>>>0<=i>>>0)break;k=d+(i*112|0)|0;j=k+11|0;if((b[j>>0]|0)<0){b[f[k>>2]>>0]=0;f[d+(i*112|0)+4>>2]=0;d=k}else{b[k>>0]=0;b[j>>0]=0;d=k}jqb(k,0);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];i=i+1|0;j=m+1|0;if((j|0)==(n|0))break b}if((q|0)==20)aqb(s);if((b[c>>0]|0)<0)Zpb(f[s>>2]|0)}while(0);if((i|0)==(r|0)){s=_2()|0;i=f[s+232>>2]|0;uYa(oxa(f[s+220>>2]|0)|0,i);s=f[a>>2]|0;f[a>>2]=0;f[t>>2]=s;uFa(i,t,e,w,g,h);i=f[t>>2]|0;f[t>>2]=0;if(i|0)fh[f[(f[i>>2]|0)+4>>2]&2047](i)}else{t=f[a>>2]|0;nh[f[(f[t>>2]|0)+12>>2]&1023](t,s)}i=f[w>>2]|0;if(i|0){d=f[v>>2]|0;if((d|0)!=(i|0)){do{d=d+-112|0;f[v>>2]=d;if((b[d+11>>0]|0)<0){Zpb(f[d>>2]|0);d=f[v>>2]|0}}while((d|0)!=(i|0));i=f[w>>2]|0}Zpb(i)}u=x;return}function A3(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;k=f[n>>2]|0;d=f[a>>2]|0;i=(k-d|0)/112|0;e=i+1|0;c=d;g=k;if(e>>>0>38347922)fob(a);o=a+8|0;l=((f[o>>2]|0)-d|0)/112|0;m=l<<1;e=l>>>0<19173961?(m>>>0<e>>>0?e:m):38347922;do if(!e)h=0;else if(e>>>0>38347922)ud();else{h=Wpb(e*112|0)|0;break}while(0);d=h+(i*112|0)|0;j=d;m=h+(e*112|0)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;h=h+(i*112|0)+16|0;i=h+96|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));l=d+112|0;if((g|0)==(c|0)){d=j;e=k}else{e=j;do{h=d+-112|0;i=g;g=g+-112|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;h=d+-96|0;d=i+-96|0;i=h+96|0;do{f[h>>2]=f[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(i|0));d=e+-112|0;e=d}while((g|0)!=(c|0));d=e;e=f[a>>2]|0;c=f[n>>2]|0}f[a>>2]=d;f[n>>2]=l;f[o>>2]=m;d=e;if((c|0)!=(d|0))do{c=c+-112|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0)}while((c|0)!=(d|0));if(!e)return;Zpb(e);return}function B3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0;m=u;u=u+96|0;q=m+24|0;o=m+16|0;j=m+8|0;h=m;k=_2()|0;g=f[k+220>>2]|0;i=f[k+228>>2]|0;l=Ng[f[(f[k>>2]|0)+20>>2]&511](k)|0;a=f[a>>2]|0;z=+p[a+24>>3];w=+p[a+48>>3];s=+p[a+72>>3];B=+p[a+8>>3];y=+p[a+32>>3];v=+p[a+56>>3];r=+p[a+80>>3];A=+p[a+16>>3];x=+p[a+40>>3];t=+p[a+64>>3];d=+p[a+88>>3];n[q>>2]=+p[a>>3];n[q+4>>2]=B;n[q+8>>2]=A;n[q+12>>2]=0.0;n[q+16>>2]=z;n[q+20>>2]=y;n[q+24>>2]=x;n[q+28>>2]=0.0;n[q+32>>2]=w;n[q+36>>2]=v;n[q+40>>2]=t;n[q+44>>2]=0.0;n[q+48>>2]=s;n[q+52>>2]=r;n[q+56>>2]=d;n[q+60>>2]=1.0;C3(o,q);iwa(j,g,o);Cva(g,b,l,c,j,e?0:2)|0;if(e){Bva(h,g,l);a=f[h>>2]|0;g=f[h+4>>2]|0;if(g|0)Ppb(g);g=f[a+56>>2]|0;if(g|0)do{q=f[g+12>>2]|0;lpa(q,1,0,1)|0;lpa(q,2,0,1)|0;lpa(q,4,0,1)|0;g=f[g>>2]|0}while((g|0)!=0)}D3(k+152|0,b,l,c);YNa(i);g=f[j+4>>2]|0;if(!g){u=m;return l|0}Ppb(g);u=m;return l|0}function C3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;d=e+16|0;c=e;roa(d,b);b=(_2()|0)+220|0;Iva(c,f[b>>2]|0,d);b=f[c+8>>2]|0;if(!b){f[a>>2]=0;f[a+4>>2]=-1}else{g=b+112|0;b=(_2()|0)+232|0;zGa(f[b>>2]|0,1,g);b=f[g+4>>2]|0;f[a>>2]=f[g>>2];f[a+4>>2]=b}b=f[c+12>>2]|0;if(b|0)Ppb(b);b=f[c+4>>2]|0;if(b|0)Ppb(b);b=f[d+4>>2]|0;if(!b){u=e;return}Ppb(b);u=e;return}function D3(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;k=q;l=q+28|0;m=q+24|0;g=f[a>>2]|0;p=a+4|0;n=f[p>>2]|0;if((g|0)==(n|0)){u=q;return}j=k+16|0;do{i=g+16|0;h=f[i>>2]|0;if(h|0){f[k>>2]=c;f[l>>2]=d;f[m>>2]=e;Eh[f[(f[h>>2]|0)+24>>2]&255](h,k,l,m);if(b[g+24>>0]|0){f[j>>2]=0;h=f[i>>2]|0;if((g|0)==(h|0))fh[f[(f[h>>2]|0)+16>>2]&2047](h);else if(h|0)fh[f[(f[h>>2]|0)+20>>2]&2047](h);f[i>>2]=0;h=f[j>>2]|0;do if(!h){f[i>>2]=0;o=15}else if((k|0)==(h|0)){f[i>>2]=g;o=f[j>>2]|0;nh[f[(f[o>>2]|0)+12>>2]&1023](o,g);o=15;break}else{f[i>>2]=h;f[j>>2]=0;h=0;i=0;break}while(0);if((o|0)==15){o=0;i=f[j>>2]|0;h=i}if((k|0)==(h|0))fh[f[(f[i>>2]|0)+16>>2]&2047](i);else if(i|0)fh[f[(f[i>>2]|0)+20>>2]&2047](i)}}g=g+32|0}while((g|0)!=(n|0));g=f[p>>2]|0;if((f[a>>2]|0)==(g|0)){u=q;return}while(1){if(!(f[g+-16>>2]|0)){h=g;i=0;c=0}else{o=30;break}g=g+-32|0;while(1){o=h+-32|0;f[p>>2]=o;if((o|0)==(i|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);h=f[p>>2]|0;if((h|0)==(g|0))break;c=f[h+-16>>2]|0;i=c}if((f[a>>2]|0)==(g|0)){o=30;break}}if((o|0)==30){u=q;return}}function E3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;g=_2()|0;e=f[g+232>>2]|0;uYa(oxa(f[g+220>>2]|0)|0,e);g=f[a>>2]|0;f[a>>2]=0;f[d>>2]=g;yFa(e,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function F3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d;g=(_2()|0)+232|0;g=f[g>>2]|0;h=f[a>>2]|0;f[a>>2]=0;f[e>>2]=h;zFa(g,e,b,c);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function G3(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Wpb(12)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=24632;b[g+8>>0]=e&1;H3(g,0,c,d&1);return}function H3(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+48|0;o=p+24|0;m=p+12|0;j=p+8|0;k=p+4|0;l=p;h=a;g=_2()|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[m>>2]=0;n=m+4|0;f[n>>2]=0;f[m+8>>2]=0;if(I3(d,o,m)|0)i=4;else if(Ng[f[(f[a>>2]|0)+20>>2]&511](a)|0)i=4;else nh[f[(f[a>>2]|0)+12>>2]&1023](a,m);a:do if((i|0)==4){a=f[g+232>>2]|0;switch(c<<24>>24){case 0:{l=Wpb(32)|0;f[l>>2]=24664;f[l+4>>2]=h;f[l+8>>2]=f[d>>2];f[l+12>>2]=f[d+4>>2];k=d+8|0;f[l+16>>2]=f[k>>2];i=d+12|0;f[l+20>>2]=f[i>>2];h=d+16|0;f[l+24>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[k>>2]=0;f[d>>2]=0;f[l+28>>2]=e;f[j>>2]=l;dGa(a,j,o,e);a=f[j>>2]|0;f[j>>2]=0;if(!a){h=0;break a}fh[f[(f[a>>2]|0)+4>>2]&2047](a);h=0;break a}case 1:{l=Wpb(36)|0;f[l>>2]=24696;f[l+4>>2]=h;f[l+8>>2]=f[d>>2];f[l+12>>2]=f[d+4>>2];j=d+8|0;f[l+16>>2]=f[j>>2];i=d+12|0;f[l+20>>2]=f[i>>2];h=d+16|0;f[l+24>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;f[d>>2]=0;f[l+28>>2]=e;b[l+32>>0]=0;f[k>>2]=l;$Fa(a,k,o,e,0);a=f[k>>2]|0;f[k>>2]=0;if(!a){h=0;break a}fh[f[(f[a>>2]|0)+4>>2]&2047](a);h=0;break a}case 2:{k=Wpb(36)|0;f[k>>2]=24696;f[k+4>>2]=h;f[k+8>>2]=f[d>>2];f[k+12>>2]=f[d+4>>2];j=d+8|0;f[k+16>>2]=f[j>>2];i=d+12|0;f[k+20>>2]=f[i>>2];h=d+16|0;f[k+24>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;f[d>>2]=0;f[k+28>>2]=e;b[k+32>>0]=1;f[l>>2]=k;$Fa(a,l,o,e,1);a=f[l>>2]|0;f[l>>2]=0;if(!a){h=0;break a}fh[f[(f[a>>2]|0)+4>>2]&2047](a);h=0;break a}default:break a}}while(0);a=f[m>>2]|0;if(a|0){g=f[n>>2]|0;if((g|0)!=(a|0))f[n>>2]=g+(~((g+-8-a|0)>>>3)<<3);Zpb(a)}c=o+8|0;a=f[c>>2]|0;d=o+12|0;if((a|0)==(f[d>>2]|0)){g=f[o>>2]|0;if(g){_pb(g);a=f[c>>2]|0}}if(a|0){g=f[d>>2]|0;if((g|0)!=(a|0))f[d>>2]=g+(~((g+-8-a|0)>>>3)<<3);Zpb(a)}if(!h){u=p;return}fh[f[(f[h>>2]|0)+4>>2]&2047](h);u=p;return}function I3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;t=w+8|0;p=w;q=(_2()|0)+220|0;q=zva(f[q>>2]|0)|0;f[t>>2]=0;v=t+4|0;f[v>>2]=0;f[t+8>>2]=0;d=f[a+4>>2]|0;s=t+8|0;if(!d){a=0;d=0;j=0;k=0;l=0}else{if(d>>>0>536870911)ud();j=Wpb(d<<3)|0;f[t>>2]=j;f[v>>2]=j;f[s>>2]=j+(d<<3);j=f[a>>2]|0;k=j+(d<<3)|0;l=q+4|0;m=c+4|0;n=c+8|0;o=p+4|0;do{h=f[j>>2]|0;g=f[l>>2]|0;a:do if(!g)r=34;else{e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;a=f[(f[q>>2]|0)+(i<<2)>>2]|0;if(!a)r=34;else{a=f[a>>2]|0;if(!a)r=34;else{b:do if(d)while(1){g=f[a+4>>2]|0;d=(h|0)==(g|0);if(!(d|(g&e|0)==(i|0))){r=34;break a}if(d)if((f[a+8>>2]|0)==(h|0))break b;a=f[a>>2]|0;if(!a){r=34;break a}}else while(1){d=f[a+4>>2]|0;if((h|0)==(d|0)){if((f[a+8>>2]|0)==(h|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0)){r=34;break a}}a=f[a>>2]|0;if(!a){r=34;break a}}while(0);i=f[j+4>>2]|0;f[p>>2]=f[(f[a+12>>2]|0)+8>>2];f[o>>2]=i;a=f[v>>2]|0;if(a>>>0<(f[s>>2]|0)>>>0){g=p;h=f[g+4>>2]|0;i=a;f[i>>2]=f[g>>2];f[i+4>>2]=h;f[v>>2]=(f[v>>2]|0)+8}else W3(t,p)}}}while(0);do if((r|0)==34){r=0;a=f[m>>2]|0;if((a|0)==(f[n>>2]|0)){xB(c,j);break}else{g=j;h=f[g+4>>2]|0;i=a;f[i>>2]=f[g>>2];f[i+4>>2]=h;f[m>>2]=(f[m>>2]|0)+8;break}}while(0);j=j+8|0}while((j|0)!=(k|0));j=f[t>>2]|0;k=f[v>>2]|0;a=j;d=k;l=f[s>>2]|0}i=a;f[s>>2]=0;f[v>>2]=0;f[t>>2]=0;f[b>>2]=(a|0)==(d|0)?0:i;f[b+4>>2]=d-i>>3;i=b+8|0;a=f[i>>2]|0;h=b+12|0;if(!a){a=b+16|0;e=0;g=0}else{d=f[h>>2]|0;if((d|0)!=(a|0))f[h>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a);a=b+16|0;f[a>>2]=0;f[h>>2]=0;f[i>>2]=0;g=f[t>>2]|0;e=g}f[i>>2]=j;f[h>>2]=k;f[a>>2]=l;a=(f[c>>2]|0)==(f[c+4>>2]|0);if(!e){u=w;return a|0}d=f[v>>2]|0;if((d|0)!=(e|0))f[v>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(g);u=w;return a|0}function J3(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=24696;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function K3(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=24696;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function L3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+64|0;z=B+48|0;x=B+36|0;w=B+16|0;r=B+8|0;s=B;t=h[a+32>>0]|0;k=(_2()|0)+220|0;k=f[k>>2]|0;l=zva(k)|0;f[z>>2]=0;A=z+4|0;f[A>>2]=0;f[z+8>>2]=0;f[x>>2]=0;y=x+4|0;f[y>>2]=0;f[x+8>>2]=0;b=f[a+8>>2]|0;v=f[a+12>>2]|0;m=b+(v<<3)|0;if(!v){e=x+8|0;b=0;c=0;g=0;i=0;d=0}else{n=l+4|0;o=w+4|0;p=r+4|0;q=s+4|0;v=x+8|0;do{j=f[b>>2]|0;g=f[n>>2]|0;a:do if(!g)c=0;else{e=g+-1|0;d=(e&g|0)==0;if(d)i=e&j;else if(j>>>0<g>>>0)i=j;else i=(j>>>0)%(g>>>0)|0;c=f[(f[l>>2]|0)+(i<<2)>>2]|0;if(!c)c=0;else{c=f[c>>2]|0;if(!c)c=0;else{if(d)while(1){g=f[c+4>>2]|0;d=(j|0)==(g|0);if(!(d|(g&e|0)==(i|0))){c=0;break a}if(d)if((f[c+8>>2]|0)==(j|0))break a;c=f[c>>2]|0;if(!c){c=0;break a}}while(1){d=f[c+4>>2]|0;if((j|0)==(d|0)){if((f[c+8>>2]|0)==(j|0))break a}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0)){c=0;break a}}c=f[c>>2]|0;if(!c){c=0;break}}}}}while(0);i=f[b+4>>2]|0;f[w>>2]=f[(f[c+12>>2]|0)+8>>2];f[o>>2]=i;owa(r,k,w);c=f[r>>2]|0;if(c|0)fla(c,k,t,z);c=f[z>>2]|0;e=f[A>>2]|0;if((c|0)!=(e|0))do{d=f[c+4>>2]|0;f[s>>2]=j;f[q>>2]=d;d=f[y>>2]|0;if(d>>>0<(f[v>>2]|0)>>>0){C=s;g=f[C+4>>2]|0;i=d;f[i>>2]=f[C>>2];f[i+4>>2]=g;f[y>>2]=(f[y>>2]|0)+8}else P3(x,s);c=c+8|0}while((c|0)!=(e|0));c=f[p>>2]|0;if(c|0)Ppb(c);b=b+8|0}while((b|0)!=(m|0));g=f[x>>2]|0;i=f[y>>2]|0;e=v;b=g;c=i;d=f[v>>2]|0}C=f[a+4>>2]|0;a=f[(f[C>>2]|0)+8>>2]|0;f[w>>2]=(b|0)==(c|0)?0:b;f[w+4>>2]=c-b>>3;j=w+12|0;f[w+8>>2]=g;f[j>>2]=i;f[w+16>>2]=d;f[e>>2]=0;f[y>>2]=0;f[x>>2]=0;nh[a&1023](C,w);d=w+8|0;b=f[d>>2]|0;if((b|0)==(f[j>>2]|0)){c=f[w>>2]|0;if(c){_pb(c);b=f[d>>2]|0}}if(b|0){c=f[j>>2]|0;if((c|0)!=(b|0))f[j>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[x>>2]|0;if(b|0){c=f[y>>2]|0;if((c|0)!=(b|0))f[y>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[z>>2]|0;if(!b){u=B;return}c=f[A>>2]|0;if((c|0)!=(b|0))f[A>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=B;return}function M3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;n=z+16|0;t=z+8|0;v=z;w=(f[a+28>>2]&1|0)!=0;k=h[a+32>>0]|0;l=(_2()|0)+220|0;l=f[l>>2]|0;m=zva(l)|0;f[n>>2]=0;y=n+4|0;f[y>>2]=0;f[n+8>>2]=0;b=f[a+8>>2]|0;s=f[a+12>>2]|0;o=b+(s<<3)|0;if(s|0){p=m+4|0;q=n+8|0;r=t+4|0;s=v+4|0;do{i=f[b>>2]|0;g=f[p>>2]|0;a:do if(!g)x=26;else{e=g+-1|0;d=(e&g|0)==0;if(d)j=e&i;else if(i>>>0<g>>>0)j=i;else j=(i>>>0)%(g>>>0)|0;c=f[(f[m>>2]|0)+(j<<2)>>2]|0;if(!c)x=26;else{c=f[c>>2]|0;if(!c)x=26;else{b:do if(d)while(1){g=f[c+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(j|0))){x=26;break a}if(d)if((f[c+8>>2]|0)==(i|0))break b;c=f[c>>2]|0;if(!c){x=26;break a}}else while(1){d=f[c+4>>2]|0;if((i|0)==(d|0)){if((f[c+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(j|0)){x=26;break a}}c=f[c>>2]|0;if(!c){x=26;break a}}while(0);j=f[b+4>>2]|0;f[t>>2]=f[(f[c+12>>2]|0)+8>>2];f[r>>2]=j;owa(v,l,t);c=f[v>>2]|0;if(!c)x=31;else if(!(ala(c,l,k,w)|0))x=31;do if((x|0)==31){x=0;c=f[y>>2]|0;if((c|0)==(f[q>>2]|0)){xB(n,b);break}else{g=b;i=f[g+4>>2]|0;j=c;f[j>>2]=f[g>>2];f[j+4>>2]=i;f[y>>2]=(f[y>>2]|0)+8;break}}while(0);c=f[s>>2]|0;if(c|0)Ppb(c)}}}while(0);do if((x|0)==26){x=0;c=f[y>>2]|0;if((c|0)==(f[q>>2]|0)){xB(n,b);break}else{g=b;i=f[g+4>>2]|0;j=c;f[j>>2]=f[g>>2];f[j+4>>2]=i;f[y>>2]=(f[y>>2]|0)+8;break}}while(0);b=b+8|0}while((b|0)!=(o|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+12>>2]&1023](b,n);b=f[n>>2]|0;if(!b){u=z;return}c=f[y>>2]|0;if((c|0)!=(b|0))f[y>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=z;return}function N3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function O3(a){a=a|0;a=f[a+4>>2]|0;return Ng[f[(f[a>>2]|0)+20>>2]&511](a)|0}function P3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function Q3(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=24664;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function R3(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=24664;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function S3(a,b){a=a|0;b=b|0;b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,a+8|0);return}function T3(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+32|0;h=m+8|0;j=m;d=f[a+28>>2]|0;k=(_2()|0)+220|0;k=f[k>>2]|0;f[h>>2]=0;l=h+4|0;f[l>>2]=0;f[h+8>>2]=0;c=f[a+8>>2]|0;i=f[a+12>>2]|0;e=c+(i<<3)|0;a:do if(i|0){g=h+8|0;i=j+4|0;if(!(d&1))while(1){mwa(j,k,c);do if(!(f[j>>2]|0)){d=f[l>>2]|0;if((d|0)==(f[g>>2]|0)){xB(h,c);break}else{o=c;n=f[o+4>>2]|0;f[d>>2]=f[o>>2];f[d+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8;break}}while(0);d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(e|0))break a}do{mwa(j,k,c);d=f[j>>2]|0;do if(!d){d=f[l>>2]|0;if((d|0)==(f[g>>2]|0)){xB(h,c);break}else{p=c;n=f[p+4>>2]|0;o=d;f[o>>2]=f[p>>2];f[o+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8;break}}else{d=f[d+4>>2]|0;if(d|0)if(b[(f[d+44>>2]|0)+144>>0]&2)break;d=f[l>>2]|0;if((d|0)==(f[g>>2]|0)){xB(h,c);break}else{n=c;o=f[n+4>>2]|0;p=d;f[p>>2]=f[n>>2];f[p+4>>2]=o;f[l>>2]=(f[l>>2]|0)+8;break}}while(0);d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0}while((c|0)!=(e|0))}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+12>>2]&1023](c,h);c=f[h>>2]|0;if(!c){u=m;return}d=f[l>>2]|0;if((d|0)!=(c|0))f[l>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=m;return}function U3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function V3(a){a=a|0;a=f[a+4>>2]|0;return Ng[f[(f[a>>2]|0)+20>>2]&511](a)|0}function W3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function X3(a){a=a|0;var b=0;f[a>>2]=24728;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Y3(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Z3(a,b){a=a|0;b=b|0;b=u;u=u+16|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,b);u=b;return}function _3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function $3(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function a4(a){a=a|0;return (b[a+8>>0]|0)!=0|0}function b4(a){a=a|0;wf()}function c4(a){a=a|0;return 0}function d4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=Wpb(8)|0;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;f[e>>2]=24760;H3(e,d?2:1,b,c&1);return}function e4(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function f4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d;g=Wpb(8)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=24792;a=(_2()|0)+232|0;a=f[a>>2]|0;f[e>>2]=g;eGa(a,e,b,c);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function g4(a){a=a|0;var b=0;f[a>>2]=24824;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function h4(a){a=a|0;var b=0,c=0;f[a>>2]=24824;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function i4(a,b){a=a|0;b=b|0;b=u;u=u+16|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,b);u=b;return}function j4(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function k4(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function l4(a){a=a|0;return 0}function m4(a){a=a|0;wf()}function n4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d;g=Wpb(8)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=24792;a=(_2()|0)+232|0;a=f[a>>2]|0;f[e>>2]=g;kGa(a,e,b,c);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function o4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;f[e>>2]=24792;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function p4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e;c=c&1;h=(_2()|0)+232|0;h=f[h>>2]|0;i=f[a>>2]|0;f[a>>2]=0;f[g>>2]=i;WFa(h,g,5,d?c|2:c,b);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function q4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e;c=c&1;h=(_2()|0)+232|0;h=f[h>>2]|0;i=f[a>>2]|0;f[a>>2]=0;f[g>>2]=i;WFa(h,g,1,d?c|2:c,b);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function r4(a){a=a|0;var b=0;b=(_2()|0)+228|0;s4(a,ENa(f[b>>2]|0)|0);return}function s4(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;b[a>>0]=b[c>>0]|0;p[a+8>>3]=+p[c+8>>3];p[a+16>>3]=+p[c+16>>3];p[a+24>>3]=+p[c+24>>3];p[a+32>>3]=+p[c+32>>3];p[a+40>>3]=+p[c+40>>3];p[a+48>>3]=+p[c+48>>3];p[a+56>>3]=+p[c+56>>3];p[a+64>>3]=+p[c+64>>3];p[a+72>>3]=+p[c+72>>3];p[a+80>>3]=+p[c+80>>3];p[a+88>>3]=+p[c+88>>3];p[a+96>>3]=+p[c+96>>3];p[a+104>>3]=+p[c+104>>3];p[a+112>>3]=+p[c+112>>3];p[a+120>>3]=+p[c+120>>3];p[a+128>>3]=+p[c+128>>3];p[a+136>>3]=+p[c+136>>3];p[a+144>>3]=+p[c+144>>3];p[a+152>>3]=+p[c+152>>3];p[a+160>>3]=+p[c+160>>3];p[a+168>>3]=+p[c+168>>3];p[a+176>>3]=+p[c+176>>3];p[a+184>>3]=+p[c+184>>3];p[a+192>>3]=+p[c+192>>3];p[a+200>>3]=+p[c+200>>3];d=a+208|0;e=c+208|0;g=d+40|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));p[a+248>>3]=+p[c+248>>3];p[a+256>>3]=+p[c+256>>3];p[a+264>>3]=+p[c+264>>3];p[a+272>>3]=+p[c+272>>3];p[a+280>>3]=+p[c+280>>3];p[a+288>>3]=+p[c+288>>3];p[a+296>>3]=+p[c+296>>3];p[a+304>>3]=+p[c+304>>3];p[a+312>>3]=+p[c+312>>3];p[a+320>>3]=+p[c+320>>3];p[a+328>>3]=+p[c+328>>3];p[a+336>>3]=+p[c+336>>3];p[a+344>>3]=+p[c+344>>3];p[a+352>>3]=+p[c+352>>3];p[a+360>>3]=+p[c+360>>3];p[a+368>>3]=+p[c+368>>3];p[a+376>>3]=+p[c+376>>3];p[a+384>>3]=+p[c+384>>3];p[a+392>>3]=+p[c+392>>3];p[a+400>>3]=+p[c+400>>3];p[a+408>>3]=+p[c+408>>3];p[a+416>>3]=+p[c+416>>3];p[a+424>>3]=+p[c+424>>3];p[a+432>>3]=+p[c+432>>3];p[a+440>>3]=+p[c+440>>3];p[a+448>>3]=+p[c+448>>3];p[a+456>>3]=+p[c+456>>3];p[a+464>>3]=+p[c+464>>3];p[a+472>>3]=+p[c+472>>3];p[a+480>>3]=+p[c+480>>3];p[a+488>>3]=+p[c+488>>3];p[a+496>>3]=+p[c+496>>3];p[a+504>>3]=+p[c+504>>3];p[a+512>>3]=+p[c+512>>3];p[a+520>>3]=+p[c+520>>3];p[a+528>>3]=+p[c+528>>3];p[a+536>>3]=+p[c+536>>3];p[a+544>>3]=+p[c+544>>3];p[a+552>>3]=+p[c+552>>3];p[a+560>>3]=+p[c+560>>3];p[a+568>>3]=+p[c+568>>3];p[a+576>>3]=+p[c+576>>3];p[a+584>>3]=+p[c+584>>3];p[a+592>>3]=+p[c+592>>3];p[a+600>>3]=+p[c+600>>3];p[a+608>>3]=+p[c+608>>3];p[a+616>>3]=+p[c+616>>3];p[a+624>>3]=+p[c+624>>3];f[a+632>>2]=f[c+632>>2];f[a+636>>2]=f[c+636>>2];f[a+640>>2]=f[c+640>>2];f[a+644>>2]=f[c+644>>2];f[a+648>>2]=f[c+648>>2];f[a+652>>2]=f[c+652>>2];f[a+656>>2]=f[c+656>>2];f[a+660>>2]=f[c+660>>2];f[a+664>>2]=f[c+664>>2];g=a+668|0;e=c+668|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];b[g+12>>0]=b[e+12>>0]|0;return}function t4(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;FNa(b,a,0);UNa(b);return}function u4(a){a=a|0;var b=0,c=0;f[a>>2]=1065353216;f[a+4>>2]=1065353216;f[a+8>>2]=1065353216;b=a+12|0;f[b>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;c=(_2()|0)+220|0;Mwa(f[c>>2]|0,a,b)|0;return}function v4(){var a=0,b=0,c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0;m=_2()|0;l=f[m+220>>2]|0;a=(uwa(l)|0)+8|0;a=f[a>>2]|0;a:do if(!a){b=0;a=0}else{b=f[(f[a+12>>2]|0)+56>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a){b=0;a=0;break a}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while(0);if(!a){c=0;d=1}else{c=0;d=1;do{i=c;g=d;while(1){k=b+12|0;c=f[k>>2]|0;d=c+196|0;e=f[d>>2]|0;if(!(e&128)){d=c+200|0;e=i;d=j[d>>1]|0|(h[d+2>>0]|0)<<16}else{f[d>>2]=e&-641|512;c=f[k>>2]|0;d=c+200|0;d=j[d>>1]|0|(h[d+2>>0]|0)<<16;e=1;g=g&(d&7864320|0)!=0}if(!(d&7)){c=e;d=g}else{Spa(c);d=(f[k>>2]|0)+200|0;c=1;d=g&((j[d>>1]|0|(h[d+2>>0]|0)<<16)&7864320|0)!=0}b=f[b>>2]|0;if(!b)break;else{i=c;g=d}}do{a=f[a>>2]|0;if(!a){b=0;a=0;break}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while((a|0)!=0)}a=(vwa(l)|0)+8|0;a=f[a>>2]|0;b:do if(a|0){b=f[(f[a+12>>2]|0)+76>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0}while((b|0)==0);c:while(1){do{l=b+12|0;k=(f[l>>2]|0)+196|0;f[k>>2]=f[k>>2]&-641|512;Spa(f[l>>2]|0);b=f[b>>2]|0}while((b|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0;if(b)continue c}}}while(0);a=f[m+228>>2]|0;if(!c)return;if(d){YNa(a);return}else{WNa(a);return}}function w4(){var a=0,c=0,d=0,e=0,g=0,i=0,k=0,l=0;l=_2()|0;k=f[l+220>>2]|0;a=(uwa(k)|0)+8|0;a=f[a>>2]|0;a:do if(!a){c=0;a=0}else{c=f[(f[a+12>>2]|0)+56>>2]|0;if(!c)do{a=f[a>>2]|0;if(!a){c=0;a=0;break a}c=f[(f[a+12>>2]|0)+56>>2]|0}while((c|0)==0)}while(0);if(!a){i=0;g=1}else{i=0;g=1;do{do{d=c+12|0;e=f[d>>2]|0;if(f[e+196>>2]&2097152){hpa(e,0);e=(f[d>>2]|0)+200|0;i=1;g=g&((j[e>>1]|h[e+2>>0]<<16)&7864320|0)!=0}c=f[c>>2]|0}while((c|0)!=0);do{a=f[a>>2]|0;if(!a){c=0;a=0;break}c=f[(f[a+12>>2]|0)+56>>2]|0}while((c|0)==0)}while((a|0)!=0)}a=(vwa(k)|0)+8|0;a=f[a>>2]|0;b:do if(a|0){c=f[(f[a+12>>2]|0)+76>>2]|0;if(!c)do{a=f[a>>2]|0;if(!a)break b;c=f[(f[a+12>>2]|0)+76>>2]|0}while((c|0)==0);c:while(1){do{hpa(f[c+12>>2]|0,0);c=f[c>>2]|0}while((c|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;c=f[(f[a+12>>2]|0)+76>>2]|0;if(c)continue c}}}while(0);a=f[l+228>>2]|0;if((b[a+226>>0]|0)!=3|i^1)return;if(g){YNa(a);return}else{ANa(a);return}}function x4(){var a=0,b=0,c=0,d=0,e=0,g=0,i=0,k=0,l=0;k=_2()|0;i=f[k+220>>2]|0;a=(uwa(i)|0)+8|0;a=f[a>>2]|0;a:do if(!a){b=0;a=0}else{b=f[(f[a+12>>2]|0)+56>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a){b=0;a=0;break a}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while(0);if(!a){c=0;d=1}else{c=0;d=1;do{do{g=b+12|0;l=iqa(f[g>>2]|0,0)|0;e=f[g>>2]|0;if(l){l=e+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}l=iqa(e,1)|0;e=f[g>>2]|0;if(l){l=e+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}l=iqa(e,2)|0;e=f[g>>2]|0;if(l){l=e+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}if(bqa(e)|0){l=(f[g>>2]|0)+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}b=f[b>>2]|0}while((b|0)!=0);do{a=f[a>>2]|0;if(!a){b=0;a=0;break}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while((a|0)!=0)}a=(vwa(i)|0)+8|0;a=f[a>>2]|0;b:do if(a|0){b=f[(f[a+12>>2]|0)+76>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0}while((b|0)==0);c:while(1){do{l=b+12|0;iqa(f[l>>2]|0,0)|0;iqa(f[l>>2]|0,1)|0;iqa(f[l>>2]|0,2)|0;bqa(f[l>>2]|0)|0;b=f[b>>2]|0}while((b|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0;if(b)continue c}}}while(0);a=f[k+228>>2]|0;if(!c)return;if(d){YNa(a);return}else{XNa(a);return}}function y4(){var a=0,b=0,c=0,d=0,e=0,g=0,i=0,k=0,l=0;k=_2()|0;i=f[k+220>>2]|0;a=(uwa(i)|0)+8|0;a=f[a>>2]|0;a:do if(!a){b=0;a=0}else{b=f[(f[a+12>>2]|0)+56>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a){b=0;a=0;break a}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while(0);if(!a){c=0;d=1}else{c=0;d=1;do{do{g=b+12|0;l=fqa(f[g>>2]|0,0)|0;e=f[g>>2]|0;if(l){l=e+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}l=fqa(e,1)|0;e=f[g>>2]|0;if(l){l=e+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}if(fqa(e,2)|0){l=(f[g>>2]|0)+200|0;c=1;d=d&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}b=f[b>>2]|0}while((b|0)!=0);do{a=f[a>>2]|0;if(!a){b=0;a=0;break}b=f[(f[a+12>>2]|0)+56>>2]|0}while((b|0)==0)}while((a|0)!=0)}a=(vwa(i)|0)+8|0;a=f[a>>2]|0;b:do if(a|0){b=f[(f[a+12>>2]|0)+76>>2]|0;if(!b)do{a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0}while((b|0)==0);c:while(1){do{l=b+12|0;fqa(f[l>>2]|0,0)|0;fqa(f[l>>2]|0,1)|0;fqa(f[l>>2]|0,2)|0;b=f[b>>2]|0}while((b|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+76>>2]|0;if(b)continue c}}}while(0);a=f[k+228>>2]|0;if(!c)return;if(d){YNa(a);return}else{ANa(a);return}}function z4(){var a=0;a=(_2()|0)+220|0;a=Cwa(f[a>>2]|0)|0;return +(+(a>>>0)+4294967296.0*+(I>>>0))}function A4(){var a=0;a=(_2()|0)+220|0;a=Dwa(f[a>>2]|0)|0;return +(+(a>>>0)+4294967296.0*+(I>>>0))}function B4(a){a=a|0;var b=0;b=(_2()|0)+220|0;b=Cwa(f[b>>2]|0)|0;p[a>>3]=+(b>>>0)+4294967296.0*+(I>>>0);b=(_2()|0)+220|0;b=Dwa(f[b>>2]|0)|0;p[a+8>>3]=+(b>>>0)+4294967296.0*+(I>>>0);return}function C4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+144|0;e=k+96|0;g=k;h=k+48|0;i=(_2()|0)+220|0;i=f[i>>2]|0;j=g;d=j+48|0;do{f[j>>2]=f[b>>2];j=j+4|0;b=b+4|0}while((j|0)<(d|0));p[h>>3]=+p[c>>3];p[h+8>>3]=+p[c+8>>3];p[h+16>>3]=+p[c+16>>3];p[h+24>>3]=+p[c+24>>3];p[h+32>>3]=+p[c+32>>3];p[h+40>>3]=+p[c+40>>3];j=e;b=g;d=j+48|0;do{f[j>>2]=f[b>>2];j=j+4|0;b=b+4|0}while((j|0)<(d|0));VWa(a,e,i,h);u=k;return}function D4(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;o=u;u=u+160|0;l=o+80|0;r=o+128|0;q=o+32|0;n=o+16|0;m=o;f[q>>2]=f[b>>2];f[q+4>>2]=f[b+4>>2];f[q+8>>2]=f[b+8>>2];f[q+12>>2]=f[b+12>>2];k=b+20|0;f[r>>2]=f[k>>2];f[r+4>>2]=f[k+4>>2];f[r+8>>2]=f[k+8>>2];f[r+12>>2]=f[k+12>>2];f[r+16>>2]=f[k+16>>2];f[r+20>>2]=f[k+20>>2];f[r+24>>2]=f[k+24>>2];k=_2()|0;j=f[k+220>>2]|0;k=ENa(f[k+228>>2]|0)|0;f[q+16>>2]=i;b=q+20|0;f[b>>2]=f[r>>2];f[b+4>>2]=f[r+4>>2];f[b+8>>2]=f[r+8>>2];f[b+12>>2]=f[r+12>>2];f[b+16>>2]=f[r+16>>2];f[b+20>>2]=f[r+20>>2];f[b+24>>2]=f[r+24>>2];p[n>>3]=+(d>>>0);p[n+8>>3]=+(e>>>0);p[m>>3]=+(g>>>0);p[m+8>>3]=+(h>>>0);b=l;d=q;e=b+48|0;do{f[b>>2]=f[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));WWa(a,l,c,j,k,n,m);u=o;return}function E4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n+12|0;l=n;j=f[c+4>>2]|0;f[l>>2]=0;m=l+4|0;f[m>>2]=0;f[l+8>>2]=0;if(!j){g=0;e=0}else{if(j>>>0>268435455)fob(l);i=Wpb(j<<4)|0;f[l>>2]=i;e=i+(j<<4)|0;f[l+8>>2]=e;f[m>>2]=e;g=i;h=f[c>>2]|0;c=0;do{f[i+(c<<4)>>2]=f[h+(c<<4)>>2];f[i+(c<<4)+4>>2]=f[h+(c<<4)+4>>2];f[i+(c<<4)+8>>2]=f[h+(c<<4)+8>>2];f[i+(c<<4)+12>>2]=f[h+(c<<4)+12>>2];c=c+1|0}while((c|0)!=(j|0))}j=(_2()|0)+232|0;j=f[j>>2]|0;i=f[a>>2]|0;f[a>>2]=0;f[k>>2]=i;pGa(j,k,b,e-g>>4,g,d);e=f[k>>2]|0;f[k>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;if(!e){u=n;return}g=f[m>>2]|0;if((g|0)!=(e|0))f[m>>2]=g+(~((g+-16-e|0)>>>4)<<4);Zpb(e);u=n;return}function F4(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;j=u;u=u+368|0;k=j+352|0;s=j+344|0;r=j+336|0;q=j+328|0;l=j+316|0;p=j+96|0;o=j+16|0;m=j;t=(_2()|0)+220|0;t=f[t>>2]|0;n[s>>2]=+(c>>>0);n[s+4>>2]=+(d>>>0);n[r>>2]=+(e>>>0);n[r+4>>2]=+(g>>>0);n[q>>2]=+(h>>>0);n[q+4>>2]=+(i>>>0);QXa(p,t,s,r,q,l);f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];n[o+12>>2]=-+n[p+12>>2];f[o+16>>2]=f[p+16>>2];f[o+20>>2]=f[p+20>>2];f[o+24>>2]=f[p+24>>2];n[o+28>>2]=-+n[p+28>>2];f[o+32>>2]=f[p+32>>2];f[o+36>>2]=f[p+36>>2];f[o+40>>2]=f[p+40>>2];n[o+44>>2]=-+n[p+44>>2];f[o+48>>2]=f[p+48>>2];f[o+52>>2]=f[p+52>>2];f[o+56>>2]=f[p+56>>2];n[o+60>>2]=-+n[p+60>>2];f[o+64>>2]=f[p+64>>2];f[o+68>>2]=f[p+68>>2];f[o+72>>2]=f[p+72>>2];n[o+76>>2]=-+n[p+76>>2];g=m+4|0;h=Wpb(80)|0;f[g>>2]=h;f[m>>2]=h;i=h+80|0;f[m+8>>2]=i;f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];f[h+16>>2]=f[o+16>>2];f[h+20>>2]=f[o+20>>2];f[h+24>>2]=f[o+24>>2];f[h+28>>2]=f[o+28>>2];f[h+32>>2]=f[o+32>>2];f[h+36>>2]=f[o+36>>2];f[h+40>>2]=f[o+40>>2];f[h+44>>2]=f[o+44>>2];f[h+48>>2]=f[o+48>>2];f[h+52>>2]=f[o+52>>2];f[h+56>>2]=f[o+56>>2];f[h+60>>2]=f[o+60>>2];f[h+64>>2]=f[o+64>>2];f[h+68>>2]=f[o+68>>2];f[h+72>>2]=f[o+72>>2];f[h+76>>2]=f[o+76>>2];f[g>>2]=i;c=(_2()|0)+232|0;c=f[c>>2]|0;e=f[a>>2]|0;f[a>>2]=0;f[k>>2]=e;e=f[m>>2]|0;d=e;pGa(c,k,b,i-e>>4,d,l);c=f[k>>2]|0;f[k>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);if(!e){u=j;return}if((i|0)!=(d|0))f[g>>2]=i+(~((h+64-e|0)>>>4)<<4);Zpb(e);u=j;return}function G4(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+384|0;v=z+368|0;w=z+360|0;x=z+352|0;i=z+344|0;j=z+320|0;k=z+88|0;y=z;l=z+8|0;o=_2()|0;m=f[o+220>>2]|0;o=f[o+232>>2]|0;p=e+c|0;q=g+-1|0;r=e+d|0;t=h+-1|0;n[v>>2]=+(c>>>0);n[v+4>>2]=+(d>>>0);c=c>>>0<e>>>0?0:(n[s>>2]=+((c-e|0)>>>0),f[s>>2]|0);e=d>>>0<e>>>0?0:(n[s>>2]=+((d-e|0)>>>0),f[s>>2]|0);f[w>>2]=c;f[w+4>>2]=e;n[x>>2]=+((q>>>0<p>>>0?q:p)>>>0);n[x+4>>2]=+((t>>>0<r>>>0?t:r)>>>0);n[i>>2]=+(g>>>0);n[i+4>>2]=+(h>>>0);PXa(j,m,v,i);QXa(k,m,w,x,i,z+308|0);c=f[a>>2]|0;f[a>>2]=0;f[y>>2]=c;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];n[l+12>>2]=-+n[k+12>>2];f[l+16>>2]=f[k+16>>2];f[l+20>>2]=f[k+20>>2];f[l+24>>2]=f[k+24>>2];n[l+28>>2]=-+n[k+28>>2];f[l+32>>2]=f[k+32>>2];f[l+36>>2]=f[k+36>>2];f[l+40>>2]=f[k+40>>2];n[l+44>>2]=-+n[k+44>>2];f[l+48>>2]=f[k+48>>2];f[l+52>>2]=f[k+52>>2];f[l+56>>2]=f[k+56>>2];n[l+60>>2]=-+n[k+60>>2];f[l+64>>2]=f[k+64>>2];f[l+68>>2]=f[k+68>>2];f[l+72>>2]=f[k+72>>2];n[l+76>>2]=-+n[k+76>>2];qGa(o,y,b,j,l);c=f[y>>2]|0;f[y>>2]=0;if(!c){u=z;return}fh[f[(f[c>>2]|0)+4>>2]&2047](c);u=z;return}function H4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0;e=u;u=u+32|0;h=e+4|0;g=e;i=(_2()|0)+232|0;i=f[i>>2]|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];n[h+12>>2]=d*d;n[h+16>>2]=d;c=f[a>>2]|0;f[a>>2]=0;f[g>>2]=c;rGa(i,g,b,h);a=f[g>>2]|0;f[g>>2]=0;if(!a){u=e;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function I4(a){a=a|0;var b=0;b=(_2()|0)+232|0;sGa(f[b>>2]|0,a);return}function J4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;d=(_2()|0)+232|0;if(!(ADa(f[d>>2]|0)|0)){e=f[a>>2]|0;nh[f[(f[e>>2]|0)+16>>2]&1023](e,0);u=g;return}d=f[d>>2]|0;h=f[a>>2]|0;f[a>>2]=0;f[e>>2]=h;tGa(d,e,b,c);a=f[e>>2]|0;f[e>>2]=0;if(!a){u=g;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=g;return}function K4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;d=n+16|0;k=n;f[a>>2]=0;l=a+4|0;f[l>>2]=0;f[a+8>>2]=0;e=f[b+4>>2]|0;if((e>>>0)%3|0|0){u=n;return}g=(e>>>0)/3|0;h=f[b>>2]|0;i=g+1|0;f[k>>2]=0;m=k+4|0;f[m>>2]=0;f[k+8>>2]=0;if(e>>>0<48){f[d>>2]=g;if(e>>>0>2)j=5}else{L4(k,i);d=f[k>>2]|0;f[d>>2]=g;j=5}if((j|0)==5){b=0;do{j=b;b=b+1|0;f[d+(b<<2)>>2]=j}while(b>>>0<g>>>0)}if(!(MMa(h,d,i,c,1,a)|0)){d=f[a>>2]|0;b=f[l>>2]|0;if((b|0)!=(d|0))f[l>>2]=b+(~((b+-4-d|0)>>>2)<<2)}d=f[k>>2]|0;if(d|0){b=f[m>>2]|0;if((b|0)!=(d|0))f[m>>2]=b+(~((b+-4-d|0)>>>2)<<2);Zpb(d)}u=n;return}function L4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+8|0;d=f[i>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Krb(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}h=f[a>>2]|0;g=c-h|0;e=g>>2;c=e+b|0;if(c>>>0>1073741823)fob(a);m=d-h|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){j=0;k=0}else if(d>>>0>1073741823)ud();else{k=Wpb(d<<2)|0;j=k;break}while(0);c=j+(e<<2)|0;Krb(c|0,0,b<<2|0)|0;if((g|0)>0)Irb(k|0,h|0,g|0)|0;f[a>>2]=j;f[l>>2]=c+(b<<2);f[i>>2]=j+(d<<2);if(!h)return;Zpb(h);return}function M4(a,b,c,d,e,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;i=a+4|0;b=f[i>>2]|0;h=a+8|0;l=f[h>>2]|0;if((b|0)==(l|0)){N4(a,c);g=f[i>>2]|0;l=f[h>>2]|0}else{f[b>>2]=f[c>>2];g=b+4|0;f[i>>2]=g}b=c+4|0;if((g|0)==(l|0)){N4(a,b);g=f[i>>2]|0;l=f[h>>2]|0}else{f[g>>2]=f[b>>2];g=g+4|0;f[i>>2]=g}b=c+8|0;if((g|0)==(l|0)){N4(a,b);b=f[i>>2]|0;l=f[h>>2]|0}else{f[g>>2]=f[b>>2];b=g+4|0;f[i>>2]=b}if((b|0)==(l|0)){N4(a,d);g=f[i>>2]|0;l=f[h>>2]|0}else{f[b>>2]=f[d>>2];g=b+4|0;f[i>>2]=g}b=d+4|0;if((g|0)==(l|0)){N4(a,b);g=f[i>>2]|0;l=f[h>>2]|0}else{f[g>>2]=f[b>>2];g=g+4|0;f[i>>2]=g}b=d+8|0;if((g|0)==(l|0)){N4(a,b);b=f[i>>2]|0;l=f[h>>2]|0}else{f[g>>2]=f[b>>2];b=g+4|0;f[i>>2]=b}if((b|0)==(l|0)){N4(a,e);g=f[i>>2]|0;l=f[h>>2]|0}else{f[b>>2]=f[e>>2];g=b+4|0;f[i>>2]=g}b=e+4|0;if((g|0)==(l|0)){N4(a,b);g=f[i>>2]|0;l=f[h>>2]|0}else{f[g>>2]=f[b>>2];g=g+4|0;f[i>>2]=g}b=e+8|0;if((g|0)==(l|0)){N4(a,b);return}else{f[g>>2]=f[b>>2];f[i>>2]=g+4;return}}function N4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function O4(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;p[a>>3]=+p[b+112>>3];p[a+8>>3]=+p[b+120>>3];return}function P4(a,b){a=+a;b=+b;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;vOa(c,a,b);XNa(c);return}function Q4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;e=(_2()|0)+232|0;e=f[e>>2]|0;g=Wpb(8)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=24856;f[d>>2]=g;iGa(e,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function R4(a){a=a|0;var b=0;f[a>>2]=24888;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function S4(a){a=a|0;var b=0,c=0;f[a>>2]=24888;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function T4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;j=p+16|0;k=p+8|0;l=p+4|0;m=p;n=(_2()|0)+220|0;n=f[n>>2]|0;f[j>>2]=0;o=j+4|0;f[o>>2]=0;f[j+8>>2]=0;c=f[b+4>>2]|0;i=j+8|0;if(c|0){if(c>>>0>536870911)ud();e=Wpb(c<<3)|0;f[j>>2]=e;f[o>>2]=e;f[i>>2]=e+(c<<3);e=f[b>>2]|0;g=e+(c<<3)|0;h=k+4|0;do{pwa(k,n,e);b=f[k>>2]|0;if(!b){f[l>>2]=0;f[m>>2]=0;b=f[o>>2]|0;if(b>>>0<(f[i>>2]|0)>>>0){f[b>>2]=0;f[b+4>>2]=0;f[o>>2]=b+8}else X4(j,l,m)}else{d=f[b+8>>2]|0;f[l>>2]=d;b=(f[b+12>>2]|0)-d|0;f[m>>2]=b;c=f[o>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[c>>2]=d;f[c+4>>2]=b;f[o>>2]=c+8}else W4(j,l,m)}b=f[h>>2]|0;if(b|0)Ppb(b);e=e+8|0}while((e|0)!=(g|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,j);b=f[j>>2]|0;if(!b){u=p;return}c=f[o>>2]|0;if((c|0)!=(b|0))f[o>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=p;return}function U4(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function V4(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function W4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)ud();else{j=Wpb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;n=f[c>>2]|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=n;if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;Zpb(k);return}function X4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;h=f[a>>2]|0;i=(f[g>>2]|0)-h|0;j=i>>3;b=j+1|0;if(b>>>0>536870911)fob(a);e=a+8|0;m=(f[e>>2]|0)-h|0;d=m>>2;b=m>>3>>>0<268435455?(d>>>0<b>>>0?b:d):536870911;do if(!b){k=0;l=0}else if(b>>>0>536870911)ud();else{l=Wpb(b<<3)|0;k=l;break}while(0);d=k+(j<<3)|0;m=f[c>>2]|0;f[d>>2]=0;f[k+(j<<3)+4>>2]=m;if((i|0)>0)Irb(l|0,h|0,i|0)|0;f[a>>2]=k;f[g>>2]=d+8;f[e>>2]=k+(b<<3);if(!h)return;Zpb(h);return}function Y4(a){a=a|0;wf()}function Z4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;e=(_2()|0)+232|0;e=f[e>>2]|0;g=Wpb(8)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=24920;f[d>>2]=g;iGa(e,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function _4(a){a=a|0;var b=0,c=0;f[a>>2]=24824;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function $4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;e=(_2()|0)+220|0;e=f[e>>2]|0;c=f[b>>2]|0;h=f[b+4>>2]|0;b=c+(h<<3)|0;if(h|0)do{fwa(e,c)|0;c=c+8|0}while((c|0)!=(b|0));h=f[a+4>>2]|0;nh[f[(f[h>>2]|0)+8>>2]&1023](h,d);u=g;return}function a5(a){a=a|0;f[a>>2]=6;f[a+4>>2]=4;return}function b5(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;m=r+12|0;n=r;o=_2()|0;p=f[o+220>>2]|0;q=f[o+232>>2]|0;h=f[c>>2]|0;k=c+4|0;d=f[k>>2]|0;i=h+(d<<4)|0;f[n>>2]=0;l=n+4|0;f[l>>2]=0;f[n+8>>2]=0;j=h;c=d<<4;e=c>>4;if(e|0){if(e>>>0>268435455)fob(n);g=Wpb(c)|0;f[l>>2]=g;f[n>>2]=g;f[n+8>>2]=g+(e<<4);if(d|0){e=i+-16|0;c=h;d=g;while(1){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];c=c+16|0;if((c|0)==(i|0))break;else d=d+16|0}f[l>>2]=g+(((e-j|0)>>>4)+1<<4)}}c=Fwa(p,n)|0;d=f[n>>2]|0;if(d|0){e=f[l>>2]|0;if((e|0)!=(d|0))f[l>>2]=e+(~((e+-16-d|0)>>>4)<<4);Zpb(d)}f[m>>2]=c;if((c|0)==-1){b[n>>0]=(f[k>>2]|0)>>>0<5&1;q=f[a>>2]|0;nh[f[(f[q>>2]|0)+12>>2]&1023](q,n);u=r;return}else{nja(kxa(p)|0);ANa(f[o+228>>2]|0);uYa(oxa(p)|0,q);CFa(q);q=f[a>>2]|0;nh[f[(f[q>>2]|0)+8>>2]&1023](q,m);u=r;return}}function c5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;j=o+4|0;k=o;l=_2()|0;m=f[l+220>>2]|0;h=f[l+232>>2]|0;f[j>>2]=0;n=j+4|0;f[n>>2]=0;f[j+8>>2]=0;c=f[b>>2]|0;i=b+4|0;g=f[i>>2]|0;e=c+(g<<2)|0;if(g|0){g=j+8|0;do{d=f[c>>2]|0;f[k>>2]=d;do if(!(Iwa(m,d)|0)){d=f[n>>2]|0;if((d|0)==(f[g>>2]|0)){BD(j,k);break}else{f[d>>2]=f[k>>2];f[n>>2]=d+4;break}}while(0);c=c+4|0}while((c|0)!=(e|0));if(f[i>>2]|0){uYa(oxa(m)|0,h);CFa(h)}}if((f[j>>2]|0)==(f[n>>2]|0)){c=f[b>>2]|0;i=f[i>>2]|0;d=c+(i<<2)|0;if(i|0)do{Hwa(m,f[c>>2]|0)|0;c=c+4|0}while((c|0)!=(d|0));nja(kxa(m)|0);ANa(f[l+228>>2]|0);m=f[a>>2]|0;nh[f[(f[m>>2]|0)+8>>2]&1023](m,k)}else{m=f[a>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,j)}c=f[j>>2]|0;if(!c){u=o;return}d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);u=o;return}function d5(){var a=0,b=0,c=0;a=_2()|0;b=f[a+220>>2]|0;c=f[a+232>>2]|0;if(!(Ewa(b)|0))return;uYa(oxa(b)|0,c);CFa(c);nja(kxa(b)|0);ANa(f[a+228>>2]|0);return}function e5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;l=q;m=q+4|0;f[l>>2]=c;n=_2()|0;o=f[n+220>>2]|0;p=f[n+232>>2]|0;g=f[b>>2]|0;d=f[b+4>>2]|0;i=g+(d<<4)|0;f[m>>2]=0;k=m+4|0;f[k>>2]=0;f[m+8>>2]=0;j=g;b=d<<4;e=b>>4;if(e|0){if(e>>>0>268435455)fob(m);h=Wpb(b)|0;f[k>>2]=h;f[m>>2]=h;f[m+8>>2]=h+(e<<4);if(d|0){e=i+-16|0;b=g;d=h;while(1){f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=b+16|0;if((b|0)==(i|0))break;else d=d+16|0}f[k>>2]=h+(((e-j|0)>>>4)+1<<4)}}b=Gwa(o,c,m)|0;d=f[m>>2]|0;if(d|0){e=f[k>>2]|0;if((e|0)!=(d|0))f[k>>2]=e+(~((e+-16-d|0)>>>4)<<4);Zpb(d)}if(b){uYa(oxa(o)|0,p);CFa(p);nja(kxa(o)|0);ZNa(f[n+228>>2]|0);p=f[a>>2]|0;nh[f[(f[p>>2]|0)+8>>2]&1023](p,m);u=q;return}else{p=f[a>>2]|0;nh[f[(f[p>>2]|0)+12>>2]&1023](p,l);u=q;return}}function f5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;p=r+12|0;o=r;m=(_2()|0)+220|0;m=f[m>>2]|0;f[p>>2]=0;q=p+4|0;f[q>>2]=0;f[p+8>>2]=0;c=f[b>>2]|0;i=b+4|0;n=f[i>>2]|0;e=c+(n<<2)|0;if(!n)h=9;else{g=p+8|0;do{n=f[c>>2]|0;f[o>>2]=n;do if(!(Iwa(m,n)|0)){d=f[q>>2]|0;if((d|0)==(f[g>>2]|0)){BD(p,o);break}else{f[d>>2]=f[o>>2];f[q>>2]=d+4;break}}while(0);c=c+4|0}while((c|0)!=(e|0));if((f[p>>2]|0)==(f[q>>2]|0))h=9;else{o=f[a>>2]|0;nh[f[(f[o>>2]|0)+12>>2]&1023](o,p)}}if((h|0)==9){f[o>>2]=0;n=o+4|0;f[n>>2]=0;f[o+8>>2]=0;pz(o,f[i>>2]|0);c=f[b>>2]|0;l=f[i>>2]|0;k=c+(l<<2)|0;a:do if(l|0){l=o+8|0;while(1){g=Jwa(m,f[c>>2]|0)|0;d=f[n>>2]|0;if((d|0)==(f[l>>2]|0))g5(o,g);else{f[d>>2]=0;j=d+4|0;f[j>>2]=0;f[d+8>>2]=0;b=g+4|0;e=(f[b>>2]|0)-(f[g>>2]|0)|0;h=e>>4;if(h){if(h>>>0>268435455)break;i=Wpb(e)|0;f[j>>2]=i;f[d>>2]=i;f[d+8>>2]=i+(h<<4);h=f[g>>2]|0;g=f[b>>2]|0;if((h|0)!=(g|0)){d=h;e=i;while(1){f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];d=d+16|0;if((d|0)==(g|0))break;else e=e+16|0}f[j>>2]=i+(((g+-16-h|0)>>>4)+1<<4);d=f[n>>2]|0}}f[n>>2]=d+12}c=c+4|0;if((c|0)==(k|0))break a}fob(d)}while(0);c=f[a>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,o);c=f[o>>2]|0;if(c|0){d=f[n>>2]|0;if((d|0)!=(c|0)){do{e=d+-12|0;f[n>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-16-g|0)>>>4)<<4);Zpb(g);d=f[n>>2]|0}}while((d|0)!=(c|0));c=f[o>>2]|0}Zpb(c)}}c=f[p>>2]|0;if(!c){u=r;return}d=f[q>>2]|0;if((d|0)!=(c|0))f[q>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);u=r;return}function g5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=a+4|0;e=f[s>>2]|0;h=f[a>>2]|0;o=(e-h|0)/12|0;c=o+1|0;p=h;if(c>>>0>357913941)fob(a);r=a+8|0;q=((f[r>>2]|0)-h|0)/12|0;g=q<<1;g=q>>>0<178956970?(g>>>0<c>>>0?c:g):357913941;do if(!g)m=0;else if(g>>>0>357913941)ud();else{m=Wpb(g*12|0)|0;break}while(0);d=m+(o*12|0)|0;c=d;q=m+(g*12|0)|0;f[d>>2]=0;n=m+(o*12|0)+4|0;f[n>>2]=0;f[m+(o*12|0)+8>>2]=0;l=f[b+4>>2]|0;k=f[b>>2]|0;b=l-k|0;i=b>>4;g=k;if(i|0){if(i>>>0>268435455)fob(d);j=Wpb(b)|0;f[n>>2]=j;f[d>>2]=j;f[m+(o*12|0)+8>>2]=j+(i<<4);if((g|0)!=(l|0)){b=j;while(1){f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];g=g+16|0;if((g|0)==(l|0))break;else b=b+16|0}f[n>>2]=j+(((l+-16-k|0)>>>4)+1<<4)}}g=d+12|0;if((e|0)!=(p|0)){do{o=d+-12|0;n=e;e=e+-12|0;f[o>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[o>>2]=f[e>>2];o=n+-8|0;f[m>>2]=f[o>>2];n=n+-4|0;f[d+-4>>2]=f[n>>2];f[n>>2]=0;f[o>>2]=0;f[e>>2]=0;d=c+-12|0;c=d}while((e|0)!=(p|0));h=f[a>>2]|0}f[a>>2]=c;c=f[s>>2]|0;f[s>>2]=g;f[r>>2]=q;b=h;if((c|0)!=(b|0)){e=c;do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~((d+-16-g|0)>>>4)<<4);Zpb(g)}}while((e|0)!=(b|0))}if(!h)return;Zpb(h);return}function h5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+32|0;i=h+20|0;g=h;l=Wpb(16)|0;k=l+16|0;j=b;e=f[j+4>>2]|0;m=l;f[m>>2]=f[j>>2];f[m+4>>2]=e;m=c;e=f[m+4>>2]|0;j=l+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=e;j=Wpb(28)|0;e=f[a>>2]|0;f[a>>2]=0;f[j+4>>2]=e;f[j>>2]=24952;n[j+8>>2]=d;e=f[b+4>>2]|0;a=j+12|0;f[a>>2]=f[b>>2];f[a+4>>2]=e;a=f[c+4>>2]|0;e=j+20|0;f[e>>2]=f[c>>2];f[e+4>>2]=a;f[g>>2]=l;f[g+4>>2]=2;e=g+12|0;f[g+8>>2]=l;f[e>>2]=k;f[g+16>>2]=k;a=(_2()|0)+232|0;a=f[a>>2]|0;f[i>>2]=j;fGa(a,i,g);a=f[i>>2]|0;f[i>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);c=g+8|0;a=f[c>>2]|0;if((a|0)==(f[e>>2]|0)){b=f[g>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(!a){u=h;return}b=f[e>>2]|0;if((b|0)!=(a|0))f[e>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function i5(a){a=a|0;var b=0,c=0;f[a>>2]=24824;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function j5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+32|0;d=e+8|0;b=e;c=_2()|0;h=f[c+220>>2]|0;g=kxa(h)|0;kwa(d,h,a+12|0);kwa(b,h,a+20|0);if(Dha(g,d,b,+n[a+8>>2])|0)ANa(f[c+228>>2]|0);h=f[a+4>>2]|0;nh[f[(f[h>>2]|0)+8>>2]&1023](h,e+16|0);b=f[b+4>>2]|0;if(b|0)Ppb(b);b=f[d+4>>2]|0;if(!b){u=e;return}Ppb(b);u=e;return}function k5(a){a=a|0;return 1}function l5(){var a=0;a=_2()|0;if(!(wha(kxa(f[a+220>>2]|0)|0)|0))return;ANa(f[a+228>>2]|0);return}function m5(){var a=0;a=(_2()|0)+220|0;kja(kxa(f[a>>2]|0)|0);return}function n5(){var a=0;a=(_2()|0)+220|0;lja(kxa(f[a>>2]|0)|0);return}function o5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;s=z;t=z+8|0;x=_2()|0;v=f[x+220>>2]|0;y=f[x+232>>2]|0;d=f[b>>2]|0;w=b+4|0;r=f[w>>2]|0;p=d+(r<<3)|0;a:do if(!r){h=0;e=d;c=0}else{q=s+4|0;r=t+4|0;h=0;c=-1;g=0;e=0;o=d;while(1){xwa(s,v,o);n=f[s>>2]|0;d=f[q>>2]|0;if(d|0)Ppb(d);b:do if(!(f[n+196>>2]&16777216)){jpa(n);i=f[n+116>>2]|0;if((c|0)!=(i|0)){Bva(t,v,i);d=f[t>>2]|0;c=f[r>>2]|0;if(c|0)Ppb(c);if(!d){g=0;d=0;c=-1;break}e=_wa(v,f[d+8>>2]|0)|0;g=d;c=i}if(!e)d=0;else{l=f[n+120>>2]|0;k=f[e+24>>2]|0;if(!k)d=e;else{j=k+-1|0;i=(j&k|0)==0;if(i)m=j&l;else if(l>>>0<k>>>0)m=l;else m=(l>>>0)%(k>>>0)|0;d=f[(f[e+20>>2]|0)+(m<<2)>>2]|0;if(!d)d=e;else{d=f[d>>2]|0;if(!d)d=e;else{c:do if(i)while(1){k=f[d+4>>2]|0;i=(l|0)==(k|0);if(!(i|(k&j|0)==(m|0))){d=e;break b}if(i)if((f[d+8>>2]|0)==(l|0))break c;d=f[d>>2]|0;if(!d){d=e;break b}}else while(1){i=f[d+4>>2]|0;if((l|0)==(i|0)){if((f[d+8>>2]|0)==(l|0))break c}else{if(i>>>0>=k>>>0)i=(i>>>0)%(k>>>0)|0;if((i|0)!=(m|0)){d=e;break b}}d=f[d>>2]|0;if(!d){d=e;break b}}while(0);Gva(v,f[d+16>>2]|0,n,g);d=e;h=1}}}}}else{d=o;f[d>>2]=0;f[d+4>>2]=-1;d=e}while(0);o=o+8|0;if((o|0)==(p|0))break;else e=d}g=f[b>>2]|0;c=f[w>>2]|0;i=g+(c<<3)|0;d:do if(!c){d=g;c=0}else{d=g;while(1){if((f[d>>2]|0)==0?(f[d+4>>2]|0)==-1:0)break d;d=d+8|0;if((d|0)==(i|0)){e=i;d=g;break a}}}while(0);if((d|0)==(i|0)){e=i;d=g}else{c=d;e=d;e:while(1){do{d=c;c=c+8|0;if((c|0)==(i|0))break e}while((f[c>>2]|0)==0?(f[d+12>>2]|0)==-1:0);s=c;t=f[s+4>>2]|0;v=e;f[v>>2]=f[s>>2];f[v+4>>2]=t;e=e+8|0}d=f[b>>2]|0;c=f[w>>2]|0}}while(0);f[w>>2]=c-(d+(c<<3)-e>>3);dFa(y,a,b,1);if(!h){u=z;return}ANa(f[x+228>>2]|0);u=z;return}function p5(a){a=a|0;var b=0;b=(_2()|0)+232|0;eFa(f[b>>2]|0,a);return}function q5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=_2()|0;d=f[c+220>>2]|0;e=f[c+232>>2]|0;xGa(e,a,b);if(!(rxa(d,a,b)|0))return;uYa(oxa(d)|0,e);ANa(f[c+228>>2]|0);return}function r5(a){a=a|0;var b=0;b=(_2()|0)+232|0;kFa(f[b>>2]|0,a);return}function s5(a){a=+a;var b=0;b=(_2()|0)+232|0;lFa(f[b>>2]|0,a);return}function t5(a){a=a|0;var c=0,d=0,e=0,g=0;c=_2()|0;d=f[c+228>>2]|0;e=d+224|0;if(!((b[e>>0]&1)!=0^a))return;g=f[c+232>>2]|0;c=f[c+220>>2]|0;aOa(d,a);Aja(kxa(c)|0);e=b[e>>0]|0;fFa(g,a,(e&2)!=0,(e&4)!=0);ANa(d);return}function u5(a){a=a|0;var c=0,d=0;c=_2()|0;d=b[(f[c+228>>2]|0)+224>>0]|0;if(!((d&2)!=0^a))return;fFa(f[c+232>>2]|0,(d&1)!=0,a,(d&4)!=0);c=(_2()|0)+228|0;c=f[c>>2]|0;if(!((b[c+224>>0]&2)!=0^a))return;bOa(c,a);ANa(c);return}function v5(a){a=a|0;var c=0,d=0;c=_2()|0;d=b[(f[c+228>>2]|0)+224>>0]|0;if(!((d&4)!=0^a))return;fFa(f[c+232>>2]|0,(d&1)!=0,(d&2)!=0,a);c=(_2()|0)+228|0;c=f[c>>2]|0;if(!((b[c+224>>0]&4)!=0^a))return;cOa(c,a);ANa(c);return}function w5(){var a=0;a=(_2()|0)+228|0;return (b[(f[a>>2]|0)+224>>0]&1)!=0|0}function x5(){var a=0;a=(_2()|0)+228|0;return (b[(f[a>>2]|0)+224>>0]&2)!=0|0}function y5(){var a=0;a=(_2()|0)+228|0;return (b[(f[a>>2]|0)+224>>0]&4)!=0|0}function z5(){var a=0;a=(_2()|0)+228|0;a=(f[a>>2]|0)+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&1|0)!=0|0}function A5(a){a=a|0;var b=0,c=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=b+230|0;if(!(((j[c>>1]|j[c+2>>1]<<16)&1|0)!=0^a))return;dOa(b,a);ANa(b);return}function B5(){var a=0;a=(_2()|0)+228|0;a=(f[a>>2]|0)+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&2|0)!=0|0}function C5(a){a=a|0;var b=0,c=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=b+230|0;if(!(((j[c>>1]|j[c+2>>1]<<16)&2|0)!=0^a))return;fOa(b,a);ANa(b);return}function D5(){var a=0;a=(_2()|0)+228|0;return gOa(f[a>>2]|0)|0}function E5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;hOa(b,a);ANa(b);return}function F5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;nh[f[(f[b>>2]|0)+40>>2]&1023](b,a);return}function G5(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;gh[f[(f[b>>2]|0)+52>>2]&63](b,a);return}function H5(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;gh[f[(f[b>>2]|0)+44>>2]&63](b,a);return}function I5(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;gh[f[(f[b>>2]|0)+48>>2]&63](b,a);return}function J5(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;gh[f[(f[b>>2]|0)+56>>2]&63](b,a);return}function K5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;nh[f[(f[b>>2]|0)+16>>2]&1023](b,a);return}function L5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[(f[b>>2]|0)+72>>2]|0;nh[f[(f[b>>2]|0)+20>>2]&1023](b,a);return}function M5(){var a=0.0,b=0.0,c=0;c=(_2()|0)+228|0;c=f[(f[c>>2]|0)+72>>2]|0;a=+Kg[f[(f[c>>2]|0)+28>>2]&63](c);b=+Kg[f[(f[c>>2]|0)+32>>2]&63](c);return +(b<a?b:a)}function N5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;e=(_2()|0)+232|0;e=f[e>>2]|0;g=Wpb(8)|0;f[g>>2]=24984;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[d>>2]=g;qFa(e,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function O5(a){a=a|0;var b=0;f[a>>2]=24984;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function P5(a){a=a|0;var b=0,c=0;f[a>>2]=24984;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Q5(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;k=o+8|0;j=o;l=c+11|0;e=b[l>>0]|0;h=e<<24>>24<0;m=c+4|0;g=h?f[c>>2]|0:c;h=h?f[m>>2]|0:e&255;i=g+h|0;f[k>>2]=0;n=k+4|0;f[n>>2]=0;f[k+8>>2]=0;if(h){if((h|0)<0)fob(k);p=Wpb(h)|0;f[n>>2]=p;f[k>>2]=p;f[k+8>>2]=p+h;e=g;g=p;do{b[g>>0]=b[e>>0]|0;e=e+1|0;g=(f[n>>2]|0)+1|0;f[n>>2]=g}while((e|0)!=(i|0));e=b[l>>0]|0};f[j>>2]=0;d[j+4>>1]=0;b[j+6>>0]=0;if(e<<24>>24<0){b[f[c>>2]>>0]=0;f[m>>2]=0}else{b[c>>0]=0;b[l>>0]=0}jqb(c,0);f[c>>2]=0;e=c+4|0;f[e>>2]=f[j>>2];d[e+4>>1]=d[j+4>>1]|0;b[e+6>>0]=b[j+6>>0]|0;b[c+11>>0]=0;e=f[a+4>>2]|0;nh[f[(f[e>>2]|0)+8>>2]&1023](e,k);e=f[k>>2]|0;if(!e){u=o;return}if((f[n>>2]|0)!=(e|0))f[n>>2]=e;Zpb(e);u=o;return}function R5(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;k=o+8|0;j=o;l=c+11|0;e=b[l>>0]|0;h=e<<24>>24<0;m=c+4|0;g=h?f[c>>2]|0:c;h=h?f[m>>2]|0:e&255;i=g+h|0;f[k>>2]=0;n=k+4|0;f[n>>2]=0;f[k+8>>2]=0;if(h){if((h|0)<0)fob(k);p=Wpb(h)|0;f[n>>2]=p;f[k>>2]=p;f[k+8>>2]=p+h;e=g;g=p;do{b[g>>0]=b[e>>0]|0;e=e+1|0;g=(f[n>>2]|0)+1|0;f[n>>2]=g}while((e|0)!=(i|0));e=b[l>>0]|0};f[j>>2]=0;d[j+4>>1]=0;b[j+6>>0]=0;if(e<<24>>24<0){b[f[c>>2]>>0]=0;f[m>>2]=0}else{b[c>>0]=0;b[l>>0]=0}jqb(c,0);f[c>>2]=0;e=c+4|0;f[e>>2]=f[j>>2];d[e+4>>1]=d[j+4>>1]|0;b[e+6>>0]=b[j+6>>0]|0;b[c+11>>0]=0;e=f[a+4>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,k);e=f[k>>2]|0;if(!e){u=o;return}if((f[n>>2]|0)!=(e|0))f[n>>2]=e;Zpb(e);u=o;return}function S5(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function T5(a){a=a|0;return 0}function U5(a){a=a|0;var c=0,d=0;c=(_2()|0)+228|0;c=f[c>>2]|0;d=b[c+226>>0]|0;if(d<<24>>24==a<<24>>24)return;IOa(c,a);if(!(a<<24>>24==1&d<<24>>24==0))if(!(d<<24>>24==1&a<<24>>24==0)){ANa(c);return}YNa(c);return}function V5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;POa(b,a);WNa(b);return}function W5(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;QOa(b,a);YNa(b);return}function X5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;ROa(b,a);YNa(b);return}function Y5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;SOa(b,a);YNa(b);return}function Z5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;TOa(b,a);YNa(b);return}function _5(a){a=a|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if((b[c+227>>0]|0)==a<<24>>24)return;MOa(c,a);YNa(c);return}function $5(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if((NOa(b)|0)<<24>>24==a<<24>>24)return;OOa(b,a);YNa(b);return}function a6(a){a=a|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if((b[c+228>>0]|0)==a<<24>>24)return;lOa(c,a);XNa(c);return}function b6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;ZOa(b,a);YNa(b);return}function c6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;_Oa(b,a);YNa(b);return}function d6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;$Oa(b,a);YNa(b);return}function e6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;aPa(b,a);YNa(b);return}function f6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;bPa(b,a);YNa(b);return}function g6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;cPa(b,a);YNa(b);return}function h6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;GOa(b,a);YNa(b);return}function i6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;UOa(b,a);YNa(b);return}function j6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;VOa(b,a);YNa(b);return}function k6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;WOa(b,a);YNa(b);return}function l6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;XOa(b,a);YNa(b);return}function m6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;YOa(b,a);YNa(b);return}function n6(){var a=0;a=(_2()|0)+228|0;a=(f[a>>2]|0)+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&16|0)!=0|0}function o6(){var a=0;a=(_2()|0)+228|0;return +(+ePa(f[a>>2]|0))}function p6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;dPa(b,a);YNa(b);return}function q6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;fPa(b,a);YNa(b);return}function r6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;gPa(b,a);YNa(b);return}function s6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;hPa(b,a);YNa(b);return}function t6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;iPa(b,a);YNa(b);return}function u6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;jPa(b,a);YNa(b);return}function v6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;kPa(b,a);YNa(b);return}function w6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;lPa(b,a);YNa(b);return}function x6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;mPa(b,a);YNa(b);return}function y6(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;nPa(b,a);YNa(b);return}function z6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;oPa(b,a);YNa(b);return}function A6(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;DOa(b,a);YNa(b);return}function B6(a,b){a=a|0;b=b|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;EOa(c,a,b);YNa(c);return}function C6(a){a=a|0;var b=0;b=(_2()|0)+228|0;FOa(f[b>>2]|0,a,a+16|0);return}function D6(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=u;u=u+16|0;b=d+8|0;e=d;c=_2()|0;g=f[c+220>>2]|0;c=f[c+228>>2]|0;h=vva(g)|0;f[e>>2]=h;f[e+4>>2]=a;qwa(b,g,e);a=f[b>>2]|0;if(a|0)if((f[c+216>>2]|0)!=(a|0)){uOa(c,b,0);XNa(c)}a=f[b+4>>2]|0;if(!a){u=d;return}Ppb(a);u=d;return}function E6(){var a=0,b=0,c=0,d=0;c=u;u=u+16|0;a=c;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(f[b+216>>2]|0)){u=c;return}f[a>>2]=0;d=a+4|0;f[d>>2]=0;uOa(b,a,0);a=f[d>>2]|0;if(a|0)Ppb(a);XNa(b);u=c;return}function F6(a){a=+a;var b=0,c=0,d=0,e=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=f[b+208>>2]|0;d=f[b+212>>2]|0;e=(d|0)==0;if(!e)Npb(d);if(ZMa(c,a)|0)XNa(b);if(e)return;Ppb(d);return}function G6(a){a=+a;var b=0,c=0,d=0,e=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=f[b+208>>2]|0;d=f[b+212>>2]|0;e=(d|0)==0;if(!e)Npb(d);if(YMa(c,a)|0)XNa(b);if(e)return;Ppb(d);return}function H6(a){a=+a;var b=0,c=0,d=0,e=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=f[b+208>>2]|0;d=f[b+212>>2]|0;e=(d|0)==0;if(!e)Npb(d);if(XMa(c,a)|0)XNa(b);if(e)return;Ppb(d);return}function I6(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+8|0;b=e;g=_2()|0;c=f[g+228>>2]|0;hwa(d,f[g+220>>2]|0,a);a=f[d>>2]|0;if(a|0){Gla(b,a);if(f[b>>2]|0)if(WMa(f[c+208>>2]|0,b)|0)XNa(c);a=f[b+4>>2]|0;if(a|0)Ppb(a)}a=f[d+4>>2]|0;if(!a){u=e;return}Ppb(a);u=e;return}function J6(){var a=0;a=(_2()|0)+228|0;a=f[a>>2]|0;if(!(_Ma(f[a+208>>2]|0)|0))return;XNa(a);return}function K6(a){a=a|0;var b=0,c=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=b+230|0;if(!(((j[c>>1]|j[c+2>>1]<<16)&128|0)!=0^a))return;tOa(b,a);XNa(b);return}function L6(){var a=0;a=(_2()|0)+228|0;ANa(f[a>>2]|0);return}function M6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=_2()|0;e=f[c+220>>2]|0;d=f[c+232>>2]|0;c=f[c+228>>2]|0;uYa(oxa(e)|0,d);gxa(e,f[a>>2]|0,f[a+4>>2]|0,b);hFa(d,a,b);ZNa(c);return}function N6(a){a=+a;var b=0,c=0;b=_2()|0;c=f[b+232>>2]|0;uYa(oxa(f[b+220>>2]|0)|0,c);jFa(c,a);c=_2()|0;b=f[c+228>>2]|0;bxa(f[c+220>>2]|0,a);ZNa(b);return}function O6(){var a=0,b=0,c=0;a=_2()|0;c=f[a+220>>2]|0;b=f[a+232>>2]|0;a=f[a+228>>2]|0;uYa(oxa(c)|0,b);axa(c);iFa(b);ZNa(a);return}function P6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(_2()|0)+220|0;d=f[d>>2]|0;c=f[a>>2]|0;e=f[a+4>>2]|0;a=c+(e<<3)|0;if(!e)return;do{pxa(d,c,b);c=c+8|0}while((c|0)!=(a|0));return}function Q6(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=u;u=u+32|0;q=m+16|0;l=m+8|0;r=m;p=((f[h+4>>2]|0)>>>0)/3|0;o=((f[i+4>>2]|0)>>>0)/3|0;n=((f[j+4>>2]|0)>>>0)/3|0;s=(b&3|0)==3?b&-4:b;s=(s&3|0)==0?s|4:s;s=(s&4096|0)==0?s&-585:s;s=(s&8192|0)==0?s&-1169:s;b=_2()|0;k=f[b+220>>2]|0;f[r>>2]=(s&16384|0)==0?s&-2337:s;g=f[g>>2]|0;h=f[h>>2]|0;i=f[i>>2]|0;j=f[j>>2]|0;f[q>>2]=f[r>>2];Ija(l,k,q,c,d,e,g,h,p,i,o,j,n);if(!(f[l>>2]|0)){f[a>>2]=0;f[a+4>>2]=-1}else{r=f[b+232>>2]|0;s=f[(f[r>>2]|0)+28>>2]|0;q=Awa(k)|0;nh[s&1023](r,q);q=(f[l>>2]|0)+28|0;r=f[q+4>>2]|0;s=a;f[s>>2]=f[q>>2];f[s+4>>2]=r}b=f[l+4>>2]|0;if(!b){u=m;return}Ppb(b);u=m;return}function R6(a,b,c,d,e,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0;l=(_2()|0)+232|0;sFa(f[l>>2]|0,b,7,1);l=Wpb(104)|0;f[l>>2]=25016;m=f[a>>2]|0;f[a>>2]=0;f[l+4>>2]=m;f[l+8>>2]=c;f[l+12>>2]=d;f[l+16>>2]=e;f[l+20>>2]=g;f[l+24>>2]=f[h>>2];f[l+28>>2]=f[h+4>>2];g=h+8|0;f[l+32>>2]=f[g>>2];e=h+12|0;f[l+36>>2]=f[e>>2];d=h+16|0;f[l+40>>2]=f[d>>2];f[d>>2]=0;f[e>>2]=0;f[g>>2]=0;f[h>>2]=0;f[l+44>>2]=f[i>>2];f[l+48>>2]=f[i+4>>2];h=i+8|0;f[l+52>>2]=f[h>>2];g=i+12|0;f[l+56>>2]=f[g>>2];e=i+16|0;f[l+60>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[h>>2]=0;f[i>>2]=0;f[l+64>>2]=f[j>>2];f[l+68>>2]=f[j+4>>2];i=j+8|0;f[l+72>>2]=f[i>>2];h=j+12|0;f[l+76>>2]=f[h>>2];g=j+16|0;f[l+80>>2]=f[g>>2];f[g>>2]=0;f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;f[l+84>>2]=f[k>>2];f[l+88>>2]=f[k+4>>2];j=k+8|0;f[l+92>>2]=f[j>>2];i=k+12|0;f[l+96>>2]=f[i>>2];h=k+16|0;f[l+100>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;f[k>>2]=0;S6(l,b);return}function S6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;c=g+20|0;d=g;h=Wpb(8)|0;f[h>>2]=25048;f[h+4>>2]=a;i=Wpb(8)|0;e=f[b+4>>2]|0;a=i;f[a>>2]=f[b>>2];f[a+4>>2]=e;a=i+8|0;f[d>>2]=i;f[d+4>>2]=1;e=d+12|0;f[d+8>>2]=i;f[e>>2]=a;f[d+16>>2]=a;a=(_2()|0)+232|0;a=f[a>>2]|0;f[c>>2]=h;jGa(a,c,d);a=f[c>>2]|0;f[c>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);c=d+8|0;a=f[c>>2]|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(!a){u=g;return}b=f[e>>2]|0;if((b|0)!=(a|0))f[e>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=g;return}function T6(a){a=a|0;var b=0;f[a>>2]=25048;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function U6(a){a=a|0;var b=0,c=0;f[a>>2]=25048;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function V6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+8>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function W6(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,f[b>>2]|0);return}function X6(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Y6(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=25016;b=a+92|0;c=f[b>>2]|0;e=a+96|0;if((c|0)==(f[e>>2]|0)){d=f[a+84>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}c=a+72|0;b=f[c>>2]|0;e=a+76|0;if((b|0)==(f[e>>2]|0)){d=f[a+64>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}c=a+52|0;b=f[c>>2]|0;e=a+56|0;if((b|0)==(f[e>>2]|0)){d=f[a+44>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}c=a+32|0;b=f[c>>2]|0;e=a+36|0;if((b|0)==(f[e>>2]|0)){d=f[a+24>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}a=a+4|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function Z6(a){a=a|0;Y6(a);Zpb(a);return}function _6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;c=u;u=u+48|0;g=c+16|0;d=c+8|0;B=c;v=((f[a+48>>2]|0)>>>0)/3|0;s=((f[a+68>>2]|0)>>>0)/3|0;q=((f[a+88>>2]|0)>>>0)/3|0;A=f[a+8>>2]|0;A=(A&3|0)==3?A&-4:A;A=(A&3|0)==0?A|4:A;A=(A&4096|0)==0?A&-585:A;A=(A&8192|0)==0?A&-1169:A;e=_2()|0;h=f[e+220>>2]|0;p=f[e+228>>2]|0;lwa(d,h,b);f[B>>2]=(A&16384|0)==0?A&-2337:A;A=f[a+12>>2]|0;z=f[a+16>>2]|0;y=f[a+20>>2]|0;x=f[a+24>>2]|0;w=f[a+44>>2]|0;t=f[a+64>>2]|0;r=f[a+84>>2]|0;f[g>>2]=f[B>>2];Gja(h,d,g,A,z,y,x,w,v,t,s,r,q)|0;ANa(p);p=f[(f[d>>2]|0)+44>>2]|0;o=+n[p+120>>2];m=+n[p+132>>2];l=+n[p+124>>2];k=+n[p+136>>2];j=+n[p+128>>2];i=+n[p+140>>2];n[g>>2]=o-m;n[g+4>>2]=l-k;n[g+8>>2]=j-i;n[g+12>>2]=o+m;n[g+16>>2]=l+k;n[g+20>>2]=j+i;e=f[e+232>>2]|0;uYa(oxa(h)|0,e);tFa(e,b,g);g=f[(f[e>>2]|0)+28>>2]|0;b=Awa(h)|0;nh[g&1023](e,b);a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,c+40|0);a=f[d+4>>2]|0;if(!a){u=c;return}Ppb(a);u=c;return}function $6(a,c){a=a|0;c=c|0;var d=0,e=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;b[d>>0]=0;nh[e&1023](a,d);u=c;return}function a7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function b7(a){a=a|0;return 0}function c7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;f[e>>2]=25080;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;jGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function d7(a){a=a|0;var b=0;f[a>>2]=25080;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function e7(a){a=a|0;var b=0,c=0;f[a>>2]=25080;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function f7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;t=u;u=u+48|0;s=t;p=t+36|0;q=_2()|0;r=f[q+220>>2]|0;c=s;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));d=f[b>>2]|0;o=b+4|0;n=f[o>>2]|0;g=d+(n<<3)|0;if(!n){d=s;h=s+4|0;i=5}else{h=s+16|0;i=s+20|0;j=s+12|0;k=s+28|0;l=s+32|0;m=s+24|0;c=s+4|0;n=s+8|0;do{a:do switch(Xva(r,d)|0){case 2:{e=f[h>>2]|0;if(e>>>0<(f[i>>2]|0)>>>0){w=d;v=f[w+4>>2]|0;f[e>>2]=f[w>>2];f[e+4>>2]=v;f[h>>2]=(f[h>>2]|0)+8;break a}else{i7(j,d);break a}}case 3:{e=f[k>>2]|0;if(e>>>0<(f[l>>2]|0)>>>0){x=d;v=f[x+4>>2]|0;w=e;f[w>>2]=f[x>>2];f[w+4>>2]=v;f[k>>2]=(f[k>>2]|0)+8;break a}else{i7(m,d);break a}}case 1:{e=f[c>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){v=d;w=f[v+4>>2]|0;x=e;f[x>>2]=f[v>>2];f[x+4>>2]=w;f[c>>2]=(f[c>>2]|0)+8;break a}else{i7(s,d);break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[s>>2]|0)==(f[c>>2]|0)){d=s;h=c;i=5}else{d=s;i=21}}if((i|0)==5)if((f[s+12>>2]|0)==(f[s+16>>2]|0)){c=s+24|0;if((f[c>>2]|0)==(f[s+28>>2]|0)){e=f[b>>2]|0;x=f[o>>2]|0;g=e+(x<<3)|0;if(x|0)do{awa(r,e)|0;e=e+8|0}while((e|0)!=(g|0));x=f[q+232>>2]|0;w=f[(f[x>>2]|0)+28>>2]|0;g=Awa(r)|0;nh[w&1023](x,g);ANa(f[q+228>>2]|0);g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,p);g=d}else{c=h;i=21}}else{c=h;i=21}if((i|0)==21){g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,s);g=d;h=c;c=s+24|0}c=f[c>>2]|0;if(c|0){d=s+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}e=f[s+12>>2]|0;if(e|0){c=s+16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}c=f[g>>2]|0;if(!c){u=t;return}d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=t;return}function g7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;i=j;c=i;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=f[b>>2]|0;e=f[b+4>>2]|0;a:do if((c|0)!=(e|0)){g=i+4|0;h=i+8|0;d=0;b=0;while(1){if(d>>>0<b>>>0){l=c;k=f[l+4>>2]|0;b=d;f[b>>2]=f[l>>2];f[b+4>>2]=k;f[g>>2]=(f[g>>2]|0)+8}else i7(i,c);c=c+8|0;if((c|0)==(e|0))break a;d=f[g>>2]|0;b=f[h>>2]|0}}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+12>>2]&1023](c,i);c=f[i+24>>2]|0;if(c|0){d=i+28|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i+12>>2]|0;if(c|0){d=i+16|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}b=f[i>>2]|0;if(!b){u=j;return}c=i+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);u=j;return}function h7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function i7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function j7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(12)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25112;f[d+8>>2]=c;S6(d,b);return}function k7(a){a=a|0;var b=0;f[a>>2]=25144;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function l7(a){a=a|0;var b=0,c=0;f[a>>2]=25144;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function m7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;e=g+16|0;d=g;c=(_2()|0)+220|0;lwa(e,f[c>>2]|0,b);b=f[e>>2]|0;if(!b){b=f[a+4>>2]|0;a=f[(f[b>>2]|0)+8>>2]|0;f[d>>2]=0;c=d+4|0;f[c>>2]=0;f[d+8>>2]=0;nh[a&1023](b,d);b=f[d>>2]|0;if(b|0){a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~(((a+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}}else{f[d>>2]=0;c=d+4|0;f[c>>2]=0;f[d+8>>2]=0;dka(f[b+44>>2]|0,f[a+8>>2]|0,d);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,d);b=f[d>>2]|0;if(b|0){a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~(((a+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}}b=f[e+4>>2]|0;if(!b){u=g;return}Ppb(b);u=g;return}function n7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function o7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function p7(a){a=a|0;wf()}function q7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=Wpb(28)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25176;f[d+8>>2]=f[b>>2];f[d+12>>2]=f[b+4>>2];a=b+8|0;f[d+16>>2]=f[a>>2];e=b+12|0;f[d+20>>2]=f[e>>2];g=b+16|0;f[d+24>>2]=f[g>>2];f[g>>2]=0;f[e>>2]=0;f[a>>2]=0;f[b>>2]=0;S6(d,c);return}function r7(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=25176;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=25208;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function s7(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=25176;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=25208;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function t7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+16|0;g=i;c=(_2()|0)+220|0;lwa(h,f[c>>2]|0,b);b=f[h>>2]|0;c=f[a+4>>2]|0;d=f[(f[c>>2]|0)+8>>2]|0;if(!b){f[g>>2]=0;e=g+4|0;f[e>>2]=0;f[g+8>>2]=0;nh[d&1023](c,g);b=f[g>>2]|0;if(b|0){a=f[e>>2]|0;if((a|0)!=(b|0))f[e>>2]=a+(~((a+-4-b|0)>>>2)<<2);Zpb(b)}}else{gka(g,b,f[a+8>>2]|0,f[a+12>>2]|0);nh[d&1023](c,g);c=f[g>>2]|0;if(c|0){b=g+4|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Zpb(c)}}b=f[h+4>>2]|0;if(!b){u=i;return}Ppb(b);u=i;return}function u7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function v7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function w7(a){a=a|0;var b=0;f[a>>2]=25208;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function x7(a){a=a|0;wf()}function y7(a,b){a=a|0;b=b|0;var c=0,d=0;c=Wpb(8)|0;d=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=d;f[c>>2]=25240;S6(c,b);return}function z7(a){a=a|0;var b=0;f[a>>2]=25272;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function A7(a){a=a|0;var b=0,c=0;f[a>>2]=25272;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function B7(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+160|0;s=v+144|0;t=v;h=v+152|0;r=(_2()|0)+220|0;lwa(s,f[r>>2]|0,c);c=f[s>>2]|0;do if(!c){a=f[a+4>>2]|0;r=f[(f[a>>2]|0)+12>>2]|0;b[t>>0]=1;nh[r&1023](a,t)}else{g=c+44|0;if(!(b[(f[g>>2]|0)+144>>0]&2)){a=f[a+4>>2]|0;r=f[(f[a>>2]|0)+12>>2]|0;b[t>>0]=3;nh[r&1023](a,t);break}c=t+60|0;d=t;e=d+60|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));n[c>>2]=1.0;k=t+80|0;l=t+64|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[k>>2]=1.0;m=t+100|0;o=t+84|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;n[m>>2]=1.0;p=t+120|0;q=t+104|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;n[p>>2]=1.0;r=t+124|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;j=(f[g>>2]|0)+64|0;if(!(Qqa(j)|0)){a=f[a+4>>2]|0;r=f[(f[a>>2]|0)+12>>2]|0;b[h>>0]=2;nh[r&1023](a,h)}else{if(Qqa(j)|0){d=Qqa(j)|0;g=t+4|0;h=f[g>>2]|0;c=f[t>>2]|0;e=h-c>>2;if(d>>>0>e>>>0){E7(t,d-e|0);c=f[t>>2]|0}else if(d>>>0<e>>>0){d=c+(d<<2)|0;if((d|0)!=(h|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2)}Tqa(j,c)|0}if(Rqa(j)|0){d=t+12|0;e=Rqa(j)|0;h=t+16|0;i=f[h>>2]|0;c=f[d>>2]|0;g=i-c>>1;if(e>>>0>g>>>0){F7(d,e-g|0);c=f[d>>2]|0}else if(e>>>0<g>>>0){d=c+(e<<1)|0;if((d|0)!=(i|0))f[h>>2]=i+(~((i+-2-d|0)>>>1)<<1)}Uqa(j,c)|0}c=f[s>>2]|0;g=f[c+44>>2]|0;d=g+68|0;e=t+24|0;if((e|0)==(d|0))e=g;else{G7(e,f[d>>2]|0,f[g+72>>2]|0);e=f[s>>2]|0;c=e;e=f[e+44>>2]|0}d=e+80|0;g=t+36|0;if((g|0)==(d|0))g=e;else{G7(g,f[d>>2]|0,f[e+84>>2]|0);c=f[s>>2]|0;g=f[c+44>>2]|0}d=g+92|0;e=t+48|0;if((e|0)!=(d|0)){G7(e,f[d>>2]|0,f[g+96>>2]|0);c=f[s>>2]|0}e=f[c+36>>2]|0;d=f[c+40>>2]|0;c=(d|0)==0;if(!c)Npb(d);if(e|0){f[t+60>>2]=f[e>>2];f[l>>2]=f[e+4>>2];f[t+68>>2]=f[e+8>>2];f[t+72>>2]=f[e+12>>2];f[t+76>>2]=f[e+16>>2];f[k>>2]=f[e+20>>2];f[o>>2]=f[e+24>>2];f[t+88>>2]=f[e+28>>2];f[t+92>>2]=f[e+32>>2];f[t+96>>2]=f[e+36>>2];f[m>>2]=f[e+40>>2];f[q>>2]=f[e+44>>2];f[t+108>>2]=f[e+48>>2];f[t+112>>2]=f[e+52>>2];f[t+116>>2]=f[e+56>>2];f[p>>2]=f[e+60>>2]}if(!c)Ppb(d);q=f[(f[s>>2]|0)+44>>2]|0;f[r>>2]=f[q+24>>2];f[t+128>>2]=f[q+28>>2];f[t+132>>2]=f[q+32>>2];f[t+136>>2]=f[q+48>>2];a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,t)}SF(t)}while(0);c=f[s+4>>2]|0;if(!c){u=v;return}Ppb(c);u=v;return}function C7(a,c){a=a|0;c=c|0;var d=0,e=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;b[d>>0]=1;nh[e&1023](a,d);u=c;return}function D7(a,c){a=a|0;c=c|0;var d=0,e=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;b[d>>0]=0;nh[e&1023](a,d);u=c;return}function E7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+8|0;d=f[i>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Krb(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}h=f[a>>2]|0;g=c-h|0;e=g>>2;c=e+b|0;if(c>>>0>1073741823)fob(a);m=d-h|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){j=0;k=0}else if(d>>>0>1073741823)ud();else{k=Wpb(d<<2)|0;j=k;break}while(0);c=j+(e<<2)|0;Krb(c|0,0,b<<2|0)|0;if((g|0)>0)Irb(k|0,h|0,g|0)|0;f[a>>2]=j;f[l>>2]=c+(b<<2);f[i>>2]=j+(d<<2);if(!h)return;Zpb(h);return}function F7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+8|0;d=f[i>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>1>>>0>=b>>>0){Krb(c|0,0,b<<1|0)|0;f[l>>2]=c+(b<<1);return}h=f[a>>2]|0;g=c-h|0;e=g>>1;c=e+b|0;if((c|0)<0)fob(a);d=d-h|0;d=d>>1>>>0<1073741823?(d>>>0<c>>>0?c:d):2147483647;do if(!d){j=0;k=0}else if((d|0)<0)ud();else{k=Wpb(d<<1)|0;j=k;break}while(0);c=j+(e<<1)|0;Krb(c|0,0,b<<1|0)|0;if((g|0)>0)Irb(k|0,h|0,g|0)|0;f[a>>2]=j;f[l>>2]=c+(b<<1);f[i>>2]=j+(d<<1);if(!h)return;Zpb(h);return}function G7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c;i=b;h=j-i|0;g=(h|0)/12|0;k=a+8|0;d=f[k>>2]|0;m=f[a>>2]|0;l=m;if(g>>>0<=((d-m|0)/12|0)>>>0){h=a+4|0;e=((f[h>>2]|0)-m|0)/12|0;a=g>>>0>e>>>0;g=a?b+(e*12|0)|0:c;e=g;d=e-i|0;if(d|0)Jrb(m|0,b|0,d|0)|0;c=l+(((d|0)/12|0)*12|0)|0;if(a){d=j-e|0;if((d|0)<=0)return;Irb(f[h>>2]|0,g|0,d|0)|0;f[h>>2]=(f[h>>2]|0)+(((d>>>0)/12|0)*12|0);return}else{d=f[h>>2]|0;if((d|0)==(c|0))return;f[h>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);return}}e=m;if(m){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~(((c+-12-m|0)>>>0)/12|0)*12|0);Zpb(e);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(g>>>0>357913941)fob(a);m=(d|0)/12|0;d=m<<1;d=m>>>0<178956970?(d>>>0<g>>>0?g:d):357913941;if(d>>>0>357913941)fob(a);c=Wpb(d*12|0)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[k>>2]=c+(d*12|0);if((h|0)<=0)return;Irb(c|0,b|0,h|0)|0;f[e>>2]=c+(((h>>>0)/12|0)*12|0);return}function H7(a){a=a|0;wf()}function I7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function J7(a,c,d,e,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+48|0;r=s+28|0;q=s+16|0;o=s+8|0;p=s;E6a(r);B6a(q);l=(e|1|0)==5;m=l?1:h;l=l?f[c+4>>2]|0:g;h=(i|1|0)==5;g=f[d+4>>2]|0;if(!g)n=3;else{h=Nja(i,0,r,q,h?g:j,h?1:k,f[d>>2]|0)|0;if(!h)n=3}if((n|0)==3)h=Nja(e,0,r,q,l,m,f[c>>2]|0)|0;switch(h|0){case 4:{p=f[a>>2]|0;a=f[(f[p>>2]|0)+12>>2]|0;b[o>>0]=3;nh[a&1023](p,o);break}case 1:{p=f[a>>2]|0;a=f[(f[p>>2]|0)+12>>2]|0;b[o>>0]=0;nh[a&1023](p,o);break}case 2:{p=f[a>>2]|0;a=f[(f[p>>2]|0)+12>>2]|0;b[o>>0]=1;nh[a&1023](p,o);break}case 3:{p=f[a>>2]|0;a=f[(f[p>>2]|0)+12>>2]|0;b[o>>0]=2;nh[a&1023](p,o);break}default:{l=(_2()|0)+220|0;l=f[l>>2]|0;gla(o,l);Hva(p,l,o);l=f[p>>2]|0;h=p+4|0;n=f[h>>2]|0;f[p>>2]=0;f[h>>2]=0;f[o>>2]=l;l=o+4|0;g=f[l>>2]|0;f[l>>2]=n;if(g|0){Ppb(g);h=f[h>>2]|0;if(h|0)Ppb(h)}if(!(f[o>>2]|0)){n=f[a>>2]|0;e=f[(f[n>>2]|0)+12>>2]|0;b[p>>0]=4;nh[e&1023](n,p)}if(f[r>>2]|0)Bla(f[o>>2]|0,r);if(f[q>>2]|0)Cla(f[o>>2]|0,q);h=f[a>>2]|0;a=f[(f[h>>2]|0)+8>>2]|0;e=(f[o>>2]|0)+4|0;n=f[e+4>>2]|0;o=p;f[o>>2]=f[e>>2];f[o+4>>2]=n;nh[a&1023](h,p);h=f[l>>2]|0;if(h|0)Ppb(h)}}h=f[q>>2]|0;f[q>>2]=0;if(h|0)_pb(h);h=f[r>>2]|0;f[r>>2]=0;if(!h){u=s;return}_pb(h);u=s;return}function K7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;s=u;u=u+48|0;r=s;p=s+36|0;q=(_2()|0)+220|0;q=f[q>>2]|0;c=r;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));d=f[b>>2]|0;o=b+4|0;n=f[o>>2]|0;g=d+(n<<3)|0;if(!n){d=r;h=r+4|0;i=5}else{h=r+16|0;i=r+20|0;j=r+12|0;k=r+28|0;l=r+32|0;m=r+24|0;c=r+4|0;n=r+8|0;do{a:do switch($va(q,d)|0){case 2:{e=f[h>>2]|0;if(e>>>0<(f[i>>2]|0)>>>0){v=d;t=f[v+4>>2]|0;f[e>>2]=f[v>>2];f[e+4>>2]=t;f[h>>2]=(f[h>>2]|0)+8;break a}else{i7(j,d);break a}}case 3:{e=f[k>>2]|0;if(e>>>0<(f[l>>2]|0)>>>0){w=d;t=f[w+4>>2]|0;v=e;f[v>>2]=f[w>>2];f[v+4>>2]=t;f[k>>2]=(f[k>>2]|0)+8;break a}else{i7(m,d);break a}}case 1:{e=f[c>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){t=d;v=f[t+4>>2]|0;w=e;f[w>>2]=f[t>>2];f[w+4>>2]=v;f[c>>2]=(f[c>>2]|0)+8;break a}else{i7(r,d);break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[r>>2]|0)==(f[c>>2]|0)){d=r;h=c;i=5}else{d=r;i=21}}if((i|0)==5)if((f[r+12>>2]|0)==(f[r+16>>2]|0)){c=r+24|0;if((f[c>>2]|0)==(f[r+28>>2]|0)){e=f[b>>2]|0;w=f[o>>2]|0;g=e+(w<<3)|0;if(w|0)do{ewa(q,e)|0;e=e+8|0}while((e|0)!=(g|0));g=f[a>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,p);g=d}else{c=h;i=21}}else{c=h;i=21}if((i|0)==21){g=f[a>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,r);g=d;h=c;c=r+24|0}c=f[c>>2]|0;if(c|0){d=r+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}e=f[r+12>>2]|0;if(e|0){c=r+16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}c=f[g>>2]|0;if(!c){u=s;return}d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=s;return}function L7(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;b=e+8|0;d=e;Ena(b);c=(_2()|0)+220|0;Jva(d,f[c>>2]|0,b);c=(f[d>>2]|0)==0;d=f[d+4>>2]|0;if(d|0)Ppb(d);if(c){f[a>>2]=0;f[a+4>>2]=-1}else{g=(f[b>>2]|0)+176|0;c=f[g+4>>2]|0;d=a;f[d>>2]=f[g>>2];f[d+4>>2]=c}a=f[b+4>>2]|0;if(!a){u=e;return}Ppb(a);u=e;return}function M7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;f[e>>2]=25304;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function N7(a){a=a|0;var b=0;f[a>>2]=25304;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function O7(a){a=a|0;var b=0,c=0;f[a>>2]=25304;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function P7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;t=u;u=u+48|0;s=t;p=t+36|0;q=_2()|0;r=f[q+220>>2]|0;c=s;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));d=f[b>>2]|0;o=b+4|0;n=f[o>>2]|0;g=d+(n<<3)|0;if(!n){d=s;h=s+4|0;i=5}else{h=s+16|0;i=s+20|0;j=s+12|0;k=s+28|0;l=s+32|0;m=s+24|0;c=s+4|0;n=s+8|0;do{a:do switch(_va(r,d)|0){case 2:{e=f[h>>2]|0;if(e>>>0<(f[i>>2]|0)>>>0){w=d;v=f[w+4>>2]|0;f[e>>2]=f[w>>2];f[e+4>>2]=v;f[h>>2]=(f[h>>2]|0)+8;break a}else{i7(j,d);break a}}case 3:{e=f[k>>2]|0;if(e>>>0<(f[l>>2]|0)>>>0){x=d;v=f[x+4>>2]|0;w=e;f[w>>2]=f[x>>2];f[w+4>>2]=v;f[k>>2]=(f[k>>2]|0)+8;break a}else{i7(m,d);break a}}case 1:{e=f[c>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){v=d;w=f[v+4>>2]|0;x=e;f[x>>2]=f[v>>2];f[x+4>>2]=w;f[c>>2]=(f[c>>2]|0)+8;break a}else{i7(s,d);break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[s>>2]|0)==(f[c>>2]|0)){d=s;h=c;i=5}else{d=s;i=21}}if((i|0)==5)if((f[s+12>>2]|0)==(f[s+16>>2]|0)){c=s+24|0;if((f[c>>2]|0)==(f[s+28>>2]|0)){e=f[b>>2]|0;x=f[o>>2]|0;g=e+(x<<3)|0;if(x|0)do{dwa(r,e)|0;e=e+8|0}while((e|0)!=(g|0));ANa(f[q+228>>2]|0);g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,p);g=d}else{c=h;i=21}}else{c=h;i=21}if((i|0)==21){g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,s);g=d;h=c;c=s+24|0}d=f[c>>2]|0;if(d|0){e=s+28|0;c=f[e>>2]|0;if((c|0)!=(d|0))f[e>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d)}e=f[s+12>>2]|0;if(e|0){c=s+16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}c=f[g>>2]|0;if(!c){u=t;return}d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=t;return}function Q7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;i=j;c=i;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=f[b>>2]|0;e=f[b+4>>2]|0;a:do if((c|0)!=(e|0)){g=i+4|0;h=i+8|0;d=0;b=0;while(1){if(d>>>0<b>>>0){l=c;k=f[l+4>>2]|0;b=d;f[b>>2]=f[l>>2];f[b+4>>2]=k;f[g>>2]=(f[g>>2]|0)+8}else i7(i,c);c=c+8|0;if((c|0)==(e|0))break a;d=f[g>>2]|0;b=f[h>>2]|0}}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+12>>2]&1023](c,i);c=f[i+24>>2]|0;if(c|0){d=i+28|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i+12>>2]|0;if(c|0){d=i+16|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}b=f[i>>2]|0;if(!b){u=j;return}c=i+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);u=j;return}function R7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function S7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;f[e>>2]=25336;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function T7(a){a=a|0;var b=0;f[a>>2]=25368;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function U7(a){a=a|0;var b=0,c=0;f[a>>2]=25368;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function V7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;i=m+8|0;j=m;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;f[i+8>>2]=0;c=f[b+4>>2]|0;h=i+8|0;if(c|0){if(c>>>0>134217727)ud();g=Wpb(c<<5)|0;f[i>>2]=g;f[l>>2]=g;f[h>>2]=g+(c<<5);g=f[b>>2]|0;d=g+(c<<3)|0;e=j+4|0;c=g;do{kwa(j,k,c);g=f[j>>2]|0;b=f[e>>2]|0;if(b|0)Ppb(b);b=f[l>>2]|0;if(b>>>0<(f[h>>2]|0)>>>0){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;b=b+32|0;f[l>>2]=b}else{Y7(i);b=f[l>>2]|0}n=b+-32|0;o=g+128|0;f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];f[n+12>>2]=f[o+12>>2];n=g+144|0;g=b+-16|0;f[g>>2]=f[n>>2];f[g+4>>2]=f[n+4>>2];f[g+8>>2]=f[n+8>>2];f[g+12>>2]=f[n+12>>2];c=c+8|0}while((c|0)!=(d|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=m;return}c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-32-b|0)>>>5)<<5);Zpb(b);u=m;return}function W7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function X7(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Y7(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+4|0;i=f[a>>2]|0;j=(f[e>>2]|0)-i|0;d=j>>5;b=d+1|0;if(b>>>0>134217727)fob(a);k=a+8|0;l=(f[k>>2]|0)-i|0;c=l>>4;c=l>>5>>>0<67108863?(c>>>0<b>>>0?b:c):134217727;do if(!c){g=0;h=0}else if(c>>>0>134217727)ud();else{h=Wpb(c<<5)|0;g=h;break}while(0);b=g+(d<<5)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;if((j|0)>0)Irb(h|0,i|0,j|0)|0;f[a>>2]=g;f[e>>2]=b+32;f[k>>2]=g+(c<<5);if(!i)return;Zpb(i);return}function Z7(a){a=a|0;wf()}function _7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;f[e>>2]=25400;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function $7(a){a=a|0;var b=0;f[a>>2]=25432;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function a8(a){a=a|0;var b=0,c=0;f[a>>2]=25432;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function b8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+8|0;j=m;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;f[i+8>>2]=0;c=f[b+4>>2]|0;h=i+8|0;if(c|0){if(c>>>0>268435455)ud();d=Wpb(c<<4)|0;f[i>>2]=d;f[l>>2]=d;f[h>>2]=d+(c<<4);d=f[b>>2]|0;e=d+(c<<3)|0;g=j+4|0;do{kwa(j,k,d);b=(f[j>>2]|0)+128|0;c=f[l>>2]|0;if((c|0)==(f[h>>2]|0))e8(i,b);else{f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[l>>2]=c+16}b=f[g>>2]|0;if(b|0)Ppb(b);d=d+8|0}while((d|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=m;return}c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-16-b|0)>>>4)<<4);Zpb(b);u=m;return}function c8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function d8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function e8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>4;c=e+1|0;if(c>>>0>268435455)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>3;d=m>>4>>>0<134217727?(d>>>0<c>>>0?c:d):268435455;do if(!d){h=0;i=0}else if(d>>>0>268435455)ud();else{i=Wpb(d<<4)|0;h=i;break}while(0);c=h+(e<<4)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+16;f[l>>2]=h+(d<<4);if(!j)return;Zpb(j);return}function f8(a){a=a|0;wf()}function g8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;e=Wpb(8)|0;g=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=g;f[e>>2]=25464;a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=e;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(!a){u=c;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=c;return}function h8(a){a=a|0;var b=0,c=0;f[a>>2]=25432;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function i8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+8|0;j=m;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;f[i+8>>2]=0;c=f[b+4>>2]|0;h=i+8|0;if(c|0){if(c>>>0>268435455)ud();d=Wpb(c<<4)|0;f[i>>2]=d;f[l>>2]=d;f[h>>2]=d+(c<<4);d=f[b>>2]|0;e=d+(c<<3)|0;g=j+4|0;do{kwa(j,k,d);b=(f[j>>2]|0)+144|0;c=f[l>>2]|0;if((c|0)==(f[h>>2]|0))e8(i,b);else{f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[l>>2]=c+16}b=f[g>>2]|0;if(b|0)Ppb(b);d=d+8|0}while((d|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=m;return}c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-16-b|0)>>>4)<<4);Zpb(b);u=m;return}function j8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e;if(!(f[b+4>>2]|0)){c=f[a>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,d);u=e;return}g=Wpb(24)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=25496;a=g+8|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=g;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function k8(a){a=a|0;var b=0,c=0;f[a>>2]=24824;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function l8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r;m=_2()|0;o=f[m+220>>2]|0;c=f[b>>2]|0;k=f[b+4>>2]|0;l=c+(k<<3)|0;do if(k|0){g=a+8|0;h=a+12|0;i=a+16|0;j=a+20|0;k=q+4|0;e=0;d=1;do{kwa(q,o,c);b=f[q>>2]|0;if(+n[b+128>>2]==+n[g>>2])if(+n[b+132>>2]==+n[h>>2])if(+n[b+136>>2]==+n[i>>2]){if(!(+n[b+140>>2]==+n[j>>2]))p=8}else p=8;else p=8;else p=8;if((p|0)==8){p=0;if(d){d=(Wva(o,q)|0)^1;b=f[q>>2]|0}else d=0;Pna(b,g);e=1}b=f[k>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(l|0));if(e){b=f[m+228>>2]|0;if(d){YNa(b);break}else{ANa(b);break}}}while(0);a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,q);u=r;return}function m8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e;if(!(f[b+4>>2]|0)){c=f[a>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,d);u=e;return}g=Wpb(24)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=25528;a=g+8|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];a=(_2()|0)+232|0;a=f[a>>2]|0;f[d>>2]=g;fGa(a,d,b);a=f[d>>2]|0;f[d>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=e;return}function n8(a){a=a|0;var b=0,c=0;f[a>>2]=24824;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function o8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r;m=_2()|0;o=f[m+220>>2]|0;c=f[b>>2]|0;k=f[b+4>>2]|0;l=c+(k<<3)|0;do if(k|0){g=a+8|0;h=a+12|0;i=a+16|0;j=a+20|0;k=q+4|0;e=0;d=1;do{kwa(q,o,c);b=f[q>>2]|0;if(+n[b+144>>2]==+n[g>>2])if(+n[b+148>>2]==+n[h>>2])if(+n[b+152>>2]==+n[i>>2]){if(!(+n[b+156>>2]==+n[j>>2]))p=8}else p=8;else p=8;else p=8;if((p|0)==8){p=0;if(d){d=(Wva(o,q)|0)^1;b=f[q>>2]|0}else d=0;doa(b,g);e=1}b=f[k>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(l|0));if(e){b=f[m+228>>2]|0;if(d){YNa(b);break}else{ANa(b);break}}}while(0);a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,q);u=r;return}function p8(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+64|0;c=b;n[c>>2]=1.0;d=c+4|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[c+20>>2]=1.0;d=c+24|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[c+40>>2]=1.0;d=c+44|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[c+60>>2]=1.0;C3(a,c);u=b;return}function q8(a,b){a=a|0;b=b|0;var c=0,d=0;c=Wpb(8)|0;f[c>>2]=25560;d=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=d;r8(c,b);return}function r8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+48|0;j=k+16|0;g=k+4|0;d=k;c=a;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[j+16>>2]=0;f[g>>2]=0;h=g+4|0;f[h>>2]=0;f[g+8>>2]=0;if(I3(b,j,g)|0)e=4;else if(Ng[f[(f[a>>2]|0)+20>>2]&511](a)|0)e=4;else{nh[f[(f[a>>2]|0)+12>>2]&1023](a,g);i=a}if((e|0)==4){a=(_2()|0)+232|0;a=f[a>>2]|0;i=Wpb(28)|0;f[i>>2]=25592;f[i+4>>2]=c;f[i+8>>2]=f[b>>2];f[i+12>>2]=f[b+4>>2];e=b+8|0;f[i+16>>2]=f[e>>2];c=b+12|0;f[i+20>>2]=f[c>>2];l=b+16|0;f[i+24>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[e>>2]=0;f[b>>2]=0;f[d>>2]=i;hGa(a,d,j);a=f[d>>2]|0;f[d>>2]=0;if(!a)i=0;else{fh[f[(f[a>>2]|0)+4>>2]&2047](a);i=0}}a=f[g>>2]|0;if(a|0){b=f[h>>2]|0;if((b|0)!=(a|0))f[h>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}c=j+8|0;a=f[c>>2]|0;d=j+12|0;if((a|0)==(f[d>>2]|0)){b=f[j>>2]|0;if(b){_pb(b);a=f[c>>2]|0}}if(a|0){b=f[d>>2]|0;if((b|0)!=(a|0))f[d>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}if(!i){u=k;return}fh[f[(f[i>>2]|0)+4>>2]&2047](i);u=k;return}function s8(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=25592;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function t8(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=25592;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function u8(a,b){a=a|0;b=b|0;b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,a+8|0);return}function v8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;i=m+8|0;j=m;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;f[i+8>>2]=0;b=f[a+8>>2]|0;h=f[a+12>>2]|0;e=b+(h<<3)|0;if(h|0){g=j+4|0;h=i+8|0;do{iwa(j,k,b);c=(f[j>>2]|0)==0;d=f[g>>2]|0;if(d|0)Ppb(d);do if(c){c=f[l>>2]|0;if((c|0)==(f[h>>2]|0)){xB(i,b);break}else{o=b;n=f[o+4>>2]|0;d=c;f[d>>2]=f[o>>2];f[d+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8;break}}while(0);b=b+8|0}while((b|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+12>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=m;return}c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=m;return}function w8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function x8(a){a=a|0;a=f[a+4>>2]|0;return Ng[f[(f[a>>2]|0)+20>>2]&511](a)|0}function y8(a){a=a|0;var b=0;f[a>>2]=25560;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function z8(a){a=a|0;var b=0,c=0;f[a>>2]=25560;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function A8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;t=u;u=u+48|0;s=t;q=t+36|0;r=_2()|0;p=f[r+220>>2]|0;r=f[r+232>>2]|0;c=s;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));d=f[b>>2]|0;o=b+4|0;n=f[o>>2]|0;g=d+(n<<3)|0;if(!n){d=s;h=s+4|0;i=5}else{h=s+16|0;i=s+20|0;j=s+12|0;k=s+28|0;l=s+32|0;m=s+24|0;c=s+4|0;n=s+8|0;do{a:do switch(Zva(p,d)|0){case 2:{e=f[h>>2]|0;if(e>>>0<(f[i>>2]|0)>>>0){w=d;v=f[w+4>>2]|0;f[e>>2]=f[w>>2];f[e+4>>2]=v;f[h>>2]=(f[h>>2]|0)+8;break a}else{D8(j,d);break a}}case 3:{e=f[k>>2]|0;if(e>>>0<(f[l>>2]|0)>>>0){x=d;v=f[x+4>>2]|0;w=e;f[w>>2]=f[x>>2];f[w+4>>2]=v;f[k>>2]=(f[k>>2]|0)+8;break a}else{D8(m,d);break a}}case 1:{e=f[c>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){v=d;w=f[v+4>>2]|0;x=e;f[x>>2]=f[v>>2];f[x+4>>2]=w;f[c>>2]=(f[c>>2]|0)+8;break a}else{D8(s,d);break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[s>>2]|0)==(f[c>>2]|0)){d=s;h=c;i=5}else{d=s;i=22}}if((i|0)==5)if((f[s+12>>2]|0)==(f[s+16>>2]|0)){c=s+24|0;if((f[c>>2]|0)==(f[s+28>>2]|0)){e=f[b>>2]|0;x=f[o>>2]|0;g=e+(x<<3)|0;if(!x)g=0;else{do{cwa(p,e)|0;e=e+8|0}while((e|0)!=(g|0));g=f[o>>2]|0;e=f[b>>2]|0}BGa(r,g,e);g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,q);g=d}else{c=h;i=22}}else{c=h;i=22}if((i|0)==22){g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,s);g=d;h=c;c=s+24|0}e=f[c>>2]|0;if(e|0){c=s+28|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}e=f[s+12>>2]|0;if(e|0){c=s+16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}c=f[g>>2]|0;if(!c){u=t;return}d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=t;return}function B8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;i=j;c=i;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=f[b>>2]|0;e=f[b+4>>2]|0;a:do if((c|0)!=(e|0)){g=i+4|0;h=i+8|0;d=0;b=0;while(1){if(d>>>0<b>>>0){l=c;k=f[l+4>>2]|0;b=d;f[b>>2]=f[l>>2];f[b+4>>2]=k;f[g>>2]=(f[g>>2]|0)+8}else D8(i,c);c=c+8|0;if((c|0)==(e|0))break a;d=f[g>>2]|0;b=f[h>>2]|0}}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+12>>2]&1023](c,i);c=f[i+24>>2]|0;if(c|0){d=i+28|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i+12>>2]|0;if(c|0){d=i+16|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}b=f[i>>2]|0;if(!b){u=j;return}c=i+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);u=j;return}function C8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function D8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function E8(a,b){a=a|0;b=b|0;var c=0,d=0;c=Wpb(8)|0;d=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=d;f[c>>2]=25624;r8(c,b);return}function F8(a){a=a|0;var b=0;f[a>>2]=25656;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function G8(a){a=a|0;var b=0,c=0;f[a>>2]=25656;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function H8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+8|0;j=m;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;f[i+8>>2]=0;h=b+4|0;SB(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;e=b+(h<<3)|0;if(h|0){g=i+8|0;h=j+4|0;do{iwa(j,k,b);c=f[j>>2]|0;d=f[l>>2]|0;if((d|0)==(f[g>>2]|0))K8(i,c);else{f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];f[d+16>>2]=f[c+16>>2];f[d+20>>2]=f[c+20>>2];f[d+24>>2]=f[c+24>>2];f[d+28>>2]=f[c+28>>2];f[d+32>>2]=f[c+32>>2];f[d+36>>2]=f[c+36>>2];f[d+40>>2]=f[c+40>>2];f[d+44>>2]=f[c+44>>2];f[d+48>>2]=f[c+48>>2];f[d+52>>2]=f[c+52>>2];f[d+56>>2]=f[c+56>>2];f[d+60>>2]=f[c+60>>2];f[l>>2]=d+64}c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0}while((b|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=m;return}c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-64-b|0)>>>6)<<6);Zpb(b);u=m;return}function I8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function J8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function K8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;g=(f[j>>2]|0)-c>>6;d=g+1|0;if(d>>>0>67108863)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>5;c=i>>6>>>0<33554431?(c>>>0<d>>>0?d:c):67108863;do if(!c)e=0;else if(c>>>0>67108863)ud();else{e=Wpb(c<<6)|0;break}while(0);d=e+(g<<6)|0;i=e+(c<<6)|0;f[d>>2]=f[b>>2];f[e+(g<<6)+4>>2]=f[b+4>>2];f[e+(g<<6)+8>>2]=f[b+8>>2];f[e+(g<<6)+12>>2]=f[b+12>>2];f[e+(g<<6)+16>>2]=f[b+16>>2];f[e+(g<<6)+20>>2]=f[b+20>>2];f[e+(g<<6)+24>>2]=f[b+24>>2];f[e+(g<<6)+28>>2]=f[b+28>>2];f[e+(g<<6)+32>>2]=f[b+32>>2];f[e+(g<<6)+36>>2]=f[b+36>>2];f[e+(g<<6)+40>>2]=f[b+40>>2];f[e+(g<<6)+44>>2]=f[b+44>>2];f[e+(g<<6)+48>>2]=f[b+48>>2];f[e+(g<<6)+52>>2]=f[b+52>>2];f[e+(g<<6)+56>>2]=f[b+56>>2];f[e+(g<<6)+60>>2]=f[b+60>>2];h=d+64|0;g=f[a>>2]|0;b=f[j>>2]|0;c=g;if((b|0)!=(g|0)){e=b+-64-c|0;c=b;b=d;do{l=b;b=b+-64|0;m=c;c=c+-64|0;f[b>>2]=f[c>>2];f[l+-60>>2]=f[m+-60>>2];f[l+-56>>2]=f[m+-56>>2];f[l+-52>>2]=f[m+-52>>2];f[l+-48>>2]=f[m+-48>>2];f[l+-44>>2]=f[m+-44>>2];f[l+-40>>2]=f[m+-40>>2];f[l+-36>>2]=f[m+-36>>2];f[l+-32>>2]=f[m+-32>>2];f[l+-28>>2]=f[m+-28>>2];f[l+-24>>2]=f[m+-24>>2];f[l+-20>>2]=f[m+-20>>2];f[l+-16>>2]=f[m+-16>>2];f[l+-12>>2]=f[m+-12>>2];f[l+-8>>2]=f[m+-8>>2];f[l+-4>>2]=f[m+-4>>2]}while((c|0)!=(g|0));d=d+(~(e>>>6)<<6)|0;c=f[a>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;if(!c)return;Zpb(c);return}function L8(a){a=a|0;wf()}function M8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(72)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25688;f[d+8>>2]=f[c>>2];f[d+12>>2]=f[c+4>>2];f[d+16>>2]=f[c+8>>2];f[d+20>>2]=f[c+12>>2];f[d+24>>2]=f[c+16>>2];f[d+28>>2]=f[c+20>>2];f[d+32>>2]=f[c+24>>2];f[d+36>>2]=f[c+28>>2];f[d+40>>2]=f[c+32>>2];f[d+44>>2]=f[c+36>>2];f[d+48>>2]=f[c+40>>2];f[d+52>>2]=f[c+44>>2];f[d+56>>2]=f[c+48>>2];f[d+60>>2]=f[c+52>>2];f[d+64>>2]=f[c+56>>2];f[d+68>>2]=f[c+60>>2];r8(d,b);return}function N8(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function O8(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;g=f[a+32>>2]|0;i=f[a+40>>2]|0;d=f[a+168>>2]|0;e=f[a+184>>2]|0;a:{f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;b[(f[g>>2]|0)+e>>0]=d;e=f[(g+4|0)>>2]|0;d=e-(f[g>>2]|0)|0;f[a>>2]=e;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,8,a+8|0)|0;e=h[(i+72|0)>>0]|h[(i+72|0)+1>>0]<<8|h[(i+72|0)+2>>0]<<16|h[(i+72|0)+3>>0]<<24;c=h[((i+72|0)+4|0)>>0]|h[((i+72|0)+4|0)+1>>0]<<8|h[((i+72|0)+4|0)+2>>0]<<16|h[((i+72|0)+4|0)+3>>0]<<24;d=(f[g>>2]|0)+d|0;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;b[(d+4|0)>>0]=c;b[(d+4|0)+1>>0]=c>>8;b[(d+4|0)+2>>0]=c>>16;b[(d+4|0)+3>>0]=c>>24;d=b[((i+80|0)+11|0)>>0]|0;d=d<<24>>24<0?f[(i+84|0)>>2]|0:d&255;c=f[(g+4|0)>>2]|0;e=c-(f[g>>2]|0)|0;f[a>>2]=c;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,4,a+8|0)|0;e=(f[g>>2]|0)+e|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;e=b[((i+80|0)+11|0)>>0]|0;d=e<<24>>24<0?f[(i+80|0)>>2]|0:i+80|0;e=e<<24>>24<0?f[(i+84|0)>>2]|0:e&255;if(e|0){c=d;do{k=b[c>>0]|0;l=f[(g+4|0)>>2]|0;j=l-(f[g>>2]|0)|0;f[a>>2]=l;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;b[(f[g>>2]|0)+j>>0]=k;c=c+1|0}while((c|0)!=(d+e|0|0))}d=b[((i+92|0)+11|0)>>0]|0;d=d<<24>>24<0?f[(i+96|0)>>2]|0:d&255;l=f[(g+4|0)>>2]|0;e=l-(f[g>>2]|0)|0;f[a>>2]=l;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,4,a+8|0)|0;e=(f[g>>2]|0)+e|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;e=b[((i+92|0)+11|0)>>0]|0;d=e<<24>>24<0?f[(i+92|0)>>2]|0:i+92|0;e=e<<24>>24<0?f[(i+96|0)>>2]|0:e&255;if(!e){l=i+104|0;e=f[(g+4|0)>>2]|0;j=f[g>>2]|0;j=e-j|0;f[a>>2]=e;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,8,a+8|0)|0;e=f[g>>2]|0;j=e+j|0;e=l;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;k=j;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;j=j+4|0;b[j>>0]=l;b[j+1>>0]=l>>8;b[j+2>>0]=l>>16;b[j+3>>0]=l>>24;j=i+112|0;j=b[j>>0]|0;l=f[(g+4|0)>>2]|0;k=f[g>>2]|0;k=l-k|0;f[a>>2]=l;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;l=f[g>>2]|0;k=l+k|0;b[k>>0]=j;k=i+113|0;k=b[k>>0]|0;j=f[(g+4|0)>>2]|0;l=f[g>>2]|0;l=j-l|0;f[a>>2]=j;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;j=f[g>>2]|0;l=j+l|0;b[l>>0]=k;u=a;f[a+936>>2]=5;break a}c=d;do{k=b[c>>0]|0;j=f[(g+4|0)>>2]|0;l=j-(f[g>>2]|0)|0;f[a>>2]=j;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;b[(f[g>>2]|0)+l>>0]=k;c=c+1|0}while((c|0)!=(d+e|0|0));l=i+104|0;e=f[(g+4|0)>>2]|0;j=f[g>>2]|0;j=e-j|0;f[a>>2]=e;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,8,a+8|0)|0;e=f[g>>2]|0;j=e+j|0;e=l;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;k=j;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;j=j+4|0;b[j>>0]=l;b[j+1>>0]=l>>8;b[j+2>>0]=l>>16;b[j+3>>0]=l>>24;j=i+112|0;j=b[j>>0]|0;l=f[(g+4|0)>>2]|0;k=f[g>>2]|0;k=l-k|0;f[a>>2]=l;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;l=f[g>>2]|0;k=l+k|0;b[k>>0]=j;k=i+113|0;k=b[k>>0]|0;j=f[(g+4|0)>>2]|0;l=f[g>>2]|0;l=j-l|0;f[a>>2]=j;b[(a+8|0)>>0]=0;f[(a+4|0)>>2]=f[a>>2];V_(g,a+4|0,1,a+8|0)|0;j=f[g>>2]|0;l=j+l|0;b[l>>0]=k;u=a;f[a+936>>2]=5;break a}}function P8(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a+184>>2]|0;a:{do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24224;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+144|0)>>2]|0;if(d>>>0<(f[c+148>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+144|0)>>2]|0;b[d+24>>0]=0;f[(c+144|0)>>2]=e+32}else B$(c+140|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24268;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+156|0)>>2]|0;if(d>>>0<(f[c+160>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+156|0)>>2]|0;b[d+24>>0]=0;f[(c+156|0)>>2]=e+32}else C$(c+152|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24312;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+84|0)>>2]|0;if(d>>>0<(f[c+88>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+84|0)>>2]|0;b[d+24>>0]=0;f[(c+84|0)>>2]=e+32}else D$(c+80|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24356;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+168|0)>>2]|0;if(d>>>0<(f[c+172>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+168|0)>>2]|0;b[d+24>>0]=0;f[(c+168|0)>>2]=e+32}else C$(c+164|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24400;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+180|0)>>2]|0;if(d>>>0<(f[c+184>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+180|0)>>2]|0;b[d+24>>0]=0;f[(c+180|0)>>2]=e+32}else E$(c+176|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24444;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+36|0)>>2]|0;if(d>>>0<(f[c+40>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+36|0)>>2]|0;b[d+24>>0]=0;f[(c+36|0)>>2]=e+32}else A$(c+32|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[52691]|0;f[a>>2]=24488;f[(a+16|0)>>2]=a;b[(a+24|0)>>0]=0;d=f[(c+204|0)>>2]|0;if(d>>>0<(f[c+208>>2]|0)>>>0){f[d+16>>2]=d;e=f[(a+16|0)>>2]|0;nh[f[(f[e>>2]|0)+12>>2]&1023](e,d);e=f[(c+204|0)>>2]|0;b[d+24>>0]=0;f[(c+204|0)>>2]=e+32}else z$(c+200|0,a,a+24|0);c=f[(a+16|0)>>2]|0;do if((a|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);d=f[52691]|0;e=Wpb(24)|0;f[e>>2]=24532;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;c=f[(d+120|0)>>2]|0;f[e+20>>2]=0;f[e+4>>2]=24576;f[(a+16|0)>>2]=e;b[(a+24|0)>>0]=0;if(c>>>0<(f[d+124>>2]|0)>>>0){f[c+16>>2]=e;f[(a+16|0)>>2]=0;b[c+24>>0]=0;f[(d+120|0)>>2]=c+32;c=0;d=0}else{F$(d+116|0,a,a+24|0);d=f[(a+16|0)>>2]|0;c=d}if((a|0)==(c|0)){fh[f[(f[d>>2]|0)+16>>2]&2047](d);e=f[52691]|0;e=e+228|0;e=f[e>>2]|0;oOa(e)|0;n[(a+24|0)>>2]=.07500000298023224;d=(a+24|0)+4|0;n[d>>2]=.07500000298023224;d=(a+24|0)+8|0;n[d>>2]=.07500000298023224;nOa(e,a+24|0);d=(a+24|0)+4|0;c=(a+24|0)+8|0;g=(a+24|0)+12|0;h=(a+24|0)+16|0;i=(a+24|0)+20|0;j=(a+24|0)+24|0;b[j>>0]=0;j=(a+24|0)+25|0;b[j>>0]=1;f[(a+24|0)>>2]=1053885931;f[d>>2]=1053885931;f[c>>2]=1062274539;n[g>>2]=.925000011920929;n[h>>2]=.925000011920929;n[i>>2]=.925000011920929;pOa(e,a+24|0);i=(a+24|0)+4|0;h=(a+24|0)+8|0;g=(a+24|0)+12|0;c=(a+24|0)+16|0;d=(a+24|0)+20|0;j=(a+24|0)+24|0;b[j>>0]=0;j=(a+24|0)+25|0;b[j>>0]=1;f[(a+24|0)>>2]=-1093597717;f[i>>2]=-1093597717;f[h>>2]=1062274539;n[g>>2]=.10000000149011612;n[c>>2]=.10000000149011612;n[d>>2]=.20000000298023224;pOa(e,a+24|0);u=a;f[a+1088>>2]=5;break a}if(!d){j=f[52691]|0;j=j+228|0;j=f[j>>2]|0;oOa(j)|0;n[(a+24|0)>>2]=.07500000298023224;i=(a+24|0)+4|0;n[i>>2]=.07500000298023224;i=(a+24|0)+8|0;n[i>>2]=.07500000298023224;nOa(j,a+24|0);i=(a+24|0)+4|0;h=(a+24|0)+8|0;g=(a+24|0)+12|0;e=(a+24|0)+16|0;d=(a+24|0)+20|0;c=(a+24|0)+24|0;b[c>>0]=0;c=(a+24|0)+25|0;b[c>>0]=1;f[(a+24|0)>>2]=1053885931;f[i>>2]=1053885931;f[h>>2]=1062274539;n[g>>2]=.925000011920929;n[e>>2]=.925000011920929;n[d>>2]=.925000011920929;pOa(j,a+24|0);d=(a+24|0)+4|0;e=(a+24|0)+8|0;g=(a+24|0)+12|0;h=(a+24|0)+16|0;i=(a+24|0)+20|0;c=(a+24|0)+24|0;b[c>>0]=0;c=(a+24|0)+25|0;b[c>>0]=1;f[(a+24|0)>>2]=-1093597717;f[d>>2]=-1093597717;f[e>>2]=1062274539;n[g>>2]=.10000000149011612;n[h>>2]=.10000000149011612;n[i>>2]=.20000000298023224;pOa(j,a+24|0);u=a;f[a+1088>>2]=5;break a}fh[f[(f[d>>2]|0)+20>>2]&2047](d);j=f[52691]|0;j=j+228|0;j=f[j>>2]|0;oOa(j)|0;n[(a+24|0)>>2]=.07500000298023224;i=(a+24|0)+4|0;n[i>>2]=.07500000298023224;i=(a+24|0)+8|0;n[i>>2]=.07500000298023224;nOa(j,a+24|0);i=(a+24|0)+4|0;h=(a+24|0)+8|0;g=(a+24|0)+12|0;e=(a+24|0)+16|0;d=(a+24|0)+20|0;c=(a+24|0)+24|0;b[c>>0]=0;c=(a+24|0)+25|0;b[c>>0]=1;f[(a+24|0)>>2]=1053885931;f[i>>2]=1053885931;f[h>>2]=1062274539;n[g>>2]=.925000011920929;n[e>>2]=.925000011920929;n[d>>2]=.925000011920929;pOa(j,a+24|0);d=(a+24|0)+4|0;e=(a+24|0)+8|0;g=(a+24|0)+12|0;h=(a+24|0)+16|0;i=(a+24|0)+20|0;c=(a+24|0)+24|0;b[c>>0]=0;c=(a+24|0)+25|0;b[c>>0]=1;f[(a+24|0)>>2]=-1093597717;f[d>>2]=-1093597717;f[e>>2]=1062274539;n[g>>2]=.10000000149011612;n[h>>2]=.10000000149011612;n[i>>2]=.20000000298023224;pOa(j,a+24|0);u=a;f[a+1088>>2]=5;break a}}
function i7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=f[a>>2]|0;e=g;j=(f[b>>2]|0)-e|0;o=g+(j>>2<<2)|0;p=a+4|0;h=f[p>>2]|0;n=a+8|0;m=f[n>>2]|0;b=h;d=m;if(h>>>0<m>>>0){if((o|0)==(h|0)){f[o>>2]=f[c>>2];f[p>>2]=(f[p>>2]|0)+4;p=o;return p|0}e=b-(o+4)|0;g=e>>2;b=o+(g<<2)|0;if(b>>>0<h>>>0){d=h;do{f[d>>2]=f[b>>2];b=b+4|0;d=(f[p>>2]|0)+4|0;f[p>>2]=d}while(b>>>0<h>>>0)}if(g|0)Jrb(h+(0-g<<2)|0,o|0,e|0)|0;if(o>>>0<=c>>>0)c=(f[p>>2]|0)>>>0>c>>>0?c+4|0:c;f[o>>2]=f[c>>2];p=o;return p|0}b=(b-e>>2)+1|0;if(b>>>0>1073741823)fob(a);m=d-e|0;h=m>>1;h=m>>2>>>0<536870911?(h>>>0<b>>>0?b:h):1073741823;m=o;i=j>>2;do if(!h){k=0;l=0}else if(h>>>0>1073741823)ud();else{l=Wpb(h<<2)|0;k=l;break}while(0);b=k+(i<<2)|0;e=b;d=k+(h<<2)|0;do if((i|0)==(h|0)){if((j|0)>0){b=b+(((h+1|0)/-2|0)<<2)|0;e=b;break}d=h<<2>>1;d=(d|0)==0?1:d;if(d>>>0>1073741823)ud();j=Wpb(d<<2)|0;b=j+(d>>>2<<2)|0;e=b;d=j+(d<<2)|0;if(k){Zpb(l);g=f[a>>2]|0}}while(0);f[b>>2]=f[c>>2];c=e+4|0;b=m-g|0;h=e+(0-(b>>2)<<2)|0;if((b|0)>0)Irb(h|0,g|0,b|0)|0;b=(f[p>>2]|0)-m|0;if((b|0)>0){Irb(c|0,o|0,b|0)|0;c=c+(b>>>2<<2)|0}b=f[a>>2]|0;f[a>>2]=h;f[p>>2]=c;f[n>>2]=d;if(!b){p=e;return p|0}Zpb(b);p=e;return p|0}function j7a(a){a=a|0;var b=0,c=0;c=Wpb(28)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=34296;b=c+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a>>2]=b;f[a+4>>2]=c;a=Zd()|0;f[b>>2]=a;return}function k7a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=34296;b=f[a+12>>2]|0;if(b|0)be(b|0);e=a+16|0;b=f[e>>2]|0;if(!b){Hpb(a);return}g=a+20|0;c=f[g>>2]|0;if((c|0)!=(b|0)){d=c;while(1){c=d+-8|0;f[g>>2]=c;d=f[d+-4>>2]|0;if(d){Ppb(d);c=f[g>>2]|0}if((c|0)==(b|0))break;else d=c}b=f[e>>2]|0}Zpb(b);Hpb(a);return}function l7a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=34296;b=f[a+12>>2]|0;if(b|0)be(b|0);e=a+16|0;b=f[e>>2]|0;if(!b){Hpb(a);Zpb(a);return}g=a+20|0;c=f[g>>2]|0;if((c|0)!=(b|0)){d=c;while(1){c=d+-8|0;f[g>>2]=c;d=f[d+-4>>2]|0;if(d){Ppb(d);c=f[g>>2]|0}if((c|0)==(b|0))break;else d=c}b=f[e>>2]|0}Zpb(b);Hpb(a);Zpb(a);return}function m7a(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+12>>2]|0;if(b|0)be(b|0);e=a+16|0;b=f[e>>2]|0;if(!b)return;d=a+20|0;a=f[d>>2]|0;if((a|0)!=(b|0)){c=a;while(1){a=c+-8|0;f[d>>2]=a;c=f[c+-4>>2]|0;if(c){Ppb(c);a=f[d>>2]|0}if((a|0)==(b|0))break;else c=a}b=f[e>>2]|0}Zpb(b);return}function n7a(a){a=a|0;Zpb(a);return}function o7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;h=n+16|0;j=n+8|0;g=n;f[h>>2]=0;m=h+4|0;f[m>>2]=0;f[j>>2]=0;l=j+4|0;f[l>>2]=0;i=Wpb(28)|0;f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=34296;k=i+12|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[a>>2]=k;f[a+4>>2]=i;a=Zd()|0;f[k>>2]=a;if(e){N6a(g,35633,b,d,1);a=f[g>>2]|0;b=g+4|0;e=f[b>>2]|0;f[g>>2]=0;f[b>>2]=0;f[h>>2]=a;a=f[m>>2]|0;f[m>>2]=e;if(a|0)Ppb(a);N6a(g,35632,c,d,1);a=f[g>>2]|0;c=g+4|0;d=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[j>>2]=a;a=f[l>>2]|0;f[l>>2]=d;if(a|0)Ppb(a)}else{N6a(g,35633,b,d,0);a=f[g>>2]|0;b=g+4|0;e=f[b>>2]|0;f[g>>2]=0;f[b>>2]=0;f[h>>2]=a;a=f[m>>2]|0;f[m>>2]=e;if(a|0)Ppb(a);N6a(g,35632,c,d,0);a=f[g>>2]|0;c=g+4|0;d=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[j>>2]=a;a=f[l>>2]|0;f[l>>2]=d;if(a|0)Ppb(a)}a=f[h>>2]|0;b=a;do if(a|0){a=f[a>>2]|0;if(a|0){Ld(f[k>>2]|0,a|0);e=i+20|0;a=f[e>>2]|0;if((a|0)==(f[i+24>>2]|0)){p7a(i+16|0,h);break}f[a>>2]=b;b=f[m>>2]|0;f[a+4>>2]=b;if(b){Npb(b);a=f[e>>2]|0}f[e>>2]=a+8}}while(0);a=f[j>>2]|0;b=a;do if(a|0){a=f[a>>2]|0;if(a|0){Ld(f[k>>2]|0,a|0);e=i+20|0;a=f[e>>2]|0;if((a|0)==(f[i+24>>2]|0)){p7a(i+16|0,j);break}f[a>>2]=b;b=f[l>>2]|0;f[a+4>>2]=b;if(b){Npb(b);a=f[e>>2]|0}f[e>>2]=a+8}}while(0);Me(f[k>>2]|0);a=f[l>>2]|0;if(a|0)Ppb(a);a=f[m>>2]|0;if(!a){u=n;return}Ppb(a);u=n;return}function p7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+4|0;c=f[m>>2]|0;d=f[a>>2]|0;i=c-d>>3;e=i+1|0;j=d;if(e>>>0>536870911)fob(a);l=a+8|0;k=(f[l>>2]|0)-d|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<e>>>0?e:g):536870911;do if(!g)h=0;else if(g>>>0>536870911)ud();else{h=Wpb(g<<3)|0;break}while(0);d=h+(i<<3)|0;e=d;k=h+(g<<3)|0;f[d>>2]=f[b>>2];g=f[b+4>>2]|0;f[h+(i<<3)+4>>2]=g;if(!g)g=j;else{Npb(g);c=f[m>>2]|0;g=f[a>>2]|0}b=d+8|0;if((c|0)!=(g|0)){do{j=c;c=c+-8|0;f[d+-8>>2]=f[c>>2];j=j+-4|0;f[d+-4>>2]=f[j>>2];f[c>>2]=0;f[j>>2]=0;d=e+-8|0;e=d}while((c|0)!=(g|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=b;f[l>>2]=k;e=g;if((c|0)!=(e|0))do{d=f[c+-4>>2]|0;c=c+-8|0;if(d|0)Ppb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function q7a(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;if(!c)return;c=f[c>>2]|0;if(!c)return;Ld(f[a>>2]|0,c|0);d=a+8|0;c=f[d>>2]|0;if((c|0)==(f[a+12>>2]|0)){p7a(a+4|0,b);return}f[c>>2]=f[b>>2];a=f[b+4>>2]|0;f[c+4>>2]=a;if(a){Npb(a);c=f[d>>2]|0}f[d>>2]=c+8;return}function r7a(a,b){a=a|0;b=b|0;Me(f[a>>2]|0);return}function s7a(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f[b>>2]=0;He(f[a>>2]|0,35714,b|0);u=c;return (f[b>>2]|0)==1|0}function t7a(a,b){a=a|0;b=b|0;return Ce(f[a>>2]|0,b|0)|0}function u7a(a,b){a=a|0;b=b|0;return Ke(f[a>>2]|0,b|0)|0}function v7a(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f[b>>2]=0;He(f[a>>2]|0,35721,b|0);u=c;return f[b>>2]|0}function w7a(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f[b>>2]=0;He(f[a>>2]|0,35718,b|0);u=c;return f[b>>2]|0}function x7a(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f[b>>2]=0;He(f[a>>2]|0,35722,b|0);u=c;return f[b>>2]|0}function y7a(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f[b>>2]=0;He(f[a>>2]|0,35719,b|0);u=c;return f[b>>2]|0}function z7a(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;Ae(f[a>>2]|0,b|0,c|0,d|0,e|0,g|0,h|0);return}function A7a(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;Be(f[a>>2]|0,b|0,c|0,d|0,e|0,g|0,h|0);return}function B7a(){f[52828]=0;f[52829]=0;f[52830]=0;f[52831]=0;f[52832]=0;f[52833]=0;return}function C7a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+20|0;m=o+16|0;n=o;Ge(2978,n|0);f[a+44>>2]=f[n>>2];f[a+48>>2]=f[n+4>>2];f[a+52>>2]=f[n+8>>2];f[a+56>>2]=f[n+12>>2];Ge(35660,l|0);f[a>>2]=f[l>>2];Ge(35661,l|0);k=a+4|0;f[k>>2]=f[l>>2];Ge(36347,l|0);j=(f[l>>2]|0)>>>1;f[a+8>>2]=j>>>0>128?j:128;Ge(36349,l|0);f[a+12>>2]=f[l>>2];Ge(34921,l|0);f[a+16>>2]=f[l>>2];Ge(34024,l|0);f[a+20>>2]=f[l>>2];Ge(3379,l|0);f[a+24>>2]=f[l>>2];if(u6a()|0){Ge(36183,l|0);c=f[l>>2]|0}else c=0;f[a+28>>2]=c;j=a+64|0;e=f[k>>2]|0;g=a+68|0;h=f[g>>2]|0;d=f[j>>2]|0;c=h-d>>2;if(e>>>0>c>>>0){dia(j,e-c|0);e=f[k>>2]|0}else if(e>>>0<c>>>0){c=d+(e<<2)|0;if((c|0)!=(h|0))f[g>>2]=h+(~((h+-4-c|0)>>>2)<<2)}i=a+76|0;g=a+80|0;h=f[g>>2]|0;d=f[i>>2]|0;c=h-d>>2;if(e>>>0>c>>>0)dia(i,e-c|0);else if(e>>>0<c>>>0){c=d+(e<<2)|0;if((c|0)!=(h|0))f[g>>2]=h+(~((h+-4-c|0)>>>2)<<2)}Ge(3414,l|0);f[a+32>>2]=f[l>>2];if(y6a()|0){Ge(36063,l|0);c=f[l>>2]|0}else c=1;f[a+36>>2]=c;Fe(33901,n|0);f[a+40>>2]=f[n+4>>2];Ge(34016,l|0);c=(f[l>>2]|0)+-33984|0;d=a+60|0;f[d>>2]=c;if(f[k>>2]|0){c=0;do{Kd(c+33984|0);Ge(32873,l|0);f[(f[j>>2]|0)+(c<<2)>>2]=f[l>>2];Ge(34068,l|0);f[(f[i>>2]|0)+(c<<2)>>2]=f[l>>2];c=c+1|0}while(c>>>0<(f[k>>2]|0)>>>0);c=f[d>>2]|0}Kd(c+33984|0);Ge(34964,l|0);f[a+88>>2]=f[l>>2];Ge(34965,l|0);f[a+92>>2]=f[l>>2];Ge(35725,l|0);f[a+96>>2]=f[l>>2];Ge(36007,l|0);f[a+100>>2]=f[l>>2];k=t6a()|0;Ge(36006,l|0);c=f[l>>2]|0;f[a+104>>2]=c;if(k){Ge(36010,l|0);c=f[l>>2]|0}f[a+108>>2]=c;Ge(3317,l|0);f[a+112>>2]=f[l>>2];Ge(3333,l|0);f[a+116>>2]=f[l>>2];De(3107,n|0);b[a+120>>0]=(b[n>>0]|0)==1&1;b[a+121>>0]=(b[n+1>>0]|0)==1&1;b[a+122>>0]=(b[n+2>>0]|0)==1&1;b[a+123>>0]=(b[n+3>>0]|0)==1&1;Ge(2930,l|0);b[a+124>>0]=(f[l>>2]|0)==1&1;Ge(2886,l|0);f[a+128>>2]=f[l>>2];Fe(3106,n|0);f[a+132>>2]=f[n>>2];f[a+136>>2]=f[n+4>>2];f[a+140>>2]=f[n+8>>2];f[a+144>>2]=f[n+12>>2];Fe(2931,m|0);f[a+148>>2]=f[m>>2];Ge(2961,l|0);f[a+152>>2]=f[l>>2];Ge(32777,l|0);f[a+156>>2]=f[l>>2];Ge(34877,l|0);f[a+160>>2]=f[l>>2];Ge(32969,l|0);f[a+164>>2]=f[l>>2];Ge(32971,l|0);f[a+168>>2]=f[l>>2];Ge(32968,l|0);f[a+172>>2]=f[l>>2];Ge(32970,l|0);f[a+176>>2]=f[l>>2];Ge(2885,l|0);f[a+180>>2]=f[l>>2];Ge(2932,l|0);f[a+184>>2]=f[l>>2];Fe(2928,n|0);f[a+188>>2]=f[n>>2];f[a+192>>2]=f[n+4>>2];Fe(32824,m|0);f[a+196>>2]=f[m>>2];Fe(10752,m|0);f[a+200>>2]=f[m>>2];Ge(3088,n|0);f[a+204>>2]=f[n>>2];f[a+208>>2]=f[n+4>>2];f[a+212>>2]=f[n+8>>2];f[a+216>>2]=f[n+12>>2];Ge(2962,l|0);f[a+220>>2]=f[l>>2];Ge(2967,l|0);f[a+224>>2]=f[l>>2];Ge(2963,l|0);f[a+228>>2]=f[l>>2];Ge(34816,l|0);f[a+232>>2]=f[l>>2];Ge(36003,l|0);f[a+236>>2]=f[l>>2];Ge(36004,l|0);f[a+240>>2]=f[l>>2];Ge(2968,l|0);f[a+244>>2]=f[l>>2];Ge(36005,l|0);f[a+248>>2]=f[l>>2];Ge(2964,l|0);f[a+252>>2]=f[l>>2];Ge(2965,l|0);f[a+256>>2]=f[l>>2];Ge(2966,l|0);f[a+260>>2]=f[l>>2];Ge(34817,l|0);f[a+264>>2]=f[l>>2];Ge(34818,l|0);f[a+268>>2]=f[l>>2];Ge(34819,l|0);f[a+272>>2]=f[l>>2];n=(Le(3042)|0)<<24>>24==1&1;b[a+276>>0]=n;n=(Le(2884)|0)<<24>>24==1&1;b[a+277>>0]=n;n=(Le(2929)|0)<<24>>24==1&1;b[a+278>>0]=n;n=(Le(3024)|0)<<24>>24==1&1;b[a+279>>0]=n;n=(Le(32823)|0)<<24>>24==1&1;b[a+280>>0]=n;n=(Le(32926)|0)<<24>>24==1&1;b[a+281>>0]=n;n=(Le(32928)|0)<<24>>24==1&1;b[a+282>>0]=n;n=(Le(3089)|0)<<24>>24==1&1;b[a+283>>0]=n;n=(Le(2960)|0)<<24>>24==1&1;b[a+284>>0]=n;u=o;return}function D7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=a+44|0;h=a+48|0;if((f[g>>2]|0)==(b|0))if((f[h>>2]|0)==(c|0))if((f[a+52>>2]|0)==(d|0))if((f[a+56>>2]|0)==(e|0)){h=0;return h|0}rf(b|0,c|0,d|0,e|0);f[g>>2]=b;f[h>>2]=c;f[a+52>>2]=d;f[a+56>>2]=e;h=1;return h|0}function E7a(a,b){a=a|0;b=b|0;a=a+60|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Kd(b+33984|0);f[a>>2]=b;b=1;return b|0}function F7a(a,b){a=a|0;b=b|0;var c=0;c=a+60|0;a=a+64|0;if((f[(f[a>>2]|0)+(f[c>>2]<<2)>>2]|0)==(b|0)){c=0;return c|0}Pd(3553,b|0);f[(f[a>>2]|0)+(f[c>>2]<<2)>>2]=b;c=1;return c|0}function G7a(a,b){a=a|0;b=b|0;var c=0;c=a+60|0;a=a+76|0;if((f[(f[a>>2]|0)+(f[c>>2]<<2)>>2]|0)==(b|0)){c=0;return c|0}Pd(34067,b|0);f[(f[a>>2]|0)+(f[c>>2]<<2)>>2]=b;c=1;return c|0}function H7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;f[e>>2]=b;if(!b){u=g;return}c=f[a+64>>2]|0;d=f[a+68>>2]|0;a:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))f[c>>2]=0;c=c+4|0;if((c|0)==(d|0))break a;b=f[e>>2]|0}while(0);c=f[a+76>>2]|0;b=f[a+80>>2]|0;if((c|0)!=(b|0))do{if((f[c>>2]|0)==(f[e>>2]|0))f[c>>2]=0;c=c+4|0}while((c|0)!=(b|0));ee(1,e|0);u=g;return}function I7a(a,b){a=a|0;b=b|0;a=a+88|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Md(34962,b|0);f[a>>2]=b;b=1;return b|0}function J7a(a,b){a=a|0;b=b|0;a=a+92|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Md(34963,b|0);f[a>>2]=b;b=1;return b|0}function K7a(a,b,c){a=a|0;b=b|0;c=c|0;switch(b|0){case 34962:{a=a+88|0;if((f[a>>2]|0)==(c|0))a=0;else{Md(34962,c|0);f[a>>2]=c;a=1}break}case 34963:{a=a+92|0;if((f[a>>2]|0)==(c|0))a=0;else{Md(34963,c|0);f[a>>2]=c;a=1}break}default:a=0}return a|0}function L7a(a,b){a=a|0;b=b|0;switch(b|0){case 34962:{a=a+88|0;break}case 34963:{a=a+92|0;break}default:{b=0;return b|0}}b=f[a>>2]|0;return b|0}function M7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(!b){u=e;return}c=a+88|0;if((f[c>>2]|0)==(b|0))f[c>>2]=0;a=a+92|0;if((f[a>>2]|0)==(b|0))f[a>>2]=0;$d(1,d|0);u=e;return}function N7a(a,b){a=a|0;b=b|0;a=a+96|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}mf(b|0);f[a>>2]=b;b=1;return b|0}function O7a(a,b){a=a|0;b=b|0;a=a+100|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Od(36161,b|0);f[a>>2]=b;b=1;return b|0}function P7a(a,b){a=a|0;b=b|0;var c=0;c=a+104|0;a=a+108|0;if((f[c>>2]|0)==(b|0))if((f[a>>2]|0)==(b|0)){c=0;return c|0}Nd(36160,b|0);f[a>>2]=b;f[c>>2]=b;c=1;return c|0}function Q7a(a,b){a=a|0;b=b|0;a=a+104|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Nd(36009,b|0);f[a>>2]=b;b=1;return b|0}function R7a(a,b){a=a|0;b=b|0;a=a+108|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Nd(36008,b|0);f[a>>2]=b;b=1;return b|0}function S7a(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;if(!b){u=d;return}a=a+100|0;if((f[a>>2]|0)==(b|0))f[a>>2]=0;ce(1,c|0);u=d;return}function T7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(!b){u=e;return}c=a+104|0;if((f[c>>2]|0)==(b|0))f[c>>2]=0;a=a+108|0;if((f[a>>2]|0)==(b|0))f[a>>2]=0;ae(1,d|0);u=e;return}function U7a(a,b){a=a|0;b=b|0;a=a+112|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Ne(3317,b|0);f[a>>2]=b;b=1;return b|0}function V7a(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;i=c&1;j=d&1;k=e&1;l=f&1;m=a+120|0;g=a+121|0;if((h[m>>0]|0|0)==(c&1|0))if((h[g>>0]|0|0)==(d&1|0))if((h[a+122>>0]|0|0)==(e&1|0))if((h[a+123>>0]|0|0)==(f&1|0)){m=0;return m|0}Xd(i|0,j|0,k|0,l|0);b[m>>0]=i;b[g>>0]=j;b[a+122>>0]=k;b[a+123>>0]=l;m=1;return m|0}function W7a(a,c){a=a|0;c=c|0;var d=0;d=c&1;a=a+124|0;if((h[a>>0]|0|0)==(c&1|0)){d=0;return d|0}ge(d|0);b[a>>0]=d;d=1;return d|0}function X7a(a,b){a=a|0;b=b|0;a=a+128|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}ue(b|0);f[a>>2]=b;b=1;return b|0}function Y7a(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,g=0;f=a+132|0;g=a+136|0;if(+n[f>>2]==b)if(+n[g>>2]==c)if(+n[a+140>>2]==d)if(+n[a+144>>2]==e){g=0;return g|0}Vd(+b,+c,+d,+e);n[f>>2]=b;n[g>>2]=c;n[a+140>>2]=d;n[a+144>>2]=e;g=1;return g|0}function Z7a(a,b){a=a|0;b=b|0;a=a+152|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Wd(b|0);f[a>>2]=b;b=1;return b|0}function _7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=a+164|0;h=a+172|0;if((f[g>>2]|0)==(b|0))if((f[h>>2]|0)==(c|0))if((f[a+168>>2]|0)==(d|0))if((f[a+176>>2]|0)==(e|0)){h=0;return h|0}Rd(b|0,c|0,d|0,e|0);f[g>>2]=b;f[h>>2]=c;f[a+168>>2]=d;f[a+176>>2]=e;h=1;return h|0}function $7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+164|0;e=a+168|0;if((f[d>>2]|0)==(b|0))if((f[e>>2]|0)==(b|0))if((f[a+172>>2]|0)==(c|0))if((f[a+176>>2]|0)==(c|0)){e=0;return e|0}Qd(b|0,c|0);f[e>>2]=b;f[d>>2]=b;f[a+176>>2]=c;f[a+172>>2]=c;e=1;return e|0}function a8a(a,b){a=a|0;b=b|0;a=a+184|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}fe(b|0);f[a>>2]=b;b=1;return b|0}function b8a(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+188|0;a=a+192|0;if(+n[d>>2]==b)if(+n[a>>2]==c){d=0;return d|0}he(+b,+c);n[d>>2]=b;n[a>>2]=c;d=1;return d|0}function c8a(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+196|0;a=a+200|0;if(+n[d>>2]==b)if(+n[a>>2]==c){d=0;return d|0}Oe(+b,+c);n[d>>2]=b;n[a>>2]=c;d=1;return d|0}function d8a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=a+204|0;h=a+208|0;if((f[g>>2]|0)==(b|0))if((f[h>>2]|0)==(c|0))if((f[a+212>>2]|0)==(d|0))if((f[a+216>>2]|0)==(e|0)){h=0;return h|0}Qe(b|0,c|0,d|0,e|0);f[g>>2]=b;f[h>>2]=c;f[a+212>>2]=d;f[a+216>>2]=e;h=1;return h|0}function e8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+220|0;g=a+232|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(b|0))if((f[a+224>>2]|0)==(c|0))if((f[a+236>>2]|0)==(c|0))if((f[a+228>>2]|0)==(d|0))if((f[a+240>>2]|0)==(d|0)){g=0;return g|0}Se(b|0,c|0,d|0);f[g>>2]=b;f[e>>2]=b;f[a+236>>2]=c;f[a+224>>2]=c;f[a+240>>2]=d;f[a+228>>2]=d;g=1;return g|0}function f8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+220|0;g=a+224|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(c|0))if((f[a+228>>2]|0)==(d|0)){g=0;return g|0}Te(1028,b|0,c|0,d|0);f[e>>2]=b;f[g>>2]=c;f[a+228>>2]=d;g=1;return g|0}function g8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+232|0;g=a+236|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(c|0))if((f[a+240>>2]|0)==(d|0)){g=0;return g|0}Te(1029,b|0,c|0,d|0);f[e>>2]=b;f[g>>2]=c;f[a+240>>2]=d;g=1;return g|0}function h8a(a,b){a=a|0;b=b|0;var c=0;c=a+244|0;a=a+248|0;if((f[c>>2]|0)==(b|0))if((f[a>>2]|0)==(b|0)){c=0;return c|0}Ue(b|0);f[a>>2]=b;f[c>>2]=b;c=1;return c|0}function i8a(a,b){a=a|0;b=b|0;a=a+244|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Ve(1028,b|0);f[a>>2]=b;b=1;return b|0}function j8a(a,b){a=a|0;b=b|0;a=a+248|0;if((f[a>>2]|0)==(b|0)){b=0;return b|0}Ve(1029,b|0);f[a>>2]=b;b=1;return b|0}function k8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+252|0;g=a+264|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(b|0))if((f[a+256>>2]|0)==(c|0))if((f[a+268>>2]|0)==(c|0))if((f[a+260>>2]|0)==(d|0))if((f[a+272>>2]|0)==(d|0)){g=0;return g|0}We(b|0,c|0,d|0);f[g>>2]=b;f[e>>2]=b;f[a+268>>2]=c;f[a+256>>2]=c;f[a+272>>2]=d;f[a+260>>2]=d;g=1;return g|0}function l8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+252|0;g=a+256|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(c|0))if((f[a+260>>2]|0)==(d|0)){g=0;return g|0}Xe(1028,b|0,c|0,d|0);f[e>>2]=b;f[g>>2]=c;f[a+260>>2]=d;g=1;return g|0}function m8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+264|0;g=a+268|0;if((f[e>>2]|0)==(b|0))if((f[g>>2]|0)==(c|0))if((f[a+272>>2]|0)==(d|0)){g=0;return g|0}Xe(1029,b|0,c|0,d|0);f[e>>2]=b;f[g>>2]=c;f[a+272>>2]=d;g=1;return g|0}function n8a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+220|0;d=(f[i>>2]|0)==(b|0);if(d)if((f[a+232>>2]|0)==(b|0)){i=0;return i|0}e=f[a+224>>2]|0;g=a+236|0;if((e|0)==(f[g>>2]|0)){c=f[a+228>>2]|0;if((c|0)==(f[a+240>>2]|0)){Se(b|0,e|0,c|0);c=a+232|0}else h=6}else h=6;if((h|0)==6){if(!d)Te(1028,b|0,e|0,f[a+228>>2]|0);c=a+232|0;if((f[c>>2]|0)!=(b|0))Te(1029,b|0,f[g>>2]|0,f[a+240>>2]|0)}f[c>>2]=b;f[i>>2]=b;i=1;return i|0}function o8a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+224|0;d=(f[i>>2]|0)==(b|0);if(d)if((f[a+236>>2]|0)==(b|0)){i=0;return i|0}e=f[a+220>>2]|0;g=a+232|0;if((e|0)==(f[g>>2]|0)){c=f[a+228>>2]|0;if((c|0)==(f[a+240>>2]|0)){Se(e|0,b|0,c|0);c=a+236|0}else h=6}else h=6;if((h|0)==6){if(!d)Te(1028,e|0,b|0,f[a+228>>2]|0);c=a+236|0;if((f[c>>2]|0)!=(b|0))Te(1029,f[g>>2]|0,b|0,f[a+240>>2]|0)}f[c>>2]=b;f[i>>2]=b;i=1;return i|0}function p8a(a,c){a=a|0;c=c|0;a=a+276|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(3042);else ie(3042);b[a>>0]=c&1;c=1;return c|0}function q8a(a,c){a=a|0;c=c|0;a=a+277|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(2884);else ie(2884);b[a>>0]=c&1;c=1;return c|0}function r8a(a,c){a=a|0;c=c|0;a=a+278|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(2929);else ie(2929);b[a>>0]=c&1;c=1;return c|0}function s8a(a,c){a=a|0;c=c|0;a=a+280|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(32823);else ie(32823);b[a>>0]=c&1;c=1;return c|0}function t8a(a,c){a=a|0;c=c|0;a=a+283|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(3089);else ie(3089);b[a>>0]=c&1;c=1;return c|0}function u8a(a,c){a=a|0;c=c|0;a=a+284|0;if((h[a>>0]|0|0)==(c&1|0)){c=0;return c|0}if(c)pe(2960);else ie(2960);b[a>>0]=c&1;c=1;return c|0}function v8a(a){a=a|0;f[a>>2]=33071;f[a+4>>2]=33071;f[a+8>>2]=9729;f[a+12>>2]=9729;n[a+16>>2]=1.0;return}function w8a(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=(c|0)==0?b:c;return}function x8a(a,b,c){a=a|0;b=b|0;c=c|0;f[a+8>>2]=b;f[a+12>>2]=(c|0)==0?b:c;return}function y8a(a,b){a=a|0;b=+b;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=c+4|0;n[e>>2]=b;n[d>>2]=1.0;f[a+16>>2]=f[(b>1.0?e:d)>>2];u=c;return}function z8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a>>2]|0;if((f[a+28>>2]|0)!=(f[e+44>>2]|0)){a=0;return a|0}f[e+16>>2]=b;f[e+20>>2]=c;c=a+8|0;e=e+24|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];f[e+16>>2]=f[c+16>>2];switch(d|0){case 1:{b=6409;break}case 2:{b=6410;break}case 3:{b=6407;break}default:b=6408}c=f[a>>2]|0;f[c+12>>2]=b;f[a+32>>2]=f[(f[52828]|0)+(f[52827]<<2)>>2];if(!c)b=0;else b=f[c+8>>2]|0;F7a(211248,b)|0;a=1;return a|0}function A8a(a,c,d){a=a|0;c=c|0;d=d|0;do if(!a){a=f[c>>2]|0;if((f[c+28>>2]|0)==(f[a+44>>2]|0))if(!d){b[a+48>>0]=0;a=f[c+44>>2]|0;if(!a)break;fh[a&2047](f[c+36>>2]|0);break}else{B8a(a);F7a(211248,f[c+32>>2]|0)|0;b[(f[c>>2]|0)+48>>0]=2;a=f[c+40>>2]|0;if(!a)break;fh[a&2047](f[c+36>>2]|0);break}}else if(!c)return;while(0);a=f[c+4>>2]|0;if(a|0)Ppb(a);Zpb(c);return}function B8a(a){a=a|0;var c=0,d=0,e=0;e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;d=f6a()|0;do if((f[d>>2]|0)>>>0<=2){d=f[a+16>>2]|0;if(!(d+-1&d)){d=f[a+20>>2]|0;if(!(d+-1&d))break}_e(3553,10242,33071);_e(3553,10243,33071);c=f[a+36>>2]|0;switch(c|0){case 9987:case 9985:{c=9729;break}case 9986:case 9984:{c=9728;break}default:{}}_e(3553,10241,c|0);c=f[a+32>>2]|0;switch(c|0){case 9987:case 9985:{c=9729;break}case 9986:case 9984:{c=9728;break}default:{}}_e(3553,10240,c|0);F7a(211248,e)|0;return}while(0);_e(3553,10242,f[a+24>>2]|0);_e(3553,10243,f[a+28>>2]|0);d=a+36|0;_e(3553,10241,f[d>>2]|0);c=f[a+32>>2]|0;switch(c|0){case 9987:case 9985:{c=9729;break}case 9986:case 9984:{c=9728;break}default:{}}_e(3553,10240,c|0);d=f[d>>2]|0;switch(d|0){case 9987:case 9985:{c=9729;break}case 9986:case 9984:{c=9728;break}default:{F7a(211248,e)|0;return}}if((c|0)==(d|0)){F7a(211248,e)|0;return}ze(3553);d=(p6a()|0)+4|0;if(!(b[d>>0]|0)){F7a(211248,e)|0;return}Ze(3553,34046,+(+n[a+40>>2]));F7a(211248,e)|0;return}function C8a(a,c){a=a|0;c=c|0;if(!a){a=f[c>>2]|0;if((f[c+28>>2]|0)==(f[a+44>>2]|0)){b[a+48>>0]=0;a=f[c+44>>2]|0;if(a|0)fh[a&2047](f[c+36>>2]|0)}}else if(!c)return;a=f[c+4>>2]|0;if(a|0)Ppb(a);Zpb(c);return}function D8a(a){a=a|0;var b=0;b=u;u=u+16|0;E8a(a,b);ye(1,(f[a>>2]|0)+8|0);u=b;return}function E8a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=Wpb(64)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=34324;g=d+12|0;f[g>>2]=0;e=d+16|0;f[e>>2]=0;f[d+20>>2]=0;f[d+24>>2]=6408;f[d+28>>2]=0;f[d+32>>2]=0;f[d+36>>2]=33071;f[d+40>>2]=33071;f[d+44>>2]=9729;f[d+48>>2]=9729;n[d+52>>2]=1.0;f[d+56>>2]=0;b[d+60>>0]=2;f[a>>2]=g;f[a+4>>2]=d;Npb(d);Opb(d);c=f[e>>2]|0;f[g>>2]=g;f[e>>2]=d;if(!c){Ppb(d);return}Qpb(c);Ppb(d);return}function F8a(a){a=a|0;var b=0;f[a>>2]=34324;H7a(211248,f[a+20>>2]|0);b=f[a+16>>2]|0;if(!b){Hpb(a);return}Qpb(b);Hpb(a);return}function G8a(a){a=a|0;var b=0;f[a>>2]=34324;H7a(211248,f[a+20>>2]|0);b=f[a+16>>2]|0;if(!b){Hpb(a);Zpb(a);return}Qpb(b);Hpb(a);Zpb(a);return}function H8a(a){a=a|0;H7a(211248,f[a+20>>2]|0);a=f[a+16>>2]|0;if(!a)return;Qpb(a);return}function I8a(a){a=a|0;Zpb(a);return}function J8a(a){a=a|0;var b=0;b=f6a()|0;if((f[b>>2]|0)>>>0>2){b=1;return b|0}b=f[a+16>>2]|0;if(b+-1&b|0){b=0;return b|0}b=f[a+20>>2]|0;b=(b+-1&b|0)==0;return b|0}function K8a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;switch(c<<24>>24){case 1:{f[g>>2]=-16711936;e=a+44|0;f[e>>2]=(f[e>>2]|0)+1;f[a+12>>2]=6409;f[a+16>>2]=2;f[a+20>>2]=2;f[a+24>>2]=10497;f[a+28>>2]=10497;f[a+32>>2]=9728;f[a+36>>2]=9728;n[a+40>>2]=1.0;e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;d=f[52840]|0;U7a(211248,2)|0;Ye(3553,0,6409,2,2,0,6409,5121,g|0);B8a(a);U7a(211248,d)|0;F7a(211248,e)|0;u=h;return}case 2:{e=g;f[e>>2]=-256;f[e+4>>2]=-16711681;e=a+44|0;f[e>>2]=(f[e>>2]|0)+1;f[a+12>>2]=6410;f[a+16>>2]=2;f[a+20>>2]=2;f[a+24>>2]=10497;f[a+28>>2]=10497;f[a+32>>2]=9728;f[a+36>>2]=9728;n[a+40>>2]=1.0;e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;d=f[52840]|0;U7a(211248,2)|0;Ye(3553,0,6410,2,2,0,6410,5121,g|0);B8a(a);U7a(211248,d)|0;F7a(211248,e)|0;u=h;return}case 3:{c=g;d=197798;e=c+12|0;do{b[c>>0]=b[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));e=a+44|0;f[e>>2]=(f[e>>2]|0)+1;f[a+12>>2]=6407;f[a+16>>2]=2;f[a+20>>2]=2;f[a+24>>2]=10497;f[a+28>>2]=10497;f[a+32>>2]=9728;f[a+36>>2]=9728;n[a+40>>2]=1.0;e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;d=f[52840]|0;U7a(211248,2)|0;Ye(3553,0,6407,2,2,0,6407,5121,g|0);B8a(a);U7a(211248,d)|0;F7a(211248,e)|0;u=h;return}default:{c=g;d=197810;e=c+16|0;do{b[c>>0]=b[d>>0]|0;c=c+1|0;d=d+1|0}while((c|0)<(e|0));e=a+44|0;f[e>>2]=(f[e>>2]|0)+1;f[a+12>>2]=6408;f[a+16>>2]=2;f[a+20>>2]=2;f[a+24>>2]=10497;f[a+28>>2]=10497;f[a+32>>2]=9728;f[a+36>>2]=9728;n[a+40>>2]=1.0;e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;d=f[52840]|0;U7a(211248,2)|0;Ye(3553,0,6408,2,2,0,6408,5121,g|0);B8a(a);U7a(211248,d)|0;F7a(211248,e)|0;u=h;return}}}function L8a(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;j=a+44|0;f[j>>2]=(f[j>>2]|0)+1;f[a+12>>2]=b;f[a+16>>2]=c;f[a+20>>2]=d;j=a+24|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];f[j+12>>2]=f[i+12>>2];f[j+16>>2]=f[i+16>>2];i=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;j=f[52840]|0;do if(h|0){if(c&1|0){U7a(211248,1)|0;break}if(!(c&3)){U7a(211248,4)|0;break}else{U7a(211248,2)|0;break}}while(0);Ye(3553,0,b|0,c|0,d|0,0,e|0,g|0,h|0);B8a(a);U7a(211248,j)|0;F7a(211248,i)|0;return}function M8a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a:do if((b|0)<34041){switch(b|0){case 6402:break;default:{g=5121;h=b;break a}}g=5123;h=6402}else{switch(b|0){case 34041:break;default:{g=5121;h=b;break a}}h=f6a()|0;g=34042;h=(f[h>>2]|0)>>>0>2?35056:34041}while(0);i=a+44|0;f[i>>2]=(f[i>>2]|0)+1;f[a+12>>2]=h;f[a+16>>2]=c;f[a+20>>2]=d;i=a+24|0;f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[i+12>>2]=f[e+12>>2];f[i+16>>2]=f[e+16>>2];e=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[a+8>>2]|0)|0;i=f[52840]|0;Ye(3553,0,h|0,c|0,d|0,0,b|0,g|0,0);B8a(a);U7a(211248,i)|0;F7a(211248,e)|0;return}function N8a(a,c,d,e,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,o=0,p=0,q=0,r=0;if((c|0)==0|(d|0)==0){if(!k)return;fh[k&2047](i);return}if(!(e<<24>>24))h=(h&255)>3?3:h<<24>>24==2?1:h;m=Wpb(48)|0;f[m>>2]=0;o=m+4|0;f[o>>2]=0;p=m+8|0;f[p>>2]=33071;f[m+12>>2]=33071;f[m+16>>2]=9729;f[m+20>>2]=9729;n[m+24>>2]=1.0;q=a+44|0;f[q>>2]=(f[q>>2]|0)+1;r=f[a>>2]|0;l=f[a+4>>2]|0;if(!l)ud();l=Rpb(l)|0;if(!l)ud();f[m>>2]=r;f[o>>2]=l;r=f[q>>2]|0;f[p>>2]=f[g>>2];f[p+4>>2]=f[g+4>>2];f[p+8>>2]=f[g+8>>2];f[p+12>>2]=f[g+12>>2];f[p+16>>2]=f[g+16>>2];f[m+28>>2]=r;f[m+36>>2]=i;f[m+40>>2]=j;f[m+44>>2]=k;b[a+48>>0]=1;sf(c|0,d|0,e&255|0,h&255|0,m|0,10,84,806);return}function O8a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=f[b>>2]|0;if(!d)return;e=f[b+12>>2]|0;L8a(a,e,f[b+4>>2]|0,f[b+8>>2]|0,e,f[b+16>>2]|0,d,c);return}function P8a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;i=f[c>>2]|0;if(!i)return;N8a(a,i,f[c+4>>2]|0,b[c+9>>0]|0,d,b[c+8>>0]|0,e,g,h);return}function Q8a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+256|0;i=o+48|0;m=o+64|0;e=o+32|0;g=o+16|0;j=o;if(!a){n=0;u=o;return n|0}n=m+8|0;f[m>>2]=11780;l=m+108|0;f[l>>2]=11800;f[m+4>>2]=0;Yfb(m+108|0,n);f[m+180>>2]=0;f[m+184>>2]=-1;f[m>>2]=34356;f[m+108>>2]=34376;R8a(n);k=m+72|0;if(!(f[k>>2]|0)){a=Jdb(a,197826)|0;f[k>>2]=a;if(!a)h=5;else{f[m+96>>2]=12;a=m}}else h=5;if((h|0)==5){a=m+(f[(f[m>>2]|0)+-12>>2]|0)|0;Xfb(a,f[a+16>>2]|4);a=m}if(!(f[m+(f[(f[a>>2]|0)+-12>>2]|0)+16>>2]|0)){jgb(m,0,0,2)|0;hgb(e,m);h=e+8|0;e=f[h+4>>2]|0;if((e|0)<0|(e|0)==0&(f[h>>2]|0)>>>0<1)e=0;else{hgb(g,m);e=f[g+8>>2]|0;if(c|0){h=Xpb(e+1|0)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];igb(m,i)|0;ggb(m,h,e)|0;b[h+e>>0]=0;a=f[c>>2]|0;f[c>>2]=h;if(a|0)_pb(a)}if(!d)e=1;else{f[d>>2]=e;e=1}}}else e=0;f[m>>2]=34356;f[l>>2]=34376;f[n>>2]=34392;a=f[k>>2]|0;if(a|0){S8a(n)|0;if(!(Pdb(a)|0))f[k>>2]=0}if(b[m+104>>0]|0){a=f[m+40>>2]|0;if(a|0)_pb(a)}if(b[m+105>>0]|0){a=f[m+64>>2]|0;if(a|0)_pb(a)}Teb(n);Ffb(m,34452);Oeb(l);n=e;u=o;return n|0}function R8a(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;agb(a);f[a>>2]=34392;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;c=a+52|0;i=a+68|0;e=c;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));d[c+44>>1]=0;b[c+46>>0]=0;c=a+4|0;Bpb(h,c);g=Epb(h,215008)|0;Dhb(h);if(!g){i=f[a>>2]|0;i=i+12|0;i=f[i>>2]|0;Qg[i&127](a,0,4096)|0;u=j;return}Bpb(h,c);g=Chb(h,215008)|0;f[i>>2]=g;Dhb(h);i=f[i>>2]|0;i=(Ng[f[(f[i>>2]|0)+28>>2]&511](i)|0)&1;b[a+98>>0]=i;i=f[a>>2]|0;i=i+12|0;i=f[i>>2]|0;Qg[i&127](a,0,4096)|0;u=j;return}function S8a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;l=a+64|0;if(!(f[l>>2]|0)){l=0;u=m;return l|0}j=a+68|0;c=f[j>>2]|0;if(!c)ud();i=a+92|0;d=f[i>>2]|0;do if(!(d&16)){if(d&8|0){e=a+80|0;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;do if(!(b[a+98>>0]|0)){e=Ng[f[(f[c>>2]|0)+24>>2]&511](c)|0;h=a+36|0;g=f[h>>2]|0;c=(f[a+40>>2]|0)-g|0;if((e|0)>0){d=0;c=(X((f[a+16>>2]|0)-(f[a+12>>2]|0)|0,e)|0)+c|0;break}d=f[a+12>>2]|0;if((d|0)==(f[a+16>>2]|0))d=0;else{e=f[j>>2]|0;j=a+32|0;g=Ug[f[(f[e>>2]|0)+32>>2]&31](e,k,f[j>>2]|0,g,d-(f[a+8>>2]|0)|0)|0;d=1;c=c-g+(f[h>>2]|0)-(f[j>>2]|0)|0}}else{d=0;c=(f[a+16>>2]|0)-(f[a+12>>2]|0)|0}while(0);if($db(f[l>>2]|0,0-c|0,1)|0){l=-1;u=m;return l|0}if(d){j=k;k=f[j+4>>2]|0;l=a+72|0;f[l>>2]=f[j>>2];f[l+4>>2]=k}l=f[a+32>>2]|0;f[a+40>>2]=l;f[a+36>>2]=l;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[i>>2]=0}}else{if((f[a+24>>2]|0)!=(f[a+20>>2]|0))if((Pg[f[(f[a>>2]|0)+52>>2]&255](a,-1)|0)==-1){l=-1;u=m;return l|0}e=a+72|0;g=a+32|0;c=a+52|0;a:while(1){i=f[j>>2]|0;d=f[g>>2]|0;d=Ug[f[(f[i>>2]|0)+20>>2]&31](i,e,d,d+(f[c>>2]|0)|0,k)|0;i=f[g>>2]|0;a=(f[k>>2]|0)-i|0;if((ceb(i,1,a,f[l>>2]|0)|0)!=(a|0)){c=-1;d=24;break}switch(d|0){case 1:break;case 2:{c=-1;d=24;break a}default:{d=10;break a}}}if((d|0)==10){if(!(Rdb(f[l>>2]|0)|0))break;else c=-1;u=m;return c|0}else if((d|0)==24){u=m;return c|0}}while(0);l=0;u=m;return l|0}function T8a(a){a=a|0;var c=0,d=0;f[a>>2]=34392;c=a+64|0;d=f[c>>2]|0;if(d|0){S8a(a)|0;if(!(Pdb(d)|0))f[c>>2]=0}if(b[a+96>>0]|0){c=f[a+32>>2]|0;if(c|0)_pb(c)}if(b[a+97>>0]|0){c=f[a+56>>2]|0;if(c|0)_pb(c)}Teb(a);return}function U8a(a){a=a|0;var c=0,d=0;f[a>>2]=34392;c=a+64|0;d=f[c>>2]|0;if(d|0){S8a(a)|0;if(!(Pdb(d)|0))f[c>>2]=0}if(b[a+96>>0]|0){c=f[a+32>>2]|0;if(c|0)_pb(c)}if(b[a+97>>0]|0){c=f[a+56>>2]|0;if(c|0)_pb(c)}Teb(a);Zpb(a);return}function V8a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=Chb(c,215008)|0;f[a+68>>2]=c;e=a+98|0;g=b[e>>0]|0;c=Ng[f[(f[c>>2]|0)+28>>2]&511](c)|0;b[e>>0]=c&1;if((g&255|0)==(c&1|0))return;d=a+8|0;g=a+96|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;d=(b[g>>0]|0)!=0;if(c){e=a+32|0;if(d){c=f[e>>2]|0;if(c|0)_pb(c)}d=a+97|0;b[g>>0]=b[d>>0]|0;g=a+60|0;f[a+52>>2]=f[g>>2];a=a+56|0;f[e>>2]=f[a>>2];f[g>>2]=0;f[a>>2]=0;b[d>>0]=0;return}if(!d){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(a+44|0)){e=f[a+52>>2]|0;f[a+60>>2]=e;f[a+56>>2]=d;b[a+97>>0]=0;a=Xpb(e)|0;f[c>>2]=a;b[g>>0]=1;return}}g=f[a+52>>2]|0;f[a+60>>2]=g;g=Xpb(g)|0;f[a+56>>2]=g;b[a+97>>0]=1;return}function W8a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=a+8|0;j=a+96|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;if(b[j>>0]|0){e=f[a+32>>2]|0;if(e|0)_pb(e)}i=a+97|0;if(b[i>>0]|0){e=f[a+56>>2]|0;if(e|0)_pb(e)}e=a+52|0;f[e>>2]=d;if(d>>>0>8){e=b[a+98>>0]|0;if((c|0)!=0&e<<24>>24!=0){g=0;h=c}else{g=1;h=Xpb(d)|0}f[a+32>>2]=h}else{f[a+32>>2]=a+44;f[e>>2]=8;g=0;e=b[a+98>>0]|0}b[j>>0]=g;if(e<<24>>24){f[a+60>>2]=0;c=0;d=0;j=a+56|0;f[j>>2]=d;b[i>>0]=c;return a|0}e=(d|0)>8?d:8;f[a+60>>2]=e;if((c|0)!=0&e>>>0>7){j=0;d=c;c=a+56|0;f[c>>2]=d;b[i>>0]=j;return a|0}c=1;d=Xpb(e)|0;j=a+56|0;f[j>>2]=d;b[i>>0]=c;return a|0}function X8a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;g=f[b+68>>2]|0;if(!g)ud();g=Ng[f[(f[g>>2]|0)+24>>2]&511](g)|0;h=b+64|0;if(!(f[h>>2]|0)){g=0;h=0;b=-1;c=-1}else if(((c|0)!=0|(d|0)!=0)&(g|0)<1){g=0;h=0;b=-1;c=-1}else if(e>>>0<3&(Ng[f[(f[b>>2]|0)+24>>2]&511](b)|0)==0){i=f[h>>2]|0;d=Brb(g|0,((g|0)<0)<<31>>31|0,c|0,d|0)|0;if(!($db(i,(g|0)>0?d:0,e)|0)){c=Beb(f[h>>2]|0)|0;h=b+72|0;g=f[h>>2]|0;h=f[h+4>>2]|0;b=c;c=((c|0)<0)<<31>>31}else{g=0;h=0;b=-1;c=-1}}else{g=0;h=0;b=-1;c=-1}i=a;f[i>>2]=g;f[i+4>>2]=h;i=a+8|0;f[i>>2]=b;f[i+4>>2]=c;return}function Y8a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;d=b+64|0;if(f[d>>2]|0)if(!(Ng[f[(f[b>>2]|0)+24>>2]&511](b)|0))if(!($db(f[d>>2]|0,f[c+8>>2]|0,0)|0)){e=c;d=f[e+4>>2]|0;b=b+72|0;f[b>>2]=f[e>>2];f[b+4>>2]=d;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];return}else{e=a;f[e>>2]=0;f[e+4>>2]=0;e=a+8|0;f[e>>2]=-1;f[e+4>>2]=-1;return}e=a;f[e>>2]=0;f[e+4>>2]=0;e=a+8|0;f[e>>2]=-1;f[e+4>>2]=-1;return}function Z8a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;t=u;u=u+16|0;s=t+4|0;o=t;m=a+64|0;if(!(f[m>>2]|0)){s=-1;u=t;return s|0}c=a+92|0;if(!(f[c>>2]&8)){f[a+24>>2]=0;f[a+20>>2]=0;f[a+28>>2]=0;q=(b[a+98>>0]|0)==0;r=f[(q?a+56|0:a+32|0)>>2]|0;q=r+(f[(q?a+60|0:a+52|0)>>2]|0)|0;f[a+8>>2]=r;r=a+12|0;f[r>>2]=q;f[a+16>>2]=q;f[c>>2]=8;d=1;c=q}else{c=a+12|0;d=0;r=c;c=f[c>>2]|0}if(!c){e=s+1|0;f[a+8>>2]=s;f[r>>2]=e;f[a+16>>2]=e}else e=c;q=a+16|0;if(d){c=f[q>>2]|0;n=0}else{c=f[q>>2]|0;n=(c-(f[a+8>>2]|0)|0)/2|0;n=n>>>0<4?n:4}do if((e|0)==(c|0)){c=a+8|0;Jrb(f[c>>2]|0,e+(0-n)|0,n|0)|0;if(b[a+98>>0]|0){d=f[c>>2]|0;d=zeb(d+n|0,1,(f[q>>2]|0)-n-d|0,f[m>>2]|0)|0;if(!d){d=-1;break}p=(f[c>>2]|0)+n|0;f[r>>2]=p;f[q>>2]=p+d;d=h[p>>0]|0;break}k=a+40|0;j=f[k>>2]|0;l=a+36|0;d=f[l>>2]|0;g=j;e=d;if((j|0)==(d|0)){j=a+32|0;d=g}else{j=a+32|0;Jrb(f[j>>2]|0,d|0,g-e|0)|0;e=f[l>>2]|0;d=f[k>>2]|0}g=f[j>>2]|0;e=g+(d-e)|0;f[l>>2]=e;if((g|0)==(a+44|0))d=8;else d=f[a+52>>2]|0;v=g+d|0;f[k>>2]=v;g=a+60|0;d=(f[g>>2]|0)-n|0;v=v-e|0;i=a+72|0;y=i;x=f[y+4>>2]|0;w=a+80|0;f[w>>2]=f[y>>2];f[w+4>>2]=x;e=zeb(e,1,v>>>0<d>>>0?v:d,f[m>>2]|0)|0;if(!e)d=-1;else{d=f[a+68>>2]|0;if(!d)ud();x=(f[l>>2]|0)+e|0;f[k>>2]=x;y=f[c>>2]|0;if((Zg[f[(f[d>>2]|0)+16>>2]&15](d,i,f[j>>2]|0,x,l,y+n|0,y+(f[g>>2]|0)|0,o)|0)==3){d=f[j>>2]|0;e=f[k>>2]|0;f[c>>2]=d;p=25}else{e=f[o>>2]|0;d=(f[c>>2]|0)+n|0;if((e|0)==(d|0))d=-1;else p=25}if((p|0)==25){f[r>>2]=d;f[q>>2]=e;d=h[d>>0]|0}}}else{d=h[e>>0]|0;c=a+8|0}while(0);if((f[c>>2]|0)==(s|0)){f[c>>2]=0;f[r>>2]=0;f[q>>2]=0}y=d;u=t;return y|0}function _8a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;if(!(f[a+64>>2]|0)){g=-1;return g|0}g=a+12|0;e=f[g>>2]|0;if((f[a+8>>2]|0)>>>0>=e>>>0){g=-1;return g|0}if((c|0)==-1){f[g>>2]=e+-1;g=0;return g|0}if(!(f[a+88>>2]&16)){d=c&255;a=e+-1|0;if((b[a>>0]|0)!=d<<24>>24){g=-1;return g|0}}else{d=c&255;a=e+-1|0}f[g>>2]=a;b[a>>0]=d;g=c;return g|0}function $8a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;h=y+8|0;t=y+4|0;v=y;w=a+64|0;if(!(f[w>>2]|0)){x=-1;u=y;return x|0}e=a+92|0;if(!(f[e>>2]&16)){f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;d=f[a+52>>2]|0;do if(d>>>0>8)if(!(b[a+98>>0]|0)){g=f[a+56>>2]|0;d=g+((f[a+60>>2]|0)+-1)|0;break}else{g=f[a+32>>2]|0;d=g+(d+-1)|0;break}else{d=0;g=0}while(0);f[a+24>>2]=g;o=a+20|0;f[o>>2]=g;r=a+28|0;f[r>>2]=d;f[e>>2]=16;q=o;n=r;s=g;p=d}else{o=a+20|0;g=f[o>>2]|0;p=a+28|0;q=o;n=p;r=p;s=g;p=f[p>>2]|0}m=(c|0)==-1;d=a+24|0;e=f[d>>2]|0;if(!m){if(!e){f[d>>2]=h;f[o>>2]=h;f[n>>2]=h+1;e=h}b[e>>0]=c;e=(f[d>>2]|0)+1|0;f[d>>2]=e;g=f[o>>2]|0}a:do if((e|0)==(g|0))x=32;else{b:do if(!(b[a+98>>0]|0)){k=a+32|0;h=f[k>>2]|0;f[t>>2]=h;l=a+68|0;i=f[l>>2]|0;if(!i)ud();j=a+72|0;a=a+52|0;g=Zg[f[(f[i>>2]|0)+12>>2]&15](i,j,g,e,v,h,h+(f[a>>2]|0)|0,t)|0;e=f[o>>2]|0;c:do if((f[v>>2]|0)!=(e|0)){while(1){if((g|0)==3){x=21;break}if(g>>>0>=2)break c;h=f[k>>2]|0;i=(f[t>>2]|0)-h|0;if((ceb(h,1,i,f[w>>2]|0)|0)!=(i|0))break c;if((g|0)!=1){x=28;break}g=f[v>>2]|0;h=f[d>>2]|0;f[q>>2]=g;f[n>>2]=h;e=g;g=e+(h-g)|0;f[d>>2]=g;h=f[l>>2]|0;if(!h){x=19;break}i=f[k>>2]|0;g=Zg[f[(f[h>>2]|0)+12>>2]&15](h,j,e,g,v,i,i+(f[a>>2]|0)|0,t)|0;e=f[o>>2]|0;if((f[v>>2]|0)==(e|0))break c}if((x|0)==19)ud();else if((x|0)==21){v=(f[d>>2]|0)-e|0;if((ceb(e,1,v,f[w>>2]|0)|0)!=(v|0))break}break b}while(0);d=-1;break a}else{v=e-g|0;if((ceb(g,1,v,f[w>>2]|0)|0)!=(v|0)){d=-1;break a}}while(0);f[d>>2]=s;f[q>>2]=s;f[r>>2]=p;x=32}while(0);if((x|0)==32)d=m?0:c;x=d;u=y;return x|0}function a9a(a){a=a|0;var c=0,d=0,e=0,g=0;f[a>>2]=34356;e=a+108|0;f[e>>2]=34376;g=a+8|0;f[g>>2]=34392;c=a+72|0;d=f[c>>2]|0;if(d|0){S8a(g)|0;if(!(Pdb(d)|0))f[c>>2]=0}if(b[a+104>>0]|0){c=f[a+40>>2]|0;if(c|0)_pb(c)}if(b[a+105>>0]|0){c=f[a+64>>2]|0;if(c|0)_pb(c)}Teb(g);Ffb(a,34452);Oeb(e);return}function b9a(a){a=a|0;var c=0,d=0,e=0,g=0;f[a>>2]=34356;e=a+108|0;f[e>>2]=34376;g=a+8|0;f[g>>2]=34392;c=a+72|0;d=f[c>>2]|0;if(d|0){S8a(g)|0;if(!(Pdb(d)|0))f[c>>2]=0}if(b[a+104>>0]|0){c=f[a+40>>2]|0;if(c|0)_pb(c)}if(b[a+105>>0]|0){c=f[a+64>>2]|0;if(c|0)_pb(c)}Teb(g);Ffb(a,34452);Oeb(e);Zpb(a);return}function c9a(a){a=a|0;var c=0,d=0,e=0,g=0;d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[d>>2]=34356;e=d+108|0;f[e>>2]=34376;g=d+8|0;f[g>>2]=34392;a=d+72|0;c=f[a>>2]|0;if(c|0){S8a(g)|0;if(!(Pdb(c)|0))f[a>>2]=0}if(b[d+104>>0]|0){a=f[d+40>>2]|0;if(a|0)_pb(a)}if(b[d+105>>0]|0){a=f[d+64>>2]|0;if(a|0)_pb(a)}Teb(g);Ffb(d,34452);Oeb(e);return}function d9a(a){a=a|0;b9a(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function e9a(a){a=a|0;f[a>>2]=34472;yf();return}function f9a(a){a=a|0;f[a>>2]=34472;yf();Zpb(a);return}function g9a(a){a=a|0;f[a>>2]=34472;zf();return}function h9a(a,b,c){a=a|0;b=b|0;c=c|0;Af(a|0,c|0,173,b|0);return 1}function i9a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Eh[f[(f[c>>2]|0)+8>>2]&255](c,a,b,d);return}function j9a(a){a=a|0;yf();return}function k9a(a){a=a|0;f[a>>2]=34488;return}function l9a(a){a=a|0;return}function m9a(a){a=a|0;wf()}function n9a(a,b,c){a=a|0;b=b|0;c=c|0;Bf(b|0,c|0);return}function o9a(){f[52884]=0;f[52885]=0;f[52886]=0;return}function p9a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+1056|0;h=i+8|0;g=i;e=i+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,197963)|0;qqb(211536,34);pqb(211536,197974)|0;CIa(e,c);c=e+11|0;j=b[c>>0]|0;k=j<<24>>24<0;oqb(211536,k?f[e>>2]|0:e,k?f[e+4>>2]|0:j&255)|0;if((b[c>>0]|0)<0)Zpb(f[e>>2]|0);qqb(211536,34);f[g>>2]=67;tcb(e,197990,g)|0;pqb(211536,197993)|0;pqb(211536,e)|0;qqb(211536,34);k=eab()|0;f[h>>2]=k;tcb(e,197990,h)|0;pqb(211536,198013)|0;pqb(211536,e)|0;qqb(211536,34);pqb(211536,198034)|0;CIa(h,d);k=h+11|0;j=b[k>>0]|0;g=j<<24>>24<0;oqb(211536,g?f[h>>2]|0:h,g?f[h+4>>2]|0:j&255)|0;if((b[k>>0]|0)>=0){qqb(211536,34);qqb(211536,125);k=b[211547]|0;g=k<<24>>24<0;j=f[52884]|0;h=f[52885]|0;k=k&255;j=g?j:211536;k=g?h:k;n9a(a,j,k);u=i;return}Zpb(f[h>>2]|0);qqb(211536,34);qqb(211536,125);k=b[211547]|0;g=k<<24>>24<0;j=f[52884]|0;h=f[52885]|0;k=k&255;j=g?j:211536;k=g?h:k;n9a(a,j,k);u=i;return}function q9a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=+g;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+96|0;k=r+16|0;j=r+8|0;i=r;h=r+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198053)|0;qqb(211536,34);if(d|0){f[i>>2]=d;tcb(h,197990,i)|0;pqb(211536,198070)|0;pqb(211536,h)|0}if(e|0){f[j>>2]=e;tcb(h,197990,j)|0;pqb(211536,198084)|0;pqb(211536,h)|0}if(g!=-1.0){p[k>>3]=g;tcb(h,198099,k)|0;pqb(211536,198102)|0;pqb(211536,h)|0}d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)==(q|0)){qqb(211536,125);q=b[211547]|0;m=q<<24>>24<0;o=f[52884]|0;n=f[52885]|0;q=q&255;o=m?o:211536;q=m?n:q;n9a(a,o,q);u=r;return}else{e=0;h=0;i=0;j=0;k=0;c=0;l=0;m=0;n=0;o=0}do{a:do switch(f[d>>2]|0){case 1:{if(e)e=1;else if(!(b[d+4>>0]|0)){pqb(211536,198140)|0;e=1;break a}else{pqb(211536,198119)|0;e=1;break a}break}case 2:{if(h)h=1;else if(!(b[d+4>>0]|0)){pqb(211536,198192)|0;h=1;break a}else{pqb(211536,198162)|0;h=1;break a}break}case 4:{if(o)o=1;else if(!(b[d+4>>0]|0)){pqb(211536,198245)|0;o=1;break a}else{pqb(211536,198223)|0;o=1;break a}break}case 8:{if(n)n=1;else if(!(b[d+4>>0]|0)){pqb(211536,198300)|0;n=1;break a}else{pqb(211536,198268)|0;n=1;break a}break}case 16:{if(m)m=1;else if(!(b[d+4>>0]|0)){pqb(211536,198363)|0;m=1;break a}else{pqb(211536,198333)|0;m=1;break a}break}case 32:{if(l)l=1;else if(!(b[d+4>>0]|0)){pqb(211536,198430)|0;l=1;break a}else{pqb(211536,198394)|0;l=1;break a}break}case 64:{if(c)c=1;else if(!(b[d+4>>0]|0)){pqb(211536,198506)|0;c=1;break a}else{pqb(211536,198467)|0;c=1;break a}break}case 128:{if(k)k=1;else if(!(b[d+4>>0]|0)){pqb(211536,198592)|0;k=1;break a}else{pqb(211536,198546)|0;k=1;break a}break}case 256:{if(j)j=1;else if(!(b[d+4>>0]|0)){pqb(211536,198677)|0;j=1;break a}else{pqb(211536,198639)|0;j=1;break a}break}case 0:{if(i)i=1;else if(!(b[d+4>>0]|0))i=1;else{pqb(211536,198716)|0;i=1}break}default:{}}while(0);d=d+8|0}while((d|0)!=(q|0));qqb(211536,125);q=b[211547]|0;m=q<<24>>24<0;o=f[52884]|0;n=f[52885]|0;q=q&255;o=m?o:211536;q=m?n:q;n9a(a,o,q);u=r;return}function r9a(a,c,d,e,g){a=a|0;c=c|0;d=+d;e=+e;g=+g;var h=0,i=0,j=0,k=0;k=u;u=u+32|0;h=k+16|0;i=k+8|0;j=k;p[h>>3]=d;p[i>>3]=e;p[j>>3]=g;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198732)|0;qqb(211536,34);if(c|0){pqb(211536,198744)|0;s9a(c,12)}if(d>0.0){pqb(211536,198760)|0;s9a(h,1)}if(g>0.0){pqb(211536,198780)|0;s9a(j,1)}if(!(e>0.0)){qqb(211536,125);j=b[211547]|0;c=j<<24>>24<0;i=f[52884]|0;h=f[52885]|0;j=j&255;i=c?i:211536;j=c?h:j;n9a(a,i,j);u=k;return}pqb(211536,198800)|0;s9a(i,1);qqb(211536,125);j=b[211547]|0;c=j<<24>>24<0;i=f[52884]|0;h=f[52885]|0;j=j&255;i=c?i:211536;j=c?h:j;n9a(a,i,j);u=k;return}function s9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+160|0;g=k+136|0;h=k;if(!c){pqb(211536,198819)|0;u=k;return}qqb(211536,91);i=h+4|0;f[h>>2]=10948;j=h+56|0;f[j>>2]=10968;Yfb(h+56|0,i);f[h+128>>2]=0;f[h+132>>2]=-1;f[h>>2]=31108;f[h+56>>2]=31128;agb(i);f[i>>2]=31144;e=h+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[h+52>>2]=16;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;DIa(i,g);if((b[g+11>>0]|0)<0)Zpb(f[g>>2]|0);d=h+(f[(f[h>>2]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-261|256;f[h+(f[(f[h>>2]|0)+-12>>2]|0)+8>>2]=17;qgb(h,+p[a>>3])|0;if(c>>>0>1){d=1;do{b[g>>0]=44;l=FIa(h,g,1)|0;qgb(l,+p[a+(d<<3)>>3])|0;d=d+1|0}while((d|0)!=(c|0))}EIa(g,i);l=g+11|0;c=b[l>>0]|0;a=c<<24>>24<0;oqb(211536,a?f[g>>2]|0:g,a?f[g+4>>2]|0:c&255)|0;if((b[l>>0]|0)<0)Zpb(f[g>>2]|0);qqb(211536,93);f[h>>2]=31108;f[j>>2]=31128;f[i>>2]=31144;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(i);Pfb(h,31204);Oeb(j);u=k;return}function t9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+80|0;h=i;g=i+8|0;if(!c){u=i;return}if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198822)|0;qqb(211536,34);f[h>>2]=e;tcb(g,197990,h)|0;pqb(211536,198084)|0;pqb(211536,g)|0;if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);h=b[211547]|0;g=h<<24>>24<0;n9a(a,g?f[52884]|0:211536,g?f[52885]|0:h&255);u=i;return}function u9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;l=p+136|0;m=p;if(!c){pqb(211536,198856)|0;u=p;return}qqb(211536,91);n=m+4|0;f[m>>2]=10948;o=m+56|0;f[o>>2]=10968;Yfb(m+56|0,n);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=31108;f[m+56>>2]=31128;agb(n);f[n>>2]=31144;k=m+36|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[m+52>>2]=16;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;DIa(n,l);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);ngb(m,c)|0;b[l>>0]=44;d=FIa(m,l,1)|0;d=FIa(ngb(d,f[a>>2]|0)|0,198860,2)|0;ngb(d,f[a+4>>2]|0)|0;d=a;if(c>>>0>1){h=0;j=1;g=f[d>>2]|0;d=f[d+4>>2]|0;while(1){i=a+(j<<3)|0;do if((f[i>>2]|0)==(g|0)){e=a+(j<<3)+4|0;if((f[e>>2]|0)==(d+1|0)){d=h+1|0;break}if(h|0)ngb(FIa(m,198863,2)|0,h)|0;b[l>>0]=44;d=FIa(m,l,1)|0;ngb(d,f[e>>2]|0)|0;d=0}else{if(h|0)ngb(FIa(m,198863,2)|0,h)|0;d=FIa(m,198866,2)|0;d=FIa(ngb(d,f[i>>2]|0)|0,198860,2)|0;e=a+(j<<3)+4|0;ngb(d,f[e>>2]|0)|0;d=0}while(0);j=j+1|0;if((j|0)==(c|0))break;else{h=d;g=f[i>>2]|0;d=f[e>>2]|0}}if(d|0)ngb(FIa(m,198863,2)|0,d)|0}EIa(l,n);c=l+11|0;a=b[c>>0]|0;j=a<<24>>24<0;oqb(211536,j?f[l>>2]|0:l,j?f[l+4>>2]|0:a&255)|0;if((b[c>>0]|0)<0)Zpb(f[l>>2]|0);pqb(211536,198869)|0;f[m>>2]=31108;f[o>>2]=31128;f[n>>2]=31144;if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);Teb(n);Pfb(m,31204);Oeb(o);u=p;return}function v9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198872)|0;qqb(211536,34);if(e)pqb(211536,198898)|0;if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);return}function w9a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;j=u;u=u+80|0;i=j;h=j+8|0;if(!c){u=j;return}if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198918)|0;qqb(211536,34);if(e|0){f[i>>2]=e;tcb(h,197990,i)|0;pqb(211536,198084)|0;pqb(211536,h)|0}if(g)pqb(211536,198950)|0;if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);i=b[211547]|0;h=i<<24>>24<0;n9a(a,h?f[52884]|0:211536,h?f[52885]|0:i&255);u=j;return}function x9a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198963)|0;qqb(211536,34);if(e)pqb(211536,198898)|0;if(g)pqb(211536,198950)|0;if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);g=b[211547]|0;e=g<<24>>24<0;n9a(a,e?f[52884]|0:211536,e?f[52885]|0:g&255);return}function y9a(a,c){a=a|0;c=c|0;var d=0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198996)|0;qqb(211536,34);if(c)pqb(211536,198898)|0;qqb(211536,125);c=b[211547]|0;d=c<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:c&255);return}function z9a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=u;u=u+80|0;j=k;i=k+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199027)|0;qqb(211536,34);if(h|0){f[j>>2]=h;tcb(i,197990,j)|0;pqb(211536,199053)|0;pqb(211536,i)|0}if(e)pqb(211536,198950)|0;if(g)pqb(211536,199071)|0;if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);j=b[211547]|0;i=j<<24>>24<0;n9a(a,i?f[52884]|0:211536,i?f[52885]|0:j&255);u=k;return}function A9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199096)|0;qqb(211536,34);if(d|0){pqb(211536,198847)|0;u9a(d,c)}if(e|0){pqb(211536,199121)|0;B9a(e,c*6|0)}qqb(211536,125);e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);return}function B9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+160|0;g=k+136|0;h=k;if(!c){pqb(211536,198819)|0;u=k;return}qqb(211536,91);i=h+4|0;f[h>>2]=10948;j=h+56|0;f[j>>2]=10968;Yfb(h+56|0,i);f[h+128>>2]=0;f[h+132>>2]=-1;f[h>>2]=31108;f[h+56>>2]=31128;agb(i);f[i>>2]=31144;e=h+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[h+52>>2]=16;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;DIa(i,g);if((b[g+11>>0]|0)<0)Zpb(f[g>>2]|0);d=h+(f[(f[h>>2]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-261|256;f[h+(f[(f[h>>2]|0)+-12>>2]|0)+8>>2]=9;pgb(h,+n[a>>2])|0;if(c>>>0>1){d=1;do{b[g>>0]=44;l=FIa(h,g,1)|0;pgb(l,+n[a+(d<<2)>>2])|0;d=d+1|0}while((d|0)!=(c|0))}EIa(g,i);l=g+11|0;c=b[l>>0]|0;a=c<<24>>24<0;oqb(211536,a?f[g>>2]|0:g,a?f[g+4>>2]|0:c&255)|0;if((b[l>>0]|0)<0)Zpb(f[g>>2]|0);qqb(211536,93);f[h>>2]=31108;f[j>>2]=31128;f[i>>2]=31144;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(i);Pfb(h,31204);Oeb(j);u=k;return}function C9a(a,c,d){a=a|0;c=c|0;d=d|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199135)|0;qqb(211536,34);if(d|0){pqb(211536,198847)|0;u9a(d,c)}qqb(211536,125);d=b[211547]|0;c=d<<24>>24<0;n9a(a,c?f[52884]|0:211536,c?f[52885]|0:d&255);return}function D9a(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+96|0;n=o+24|0;m=o+16|0;l=o+8|0;k=o;j=o+32|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199151)|0;pqb(211536,199174)|0;f[k>>2]=c;tcb(j,199185,k)|0;pqb(211536,j)|0;f[l>>2]=d;tcb(j,199205,l)|0;pqb(211536,j)|0;f[m>>2]=e;tcb(j,199228,m)|0;pqb(211536,j)|0;f[n>>2]=g;tcb(j,199247,n)|0;pqb(211536,j)|0;pqb(211536,199265)|0;B9a(h,g<<2);pqb(211536,199276)|0;B9a(i,3);qqb(211536,125);n=b[211547]|0;m=n<<24>>24<0;n9a(a,m?f[52884]|0:211536,m?f[52885]|0:n&255);u=o;return}function E9a(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;m=n+16|0;l=n+8|0;k=n;j=n+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199151)|0;pqb(211536,199297)|0;f[k>>2]=c;tcb(j,199185,k)|0;pqb(211536,j)|0;f[l>>2]=d;tcb(j,199205,l)|0;pqb(211536,j)|0;f[m>>2]=e;tcb(j,199228,m)|0;pqb(211536,j)|0;pqb(211536,199308)|0;B9a(g,3);pqb(211536,199323)|0;B9a(h,3);pqb(211536,199265)|0;B9a(i,20);qqb(211536,125);m=b[211547]|0;l=m<<24>>24<0;n9a(a,l?f[52884]|0:211536,l?f[52885]|0:m&255);u=n;return}function F9a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;m=n+24|0;l=n+16|0;k=n+8|0;j=n;i=n+32|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199151)|0;pqb(211536,199341)|0;f[j>>2]=c;tcb(i,199185,j)|0;pqb(211536,i)|0;f[k>>2]=d;tcb(i,199205,k)|0;pqb(211536,i)|0;f[l>>2]=e;tcb(i,199228,l)|0;pqb(211536,i)|0;pqb(211536,199352)|0;B9a(g,3);p[m>>3]=h;tcb(i,199370,m)|0;pqb(211536,i)|0;qqb(211536,125);m=b[211547]|0;l=m<<24>>24<0;n9a(a,l?f[52884]|0:211536,l?f[52885]|0:m&255);u=n;return}function G9a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+80|0;h=i+8|0;g=i;e=i+16|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199390)|0;qqb(211536,34);f[g>>2]=c;tcb(e,199185,g)|0;pqb(211536,e)|0;f[h>>2]=d;tcb(e,199411,h)|0;pqb(211536,e)|0;h=b[211547]|0;g=h<<24>>24<0;n9a(a,g?f[52884]|0:211536,g?f[52885]|0:h&255);u=i;return}function H9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+96|0;j=k+16|0;i=k+8|0;h=k;g=k+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199435)|0;qqb(211536,34);f[h>>2]=c;tcb(g,199185,h)|0;pqb(211536,g)|0;f[i>>2]=d;tcb(g,199205,i)|0;pqb(211536,g)|0;f[j>>2]=e;tcb(g,199460,j)|0;pqb(211536,g)|0;j=b[211547]|0;i=j<<24>>24<0;n9a(a,i?f[52884]|0:211536,i?f[52885]|0:j&255);u=k;return}function I9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199482)|0;qqb(211536,34);pqb(211536,199505)|0;u9a(d,c);pqb(211536,199519)|0;u9a(e,c);qqb(211536,125);e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);return}function J9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199532)|0;qqb(211536,34);pqb(211536,199551)|0;K9a(d,c);pqb(211536,199560)|0;B9a(e,c*12|0);qqb(211536,125);e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);return}function K9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+160|0;j=o+136|0;l=o;if(!c){pqb(211536,198856)|0;u=o;return}qqb(211536,91);m=l+4|0;f[l>>2]=10948;n=l+56|0;f[n>>2]=10968;Yfb(l+56|0,m);f[l+128>>2]=0;f[l+132>>2]=-1;f[l>>2]=31108;f[l+56>>2]=31128;agb(m);f[m>>2]=31144;i=l+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[l+52>>2]=16;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;DIa(m,j);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);ngb(l,c)|0;k=f[a>>2]|0;h=0;e=0;d=k;while(1){if((k|0)==(d+1|0))d=e+1|0;else{if(e|0)ngb(FIa(l,198863,2)|0,e)|0;b[j>>0]=44;ngb(FIa(l,j,1)|0,k)|0;d=0}g=h+1|0;if((g|0)==(c|0))break;p=k;h=g;e=d;k=f[a+(g<<2)>>2]|0;d=p}if(d|0)ngb(FIa(l,198863,2)|0,d)|0;EIa(j,m);p=j+11|0;k=b[p>>0]|0;c=k<<24>>24<0;oqb(211536,c?f[j>>2]|0:j,c?f[j+4>>2]|0:k&255)|0;if((b[p>>0]|0)<0)Zpb(f[j>>2]|0);qqb(211536,93);f[l>>2]=31108;f[n>>2]=31128;f[m>>2]=31144;if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);Teb(m);Pfb(l,31204);Oeb(n);u=o;return}function L9a(a,c,d){a=a|0;c=c|0;d=d|0;if(!c)return;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199570)|0;qqb(211536,34);pqb(211536,199551)|0;K9a(d,c);qqb(211536,125);d=b[211547]|0;c=d<<24>>24<0;n9a(a,c?f[52884]|0:211536,c?f[52885]|0:d&255);return}function M9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+80|0;h=i;g=i+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199585)|0;qqb(211536,34);if(e|0){f[h>>2]=e;tcb(g,197990,h)|0;pqb(211536,199053)|0;pqb(211536,g)|0}pqb(211536,199551)|0;K9a(d,c);qqb(211536,125);h=b[211547]|0;g=h<<24>>24<0;n9a(a,g?f[52884]|0:211536,g?f[52885]|0:h&255);u=i;return}function N9a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=+e;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+96|0;j=m+16|0;k=m;i=m+24|0;l=d+4|0;if((f[d>>2]|0)==(f[l>>2]|0)){u=m;return}if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199603)|0;qqb(211536,34);f[k>>2]=c;tcb(i,197990,k)|0;pqb(211536,199617)|0;pqb(211536,i)|0;if(h|0){f[j>>2]=h;tcb(i,197990,j)|0;pqb(211536,199053)|0;pqb(211536,i)|0}if(g)pqb(211536,198950)|0;pqb(211536,199634)|0;O9a(e);pqb(211536,199650)|0;c=f[d>>2]|0;g=f[l>>2]|0;if((c|0)!=(g|0)){h=k+11|0;i=k+4|0;do{qqb(211536,34);CIa(k,c);j=b[h>>0]|0;n=j<<24>>24<0;oqb(211536,n?f[k>>2]|0:k,n?f[i>>2]|0:j&255)|0;if((b[h>>0]|0)<0)Zpb(f[k>>2]|0);pqb(211536,199691)|0;c=c+112|0}while((c|0)!=(g|0))}c=b[211547]|0;if(c<<24>>24<0){c=(f[52885]|0)+-1|0;f[52885]=c;c=(f[52884]|0)+c|0}else{c=(c&255)+-1|0;b[211547]=c;c=211536+c|0}b[c>>0]=0;qqb(211536,93);pqb(211536,199667)|0;c=f[d>>2]|0;g=f[l>>2]|0;if((c|0)!=(g|0))do{s9a(c+16|0,12);qqb(211536,44);c=c+112|0}while((c|0)!=(g|0));c=b[211547]|0;if(c<<24>>24<0){c=(f[52885]|0)+-1|0;f[52885]=c;c=(f[52884]|0)+c|0}else{c=(c&255)+-1|0;b[211547]=c;c=211536+c|0}b[c>>0]=0;qqb(211536,93);qqb(211536,125);n=b[211547]|0;l=n<<24>>24<0;n9a(a,l?f[52884]|0:211536,l?f[52885]|0:n&255);u=m;return}function O9a(a){a=+a;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+160|0;c=i+136|0;d=i;e=d+4|0;f[d>>2]=10948;g=d+56|0;f[g>>2]=10968;Yfb(d+56|0,e);f[d+128>>2]=0;f[d+132>>2]=-1;f[d>>2]=31108;f[d+56>>2]=31128;agb(e);f[e>>2]=31144;h=d+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[d+52>>2]=16;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;DIa(e,c);if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);j=d+(f[(f[d>>2]|0)+-12>>2]|0)+4|0;f[j>>2]=f[j>>2]&-261|256;f[d+(f[(f[d>>2]|0)+-12>>2]|0)+8>>2]=17;qgb(d,a)|0;EIa(c,e);j=c+11|0;k=b[j>>0]|0;l=k<<24>>24<0;oqb(211536,l?f[c>>2]|0:c,l?f[c+4>>2]|0:k&255)|0;if((b[j>>0]|0)<0)Zpb(f[c>>2]|0);f[d>>2]=31108;f[g>>2]=31128;f[e>>2]=31144;if((b[h+11>>0]|0)>=0){Teb(e);Pfb(d,31204);Oeb(g);u=i;return}Zpb(f[h>>2]|0);Teb(e);Pfb(d,31204);Oeb(g);u=i;return}function P9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;e=g;d=g+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199694)|0;qqb(211536,34);pqb(211536,199712)|0;f[e>>2]=c;tcb(d,197990,e)|0;pqb(211536,d)|0;pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function Q9a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199722)|0;qqb(211536,34);pqb(211536,199751)|0;f[e>>2]=c;f[e+4>>2]=d&255;R9a(e);qqb(211536,125);e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function R9a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+160|0;c=i+136|0;d=i;qqb(211536,91);e=d+4|0;f[d>>2]=10948;g=d+56|0;f[g>>2]=10968;Yfb(d+56|0,e);f[d+128>>2]=0;f[d+132>>2]=-1;f[d>>2]=31108;f[d+56>>2]=31128;agb(e);f[e>>2]=31144;h=d+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[d+52>>2]=16;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;DIa(e,c);if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);ngb(d,f[a>>2]|0)|0;b[c>>0]=44;j=FIa(d,c,1)|0;ngb(j,f[a+4>>2]|0)|0;EIa(c,e);a=c+11|0;j=b[a>>0]|0;k=j<<24>>24<0;oqb(211536,k?f[c>>2]|0:c,k?f[c+4>>2]|0:j&255)|0;if((b[a>>0]|0)<0)Zpb(f[c>>2]|0);qqb(211536,93);f[d>>2]=31108;f[g>>2]=31128;f[e>>2]=31144;if((b[h+11>>0]|0)>=0){Teb(e);Pfb(d,31204);Oeb(g);u=i;return}Zpb(f[h>>2]|0);Teb(e);Pfb(d,31204);Oeb(g);u=i;return}function S9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;h=i;g=i+8|0;c=c&1;c=d?c|2:c;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199760)|0;qqb(211536,34);pqb(211536,199781)|0;f[h>>2]=e?c|4:c;tcb(g,197990,h)|0;pqb(211536,g)|0;pqb(211536,199720)|0;h=b[211547]|0;g=h<<24>>24<0;n9a(a,g?f[52884]|0:211536,g?f[52885]|0:h&255);u=i;return}function T9a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+48|0;j=k+8|0;i=k;h=k+16|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199790)|0;qqb(211536,34);pqb(211536,198847)|0;u9a(d,c);f[i>>2]=e&65535;tcb(h,199808,i)|0;pqb(211536,h)|0;f[j>>2]=g&1;tcb(h,199819,j)|0;pqb(211536,h)|0;j=b[211547]|0;i=j<<24>>24<0;n9a(a,i?f[52884]|0:211536,i?f[52885]|0:j&255);u=k;return}function U9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199832)|0;qqb(211536,34);pqb(211536,199853)|0;if(!c){pqb(211536,199867)|0;d=b[211547]|0;j=d<<24>>24<0;c=f[52884]|0;k=f[52885]|0;d=d&255;c=j?c:211536;d=j?k:d;n9a(a,c,d);return}else k=0;do{if(k|0)qqb(211536,44);i=f[d+(k<<2)>>2]|0;qqb(211536,91);if(i){j=i<<5;g=0;h=e;while(1){if(g|0)qqb(211536,44);qqb(211536,91);O9a(+p[h>>3]);qqb(211536,44);O9a(+p[h+8>>3]);qqb(211536,44);O9a(+p[h+16>>3]);qqb(211536,44);O9a(+p[h+24>>3]);qqb(211536,93);g=g+1|0;if((g|0)==(i|0))break;else h=h+256|0}e=e+(j<<3)|0}qqb(211536,93);k=k+1|0}while((k|0)!=(c|0));pqb(211536,199867)|0;d=b[211547]|0;j=d<<24>>24<0;c=f[52884]|0;k=f[52885]|0;d=d&255;c=j?c:211536;d=j?k:d;n9a(a,c,d);return}function V9a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199870)|0;qqb(211536,34);pqb(211536,198847)|0;u9a(d,c);pqb(211536,199884)|0;B9a(e,3);pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);return}function W9a(a){a=a|0;var c=0,d=0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199905)|0;pqb(211536,199917)|0;c=b[211547]|0;d=c<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:c&255);return}function X9a(a,c){a=a|0;c=+c;var d=0,e=0,g=0;g=u;u=u+80|0;e=g;d=g+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199920)|0;qqb(211536,34);p[e>>3]=c;tcb(d,199942,e)|0;pqb(211536,d)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function Y9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;e=g;d=g+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199967)|0;qqb(211536,34);pqb(211536,199982)|0;f[e>>2]=c;tcb(d,197990,e)|0;pqb(211536,d)|0;pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function Z9a(a,c){a=a|0;c=+c;var d=0,e=0,g=0;g=u;u=u+32|0;e=g;d=g+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,199992)|0;qqb(211536,34);pqb(211536,200016)|0;p[e>>3]=c;tcb(d,198099,e)|0;pqb(211536,d)|0;pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function _9a(a){a=a|0;var c=0,d=0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,200026)|0;qqb(211536,34);pqb(211536,199720)|0;c=b[211547]|0;d=c<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:c&255);if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198732)|0;qqb(211536,34);pqb(211536,199720)|0;d=b[211547]|0;c=d<<24>>24<0;n9a(a,c?f[52884]|0:211536,c?f[52885]|0:d&255);return}function $9a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+80|0;e=g;d=g+8|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,200038)|0;qqb(211536,34);if(c|0){f[e>>2]=c;tcb(d,197990,e)|0;pqb(211536,199053)|0;pqb(211536,d)|0}pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,198732)|0;qqb(211536,34);pqb(211536,199720)|0;e=b[211547]|0;d=e<<24>>24<0;n9a(a,d?f[52884]|0:211536,d?f[52885]|0:e&255);u=g;return}function aab(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+16|0;j=l+8|0;i=l;h=l+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,200053)|0;qqb(211536,34);pqb(211536,200060)|0;f[i>>2]=c;tcb(h,197990,i)|0;pqb(211536,h)|0;pqb(211536,200074)|0;f[j>>2]=d;tcb(h,197990,j)|0;pqb(211536,h)|0;pqb(211536,200082)|0;f[k>>2]=e;tcb(h,197990,k)|0;pqb(211536,h)|0;if(!g){pqb(211536,199720)|0;k=b[211547]|0;h=k<<24>>24<0;j=f[52884]|0;i=f[52885]|0;k=k&255;j=h?j:211536;k=h?i:k;n9a(a,j,k);u=l;return}pqb(211536,198950)|0;pqb(211536,199720)|0;k=b[211547]|0;h=k<<24>>24<0;j=f[52884]|0;i=f[52885]|0;k=k&255;j=h?j:211536;k=h?i:k;n9a(a,j,k);u=l;return}function bab(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+16|0;j=l+8|0;i=l;h=l+24|0;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,200091)|0;qqb(211536,34);if(g|0){f[i>>2]=g;tcb(h,197990,i)|0;pqb(211536,199053)|0;pqb(211536,h)|0}pqb(211536,200060)|0;f[j>>2]=c;tcb(h,197990,j)|0;pqb(211536,h)|0;pqb(211536,200104)|0;f[k>>2]=d;tcb(h,197990,k)|0;pqb(211536,h)|0;pqb(211536,200117)|0;B9a(e,6);pqb(211536,199720)|0;k=b[211547]|0;j=k<<24>>24<0;n9a(a,j?f[52884]|0:211536,j?f[52885]|0:k&255);u=l;return}function cab(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;pqb(211536,200427)|0;qqb(211536,34);g=c?g:g|268435456;pqb(211536,199751)|0;f[h>>2]=d?g|33554432:g;f[h+4>>2]=e;R9a(h);qqb(211536,125);h=b[211547]|0;g=h<<24>>24<0;n9a(a,g?f[52884]|0:211536,g?f[52885]|0:h&255);u=i;return}function dab(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=u;u=u+80|0;j=k;i=k+8|0;if(!d){u=k;return}if((b[211547]|0)<0){b[f[52884]>>0]=0;f[52885]=0}else{b[211536]=0;b[211547]=0}kqb(211536,197950)|0;do switch(c|0){case 1:{c=197963;break}case 2:{c=198053;break}case 3:{c=198732;break}case 4:{c=199603;break}case 5:{c=199585;break}case 6:{c=198822;break}case 7:{c=198872;break}case 8:{c=198918;break}case 9:{c=198963;break}case 10:{c=198996;break}case 11:{c=199027;break}case 12:{c=199096;break}case 13:{c=199135;break}case 14:{c=200053;break}case 15:{c=200091;break}case 16:{c=200026;break}case 17:{c=200038;break}case 18:{c=199694;break}case 19:{c=199967;break}case 20:{c=199992;break}case 21:{c=200566;break}case 22:{c=200549;break}case 23:{c=200531;break}case 24:{c=200513;break}case 25:{c=200492;break}case 26:{c=200473;break}case 27:{c=200448;break}case 28:{c=200427;break}case 29:{c=200391;break}case 30:{c=200352;break}case 31:{c=200309;break}case 32:{c=200263;break}case 33:{c=199151;break}case 34:{c=199390;break}case 35:{c=199435;break}case 36:{c=199482;break}case 37:{c=199532;break}case 38:{c=199570;break}case 39:{c=199722;break}case 40:{c=199760;break}case 41:{c=199790;break}case 42:{c=199832;break}case 43:{c=199870;break}case 44:{c=199920;break}case 45:{c=199905;break}case 46:{c=200244;break}case 47:{c=200223;break}case 48:{c=200199;break}case 49:{c=200195;break}case 50:{c=200191;break}case 51:{c=200176;break}case 52:{c=200161;break}case 53:{c=200146;break}case 54:{c=200130;break}default:c=0}while(0);pqb(211536,c)|0;qqb(211536,34);if(g)pqb(211536,198950)|0;if(h|0){f[j>>2]=h;tcb(i,197990,j)|0;pqb(211536,199053)|0;pqb(211536,i)|0}pqb(211536,200583)|0;u9a(e,d);qqb(211536,125);j=b[211547]|0;i=j<<24>>24<0;n9a(a,i?f[52884]|0:211536,i?f[52885]|0:j&255);u=k;return}function eab(){return -1178153513}function fab(){gab();return}function gab(){hab(0);return}function hab(a){a=a|0;_c(iab()|0,200591);Lc(jab()|0,200596,1,1,0);kab();lab();mab();nab();oab();pab();qab();rab();sab();tab();uab();Uc(vab()|0,200601);Uc(wab()|0,200613);Vc(xab()|0,4,200646);Oc(yab()|0,200659);zab();Aab(200675);Bab(200712);Cab(200751);Dab(200782);Eab(200822);Fab(200851);Gab();Hab();Aab(200889);Bab(200921);Cab(200954);Dab(200987);Eab(201021);Fab(201054);Iab();Jab();Kab();return}function iab(){return Ibb()|0}function jab(){return Hbb()|0}function kab(){Sc(Fbb()|0,201881,1,-128,127);return}function lab(){Sc(Dbb()|0,201869,1,-128,127);return}function mab(){Sc(Bbb()|0,201855,1,0,255);return}function nab(){Sc(zbb()|0,201849,2,-32768,32767);return}function oab(){Sc(xbb()|0,201834,2,0,65535);return}function pab(){Sc(vbb()|0,201830,4,-2147483648,2147483647);return}function qab(){Sc(tbb()|0,201817,4,0,-1);return}function rab(){Sc(rbb()|0,201812,4,-2147483648,2147483647);return}function sab(){Sc(pbb()|0,201798,4,0,-1);return}function tab(){Rc(nbb()|0,201792,4);return}function uab(){Rc(lbb()|0,201785,8);return}function vab(){return kbb()|0}function wab(){return jbb()|0}function xab(){return ibb()|0}function yab(){return hbb()|0}function zab(){Tc(fbb()|0,0,201598);return}function Aab(a){a=a|0;Tc(dbb()|0,0,a|0);return}function Bab(a){a=a|0;Tc(bbb()|0,1,a|0);return}function Cab(a){a=a|0;Tc($ab()|0,2,a|0);return}function Dab(a){a=a|0;Tc(Zab()|0,3,a|0);return}function Eab(a){a=a|0;Tc(Xab()|0,4,a|0);return}function Fab(a){a=a|0;Tc(Vab()|0,5,a|0);return}function Gab(){Tc(Tab()|0,4,201351);return}function Hab(){Tc(Rab()|0,5,201281);return}function Iab(){Tc(Pab()|0,6,201219);return}function Jab(){Tc(Nab()|0,7,201156);return}function Kab(){Tc(Lab()|0,7,201088);return}function Lab(){return Mab()|0}function Mab(){return 11848}function Nab(){return Oab()|0}function Oab(){return 11856}function Pab(){return Qab()|0}function Qab(){return 11864}function Rab(){return Sab()|0}function Sab(){return 11872}function Tab(){return Uab()|0}function Uab(){return 11880}function Vab(){return Wab()|0}function Wab(){return 11888}function Xab(){return Yab()|0}function Yab(){return 11896}function Zab(){return _ab()|0}function _ab(){return 11904}function $ab(){return abb()|0}function abb(){return 11912}function bbb(){return cbb()|0}function cbb(){return 11920}function dbb(){return ebb()|0}function ebb(){return 11928}function fbb(){return gbb()|0}function gbb(){return 11936}function hbb(){return 2864}function ibb(){return 11944}function jbb(){return 11968}function kbb(){return 5288}function lbb(){return mbb()|0}function mbb(){return 13568}function nbb(){return obb()|0}function obb(){return 13560}function pbb(){return qbb()|0}function qbb(){return 13552}function rbb(){return sbb()|0}function sbb(){return 13544}function tbb(){return ubb()|0}function ubb(){return 13536}function vbb(){return wbb()|0}function wbb(){return 13528}function xbb(){return ybb()|0}function ybb(){return 13520}function zbb(){return Abb()|0}function Abb(){return 13512}function Bbb(){return Cbb()|0}function Cbb(){return 13496}function Dbb(){return Ebb()|0}function Ebb(){return 13504}function Fbb(){return Gbb()|0}function Gbb(){return 13488}function Hbb(){return 13480}function Ibb(){return 13464}function Jbb(a){a=a|0;return beb(f[a+4>>2]|0)|0}function Kbb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;k=0;v=u;u=u+2352|0;do{o=1;f[v+32>>2]=a;f[v+72>>2]=q;f[v+144>>2]=t;f[v+2152>>2]=k;f[v+2160>>2]=o;f[v+2248>>2]=0;f[v+2252>>2]=0;xhb(v);q=f[v+72>>2]|0;t=f[v+144>>2]|0;o=f[v+2152>>2]|0;G=f[v+2248>>2]|0;D=f[v+2252>>2]|0;H=+n[v+2252>>2];f[v+2248>>2]=0;f[v+2252>>2]=0;if((G|0)==6)return D|0;if((G|0)==1)break}while(0);c=f[52889]|0;if(c>>>0>=t>>>0){a=c-t|0;b=f[52892]|0;if(a>>>0>15){s=b+t|0;f[52892]=s;f[52889]=a;f[s+4>>2]=a|1;f[b+c>>2]=a;f[b+4>>2]=t|3}else{f[52889]=0;f[52892]=0;f[b+4>>2]=c|3;f[(b+c+4|0)>>2]=f[(b+c+4|0)>>2]|1}t=b+8|0;u=v;return t|0}e=f[52890]|0;if(e>>>0>t>>>0){q=e-t|0;f[52890]=q;s=f[52893]|0;r=s+t|0;f[52893]=r;f[r+4>>2]=q|1;f[s+4>>2]=t|3;t=s+8|0;u=v;return t|0}if(!(f[53005]|0)){f[53007]=4096;f[53006]=4096;f[53008]=-1;f[53009]=-1;f[53010]=0;f[52998]=0;f[53005]=v&-16^1431655768;a=4096}else a=f[53007]|0;g=t+48|0;h=t+47|0;k=a+h|0;i=0-a|0;if((k&i)>>>0<=t>>>0){t=0;u=v;return t|0}a=f[52997]|0;if(a|0){d=f[52995]|0;if((d+(k&i)|0)>>>0<=d>>>0|(d+(k&i)|0)>>>0>a>>>0){t=0;u=v;return t|0}}a:do if(!(f[52998]&4)){c=f[52893]|0;b:do if(!c)o=118;else{a=211996;while(1){b=f[a>>2]|0;if(b>>>0<=c>>>0){d=a+4|0;if((b+(f[d>>2]|0)|0)>>>0>c>>>0)break}a=f[a+8>>2]|0;if(!a){o=118;break b}}if((k-e&i)>>>0<2147483647){b=Qrb(k-e&i|0)|0;if((b|0)==((f[a>>2]|0)+(f[d>>2]|0)|0))if((b|0)==(-1|0))j=k-e&i;else{r=k-e&i;s=b;o=135;break a}else{l=b;m=k-e&i;o=126}}else j=0}while(0);do if((o|0)==118){d=Qrb(0)|0;if((d|0)==(-1|0))j=0;else{c=f[53006]|0;c=(((c+-1|0)&d|0)==0?0:((c+-1|0)+d&0-c)-d|0)+(k&i)|0;a=f[52995]|0;if(c>>>0>t>>>0&c>>>0<2147483647){b=f[52997]|0;if(b|0)if((c+a|0)>>>0<=a>>>0|(c+a|0)>>>0>b>>>0){j=0;break}a=Qrb(c|0)|0;if((a|0)==(d|0)){r=c;s=d;o=135;break a}else{l=a;m=c;o=126}}else j=0}}while(0);do if((o|0)==126){b=0-m|0;if(!(g>>>0>m>>>0&(m>>>0<2147483647&(l|0)!=(-1|0))))if((l|0)==(-1|0)){j=0;break}else{r=m;s=l;o=135;break a}a=f[53007]|0;a=h-m+a&0-a;if(a>>>0>=2147483647){r=m;s=l;o=135;break a}if((Qrb(a|0)|0)==(-1|0)){Qrb(b|0)|0;j=0;break}else{r=a+m|0;s=l;o=135;break a}}while(0);f[52998]=f[52998]|4;p=j;o=133}else{p=0;o=133}while(0);if((o|0)==133)if((k&i)>>>0<2147483647){a=Qrb(k&i|0)|0;b=Qrb(0)|0;c=(b-a|0)>>>0>(t+40|0)>>>0;if(!((a|0)==(-1|0)|c^1|a>>>0<b>>>0&((a|0)!=(-1|0)&(b|0)!=(-1|0))^1)){r=c?b-a|0:p;s=a;o=135}}if((o|0)==135){a=(f[52995]|0)+r|0;f[52995]=a;if(a>>>0>(f[52996]|0)>>>0)f[52996]=a;m=f[52893]|0;do{p=1;f[v+72>>2]=q;f[v+144>>2]=t;f[v+544>>2]=r;f[v+552>>2]=s;f[v+1472>>2]=m;f[v+2152>>2]=o;f[v+2216>>2]=p;f[v+2240>>2]=0;f[v+2244>>2]=0;whb(v);G=f[v+2240>>2]|0;D=f[v+2244>>2]|0;H=+n[v+2244>>2];f[v+2240>>2]=0;f[v+2244>>2]=0;if((G|0)==6)return D|0;if((G|0)==1)break}while(0);a=f[52890]|0;if(a>>>0>t>>>0){q=a-t|0;f[52890]=q;s=f[52893]|0;r=s+t|0;f[52893]=r;f[r+4>>2]=q|1;f[s+4>>2]=t|3;t=s+8|0;u=v;return t|0}}t=Tbb()|0;f[t>>2]=12;t=0;u=v;return t|0}function Lbb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[52891]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0<e>>>0)return;if((f[52892]|0)==(h|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[52889]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[52887]=f[52887]&~(1<<c);i=h;b=g;break}else{f[a+12>>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(!e){i=h;b=g}else{b=f[h+28>>2]|0;c=211852+(b<<2)|0;if((f[c>>2]|0)==(h|0)){f[c>>2]=a;if(!a){f[52888]=f[52888]&~(1<<b);i=h;b=g;break}}else{f[e+16+(((f[e+16>>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(!b){i=h;b=g}else{f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){if((f[52893]|0)==(j|0)){j=(f[52890]|0)+b|0;f[52890]=j;f[52893]=i;f[i+4>>2]=j|1;if((i|0)!=(f[52892]|0))return;f[52892]=0;f[52889]=0;return}if((f[52892]|0)==(j|0)){j=(f[52889]|0)+b|0;f[52889]=j;f[52892]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[52887]=f[52887]&~(1<<c);break}else{f[b+12>>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){c=j+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=211852+(a<<2)|0;if((f[b>>2]|0)==(j|0)){f[b>>2]=c;if(!c){f[52888]=f[52888]&~(1<<a);break}}else{f[g+16+(((f[g+16>>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[52892]|0)){f[52889]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=211588+(a<<1<<2)|0;b=f[52887]|0;a=1<<a;if(!(b&a)){f[52887]=b|a;a=c;b=c+8|0}else{b=c+8|0;a=f[b>>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(!a)a=0;else if(e>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;a=(j+245760|0)>>>16&2;a=14-(g|h|a)+(j<<a>>>15)|0;a=e>>>(a+7|0)&1|a<<1}d=211852+(a<<2)|0;f[i+28>>2]=a;f[i+20>>2]=0;f[i+16>>2]=0;b=f[52888]|0;c=1<<a;do if(!(b&c)){f[52888]=b|c;f[d>>2]=i;f[i+24>>2]=d;f[i+12>>2]=i;f[i+8>>2]=i}else{b=e<<((a|0)==31?0:25-(a>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=i;f[i+24>>2]=c;f[i+12>>2]=i;f[i+8>>2]=i;break}else if((a|0)==73){h=c+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=c;f[i+24>>2]=0;break}}while(0);j=(f[52895]|0)+-1|0;f[52895]=j;if(!j)a=212004;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[52895]=-1;return}function Mbb(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){b=Kbb(b)|0;return b|0}if(b>>>0>4294967231){b=Tbb()|0;f[b>>2]=12;b=0;return b|0}c=Nbb(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c|0){b=c+8|0;return b|0}c=Kbb(b)|0;if(!c){b=0;return b|0}d=f[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;Irb(c|0,a|0,(d>>>0<b>>>0?d:b)|0)|0;Lbb(a);b=c;return b|0}function Nbb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=f[l>>2]|0;c=m&-8;i=a+c|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(c>>>0>=(b+4|0)>>>0)if((c-b|0)>>>0<=f[53007]<<1>>>0)return a|0;a=0;return a|0}if(c>>>0>=b>>>0){c=c-b|0;if(c>>>0<=15)return a|0;k=a+b|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|3;m=i+4|0;f[m>>2]=f[m>>2]|1;Obb(k,c);return a|0}if((f[52893]|0)==(i|0)){k=(f[52890]|0)+c|0;c=k-b|0;d=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}f[l>>2]=m&1|b|2;f[d+4>>2]=c|1;f[52893]=d;f[52890]=c;return a|0}if((f[52892]|0)==(i|0)){d=(f[52889]|0)+c|0;if(d>>>0<b>>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){k=a+b|0;d=a+d|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|1;f[d>>2]=c;d=d+4|0;f[d>>2]=f[d>>2]&-2;d=k}else{f[l>>2]=m&1|d|2;d=a+d+4|0;f[d>>2]=f[d>>2]|1;d=0;c=0}f[52889]=c;f[52892]=d;return a|0}d=f[i+4>>2]|0;if(d&2|0){a=0;return a|0}j=(d&-8)+c|0;if(j>>>0<b>>>0){a=0;return a|0}k=j-b|0;e=d>>>3;do if(d>>>0<256){d=f[i+8>>2]|0;c=f[i+12>>2]|0;if((c|0)==(d|0)){f[52887]=f[52887]&~(1<<e);break}else{f[d+12>>2]=c;f[c+8>>2]=d;break}}else{h=f[i+24>>2]|0;c=f[i+12>>2]|0;do if((c|0)==(i|0)){e=i+16|0;d=e+4|0;c=f[d>>2]|0;if(!c){c=f[e>>2]|0;if(!c){e=0;break}else g=e}else g=d;while(1){e=c+20|0;d=f[e>>2]|0;if(d|0){c=d;g=e;continue}d=c+16|0;e=f[d>>2]|0;if(!e)break;else{c=e;g=d}}f[g>>2]=0;e=c}else{e=f[i+8>>2]|0;f[e+12>>2]=c;f[c+8>>2]=e;e=c}while(0);if(h|0){c=f[i+28>>2]|0;d=211852+(c<<2)|0;if((f[d>>2]|0)==(i|0)){f[d>>2]=e;if(!e){f[52888]=f[52888]&~(1<<c);break}}else{f[h+16+(((f[h+16>>2]|0)!=(i|0)&1)<<2)>>2]=e;if(!e)break}f[e+24>>2]=h;c=i+16|0;d=f[c>>2]|0;if(d|0){f[e+16>>2]=d;f[d+24>>2]=e}c=f[c+4>>2]|0;if(c|0){f[e+20>>2]=c;f[c+24>>2]=e}}}while(0);if(k>>>0<16){f[l>>2]=j|m&1|2;m=a+j+4|0;f[m>>2]=f[m>>2]|1;return a|0}else{i=a+b|0;f[l>>2]=m&1|b|2;f[i+4>>2]=k|3;m=a+j+4|0;f[m>>2]=f[m>>2]|1;Obb(i,k);return a|0}return 0}function Obb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+b|0;c=f[a+4>>2]|0;do if(!(c&1)){e=f[a>>2]|0;if(!(c&3))return;h=a+(0-e)|0;b=e+b|0;if((f[52892]|0)==(h|0)){a=i+4|0;c=f[a>>2]|0;if((c&3|0)!=3)break;f[52889]=b;f[a>>2]=c&-2;f[h+4>>2]=b|1;f[i>>2]=b;return}d=e>>>3;if(e>>>0<256){a=f[h+8>>2]|0;c=f[h+12>>2]|0;if((c|0)==(a|0)){f[52887]=f[52887]&~(1<<d);break}else{f[a+12>>2]=c;f[c+8>>2]=a;break}}g=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else c=d}while(1){d=a+20|0;e=f[d>>2]|0;if(e|0){a=e;c=d;continue}d=a+16|0;e=f[d>>2]|0;if(!e)break;else{a=e;c=d}}f[c>>2]=0}else{e=f[h+8>>2]|0;f[e+12>>2]=a;f[a+8>>2]=e}while(0);if(g){c=f[h+28>>2]|0;d=211852+(c<<2)|0;if((f[d>>2]|0)==(h|0)){f[d>>2]=a;if(!a){f[52888]=f[52888]&~(1<<c);break}}else{f[g+16+(((f[g+16>>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}f[a+24>>2]=g;c=h+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(c){f[a+20>>2]=c;f[c+24>>2]=a}}}else h=a;while(0);a=i+4|0;d=f[a>>2]|0;if(!(d&2)){if((f[52893]|0)==(i|0)){i=(f[52890]|0)+b|0;f[52890]=i;f[52893]=h;f[h+4>>2]=i|1;if((h|0)!=(f[52892]|0))return;f[52892]=0;f[52889]=0;return}if((f[52892]|0)==(i|0)){i=(f[52889]|0)+b|0;f[52889]=i;f[52892]=h;f[h+4>>2]=i|1;f[h+i>>2]=i;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){a=f[i+8>>2]|0;b=f[i+12>>2]|0;if((b|0)==(a|0)){f[52887]=f[52887]&~(1<<c);break}else{f[a+12>>2]=b;f[b+8>>2]=a;break}}else{g=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){c=i+16|0;a=c+4|0;b=f[a>>2]|0;if(!b){b=f[c>>2]|0;if(!b){c=0;break}else a=c}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0;c=b}else{c=f[i+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);if(g|0){b=f[i+28>>2]|0;a=211852+(b<<2)|0;if((f[a>>2]|0)==(i|0)){f[a>>2]=c;if(!c){f[52888]=f[52888]&~(1<<b);break}}else{f[g+16+(((f[g+16>>2]|0)!=(i|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;b=i+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}b=f[b+4>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}}while(0);f[h+4>>2]=e|1;f[h+e>>2]=e;if((h|0)==(f[52892]|0)){f[52889]=e;return}}else{f[a>>2]=d&-2;f[h+4>>2]=b|1;f[h+b>>2]=b;e=b}b=e>>>3;if(e>>>0<256){c=211588+(b<<1<<2)|0;a=f[52887]|0;b=1<<b;if(!(a&b)){f[52887]=a|b;b=c;a=c+8|0}else{a=c+8|0;b=f[a>>2]|0}f[a>>2]=h;f[b+12>>2]=h;f[h+8>>2]=b;f[h+12>>2]=c;return}b=e>>>8;if(!b)b=0;else if(e>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<<g;d=(i+520192|0)>>>16&4;i=i<<d;b=(i+245760|0)>>>16&2;b=14-(d|g|b)+(i<<b>>>15)|0;b=e>>>(b+7|0)&1|b<<1}d=211852+(b<<2)|0;f[h+28>>2]=b;f[h+20>>2]=0;f[h+16>>2]=0;a=f[52888]|0;c=1<<b;if(!(a&c)){f[52888]=a|c;f[d>>2]=h;f[h+24>>2]=d;f[h+12>>2]=h;f[h+8>>2]=h;return}a=e<<((b|0)==31?0:25-(b>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){b=69;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){b=68;break}else{a=a<<1;c=b}}if((b|0)==68){f[d>>2]=h;f[h+24>>2]=c;f[h+12>>2]=h;f[h+8>>2]=h;return}else if((b|0)==69){g=c+8|0;i=f[g>>2]|0;f[i+12>>2]=h;f[g>>2]=h;f[h+8>>2]=i;f[h+12>>2]=c;f[h+24>>2]=0;return}}function Pbb(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;a=Ubb(f[a+60>>2]|0)|0;f[c>>2]=a;a=Sbb(Ec(6,c|0)|0)|0;u=b;return a|0}function Qbb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;e=k;i=k+16|0;f[i>>2]=c;g=i+4|0;j=a+48|0;l=f[j>>2]|0;f[g>>2]=d-((l|0)!=0&1);h=a+44|0;f[i+8>>2]=f[h>>2];f[i+12>>2]=l;f[e>>2]=f[a+60>>2];f[e+4>>2]=i;f[e+8>>2]=2;e=Sbb(zc(145,e|0)|0)|0;if((e|0)<1)f[a>>2]=f[a>>2]|e&48^16;else{i=f[g>>2]|0;if(e>>>0>i>>>0){g=f[h>>2]|0;h=a+4|0;f[h>>2]=g;f[a+8>>2]=g+(e-i);if(!(f[j>>2]|0))e=d;else{f[h>>2]=g+1;b[c+(d+-1)>>0]=b[g>>0]|0;e=d}}}u=k;return e|0}function Rbb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;g=e;d=e+20|0;f[g>>2]=f[a+60>>2];f[g+4>>2]=0;f[g+8>>2]=b;f[g+12>>2]=d;f[g+16>>2]=c;if((Sbb(yc(140,g|0)|0)|0)<0){f[d>>2]=-1;a=-1}else a=f[d>>2]|0;u=e;return a|0}function Sbb(a){a=a|0;var b=0;if(a>>>0>4294963200){b=Tbb()|0;f[b>>2]=0-a;a=-1}return a|0}function Tbb(){return 212132}function Ubb(a){a=a|0;return a|0}function Vbb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[a+36>>2]=89;if(!(f[a>>2]&64)){f[e>>2]=f[a+60>>2];f[e+4>>2]=21523;f[e+8>>2]=g+16;if(Dc(54,e|0)|0)b[a+75>>0]=-1}e=Wbb(a,c,d)|0;u=g;return e|0}function Wbb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;k=m+16|0;g=m;e=m+32|0;i=a+28|0;d=f[i>>2]|0;f[e>>2]=d;j=a+20|0;d=(f[j>>2]|0)-d|0;f[e+4>>2]=d;f[e+8>>2]=b;f[e+12>>2]=c;d=d+c|0;h=a+60|0;f[g>>2]=f[h>>2];f[g+4>>2]=e;f[g+8>>2]=2;g=Sbb(Ac(146,g|0)|0)|0;a:do if((d|0)==(g|0))l=3;else{b=2;while(1){if((g|0)<0)break;d=d-g|0;o=f[e+4>>2]|0;n=g>>>0>o>>>0;e=n?e+8|0:e;b=b+(n<<31>>31)|0;o=g-(n?o:0)|0;f[e>>2]=(f[e>>2]|0)+o;n=e+4|0;f[n>>2]=(f[n>>2]|0)-o;f[k>>2]=f[h>>2];f[k+4>>2]=e;f[k+8>>2]=b;g=Sbb(Ac(146,k|0)|0)|0;if((d|0)==(g|0)){l=3;break a}}f[a+16>>2]=0;f[i>>2]=0;f[j>>2]=0;f[a>>2]=f[a>>2]|32;if((b|0)==2)c=0;else c=c-(f[e+4>>2]|0)|0}while(0);if((l|0)==3){o=f[a+44>>2]|0;f[a+16>>2]=o+(f[a+48>>2]|0);f[i>>2]=o;f[j>>2]=o}u=m;return c|0}function Xbb(a,b){a=+a;b=+b;var c=0,d=0;p[s>>3]=a;d=f[s>>2]|0;c=f[s+4>>2]|0;p[s>>3]=b;c=f[s+4>>2]&-2147483648|c&2147483647;f[s>>2]=d;f[s+4>>2]=c;return +(+p[s>>3])}function Ybb(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Zbb(a){a=a|0;return (a+-48|0)>>>0<10|0}function _bb(a,b){a=a|0;b=b|0;return +(+$bb(a,b,0))}function $bb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+128|0;h=i;e=h;g=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=h+4|0;f[e>>2]=a;g=h+8|0;f[g>>2]=-1;f[h+44>>2]=a;f[h+76>>2]=-1;acb(h,0);d=+bcb(h,c,1);c=(f[e>>2]|0)-(f[g>>2]|0)+(f[h+108>>2]|0)|0;if(b|0)f[b>>2]=c|0?a+c|0:a;u=i;return +d}function acb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a+104>>2]=b;c=f[a+8>>2]|0;d=f[a+4>>2]|0;e=c-d|0;f[a+108>>2]=e;f[a+100>>2]=(b|0)!=0&(e|0)>(b|0)?d+b|0:c;return}function bcb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(c|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:e=0.0}a:do if((j|0)==4){o=a+4|0;n=a+100|0;do{c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0}while((Ybb(c)|0)!=0);b:do switch(c|0){case 43:case 45:{i=1-(((c|0)==45&1)<<1)|0;c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;g=h[c>>0]|0;break b}else{g=ccb(a)|0;break b}}default:{g=c;i=1}}while(0);c=0;do{if((g|32|0)!=(b[201886+c>>0]|0))break;do if(c>>>0<7){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=ccb(a)|0;break}}while(0);c=c+1|0}while(c>>>0<8);c:do switch(c|0){case 8:break;case 3:{j=23;break}default:{k=(d|0)!=0;if(k&c>>>0>3)if((c|0)==8)break c;else{j=23;break c}d:do if(!c){c=0;do{if((g|32|0)!=(b[202403+c>>0]|0))break d;do if(c>>>0<2){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=ccb(a)|0;break}}while(0);c=c+1|0}while(c>>>0<3)}while(0);switch(c|0){case 3:{c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0;if((c|0)==40)c=1;else{if(!(f[n>>2]|0)){e=B;break a}f[o>>2]=(f[o>>2]|0)+-1;e=B;break a}while(1){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0}else g=ccb(a)|0;if(!((g+-48|0)>>>0<10|(g+-65|0)>>>0<26))if(!((g|0)==95|(g+-97|0)>>>0<26))break;c=c+1|0}if((g|0)==41){e=B;break a}g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!k){o=Tbb()|0;f[o>>2]=22;acb(a,0);e=0.0;break a}if(!c){e=B;break a}while(1){c=c+-1|0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!c){e=B;break a}}}case 0:{if((g|0)==48){c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0;if((c|32|0)==120){e=+dcb(a,m,l,i,d);break a}if(!(f[n>>2]|0))c=48;else{f[o>>2]=(f[o>>2]|0)+-1;c=48}}else c=g;e=+ecb(a,c,m,l,i,d);break a}default:{if(f[n>>2]|0)f[o>>2]=(f[o>>2]|0)+-1;o=Tbb()|0;f[o>>2]=22;acb(a,0);e=0.0;break a}}}}while(0);if((j|0)==23){g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if((d|0)!=0&c>>>0>3)do{if(!g)f[o>>2]=(f[o>>2]|0)+-1;c=c+-1|0}while(c>>>0>3)}e=+(i|0)*C}while(0);return +e}function ccb(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0;d=a+104|0;c=f[d>>2]|0;if(!c)i=3;else if((f[a+108>>2]|0)<(c|0))i=3;else i=4;if((i|0)==3){c=mcb(a)|0;if((c|0)<0)i=4;else{e=f[d>>2]|0;d=a+8|0;if(!e){e=f[d>>2]|0;d=e}else{j=f[d>>2]|0;g=f[a+4>>2]|0;d=e-(f[a+108>>2]|0)|0;e=j;if((j-g|0)<(d|0))d=e;else d=g+(d+-1)|0}f[a+100>>2]=d;d=a+4|0;if(!e)d=f[d>>2]|0;else{d=f[d>>2]|0;j=a+108|0;f[j>>2]=e+1-d+(f[j>>2]|0)}d=d+-1|0;if((c|0)!=(h[d>>0]|0|0))b[d>>0]=c}}if((i|0)==4){f[a+100>>2]=0;c=-1}return c|0}function dcb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=f[y>>2]|0;x=a+100|0;if(i>>>0<(f[x>>2]|0)>>>0){f[y>>2]=i+1;j=h[i>>0]|0;l=0}else{j=ccb(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;g=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=f[y>>2]|0;if(i>>>0<(f[x>>2]|0)>>>0){f[y>>2]=i+1;j=h[i>>0]|0;l=1;continue}else{j=ccb(a)|0;l=1;continue}}if((w|0)==8){i=f[y>>2]|0;if(i>>>0<(f[x>>2]|0)>>>0){f[y>>2]=i+1;j=h[i>>0]|0}else j=ccb(a)|0;if((j|0)==48){l=0;j=0;do{i=f[y>>2]|0;if(i>>>0<(f[x>>2]|0)>>>0){f[y>>2]=i+1;m=h[i>>0]|0}else m=ccb(a)|0;l=vrb(l|0,j|0,-1,-1)|0;j=I}while((m|0)==48);s=1;n=0;o=1.0;g=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;g=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0<10)w=20;else{r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if((v|0)<0|(v|0)==0&u>>>0<8){k=o;i=m+(i<<4)|0}else if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;g=g+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;g=t?g:g+o*.5;break}while(0);q=vrb(u|0,v|0,1,0)|0;r=1;p=I}m=f[y>>2]|0;if(m>>>0<(f[x>>2]|0)>>>0){f[y>>2]=m+1;o=k;m=h[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=ccb(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(f[x>>2]|0)==0;if(!i)f[y>>2]=(f[y>>2]|0)+-1;if(!e)acb(a,0);else{if(!i)f[y>>2]=(f[y>>2]|0)+-1;if(!((s|0)==0|i))f[y>>2]=(f[y>>2]|0)+-1}g=+(d|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=vrb(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=I}}else n=i;if((m|32|0)==112){j=fcb(a,e)|0;i=I;if((j|0)==0&(i|0)==-2147483648){if(!e){acb(a,0);g=0.0;break}if(!(f[x>>2]|0)){j=0;i=0}else{f[y>>2]=(f[y>>2]|0)+-1;j=0;i=0}}}else if(!(f[x>>2]|0)){j=0;i=0}else{f[y>>2]=(f[y>>2]|0)+-1;j=0;i=0}l=Frb(q|0,p|0,2)|0;l=vrb(l|0,I|0,-32,-1)|0;l=vrb(l|0,I|0,j|0,i|0)|0;i=I;if(!n){g=+(d|0)*0.0;break}y=0-c|0;e=((y|0)<0)<<31>>31;if((i|0)>(e|0)|(i|0)==(e|0)&l>>>0>y>>>0){b=Tbb()|0;f[b>>2]=34;g=+(d|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=c+-106|0;e=((y|0)<0)<<31>>31;if((i|0)<(e|0)|(i|0)==(e|0)&l>>>0<y>>>0){b=Tbb()|0;f[b>>2]=34;g=+(d|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(g>=.5);j=j<<1|(y^1)&1;g=g+(y?g:g+-1.0);l=vrb(l|0,i|0,-1,-1)|0;i=I}while((j|0)>-1);o=g;m=j}else{o=g;m=n}y=((b|0)<0)<<31>>31;c=wrb(32,0,c|0,((c|0)<0)<<31>>31|0)|0;i=vrb(c|0,I|0,l|0,i|0)|0;c=I;if((c|0)<(y|0)|(c|0)==(y|0)&i>>>0<b>>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;g=+(d|0)}if((w|0)==61){g=+(d|0);k=+hcb(+gcb(1.0,i),g);i=j}d=(m&1|0)==0&(o!=0.0&(i|0)<32);g=(d?0.0:o)*g+(k+g*+((m+(d&1)|0)>>>0))-k;if(!(g!=0.0)){d=Tbb()|0;f[d>>2]=34}g=+jcb(g,l)}while(0);return +g}function ecb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0;G=u;u=u+512|0;D=G;E=d+c|0;F=0-E|0;B=a+4|0;C=a+100|0;j=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;o=j;p=0;n=0;break a}}b=f[B>>2]|0;if(b>>>0<(f[C>>2]|0)>>>0){f[B>>2]=b+1;b=h[b>>0]|0;j=1;continue}else{b=ccb(a)|0;j=1;continue}}if((A|0)==6){b=f[B>>2]|0;if(b>>>0<(f[C>>2]|0)>>>0){f[B>>2]=b+1;b=h[b>>0]|0}else b=ccb(a)|0;if((b|0)==48){j=0;b=0;while(1){j=vrb(j|0,b|0,-1,-1)|0;n=I;b=f[B>>2]|0;if(b>>>0<(f[C>>2]|0)>>>0){f[B>>2]=b+1;b=h[b>>0]|0}else b=ccb(a)|0;if((b|0)==48)b=n;else{v=1;o=1;p=j;break}}}else{v=1;o=j;p=0;n=0}}f[D>>2]=0;m=b+-48|0;k=(b|0)==46;b:do if(k|m>>>0<10){A=D+496|0;w=0;j=0;s=0;x=v;y=o;z=m;o=0;m=0;c:while(1){do if(k)if(!x){x=1;p=o;n=m}else break c;else{o=vrb(o|0,m|0,1,0)|0;m=I;v=(b|0)!=48;if((j|0)>=125){if(!v)break;f[A>>2]=f[A>>2]|1;break}k=D+(j<<2)|0;if(!w)b=z;else b=b+-48+((f[k>>2]|0)*10|0)|0;f[k>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;j=j+(y&1)|0;s=v?o:s;y=1}while(0);b=f[B>>2]|0;if(b>>>0<(f[C>>2]|0)>>>0){f[B>>2]=b+1;b=h[b>>0]|0}else b=ccb(a)|0;z=b+-48|0;k=(b|0)==46;if(!(k|z>>>0<10)){v=x;k=y;A=29;break b}}b=w;k=(y|0)!=0;A=37}else{w=0;j=0;s=0;k=o;o=0;m=0;A=29}while(0);do if((A|0)==29){z=(v|0)==0;p=z?o:p;n=z?m:n;k=(k|0)!=0;if(!(k&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}k=fcb(a,g)|0;b=I;if((k|0)==0&(b|0)==-2147483648){if(!g){acb(a,0);i=0.0;break}if(!(f[C>>2]|0)){k=0;b=0}else{f[B>>2]=(f[B>>2]|0)+-1;k=0;b=0}}y=vrb(k|0,b|0,p|0,n|0)|0;b=w;n=I;A=41}while(0);if((A|0)==37)if(!(f[C>>2]|0))A=39;else{f[B>>2]=(f[B>>2]|0)+-1;if(k){y=p;A=41}else A=40}if((A|0)==39)if(k){y=p;A=41}else A=40;do if((A|0)==40){F=Tbb()|0;f[F>>2]=22;acb(a,0);i=0.0}else if((A|0)==41){k=f[D>>2]|0;if(!k){i=+(e|0)*0.0;break}if(((m|0)<0|(m|0)==0&o>>>0<10)&((y|0)==(o|0)&(n|0)==(m|0)))if((c|0)>30|(k>>>c|0)==0){i=+(e|0)*+(k>>>0);break}a=(d|0)/-2|0;C=((a|0)<0)<<31>>31;if((n|0)>(C|0)|(n|0)==(C|0)&y>>>0>a>>>0){F=Tbb()|0;f[F>>2]=34;i=+(e|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=d+-106|0;C=((a|0)<0)<<31>>31;if((n|0)<(C|0)|(n|0)==(C|0)&y>>>0<a>>>0){F=Tbb()|0;f[F>>2]=34;i=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){m=D+(j<<2)|0;k=f[m>>2]|0;while(1){k=k*10|0;if((b|0)>=8)break;else b=b+1|0}f[m>>2]=k}j=j+1|0}if((s|0)<9)if((s|0)<=(y|0)&(y|0)<18){if((y|0)==9){i=+(e|0)*+((f[D>>2]|0)>>>0);break}if((y|0)<9){i=+(e|0)*+((f[D>>2]|0)>>>0)/+(f[35168+(8-y<<2)>>2]|0);break}a=c+27+(X(y,-3)|0)|0;b=f[D>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(e|0)*+(b>>>0)*+(f[35168+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;m=0}else{s=(y|0)>-1?b:b+9|0;o=f[35168+(8-s<<2)>>2]|0;if(!j){m=0;j=0;k=y}else{p=1e9/(o|0)|0;m=0;n=0;k=y;b=0;do{B=D+(b<<2)|0;C=f[B>>2]|0;a=((C>>>0)/(o>>>0)|0)+m|0;f[B>>2]=a;m=X(p,(C>>>0)%(o>>>0)|0)|0;a=(b|0)==(n|0)&(a|0)==0;k=a?k+-9|0:k;n=a?n+1&127:n;b=b+1|0}while((b|0)!=(j|0));if(!m)m=n;else{f[D+(j<<2)>>2]=m;m=n;j=j+1|0}}b=0;y=9-s+k|0}d:while(1){s=(y|0)<18;v=(y|0)==18;w=D+(m<<2)|0;while(1){if(!s){if(!v){k=y;break d}if((f[w>>2]|0)>>>0>=9007199){k=18;break d}}k=0;x=j;j=j+127|0;while(1){n=j&127;o=D+(n<<2)|0;j=Frb(f[o>>2]|0,0,29)|0;j=vrb(j|0,I|0,k|0,0)|0;k=I;if(k>>>0>0|(k|0)==0&j>>>0>1e9){p=Crb(j|0,k|0,1e9,0)|0;j=Drb(j|0,k|0,1e9,0)|0}else p=0;f[o>>2]=j;a=(n|0)==(m|0);x=(j|0)==0&(((n|0)!=(x+127&127|0)|a)^1)?n:x;if(a)break;else{k=p;j=n+-1|0}}b=b+-29|0;if(p|0)break;else j=x}m=m+127&127;j=x+127&127;k=D+((x+126&127)<<2)|0;if((m|0)==(x|0))f[k>>2]=f[k>>2]|f[D+(j<<2)>>2];else j=x;f[D+(m<<2)>>2]=p;y=y+9|0}e:while(1){x=j+1&127;y=D+((j+127&127)<<2)|0;v=k;while(1){o=(v|0)==18;w=(v|0)>27?9:1;z=m;while(1){n=0;while(1){k=n+z&127;if((k|0)==(j|0)){k=2;A=88;break}k=f[D+(k<<2)>>2]|0;m=f[35200+(n<<2)>>2]|0;if(k>>>0<m>>>0){k=2;A=88;break}if(k>>>0>m>>>0)break;k=n+1|0;if((n|0)<1)n=k;else{A=88;break}}if((A|0)==88){A=0;if(o&(k|0)==2){i=0.0;n=0;break e}}b=w+b|0;if((z|0)==(j|0))z=j;else break}p=(1<<w)+-1|0;s=1e9>>>w;o=0;m=z;k=v;n=z;do{B=D+(n<<2)|0;C=f[B>>2]|0;a=(C>>>w)+o|0;f[B>>2]=a;o=X(C&p,s)|0;a=(n|0)==(m|0)&(a|0)==0;k=a?k+-9|0:k;m=a?m+1&127:m;n=n+1&127}while((n|0)!=(j|0));if(!o){v=k;continue}if((x|0)!=(m|0))break;f[y>>2]=f[y>>2]|1;v=k}f[D+(j<<2)>>2]=o;j=x}do{m=n+z&127;k=j+1&127;if((m|0)==(j|0)){f[D+(k+-1<<2)>>2]=0;j=k}i=i*1.0e9+ +((f[D+(m<<2)>>2]|0)>>>0);n=n+1|0}while((n|0)!=2);t=+(e|0);l=i*t;m=b+53|0;o=m-d|0;p=(o|0)<(c|0);n=p?((o|0)>0?o:0):c;if((n|0)<53){H=+hcb(+gcb(1.0,105-n|0),l);q=+icb(l,+gcb(1.0,53-n|0));r=H;i=q;q=H+(l-q)}else{r=0.0;i=0.0;q=l}k=z+2&127;if((k|0)==(j|0))l=i;else{k=f[D+(k<<2)>>2]|0;do if(k>>>0<5e8){if(!k)if((z+3&127|0)==(j|0))break;i=t*.25+i}else{if((k|0)!=5e8){i=t*.75+i;break}if((z+3&127|0)==(j|0)){i=t*.5+i;break}else{i=t*.75+i;break}}while(0);if((53-n|0)>1)if(+icb(i,1.0)!=0.0)l=i;else l=i+1.0;else l=i}i=q+l-r;do if((m&2147483647|0)>(-2-E|0)){j=!(+K(+i)>=9007199254740992.0);b=b+((j^1)&1)|0;i=j?i:i*.5;if((b+50|0)<=(F|0))if(!(l!=0.0&(p&((n|0)!=(o|0)|j))))break;F=Tbb()|0;f[F>>2]=34}while(0);i=+jcb(i,b)}while(0);u=G;return +i}function fcb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;g=a+4|0;c=f[g>>2]|0;i=a+100|0;if(c>>>0<(f[i>>2]|0)>>>0){f[g>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0;switch(c|0){case 43:case 45:{d=(c|0)==45&1;c=f[g>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[g>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0;if((b|0)!=0&(c+-48|0)>>>0>9)if(f[i>>2]|0)f[g>>2]=(f[g>>2]|0)+-1;break}default:d=0}if((c+-48|0)>>>0>9)if(!(f[i>>2]|0)){d=-2147483648;c=0}else{f[g>>2]=(f[g>>2]|0)+-1;d=-2147483648;c=0}else{e=0;do{e=c+-48+(e*10|0)|0;c=f[g>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[g>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0}while((c+-48|0)>>>0<10&(e|0)<214748364);b=((e|0)<0)<<31>>31;if((c+-48|0)>>>0<10)do{b=Brb(e|0,b|0,10,0)|0;e=I;c=vrb(c|0,((c|0)<0)<<31>>31|0,-48,-1)|0;e=vrb(c|0,I|0,b|0,e|0)|0;b=I;c=f[g>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[g>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0}while((c+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&e>>>0<2061584302));if((c+-48|0)>>>0<10)do{c=f[g>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[g>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0}while((c+-48|0)>>>0<10);if(f[i>>2]|0)f[g>>2]=(f[g>>2]|0)+-1;i=(d|0)!=0;c=wrb(0,0,e|0,b|0)|0;d=i?I:b;c=i?c:e}I=d;return c|0}function gcb(a,b){a=+a;b=b|0;var c=0,d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=(b|0)>2046;c=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((c|0)<1023?c:1023):b+-1023|0}else if((b|0)<-1022){a=a*2.2250738585072014e-308;c=(b|0)<-2044;d=b+2044|0;a=c?a*2.2250738585072014e-308:a;b=c?((d|0)>-1022?d:-1022):b+1022|0}c=Frb(b+1023|0,0,52)|0;d=I;f[s>>2]=c;f[s+4>>2]=d;return +(a*+p[s>>3])}function hcb(a,b){a=+a;b=+b;return +(+Xbb(a,b))}function icb(a,b){a=+a;b=+b;return +(+kcb(a,b))}function jcb(a,b){a=+a;b=b|0;return +(+gcb(a,b))}function kcb(a,b){a=+a;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;p[s>>3]=a;h=f[s>>2]|0;j=f[s+4>>2]|0;p[s>>3]=b;l=f[s>>2]|0;m=f[s+4>>2]|0;d=Erb(h|0,j|0,52)|0;d=d&2047;k=Erb(l|0,m|0,52)|0;k=k&2047;n=j&-2147483648;g=Frb(l|0,m|0,1)|0;i=I;a:do if((g|0)==0&(i|0)==0)o=3;else{e=lcb(b)|0;c=I&2147483647;if((d|0)==2047|(c>>>0>2146435072|(c|0)==2146435072&e>>>0>0))o=3;else{c=Frb(h|0,j|0,1)|0;e=I;if(!(e>>>0>i>>>0|(e|0)==(i|0)&c>>>0>g>>>0))return +((c|0)==(g|0)&(e|0)==(i|0)?a*0.0:a);if(!d){c=Frb(h|0,j|0,12)|0;e=I;if((e|0)>-1|(e|0)==-1&c>>>0>4294967295){d=0;do{d=d+-1|0;c=Frb(c|0,e|0,1)|0;e=I}while((e|0)>-1|(e|0)==-1&c>>>0>4294967295)}else d=0;h=Frb(h|0,j|0,1-d|0)|0;g=I}else g=j&1048575|1048576;if(!k){e=Frb(l|0,m|0,12)|0;i=I;if((i|0)>-1|(i|0)==-1&e>>>0>4294967295){c=0;do{c=c+-1|0;e=Frb(e|0,i|0,1)|0;i=I}while((i|0)>-1|(i|0)==-1&e>>>0>4294967295)}else c=0;l=Frb(l|0,m|0,1-c|0)|0;k=c;j=I}else j=m&1048575|1048576;e=wrb(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;b:do if((d|0)>(k|0)){while(1){if(i){if((e|0)==0&(c|0)==0)break}else{e=h;c=g}h=Frb(e|0,c|0,1)|0;g=I;d=d+-1|0;e=wrb(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;if((d|0)<=(k|0))break b}b=a*0.0;break a}while(0);if(i){if((e|0)==0&(c|0)==0){b=a*0.0;break}}else{c=g;e=h}if(c>>>0<1048576|(c|0)==1048576&e>>>0<0)do{e=Frb(e|0,c|0,1)|0;c=I;d=d+-1|0}while(c>>>0<1048576|(c|0)==1048576&e>>>0<0);if((d|0)>0){m=vrb(e|0,c|0,0,-1048576)|0;c=I;d=Frb(d|0,0,52)|0;c=c|I;d=m|d}else{d=Erb(e|0,c|0,1-d|0)|0;c=I}f[s>>2]=d;f[s+4>>2]=c|n;b=+p[s>>3]}}while(0);if((o|0)==3){b=a*b;b=b/b}return +b}function lcb(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function mcb(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;if(!(ncb(a)|0))if((Qg[f[a+32>>2]&127](a,b,1)|0)==1)a=h[b>>0]|0;else a=-1;else a=-1;u=c;return a|0}function ncb(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=a+20|0;d=a+28|0;if((f[c>>2]|0)>>>0>(f[d>>2]|0)>>>0)Qg[f[a+36>>2]&127](a,0,0)|0;f[a+16>>2]=0;f[d>>2]=0;f[c>>2]=0;c=f[a>>2]|0;if(!(c&4)){d=(f[a+44>>2]|0)+(f[a+48>>2]|0)|0;f[a+8>>2]=d;f[a+4>>2]=d;c=c<<27>>31}else{f[a>>2]=c|32;c=-1}return c|0}function ocb(a,b){a=a|0;b=b|0;return +(+$bb(a,b,1))}function pcb(a,b){a=a|0;b=b|0;return +(+$bb(a,b,2))}function qcb(a,b,c){a=a|0;b=b|0;c=c|0;return +(+_bb(a,b))}function rcb(a,b,c){a=a|0;b=b|0;c=c|0;return +(+ocb(a,b))}function scb(a,b,c){a=a|0;b=b|0;c=c|0;return +(+pcb(a,b))}function tcb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=ucb(a,b,e)|0;u=d;return c|0}function ucb(a,b,c){a=a|0;b=b|0;c=c|0;return vcb(a,2147483647,b,c)|0}function vcb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+128|0;g=m+124|0;l=m;h=l;i=35208;j=h+124|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((c+-1|0)>>>0>2147483646)if(!c){a=g;c=1;k=4}else{c=Tbb()|0;f[c>>2]=75;c=-1}else k=4;if((k|0)==4){k=-2-a|0;k=c>>>0>k>>>0?k:c;f[l+48>>2]=k;g=l+20|0;f[g>>2]=a;f[l+44>>2]=a;c=a+k|0;a=l+16|0;f[a>>2]=c;f[l+28>>2]=c;c=wcb(l,d,e)|0;if(k){l=f[g>>2]|0;b[l+(((l|0)==(f[a>>2]|0))<<31>>31)>>0]=0}}u=m;return c|0}function wcb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+224|0;m=r+120|0;o=r+80|0;p=r;q=r+136|0;e=o;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[m>>2]=f[d>>2];if((xcb(0,c,m,p,o)|0)<0)d=-1;else{if((f[a+76>>2]|0)>-1)n=ycb(a)|0;else n=0;d=f[a>>2]|0;l=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;e=a+48|0;if(!(f[e>>2]|0)){g=a+44|0;h=f[g>>2]|0;f[g>>2]=q;i=a+28|0;f[i>>2]=q;j=a+20|0;f[j>>2]=q;f[e>>2]=80;k=a+16|0;f[k>>2]=q+80;d=xcb(a,c,m,p,o)|0;if(h){Qg[f[a+36>>2]&127](a,0,0)|0;d=(f[j>>2]|0)==0?-1:d;f[g>>2]=h;f[e>>2]=0;f[k>>2]=0;f[i>>2]=0;f[j>>2]=0}}else d=xcb(a,c,m,p,o)|0;e=f[a>>2]|0;f[a>>2]=e|l;if(n|0)zcb(a);d=(e&32|0)==0?d:-1}u=r;return d|0}function xcb(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;B=F+16|0;C=F;z=F+24|0;D=F+8|0;E=F+20|0;f[B>>2]=c;w=(a|0)!=0;x=z+40|0;y=x;z=z+39|0;A=D+4|0;i=0;c=0;k=0;a:while(1){do if((c|0)>-1)if((i|0)>(2147483647-c|0)){c=Tbb()|0;f[c>>2]=75;c=-1;break}else{c=i+c|0;break}while(0);q=f[B>>2]|0;i=b[q>>0]|0;if(!(i<<24>>24)){v=88;break}else j=q;b:while(1){switch(i<<24>>24){case 37:{i=j;v=9;break b}case 0:{i=j;break b}default:{}}t=j+1|0;f[B>>2]=t;i=b[t>>0]|0;j=t}c:do if((v|0)==9)while(1){v=0;if((b[j+1>>0]|0)!=37)break c;i=i+1|0;j=j+2|0;f[B>>2]=j;if((b[j>>0]|0)!=37)break;else v=9}while(0);i=i-q|0;if(w)Acb(a,q,i);if(i|0)continue;t=(Zbb(b[(f[B>>2]|0)+1>>0]|0)|0)==0;j=f[B>>2]|0;if(t){r=-1;l=k;i=1}else if((b[j+2>>0]|0)==36){r=(b[j+1>>0]|0)+-48|0;l=1;i=3}else{r=-1;l=k;i=1}i=j+i|0;f[B>>2]=i;j=b[i>>0]|0;t=(j<<24>>24)+-32|0;if(t>>>0>31|(1<<t&75913|0)==0)k=0;else{k=0;do{k=1<<(j<<24>>24)+-32|k;i=i+1|0;f[B>>2]=i;j=b[i>>0]|0;t=(j<<24>>24)+-32|0}while(!(t>>>0>31|(1<<t&75913|0)==0))}if(j<<24>>24==42){if(!(Zbb(b[i+1>>0]|0)|0))v=23;else{j=f[B>>2]|0;if((b[j+2>>0]|0)==36){i=j+1|0;f[h+((b[i>>0]|0)+-48<<2)>>2]=10;i=f[g+((b[i>>0]|0)+-48<<3)>>2]|0;l=1;j=j+3|0}else v=23}if((v|0)==23){v=0;if(l|0){c=-1;break}if(w){t=(f[e>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[e>>2]=t+4}else i=0;l=0;j=(f[B>>2]|0)+1|0}f[B>>2]=j;s=(i|0)<0;t=s?0-i|0:i;k=s?k|8192:k;s=l;i=j}else{i=Bcb(B)|0;if((i|0)<0){c=-1;break}t=i;s=l;i=f[B>>2]|0}do if((b[i>>0]|0)==46){if((b[i+1>>0]|0)!=42){f[B>>2]=i+1;n=Bcb(B)|0;i=f[B>>2]|0;break}if(Zbb(b[i+2>>0]|0)|0){i=f[B>>2]|0;if((b[i+3>>0]|0)==36){n=i+2|0;f[h+((b[n>>0]|0)+-48<<2)>>2]=10;n=f[g+((b[n>>0]|0)+-48<<3)>>2]|0;i=i+4|0;f[B>>2]=i;break}}if(s|0){c=-1;break a}if(w){o=(f[e>>2]|0)+(4-1)&~(4-1);i=f[o>>2]|0;f[e>>2]=o+4}else i=0;o=(f[B>>2]|0)+2|0;f[B>>2]=o;n=i;i=o}else n=-1;while(0);o=0;while(1){if(((b[i>>0]|0)+-65|0)>>>0>57){c=-1;break a}j=i;i=i+1|0;f[B>>2]=i;j=b[(b[j>>0]|0)+-65+(201895+(o*58|0))>>0]|0;l=j&255;if((l+-1|0)>>>0>=8)break;else o=l}if(!(j<<24>>24)){c=-1;break}m=(r|0)>-1;do if(j<<24>>24==19)if(m){c=-1;break a}else v=50;else{if(m){f[h+(r<<2)>>2]=l;m=g+(r<<3)|0;r=f[m+4>>2]|0;v=C;f[v>>2]=f[m>>2];f[v+4>>2]=r;v=50;break}if(!w){c=0;break a}Ccb(C,l,e);i=f[B>>2]|0}while(0);if((v|0)==50){v=0;if(!w){i=0;k=s;continue}}j=b[i+-1>>0]|0;j=(o|0)!=0&(j&15|0)==3?j&-33:j;i=k&-65537;r=(k&8192|0)==0?k:i;d:do switch(j|0){case 110:switch((o&255)<<24>>24){case 0:{f[f[C>>2]>>2]=c;i=0;k=s;continue a}case 1:{f[f[C>>2]>>2]=c;i=0;k=s;continue a}case 2:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;k=s;continue a}case 3:{d[f[C>>2]>>1]=c;i=0;k=s;continue a}case 4:{b[f[C>>2]>>0]=c;i=0;k=s;continue a}case 6:{f[f[C>>2]>>2]=c;i=0;k=s;continue a}case 7:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;k=s;continue a}default:{i=0;k=s;continue a}}case 112:{j=120;i=n>>>0>8?n:8;k=r|8;v=62;break}case 88:case 120:{i=n;k=r;v=62;break}case 111:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;m=Ecb(i,j,x)|0;k=y-m|0;o=0;l=202359;n=(r&8|0)==0|(n|0)>(k|0)?n:k+1|0;k=r;v=68;break}case 105:case 100:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;if((j|0)<0){i=wrb(0,0,i|0,j|0)|0;j=I;k=C;f[k>>2]=i;f[k+4>>2]=j;k=1;l=202359;v=67;break d}else{k=(r&2049|0)!=0&1;l=(r&2048|0)==0?((r&1|0)==0?202359:202361):202360;v=67;break d}}case 117:{j=C;k=0;l=202359;i=f[j>>2]|0;j=f[j+4>>2]|0;v=67;break}case 99:{b[z>>0]=f[C>>2];q=z;o=0;l=202359;m=x;j=1;break}case 109:{j=Tbb()|0;j=Gcb(f[j>>2]|0)|0;v=72;break}case 115:{j=f[C>>2]|0;j=j|0?j:202369;v=72;break}case 67:{f[D>>2]=f[C>>2];f[A>>2]=0;f[C>>2]=D;n=-1;k=D;v=76;break}case 83:{i=f[C>>2]|0;if(!n){Icb(a,32,t,0,r);i=0;v=85}else{k=i;v=76}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{i=Kcb(a,+p[C>>3],t,n,r,j)|0;k=s;continue a}default:{o=0;l=202359;m=x;j=n;i=r}}while(0);e:do if((v|0)==62){r=C;q=f[r>>2]|0;r=f[r+4>>2]|0;m=Dcb(q,r,x,j&32)|0;l=(k&8|0)==0|(q|0)==0&(r|0)==0;o=l?0:2;l=l?202359:202359+(j>>4)|0;n=i;i=q;j=r;v=68}else if((v|0)==67){m=Fcb(i,j,x)|0;o=k;k=r;v=68}else if((v|0)==72){v=0;r=Hcb(j,0,n)|0;k=(r|0)==0;q=j;o=0;l=202359;m=k?j+n|0:r;j=k?n:r-j|0}else if((v|0)==76){v=0;m=k;i=0;j=0;while(1){l=f[m>>2]|0;if(!l)break;j=Jcb(E,l)|0;if((j|0)<0|j>>>0>(n-i|0)>>>0)break;i=j+i|0;if(n>>>0>i>>>0)m=m+4|0;else break}if((j|0)<0){c=-1;break a}Icb(a,32,t,i,r);if(!i){i=0;v=85}else{l=0;while(1){j=f[k>>2]|0;if(!j){v=85;break e}j=Jcb(E,j)|0;l=j+l|0;if((l|0)>(i|0)){v=85;break e}Acb(a,E,j);if(l>>>0>=i>>>0){v=85;break}else k=k+4|0}}}while(0);if((v|0)==68){v=0;j=(i|0)!=0|(j|0)!=0;i=(n|0)!=0|j;j=y-m+((j^1)&1)|0;q=i?m:x;m=x;j=i?((n|0)>(j|0)?n:j):n;i=(n|0)>-1?k&-65537:k}else if((v|0)==85){v=0;Icb(a,32,t,i,r^8192);i=(t|0)>(i|0)?t:i;k=s;continue}n=m-q|0;m=(j|0)<(n|0)?n:j;r=m+o|0;k=(t|0)<(r|0)?r:t;Icb(a,32,k,r,i);Acb(a,l,o);Icb(a,48,k,r,i^65536);Icb(a,48,m,n,0);Acb(a,q,n);Icb(a,32,k,r,i^8192);i=k;k=s}f:do if((v|0)==88)if(!a)if(!k)c=0;else{c=1;while(1){i=f[h+(c<<2)>>2]|0;if(!i)break;Ccb(g+(c<<3)|0,i,e);i=c+1|0;if((c|0)<9)c=i;else{c=i;break}}if((c|0)<10)while(1){if(f[h+(c<<2)>>2]|0){c=-1;break f}if((c|0)<9)c=c+1|0;else{c=1;break}}else c=1}while(0);u=F;return c|0}function ycb(a){a=a|0;return 0}function zcb(a){a=a|0;return}function Acb(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))Ycb(b,c,a)|0;return}function Bcb(a){a=a|0;var c=0,d=0;if(!(Zbb(b[f[a>>2]>>0]|0)|0))c=0;else{c=0;do{d=f[a>>2]|0;c=(c*10|0)+-48+(b[d>>0]|0)|0;d=d+1|0;f[a>>2]=d}while((Zbb(b[d>>0]|0)|0)!=0)}return c|0}function Ccb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=b;break a}case 10:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=0;break a}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);b=d;e=f[b>>2]|0;b=f[b+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=e;f[d+4>>2]=b;break a}case 13:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&65535;f[e+4>>2]=0;break a}case 15:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&255)<<24>>24;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&255;f[e+4>>2]=0;break a}case 17:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}case 18:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}default:break a}while(0);while(0);return}function Dcb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=h[202411+(a&15)>>0]|0|e;a=Erb(a|0,c|0,4)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function Ecb(a,c,d){a=a|0;c=c|0;d=d|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=a&7|48;a=Erb(a|0,c|0,3)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function Fcb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295){while(1){e=Drb(a|0,c|0,10,0)|0;d=d+-1|0;b[d>>0]=e&255|48;e=a;a=Crb(a|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=I}c=a}else c=a;if(c)while(1){d=d+-1|0;b[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function Gcb(a){a=a|0;var b=0;b=(Rcb()|0)+188|0;return Scb(a,f[b>>2]|0)|0}function Hcb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=c&255;e=(d|0)!=0;a:do if(e&(a&3|0)!=0){g=c&255;while(1){if((b[a>>0]|0)==g<<24>>24){i=6;break a}a=a+1|0;d=d+-1|0;e=(d|0)!=0;if(!(e&(a&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(e)i=6;else d=0;b:do if((i|0)==6){g=c&255;if((b[a>>0]|0)!=g<<24>>24){e=X(h,16843009)|0;c:do if(d>>>0>3)while(1){h=f[a>>2]^e;if((h&-2139062144^-2139062144)&h+-16843009|0)break;a=a+4|0;d=d+-4|0;if(d>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!d){d=0;break}while(1){if((b[a>>0]|0)==g<<24>>24)break b;a=a+1|0;d=d+-1|0;if(!d){d=0;break}}}}while(0);return (d|0?a:0)|0}function Icb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=u;u=u+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;Krb(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Acb(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Acb(a,f,e)}u=g;return}function Jcb(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Ocb(a,b,0)|0;return a|0}function Kcb(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+560|0;l=F+8|0;t=F;E=F+524|0;D=E;m=F+512|0;f[t>>2]=0;C=m+12|0;Lcb(c)|0;if((I|0)<0){c=-c;A=1;z=202376}else{A=(g&2049|0)!=0&1;z=(g&2048|0)==0?((g&1|0)==0?202377:202382):202379}Lcb(c)|0;do if(0==0&(I&2146435072|0)==2146435072){E=(i&32|0)!=0;j=A+3|0;Icb(a,32,d,j,g&-65537);Acb(a,z,A);Acb(a,c!=c|0.0!=0.0?(E?202403:202407):E?202395:202399,3);Icb(a,32,d,j,g^8192)}else{c=+Mcb(c,t)*2.0;j=c!=0.0;if(j)f[t>>2]=(f[t>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;r=(p|0)==0?z:z+9|0;q=A|2;j=12-e|0;do if(!(e>>>0>11|(j|0)==0)){n=8.0;do{j=j+-1|0;n=n*16.0}while((j|0)!=0);if((b[r>>0]|0)==45){c=-(n+(-c-n));break}else{c=c+n-n;break}}while(0);k=f[t>>2]|0;j=(k|0)<0?0-k|0:k;j=Fcb(j,((j|0)<0)<<31>>31,C)|0;if((j|0)==(C|0)){j=m+11|0;b[j>>0]=48}b[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;b[o>>0]=i+15;l=(e|0)<1;m=(g&8|0)==0;j=E;do{B=~~c;k=j+1|0;b[j>>0]=p|h[202411+B>>0];c=(c-+(B|0))*16.0;if((k-D|0)==1)if(m&(l&c==0.0))j=k;else{b[k>>0]=46;j=j+2|0}else j=k}while(c!=0.0);if(!e)s=24;else if((-2-D+j|0)<(e|0)){k=j-D|0;j=e+2|0}else s=24;if((s|0)==24){j=j-D|0;k=j}C=C-o|0;D=C+q+j|0;Icb(a,32,d,D,g);Acb(a,r,q);Icb(a,48,d,D,g^65536);Acb(a,E,k);Icb(a,48,j-k|0,0,0);Acb(a,o,C);Icb(a,32,d,D,g^8192);j=D;break}k=(e|0)<0?6:e;if(j){j=(f[t>>2]|0)+-28|0;f[t>>2]=j;c=c*268435456.0}else j=f[t>>2]|0;B=(j|0)<0?l:l+288|0;l=B;do{y=~~c>>>0;f[l>>2]=y;l=l+4|0;c=(c-+(y>>>0))*1.0e9}while(c!=0.0);if((j|0)>0){m=B;p=l;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=m>>>0){l=0;do{x=Frb(f[j>>2]|0,0,o|0)|0;x=vrb(x|0,I|0,l|0,0)|0;y=I;v=Drb(x|0,y|0,1e9,0)|0;f[j>>2]=v;l=Crb(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=m>>>0);if(l){m=m+-4|0;f[m>>2]=l}}l=p;while(1){if(l>>>0<=m>>>0)break;j=l+-4|0;if(!(f[j>>2]|0))l=j;else break}j=(f[t>>2]|0)-o|0;f[t>>2]=j;if((j|0)>0)p=l;else break}}else m=B;if((j|0)<0){e=((k+25|0)/9|0)+1|0;s=(w|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0<l>>>0){o=(1<<r)+-1|0;p=1e9>>>r;q=0;j=m;do{y=f[j>>2]|0;f[j>>2]=(y>>>r)+q;q=X(y&o,p)|0;j=j+4|0}while(j>>>0<l>>>0);j=(f[m>>2]|0)==0?m+4|0:m;if(!q){m=j;j=l}else{f[l>>2]=q;m=j;j=l+4|0}}else{m=(f[m>>2]|0)==0?m+4|0:m;j=l}l=s?B:m;l=(j-l>>2|0)>(e|0)?l+(e<<2)|0:j;j=(f[t>>2]|0)+r|0;f[t>>2]=j}while((j|0)<0);j=m;e=l}else{j=m;e=l}y=B;if(j>>>0<e>>>0){l=(y-j>>2)*9|0;o=f[j>>2]|0;if(o>>>0>=10){m=10;do{m=m*10|0;l=l+1|0}while(o>>>0>=m>>>0)}}else l=0;s=(w|0)==103;v=(k|0)!=0;m=k-((w|0)!=102?l:0)+((v&s)<<31>>31)|0;if((m|0)<(((e-y>>2)*9|0)+-9|0)){m=m+9216|0;r=B+4+(((m|0)/9|0)+-1024<<2)|0;m=(m|0)%9|0;if((m|0)<8){o=10;while(1){o=o*10|0;if((m|0)<7)m=m+1|0;else break}}else o=10;p=f[r>>2]|0;q=(p>>>0)%(o>>>0)|0;m=(r+4|0)==(e|0);if(m&(q|0)==0)m=r;else{n=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;c=q>>>0<x>>>0?.5:m&(q|0)==(x|0)?1.0:1.5;if(A){x=(b[z>>0]|0)==45;c=x?-c:c;n=x?-n:n}m=p-q|0;f[r>>2]=m;if(n+c!=n){x=m+o|0;f[r>>2]=x;if(x>>>0>999999999){l=r;while(1){m=l+-4|0;f[l>>2]=0;if(m>>>0<j>>>0){j=j+-4|0;f[j>>2]=0}x=(f[m>>2]|0)+1|0;f[m>>2]=x;if(x>>>0>999999999)l=m;else break}}else m=r;l=(y-j>>2)*9|0;p=f[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;l=l+1|0}while(p>>>0>=o>>>0)}}else m=r}m=m+4|0;m=e>>>0>m>>>0?m:e;x=j}else{m=e;x=j}w=m;while(1){if(w>>>0<=x>>>0){t=0;break}j=w+-4|0;if(!(f[j>>2]|0))w=j;else{t=1;break}}e=0-l|0;do if(s){j=k+((v^1)&1)|0;if((j|0)>(l|0)&(l|0)>-5){p=i+-1|0;k=j+-1-l|0}else{p=i+-2|0;k=j+-1|0}j=g&8;if(!j){if(t){o=f[w+-4>>2]|0;if(!o)m=9;else if(!((o>>>0)%10|0)){m=0;j=10;do{j=j*10|0;m=m+1|0}while(!((o>>>0)%(j>>>0)|0|0))}else m=0}else m=9;j=((w-y>>2)*9|0)+-9|0;if((p|32|0)==102){r=j-m|0;r=(r|0)>0?r:0;k=(k|0)<(r|0)?k:r;r=0;break}else{r=j+l-m|0;r=(r|0)>0?r:0;k=(k|0)<(r|0)?k:r;r=0;break}}else r=j}else{p=i;r=g&8}while(0);s=k|r;o=(s|0)!=0&1;q=(p|32|0)==102;if(q){v=0;j=(l|0)>0?l:0}else{j=(l|0)<0?e:l;j=Fcb(j,((j|0)<0)<<31>>31,C)|0;m=C;if((m-j|0)<2)do{j=j+-1|0;b[j>>0]=48}while((m-j|0)<2);b[j+-1>>0]=(l>>31&2)+43;j=j+-2|0;b[j>>0]=p;v=j;j=m-j|0}j=A+1+k+o+j|0;Icb(a,32,d,j,g);Acb(a,z,A);Icb(a,48,d,j,g^65536);if(q){o=x>>>0>B>>>0?B:x;r=E+9|0;p=r;q=E+8|0;m=o;do{l=Fcb(f[m>>2]|0,0,r)|0;if((m|0)==(o|0)){if((l|0)==(r|0)){b[q>>0]=48;l=q}}else if(l>>>0>E>>>0){Krb(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}Acb(a,l,p-l|0);m=m+4|0}while(m>>>0<=B>>>0);if(s|0)Acb(a,202427,1);if(m>>>0<w>>>0&(k|0)>0)while(1){l=Fcb(f[m>>2]|0,0,r)|0;if(l>>>0>E>>>0){Krb(E|0,48,l-D|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}Acb(a,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0<w>>>0&(k|0)>9)){k=l;break}else k=l}Icb(a,48,k+9|0,9,0)}else{s=t?w:x+4|0;if((k|0)>-1){t=E+9|0;r=(r|0)==0;e=t;p=0-D|0;q=E+8|0;o=x;do{l=Fcb(f[o>>2]|0,0,t)|0;if((l|0)==(t|0)){b[q>>0]=48;l=q}do if((o|0)==(x|0)){m=l+1|0;Acb(a,l,1);if(r&(k|0)<1){l=m;break}Acb(a,202427,1);l=m}else{if(l>>>0<=E>>>0)break;Krb(E|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>E>>>0)}while(0);D=e-l|0;Acb(a,l,(k|0)>(D|0)?D:k);k=k-D|0;o=o+4|0}while(o>>>0<s>>>0&(k|0)>-1)}Icb(a,48,k+18|0,18,0);Acb(a,v,C-v|0)}Icb(a,32,d,j,g^8192)}while(0);u=F;return ((j|0)<(d|0)?d:j)|0}function Lcb(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function Mcb(a,b){a=+a;b=b|0;return +(+Ncb(a,b))}function Ncb(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=Erb(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+Ncb(a*18446744073709551616.0,b);c=(f[b>>2]|0)+-64|0}else c=0;f[b>>2]=c;break}case 2047:break;default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;a=+p[s>>3]}}return +a}function Ocb(a,c,d){a=a|0;c=c|0;d=d|0;do if(!a)a=1;else{if(c>>>0<128){b[a>>0]=c;a=1;break}d=(Pcb()|0)+188|0;if(!(f[f[d>>2]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;a=1;break}else{a=Tbb()|0;f[a>>2]=84;a=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;a=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;a=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;a=4;break}else{a=Tbb()|0;f[a>>2]=84;a=-1;break}}while(0);return a|0}function Pcb(){return Qcb()|0}function Qcb(){return 35332}function Rcb(){return Qcb()|0}function Scb(a,c){a=a|0;c=c|0;var d=0,e=0;e=0;while(1){if((h[202429+e>>0]|0)==(a|0)){a=2;break}d=e+1|0;if((d|0)==87){d=202517;e=87;a=5;break}else e=d}if((a|0)==2)if(!e)d=202517;else{d=202517;a=5}if((a|0)==5)while(1){do{a=d;d=d+1|0}while((b[a>>0]|0)!=0);e=e+-1|0;if(!e)break;else a=5}return Tcb(d,f[c+20>>2]|0)|0}function Tcb(a,b){a=a|0;b=b|0;return Ucb(a,b)|0}function Ucb(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Vcb(f[b>>2]|0,f[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Vcb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(f[a>>2]|0)+1794895138|0;h=Wcb(f[a+8>>2]|0,o)|0;e=Wcb(f[a+12>>2]|0,o)|0;g=Wcb(f[a+16>>2]|0,o)|0;a:do if(h>>>0<c>>>2>>>0){n=c-(h<<2)|0;if(e>>>0<n>>>0&g>>>0<n>>>0)if(!((g|e)&3)){n=e>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;e=Wcb(f[a+(g<<2)>>2]|0,o)|0;g=Wcb(f[a+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0<c>>>0&e>>>0<(c-g|0)>>>0)){e=0;break a}if(b[a+(g+e)>>0]|0){e=0;break a}e=Xcb(d,a+g|0)|0;if(!e)break;e=(e|0)<0;if((h|0)==1){e=0;break a}else{l=e?l:k;h=e?j:h-j|0}}e=i+m|0;g=Wcb(f[a+(e<<2)>>2]|0,o)|0;e=Wcb(f[a+(e+1<<2)>>2]|0,o)|0;if(e>>>0<c>>>0&g>>>0<(c-e|0)>>>0)e=(b[a+(e+g)>>0]|0)==0?a+e|0:0;else e=0}else e=0;else e=0}else e=0;while(0);return e|0}function Wcb(a,b){a=a|0;b=b|0;var c=0;c=Grb(a|0)|0;return ((b|0)==0?a:c)|0}function Xcb(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a>>0]|0;e=b[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)a=e;else{do{a=a+1|0;c=c+1|0;d=b[a>>0]|0;e=b[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));a=e}return (d&255)-(a&255)|0}function Ycb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=d+16|0;g=f[e>>2]|0;if(!g)if(!(Zcb(d)|0)){g=f[e>>2]|0;h=5}else e=0;else h=5;a:do if((h|0)==5){j=d+20|0;i=f[j>>2]|0;e=i;if((g-i|0)>>>0<c>>>0){e=Qg[f[d+36>>2]&127](d,a,c)|0;break}b:do if((b[d+75>>0]|0)>-1){i=c;while(1){if(!i){h=0;g=a;break b}g=i+-1|0;if((b[a+g>>0]|0)==10)break;else i=g}e=Qg[f[d+36>>2]&127](d,a,i)|0;if(e>>>0<i>>>0)break a;h=i;g=a+i|0;c=c-i|0;e=f[j>>2]|0}else{h=0;g=a}while(0);Irb(e|0,g|0,c|0)|0;f[j>>2]=(f[j>>2]|0)+c;e=h+c|0}while(0);return e|0}function Zcb(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=f[a>>2]|0;if(!(c&8)){f[a+8>>2]=0;f[a+4>>2]=0;d=f[a+44>>2]|0;f[a+28>>2]=d;f[a+20>>2]=d;f[a+16>>2]=d+(f[a+48>>2]|0);a=0}else{f[a>>2]=c|32;a=-1}return a|0}function _cb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=f[d>>2]|0;a=(f[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;Irb(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function $cb(a){a=a|0;var b=0;b=a;while(1)if(!(f[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function adb(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){e=a+1|0;if(!(Ybb(b[a>>0]|0)|0))break;else a=e}d=b[a>>0]|0;switch(d<<24>>24|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;c=a;a=d}}if((f|0)==5){g=a;c=e;a=b[e>>0]|0}if(!(Zbb(a<<24>>24)|0))a=0;else{a=0;do{a=(a*10|0)+48-(b[c>>0]|0)|0;c=c+1|0}while((Zbb(b[c>>0]|0)|0)!=0)}return (g|0?a:0-a|0)|0}function bdb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c&255;a:do if(!e)a=a+(cdb(a)|0)|0;else{if(a&3){d=c&255;do{g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}e=X(e,16843009)|0;d=f[a>>2]|0;b:do if(!((d&-2139062144^-2139062144)&d+-16843009))do{g=d^e;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;a=a+4|0;d=f[a>>2]|0}while(!((d&-2139062144^-2139062144)&d+-16843009|0));while(0);d=c&255;while(1){g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break;else a=a+1|0}}while(0);return a|0}function cdb(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=4;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=4;break}}}while(0);if((d|0)==4){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function ddb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(c>>>0>36){g=Tbb()|0;f[g>>2]=22;g=0;e=0}else{r=a+4|0;q=a+100|0;do{i=f[r>>2]|0;if(i>>>0<(f[q>>2]|0)>>>0){f[r>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0}while((Ybb(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=f[r>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){f[r>>2]=j+1;p=i;i=h[j>>0]|0;break b}else{p=i;i=ccb(a)|0;break b}}default:p=0}while(0);j=(c|0)==0;do if((c|16|0)==16&(i|0)==48){i=f[r>>2]|0;if(i>>>0<(f[q>>2]|0)>>>0){f[r>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0;if((i|32|0)!=120)if(j){c=8;n=46;break}else{n=32;break}i=f[r>>2]|0;if(i>>>0<(f[q>>2]|0)>>>0){f[r>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0;if((h[204322+i>>0]|0)>15){e=(f[q>>2]|0)==0;if(!e)f[r>>2]=(f[r>>2]|0)+-1;if(!d){acb(a,0);g=0;e=0;break a}if(e){g=0;e=0;break a}f[r>>2]=(f[r>>2]|0)+-1;g=0;e=0;break a}else{c=16;n=46}}else{c=j?10:c;if(c>>>0>(h[204322+i>>0]|0)>>>0)n=32;else{if(f[q>>2]|0)f[r>>2]=(f[r>>2]|0)+-1;acb(a,0);g=Tbb()|0;f[g>>2]=22;g=0;e=0;break a}}while(0);c:do if((n|0)==32)if((c|0)==10){c=i+-48|0;if(c>>>0<10){i=0;j=c;do{i=(i*10|0)+j|0;c=f[r>>2]|0;if(c>>>0<(f[q>>2]|0)>>>0){f[r>>2]=c+1;c=h[c>>0]|0}else c=ccb(a)|0;j=c+-48|0}while(j>>>0<10&i>>>0<429496729);d=0}else{c=i;i=0;d=0}k=c+-48|0;if(k>>>0<10){j=c;do{c=Brb(i|0,d|0,10,0)|0;l=I;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&c>>>0>~k>>>0){c=10;n=72;break c}i=vrb(c|0,l|0,k|0,m|0)|0;d=I;c=f[r>>2]|0;if(c>>>0<(f[q>>2]|0)>>>0){f[r>>2]=c+1;j=h[c>>0]|0}else j=ccb(a)|0;k=j+-48|0}while(k>>>0<10&(d>>>0<429496729|(d|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;c=d}else{c=10;n=72}}else{j=p;c=d}}else n=46;while(0);d:do if((n|0)==46){if(!(c+-1&c)){n=b[204578+((c*23|0)>>>5&7)>>0]|0;d=b[204322+i>>0]|0;j=d&255;if(c>>>0>j>>>0){i=0;k=j;do{i=k|i<<n;j=f[r>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){f[r>>2]=j+1;j=h[j>>0]|0}else j=ccb(a)|0;d=b[204322+j>>0]|0;k=d&255}while(i>>>0<134217728&c>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Erb(-1,-1,n|0)|0;m=I;if(c>>>0<=(d&255)>>>0|(m>>>0<k>>>0|(m|0)==(k|0)&l>>>0<i>>>0)){d=k;n=72;break}else j=k;while(1){i=Frb(i|0,j|0,n|0)|0;k=I;i=i|d&255;j=f[r>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){f[r>>2]=j+1;j=h[j>>0]|0}else j=ccb(a)|0;d=b[204322+j>>0]|0;if(c>>>0<=(d&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){d=k;n=72;break d}else j=k}}d=b[204322+i>>0]|0;j=d&255;if(c>>>0>j>>>0){i=0;k=j;do{i=k+(X(i,c)|0)|0;j=f[r>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){f[r>>2]=j+1;j=h[j>>0]|0}else j=ccb(a)|0;d=b[204322+j>>0]|0;k=d&255}while(i>>>0<119304647&c>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(c>>>0>(d&255)>>>0){n=Crb(-1,-1,c|0,0)|0;o=I;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){d=m;n=72;break d}k=Brb(i|0,m|0,c|0,0)|0;l=I;d=d&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~d>>>0){d=m;n=72;break d}i=vrb(k|0,l|0,d|0,0)|0;k=I;j=f[r>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){f[r>>2]=j+1;j=h[j>>0]|0}else j=ccb(a)|0;d=b[204322+j>>0]|0;if(c>>>0<=(d&255)>>>0){d=k;n=72;break}else m=k}}else{d=k;n=72}}while(0);if((n|0)==72)if(c>>>0>(h[204322+j>>0]|0)>>>0){do{i=f[r>>2]|0;if(i>>>0<(f[q>>2]|0)>>>0){f[r>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0}while(c>>>0>(h[204322+i>>0]|0)>>>0);j=Tbb()|0;f[j>>2]=34;j=(e&1|0)==0&0==0?p:0;c=g;i=e}else{j=p;c=d}if(f[q>>2]|0)f[r>>2]=(f[r>>2]|0)+-1;if(!(c>>>0<g>>>0|(c|0)==(g|0)&i>>>0<e>>>0)){if(!((e&1|0)!=0|0!=0|(j|0)!=0)){r=Tbb()|0;f[r>>2]=34;e=vrb(e|0,g|0,-1,-1)|0;g=I;break}if(c>>>0>g>>>0|(c|0)==(g|0)&i>>>0>e>>>0){r=Tbb()|0;f[r>>2]=34;break}}e=((j|0)<0)<<31>>31;e=wrb(i^j|0,c^e|0,j|0,e|0)|0;g=I}while(0);I=g;return e|0}function edb(a,b,c){a=a|0;b=b|0;c=c|0;c=fdb(a,b,c,-1,-1)|0;return c|0}function fdb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+128|0;h=j;f[h>>2]=0;i=h+4|0;f[i>>2]=a;f[h+44>>2]=a;g=h+8|0;f[g>>2]=(a|0)<0?-1:a+2147483647|0;f[h+76>>2]=-1;acb(h,0);c=ddb(h,c,1,d,e)|0;if(b|0)f[b>>2]=a+((f[i>>2]|0)+(f[h+108>>2]|0)-(f[g>>2]|0));u=j;return c|0}function gdb(a,b,c){a=a|0;b=b|0;c=c|0;c=fdb(a,b,c,0,-2147483648)|0;return c|0}function hdb(a,b,c){a=a|0;b=b|0;c=c|0;c=fdb(a,b,c,-1,0)|0;return c|0}function idb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function jdb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0;g=f[c>>2]|0;if(!e)l=5;else{i=f[e>>2]|0;if(!i)l=5;else if(!a){j=g;e=d;l=25}else{f[e>>2]=0;k=d;j=g;l=43}}a:do if((l|0)==5){l=(kdb()|0)+188|0;e=(a|0)!=0;if(f[f[l>>2]>>2]|0)if(e){e=d;l=15;break}else{e=d;l=14;break}if(!e){d=cdb(g)|0;l=59;break}b:do if(d){e=d;while(1){i=b[g>>0]|0;if(!(i<<24>>24))break;g=g+1|0;f[a>>2]=i<<24>>24&57343;e=e+-1|0;if(!e)break b;else a=a+4|0}f[a>>2]=0;f[c>>2]=0;d=d-e|0;l=59;break a}while(0);f[c>>2]=g;l=59}while(0);c:while(1){d:do if((l|0)==14){while(1){i=b[g>>0]|0;if(((i&255)+-1|0)>>>0<127)if(!(g&3)){l=f[g>>2]|0;i=l&255;if(!((l+-16843009|l)&-2139062144)){do{g=g+4|0;e=e+-4|0;i=f[g>>2]|0}while(!((i+-16843009|i)&-2139062144|0));i=i&255}}i=i&255;if((i+-1|0)>>>0>=127)break;g=g+1|0;e=e+-1|0}i=i+-194|0;if(i>>>0>50)l=53;else{i=f[34504+(i<<2)>>2]|0;j=g+1|0;l=25;continue c}}else if((l|0)==15){e:do if(e){while(1){i=b[g>>0]|0;do if(((i&255)+-1|0)>>>0<127)if(e>>>0>4&(g&3|0)==0){while(1){i=f[g>>2]|0;if((i+-16843009|i)&-2139062144|0){l=38;break}f[a>>2]=i&255;f[a+4>>2]=h[g+1>>0];f[a+8>>2]=h[g+2>>0];j=g+4|0;i=a+16|0;f[a+12>>2]=h[g+3>>0];e=e+-4|0;if(e>>>0>4){a=i;g=j}else{l=37;break}}if((l|0)==37){a=i;g=j;i=b[j>>0]|0;break}else if((l|0)==38){i=i&255;break}}while(0);i=i&255;if((i+-1|0)>>>0>=127)break;g=g+1|0;f[a>>2]=i;e=e+-1|0;if(!e)break e;else a=a+4|0}i=i+-194|0;if(i>>>0>50){l=53;break d}i=f[34504+(i<<2)>>2]|0;k=e;j=g+1|0;l=43;continue c}while(0);f[c>>2]=g;l=59;continue c}else if((l|0)==25){l=(h[j>>0]|0)>>>3;if((l+-16|l+(i>>26))>>>0>7){g=j;l=52}else{g=j+1|0;if(i&33554432){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=52;break}g=j+2|0;if(i&524288){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=52;break}g=j+3|0}}e=e+-1|0;l=14;continue c}}else if((l|0)==43){l=0;e=h[j>>0]|0;g=e>>>3;if((g+-16|g+(i>>26))>>>0>7){g=j;e=k;l=52}else{g=j+1|0;e=e+-128|i<<6;do if((e|0)<0){i=(h[g>>0]|0)+-128|0;if(i>>>0>63){g=j+-1|0;d=a;break d}g=j+2|0;e=i|e<<6;if((e|0)<0){i=(h[g>>0]|0)+-128|0;if(i>>>0>63){g=j+-1|0;d=a;break d}else{g=j+3|0;e=i|e<<6;break}}}while(0);f[a>>2]=e;a=a+4|0;e=k+-1|0;l=15;continue c}}else if((l|0)==59)return d|0;while(0);if((l|0)==52){l=0;g=g+-1|0;if(!i)l=53;else d=a}if((l|0)==53)if(!(b[g>>0]|0)){if(a|0){f[a>>2]=0;f[c>>2]=0}d=d-e|0;l=59;continue}else d=a;l=Tbb()|0;f[l>>2]=84;if(!d){d=-1;l=59;continue}f[c>>2]=g;d=-1;l=59}return 0}function kdb(){return Qcb()|0}function ldb(a,c){a=a|0;c=c|0;a=bdb(a,c)|0;return ((b[a>>0]|0)==(c&255)<<24>>24?a:0)|0}function mdb(a){a=a|0;var b=0,c=0,d=0;if((f[a+76>>2]|0)<0)d=3;else if(!(ycb(a)|0))d=3;else{b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0}else b=mcb(a)|0}do if((d|0)==3){b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0;break}else{b=mcb(a)|0;break}}while(0);return b|0}function ndb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if(!d)e=0;else{e=b[a>>0]|0;a:do if(!(e<<24>>24))e=0;else while(1){d=d+-1|0;f=b[c>>0]|0;if(!(e<<24>>24==f<<24>>24&((d|0)!=0&f<<24>>24!=0)))break a;a=a+1|0;c=c+1|0;e=b[a>>0]|0;if(!(e<<24>>24)){e=0;break}}while(0);e=(e&255)-(h[c>>0]|0)|0}return e|0}function odb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=wcb(a,b,e)|0;u=d;return c|0}function pdb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=vcb(a,b,c,g)|0;u=e;return d|0}function qdb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;j=u;u=u+16|0;e=j;a:do if(!c)a=0;else{do if(d|0){i=(a|0)==0?e:a;a=b[c>>0]|0;if(a<<24>>24>-1){f[i>>2]=a&255;a=a<<24>>24!=0&1;break a}g=(rdb()|0)+188|0;a=b[c>>0]|0;if(!(f[f[g>>2]>>2]|0)){f[i>>2]=a<<24>>24&57343;a=1;break a}a=(a&255)+-194|0;if(a>>>0<=50){e=c+1|0;g=f[34504+(a<<2)>>2]|0;if(d>>>0<4)if(g&-2147483648>>>((d*6|0)+-6|0)|0)break;a=h[e>>0]|0;d=a>>>3;if((d+-16|d+(g>>26))>>>0<=7){a=a+-128|g<<6;if((a|0)>=0){f[i>>2]=a;a=2;break a}e=(h[c+2>>0]|0)+-128|0;if(e>>>0<=63){e=e|a<<6;if((e|0)>=0){f[i>>2]=e;a=3;break a}a=(h[c+3>>0]|0)+-128|0;if(a>>>0<=63){f[i>>2]=a|e<<6;a=4;break a}}}}}while(0);a=Tbb()|0;f[a>>2]=84;a=-1}while(0);u=j;return a|0}function rdb(){return Qcb()|0}function sdb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k;i=(e|0)==0?212136:e;e=f[i>>2]|0;a:do if(!c)if(!e)e=0;else j=17;else{h=(a|0)==0?g:a;if(!d)e=-2;else{if(!e){e=b[c>>0]|0;if(e<<24>>24>-1){f[h>>2]=e&255;e=e<<24>>24!=0&1;break}g=(tdb()|0)+188|0;e=b[c>>0]|0;if(!(f[f[g>>2]>>2]|0)){f[h>>2]=e<<24>>24&57343;e=1;break}e=(e&255)+-194|0;if(e>>>0>50){j=17;break}e=f[34504+(e<<2)>>2]|0;g=d+-1|0;if(g){c=c+1|0;j=11}}else{g=d;j=11}b:do if((j|0)==11){a=b[c>>0]|0;l=(a&255)>>>3;if((l+-16|l+(e>>26))>>>0>7){j=17;break a}while(1){c=c+1|0;e=(a&255)+-128|e<<6;g=g+-1|0;if((e|0)>=0)break;if(!g)break b;a=b[c>>0]|0;if((a&-64)<<24>>24!=-128){j=17;break a}}f[i>>2]=0;f[h>>2]=e;e=d-g|0;break a}while(0);f[i>>2]=e;e=-2}}while(0);if((j|0)==17){f[i>>2]=0;e=Tbb()|0;f[e>>2]=84;e=-1}u=k;return e|0}function tdb(){return Qcb()|0}function udb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a:do if(!a){d=f[c>>2]|0;e=f[d>>2]|0;if(!e)d=0;else{a=d;d=0;do{if(e>>>0>127){e=Ocb(i,e,0)|0;if((e|0)==-1){d=-1;break a}}else e=1;d=e+d|0;a=a+4|0;e=f[a>>2]|0}while((e|0)!=0)}}else{b:do if(d>>>0>3){e=d;g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=Ocb(a,h,0)|0;if((h|0)==-1){d=-1;break a}a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(e>>>0<=3)break b}b[a>>0]=0;f[c>>2]=0;d=d-e|0;break a}else e=d;while(0);if(e){g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=19;break}h=Ocb(i,h,0)|0;if((h|0)==-1){d=-1;break a}if(e>>>0<h>>>0){g=22;break}Ocb(a,f[g>>2]|0,0)|0;a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(!e)break a}if((g|0)==19){b[a>>0]=0;f[c>>2]=0;d=d-e|0;break}else if((g|0)==22){d=d-e|0;break}}}while(0);u=j;return d|0}function vdb(a){a=a|0;if(!a)a=1;else a=(f[a>>2]|0)==0&1;return a|0}function wdb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+1040|0;k=n+8|0;l=n;j=f[b>>2]|0;f[l>>2]=j;m=(a|0)!=0;h=m?d:256;a=m?a:k;g=j;a:do if((h|0)!=0&(j|0)!=0){d=0;j=c;while(1){i=j>>>2;c=i>>>0>=h>>>0;if(!(j>>>0>131|c)){c=j;break a}g=c?h:i;c=j-g|0;g=jdb(a,l,g,e)|0;if((g|0)==-1)break;j=(a|0)==(k|0);h=h-(j?0:g)|0;a=j?a:a+(g<<2)|0;d=g+d|0;g=f[l>>2]|0;if((h|0)!=0&(g|0)!=0)j=c;else break a}d=-1;h=0;g=f[l>>2]|0}else d=0;while(0);b:do if(g)if((h|0)!=0&(c|0)!=0){i=a;while(1){a=sdb(i,g,c,e)|0;if((a+2|0)>>>0<3)break;g=(f[l>>2]|0)+a|0;f[l>>2]=g;c=c-a|0;h=h+-1|0;d=d+1|0;if(!((h|0)!=0&(c|0)!=0))break b;else i=i+4|0}switch(a|0){case -1:{d=-1;break b}case 0:{f[l>>2]=0;break b}default:{f[e>>2]=0;break b}}}while(0);if(m)f[b>>2]=f[l>>2];u=n;return d|0}function xdb(a,b,c){a=a|0;b=b|0;c=c|0;return sdb(0,a,b,c|0?c:212140)|0}function ydb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+272|0;i=l+8|0;j=l;h=f[b>>2]|0;f[j>>2]=h;k=(a|0)!=0;g=k?d:256;a=k?a:i;d=h;a:do if((g|0)!=0&(h|0)!=0){e=0;h=d;while(1){d=c>>>0>=g>>>0;if(!(d|c>>>0>32)){d=h;break a}d=d?g:c;c=c-d|0;d=udb(a,j,d,0)|0;if((d|0)==-1)break;h=(a|0)==(i|0);g=g-(h?0:d)|0;a=h?a:a+d|0;e=d+e|0;d=f[j>>2]|0;if((g|0)!=0&(d|0)!=0)h=d;else break a}e=-1;g=0;d=f[j>>2]|0}else e=0;while(0);b:do if(d)if((g|0)!=0&(c|0)!=0){h=a;while(1){a=Ocb(h,f[d>>2]|0,0)|0;if((a+1|0)>>>0<2)break;d=(f[j>>2]|0)+4|0;f[j>>2]=d;c=c+-1|0;g=g-a|0;e=a+e|0;if(!((g|0)!=0&(c|0)!=0))break b;else h=h+a|0}if(!a)f[j>>2]=0;else e=-1}while(0);if(k)f[b>>2]=f[j>>2];u=l;return e|0}function zdb(a){a=a|0;return (a+-97|0)>>>0<26|0}function Adb(){return 35576}function Bdb(){var a=0;a=(Cdb()|0)+188|0;return (f[f[a>>2]>>2]|0?4:1)|0}function Cdb(){return Qcb()|0}function Ddb(){return 37116}function Edb(a){a=a|0;var b=0;b=(Fdb(a)|0)==0;return (b?a:a|32)|0}function Fdb(a){a=a|0;return (a+-65|0)>>>0<26|0}function Gdb(a){a=a|0;return (((a|32)+-97|0)>>>0<6|(Zbb(a)|0)!=0)&1|0}function Hdb(){return 38656}function Idb(a){a=a|0;var b=0;b=(zdb(a)|0)==0;return (b?a:a&95)|0}function Jdb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;h=i+32|0;g=i+16|0;d=i;if(!(ldb(204587,b[c>>0]|0)|0)){a=Tbb()|0;f[a>>2]=22;a=0}else{e=Kdb(c)|0;f[d>>2]=a;f[d+4>>2]=e|32768;f[d+8>>2]=438;d=Sbb(Cc(5,d|0)|0)|0;if((d|0)<0)a=0;else{if(e&524288|0){f[g>>2]=d;f[g+4>>2]=2;f[g+8>>2]=1;Bc(221,g|0)|0}a=Ldb(d,c)|0;if(!a){f[h>>2]=d;Ec(6,h|0)|0;a=0}}}u=i;return a|0}function Kdb(a){a=a|0;var c=0,d=0,e=0;d=(ldb(a,43)|0)==0;c=b[a>>0]|0;d=d?c<<24>>24!=114&1:2;e=(ldb(a,120)|0)==0;d=e?d:d|128;a=(ldb(a,101)|0)==0;a=a?d:d|524288;a=c<<24>>24==114?a:a|64;a=c<<24>>24==119?a|512:a;return (c<<24>>24==97?a|1024:a)|0}function Ldb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;j=k+40|0;h=k+24|0;g=k+16|0;e=k;i=k+56|0;if(!(ldb(204587,b[c>>0]|0)|0)){d=Tbb()|0;f[d>>2]=22;d=0}else{d=Kbb(1156)|0;if(!d)d=0;else{Krb(d|0,0,124)|0;if(!(ldb(c,43)|0))f[d>>2]=(b[c>>0]|0)==114?8:4;if(ldb(c,101)|0){f[e>>2]=a;f[e+4>>2]=2;f[e+8>>2]=1;Bc(221,e|0)|0}if((b[c>>0]|0)==97){f[g>>2]=a;f[g+4>>2]=3;c=Bc(221,g|0)|0;if(!(c&1024)){f[h>>2]=a;f[h+4>>2]=4;f[h+8>>2]=c|1024;Bc(221,h|0)|0}e=f[d>>2]|128;f[d>>2]=e}else e=f[d>>2]|0;f[d+60>>2]=a;f[d+44>>2]=d+132;f[d+48>>2]=1024;c=d+75|0;b[c>>0]=-1;if(!(e&8)){f[j>>2]=a;f[j+4>>2]=21523;f[j+8>>2]=i;if(!(Dc(54,j|0)|0))b[c>>0]=10}f[d+32>>2]=86;f[d+36>>2]=89;f[d+40>>2]=87;f[d+12>>2]=378;if(!(f[53012]|0))f[d+76>>2]=-1;Mdb(d)|0}}u=k;return d|0}function Mdb(a){a=a|0;var b=0,c=0;b=Ndb()|0;f[a+56>>2]=f[b>>2];c=f[b>>2]|0;if(c|0)f[c+52>>2]=a;f[b>>2]=a;Odb();return a|0}function Ndb(){vc(212144);return 212152}function Odb(){Gc(212144);return}function Pdb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if((f[a+76>>2]|0)>-1)e=ycb(a)|0;else e=0;Qdb(a);g=(f[a>>2]&1|0)!=0;if(!g){d=Ndb()|0;c=f[a+52>>2]|0;b=a+56|0;if(c|0)f[c+56>>2]=f[b>>2];b=f[b>>2]|0;if(b|0)f[b+52>>2]=c;if((f[d>>2]|0)==(a|0))f[d>>2]=b;Odb()}b=Rdb(a)|0;b=Ng[f[a+12>>2]&511](a)|0|b;c=f[a+92>>2]|0;if(c|0)Lbb(c);if(g){if(e|0)zcb(a)}else Lbb(a);return b|0}function Qdb(a){a=a|0;var b=0;if(f[a+68>>2]|0){b=f[a+116>>2]|0;a=a+112|0;if(b|0)f[b+112>>2]=f[a>>2];a=f[a>>2]|0;if(!a)a=(Tdb()|0)+232|0;else a=a+116|0;f[a>>2]=b}return}function Rdb(a){a=a|0;var b=0,c=0;do if(!a){if(!(f[8759]|0))b=0;else b=Rdb(f[8759]|0)|0;a=Ndb()|0;a=f[a>>2]|0;if(a)do{if((f[a+76>>2]|0)>-1)c=ycb(a)|0;else c=0;if((f[a+20>>2]|0)>>>0>(f[a+28>>2]|0)>>>0)b=Sdb(a)|0|b;if(c|0)zcb(a);a=f[a+56>>2]|0}while((a|0)!=0);Odb()}else{if((f[a+76>>2]|0)<=-1){b=Sdb(a)|0;break}c=(ycb(a)|0)==0;b=Sdb(a)|0;if(!c)zcb(a)}while(0);return b|0}function Sdb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+20|0;h=a+28|0;if((f[g>>2]|0)>>>0>(f[h>>2]|0)>>>0){Qg[f[a+36>>2]&127](a,0,0)|0;if(!(f[g>>2]|0))b=-1;else c=3}else c=3;if((c|0)==3){b=a+4|0;c=f[b>>2]|0;d=a+8|0;e=f[d>>2]|0;if(c>>>0<e>>>0)Qg[f[a+40>>2]&127](a,c-e|0,1)|0;f[a+16>>2]=0;f[h>>2]=0;f[g>>2]=0;f[d>>2]=0;f[b>>2]=0;b=0}return b|0}function Tdb(){return Qcb()|0}function Udb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=Vdb(a,b,e)|0;u=d;return c|0}function Vdb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+128|0;d=g;e=d;h=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(h|0));f[d+32>>2]=114;f[d+44>>2]=a;f[d+76>>2]=-1;f[d+84>>2]=a;h=Xdb(d,b,c)|0;u=g;return h|0}function Wdb(a,b,c){a=a|0;b=b|0;c=c|0;return _db(a,b,c)|0}function Xdb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0.0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0;L=u;u=u+288|0;E=L+8|0;F=L+17|0;G=L;H=L+16|0;if((f[a+76>>2]|0)>-1)K=ycb(a)|0;else K=0;e=b[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{y=a+4|0;z=a+100|0;A=a+108|0;B=a+8|0;C=F+10|0;D=F+33|0;x=E+4|0;m=c;t=0;c=0;g=0;i=e;e=0;b:while(1){c:do if(!(Ybb(i&255)|0)){i=(b[m>>0]|0)==37;d:do if(i){j=m+1|0;k=b[j>>0]|0;e:do switch(k<<24>>24){case 37:break d;case 42:{w=0;j=m+2|0;break}default:{if(Zbb(k&255)|0)if((b[m+2>>0]|0)==36){w=Ydb(d,(h[j>>0]|0)+-48|0)|0;j=m+3|0;break e}v=(f[d>>2]|0)+(4-1)&~(4-1);w=f[v>>2]|0;f[d>>2]=v+4}}while(0);if(!(Zbb(h[j>>0]|0)|0))r=0;else{i=0;do{i=(i*10|0)+-48+(h[j>>0]|0)|0;j=j+1|0}while((Zbb(h[j>>0]|0)|0)!=0);r=i}m=b[j>>0]|0;k=j+1|0;if(m<<24>>24==109){i=(w|0)!=0&1;g=0;j=k;m=b[k>>0]|0;e=0}else i=0;k=j+1|0;switch(m<<24>>24){case 104:{v=(b[k>>0]|0)==104;m=v?-2:-1;j=v?j+2|0:k;break}case 108:{v=(b[k>>0]|0)==108;m=v?3:1;j=v?j+2|0:k;break}case 106:{m=3;j=k;break}case 116:case 122:{m=1;j=k;break}case 76:{m=2;j=k;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{m=0;break}default:{J=136;break b}}q=h[j>>0]|0;s=(q&47|0)==3;q=s?q|32:q;s=s?1:m;o=q&255;switch(o<<24>>24){case 99:{r=(r|0)>1?r:1;break}case 91:break;case 110:{Zdb(w,s,t,((t|0)<0)<<31>>31);k=t;break c}default:{acb(a,0);do{k=f[y>>2]|0;if(k>>>0<(f[z>>2]|0)>>>0){f[y>>2]=k+1;k=h[k>>0]|0}else k=ccb(a)|0}while((Ybb(k)|0)!=0);if(!(f[z>>2]|0))k=f[y>>2]|0;else{k=(f[y>>2]|0)+-1|0;f[y>>2]=k}t=(f[A>>2]|0)+t+k-(f[B>>2]|0)|0}}acb(a,r);m=f[y>>2]|0;k=f[z>>2]|0;if(m>>>0<k>>>0)f[y>>2]=m+1;else{if((ccb(a)|0)<0){J=136;break b}k=f[z>>2]|0}if(k|0)f[y>>2]=(f[y>>2]|0)+-1;f:do switch(o<<24>>24){case 91:case 99:case 115:{v=(q|0)==99;g:do if((q|16|0)==115){Krb(F|0,-1,257)|0;b[F>>0]=0;if((q|0)==115){b[D>>0]=0;b[C>>0]=0;b[C+1>>0]=0;b[C+2>>0]=0;b[C+3>>0]=0;b[C+4>>0]=0}}else{k=j+1|0;o=(b[k>>0]|0)==94;q=o&1;j=o?j+2|0:k;Krb(F|0,q|0,257)|0;b[F>>0]=0;k=b[j>>0]|0;switch(k<<24>>24){case 45:{k=46;J=65;break}case 93:{k=94;J=65;break}default:{}}while(1){if((J|0)==65){J=0;b[F+k>>0]=q^1;k=j+1|0;j=k;k=b[k>>0]|0}h:do switch(k<<24>>24){case 0:{J=136;break b}case 93:break g;case 45:{o=j+1|0;k=b[o>>0]|0;switch(k<<24>>24){case 93:case 0:{k=45;break h}default:{}}j=b[j+-1>>0]|0;if((j&255)<(k&255)){m=(q^1)&255;j=j&255;do{j=j+1|0;b[F+j>>0]=m;k=b[o>>0]|0}while((j|0)<(k&255|0));j=o}else j=o;break}default:{}}while(0);k=(k&255)+1|0;J=65}}while(0);k=v?r+1|0:31;q=(s|0)==1;s=(i|0)!=0;i:do if(q){if(s){e=Kbb(k<<2)|0;if(!e){g=0;e=0;J=136;break b}}else e=w;f[E>>2]=0;f[x>>2]=0;o=k;g=0;j:while(1){m=(e|0)==0;do{k:while(1){k=f[y>>2]|0;if(k>>>0<(f[z>>2]|0)>>>0){f[y>>2]=k+1;k=h[k>>0]|0}else k=ccb(a)|0;if(!(b[F+(k+1)>>0]|0))break j;b[H>>0]=k;switch(sdb(G,H,1,E)|0){case -1:{g=0;J=136;break b}case -2:break;default:break k}}if(!m){f[e+(g<<2)>>2]=f[G>>2];g=g+1|0}}while(!(s&(g|0)==(o|0)));g=o<<1|1;k=Mbb(e,g<<2)|0;if(!k){g=0;J=136;break b}else{m=o;o=g;e=k;g=m}}if(!(vdb(E)|0)){g=0;J=136;break b}else{o=g;g=0;m=e}}else{if(s){g=Kbb(k)|0;if(!g){g=0;e=0;J=136;break b}else{m=k;e=0}while(1){do{k=f[y>>2]|0;if(k>>>0<(f[z>>2]|0)>>>0){f[y>>2]=k+1;k=h[k>>0]|0}else k=ccb(a)|0;if(!(b[F+(k+1)>>0]|0)){o=e;m=0;e=0;break i}b[g+e>>0]=k;e=e+1|0}while((e|0)!=(m|0));e=m<<1|1;k=Mbb(g,e)|0;if(!k){e=0;J=136;break b}else{o=m;m=e;g=k;e=o}}}if(!w)while(1){e=f[y>>2]|0;if(e>>>0<(f[z>>2]|0)>>>0){f[y>>2]=e+1;e=h[e>>0]|0}else e=ccb(a)|0;if(!(b[F+(e+1)>>0]|0)){o=0;g=0;m=0;e=0;break i}}else g=0;while(1){e=f[y>>2]|0;if(e>>>0<(f[z>>2]|0)>>>0){f[y>>2]=e+1;e=h[e>>0]|0}else e=ccb(a)|0;if(!(b[F+(e+1)>>0]|0)){o=g;g=w;m=0;e=0;break i}b[w+g>>0]=e;g=g+1|0}}while(0);if(!(f[z>>2]|0))k=f[y>>2]|0;else{k=(f[y>>2]|0)+-1|0;f[y>>2]=k}k=k-(f[B>>2]|0)+(f[A>>2]|0)|0;if(!k)break b;if(!((k|0)==(r|0)|v^1))break b;do if(s)if(q){f[w>>2]=m;break}else{f[w>>2]=g;break}while(0);if(!v){if(m|0)f[m+(o<<2)>>2]=0;if(!g){g=0;break f}b[g+o>>0]=0}break}case 120:case 88:case 112:{k=16;J=124;break}case 111:{k=8;J=124;break}case 117:case 100:{k=10;J=124;break}case 105:{k=0;J=124;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{l=+bcb(a,s,0);if((f[A>>2]|0)==((f[B>>2]|0)-(f[y>>2]|0)|0))break b;if(w)switch(s|0){case 0:{n[w>>2]=l;break f}case 1:{p[w>>3]=l;break f}case 2:{p[w>>3]=l;break f}default:break f}break}default:{}}while(0);do if((J|0)==124){J=0;k=ddb(a,k,0,-1,-1)|0;if((f[A>>2]|0)==((f[B>>2]|0)-(f[y>>2]|0)|0))break b;if((w|0)!=0&(q|0)==112){f[w>>2]=k;break}else{Zdb(w,s,k,I);break}}while(0);c=c+((w|0)!=0&1)|0;k=(f[A>>2]|0)+t+(f[y>>2]|0)-(f[B>>2]|0)|0;break c}while(0);j=m+(i&1)|0;acb(a,0);i=f[y>>2]|0;if(i>>>0<(f[z>>2]|0)>>>0){f[y>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0;if((i|0)!=(h[j>>0]|0)){J=22;break b}k=t+1|0}else{j=m;while(1){i=j+1|0;if(!(Ybb(h[i>>0]|0)|0))break;else j=i}acb(a,0);do{i=f[y>>2]|0;if(i>>>0<(f[z>>2]|0)>>>0){f[y>>2]=i+1;i=h[i>>0]|0}else i=ccb(a)|0}while((Ybb(i)|0)!=0);if(!(f[z>>2]|0))i=f[y>>2]|0;else{i=(f[y>>2]|0)+-1|0;f[y>>2]=i}k=(f[A>>2]|0)+t+i-(f[B>>2]|0)|0}while(0);m=j+1|0;i=b[m>>0]|0;if(!(i<<24>>24))break a;else t=k}if((J|0)==22){if(f[z>>2]|0)f[y>>2]=(f[y>>2]|0)+-1;if((c|0)!=0|(i|0)>-1)break;else{c=0;J=137}}else if((J|0)==136)if(!c){c=i;J=137}if((J|0)==137){i=c;c=-1}if(i){Lbb(g);Lbb(e)}}while(0);if(K|0)zcb(a);u=L;return c|0}function Ydb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[c>>2]=f[a>>2];while(1){e=(f[c>>2]|0)+(4-1)&~(4-1);a=f[e>>2]|0;f[c>>2]=e+4;if(b>>>0>1)b=b+-1|0;else break}u=d;return a|0}function Zdb(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;a:do if(a|0)switch(c|0){case -2:{b[a>>0]=e;break a}case -1:{d[a>>1]=e;break a}case 0:{f[a>>2]=e;break a}case 1:{f[a>>2]=e;break a}case 3:{c=a;f[c>>2]=e;f[c+4>>2]=g;break a}default:break a}while(0);return}function _db(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=a+84|0;g=f[d>>2]|0;h=c+256|0;e=Hcb(g,0,h)|0;e=(e|0)==0?h:e-g|0;c=e>>>0<c>>>0?e:c;Irb(b|0,g|0,c|0)|0;f[a+4>>2]=g+c;b=g+e|0;f[a+8>>2]=b;f[d>>2]=b;return c|0}function $db(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((f[a+76>>2]|0)>-1){d=(ycb(a)|0)==0;b=aeb(a,b,c)|0;if(!d)zcb(a)}else b=aeb(a,b,c)|0;return b|0}function aeb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)==1)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)|0;d=a+20|0;e=a+28|0;if((f[d>>2]|0)>>>0>(f[e>>2]|0)>>>0){Qg[f[a+36>>2]&127](a,0,0)|0;if(!(f[d>>2]|0))b=-1;else g=5}else g=5;if((g|0)==5){f[a+16>>2]=0;f[e>>2]=0;f[d>>2]=0;if((Qg[f[a+40>>2]&127](a,b,c)|0)<0)b=-1;else{f[a+8>>2]=0;f[a+4>>2]=0;f[a>>2]=f[a>>2]&-17;b=0}}return b|0}function beb(a){a=a|0;var b=0,c=0;b=(cdb(a)|0)+1|0;c=Kbb(b)|0;if(!c)a=0;else a=Irb(c|0,a|0,b|0)|0;return a|0}function ceb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=X(c,b)|0;c=(b|0)==0?0:c;if((f[d+76>>2]|0)>-1){g=(ycb(d)|0)==0;a=Ycb(a,e,d)|0;if(!g)zcb(d)}else a=Ycb(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function deb(){var a=0,b=0,c=0;b=209960;b=Brb(f[b>>2]|0,f[b+4>>2]|0,1284865837,1481765933)|0;b=vrb(b|0,I|0,1,0)|0;a=I;c=209960;f[c>>2]=b;f[c+4>>2]=a;a=Erb(b|0,a|0,33)|0;return a|0}function eeb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(a-b>>2>>>0<c>>>0)do{c=c+-1|0;f[a+(c<<2)>>2]=f[b+(c<<2)>>2]}while((c|0)!=0);else if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}return a|0}function feb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=b;if(!c)break;else d=d+4|0}}return a|0}function geb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}return a|0}function heb(a){a=+a;return ~~+Orb(+a)|0}function ieb(a){a=+a;return ~~+Prb(+a)|0}function jeb(a){a=+a;a=+Orb(+a);I=+K(a)>=1.0?(a>0.0?~~+Y(+J(a/4294967296.0),4294967295.0)>>>0:~~+W((a-+(~~a>>>0))/4294967296.0)>>>0):0;return ~~a>>>0|0}function keb(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=a;f[d+4>>2]=b;b=Sbb(Fc(91,d|0)|0)|0;u=c;return b|0}function leb(){return}function meb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+272|0;m=o+8|0;n=o;do if(!(b[c>>0]|0)){c=Jd(204591)|0;if(c|0)if(b[c>>0]|0)break;c=Jd(204598+(a*12|0)|0)|0;if(c|0)if(b[c>>0]|0)break;c=Jd(204670)|0;if(c|0)if(b[c>>0]|0)break;c=204675}while(0);d=0;a:do{switch(b[c+d>>0]|0){case 47:case 0:break a;default:{}}d=d+1|0}while(d>>>0<15);e=b[c>>0]|0;if(e<<24>>24==46){c=204675;l=15}else if(!(b[c+d>>0]|0))if(e<<24>>24==67)l=15;else{k=c;l=16}else{c=204675;l=15}if((l|0)==15)if(!(b[c+1>>0]|0))l=18;else{k=c;l=16}b:do if((l|0)==16)if(!(Xcb(k,204675)|0)){c=k;l=18}else if(!(Xcb(k,204683)|0)){c=k;l=18}else{c=f[53039]|0;if(c|0)do{if(!(Xcb(k,c+8|0)|0))break b;c=f[c+24>>2]|0}while((c|0)!=0);vc(212160);c=f[53039]|0;c:do if(c|0){while(1){if(!(Xcb(k,c+8|0)|0))break;c=f[c+24>>2]|0;if(!c)break c}Gc(212160);break b}while(0);d:do if(!(f[53013]|0)){c=Jd(204689)|0;if(!c)l=41;else if(!(b[c>>0]|0))l=41;else{i=254-d|0;j=d+1|0;while(1){h=bdb(c,58)|0;e=b[h>>0]|0;g=h-c+((e<<24>>24!=0)<<31>>31)|0;if(g>>>0<i>>>0){Irb(m|0,c|0,g|0)|0;e=m+g|0;b[e>>0]=47;Irb(e+1|0,k|0,d|0)|0;b[m+(j+g)>>0]=0;e=wc(m|0,n|0)|0;if(e|0)break;c=b[h>>0]|0}else c=e;c=h+(c<<24>>24!=0&1)|0;if(!(b[c>>0]|0)){l=41;break d}}c=Kbb(28)|0;if(!c){keb(e,f[n>>2]|0)|0;l=41;break}else{f[c>>2]=e;f[c+4>>2]=f[n>>2];n=c+8|0;Irb(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[53039];f[53039]=c;break}}}else l=41;while(0);if((l|0)==41){c=Kbb(28)|0;if(c){f[c>>2]=f[8677];f[c+4>>2]=f[8678];n=c+8|0;Irb(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[53039];f[53039]=c}}Gc(212160);c=(a|0)==0&(c|0)==0?34708:c}while(0);do if((l|0)==18){if(!a)if((b[c+1>>0]|0)==46){c=34708;break}c=0}while(0);u=o;return c|0}function neb(a){a=a|0;return 0}function oeb(a,b){a=a|0;b=b|0;return -1|0}function peb(a){a=a|0;var b=0,c=0;b=(qeb()|0)+188|0;c=f[b>>2]|0;if(a|0)f[b>>2]=(a|0)==(-1|0)?212084:a;return ((c|0)==212084?-1:c)|0}function qeb(){return Qcb()|0}function reb(a){a=a|0;return (a|0)!=34756&((a|0)!=0&(a|0)!=212108)&1|0}function seb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j;a:do if(!(reb(c)|0)){i=(c|0)!=0;e=0;g=0;do{d=1<<g&a;if(i&(d|0)==0)d=f[c+(g<<2)>>2]|0;else d=meb(g,d|0?b:217391)|0;e=e+((d|0)!=0&1)|0;f[h+(g<<2)>>2]=d;g=g+1|0}while((g|0)!=6);switch(e|0){case 0:{c=212108;break a}case 1:{if((f[h>>2]|0)==34708){c=34756;break a}break}default:{}}}else{d=0;do{if(1<<d&a|0){i=meb(d,b)|0;f[c+(d<<2)>>2]=i}d=d+1|0}while((d|0)!=6)}while(0);u=j;return c|0}function teb(a,b){a=a|0;b=b|0;return Zbb(a)|0}function ueb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function veb(a,b){a=a|0;b=b|0;return Gdb(a)|0}function web(a){a=a|0;if(reb(a)|0)Lbb(a);return}function xeb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=f[c>>2];d=vcb(0,0,b,d)|0;if((d|0)<0)d=-1;else{d=d+1|0;e=Kbb(d)|0;f[a>>2]=e;if(!e)d=-1;else d=vcb(e,d,b,c)|0}u=g;return d|0}function yeb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;do if((a|0)==-1)a=-1;else{if((f[c+76>>2]|0)>-1)e=ycb(c)|0;else e=0;g=c+4|0;d=f[g>>2]|0;if(!d){ncb(c)|0;d=f[g>>2]|0;if(d|0)h=6}else h=6;if((h|0)==6)if(d>>>0>((f[c+44>>2]|0)+-8|0)>>>0){h=d+-1|0;f[g>>2]=h;b[h>>0]=a;f[c>>2]=f[c>>2]&-17;if(!e)break;zcb(c);break}if(!e)a=-1;else{zcb(c);a=-1}}while(0);return a|0}function zeb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=X(d,c)|0;d=(c|0)==0?0:d;if((f[e+76>>2]|0)>-1)j=ycb(e)|0;else j=0;g=e+74|0;h=b[g>>0]|0;b[g>>0]=h+255|h;g=e+4|0;h=f[g>>2]|0;i=(f[e+8>>2]|0)-h|0;if((i|0)>0){i=i>>>0<k>>>0?i:k;Irb(a|0,h|0,i|0)|0;f[g>>2]=(f[g>>2]|0)+i;g=k-i|0;a=a+i|0}else g=k;a:do if(!g)l=13;else{i=e+32|0;while(1){if(ncb(e)|0)break;h=Qg[f[i>>2]&127](e,a,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else a=a+h|0}if(j|0)zcb(e);d=((k-g|0)>>>0)/(c>>>0)|0}while(0);if((l|0)==13)if(j)zcb(e);return d|0}function Aeb(a){a=a|0;var b=0;if(!(f[a>>2]&128))b=1;else b=(f[a+20>>2]|0)>>>0>(f[a+28>>2]|0)>>>0?2:1;b=Qg[f[a+40>>2]&127](a,0,b)|0;if((b|0)>=0)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)+(f[a+20>>2]|0)-(f[a+28>>2]|0)|0;return b|0}function Beb(a){a=a|0;var b=0;if((f[a+76>>2]|0)>-1){b=(ycb(a)|0)==0;a=Aeb(a)|0}else a=Aeb(a)|0;return a|0}function Ceb(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=wcb(f[8727]|0,a,d)|0;u=c;return b|0}function Deb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=edb(a,b,c)|0;return d|0}function Eeb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=gdb(a,b,c)|0;return d|0}function Feb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:while(1){n=b;o=b+-4|0;while(1){b:while(1){m=a;d=n-m|0;e=d>>2;switch(e|0){case 1:case 0:break a;case 2:{p=5;break a}case 3:{p=7;break a}case 4:{p=8;break a}case 5:{p=9;break a}default:{}}if((d|0)<124){p=11;break a}j=a+(((e|0)/2|0)<<2)|0;if((d|0)>3996){d=(e|0)/4|0;d=Ieb(a,a+(d<<2)|0,j,j+(d<<2)|0,o,c)|0}else d=Geb(a,j,o,c)|0;i=f[a>>2]|0;g=f[j>>2]|0;if(i>>>0<g>>>0){e=o;break}else e=o;while(1){e=e+-4|0;if((a|0)==(e|0))break;h=f[e>>2]|0;if(h>>>0<g>>>0){p=29;break b}}d=a+4|0;g=f[o>>2]|0;if(i>>>0>=g>>>0){while(1){if((d|0)==(o|0))break a;e=f[d>>2]|0;if(i>>>0<e>>>0)break;d=d+4|0}f[d>>2]=g;f[o>>2]=e;d=d+4|0}if((d|0)==(o|0))break a;else e=o;while(1){j=f[a>>2]|0;while(1){h=f[d>>2]|0;i=d+4|0;if(j>>>0<h>>>0)break;else d=i}do{e=e+-4|0;g=f[e>>2]|0}while(j>>>0<g>>>0);if(d>>>0>=e>>>0){a=d;continue b}f[d>>2]=g;f[e>>2]=h;d=i}}if((p|0)==29){p=0;f[a>>2]=h;f[e>>2]=i;d=d+1|0}g=a+4|0;c:do if(g>>>0<e>>>0){l=j;while(1){k=f[l>>2]|0;while(1){i=f[g>>2]|0;j=g+4|0;if(i>>>0<k>>>0)g=j;else break}do{e=e+-4|0;h=f[e>>2]|0}while(h>>>0>=k>>>0);if(g>>>0>e>>>0){h=l;i=g;break c}f[g>>2]=h;f[e>>2]=i;l=(l|0)==(g|0)?e:l;g=j;d=d+1|0}}else{h=j;i=g}while(0);if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0<g>>>0){f[i>>2]=e;f[h>>2]=g;d=d+1|0}}if(!d){d=Keb(a,i,c)|0;e=i+4|0;if(Keb(e,b,c)|0){p=45;break}if(d){a=e;continue}}l=i;if((l-m|0)>=(n-l|0)){p=44;break}Feb(a,i,c);a=i+4|0}if((p|0)==44){p=0;Feb(i+4|0,b,c);b=i;continue}else if((p|0)==45){p=0;if(d)break;else{b=i;continue}}}if((p|0)==5){b=f[o>>2]|0;d=f[a>>2]|0;if(b>>>0<d>>>0){f[a>>2]=b;f[o>>2]=d}}else if((p|0)==7)Geb(a,a+4|0,o,c)|0;else if((p|0)==8)Heb(a,a+4|0,a+8|0,o,c)|0;else if((p|0)==9)Ieb(a,a+4|0,a+8|0,a+12|0,o,c)|0;else if((p|0)==11)Jeb(a,b,c);return}function Geb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;d=f[b>>2]|0;h=f[a>>2]|0;e=f[c>>2]|0;g=e>>>0<d>>>0;do if(d>>>0<h>>>0){if(g){f[a>>2]=e;f[c>>2]=h;d=1;break}f[a>>2]=d;f[b>>2]=h;d=f[c>>2]|0;if(d>>>0<h>>>0){f[b>>2]=d;f[c>>2]=h;d=2}else d=1}else if(g){f[b>>2]=e;f[c>>2]=d;e=f[b>>2]|0;d=f[a>>2]|0;if(e>>>0<d>>>0){f[a>>2]=e;f[b>>2]=d;d=2}else d=1}else d=0;while(0);return d|0}function Heb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;e=Geb(a,b,c,e)|0;g=f[d>>2]|0;h=f[c>>2]|0;if(g>>>0<h>>>0){f[c>>2]=g;f[d>>2]=h;d=e+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0<h>>>0){f[b>>2]=g;f[c>>2]=h;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0<h>>>0){f[a>>2]=g;f[b>>2]=h;e=e+3|0}else e=e+2|0}else e=d}return e|0}function Ieb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=Heb(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0<h>>>0){f[d>>2]=g;f[e>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0<e>>>0){f[c>>2]=h;f[d>>2]=e;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0<e>>>0){f[b>>2]=h;f[c>>2]=e;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0<h>>>0){f[a>>2]=g;f[b>>2]=h;g=i+4|0}else g=i+3|0}}}else g=i;return g|0}function Jeb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+8|0;Geb(a,a+4|0,h,c)|0;g=a+12|0;c=h;while(1){if((g|0)==(b|0))break;h=f[g>>2]|0;e=f[c>>2]|0;if(h>>>0<e>>>0){d=g;while(1){f[d>>2]=e;if((c|0)==(a|0)){c=a;break}d=c+-4|0;e=f[d>>2]|0;if(h>>>0>=e>>>0)break;else{i=c;c=d;d=i}}f[c>>2]=h}c=g;g=g+4|0}return}function Keb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;switch(b-a>>2|0){case 1:case 0:{c=1;break}case 2:{c=b+-4|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0<e>>>0){f[a>>2]=d;f[c>>2]=e;c=1}else c=1;break}case 3:{Geb(a,a+4|0,b+-4|0,c)|0;c=1;break}case 4:{Heb(a,a+4|0,a+8|0,b+-4|0,c)|0;c=1;break}case 5:{Ieb(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;c=1;break}default:{d=a+8|0;Geb(a,a+4|0,d,c)|0;i=a+12|0;c=0;while(1){if((i|0)==(b|0)){d=1;c=0;break}h=f[i>>2]|0;g=f[d>>2]|0;if(h>>>0<g>>>0){e=i;while(1){f[e>>2]=g;if((d|0)==(a|0)){d=a;break}e=d+-4|0;g=f[e>>2]|0;if(h>>>0>=g>>>0)break;else{j=d;d=e;e=j}}f[d>>2]=h;c=c+1|0;if((c|0)==8){d=0;c=(i+4|0)==(b|0);break}}d=i;i=i+4|0}c=c|d}}return c|0}function Leb(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;if(!(vd(1,a|0)|0)){c=f[a>>2]|0;a=f[a+4>>2]|0;c=Brb(c|0,((c|0)<0)<<31>>31|0,1e9,0)|0;a=vrb(c|0,I|0,a|0,((a|0)<0)<<31>>31|0)|0;u=b;return a|0}else{c=Tbb()|0;Jqb(f[c>>2]|0,204702)}return 0}function Meb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;b=k;i=k+8|0;c=k+4|0;f[i>>2]=a;do if(a>>>0<212){a=Neb(38660,38852,i,b)|0;a=f[a>>2]|0}else{h=(a>>>0)/210|0;e=h*210|0;f[c>>2]=a-e;a=0;g=(Neb(38852,39044,c,b)|0)-38852>>2;b=e;a:while(1){e=(f[38852+(g<<2)>>2]|0)+b|0;b=5;while(1){if(b>>>0>=47){d=211;j=8;break}c=f[38660+(b<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0<c>>>0){j=106;break a}if((e|0)==(X(d,c)|0))break;else b=b+1|0}b:do if((j|0)==8){c:while(1){j=0;b=(e>>>0)/(d>>>0)|0;do if(b>>>0<d>>>0){b=d;c=1;a=e}else if((e|0)==(X(b,d)|0)){b=d;c=9}else{b=d+10|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+12|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+16|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+18|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+22|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+28|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e}else if((e|0)==(X(c,b)|0))c=9;else{b=d+30|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+36|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+40|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+42|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+46|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+52|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+58|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+60|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+66|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+70|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+72|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+78|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+82|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+88|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+96|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+100|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+102|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+106|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+108|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+112|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+120|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+126|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+130|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+136|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+138|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+142|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+148|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+150|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+156|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+162|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+166|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+168|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+172|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+178|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+180|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+186|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+190|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+192|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+196|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+198|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+208|0;c=(e>>>0)/(b>>>0)|0;l=c>>>0<b>>>0;c=(e|0)==(X(c,b)|0);b=l|c?b:d+210|0;c=l?1:c?9:0;a=l?e:a}}}}}}}while(0);switch(c&15){case 9:break b;case 0:{d=b;j=8;break}default:break c}}if(c){j=107;break a}}while(0);l=g+1|0;e=(l|0)==48;b=h+(e&1)|0;h=b;g=e?0:l;b=b*210|0}if((j|0)==106){f[i>>2]=e;a=e;break}else if((j|0)==107){f[i>>2]=e;break}}while(0);u=k;return a|0}function Neb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=f[c>>2]|0;d=a;c=b-a>>2;while(1){if(!c)break;b=(c|0)/2|0;g=d+(b<<2)|0;a=(f[g>>2]|0)>>>0<e>>>0;d=a?g+4|0:d;c=a?c+-1-b|0:b}return d|0}function Oeb(a){a=a|0;Peb(a);return}function Peb(a){a=a|0;f[a>>2]=39052;Qeb(a,0);Dhb(a+28|0);Lbb(f[a+32>>2]|0);Lbb(f[a+36>>2]|0);Lbb(f[a+48>>2]|0);Lbb(f[a+60>>2]|0);return}function Qeb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=a+32|0;e=a+36|0;c=f[a+40>>2]|0;while(1){if(!c)break;g=c+-1|0;wh[f[(f[d>>2]|0)+(g<<2)>>2]&127](b,a,f[(f[e>>2]|0)+(g<<2)>>2]|0);c=g}return}function Reb(a){a=a|0;Peb(a);Zpb(a);return}function Seb(a){a=a|0;Peb(a);return}function Teb(a){a=a|0;f[a>>2]=39068;Dhb(a+4|0);return}function Ueb(a){a=a|0;Teb(a);Zpb(a);return}function Veb(a,b){a=a|0;b=b|0;return}function Web(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Xeb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;return}function Yeb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;f[d>>2]=0;f[d+4>>2]=0;d=a+8|0;f[d>>2]=-1;f[d+4>>2]=-1;return}function Zeb(a){a=a|0;return 0}function _eb(a){a=a|0;return 0}function $eb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;ffb()|0;i=a+12|0;j=a+16|0;h=0;while(1){if((h|0)>=(d|0))break;e=f[i>>2]|0;g=f[j>>2]|0;if(e>>>0<g>>>0){g=g-e|0;k=d-h|0;g=(k|0)<(g|0)?k:g;hfb(c,e,g)|0;f[i>>2]=(f[i>>2]|0)+g;c=c+g|0;h=g+h|0;continue}e=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((e|0)==-1)break;k=ifb(e)|0;b[c>>0]=k;c=c+1|0;h=h+1|0}return h|0}function afb(a){a=a|0;return ffb()|0}function bfb(a){a=a|0;var c=0;c=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;if((c|0)==(ffb()|0))a=ffb()|0;else{c=a+12|0;a=f[c>>2]|0;f[c>>2]=a+1;a=gfb(b[a>>0]|0)|0}return a|0}function cfb(a,b){a=a|0;b=b|0;return ffb()|0}function dfb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ffb()|0;j=a+24|0;k=a+28|0;e=0;while(1){if((e|0)>=(d|0))break;g=f[j>>2]|0;h=f[k>>2]|0;if(g>>>0<h>>>0){h=h-g|0;l=d-e|0;h=(l|0)<(h|0)?l:h;hfb(g,c,h)|0;f[j>>2]=(f[j>>2]|0)+h;c=c+h|0;e=h+e|0;continue}h=f[(f[a>>2]|0)+52>>2]|0;l=gfb(b[c>>0]|0)|0;if((Pg[h&255](a,l)|0)==(i|0))break;c=c+1|0;e=e+1|0}return e|0}function efb(a,b){a=a|0;b=b|0;return ffb()|0}function ffb(){return -1}function gfb(a){a=a|0;return a&255|0}function hfb(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Irb(a|0,b|0,c|0)|0;return a|0}function ifb(a){a=a|0;return a&255|0}function jfb(a){a=a|0;f[a>>2]=39132;Dhb(a+4|0);return}function kfb(a){a=a|0;jfb(a);Zpb(a);return}function lfb(a,b){a=a|0;b=b|0;return}function mfb(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function nfb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;return}function ofb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;f[d>>2]=0;f[d+4>>2]=0;d=a+8|0;f[d>>2]=-1;f[d+4>>2]=-1;return}function pfb(a){a=a|0;return 0}function qfb(a){a=a|0;return 0}function rfb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;xfb()|0;h=a+12|0;i=a+16|0;g=0;while(1){if((g|0)>=(c|0))break;d=f[h>>2]|0;e=f[i>>2]|0;if(d>>>0<e>>>0){e=e-d>>2;j=c-g|0;e=(j|0)<(e|0)?j:e;zfb(b,d,e)|0;f[h>>2]=(f[h>>2]|0)+(e<<2);b=b+(e<<2)|0;g=e+g|0;continue}d=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((d|0)==-1)break;j=Afb(d)|0;f[b>>2]=j;b=b+4|0;g=g+1|0}return g|0}function sfb(a){a=a|0;return xfb()|0}function tfb(a){a=a|0;var b=0;b=Ng[f[(f[a>>2]|0)+36>>2]&511](a)|0;if((b|0)==(xfb()|0))a=xfb()|0;else{b=a+12|0;a=f[b>>2]|0;f[b>>2]=a+4;a=yfb(f[a>>2]|0)|0}return a|0}function ufb(a,b){a=a|0;b=b|0;return xfb()|0}function vfb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=xfb()|0;i=a+24|0;j=a+28|0;d=0;while(1){if((d|0)>=(c|0))break;e=f[i>>2]|0;g=f[j>>2]|0;if(e>>>0<g>>>0){g=g-e>>2;k=c-d|0;g=(k|0)<(g|0)?k:g;zfb(e,b,g)|0;f[i>>2]=(f[i>>2]|0)+(g<<2);b=b+(g<<2)|0;d=g+d|0;continue}g=f[(f[a>>2]|0)+52>>2]|0;k=yfb(f[b>>2]|0)|0;if((Pg[g&255](a,k)|0)==(h|0))break;b=b+4|0;d=d+1|0}return d|0}function wfb(a,b){a=a|0;b=b|0;return xfb()|0}function xfb(){return -1}function yfb(a){a=a|0;return a|0}function zfb(a,b,c){a=a|0;b=b|0;c=c|0;if(c)geb(a,b,c)|0;return a|0}function Afb(a){a=a|0;return a|0}function Bfb(a){a=a|0;Ffb(a,39228);Oeb(a+8|0);return}function Cfb(a){a=a|0;Bfb(a);Zpb(a);return}function Dfb(a){a=a|0;Bfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Efb(a){a=a|0;Cfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Ffb(a,b){a=a|0;b=b|0;return}function Gfb(a){a=a|0;Kfb(a,39276);Seb(a+8|0);return}function Hfb(a){a=a|0;Gfb(a);Zpb(a);return}function Ifb(a){a=a|0;Gfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Jfb(a){a=a|0;Hfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Kfb(a,b){a=a|0;b=b|0;return}function Lfb(a){a=a|0;Pfb(a,39324);Oeb(a+4|0);return}function Mfb(a){a=a|0;Lfb(a);Zpb(a);return}function Nfb(a){a=a|0;Lfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Ofb(a){a=a|0;Mfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Pfb(a,b){a=a|0;b=b|0;return}function Qfb(a){a=a|0;Ufb(a,39372);Seb(a+4|0);return}function Rfb(a){a=a|0;Qfb(a);Zpb(a);return}function Sfb(a){a=a|0;Qfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Tfb(a){a=a|0;Rfb(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Ufb(a,b){a=a|0;b=b|0;return}function Vfb(a){a=a|0;return cdb(a)|0}function Wfb(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function Xfb(a,b){a=a|0;b=b|0;f[a+16>>2]=(f[a+24>>2]|0)==0|b;return}function Yfb(a,b){a=a|0;b=b|0;var c=0;f[a+24>>2]=b;f[a+16>>2]=(b|0)==0&1;f[a+20>>2]=0;f[a+4>>2]=4098;f[a+12>>2]=0;f[a+8>>2]=6;c=a+28|0;b=a+32|0;a=b+40|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(a|0));Dpb(c);return}function Zfb(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function _fb(a,b){a=a|0;b=b|0;Bpb(a,b+28|0);return}function $fb(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function agb(a){a=a|0;f[a>>2]=39068;Dpb(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function bgb(a){a=a|0;f[a>>2]=39132;Dpb(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function cgb(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;i=r;b[a>>0]=0;g=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;h=f[g+16>>2]|0;if(!h){g=f[g+72>>2]|0;if(g|0)dgb(g)|0;do if(!e){g=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;if(f[g+4>>2]&4096|0){_fb(i,g);l=Chb(i,213216)|0;Dhb(i);g=f[c+(f[(f[c>>2]|0)+-12>>2]|0)+24>>2]|0;l=l+8|0;m=g;n=(g|0)==0;o=m+12|0;p=m+16|0;q=g;while(1){if(n){e=0;g=0;break}h=f[o>>2]|0;if((h|0)==(f[p>>2]|0))h=Ng[f[(f[q>>2]|0)+36>>2]&511](m)|0;else h=gfb(b[h>>0]|0)|0;k=Zfb(h,ffb()|0)|0;i=k?0:g;if(k){e=0;g=0;break}e=i;j=e+12|0;h=f[j>>2]|0;k=e+16|0;if((h|0)==(f[k>>2]|0))h=Ng[f[(f[i>>2]|0)+36>>2]&511](e)|0;else h=gfb(b[h>>0]|0)|0;if((h&255)<<24>>24<=-1)break;if(!(d[(f[l>>2]|0)+(h<<24>>24<<1)>>1]&8192))break;h=f[j>>2]|0;if((h|0)==(f[k>>2]|0)){Ng[f[(f[i>>2]|0)+40>>2]&511](e)|0;continue}else{f[j>>2]=h+1;gfb(b[h>>0]|0)|0;continue}}if(g|0){h=f[e+12>>2]|0;if((h|0)==(f[e+16>>2]|0))g=Ng[f[(f[g>>2]|0)+36>>2]&511](e)|0;else g=gfb(b[h>>0]|0)|0;if(!(Zfb(g,ffb()|0)|0))break}q=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;Xfb(q,f[q+16>>2]|6)}}while(0);b[a>>0]=(f[c+(f[(f[c>>2]|0)+-12>>2]|0)+16>>2]|0)==0&1}else Xfb(g,h|4);u=r;return}function dgb(a){a=a|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;if(f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0){egb(c,a);if(b[c>>0]|0){e=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;if((Ng[f[(f[e>>2]|0)+24>>2]&511](e)|0)==-1){e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(e,f[e+16>>2]|1)}}fgb(c)}u=d;return a|0}function egb(a,c){a=a|0;c=c|0;b[a>>0]=0;f[a+4>>2]=c;c=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;if(!(f[c+16>>2]|0)){c=f[c+72>>2]|0;if(c|0)dgb(c)|0;b[a>>0]=1}return}function fgb(a){a=a|0;var b=0;a=a+4|0;b=f[a>>2]|0;b=b+(f[(f[b>>2]|0)+-12>>2]|0)|0;if(f[b+24>>2]|0)if(!(f[b+16>>2]|0))if(f[b+4>>2]&8192|0)if(!(rc()|0)){b=f[a>>2]|0;b=f[b+(f[(f[b>>2]|0)+-12>>2]|0)+24>>2]|0;if((Ng[f[(f[b>>2]|0)+24>>2]&511](b)|0)==-1){b=f[a>>2]|0;b=b+(f[(f[b>>2]|0)+-12>>2]|0)|0;Xfb(b,f[b+16>>2]|1)}}return}function ggb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;i=h;g=a+4|0;f[g>>2]=0;cgb(i,a,1);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;if(!(b[i>>0]|0))Xfb(e,f[e+16>>2]|4);else{i=f[e+24>>2]|0;i=Qg[f[(f[i>>2]|0)+32>>2]&127](i,c,d)|0;f[g>>2]=i;if((i|0)!=(d|0)){i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(i,f[i+16>>2]|6)}}u=h;return a|0}function hgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+32|0;g=e+16|0;d=e;h=a;f[h>>2]=0;f[h+4>>2]=0;h=a+8|0;f[h>>2]=-1;f[h+4>>2]=-1;cgb(g,c,1);if(b[g>>0]|0){h=f[c+(f[(f[c>>2]|0)+-12>>2]|0)+24>>2]|0;Sh[f[(f[h>>2]|0)+16>>2]&63](d,h,0,0,1,8);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2]}u=e;return}function igb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+48|0;d=g+16|0;h=g+32|0;e=g;i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(i,f[i+16>>2]&-3);cgb(h,a,1);if(b[h>>0]|0){i=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;h=f[(f[i>>2]|0)+20>>2]|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];Eh[h&255](e,i,d,8);i=e+8|0;if((f[i>>2]|0)==-1?(f[i+4>>2]|0)==-1:0){i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(i,f[i+16>>2]|4)}}u=g;return a|0}function jgb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;h=u;u=u+32|0;i=h+16|0;g=h;j=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(j,f[j+16>>2]&-3);cgb(i,a,1);if(b[i>>0]|0){j=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;Sh[f[(f[j>>2]|0)+16>>2]&63](g,j,c,d,e,8);j=g+8|0;if((f[j>>2]|0)==-1?(f[j+4>>2]|0)==-1:0){j=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(j,f[j+16>>2]|4)}}u=h;return a|0}function kgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+12>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Ug[m&31](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function lgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+24>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Ug[m&31](g,e,h,d&255,c&65535)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function mgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+16>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Ug[m&31](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function ngb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+24>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Ug[m&31](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function ogb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+16>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Ug[m&31](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function pgb(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+32>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Sg[m&7](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function qgb(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l+12|0;j=l+8|0;k=l;egb(k,a);if(b[k>>0]|0){_fb(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=Chb(e,213272)|0;Dhb(e);h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;i=f[h+24>>2]|0;m=ffb()|0;d=h+76|0;if(Zfb(m,f[d>>2]|0)|0){_fb(e,h);m=Chb(e,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,32)|0;Dhb(e);m=m<<24>>24;f[d>>2]=m;d=m}else d=f[d>>2]|0;m=f[(f[g>>2]|0)+32>>2]|0;f[j>>2]=i;f[e>>2]=f[j>>2];if(!(Sg[m&7](g,e,h,d&255,c)|0)){m=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(m,f[m+16>>2]|5)}}fgb(k);u=l;return a|0}function rgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;egb(i,a);do if(b[i>>0]|0){d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;e=d;if(d|0){g=e+24|0;h=f[g>>2]|0;if((h|0)==(f[e+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;c=gfb(c)|0;c=Pg[h&255](e,c)|0}else{f[g>>2]=h+1;b[h>>0]=c;c=gfb(c)|0}if(!(Zfb(c,ffb()|0)|0))break}h=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(h,f[h+16>>2]|1)}while(0);fgb(i);u=j;return a|0}function sgb(){ugb();return}function tgb(){return}function ugb(){vgb(0);return}function vgb(a){a=a|0;var b=0;a=f[8695]|0;wgb(212848,a,212904);f[53042]=39200;f[53044]=39220;f[53043]=0;Yfb(212176,212848);f[53062]=0;b=ffb()|0;f[53063]=b;xgb(212912,a,212968);f[53064]=39248;f[53066]=39268;f[53065]=0;Yfb(212264,212912);f[53084]=0;a=xfb()|0;f[53085]=a;a=f[8727]|0;ygb(212976,a,213024);f[53086]=39296;f[53087]=39316;Yfb(212348,212976);f[53105]=0;b=ffb()|0;f[53106]=b;zgb(213032,a,213080);f[53107]=39344;f[53108]=39364;Yfb(212432,213032);f[53126]=0;a=xfb()|0;f[53127]=a;a=f[8760]|0;ygb(213088,a,213136);f[53128]=39296;f[53129]=39316;Yfb(212516,213088);f[53147]=0;b=ffb()|0;f[53148]=b;b=f[212512+(f[(f[53128]|0)+-12>>2]|0)+24>>2]|0;f[53170]=39296;f[53171]=39316;Yfb(212684,b);f[53189]=0;b=ffb()|0;f[53190]=b;zgb(213144,a,213192);f[53149]=39344;f[53150]=39364;Yfb(212600,213144);f[53168]=0;a=xfb()|0;f[53169]=a;a=f[212596+(f[(f[53149]|0)+-12>>2]|0)+24>>2]|0;f[53191]=39344;f[53192]=39364;Yfb(212768,a);f[53210]=0;a=xfb()|0;f[53211]=a;f[212168+(f[(f[53042]|0)+-12>>2]|0)+72>>2]=212344;f[212256+(f[(f[53064]|0)+-12>>2]|0)+72>>2]=212428;a=212512+(f[(f[53128]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]|8192;a=212596+(f[(f[53149]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]|8192;f[212512+(f[(f[53128]|0)+-12>>2]|0)+72>>2]=212344;f[212596+(f[(f[53149]|0)+-12>>2]|0)+72>>2]=212428;return}function wgb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;agb(a);f[a>>2]=39580;f[a+32>>2]=c;f[a+40>>2]=d;d=ffb()|0;f[a+48>>2]=d;b[a+52>>0]=0;d=f[(f[a>>2]|0)+8>>2]|0;Bpb(g,a+4|0);nh[d&1023](a,g);Dhb(g);u=e;return}function xgb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;bgb(a);f[a>>2]=39516;f[a+32>>2]=c;f[a+40>>2]=d;d=xfb()|0;f[a+48>>2]=d;b[a+52>>0]=0;d=f[(f[a>>2]|0)+8>>2]|0;Bpb(g,a+4|0);nh[d&1023](a,g);Dhb(g);u=e;return}function ygb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;agb(a);f[a>>2]=39452;f[a+32>>2]=c;Bpb(g,a+4|0);c=Chb(g,215008)|0;Dhb(g);f[a+36>>2]=c;f[a+40>>2]=d;d=(Ng[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=d;u=e;return}function zgb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;bgb(a);f[a>>2]=39388;f[a+32>>2]=c;Bpb(g,a+4|0);c=Chb(g,215016)|0;Dhb(g);f[a+36>>2]=c;f[a+40>>2]=d;d=(Ng[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=d;u=e;return}function Agb(a){a=a|0;jfb(a);return}function Bgb(a){a=a|0;Agb(a);Zpb(a);return}function Cgb(a,c){a=a|0;c=c|0;Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=Chb(c,215016)|0;f[a+36>>2]=c;c=(Ng[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function Dgb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k;e=a+36|0;g=a+40|0;h=c+8|0;i=c;b=a+32|0;a:while(1){a=f[e>>2]|0;a=Ug[f[(f[a>>2]|0)+20>>2]&31](a,f[g>>2]|0,c,h,d)|0;l=(f[d>>2]|0)-i|0;if((ceb(c,1,l,f[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((Rdb(f[b>>2]|0)|0)!=0)<<31>>31;u=k;return a|0}function Egb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=yfb(f[c>>2]|0)|0;g=Pg[h&255](a,g)|0;if((g|0)==(xfb()|0))break a;e=e+1|0;c=c+4|0}}else e=ceb(c,4,d,f[a+32>>2]|0)|0;while(0);return e|0}function Fgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if($fb(c,xfb()|0)|0)d=15;else{k=Afb(c)|0;f[e>>2]=k;if(b[a+44>>0]|0){if((ceb(e,4,1,f[a+32>>2]|0)|0)==1){d=15;break}a=xfb()|0;break}f[m>>2]=l;d=e+4|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=Zg[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=14;break}if((a|0)==3){d=8;break}if(a>>>0>=2){d=14;break}e=(f[m>>2]|0)-j|0;if((ceb(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=14;break}if((a|0)==1)e=f[n>>2]|0;else{d=13;break}}if((d|0)==8)if((ceb(e,1,1,f[k>>2]|0)|0)==1)d=13;else d=14;if((d|0)==13){d=15;break}else if((d|0)==14){a=xfb()|0;break}}while(0);if((d|0)==15)a=Ggb(c)|0;u=o;return a|0}function Ggb(a){a=a|0;if($fb(a,xfb()|0)|0)a=~(xfb()|0);return a|0}function Hgb(a){a=a|0;Teb(a);return}function Igb(a){a=a|0;Hgb(a);Zpb(a);return}function Jgb(a,c){a=a|0;c=c|0;Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=Chb(c,215008)|0;f[a+36>>2]=c;c=(Ng[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function Kgb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k;e=a+36|0;g=a+40|0;h=c+8|0;i=c;b=a+32|0;a:while(1){a=f[e>>2]|0;a=Ug[f[(f[a>>2]|0)+20>>2]&31](a,f[g>>2]|0,c,h,d)|0;l=(f[d>>2]|0)-i|0;if((ceb(c,1,l,f[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((Rdb(f[b>>2]|0)|0)!=0)<<31>>31;u=k;return a|0}function Lgb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=gfb(b[c>>0]|0)|0;g=Pg[h&255](a,g)|0;if((g|0)==(ffb()|0))break a;e=e+1|0;c=c+1|0}}else e=ceb(c,1,d,f[a+32>>2]|0)|0;while(0);return e|0}function Mgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if(Zfb(c,ffb()|0)|0)d=15;else{k=ifb(c)|0;b[e>>0]=k;if(b[a+44>>0]|0){if((ceb(e,1,1,f[a+32>>2]|0)|0)==1){d=15;break}a=ffb()|0;break}f[m>>2]=l;d=e+1|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=Zg[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=14;break}if((a|0)==3){d=8;break}if(a>>>0>=2){d=14;break}e=(f[m>>2]|0)-j|0;if((ceb(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=14;break}if((a|0)==1)e=f[n>>2]|0;else{d=13;break}}if((d|0)==8)if((ceb(e,1,1,f[k>>2]|0)|0)==1)d=13;else d=14;if((d|0)==13){d=15;break}else if((d|0)==14){a=ffb()|0;break}}while(0);if((d|0)==15)a=Ngb(c)|0;u=o;return a|0}function Ngb(a){a=a|0;if(Zfb(a,ffb()|0)|0)a=~(ffb()|0);return a|0}function Ogb(a){a=a|0;jfb(a);return}function Pgb(a){a=a|0;Ogb(a);Zpb(a);return}function Qgb(a,c){a=a|0;c=c|0;var d=0,e=0;e=Chb(c,215016)|0;d=a+36|0;f[d>>2]=e;e=Ng[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(Ng[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)Rkb(205178);else return}function Rgb(a){a=a|0;return Ugb(a,0)|0}function Sgb(a){a=a|0;return Ugb(a,1)|0}function Tgb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;h=l+16|0;i=l+8|0;e=l+4|0;g=l;j=$fb(c,xfb()|0)|0;k=a+52|0;d=(b[k>>0]|0)!=0;do if(j)if(d)d=c;else{d=f[a+48>>2]|0;c=(($fb(d,xfb()|0)|0)^1)&1;b[k>>0]=c}else{if(d){j=a+48|0;d=Afb(f[j>>2]|0)|0;f[e>>2]=d;d=f[a+36>>2]|0;switch(Zg[f[(f[d>>2]|0)+12>>2]&15](d,f[a+40>>2]|0,e,e+4|0,g,h,h+8|0,i)|0){case 1:case 2:{g=11;break}case 3:{b[h>>0]=f[j>>2];f[i>>2]=h+1;g=8;break}default:g=8}a:do if((g|0)==8){d=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){e=1;d=0;break a}a=e+-1|0;f[i>>2]=a;if((yeb(b[a>>0]|0,f[d>>2]|0)|0)==-1){g=11;break}}}while(0);if((g|0)==11){e=0;d=xfb()|0}if(e)d=j;else break}else d=a+48|0;f[d>>2]=c;b[k>>0]=1;d=c}while(0);u=l;return d|0}function Ugb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;p=r+16|0;q=r+8|0;l=r+4|0;m=r;g=a+52|0;if(!(b[g>>0]|0)){d=f[a+44>>2]|0;d=(d|0)>1?d:1;o=a+32|0;e=0;while(1){if((e|0)>=(d|0)){n=9;break}g=mdb(f[o>>2]|0)|0;if((g|0)==-1){n=8;break}b[p+e>>0]=g;e=e+1|0}if((n|0)==8)d=xfb()|0;else if((n|0)==9){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=q+4|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=p+d|0;switch(Zg[f[(f[t>>2]|0)+16>>2]&15](t,s,p,h,l,q,k,m)|0){case 3:{n=16;break a}case 2:{n=18;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){n=18;break}e=mdb(f[o>>2]|0)|0;if((e|0)==-1){n=18;break}b[h>>0]=e;d=d+1|0}if((n|0)==16)f[q>>2]=b[p>>0];else if((n|0)==18){d=xfb()|0;break}n=19}else{f[q>>2]=b[p>>0];n=19}while(0);b:do if((n|0)==19){c:do if(c){t=yfb(f[q>>2]|0)|0;f[a+48>>2]=t}else{do{if((d|0)<=0)break c;d=d+-1|0;t=yfb(b[p+d>>0]|0)|0}while((yeb(t,f[o>>2]|0)|0)!=-1);d=xfb()|0;break b}while(0);d=yfb(f[q>>2]|0)|0}while(0)}}else{e=a+48|0;d=f[e>>2]|0;if(c){t=xfb()|0;f[e>>2]=t;b[g>>0]=0}}u=r;return d|0}function Vgb(a){a=a|0;Teb(a);return}function Wgb(a){a=a|0;Vgb(a);Zpb(a);return}function Xgb(a,c){a=a|0;c=c|0;var d=0,e=0;e=Chb(c,215008)|0;d=a+36|0;f[d>>2]=e;e=Ng[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(Ng[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)Rkb(205178);else return}function Ygb(a){a=a|0;return $gb(a,0)|0}function Zgb(a){a=a|0;return $gb(a,1)|0}function _gb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;h=l+16|0;i=l+4|0;e=l+8|0;g=l;j=Zfb(c,ffb()|0)|0;k=a+52|0;d=(b[k>>0]|0)!=0;do if(j)if(d)d=c;else{d=f[a+48>>2]|0;c=((Zfb(d,ffb()|0)|0)^1)&1;b[k>>0]=c}else{if(d){j=a+48|0;d=ifb(f[j>>2]|0)|0;b[e>>0]=d;d=f[a+36>>2]|0;switch(Zg[f[(f[d>>2]|0)+12>>2]&15](d,f[a+40>>2]|0,e,e+1|0,g,h,h+8|0,i)|0){case 1:case 2:{g=11;break}case 3:{b[h>>0]=f[j>>2];f[i>>2]=h+1;g=8;break}default:g=8}a:do if((g|0)==8){d=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){e=1;d=0;break a}a=e+-1|0;f[i>>2]=a;if((yeb(b[a>>0]|0,f[d>>2]|0)|0)==-1){g=11;break}}}while(0);if((g|0)==11){e=0;d=ffb()|0}if(e)d=j;else break}else d=a+48|0;f[d>>2]=c;b[k>>0]=1;d=c}while(0);u=l;return d|0}function $gb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;p=r+16|0;q=r+8|0;l=r+4|0;m=r;g=a+52|0;if(!(b[g>>0]|0)){d=f[a+44>>2]|0;d=(d|0)>1?d:1;o=a+32|0;e=0;while(1){if((e|0)>=(d|0)){n=9;break}g=mdb(f[o>>2]|0)|0;if((g|0)==-1){n=8;break}b[p+e>>0]=g;e=e+1|0}if((n|0)==8)d=ffb()|0;else if((n|0)==9){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=q+1|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=p+d|0;switch(Zg[f[(f[t>>2]|0)+16>>2]&15](t,s,p,h,l,q,k,m)|0){case 3:{n=16;break a}case 2:{n=18;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){n=18;break}e=mdb(f[o>>2]|0)|0;if((e|0)==-1){n=18;break}b[h>>0]=e;d=d+1|0}if((n|0)==16)b[q>>0]=b[p>>0]|0;else if((n|0)==18){d=ffb()|0;break}n=19}else{b[q>>0]=b[p>>0]|0;n=19}while(0);b:do if((n|0)==19){c:do if(c){t=gfb(b[q>>0]|0)|0;f[a+48>>2]=t}else{do{if((d|0)<=0)break c;d=d+-1|0;t=gfb(b[p+d>>0]|0)|0}while((yeb(t,f[o>>2]|0)|0)!=-1);d=ffb()|0;break b}while(0);d=gfb(b[q>>0]|0)|0}while(0)}}else{e=a+48|0;d=f[e>>2]|0;if(c){t=ffb()|0;f[e>>2]=t;b[g>>0]=0}}u=r;return d|0}function ahb(a){a=a|0;ghb(a);return}function bhb(a){a=a|0;ahb(a);Zpb(a);return}function chb(a){a=a|0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function dhb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a=c;while(1){if((e|0)==(f|0)){h=7;break}if((a|0)==(d|0)){a=-1;break}c=b[a>>0]|0;g=b[e>>0]|0;if(c<<24>>24<g<<24>>24){a=-1;break}if(g<<24>>24<c<<24>>24){a=1;break}e=e+1|0;a=a+1|0}if((h|0)==7)a=(a|0)!=(d|0)&1;return a|0}function ehb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;i=e-d|0;if(i>>>0>4294967279)aqb(a);if(i>>>0<11){b[a+11>>0]=i;g=a}else{c=i+16&-16;g=Wpb(c)|0;f[a>>2]=g;f[a+8>>2]=c|-2147483648;f[a+4>>2]=i}c=d;a=g;while(1){if((c|0)==(e|0))break;Wfb(a,c);c=c+1|0;a=a+1|0}b[h>>0]=0;Wfb(g+i|0,h);u=j;return}function fhb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a=0;while(1){if((c|0)==(d|0))break;e=(a<<4)+(b[c>>0]|0)|0;f=e&-268435456;a=(f>>>24|f)^e;c=c+1|0}return a|0}function ghb(a){a=a|0;return}function hhb(a){a=a|0;ghb(a);return}function ihb(a){a=a|0;hhb(a);Zpb(a);return}function jhb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a=b;while(1){if((d|0)==(e|0)){h=7;break}if((a|0)==(c|0)){a=-1;break}b=f[a>>2]|0;g=f[d>>2]|0;if((b|0)<(g|0)){a=-1;break}if((g|0)<(b|0)){a=1;break}d=d+4|0;a=a+4|0}if((h|0)==7)a=(a|0)!=(c|0)&1;return a|0}function khb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;g=i;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=e-d>>2;if(h>>>0>1073741807)aqb(a);do if(h>>>0<2){b[a+8+3>>0]=h;j=d;k=a}else{c=h+4&-4;if(c>>>0>1073741823)ud();else{k=Wpb(c<<2)|0;f[a>>2]=k;f[a+8>>2]=c|-2147483648;f[a+4>>2]=h;j=d;break}}while(0);while(1){if((j|0)==(e|0))break;mhb(k,j);j=j+4|0;k=k+4|0}f[g>>2]=0;mhb(k,g);u=i;return}function lhb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;while(1){if((b|0)==(c|0))break;d=(f[b>>2]|0)+(a<<4)|0;e=d&-268435456;a=(e>>>24|e)^d;b=b+4|0}return a|0}function mhb(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function nhb(a){a=a|0;ghb(a);return}function ohb(a){a=a|0;ghb(a);Zpb(a);return}function phb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+48|0;i=o+40|0;n=o+16|0;j=o+8|0;k=o+12|0;l=o+4|0;m=o;if(!(f[e+4>>2]&1)){f[j>>2]=-1;m=f[(f[a>>2]|0)+16>>2]|0;f[k>>2]=f[c>>2];f[l>>2]=f[d>>2];f[n>>2]=f[k>>2];f[i>>2]=f[l>>2];n=Xg[m&63](a,n,i,e,g,j)|0;f[c>>2]=n;switch(f[j>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}i=f[c>>2]|0}else{_fb(i,e);l=Chb(i,213216)|0;Dhb(i);_fb(i,e);a=Chb(i,213232)|0;Dhb(i);nh[f[(f[a>>2]|0)+24>>2]&1023](n,a);nh[f[(f[a>>2]|0)+28>>2]&1023](n+12|0,a);f[m>>2]=f[d>>2];a=n+24|0;f[i>>2]=f[m>>2];i=(iib(c,i,n,a,l,g,1)|0)==(n|0)&1;b[h>>0]=i;i=f[c>>2]|0;do{a=a+-12|0;eqb(a)}while((a|0)!=(n|0))}u=o;return i|0}function qhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=gib(a,j,i,d,e,g)|0;u=h;return g|0}function rhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=eib(a,j,i,d,e,g)|0;u=h;return g|0}function shb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=cib(a,j,i,d,e,g)|0;u=h;return g|0}function thb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=aib(a,j,i,d,e,g)|0;u=h;return g|0}function uhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=_hb(a,j,i,d,e,g)|0;u=h;return g|0}function vhb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;f[l>>2]=f[b>>2];f[k>>2]=f[c>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=Whb(a,j,i,d,e,g)|0;u=h;return g|0}function whb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=f[a+72>>2]|0;k=f[a+144>>2]|0;i=f[a+544>>2]|0;j=f[a+552>>2]|0;n=f[a+1472>>2]|0;p=f[a+2152>>2]|0;q=f[a+2216>>2]|0;a:{if(q){q=0;if(!n){g=f[52891]|0;if((g|0)==0|j>>>0<g>>>0)f[52891]=j;f[52999]=j;f[53e3]=i;f[53002]=0;f[52896]=f[53005];f[52895]=-1;f[52900]=211588;f[52899]=211588;f[52902]=211596;f[52901]=211596;f[52904]=211604;f[52903]=211604;f[52906]=211612;f[52905]=211612;f[52908]=211620;f[52907]=211620;f[52910]=211628;f[52909]=211628;f[52912]=211636;f[52911]=211636;f[52914]=211644;f[52913]=211644;f[52916]=211652;f[52915]=211652;f[52918]=211660;f[52917]=211660;f[52920]=211668;f[52919]=211668;f[52922]=211676;f[52921]=211676;f[52924]=211684;f[52923]=211684;f[52926]=211692;f[52925]=211692;f[52928]=211700;f[52927]=211700;f[52930]=211708;f[52929]=211708;f[52932]=211716;f[52931]=211716;f[52934]=211724;f[52933]=211724;f[52936]=211732;f[52935]=211732;f[52938]=211740;f[52937]=211740;f[52940]=211748;f[52939]=211748;f[52942]=211756;f[52941]=211756;f[52944]=211764;f[52943]=211764;f[52946]=211772;f[52945]=211772;f[52948]=211780;f[52947]=211780;f[52950]=211788;f[52949]=211788;f[52952]=211796;f[52951]=211796;f[52954]=211804;f[52953]=211804;f[52956]=211812;f[52955]=211812;f[52958]=211820;f[52957]=211820;f[52960]=211828;f[52959]=211828;f[52962]=211836;f[52961]=211836;g=i+-40|0;d=j+8|0;d=(d&7|0)==0?0:0-d&7;e=j+d|0;f[52893]=e;f[52890]=g-d|0;f[e+4>>2]=g-d|0|1;f[j+g+4>>2]=40;f[52894]=f[53009]}else q=1}if(q){q=0;if(1){b=211996;while(1){c=f[b>>2]|0;d=b+4|0;e=f[d>>2]|0;if((j|0)==(c+e|0)){p=143;break}g=f[b+8>>2]|0;if(!g)break;else b=g}if((p|0)==143)if(!(f[b+12>>2]&8))if(j>>>0>n>>>0&c>>>0<=n>>>0){f[d>>2]=e+i;o=(f[52890]|0)+i|0;l=((n+8|0)&7|0)==0?0:0-(n+8|0)&7;f[52893]=n+l|0;f[52890]=o-l|0;f[(n+l|0)+4>>2]=o-l|0|1;f[n+o+4>>2]=40;f[52894]=f[53009];f[a+2240>>2]=1;break a}if(j>>>0<(f[52891]|0)>>>0)f[52891]=j;d=j+i|0;c=211996;while(1){if((f[c>>2]|0)==(d|0)){p=151;break}b=f[c+8>>2]|0;if(!b){h=211996;break}else c=b}if((p|0)==151){b=1;if(b)if(!(f[c+12>>2]&8)){f[c>>2]=j;m=c+4|0;f[m>>2]=(f[m>>2]|0)+i;m=j+8|0;m=j+((m&7|0)==0?0:0-m&7)|0;b=d+(((d+8|0)&7|0)==0?0:0-(d+8|0)&7)|0;l=m+k|0;j=b-m-k|0;f[m+4>>2]=k|3;do{c=1;if(c){c=0;if((n|0)==(b|0)){n=(f[52890]|0)+j|0;f[52890]=n;f[52893]=l;f[l+4>>2]=n|1}else c=1}if(c)if(1){if((f[52892]|0)==(b|0)){o=(f[52889]|0)+j|0;f[52889]=o;f[52892]=l;f[l+4>>2]=o|1;f[l+o>>2]=o;break}i=f[b+4>>2]|0;if((i&3|0)==1){b:do if(i>>>0<256){c=f[b+8>>2]|0;d=f[b+12>>2]|0;if((d|0)==(c|0)){f[52887]=f[52887]&~(1<<(i>>>3));break}else{f[c+12>>2]=d;f[d+8>>2]=c;break}}else{h=f[b+24>>2]|0;c=f[b+12>>2]|0;do if((c|0)==(b|0)){c=f[((b+16|0)+4|0)>>2]|0;if(!c){c=f[(b+16|0)>>2]|0;if(!c){c=0;break}else g=b+16|0}else g=(b+16|0)+4|0;while(1){d=c+20|0;e=f[d>>2]|0;if(e|0){c=e;g=d;continue}d=c+16|0;e=f[d>>2]|0;if(!e)break;else{c=e;g=d}}f[g>>2]=0}else{n=f[b+8>>2]|0;f[n+12>>2]=c;f[c+8>>2]=n}while(0);if(!h)break;d=f[b+28>>2]|0;do if((f[(211852+(d<<2)|0)>>2]|0)==(b|0)){f[(211852+(d<<2)|0)>>2]=c;if(c|0)break;f[52888]=f[52888]&~(1<<d);break b}else{f[h+16+(((f[h+16>>2]|0)!=(b|0)&1)<<2)>>2]=c;if(!c)break b}while(0);f[c+24>>2]=h;d=f[(b+16|0)>>2]|0;if(d|0){f[c+16>>2]=d;f[d+24>>2]=c}d=f[(b+16|0)+4>>2]|0;if(!d)break;f[c+20>>2]=d;f[d+24>>2]=c}while(0);b=b+(i&-8)|0;g=(i&-8)+j|0}else g=j;d=b+4|0;f[d>>2]=f[d>>2]&-2;f[l+4>>2]=g|1;f[l+g>>2]=g;d=g>>>3;if(g>>>0<256){b=f[52887]|0;if(!(b&1<<d)){f[52887]=b|1<<d;b=211588+(d<<1<<2)|0;c=(211588+(d<<1<<2)|0)+8|0}else{b=f[((211588+(d<<1<<2)|0)+8|0)>>2]|0;c=(211588+(d<<1<<2)|0)+8|0}f[c>>2]=l;f[b+12>>2]=l;f[l+8>>2]=b;f[l+12>>2]=211588+(d<<1<<2)|0;break}b=g>>>8;do if(!b)b=0;else{if(g>>>0>16777215){b=31;break}n=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(n+245760|0)>>>16&2)+(n<<((n+245760|0)>>>16&2)>>>15)|0;b=g>>>(b+7|0)&1|b<<1}while(0);e=211852+(b<<2)|0;f[l+28>>2]=b;f[(l+16|0)+4>>2]=0;f[(l+16|0)>>2]=0;c=f[52888]|0;d=1<<b;if(!(c&d)){f[52888]=c|d;f[e>>2]=l;f[l+24>>2]=e;f[l+12>>2]=l;f[l+8>>2]=l;break}c=g<<((b|0)==31?0:25-(b>>>1)|0);d=f[e>>2]|0;while(1){if((f[d+4>>2]&-8|0)==(g|0)){p=192;break}o=d+16+(c>>>31<<2)|0;b=f[o>>2]|0;if(!b){p=191;break}else{c=c<<1;d=b}}if((p|0)==191){f[o>>2]=l;f[l+24>>2]=d;f[l+12>>2]=l;f[l+8>>2]=l;break}else if((p|0)==192){n=d+8|0;o=f[n>>2]|0;f[o+12>>2]=l;f[n>>2]=l;f[l+8>>2]=o;f[l+12>>2]=d;f[l+24>>2]=0;break}}}while(0);m=m+8|0;u=a;f[a+2240>>2]=6;f[a+2244>>2]=m|0;break a}else b=1;if(b)if(1)h=211996}while(1){b=f[h>>2]|0;if(b>>>0<=n>>>0){c=b+(f[h+4>>2]|0)|0;if(c>>>0>n>>>0)break}h=f[h+8>>2]|0}g=(c+-47|0)+((((c+-47|0)+8|0)&7|0)==0?0:0-((c+-47|0)+8|0)&7)|0;g=g>>>0<(n+16|0)>>>0?n:g;b=i+-40|0;k=j+8|0;k=(k&7|0)==0?0:0-k&7;o=j+k|0;f[52893]=o;f[52890]=b-k|0;f[o+4>>2]=b-k|0|1;f[j+b+4>>2]=40;f[52894]=f[53009];f[(g+4|0)>>2]=27;f[(g+8|0)>>2]=f[52999];f[(g+8|0)+4>>2]=f[53e3];f[(g+8|0)+8>>2]=f[53001];f[(g+8|0)+12>>2]=f[53002];f[52999]=j;f[53e3]=i;f[53002]=0;f[53001]=g+8|0;b=g+24|0;do{o=b;b=b+4|0;f[b>>2]=7}while((o+8|0)>>>0<c>>>0);if((g|0)!=(n|0)){f[(g+4|0)>>2]=f[(g+4|0)>>2]&-2;f[n+4>>2]=g-n|0|1;f[g>>2]=g-n|0;if((g-n|0)>>>0<256){d=211588+((g-n|0)>>>3<<1<<2)|0;b=f[52887]|0;if(!(b&1<<((g-n|0)>>>3))){f[52887]=b|1<<((g-n|0)>>>3);b=d;c=d+8|0}else{b=f[(d+8|0)>>2]|0;c=d+8|0}f[c>>2]=n;f[b+12>>2]=n;f[n+8>>2]=b;f[n+12>>2]=d;f[a+2240>>2]=1;break a}if(!((g-n|0)>>>8))b=0;else if((g-n|0)>>>0>16777215)b=31;else{b=(g-n|0)>>>8<<((((g-n|0)>>>8)+1048320|0)>>>16&8);b=14-((b+520192|0)>>>16&4|(((g-n|0)>>>8)+1048320|0)>>>16&8|((b<<((b+520192|0)>>>16&4))+245760|0)>>>16&2)+(b<<((b+520192|0)>>>16&4)<<(((b<<((b+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;b=(g-n|0)>>>(b+7|0)&1|b<<1}e=211852+(b<<2)|0;f[n+28>>2]=b;f[n+20>>2]=0;f[(n+16|0)>>2]=0;c=f[52888]|0;d=1<<b;if(!(c&d)){f[52888]=c|d;f[e>>2]=n;f[n+24>>2]=e;f[n+12>>2]=n;f[n+8>>2]=n;f[a+2240>>2]=1;break a}c=(g-n|0)<<((b|0)==31?0:25-(b>>>1)|0);d=f[e>>2]|0;while(1){if((f[d+4>>2]&-8|0)==(g-n|0|0)){p=213;break}l=d+16+(c>>>31<<2)|0;b=f[l>>2]|0;if(!b){p=212;break}else{c=c<<1;d=b}}if((p|0)==212){f[l>>2]=n;f[n+24>>2]=d;f[n+12>>2]=n;f[n+8>>2]=n;f[a+2240>>2]=1;break a}else if((p|0)==213){l=d+8|0;o=f[l>>2]|0;f[o+12>>2]=n;f[l>>2]=n;f[n+8>>2]=o;f[n+12>>2]=d;f[n+24>>2]=0;f[a+2240>>2]=1;break a}}}else q=1}}f[a+72>>2]=m;f[a+2152>>2]=p;f[a+2216>>2]=q}function xhb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;j=f[a+32>>2]|0;r=f[a+72>>2]|0;z=f[a+144>>2]|0;y=f[a+2152>>2]|0;A=f[a+2160>>2]|0;a:{if(A){A=0;if(j>>>0<245){t=j>>>0<11?16:j+11&-8;q=f[52887]|0;if(q>>>(t>>>3)&3|0){b=211588+(((q>>>(t>>>3)&1^1)+(t>>>3)|0)<<1<<2)|0;c=f[(b+8|0)>>2]|0;d=f[(c+8|0)>>2]|0;if((d|0)==(b|0))f[52887]=q&~(1<<((q>>>(t>>>3)&1^1)+(t>>>3)|0));else{f[d+12>>2]=b;f[(b+8|0)>>2]=d}r=((q>>>(t>>>3)&1^1)+(t>>>3)|0)<<3;f[c+4>>2]=r|3;f[(c+r+4|0)>>2]=f[(c+r+4|0)>>2]|1;r=c+8|0;u=a;f[a+2248>>2]=6;f[a+2252>>2]=r|0;break a}s=f[52889]|0;i=1;if(i){i=0;if(t>>>0>s>>>0){if(q>>>(t>>>3)|0){b=q>>>(t>>>3)<<(t>>>3)&(2<<(t>>>3)|0-(2<<(t>>>3)));g=((b&0-b)+-1|0)>>>(((b&0-b)+-1|0)>>>12&16);e=g>>>(g>>>5&8)>>>(g>>>(g>>>5&8)>>>2&4);e=(g>>>5&8|((b&0-b)+-1|0)>>>12&16|g>>>(g>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))|0;g=f[((211588+(e<<1<<2)|0)+8|0)>>2]|0;b=f[(g+8|0)>>2]|0;if((b|0)==(211588+(e<<1<<2)|0|0)){f[52887]=q&~(1<<e);b=q&~(1<<e)}else{f[b+12>>2]=211588+(e<<1<<2)|0;f[((211588+(e<<1<<2)|0)+8|0)>>2]=b;b=q}f[g+4>>2]=t|3;f[(g+t|0)+4>>2]=(e<<3)-t|0|1;f[g+(e<<3)>>2]=(e<<3)-t|0;if(s|0){d=f[52892]|0;if(!(b&1<<(s>>>3))){f[52887]=b|1<<(s>>>3);b=211588+(s>>>3<<1<<2)|0;c=(211588+(s>>>3<<1<<2)|0)+8|0}else{b=f[((211588+(s>>>3<<1<<2)|0)+8|0)>>2]|0;c=(211588+(s>>>3<<1<<2)|0)+8|0}f[c>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=211588+(s>>>3<<1<<2)|0}f[52889]=(e<<3)-t|0;f[52892]=g+t|0;r=g+8|0;u=a;f[a+2248>>2]=6;f[a+2252>>2]=r|0;break a}m=f[52888]|0;e=1;if(e){e=0;if(!m)z=t;else e=1}if(e)if(1){g=((m&0-m)+-1|0)>>>(((m&0-m)+-1|0)>>>12&16);e=g>>>(g>>>5&8)>>>(g>>>(g>>>5&8)>>>2&4);e=f[211852+((g>>>5&8|((m&0-m)+-1|0)>>>12&16|g>>>(g>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))<<2)>>2]|0;g=(f[e+4>>2]&-8)-t|0;h=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!h)l=e;else{do{k=(f[h+4>>2]&-8)-t|0;l=k>>>0<g>>>0;g=l?k:g;e=l?h:e;h=f[h+16+(((f[h+16>>2]|0)==0&1)<<2)>>2]|0}while((h|0)!=0);l=e}k=l+t|0;if(k>>>0>l>>>0){h=f[l+24>>2]|0;b=f[l+12>>2]|0;do if((b|0)==(l|0)){c=l+20|0;b=f[c>>2]|0;if(!b){c=l+16|0;b=f[c>>2]|0;if(!b){c=0;break}}while(1){d=b+20|0;e=f[d>>2]|0;if(e|0){b=e;c=d;continue}d=b+16|0;e=f[d>>2]|0;if(!e)break;else{b=e;c=d}}f[c>>2]=0;c=b}else{c=f[l+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(h|0){b=f[l+28>>2]|0;if((l|0)==(f[(211852+(b<<2)|0)>>2]|0)){f[(211852+(b<<2)|0)>>2]=c;if(!c){f[52888]=m&~(1<<b);break}}else{f[h+16+(((f[h+16>>2]|0)!=(l|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=h;b=f[l+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[l+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(g>>>0<16){x=g+t|0;f[l+4>>2]=x|3;x=l+x+4|0;f[x>>2]=f[x>>2]|1}else{f[l+4>>2]=t|3;f[k+4>>2]=g|1;f[k+g>>2]=g;if(s|0){d=f[52892]|0;if(!(q&1<<(s>>>3))){f[52887]=q|1<<(s>>>3);b=211588+(s>>>3<<1<<2)|0;c=(211588+(s>>>3<<1<<2)|0)+8|0}else{b=f[((211588+(s>>>3<<1<<2)|0)+8|0)>>2]|0;c=(211588+(s>>>3<<1<<2)|0)+8|0}f[c>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=211588+(s>>>3<<1<<2)|0}f[52889]=g;f[52892]=k}r=l+8|0;u=a;f[a+2248>>2]=6;f[a+2252>>2]=r|0;break a}else z=t}}else i=1}if(i)if(1)z=t}else A=1}if(A){A=0;if(1){e=1;if(e){e=0;if(j>>>0>4294967231)z=-1;else e=1}if(e)if(1){s=(j+11|0)&-8;q=f[52888]|0;e=1;if(e){e=0;if(!q)z=s;else e=1}if(e)if(1){if(!((j+11|0)>>>8))m=0;else if(s>>>0>16777215)m=31;else{m=(j+11|0)>>>8<<((((j+11|0)>>>8)+1048320|0)>>>16&8);m=14-((m+520192|0)>>>16&4|(((j+11|0)>>>8)+1048320|0)>>>16&8|((m<<((m+520192|0)>>>16&4))+245760|0)>>>16&2)+(m<<((m+520192|0)>>>16&4)<<(((m<<((m+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;m=s>>>(m+7|0)&1|m<<1}e=f[211852+(m<<2)>>2]|0;b:do if(!e){d=0;n=0;o=0-s|0;y=57}else{j=0;k=0-s|0;l=s<<((m|0)==31?0:25-(m>>>1)|0);h=0;while(1){g=(f[e+4>>2]&-8)-s|0;if(g>>>0<k>>>0)if(!g){c=0;p=e;b=e;y=61;break b}else j=e;else g=k;i=f[e+20>>2]|0;e=f[e+16+(l>>>31<<2)>>2]|0;h=(i|0)==0|(i|0)==(e|0)?h:i;i=(e|0)==0;if(i){d=h;n=j;o=g;y=57;break}else{k=g;l=l<<((i^1)&1)}}}while(0);if((y|0)==57){if((d|0)==0&(n|0)==0){d=2<<m;if(!(q&(d|0-d))){z=s;f[a+2248>>2]=1;break a}n=((q&(d|0-d)&0-(q&(d|0-d)))+-1|0)>>>12&16;t=((q&(d|0-d)&0-(q&(d|0-d)))+-1|0)>>>n;d=t>>>(t>>>5&8)>>>(t>>>(t>>>5&8)>>>2&4);e=0;d=f[211852+((t>>>5&8|n|t>>>(t>>>5&8)>>>2&4|d>>>1&2|d>>>(d>>>1&2)>>>1&1)+(d>>>(d>>>1&2)>>>(d>>>(d>>>1&2)>>>1&1))<<2)>>2]|0}else e=n;if(!d){x=e;v=o}else{c=o;p=d;b=e;y=61}}if((y|0)==61){do{y=0;v=(f[p+4>>2]&-8)-s|0;x=v>>>0<c>>>0;c=x?v:c;b=x?p:b;p=f[p+16+(((f[p+16>>2]|0)==0&1)<<2)>>2]|0}while((p|0)!=0);x=b;v=c}b=1;if(b){b=0;if(!x)z=s;else b=1}if(b)if(1){b=1;if(b)if(v>>>0<((f[52889]|0)-s|0)>>>0){h=x+s|0;if(h>>>0<=x>>>0){r=0;u=a;f[a+2248>>2]=6;f[a+2252>>2]=r|0;break a}g=f[x+24>>2]|0;b=f[x+12>>2]|0;do if((b|0)==(x|0)){c=x+20|0;b=f[c>>2]|0;if(!b){c=x+16|0;b=f[c>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=f[d>>2]|0;if(e|0){b=e;c=d;continue}d=b+16|0;e=f[d>>2]|0;if(!e)break;else{b=e;c=d}}f[c>>2]=0}else{t=f[x+8>>2]|0;f[t+12>>2]=b;f[b+8>>2]=t}while(0);do if(!g)e=q;else{c=f[x+28>>2]|0;if((x|0)==(f[(211852+(c<<2)|0)>>2]|0)){f[(211852+(c<<2)|0)>>2]=b;if(!b){f[52888]=q&~(1<<c);e=q&~(1<<c);break}}else{f[g+16+(((f[g+16>>2]|0)!=(x|0)&1)<<2)>>2]=b;if(!b){e=q;break}}f[b+24>>2]=g;c=f[x+16>>2]|0;if(c|0){f[b+16>>2]=c;f[c+24>>2]=b}c=f[x+20>>2]|0;if(!c)e=q;else{f[b+20>>2]=c;f[c+24>>2]=b;e=q}}while(0);do if(v>>>0<16){w=v+s|0;f[x+4>>2]=w|3;w=x+w+4|0;f[w>>2]=f[w>>2]|1}else{f[x+4>>2]=s|3;f[h+4>>2]=v|1;f[h+v>>2]=v;d=v>>>3;if(v>>>0<256){b=f[52887]|0;if(!(b&1<<d)){f[52887]=b|1<<d;b=211588+(d<<1<<2)|0;c=(211588+(d<<1<<2)|0)+8|0}else{b=f[((211588+(d<<1<<2)|0)+8|0)>>2]|0;c=(211588+(d<<1<<2)|0)+8|0}f[c>>2]=h;f[b+12>>2]=h;f[h+8>>2]=b;f[h+12>>2]=211588+(d<<1<<2)|0;break}b=v>>>8;if(!b)b=0;else if(v>>>0>16777215)b=31;else{t=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(t+245760|0)>>>16&2)+(t<<((t+245760|0)>>>16&2)>>>15)|0;b=v>>>(b+7|0)&1|b<<1}d=211852+(b<<2)|0;f[h+28>>2]=b;f[(h+16|0)+4>>2]=0;f[(h+16|0)>>2]=0;c=1<<b;if(!(e&c)){f[52888]=e|c;f[d>>2]=h;f[h+24>>2]=d;f[h+12>>2]=h;f[h+8>>2]=h;break}c=v<<((b|0)==31?0:25-(b>>>1)|0);d=f[d>>2]|0;while(1){if((f[d+4>>2]&-8|0)==(v|0)){y=97;break}w=d+16+(c>>>31<<2)|0;b=f[w>>2]|0;if(!b){y=96;break}else{c=c<<1;d=b}}if((y|0)==96){f[w>>2]=h;f[h+24>>2]=d;f[h+12>>2]=h;f[h+8>>2]=h;break}else if((y|0)==97){v=d+8|0;w=f[v>>2]|0;f[w+12>>2]=h;f[v>>2]=h;f[h+8>>2]=w;f[h+12>>2]=d;f[h+24>>2]=0;break}}while(0);r=x+8|0;u=a;f[a+2248>>2]=6;f[a+2252>>2]=r|0;break a}else b=1;if(b)if(1)z=s}}}}else A=1}}f[a+72>>2]=r;f[a+144>>2]=z;f[a+2152>>2]=y;f[a+2160>>2]=A}
function l_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+32|0;x=B+24|0;s=B+16|0;t=B+12|0;v=B+8|0;w=B;q=f[b>>2]|0;A=b+4|0;m=f[A>>2]|0;z=q+4|0;j=f[q+8>>2]|0;i=b+8|0;if((j|0)!=(f[b+12>>2]|0)){r=q+12|0;a=f[r>>2]|0;g=a+4|0;h=f[g>>2]|0;e=f[z>>2]|0;a:do if((h|0)==(e|0))while(1){if((a|0)==(q|0)?1:(f[a+8>>2]|0)!=(j|0)){h=a;a=g;break a}a=f[a+12>>2]|0;g=a+4|0;if((f[g>>2]|0)!=(h|0)){h=a;a=g;break}}else{h=a;a=g}while(0);if((f[h+8>>2]|0)>(j|0))y=42;else{v=z;g=f[v>>2]|0;w=a;x=f[w>>2]|0;w=f[w+4>>2]|0;e=i;a=f[e>>2]|0;e=f[e+4>>2]|0;if((X(x-a|0,(f[v+4>>2]|0)-w|0)|0)==(X(w-e|0,g-x|0)|0))p=0;else{e=g;y=42}}if((y|0)==42){h=q;do{h=f[h+16>>2]|0;a=h+4|0;g=f[h+8>>2]|0;if((f[a>>2]|0)!=(e|0))break}while(!((h|0)==(q|0)|(g|0)!=(j|0)));if((g|0)>(j|0)){b=0;u=B;return b|0}w=z;v=a;x=f[v>>2]|0;v=f[v+4>>2]|0;e=i;a=f[e>>2]|0;e=f[e+4>>2]|0;if((X(x-a|0,(f[w+4>>2]|0)-v|0)|0)==(X(v-e|0,(f[w>>2]|0)-x|0)|0))p=1;else{b=0;u=B;return b|0}}n=m+12|0;g=f[n>>2]|0;i=g+4|0;o=m+4|0;j=f[i>>2]|0;k=f[o>>2]|0;l=f[m+8>>2]|0;b:do if((j|0)==(k|0))while(1){if((g|0)==(m|0)?1:(f[g+8>>2]|0)!=(l|0)){j=g;break b}g=f[g+12>>2]|0;i=g+4|0;if((f[i>>2]|0)!=(j|0)){j=g;break}}else j=g;while(0);if((f[j+8>>2]|0)>(l|0))y=52;else{v=o;g=f[v>>2]|0;w=i;x=f[w>>2]|0;w=f[w+4>>2]|0;if((X(x-a|0,(f[v+4>>2]|0)-w|0)|0)==(X(w-e|0,g-x|0)|0)){a=j;e=0}else{k=g;y=52}}if((y|0)==52){g=m;do{g=f[g+16>>2]|0;i=g+4|0;j=f[g+8>>2]|0;if((f[i>>2]|0)!=(k|0))break}while(!((g|0)==(m|0)|(j|0)!=(l|0)));if((j|0)>(l|0)){b=0;u=B;return b|0}x=o;w=i;y=f[w>>2]|0;w=f[w+4>>2]|0;if((X(y-a|0,(f[x+4>>2]|0)-w|0)|0)==(X(w-e|0,(f[x>>2]|0)-y|0)|0)){a=g;e=1}else{b=0;u=B;return b|0}}if((h|0)==(a|0)|((h|0)==(q|0)|(a|0)==(m|0))){b=0;u=B;return b|0}if(!((c|0)!=(d|0)|p^e)){b=0;u=B;return b|0}a=Wpb(20)|0;c=z;d=f[c+4>>2]|0;z=a+4|0;f[z>>2]=f[c>>2];f[z+4>>2]=d;f[a>>2]=f[q>>2];if(p){c=q+16|0;z=f[c>>2]|0;f[a+16>>2]=z;d=a+12|0;f[d>>2]=q;f[z+12>>2]=a;f[c>>2]=a;z=Wpb(20)|0;w=o;x=f[w+4>>2]|0;y=z+4|0;f[y>>2]=f[w>>2];f[y+4>>2]=x;f[z>>2]=f[m>>2];y=f[n>>2]|0;f[z+12>>2]=y;f[y+16>>2]=z;f[c>>2]=m;f[n>>2]=q;f[d>>2]=z;f[z+16>>2]=a;f[b>>2]=q;f[A>>2]=a;b=1;u=B;return b|0}else{z=f[r>>2]|0;f[a+12>>2]=z;d=a+16|0;f[d>>2]=q;f[z+16>>2]=a;f[r>>2]=a;z=Wpb(20)|0;x=o;y=f[x+4>>2]|0;c=z+4|0;f[c>>2]=f[x>>2];f[c+4>>2]=y;f[z>>2]=f[m>>2];c=m+16|0;y=f[c>>2]|0;f[z+16>>2]=y;f[y+12>>2]=z;f[r>>2]=m;f[c>>2]=q;f[d>>2]=z;f[z+12>>2]=a;f[b>>2]=q;f[A>>2]=a;b=1;u=B;return b|0}}g=f[i>>2]|0;if((g|0)==(f[z>>2]|0))if((g|0)==(f[m+4>>2]|0))if((j|0)==(f[m+8>>2]|0)){if((c|0)==(d|0))a=q;else{b=0;u=B;return b|0}do{a=f[a+12>>2]|0;if((a|0)==(q|0)){a=q;break}if((f[a+4>>2]|0)!=(g|0))break}while((f[a+8>>2]|0)==(j|0));e=(f[a+8>>2]|0)>(j|0);a=m;do{a=f[a+12>>2]|0;if((a|0)==(m|0)){a=m;break}if((f[a+4>>2]|0)!=(g|0))break}while((f[a+8>>2]|0)==(j|0));if(!(e^(f[a+8>>2]|0)>(j|0))){b=0;u=B;return b|0}k=Wpb(20)|0;c=z;d=f[c+4>>2]|0;z=k+4|0;f[z>>2]=f[c>>2];f[z+4>>2]=d;f[k>>2]=f[q>>2];if(e){h=q+16|0;i=f[h>>2]|0;f[k+16>>2]=i;e=k+12|0;f[e>>2]=q;f[i+12>>2]=k;f[h>>2]=k;i=Wpb(20)|0;a=m+4|0;j=f[a+4>>2]|0;g=i+4|0;f[g>>2]=f[a>>2];f[g+4>>2]=j;f[i>>2]=f[m>>2];g=m+12|0;j=f[g>>2]|0;f[i+12>>2]=j;a=i+16|0;f[a>>2]=m;j=j+16|0}else{h=q+12|0;i=f[h>>2]|0;f[k+12>>2]=i;e=k+16|0;f[e>>2]=q;f[i+16>>2]=k;f[h>>2]=k;i=Wpb(20)|0;a=m+4|0;j=f[a+4>>2]|0;g=i+4|0;f[g>>2]=f[a>>2];f[g+4>>2]=j;f[i>>2]=f[m>>2];g=m+16|0;j=f[g>>2]|0;f[i+16>>2]=j;a=i+12|0;f[a>>2]=m;j=j+12|0}f[j>>2]=i;f[h>>2]=m;f[g>>2]=q;f[e>>2]=i;f[a>>2]=k;f[b>>2]=q;f[A>>2]=k;b=1;u=B;return b|0}else r=q;else r=q;else r=q;while(1){a=f[r+16>>2]|0;if((a|0)==(m|0)|((a|0)==(q|0)?1:(f[a+8>>2]|0)!=(j|0))){a=j;break}else r=a}while(1){e=f[q+12>>2]|0;z=a;a=f[e+8>>2]|0;g=(e|0)==(r|0);if(!((e|0)!=(m|0)&((g|(a|0)!=(z|0))^1)))break;else q=e}o=r+4|0;p=q+4|0;if(g|(e|0)==(m|0)){b=0;u=B;return b|0}e=f[m+8>>2]|0;n=m;while(1){a=f[n+16>>2]|0;if((a|0)==(q|0)|((a|0)==(m|0)?1:(f[a+8>>2]|0)!=(e|0)))break;else n=a}while(1){a=f[m+12>>2]|0;z=e;e=f[a+8>>2]|0;g=(a|0)==(n|0);if(!((a|0)!=(r|0)&((g|(e|0)!=(z|0))^1)))break;else m=a}k=n+4|0;l=m+4|0;if(g|(a|0)==(r|0)){b=0;u=B;return b|0}h=f[o>>2]|0;i=f[p>>2]|0;j=f[k>>2]|0;e=f[l>>2]|0;f[x>>2]=h;f[s>>2]=i;f[t>>2]=j;f[v>>2]=e;a=(j|0)<(e|0);do if((h|0)<(i|0))if(a){g=(h|0)<(j|0)?j:h;a=(e|0)<(i|0)?v:s;break}else{g=(h|0)<(e|0)?e:h;a=(j|0)<(i|0)?t:s;break}else if(a){g=(i|0)<(j|0)?j:i;a=(e|0)<(h|0)?v:x;break}else{g=(i|0)<(e|0)?e:i;a=(j|0)<(h|0)?t:x;break}while(0);a=f[a>>2]|0;if((g|0)>=(a|0)){b=0;u=B;return b|0}if((h|0)<(g|0)|(h|0)>(a|0))if((j|0)<(g|0)|(j|0)>(a|0)){a=(i|0)<(g|0)|(i|0)>(a|0);e=a?k:o;g=a?l:p;a=a?l:p}else{e=l;g=k;a=k}else{e=p;g=o;a=o}d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;z=(f[g>>2]|0)>(f[e>>2]|0);f[b>>2]=r;f[A>>2]=n;b=w;f[b>>2]=c;f[b+4>>2]=d;f[x>>2]=f[w>>2];f[x+4>>2]=f[w+4>>2];b=m_a(r,q,n,m,x,z)|0;u=B;return b|0}function m_a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=(f[a+4>>2]|0)<=(f[b+4>>2]|0);n=(f[c+4>>2]|0)<=(f[d+4>>2]|0);if(!(q^n)){g=0;return g|0}m=f[e>>2]|0;p=e+4|0;do if(q){b=a;while(1){d=f[b+12>>2]|0;a=f[d+4>>2]|0;if((a|0)>(m|0))break;if((a|0)<(f[b+4>>2]|0))break;if((f[d+8>>2]|0)==(f[p>>2]|0))b=d;else break}if(g)b=(f[b+4>>2]|0)==(m|0)?b:d;l=Wpb(20)|0;j=l+4|0;i=b+4|0;h=f[i>>2]|0;i=f[i+4>>2]|0;k=j;f[k>>2]=h;f[k+4>>2]=i;k=f[b>>2]|0;f[l>>2]=k;if(g){d=b+16|0;a=f[d>>2]|0;f[l+16>>2]=a;f[l+12>>2]=b;a=a+12|0}else{d=b+12|0;a=f[d>>2]|0;f[l+12>>2]=a;f[l+16>>2]=b;a=a+16|0}f[a>>2]=l;f[d>>2]=l;if((m|0)==(h|0))if((f[p>>2]|0)==(i|0)){a=l;o=b;h=m;break}m=e;h=f[m>>2]|0;m=f[m+4>>2]|0;a=j;f[a>>2]=h;f[a+4>>2]=m;a=Wpb(20)|0;o=a+4|0;f[o>>2]=h;f[o+4>>2]=m;f[a>>2]=k;if(g){b=l+16|0;d=f[b>>2]|0;f[a+16>>2]=d;f[a+12>>2]=l;d=d+12|0}else{b=l+12|0;d=f[b>>2]|0;f[a+12>>2]=d;f[a+16>>2]=l;d=d+16|0}f[d>>2]=a;f[b>>2]=a;o=l}else{b=a;while(1){d=f[b+12>>2]|0;a=f[d+4>>2]|0;if((a|0)<(m|0))break;if((a|0)>(f[b+4>>2]|0))break;if((f[d+8>>2]|0)==(f[p>>2]|0))b=d;else break}if(!g)b=(f[b+4>>2]|0)==(m|0)?b:d;l=Wpb(20)|0;j=l+4|0;i=b+4|0;h=f[i>>2]|0;i=f[i+4>>2]|0;k=j;f[k>>2]=h;f[k+4>>2]=i;k=f[b>>2]|0;f[l>>2]=k;if(g){d=b+12|0;a=f[d>>2]|0;f[l+12>>2]=a;f[l+16>>2]=b;a=a+16|0}else{d=b+16|0;a=f[d>>2]|0;f[l+16>>2]=a;f[l+12>>2]=b;a=a+12|0}f[a>>2]=l;f[d>>2]=l;if((m|0)==(h|0))if((f[p>>2]|0)==(i|0)){a=l;o=b;h=m;break}m=e;h=f[m>>2]|0;m=f[m+4>>2]|0;a=j;f[a>>2]=h;f[a+4>>2]=m;a=Wpb(20)|0;o=a+4|0;f[o>>2]=h;f[o+4>>2]=m;f[a>>2]=k;if(g){b=l+12|0;d=f[b>>2]|0;f[a+12>>2]=d;f[a+16>>2]=l;d=d+16|0}else{b=l+16|0;d=f[b>>2]|0;f[a+16>>2]=d;f[a+12>>2]=l;d=d+12|0}f[d>>2]=a;f[b>>2]=a;o=l}while(0);do if(n){while(1){b=f[c+12>>2]|0;d=f[b+4>>2]|0;if((d|0)>(h|0))break;if((d|0)<(f[c+4>>2]|0))break;if((f[b+8>>2]|0)==(f[p>>2]|0))c=b;else break}if(g)c=(f[c+4>>2]|0)==(h|0)?c:b;m=Wpb(20)|0;i=m+4|0;k=c+4|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=i;f[l>>2]=j;f[l+4>>2]=k;l=f[c>>2]|0;f[m>>2]=l;if(g){b=c+16|0;d=f[b>>2]|0;f[m+16>>2]=d;f[m+12>>2]=c;d=d+12|0}else{b=c+12|0;d=f[b>>2]|0;f[m+12>>2]=d;f[m+16>>2]=c;d=d+16|0}f[d>>2]=m;f[b>>2]=m;if((h|0)==(j|0))if((f[p>>2]|0)==(k|0)){d=m;break}p=e;n=f[p>>2]|0;p=f[p+4>>2]|0;d=i;f[d>>2]=n;f[d+4>>2]=p;d=Wpb(20)|0;e=d+4|0;f[e>>2]=n;f[e+4>>2]=p;f[d>>2]=l;if(g){c=m+16|0;b=f[c>>2]|0;f[d+16>>2]=b;f[d+12>>2]=m;b=b+12|0}else{c=m+12|0;b=f[c>>2]|0;f[d+12>>2]=b;f[d+16>>2]=m;b=b+16|0}f[b>>2]=d;f[c>>2]=d;c=m}else{while(1){b=f[c+12>>2]|0;d=f[b+4>>2]|0;if((d|0)<(h|0))break;if((d|0)>(f[c+4>>2]|0))break;if((f[b+8>>2]|0)==(f[p>>2]|0))c=b;else break}if(!g)c=(f[c+4>>2]|0)==(h|0)?c:b;m=Wpb(20)|0;i=m+4|0;k=c+4|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=i;f[l>>2]=j;f[l+4>>2]=k;l=f[c>>2]|0;f[m>>2]=l;if(g){b=c+12|0;d=f[b>>2]|0;f[m+12>>2]=d;f[m+16>>2]=c;d=d+16|0}else{b=c+16|0;d=f[b>>2]|0;f[m+16>>2]=d;f[m+12>>2]=c;d=d+12|0}f[d>>2]=m;f[b>>2]=m;if((h|0)==(j|0))if((f[p>>2]|0)==(k|0)){d=m;break}p=e;n=f[p>>2]|0;p=f[p+4>>2]|0;d=i;f[d>>2]=n;f[d+4>>2]=p;d=Wpb(20)|0;e=d+4|0;f[e>>2]=n;f[e+4>>2]=p;f[d>>2]=l;if(g){c=m+12|0;b=f[c>>2]|0;f[d+12>>2]=b;f[d+16>>2]=m;b=b+16|0}else{c=m+16|0;b=f[c>>2]|0;f[d+16>>2]=b;f[d+12>>2]=m;b=b+12|0}f[b>>2]=d;f[c>>2]=d;c=m}while(0);if(q^g){f[o+12>>2]=c;f[c+16>>2]=o;f[a+16>>2]=d;c=d+12|0}else{f[o+16>>2]=c;f[c+12>>2]=o;f[a+12>>2]=d;c=d+16|0}f[c>>2]=a;g=1;return g|0}function n_a(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0.0,m=0.0;e=a+4|0;g=f[e>>2]|0;k=a+8|0;d=a;do{d=f[d+16>>2]|0;h=d+4|0;if((f[h>>2]|0)!=(g|0))break}while(!((d|0)==(a|0)?1:(f[d+8>>2]|0)!=(f[k>>2]|0)));i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;d=h;e=f[d+4>>2]|0;if((e|0)==(i|0))c=-1.e+40;else c=+((f[d>>2]|0)-g|0)/+(e-i|0);m=+K(+c);e=a;do{e=f[e+12>>2]|0;d=e+4|0;if((f[d>>2]|0)!=(g|0))break}while(!((e|0)==(a|0)?1:(f[e+8>>2]|0)!=(f[k>>2]|0)));e=f[d+4>>2]|0;if((e|0)==(i|0))c=-1.e+40;else c=+((f[d>>2]|0)-g|0)/+(e-i|0);l=+K(+c);e=b+4|0;g=f[e>>2]|0;k=b+8|0;d=b;do{d=f[d+16>>2]|0;h=d+4|0;if((f[h>>2]|0)!=(g|0))break}while(!((d|0)==(b|0)?1:(f[d+8>>2]|0)!=(f[k>>2]|0)));i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;d=h;e=f[d+4>>2]|0;if((e|0)==(i|0))c=-1.e+40;else c=+((f[d>>2]|0)-g|0)/+(e-i|0);j=+K(+c);e=b;do{e=f[e+12>>2]|0;d=e+4|0;if((f[d>>2]|0)!=(g|0))break}while(!((e|0)==(b|0)?1:(f[e+8>>2]|0)!=(f[k>>2]|0)));e=f[d+4>>2]|0;if((e|0)==(i|0))c=-1.e+40;else c=+((f[d>>2]|0)-g|0)/+(e-i|0);c=+K(+c);if((m<l?l:m)==(j<c?c:j))if((l<m?l:m)==(c<j?c:j)){if(!a){a=0;return a|0}else{c=0.0;d=a}do{b=f[d+16>>2]|0;c=c+ +((f[d+4>>2]|0)+(f[b+4>>2]|0)|0)*+((f[b+8>>2]|0)-(f[d+8>>2]|0)|0);d=f[d+12>>2]|0}while((d|0)!=(a|0));a=c*.5>0.0;return a|0}if(!(!(m>=j)|!(m>=c))){a=1;return a|0}if(!(l>=j)){a=0;return a|0}a=l>=c;return a|0}function o_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;q=u;u=u+16|0;h=q;c=f[b+56>>2]|0;d=f[b+16>>2]|0;if((f[c+16>>2]|0)==(d|0))if((f[c+20>>2]|0)==(f[b+20>>2]|0))if(!(f[c+64>>2]|0))m=7;else m=4;else m=4;else m=4;if((m|0)==4){c=f[b+60>>2]|0;if((f[c+16>>2]|0)==(d|0))if((f[c+20>>2]|0)==(f[b+20>>2]|0))if(!(f[c+64>>2]|0))m=7}do if((m|0)==7){k=c+52|0;if((f[k>>2]|0)!=-2){n=c+68|0;o=c+72|0;if((f[n>>2]|0)==(f[o>>2]|0))if(!(+p[c+24>>3]==-1.e+40))break;l=b+68|0;d=f[l>>2]|0;if((d|0)!=(c|0)&(d|0)!=0){e=b+16|0;g=a+76|0;do{t_a(a,b,d,e);u_a(g,b,d);d=f[l>>2]|0}while((d|0)!=(c|0)&(d|0)!=0)}g=b+52|0;e=f[g>>2]|0;if((e|0)==-1)if((f[k>>2]|0)==-1){e=b+72|0;g=f[e>>2]|0;h=(g|0)!=0;i=(d|0)!=0;j=a+128|0;if(i|h)m=24;else if((f[j>>2]|0)==(b|0))m=24;if((m|0)==24){f[(h?g+68|0:j)>>2]=d;if(i)f[d+72>>2]=g;f[l>>2]=0;f[e>>2]=0}d=f[o>>2]|0;e=f[n>>2]|0;g=(d|0)!=0;h=(e|0)!=0;if(!(g|h))if((f[j>>2]|0)!=(c|0)){o=1;u=q;return o|0}f[(g?d+68|0:j)>>2]=e;if(h)f[e+72>>2]=d;f[n>>2]=0;f[o>>2]=0;o=1;u=q;return o|0}else e=0;else if((e|0)>-1)if((f[k>>2]|0)>-1){d=b+16|0;q_a(a,b,d)|0;if(!(f[c+40>>2]|0))q_a(a,c,d)|0;d=f[g>>2]|0;e=f[k>>2]|0;do if((d|0)==(e|0)){f[g>>2]=-1;f[k>>2]=-1}else if((d|0)<(e|0)){v_a(a,b,c);break}else{v_a(a,c,b);break}while(0);d=b+72|0;e=f[d>>2]|0;g=f[l>>2]|0;h=(e|0)!=0;i=(g|0)!=0;j=a+128|0;if(h|i)m=43;else if((f[j>>2]|0)==(b|0))m=43;if((m|0)==43){f[(h?e+68|0:j)>>2]=g;if(i)f[g+72>>2]=e;f[l>>2]=0;f[d>>2]=0}d=f[o>>2]|0;e=f[n>>2]|0;g=(d|0)!=0;h=(e|0)!=0;if(!(g|h))if((f[j>>2]|0)!=(c|0)){o=1;u=q;return o|0}f[(g?d+68|0:j)>>2]=e;if(h)f[e+72>>2]=d;f[n>>2]=0;f[o>>2]=0;o=1;u=q;return o|0}else e=1;else e=0;if(f[b+40>>2]|0){o=FIa(212344,192322,14)|0;_fb(h,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);n=Chb(h,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(h);rgb(o,n)|0;dgb(o)|0;o=0;u=q;return o|0}if(e){q_a(a,b,b+16|0)|0;f[g>>2]=-1;d=f[l>>2]|0}e=b+72|0;g=f[e>>2]|0;h=(g|0)!=0;i=(d|0)!=0;j=a+128|0;if(h|i)m=56;else if((f[j>>2]|0)==(b|0))m=56;if((m|0)==56){f[(h?g+68|0:j)>>2]=d;if(i)f[d+72>>2]=g;f[l>>2]=0;f[e>>2]=0}if((f[k>>2]|0)>-1){q_a(a,c,b+16|0)|0;f[k>>2]=-1}d=f[o>>2]|0;e=f[n>>2]|0;g=(d|0)!=0;h=(e|0)!=0;if(!(g|h))if((f[j>>2]|0)!=(c|0)){o=1;u=q;return o|0}f[(g?d+68|0:j)>>2]=e;if(h)f[e+72>>2]=d;f[n>>2]=0;f[o>>2]=0;o=1;u=q;return o|0}}while(0);if((f[b+52>>2]|0)>-1)q_a(a,b,b+16|0)|0;d=b+72|0;e=f[d>>2]|0;g=b+68|0;h=f[g>>2]|0;i=(e|0)!=0;j=(h|0)!=0;c=a+128|0;if(!(i|j))if((f[c>>2]|0)!=(b|0)){o=1;u=q;return o|0}f[(i?e+68|0:c)>>2]=h;if(j)f[h+72>>2]=e;f[g>>2]=0;f[d>>2]=0;o=1;u=q;return o|0}function p_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h;c=f[b>>2]|0;e=f[c+64>>2]|0;if(!e){a=FIa(212344,192290,31)|0;_fb(g,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);e=Chb(g,213216)|0;e=Pg[f[(f[e>>2]|0)+28>>2]&255](e,10)|0;Dhb(g);rgb(a,e)|0;dgb(a)|0;g=0;u=h;return g|0}f[e+52>>2]=f[c+52>>2];d=f[c+72>>2]|0;c=f[c+68>>2]|0;f[(d|0?d+68|0:a+52|0)>>2]=e;if(c|0)f[c+72>>2]=f[(f[b>>2]|0)+64>>2];j=f[b>>2]|0;e=f[j+64>>2]|0;f[e+36>>2]=f[j+36>>2];f[e+40>>2]=f[j+40>>2];f[e+44>>2]=f[j+44>>2];f[e+48>>2]=f[j+48>>2];f[b>>2]=e;j=e;i=f[j+4>>2]|0;e=e+8|0;f[e>>2]=f[j>>2];f[e+4>>2]=i;f[(f[b>>2]|0)+72>>2]=d;f[(f[b>>2]|0)+68>>2]=c;c=f[b>>2]|0;if(+p[c+24>>3]==-1.e+40){j=1;u=h;return j|0}c=f[c+20>>2]|0;f[g>>2]=c;e=a+56|0;b=a+60|0;d=f[b>>2]|0;if((d|0)==(f[a+64>>2]|0)){KZa(e,g);b=f[b>>2]|0}else{f[d>>2]=c;j=d+4|0;f[b>>2]=j;b=j}g=f[e>>2]|0;c=b-g|0;if((c|0)>4){d=((c>>>2)+-2|0)/2|0;e=g+(d<<2)|0;c=b+-4|0;b=f[e>>2]|0;a=f[c>>2]|0;if((b|0)<(a|0)){while(1){f[c>>2]=b;if(!d)break;d=(d+-1|0)/2|0;c=g+(d<<2)|0;b=f[c>>2]|0;if((b|0)>=(a|0))break;else{j=e;e=c;c=j}}f[e>>2]=a}}j=1;u=h;return j|0}function q_a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l;k=c+52|0;e=f[k>>2]|0;if((e|0)>=0){h=f[(f[a+116>>2]|0)+(e<<2)>>2]|0;a=h+16|0;i=f[a>>2]|0;g=(f[c+36>>2]|0)==1;if(g){if((f[d>>2]|0)==(f[i+4>>2]|0))if((f[d+4>>2]|0)==(f[i+8>>2]|0)){k=i;u=l;return k|0}}else{e=f[i+16>>2]|0;if((f[d>>2]|0)==(f[e+4>>2]|0))if((f[d+4>>2]|0)==(f[e+8>>2]|0)){k=e;u=l;return k|0}}e=Wpb(20)|0;k=e+4|0;f[k>>2]=0;f[e+8>>2]=0;f[e>>2]=f[h>>2];c=d;d=f[c+4>>2]|0;f[k>>2]=f[c>>2];f[k+4>>2]=d;f[e+12>>2]=i;k=i+16|0;d=f[k>>2]|0;f[e+16>>2]=d;f[d+12>>2]=e;f[k>>2]=e;if(!g){k=e;u=l;return k|0}f[a>>2]=e;k=e;u=l;return k|0}h=Wpb(24)|0;f[j>>2]=h;b[h+4>>0]=0;b[h+5>>0]=0;g=h+8|0;i=a+116|0;e=a+120|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;g=f[e>>2]|0;if((g|0)==(f[a+124>>2]|0)){c_a(i,j);e=f[e>>2]|0}else{f[g>>2]=h;a=(f[e>>2]|0)+4|0;f[e>>2]=a;e=a}a=f[i>>2]|0;j=f[j>>2]|0;f[j>>2]=(e-a>>2)+-1;h=j+5|0;b[h>>0]=(f[c+40>>2]|0)==0&1;i=Wpb(20)|0;m=i+4|0;f[m>>2]=0;f[i+8>>2]=0;f[j+16>>2]=i;f[i>>2]=f[j>>2];e=d;g=f[e+4>>2]|0;d=m;f[d>>2]=f[e>>2];f[d+4>>2]=g;f[i+12>>2]=i;f[i+16>>2]=i;if(!(b[h>>0]|0)){g=f[c+72>>2]|0;if(!g){e=0;g=0}else{e=0;a:do{while(1){h=f[g+52>>2]|0;if((h|0)>-1)if(f[g+40>>2]|0)break;g=f[g+72>>2]|0;if(!g)break a}if(!e)e=g;else e=(f[e+52>>2]|0)==(h|0)?0:e;g=f[g+72>>2]|0}while((g|0)!=0);if(!e){e=0;g=0}else{g=f[a+(f[e+52>>2]<<2)>>2]|0;e=b[g+4>>0]^1}}f[j+8>>2]=g;b[j+4>>0]=e}f[k>>2]=f[j>>2];m=i;u=l;return m|0}function r_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function s_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;l=p+20|0;k=p+16|0;i=p+12|0;j=p+8|0;n=p+4|0;o=p;switch(c|0){case 1:case 0:{a=f[a>>2]|0;u=p;return a|0}case 2:{h=f[f[b>>2]>>2]|0;f[b>>2]=h;e=f[a>>2]|0;g=h;if((f[h+8>>2]|0)>=(f[e+8>>2]|0)){a=e;u=p;return a|0}a=g+4|0;o=f[g>>2]|0;f[o+4>>2]=f[a>>2];f[f[a>>2]>>2]=o;o=f[e>>2]|0;f[o+4>>2]=g;f[h>>2]=o;f[e>>2]=g;f[a>>2]=e;a=f[b>>2]|0;u=p;return a|0}default:{m=c>>>1;e=f[a>>2]|0;h=e;if(m){g=m;while(1){e=f[e+4>>2]|0;if((g|0)>1)g=g+-1|0;else break}}g=e;f[i>>2]=h;f[j>>2]=g;f[k>>2]=f[i>>2];f[l>>2]=f[j>>2];e=s_a(k,l,m,d)|0;f[a>>2]=e;f[n>>2]=g;b=f[b>>2]|0;f[o>>2]=b;f[k>>2]=f[n>>2];f[l>>2]=f[o>>2];j=s_a(k,l,c-m|0,d)|0;i=f[e+8>>2]|0;n=b;if((f[j+8>>2]|0)<(i|0)){g=f[j+4>>2]|0;h=g;a:do if((n|0)==(h|0))h=n;else while(1){if((f[g+8>>2]|0)>=(i|0))break a;g=f[h+4>>2]|0;h=g;if((n|0)==(h|0)){h=n;break}}while(0);o=f[h>>2]|0;b=o+4|0;h=f[j>>2]|0;f[h+4>>2]=f[b>>2];f[f[b>>2]>>2]=h;h=f[e+4>>2]|0;d=f[e>>2]|0;f[d+4>>2]=j;f[j>>2]=d;f[e>>2]=o;f[b>>2]=e;e=j}else{h=f[e+4>>2]|0;g=j}f[a>>2]=h;j=h;i=g;if((j|0)==(i|0)){a=e;u=p;return a|0}else{d=g;m=g;g=j}b:while(1){c=m;if((n|0)==(c|0)){g=23;break}j=f[m+8>>2]|0;while(1){if((j|0)<(f[h+8>>2]|0))break;h=f[g+4>>2]|0;f[a>>2]=h;g=h;if((i|0)==(g|0)){g=23;break b}}j=f[c+4>>2]|0;k=j;c:do if((n|0)==(k|0))h=n;else{l=f[h+8>>2]|0;h=k;while(1){if((f[j+8>>2]|0)>=(l|0))break c;j=f[h+4>>2]|0;h=j;if((n|0)==(h|0)){h=n;break}}}while(0);o=f[h>>2]|0;b=o+4|0;h=f[c>>2]|0;f[h+4>>2]=f[b>>2];f[f[b>>2]>>2]=h;h=f[g+4>>2]|0;d=(i|0)==(c|0)?j:d;l=f[g>>2]|0;f[l+4>>2]=c;f[m>>2]=l;f[g>>2]=o;f[b>>2]=g;f[a>>2]=h;g=h;i=d;if((g|0)==(i|0)){g=23;break}else m=j}if((g|0)==23){u=p;return e|0}}}return 0}function t_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=b+52|0;p=f[v>>2]|0;r=(p|0)>-1;w=c+52|0;q=f[w>>2]|0;u=(q|0)>-1;l=f[b+40>>2]|0;h=(l|0)==0;o=c+40|0;e=f[o>>2]|0;g=(e|0)==0;if(h){if(g)return}else if(g)e=0;else{s=f[b+32>>2]|0;n=f[c+32>>2]|0;t=(s|0)==(n|0);do if(t){j=a+68|0;k=a+64|0;i=(s|0)==0?j:k;g=b+44|0;h=f[g>>2]|0;if(!(f[i>>2]|0)){e=c+44|0;f[g>>2]=f[e>>2];f[e>>2]=h;h=i;g=j;e=k;break}e=h+e|0;f[g>>2]=(e|0)==0?0-h|0:e;g=c+44|0;h=f[g>>2]|0;e=h-l|0;if(!e){f[g>>2]=0-h;h=i;g=j;e=k;break}else{f[g>>2]=e;h=i;g=j;e=k;break}}else{i=a+68|0;j=a+64|0;g=b+48|0;h=f[g>>2]|0;f[g>>2]=(f[((n|0)==0?i:j)>>2]|0)==0?(h|0)==0&1:h+e|0;e=(s|0)==0?i:j;g=c+48|0;h=f[g>>2]|0;if(!(f[e>>2]|0)){f[g>>2]=(h|0)==0&1;h=e;g=i;e=j;break}else{f[g>>2]=h-l;h=e;g=i;e=j;break}}while(0);m=(s|0)==0;l=f[(m?e:g)>>2]|0;n=(n|0)==0;k=f[(n?e:g)>>2]|0;e=f[(n?g:e)>>2]|0;switch(f[h>>2]|0){case 2:{g=f[b+44>>2]|0;break}case 3:{g=0-(f[b+44>>2]|0)|0;break}default:{g=f[b+44>>2]|0;g=(g|0)<0?0-g|0:g}}switch(e|0){case 2:{j=f[c+44>>2]|0;break}case 3:{j=0-(f[c+44>>2]|0)|0;break}default:{j=f[c+44>>2]|0;j=(j|0)<0?0-j|0:j}}if((q|p|0)>=0){do if((j|g)>>>0<=1){if(!t)if((f[a+40>>2]|0)!=3)break;q_a(a,b,d)|0;q_a(a,c,d)|0;a=b+36|0;b=f[a>>2]|0;c=c+36|0;f[a>>2]=f[c>>2];f[c>>2]=b;c=f[v>>2]|0;f[v>>2]=f[w>>2];f[w>>2]=c;return}while(0);q_a(a,b,d)|0;if(!(f[o>>2]|0))q_a(a,c,d)|0;e=f[v>>2]|0;g=f[w>>2]|0;if((e|0)==(g|0)){f[v>>2]=-1;f[w>>2]=-1;return}if((e|0)<(g|0)){v_a(a,b,c);return}else{v_a(a,c,b);return}}if(r){if(j>>>0>=2)return;q_a(a,b,d)|0;a=b+36|0;b=f[a>>2]|0;c=c+36|0;f[a>>2]=f[c>>2];f[c>>2]=b;c=f[v>>2]|0;f[v>>2]=f[w>>2];f[w>>2]=c;return}i=(g|0)==1;e=g>>>0<2;if(u){if(!e)return;q_a(a,c,d)|0;a=b+36|0;b=f[a>>2]|0;c=c+36|0;f[a>>2]=f[c>>2];f[c>>2]=b;c=f[v>>2]|0;f[v>>2]=f[w>>2];f[w>>2]=c;return}if(!e)return;h=(j|0)==1;if(j>>>0>=2)return;switch(l|0){case 2:{g=f[b+48>>2]|0;break}case 3:{g=0-(f[b+48>>2]|0)|0;break}default:{g=f[b+48>>2]|0;g=(g|0)<0?0-g|0:g}}switch(k|0){case 2:{e=f[c+48>>2]|0;break}case 3:{e=0-(f[c+48>>2]|0)|0;break}default:{e=f[c+48>>2]|0;e=(e|0)<0?0-e|0:e}}if(!t){w_a(a,b,c,d)|0;return}if(!(i&h)){a=b+36|0;b=f[a>>2]|0;c=c+36|0;f[a>>2]=f[c>>2];f[c>>2]=b;return}switch(f[a+40>>2]|0){case 0:{if(!((g|0)>0&(e|0)>0))return;w_a(a,b,c,d)|0;return}case 1:{if(!((g|0)<1&(e|0)<1))return;w_a(a,b,c,d)|0;return}case 2:{if(!((e|0)>0&((g|0)>0&(s|0)==1)))if(!((e|0)<1&((g|0)<1&m)))return;w_a(a,b,c,d)|0;return}case 3:{w_a(a,b,c,d)|0;return}default:return}}if((f[b+32>>2]|0)==(f[c+32>>2]|0)){if((l|0)==(e|0))return;if((f[a+40>>2]|0)!=1)return;if(h){if(!u)return;q_a(a,b,d)|0;if(!r)return;f[v>>2]=-1;return}else{if(!r)return;q_a(a,c,d)|0;if(!u)return;f[w>>2]=-1;return}}do if(h){t=f[c+44>>2]|0;if((((t|0)>-1?t:0-t|0)|0)==1){if((f[a+40>>2]|0)==1)if(f[c+48>>2]|0)break;q_a(a,b,d)|0;if(!r)return;f[v>>2]=-1;return}}while(0);if(e|0)return;v=f[b+44>>2]|0;if((((v|0)>-1?v:0-v|0)|0)!=1)return;if((f[a+40>>2]|0)==1)if(f[b+48>>2]|0)return;q_a(a,c,d)|0;if(!u)return;f[w>>2]=-1;return}function u_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=b+68|0;i=f[h>>2]|0;l=b+72|0;d=f[l>>2]|0;if((i|0)==(d|0))return;k=c+68|0;g=f[k>>2]|0;j=c+72|0;e=f[j>>2]|0;if((g|0)==(e|0))return;if((i|0)==(c|0)){if(g){f[g+72>>2]=b;d=f[l>>2]|0}if(d|0)f[d+68>>2]=c;f[j>>2]=d;f[k>>2]=b;f[l>>2]=c;f[h>>2]=g;d=f[j>>2]|0}else{if((g|0)==(b|0)){if(!i)d=e;else{f[i+72>>2]=c;d=f[j>>2]|0}if(d|0)f[d+68>>2]=b;f[l>>2]=d;f[h>>2]=c;f[j>>2]=b;f[k>>2]=i;d=b}else{f[h>>2]=g;if(g){f[g+72>>2]=b;e=f[j>>2]|0}f[l>>2]=e;if(e|0)f[e+68>>2]=b;f[k>>2]=i;if(i|0)f[i+72>>2]=c;f[j>>2]=d;if(!d)d=0;else f[d+68>>2]=c}if(!(f[l>>2]|0)){f[a+52>>2]=b;return}}if(d|0)return;f[a+52>>2]=c;return}function v_a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=c+52|0;r=f[a+116>>2]|0;s=f[r+(f[o>>2]<<2)>>2]|0;p=d+52|0;r=f[r+(f[p>>2]<<2)>>2]|0;e=s;while(1){e=f[e+8>>2]|0;if((e|0)==(r|0)){m=r;break}if(!e){e=r;t=4;break}}a:do if((t|0)==4){while(1){t=0;e=f[e+8>>2]|0;if((e|0)==(s|0)){m=s;break a}if(!e)break;else t=4}m=f_a(s,r)|0}while(0);h=s+16|0;i=f[h>>2]|0;j=i+16|0;k=f[j>>2]|0;n=r+16|0;e=f[n>>2]|0;g=e+16|0;l=f[g>>2]|0;q=f[c+36>>2]|0;c=f[d+36>>2]|0;do if((q|0)==1){if((c|0)==1){if(e|0){c=e;do{g=c+12|0;d=c;c=f[g>>2]|0;d=d+16|0;f[g>>2]=f[d>>2];f[d>>2]=c}while((c|0)!=(e|0))}f[e+12>>2]=i;f[j>>2]=e;f[k+12>>2]=l;f[l+16>>2]=k;e=l}else{f[l+12>>2]=i;f[j>>2]=l;f[g>>2]=k;f[k+12>>2]=e}f[h>>2]=e}else{if((c|0)!=2){f[k+12>>2]=e;f[g>>2]=k;f[j>>2]=l;f[l+12>>2]=i;break}if(e|0){c=e;do{d=c+12|0;h=c;c=f[d>>2]|0;h=h+16|0;f[d>>2]=f[h>>2];f[h>>2]=c}while((c|0)!=(e|0))}f[k+12>>2]=l;f[l+16>>2]=k;f[e+12>>2]=i;f[j>>2]=e}while(0);f[s+20>>2]=0;c=r+8|0;if((m|0)==(r|0)){e=f[c>>2]|0;if((e|0)!=(s|0))f[s+8>>2]=e;b[s+4>>0]=b[r+4>>0]|0}f[n>>2]=0;f[r+20>>2]=0;f[c>>2]=s;g=f[o>>2]|0;d=f[p>>2]|0;f[o>>2]=-1;f[p>>2]=-1;e=f[a+128>>2]|0;if(!e){t=f[s>>2]|0;f[r>>2]=t;return}while(1){c=e+52|0;if((f[c>>2]|0)==(d|0))break;e=f[e+68>>2]|0;if(!e){t=27;break}}if((t|0)==27){t=f[s>>2]|0;f[r>>2]=t;return}f[c>>2]=g;f[e+36>>2]=q;t=f[s>>2]|0;f[r>>2]=t;return}function w_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;i=+p[c+24>>3];if(i==-1.e+40)h=3;else if(+p[b+24>>3]>i)h=3;else{e=q_a(a,c,d)|0;f[b+52>>2]=f[c+52>>2];f[b+36>>2]=2;f[c+36>>2]=1;g=f[c+72>>2]|0;if((g|0)==(b|0)){k=e;j=c;g=f[b+72>>2]|0}else{k=e;j=c}}if((h|0)==3){e=q_a(a,b,d)|0;f[c+52>>2]=f[b+52>>2];f[b+36>>2]=1;f[c+36>>2]=2;g=f[b+72>>2]|0;if((g|0)==(c|0)){k=e;j=b;g=f[c+72>>2]|0}else{k=e;j=b}}if(!g){u=m;return k|0}if((f[g+52>>2]|0)<=-1){u=m;return k|0}e=f[d+4>>2]|0;if((f[g+20>>2]|0)>=(e|0)){u=m;return k|0}h=j+16|0;if((f[j+20>>2]|0)>=(e|0)){u=m;return k|0}i=+p[g+24>>3]*+(e-(f[g+4>>2]|0)|0);b=(f[g>>2]|0)+~~(i+(i<0.0?-.5:.5))|0;i=+p[j+24>>3]*+(e-(f[j+4>>2]|0)|0);if((b|0)!=((f[j>>2]|0)+~~(i+(i<0.0?-.5:.5))|0)){u=m;return k|0}if(!(f[j+40>>2]|0)){u=m;return k|0}if(!(f[g+40>>2]|0)){u=m;return k|0}j=g+16|0;c=h;if((X(b-(f[c>>2]|0)|0,e-(f[j+4>>2]|0)|0)|0)!=(X(e-(f[c+4>>2]|0)|0,b-(f[j>>2]|0)|0)|0)){u=m;return k|0}g=q_a(a,g,d)|0;d=f[h>>2]|0;h=f[h+4>>2]|0;e=Wpb(16)|0;f[l>>2]=e;f[e>>2]=k;f[e+4>>2]=g;g=e+8|0;f[g>>2]=d;f[g+4>>2]=h;g=a+8|0;h=f[g>>2]|0;if((h|0)==(f[a+12>>2]|0))r_a(a+4|0,l);else{f[h>>2]=e;f[g>>2]=(f[g>>2]|0)+4}u=m;return k|0}function x_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,s=0;q=u;u=u+16|0;m=q;n=q+8|0;g=f[a+128>>2]|0;if(!g){u=q;return}o=a+56|0;f[o>>2]=g;c=g;do{f[c+80>>2]=f[c+72>>2];d=c;c=f[c+68>>2]|0;f[d+76>>2]=c;if((f[d+20>>2]|0)==(b|0))e=f[d+16>>2]|0;else{r=+p[d+24>>3]*+(b-(f[d+4>>2]|0)|0);e=(f[d>>2]|0)+~~(r+(r<0.0?-.5:.5))|0}f[d+8>>2]=e}while((c|0)!=0);k=m+4|0;l=a+32|0;i=a+36|0;j=a+28|0;c=g;while(1){e=f[c+76>>2]|0;if(!e)d=0;else{d=0;do{f[m>>2]=0;f[k>>2]=0;if((f[c+8>>2]|0)>(f[e+8>>2]|0)){F_a(c,e,m);if((f[k>>2]|0)<(b|0)){if((f[c+20>>2]|0)==(b|0))d=f[c+16>>2]|0;else{r=+p[c+24>>3]*+(b-(f[c+4>>2]|0)|0);d=(f[c>>2]|0)+~~(r+(r<0.0?-.5:.5))|0}g=m;f[g>>2]=d;f[g+4>>2]=b;g=b}else{g=m;d=f[g>>2]|0;g=f[g+4>>2]|0}h=Wpb(16)|0;f[n>>2]=h;f[h>>2]=c;f[h+4>>2]=e;s=h+8|0;f[s>>2]=d;f[s+4>>2]=g;d=f[l>>2]|0;if((d|0)==(f[i>>2]|0))G_a(j,n);else{f[d>>2]=h;f[l>>2]=(f[l>>2]|0)+4}B_a(a,c,e);d=1}else c=e;e=f[c+76>>2]|0}while((e|0)!=0)}c=f[c+80>>2]|0;if(!c)break;f[c+76>>2]=0;if(!d)break;c=f[o>>2]|0}f[o>>2]=0;u=q;return}function y_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;c=j;b=f[a+128>>2]|0;f[a+56>>2]=b;if(b|0)do{f[b+80>>2]=f[b+72>>2];i=b;b=f[b+68>>2]|0;f[i+76>>2]=b}while((b|0)!=0);i=a+28|0;e=f[i>>2]|0;h=a+32|0;g=f[h>>2]|0;f[c>>2]=155;A_a(e,g,c);c=f[i>>2]|0;h=(f[h>>2]|0)-c>>2;if(!h){a=1;u=j;return a|0}b=0;while(1){e=f[c+(b<<2)>>2]|0;d=f[e>>2]|0;e=f[e+4>>2]|0;if((f[d+76>>2]|0)!=(e|0))if((f[d+80>>2]|0)!=(e|0)){d=b;do{d=d+1|0;if(d>>>0>=h>>>0)break;g=f[c+(d<<2)>>2]|0;e=f[g>>2]|0;g=f[g+4>>2]|0;if((f[e+76>>2]|0)==(g|0))break}while((f[e+80>>2]|0)!=(g|0));if((d|0)==(h|0)){b=0;c=14;break}e=c+(b<<2)|0;c=c+(d<<2)|0;g=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=g;c=f[i>>2]|0}g=f[c+(b<<2)>>2]|0;B_a(a,f[g>>2]|0,f[g+4>>2]|0);b=b+1|0;if(b>>>0>=h>>>0){b=1;c=14;break}c=f[i>>2]|0}if((c|0)==14){u=j;return b|0}return 0}function z_a(a,b){a=a|0;b=b|0;return (f[b+12>>2]|0)<(f[a+12>>2]|0)|0}function A_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:while(1){k=b;m=b+-4|0;while(1){b:while(1){j=a;d=k-j|0;e=d>>2;switch(e|0){case 2:{l=5;break a}case 3:{l=7;break a}case 4:{l=15;break a}case 5:{l=16;break a}case 1:case 0:{l=68;break a}default:{}}if((d|0)<124){l=22;break a}i=a+(((e|0)/2|0)<<2)|0;do if((d|0)>3996){e=(e|0)/4|0;h=a+(e<<2)|0;e=i+(e<<2)|0;d=C_a(a,h,i,e,c)|0;if(Pg[f[c>>2]&255](f[m>>2]|0,f[e>>2]|0)|0){g=f[e>>2]|0;f[e>>2]=f[m>>2];f[m>>2]=g;g=d+1|0;if(Pg[f[c>>2]&255](f[e>>2]|0,f[i>>2]|0)|0){g=f[i>>2]|0;f[i>>2]=f[e>>2];f[e>>2]=g;e=d+2|0;if(Pg[f[c>>2]&255](f[i>>2]|0,f[h>>2]|0)|0){g=f[h>>2]|0;f[h>>2]=f[i>>2];f[i>>2]=g;if(Pg[f[c>>2]&255](f[h>>2]|0,f[a>>2]|0)|0){g=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=g;d=d+4|0}else d=d+3|0}else d=e}else d=g}}else{h=Pg[f[c>>2]&255](f[i>>2]|0,f[a>>2]|0)|0;d=Pg[f[c>>2]&255](f[m>>2]|0,f[i>>2]|0)|0;if(!h){if(!d){d=0;break}h=f[i>>2]|0;f[i>>2]=f[m>>2];f[m>>2]=h;if(!(Pg[f[c>>2]&255](f[i>>2]|0,f[a>>2]|0)|0)){d=1;break}d=f[a>>2]|0;f[a>>2]=f[i>>2];f[i>>2]=d;d=2;break}e=f[a>>2]|0;if(d){f[a>>2]=f[m>>2];f[m>>2]=e;d=1;break}f[a>>2]=f[i>>2];f[i>>2]=e;if(Pg[f[c>>2]&255](f[m>>2]|0,e)|0){d=f[i>>2]|0;f[i>>2]=f[m>>2];f[m>>2]=d;d=2}else d=1}while(0);if(Pg[f[c>>2]&255](f[a>>2]|0,f[i>>2]|0)|0){e=m;break}else e=m;while(1){e=e+-4|0;if((a|0)==(e|0))break;if(Pg[f[c>>2]&255](f[e>>2]|0,f[i>>2]|0)|0){l=51;break b}}d=a+4|0;if(!(Pg[f[c>>2]&255](f[a>>2]|0,f[m>>2]|0)|0)){if((d|0)==(m|0)){l=68;break a}while(1){if(Pg[f[c>>2]&255](f[a>>2]|0,f[d>>2]|0)|0)break;d=d+4|0;if((d|0)==(m|0)){l=68;break a}}j=f[d>>2]|0;f[d>>2]=f[m>>2];f[m>>2]=j;d=d+4|0}if((d|0)==(m|0)){l=68;break a}else e=m;while(1){while(1){g=d+4|0;if(Pg[f[c>>2]&255](f[a>>2]|0,f[d>>2]|0)|0)break;else d=g}do e=e+-4|0;while(Pg[f[c>>2]&255](f[a>>2]|0,f[e>>2]|0)|0);if(d>>>0>=e>>>0){a=d;continue b}j=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=j;d=g}}if((l|0)==51){l=0;h=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=h;d=d+1|0}g=a+4|0;c:do if(g>>>0<e>>>0)while(1){while(1){h=g+4|0;if(Pg[f[c>>2]&255](f[g>>2]|0,f[i>>2]|0)|0)g=h;else break}do e=e+-4|0;while(!(Pg[f[c>>2]&255](f[e>>2]|0,f[i>>2]|0)|0));if(g>>>0>e>>>0){e=i;break c}n=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=n;i=(i|0)==(g|0)?e:i;g=h;d=d+1|0}else e=i;while(0);if((g|0)!=(e|0))if(Pg[f[c>>2]&255](f[e>>2]|0,f[g>>2]|0)|0){n=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=n;d=d+1|0}if(!d){d=E_a(a,g,c)|0;e=g+4|0;if(E_a(e,b,c)|0){l=67;break}if(d){a=e;continue}}n=g;if((n-j|0)>=(k-n|0)){l=66;break}A_a(a,g,c);a=g+4|0}if((l|0)==66){l=0;A_a(g+4|0,b,c);b=g;continue}else if((l|0)==67){l=0;if(d){l=68;break}else{b=g;continue}}}if((l|0)==5){if(!(Pg[f[c>>2]&255](f[m>>2]|0,f[a>>2]|0)|0))return;n=f[a>>2]|0;f[a>>2]=f[m>>2];f[m>>2]=n;return}else if((l|0)==7){b=a+4|0;n=Pg[f[c>>2]&255](f[b>>2]|0,f[a>>2]|0)|0;d=Pg[f[c>>2]&255](f[m>>2]|0,f[b>>2]|0)|0;if(!n){if(!d)return;n=f[b>>2]|0;f[b>>2]=f[m>>2];f[m>>2]=n;if(!(Pg[f[c>>2]&255](f[b>>2]|0,f[a>>2]|0)|0))return;n=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=n;return}e=f[a>>2]|0;if(d){f[a>>2]=f[m>>2];f[m>>2]=e;return}f[a>>2]=f[b>>2];f[b>>2]=e;if(!(Pg[f[c>>2]&255](f[m>>2]|0,e)|0))return;n=f[b>>2]|0;f[b>>2]=f[m>>2];f[m>>2]=n;return}else if((l|0)==15){C_a(a,a+4|0,a+8|0,m,c)|0;return}else if((l|0)==16){b=a+4|0;d=a+8|0;e=a+12|0;C_a(a,b,d,e,c)|0;if(!(Pg[f[c>>2]&255](f[m>>2]|0,f[e>>2]|0)|0))return;n=f[e>>2]|0;f[e>>2]=f[m>>2];f[m>>2]=n;if(!(Pg[f[c>>2]&255](f[e>>2]|0,f[d>>2]|0)|0))return;m=f[d>>2]|0;n=f[e>>2]|0;f[d>>2]=n;f[e>>2]=m;if(!(Pg[f[c>>2]&255](n,f[b>>2]|0)|0))return;m=f[b>>2]|0;n=f[d>>2]|0;f[b>>2]=n;f[d>>2]=m;if(!(Pg[f[c>>2]&255](n,f[a>>2]|0)|0))return;n=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=n;return}else if((l|0)==22){D_a(a,b,c);return}else if((l|0)==68)return}function B_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=b+76|0;k=f[j>>2]|0;i=(k|0)==0;if(i)if(!(f[b+80>>2]|0))return;l=c+76|0;g=f[l>>2]|0;e=(g|0)==0;if(e)if(!(f[c+80>>2]|0))return;if((k|0)==(c|0)){if(!e)f[g+80>>2]=b;d=b+80|0;e=f[d>>2]|0;if(e|0)f[e+76>>2]=c;f[c+80>>2]=e;f[l>>2]=b;f[d>>2]=c;f[j>>2]=g}else{if((g|0)==(b|0)){if(!i)f[k+80>>2]=c;d=c+80|0;e=f[d>>2]|0;if(e|0)f[e+76>>2]=b;i=b+80|0;f[i>>2]=e;f[j>>2]=c;f[d>>2]=b;f[l>>2]=k;d=i}else{d=b+80|0;h=f[d>>2]|0;f[j>>2]=g;if(!e)f[g+80>>2]=b;e=c+80|0;g=f[e>>2]|0;f[d>>2]=g;if(g|0)f[g+76>>2]=b;f[l>>2]=k;if(!i)f[k+80>>2]=c;f[e>>2]=h;if(h)f[h+76>>2]=c}if(!(f[d>>2]|0)){f[a+56>>2]=b;return}}if(f[c+80>>2]|0)return;f[a+56>>2]=c;return}function C_a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=Pg[f[e>>2]&255](f[b>>2]|0,f[a>>2]|0)|0;g=Pg[f[e>>2]&255](f[c>>2]|0,f[b>>2]|0)|0;do if(h){h=f[a>>2]|0;if(g){f[a>>2]=f[c>>2];f[c>>2]=h;g=1;break}f[a>>2]=f[b>>2];f[b>>2]=h;if(Pg[f[e>>2]&255](f[c>>2]|0,h)|0){g=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=g;g=2}else g=1}else if(g){h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(Pg[f[e>>2]&255](f[b>>2]|0,f[a>>2]|0)|0){g=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=g;g=2}else g=1}else g=0;while(0);if(!(Pg[f[e>>2]&255](f[d>>2]|0,f[c>>2]|0)|0)){e=g;return e|0}h=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=h;if(!(Pg[f[e>>2]&255](f[c>>2]|0,f[b>>2]|0)|0)){e=g+1|0;return e|0}d=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=d;if(!(Pg[f[e>>2]&255](f[b>>2]|0,f[a>>2]|0)|0)){e=g+2|0;return e|0}e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=g+3|0;return e|0}function D_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=a+8|0;h=a+4|0;i=Pg[f[c>>2]&255](f[h>>2]|0,f[a>>2]|0)|0;d=Pg[f[c>>2]&255](f[e>>2]|0,f[h>>2]|0)|0;do if(i){g=f[a>>2]|0;if(d){f[a>>2]=f[e>>2];f[e>>2]=g;break}f[a>>2]=f[h>>2];f[h>>2]=g;if(Pg[f[c>>2]&255](f[e>>2]|0,g)|0){i=f[h>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=i}}else if(d){g=f[h>>2]|0;i=f[e>>2]|0;f[h>>2]=i;f[e>>2]=g;if(Pg[f[c>>2]&255](i,f[a>>2]|0)|0){i=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=i}}while(0);d=a+12|0;if((d|0)==(b|0))return;while(1){if(Pg[f[c>>2]&255](f[d>>2]|0,f[e>>2]|0)|0){h=f[d>>2]|0;i=h;g=d;while(1){f[g>>2]=f[e>>2];if((e|0)==(a|0))break;g=e+-4|0;if(Pg[f[c>>2]&255](i,f[g>>2]|0)|0){j=e;e=g;g=j}else break}f[e>>2]=h}e=d+4|0;if((e|0)==(b|0))break;else{j=d;d=e;e=j}}return}function E_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;switch(b-a>>2|0){case 2:{d=b+-4|0;if(!(Pg[f[c>>2]&255](f[d>>2]|0,f[a>>2]|0)|0)){c=1;return c|0}c=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=c;c=1;return c|0}case 3:{h=a+4|0;d=b+-4|0;b=Pg[f[c>>2]&255](f[h>>2]|0,f[a>>2]|0)|0;e=Pg[f[c>>2]&255](f[d>>2]|0,f[h>>2]|0)|0;if(!b){if(!e){c=1;return c|0}b=f[h>>2]|0;f[h>>2]=f[d>>2];f[d>>2]=b;if(!(Pg[f[c>>2]&255](f[h>>2]|0,f[a>>2]|0)|0)){c=1;return c|0}c=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=c;c=1;return c|0}g=f[a>>2]|0;if(e){f[a>>2]=f[d>>2];f[d>>2]=g;c=1;return c|0}f[a>>2]=f[h>>2];f[h>>2]=g;if(!(Pg[f[c>>2]&255](f[d>>2]|0,g)|0)){c=1;return c|0}c=f[h>>2]|0;f[h>>2]=f[d>>2];f[d>>2]=c;c=1;return c|0}case 4:{C_a(a,a+4|0,a+8|0,b+-4|0,c)|0;c=1;return c|0}case 5:{e=a+4|0;g=a+8|0;h=a+12|0;d=b+-4|0;C_a(a,e,g,h,c)|0;if(!(Pg[f[c>>2]&255](f[d>>2]|0,f[h>>2]|0)|0)){c=1;return c|0}b=f[h>>2]|0;f[h>>2]=f[d>>2];f[d>>2]=b;if(!(Pg[f[c>>2]&255](f[h>>2]|0,f[g>>2]|0)|0)){c=1;return c|0}j=f[g>>2]|0;b=f[h>>2]|0;f[g>>2]=b;f[h>>2]=j;if(!(Pg[f[c>>2]&255](b,f[e>>2]|0)|0)){c=1;return c|0}j=f[e>>2]|0;b=f[g>>2]|0;f[e>>2]=b;f[g>>2]=j;if(!(Pg[f[c>>2]&255](b,f[a>>2]|0)|0)){c=1;return c|0}c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=1;return c|0}case 1:case 0:{c=1;return c|0}default:{h=a+8|0;d=a+4|0;j=Pg[f[c>>2]&255](f[d>>2]|0,f[a>>2]|0)|0;e=Pg[f[c>>2]&255](f[h>>2]|0,f[d>>2]|0)|0;do if(j){g=f[a>>2]|0;if(e){f[a>>2]=f[h>>2];f[h>>2]=g;break}f[a>>2]=f[d>>2];f[d>>2]=g;if(Pg[f[c>>2]&255](f[h>>2]|0,g)|0){j=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=j}}else if(e){i=f[d>>2]|0;j=f[h>>2]|0;f[d>>2]=j;f[h>>2]=i;if(Pg[f[c>>2]&255](j,f[a>>2]|0)|0){j=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=j}}while(0);d=a+12|0;a:do if((d|0)==(b|0)){e=1;d=0}else{j=d;d=0;e=h;while(1){if(Pg[f[c>>2]&255](f[j>>2]|0,f[e>>2]|0)|0){h=f[j>>2]|0;i=h;g=j;while(1){f[g>>2]=f[e>>2];if((e|0)==(a|0))break;g=e+-4|0;if(Pg[f[c>>2]&255](i,f[g>>2]|0)|0){k=e;e=g;g=k}else break}f[e>>2]=h;d=d+1|0;if((d|0)==8){e=0;d=(j+4|0)==(b|0);break a}}e=j+4|0;if((e|0)==(b|0)){e=1;d=0;break}else{k=j;j=e;e=k}}}while(0);k=d|e;return k|0}}return 0}function F_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+p[a+24>>3];i=+p[b+24>>3];do if(j==i){d=f[a+12>>2]|0;f[c+4>>2]=d;if((f[a+20>>2]|0)==(d|0)){d=f[a+16>>2]|0;break}else{j=j*+(d-(f[a+4>>2]|0)|0);d=(f[a>>2]|0)+~~(j+(j<0.0?-.5:.5))|0;break}}else{do if(j==0.0){e=f[a>>2]|0;f[c>>2]=e;d=f[b+4>>2]|0;if(!(i==-1.e+40)){k=+(e|0)/i+(+(d|0)-+(f[b>>2]|0)/i);d=~~(k+(k<0.0?-.5:.5))}h=c+4|0;f[h>>2]=d}else{if(!(i==0.0)){m=+(f[a>>2]|0)-j*+(f[a+4>>2]|0);l=+(f[b>>2]|0)-i*+(f[b+4>>2]|0);k=(l-m)/(j-i);d=~~(k+(k<0.0?-.5:.5));h=c+4|0;f[h>>2]=d;g=+K(+j)<+K(+i);k=(g?m:l)+k*(g?j:i);f[c>>2]=~~(k+(k<0.0?-.5:.5));break}e=f[b>>2]|0;f[c>>2]=e;d=f[a+4>>2]|0;if(!(j==-1.e+40)){m=+(e|0)/j+(+(d|0)-+(f[a>>2]|0)/j);d=~~(m+(m<0.0?-.5:.5))}h=c+4|0;f[h>>2]=d}while(0);g=f[a+20>>2]|0;e=f[b+20>>2]|0;if((d|0)<(g|0)|(d|0)<(e|0)){d=(g|0)>(e|0)?g:e;f[h>>2]=d;e=+K(+j)<+K(+i);e=e?a:b;if((f[e+20>>2]|0)==(d|0))e=f[e+16>>2]|0;else{m=+p[e+24>>3]*+(d-(f[e+4>>2]|0)|0);e=(f[e>>2]|0)+~~(m+(m<0.0?-.5:.5))|0}f[c>>2]=e}e=f[a+12>>2]|0;if((d|0)<=(e|0))return;f[h>>2]=e;d=+K(+j)>+K(+i);d=d?b:a;if((f[d+20>>2]|0)==(e|0)){d=f[d+16>>2]|0;break}else{m=+p[d+24>>3]*+(e-(f[d+4>>2]|0)|0);d=(f[d>>2]|0)+~~(m+(m<0.0?-.5:.5))|0;break}}while(0);f[c>>2]=d;return}function G_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function H_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0;e=a+128|0;d=f[e>>2]|0;g=d;if(!d){f[b+72>>2]=0;f[b+68>>2]=0;l=e;f[l>>2]=b;return}h=b+8|0;a:do if(!c){a=f[h>>2]|0;c=f[d+8>>2]|0;do if((a|0)==(c|0)){a=f[b+20>>2]|0;c=f[d+20>>2]|0;if((a|0)>(c|0)){m=+p[d+24>>3]*+(a-(f[d+4>>2]|0)|0);if((f[b+16>>2]|0)<((f[d>>2]|0)+~~(m+(m<0.0?-.5:.5))|0))break;else break a}if((a|0)==(c|0))a=f[b+16>>2]|0;else{m=+p[b+24>>3]*+(c-(f[b+4>>2]|0)|0);a=(f[b>>2]|0)+~~(m+(m<0.0?-.5:.5))|0}if((f[d+16>>2]|0)<=(a|0))break a}else if((a|0)>=(c|0))break a;while(0);f[b+72>>2]=0;f[b+68>>2]=g;f[d+72>>2]=b;l=e;f[l>>2]=b;return}else d=c;while(0);i=b+20|0;j=b+16|0;k=b+24|0;l=b+4|0;c=d+68|0;a=f[c>>2]|0;b:do if(a){h=f[h>>2]|0;g=a;while(1){a=f[g+8>>2]|0;do if((h|0)==(a|0)){a=f[i>>2]|0;e=f[g+20>>2]|0;if((a|0)>(e|0)){m=+p[g+24>>3]*+(a-(f[g+4>>2]|0)|0);if((f[j>>2]|0)<((f[g>>2]|0)+~~(m+(m<0.0?-.5:.5))|0)){a=g;break b}else break}if((a|0)==(e|0))a=f[j>>2]|0;else{m=+p[k>>3]*+(e-(f[l>>2]|0)|0);a=(f[b>>2]|0)+~~(m+(m<0.0?-.5:.5))|0}if((f[g+16>>2]|0)>(a|0)){a=g;break b}}else if((h|0)<(a|0)){a=g;break b}while(0);c=g+68|0;a=f[c>>2]|0;if(!a){d=g;break}else{d=g;g=a}}}while(0);f[b+68>>2]=a;a=f[c>>2]|0;if(a|0)f[a+72>>2]=b;f[b+72>>2]=d;l=c;f[l>>2]=b;return}function I_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[b+72>>2]|0;a:do if(!c)j=6;else{g=f[b+32>>2]|0;while(1){if((f[c+32>>2]|0)==(g|0)){i=f[c+40>>2]|0;if(i|0)break}c=f[c+72>>2]|0;if(!c){j=6;break a}}d=f[b+40>>2]|0;e=(d|0)==0;if(e)if((f[a+40>>2]|0)!=1){f[b+44>>2]=1;i=f[c+48>>2]|0;f[b+48>>2]=i;e=c+68|0;c=i;break}if(!(f[((g|0)==0?a+68|0:a+64|0)>>2]|0)){if(e){e=1;d=c;b:while(1){do{d=f[d+72>>2]|0;if(!d)break b}while((f[d+32>>2]|0)!=(g|0));e=e^(f[d+40>>2]|0)!=0}d=(e^1)&1}f[b+44>>2]=d;i=f[c+48>>2]|0;f[b+48>>2]=i;e=c+68|0;c=i;break}h=f[c+44>>2]|0;do if((X(i,h)|0)<0)if((((h|0)<0?0-h|0:h)|0)>1){i=(X(d,i)|0)<0;d=(i?0:d)+h|0;break}else{d=e?1:d;break}else if(e){d=(h>>31|1)+h|0;break}else{i=(X(d,i)|0)<0;d=(i?0:d)+h|0;break}while(0);f[b+44>>2]=d;i=f[c+48>>2]|0;f[b+48>>2]=i;e=c+68|0;c=i}while(0);if((j|0)==6){c=f[b+40>>2]|0;d=f[b+32>>2]|0;if(!c)c=(f[((d|0)==0?a+68|0:a+64|0)>>2]|0)==3?-1:1;f[b+44>>2]=c;f[b+48>>2]=0;e=a+128|0;c=0;g=d}d=f[e>>2]|0;e=(d|0)==(b|0);if(f[((g|0)==0?a+64|0:a+68|0)>>2]|0){if(e)return;e=b+48|0;do{c=c+(f[d+40>>2]|0)|0;d=f[d+68>>2]|0}while((d|0)!=(b|0));f[e>>2]=c;return}if(e)return;e=b+48|0;do{if(f[d+40>>2]|0){c=(c|0)==0&1;f[e>>2]=c}d=f[d+68>>2]|0}while((d|0)!=(b|0));return}function J_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=(f[b+32>>2]|0)==0;h=a+68|0;g=a+64|0;c=f[(d?g:h)>>2]|0;switch(f[(d?h:g)>>2]|0){case 0:{if(!(f[b+40>>2]|0))if((f[b+44>>2]|0)==1)e=7;else c=0;else e=7;break}case 1:{h=f[b+44>>2]|0;if((((h|0)<0?0-h|0:h)|0)==1)e=7;else c=0;break}case 2:{if((f[b+44>>2]|0)==1)e=7;else c=0;break}default:if((f[b+44>>2]|0)==-1)e=7;else c=0}a:do if((e|0)==7)switch(f[a+40>>2]|0){case 0:switch(c|0){case 1:case 0:{c=(f[b+48>>2]|0)!=0;break a}case 2:{c=(f[b+48>>2]|0)>0;break a}default:{c=(f[b+48>>2]|0)<0;break a}}case 1:switch(c|0){case 1:case 0:{c=(f[b+48>>2]|0)==0;break a}case 2:{c=(f[b+48>>2]|0)<1;break a}default:{c=(f[b+48>>2]|0)>-1;break a}}case 2:if(d)switch(c|0){case 1:case 0:{c=(f[b+48>>2]|0)==0;break a}case 2:{c=(f[b+48>>2]|0)<1;break a}default:{c=(f[b+48>>2]|0)>-1;break a}}else switch(c|0){case 1:case 0:{c=(f[b+48>>2]|0)!=0;break a}case 2:{c=(f[b+48>>2]|0)>0;break a}default:{c=(f[b+48>>2]|0)<0;break a}}case 3:{if(f[b+40>>2]|0){c=1;break a}switch(c|0){case 1:case 0:{c=(f[b+48>>2]|0)==0;break a}case 2:{c=(f[b+48>>2]|0)<1;break a}default:{c=(f[b+48>>2]|0)>-1;break a}}}default:{c=1;break a}}while(0);return c|0}function K_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+48|0;h=a+52|0;b=f[h>>2]|0;c=f[g>>2]|0;if((b|0)!=(c|0)){e=0;do{d=f[c+(e<<2)>>2]|0;if(d){fh[f[(f[d>>2]|0)+4>>2]&2047](d);b=f[h>>2]|0;c=f[g>>2]|0}e=e+1|0;d=b-c>>2}while(e>>>0<d>>>0);if(!((c|0)==(b|0)|(d|0)==0))f[h>>2]=b+(~((b+-4-c|0)>>>2)<<2)}d=a+20|0;h=f[d>>2]|0;b=f[a+16>>2]|0;c=h;if((h|0)==(b|0)|(b|0)==(c|0))return;f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);return}function L_a(a){a=a|0;f[a>>2]=31432;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;b[a+32>>0]=0;return}function M_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=b+4|0;g=f[b>>2]|0;if((f[i>>2]|0)==(g|0)){i=0;return i|0}h=0;e=0;do{e=e|(Rg[f[(f[a>>2]|0)+8>>2]&15](a,g+(h*12|0)|0,c,d)|0);h=h+1|0;g=f[b>>2]|0}while(h>>>0<(((f[i>>2]|0)-g|0)/12|0)>>>0);return e|0}function N_a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;f[a+100>>2]=0;f[a+104>>2]=0;f[a+108>>2]=0;f[a+116>>2]=0;f[a+120>>2]=0;f[a+124>>2]=0;f[a+132>>2]=0;f[a+136>>2]=0;f[a+140>>2]=0;d=a+80|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[a>>2]=32444;f[a+76>>2]=32480;d=a+44|0;e=a+4|0;g=e+36|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[d>>2]=d;f[a+48>>2]=d;f[a+52>>2]=0;b[a+60>>0]=0;b[a+96>>0]=0;b[a+72>>0]=c&1;b[a+74>>0]=c>>>1&1;b[a+112>>0]=c>>>2&1;b[a+113>>0]=0;return}function O_a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;h=p;o=a+60|0;if(b[o>>0]|0){o=0;u=p;return o|0}if(b[a+113>>0]|0){o=FIa(212344,192360,56)|0;_fb(h,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);n=Chb(h,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(h);rgb(o,n)|0;dgb(o)|0;o=0;u=p;return o|0}b[o>>0]=1;k=d+4|0;j=f[k>>2]|0;m=f[d>>2]|0;l=m;h=j;if(!((j|0)==(m|0)|(l|0)==(h|0)))do{i=h+-12|0;f[k>>2]=i;j=f[i>>2]|0;if(!j)h=i;else{h=h+-8|0;i=f[h>>2]|0;if((i|0)!=(j|0))f[h>>2]=i+(~((i+-8-j|0)>>>3)<<3);Zpb(j);h=f[k>>2]|0}}while((h|0)!=(l|0));f[a+68>>2]=e;f[a+64>>2]=g;f[a+40>>2]=c;b[a+73>>0]=0;m=RZa(a)|0;if(m)P_a(a,d);e=a+116|0;g=a+120|0;h=f[g>>2]|0;d=f[e>>2]|0;i=d;if((h|0)!=(d|0)){c=a+116|0;l=0;do{j=f[i+(l<<2)>>2]|0;k=j+16|0;h=f[k>>2]|0;if(!h){if(j)n=21}else{f[(f[h+16>>2]|0)+12>>2]=0;h=f[k>>2]|0;if(!h)n=21;else{do{f[k>>2]=f[h+12>>2];Zpb(h);h=f[k>>2]|0}while((h|0)!=0);n=21}}if((n|0)==21){n=0;Zpb(j);i=f[c>>2]|0}f[i+(l<<2)>>2]=0;l=l+1|0;h=f[g>>2]|0;a=f[e>>2]|0;i=a}while(l>>>0<h-a>>2>>>0)}if((i|0)!=(h|0))f[g>>2]=h+(~((h+-4-i|0)>>>2)<<2);b[o>>0]=0;o=m;u=p;return o|0}function P_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+16|0;p=r;q=a+116|0;o=a+120|0;Q_a(b,(f[o>>2]|0)-(f[q>>2]|0)>>2);a=f[o>>2]|0;c=f[q>>2]|0;if((a|0)==(c|0)){u=r;return}j=p+4|0;k=p+8|0;l=p+8|0;m=b+4|0;n=b+8|0;i=0;while(1){d=c;if(f[(f[d+(i<<2)>>2]|0)+16>>2]|0){f[p>>2]=0;f[j>>2]=0;f[k>>2]=0;d=f[(f[(f[d+(i<<2)>>2]|0)+16>>2]|0)+16>>2]|0;if(d|0){a=d;c=0;while(1){h=c+1|0;a=f[a+12>>2]|0;if((a|0)==(d|0))break;else c=h}if((c|0)>=1){if(c>>>0>536870910){a=9;break}e=Wpb(h<<3)|0;g=e+(h<<3)|0;f[p>>2]=e;f[j>>2]=e;f[l>>2]=g;a=0;while(1){c=d+4|0;if((e|0)==(g|0))KLa(p,c);else{s=c;c=f[s+4>>2]|0;g=e;f[g>>2]=f[s>>2];f[g+4>>2]=c;f[j>>2]=(f[j>>2]|0)+8}a=a+1|0;if((a|0)==(h|0))break;d=f[d+16>>2]|0;e=f[j>>2]|0;g=f[l>>2]|0}g=f[m>>2]|0;if((g|0)==(f[n>>2]|0)){AMa(b,p);a=f[p>>2]|0}else{f[g>>2]=0;h=g+4|0;f[h>>2]=0;f[g+8>>2]=0;a=f[p>>2]|0;c=(f[j>>2]|0)-a|0;d=c>>3;if(d){if(d>>>0>536870911){a=14;break}e=Wpb(c)|0;f[h>>2]=e;f[g>>2]=e;f[g+8>>2]=e+(d<<3);a=f[p>>2]|0;c=(f[j>>2]|0)-a|0;if((c|0)>0){Irb(e|0,a|0,c|0)|0;f[h>>2]=e+(c>>>3<<3)}}f[m>>2]=(f[m>>2]|0)+12}if(a|0){c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}}}c=f[q>>2]|0;a=f[o>>2]|0}i=i+1|0;if(i>>>0>=a-c>>2>>>0){a=3;break}}if((a|0)==3){u=r;return}else if((a|0)==9)ud();else if((a|0)==14)fob(g)}function Q_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;g=f[a>>2]|0;d=g;if((((f[k>>2]|0)-g|0)/12|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>357913941)ud();i=f[l>>2]|0;h=Wpb(b*12|0)|0;c=h+(((i-g|0)/12|0)*12|0)|0;j=c;h=h+(b*12|0)|0;b=i;if((b|0)==(d|0)){e=j;i=g}else{e=j;do{i=c+-12|0;g=b;b=b+-12|0;f[i>>2]=0;m=c+-8|0;f[m>>2]=0;f[c+-4>>2]=0;f[i>>2]=f[b>>2];i=g+-8|0;f[m>>2]=f[i>>2];g=g+-4|0;f[c+-4>>2]=f[g>>2];f[g>>2]=0;f[i>>2]=0;f[b>>2]=0;c=e+-12|0;e=c}while((b|0)!=(d|0));i=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=h;g=i;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-8-e|0)>>>3)<<3);Zpb(e)}}while((d|0)!=(g|0));if(!i)return;Zpb(i);return}function R_a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+160|0;k=l;f[k+100>>2]=0;f[k+104>>2]=0;f[k+108>>2]=0;f[k+116>>2]=0;f[k+120>>2]=0;f[k+124>>2]=0;f[k+132>>2]=0;f[k+136>>2]=0;f[k+140>>2]=0;e=k+80|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[k>>2]=32444;f[k+76>>2]=32480;e=k+44|0;g=k+4|0;h=g+36|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e>>2]=e;f[k+48>>2]=e;f[k+52>>2]=0;b[k+60>>0]=0;b[k+96>>0]=0;b[k+72>>0]=0;b[k+112>>0]=0;b[k+113>>0]=0;b[k+74>>0]=1;i=k+76|0;j=a+4|0;e=f[a>>2]|0;if((f[j>>2]|0)==(e|0)){O_a(k,1,c,d,d)|0;PJa(k,32500);EZa(i);u=l;return}g=0;h=32480;while(1){Rg[f[h+8>>2]&15](i,e+(g*12|0)|0,0,1)|0;g=g+1|0;e=f[a>>2]|0;if(g>>>0>=(((f[j>>2]|0)-e|0)/12|0)>>>0)break;h=f[i>>2]|0}O_a(k,1,c,d,d)|0;PJa(k,32500);EZa(i);u=l;return}function S_a(a,b){a=a|0;b=b|0;R_a(a,a,b);return}function T_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0;h=f[a>>2]|0;i=f[b>>2]|0;j=h-i|0;g=f[a+4>>2]|0;b=f[b+4>>2]|0;e=g-b|0;if((((j|0)<0?0-j|0:j)|0)>(((e|0)<0?0-e|0:e)|0)){a=f[c>>2]|0;if(!((i|0)<(h|0)^(a|0)>(h|0))){k=+(b-(f[c+4>>2]|0)|0);m=+(a-i|0);l=+(g|0)*m+ +(h|0)*k-(+(b|0)*m+ +(i|0)*k);l=l*l;k=k*k;m=m*m;k=m+k;k=l/k;j=k<d;return j|0}if((i|0)>(h|0)^(a|0)>(i|0)){m=+(e|0);k=+(i-h|0);l=m*+(a|0)+k*+(f[c+4>>2]|0)-(+(g|0)*k+ +(h|0)*m);l=l*l;m=m*m;k=k*k;m=k+m;m=l/m;j=m<d;return j|0}else{m=+(g-(f[c+4>>2]|0)|0);k=+(a-h|0);l=+(b|0)*k+ +(i|0)*m-(+(g|0)*k+ +(h|0)*m);l=l*l;m=m*m;k=k*k;m=k+m;m=l/m;j=m<d;return j|0}}else{a=f[c+4>>2]|0;if(!((g|0)>(b|0)^(g|0)<(a|0))){m=+(b-a|0);k=+((f[c>>2]|0)-i|0);l=+(h|0)*m+ +(g|0)*k-(+(i|0)*m+ +(b|0)*k);l=l*l;m=m*m;k=k*k;m=k+m;m=l/m;j=m<d;return j|0}if((g|0)<(b|0)^(b|0)<(a|0)){m=+(e|0);k=+(i-h|0);l=k*+(a|0)+m*+(f[c>>2]|0)-(+(g|0)*k+ +(h|0)*m);l=l*l;m=m*m;k=k*k;m=k+m;m=l/m;j=m<d;return j|0}else{m=+(g-a|0);k=+((f[c>>2]|0)-h|0);l=+(i|0)*m+ +(b|0)*k-(+(h|0)*m+ +(g|0)*k);l=l*l;m=m*m;k=k*k;m=k+m;m=l/m;j=m<d;return j|0}}return 0}function U_a(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0.0,s=0;g=f[a>>2]|0;a=(f[a+4>>2]|0)-g>>3;if(!a){e=f[b>>2]|0;a=b+4|0;d=f[a>>2]|0;if((d|0)==(e|0))return;f[a>>2]=d+(~((d+-8-e|0)>>>3)<<3);return}p=Xpb(a>>>0>214748364?-1:a*20|0)|0;d=p+(a*20|0)|0;e=p;do{f[e+4>>2]=0;f[e+8>>2]=0;e=e+20|0}while((e|0)!=(d|0));d=0;do{m=p+(d*20|0)|0;i=g+(d<<3)|0;l=f[i+4>>2]|0;k=p+(d*20|0)+4|0;f[k>>2]=f[i>>2];f[k+4>>2]=l;k=d;d=d+1|0;l=(d|0)==(a|0)?0:d;f[p+(k*20|0)+12>>2]=p+(l*20|0);f[p+(l*20|0)+16>>2]=m;f[m>>2]=0}while((d|0)!=(a|0));n=c*c;a:do if(!(f[p>>2]|0)){e=p;d=p;while(1){while(1){m=e+12|0;k=d;d=f[m>>2]|0;l=e+16|0;g=f[l>>2]|0;if((d|0)==(g|0))break a;e=e+4|0;i=e;h=g+4|0;s=h;c=+(f[s>>2]|0);r=+(f[i>>2]|0)-c;j=+(f[s+4>>2]|0);q=+(f[i+4>>2]|0)-j;if(r*r+q*q<=n){o=10;break}i=d+4|0;s=i;q=c-+(f[s>>2]|0);r=j-+(f[s+4>>2]|0);if(q*q+r*r<=n){o=14;break}if(T_a(h,e,i,n)|0){o=10;break}f[k>>2]=1;if(f[d>>2]|0){e=d;break a}else e=d}if((o|0)==10){o=0;h=-1}else if((o|0)==14){o=0;g=f[d+16>>2]|0;h=d+12|0;f[g+12>>2]=f[h>>2];f[(f[h>>2]|0)+16>>2]=g;f[g>>2]=0;g=f[l>>2]|0;h=-2;d=f[m>>2]|0}f[g+12>>2]=d;f[(f[m>>2]|0)+16>>2]=g;f[g>>2]=0;e=g;a=a+h|0;d=g}}else e=p;while(0);i=a>>>0<3?0:a;g=b+4|0;h=f[g>>2]|0;d=f[b>>2]|0;a=h-d>>3;if(i>>>0>a>>>0){V_a(b,i-a|0);o=23}else{if(i>>>0<a>>>0){a=d+(i<<3)|0;if((a|0)!=(h|0))f[g>>2]=h+(~((h+-8-a|0)>>>3)<<3)}if(i|0)o=23}if((o|0)==23){d=0;a=e;while(1){m=a+4|0;o=f[m+4>>2]|0;s=(f[b>>2]|0)+(d<<3)|0;f[s>>2]=f[m>>2];f[s+4>>2]=o;d=d+1|0;if((d|0)==(i|0))break;else a=f[a+12>>2]|0}}_pb(p);return}function V_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+8|0;d=f[i>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>3>>>0>=b>>>0){Krb(c|0,0,b<<3|0)|0;f[l>>2]=c+(b<<3);return}h=f[a>>2]|0;g=c-h|0;e=g>>3;c=e+b|0;if(c>>>0>536870911)fob(a);m=d-h|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){j=0;k=0}else if(d>>>0>536870911)ud();else{k=Wpb(d<<3)|0;j=k;break}while(0);c=j+(e<<3)|0;Krb(c|0,0,b<<3|0)|0;if((g|0)>0)Irb(k|0,h|0,g|0)|0;f[a>>2]=j;f[l>>2]=c+(b<<3);f[i>>2]=j+(d<<3);if(!h)return;Zpb(h);return}function W_a(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+4|0;g=((f[k>>2]|0)-(f[a>>2]|0)|0)/12|0;j=b+4|0;h=f[j>>2]|0;e=f[b>>2]|0;d=(h-e|0)/12|0;if(g>>>0>d>>>0)X_a(b,g-d|0);else if(g>>>0<d>>>0){i=e+(g*12|0)|0;if((i|0)!=(h|0)){e=h;while(1){d=e+-12|0;f[j>>2]=d;g=f[d>>2]|0;if(g){d=e+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[j>>2]|0}if((d|0)==(i|0))break;else e=d}}}d=f[a>>2]|0;if((f[k>>2]|0)==(d|0))return;e=0;do{U_a(d+(e*12|0)|0,(f[b>>2]|0)+(e*12|0)|0,c);e=e+1|0;d=f[a>>2]|0}while(e>>>0<(((f[k>>2]|0)-d|0)/12|0)>>>0);return}function X_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;g=f[k>>2]|0;l=a+4|0;c=f[l>>2]|0;e=c;if(((g-c|0)/12|0)>>>0>=b>>>0){Krb(c|0,0,b*12|0)|0;f[l>>2]=e+(b*12|0);return}i=f[a>>2]|0;d=(c-i|0)/12|0;c=d+b|0;j=i;if(c>>>0>357913941)fob(a);m=(g-i|0)/12|0;g=m<<1;g=m>>>0<178956970?(g>>>0<c>>>0?c:g):357913941;do if(!g)h=0;else if(g>>>0>357913941)ud();else{h=Wpb(g*12|0)|0;break}while(0);c=h+(d*12|0)|0;d=c;h=h+(g*12|0)|0;Krb(c|0,0,b*12|0)|0;g=c+(b*12|0)|0;if((e|0)!=(j|0)){do{m=c+-12|0;b=e;e=e+-12|0;f[m>>2]=0;i=c+-8|0;f[i>>2]=0;f[c+-4>>2]=0;f[m>>2]=f[e>>2];m=b+-8|0;f[i>>2]=f[m>>2];b=b+-4|0;f[c+-4>>2]=f[b>>2];f[b>>2]=0;f[m>>2]=0;f[e>>2]=0;c=d+-12|0;d=c}while((e|0)!=(j|0));i=f[a>>2]|0;e=f[l>>2]|0}f[a>>2]=d;f[l>>2]=g;f[k>>2]=h;h=i;if((e|0)!=(h|0))do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~((d+-8-g|0)>>>3)<<3);Zpb(g)}}while((e|0)!=(h|0));if(!i)return;Zpb(i);return}function Y_a(a,b){a=a|0;b=+b;W_a(a,a,b);return}function Z_a(a,b){a=a|0;b=b|0;return Kbb(b)|0}function __a(a,b){a=a|0;b=b|0;Lbb(b);return}function $_a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;if(d>>>0<5){a=5;return a|0}e=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;if((e|0)!=-47205080){if((e&-16|0)!=407710288){a=-2;return a|0}if(d>>>0<8){a=8;return a|0};f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;c=c+4|0;l=a;f[l>>2]=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[l+4>>2]=0;f[a+8>>2]=0;a=0;return a|0}k=b[c+4>>0]|0;g=k&255;l=g&32;e=g>>>6;j=(l|0)!=0;e=(f[32520+((g&3)<<2)>>2]|0)+6+(f[32536+(e<<2)>>2]|0)-(l>>>5)+((e|0)==0&j&1)|0;if(e>>>0>d>>>0){a=e;return a|0}l=g>>>2&1;if(g&8|0){a=-3;return a|0}if(j){g=5;e=0}else{d=h[c+5>>0]|0;i=d>>>3;e=1024<<i;e=(X(e>>>3,d&7)|0)+e|0;if((i+10|0)>>>0>25){a=-3;return a|0}else g=6}switch(k&3){case 3:{i=c+g|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=g+4|0;break}case 1:{i=h[c+g>>0]|0;g=g+1|0;break}case 2:{i=c+g|0;i=(h[i>>0]|h[i+1>>0]<<8)&65535;g=g+2|0;break}default:i=0}switch((k&255)>>>6&3){case 3:{d=c+g|0;g=d;d=d+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;break}case 1:{g=c+g|0;g=((h[g>>0]|h[g+1>>0]<<8)&65535)+256|0;d=0;break}case 2:{g=c+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;d=0;break}default:if(j){g=h[c+g>>0]|0;d=0}else{g=0;d=0}}e=(e|0)==0?g:e;if(e>>>0>33554432){a=-3;return a|0}c=a;f[c>>2]=g;f[c+4>>2]=d;f[a+8>>2]=e;f[a+12>>2]=i;f[a+16>>2]=l;a=0;return a|0}function a$a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;if(d>>>0<3){a=-11;return a|0}e=b[c>>0]|0;g=e&255;i=g&3;switch(e&3){case 3:{if(!(f[a+21584>>2]|0)){a=-16;return a|0}break}case 2:break;case 0:{switch((e&255)>>>2&3){case 3:{e=3;g=((h[c+2>>0]|0)<<16|(h[c>>0]|h[c+1>>0]<<8)&65535)>>>4;break}case 1:{e=2;g=((h[c>>0]|h[c+1>>0]<<8)&65535)>>>4;break}default:{e=1;g=g>>>3}}i=e+g|0;do if((i+8|0)>>>0>d>>>0)if(i>>>0>d>>>0){a=-11;return a|0}else{m=a+21716|0;Irb(m|0,c+e|0,g|0)|0;f[a+21688>>2]=m;e=131080;break}else{f[a+21688>>2]=c+e;e=d-e|0}while(0);f[a+21704>>2]=e;f[a+21708>>2]=g;a=i;return a|0}case 1:{switch((e&255)>>>2&3){case 3:{e=(h[c+2>>0]|0)<<16|(h[c>>0]|h[c+1>>0]<<8)&65535;if(d>>>0<4|e>>>0>2097167){a=-11;return a|0}else{e=e>>>4;g=3}break}case 1:{e=((h[c>>0]|h[c+1>>0]<<8)&65535)>>>4;g=2;break}default:{e=g>>>3;g=1}}m=a+21716|0;Krb(m|0,b[c+g>>0]|0,e|0)|0;f[a+21688>>2]=m;f[a+21704>>2]=131080;f[a+21708>>2]=e;a=g+1|0;return a|0}default:{}}if(d>>>0<5){a=-11;return a|0}e=g>>>2;g=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;switch(e&3){case 3:{e=g>>>4&262143;if(e>>>0>131072){a=-11;return a|0}else{j=5;m=e;e=0;k=(h[c+4>>0]|0)<<10|g>>>22}break}case 2:{j=4;m=g>>>4&16383;e=0;k=g>>>18;break}default:{j=3;m=g>>>4&1023;e=(e&3|0)==0&1;k=g>>>14&1023}}l=k+j|0;if(l>>>0>d>>>0){a=-11;return a|0}d=(e|0)!=0;do if((i|0)==3){i=a+21716|0;e=c+j|0;g=a+5132|0;if(d){e=j5a(i,m,e,k,g)|0;break}else{e=k5a(i,m,e,k,g)|0;break}}else{g=a+5132|0;i=a+21716|0;e=c+j|0;if(d){e=e5a(g,i,m,e,k)|0;break}else{e=l5a(g,i,m,e,k)|0;break}}while(0);if(e>>>0>=4294967279){a=-11;return a|0}f[a+21688>>2]=a+21716;f[a+21704>>2]=131080;f[a+21708>>2]=m;f[a+21584>>2]=1;a=l;return a|0}function b$a(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+128|0;o=r+4|0;n=r;p=r+8|0;m=i+j|0;if(!j){i=-10;u=r;return i|0}l=i+1|0;k=b[i>>0]|0;j=k&255;if(!(k<<24>>24)){f[a>>2]=0;i=1;u=r;return i|0}do if(k<<24>>24<0)if(k<<24>>24==-1){k=i+3|0;j=((h[l>>0]|h[l+1>>0]<<8)&65535)+32512|0;break}else{k=i+2|0;j=(j<<8)+-32768|(h[l>>0]|0);break}else k=l;while(0);f[a>>2]=j;if((k+4|0)>>>0>m>>>0){i=-10;u=r;return i|0}a=b[k>>0]|0;l=k+1|0;j=m-l|0;f[o>>2]=35;switch((a&255)>>>6&3){case 1:{if(!j)q=19;else{j=b[l>>0]|0;if((j&255)>35)q=19;else{$4a(c,j)|0;j=1;q=18}}break}case 0:{_4a(c,42704,35,6)|0;j=0;q=18;break}case 3:{if(!g)q=19;else{j=0;q=18}break}default:{j=Y4a(p,o,n,l,j)|0;if(j>>>0<4294967279){k=f[n>>2]|0;if(k>>>0>9)j=-11;else _4a(c,p,f[o>>2]|0,k)|0}else j=-11;if(j>>>0>=4294967279){i=-11;u=r;return i|0}}}if((q|0)!=18)if((q|0)==19){i=-11;u=r;return i|0}l=l+j|0;j=m-l|0;f[o>>2]=28;switch((a&255)>>>4&3){case 1:{if(!j)q=31;else{j=b[l>>0]|0;if((j&255)>28)q=31;else{$4a(e,j)|0;j=1;q=30}}break}case 0:{_4a(e,42776,28,5)|0;j=0;q=30;break}case 3:{if(!g)q=31;else{j=0;q=30}break}default:{j=Y4a(p,o,n,l,j)|0;if(j>>>0<4294967279){k=f[n>>2]|0;if(k>>>0>8)j=-11;else _4a(e,p,f[o>>2]|0,k)|0}else j=-11;if(j>>>0>=4294967279){i=-11;u=r;return i|0}}}if((q|0)!=30)if((q|0)==31){i=-11;u=r;return i|0}l=l+j|0;j=m-l|0;f[o>>2]=52;switch((a&255)>>>2&3){case 1:{if(!j)q=43;else{j=b[l>>0]|0;if((j&255)>52)q=43;else{$4a(d,j)|0;j=1;q=42}}break}case 0:{_4a(d,42834,52,6)|0;j=0;q=42;break}case 3:{if(!g)q=43;else{j=0;q=42}break}default:{j=Y4a(p,o,n,l,j)|0;if(j>>>0<4294967279){k=f[n>>2]|0;if(k>>>0>9)j=-11;else _4a(d,p,f[o>>2]|0,k)|0}else j=-11;if(j>>>0>=4294967279){i=-11;u=r;return i|0}}}if((q|0)!=42)if((q|0)==43){i=-11;u=r;return i|0}i=l+j-i|0;u=r;return i|0}function c$a(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;K=0;U=u;u=u+1808|0;if(i>>>0>131071){e=-10;u=U;return e|0}j=a$a(a,g,i)|0;o=i-(j>>>0<4294967279?j:0)|0;x=j>>>0<4294967279?g+j|0:g;if(j>>>0>=4294967279){e=j;u=U;return e|0}m=f[a+21688>>2]|0;y=m+(f[a+21704>>2]|0)+-8|0;z=m+(f[a+21708>>2]|0)|0;A=f[a+21524>>2]|0;B=f[a+21528>>2]|0;C=f[a+21532>>2]|0;I=b$a(U+52|0,a,a+3080|0,a+2052|0,f[(a+21588|0)>>2]|0,x,o)|0;w=I>>>0<4294967279?x+I|0:x;a:{J=1;if(J){J=0;if(I>>>0<4294967279){b:{i=1;if(i){i=0;if(!(f[(U+52|0)>>2]|0)){p=c;q=m}else i=1}if(i)if(1){f[(a+21588|0)>>2]=1;f[(U+40|0)>>2]=f[(a+21540|0)>>2];f[(U+40|0)+4>>2]=f[(a+21540|0)+4>>2];f[(U+40|0)+8>>2]=f[(a+21540|0)+8>>2];k=(x+o|0)-w|0;c:{i=1;if(i){i=0;if(!k){f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;f[U+12>>2]=0}else i=1}if(i)if(1){f[(U+12|0)>>2]=w;do if(k>>>0>3){j=(x+o|0)+-4|0;f[U+8>>2]=j;g=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[U>>2]=g;i=b[w+(k+-1)>>0]|0;if(!(i<<24>>24)){f[(U+4|0)>>2]=0;break c}else{i=(_(i&255|0)|0)+-23|0;f[(U+4|0)>>2]=i;if(k>>>0<4294967279){E=U;l=g;F=U+4|0;t=i;v=j;K=17;break}else{N=-11;break}}}else{f[U+8>>2]=w;i=h[w>>0]|0;f[U>>2]=i;switch(k|0){case 2:{r=i;K=12;break}case 3:{r=(h[w+2>>0]|0)<<16|i;f[U>>2]=r;K=12;break}default:s=i}if((K|0)==12){s=((h[w+1>>0]|0)<<8)+r|0;f[U>>2]=s}i=b[w+(k+-1)>>0]|0;if(!(i<<24>>24)){f[(U+4|0)>>2]=0;break c}else{t=(4-k<<3)+-23+(_(i&255|0)|0)|0;f[(U+4|0)>>2]=t;E=U;l=s;F=U+4|0;v=x+I|0;K=17;break}}while(0);d:do if((K|0)==17){s=d[a>>1]|0;i=t+(s&65535)|0;f[F>>2]=i;f[(U+16|0)>>2]=l<<(t&31)>>>1>>>(31-s&31);do if(i>>>0>32){k=v;g=v}else{if(v>>>0>=(w+4|0)>>>0){g=v+(0-(i>>>3))|0;f[(U+8|0)>>2]=g;f[F>>2]=i&7;l=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[E>>2]=l;i=i&7;k=g;break}if((v|0)==(w|0)){k=x+I|0;g=v}else{k=(v+(0-(i>>>3))|0)>>>0<w>>>0?v-w|0:i>>>3;g=v+(0-k)|0;f[(U+8|0)>>2]=g;f[F>>2]=i-(k<<3)|0;l=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[E>>2]=l;i=i-(k<<3)|0;k=g}}while(0);f[(U+20|0)>>2]=a+4;v=d[(a+2052|0)>>1]|0;j=i+(v&65535)|0;f[F>>2]=j;f[(U+24|0)>>2]=l<<(i&31)>>>1>>>(31-v&31);do if(j>>>0<=32){if(k>>>0>=(w+4|0)>>>0){g=k+(0-(j>>>3))|0;f[(U+8|0)>>2]=g;f[F>>2]=j&7;l=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[E>>2]=l;j=j&7;k=g;break}if((k|0)==(w|0))k=x+I|0;else{v=(k+(0-(j>>>3))|0)>>>0<w>>>0?k-w|0:j>>>3;g=k+(0-v)|0;f[(U+8|0)>>2]=g;f[F>>2]=j-(v<<3)|0;l=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[E>>2]=l;j=j-(v<<3)|0;k=g}}while(0);f[(U+28|0)>>2]=a+2056;v=d[(a+3080|0)>>1]|0;i=j+(v&65535)|0;f[F>>2]=i;f[(U+32|0)>>2]=l<<(j&31)>>>1>>>(31-v&31);do if(i>>>0<=32){if(k>>>0>=(w+4|0)>>>0){g=k+(0-(i>>>3))|0;f[(U+8|0)>>2]=g;f[F>>2]=i&7;f[E>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i&7;break}if((k|0)!=(w|0)){w=(k+(0-(i>>>3))|0)>>>0<w>>>0?k-w|0:i>>>3;g=k+(0-w)|0;f[(U+8|0)>>2]=g;f[F>>2]=i-(w<<3)|0;f[E>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i-(w<<3)|0}}while(0);f[(U+36|0)>>2]=a+3084;p=(c+e|0)+-8|0;if(i>>>0>32)break c;else{o=c;l=x+I|0;k=g}while(1){g=l+4|0;if(k>>>0<g>>>0)if((k|0)==(l|0)){O=i;R=l}else{Q=i>>>3;Q=(k+(0-Q)|0)>>>0<l>>>0?k-l|0:Q;P=k+(0-Q)|0;f[(U+8|0)>>2]=P;Q=i-(Q<<3)|0;K=38}else{P=k+(0-(i>>>3))|0;f[(U+8|0)>>2]=P;Q=i&7;K=38}if((K|0)==38){K=0;f[F>>2]=Q;f[E>>2]=h[P>>0]|h[P+1>>0]<<8|h[P+2>>0]<<16|h[P+3>>0]<<24;O=Q;R=P}j=f[(U+52|0)>>2]|0;if(!j){L=m;M=o;break}f[(U+52|0)>>2]=j+-1;j=f[(U+20|0)>>2]|0;q=f[(U+16|0)>>2]|0;X=b[j+(q<<2)+2>>0]|0;r=f[(U+36|0)>>2]|0;s=f[(U+32|0)>>2]|0;V=b[r+(s<<2)+2>>0]|0;t=f[(U+28|0)>>2]|0;v=f[(U+24|0)>>2]|0;W=b[t+(v<<2)+2>>0]|0;w=f[32552+((X&255)<<2)>>2]|0;x=f[32696+((V&255)<<2)>>2]|0;f[U+88>>2]=c;f[U+96>>2]=e;f[U+192>>2]=m;f[U+232>>2]=o;f[U+440>>2]=N;f[U+456>>2]=E;f[U+512>>2]=F;f[U+592>>2]=O;f[U+656>>2]=X;f[U+664>>2]=W;f[U+672>>2]=V;f[U+800>>2]=p;f[U+816>>2]=g;f[U+824>>2]=l;f[U+832>>2]=k;f[U+840>>2]=y;f[U+848>>2]=i;f[U+888>>2]=j;f[U+896>>2]=q;f[U+904>>2]=r;f[U+912>>2]=s;f[U+920>>2]=t;f[U+928>>2]=v;f[U+944>>2]=w;f[U+952>>2]=x;f[U+984>>2]=R;f[U+1016>>2]=A;f[U+1064>>2]=B;f[U+1128>>2]=C;f[U+1296>>2]=S;f[U+1304>>2]=T;f[U+1688>>2]=K;f[U+1720>>2]=0;f[U+1724>>2]=0;p0a(U);m=f[U+192>>2]|0;o=f[U+232>>2]|0;N=f[U+440>>2]|0;l=f[U+824>>2]|0;k=f[U+832>>2]|0;i=f[U+848>>2]|0;S=f[U+1296>>2]|0;T=f[U+1304>>2]|0;K=f[U+1688>>2]|0;G=f[U+1720>>2]|0;D=f[U+1724>>2]|0;H=+n[U+1724>>2];f[U+1720>>2]=0;f[U+1724>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 6:break d}}if((K|0)==33)if(!(f[(U+52|0)>>2]|0)){L=T;M=S}else break c;f[(a+21540|0)>>2]=f[(U+40|0)>>2];f[(a+21540|0)+4>>2]=f[(U+40|0)+4>>2];f[(a+21540|0)+8>>2]=f[(U+40|0)+8>>2];p=M;q=L;break b}while(0);k=N;break a}}k=-11;break a}}i=z-q|0;if(i>>>0>((c+e|0)-p|0)>>>0)k=-9;else{Irb(p|0,q|0,i|0)|0;k=p+i-c|0}}else J=1}if(J)if(1)k=I}X=k;u=U;return X|0}function d$a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=c+d|0;if(g>>>0<8){c=-10;return c|0}n=h[e+4>>0]|0;k=n&32;o=n>>>6;k=(f[32520+((n&3)<<2)>>2]|0)+6+(f[32536+(o<<2)>>2]|0)-(k>>>5)+((o|0)==0&(k|0)!=0&1)|0;if(k>>>0>=4294967279){c=k;return c|0}if((k+3|0)>>>0>g>>>0){c=-10;return c|0}i=$_a(a+21552|0,e,k)|0;d=f[a+21564>>2]|0;if(d|0)if((f[a+21684>>2]|0)!=(d|0)){c=-17;return c|0}o=a+21568|0;if(f[o>>2]|0)U4a(a+21592|0,0,0)|0;if(i>>>0>=4294967279){c=i;return c|0}m=a+21592|0;n=c;e=e+k|0;k=g-k|0;a:while(1){if(k>>>0<3){d=-10;i=27;break}i=h[e>>0]|h[e+1>>0]<<8;l=i&65535;d=((h[e+2>>0]|0)<<16|l)>>>3;l=l&1;i=(i&65535)>>>1&255;switch(i&3){case 3:{d=-11;i=27;break a}case 1:{g=1;break}default:g=d}e=e+3|0;k=k+-3|0;if(k>>>0<g>>>0){d=-10;i=27;break}switch(i&3){case 2:{d=c$a(a,n,j-n|0,e,g)|0;if(d>>>0>=4294967279){i=27;break a}break}case 0:{if(g>>>0>(j-n|0)>>>0){d=-9;i=27;break a}Irb(n|0,e|0,g|0)|0;d=g;break}case 1:{if(d>>>0>(j-n|0)>>>0){d=-9;i=27;break a}Krb(n|0,b[e>>0]|0,d|0)|0;break}default:{d=-11;i=27;break a}}if(f[o>>2]|0)V4a(m,n,d)|0;n=n+d|0;e=e+g|0;k=k-g|0;if(l|0){i=23;break}}if((i|0)==23){if(!(f[o>>2]|0)){a=k;a=(a|0)==0;o=n;c=o-c|0;c=a?c:-10;return c|0}d=W4a(m)|0;if(k>>>0<4){c=-12;return c|0}if((h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24|0)==(d|0)){a=k+-4|0;a=(a|0)==0;o=n;c=o-c|0;c=a?c:-10;return c|0}else{c=-12;return c|0}}else if((i|0)==27)return d|0;return 0}function e$a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=Kbb(152816)|0;if(!e){i=-7;return i|0}f[e+21692>>2]=156;h=e+21696|0;f[h>>2]=804;i=e+21700|0;f[i>>2]=0;g=e+21520|0;j=e+21540|0;f[e+21536>>2]=5;f[e+21580>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[e+5132>>2]=201326604;f[e+21588>>2]=0;f[e+21584>>2]=0;f[e+21684>>2]=0;f[j>>2]=f[8127];f[j+4>>2]=f[8128];f[j+8>>2]=f[8129];if(a|0){f[e+21532>>2]=0;f[e+21528>>2]=a;f[e+21524>>2]=a;f[g>>2]=a}j=d$a(e,a,b,c,d)|0;nh[f[h>>2]&1023](f[i>>2]|0,e);return j|0}function f$a(a,c){a=a|0;c=c|0;var d=0;d=f[c>>2]|0;f[a>>2]=d;f[a+4>>2]=d+((f[c+4>>2]|0)-d);c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function g$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;e=f[a>>2]|0;g=f[a+4>>2]|0;h=e;while(1){d=h+1|0;if(d>>>0>g>>>0){d=h;break}f[a>>2]=d;if(!(b[h>>0]|0))break;else h=d}if((e|0)==(d|0)){i=0;u=j;return i|0}a=d+-1|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=a-e|0;if(h>>>0>4294967279)aqb(i);if(h>>>0<11){b[i+11>>0]=h;d=i}else{g=h+16&-16;d=Wpb(g)|0;f[i>>2]=d;f[i+8>>2]=g|-2147483648;f[i+4>>2]=h}if((e|0)!=(a|0)){g=d;while(1){b[g>>0]=b[e>>0]|0;e=e+1|0;if((e|0)==(a|0))break;else g=g+1|0}d=d+h|0}b[d>>0]=0;d=c+11|0;if((b[d>>0]|0)<0){b[f[c>>2]>>0]=0;f[c+4>>2]=0;d=c}else{b[c>>0]=0;b[d>>0]=0;d=c}jqb(c,0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];i=1;u=j;return i|0}function h$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;g=f[a>>2]|0;d=g+4|0;i=f[a+4>>2]|0;if(d>>>0>i>>>0){i=0;return i|0}l=g+1|0;f[a>>2]=l;k=b[g>>0]|0;j=g+2|0;f[a>>2]=j;l=b[l>>0]|0;e=g+3|0;f[a>>2]=e;j=b[j>>0]|0;f[a>>2]=d;f[c>>2]=(l&255)<<8|k&255|(j&255)<<16|(h[e>>0]|0)<<24;e=g+8|0;if(e>>>0>i>>>0){l=0;return l|0}j=g+5|0;f[a>>2]=j;k=b[d>>0]|0;l=g+6|0;f[a>>2]=l;j=b[j>>0]|0;d=g+7|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+4>>2]=(j&255)<<8|k&255|(l&255)<<16|(h[d>>0]|0)<<24;d=g+12|0;if(d>>>0>i>>>0){l=0;return l|0}i=g+9|0;f[a>>2]=i;j=b[e>>0]|0;k=g+10|0;f[a>>2]=k;i=b[i>>0]|0;l=g+11|0;f[a>>2]=l;k=b[k>>0]|0;f[a>>2]=d;f[c+8>>2]=(i&255)<<8|j&255|(k&255)<<16|(h[l>>0]|0)<<24;l=1;return l|0}function i$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;g=f[a>>2]|0;d=g+4|0;i=f[a+4>>2]|0;if(d>>>0>i>>>0){i=0;return i|0}l=g+1|0;f[a>>2]=l;k=b[g>>0]|0;j=g+2|0;f[a>>2]=j;l=b[l>>0]|0;e=g+3|0;f[a>>2]=e;j=b[j>>0]|0;f[a>>2]=d;f[c>>2]=(l&255)<<8|k&255|(j&255)<<16|(h[e>>0]|0)<<24;e=g+8|0;if(e>>>0>i>>>0){l=0;return l|0}j=g+5|0;f[a>>2]=j;k=b[d>>0]|0;l=g+6|0;f[a>>2]=l;j=b[j>>0]|0;d=g+7|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+4>>2]=(j&255)<<8|k&255|(l&255)<<16|(h[d>>0]|0)<<24;d=g+12|0;if(d>>>0>i>>>0){l=0;return l|0}i=g+9|0;f[a>>2]=i;j=b[e>>0]|0;k=g+10|0;f[a>>2]=k;i=b[i>>0]|0;l=g+11|0;f[a>>2]=l;k=b[k>>0]|0;f[a>>2]=d;f[c+8>>2]=(i&255)<<8|j&255|(k&255)<<16|(h[l>>0]|0)<<24;l=1;return l|0}function j$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=f[a>>2]|0;c=d+8|0;e=f[a+4>>2]|0;if(c>>>0>e>>>0){g=0;return g|0}s=d+1|0;f[a>>2]=s;r=h[d>>0]|0;q=d+2|0;f[a>>2]=q;s=Frb(h[s>>0]|0|0,0,8)|0;l=I;p=d+3|0;f[a>>2]=p;q=Frb(h[q>>0]|0|0,0,16)|0;l=l|I;k=d+4|0;f[a>>2]=k;p=Frb(h[p>>0]|0|0,0,24)|0;l=l|I;o=d+5|0;f[a>>2]=o;k=h[k>>0]|0;n=d+6|0;f[a>>2]=n;o=Frb(h[o>>0]|0|0,0,40)|0;j=I;m=d+7|0;f[a>>2]=m;n=Frb(h[n>>0]|0|0,0,48)|0;i=I;f[a>>2]=c;m=Frb(h[m>>0]|0|0,0,56)|0;g=b;f[g>>2]=s|r|q|p|o|n|m;f[g+4>>2]=l|k|j|i|I;g=d+16|0;if(g>>>0>e>>>0){s=0;return s|0}i=d+9|0;f[a>>2]=i;j=h[c>>0]|0;k=d+10|0;f[a>>2]=k;i=Frb(h[i>>0]|0|0,0,8)|0;p=I;l=d+11|0;f[a>>2]=l;k=Frb(h[k>>0]|0|0,0,16)|0;p=p|I;q=d+12|0;f[a>>2]=q;l=Frb(h[l>>0]|0|0,0,24)|0;p=p|I;m=d+13|0;f[a>>2]=m;q=h[q>>0]|0;n=d+14|0;f[a>>2]=n;m=Frb(h[m>>0]|0|0,0,40)|0;r=I;o=d+15|0;f[a>>2]=o;n=Frb(h[n>>0]|0|0,0,48)|0;s=I;f[a>>2]=g;o=Frb(h[o>>0]|0|0,0,56)|0;c=b+8|0;f[c>>2]=i|j|k|l|m|n|o;f[c+4>>2]=p|q|r|s|I;c=d+24|0;if(c>>>0>e>>>0){s=0;return s|0}o=d+17|0;f[a>>2]=o;i=h[g>>0]|0;j=d+18|0;f[a>>2]=j;g=Frb(h[o>>0]|0|0,0,8)|0;o=I;k=d+19|0;f[a>>2]=k;j=Frb(h[j>>0]|0|0,0,16)|0;o=o|I;p=d+20|0;f[a>>2]=p;k=Frb(h[k>>0]|0|0,0,24)|0;o=o|I;l=d+21|0;f[a>>2]=l;p=h[p>>0]|0;m=d+22|0;f[a>>2]=m;l=Frb(h[l>>0]|0|0,0,40)|0;q=I;n=d+23|0;f[a>>2]=n;m=Frb(h[m>>0]|0|0,0,48)|0;r=I;f[a>>2]=c;n=Frb(h[n>>0]|0|0,0,56)|0;s=b+16|0;f[s>>2]=g|i|j|k|l|m|n;f[s+4>>2]=o|p|q|r|I;s=1;return s|0}function k$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;p=u;u=u+16|0;n=p;d=f[a>>2]|0;e=d+4|0;o=a+4|0;i=f[o>>2]|0;if(e>>>0>i>>>0){o=0;u=p;return o|0}j=d+1|0;f[a>>2]=j;k=b[d>>0]|0;l=d+2|0;f[a>>2]=l;j=b[j>>0]|0;m=d+3|0;f[a>>2]=m;l=b[l>>0]|0;f[a>>2]=e;m=(j&255)<<8|k&255|(l&255)<<16|(h[m>>0]|0)<<24;if(!m){o=1;u=p;return o|0}l=n;f[l>>2]=0;f[l+4>>2]=0;d=d+12|0;a:do if(d>>>0<=i>>>0){l=0;while(1){B=e+1|0;f[a>>2]=B;A=b[e>>0]|0;z=e+2|0;f[a>>2]=z;B=b[B>>0]|0;y=e+3|0;f[a>>2]=y;z=b[z>>0]|0;r=e+4|0;f[a>>2]=r;y=b[y>>0]|0;x=e+5|0;f[a>>2]=x;r=b[r>>0]|0;w=e+6|0;f[a>>2]=w;x=b[x>>0]|0;v=e+7|0;f[a>>2]=v;w=b[w>>0]|0;f[a>>2]=d;v=Frb(h[v>>0]|0|0,0,56)|0;k=I;w=Frb(w&255|0,0,48)|0;j=I;x=Frb(x&255|0,0,40)|0;q=I;y=Frb(y&255|0,0,24)|0;s=I;z=Frb(z&255|0,0,16)|0;t=I;B=Frb(B&255|0,0,8)|0;g=n;f[g>>2]=B|A&255|z|y|x|w|v;f[g+4>>2]=I|t|s|r&255|q|j|k;g=e+12|0;if(g>>>0>i>>>0)break a;j=e+9|0;f[a>>2]=j;i=b[d>>0]|0;d=e+10|0;f[a>>2]=d;j=b[j>>0]|0;k=e+11|0;f[a>>2]=k;d=b[d>>0]|0;f[a>>2]=g;k=(j&255)<<8|i&255|(d&255)<<16|(h[k>>0]|0)<<24;d=l$a(c,n)|0;i=d+4|0;j=f[i>>2]|0;e=f[d>>2]|0;g=j-e|0;if(k>>>0>g>>>0){SAa(d,k-g|0);e=f[d>>2]|0}else if(k>>>0<g>>>0){d=e+k|0;if((d|0)!=(j|0))f[i>>2]=d}d=f[a>>2]|0;if((d+k|0)>>>0>(f[o>>2]|0)>>>0)break a;if(k|0){f[a>>2]=d+1;b[e>>0]=b[d>>0]|0;if((k|0)!=1){d=1;do{B=f[a>>2]|0;f[a>>2]=B+1;b[e+d>>0]=b[B>>0]|0;d=d+1|0}while((d|0)!=(k|0))}}l=l+1|0;if(l>>>0>=m>>>0){d=1;break}e=f[a>>2]|0;i=f[o>>2]|0;d=n;f[d>>2]=0;f[d+4>>2]=0;d=e+8|0;if(d>>>0>i>>>0)break a}u=p;return d|0}while(0);B=0;u=p;return B|0}function l$a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;j=b;i=f[j>>2]|0;j=f[j+4>>2]|0;k=X(i,1540483477)|0;p=X(j,1540483477)|0;p=(X((X(k>>>24^k,1540483477)|0)^-561034072,1540483477)|0)^(X(p>>>24^p,1540483477)|0);p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;k=a+4|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(m)b=0;else{g=l+-1|0;c=(g&l|0)==0;if(c)h=p&g;else if(p>>>0<l>>>0)h=p;else h=(p>>>0)%(l>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}o=f[b+4>>2]|0;if(!((o|0)==(p|0)|(o&g|0)==(h|0))){b=h;break a}o=b+8|0}while(!((f[o>>2]|0)==(i|0)?(f[o+4>>2]|0)==(j|0):0));a=b+16|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(p|0)){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}o=b+8|0}while(!((f[o>>2]|0)==(i|0)?(f[o+4>>2]|0)==(j|0):0));a=b+16|0;return a|0}}while(0);o=Wpb(32)|0;h=o+8|0;f[h>>2]=i;f[h+4>>2]=j;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;f[o+4>>2]=p;f[o>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(m|e*+(l>>>0)<d){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;c=~~+W(+(d/e))>>>0;m$a(a,b>>>0<c>>>0?c:b);b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&p;break}if(p>>>0<b>>>0){g=b;b=p}else{g=b;b=(p>>>0)%(b>>>0)|0}}else g=l;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[o>>2]=f[b>>2];f[b>>2]=o;f[c>>2]=b;b=f[o>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;q=30}}else{f[o>>2]=f[b>>2];q=30}if((q|0)==30)f[b>>2]=o;f[h>>2]=(f[h>>2]|0)+1;a=o;a=a+16|0;return a|0}function m$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){n$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;n$a(a,b);return}function n$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;o=i;n=h+8|0;if((f[o>>2]|0)==(f[n>>2]|0)?(f[o+4>>2]|0)==(f[n+4>>2]|0):0)e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;n=h;o=i+8|0;if((f[n>>2]|0)==(f[o>>2]|0)?(f[n+4>>2]|0)==(f[o+4>>2]|0):0)e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function o$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;q=s;d=f[a>>2]|0;e=d+4|0;r=a+4|0;g=f[r>>2]|0;if(e>>>0>g>>>0){r=0;u=s;return r|0}n=d+1|0;f[a>>2]=n;o=b[d>>0]|0;p=d+2|0;f[a>>2]=p;n=b[n>>0]|0;l=d+3|0;f[a>>2]=l;p=b[p>>0]|0;f[a>>2]=e;l=(n&255)<<8|o&255|(p&255)<<16|h[l>>0]<<24;if(!l){r=1;u=s;return r|0}m=q+4|0;n=m+11|0;o=c+4|0;p=c+8|0;d=0;while(1){f[q>>2]=-1;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;i=e+4|0;do if(i>>>0>g>>>0)e=1;else{f[a>>2]=e+1;j=b[e>>0]|0;f[a>>2]=i;k=e+8|0;if(k>>>0>g>>>0)e=1;else{v=e+5|0;f[a>>2]=v;t=b[i>>0]|0;g=e+6|0;f[a>>2]=g;v=b[v>>0]|0;i=e+7|0;f[a>>2]=i;g=b[g>>0]|0;f[a>>2]=k;f[q>>2]=(v&255)<<8|t&255|(g&255)<<16|h[i>>0]<<24;if(j&1)if(!(g$a(a,m)|0)){e=1;break}e=f[o>>2]|0;if((e|0)==(f[p>>2]|0)){p$a(c,q);e=0;break}else{f[e>>2]=f[q>>2];cqb(e+4|0,m);f[o>>2]=(f[o>>2]|0)+16;e=0;break}}}while(0);if((b[n>>0]|0)<0)Zpb(f[m>>2]|0);d=d+1|0;if(e|0){d=0;e=16;break}if(d>>>0>=l>>>0){d=1;e=16;break}e=f[a>>2]|0;g=f[r>>2]|0}if((e|0)==16){u=s;return d|0}return 0}function p$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+4|0;d=f[a>>2]|0;i=(f[k>>2]|0)-d>>4;e=i+1|0;if(e>>>0>268435455)fob(a);l=a+8|0;j=(f[l>>2]|0)-d|0;d=j>>3;d=j>>4>>>0<134217727?(d>>>0<e>>>0?e:d):268435455;do if(!d)h=0;else if(d>>>0>268435455)ud();else{h=Wpb(d<<4)|0;break}while(0);e=h+(i<<4)|0;g=e;j=h+(d<<4)|0;f[e>>2]=f[c>>2];cqb(h+(i<<4)+4|0,c+4|0);i=e+16|0;h=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(h|0)){e=g;c=h;d=h}else{do{c=d;d=d+-16|0;f[e+-16>>2]=f[d>>2];m=e+-12|0;c=c+-12|0;f[m>>2]=f[c>>2];f[m+4>>2]=f[c+4>>2];f[m+8>>2]=f[c+8>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;e=g+-16|0;g=e}while((d|0)!=(h|0));e=g;c=f[a>>2]|0;d=f[k>>2]|0}f[a>>2]=e;f[k>>2]=i;f[l>>2]=j;g=c;if((d|0)!=(g|0))do{e=d+-12|0;d=d+-16|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0)}while((d|0)!=(g|0));if(!c)return;Zpb(c);return}function q$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;n=p;e=f[a>>2]|0;d=e+1|0;o=a+4|0;g=f[o>>2]|0;if(d>>>0>g>>>0){o=0;u=p;return o|0}f[a>>2]=d;b[c>>0]=(b[e>>0]|0)!=0&1;i=e+5|0;if(i>>>0>g>>>0){o=0;u=p;return o|0}j=e+2|0;f[a>>2]=j;l=b[d>>0]|0;m=e+3|0;f[a>>2]=m;j=b[j>>0]|0;k=e+4|0;f[a>>2]=k;m=b[m>>0]|0;f[a>>2]=i;k=(j&255)<<8|l&255|(m&255)<<16|h[k>>0]<<24;if(!k){o=1;u=p;return o|0}l=c+8|0;m=c+12|0;j=c+4|0;f[n>>2]=0;d=e+9|0;a:do if(d>>>0<=g>>>0){e=0;c=i;while(1){q=c+1|0;f[a>>2]=q;g=b[c>>0]|0;i=c+2|0;f[a>>2]=i;q=b[q>>0]|0;c=c+3|0;f[a>>2]=c;i=b[i>>0]|0;f[a>>2]=d;d=(q&255)<<8|g&255|(i&255)<<16|h[c>>0]<<24;f[n>>2]=d;c=f[l>>2]|0;if((c|0)==(f[m>>2]|0))BD(j,n);else{f[c>>2]=d;f[l>>2]=c+4}e=e+1|0;if(e>>>0>=k>>>0){d=1;break}c=f[a>>2]|0;q=f[o>>2]|0;f[n>>2]=0;d=c+4|0;if(d>>>0>q>>>0)break a}u=p;return d|0}while(0);q=0;u=p;return q|0}function r$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;n=p;e=f[a>>2]|0;d=e+1|0;o=a+4|0;g=f[o>>2]|0;if(d>>>0>g>>>0){o=0;u=p;return o|0}f[a>>2]=d;b[c>>0]=(b[e>>0]|0)!=0&1;i=e+5|0;if(i>>>0>g>>>0){o=0;u=p;return o|0}j=e+2|0;f[a>>2]=j;l=b[d>>0]|0;m=e+3|0;f[a>>2]=m;j=b[j>>0]|0;k=e+4|0;f[a>>2]=k;m=b[m>>0]|0;f[a>>2]=i;k=(j&255)<<8|l&255|(m&255)<<16|h[k>>0]<<24;if(!k){o=1;u=p;return o|0}l=c+8|0;m=c+12|0;j=c+4|0;f[n>>2]=0;d=e+9|0;a:do if(d>>>0<=g>>>0){e=0;c=i;while(1){q=c+1|0;f[a>>2]=q;g=b[c>>0]|0;i=c+2|0;f[a>>2]=i;q=b[q>>0]|0;c=c+3|0;f[a>>2]=c;i=b[i>>0]|0;f[a>>2]=d;d=(q&255)<<8|g&255|(i&255)<<16|h[c>>0]<<24;f[n>>2]=d;c=f[l>>2]|0;if((c|0)==(f[m>>2]|0))BD(j,n);else{f[c>>2]=d;f[l>>2]=c+4}e=e+1|0;if(e>>>0>=k>>>0){d=1;break}c=f[a>>2]|0;q=f[o>>2]|0;f[n>>2]=0;d=c+4|0;if(d>>>0>q>>>0)break a}u=p;return d|0}while(0);q=0;u=p;return q|0}function s$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+64|0;z=B;d=f[a>>2]|0;e=d+4|0;A=a+4|0;i=f[A>>2]|0;if(e>>>0>i>>>0){A=1;u=B;return A|0}w=d+1|0;f[a>>2]=w;x=b[d>>0]|0;y=d+2|0;f[a>>2]=y;w=b[w>>0]|0;k=d+3|0;f[a>>2]=k;y=b[y>>0]|0;f[a>>2]=e;k=(w&255)<<8|x&255|(y&255)<<16|h[k>>0]<<24;if(!k){A=1;u=B;return A|0}l=z+4|0;m=z+24|0;n=z+28|0;o=z+32|0;p=z+40|0;q=z+44|0;r=z+48|0;s=l+11|0;t=z+16|0;v=c+4|0;w=c+8|0;x=z+36|0;y=z+20|0;d=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[m>>2]=0;f[n>>2]=0;f[o>>2]=0;f[p>>2]=0;f[q>>2]=0;f[r>>2]=0;g=e+4|0;if(g>>>0>i>>>0)e=1;else{f[a>>2]=e+1;j=b[e>>0]|0;f[a>>2]=g;j=j&255;e=e+5|0;do if(e>>>0>i>>>0)e=1;else{f[a>>2]=e;b[z>>0]=(b[g>>0]|0)!=0&1;if(j&1){if(!(g$a(a,l)|0)){e=1;break}e=f[a>>2]|0;i=f[A>>2]|0}g=e+1|0;if(g>>>0>i>>>0)e=1;else{f[a>>2]=g;b[t>>0]=(b[e>>0]|0)!=0&1;if(j&2|0)if(!(q$a(a,y)|0)){e=1;break}if(j&4|0)if(!(r$a(a,x)|0)){e=1;break}e=f[v>>2]|0;if((e|0)==(f[w>>2]|0)){u$a(c,z);e=0;break}else{t$a(e,z);f[v>>2]=(f[v>>2]|0)+52;e=0;break}}}while(0);g=f[p>>2]|0;if(g){i=f[q>>2]|0;if((i|0)!=(g|0))f[q>>2]=i+(~((i+-4-g|0)>>>2)<<2);Zpb(g)}}g=f[m>>2]|0;if(g|0){i=f[n>>2]|0;if((i|0)!=(g|0))f[n>>2]=i+(~((i+-4-g|0)>>>2)<<2);Zpb(g)}if((b[s>>0]|0)<0)Zpb(f[l>>2]|0);d=d+1|0;if(e|0){d=0;e=30;break}if(d>>>0>=k>>>0){d=1;e=30;break}e=f[a>>2]|0;i=f[A>>2]|0}if((e|0)==30){u=B;return d|0}return 0}function t$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;b[a>>0]=b[c>>0]|0;cqb(a+4|0,c+4|0);b[a+16>>0]=b[c+16>>0]|0;b[a+20>>0]=b[c+20>>0]|0;e=a+24|0;g=c+24|0;f[e>>2]=0;k=a+28|0;f[k>>2]=0;f[a+32>>2]=0;i=c+28|0;d=(f[i>>2]|0)-(f[g>>2]|0)|0;h=d>>2;if(h|0){if(h>>>0>1073741823)fob(e);j=Wpb(d)|0;f[k>>2]=j;f[e>>2]=j;f[a+32>>2]=j+(h<<2);e=f[g>>2]|0;d=(f[i>>2]|0)-e|0;if((d|0)>0){Irb(j|0,e|0,d|0)|0;f[k>>2]=j+(d>>>2<<2)}}b[a+36>>0]=b[c+36>>0]|0;g=a+40|0;h=c+40|0;f[g>>2]=0;k=a+44|0;f[k>>2]=0;f[a+48>>2]=0;i=c+44|0;d=(f[i>>2]|0)-(f[h>>2]|0)|0;e=d>>2;if(!e)return;if(e>>>0>1073741823)fob(g);j=Wpb(d)|0;f[k>>2]=j;f[g>>2]=j;f[a+48>>2]=j+(e<<2);e=f[h>>2]|0;d=(f[i>>2]|0)-e|0;if((d|0)<=0)return;Irb(j|0,e|0,d|0)|0;f[k>>2]=j+(d>>>2<<2);return}function u$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;m=o;n=a+4|0;d=f[a>>2]|0;g=((f[n>>2]|0)-d|0)/52|0;e=g+1|0;if(e>>>0>82595524)fob(a);l=a+8|0;j=((f[l>>2]|0)-d|0)/52|0;k=j<<1;e=j>>>0<41297762?(k>>>0<e>>>0?e:k):82595524;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!e)h=0;else if(e>>>0>82595524)ud();else{h=Wpb(e*52|0)|0;break}while(0);f[m>>2]=h;d=h+(g*52|0)|0;j=m+8|0;k=m+4|0;f[k>>2]=d;h=h+(e*52|0)|0;i=m+12|0;f[i>>2]=h;t$a(d,c);g=d+52|0;f[j>>2]=g;c=f[a>>2]|0;e=f[n>>2]|0;if((e|0)==(c|0)){q=d;d=j;j=c;p=g;g=e;c=h;h=q;f[a>>2]=h;f[k>>2]=j;f[n>>2]=p;f[d>>2]=g;n=f[l>>2]|0;f[l>>2]=c;f[i>>2]=n;f[m>>2]=j;v$a(m);u=o;return}do{h=e;e=e+-52|0;b[d+-52>>0]=b[e>>0]|0;p=d+-48|0;q=h+-48|0;f[p>>2]=f[q>>2];f[p+4>>2]=f[q+4>>2];f[p+8>>2]=f[q+8>>2];f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;b[d+-36>>0]=b[h+-36>>0]|0;b[d+-32>>0]=b[h+-32>>0]|0;q=d+-28|0;p=h+-28|0;f[q>>2]=0;g=d+-24|0;f[g>>2]=0;f[d+-20>>2]=0;f[q>>2]=f[p>>2];q=h+-24|0;f[g>>2]=f[q>>2];g=h+-20|0;f[d+-20>>2]=f[g>>2];f[g>>2]=0;f[q>>2]=0;f[p>>2]=0;b[d+-16>>0]=b[h+-16>>0]|0;p=d+-12|0;q=h+-12|0;f[p>>2]=0;g=d+-8|0;f[g>>2]=0;f[d+-4>>2]=0;f[p>>2]=f[q>>2];p=h+-8|0;f[g>>2]=f[p>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[p>>2]=0;f[q>>2]=0;d=(f[k>>2]|0)+-52|0;f[k>>2]=d}while((e|0)!=(c|0));e=d;p=i;c=j;q=f[a>>2]|0;g=f[j>>2]|0;h=f[n>>2]|0;j=f[i>>2]|0;i=e;f[a>>2]=i;f[k>>2]=q;f[n>>2]=g;f[c>>2]=h;n=f[l>>2]|0;f[l>>2]=j;f[p>>2]=n;f[m>>2]=q;v$a(m);u=o;return}function v$a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=f[a+4>>2]|0;i=a+8|0;c=f[i>>2]|0;if((c|0)!=(h|0))do{f[i>>2]=c+-52;g=f[c+-12>>2]|0;if(g|0){d=c+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g)}d=f[c+-28>>2]|0;if(d|0){e=c+-24|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Zpb(d)}c=c+-48|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=f[i>>2]|0}while((c|0)!=(h|0));c=f[a>>2]|0;if(!c)return;Zpb(c);return}function w$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=f[a>>2]|0;d=i+4|0;m=a+4|0;e=f[m>>2]|0;if(d>>>0>e>>>0){c=0;return c|0}g=i+3|0;f[a>>2]=g;l=b[i+2>>0]|0;f[a>>2]=d;g=b[g>>0]|0;if(l<<24>>24>-1){c=0;return c|0}j=i+8|0;if(j>>>0>e>>>0){c=0;return c|0}n=i+5|0;f[a>>2]=n;d=b[d>>0]|0;k=i+6|0;f[a>>2]=k;n=b[n>>0]|0;l=i+7|0;f[a>>2]=l;k=b[k>>0]|0;f[a>>2]=j;l=(n&255)<<8|d&255|(k&255)<<16|h[l>>0]<<24;f[c>>2]=l;if(l>>>0>=4){n=0;return n|0}do if(!(g&64)){k=0;d=j}else{d=i+12|0;if(d>>>0>e>>>0){n=0;return n|0}else{f[a>>2]=i+9;k=b[j>>0]|0;f[a>>2]=d;k=k&4;break}}while(0);g=d+4|0;if(g>>>0>e>>>0){n=0;return n|0}o=d+1|0;f[a>>2]=o;i=b[d>>0]|0;n=d+2|0;f[a>>2]=n;o=b[o>>0]|0;j=d+3|0;f[a>>2]=j;n=b[n>>0]|0;f[a>>2]=g;f[c+20>>2]=(o&255)<<8|i&255|(n&255)<<16|h[j>>0]<<24;j=d+5|0;if(j>>>0>e>>>0){o=0;return o|0}f[a>>2]=j;b[c+24>>0]=(b[g>>0]|0)!=0&1;i=c+25|0;if(!l)b[i>>0]=1;else{g=d+6|0;if(g>>>0>e>>>0){o=0;return o|0}f[a>>2]=g;b[i>>0]=(b[j>>0]|0)!=0&1;if(l>>>0>2){do if((k|0)==4)if(g$a(a,c+4|0)|0){g=f[a>>2]|0;e=f[m>>2]|0;break}else{o=0;return o|0}while(0);d=g+4|0;if(d>>>0>e>>>0){o=0;return o|0}l=g+1|0;f[a>>2]=l;m=b[g>>0]|0;n=g+2|0;f[a>>2]=n;l=b[l>>0]|0;o=g+3|0;f[a>>2]=o;n=b[n>>0]|0;f[a>>2]=d;f[c+16>>2]=(l&255)<<8|m&255|(n&255)<<16|h[o>>0]<<24;o=1;return o|0}}f[c+16>>2]=0;o=1;return o|0}function x$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0;j=f[a>>2]|0;d=j+4|0;k=f[a+4>>2]|0;if(d>>>0>k>>>0){k=0;return k|0}l=j+1|0;f[a>>2]=l;g=b[j>>0]|0;i=j+2|0;f[a>>2]=i;l=b[l>>0]|0;e=j+3|0;f[a>>2]=e;i=b[i>>0]|0;f[a>>2]=d;f[c>>2]=(l&255)<<8|g&255|(i&255)<<16|(h[e>>0]|0)<<24;e=j+8|0;if(e>>>0>k>>>0){l=0;return l|0}g=j+5|0;f[a>>2]=g;i=b[d>>0]|0;l=j+6|0;f[a>>2]=l;g=b[g>>0]|0;d=j+7|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+4>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[d>>0]|0)<<24;d=j+12|0;if(d>>>0>k>>>0){l=0;return l|0}g=j+9|0;f[a>>2]=g;i=b[e>>0]|0;l=j+10|0;f[a>>2]=l;g=b[g>>0]|0;e=j+11|0;f[a>>2]=e;l=b[l>>0]|0;f[a>>2]=d;f[c+8>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[e>>0]|0)<<24;e=j+16|0;if(e>>>0>k>>>0){l=0;return l|0}g=j+13|0;f[a>>2]=g;i=b[d>>0]|0;l=j+14|0;f[a>>2]=l;g=b[g>>0]|0;d=j+15|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+16>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[d>>0]|0)<<24;d=j+20|0;if(d>>>0>k>>>0){l=0;return l|0}g=j+17|0;f[a>>2]=g;i=b[e>>0]|0;l=j+18|0;f[a>>2]=l;g=b[g>>0]|0;e=j+19|0;f[a>>2]=e;l=b[l>>0]|0;f[a>>2]=d;f[c+20>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[e>>0]|0)<<24;e=j+24|0;if(e>>>0>k>>>0){l=0;return l|0}g=j+21|0;f[a>>2]=g;i=b[d>>0]|0;l=j+22|0;f[a>>2]=l;g=b[g>>0]|0;d=j+23|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+24>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[d>>0]|0)<<24;d=j+28|0;if(d>>>0>k>>>0){l=0;return l|0}g=j+25|0;f[a>>2]=g;i=b[e>>0]|0;l=j+26|0;f[a>>2]=l;g=b[g>>0]|0;e=j+27|0;f[a>>2]=e;l=b[l>>0]|0;f[a>>2]=d;f[c+32>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[e>>0]|0)<<24;e=j+32|0;if(e>>>0>k>>>0){l=0;return l|0}g=j+29|0;f[a>>2]=g;i=b[d>>0]|0;l=j+30|0;f[a>>2]=l;g=b[g>>0]|0;d=j+31|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=e;f[c+36>>2]=(g&255)<<8|i&255|(l&255)<<16|(h[d>>0]|0)<<24;d=j+36|0;if(d>>>0>k>>>0){l=0;return l|0}g=j+33|0;f[a>>2]=g;i=b[e>>0]|0;l=j+34|0;f[a>>2]=l;e=b[g>>0]|0;g=j+35|0;f[a>>2]=g;l=b[l>>0]|0;f[a>>2]=d;f[c+40>>2]=(e&255)<<8|i&255|(l&255)<<16|(h[g>>0]|0)<<24;g=j+40|0;if(g>>>0>k>>>0){l=0;return l|0}i=c+48|0;m=j+37|0;f[a>>2]=m;e=b[d>>0]|0;l=j+38|0;f[a>>2]=l;m=b[m>>0]|0;d=j+39|0;f[a>>2]=d;l=b[l>>0]|0;f[a>>2]=g;f[i>>2]=(m&255)<<8|e&255|(l&255)<<16|(h[d>>0]|0)<<24;d=j+44|0;if(d>>>0>k>>>0){m=0;return m|0}e=c+52|0;o=j+41|0;f[a>>2]=o;g=b[g>>0]|0;l=j+42|0;f[a>>2]=l;o=b[o>>0]|0;m=j+43|0;f[a>>2]=m;l=b[l>>0]|0;f[a>>2]=d;f[e>>2]=(o&255)<<8|g&255|(l&255)<<16|(h[m>>0]|0)<<24;d=j+48|0;if(d>>>0>k>>>0){o=0;return o|0}f[a>>2]=d;n[i>>2]=0.0;n[e>>2]=0.0;n[c+56>>2]=0.0;n[c+60>>2]=1.0;o=1;return o|0}function y$a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;f[d>>2]=-1;j=f[c>>2]|0;do if(j&1|0){e=f[a>>2]|0;g=e+4|0;if(g>>>0>(f[a+4>>2]|0)>>>0){j=0;return j|0}else{l=e+1|0;f[a>>2]=l;k=b[e>>0]|0;m=e+2|0;f[a>>2]=m;l=b[l>>0]|0;i=e+3|0;f[a>>2]=i;e=b[m>>0]|0;f[a>>2]=g;f[d>>2]=(l&255)<<8|k&255|(e&255)<<16|h[i>>0]<<24;break}}while(0);e=d+8|0;g=e+11|0;if((b[g>>0]|0)<0){b[f[e>>2]>>0]=0;f[d+12>>2]=0}else{b[e>>0]=0;b[g>>0]=0}if(j&2|0)if(!(g$a(a,e)|0)){m=0;return m|0}i=d+4|0;f[i>>2]=1073741824;if(j&4|0){e=f[a>>2]|0;g=e+1|0;if(g>>>0>(f[a+4>>2]|0)>>>0){m=0;return m|0}f[a>>2]=g;e=b[e>>0]|0;if(!(e&2)){f[i>>2]=0;g=536870912}else g=1610612736;if(e&1|0)f[i>>2]=g}if(j&8|0)if(!(x$a(a,d+20|0)|0)){m=0;return m|0}do if(j&256|0){e=f[a>>2]|0;g=e+4|0;if(g>>>0>(f[a+4>>2]|0)>>>0){m=0;return m|0}else{i=e+1|0;f[a>>2]=i;k=b[e>>0]|0;l=e+2|0;f[a>>2]=l;i=b[i>>0]|0;m=e+3|0;f[a>>2]=m;l=b[l>>0]|0;f[a>>2]=g;f[d+84>>2]=(i&255)<<8|k&255|(l&255)<<16|h[m>>0]<<24;break}}while(0);if(j&33554432|0)if(!(g$a(a,d+116|0)|0)){m=0;return m|0}do if(j&67108864|0){e=f[a>>2]|0;g=e+4|0;if(g>>>0>(f[a+4>>2]|0)>>>0){m=0;return m|0}else{i=e+1|0;f[a>>2]=i;k=b[e>>0]|0;l=e+2|0;f[a>>2]=l;i=b[i>>0]|0;m=e+3|0;f[a>>2]=m;l=b[l>>0]|0;f[a>>2]=g;f[d+128>>2]=(i&255)<<8|k&255|(l&255)<<16|h[m>>0]<<24;break}}while(0);e=f[c+4>>2]|0;do if(e&16|0){g=f[a>>2]|0;i=g+4|0;if(i>>>0>(f[a+4>>2]|0)>>>0){m=0;return m|0}else{c=g+1|0;f[a>>2]=c;k=b[g>>0]|0;l=g+2|0;f[a>>2]=l;c=b[c>>0]|0;m=g+3|0;f[a>>2]=m;l=b[l>>0]|0;f[a>>2]=i;f[d+132>>2]=(c&255)<<8|k&255|(l&255)<<16|h[m>>0]<<24;break}}while(0);if(e&32|0)if(!(g$a(a,d+136|0)|0)){m=0;return m|0}if(j&536870912|0)if(!(k$a(a,d+148|0)|0)){m=0;return m|0}m=1;return m|0}function z$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;l=o+8|0;k=o;e=f[a>>2]|0;g=e+4|0;n=a+4|0;i=f[n>>2]|0;if(g>>>0>i>>>0){n=0;u=o;return n|0}p=e+1|0;f[a>>2]=p;j=b[e>>0]|0;m=e+2|0;f[a>>2]=m;p=b[p>>0]|0;d=e+3|0;f[a>>2]=d;m=b[m>>0]|0;f[a>>2]=g;d=(h[d>>0]|0)<<24;m=(m&255)<<16;j=(p&255)<<8|j&255|m|d;do if(!(d&1073741824)){d=0;e=0}else{d=e+8|0;if(d>>>0>i>>>0){p=0;u=o;return p|0}else{q=e+5|0;f[a>>2]=q;i=b[g>>0]|0;p=e+6|0;f[a>>2]=p;g=b[q>>0]|0;e=e+7|0;f[a>>2]=e;p=b[p>>0]|0;f[a>>2]=d;d=0;e=(g&255)<<8|i&255|(p&255)<<16|(h[e>>0]|0)<<24;break}}while(0);q=k;f[q>>2]=d|j;f[q+4>>2]=e;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];if(!(y$a(a,l,c)|0)){q=0;u=o;return q|0}d=c+168|0;f[d>>2]=-1;do if(m&131072|0){e=f[a>>2]|0;g=e+4|0;if(g>>>0>(f[n>>2]|0)>>>0){q=0;u=o;return q|0}else{k=e+1|0;f[a>>2]=k;l=b[e>>0]|0;p=e+2|0;f[a>>2]=p;k=b[k>>0]|0;q=e+3|0;f[a>>2]=q;p=b[p>>0]|0;f[a>>2]=g;f[d>>2]=(k&255)<<8|l&255|(p&255)<<16|(h[q>>0]|0)<<24;break}}while(0);if(!(m&262144)){q=0;u=o;return q|0}d=f[a>>2]|0;e=d+4|0;if(e>>>0>(f[n>>2]|0)>>>0){q=0;u=o;return q|0}m=d+1|0;f[a>>2]=m;n=b[d>>0]|0;p=d+2|0;f[a>>2]=p;m=b[m>>0]|0;q=d+3|0;f[a>>2]=q;p=b[p>>0]|0;f[a>>2]=e;f[c+172>>2]=(m&255)<<8|n&255|(p&255)<<16|(h[q>>0]|0)<<24;f[c+176>>2]=0;q=1;u=o;return q|0}function A$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;q=s;e=f[a>>2]|0;g=e+4|0;r=a+4|0;i=f[r>>2]|0;if(g>>>0>i>>>0){r=0;u=s;return r|0}f[a>>2]=e+1;j=b[e>>0]|0;f[a>>2]=g;j=j&255;d=e+8|0;if(d>>>0>i>>>0){r=0;u=s;return r|0}n=e+5|0;f[a>>2]=n;o=b[g>>0]|0;p=e+6|0;f[a>>2]=p;n=b[n>>0]|0;e=e+7|0;f[a>>2]=e;p=b[p>>0]|0;f[a>>2]=d;f[c>>2]=(n&255)<<8|o&255|(p&255)<<16|h[e>>0]<<24;d=c+4|0;e=d+11|0;if((b[e>>0]|0)<0){b[f[d>>2]>>0]=0;f[c+8>>2]=0}else{b[d>>0]=0;b[e>>0]=0}if(j&1|0)if(!(g$a(a,d)|0)){r=0;u=s;return r|0}d=c+16|0;f[d>>2]=-1;do if(j&4|0){e=f[a>>2]|0;g=e+4|0;if(g>>>0>(f[r>>2]|0)>>>0){r=0;u=s;return r|0}else{m=e+1|0;f[a>>2]=m;n=b[e>>0]|0;o=e+2|0;f[a>>2]=o;m=b[m>>0]|0;p=e+3|0;f[a>>2]=p;o=b[o>>0]|0;f[a>>2]=g;f[d>>2]=(m&255)<<8|n&255|(o&255)<<16|h[p>>0]<<24;break}}while(0);d=z$a(a,c+20|0)|0;do if((j&8|0)!=0&d){p=c+24|0;d=f[p>>2]&1073741824;f[p>>2]=d}else if(d){d=f[c+24>>2]|0;break}else{r=0;u=s;return r|0}while(0);b[c+200>>0]=d>>>30&1;i=f[a>>2]|0;d=i+4|0;n=f[r>>2]|0;if(d>>>0>n>>>0){r=0;u=s;return r|0}m=i+1|0;f[a>>2]=m;o=b[i>>0]|0;p=i+2|0;f[a>>2]=p;m=b[m>>0]|0;g=i+3|0;f[a>>2]=g;p=b[p>>0]|0;f[a>>2]=d;f[c+204>>2]=(m&255)<<8|o&255|(p&255)<<16|h[g>>0]<<24;g=i+8|0;if(g>>>0>n>>>0){r=0;u=s;return r|0}e=i+5|0;f[a>>2]=e;p=b[d>>0]|0;d=i+6|0;f[a>>2]=d;e=b[e>>0]|0;o=i+7|0;f[a>>2]=o;d=b[d>>0]|0;f[a>>2]=g;f[c+208>>2]=(e&255)<<8|p&255|(d&255)<<16|h[o>>0]<<24;o=c+212|0;d=f[o>>2]|0;p=c+216|0;e=f[p>>2]|0;if((e|0)!=(d|0))f[p>>2]=e+(~(((e+-12-d|0)>>>0)/12|0)*12|0);if(!(j&2)){r=1;u=s;return r|0}e=i+12|0;if(e>>>0>n>>>0){r=0;u=s;return r|0}j=i+9|0;f[a>>2]=j;l=b[g>>0]|0;m=i+10|0;f[a>>2]=m;j=b[j>>0]|0;k=i+11|0;f[a>>2]=k;m=b[m>>0]|0;f[a>>2]=e;k=(j&255)<<8|l&255|(m&255)<<16|h[k>>0]<<24;f[q>>2]=0;a:do if(k|0){l=q+4|0;m=q+8|0;c=c+220|0;d=i+16|0;b:do if(d>>>0<=n>>>0){j=0;i=e;g=n;do{v=i+1|0;f[a>>2]=v;t=b[i>>0]|0;n=i+2|0;f[a>>2]=n;v=b[v>>0]|0;e=i+3|0;f[a>>2]=e;n=b[n>>0]|0;f[a>>2]=d;f[q>>2]=(v&255)<<8|t&255|(n&255)<<16|h[e>>0]<<24;e=i+5|0;if(e>>>0>g>>>0)break b;f[a>>2]=e;b[l>>0]=b[d>>0]|0;d=i+9|0;if(d>>>0>g>>>0)break b;g=i+6|0;f[a>>2]=g;n=b[e>>0]|0;t=i+7|0;f[a>>2]=t;g=b[g>>0]|0;v=i+8|0;f[a>>2]=v;t=b[t>>0]|0;f[a>>2]=d;f[m>>2]=(g&255)<<8|n&255|(t&255)<<16|h[v>>0]<<24;d=f[p>>2]|0;if((d|0)==(f[c>>2]|0))B$a(o,q);else{f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[p>>2]=(f[p>>2]|0)+12}j=j+1|0;if(j>>>0>=k>>>0)break a;i=f[a>>2]|0;g=f[r>>2]|0;d=i+4|0}while(d>>>0<=g>>>0)}while(0);v=0;u=s;return v|0}while(0);v=1;u=s;return v|0}function B$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function C$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0;o=0;v=u;u=u+1344|0;d=f[a>>2]|0;e=f[(a+4|0)>>2]|0;if((d+4|0)>>>0>e>>>0){t=0;u=v;return t|0}f[a>>2]=d+1|0;t=b[d>>0]|0;f[a>>2]=d+2;q=b[(d+1|0)>>0]|0;f[a>>2]=d+4|0;if((d+8|0)>>>0>e>>>0){t=0;u=v;return t|0}f[a>>2]=d+5|0;j=b[(d+4|0)>>0]|0;f[a>>2]=d+6|0;e=b[(d+5|0)>>0]|0;f[a>>2]=d+7|0;k=b[(d+6|0)>>0]|0;f[a>>2]=d+8|0;f[c>>2]=(e&255)<<8|j&255|(k&255)<<16|h[(d+7|0)>>0]<<24;if((b[((c+4|0)+11|0)>>0]|0)<0){b[f[(c+4|0)>>2]>>0]=0;f[c+8>>2]=0}else{b[(c+4|0)>>0]=0;b[((c+4|0)+11|0)>>0]=0}if(t&255&1|0)if(!(g$a(a,c+4|0)|0)){t=0;u=v;return t|0}f[(c+92|0)>>2]=0;a:do if(!((q&255)<<8&256)){k=b[((c+4|0)+11|0)>>0]|0;j=k<<24>>24<0?f[(c+4|0)>>2]|0:c+4|0;k=k<<24>>24<0?f[c+8>>2]|0:k&255;if((k|0)<17)m=0;else{e=j;d=k;while(1){d=d+-16|0;if(!d){m=0;break a}d=Hcb(e,35,d)|0;if(!d){m=0;break a}if(!(idb(d,192436,17)|0))break;e=d+1|0;d=(j+k|0)-e|0;if((d|0)<17){m=0;break a}}if((d|0)!=(j+k|0|0)&(d-j|0)!=-1){l=0;o=16}else m=0}}else{pqb(c+4|0,192417)|0;l=f[(c+92|0)>>2]|0;o=16}while(0);if((o|0)==16){m=l|134217728;f[(c+92|0)>>2]=m}if(((q&255)<<8&64512|0)!=15360)f[(c+92|0)>>2]=(q&255)<<13&1048576|((q&255)<<15&2097152|((q&255)<<17&4194304^4194304|((q&255)<<19&8388608^8388608|((q&255)<<21&16777216^16777216|((q&255)<<23&33554432^33554432|m)))));d=f[(c+16|0)>>2]|0;f[(c+16|0)>>2]=0;if(d|0)Zpb(d);do if(t&255&2|0){if(!(h$a(a,v+76|0)|0)){t=0;u=v;return t|0}if(!(h$a(a,v)|0)){t=0;u=v;return t|0}if(!(i$a(a,v+64|0)|0)){t=0;u=v;return t|0}l=f[a>>2]|0;d=f[(a+4|0)>>2]|0;if((l+4|0)>>>0>d>>>0){t=0;u=v;return t|0}f[a>>2]=l+1|0;o=b[l>>0]|0;f[a>>2]=l+2|0;m=b[(l+1|0)>>0]|0;f[a>>2]=l+3|0;k=b[(l+2|0)>>0]|0;f[a>>2]=l+4|0;k=(m&255)<<8|o&255|(k&255)<<16|h[(l+3|0)>>0]<<24;if((l+8|0)>>>0>d>>>0){t=0;u=v;return t|0}f[a>>2]=l+5|0;d=b[(l+4|0)>>0]|0;f[a>>2]=l+6|0;e=b[(l+5|0)>>0]|0;f[a>>2]=l+7|0;j=b[(l+6|0)>>0]|0;f[a>>2]=l+8|0;if((q&255)<<8&512|0)break;d=(e&255)<<8|d&255|(j&255)<<16|h[(l+7|0)>>0]<<24;f[(c+92|0)>>2]=f[(c+92|0)>>2]|67108864;o=Wpb(96)|0;F=+n[(v+76|0)>>2];E=+n[(v+76|0)+4>>2];C=+n[(v+76|0)+8>>2];B=+n[v>>2];A=+n[v+4>>2];z=+n[v+8>>2];y=+n[(v+64|0)>>2];x=+n[(v+64|0)+4>>2];w=+n[(v+64|0)+8>>2];g=(f[s>>2]=k,+n[s>>2]);i=(f[s>>2]=d,+n[s>>2]);f[o>>2]=0;f[o+4>>2]=2-((q&255)>>>7);p[o+8>>3]=F;p[o+16>>3]=E;p[o+24>>3]=C;p[o+32>>3]=B;p[o+40>>3]=A;p[o+48>>3]=z;p[o+56>>3]=y;p[o+64>>3]=x;p[o+72>>3]=w;p[o+80>>3]=g;p[o+88>>3]=i;d=f[(c+16|0)>>2]|0;f[(c+16|0)>>2]=o;if(d|0)Zpb(d);if(g<0.0|i<0.0){f[(c+92|0)>>2]=f[(c+92|0)>>2]|8192;break}else break}while(0);d=f[(c+20|0)>>2]|0;e=f[(c+24|0)>>2]|0;if((e|0)!=(d|0))f[(c+24|0)>>2]=e+(~((e+-4-d|0)>>>2)<<2);if(t&255&4|0){e=f[a>>2]|0;d=f[(a+4|0)>>2]|0;if((e+4|0)>>>0>d>>>0){t=0;u=v;return t|0}f[a>>2]=e+1|0;q=b[e>>0]|0;f[a>>2]=e+2|0;o=b[(e+1|0)>>0]|0;f[a>>2]=e+3|0;l=b[(e+2|0)>>0]|0;f[a>>2]=e+4|0;l=(o&255)<<8|q&255|(l&255)<<16|h[(e+3|0)>>0]<<24;f[(v+76|0)>>2]=0;b:do if(l|0){if((e+8|0)>>>0<=d>>>0){k=0;j=e+4|0;d=e+8|0;do{m=j+1|0;f[a>>2]=m;o=b[j>>0]|0;q=j+2|0;f[a>>2]=q;m=b[m>>0]|0;e=j+3|0;f[a>>2]=e;q=b[q>>0]|0;f[a>>2]=d;d=(m&255)<<8|o&255|(q&255)<<16|h[e>>0]<<24;f[(v+76|0)>>2]=d;e=f[(c+24|0)>>2]|0;if((e|0)==(f[(c+28|0)>>2]|0))D$a(c+20|0,v+76|0);else{f[e>>2]=d;f[(c+24|0)>>2]=e+4}k=k+1|0;if(k>>>0>=l>>>0)break b;j=f[a>>2]|0;d=j+4|0}while(d>>>0<=(f[(a+4|0)>>2]|0)>>>0)}t=0;u=v;return t|0}while(0)}d=f[(c+32|0)>>2]|0;f[(c+32|0)>>2]=0;if(d|0){KAa(d);Zpb(d)}f[v+112>>2]=a;f[v+120>>2]=c;f[v+192>>2]=r;f[v+320>>2]=t;f[v+1280>>2]=0;f[v+1284>>2]=0;q0a(v);G=f[v+1280>>2]|0;D=f[v+1284>>2]|0;H=+n[v+1284>>2];f[v+1280>>2]=0;f[v+1284>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function D$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function E$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{d=j+-1|0;c=(d&j|0)==0;if(c)h=d&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&d|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);l=Wpb(76)|0;f[l+8>>2]=m;c=l+12|0;d=c+64|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[l+4>>2]=m;f[l>>2]=0;h=a+12|0;e=+(((f[h>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(k|g*+(j>>>0)<e){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(e/g))>>>0;G$a(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&m;break}if(m>>>0<b>>>0){d=b;b=m}else{d=b;b=(m>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[l>>2]=f[b>>2];f[b>>2]=l;f[c>>2]=b;b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[l>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=l;f[h>>2]=(f[h>>2]|0)+1;a=l;a=a+12|0;return a|0}function F$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>5;c=e+1|0;if(c>>>0>134217727)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>4;d=m>>5>>>0<67108863?(d>>>0<c>>>0?c:d):134217727;do if(!d){h=0;i=0}else if(d>>>0>134217727)ud();else{i=Wpb(d<<5)|0;h=i;break}while(0);c=h+(e<<5)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];f[c+24>>2]=f[b+24>>2];f[c+28>>2]=f[b+28>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+32;f[l>>2]=h+(d<<5);if(!j)return;Zpb(j);return}function G$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){H$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;H$a(a,b);return}function H$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function I$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;q=0;r=u;u=u+2400|0;d=f[a>>2]|0;o=f[(a+4|0)>>2]|0;if((d+4|0)>>>0>o>>>0){t=0;u=r;return t|0}f[a>>2]=d+1|0;i=b[d>>0]|0;f[a>>2]=d+2|0;j=b[(d+1|0)>>0]|0;f[a>>2]=d+3|0;k=b[(d+2|0)>>0]|0;f[a>>2]=d+4|0;g=h[(d+3|0)>>0]<<24;do if(!(g&1073741824)){l=0;m=d+4|0;d=0}else if((d+8|0)>>>0>o>>>0){t=0;u=r;return t|0}else{f[a>>2]=d+5|0;w=b[(d+4|0)>>0]|0;f[a>>2]=d+6|0;x=b[(d+5|0)>>0]|0;f[a>>2]=d+7|0;v=b[(d+6|0)>>0]|0;f[a>>2]=d+8|0;l=0;m=d+8|0;d=(x&255)<<8|w&255|(v&255)<<16|h[(d+7|0)>>0]<<24;break}while(0);f[r+272>>2]=a;f[r+280>>2]=c;f[r+544>>2]=e;f[r+664>>2]=g;f[r+672>>2]=i;f[r+680>>2]=j;f[r+712>>2]=k;f[r+968>>2]=l;f[r+984>>2]=m;f[r+1504>>2]=d;f[r+1872>>2]=o;f[r+2176>>2]=p;f[r+2192>>2]=s;f[r+2200>>2]=t;f[r+2224>>2]=q;f[r+2272>>2]=0;f[r+2276>>2]=0;s0a(r);e=f[r+544>>2]|0;p=f[r+2176>>2]|0;s=f[r+2192>>2]|0;t=f[r+2200>>2]|0;G=f[r+2272>>2]|0;D=f[r+2276>>2]|0;H=+n[r+2276>>2];f[r+2272>>2]=0;f[r+2276>>2]=0;if((G|0)==6)return D|0;f[r+272>>2]=a;f[r+280>>2]=c;f[r+544>>2]=e;f[r+664>>2]=g;f[r+680>>2]=j;f[r+712>>2]=k;f[r+2176>>2]=p;f[r+2192>>2]=s;f[r+2200>>2]=t;f[r+2264>>2]=0;f[r+2268>>2]=0;r0a(r);G=f[r+2264>>2]|0;D=f[r+2268>>2]|0;H=+n[r+2268>>2];f[r+2264>>2]=0;f[r+2268>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function J$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){T$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;T$a(a,b);return}function K$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function L$a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=f[b+16>>2];m$a(a,f[b+4>>2]|0);b=f[b+8>>2]|0;if(!b)return;s=a+4|0;t=a+12|0;u=a+16|0;v=a+8|0;l=b;q=b;c=f[s>>2]|0;while(1){k=l+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;m=X(j,1540483477)|0;o=X(k,1540483477)|0;o=(X((X(m>>>24^m,1540483477)|0)^-561034072,1540483477)|0)^(X(o>>>24^o,1540483477)|0);o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;m=(c|0)==0;a:do if(m){b=0;r=19}else{i=c+-1|0;h=(i&c|0)==0;if(h)b=o&i;else if(o>>>0<c>>>0)b=o;else b=(o>>>0)%(c>>>0)|0;g=f[(f[a>>2]|0)+(b<<2)>>2]|0;if(!g)r=19;else{if(h)while(1){g=f[g>>2]|0;if(!g){r=19;break a}p=f[g+4>>2]|0;if(!((p|0)==(o|0)|(p&i|0)==(b|0))){r=19;break a}p=g+8|0;if((f[p>>2]|0)==(j|0)?(f[p+4>>2]|0)==(k|0):0)break a}do{g=f[g>>2]|0;if(!g){r=19;break a}h=f[g+4>>2]|0;if((h|0)!=(o|0)){if(h>>>0>=c>>>0)h=(h>>>0)%(c>>>0)|0;if((h|0)!=(b|0)){r=19;break a}}p=g+8|0}while(!((f[p>>2]|0)==(j|0)?(f[p+4>>2]|0)==(k|0):0))}}while(0);if((r|0)==19){r=0;p=Wpb(32)|0;i=p+8|0;f[i>>2]=j;f[i+4>>2]=k;i=p+16|0;f[i>>2]=0;j=p+20|0;f[j>>2]=0;k=p+24|0;f[k>>2]=0;g=f[l+16>>2]|0;h=(f[l+20>>2]|0)-g|0;if(h|0){if((h|0)<0){r=21;break}w=Wpb(h)|0;f[j>>2]=w;f[i>>2]=w;l=w+h|0;f[k>>2]=l;Irb(w|0,g|0,h|0)|0;f[j>>2]=l}f[p+4>>2]=o;f[p>>2]=0;d=+(((f[t>>2]|0)+1|0)>>>0);e=+n[u>>2];do if(m|e*+(c>>>0)<d){b=c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1;c=~~+W(+(d/e))>>>0;m$a(a,b>>>0<c>>>0?c:b);b=f[s>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&o;break}if(o>>>0<b>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=c;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){f[p>>2]=f[v>>2];f[v>>2]=p;f[c>>2]=v;b=f[p>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;r=36}}else{f[p>>2]=f[b>>2];r=36}if((r|0)==36){r=0;f[b>>2]=p}f[t>>2]=(f[t>>2]|0)+1;c=g}b=f[q>>2]|0;if(!b){r=39;break}else{l=b;q=b}}if((r|0)==21)fob(i);else if((r|0)==39)return}function M$a(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;c=f[a>>2]|0;k=((f[a+4>>2]|0)-c|0)/180|0;e=k+1|0;if(e>>>0>23860929)fob(a);l=((f[a+8>>2]|0)-c|0)/180|0;c=l<<1;c=l>>>0<11930464?(c>>>0<e>>>0?e:c):23860929;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!c)j=0;else if(c>>>0>23860929)ud();else{j=Wpb(c*180|0)|0;break}while(0);f[m>>2]=j;h=j+(k*180|0)|0;l=m+8|0;i=m+4|0;f[i>>2]=h;f[m+12>>2]=j+(c*180|0);g=b;e=f[g+4>>2]|0;c=h;f[c>>2]=f[g>>2];f[c+4>>2]=e;cqb(j+(k*180|0)+8|0,b+8|0);c=j+(k*180|0)+20|0;e=b+20|0;g=c+68|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));f[j+(k*180|0)+88>>2]=f[b+88>>2];cqb(j+(k*180|0)+92|0,b+92|0);g=j+(k*180|0)+104|0;c=b+104|0;f[g>>2]=f[c>>2];f[g+4>>2]=f[c+4>>2];d[g+8>>1]=d[c+8>>1]|0;cqb(j+(k*180|0)+116|0,b+116|0);g=b+128|0;c=f[g+4>>2]|0;e=j+(k*180|0)+128|0;f[e>>2]=f[g>>2];f[e+4>>2]=c;cqb(j+(k*180|0)+136|0,b+136|0);L$a(j+(k*180|0)+148|0,b+148|0);e=j+(k*180|0)+168|0;c=b+168|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[l>>2]=h+180;S$a(a,m);e=f[i>>2]|0;c=f[l>>2]|0;if((c|0)!=(e|0))do{k=c+-180|0;f[l>>2]=k;KAa(k);c=f[l>>2]|0}while((c|0)!=(e|0));c=f[m>>2]|0;if(!c){u=n;return}Zpb(c);u=n;return}function N$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+4|0;c=f[a>>2]|0;e=((f[i>>2]|0)-c|0)/96|0;d=e+1|0;if(d>>>0>44739242)fob(a);j=a+8|0;h=((f[j>>2]|0)-c|0)/96|0;c=h<<1;c=h>>>0<22369621?(c>>>0<d>>>0?d:c):44739242;do if(!c)g=0;else if(c>>>0>44739242)ud();else{g=Wpb(c*96|0)|0;break}while(0);d=g+(e*96|0)|0;e=d;h=g+(c*96|0)|0;R$a(d,b);b=d+96|0;g=f[a>>2]|0;c=f[i>>2]|0;if((c|0)==(g|0)){d=e;e=g;c=g}else{do{c=c+-96|0;R$a(d+-96|0,c);d=e+-96|0;e=d}while((c|0)!=(g|0));d=e;e=f[a>>2]|0;c=f[i>>2]|0}f[a>>2]=d;f[i>>2]=b;f[j>>2]=h;d=e;if((c|0)!=(d|0))do{c=c+-96|0;LAa(c)}while((c|0)!=(d|0));if(!e)return;Zpb(e);return}function O$a(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=f[b>>2];cqb(a+4|0,b+4|0);f[a+16>>2]=f[b+16>>2];g=b+20|0;e=f[g+4>>2]|0;c=a+20|0;f[c>>2]=f[g>>2];f[c+4>>2]=e;cqb(a+28|0,b+28|0);c=a+40|0;e=b+40|0;g=c+68|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));f[a+108>>2]=f[b+108>>2];cqb(a+112|0,b+112|0);j=a+124|0;h=b+124|0;f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];d[j+8>>1]=d[h+8>>1]|0;cqb(a+136|0,b+136|0);j=b+148|0;h=f[j+4>>2]|0;g=a+148|0;f[g>>2]=f[j>>2];f[g+4>>2]=h;cqb(a+156|0,b+156|0);L$a(a+168|0,b+168|0);g=a+188|0;h=b+188|0;f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];g=a+200|0;h=b+200|0;f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];g=a+212|0;h=b+212|0;f[g>>2]=0;j=a+216|0;f[j>>2]=0;f[a+220>>2]=0;b=b+216|0;c=(f[b>>2]|0)-(f[h>>2]|0)|0;e=(c|0)/12|0;if(!c)return;if(e>>>0>357913941)fob(g);i=Wpb(c)|0;f[j>>2]=i;f[g>>2]=i;f[a+220>>2]=i+(e*12|0);e=f[h>>2]|0;c=(f[b>>2]|0)-e|0;if((c|0)<=0)return;Irb(i|0,e|0,c|0)|0;f[j>>2]=i+(((c>>>0)/12|0)*12|0);return}function P$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k;d=f[a>>2]|0;g=((f[a+4>>2]|0)-d|0)/224|0;e=g+1|0;if(e>>>0>19173961)fob(a);i=((f[a+8>>2]|0)-d|0)/224|0;d=i<<1;d=i>>>0<9586980?(d>>>0<e>>>0?e:d):19173961;f[j+12>>2]=0;f[j+16>>2]=a+8;do if(!d)h=0;else if(d>>>0>19173961)ud();else{h=Wpb(d*224|0)|0;break}while(0);f[j>>2]=h;e=h+(g*224|0)|0;i=j+8|0;g=j+4|0;f[g>>2]=e;f[j+12>>2]=h+(d*224|0);O$a(e,c);f[i>>2]=e+224;Q$a(a,j);c=f[g>>2]|0;d=f[i>>2]|0;if((d|0)!=(c|0))do{f[i>>2]=d+-224;e=f[d+-12>>2]|0;if(e|0){g=d+-8|0;a=f[g>>2]|0;if((a|0)!=(e|0))f[g>>2]=a+(~(((a+-12-e|0)>>>0)/12|0)*12|0);Zpb(e)}KAa(d+-204|0);d=d+-220|0;if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);d=f[i>>2]|0}while((d|0)!=(c|0));d=f[j>>2]|0;if(!d){u=k;return}Zpb(d);u=k;return}function Q$a(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=f[a>>2]|0;p=a+4|0;c=f[p>>2]|0;q=b+4|0;if((c|0)==(o|0)){n=q;m=a;q=f[q>>2]|0;f[m>>2]=q;f[n>>2]=o;o=b+8|0;q=f[p>>2]|0;m=f[o>>2]|0;f[p>>2]=m;f[o>>2]=q;o=a+8|0;q=b+12|0;p=f[o>>2]|0;a=f[q>>2]|0;f[o>>2]=a;f[q>>2]=p;q=f[n>>2]|0;f[b>>2]=q;return}n=f[q>>2]|0;do{m=c;c=c+-224|0;f[n+-224>>2]=f[c>>2];e=n+-220|0;h=m+-220|0;f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[n+-208>>2]=f[m+-208>>2];h=m+-204|0;e=f[h+4>>2]|0;g=n+-204|0;f[g>>2]=f[h>>2];f[g+4>>2]=e;g=n+-196|0;e=m+-196|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=n+-184|0;g=m+-184|0;h=e+68|0;do{f[e>>2]=f[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));f[n+-116>>2]=f[m+-116>>2];h=n+-112|0;i=m+-112|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=n+-100|0;h=m+-100|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];d[i+8>>1]=d[h+8>>1]|0;i=n+-88|0;h=m+-88|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;h=m+-76|0;i=f[h+4>>2]|0;l=n+-76|0;f[l>>2]=f[h>>2];f[l+4>>2]=i;l=n+-68|0;i=m+-68|0;f[l>>2]=f[i>>2];f[l+4>>2]=f[i+4>>2];f[l+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=m+-56|0;l=f[i>>2]|0;f[i>>2]=0;i=m+-52|0;h=f[i>>2]|0;f[i>>2]=0;f[n+-56>>2]=l;f[n+-52>>2]=h;i=n+-48|0;j=m+-48|0;e=f[j>>2]|0;f[i>>2]=e;k=m+-44|0;g=f[k>>2]|0;f[n+-44>>2]=g;f[n+-40>>2]=f[m+-40>>2];if(g|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;f[l+(e<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}k=n+-36|0;l=m+-36|0;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];k=n+-24|0;l=m+-24|0;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];k=n+-12|0;l=m+-12|0;f[k>>2]=0;j=n+-8|0;f[j>>2]=0;f[n+-4>>2]=0;f[k>>2]=f[l>>2];k=m+-8|0;f[j>>2]=f[k>>2];m=m+-4|0;f[n+-4>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[l>>2]=0;n=(f[q>>2]|0)+-224|0;f[q>>2]=n}while((c|0)!=(o|0));m=a;o=f[a>>2]|0;f[m>>2]=n;f[q>>2]=o;o=b+8|0;n=f[p>>2]|0;m=f[o>>2]|0;f[p>>2]=m;f[o>>2]=n;a=a+8|0;p=b+12|0;o=f[a>>2]|0;n=f[p>>2]|0;f[a>>2]=n;f[p>>2]=o;q=f[q>>2]|0;f[b>>2]=q;return}function R$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=f[b>>2];g=a+4|0;j=b+4|0;f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;j=b+16|0;g=f[j>>2]|0;f[j>>2]=0;f[a+16>>2]=g;g=a+20|0;j=b+20|0;f[g>>2]=0;e=a+24|0;f[e>>2]=0;f[a+28>>2]=0;f[g>>2]=f[j>>2];g=b+24|0;f[e>>2]=f[g>>2];e=b+28|0;f[a+28>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[j>>2]=0;j=b+32|0;g=f[j>>2]|0;f[j>>2]=0;f[a+32>>2]=g;g=a+36|0;j=b+36|0;f[g>>2]=0;e=a+40|0;f[e>>2]=0;f[a+44>>2]=0;f[g>>2]=f[j>>2];g=b+40|0;f[e>>2]=f[g>>2];e=b+44|0;f[a+44>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[j>>2]=0;j=a+48|0;g=b+48|0;f[j>>2]=0;e=a+52|0;f[e>>2]=0;f[a+56>>2]=0;f[j>>2]=f[g>>2];j=b+52|0;f[e>>2]=f[j>>2];e=b+56|0;f[a+56>>2]=f[e>>2];f[e>>2]=0;f[j>>2]=0;f[g>>2]=0;g=b+60|0;j=f[g>>2]|0;f[g>>2]=0;g=b+64|0;e=f[g>>2]|0;f[g>>2]=0;f[a+60>>2]=j;f[a+64>>2]=e;g=a+68|0;h=b+68|0;c=f[h>>2]|0;f[g>>2]=c;i=b+72|0;d=f[i>>2]|0;f[a+72>>2]=d;f[a+76>>2]=f[b+76>>2];if(!d){i=a+80|0;j=b+80|0;f[i>>2]=0;h=a+84|0;f[h>>2]=0;e=a+88|0;f[e>>2]=0;e=f[j>>2]|0;f[i>>2]=e;i=b+84|0;e=f[i>>2]|0;f[h>>2]=e;h=b+88|0;e=f[h>>2]|0;g=a+88|0;f[g>>2]=e;f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;j=a+92|0;i=b+92|0;i=f[i>>2]|0;f[j>>2]=i;return}c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;f[j+(c<<2)>>2]=g;f[h>>2]=0;f[i>>2]=0;i=a+80|0;j=b+80|0;f[i>>2]=0;h=a+84|0;f[h>>2]=0;e=a+88|0;f[e>>2]=0;e=f[j>>2]|0;f[i>>2]=e;i=b+84|0;e=f[i>>2]|0;f[h>>2]=e;h=b+88|0;e=f[h>>2]|0;g=a+88|0;f[g>>2]=e;f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;j=a+92|0;i=b+92|0;i=f[i>>2]|0;f[j>>2]=i;return}function S$a(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=f[a>>2]|0;p=a+4|0;c=f[p>>2]|0;q=b+4|0;if((c|0)==(o|0)){n=q;m=a;q=f[q>>2]|0;f[m>>2]=q;f[n>>2]=o;o=b+8|0;q=f[p>>2]|0;m=f[o>>2]|0;f[p>>2]=m;f[o>>2]=q;o=a+8|0;q=b+12|0;p=f[o>>2]|0;a=f[q>>2]|0;f[o>>2]=a;f[q>>2]=p;q=f[n>>2]|0;f[b>>2]=q;return}n=f[q>>2]|0;do{m=c;c=c+-180|0;h=c;e=f[h+4>>2]|0;g=n+-180|0;f[g>>2]=f[h>>2];f[g+4>>2]=e;g=n+-172|0;e=m+-172|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=n+-160|0;g=m+-160|0;h=e+68|0;do{f[e>>2]=f[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));f[n+-92>>2]=f[m+-92>>2];h=n+-88|0;i=m+-88|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=n+-76|0;h=m+-76|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];d[i+8>>1]=d[h+8>>1]|0;i=n+-64|0;h=m+-64|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;h=m+-52|0;i=f[h+4>>2]|0;l=n+-52|0;f[l>>2]=f[h>>2];f[l+4>>2]=i;l=n+-44|0;i=m+-44|0;f[l>>2]=f[i>>2];f[l+4>>2]=f[i+4>>2];f[l+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=m+-32|0;l=f[i>>2]|0;f[i>>2]=0;i=m+-28|0;h=f[i>>2]|0;f[i>>2]=0;f[n+-32>>2]=l;f[n+-28>>2]=h;i=n+-24|0;j=m+-24|0;e=f[j>>2]|0;f[i>>2]=e;k=m+-20|0;g=f[k>>2]|0;f[n+-20>>2]=g;f[n+-16>>2]=f[m+-16>>2];if(g|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;f[l+(e<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}l=n+-12|0;m=m+-12|0;f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];n=(f[q>>2]|0)+-180|0;f[q>>2]=n}while((c|0)!=(o|0));m=a;o=f[a>>2]|0;f[m>>2]=n;f[q>>2]=o;o=b+8|0;n=f[p>>2]|0;m=f[o>>2]|0;f[p>>2]=m;f[o>>2]=n;a=a+8|0;p=b+12|0;o=f[a>>2]|0;n=f[p>>2]|0;f[a>>2]=n;f[p>>2]=o;q=f[q>>2]|0;f[b>>2]=q;return}function T$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Zpb(d);f[e>>2]=0;return}if(c>>>0>1073741823)ud();s=Wpb(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)Zpb(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(s)d=d&r;else if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{g=i;h=e;e=i}a:while(1){q=g;g=h;p=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(s)g=g&r;else if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;i=f[e>>2]|0;c:do if(!i)h=e;else{n=e+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[e+12>>2]|0:m;l=(o|0)==0;if(k){h=e;while(1){j=i+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:m&255)|0))break c;if(!l)if(idb(f[n>>2]|0,k?f[j>>2]|0:j,o)|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(l){h=e;while(1){o=b[i+8+11>>0]|0;if((o<<24>>24<0?f[i+12>>2]|0:o&255)|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;l=b[j+11>>0]|0;k=l<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:l&255)|0))break c;j=k?f[j>>2]|0:j;if((b[j>>0]|0)==(f[n>>2]&255)<<24>>24){k=n;l=m}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((b[k>>0]|0)!=(b[j>>0]|0))break c}h=f[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);f[p>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[q>>2]|0;if(!e){d=43;break a}}g=f[e>>2]|0;if(!g){d=43;break a}else{q=e;p=e}}f[h>>2]=p;h=f[e>>2]|0;if(!h){d=43;break}else{d=g;g=e}}if((d|0)==43)return}function U$a(a){a=a|0;var b=0;f[a>>2]=33452;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;W$a(a);Zpb(a);return}function V$a(a){a=a|0;var b=0,c=0;f[a>>2]=33452;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}W$a(b);Zpb(b);Zpb(a);return}function W$a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+120|0;b=f[g>>2]|0;if(b|0){h=a+124|0;c=f[h>>2]|0;if((c|0)!=(b|0)){d=c;while(1){c=d+-12|0;f[h>>2]=c;e=f[c>>2]|0;if(e){c=d+-8|0;if((f[c>>2]|0)!=(e|0))f[c>>2]=e;Zpb(e);c=f[h>>2]|0}if((c|0)==(b|0))break;else d=c}b=f[g>>2]|0}Zpb(b)}b=f[a+108>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+100|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);h=a+80|0;X$a(h,f[a+88>>2]|0);b=f[h>>2]|0;f[h>>2]=0;if(!b)return;Zpb(b);return}function X$a(a,b){a=a|0;b=b|0;var c=0,d=0;if(!b)return;do{c=b;b=f[b>>2]|0;a=f[c+48>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;Zpb(d)}while((a|0)!=0);d=c+40|0;a=f[d>>2]|0;f[d>>2]=0;if(a|0)Zpb(a);a=f[c+28>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;Zpb(d)}while((a|0)!=0);d=c+20|0;a=f[d>>2]|0;f[d>>2]=0;if(a|0)Zpb(a);Zpb(c)}while((b|0)!=0);return}function Y$a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+16|0;g=e+12|0;h=e+8|0;j=e+4|0;i=e;a=f[a+4>>2]|0;f[j>>2]=c;f[i>>2]=d;f[h>>2]=f[j>>2];f[g>>2]=f[i>>2];Z$a(a,b,h,g)|0;u=e;return}function Z$a(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;v=w;t=a+80|0;e=_$a(t,g)|0;a:do if(!e){k=f[a>>2]|0;f[a>>2]=k+-1;j=f[g>>2]|0;l=Erb(j|0,0,16)|0;l=Brb(j^61^l|0,I|0,9,0)|0;r=I;p=Erb(l|0,r|0,4)|0;r=Brb(p^l|0,I^r|0,668265261,0)|0;l=I;l=Erb(r|0,l|0,15)|0;r=l^r;l=a+84|0;p=f[l>>2]|0;q=(p|0)==0;b:do if(q)e=0;else{h=p+-1|0;g=(h&p|0)==0;if(g)e=h&r;else if(p>>>0>r>>>0)e=r;else e=(r>>>0)%(p>>>0)|0;i=f[(f[t>>2]|0)+(e<<2)>>2]|0;if(i){if(g)while(1){i=f[i>>2]|0;if(!i)break b;g=f[i+4>>2]|0;if(!((g|0)==(r|0)|(g&h|0)==(e|0)))break b;if((f[i+8>>2]|0)==(j|0))break a}while(1){i=f[i>>2]|0;if(!i)break b;g=f[i+4>>2]|0;if((g|0)!=(r|0)){if(g>>>0>=p>>>0)g=(g>>>0)%(p>>>0)|0;if((g|0)!=(e|0))break b}if((f[i+8>>2]|0)==(j|0))break a}}}while(0);i=Wpb(64)|0;f[i+8>>2]=j;f[i+12>>2]=k;j=i+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[j+16>>2]=0;n[i+36>>2]=1.0;j=i+40|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;n[i+56>>2]=1.0;b[i+60>>0]=0;f[i+4>>2]=r;f[i>>2]=0;j=a+92|0;m=+(((f[j>>2]|0)+1|0)>>>0);o=+n[a+96>>2];do if(q|o*+(p>>>0)<m){e=p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1;g=~~+W(+(m/o))>>>0;$$a(t,e>>>0<g>>>0?g:e);e=f[l>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&r;break}if(e>>>0>r>>>0){h=e;e=r}else{h=e;e=(r>>>0)%(e>>>0)|0}}else h=p;while(0);g=(f[t>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=a+88|0;f[i>>2]=f[e>>2];f[e>>2]=i;f[g>>2]=e;e=f[i>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[t>>2]|0)+(e<<2)|0;s=31}}else{f[i>>2]=f[e>>2];s=31}if((s|0)==31)f[e>>2]=i;f[j>>2]=(f[j>>2]|0)+1}else i=e;while(0);j=a+164|0;if(d[j>>1]&128){u=w;return i|0}g=a+80|0;t=_$a(g,a+20|0)|0;e=f[t+16>>2]|0;k=a+12|0;h=t+12|0;l=a+76|0;Kh[f[(f[c>>2]|0)+68>>2]&255](c,f[k>>2]|0,f[h>>2]|0,(e|0)==0?f[t+8>>2]|0:e,f[l>>2]|0);e=f[a+160>>2]|0;if((e|0)==-1)e=f[h>>2]|0;else{f[v>>2]=e;e=(_$a(g,v)|0)+12|0;e=f[e>>2]|0}Kh[f[(f[c>>2]|0)+60>>2]&255](c,f[k>>2]|0,e,f[l>>2]|0,3);d[j>>1]=d[j>>1]|128;u=w;return i|0}function _$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;g=Erb(h|0,0,16)|0;g=Brb(h^61^g|0,I|0,9,0)|0;e=I;i=Erb(g|0,e|0,4)|0;e=Brb(i^g|0,I^e|0,668265261,0)|0;g=I;g=Erb(e|0,g|0,15)|0;e=g^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=d&e;else if(g>>>0>e>>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function $$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){a0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;a0a(a,b);return}function a0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function b0a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;a:do if(!c)d=a+8|0;else{n=a+16|0;o=a+4|0;d=a+8|0;b:while(1){k=0;c:while(1){g=c-k|0;if(g>>>0<4){c=6;break b}l=b+k|0;switch(f[l>>2]|0){case 90:break c;case 100:break;default:{c=24;break b}}if(g>>>0<16){c=9;break b}i=l+12|0;e=f[i>>2]|0;j=(e|0)==-1?16:e+19&-4;if(g>>>0<j>>>0){c=14;break b}g=f[l+4>>2]|0;h=f[n>>2]|0;if(h){e=f[h+4>>2]|0;f[m>>2]=g;g=(_$a(e+80|0,m)|0)+12|0;g=f[g>>2]|0;e=f[i>>2]|0}Kh[f[(f[a>>2]|0)+12>>2]&255](a,g,f[l+8>>2]|0,(e|0)==-1?0:l+16|0,e);k=j+k|0;if(c>>>0<=k>>>0)break a}if(g>>>0<16){c=16;break}if(g>>>0<((f[l+8>>2]|0)+19&-4)>>>0){c=18;break}b=c0a(l,o)|0;if((b|0)>=0){c=20;break}b=f[o>>2]|0;c=(f[d>>2]|0)-b|0;if(!c)break a}if((c|0)==6){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192483,34);break}else if((c|0)==9){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192483,34);break}else if((c|0)==14){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192483,34);break}else if((c|0)==16){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192483,34);break}else if((c|0)==18){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192483,34);break}else if((c|0)==20){c=f[(f[a>>2]|0)+8>>2]|0;if(!b){Eh[c&255](a,0,192517,43);break}else{Eh[c&255](a,0,192483,34);break}}else if((c|0)==24){Eh[f[(f[a>>2]|0)+8>>2]&255](a,0,192560,33);break}}while(0);c=f[a+4>>2]|0;if((f[d>>2]|0)==(c|0)){u=p;return}f[d>>2]=c;u=p;return}function c0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=a+16|0;k=b+4|0;g=f[k>>2]|0;c=f[b>>2]|0;j=g-c|0;i=a+12|0;d=f[i>>2]|0;e=j+d|0;if(j>>>0<e>>>0){SAa(b,d);c=f[b>>2]|0}else if(j>>>0>e>>>0){d=c+e|0;if((d|0)!=(g|0))f[k>>2]=d}d=c+j|0;if((f[a+4>>2]|0)==1){c=a+8|0;h=e$a(d,f[i>>2]|0,h,f[c>>2]|0)|0;if((h|0)!=(f[i>>2]|0)){e=f[k>>2]|0;c=f[b>>2]|0;d=e-c|0;if(j>>>0>d>>>0){SAa(b,j-d|0);k=0;return k|0}if(j>>>0>=d>>>0){k=0;return k|0}c=c+j|0;if((c|0)==(e|0)){k=0;return k|0}f[k>>2]=c;k=0;return k|0}}else{c=a+8|0;if((T4a(h,d,f[c>>2]|0,f[i>>2]|0)|0)<0){e=f[k>>2]|0;c=f[b>>2]|0;d=e-c|0;if(j>>>0>d>>>0){SAa(b,j-d|0);k=0;return k|0}if(j>>>0>=d>>>0){k=0;return k|0}c=c+j|0;if((c|0)==(e|0)){k=0;return k|0}f[k>>2]=c;k=0;return k|0}}k=0-((f[c>>2]|0)+19&-4)|0;return k|0}function d0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0;J=0;M=u;u=u+3216|0;d=f[b>>2]|0;c=f[(b+4|0)>>2]|0;if((d|0)==(c|0)){f[(M+8|0)>>2]=b;c=f[(a+8|0)>>2]|0;if((c|0)==(f[a+12>>2]|0))e0a(a+4|0,M+8|0);else{f[c>>2]=b;f[(a+8|0)>>2]=(f[(a+8|0)>>2]|0)+4}a=0;u=M;return a|0}e=f[(a+68|0)>>2]|0;if(!e)f[(a+68|0)>>2]=b;else{h=f[(e+4|0)>>2]|0;i=f[e>>2]|0;g=(c-d|0)+(h-i|0)|0;if((h-i|0)>>>0<g>>>0){SAa(e,c-d|0);c=f[(a+68|0)>>2]|0;d=f[b>>2]|0}else if((h-i|0)>>>0>g>>>0)if((i+g|0|0)==(h|0))c=e;else{f[(e+4|0)>>2]=i+g|0;c=e}else c=e;Irb((f[c>>2]|0)+(h-i|0)|0,d|0,(f[(b+4|0)>>2]|0)-d|0)|0;c=f[b>>2]|0;if((f[(b+4|0)>>2]|0)!=(c|0))f[(b+4|0)>>2]=c;f[(M+8|0)>>2]=b;c=f[(a+8|0)>>2]|0;if((c|0)==(f[a+12>>2]|0))e0a(a+4|0,M+8|0);else{f[c>>2]=b;f[(a+8|0)>>2]=(f[(a+8|0)>>2]|0)+4}c=f[(a+68|0)>>2]|0;d=f[c>>2]|0;c=f[c+4>>2]|0}k=f[a>>2]|0;c=c-d|0;d=f[(a+72|0)>>2]|0;a:{j=1;if(j){j=0;if(c>>>0>d>>>0){i=(M+296|0)+4|0;b:while(1){h=f[(a+68|0)>>2]|0;b=c-d|0;if(b>>>0<4){J=22;break}N=f[h>>2]|0;d=N+d|0;do{e=1;g=f[d>>2]|0;f[M+336>>2]=a;f[M+400>>2]=l;f[M+408>>2]=c;f[M+504>>2]=m;f[M+1040>>2]=s;f[M+1632>>2]=t;f[M+1640>>2]=v;f[M+1712>>2]=w;f[M+1824>>2]=x;f[M+1832>>2]=y;f[M+1904>>2]=z;f[M+2128>>2]=A;f[M+2240>>2]=k;f[M+2408>>2]=i;f[M+2576>>2]=b;f[M+2688>>2]=N;f[M+2712>>2]=d;f[M+2976>>2]=J;f[M+3008>>2]=e;f[M+3016>>2]=g;f[M+3040>>2]=0;f[M+3044>>2]=0;v0a(M);l=f[M+400>>2]|0;m=f[M+504>>2]|0;s=f[M+1040>>2]|0;t=f[M+1632>>2]|0;v=f[M+1640>>2]|0;w=f[M+1712>>2]|0;x=f[M+1824>>2]|0;y=f[M+1832>>2]|0;z=f[M+1904>>2]|0;A=f[M+2128>>2]|0;J=f[M+2976>>2]|0;e=f[M+3008>>2]|0;G=f[M+3040>>2]|0;D=f[M+3044>>2]|0;H=+n[M+3044>>2];f[M+3040>>2]=0;f[M+3044>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 31:break b;case 32:break a}f[M+336>>2]=a;f[M+352>>2]=o;f[M+400>>2]=l;f[M+408>>2]=c;f[M+504>>2]=m;f[M+816>>2]=q;f[M+2240>>2]=k;f[M+2560>>2]=h;f[M+2576>>2]=b;f[M+2584>>2]=B;f[M+2592>>2]=C;f[M+2600>>2]=E;f[M+2696>>2]=F;f[M+2712>>2]=d;f[M+2808>>2]=I;f[M+2976>>2]=J;f[M+3008>>2]=e;f[M+3016>>2]=g;f[M+3032>>2]=0;f[M+3036>>2]=0;u0a(M);o=f[M+352>>2]|0;l=f[M+400>>2]|0;m=f[M+504>>2]|0;q=f[M+816>>2]|0;B=f[M+2584>>2]|0;C=f[M+2592>>2]|0;E=f[M+2600>>2]|0;F=f[M+2696>>2]|0;I=f[M+2808>>2]|0;J=f[M+2976>>2]|0;e=f[M+3008>>2]|0;G=f[M+3032>>2]|0;D=f[M+3036>>2]|0;H=+n[M+3036>>2];f[M+3032>>2]=0;f[M+3036>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 29:break b;case 27:break a}f[M+336>>2]=a;f[M+384>>2]=K;f[M+400>>2]=l;f[M+408>>2]=c;f[M+472>>2]=p;f[M+896>>2]=r;f[M+936>>2]=L;f[M+2240>>2]=k;f[M+2560>>2]=h;f[M+2576>>2]=b;f[M+2712>>2]=d;f[M+2976>>2]=J;f[M+3008>>2]=e;f[M+3016>>2]=g;f[M+3024>>2]=0;f[M+3028>>2]=0;t0a(M);K=f[M+384>>2]|0;l=f[M+400>>2]|0;p=f[M+472>>2]|0;r=f[M+896>>2]|0;L=f[M+936>>2]|0;J=f[M+2976>>2]|0;G=f[M+3024>>2]|0;D=f[M+3028>>2]|0;H=+n[M+3028>>2];f[M+3024>>2]=0;f[M+3028>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 37:break b;case 36:break a}}while(0);if((J|0)==396){J=0;switch(m|0){case 9:{J=398;break a}case 0:{l=c;break}default:{p=0;J=406;break b}}}d=f[(a+72|0)>>2]|0;if(l>>>0<=d>>>0){J=398;break a}else c=l}c=1;d=J|0;if(c){c=0;switch(d|0){case 22:{N=4-b|0;u=M;return N|0}case 25:{N=20-b|0;u=M;return N|0}case 31:{f[M>>2]=67;f[M+4>>2]=s;J=(tcb(M+8|0,192593,M)|0)+1|0;Eh[f[(f[k>>2]|0)+36>>2]&255](k,0,M+8|0,J);J=398;break a}case 34:{N=16-b|0;u=M;return N|0}case 43:{N=12-b|0;u=M;return N|0}case 47:{N=24-b|0;u=M;return N|0}case 53:{N=44-b|0;u=M;return N|0}case 55:{N=((t<<2)+44+(v*12|0)|0)-b|0;u=M;return N|0}case 61:{N=16-b|0;u=M;return N|0}case 63:{N=((w<<2)+16|0)-b|0;u=M;return N|0}case 69:{N=56-b|0;u=M;return N|0}case 76:{N=104-b|0;u=M;return N|0}case 84:break a;case 86:{N=16-b|0;u=M;return N|0}case 88:{N=((x<<2)+16+(y*12|0)|0)-b|0;u=M;return N|0}case 94:{N=16-b|0;u=M;return N|0}case 96:{N=z-b|0;u=M;return N|0}case 110:{ud();break}case 134:{N=24-b|0;u=M;return N|0}case 136:{N=((A<<2)+24|0)-b|0;u=M;return N|0}case 140:{N=32-b|0;u=M;return N|0}case 159:{N=36-b|0;u=M;return N|0}case 163:{N=68-b|0;u=M;return N|0}case 169:{N=72-b|0;u=M;return N|0}case 175:{N=48-b|0;u=M;return N|0}case 181:{N=16-b|0;u=M;return N|0}case 188:{N=24-b|0;u=M;return N|0}case 195:{N=28-b|0;u=M;return N|0}case 201:{N=28-b|0;u=M;return N|0}case 203:{N=o-b|0;u=M;return N|0}case 209:{N=12-b|0;u=M;return N|0}case 215:{N=8-b|0;u=M;return N|0}case 218:{N=44-b|0;u=M;return N|0}case 220:{N=(((C+B+E|0)*12|0)+44|0)-b|0;u=M;return N|0}case 226:{N=12-b|0;u=M;return N|0}case 228:{N=(F+12|0)-b|0;u=M;return N|0}case 234:{N=40-b|0;u=M;return N|0}case 236:{N=I-b|0;u=M;return N|0}case 246:{N=16-b|0;u=M;return N|0}default:c=1}}if(c)switch(d|0){case 248:{N=q-b|0;u=M;return N|0}case 261:{N=16-b|0;u=M;return N|0}case 263:{N=r-b|0;u=M;return N|0}case 280:{f[(M+8|0)>>2]=K;c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0))e0a(a+4|0,M+8|0);else{f[c>>2]=K;f[(a+8|0)>>2]=(f[(a+8|0)>>2]|0)+4}if(!L){Eh[f[(f[k>>2]|0)+36>>2]&255](k,0,192708,43);J=398;break a}N=L-b|0;u=M;return N|0}case 288:{N=12-b|0;u=M;return N|0}case 295:{N=8-b|0;u=M;return N|0}case 305:{N=12-b|0;u=M;return N|0}case 315:{N=12-b|0;u=M;return N|0}case 320:{N=16-b|0;u=M;return N|0}case 326:{N=16-b|0;u=M;return N|0}case 332:{N=20-b|0;u=M;return N|0}case 352:{N=20-b|0;u=M;return N|0}case 362:{N=8-b|0;u=M;return N|0}case 370:{N=16-b|0;u=M;return N|0}case 382:{N=12-b|0;u=M;return N|0}case 391:{N=16-b|0;u=M;return N|0}case 395:{Eh[f[(f[k>>2]|0)+36>>2]&255](k,0,192778,33);J=398;break a}case 406:{u=M;return p|0}default:{}}}else j=1}if(j)if(1)J=398}if((J|0)==398){d=f[(a+68|0)>>2]|0;if(d|0){c=f[d>>2]|0;if((f[(d+4|0)>>2]|0)!=(c|0))f[(d+4|0)>>2]=c;f[(M+8|0)>>2]=d;c=f[(a+8|0)>>2]|0;if((c|0)==(f[a+12>>2]|0))e0a(a+4|0,M+8|0);else{f[c>>2]=d;f[(a+8|0)>>2]=(f[(a+8|0)>>2]|0)+4}}}f[(a+72|0)>>2]=0;f[(a+68|0)>>2]=0;N=0;u=M;return N|0}function e0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function f0a(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;h=a+164|0;g=d[h>>1]|0;if(!(g&1)){Kh[f[(f[e>>2]|0)+8>>2]&255](e,67,67,f[a+12>>2]|0,0);g=d[h>>1]|1;d[h>>1]=g}if(!(g&32)){f[a+24>>2]=f[c+16>>2];d[h>>1]=g|32}k=c+12|0;f[a+20>>2]=f[k>>2];r=a+80|0;k=f[k>>2]|0;l=Erb(k|0,0,16)|0;l=Brb(k^61^l|0,I|0,9,0)|0;p=I;m=Erb(l|0,p|0,4)|0;p=Brb(m^l|0,I^p|0,668265261,0)|0;l=I;l=Erb(p|0,l|0,15)|0;p=l^p;l=a+84|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(o)g=0;else{h=m+-1|0;c=(h&m|0)==0;if(c)g=h&p;else if(m>>>0>p>>>0)g=p;else g=(p>>>0)%(m>>>0)|0;e=f[(f[r>>2]|0)+(g<<2)>>2]|0;if(e){if(c){do{e=f[e>>2]|0;if(!e)break a;q=f[e+4>>2]|0;if(!((q|0)==(p|0)|(q&h|0)==(g|0)))break a}while((f[e+8>>2]|0)!=(k|0));return}do{e=f[e>>2]|0;if(!e)break a;c=f[e+4>>2]|0;if((c|0)!=(p|0)){if(c>>>0>=m>>>0)c=(c>>>0)%(m>>>0)|0;if((c|0)!=(g|0))break a}}while((f[e+8>>2]|0)!=(k|0));return}}while(0);q=Wpb(64)|0;f[q+8>>2]=k;f[q+12>>2]=f[a+16>>2];h=q+16|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;n[q+36>>2]=1.0;h=q+40|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[q+56>>2]=1.0;b[q+60>>0]=0;f[q+4>>2]=p;f[q>>2]=0;h=a+92|0;i=+(((f[h>>2]|0)+1|0)>>>0);j=+n[a+96>>2];do if(o|j*+(m>>>0)<i){g=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;$$a(r,g>>>0<e>>>0?e:g);g=f[l>>2]|0;e=g+-1|0;if(!(e&g)){c=g;g=e&p;break}if(g>>>0>p>>>0){c=g;g=p}else{c=g;g=(p>>>0)%(g>>>0)|0}}else c=m;while(0);e=(f[r>>2]|0)+(g<<2)|0;g=f[e>>2]|0;if(!g){g=a+88|0;f[q>>2]=f[g>>2];f[g>>2]=q;f[e>>2]=g;g=f[q>>2]|0;if(g|0){g=f[g+4>>2]|0;e=c+-1|0;if(!(e&c))g=g&e;else if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;g=(f[r>>2]|0)+(g<<2)|0;s=34}}else{f[q>>2]=f[g>>2];s=34}if((s|0)==34)f[g>>2]=q;f[h>>2]=(f[h>>2]|0)+1;return}function g0a(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;k=p;o=a+164|0;e=d[o>>1]|0;if(!(e&128)){h=a+80|0;n=_$a(h,a+20|0)|0;g=f[n+16>>2]|0;i=a+12|0;e=n+12|0;j=a+76|0;Kh[f[(f[c>>2]|0)+68>>2]&255](c,f[i>>2]|0,f[e>>2]|0,(g|0)==0?f[n+8>>2]|0:g,f[j>>2]|0);g=f[a+160>>2]|0;if((g|0)==-1)e=f[e>>2]|0;else{f[k>>2]=g;e=(_$a(h,k)|0)+12|0;e=f[e>>2]|0}Kh[f[(f[c>>2]|0)+60>>2]&255](c,f[i>>2]|0,e,f[j>>2]|0,3);e=d[o>>1]|128;d[o>>1]=e}n=b+4|0;if(e&16){a=f[c>>2]|0;a=a+12|0;a=f[a>>2]|0;o=f[n>>2]|0;nh[a&1023](c,o);u=p;return}if(f[n>>2]|0){a=f[c>>2]|0;a=a+12|0;a=f[a>>2]|0;o=f[n>>2]|0;nh[a&1023](c,o);u=p;return}d[o>>1]=e|16;e=f[a+88>>2]|0;if(e|0){b=a+12|0;l=a+76|0;m=a+100|0;do{g=e;j=f[g+16>>2]|0;k=g+12|0;Kh[f[(f[c>>2]|0)+68>>2]&255](c,f[b>>2]|0,f[k>>2]|0,(j|0)==0?f[g+8>>2]|0:j,f[l>>2]|0);g=f[g+48>>2]|0;if(g|0)do{j=g;i=j+8|0;h=f[i>>2]|0;i=k0a(m,i)|0;if(i)h=f[i+12>>2]|0;Kh[f[(f[c>>2]|0)+64>>2]&255](c,f[k>>2]|0,f[j+12>>2]|0,h,f[l>>2]|0);g=f[g>>2]|0}while((g|0)!=0);e=f[e>>2]|0}while((e|0)!=0)}g=a+120|0;e=f[g>>2]|0;j=a+124|0;h=f[j>>2]|0;if((e|0)!=(h|0)){do{m=f[e>>2]|0;wh[f[(f[c>>2]|0)+76>>2]&127](c,m,(f[e+4>>2]|0)-m|0);e=e+12|0}while((e|0)!=(h|0));i=f[g>>2]|0;e=f[j>>2]|0;if((e|0)!=(i|0))do{g=e+-12|0;f[j>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;if((f[e>>2]|0)!=(h|0))f[e>>2]=h;Zpb(h);e=f[j>>2]|0}}while((e|0)!=(i|0))}e=d[o>>1]|0;if(e&256){a=f[c>>2]|0;a=a+12|0;a=f[a>>2]|0;o=f[n>>2]|0;nh[a&1023](c,o);u=p;return}d[o>>1]=e|256;Eh[f[(f[c>>2]|0)+36>>2]&255](c,f[a+76>>2]|0,192751,27);a=f[c>>2]|0;a=a+12|0;a=f[a>>2]|0;o=f[n>>2]|0;nh[a&1023](c,o);u=p;return}function h0a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+48|0;k=x;v=_$a(a+80|0,c)|0;r=v+20|0;w=d+8|0;c=k;i=d+8|0;j=c+48|0;do{f[c>>2]=f[i>>2];c=c+4|0;i=i+4|0}while((c|0)<(j|0));s=d+4|0;j=f[s>>2]|0;l=Erb(j|0,0,16)|0;l=Brb(j^61^l|0,I|0,9,0)|0;p=I;m=Erb(l|0,p|0,4)|0;p=Brb(m^l|0,I^p|0,668265261,0)|0;l=I;l=Erb(p|0,l|0,15)|0;p=l^p;l=v+24|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(o){a=0;t=17}else{i=m+-1|0;d=(i&m|0)==0;if(d)a=i&p;else if(m>>>0>p>>>0)a=p;else a=(p>>>0)%(m>>>0)|0;c=f[(f[r>>2]|0)+(a<<2)>>2]|0;if(!c)t=17;else{if(d)while(1){c=f[c>>2]|0;if(!c){t=17;break a}q=f[c+4>>2]|0;if(!((q|0)==(p|0)|(q&i|0)==(a|0))){t=17;break a}if((f[c+8>>2]|0)==(j|0))break a}do{c=f[c>>2]|0;if(!c){t=17;break a}d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=m>>>0)d=(d>>>0)%(m>>>0)|0;if((d|0)!=(a|0)){t=17;break a}}}while((f[c+8>>2]|0)!=(j|0))}}while(0);if((t|0)==17){q=Wpb(60)|0;f[q+8>>2]=j;c=q+12|0;i=k;j=c+48|0;do{f[c>>2]=f[i>>2];c=c+4|0;i=i+4|0}while((c|0)<(j|0));f[q+4>>2]=p;f[q>>2]=0;i=v+32|0;g=+(((f[i>>2]|0)+1|0)>>>0);h=+n[v+36>>2];do if(o|h*+(m>>>0)<g){a=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;c=~~+W(+(g/h))>>>0;E0a(r,a>>>0<c>>>0?c:a);a=f[l>>2]|0;c=a+-1|0;if(!(c&a)){d=a;a=c&p;break}if(a>>>0>p>>>0){d=a;a=p}else{d=a;a=(p>>>0)%(a>>>0)|0}}else d=m;while(0);c=(f[r>>2]|0)+(a<<2)|0;a=f[c>>2]|0;if(!a){a=v+28|0;f[q>>2]=f[a>>2];f[a>>2]=q;f[c>>2]=a;a=f[q>>2]|0;if(a|0){a=f[a+4>>2]|0;c=d+-1|0;if(!(c&d))a=a&c;else if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;a=(f[r>>2]|0)+(a<<2)|0;t=30}}else{f[q>>2]=f[a>>2];t=30}if((t|0)==30)f[a>>2]=q;f[i>>2]=(f[i>>2]|0)+1}if(!(b[v+60>>0]&1)){u=x;return}Eh[f[(f[e>>2]|0)+88>>2]&255](e,f[v+12>>2]|0,f[s>>2]|0,w);u=x;return}function i0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;c=f[a>>2]|0;d=c;if((((f[k>>2]|0)-c|0)/20|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>214748364)ud();g=f[l>>2]|0;i=Wpb(b*20|0)|0;h=i+(((g-c|0)/20|0)*20|0)|0;j=h;i=i+(b*20|0)|0;c=g;if((c|0)==(d|0)){e=j;h=g}else{e=j;b=h;do{g=b+-20|0;m=c;c=c+-20|0;f[g>>2]=0;h=b+-16|0;f[h>>2]=0;f[b+-12>>2]=0;f[g>>2]=f[c>>2];g=m+-16|0;f[h>>2]=f[g>>2];h=m+-12|0;f[b+-12>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[c>>2]=0;m=m+-8|0;g=f[m+4>>2]|0;h=b+-8|0;f[h>>2]=f[m>>2];f[h+4>>2]=g;b=e+-20|0;e=b}while((c|0)!=(d|0));h=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=i;g=h;if((d|0)!=(g|0))do{c=d;d=d+-20|0;e=f[d>>2]|0;if(e|0){c=c+-16|0;b=f[c>>2]|0;if((b|0)!=(e|0))f[c>>2]=b+(~((b+-4-e|0)>>>2)<<2);Zpb(e)}}while((d|0)!=(g|0));if(!h)return;Zpb(h);return}function j0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/20|0;c=i<<1;c=i>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)g=0;else if(c>>>0>214748364)ud();else{g=Wpb(c*20|0)|0;break}while(0);d=g+(h*20|0)|0;e=d;i=g+(c*20|0)|0;f[g+(h*20|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*20|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*20|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+12|0;b=f[c+4>>2]|0;g=g+(h*20|0)+12|0;f[g>>2]=f[c>>2];f[g+4>>2]=b;g=d+20|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{h=d+-20|0;m=c;c=c+-20|0;f[h>>2]=0;l=d+-16|0;f[l>>2]=0;f[d+-12>>2]=0;f[h>>2]=f[c>>2];h=m+-16|0;f[l>>2]=f[h>>2];l=m+-12|0;f[d+-12>>2]=f[l>>2];f[l>>2]=0;f[h>>2]=0;f[c>>2]=0;m=m+-8|0;h=f[m+4>>2]|0;l=d+-8|0;f[l>>2]=f[m>>2];f[l+4>>2]=h;d=e+-20|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-20|0;b=f[e>>2]|0;if(b|0){c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function k0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;g=Erb(h|0,0,16)|0;g=Brb(h^61^g|0,I|0,9,0)|0;e=I;i=Erb(g|0,e|0,4)|0;e=Brb(i^g|0,I^e|0,668265261,0)|0;g=I;g=Erb(e|0,g|0,15)|0;e=g^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=d&e;else if(g>>>0>e>>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function l0a(a,c,e,g,h,i,j){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+64|0;y=B+16|0;k=B+8|0;l=B+4|0;m=B;if(!e)A=f[a+76>>2]|0;else A=e;r=f[g>>2]|0;f[l>>2]=r;f[m>>2]=f[h>>2];f[k>>2]=f[l>>2];f[y>>2]=f[m>>2];z=Z$a(a,c,k,y)|0;v=a+8|0;x=f[v>>2]|0;f[v>>2]=x+1;v=z+40|0;l=Erb(r|0,0,16)|0;l=Brb(r^61^l|0,I|0,9,0)|0;s=I;m=Erb(l|0,s|0,4)|0;s=Brb(m^l|0,I^s|0,668265261,0)|0;l=I;l=Erb(s|0,l|0,15)|0;s=l^s;l=z+44|0;m=f[l>>2]|0;q=(m|0)==0;a:do if(q){e=0;w=19}else{h=m+-1|0;k=(h&m|0)==0;if(k)e=h&s;else if(m>>>0>s>>>0)e=s;else e=(s>>>0)%(m>>>0)|0;g=f[(f[v>>2]|0)+(e<<2)>>2]|0;if(!g)w=19;else{if(k)while(1){g=f[g>>2]|0;if(!g){w=19;break a}t=f[g+4>>2]|0;if(!((t|0)==(s|0)|(t&h|0)==(e|0))){w=19;break a}if((f[g+8>>2]|0)==(r|0))break a}do{g=f[g>>2]|0;if(!g){w=19;break a}k=f[g+4>>2]|0;if((k|0)!=(s|0)){if(k>>>0>=m>>>0)k=(k>>>0)%(m>>>0)|0;if((k|0)!=(e|0)){w=19;break a}}}while((f[g+8>>2]|0)!=(r|0))}}while(0);if((w|0)==19){t=Wpb(16)|0;f[t+8>>2]=r;f[t+12>>2]=x;f[t+4>>2]=s;f[t>>2]=0;h=z+52|0;o=+(((f[h>>2]|0)+1|0)>>>0);p=+n[z+56>>2];do if(q|p*+(m>>>0)<o){e=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;g=~~+W(+(o/p))>>>0;z0a(v,e>>>0<g>>>0?g:e);e=f[l>>2]|0;g=e+-1|0;if(!(g&e)){k=e;e=g&s;break}if(e>>>0>s>>>0){k=e;e=s}else{k=e;e=(s>>>0)%(e>>>0)|0}}else k=m;while(0);g=(f[v>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=z+48|0;f[t>>2]=f[e>>2];f[e>>2]=t;f[g>>2]=e;e=f[t>>2]|0;if(e|0){e=f[e+4>>2]|0;g=k+-1|0;if(!(g&k))e=e&g;else if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;e=(f[v>>2]|0)+(e<<2)|0;w=32}}else{f[t>>2]=f[e>>2];w=32}if((w|0)==32)f[e>>2]=t;f[h>>2]=(f[h>>2]|0)+1}e=C0a(z+20|0,i)|0;if(!e)g=C0a((_$a(a+80|0,a+20|0)|0)+20|0,i)|0;else g=e;k=a+164|0;e=d[k>>1]|0;do if(!(e&8))if(!(f[i>>2]|0))w=44;else{w=a+4|0;e=f[w>>2]|0;f[w>>2]=e+1;Eh[f[(f[c>>2]|0)+88>>2]&255](c,f[a+12>>2]|0,e,g+12|0);w=42}else{w=a+4|0;e=f[w>>2]|0;f[w>>2]=e+1;if(!(f[i>>2]|0)){Eh[f[(f[c>>2]|0)+88>>2]&255](c,f[a+12>>2]|0,e,a+28|0);w=42;break}else{D0a(g+12|0,a+28|0,y);Eh[f[(f[c>>2]|0)+88>>2]&255](c,f[a+12>>2]|0,e,y);w=42;break}}while(0);if((w|0)==42)if(!e){e=d[k>>1]|0;w=44}if((w|0)==44)if(!(e&4)){Eh[f[(f[c>>2]|0)+88>>2]&255](c,f[a+12>>2]|0,0,33460);d[k>>1]=d[k>>1]|4;e=0}else e=0;h=z+12|0;Sh[f[(f[c>>2]|0)+144>>2]&63](c,A,x,f[h>>2]|0,e,j);k=z+60|0;e=b[k>>0]|0;if(e&1){u=B;return}g=f[z+28>>2]|0;if(g){e=g;do{j=e;Eh[f[(f[c>>2]|0)+88>>2]&255](c,f[h>>2]|0,f[j+8>>2]|0,j+12|0);e=f[e>>2]|0}while((e|0)!=0);e=b[k>>0]|0}b[k>>0]=e|1;u=B;return}function m0a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=f[d>>2]|0;if((e-g|0)>>>0<48){e=0;return e|0}g=(f[c>>2]|0)+g|0;if((f[g>>2]|0)!=79){e=0;return e|0}f[b+8>>2]=f[g+4>>2];f[b+12>>2]=f[g+8>>2];k=g+16|0;h=f[k+4>>2]|0;j=b;f[j>>2]=f[k>>2];f[j+4>>2]=h;j=g+24|0;h=b+16|0;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];h=g+36|0;j=b+28|0;f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[d>>2]=(f[d>>2]|0)+48;j=g+12|0;h=f[j>>2]|0;if(!h){e=1;return e|0}k=b+40|0;i=f[k>>2]|0;g=((f[b+44>>2]|0)-i|0)/56|0;if(h>>>0>g>>>0)B0a(k,h-g|0);else if(h>>>0<g>>>0)n0a(k,i+(h*56|0)|0);if(!(f[j>>2]|0)){e=1;return e|0}g=0;do{m0a(a,(f[k>>2]|0)+(g*56|0)|0,c,d,e)|0;g=g+1|0}while(g>>>0<(f[j>>2]|0)>>>0);g=1;return g|0}function n0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+4|0;a=f[e>>2]|0;if((a|0)==(b|0))return;else c=a;while(1){a=c+-56|0;f[e>>2]=a;c=c+-16|0;d=f[c>>2]|0;if(d){n0a(c,d);Zpb(f[c>>2]|0);a=f[e>>2]|0}if((a|0)==(b|0))break;else c=a}return}function o0a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;q=a+100|0;k=Erb(c|0,0,16)|0;k=Brb(c^61^k|0,I|0,9,0)|0;o=I;l=Erb(k|0,o|0,4)|0;o=Brb(l^k|0,I^o|0,668265261,0)|0;k=I;k=Erb(o|0,k|0,15)|0;o=k^o;k=a+104|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(m)b=0;else{j=l+-1|0;g=(j&l|0)==0;if(g)b=j&o;else if(l>>>0>o>>>0)b=o;else b=(o>>>0)%(l>>>0)|0;e=f[(f[q>>2]|0)+(b<<2)>>2]|0;if(e){if(g){do{e=f[e>>2]|0;if(!e)break a;p=f[e+4>>2]|0;if(!((p|0)==(o|0)|(p&j|0)==(b|0)))break a}while((f[e+8>>2]|0)!=(c|0));return}do{e=f[e>>2]|0;if(!e)break a;g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)!=(b|0))break a}}while((f[e+8>>2]|0)!=(c|0));return}}while(0);p=Wpb(16)|0;f[p+8>>2]=c;f[p+12>>2]=d;f[p+4>>2]=o;f[p>>2]=0;j=a+112|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[a+116>>2];do if(m|i*+(l>>>0)<h){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;e=~~+W(+(h/i))>>>0;z0a(q,b>>>0<e>>>0?e:b);b=f[k>>2]|0;e=b+-1|0;if(!(e&b)){g=b;b=e&o;break}if(b>>>0>o>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=l;while(0);e=(f[q>>2]|0)+(b<<2)|0;b=f[e>>2]|0;if(!b){b=a+108|0;f[p>>2]=f[b>>2];f[b>>2]=p;f[e>>2]=b;b=f[p>>2]|0;if(b|0){b=f[b+4>>2]|0;e=g+-1|0;if(!(e&g))b=b&e;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[q>>2]|0)+(b<<2)|0;r=30}}else{f[p>>2]=f[b>>2];r=30}if((r|0)==30)f[b>>2]=p;f[j>>2]=(f[j>>2]|0)+1;return}function p0a(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;L=f[a+88>>2]|0;M=f[a+96>>2]|0;P=f[a+192>>2]|0;Q=f[a+232>>2]|0;R=f[a+440>>2]|0;A=f[a+456>>2]|0;O=f[a+512>>2]|0;e=f[a+592>>2]|0;u=f[a+656>>2]|0;l=f[a+664>>2]|0;s=f[a+672>>2]|0;N=f[a+800>>2]|0;B=f[a+816>>2]|0;S=f[a+824>>2]|0;T=f[a+832>>2]|0;F=f[a+840>>2]|0;U=f[a+848>>2]|0;w=f[a+888>>2]|0;x=f[a+896>>2]|0;y=f[a+904>>2]|0;z=f[a+912>>2]|0;C=f[a+920>>2]|0;D=f[a+928>>2]|0;v=f[a+944>>2]|0;t=f[a+952>>2]|0;i=f[a+984>>2]|0;G=f[a+1016>>2]|0;H=f[a+1064>>2]|0;I=f[a+1128>>2]|0;V=f[a+1688>>2]|0;a:{do if(!(l<<24>>24)){k=0;o=e;q=i;V=48}else{m=f[32908+((l&255)<<2)>>2]|0;n=f[A>>2]<<(e&31)>>>1>>>(31-l&31);e=e+(l&255)|0;f[O>>2]=e;do if(e>>>0<=32){if(i>>>0>=B>>>0){i=i+(0-(e>>>3))|0;f[(a+8|0)>>2]=i;f[O>>2]=e&7;f[A>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;e=e&7;break}if((i|0)==(S|0)){i=S;break}W=(i+(0-(e>>>3))|0)>>>0<S>>>0?i-S|0:e>>>3;i=i+(0-W)|0;f[(a+8|0)>>2]=i;f[O>>2]=e-(W<<3)|0;f[A>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;e=e-(W<<3)|0}while(0);if((l&255)<2){k=n+m|0;o=e;q=i;V=48;break}f[(a+48|0)>>2]=f[(a+44|0)>>2];f[(a+44|0)>>2]=f[(a+40|0)>>2];f[(a+40|0)>>2]=n+m|0;E=n+m|0;g=e;j=i}while(0);b:do if((V|0)==48){V=0;e=k+(u<<24>>24==0&1)|0;switch(e|0){case 0:{E=f[(a+40|0)>>2]|0;g=o;j=q;break b}case 3:{r=(f[(a+40|0)>>2]|0)+-1|0;V=51;break}default:{g=f[a+40+(e<<2)>>2]|0;if((e|0)==1)p=g;else{r=g;V=51}}}if((V|0)==51){V=0;f[(a+48|0)>>2]=f[(a+44|0)>>2];p=r}f[(a+44|0)>>2]=f[(a+40|0)>>2];f[(a+40|0)>>2]=p;E=p;g=o;j=q}while(0);i=f[33024+((s&255)<<2)>>2]|0;if((s&255)>31){e=f[A>>2]<<(g&31)>>>1>>>(31-t&31);g=g+t|0;f[O>>2]=g}else e=0;n=e+i|0;do if(!((t+v|0)>>>0<25|g>>>0>32)){if(j>>>0>=B>>>0){j=j+(0-(g>>>3))|0;f[(a+8|0)>>2]=j;g=g&7;f[O>>2]=g;f[A>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;break}if((j|0)==(S|0)){j=S;break}W=g>>>3;W=(j+(0-W)|0)>>>0<S>>>0?j-S|0:W;j=j+(0-W)|0;f[(a+8|0)>>2]=j;g=g-(W<<3)|0;f[O>>2]=g;f[A>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24}while(0);i=f[33236+((u&255)<<2)>>2]|0;if((u&255)>15){e=f[A>>2]<<(g&31)>>>1>>>(31-v&31);g=g+v|0;f[O>>2]=g}else e=0;m=e+i|0;do if(g>>>0>32)e=g;else{if(j>>>0>=B>>>0){j=j+(0-(g>>>3))|0;f[(a+8|0)>>2]=j;e=g&7;f[O>>2]=e;f[A>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;break}if((j|0)==(S|0)){e=g;j=S;break}e=g>>>3;e=(j+(0-e)|0)>>>0<S>>>0?j-S|0:e;j=j+(0-e)|0;f[(a+8|0)>>2]=j;e=g-(e<<3)|0;f[O>>2]=e;f[A>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24}while(0);W=d[w+(x<<2)>>1]|0;x=b[w+(x<<2)+3>>0]|0;g=f[A>>2]|0;i=e+(x&255)|0;f[O>>2]=i;f[(a+16|0)>>2]=(g<<(e&31)>>>1>>>(31-x&31))+(W&65535);W=d[y+(z<<2)>>1]|0;e=b[y+(z<<2)+3>>0]|0;f[O>>2]=i+(e&255)|0;f[(a+32|0)>>2]=(g<<(i&31)>>>1>>>(31-e&31))+(W&65535);do if((i+(e&255)|0)>>>0>32)e=i+(e&255)|0;else{if(j>>>0>=B>>>0){g=j+(0-((i+(e&255)|0)>>>3))|0;f[(a+8|0)>>2]=g;f[O>>2]=(i+(e&255)|0)&7;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[A>>2]=g;e=(i+(e&255)|0)&7;break}if((j|0)==(S|0)){e=i+(e&255)|0;break}W=(j+(0-((i+(e&255)|0)>>>3))|0)>>>0<S>>>0?j-S|0:(i+(e&255)|0)>>>3;g=j+(0-W)|0;f[(a+8|0)>>2]=g;f[O>>2]=(i+(e&255)|0)-(W<<3)|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[A>>2]=g;e=(i+(e&255)|0)-(W<<3)|0}while(0);i=d[C+(D<<2)>>1]|0;k=b[C+(D<<2)+3>>0]|0;f[O>>2]=e+(k&255);f[(a+24|0)>>2]=(g<<(e&31)>>>1>>>(31-k&31))+(i&65535);i=Q+m|0;k=Q+(m+n|0)|0;l=P+m|0;j=i+(0-E)|0;if(i>>>0>N>>>0|k>>>0>(L+M|0)>>>0){R=-9;f[a+1720>>2]=2;f[a+1724>>2]=6;break a}if(l>>>0>F>>>0){R=-11;f[a+1720>>2]=2;f[a+1724>>2]=6;break a}else{e=P;g=Q}while(1){F=e;D=h[F>>0]|h[F+1>>0]<<8|h[F+2>>0]<<16|h[F+3>>0]<<24;F=h[(F+4|0)>>0]|h[(F+4|0)+1>>0]<<8|h[(F+4|0)+2>>0]<<16|h[(F+4|0)+3>>0]<<24;W=g;b[W>>0]=D;b[W+1>>0]=D>>8;b[W+2>>0]=D>>16;b[W+3>>0]=D>>24;b[(W+4|0)>>0]=F;b[(W+4|0)+1>>0]=F>>8;b[(W+4|0)+2>>0]=F>>16;b[(W+4|0)+3>>0]=F>>24;g=g+8|0;if(g>>>0>=i>>>0)break;else e=e+8|0}do if((i-G|0)>>>0<E>>>0){if((i-H|0)>>>0<E>>>0){R=-11;f[a+1720>>2]=2;f[a+1724>>2]=6;break a}if(((I+(j-G|0)|0)+n|0)>>>0>I>>>0){Jrb(i|0,I+(j-G|0)|0|0,0-(j-G|0)|0|0)|0;J=i+(0-(j-G|0)|0)|0;c=G;K=(j-G|0)+n|0;V=82;break}else{Jrb(i|0,I+(j-G|0)|0|0,n|0)|0;break}}else{J=i;c=j;K=n;V=82}while(0);c:do if((V|0)==82){V=0;if(E>>>0<8){W=f[33380+(E<<2)>>2]|0;b[J>>0]=b[c>>0]|0;b[J+1>>0]=b[c+1>>0]|0;b[J+2>>0]=b[c+2>>0]|0;b[J+3>>0]=b[c+3>>0]|0;c=c+(f[33412+(E<<2)>>2]|0)|0;I=J+4|0;H=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[I>>0]=H;b[I+1>>0]=H>>8;b[I+2>>0]=H>>16;b[I+3>>0]=H>>24;c=c+(0-W)|0}else{I=c;H=h[I>>0]|h[I+1>>0]<<8|h[I+2>>0]<<16|h[I+3>>0]<<24;I=h[(I+4|0)>>0]|h[(I+4|0)+1>>0]<<8|h[(I+4|0)+2>>0]<<16|h[(I+4|0)+3>>0]<<24;W=J;b[W>>0]=H;b[W+1>>0]=H>>8;b[W+2>>0]=H>>16;b[W+3>>0]=H>>24;b[(W+4|0)>>0]=I;b[(W+4|0)+1>>0]=I>>8;b[(W+4|0)+2>>0]=I>>16;b[(W+4|0)+3>>0]=I>>24}e=J+8|0;c=c+8|0;if(k>>>0<=((L+M|0)+-13|0)>>>0){g=J+K|0;while(1){N=c;M=h[N>>0]|h[N+1>>0]<<8|h[N+2>>0]<<16|h[N+3>>0]<<24;N=h[(N+4|0)>>0]|h[(N+4|0)+1>>0]<<8|h[(N+4|0)+2>>0]<<16|h[(N+4|0)+3>>0]<<24;W=e;b[W>>0]=M;b[W+1>>0]=M>>8;b[W+2>>0]=M>>16;b[W+3>>0]=M>>24;b[(W+4|0)>>0]=N;b[(W+4|0)+1>>0]=N>>8;b[(W+4|0)+2>>0]=N>>16;b[(W+4|0)+3>>0]=N>>24;e=e+8|0;if(e>>>0>=g>>>0)break c;else c=c+8|0}}if(e>>>0<N>>>0){g=c;i=e;while(1){M=g;L=h[M>>0]|h[M+1>>0]<<8|h[M+2>>0]<<16|h[M+3>>0]<<24;M=h[(M+4|0)>>0]|h[(M+4|0)+1>>0]<<8|h[(M+4|0)+2>>0]<<16|h[(M+4|0)+3>>0]<<24;W=i;b[W>>0]=L;b[W+1>>0]=L>>8;b[W+2>>0]=L>>16;b[W+3>>0]=L>>24;b[(W+4|0)>>0]=M;b[(W+4|0)+1>>0]=M>>8;b[(W+4|0)+2>>0]=M>>16;b[(W+4|0)+3>>0]=M>>24;i=i+8|0;if(i>>>0>=N>>>0)break;else g=g+8|0}g=N;c=c+(N-e)|0}else g=e;if(g>>>0<k>>>0)e=g;else break;while(1){b[e>>0]=b[c>>0]|0;e=e+1|0;if(e>>>0>=k>>>0)break;else c=c+1|0}}while(0);if((m+n|0)>>>0>=4294967279){R=m+n|0;f[a+1720>>2]=2;f[a+1724>>2]=6;break a}c=f[O>>2]|0;if(c>>>0>32){V=33;f[a+1720>>2]=1;break a}P=l;Q=k;S=f[(a+12|0)>>2]|0;T=f[(a+8|0)>>2]|0;U=c}f[a+192>>2]=P;f[a+232>>2]=Q;f[a+440>>2]=R;f[a+824>>2]=S;f[a+832>>2]=T;f[a+848>>2]=U;f[a+1296>>2]=k;f[a+1304>>2]=l;f[a+1688>>2]=V}function q0a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0.0,t=0.0;k=f[a+112>>2]|0;l=f[a+120>>2]|0;j=f[a+320>>2]|0;a:{if(j&255&8|0){c=Wpb(180)|0;Krb(c|0,0,180)|0;f[c+128>>2]=-1;f[c+132>>2]=-1;f[(c+136|0)>>2]=0;f[(c+136|0)+4>>2]=0;f[(c+136|0)+8>>2]=0;f[(c+136|0)+12>>2]=0;f[(c+136|0)+16>>2]=0;f[(c+136|0)+20>>2]=0;f[(c+136|0)+24>>2]=0;n[c+164>>2]=1.0;f[c+168>>2]=0;f[c+172>>2]=0;d=f[(l+32|0)>>2]|0;f[(l+32|0)>>2]=c;if(d){KAa(d);Zpb(d);c=f[(l+32|0)>>2]|0}if(!(z$a(k,c)|0)){c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}}c=f[(l+36|0)>>2]|0;d=f[(l+40|0)>>2]|0;if((d|0)!=(c|0))f[(l+40|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);if(j&255&16|0){d=f[k>>2]|0;c=f[(k+4|0)>>2]|0;if((d+4|0)>>>0>c>>>0){c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[k>>2]=d+1|0;g=b[d>>0]|0;f[k>>2]=d+2|0;e=b[(d+1|0)>>0]|0;f[k>>2]=d+3|0;i=b[(d+2|0)>>0]|0;f[k>>2]=d+4|0;i=(e&255)<<8|g&255|(i&255)<<16|h[(d+3|0)>>0]<<24;b:do if(i|0){if((d+8|0)>>>0<=c>>>0){g=0;e=d+4|0;c=d+8|0;do{o=e+1|0;f[k>>2]=o;m=b[e>>0]|0;q=e+2|0;f[k>>2]=q;o=b[o>>0]|0;d=e+3|0;f[k>>2]=d;e=b[q>>0]|0;f[k>>2]=c;c=(o&255)<<8|m&255|(e&255)<<16|h[d>>0]<<24;f[(a+76|0)>>2]=c;d=f[(l+40|0)>>2]|0;if((d|0)==(f[(l+44|0)>>2]|0))BD(l+36|0,a+76|0);else{f[d>>2]=c;f[(l+40|0)>>2]=d+4}g=g+1|0;if(g>>>0>=i>>>0)break b;e=f[k>>2]|0;c=e+4|0}while(c>>>0<=(f[(k+4|0)>>2]|0)>>>0)}c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}while(0)}c=f[(l+48|0)>>2]|0;d=f[(l+52|0)>>2]|0;if((d|0)!=(c|0))f[(l+52|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);if(j&255&32|0){d=f[k>>2]|0;c=f[(k+4|0)>>2]|0;if((d+4|0)>>>0>c>>>0){c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[k>>2]=d+1|0;q=b[d>>0]|0;f[k>>2]=d+2|0;o=b[(d+1|0)>>0]|0;f[k>>2]=d+3|0;i=b[(d+2|0)>>0]|0;f[k>>2]=d+4|0;i=(o&255)<<8|q&255|(i&255)<<16|h[(d+3|0)>>0]<<24;c:do if(i|0){if((d+8|0)>>>0<=c>>>0){g=0;e=d+4|0;c=d+8|0;do{m=e+1|0;f[k>>2]=m;o=b[e>>0]|0;q=e+2|0;f[k>>2]=q;m=b[m>>0]|0;d=e+3|0;f[k>>2]=d;q=b[q>>0]|0;f[k>>2]=c;c=(m&255)<<8|o&255|(q&255)<<16|h[d>>0]<<24;f[(a+76|0)>>2]=c;d=f[(l+52|0)>>2]|0;if((d|0)==(f[(l+56|0)>>2]|0))BD(l+48|0,a+76|0);else{f[d>>2]=c;f[(l+52|0)>>2]=d+4}g=g+1|0;if(g>>>0>=i>>>0)break c;e=f[k>>2]|0;c=e+4|0}while(c>>>0<=(f[(k+4|0)>>2]|0)>>>0)}c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}while(0)}if(f[(l+72|0)>>2]|0){c=f[(l+68|0)>>2]|0;if(c|0)do{q=c;c=f[c>>2]|0;Zpb(q)}while((c|0)!=0);f[(l+68|0)>>2]=0;d=f[l+64>>2]|0;if(d|0){c=0;do{f[(f[(l+60|0)>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[(l+72|0)>>2]=0}if(j&255&64|0){d=f[k>>2]|0;c=f[(k+4|0)>>2]|0;if((d+4|0)>>>0>c>>>0){c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[k>>2]=d+1|0;q=b[d>>0]|0;f[k>>2]=d+2|0;o=b[(d+1|0)>>0]|0;f[k>>2]=d+3|0;i=b[(d+2|0)>>0]|0;f[k>>2]=d+4|0;i=(o&255)<<8|q&255|(i&255)<<16|h[(d+3|0)>>0]<<24;d:do if(i|0){e:do if((d+8|0)>>>0<=c>>>0){g=0;e=d+4|0;c=d+8|0;do{d=e+1|0;f[k>>2]=d;m=b[e>>0]|0;o=e+2|0;f[k>>2]=o;d=b[d>>0]|0;q=e+3|0;f[k>>2]=q;o=b[o>>0]|0;f[k>>2]=c;f[(a+76|0)>>2]=(d&255)<<8|m&255|(o&255)<<16|h[q>>0]<<24;if(!(x$a(k,a)|0))break e;c=E$a(l+60|0,a+76|0)|0;d=a;e=c+64|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));g=g+1|0;if(g>>>0>=i>>>0)break d;e=f[k>>2]|0;c=e+4|0}while(c>>>0<=(f[(k+4|0)>>2]|0)>>>0)}while(0);c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}while(0)}c=f[(l+80|0)>>2]|0;d=f[(l+84|0)>>2]|0;if((d|0)!=(c|0))f[(l+84|0)>>2]=d+(~((d+-32-c|0)>>>5)<<5);if(!(j&255&128)){c=1;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}c=f[k>>2]|0;if((c+4|0)>>>0>(f[(k+4|0)>>2]|0)>>>0){c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[k>>2]=c+1|0;q=b[c>>0]|0;f[k>>2]=c+2|0;o=b[(c+1|0)>>0]|0;f[k>>2]=c+3|0;e=b[(c+2|0)>>0]|0;f[k>>2]=c+4|0;e=(o&255)<<8|q&255|(e&255)<<16|h[(c+3|0)>>0]<<24;p[a>>3]=0.0;p[(a+8|0)>>3]=1.0;f[(a+16|0)>>2]=0;f[(a+16|0)+4>>2]=0;f[(a+16|0)+8>>2]=0;f[(a+16|0)+12>>2]=0;f:do if(e|0){d=0;while(1){if(!(i$a(k,a+76|0)|0))break;c=f[k>>2]|0;if((c+4|0)>>>0>(f[(k+4|0)>>2]|0)>>>0)break;f[k>>2]=c+1|0;o=b[c>>0]|0;f[k>>2]=c+2|0;m=b[(c+1|0)>>0]|0;f[k>>2]=c+3|0;q=b[(c+2|0)>>0]|0;f[k>>2]=c+4|0;c=(m&255)<<8|o&255|(q&255)<<16|h[(c+3|0)>>0]<<24;t=+n[((a+76|0)+4|0)>>2];r=+n[((a+76|0)+8|0)>>2];p[a>>3]=+n[(a+76|0)>>2];p[(a+8|0)>>3]=t;p[(a+16|0)>>3]=r;p[(a+24|0)>>3]=(f[s>>2]=c,+n[s>>2]);c=f[(l+84|0)>>2]|0;if((c|0)==(f[(l+88|0)>>2]|0))F$a(l+80|0,a);else{f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[c+12>>2]=f[a+12>>2];f[c+16>>2]=f[a+16>>2];f[c+20>>2]=f[a+20>>2];f[c+24>>2]=f[a+24>>2];f[c+28>>2]=f[a+28>>2];f[(l+84|0)>>2]=(f[(l+84|0)>>2]|0)+32}d=d+1|0;if(d>>>0>=e>>>0)break f}c=0;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}while(0);c=1;u=a;f[a+1280>>2]=6;f[a+1284>>2]=c|0;break a}f[a+192>>2]=c}function r0a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;r=f[a+272>>2]|0;s=f[a+280>>2]|0;q=f[a+664>>2]|0;o=f[a+680>>2]|0;m=f[a+712>>2]|0;t=f[a+2176>>2]|0;v=f[a+2192>>2]|0;w=f[a+2200>>2]|0;a:{d=f[(s+224|0)>>2]|0;c=f[(s+228|0)>>2]|0;if((c|0)!=(d|0))do{l=c+-96|0;f[(s+228|0)>>2]=l;LAa(l);c=f[(s+228|0)>>2]|0}while((c|0)!=(d|0));if((o&255)<<8&32768|0){c=f[r>>2]|0;if((c+4|0)>>>0>(f[(r+4|0)>>2]|0)>>>0){c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}f[r>>2]=c+1|0;i=b[c>>0]|0;f[r>>2]=c+2|0;t=b[(c+1|0)>>0]|0;f[r>>2]=c+3|0;g=b[(c+2|0)>>0]|0;f[r>>2]=c+4|0;g=(t&255)<<8|i&255|(g&255)<<16|h[(c+3|0)>>0]<<24;i=(a+8|0)+4|0;t=i;w=t+72|0;do{f[t>>2]=0;t=t+4|0}while((t|0)<(w|0));n[((a+8|0)+76|0)>>2]=1.0;f[(a+8|0)+80>>2]=0;f[((a+8|0)+84|0)>>2]=0;f[(a+8|0)+88>>2]=0;b:do if(g|0){e=0;while(1){if(!(C$a(r,a+8|0)|0))break;j=f[(s+228|0)>>2]|0;l=1;if(l){l=0;if(j>>>0<(f[(s+232|0)>>2]|0)>>>0){f[j>>2]=f[(a+8|0)>>2];f[(j+4|0)>>2]=f[i>>2];f[(j+4|0)+4>>2]=f[i+4>>2];f[(j+4|0)+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;k=f[((a+8|0)+16|0)>>2]|0;f[((a+8|0)+16|0)>>2]=0;f[j+16>>2]=k;f[(j+20|0)>>2]=0;f[(j+24|0)>>2]=0;f[j+28>>2]=0;f[(j+20|0)>>2]=f[((a+8|0)+20|0)>>2];f[(j+24|0)>>2]=f[((a+8|0)+24|0)>>2];f[j+28>>2]=f[((a+8|0)+28|0)>>2];f[((a+8|0)+28|0)>>2]=0;f[((a+8|0)+24|0)>>2]=0;f[((a+8|0)+20|0)>>2]=0;k=f[((a+8|0)+32|0)>>2]|0;f[((a+8|0)+32|0)>>2]=0;f[j+32>>2]=k;f[(j+36|0)>>2]=0;f[(j+40|0)>>2]=0;f[j+44>>2]=0;f[(j+36|0)>>2]=f[((a+8|0)+36|0)>>2];f[(j+40|0)>>2]=f[((a+8|0)+40|0)>>2];f[j+44>>2]=f[((a+8|0)+44|0)>>2];f[((a+8|0)+44|0)>>2]=0;f[((a+8|0)+40|0)>>2]=0;f[((a+8|0)+36|0)>>2]=0;f[(j+48|0)>>2]=0;f[(j+52|0)>>2]=0;f[j+56>>2]=0;f[(j+48|0)>>2]=f[((a+8|0)+48|0)>>2];f[(j+52|0)>>2]=f[((a+8|0)+52|0)>>2];f[j+56>>2]=f[((a+8|0)+56|0)>>2];f[((a+8|0)+56|0)>>2]=0;f[((a+8|0)+52|0)>>2]=0;f[((a+8|0)+48|0)>>2]=0;k=f[((a+8|0)+60|0)>>2]|0;f[((a+8|0)+60|0)>>2]=0;d=f[((a+8|0)+64|0)>>2]|0;f[((a+8|0)+64|0)>>2]=0;f[j+60>>2]=k;f[j+64>>2]=d;c=f[((a+8|0)+68|0)>>2]|0;f[(j+68|0)>>2]=c;x=f[((a+8|0)+72|0)>>2]|0;f[j+72>>2]=x;f[j+76>>2]=f[((a+8|0)+76|0)>>2];if(x|0){c=f[c+4>>2]|0;do if(!((d+-1|0)&d))c=c&(d+-1|0);else{if(c>>>0<d>>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);f[k+(c<<2)>>2]=j+68|0;f[((a+8|0)+68|0)>>2]=0;f[((a+8|0)+72|0)>>2]=0}f[(j+80|0)>>2]=0;f[(j+84|0)>>2]=0;f[j+88>>2]=0;f[(j+80|0)>>2]=f[((a+8|0)+80|0)>>2];f[(j+84|0)>>2]=f[((a+8|0)+84|0)>>2];f[j+88>>2]=f[((a+8|0)+88|0)>>2];f[((a+8|0)+88|0)>>2]=0;f[((a+8|0)+84|0)>>2]=0;f[((a+8|0)+80|0)>>2]=0;f[j+92>>2]=f[((a+8|0)+92|0)>>2];f[(s+228|0)>>2]=(f[(s+228|0)>>2]|0)+96}else l=1}if(l)if(1)N$a(s+224|0,a+8|0);e=e+1|0;if(e>>>0>=g>>>0)break b}LAa(a+8|0);c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}while(0);LAa(a+8|0)}i=f[(s+236|0)>>2]|0;c=f[(s+240|0)>>2]|0;if((c|0)!=(i|0))do{f[(s+240|0)>>2]=c+-224;d=f[c+-12>>2]|0;if(d|0){e=c+-8|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-12-d|0)>>>0)/12|0)*12|0);Zpb(d)}KAa(c+-204|0);c=c+-220|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=f[(s+240|0)>>2]|0}while((c|0)!=(i|0));do if((m&255)<<16&65536|0){c=f[r>>2]|0;if((c+4|0)>>>0>(f[(r+4|0)>>2]|0)>>>0){c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}f[r>>2]=c+1|0;i=b[c>>0]|0;f[r>>2]=c+2|0;j=b[(c+1|0)>>0]|0;f[r>>2]=c+3|0;d=b[(c+2|0)>>0]|0;f[r>>2]=c+4|0;d=(j&255)<<8|i&255|(d&255)<<16|h[(c+3|0)>>0]<<24;i=(a+8|0)+4|0;j=(a+8|0)+28|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[(a+8|0)+104>>2]=0;k=(a+8|0)+112|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[(a+8|0)+128>>2]=0;l=(a+8|0)+136|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[(a+8|0)+148>>2]=-1;f[(a+8|0)+152>>2]=-1;m=(a+8|0)+156|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;f[m+24>>2]=0;n[(a+8|0)+184>>2]=1.0;f[(a+8|0)+188>>2]=0;f[(a+8|0)+192>>2]=0;f[((a+8|0)+212|0)>>2]=0;f[((a+8|0)+216|0)>>2]=0;f[(a+8|0)+220>>2]=0;do if(!d)g=1;else{c=0;while(1){if(!(A$a(r,a+8|0)|0)){c=0;break}e=f[(s+240|0)>>2]|0;if((e|0)==(f[(s+244|0)>>2]|0))P$a(s+236|0,a+8|0);else{O$a(e,a+8|0);f[(s+240|0)>>2]=(f[(s+240|0)>>2]|0)+224}c=c+1|0;if(c>>>0>=d>>>0){c=1;break}}d=f[((a+8|0)+212|0)>>2]|0;if(!d){g=c;break}e=f[((a+8|0)+216|0)>>2]|0;if((e|0)!=(d|0))f[((a+8|0)+216|0)>>2]=e+(~(((e+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);g=c}while(0);c=f[(a+8|0)+176>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0){if((f[(d+20|0)>>2]|0)!=(e|0))f[(d+20|0)>>2]=e;Zpb(e)}Zpb(d)}while((c|0)!=0);c=f[((a+8|0)+168|0)>>2]|0;f[((a+8|0)+168|0)>>2]=0;if(c|0)Zpb(c);if((b[m+11>>0]|0)<0)Zpb(f[m>>2]|0);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);if(g)break;else c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}while(0);p[(s+248|0)>>3]=0.0;do if((o&255)<<8&16384|0){c=f[r>>2]|0;if((c+8|0)>>>0>(f[(r+4|0)>>2]|0)>>>0){c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}else{f[r>>2]=c+1|0;d=h[c>>0]|0;f[r>>2]=c+2|0;y=Frb(h[(c+1|0)>>0]|0,0,8)|0;l=I;f[r>>2]=c+3|0;e=Frb(h[(c+2|0)>>0]|0,0,16)|0;l=l|I;f[r>>2]=c+4|0;g=Frb(h[(c+3|0)>>0]|0,0,24)|0;l=l|I;f[r>>2]=c+5|0;m=h[(c+4|0)>>0]|0;f[r>>2]=c+6|0;i=Frb(h[(c+5|0)>>0]|0,0,40)|0;o=I;f[r>>2]=c+7|0;j=Frb(h[(c+6|0)>>0]|0,0,48)|0;x=I;f[r>>2]=c+8|0;k=Frb(h[(c+7|0)>>0]|0,0,56)|0;f[(s+248|0)>>2]=y|d|e|g|i|j|k;f[(s+248|0)+4>>2]=l|m|o|x|I;break}}while(0);c=f[(s+256|0)>>2]|0;f[(s+256|0)>>2]=0;if(c|0)Zpb(c);c:do if(q&16777216|0){do if(j$a(r,a+8|0)|0){if(!(j$a(r,(a+8|0)+24|0)|0))break;c=Wpb(48)|0;t=c;v=a+8|0;w=t+48|0;do{f[t>>2]=f[v>>2];t=t+4|0;v=v+4|0}while((t|0)<(w|0));d=f[(s+256|0)>>2]|0;f[(s+256|0)>>2]=c;if(d|0)Zpb(d);break c}while(0);c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}while(0);do if(q&134217728|0){if(o$a(r,s+260|0)|0)break;else c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}while(0);do if(q&268435456|0){if(s$a(r,s+272|0)|0)break;else c=0;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}while(0);c=1;u=a;f[a+2264>>2]=6;f[a+2268>>2]=c|0;break a}f[a+544>>2]=c;f[a+2176>>2]=t;f[a+2192>>2]=v;f[a+2200>>2]=w}function s0a(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;M=f[a+272>>2]|0;N=f[a+280>>2]|0;L=f[a+544>>2]|0;E=f[a+664>>2]|0;H=f[a+672>>2]|0;K=f[a+680>>2]|0;I=f[a+712>>2]|0;F=f[a+968>>2]|0;k=f[a+984>>2]|0;G=f[a+1504>>2]|0;m=f[a+1872>>2]|0;O=f[a+2176>>2]|0;P=f[a+2192>>2]|0;Q=f[a+2200>>2]|0;J=f[a+2224>>2]|0;a:{b:do if((I&255)<<16&2097152|0){c=k+4|0;if(c>>>0>m>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}x=k+1|0;f[M>>2]=x;y=b[k>>0]|0;l=k+2|0;f[M>>2]=l;x=b[x>>0]|0;j=k+3|0;f[M>>2]=j;l=b[l>>0]|0;f[M>>2]=c;j=(x&255)<<8|y&255|(l&255)<<16|h[j>>0]<<24;l=k+8|0;if(l>>>0>m>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}e=k+5|0;f[M>>2]=e;c=b[c>>0]|0;i=k+6|0;f[M>>2]=i;e=b[e>>0]|0;g=k+7|0;f[M>>2]=g;i=b[i>>0]|0;f[M>>2]=l;if(j>>>0>7){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}if(!((j|0)!=7?1:((e&255)<<8|c&255|(i&255)<<16|h[g>>0]<<24|0)==0)){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}if(!(0==0&(G&8|0)==0)){c=k+12|0;if(c>>>0>m>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}t=k+9|0;f[M>>2]=t;w=b[l>>0]|0;y=k+10|0;f[M>>2]=y;t=b[t>>0]|0;x=k+11|0;f[M>>2]=x;y=b[y>>0]|0;f[M>>2]=c;x=(t&255)<<8|w&255|(y&255)<<16|h[x>>0]<<24;if(x|0){w=0;while(1){f[(a+8|0)>>2]=0;f[(a+8|0)+4>>2]=0;f[(a+8|0)+8>>2]=0;y=1;if(y){y=0;if(g$a(M,a+8|0)|0){c=f[M>>2]|0;e=1;if(e){e=0;if((c+4|0)>>>0>(f[(M+4|0)>>2]|0)>>>0)q=1;else e=1}if(e)if(1){f[M>>2]=c+1|0;s=b[c>>0]|0;f[M>>2]=c+2|0;m=b[(c+1|0)>>0]|0;f[M>>2]=c+3|0;t=b[(c+2|0)>>0]|0;f[M>>2]=c+4|0;t=(m&255)<<8|s&255|(t&255)<<16|h[(c+3|0)>>0]<<24;cqb(a+232|0,a+8|0);f[((a+232|0)+12|0)>>2]=t;s=b[((a+232|0)+11|0)>>0]|0;m=s<<24>>24<0?f[(a+232|0)>>2]|0:a+232|0;q=s<<24>>24<0?f[((a+232|0)+4|0)>>2]|0:s&255;if(q>>>0>3){c=m;i=q;e=q;while(1){r=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;i=(X(r>>>24^r,1540483477)|0)^(X(i,1540483477)|0);e=e+-4|0;if(e>>>0<=3)break;else c=c+4|0}e=(q+-4|0)-((q+-4|0)&-4)|0;g=m+(((q+-4|0)&-4)+4)|0;c=i}else{e=q;g=m;c=q}switch(e|0){case 3:{B=h[g+2>>0]<<16^c;J=22;break}case 2:{B=c;J=22;break}case 1:{C=c;J=23;break}default:D=c}if((J|0)==22){C=h[g+1>>0]<<8^B;J=23}if((J|0)==23){J=0;D=X(C^h[g>>0],1540483477)|0}r=X(D>>>13^D,1540483477)|0;g=f[(N+288|0)>>2]|0;c:do{c=1;if(c){c=0;if(!g){A=0;J=64}else c=1}if(c)if(1){do if(!((g+-1|0)&g))l=(r>>>15^r)&(g+-1|0);else{if((r>>>15^r)>>>0<g>>>0){l=r>>>15^r;break}l=((r>>>15^r)>>>0)%(g>>>0)|0}while(0);c=f[(f[(N+284|0)>>2]|0)+(l<<2)>>2]|0;if(!c){A=l;J=64}else{c=f[c>>2]|0;if(!c){A=l;J=64;break}if(!((g+-1|0)&g)){if(!q)while(1){q=f[c+4>>2]|0;if(!((q|0)==(r>>>15^r|0)|(q&(g+-1|0)|0)==(l|0))){A=l;J=64;break c}q=b[c+8+11>>0]|0;if(!((q<<24>>24<0?f[c+12>>2]|0:q&255)|0)){v=s;break c}c=f[c>>2]|0;if(!c){A=l;J=64;break c}}while(1){k=f[c+4>>2]|0;if(!((k|0)==(r>>>15^r|0)|(k&(g+-1|0)|0)==(l|0))){A=l;J=64;break c}e=c+8|0;k=b[e+11>>0]|0;do if(((k<<24>>24<0?f[c+12>>2]|0:k&255)|0)==(q|0)){i=f[e>>2]|0;if(k<<24>>24<0)if(!(idb(i,m,q)|0)){v=s;break c}else break;if((b[m>>0]|0)!=(i&255)<<24>>24)break;j=e;e=k&255;i=m;do{e=e+-1|0;j=j+1|0;if(!e){v=s;break c}i=i+1|0}while((b[j>>0]|0)==(b[i>>0]|0))}while(0);c=f[c>>2]|0;if(!c){A=l;J=64;break c}}}if(!q)while(1){e=f[c+4>>2]|0;if((e|0)!=(r>>>15^r|0)){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(l|0)){A=l;J=64;break c}}q=b[c+8+11>>0]|0;if(!((q<<24>>24<0?f[c+12>>2]|0:q&255)|0)){v=s;break c}c=f[c>>2]|0;if(!c){A=l;J=64;break c}}while(1){e=f[c+4>>2]|0;if((e|0)!=(r>>>15^r|0)){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(l|0)){A=l;J=64;break c}}e=c+8|0;k=b[e+11>>0]|0;do if(((k<<24>>24<0?f[c+12>>2]|0:k&255)|0)==(q|0)){i=f[e>>2]|0;if(k<<24>>24<0)if(!(idb(i,m,q)|0)){v=s;break c}else break;if((b[m>>0]|0)!=(i&255)<<24>>24)break;j=e;e=k&255;i=m;do{e=e+-1|0;j=j+1|0;if(!e){v=s;break c}i=i+1|0}while((b[j>>0]|0)==(b[i>>0]|0))}while(0);c=f[c>>2]|0;if(!c){A=l;J=64;break}}}}}while(0);if((J|0)==64){J=0;i=Wpb(24)|0;f[(i+8|0)>>2]=f[(a+232|0)>>2];f[(i+8|0)+4>>2]=f[(a+232|0)+4>>2];f[(i+8|0)+8>>2]=f[(a+232|0)+8>>2];f[(a+232|0)>>2]=0;f[(a+232|0)+4>>2]=0;f[(a+232|0)+8>>2]=0;f[i+20>>2]=t;f[i+4>>2]=r>>>15^r;f[i>>2]=0;o=+(((f[(N+296|0)>>2]|0)+1|0)>>>0);p=+n[(N+300|0)>>2];do if((g|0)==0|p*+(g>>>0)<o){c=~~+W(+(o/p))>>>0;J$a(N+284|0,(g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1)>>>0<c>>>0?c:g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1);c=f[(N+288|0)>>2]|0;if(!((c+-1|0)&c)){g=c;c=(c+-1|0)&(r>>>15^r);break}if((r>>>15^r)>>>0<c>>>0){g=c;c=r>>>15^r;break}g=c;c=((r>>>15^r)>>>0)%(c>>>0)|0}else c=A;while(0);c=(f[(N+284|0)>>2]|0)+(c<<2)|0;e=f[c>>2]|0;do if(!e){f[i>>2]=f[(N+292|0)>>2];f[(N+292|0)>>2]=i;f[c>>2]=N+292|0;c=f[i>>2]|0;if(!c)break;c=f[c+4>>2]|0;e=g+-1|0;do if(!(e&g))c=c&e;else{if(c>>>0<g>>>0)break;c=(c>>>0)%(g>>>0)|0}while(0);z=(f[(N+284|0)>>2]|0)+(c<<2)|0;J=77}else{f[i>>2]=f[e>>2];z=e;J=77}while(0);if((J|0)==77){J=0;f[z>>2]=i}f[(N+296|0)>>2]=(f[(N+296|0)>>2]|0)+1;v=b[((a+232|0)+11|0)>>0]|0}if(v<<24>>24<0)Zpb(f[(a+232|0)>>2]|0);q=0}}else y=1}if(y)if(1)q=1;if((b[((a+8|0)+11|0)>>0]|0)<0)Zpb(f[(a+8|0)>>2]|0);w=w+1|0;if(q|0){L=0;break}if(w>>>0>=x>>>0)break b}u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}}}while(0);f[a>>2]=F|((K&255)<<8|H&255|(I&255)<<16|E);f[a+4>>2]=G;f[(a+8|0)>>2]=f[a>>2];f[(a+8|0)+4>>2]=f[a+4>>2];if(!(y$a(M,a+8|0,N)|0)){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[(N+168|0)>>2]=0;do if((I&255)<<16&4194304|0){c=f[M>>2]|0;if((c+1|0)>>>0>(f[(M+4|0)>>2]|0)>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=c+1|0;c=h[c>>0]|0;f[(N+168|0)>>2]=c;if(!(b[M+36>>0]|0)){if((c&6|0)!=6)break}else if(!((c&6|0)==6?(f[M+8>>2]|0)>>>0<2:0))break;f[(N+168|0)>>2]=c&217|32}while(0);c=f[(N+172|0)>>2]|0;e=f[(N+176|0)>>2]|0;if((e|0)!=(c|0))f[(N+176|0)>>2]=e+(~((e+-4-c|0)>>>2)<<2);if(H&255&16|0){e=f[M>>2]|0;c=f[(M+4|0)>>2]|0;if((e+4|0)>>>0>c>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=e+1|0;G=b[e>>0]|0;f[M>>2]=e+2|0;F=b[(e+1|0)>>0]|0;f[M>>2]=e+3|0;j=b[(e+2|0)>>0]|0;f[M>>2]=e+4|0;j=(F&255)<<8|G&255|(j&255)<<16|h[(e+3|0)>>0]<<24;f[(a+8|0)>>2]=0;d:do if(j|0){if((e+8|0)>>>0<=c>>>0){i=0;g=e+4|0;c=e+8|0;do{E=g+1|0;f[M>>2]=E;F=b[g>>0]|0;G=g+2|0;f[M>>2]=G;E=b[E>>0]|0;e=g+3|0;f[M>>2]=e;G=b[G>>0]|0;f[M>>2]=c;c=(E&255)<<8|F&255|(G&255)<<16|h[e>>0]<<24;f[(a+8|0)>>2]=c;e=f[(N+176|0)>>2]|0;if((e|0)==(f[(N+180|0)>>2]|0))K$a(N+172|0,a+8|0);else{f[e>>2]=c;f[(N+176|0)>>2]=e+4}i=i+1|0;if(i>>>0>=j>>>0)break d;g=f[M>>2]|0;c=g+4|0}while(c>>>0<=(f[(M+4|0)>>2]|0)>>>0)}L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}while(0)}f[(N+184|0)>>2]=-1;f[(N+196|0)>>2]=-1;f[(N+200|0)>>2]=-1;do if(H&255&32|0){c=f[M>>2]|0;e=f[(M+4|0)>>2]|0;if((c+4|0)>>>0>e>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=c+1|0;F=b[c>>0]|0;f[M>>2]=c+2|0;E=b[(c+1|0)>>0]|0;f[M>>2]=c+3|0;G=b[(c+2|0)>>0]|0;f[M>>2]=c+4|0;f[(N+184|0)>>2]=(E&255)<<8|F&255|(G&255)<<16|h[(c+3|0)>>0]<<24;if(H&255&64|0){if((c+8|0)>>>0>e>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=c+5|0;F=b[(c+4|0)>>0]|0;f[M>>2]=c+6|0;E=b[(c+5|0)>>0]|0;f[M>>2]=c+7|0;G=b[(c+6|0)>>0]|0;f[M>>2]=c+8|0;f[(N+196|0)>>2]=(E&255)<<8|F&255|(G&255)<<16|h[(c+7|0)>>0]<<24;if((c+12|0)>>>0>e>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}else{f[M>>2]=c+9|0;F=b[(c+8|0)>>0]|0;f[M>>2]=c+10|0;E=b[(c+9|0)>>0]|0;f[M>>2]=c+11|0;G=b[(c+10|0)>>0]|0;f[M>>2]=c+12|0;f[(N+200|0)>>2]=(E&255)<<8|F&255|(G&255)<<16|h[(c+11|0)>>0]<<24;break}}}while(0);e=f[(N+212|0)>>2]|0;c=f[(N+216|0)>>2]|0;if((c|0)!=(e|0))do{G=c+-180|0;f[(N+216|0)>>2]=G;KAa(G);c=f[(N+216|0)>>2]|0}while((c|0)!=(e|0));if(H&255&128|0){c=f[M>>2]|0;if((c+4|0)>>>0>(f[(M+4|0)>>2]|0)>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=c+1|0;j=b[c>>0]|0;f[M>>2]=c+2|0;k=b[(c+1|0)>>0]|0;f[M>>2]=c+3|0;e=b[(c+2|0)>>0]|0;f[M>>2]=c+4|0;e=(k&255)<<8|j&255|(e&255)<<16|h[(c+3|0)>>0]<<24;j=(a+8|0)+8|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[(a+8|0)+84>>2]=0;k=(a+8|0)+92|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[(a+8|0)+108>>2]=0;l=(a+8|0)+116|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[((a+8|0)+128|0)>>2]=-1;f[(a+8|0)+132>>2]=-1;m=(a+8|0)+136|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;f[m+24>>2]=0;n[(a+8|0)+164>>2]=1.0;f[(a+8|0)+168>>2]=0;f[(a+8|0)+172>>2]=0;if(!e)c=1;else{c=0;while(1){if(!(z$a(M,a+8|0)|0)){c=0;break}g=f[(N+216|0)>>2]|0;if((g|0)==(f[(N+220|0)>>2]|0))M$a(N+212|0,a+8|0);else{O=f[(a+8|0)+4>>2]|0;f[g>>2]=f[(a+8|0)>>2];f[g+4>>2]=O;cqb(g+8|0,j);O=g+20|0;P=(a+8|0)+20|0;Q=O+68|0;do{f[O>>2]=f[P>>2];O=O+4|0;P=P+4|0}while((O|0)<(Q|0));f[g+88>>2]=f[((a+8|0)+88|0)>>2];cqb(g+92|0,k);f[(g+104|0)>>2]=f[((a+8|0)+104|0)>>2];f[(g+104|0)+4>>2]=f[((a+8|0)+104|0)+4>>2];d[(g+104|0)+8>>1]=d[((a+8|0)+104|0)+8>>1]|0;cqb(g+116|0,l);H=f[((a+8|0)+128|0)+4>>2]|0;f[(g+128|0)>>2]=f[((a+8|0)+128|0)>>2];f[(g+128|0)+4>>2]=H;cqb(g+136|0,m);L$a(g+148|0,(a+8|0)+148|0);f[(g+168|0)>>2]=f[((a+8|0)+168|0)>>2];f[(g+168|0)+4>>2]=f[((a+8|0)+168|0)+4>>2];f[(g+168|0)+8>>2]=f[((a+8|0)+168|0)+8>>2];f[(N+216|0)>>2]=(f[(N+216|0)>>2]|0)+180}c=c+1|0;if(c>>>0>=e>>>0){c=1;break}}e=f[(a+8|0)+156>>2]|0;if(e)do{g=e;e=f[e>>2]|0;i=f[g+16>>2]|0;if(i|0){if((f[(g+20|0)>>2]|0)!=(i|0))f[(g+20|0)>>2]=i;Zpb(i)}Zpb(g)}while((e|0)!=0)}e=f[((a+8|0)+148|0)>>2]|0;f[((a+8|0)+148|0)>>2]=0;if(e|0)Zpb(e);if((b[m+11>>0]|0)<0)Zpb(f[m>>2]|0);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);if(!c){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}}f[(N+204|0)>>2]=-1;f[(N+208|0)>>2]=-1;if((I&255)<<16&524288|0){c=f[M>>2]|0;e=f[(M+4|0)>>2]|0;if((c+4|0)>>>0<=e>>>0){f[M>>2]=c+1|0;H=b[c>>0]|0;f[M>>2]=c+2|0;G=b[(c+1|0)>>0]|0;f[M>>2]=c+3|0;I=b[(c+2|0)>>0]|0;f[M>>2]=c+4|0;f[(N+208|0)>>2]=(G&255)<<8|H&255|(I&255)<<16|h[(c+3|0)>>0]<<24;if((c+8|0)>>>0<=e>>>0){f[M>>2]=c+5|0;K=b[(c+4|0)>>0]|0;f[M>>2]=c+6|0;I=b[(c+5|0)>>0]|0;f[M>>2]=c+7|0;L=b[(c+6|0)>>0]|0;f[M>>2]=c+8|0;f[(N+204|0)>>2]=(I&255)<<8|K&255|(L&255)<<16|h[(c+7|0)>>0]<<24;L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}}}f[(N+188|0)>>2]=-1;f[(N+192|0)>>2]=-1;do if((K&255)<<8&512|0){c=f[M>>2]|0;e=f[(M+4|0)>>2]|0;if((c+4|0)>>>0>e>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}f[M>>2]=c+1|0;I=b[c>>0]|0;f[M>>2]=c+2|0;H=b[(c+1|0)>>0]|0;f[M>>2]=c+3|0;K=b[(c+2|0)>>0]|0;f[M>>2]=c+4|0;f[(N+188|0)>>2]=(H&255)<<8|I&255|(K&255)<<16|h[(c+3|0)>>0]<<24;if((c+8|0)>>>0>e>>>0){L=0;u=a;f[a+2272>>2]=6;f[a+2276>>2]=L|0;break a}else{f[M>>2]=c+5|0;I=b[(c+4|0)>>0]|0;f[M>>2]=c+6|0;H=b[(c+5|0)>>0]|0;f[M>>2]=c+7|0;K=b[(c+6|0)>>0]|0;f[M>>2]=c+8|0;f[(N+192|0)>>2]=(H&255)<<8|I&255|(K&255)<<16|h[(c+7|0)>>0]<<24;break}}while(0)}f[a+544>>2]=L;f[a+2176>>2]=O;f[a+2192>>2]=P;f[a+2200>>2]=Q;f[a+2224>>2]=J}function t0a(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=f[a+336>>2]|0;m=f[a+384>>2]|0;k=f[a+400>>2]|0;p=f[a+408>>2]|0;q=f[a+472>>2]|0;s=f[a+896>>2]|0;n=f[a+936>>2]|0;t=f[a+2240>>2]|0;j=f[a+2560>>2]|0;o=f[a+2576>>2]|0;u=f[a+2712>>2]|0;v=f[a+2976>>2]|0;w=f[a+3008>>2]|0;l=f[a+3016>>2]|0;a:{if(w){w=0;switch(l|0){case 90:{if(o>>>0<16){v=261;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}s=(f[u+8>>2]|0)+19&-4;if(s>>>0>o>>>0){v=263;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[(r+8|0)>>2]|0;if((f[(r+4|0)>>2]|0)==(c|0)){m=Wpb(12)|0;n=Wpb(16384)|0;f[m>>2]=n;f[m+4>>2]=n;f[m+8>>2]=n+16384}else{m=f[(c+-4|0)>>2]|0;f[(r+8|0)>>2]=c+-4|0}n=c0a(u,m)|0;if((n|0)>=0){v=280;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=(f[(r+72|0)>>2]|0)-n|0;f[(r+72|0)>>2]=c;if(n+o|0|0){e=m+4|0;h=f[e>>2]|0;i=f[m>>2]|0;g=(h-i|0)+(n+o|0)|0;if(g>>>0>(h-i|0)>>>0){SAa(m,n+o|0);e=f[m>>2]|0;c=f[(r+72|0)>>2]|0}else if(g>>>0<(h-i|0)>>>0)if((i+g|0|0)==(h|0))e=i;else{f[e>>2]=i+g|0;e=i}else e=i;Irb(e+(h-i|0)|0,(f[j>>2]|0)+c|0,n+o|0|0)|0}f[(r+72|0)>>2]=0;e=f[(r+68|0)>>2]|0;c=f[e>>2]|0;if((f[(e+4|0)>>2]|0)!=(c|0))f[(e+4|0)>>2]=c;f[(a+8|0)>>2]=e;c=f[(r+8|0)>>2]|0;if((c|0)==(f[(r+12|0)>>2]|0))e0a(r+4|0,a+8|0);else{f[c>>2]=e;f[(r+8|0)>>2]=(f[(r+8|0)>>2]|0)+4}f[(r+68|0)>>2]=m;k=(f[m+4>>2]|0)-(f[m>>2]|0)|0;break}case 71:{if(o>>>0<12){v=288;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}g=f[(u+8|0)>>2]|0;if(o>>>0<((g<<2)+12|0)>>>0){q=(g<<2)+12|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}h=f[(f[t>>2]|0)+44>>2]|0;c=f[(r+80|0)>>2]|0;e=f[(r+84|0)>>2]|0;if(!e)e=g;else{e=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(e+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0;e=f[(u+8|0)>>2]|0}Kh[h&255](t,c,f[u+4>>2]|0,e,u+12|0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+((g<<2)+12|0);k=p;break}default:w=1}}if(w){w=0;switch(l|0){case 85:{if(o>>>0<8){v=295;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[u+4>>2]|0;if(o>>>0<(c+11&-4)>>>0){q=c+11&-4;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}e=f[(r+84|0)>>2]|0;do if(!e)Eh[f[(f[t>>2]|0)+36>>2]&255](t,0,u+8|0,c);else{if((c|0)==27?(d[(f[e+4>>2]|0)+164>>1]&16)==0:0)if(!(Xcb(u+8|0,192751)|0))break;Eh[f[(f[t>>2]|0)+36>>2]&255](t,0,u+8|0,c)}while(0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+(c+11&-4);k=p;break}case 117:{if(o>>>0<12){v=305;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[u+8>>2]|0;if(o>>>0<(c+15&-4)>>>0){q=c+15&-4;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}e=f[(r+84|0)>>2]|0;do if(!e)Eh[f[(f[t>>2]|0)+36>>2]&255](t,f[u+4>>2]|0,u+12|0,c);else{g=f[u+4>>2]|0;if((c|0)==27?(d[(f[e+4>>2]|0)+164>>1]&16)==0:0)if(!(Xcb(u+12|0,192751)|0))break;Eh[f[(f[t>>2]|0)+36>>2]&255](t,g,u+12|0,c)}while(0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+(c+15&-4);k=p;break}case 112:{if(o>>>0<12){v=315;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[u+4>>2]|0;if(o>>>0<((c*24|0)+12|0)>>>0){q=(c*24|0)+12|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}j=f[u+8>>2]|0;Kh[f[(f[t>>2]|0)+40>>2]&255](t,c,(j&1|0)!=0,(j&2|0)!=0,u+12|0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+((c*24|0)+12|0);k=p;break}case 109:{if(o>>>0<16){v=320;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}g=f[(f[t>>2]|0)+48>>2]|0;c=f[u+4>>2]|0;e=f[(r+84|0)>>2]|0;if(e){j=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(j+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0}Eh[g&255](t,c,f[u+8>>2]|0,f[u+12>>2]|0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+16;k=p;break}default:w=1}}if(w){w=0;switch(l|0){case 48:{if(o>>>0<16){v=326;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}g=f[(f[t>>2]|0)+52>>2]|0;c=f[u+4>>2]|0;e=f[(r+84|0)>>2]|0;if(e){j=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(j+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0}Eh[g&255](t,c,f[u+8>>2]|0,f[u+12>>2]|0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+16;k=p;break}default:w=1}}if(w){w=0;switch(l|0){case 101:{if(o>>>0<20){v=332;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}i=f[(u+8|0)>>2]|0;if(o>>>0<((i<<2)+20|0)>>>0){q=(i<<2)+20|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}h=f[(u+12|0)>>2]|0;b:do if((h|0)<67108875){switch(h|0){case 67108873:break;default:{v=344;break b}}c=f[u+4>>2]|0;e=f[(r+84|0)>>2]|0;if(!e){Kh[f[(f[t>>2]|0)+68>>2]&255](t,c,f[(u+20|0)>>2]|0,f[(u+20|0)+4>>2]|0,f[u+16>>2]|0);break}else{w0a(f[e+4>>2]|0,c,f[(u+20|0)>>2]|0,f[(u+20|0)+4>>2]|0,f[u+16>>2]|0,t);break}}else if((h|0)<268435467){switch(h|0){case 67108875:break;default:{v=344;break b}}c=f[u+4>>2]|0;e=f[(r+84|0)>>2]|0;if(!e){Kh[f[(f[t>>2]|0)+64>>2]&255](t,c,f[(u+20|0)>>2]|0,f[(u+20|0)+4>>2]|0,f[u+16>>2]|0);break}else{o0a(f[e+4>>2]|0,c,f[(u+20|0)>>2]|0,f[(u+20|0)+4>>2]|0,f[u+16>>2]|0,t);break}}else{switch(h|0){case 268435467:break;default:{v=344;break b}}c=f[u+4>>2]|0;g=f[(f[t>>2]|0)+72>>2]|0;e=f[(r+84|0)>>2]|0;if(!e)e=i;else{e=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(e+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0;e=f[(u+8|0)>>2]|0}Kh[g&255](t,c,e,u+20|0,f[u+16>>2]|0);break}while(0);do if((v|0)==344){v=0;c=f[u+4>>2]|0;if(h&268435456|0){Kh[f[(f[t>>2]|0)+56>>2]&255](t,c,i,u+20|0,h);break}e=f[(r+84|0)>>2]|0;if(!e){g=i;e=h}else{g=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(g+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0;g=f[(u+8|0)>>2]|0;e=f[(u+12|0)>>2]|0}Kh[f[(f[t>>2]|0)+56>>2]&255](t,c,g,u+20|0,e)}while(0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+((i<<2)+20|0);k=p;break}default:w=1}}if(w){w=0;switch(l|0){case 51:{if(o>>>0<20){v=352;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[(r+84|0)>>2]|0;do if(!c)Kh[f[(f[t>>2]|0)+60>>2]&255](t,f[u+4>>2]|0,f[u+8>>2]|0,f[u+12>>2]|0,f[u+16>>2]|0);else{c=f[c+4>>2]|0;if((f[(u+16|0)>>2]|0)!=3){i=f[(f[t>>2]|0)+60>>2]|0;f[(a+8|0)>>2]=f[u+4>>2];j=(_$a(c+80|0,a+8|0)|0)+12|0;Kh[i&255](t,f[j>>2]|0,f[u+8>>2]|0,f[u+12>>2]|0,f[(u+16|0)>>2]|0);break}f[c+160>>2]=f[u+8>>2];e=d[(c+164|0)>>1]|0;if(!(e&256)){d[(c+164|0)>>1]=e|256;Eh[f[(f[t>>2]|0)+36>>2]&255](t,f[c+76>>2]|0,192751,27)}}while(0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+20;k=p;break}case 68:{if(o>>>0<8){v=362;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[u+4>>2]|0;if(o>>>0<(c+8|0)>>>0){q=c+8|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}e=f[(r+84|0)>>2]|0;if(!e)wh[f[(f[t>>2]|0)+76>>2]&127](t,u+8|0,c);else x0a(f[e+4>>2]|0,u,t);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+(c+8|0);k=p;break}case 65:{if(o>>>0<16){v=370;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}i=f[(u+12|0)>>2]|0;if(o>>>0<((i<<2)+16|0)>>>0){q=(i<<2)+16|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}if(!(f[u+8>>2]|0)){g=f[(f[t>>2]|0)+80>>2]|0;c=f[(r+80|0)>>2]|0;e=f[(r+84|0)>>2]|0;if(!e)e=i;else{e=f[e+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(e+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0;e=f[(u+12|0)>>2]|0}Kh[g&255](t,c,f[u+4>>2]|0,u+16|0,e)}else{h=f[(f[t>>2]|0)+84>>2]|0;e=f[(r+80|0)>>2]|0;c=f[(r+84|0)>>2]|0;if(!c){g=i;c=e}else{c=f[c+4>>2]|0;f[(a+8|0)>>2]=e;c=(_$a(c+80|0,a+8|0)|0)+12|0;g=f[(u+12|0)>>2]|0;c=f[c>>2]|0}Kh[h&255](t,c,f[u+4>>2]|0,u+16|0,(g>>>0)/3|0)}if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+((i<<2)+16|0);k=p;break}default:w=1}}if(w){w=0;switch(l|0){case 52:{if(o>>>0<12){v=382;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[(u+4|0)>>2]|0;f[(u+4|0)>>2]=c&2147483647;switch(c&2147483647|0){case 1:{wh[f[(f[t>>2]|0)+156>>2]&127](t,f[u+8>>2]|0,(c|0)<0);break}case 2:{wh[f[(f[t>>2]|0)+160>>2]&127](t,f[u+8>>2]|0,(c|0)<0);break}case 3:{nh[f[(f[t>>2]|0)+168>>2]&1023](t,f[u+8>>2]|0);break}case 4:{nh[f[(f[t>>2]|0)+172>>2]&1023](t,f[u+8>>2]|0);break}default:{}}if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+12;k=p;break}case 53:{if(o>>>0<16){v=391;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}c=f[u+4>>2]|0;if(o>>>0<((c<<3)+16|0)>>>0){q=(c<<3)+16|0;v=406;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}Kh[f[(f[t>>2]|0)+164>>2]&255](t,f[u+8>>2]|0,u+16|0,c,(b[u+12>>0]|0)!=0);if(!(f[(r+68|0)>>2]|0)){f[a+3024>>2]=2;f[a+3028>>2]=36;break a}f[(r+72|0)>>2]=(f[(r+72|0)>>2]|0)+((c<<3)+16|0);k=p;break}default:{v=395;f[a+3024>>2]=2;f[a+3028>>2]=37;break a}}}}f[a+384>>2]=m;f[a+400>>2]=k;f[a+472>>2]=q;f[a+896>>2]=s;f[a+936>>2]=n;f[a+2976>>2]=v;f[a+3008>>2]=w}function u0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;w=f[a+336>>2]|0;y=f[a+352>>2]|0;z=f[a+400>>2]|0;A=f[a+408>>2]|0;C=f[a+504>>2]|0;E=f[a+816>>2]|0;u=f[a+2240>>2]|0;t=f[a+2560>>2]|0;q=f[a+2576>>2]|0;F=f[a+2584>>2]|0;G=f[a+2592>>2]|0;H=f[a+2600>>2]|0;I=f[a+2696>>2]|0;v=f[a+2712>>2]|0;J=f[a+2808>>2]|0;K=f[a+2976>>2]|0;L=f[a+3008>>2]|0;s=f[a+3016>>2]|0;a:{if(L){L=0;switch(s|0){case 77:{if(q>>>0<68){K=163;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}d=f[(f[u>>2]|0)+120>>2]|0;b=f[v+4>>2]|0;c=f[(w+84|0)>>2]|0;if(c){i=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(i+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0}ai[d&7](u,b,f[v+8>>2]|0,f[v+12>>2]|0,f[v+16>>2]|0,f[v+20>>2]|0,f[v+24>>2]|0,f[v+28>>2]|0,f[v+32>>2]|0,f[v+36>>2]|0,f[v+40>>2]|0,v+44|0,v+56|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+68;z=A;break}case 73:{if(q>>>0<72){K=169;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}d=f[(f[u>>2]|0)+108>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(c){i=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(i+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0}di[d&7](u,b,f[v+8>>2]|0,f[(v+16|0)>>2]|0,f[(v+16|0)+4>>2]|0,f[v+24>>2]|0,f[v+28>>2]|0,f[v+32>>2]|0,f[v+36>>2]|0,f[v+40>>2]|0,f[v+44>>2]|0,f[v+48>>2]|0,f[v+52>>2]|0,f[v+56>>2]|0,f[v+60>>2]|0,f[v+64>>2]|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+72;z=A;break}case 118:{if(q>>>0<48){K=175;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}b=f[v+4>>2]|0;c=f[(w+84|0)>>2]|0;if(c){i=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(k0a((_$a(i+80|0,i+16|0)|0)+40|0,a+8|0)|0)+12|0;b=f[b>>2]|0}$h[f[(f[u>>2]|0)+112>>2]&7](u,b,f[v+8>>2]|0,f[v+12>>2]|0,f[v+16>>2]|0,f[v+20>>2]|0,f[v+24>>2]|0,f[v+28>>2]|0,f[v+32>>2]|0,f[v+36>>2]|0,f[v+40>>2]|0,f[v+44>>2]|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+48;z=A;break}default:L=1}}if(L){L=0;switch(s|0){case 105:{if(q>>>0<16){K=181;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}b=f[(w+84|0)>>2]|0;if(!b)Sh[f[(f[u>>2]|0)+144>>2]&63](u,0,f[v+4>>2]|0,f[v+8>>2]|0,f[v+12>>2]|0,0);else{i=f[b+4>>2]|0;f[(a+284|0)>>2]=f[v+4>>2];f[(a+280|0)>>2]=f[v+8>>2];f[(a+276|0)>>2]=f[v+12>>2];f[(a+292|0)>>2]=f[(a+284|0)>>2];f[(a+296|0)>>2]=f[(a+280|0)>>2];f[(a+8|0)>>2]=f[(a+276|0)>>2];l0a(i,u,0,a+292|0,a+296|0,a+8|0,0)}if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+16;z=A;break}case 120:{if(q>>>0<24){K=188;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}b=f[(w+84|0)>>2]|0;if(!b)Sh[f[(f[u>>2]|0)+144>>2]&63](u,f[v+4>>2]|0,f[v+8>>2]|0,f[v+12>>2]|0,f[v+16>>2]|0,(f[v+20>>2]|0)!=0);else{g=f[b+4>>2]|0;h=f[v+4>>2]|0;f[(a+272|0)>>2]=f[v+8>>2];f[(a+268|0)>>2]=f[v+12>>2];f[(a+264|0)>>2]=f[v+16>>2];i=(f[v+20>>2]|0)!=0;f[(a+292|0)>>2]=f[(a+272|0)>>2];f[(a+296|0)>>2]=f[(a+268|0)>>2];f[(a+8|0)>>2]=f[(a+264|0)>>2];l0a(g,u,h,a+292|0,a+296|0,a+8|0,i)}if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+24;z=A;break}case 54:{if(q>>>0<28){K=195;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}d=f[(f[u>>2]|0)+116>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(c){i=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(i+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0}zh[d&3](u,b,f[v+4>>2]|0,+n[v+8>>2],+n[v+12>>2],+n[v+16>>2],+n[v+20>>2],f[v+24>>2]|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+28;z=A;break}default:L=1}}if(L){L=0;switch(s|0){case 69:{if(q>>>0<28){K=201;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}c=f[(v+24|0)>>2]|0;y=(c|0)==-1?28:c+31&-4;if(y>>>0>q>>>0){K=203;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}e=f[(f[u>>2]|0)+148>>2]|0;b=f[(w+80|0)>>2]|0;d=f[(w+84|0)>>2]|0;if(d){c=f[d+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(c+80|0,a+8|0)|0)+12|0;c=f[(v+24|0)>>2]|0;b=f[b>>2]|0}i=f[v+12>>2]|0;Yh[e&7](u,b,f[v+4>>2]|0,f[v+8>>2]|0,i&2147483647,f[v+16>>2]|0,f[v+20>>2]|0,(c|0)==-1?0:v+28|0,(i|0)<0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+y;z=A;break}case 103:{if(q>>>0<12){K=209;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}d=f[(f[u>>2]|0)+152>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(c){i=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(i+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0}Eh[d&255](u,b,f[v+4>>2]|0,f[v+8>>2]|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+12;z=A;break}case 78:{if(q>>>0<8){K=215;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}z=f[v+4>>2]|0;f[(w+76|0)>>2]=f[v>>2];f[(w+76|0)+4>>2]=z;f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+8;z=A;break}default:L=1}}if(L){L=0;switch(s|0){case 82:{if(q>>>0<44){K=218;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}F=f[(v+24|0)>>2]|0;G=f[(v+28|0)>>2]|0;H=f[(v+32|0)>>2]|0;if((((G+F+H|0)*12|0)+44|0)>>>0>q>>>0){K=220;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}g=f[(f[u>>2]|0)+132>>2]|0;c=f[(w+80|0)>>2]|0;b=f[(w+84|0)>>2]|0;if(!b){d=F;e=G;b=H}else{d=f[b+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(d+80|0,a+8|0)|0)+12|0;d=f[(v+24|0)>>2]|0;e=f[(v+28|0)>>2]|0;c=f[c>>2]|0;b=f[(v+32|0)>>2]|0}i=(v+44|0)+(d*12|0)|0;ai[g&7](u,c,f[v+4>>2]|0,f[v+8>>2]|0,f[v+12>>2]|0,f[v+16>>2]|0,f[v+20>>2]|0,v+44|0,d,i,e,i+(e*12|0)|0,b);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+(((G+F+H|0)*12|0)+44|0);z=A;break}case 114:{if(q>>>0<12){K=226;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}I=f[(v+8|0)>>2]|0;if((I+12|0)>>>0>q>>>0){K=228;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}d=f[(f[u>>2]|0)+136>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(!c)c=I;else{c=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(c+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0;c=f[(v+8|0)>>2]|0}Kh[d&255](u,b,f[v+4>>2]|0,v+12|0,c);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+(I+12|0);z=A;break}default:L=1}}if(L){L=0;switch(s|0){case 81:{if(q>>>0<40){K=234;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}e=f[(v+8|0)>>2]|0;g=f[(v+12|0)>>2]|0;d=f[(v+16|0)>>2]|0;J=e&268435456|0?24:12;J=e&536870912|0?J+8|0:J;i=(f[(v+20|0)>>2]|0)+d+(f[(v+24|0)>>2]|0)|0;J=((i&1)+i<<1)+40+(X(e&1073741824|0?J+4|0:J,g)|0)+(((f[(v+32|0)>>2]|0)+(f[(v+28|0)>>2]|0)+(f[(v+36|0)>>2]|0)|0)*12|0)|0;if(J>>>0>q>>>0){K=236;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}i=f[(f[u>>2]|0)+128>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(!c)h=e;else{d=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(d+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0;d=f[(v+16|0)>>2]|0;h=f[(v+8|0)>>2]|0;g=f[(v+12|0)>>2]|0}c=f[v+4>>2]|0;e=f[(v+20|0)>>2]|0;if(!(d|e))if(!(f[(v+24|0)>>2]|0)){j=0;k=h&268435456;l=h&536870912;m=h&1073741824;p=0;r=0}else{o=0;K=242}else{o=e;K=242}if((K|0)==242){K=0;k=h&268435456;j=k|0?24:12;l=h&536870912;j=l|0?j+8|0:j;m=h&1073741824;j=(v+40|0)+(X(m|0?j+4|0:j,g)|0)|0;p=f[(v+24|0)>>2]|0;r=o}o=k|0?24:12;o=l|0?o+8|0:o;l=r+d+p|0;l=(v+40|0)+(X(m|0?o+4|0:o,g)|0)+((l&1)+l<<1)|0;m=f[(v+28|0)>>2]|0;o=f[(v+32|0)>>2]|0;di[i&7](u,b,c,h,v+40|0,g,j,d,r,p,l,m,l+(m*12|0)|0,o,(l+(m*12|0)|0)+(o*12|0)|0,f[(v+36|0)>>2]|0);if(!(f[(w+68|0)>>2]|0)){f[a+3032>>2]=2;f[a+3036>>2]=27;break a}f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+J;z=A;break}default:L=1}}if(L){L=0;switch(s|0){case 111:{if(q>>>0<16){K=246;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}E=f[v+4>>2]|0;if(E>>>0>q>>>0){K=248;f[a+3032>>2]=2;f[a+3036>>2]=29;break a}f[(a+296|0)>>2]=(f[(w+72|0)>>2]|0)+16;e=Wpb(56)|0;f[e+40>>2]=0;f[e+44>>2]=0;f[e+48>>2]=0;if(m0a(w,e,t,a+296|0,A)|0){d=f[(f[u>>2]|0)+140>>2]|0;b=f[(w+80|0)>>2]|0;c=f[(w+84|0)>>2]|0;if(c){t=f[c+4>>2]|0;f[(a+8|0)>>2]=b;b=(_$a(t+80|0,a+8|0)|0)+12|0;b=f[b>>2]|0}c=Ug[d&31](u,b,e,f[v+8>>2]|0,f[v+12>>2]|0)|0;if(!(f[(w+68|0)>>2]|0))b=9;else{f[(w+72|0)>>2]=(f[(w+72|0)>>2]|0)+E;b=0}if(c)x=b;else{B=b;D=c?0:e;K=256}}else{Eh[f[(f[u>>2]|0)+36>>2]&255](u,0,192663,45);B=9;D=e;K=256}if((K|0)==256){K=0;b=D+40|0;c=f[b>>2]|0;if(c|0){n0a(b,c);Zpb(f[b>>2]|0)}Zpb(D);x=B}if(!x)z=A;else{C=x;K=396}break}default:L=1}}}f[a+352>>2]=y;f[a+400>>2]=z;f[a+504>>2]=C;f[a+816>>2]=E;f[a+2584>>2]=F;f[a+2592>>2]=G;f[a+2600>>2]=H;f[a+2696>>2]=I;f[a+2808>>2]=J;f[a+2976>>2]=K;f[a+3008>>2]=L}function v0a(a){a=a|0;var c=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;v=f[a+336>>2]|0;s=f[a+400>>2]|0;t=f[a+408>>2]|0;u=f[a+504>>2]|0;w=f[a+1040>>2]|0;x=f[a+1632>>2]|0;y=f[a+1640>>2]|0;z=f[a+1712>>2]|0;A=f[a+1824>>2]|0;B=f[a+1832>>2]|0;C=f[a+1904>>2]|0;D=f[a+2128>>2]|0;E=f[a+2240>>2]|0;o=f[a+2408>>2]|0;q=f[a+2576>>2]|0;k=f[a+2688>>2]|0;F=f[a+2712>>2]|0;G=f[a+2976>>2]|0;H=f[a+3008>>2]|0;r=f[a+3016>>2]|0;a:{if(H){H=0;switch(r|0){case 86:{if(q>>>0<20){G=25;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}c=f[(v+84|0)>>2]|0;if(!c)Kh[f[(f[E>>2]|0)+8>>2]&255](E,f[F+4>>2]|0,f[F+8>>2]|0,f[F+12>>2]|0,f[F+16>>2]|0);else f0a(f[c+4>>2]|0,F,E);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}w=f[F+8>>2]|0;if((w&-2|0)!=66){G=31;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+20;s=t;break}case 84:{if(q>>>0<16){G=34;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}c=f[F+8>>2]|0;if(c|0)wh[f[(f[E>>2]|0)+16>>2]&127](E,c,f[F+12>>2]|0);c=f[(v+84|0)>>2]|0;if(!c)nh[f[(f[E>>2]|0)+12>>2]&1023](E,f[F+4>>2]|0);else g0a(f[c+4>>2]|0,F,E);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+16;s=t;break}case 116:{if(q>>>0<12){G=43;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}wh[f[(f[E>>2]|0)+16>>2]&127](E,f[F+4>>2]|0,f[F+8>>2]|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+12;s=t;break}case 83:{if(q>>>0<24){G=47;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}h=f[(f[E>>2]|0)+100>>2]|0;c=f[(v+80|0)>>2]|0;g=f[(v+84|0)>>2]|0;if(g){m=f[g+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(m+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0}Eh[h&255](E,c,f[F+4>>2]|0,F+8|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+24;s=t;break}default:H=1}}if(H){H=0;switch(r|0){case 115:{if(q>>>0<44){G=53;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}x=f[(F+36|0)>>2]|0;y=f[(F+40|0)>>2]|0;if(((x<<2)+44+(y*12|0)|0)>>>0>q>>>0){G=55;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}j=f[(f[E>>2]|0)+104>>2]|0;g=f[(v+80|0)>>2]|0;c=f[(v+84|0)>>2]|0;if(!c){h=x;i=y;c=g}else{c=f[c+4>>2]|0;f[(a+8|0)>>2]=g;c=(_$a(c+80|0,a+8|0)|0)+12|0;h=f[(F+36|0)>>2]|0;i=f[(F+40|0)>>2]|0;c=f[c>>2]|0}m=(h|0)==0;Gh[j&3](E,c,f[F+4>>2]|0,F+8|0,+n[F+24>>2],+n[F+28>>2],+n[F+32>>2],m?0:F+44|0,h,(i|0)==0?0:m?F+44|0:(F+44|0)+(h<<2)|0,i);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+((x<<2)+44+(y*12|0)|0);s=t;break}case 50:{if(q>>>0<16){G=61;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}z=f[(F+8|0)>>2]|0;if(((z<<2)+16|0)>>>0>q>>>0){G=63;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}i=f[(f[E>>2]|0)+124>>2]|0;g=f[(v+80|0)>>2]|0;c=f[(v+84|0)>>2]|0;if(!c){h=z;c=g}else{c=f[c+4>>2]|0;f[(a+8|0)>>2]=g;c=(_$a(c+80|0,a+8|0)|0)+12|0;h=f[(F+8|0)>>2]|0;c=f[c>>2]|0}Sh[i&63](E,c,f[F+4>>2]|0,(h|0)==0?0:F+16|0,h,f[F+12>>2]|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+((z<<2)+16|0);s=t;break}case 88:{if(q>>>0<56){G=69;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}c=f[(v+84|0)>>2]|0;if(!c)Eh[f[(f[E>>2]|0)+88>>2]&255](E,f[(v+80|0)>>2]|0,f[F+4>>2]|0,F+8|0);else{m=f[c+4>>2]|0;f[(a+288|0)>>2]=f[(v+80|0)>>2];f[(a+8|0)>>2]=f[(a+288|0)>>2];h0a(m,a+8|0,F,E)}if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+56;s=t;break}default:H=1}}if(H){H=0;switch(r|0){case 99:{if(q>>>0<104){G=76;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}f[((a+8|0)+4|0)>>2]=0;h=a+8|0;c=k+(f[(v+72|0)>>2]|0)|0;g=h+104|0;do{b[h>>0]=b[c>>0]|0;h=h+1|0;c=c+1|0}while((h|0)<(g|0));c=f[(v+84|0)>>2]|0;if(!c)Nh[f[(f[E>>2]|0)+20>>2]&3](E,f[((a+8|0)+8|0)>>2]|0,(a+8|0)+16|0,(a+8|0)+40|0,(a+8|0)+64|0,+p[((a+8|0)+88|0)>>3],+p[((a+8|0)+96|0)>>3],f[((a+8|0)+4|0)>>2]|0);else{c=f[c+4>>2]|0;if(!(d[(c+164|0)>>1]&2))if((f[(c+24|0)>>2]|0)==(f[((a+8|0)+4|0)>>2]|0)){Nh[f[(f[E>>2]|0)+20>>2]&3](E,f[((a+8|0)+8|0)>>2]|0,(a+8|0)+16|0,(a+8|0)+40|0,(a+8|0)+64|0,+p[((a+8|0)+88|0)>>3],+p[((a+8|0)+96|0)>>3],0);f[(c+24|0)>>2]=-1;d[(c+164|0)>>1]=d[(c+164|0)>>1]|2}}if(!(f[(v+68|0)>>2]|0)){G=84;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+104;s=t;break}case 89:{if(q>>>0<16){G=86;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}A=f[(F+8|0)>>2]|0;B=f[(F+12|0)>>2]|0;if(((A<<2)+16+(B*12|0)|0)>>>0>q>>>0){G=88;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}i=f[(f[E>>2]|0)+92>>2]|0;g=f[(v+80|0)>>2]|0;c=f[(v+84|0)>>2]|0;if(!c){h=A;c=B}else{h=f[c+4>>2]|0;f[(a+8|0)>>2]=g;g=(_$a(h+80|0,a+8|0)|0)+12|0;h=f[(F+8|0)>>2]|0;g=f[g>>2]|0;c=f[(F+12|0)>>2]|0}Wh[i&63](E,g,f[F+4>>2]|0,h,c,F+16|0,(F+16|0)+(h<<2)|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+((A<<2)+16+(B*12|0)|0);s=t;break}default:H=1}}if(H){H=0;switch(r|0){case 121:{if(q>>>0<16){G=94;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}C=f[F+8>>2]|0;if(C>>>0>q>>>0){G=96;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}f[(a+296|0)>>2]=0;f[o>>2]=0;f[((a+296|0)+8|0)>>2]=0;i0a(a+296|0,f[(F+12|0)>>2]|0);if(f[(F+12|0)>>2]|0){k=F+16|0;l=0;while(1){m=(f[k>>2]<<2)+12|0;f[(a+8|0)>>2]=0;f[(a+8|0)+4>>2]=0;f[(a+8|0)+8>>2]=0;f[(a+8|0)+12>>2]=0;f[(a+8|0)+16>>2]=0;c=f[o>>2]|0;if(c>>>0<(f[((a+296|0)+8|0)>>2]|0)>>>0){f[c>>2]=0;f[(c+4|0)>>2]=0;f[c+8>>2]=0;f[c>>2]=f[(a+8|0)>>2];f[(c+4|0)>>2]=f[((a+8|0)+4|0)>>2];f[c+8>>2]=f[((a+8|0)+8|0)>>2];f[((a+8|0)+8|0)>>2]=0;f[((a+8|0)+4|0)>>2]=0;f[(a+8|0)>>2]=0;j=f[((a+8|0)+12|0)+4>>2]|0;f[(c+12|0)>>2]=f[((a+8|0)+12|0)>>2];f[(c+12|0)+4>>2]=j;f[o>>2]=c+20}else{j0a(a+296|0,a+8|0);c=f[(a+8|0)>>2]|0;if(c|0){g=f[((a+8|0)+4|0)>>2]|0;if((g|0)!=(c|0))f[((a+8|0)+4|0)>>2]=g+(~((g+-4-c|0)>>>2)<<2);Zpb(c)}}j=f[o>>2]|0;f[j+-4>>2]=f[k+8>>2];f[j+-8>>2]=f[k+4>>2];c=f[k>>2]|0;g=f[(j+-20|0)>>2]|0;if((f[(j+-12|0)>>2]|0)-g>>2>>>0<c>>>0){if(c>>>0>1073741823){G=110;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}h=(f[(j+-16|0)>>2]|0)-g|0;i=Wpb(c<<2)|0;if((h|0)>0)Irb(i|0,g|0,h|0)|0;f[(j+-20|0)>>2]=i;f[(j+-16|0)>>2]=i+(h>>2<<2);f[(j+-12|0)>>2]=i+(c<<2);if(g|0)Zpb(g)}if(f[k>>2]|0){c=k+12|0;g=0;while(1){h=f[(j+-16|0)>>2]|0;if((h|0)==(f[(j+-12|0)>>2]|0))BD(j+-20|0,c);else{f[h>>2]=f[c>>2];f[(j+-16|0)>>2]=h+4}g=g+1|0;if(g>>>0>=(f[k>>2]|0)>>>0)break;else c=c+4|0}}l=l+1|0;if(l>>>0>=(f[(F+12|0)>>2]|0)>>>0)break;else k=k+m|0}}h=f[(f[E>>2]|0)+96>>2]|0;c=f[(v+80|0)>>2]|0;g=f[(v+84|0)>>2]|0;if(g){m=f[g+4>>2]|0;f[(a+8|0)>>2]=c;c=(_$a(m+80|0,a+8|0)|0)+12|0;c=f[c>>2]|0}Eh[h&255](E,c,f[F+4>>2]|0,a+296|0);if(!(f[(v+68|0)>>2]|0))j=9;else{f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+C;j=0}c=f[(a+296|0)>>2]|0;if(c|0){g=f[o>>2]|0;if((g|0)!=(c|0)){do{h=g+-20|0;f[o>>2]=h;i=f[h>>2]|0;if(!i)g=h;else{g=g+-16|0;h=f[g>>2]|0;if((h|0)!=(i|0))f[g>>2]=h+(~((h+-4-i|0)>>>2)<<2);Zpb(i);g=f[o>>2]|0}}while((g|0)!=(c|0));c=f[(a+296|0)>>2]|0}Zpb(c)}if(!j)s=t;else{u=j;G=396}break}default:H=1}}if(H){H=0;switch(r|0){case 80:{if(q>>>0<24){G=134;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}D=f[F+20>>2]|0;if(((D<<2)+24|0)>>>0>q>>>0){G=136;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}jh[f[(f[E>>2]|0)+24>>2]&3](E,+n[F+8>>2],+n[F+12>>2],+n[F+16>>2],(D|0)==0?0:F+24|0,D,f[F+4>>2]|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+((D<<2)+24|0);s=t;break}case 66:{if(q>>>0<32){G=140;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}c=f[(v+84|0)>>2]|0;if(!c)Kh[f[(f[E>>2]|0)+28>>2]&255](E,f[(v+80|0)>>2]|0,F+4|0,F+16|0,f[F+28>>2]|0);else{c=f[c+4>>2]|0;e=+n[F+4>>2];if(e<+n[(c+132|0)>>2])n[(c+132|0)>>2]=e;e=+n[F+16>>2];if(e>+n[(c+144|0)>>2])n[(c+144|0)>>2]=e;e=+n[F+8>>2];if(e<+n[(c+136|0)>>2])n[(c+136|0)>>2]=e;e=+n[F+20>>2];if(e>+n[(c+148|0)>>2])n[(c+148|0)>>2]=e;e=+n[F+12>>2];if(e<+n[(c+140|0)>>2])n[(c+140|0)>>2]=e;e=+n[F+24>>2];if(e>+n[(c+152|0)>>2])n[(c+152|0)>>2]=e;F=(f[(c+156|0)>>2]|0)+(f[F+28>>2]|0)|0;f[(c+156|0)>>2]=F;Kh[f[(f[E>>2]|0)+28>>2]&255](E,f[c+12>>2]|0,c+132|0,c+144|0,F)}if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+32;s=t;break}case 98:{if(q>>>0<36){G=159;f[a+3040>>2]=2;f[a+3044>>2]=31;break a}Kh[f[(f[E>>2]|0)+32>>2]&255](E,F+4|0,F+16|0,f[F+28>>2]|0,f[F+32>>2]|0);if(!(f[(v+68|0)>>2]|0)){f[a+3040>>2]=2;f[a+3044>>2]=32;break a}f[(v+72|0)>>2]=(f[(v+72|0)>>2]|0)+36;s=t;break}default:H=1}}}f[a+400>>2]=s;f[a+504>>2]=u;f[a+1040>>2]=w;f[a+1632>>2]=x;f[a+1640>>2]=y;f[a+1712>>2]=z;f[a+1824>>2]=A;f[a+1832>>2]=B;f[a+1904>>2]=C;f[a+2128>>2]=D;f[a+2976>>2]=G;f[a+3008>>2]=H}
function kQa(a,c){a=a|0;c=+c;var d=0,e=0;d=a+60|0;if(!(qUa((f[d>>2]|0)+3736|0,c)|0)){d=0;return d|0}e=a+230|0;if(!((j[e>>1]|j[e+2>>1]<<16)&512)){e=0;return e|0}if((b[a+226>>0]|0)==2){e=0;return e|0}e=f[d>>2]|0;if((f[e+1832>>2]|0)!=(f[e+1836>>2]|0)){e=0;return e|0}e=(exa(f[a+64>>2]|0)|0)^1;return e|0}function lQa(a,c){a=a|0;c=c|0;var d=0;d=a+60|0;if(!(oUa((f[d>>2]|0)+3736|0,c)|0)){d=0;return d|0}c=a+230|0;if(!((j[c>>1]|j[c+2>>1]<<16)&512)){d=0;return d|0}if((b[a+226>>0]|0)==2){d=0;return d|0}d=f[d>>2]|0;if((f[d+1832>>2]|0)!=(f[d+1836>>2]|0)){d=0;return d|0}d=(exa(f[a+64>>2]|0)|0)^1;return d|0}function mQa(a,c,d){a=a|0;c=+c;d=d|0;var e=0;e=a+60|0;if(!(pUa((f[e>>2]|0)+3736|0,c,d)|0)){e=0;return e|0}d=a+230|0;if(!((j[d>>1]|j[d+2>>1]<<16)&512)){e=0;return e|0}if((b[a+226>>0]|0)==2){e=0;return e|0}e=f[e>>2]|0;if((f[e+1832>>2]|0)!=(f[e+1836>>2]|0)){e=0;return e|0}e=(exa(f[a+64>>2]|0)|0)^1;return e|0}function nQa(a,c,d,e){a=a|0;c=+c;d=+d;e=e|0;var f=0,g=0;f=a+372|0;g=a+376|0;if(+n[f>>2]==c)if(+n[g>>2]==d)if((b[a+380>>0]|0)==e<<24>>24){g=0;return g|0}n[f>>2]=c;n[g>>2]=d;b[a+380>>0]=e;g=1;return g|0}function oQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;if(!(f[a>>2]|0))return;f[a>>2]=0;b[a+500>>0]=0;i=0;do{c=f[a+4+(i*20|0)+8>>2]|0;if(c|0)do{e=c;d=f[e+12>>2]|0;e=e+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+64+(i*20|0)+8>>2]|0;if(c|0)do{e=c;d=f[e+12>>2]|0;e=e+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+124+(i*20|0)+8>>2]|0;if(c|0)do{e=c;d=f[e+12>>2]|0;e=e+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+184+(i*20|0)+8>>2]|0;if(c|0)do{e=c;d=f[e+12>>2]|0;e=e+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+244+(i*20|0)+8>>2]|0;if(c|0)do{d=c;b[d+32>>0]=1;d=f[d+20>>2]|0;if(d|0)do{g=d;e=f[g+60>>2]|0;g=g+64|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);d=f[d>>2]|0}while((d|0)!=0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+304+(i*20|0)+8>>2]|0;if(c|0)do{d=c;b[d+32>>0]=1;d=f[d+20>>2]|0;if(d|0)do{g=d;e=f[g+60>>2]|0;g=g+64|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);d=f[d>>2]|0}while((d|0)!=0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+364+(i*20|0)+8>>2]|0;if(c|0)do{d=c;b[d+32>>0]=1;d=f[d+20>>2]|0;if(d|0)do{g=d;e=f[g+60>>2]|0;g=g+64|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);d=f[d>>2]|0}while((d|0)!=0);c=f[c>>2]|0}while((c|0)!=0);c=f[a+424+(i*20|0)+8>>2]|0;if(c|0)do{d=c;b[d+32>>0]=1;d=f[d+20>>2]|0;if(d|0)do{g=d;e=f[g+60>>2]|0;g=g+64|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);d=f[d>>2]|0}while((d|0)!=0);c=f[c>>2]|0}while((c|0)!=0);i=i+1|0}while((i|0)!=3);return}function pQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;r=0;s=u;u=u+1504|0;q=X(b,1540483477)|0;q=(X(q>>>24^q,1540483477)|0)^1866966612;q=X(q>>>13^q,1540483477)|0;p=0;while(1){j=f[a+4+(p*20|0)+4>>2]|0;a:do if(j|0){k=((j+-1|0)&j|0)==0;if(k)e=(j+-1|0)&(q>>>15^q);else if((q>>>15^q)>>>0<j>>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(j>>>0)|0;l=a+4+(p*20|0)|0;g=f[l>>2]|0;c=f[g+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(k)while(1){d=f[c+4>>2]|0;if(!((d|0)==(q>>>15^q|0)|(d&(j+-1|0)|0)==(e|0)))break a;if((d|0)==(q>>>15^q|0))if((f[c+8>>2]|0)==(b|0)){i=c;break b}c=f[c>>2]|0;if(!c)break a}else while(1){d=f[c+4>>2]|0;if((d|0)==(q>>>15^q|0)){if((f[c+8>>2]|0)==(b|0)){i=c;break b}}else{if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(e|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);if(k)h=(j+-1|0)&(q>>>15^q);else if((q>>>15^q)>>>0<j>>>0)h=q>>>15^q;else h=((q>>>15^q)>>>0)%(j>>>0)|0;d=g+(h<<2)|0;e=f[d>>2]|0;while(1){c=f[e>>2]|0;if((c|0)==(i|0))break;else e=c}if((e|0)==(a+4+(p*20|0)+8|0))r=34;else{c=f[e+4>>2]|0;if(k)c=c&(j+-1|0);else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(h|0))o=i;else r=34}do if((r|0)==34){r=0;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;if(k)c=c&(j+-1|0);else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(h|0)){o=i;break}}f[d>>2]=0;o=i}while(0);c=f[o>>2]|0;if(c){d=f[c+4>>2]|0;if(k)d=d&(j+-1|0);else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(h|0)){f[(f[l>>2]|0)+(d<<2)>>2]=e;c=f[i>>2]|0}}f[e>>2]=c;f[o>>2]=0;c=a+4+(p*20|0)+12|0;f[c>>2]=(f[c>>2]|0)+-1;c=f[i+12>>2]|0;if(c|0){d=i+16|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-44-c|0)>>>0)/44|0)*44|0);Zpb(c)}Zpb(i)}}}while(0);j=f[a+64+(p*20|0)+4>>2]|0;c:do if(j|0){k=((j+-1|0)&j|0)==0;if(k)e=(j+-1|0)&(q>>>15^q);else if((q>>>15^q)>>>0<j>>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(j>>>0)|0;l=a+64+(p*20|0)|0;g=f[l>>2]|0;c=f[g+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){d:do if(k)while(1){d=f[c+4>>2]|0;if(!((d|0)==(q>>>15^q|0)|(d&(j+-1|0)|0)==(e|0)))break c;if((d|0)==(q>>>15^q|0))if((f[c+8>>2]|0)==(b|0)){i=c;break d}c=f[c>>2]|0;if(!c)break c}else while(1){d=f[c+4>>2]|0;if((d|0)==(q>>>15^q|0)){if((f[c+8>>2]|0)==(b|0)){i=c;break d}}else{if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(e|0))break c}c=f[c>>2]|0;if(!c)break c}while(0);if(k)h=(j+-1|0)&(q>>>15^q);else if((q>>>15^q)>>>0<j>>>0)h=q>>>15^q;else h=((q>>>15^q)>>>0)%(j>>>0)|0;d=g+(h<<2)|0;e=f[d>>2]|0;while(1){c=f[e>>2]|0;if((c|0)==(i|0))break;else e=c}if((e|0)==(a+64+(p*20|0)+8|0))r=84;else{c=f[e+4>>2]|0;if(k)c=c&(j+-1|0);else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(h|0))m=i;else r=84}do if((r|0)==84){r=0;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;if(k)c=c&(j+-1|0);else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(h|0)){m=i;break}}f[d>>2]=0;m=i}while(0);c=f[m>>2]|0;if(c){d=f[c+4>>2]|0;if(k)d=d&(j+-1|0);else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(h|0)){f[(f[l>>2]|0)+(d<<2)>>2]=e;c=f[i>>2]|0}}f[e>>2]=c;f[m>>2]=0;c=a+64+(p*20|0)+12|0;f[c>>2]=(f[c>>2]|0)+-1;c=f[i+12>>2]|0;if(c|0){d=i+16|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-44-c|0)>>>0)/44|0)*44|0);Zpb(c)}Zpb(i)}}}while(0);l=f[a+124+(p*20|0)+4>>2]|0;f[s+32>>2]=a;f[s+40>>2]=b;f[s+80>>2]=p;f[s+392>>2]=q;f[s+600>>2]=l;f[s+1432>>2]=r;f[s+1440>>2]=0;f[s+1444>>2]=0;STa(s);p=f[s+80>>2]|0;r=f[s+1432>>2]|0;G=f[s+1440>>2]|0;D=f[s+1444>>2]|0;H=+n[s+1444>>2];f[s+1440>>2]=0;f[s+1444>>2]=0;if((G|0)==1)break}u=s;return}function qQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;h=f[a+4>>2]|0;b=f[k+4>>2]|0;i=h+-1|0;e=(i&h|0)==0;if(e)g=i&b;else if(b>>>0<h>>>0)g=b;else g=(b>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)==(a+8|0))d=13;else{b=f[j+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;d=21}else d=13}do if((d|0)==13){if(l|0){b=f[l+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=22;break}}f[c>>2]=0;c=f[k>>2]|0;d=21}while(0);if((d|0)==21){b=c;if(c)d=22}if((d|0)==22){c=f[c+4>>2]|0;if(e)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;b=f[k+20>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;c=f[g+60>>2]|0;if(c|0){d=g+64|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[g+56>>2]|0;if(c|0)Ppb(c);c=f[g+48>>2]|0;if(c|0)Ppb(c);Zpb(g)}while((b|0)!=0);a=k+12|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Zpb(b);Zpb(k);return l|0}function rQa(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;f[k>>2]=0;f[l>>2]=-1;if(!((d&4194304|0)==0&(b[a+226>>0]|0)==3)){b[i>>0]=0;b[j>>0]=(d&32768|0)==0&e&1;f[g>>2]=f[c+180>>2];f[g+4>>2]=f[c+184>>2];f[g+8>>2]=f[c+188>>2];return}if(!(d&2097152)){b[i>>0]=0;f[g>>2]=f[a+284>>2];c=f[a+260>>2]|0;if(c|0){f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h>>2]=c}f[g+4>>2]=f[a+288>>2];c=f[a+268>>2]|0;if(c|0){f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h+4>>2]=c}f[g+8>>2]=f[a+292>>2];c=f[a+276>>2]|0;if(!c)c=1;else{f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h+8>>2]=c;c=1}}else{b[i>>0]=1;n[g>>2]=1.0;c=f[a+236>>2]|0;if(c|0){f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h>>2]=c}n[g+4>>2]=1.0;c=f[a+244>>2]|0;if(c|0){f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h+4>>2]=c}n[g+8>>2]=1.0;c=f[a+252>>2]|0;if(!c)c=0;else{f[k>>2]=f[k>>2]|32768;f[l>>2]=f[l>>2]&-8388609;f[h+8>>2]=c;c=0}}b[j>>0]=c;return}function sQa(a,c,d,e,g,h,i,j,k,l,m,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=+i;j=j|0;k=k|0;l=l|0;m=m|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;r=w;f[r>>2]=g;s=g;if(!k){u=w;return}t=c&255;if(!((1<<t&(e&255)|0)!=0&i>0.0)){u=w;return}v=q+6e4|0;f[d+8>>2]=j;f[d+12>>2]=k;j=d+28|0;f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];n[d+40>>2]=i;h=d+24|0;j=(f[h>>2]&768|0)==512;do if(!l){if(!(i<1.0|m))if(!(c<<24>>24==1&o<<24>>24==2)){e=g+187|0;q=b[e>>0]|0;if(q&2){foa(g);q=b[e>>0]|0}if(!(q&4))break}if(j){if(!(f[h>>2]&33554560)){u=w;return}e=tQa(a+184+(t*20|0)|0,r)|0;q=e+12|0;if((f[q>>2]|0)>>>0<v>>>0)f[q>>2]=v;h=e+4|0;q=f[h>>2]|0;if((q|0)==(f[e+8>>2]|0))uQa(e,d);else{j=q+44|0;do{f[q>>2]=f[d>>2];q=q+4|0;d=d+4|0}while((q|0)<(j|0));f[h>>2]=(f[h>>2]|0)+44}f[a>>2]=(f[a>>2]|0)+(p&255);b[a+500>>0]=1;u=w;return}if(o<<24>>24!=1)if(!(c<<24>>24==1&o<<24>>24==2)){e=tQa(a+64+(t*20|0)|0,r)|0;q=e+12|0;if((f[q>>2]|0)>>>0<v>>>0)f[q>>2]=v;h=e+4|0;q=f[h>>2]|0;if((q|0)==(f[e+8>>2]|0))uQa(e,d);else{j=q+44|0;do{f[q>>2]=f[d>>2];q=q+4|0;d=d+4|0}while((q|0)<(j|0));f[h>>2]=(f[h>>2]|0)+44}f[a>>2]=(f[a>>2]|0)+(p&255);b[a+500>>0]=1;u=w;return}e=a+488|0;q=f[e>>2]|0;if(q>>>0<(f[a+492>>2]|0)>>>0){j=q+60|0;do{f[q>>2]=0;q=q+4|0}while((q|0)<(j|0));v=(f[e>>2]|0)+60|0;f[e>>2]=v;e=v}else{vQa(a+484|0);e=f[e>>2]|0}f[e+-60>>2]=s;f[e+-56>>2]=a+64+(t*20|0);q=e+-52|0;j=q+44|0;do{f[q>>2]=f[d>>2];q=q+4|0;d=d+4|0}while((q|0)<(j|0));f[e+-8>>2]=6e4;b[e+-4>>0]=0;b[e+-3>>0]=p;u=w;return}while(0);if(!j){e=tQa(a+4+(t*20|0)|0,r)|0;q=e+12|0;if((f[q>>2]|0)>>>0<v>>>0)f[q>>2]=v;h=e+4|0;q=f[h>>2]|0;if((q|0)==(f[e+8>>2]|0))uQa(e,d);else{j=q+44|0;do{f[q>>2]=f[d>>2];q=q+4|0;d=d+4|0}while((q|0)<(j|0));f[h>>2]=(f[h>>2]|0)+44}f[a>>2]=(f[a>>2]|0)+(p&255);u=w;return}if(!(f[h>>2]&33554560)){u=w;return}e=tQa(a+124+(t*20|0)|0,r)|0;q=e+12|0;if((f[q>>2]|0)>>>0<v>>>0)f[q>>2]=v;h=e+4|0;q=f[h>>2]|0;if((q|0)==(f[e+8>>2]|0))uQa(e,d);else{j=q+44|0;do{f[q>>2]=f[d>>2];q=q+4|0;d=d+4|0}while((q|0)<(j|0));f[h>>2]=(f[h>>2]|0)+44}f[a>>2]=(f[a>>2]|0)+(p&255);u=w;return}function tQa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;j=f[b>>2]|0;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=a+4|0;l=f[k>>2]|0;m=(l|0)==0;h=j;a:do if(m)b=0;else{g=l+-1|0;c=(g&l|0)==0;if(c)i=o&g;else if(o>>>0<l>>>0)i=o;else i=(o>>>0)%(l>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b)b=i;else{if(c){do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if(!((c|0)==(o|0)|(c&g|0)==(i|0))){b=i;break a}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if((c|0)!=(o|0)){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(i|0)){b=i;break a}}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}}while(0);i=Wpb(28)|0;f[i+8>>2]=j;h=i+12|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[i+4>>2]=o;f[i>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(m|e*+(l>>>0)<d){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;c=~~+W(+(d/e))>>>0;wQa(a,b>>>0<c>>>0?c:b);b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&o;break}if(o>>>0<b>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=l;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[i>>2]=f[b>>2];f[b>>2]=i;f[c>>2]=b;b=f[i>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;p=30}}else{f[i>>2]=f[b>>2];p=30}if((p|0)==30)f[b>>2]=i;f[h>>2]=(f[h>>2]|0)+1;a=i;a=a+12|0;return a|0}function uQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;j=f[a>>2]|0;k=(f[i>>2]|0)-j|0;d=(k|0)/44|0;c=d+1|0;if(c>>>0>97612893)fob(a);l=a+8|0;g=((f[l>>2]|0)-j|0)/44|0;h=g<<1;c=g>>>0<48806446?(h>>>0<c>>>0?c:h):97612893;do if(!c)e=0;else if(c>>>0>97612893)ud();else{e=Wpb(c*44|0)|0;break}while(0);h=e+(d*44|0)|0;g=e+(c*44|0)|0;e=h;c=b;d=e+44|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));c=h+(((k|0)/-44|0)*44|0)|0;if((k|0)>0)Irb(c|0,j|0,k|0)|0;f[a>>2]=c;f[i>>2]=h+44;f[l>>2]=g;if(!j)return;Zpb(j);return}function vQa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;h=f[a>>2]|0;i=(f[g>>2]|0)-h|0;c=(i|0)/60|0;b=c+1|0;if(b>>>0>71582788)fob(a);j=a+8|0;k=((f[j>>2]|0)-h|0)/60|0;e=k<<1;b=k>>>0<35791394?(e>>>0<b>>>0?b:e):71582788;do if(!b)d=0;else if(b>>>0>71582788)ud();else{d=Wpb(b*60|0)|0;break}while(0);e=d+(c*60|0)|0;d=d+(b*60|0)|0;b=e;c=b+60|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));b=e+(((i|0)/-60|0)*60|0)|0;if((i|0)>0)Irb(b|0,h|0,i|0)|0;f[a>>2]=b;f[g>>2]=e+60;f[j>>2]=d;if(!h)return;Zpb(h);return}function wQa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){xQa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;xQa(a,b);return}function xQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function yQa(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=+i;j=j|0;k=k|0;l=l|0;m=m|0;n=+n;o=o|0;p=p|0;q=q|0;r=r|0;s=+s;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;z=z|0;var A=0;A=f[d+24>>2]|0;if(A&x|0)return;A=(A&16512|0)==128?c+381|0:c+384|0;sQa(a,0,d,e,g,h,i,j,k,v,w,y,b[A>>0]|0,z);sQa(a,1,d,e,l,m,n,o,p,v,w,y,b[A+1>>0]|0,z);sQa(a,2,d,e,q,r,s,t,u,v,w,y,b[A+2>>0]|0,z);return}function zQa(a,c,d,e,g,i,k,l,m,o){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;k=k|0;l=l|0;m=m|0;o=o|0;var p=0,q=0,r=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,B=0.0,C=0.0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;L=0;M=u;u=u+1984|0;I=f[(d+196|0)>>2]&33554431|k;if(I&l|0){u=M;return}J=uqa(d)|0;K=b[d+192>>0]|0;f[(M+128|0)>>2]=0;f[(M+128|0)+4>>2]=0;f[(M+128|0)+8>>2]=0;t=f[J+24>>2]|0;f[(M+116|0)>>2]=t;v=f[J+28>>2]|0;z=(M+116|0)+4|0;f[z>>2]=v;k=f[J+32>>2]|0;f[((M+116|0)+8|0)>>2]=k;if(!g){F=0;g=t}else{if(t>>>0>e>>>0){p=e;q=0;r=M+116|0;L=6}else{f[(M+116|0)>>2]=0;if((e-t|0)>>>0<v>>>0){p=e-t|0;q=1;r=z;L=6}else{f[z>>2]=0;if(((e-t|0)-v|0)>>>0<k>>>0){p=(e-t|0)-v|0;q=2;r=(M+116|0)+8|0;L=6}else f[((M+116|0)+8|0)>>2]=0}}if((L|0)==6){F=(M+128|0)+(q<<2)|0;f[F>>2]=(f[F>>2]|0)+p;f[r>>2]=(f[r>>2]|0)-p;do{k=(M+116|0)+(q<<2)|0;p=f[k>>2]|0;if(g>>>0<p>>>0){f[k>>2]=g;g=0}else g=g-p|0;q=q+1|0}while((q|0)!=3)}g=f[(M+116|0)>>2]|0;if(!g)g=0;else{F=f[(M+128|0)>>2]|0;f[(M+128|0)>>2]=F-((F>>>0)%3|0);f[(M+116|0)>>2]=g+((F>>>0)%3|0)|0;g=g+((F>>>0)%3|0)|0}v=f[((M+128|0)+4|0)>>2]|0;E=(f[z>>2]|0)+v|0;f[((M+128|0)+4|0)>>2]=v&-2;f[z>>2]=E-(v&-2)|0;F=v&-2;v=E-(v&-2)|0};f[(M+104|0)>>2]=0;f[(M+104|0)+4>>2]=0;f[(M+104|0)+8>>2]=0;do if((I&4194304|0)==0&(b[(c+226|0)>>0]|0)==3)if(!(I&2097152)){E=f[c+284>>2]|0;f[(M+92|0)>>2]=E;k=f[c+260>>2]|0;x=(f[s>>2]=E,+n[s>>2]);if(!k){p=-1;q=0;k=0}else{f[(M+104|0)>>2]=k;p=-8388609;q=32768}E=f[c+288>>2]|0;f[(M+92|0)+4>>2]=E;r=f[c+268>>2]|0;y=(f[s>>2]=E,+n[s>>2]);if(!r)r=0;else{f[(M+104|0)+4>>2]=r;p=-8388609;q=32768}E=f[c+292>>2]|0;f[(M+92|0)+8>>2]=E;t=f[c+276>>2]|0;w=(f[s>>2]=E,+n[s>>2]);if(!t){z=1;E=0;C=x;B=y;A=w;t=0;break}f[(M+104|0)+8>>2]=t;z=1;E=0;p=-8388609;q=32768;C=x;B=y;A=w;break}else{n[(M+92|0)>>2]=1.0;k=f[c+236>>2]|0;if(!k){p=-1;q=0;k=0}else{f[(M+104|0)>>2]=k;p=-8388609;q=32768}n[(M+92|0)+4>>2]=1.0;r=f[c+244>>2]|0;if(!r)r=0;else{f[(M+104|0)+4>>2]=r;p=-8388609;q=32768}n[(M+92|0)+8>>2]=1.0;e=f[c+252>>2]|0;if(!e){z=0;E=1;C=1.0;B=1.0;A=1.0;t=0;break}f[(M+104|0)+8>>2]=e;z=0;E=1;p=-8388609;q=32768;C=1.0;B=1.0;A=1.0;t=e;break}else{z=(I&32768|0)==0&(f[(J+48|0)>>2]&32768|0)!=0&1;r=f[d+180>>2]|0;f[(M+92|0)>>2]=r;E=f[d+184>>2]|0;f[(M+92|0)+4>>2]=E;p=f[d+188>>2]|0;f[(M+92|0)+8>>2]=p;A=(f[s>>2]=p,+n[s>>2]);B=(f[s>>2]=E,+n[s>>2]);E=0;p=-1;q=0;k=0;C=(f[s>>2]=r,+n[s>>2]);r=0;t=0}while(0);q=q|I;e=f[(d+196|0)>>2]|0;if(!(e&8388608)){n[(M+56|0)>>2]=-1.0;n[(M+56|0)+4>>2]=-1.0;n[(M+56|0)+8>>2]=-1.0;n[(M+56|0)+12>>2]=-1.0;n[(M+56|0)+16>>2]=-1.0;n[(M+56|0)+20>>2]=-1.0;w=-1.0;x=-1.0;y=-1.0}else{I=f[(d+104|0)>>2]|0;N=f[I+260>>2]|0;O=f[I+264>>2]|0;f[(M+56|0)>>2]=f[I+256>>2];f[(M+56|0)+4>>2]=N;f[(M+56|0)+8>>2]=O;O=f[(d+104|0)>>2]|0;N=f[O+272>>2]|0;I=f[O+276>>2]|0;f[(M+56|0)+12>>2]=f[O+268>>2];f[(M+56|0)+16>>2]=N;f[(M+56|0)+20>>2]=I;I=f[(d+104|0)>>2]|0;w=+n[I+280>>2];x=+n[I+284>>2];y=+n[I+288>>2]}n[(M+56|0)+24>>2]=w;n[(M+56|0)+28>>2]=x;n[(M+56|0)+32>>2]=y;I=p&q;N=j[(d+200|0)>>1]|h[(d+200|0)+2>>0]<<16;O=1;f[M+160>>2]=a;f[M+168>>2]=c;f[M+176>>2]=d;f[M+200>>2]=i;f[M+216>>2]=l;f[M+224>>2]=m;f[M+232>>2]=o;f[M+376>>2]=z;f[M+416>>2]=E;f[M+464>>2]=p;f[M+1008>>2]=q;f[M+1016>>2]=e;f[M+1040>>2]=I;f[M+1256>>2]=J;f[M+1336>>2]=K;f[M+1512>>2]=k;f[M+1544>>2]=F;n[M+1576>>2]=C;f[M+1584>>2]=g;n[M+1616>>2]=B;f[M+1624>>2]=v;n[M+1640>>2]=A;f[M+1656>>2]=r;f[M+1672>>2]=t;f[M+1720>>2]=N;f[M+1904>>2]=L;f[M+1912>>2]=O;f[M+1920>>2]=0;f[M+1924>>2]=0;TTa(M);G=f[M+1920>>2]|0;D=f[M+1924>>2]|0;H=+n[M+1924>>2];f[M+1920>>2]=0;f[M+1924>>2]=0;if((G|0)==5)return}function AQa(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0;z=u;u=u+80|0;x=z+24|0;y=z+12|0;w=z;m=d;q=f[d+196>>2]&25165821|g&-75497475;k=q|67108866;if(k&h|0){u=z;return}l=Uoa(d)|0;l=f[l>>2]|0;do if((q&4194304|0)==0&(b[c+226>>0]|0)==3)if(!(q&2097152)){r=1;s=0;g=(f[c+276>>2]|0)==0&((f[c+260>>2]|0)==0&(f[c+268>>2]|0)==0)?0:32768;t=+n[c+284>>2];v=+n[c+288>>2];break}else{r=0;s=1;g=(f[c+252>>2]|0)==0&((f[c+236>>2]|0)==0&(f[c+244>>2]|0)==0)?0:32768;t=1.0;v=1.0;break}else{r=0;s=0;g=0;t=+n[d+180>>2];v=+n[d+184>>2]}while(0);A=g|k;p=kxa(f[c+64>>2]|0)|0;o=f[p+12>>2]|0;p=f[p+4>>2]|0;l=f[l+44>>2]|0;f[x>>2]=l;f[x+4>>2]=m;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=1;f[x+20>>2]=0;f[x+24>>2]=A;n[x+40>>2]=1.0;k=b[d+192>>0]|0;k=k&7&((k&255)>>>3&7|e);n[y>>2]=-1.0;n[y+4>>2]=-1.0;n[y+8>>2]=-1.0;m=f[l+36>>2]|0;d=f[l+24>>2]|0;n[w>>2]=-1.0;n[w+4>>2]=-1.0;n[w+8>>2]=-1.0;g=(q&16512|0)==128?c+381|0:c+384|0;if(!(A&h)){A=f[l+28>>2]|0;h=f[l+40>>2]|0;sQa(a,0,x,k,o,y,t,m,d,s,r,i,b[g>>0]|0,j);sQa(a,1,x,k,p,w,v,h,A,s,r,i,b[g+1>>0]|0,j)}u=z;return}function BQa(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=u;u=u+80|0;S=V+64|0;T=V+52|0;O=V+40|0;P=V+4|0;Q=V;R=d+196|0;k=f[R>>2]|0;r=k&14741655;if(r&h|0){u=V;return};f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;N=uqa(d)|0;s=b[d+192>>0]|0;s=s&7&((s&255)>>>3&7|e);f[P>>2]=N;f[P+4>>2]=f[d+108>>2];M=P+8|0;f[M>>2]=r;do if((k&4194304|0)==0&(b[c+226>>0]|0)==3)if(!(k&2097152)){f[O>>2]=f[c+284>>2];h=f[c+260>>2]|0;if(!h){h=-1;k=0}else{f[T>>2]=h;h=-8388609;k=32768}f[O+4>>2]=f[c+288>>2];e=f[c+268>>2]|0;if(e){f[T+4>>2]=e;h=-8388609;k=32768}f[O+8>>2]=f[c+292>>2];e=f[c+276>>2]|0;if(!e){l=1;e=0;break}f[T+8>>2]=e;l=1;e=0;h=-8388609;k=32768;break}else{n[O>>2]=1.0;h=f[c+236>>2]|0;if(!h){h=-1;k=0}else{f[T>>2]=h;h=-8388609;k=32768}n[O+4>>2]=1.0;e=f[c+244>>2]|0;if(e){f[T+4>>2]=e;h=-8388609;k=32768}n[O+8>>2]=1.0;e=f[c+252>>2]|0;if(!e){l=0;e=1;break}f[T+8>>2]=e;l=0;e=1;h=-8388609;k=32768;break}else{l=((k&32768|0)==0?(f[N+48>>2]&32768|0)!=0:0)&1;f[O>>2]=f[d+180>>2];f[O+4>>2]=f[d+184>>2];f[O+8>>2]=f[d+188>>2];e=0;h=-1;k=0}while(0);J=r|k;L=J&h;f[M>>2]=L;L=((L|g)&768|0)==512;K=(J&16512|0)==128?c+381|0:c+384|0;if(!(J&1))J=6e4;else{f[P+12>>2]=f[d+144>>2];f[P+16>>2]=f[d+148>>2];J=2e4}G=s&255;D=P+20|0;E=P+24|0;F=P+28|0;H=P+32|0;I=d+96|0;C=e<<24>>24==0;v=l<<24>>24!=0;w=d;x=a+500|0;y=i<<24>>24==1;z=a+488|0;A=a+492|0;B=a+484|0;i=i<<24>>24==2;t=d+104|0;l=0;s=0;while(1){if(1<<s&G|0)if(f[N+24+(s<<2)>>2]|0){q=+n[O+(s<<2)>>2];if(q>0.0){if(!(f[R>>2]&8388608)){m=-1.0;o=-1.0;p=-1.0}else{c=f[t>>2]|0;m=+n[c+256+(s*12|0)>>2];o=+n[c+256+(s*12|0)+4>>2];p=+n[c+256+(s*12|0)+8>>2]}n[D>>2]=m;n[E>>2]=o;n[F>>2]=p;n[H>>2]=q;g=q<1.0?2e4:J;c=g+j|0;h=f[T+(s<<2)>>2]|0;if(!h){e=d+12+(s<<3)|0;h=f[e>>2]|0;if(!h){spa(d,l);h=f[e>>2]|0}}f[Q>>2]=h;if(!(l<<24>>24)){e=f[I>>2]|0;k=e+120|0;h=b[k>>0]|0;if(h&8){koa(e);h=b[k>>0]|0}if(h&1)f[M>>2]=f[M>>2]|33554432}do if(C){l=i&l<<24>>24==1;if(!(v|+n[H>>2]<1.0|l)){e=f[Q>>2]|0;k=e+187|0;h=b[k>>0]|0;if(h&2){foa(e);h=b[k>>0]|0}if(!(h&4)){U=39;break}}if(L){if(!(f[M>>2]&128))break;h=CQa(a+424+(s*20|0)|0,Q)|0;l=b[K+s>>0]|0;f[S>>2]=d;r=DQa(h,P)|0;b[h+20>>0]=0;h=h+24|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+28|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+16|0;e=r+20|0;k=f[e>>2]|0;if((f[h>>2]|0)==(k|0))f[a>>2]=(f[a>>2]|0)+(l&255);if((k|0)==(f[r+24>>2]|0))EQa(h,S);else{f[k>>2]=w;f[e>>2]=(f[e>>2]|0)+4}b[x>>0]=1;break}if(y|l){h=f[z>>2]|0;if(h>>>0<(f[A>>2]|0)>>>0){r=h+60|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(r|0));e=(f[z>>2]|0)+60|0;f[z>>2]=e}else{vQa(B);e=f[z>>2]|0}k=b[K+s>>0]|0;f[e+-60>>2]=f[Q>>2];f[e+-56>>2]=a+304+(s*20|0);h=e+-52|0;l=P;r=h+36|0;do{f[h>>2]=f[l>>2];h=h+4|0;l=l+4|0}while((h|0)<(r|0));f[e+-16>>2]=d;f[e+-8>>2]=g;b[e+-4>>0]=1;b[e+-3>>0]=k;break}h=CQa(a+304+(s*20|0)|0,Q)|0;l=b[K+s>>0]|0;f[S>>2]=d;r=DQa(h,P)|0;b[h+20>>0]=0;h=h+24|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+28|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+16|0;e=r+20|0;k=f[e>>2]|0;if((f[h>>2]|0)==(k|0))f[a>>2]=(f[a>>2]|0)+(l&255);if((k|0)==(f[r+24>>2]|0))EQa(h,S);else{f[k>>2]=w;f[e>>2]=(f[e>>2]|0)+4}b[x>>0]=1}else U=39;while(0);do if((U|0)==39){U=0;if(!L){h=CQa(a+244+(s*20|0)|0,Q)|0;l=b[K+s>>0]|0;f[S>>2]=d;r=DQa(h,P)|0;b[h+20>>0]=0;h=h+24|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+28|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+16|0;e=r+20|0;k=f[e>>2]|0;if((f[h>>2]|0)==(k|0))f[a>>2]=(f[a>>2]|0)+(l&255);if((k|0)==(f[r+24>>2]|0))EQa(h,S);else{f[k>>2]=w;f[e>>2]=(f[e>>2]|0)+4}break}if(f[M>>2]&128|0){h=CQa(a+364+(s*20|0)|0,Q)|0;l=b[K+s>>0]|0;f[S>>2]=d;r=DQa(h,P)|0;b[h+20>>0]=0;h=h+24|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+28|0;if((f[h>>2]|0)>>>0<c>>>0)f[h>>2]=c;h=r+16|0;e=r+20|0;k=f[e>>2]|0;if((f[h>>2]|0)==(k|0))f[a>>2]=(f[a>>2]|0)+(l&255);if((k|0)==(f[r+24>>2]|0))EQa(h,S);else{f[k>>2]=w;f[e>>2]=(f[e>>2]|0)+4}}}while(0);f[M>>2]=f[M>>2]&-33554433}}h=s+1|0;l=h&255;if((l&255)>=3)break;else s=h&255}u=V;return}function CQa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;k=f[c>>2]|0;p=X(k,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;l=a+4|0;m=f[l>>2]|0;o=(m|0)==0;i=k;a:do if(o)c=0;else{h=m+-1|0;d=(h&m|0)==0;if(d)j=p&h;else if(p>>>0<m>>>0)j=p;else j=(p>>>0)%(m>>>0)|0;c=f[(f[a>>2]|0)+(j<<2)>>2]|0;if(!c)c=j;else{if(d){do{c=f[c>>2]|0;if(!c){c=j;break a}d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&h|0)==(j|0))){c=j;break a}}while((f[c+8>>2]|0)!=(i|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=j;break a}d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=m>>>0)d=(d>>>0)%(m>>>0)|0;if((d|0)!=(j|0)){c=j;break a}}}while((f[c+8>>2]|0)!=(i|0));a=c+12|0;return a|0}}while(0);j=Wpb(40)|0;f[j+8>>2]=k;i=j+12|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[j+28>>2]=1.0;b[j+32>>0]=1;f[j+36>>2]=0;f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(m>>>0)<e){c=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;d=~~+W(+(e/g))>>>0;IQa(a,c>>>0<d>>>0?d:c);c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}else h=m;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=30}}else{f[j>>2]=f[c>>2];q=30}if((q|0)==30)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+12|0;return a|0}function DQa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=FQa(a+12|0,b)|0;t=a+4|0;u=f[t>>2]|0;v=(u|0)==0;a:do if(v)c=0;else{i=u+-1|0;h=(i&u|0)==0;if(h)s=i&w;else if(w>>>0<u>>>0)s=w;else s=(w>>>0)%(u>>>0)|0;c=f[(f[a>>2]|0)+(s<<2)>>2]|0;if(!c)c=s;else{c=f[c>>2]|0;if(!c)c=s;else{j=f[b>>2]|0;k=f[b+4>>2]|0;l=f[b+8>>2]|0;m=+n[b+32>>2];o=+n[b+20>>2];p=+n[b+24>>2];q=+n[b+28>>2];d=+n[b+12>>2];e=+n[b+16>>2];g=(l&1|0)==0;r=(l&8388608|0)==0;if(h){if(g){b:while(1){h=f[c+4>>2]|0;if(!((h|0)==(w|0)|(h&i|0)==(s|0))){c=s;break a}do if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(k|0))if((f[c+16>>2]|0)==(l|0)){if(!r){if(!(+n[c+28>>2]==o))break;if(!(+n[c+32>>2]==p))break;if(!(+n[c+36>>2]==q))break}if(+n[c+40>>2]==m)break b}while(0);c=f[c>>2]|0;if(!c){c=s;break a}}a=c+44|0;return a|0}c:while(1){h=f[c+4>>2]|0;if(!((h|0)==(w|0)|(h&i|0)==(s|0))){c=s;break a}do if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(k|0))if((f[c+16>>2]|0)==(l|0))if(+n[c+20>>2]==d)if(+n[c+24>>2]==e){if(!r){if(!(+n[c+28>>2]==o))break;if(!(+n[c+32>>2]==p))break;if(!(+n[c+36>>2]==q))break}if(+n[c+40>>2]==m)break c}while(0);c=f[c>>2]|0;if(!c){c=s;break a}}a=c+44|0;return a|0}if(g){d:while(1){g=f[c+4>>2]|0;if((g|0)!=(w|0)){if(g>>>0>=u>>>0)g=(g>>>0)%(u>>>0)|0;if((g|0)!=(s|0)){c=s;break a}}do if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(k|0))if((f[c+16>>2]|0)==(l|0)){if(!r){if(!(+n[c+28>>2]==o))break;if(!(+n[c+32>>2]==p))break;if(!(+n[c+36>>2]==q))break}if(+n[c+40>>2]==m)break d}while(0);c=f[c>>2]|0;if(!c){c=s;break a}}a=c+44|0;return a|0}e:while(1){g=f[c+4>>2]|0;if((g|0)!=(w|0)){if(g>>>0>=u>>>0)g=(g>>>0)%(u>>>0)|0;if((g|0)!=(s|0)){c=s;break a}}do if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(k|0))if((f[c+16>>2]|0)==(l|0))if(+n[c+20>>2]==d)if(+n[c+24>>2]==e){if(!r){if(!(+n[c+28>>2]==o))break;if(!(+n[c+32>>2]==p))break;if(!(+n[c+36>>2]==q))break}if(+n[c+40>>2]==m)break e}while(0);c=f[c>>2]|0;if(!c){c=s;break a}}a=c+44|0;return a|0}}}while(0);i=Wpb(76)|0;h=i+8|0;g=h+36|0;do{f[h>>2]=f[b>>2];h=h+4|0;b=b+4|0}while((h|0)<(g|0));h=i+44|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;f[h+24>>2]=0;f[h+28>>2]=0;f[i+4>>2]=w;f[i>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(v|e*+(u>>>0)<d){c=u<<1|(u>>>0<3|(u+-1&u|0)!=0)&1;b=~~+W(+(d/e))>>>0;GQa(a,c>>>0<b>>>0?b:c);c=f[t>>2]|0;b=c+-1|0;if(!(b&c)){g=c;c=b&w;break}if(w>>>0<c>>>0){g=c;c=w}else{g=c;c=(w>>>0)%(c>>>0)|0}}else g=u;while(0);b=(f[a>>2]|0)+(c<<2)|0;c=f[b>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[b>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;b=g+-1|0;if(!(b&g))c=c&b;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;x=74}}else{f[i>>2]=f[c>>2];x=74}if((x|0)==74)f[c>>2]=i;f[h>>2]=(f[h>>2]|0)+1;a=i;a=a+44|0;return a|0}function EQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function FQa(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;a=X(f[b>>2]|0,1540483477)|0;a=(X(a>>>24^a,1540483477)|0)^1866966612;a=X(a>>>13^a,1540483477)|0;a=a>>>15^a;d=X(f[b+4>>2]|0,1540483477)|0;d=(X(d>>>24^d,1540483477)|0)^1866966612;d=X(d>>>13^d,1540483477)|0;a=(a<<6)+-1640531527+(a>>>2)+(d>>>15^d)^a;d=f[b+8>>2]|0;a=d+-1640531527+(a<<6)+(a>>>2)^a;if(d&1){c=+n[b+12>>2];a=(a>>>2)+(a<<6)+(c==0.0?-1640531527:(n[s>>2]=c,f[s>>2]|0)+-1640531527|0)^a;c=+n[b+16>>2];a=(a<<6)+(c==0.0?-1640531527:(n[s>>2]=c,f[s>>2]|0)+-1640531527|0)+(a>>>2)^a}if(!(d&8388608)){d=a;a=b+32|0;c=+n[a>>2];a=c==0.0;b=(n[s>>2]=c,f[s>>2]|0);b=b+-1640531527|0;b=a?-1640531527:b;a=d<<6;e=d>>>2;a=e+a|0;b=a+b|0;b=b^d;return b|0}c=+n[b+20>>2];a=(a>>>2)+(a<<6)+(c==0.0?-1640531527:(n[s>>2]=c,f[s>>2]|0)+-1640531527|0)^a;c=+n[b+24>>2];a=(a>>>2)+(a<<6)+(c==0.0?-1640531527:(n[s>>2]=c,f[s>>2]|0)+-1640531527|0)^a;c=+n[b+28>>2];e=(a>>>2)+(a<<6)+(c==0.0?-1640531527:(n[s>>2]=c,f[s>>2]|0)+-1640531527|0)^a;d=b+32|0;c=+n[d>>2];d=c==0.0;b=(n[s>>2]=c,f[s>>2]|0);b=b+-1640531527|0;b=d?-1640531527:b;d=e<<6;a=e>>>2;d=a+d|0;b=d+b|0;e=b^e;return e|0}function GQa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){HQa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;HQa(a,b);return}function HQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();w=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=w;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;v=b+-1|0;w=(v&b|0)==0;if(w)c=c&v;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){u=d;b:while(1){c:do if(w){d=e;while(1){t=f[d+4>>2]&v;if((t|0)==(c|0))break c;e=(f[a>>2]|0)+(t<<2)|0;if(!(f[e>>2]|0)){c=t;break b}k=d+12|0;l=d+16|0;m=d+20|0;o=d+24|0;p=d+28|0;q=d+32|0;r=d+36|0;h=f[d>>2]|0;d:do if(!h)e=d;else{j=f[d+8>>2]|0;s=d+40|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break d;if((f[k>>2]|0)!=(f[h+12>>2]|0))break d;i=f[l>>2]|0;if((i|0)!=(f[h+16>>2]|0))break d;if(i&1|0){if(!(+n[m>>2]==+n[h+20>>2]))break d;if(!(+n[o>>2]==+n[h+24>>2]))break d}if(i&8388608|0){if(!(+n[p>>2]==+n[h+28>>2]))break d;if(!(+n[q>>2]==+n[h+32>>2]))break d;if(!(+n[r>>2]==+n[h+36>>2]))break d}if(!(+n[s>>2]==+n[h+40>>2]))break d;e=f[h>>2]|0;if(!e){e=h;break}else{i=h;h=e;e=i}}}while(0);f[u>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(t<<2)>>2]>>2];f[f[(f[a>>2]|0)+(t<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=57;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)t=e;else t=(e>>>0)%(b>>>0)|0;if((t|0)==(c|0))break c;e=(f[a>>2]|0)+(t<<2)|0;if(!(f[e>>2]|0)){c=t;break b}j=d+12|0;k=d+16|0;l=d+20|0;m=d+24|0;o=d+28|0;p=d+32|0;q=d+36|0;h=f[d>>2]|0;e:do if(!h)e=d;else{r=f[d+8>>2]|0;s=d+40|0;e=d;while(1){if((r|0)!=(f[h+8>>2]|0))break e;if((f[j>>2]|0)!=(f[h+12>>2]|0))break e;i=f[k>>2]|0;if((i|0)!=(f[h+16>>2]|0))break e;if(i&1|0){if(!(+n[l>>2]==+n[h+20>>2]))break e;if(!(+n[m>>2]==+n[h+24>>2]))break e}if(i&8388608|0){if(!(+n[o>>2]==+n[h+28>>2]))break e;if(!(+n[p>>2]==+n[h+32>>2]))break e;if(!(+n[q>>2]==+n[h+36>>2]))break e}if(!(+n[s>>2]==+n[h+40>>2]))break e;e=f[h>>2]|0;if(!e){e=h;break}else{i=h;h=e;e=i}}}while(0);f[u>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(t<<2)>>2]>>2];f[f[(f[a>>2]|0)+(t<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=57;break a}}}while(0);e=f[d>>2]|0;if(!e){c=57;break a}else{g=d;u=d}}f[e>>2]=u;e=f[d>>2]|0;if(!e){c=57;break}else g=d}if((c|0)==57)return}function IQa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){JQa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;JQa(a,b);return}function JQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function KQa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;k=p;m=a+484|0;n=a+488|0;l=f[m>>2]|0;o=a+496|0;i=f[o>>2]|0;j=l;if((((f[n>>2]|0)-l|0)/60|0|0)==(i|0)){o=0;u=p;return o|0}h=j+(i*60|0)|0;switch(b[j+(i*60|0)+56>>0]|0){case 0:{e=j+(i*60|0)+8|0;d=f[e>>2]|0;d=(f[d+28>>2]|0)+(f[d+24>>2]|0)+(f[d+32>>2]|0)|0;g=f[j+(i*60|0)+16>>2]|0;if(d>>>0>g>>>0){l=j+(i*60|0)+20|0;d=d-g|0;g=f[l>>2]|0;f[l>>2]=d>>>0<g>>>0?d:g;g=(f[j+(i*60|0)+52>>2]|0)+c|0;h=tQa(f[j+(i*60|0)+4>>2]|0,h)|0;i=b[j+(i*60|0)+57>>0]|0;d=h+12|0;if((f[d>>2]|0)>>>0<g>>>0)f[d>>2]=g;c=h+4|0;d=f[c>>2]|0;if((d|0)==(f[h+8>>2]|0))uQa(h,e);else{g=d+44|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));f[c>>2]=(f[c>>2]|0)+44}f[a>>2]=(f[a>>2]|0)+(i&255)}break}case 1:{d=j+(i*60|0)+8|0;l=f[d>>2]|0;if((f[l+32>>2]|0)!=(0-((f[l+24>>2]|0)+(f[l+28>>2]|0))|0)){l=f[j+(i*60|0)+44>>2]|0;e=(f[j+(i*60|0)+52>>2]|0)+c|0;g=CQa(f[j+(i*60|0)+4>>2]|0,h)|0;h=b[j+(i*60|0)+57>>0]|0;f[k>>2]=l;c=DQa(g,d)|0;b[g+20>>0]=0;d=g+24|0;if((f[d>>2]|0)>>>0<e>>>0)f[d>>2]=e;d=c+28|0;if((f[d>>2]|0)>>>0<e>>>0)f[d>>2]=e;d=c+16|0;e=c+20|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))f[a>>2]=(f[a>>2]|0)+(h&255);if((g|0)==(f[c+24>>2]|0))EQa(d,k);else{f[g>>2]=l;f[e>>2]=(f[e>>2]|0)+4}}break}default:{}}l=(f[o>>2]|0)+1|0;f[o>>2]=l;a=f[n>>2]|0;d=f[m>>2]|0;e=a;if(l>>>0<((a-d|0)/60|0)>>>0){o=1;u=p;return o|0}if((e|0)!=(d|0))f[n>>2]=e+(~(((e+-60-d|0)>>>0)/60|0)*60|0);f[o>>2]=0;o=1;u=p;return o|0}function LQa(a){a=a|0;return}function MQa(a){a=a|0;return f[a+28>>2]|0}function NQa(a){a=a|0;return f[a+32>>2]|0}function OQa(a,b){a=a|0;b=b|0;f[a+28>>2]=b;return}function PQa(a,b){a=a|0;b=b|0;f[a+32>>2]=b;return}function QQa(a){a=a|0;return 0}function RQa(a,b){a=a|0;b=b|0;return}function SQa(a){a=a|0;return 0.0}function TQa(a,b){a=a|0;b=+b;return}function UQa(a){a=a|0;return +(+p[a+16>>3])}function VQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;d=f[c>>2]|0;if((d|0)==(b|0))return;if(b|0){e=a+24|0;f[e>>2]=(f[e>>2]|0)+1}if(d|0){e=a+24|0;f[e>>2]=(f[e>>2]|0)+-1}f[c>>2]=b;return}function WQa(a,b){a=a|0;b=b|0;var c=0;if(!b){c=0;return c|0}c=a+4|0;if((f[c>>2]|0)!=(b|0)){c=0;return c|0}f[c>>2]=0;b=a+24|0;c=(f[b>>2]|0)+-1|0;f[b>>2]=c;c=(c|0)==0;return c|0}function XQa(a){a=a|0;var c=0,d=0,e=0;if((f[a+28>>2]|0)>=1){c=a+44|0;d=b[c>>0]|0;if(d&16){if(!(f[a+4>>2]|0))return;e=a+40|0;f[e>>2]=f[e>>2]|1;if(d&1)return;b[c>>0]=d|1;e=a+24|0;f[e>>2]=(f[e>>2]|0)+1;o$(802,a,-1);return}}fh[f[(f[a>>2]|0)+104>>2]&2047](a);return}function YQa(a){a=a|0;var c=0,d=0,e=0;if(!(f[a+4>>2]|0))return;c=a+44|0;d=b[c>>0]|0;if(d&2)return;e=a+40|0;f[e>>2]=f[e>>2]|16;if(d&1)return;b[c>>0]=d|1;e=a+24|0;f[e>>2]=(f[e>>2]|0)+1;o$(802,a,-1);return}function ZQa(a){a=a|0;var c=0,d=0;if(!(f[a+4>>2]|0))return;c=a+40|0;f[c>>2]=f[c>>2]|8;c=a+44|0;d=b[c>>0]|0;if(d&1)return;b[c>>0]=d|1;d=a+24|0;f[d>>2]=(f[d>>2]|0)+1;o$(802,a,-1);return}function _Qa(a){a=a|0;var c=0,d=0;if(!(f[a+4>>2]|0))return;c=a+40|0;f[c>>2]=f[c>>2]|4;c=a+44|0;d=b[c>>0]|0;if(d&1)return;b[c>>0]=d|1;d=a+24|0;f[d>>2]=(f[d>>2]|0)+1;o$(802,a,-1);return}function $Qa(a){a=a|0;var c=0,d=0,e=0;if(!(f[a+4>>2]|0))return;c=a+44|0;d=b[c>>0]|0;if(d&2)return;e=a+40|0;f[e>>2]=f[e>>2]|64;if(d&1)return;b[c>>0]=d|1;e=a+24|0;f[e>>2]=(f[e>>2]|0)+1;o$(802,a,-1);return}function aRa(a){a=a|0;a=a+44|0;b[a>>0]=b[a>>0]|4;return}function bRa(a){a=a|0;var c=0,d=0,e=0,g=0;e=a+44|0;d=b[e>>0]|0;if(!(d&4))return;c=d&-5;b[e>>0]=c;if(!(d&8))return;g=a+40|0;f[g>>2]=f[g>>2]|128;if(!(d&1)){b[e>>0]=c|1;c=a+24|0;f[c>>2]=(f[c>>2]|0)+1;o$(802,a,-1);c=b[e>>0]|0}b[e>>0]=c&-9;return}function cRa(a,c){a=a|0;c=c|0;var d=0;do if(a){a=c+44|0;d=b[a>>0]|0;b[a>>0]=d&-2;if(!(d&4)){a=c+40|0;d=f[a>>2]|0;f[a>>2]=0;dRa(c,d);break}else{b[a>>0]=d&-10|8;break}}while(0);a=c+24|0;d=(f[a>>2]|0)+-1|0;f[a>>2]=d;if((c|0)==0|(d|0)!=0)return;fh[f[(f[c>>2]|0)+4>>2]&2047](c);return}function dRa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0;i=a+4|0;if((c|0)==0|(f[i>>2]|0)==0)return;h=+n$();d=a+8|0;if((c&34|0)!=0&(c&128|0)==0){g=+p[d>>3];if(g<h){g=1.0e3/(h-g);p[a+16>>3]=g;hh[f[(f[a>>2]|0)+120>>2]&7](a,g,h)}else e=5}else e=5;if((e|0)==5)hh[f[(f[a>>2]|0)+120>>2]&7](a,0.0,h);p[d>>3]=h;d=(c&1|0)!=0;if(d){e=a+44|0;b[e>>0]=b[e>>0]|2}if(c&2|0){Pg[f[(f[a>>2]|0)+124>>2]&255](a,0)|0;if(d){d=a+40|0;f[d>>2]=f[d>>2]|2;d=a+44|0;e=b[d>>0]|0;if(e&1)return;b[d>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}d=f[a+28>>2]|0;d=(d|0)<1?-1:d;i=a+40|0;f[i>>2]=f[i>>2]|4;if((d|0)>0){i=a+36|0;f[i>>2]=(f[i>>2]|0)+1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(803,a,d);return}e=a+44|0;c=b[e>>0]|0;if(c&1)return;b[e>>0]=c|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,d);return}if(d){Pg[f[(f[a>>2]|0)+124>>2]&255](a,0)|0;d=a+40|0;f[d>>2]=f[d>>2]|2;d=a+44|0;e=b[d>>0]|0;if(e&1)return;b[d>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}if(c&4|0){c=a+44|0;b[c>>0]=b[c>>0]&-3;if(Pg[f[(f[a>>2]|0)+124>>2]&255](a,1)|0){d=a+40|0;f[d>>2]=f[d>>2]|32;d=b[c>>0]|0;if(d&1)return;b[c>>0]=d|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}gva((f[i>>2]|0)+24|0);d=f[a+32>>2]|0;d=(d|0)<1?-1:d;i=a+40|0;f[i>>2]=f[i>>2]|256;if((d|0)>0){i=a+36|0;f[i>>2]=(f[i>>2]|0)+1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(803,a,d);return}e=b[c>>0]|0;if(e&1)return;b[c>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,d);return}if(c&8|0){if(Pg[f[(f[a>>2]|0)+124>>2]&255](a,2)|0){d=a+40|0;f[d>>2]=f[d>>2]|32;d=a+44|0;e=b[d>>0]|0;if(e&1)return;b[d>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}gva((f[i>>2]|0)+24|0);d=f[a+32>>2]|0;d=(d|0)<1?-1:d;i=a+40|0;f[i>>2]=f[i>>2]|256;if((d|0)>0){i=a+36|0;f[i>>2]=(f[i>>2]|0)+1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(803,a,d);return}e=a+44|0;c=b[e>>0]|0;if(c&1)return;b[e>>0]=c|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,d);return}if(c&16|0){if(Pg[f[(f[a>>2]|0)+124>>2]&255](a,3)|0){d=a+40|0;f[d>>2]=f[d>>2]|32;d=a+44|0;e=b[d>>0]|0;if(e&1)return;b[d>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}gva((f[i>>2]|0)+24|0);d=f[a+32>>2]|0;d=(d|0)<1?-1:d;i=a+40|0;f[i>>2]=f[i>>2]|256;if((d|0)>0){i=a+36|0;f[i>>2]=(f[i>>2]|0)+1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(803,a,d);return}e=a+44|0;c=b[e>>0]|0;if(c&1)return;b[e>>0]=c|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,d);return}if(!(c&96)){if(!(c&256))return;gva((f[i>>2]|0)+12|0);return}if(Pg[f[(f[a>>2]|0)+124>>2]&255](a,4)|0){d=a+40|0;f[d>>2]=f[d>>2]|32;d=a+44|0;e=b[d>>0]|0;if(e&1)return;b[d>>0]=e|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,-1);return}gva((f[i>>2]|0)+24|0);d=f[a+32>>2]|0;d=(d|0)<1?-1:d;i=a+40|0;f[i>>2]=f[i>>2]|256;if((d|0)>0){i=a+36|0;f[i>>2]=(f[i>>2]|0)+1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(803,a,d);return}e=a+44|0;c=b[e>>0]|0;if(c&1)return;b[e>>0]=c|1;i=a+24|0;f[i>>2]=(f[i>>2]|0)+1;o$(802,a,d);return}function eRa(a,c){a=a|0;c=c|0;var d=0;do if(a){a=c+36|0;d=(f[a>>2]|0)+-1|0;f[a>>2]=d;if(!d){a=c+44|0;d=b[a>>0]|0;if(!(d&1))if(!(d&4)){a=c+40|0;d=f[a>>2]|0;f[a>>2]=0;dRa(c,d);break}else{b[a>>0]=d|8;break}}}while(0);a=c+24|0;d=(f[a>>2]|0)+-1|0;f[a>>2]=d;if((c|0)==0|(d|0)!=0)return;fh[f[(f[c>>2]|0)+4>>2]&2047](c);return}function fRa(a){a=a|0;Zpb(a);return}function gRa(a){a=a|0;return f[a+140>>2]|0}function hRa(a){a=a|0;return +(+p[a+120>>3])}function iRa(a){a=a|0;return +(+p[a+128>>3])}function jRa(a){a=a|0;return +(+p[a+104>>3])}function kRa(a,b){a=a|0;b=b|0;f[a+140>>2]=(b|0)==0?1:b;return}function lRa(a,c){a=a|0;c=+c;var d=0.0,e=0,g=0;e=a+120|0;d=+p[e>>3];c=c<0.0?0.0:c;p[e>>3]=c;e=c>0.0;g=a+44|0;b[g>>0]=b[g>>0]&-17|(e&1)<<4&255;if(!(e^d>0.0))return;fh[f[(f[a>>2]|0)+68>>2]&2047](a);return}function mRa(a,b){a=a|0;b=+b;p[a+128>>3]=b<1.0?1.0:b;return}function nRa(a,b){a=a|0;b=+b;gh[f[(f[a>>2]|0)+44>>2]&63](a,b);gh[f[(f[a>>2]|0)+48>>2]&63](a,b);return}function oRa(a,b){a=a|0;b=+b;p[a+104>>3]=b;return}function pRa(a){a=a|0;var c=0,d=0;f[a+80>>2]=0;p[a+96>>3]=-1.0;c=f[a+140>>2]|0;d=f[a+136>>2]|0;f[a+144>>2]=c>>>0<d>>>0?d:c;f[a+148>>2]=0;a=a+152|0;b[a>>0]=b[a>>0]&-8;return}function qRa(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,g=0,h=0;if(!(b>0.0)){g=a+112|0;p[g>>3]=b;g=a+88|0;p[g>>3]=c;return}g=a+80|0;d=f[g>>2]|0;do if(d>>>0>=4){e=d+-1|0;if(!e)d=0;else{d=0;do{h=d;d=d+1|0;p[a+48+(h<<3)>>3]=+p[a+48+(d<<3)>>3]}while((d|0)!=(e|0));d=f[g>>2]|0;if(!d){d=0;break}else d=d+-1|0}d=d>>>0<4?d:4;f[g>>2]=d}while(0);p[a+48+(d<<3)>>3]=b;f[g>>2]=(f[g>>2]|0)+1;h=a+112|0;p[h>>3]=b;h=a+88|0;p[h>>3]=c;return}function rRa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;s=v;t=f[a+4>>2]|0;if(!t){t=0;u=v;return t|0}d=a+120|0;e=+p[d>>3];if(e==0.0){t=nNa(t,c,0,0)|0;u=v;return t|0}q=a+128|0;o=+p[q>>3];h=+p[(e<o?d:q)>>3];o=+p[(o<e?d:q)>>3];q=a+144|0;r=f[q>>2]|0;a:do switch(c<<24>>24){case 0:case 3:case 2:case 1:{j=a+152|0;k=b[j>>0]|0;l=k&-3;b[j>>0]=l;h=+p[a+112>>3];if(h>0.0){m=a+96|0;e=+p[m>>3];if(e<0.0){n=+p[a+88>>3];p[m>>3]=n}else n=e;d=f[a+80>>2]|0;if(!(k&4)){if((d|0)==4){d=4;i=11}}else if(!d){e=0.0;i=14}else i=11;if((i|0)==11){i=a+48+(d<<3)|0;e=0.0;g=a+48|0;do{e=e+ +p[g>>3];g=g+8|0}while((g|0)!=(i|0));e=e/+(d>>>0);i=14}if((i|0)==14)if(e<o){b[j>>0]=l|1;p[m>>3]=+p[a+88>>3];d=~~(+(r>>>0)*.7)>>>0;i=f[a+140>>2]|0;d=i>>>0>d>>>0?i:d;i=28;break a}b[j>>0]=k&-7;if(h>o){if(k&1){e=+p[a+104>>3];if(!(e>0.0)){d=r;break a}if(!(+p[a+88>>3]-n>=e)){d=r;break a}}if((f[a+148>>2]|0)>>>0>~~(+(r>>>0)*.95)>>>0>>>0){d=r<<1;i=28}else d=r}else d=r}else d=r;break}case 4:{e=+p[a+112>>3];if(e>0.0){d=a+152|0;g=b[d>>0]|0;b[d>>0]=g|4;p[a+96>>3]=-1.0;if(e>h){if((f[a+148>>2]|0)>>>0<=~~(+(r>>>0)*.95)>>>0>>>0){d=r;break a}d=g&2?r+128|0:r<<1;i=28;break a}else{if(!(e<h)){d=r;break a}b[d>>0]=g|7;d=~~(+(r>>>0)*.7)>>>0;i=f[a+140>>2]|0;d=i>>>0>d>>>0?i:d;i=28;break a}}else d=r;break}default:d=r}while(0);if((i|0)==28){f[q>>2]=d;if((d|0)!=(r|0))f[a+80>>2]=0};f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;t=nNa(t,c,d,s)|0;f[a+148>>2]=f[s+8>>2];u=v;return t|0}function sRa(a,c,d,e,g,h){a=a|0;c=+c;d=+d;e=e|0;g=g|0;h=h|0;var i=0;i=a+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[a+28>>2]=h;f[a+32>>2]=500;f[a+36>>2]=0;f[a+40>>2]=0;h=a+44|0;b[h>>0]=b[h>>0]&-32|16;f[a>>2]=31648;p[a+88>>3]=0.0;p[a+104>>3]=5.0e3;p[a+112>>3]=0.0;p[a+120>>3]=c<1.0?1.0:c;p[a+128>>3]=d<1.0?1.0:d;f[a+136>>2]=g;h=(e|0)==0?1:e;f[a+140>>2]=h;f[a+80>>2]=0;p[a+96>>3]=-1.0;f[a+144>>2]=h>>>0<g>>>0?g:h;f[a+148>>2]=0;h=a+152|0;b[h>>0]=b[h>>0]&-8;return}function tRa(a,c){a=a|0;c=c|0;var d=0,e=0;f[a>>2]=c;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;c=r1a()|0;p[a+16>>3]=c?3.874301910400391e-06:1.1920928955078125e-07;c=a+72|0;d=a+24|0;e=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=-1;b[a+76>>0]=0;e=a+77|0;d=h[e>>0]|h[e+1>>0]<<8;c=a+80|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+96>>2]=-1;f[a+100>>2]=-1;f[a+104>>2]=-1;f[a+108>>2]=0;a=d&-4032|15;b[e>>0]=a;b[e+1>>0]=a>>8;return}function uRa(a){a=a|0;f[a+80>>2]=0;f[a+84>>2]=0;return}function vRa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+77|0;e=h[d>>0]|h[d+1>>0]<<8;if((e&1|0)==(c&1|0))return;e=e&-2|c&1;b[d>>0]=e;b[d+1>>0]=e>>8;if(c)return;wRa(a);return}function wRa(a){a=a|0;var b=0,c=0;f[a+48>>2]=0;c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+64>>2]=0;c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+24>>2]=0;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+32>>2]=0;c=a+36|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+56>>2]=0;c=a+60|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+40>>2]=0;c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(!b)return;Ppb(b);return}function xRa(a){a=a|0;var b=0,c=0;f[a+56>>2]=0;c=a+60|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+40>>2]=0;c=a+44|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)return;Ppb(a);return}function yRa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+77|0;e=h[d>>0]|h[d+1>>0]<<8;if((c&1|0)==((e&65535)>>>1&1|0))return;e=e&-3|(c&1)<<1&65535;b[d>>0]=e;b[d+1>>0]=e>>8;if(c)return;f[a+56>>2]=0;e=a+60|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+40>>2]=0;a=a+44|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function zRa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+77|0;e=h[d>>0]|h[d+1>>0]<<8;if((c&1|0)==((e&65535)>>>2&1|0))return;e=e&-5|(c&1)<<2&65535;b[d>>0]=e;b[d+1>>0]=e>>8;f[a+64>>2]=0;e=a+68|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+24>>2]=0;e=a+28|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+32>>2]=0;a=a+36|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function ARa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+77|0;e=h[d>>0]|h[d+1>>0]<<8;if((c&1|0)==((e&65535)>>>3&1|0))return;e=e&-9|(c&1)<<3&65535;b[d>>0]=e;b[d+1>>0]=e>>8;wRa(a);return}function BRa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+77|0;e=h[d>>0]|h[d+1>>0]<<8;if((c&1|0)==((e&65535)>>>6&1|0))return;e=e&-65|(c&1)<<6&65535;b[d>>0]=e;b[d+1>>0]=e>>8;wRa(a);return}function CRa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+64|0;d=o+48|0;e=o+44|0;g=o+24|0;m=o+8|0;i=o;f[d>>2]=f[52825];f[e>>2]=f[52826];v8a(g);n=a+77|0;x8a(g,(((h[n>>0]|h[n+1>>0]<<8)&65535)>>>6&1|9728)&65535,0);k=f[52838]|0;l=f[52839]|0;f[m>>2]=d;f[m+4>>2]=e;f[m+8>>2]=g;f[m+12>>2]=a;if(!((h[n>>0]|h[n+1>>0]<<8)&4))j=9;else if(y6a()|0){g=a+24|0;DRa(m,g,a+48|0,a+64|0);X5a(i,f[g>>2]|0,1,1);g=a+32|0;p=f[i>>2]|0;d=i+4|0;q=f[d>>2]|0;f[i>>2]=0;f[d>>2]=0;f[g>>2]=p;p=a+36|0;e=f[p>>2]|0;f[p>>2]=q;if(e|0){Ppb(e);d=f[d>>2]|0;if(d|0)Ppb(d)}q=f[g>>2]|0;f[i>>2]=0;d=i+4|0;f[d>>2]=0;a6a(q,1,i);d=f[d>>2]|0;if(d|0)Ppb(d)}else j=9;if((j|0)==9){d=a+24|0;DRa(m,d,a+48|0,0);d=f[d>>2]|0;e=f[a+28>>2]|0;if(e|0)Npb(e);f[a+32>>2]=d;q=a+36|0;d=f[q>>2]|0;f[q>>2]=e;if(d|0)Ppb(d)}if((h[n>>0]|h[n+1>>0]<<8)&2)if(b[c+500>>0]|0)if(BNa(f[a>>2]|0)|0)DRa(m,a+40|0,a+56|0,0);if((k|0)==(l|0)){P7a(211248,k)|0;u=o;return}else{Q7a(211248,k)|0;R7a(211248,l)|0;u=o;return}}function DRa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;l=f[a+12>>2]|0;e=f[b>>2]|0;if(e|0)if(f[e>>2]|0){e=f[c>>2]|0;if(e|0)if(f[e+8>>2]|0)if((f[e+16>>2]|0)==(f[f[a>>2]>>2]|0))if((f[e+20>>2]|0)==(f[f[a+4>>2]>>2]|0)){u=m;return}}S5a(k);j=f[k>>2]|0;e=k+4|0;i=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[b>>2]=j;j=b+4|0;g=f[j>>2]|0;f[j>>2]=i;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}e=f[b>>2]|0;if(!e)e=0;else e=f[e>>2]|0;P7a(211248,e)|0;D8a(k);j=f[k>>2]|0;e=k+4|0;i=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[c>>2]=j;j=c+4|0;g=f[j>>2]|0;f[j>>2]=i;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}i=a+4|0;j=a+8|0;M8a(f[c>>2]|0,6408,f[f[a>>2]>>2]|0,f[f[i>>2]>>2]|0,f[j>>2]|0);$5a(f[b>>2]|0,0,c,3553,0);if(d|0){D8a(k);e=f[k>>2]|0;g=k+4|0;c=f[g>>2]|0;f[k>>2]=0;f[g>>2]=0;f[d>>2]=e;k=d+4|0;e=f[k>>2]|0;f[k>>2]=c;if(e|0){Ppb(e);e=f[g>>2]|0;if(e|0)Ppb(e)}M8a(f[d>>2]|0,6408,f[f[a>>2]>>2]|0,f[f[i>>2]>>2]|0,f[j>>2]|0);$5a(f[b>>2]|0,1,d,3553,0)}l=l+77|0;if((h[l>>0]|h[l+1>>0]<<8)&8)c6a(f[b>>2]|0,0,1,1)|0;Ud(17664);u=m;return}function ERa(a,c){a=a|0;c=c|0;var d=0.0,e=0,g=0.0,h=0,i=0.0,j=0.0;h=u;u=u+48|0;e=h;a=f[a>>2]|0;g=+p[a+304>>3];switch(b[a+312>>0]|0){case 5:{if(zka(f[a+64>>2]|0,e)|0){j=+p[e+24>>3]-+p[e>>3];i=+p[e+32>>3]-+p[e+8>>3];d=+p[e+40>>3]-+p[e+16>>3];d=j*j+(i*i+d*d)}else{j=+p[c+208>>3];d=+p[c+216>>3];d=j*j+d*d}j=g*+L(+d);u=h;return +j}case 4:{j=g*+(f[52826]|0);u=h;return +j}case 1:{r$(e);j=g*(+(f[e+4>>2]|0)/+p[e+16>>3]);u=h;return +j}case 3:{j=g*+(f[52825]|0);u=h;return +j}default:{j=g;u=h;return +j}}return 0.0}function FRa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+64|0;D=G;k=b+4|0;i=f[k>>2]|0;h=f[b>>2]|0;F=i-h>>2;e=F*12|0;F=F*48|0;E=a+4|0;g=f[E>>2]|0;a=(f[a+8>>2]|0)-g>>2;if(e>>>0>a>>>0){E7(E,e-a|0);j=b;C=E;e=f[E>>2]|0;a=f[b>>2]|0;i=f[k>>2]|0}else{j=b;C=E;e=g;a=h}if((a|0)!=(i|0))while(1){g=f[a>>2]|0;b=f[g+96>>2]|0;z=e;A=b;B=z+48|0;do{f[z>>2]=f[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));n[e+12>>2]=+n[b+48>>2]+ +n[g+156>>2];n[e+28>>2]=+n[b+52>>2]+ +n[g+160>>2];n[e+44>>2]=+n[b+56>>2]+ +n[g+164>>2];a=a+4|0;if((a|0)==(i|0))break;else e=e+48|0}a=f[j>>2]|0;g=f[a>>2]|0;e=f[g+196>>2]|0;a:do if(e&24|0){h=f[k>>2]|0;if((a|0)!=(h|0)){i=D+4|0;j=D+8|0;k=D+12|0;l=D+16|0;m=D+20|0;o=D+24|0;p=D+28|0;q=D+32|0;r=D+36|0;s=D+40|0;t=D+44|0;v=D+48|0;w=D+52|0;x=D+56|0;y=D+60|0;b=f[C>>2]|0;while(1){C=f[g+96>>2]|0;f[D>>2]=f[C>>2];f[i>>2]=f[C+4>>2];f[j>>2]=f[C+8>>2];f[k>>2]=f[C+12>>2];f[l>>2]=f[C+16>>2];f[m>>2]=f[C+20>>2];f[o>>2]=f[C+24>>2];f[p>>2]=f[C+28>>2];f[q>>2]=f[C+32>>2];f[r>>2]=f[C+36>>2];f[s>>2]=f[C+40>>2];f[t>>2]=f[C+44>>2];f[v>>2]=f[C+48>>2];f[w>>2]=f[C+52>>2];f[x>>2]=f[C+56>>2];f[y>>2]=f[C+60>>2];if(e&8){Pga(d,D);e=f[g+196>>2]|0}if(e&16|0)Nga(d,D,f[52825]|0,f[52826]|0);z=b;A=D;B=z+48|0;do{f[z>>2]=f[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));f[b+12>>2]=f[v>>2];f[b+28>>2]=f[w>>2];f[b+44>>2]=f[x>>2];a=a+4|0;if((a|0)==(h|0))break a;g=f[a>>2]|0;b=b+48|0;e=f[g+196>>2]|0}}}while(0);e=f[c>>2]|0;if(!e){D5a(D,34962);a=f[D>>2]|0;e=D+4|0;d=f[e>>2]|0;f[D>>2]=0;f[e>>2]=0;f[c>>2]=a;D=c+4|0;a=f[D>>2]|0;f[D>>2]=d;if(a|0){Ppb(a);a=f[e>>2]|0;if(a|0)Ppb(a)}e=f[c>>2]|0}a=f[E>>2]|0;if((f[e+8>>2]|0)>>>0<F>>>0){I5a(e,F,a,35048);u=G;return}else{J5a(e,0,F,a);u=G;return}}function GRa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;o=r+16|0;p=r;j=f[(f[a>>2]|0)+64>>2]|0;n=d+384|0;f[n>>2]=0;j=Kwa(j)|0;e=f[j>>2]|0;j=f[j+4>>2]|0;a=f[n>>2]|0;if(!((e|0)==(j|0)|a>>>0>5)){k=o+4|0;l=o+8|0;m=o+12|0;do{h=f[e>>2]|0;g=f[e+4>>2]|0;if((h|0)!=(g|0)){a=g-h>>4;i=a>>>0<4;a=i?a:4;if(!a){a=0;q=6}else{g=0;while(1){f[o>>2]=f[h+(g<<4)>>2];f[k>>2]=f[h+(g<<4)+4>>2];f[l>>2]=f[h+(g<<4)+8>>2];f[m>>2]=f[h+(g<<4)+12>>2];TWa(p,o,b,c);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];d=d+16|0;g=g+1|0;if(g>>>0>=a>>>0)break;h=f[e>>2]|0}if(i)q=6}if((q|0)==6){q=0;i=X(a,-4)|0;Krb(d|0,0,64-(a<<4)|0)|0;d=d+64+(i<<2)|0}a=(f[n>>2]|0)+1|0;f[n>>2]=a}e=e+12|0}while(!((e|0)==(j|0)|a>>>0>5))}if(a>>>0>=6){u=r;return}Krb(d|0,0,384-(a<<6)|0)|0;u=r;return}function HRa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+144|0;i=l;j=l+128|0;k=Fga(b)|0;Lga(k,i);h=b+80|0;g=rOa(f[a>>2]|0)|0;g=g>>>0<4?g:4;d=c+48|0;f[d>>2]=g;if(!g){u=l;return}e=j+4|0;g=j+8|0;b=0;do{rSa(j,sOa(f[a>>2]|0,b)|0,k,i,h);n=c+(b*12|0)|0;m=f[j>>2]|0;f[j>>2]=f[n>>2];f[n>>2]=m;n=f[e>>2]|0;m=c+(b*12|0)+4|0;f[e>>2]=f[m>>2];f[m>>2]=n;f[c+(b*12|0)+8>>2]=f[g>>2];b=b+1|0}while(b>>>0<(f[d>>2]|0)>>>0);u=l;return}function IRa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;e=f[a+40>>2]|0;if(!e)e=0;else e=f[e>>2]|0;s=(f[52838]|0)==(e|0)?a+84|0:a+80|0;if((f[s>>2]|0)==(c|0)){c=f[a+108>>2]|0;e8a(211248,514,c|f[52868],c)|0;c=0;return c|0}t=f[52873]|0;u=f[52874]|0;v=f[52867]|0;w=f[52870]|0;x=f[52868]|0;y=f[52871]|0;z=f[52869]|0;A=f[52872]|0;e8a(211248,519,255,0)|0;B=f[52875]|0;C=f[52876]|0;D=f[52877]|0;E=f[52878]|0;F=f[52879]|0;G=f[52880]|0;H=f[52850]|0;I=b[211526]|0;r8a(211248,0)|0;J=b[211525]|0;q8a(211248,0)|0;K=b[211372]|0;W7a(211248,0)|0;L=b[211368]|0;M=b[211369]|0;N=b[211370]|0;O=b[211371]|0;V7a(211248,0,0,0,0)|0;P=f[52836]|0;N7a(211248,f[f[a+88>>2]>>2]|0)|0;r=a+96|0;Q=f[r>>2]|0;qe(Q|0);R=f[52834]|0;q=a+100|0;lf(f[q>>2]|0,1,0,d|0);e=c+24|0;k=c+28|0;a:do if((f[e>>2]|0)==(f[k>>2]|0)){h8a(211248,64)|0;Z7a(211248,255)|0;Ud(1024);n=64;e=0;g=2;l=a+104|0}else{h8a(211248,192)|0;Z7a(211248,0)|0;Ud(1024);h8a(211248,64)|0;k8a(211248,7680,7681,7681)|0;l=f[e>>2]|0;j=l+20|0;if(!(f[j>>2]|0)){C1a(l);if(!(f[j>>2]|0)){e=0;g=2;i=a+104|0}else h=9}else h=9;if((h|0)==9){e=l+33|0;g=f[q>>2]|0;if(!(b[e>>0]|0))lf(g|0,1,0,d|0);else lf(g|0,1,0,31776);g=b[e>>0]|0;e=f[l+12>>2]|0;i=a+104|0;h=f[i>>2]|0;if(!e)lf(h|0,1,0,31776);else lf(h|0,1,0,e|0);I7a(211248,f[f[j>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(!(f[j>>2]|0))C1a(l);ke(4,0,f[l+28>>2]|0);e=1}p=f[k>>2]|0;n=64;o=128;j=1;h=l;while(1){while(1){l=h+36|0;if((l|0)==(p|0)){l=i;break a}m=h+56|0;if(f[m>>2]|0)break;C1a(l);if(!(f[m>>2]|0))h=l;else break}h8a(211248,o)|0;if(!j)Ud(1024);j=h+69|0;k=b[j>>0]|0;if(k<<24>>24!=g<<24>>24){g=f[q>>2]|0;if(!(k<<24>>24))lf(g|0,1,0,d|0);else lf(g|0,1,0,31776);g=b[j>>0]|0}j=f[h+48>>2]|0;k=f[i>>2]|0;if(!j)lf(k|0,1,0,31776);else lf(k|0,1,0,j|0);e8a(211248,514,255,n)|0;I7a(211248,f[f[m>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(!(f[m>>2]|0))C1a(l);ke(4,0,f[h+64>>2]|0);m=o;j=0;e=e+1|0;h=l;o=n;n=m}}while(0);k=c+68|0;do if((f[c>>2]|0)!=(f[c+4>>2]|0)){if(g<<24>>24)lf(f[q>>2]|0,1,0,d|0);h8a(211248,n)|0;e8a(211248,519,255,0)|0;k8a(211248,7680,0,0)|0;if(b[k>>0]&1)Q1a(c);g=c+44|0;if(f[g>>2]|0){lf(f[l>>2]|0,1,0,31776);I7a(211248,f[f[g>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(b[k>>0]&1)Q1a(c);ke(4,0,f[c+60>>2]|0);e=e+1|0;g=0;break}g=f[c>>2]|0;j=g+20|0;if(!(f[j>>2]|0)){C1a(g);if(!(f[j>>2]|0)){g=0;break}g=f[c>>2]|0}h=f[g+12>>2]|0;i=f[l>>2]|0;if(!h)lf(i|0,1,0,31776);else lf(i|0,1,0,h|0);I7a(211248,f[f[j>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(!(f[g+20>>2]|0))C1a(g);ke(4,0,f[g+28>>2]|0);e=e+1|0;g=0}while(0);h=c+12|0;do if((f[h>>2]|0)!=(f[c+16>>2]|0)){if(g<<24>>24!=1)lf(f[q>>2]|0,1,0,31776);h8a(211248,n)|0;e8a(211248,519,255,0)|0;k8a(211248,7680,0,0)|0;if(b[k>>0]&1)Q1a(c);g=c+52|0;if(f[g>>2]|0){lf(f[l>>2]|0,1,0,31776);I7a(211248,f[f[g>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(b[k>>0]&1)Q1a(c);ke(4,0,f[c+64>>2]|0);e=e+1|0;break}g=f[h>>2]|0;j=g+20|0;if(!(f[j>>2]|0)){C1a(g);if(!(f[j>>2]|0))break;g=f[h>>2]|0}i=f[g+12>>2]|0;h=f[l>>2]|0;if(!i)lf(h|0,1,0,31776);else lf(h|0,1,0,i|0);I7a(211248,f[f[j>>2]>>2]|0)|0;qf(f[r>>2]|0,3,5126,0,0,0);if(!(f[g+20>>2]|0))C1a(g);ke(4,0,f[g+28>>2]|0);e=e+1|0}while(0);I7a(211248,R)|0;je(Q|0);N7a(211248,P)|0;V7a(211248,L<<24>>24!=0,M<<24>>24!=0,N<<24>>24!=0,O<<24>>24!=0)|0;W7a(211248,K<<24>>24!=0)|0;q8a(211248,J<<24>>24!=0)|0;r8a(211248,I<<24>>24!=0)|0;Z7a(211248,H)|0;if((B|0)==(E|0)&(C|0)==(F|0)&(D|0)==(G|0))k8a(211248,B,C,D)|0;else{l8a(211248,B,C,D)|0;m8a(211248,E,F,G)|0}if((v|0)==(w|0)&(x|0)==(y|0)&(z|0)==(A|0))e8a(211248,v,x,z)|0;else{f8a(211248,v,x,z)|0;g8a(211248,w,y,A)|0}if((t|0)==(u|0))h8a(211248,t)|0;else{i8a(211248,t)|0;j8a(211248,u)|0}e8a(211248,514,f[52868]|n,n)|0;f[s>>2]=c;f[a+108>>2]=n;c=e;return c|0}function JRa(a,c,d,e,g,i,k,l,m,o,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;k=+k;l=+l;m=m|0;o=o|0;q=q|0;var r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0;F=0;G=u;u=u+14656|0;b[(G+13546|0)>>0]=c;n[(G+13520|0)>>2]=k;n[(G+13516|0)>>2]=l;f[(G+13512|0)>>2]=m;if(!(f[(a+88|0)>>2]|0)){f[(G+24|0)>>2]=31848;f[(G+24|0)+4>>2]=113;f[((G+24|0)+16|0)>>2]=G+24|0;o7a(G+13528|0,151012,151051,G+24|0,1);c=f[(G+13528|0)>>2]|0;E=f[((G+13528|0)+4|0)>>2]|0;f[(G+13528|0)>>2]=0;f[((G+13528|0)+4|0)>>2]=0;f[(a+88|0)>>2]=c;c=f[(a+92|0)>>2]|0;f[(a+92|0)>>2]=E;if(c|0){Ppb(c);c=f[((G+13528|0)+4|0)>>2]|0;if(c|0)Ppb(c)}c=f[((G+24|0)+16|0)>>2]|0;if((G+24|0|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);E=t7a(f[(a+88|0)>>2]|0,193076)|0;f[a+96>>2]=E;E=u7a(f[(a+88|0)>>2]|0,193085)|0;f[a+100>>2]=E;E=u7a(f[(a+88|0)>>2]|0,151090)|0;f[a+104>>2]=E}r=f[52838]|0;s=f[52839]|0;t=f[52823]|0;v=f[52824]|0;w=f[52825]|0;x=f[52826]|0;y=+n[52845];z=+n[52846];A=+n[52847];B=+n[52848];C=f[52873]|0;D=f[52874]|0;h8a(211248,255)|0;E=f[52850]|0;Z7a(211248,0)|0;if((h[(a+77|0)>>0]|h[(a+77|0)+1>>0]<<8)&1){CRa(a,e);m=f[a+48>>2]|0;D7a(211248,0,0,f[m+16>>2]|0,f[m+20>>2]|0)|0}if((b[(G+13546|0)>>0]|0)==1)Y7a(211248,0.0,0.0,0.0,1.0)|0;else Y7a(211248,0.0,0.0,0.0,0.0)|0;do if((d&255)<2){d=h[(a+77|0)>>0]|h[(a+77|0)+1>>0]<<8;b[(a+77|0)>>0]=d&-3969;b[(a+77|0)+1>>0]=(d&-3969)>>8;if(d&1)P7a(211248,f[f[a+24>>2]>>2]|0)|0;Ud(17664);c=f[a+40>>2]|0;if(c|0){P7a(211248,f[c>>2]|0)|0;Ud(17664)}f[a+80>>2]=0;f[a+84>>2]=0}else if(d<<24>>24==2){c=f[52873]|0;m=f[52874]|0;h8a(211248,15)|0;if((h[(a+77|0)>>0]|h[(a+77|0)+1>>0]<<8)&1)P7a(211248,f[f[a+24>>2]>>2]|0)|0;Ud(1024);d=f[a+40>>2]|0;if(d|0){P7a(211248,f[d>>2]|0)|0;Ud(1024)}d=(h[(a+77|0)>>0]|h[(a+77|0)+1>>0]<<8)&-129;b[(a+77|0)>>0]=d;b[(a+77|0)+1>>0]=d>>8;if((c|0)==(m|0)){h8a(211248,c)|0;break}else{i8a(211248,c)|0;j8a(211248,m)|0;break}}while(0);if(f[e>>2]|0){if((f[(a+72|0)>>2]|0)!=(o|0)){f[(a+72|0)>>2]=o;b[(a+76|0)>>0]=1-(h[(a+76|0)>>0]|0)}f[(G+13528|0)>>2]=0;f[(G+24|0)>>2]=0;f[(G+13508|0)>>2]=0;f[(G+13504|0)>>2]=0;o=Fga(g)|0;n[(G+13440|0)>>2]=+p[o>>3];n[((G+13440|0)+4|0)>>2]=+p[o+8>>3];n[((G+13440|0)+8|0)>>2]=+p[o+16>>3];n[(G+13440|0)+12>>2]=+p[o+24>>3];n[((G+13440|0)+16|0)>>2]=+p[o+32>>3];n[((G+13440|0)+20|0)>>2]=+p[o+40>>3];n[((G+13440|0)+24|0)>>2]=+p[o+48>>3];n[(G+13440|0)+28>>2]=+p[o+56>>3];n[((G+13440|0)+32|0)>>2]=+p[o+64>>3];n[((G+13440|0)+36|0)>>2]=+p[o+72>>3];n[((G+13440|0)+40|0)>>2]=+p[o+80>>3];n[(G+13440|0)+44>>2]=+p[o+88>>3];n[(G+13440|0)+48>>2]=+p[o+96>>3];n[(G+13440|0)+52>>2]=+p[o+104>>3];n[(G+13440|0)+56>>2]=+p[o+112>>3];n[(G+13440|0)+60>>2]=+p[o+120>>3];o=Hga(g,f[52825]|0,f[52826]|0)|0;n[(G+13376|0)>>2]=+p[o>>3];n[(G+13376|0)+4>>2]=+p[o+8>>3];n[(G+13376|0)+8>>2]=+p[o+16>>3];n[(G+13376|0)+12>>2]=+p[o+24>>3];n[(G+13376|0)+16>>2]=+p[o+32>>3];n[(G+13376|0)+20>>2]=+p[o+40>>3];n[(G+13376|0)+24>>2]=+p[o+48>>3];n[(G+13376|0)+28>>2]=+p[o+56>>3];n[(G+13376|0)+32>>2]=+p[o+64>>3];n[(G+13376|0)+36>>2]=+p[o+72>>3];n[(G+13376|0)+40>>2]=+p[o+80>>3];n[(G+13376|0)+44>>2]=+p[o+88>>3];n[(G+13376|0)+48>>2]=+p[o+96>>3];n[(G+13376|0)+52>>2]=+p[o+104>>3];n[(G+13376|0)+56>>2]=+p[o+112>>3];n[(G+13376|0)+60>>2]=+p[o+120>>3];o=Jga(g,f[52825]|0,f[52826]|0)|0;n[(G+13312|0)>>2]=+p[o>>3];n[(G+13312|0)+4>>2]=+p[o+8>>3];n[(G+13312|0)+8>>2]=+p[o+16>>3];n[(G+13312|0)+12>>2]=+p[o+24>>3];n[(G+13312|0)+16>>2]=+p[o+32>>3];n[(G+13312|0)+20>>2]=+p[o+40>>3];n[(G+13312|0)+24>>2]=+p[o+48>>3];n[(G+13312|0)+28>>2]=+p[o+56>>3];n[(G+13312|0)+32>>2]=+p[o+64>>3];n[(G+13312|0)+36>>2]=+p[o+72>>3];n[(G+13312|0)+40>>2]=+p[o+80>>3];n[(G+13312|0)+44>>2]=+p[o+88>>3];n[(G+13312|0)+48>>2]=+p[o+96>>3];n[(G+13312|0)+52>>2]=+p[o+104>>3];n[(G+13312|0)+56>>2]=+p[o+112>>3];n[(G+13312|0)+60>>2]=+p[o+120>>3];J=+n[(G+13440|0)>>2];l=+n[((G+13440|0)+4|0)>>2];L=+n[((G+13440|0)+8|0)>>2];k=+n[((G+13440|0)+16|0)>>2];I=+n[((G+13440|0)+20|0)>>2];K=+n[((G+13440|0)+24|0)>>2];N=+n[((G+13440|0)+32|0)>>2];M=+n[((G+13440|0)+36|0)>>2];O=+n[((G+13440|0)+40|0)>>2];H=1.0/(J*(I*O-K*M)+(L*(k*M-I*N)+l*(K*N-k*O)));n[(G+13272|0)>>2]=(I*O-K*M)*H;n[(G+13272|0)+4>>2]=(K*N-k*O)*H;n[(G+13272|0)+8>>2]=(k*M-I*N)*H;n[(G+13272|0)+12>>2]=(L*M-l*O)*H;n[(G+13272|0)+16>>2]=(J*O-L*N)*H;n[(G+13272|0)+20>>2]=(l*N-J*M)*H;n[(G+13272|0)+24>>2]=(l*K-L*I)*H;n[(G+13272|0)+28>>2]=(L*k-J*K)*H;n[(G+13272|0)+32>>2]=(J*I-l*k)*H;o=f[a>>2]|0;H=+p[a+16>>3];k=+p[o+112>>3]*(1.0-H);n[(G+13268|0)>>2]=H+k;l=+p[o+120>>3]*(1.0-H);n[(G+13264|0)>>2]=H+l;n[(G+13260|0)>>2]=k;n[(G+13256|0)>>2]=l;l=+ERa(a,g);n[(G+13252|0)>>2]=l;o=f[a>>2]|0;b[(G+13545|0)>>0]=b[o+226>>0]|0;f[(G+952|0)>>2]=g;f[(G+952|0)+12292>>2]=(j[(o+230|0)>>1]|j[(o+230|0)+2>>1]<<16)<<6&8192^8192;o=(iOa(o)|0)&1;b[((G+952|0)+12296|0)>>0]=b[((G+952|0)+12296|0)>>0]&-2|o;o=f[a>>2]|0;f[(G+944|0)>>2]=(j[(o+230|0)>>1]|j[(o+230|0)+2>>1]<<16)<<6&8192^8192;o=(iOa(o)|0)&1;b[(G+944|0)+4>>0]=o;f[(G+556|0)+384>>2]=0;f[(G+504|0)+48>>2]=0;if(!((h[(a+77|0)>>0]|h[(a+77|0)+1>>0]<<8)&32))GRa(a,G+13440|0,G+13272|0,G+556|0);HRa(a,g,G+504|0);k=+p[i>>3];l=+p[i+8>>3];if(k==0.0&l==0.0)if(+p[i+16>>3]==0.0){f[(G+488|0)>>2]=0;f[(G+488|0)+4>>2]=0;f[(G+488|0)+8>>2]=0;f[(G+488|0)+12>>2]=0}else F=36;else F=36;if((F|0)==36){n[(G+456|0)>>2]=k;n[(G+456|0)+4>>2]=l;n[(G+456|0)+8>>2]=+p[i+16>>3];n[(G+456|0)+12>>2]=+p[i+24>>3];TWa(G+472|0,G+456|0,G+13440|0,G+13272|0);f[(G+488|0)>>2]=f[(G+472|0)>>2];f[(G+488|0)+4>>2]=f[(G+472|0)+4>>2];f[(G+488|0)+8>>2]=f[(G+472|0)+8>>2];f[(G+488|0)+12>>2]=f[(G+472|0)+12>>2]}n[(G+472|0)>>2]=1.0;n[(G+456|0)>>2]=1.0;r$(G);f[G+13568>>2]=a;f[G+13592>>2]=e;f[G+13600>>2]=g;f[G+13648>>2]=q;f[G+14568>>2]=0;f[G+14572>>2]=0;UTa(G)}Z7a(211248,E)|0;if((C|0)==(D|0))h8a(211248,C)|0;else{i8a(211248,C)|0;j8a(211248,D)|0}Y7a(211248,y,z,A,B)|0;D7a(211248,t,v,w,x)|0;if((r|0)==(s|0)){P7a(211248,r)|0;u=G;return}else{Q7a(211248,r)|0;R7a(211248,s)|0;u=G;return}}function KRa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,C=0,E=0,F=0,I=0,J=0,K=0.0;I=0;J=u;u=u+1792|0;F=f[a+8>>2]|0;z=+n[52861];A=+n[52862];B=b[211528]|0;do{j=1;if(j){j=0;if(!(f[c+12>>2]|0)){g=0;i=0}else j=1}if(j)if(1){if(!(b[f[a>>2]>>0]|0))if(!(b[f[(a+4|0)>>2]>>0]|0)){g=0;i=0;break}c8a(211248,1.0,0.0)|0;s8a(211248,1)|0;o8a(211248,f[52868]&-49)|0;r=f[a+12>>2]|0;v=f[a+16>>2]|0;w=f[(a+20|0)>>2]|0;g=f[a+24>>2]|0;i=f[a+28>>2]|0;y=f[f[a+32>>2]>>2]|0;x=f[f[a+36>>2]>>2]|0;f[(J+104|0)>>2]=f[F>>2];f[(J+104|0)+4>>2]=r;f[(J+104|0)+8>>2]=v;f[(J+104|0)+12>>2]=w;f[(J+104|0)+16>>2]=g;f[(J+104|0)+20>>2]=i;f[(J+104|0)+24>>2]=y;f[(J+104|0)+28>>2]=x;f[(J+104|0)+32>>2]=0;x=(b[f[a>>2]>>0]|0)==0;y=(b[f[(a+4|0)>>2]>>0]|0)!=0;i=f[c+8>>2]|0;f[(J+100|0)>>2]=i;g=1;if(g){g=0;if(!i){k=0;l=0}else g=1}if(g)if(1){r=0;k=0;g=i;while(1){q=g+12|0;l=g+16|0;i=1;if(i){i=0;if((f[q>>2]|0)==(f[l>>2]|0)){m=k;o=r}else i=1}if(i)if(1){j=f[g+8>>2]|0;f[(J+64|0)>>2]=f[(j+128|0)>>2];f[(J+64|0)+4>>2]=f[(j+128|0)+4>>2];f[(J+64|0)+8>>2]=f[(j+128|0)+8>>2];f[(J+64|0)+12>>2]=f[(j+128|0)+12>>2];i=Vna(j,f[f[(a+44|0)>>2]>>2]|0,b[f[(a+48|0)>>2]>>0]|0,0)|0;g=f[i>>2]|0;f[(J+48|0)>>2]=g;i=f[i+4>>2]|0;f[((J+48|0)+4|0)>>2]=i;if(i){Npb(i);g=f[(J+48|0)>>2]|0}if(!g){aoa(J,j,f[f[(a+44|0)>>2]>>2]|0,b[f[(a+48|0)>>2]>>0]|0,0,f[(a+52|0)>>2]|0,f[(a+56|0)>>2]|0,b[f[(a+60|0)>>2]>>0]|0,x&y,(f[(f[(a+20|0)>>2]|0)+384>>2]|0)!=0,f[(a+64|0)>>2]|0);g=f[J>>2]|0;w=f[(J+4|0)>>2]|0;f[J>>2]=0;f[(J+4|0)>>2]=0;f[(J+48|0)>>2]=g;i=f[((J+48|0)+4|0)>>2]|0;f[((J+48|0)+4|0)>>2]=w;if(i){Ppb(i);g=f[(J+4|0)>>2]|0;if(g|0)Ppb(g);g=f[(J+48|0)>>2]|0}if(!g){t=k;s=r}else{C=g;I=17}}else{C=g;I=17}if((I|0)==17){I=0;g=f[C+184>>2]|0;if(!g)g=0;else g=f[g>>2]|0;N7a(211248,g)|0;XRa(J+104|0,J+48|0,j);w=f[l>>2]|0;i=f[q>>2]|0;j=((w-i|0)/44|0)+r|0;g=1;if(g){g=0;if((w|0)==(i|0)){t=k;s=j}else g=1}if(g)if(1){v=i;do{g=v+4|0;if((f[v+16>>2]|0)>>>0>1)g=f[g>>2]|0;q=f[g>>2]|0;m=f[(f[v>>2]|0)+48>>2]|0;q8a(211248,(y^(x^1))&(m&4|0)==0)|0;if(!(m&3))o=v+24|0;else{g=x&y^(b[f[(a+68|0)>>2]>>0]|0)!=0;o=v+24|0;if(!(f[o>>2]&67108864)){l=f[q+96>>2]|0;i=b[(l+120|0)>>0]|0;if(i&8){koa(l);i=b[(l+120|0)>>0]|0}g=g^(i&1)!=0}X7a(211248,(m&1|0)!=0^g?2304:2305)|0}if(!(f[o>>2]&1))b8a(211248,+n[f[(a+72|0)>>2]>>2],+n[f[(a+76|0)>>2]>>2])|0;else{K=+p[(F+16|0)>>3];b8a(211248,K+(1.0-K)*+n[q+144>>2],K+(1.0-K)*+n[q+148>>2])|0}if(!(f[o>>2]&4096))n8a(211248,519)|0;else j=(IRa(F,f[q+108>>2]|0,f[(a+80|0)>>2]|0)|0)+j|0;g=f[o>>2]|0;if(g&33554560){g=h[(F+77|0)>>0]|h[(F+77|0)+1>>0]<<8|128;b[(F+77|0)>>0]=g;b[(F+77|0)+1>>0]=g>>8;g=f[o>>2]|0}l=ORa(f[(a+84|0)>>2]|0,(g&128|0)!=0,(g&33554432|0)!=0,(g&16384|0)!=0,e)|0;g=f[v>>2]|0;i=f[g+12>>2]|0;if(i){J7a(211248,f[i>>2]|0)|0;g=f[v>>2]|0}i=f[o>>2]|0;do if(!(i&32768))if(!(i&8388608)){f[J>>2]=g;f[(J+4|0)>>2]=f[g+48>>2]&56;f[(J+44|0)>>2]=0;break}else{t=!(+n[v+28>>2]>=0.0);f[J>>2]=g;g=f[g+48>>2]|0;f[(J+4|0)>>2]=g&56;f[(J+44|0)>>2]=0;if(t)break;else{E=g;I=45;break}}else{f[J>>2]=g;E=f[g+48>>2]|0;f[(J+4|0)>>2]=E&56;f[(J+44|0)>>2]=0;I=45}while(0);if((I|0)==45){I=0;f[(J+4|0)>>2]=E&24}PRa(f[(a+88|0)>>2]|0,J+48|0,v,56,J+64|0,f[(a+20|0)>>2]|0);QRa(J,J+48|0);t=v+12|0;i=f[t>>2]|0;k=i+k|0;g=f[v>>2]|0;if(!(f[g+12>>2]|0))ke(4,f[v+8>>2]|0,i|0);else ne(4,i|0,5123,0+(f[g+20>>2]|0)+(f[v+8>>2]<<1)|0);if(l){l=b[211372]|0;W7a(211248,0)|0;m=b[211368]|0;q=b[211369]|0;r=b[211370]|0;s=b[211371]|0;V7a(211248,0,0,0,0)|0;q8a(211248,0)|0;g=f[o>>2]|0;i=f[52868]|0;do if((g&33570944|0)==33554560){o8a(211248,i|5)|0;h8a(211248,5)|0}else if((g&16512|0)==128){o8a(211248,i|1)|0;h8a(211248,1)|0;break}else{o8a(211248,i|4)|0;h8a(211248,4)|0;break}while(0);k8a(211248,7680,7681,7681)|0;g=f[t>>2]|0;i=f[v>>2]|0;if(!(f[i+12>>2]|0))ke(4,f[v+8>>2]|0,g|0);else ne(4,g|0,5123,0+(f[i+20>>2]|0)+(f[v+8>>2]<<1)|0);V7a(211248,m<<24>>24!=0,q<<24>>24!=0,r<<24>>24!=0,s<<24>>24!=0)|0;W7a(211248,l<<24>>24!=0)|0;k=g+k|0;j=j+1|0}i=f[(J+44|0)>>2]|0;if(i|0){g=J+8|0;do{je(f[g>>2]|0);g=g+4|0}while((g|0)!=(J+8+(i<<2)|0|0))}v=v+44|0}while((v|0)!=(w|0));t=k;s=j}}g=f[((J+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);m=t;o=s}RRa(J+100|0,c,f[f[(a+40|0)>>2]>>2]|0);g=f[(J+100|0)>>2]|0;if(!g){k=m;l=o;break}else{r=o;k=m}}}g=k;i=l}}while(0);f[J+192>>2]=a;f[J+208>>2]=d;f[J+216>>2]=e;f[J+416>>2]=g;f[J+440>>2]=i;n[J+592>>2]=z;n[J+600>>2]=A;f[J+632>>2]=B;f[J+1576>>2]=F;f[J+1640>>2]=I;f[J+1712>>2]=0;f[J+1716>>2]=0;VTa(J);G=f[J+1712>>2]|0;D=f[J+1716>>2]|0;H=+n[J+1716>>2];f[J+1712>>2]=0;f[J+1716>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function LRa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0.0;L=0;M=u;u=u+1792|0;K=f[a+4>>2]|0;z=f[52858]|0;B=b[211372]|0;C=b[211368]|0;E=b[211369]|0;F=b[211370]|0;I=b[211371]|0;j=1;if(j){j=0;if(!(f[c+12>>2]|0)){g=0;i=0}else j=1}if(j)if(1){o8a(211248,f[52868]&-49|32)|0;a8a(211248,515)|0;if((b[f[a>>2]>>0]|0)==1){W7a(211248,0)|0;V7a(211248,0,0,0,0)|0}j=f[a+8>>2]|0;q=f[a+12>>2]|0;r=f[(a+16|0)>>2]|0;v=f[a+20>>2]|0;w=f[a+24>>2]|0;g=f[f[a+28>>2]>>2]|0;i=f[f[a+32>>2]>>2]|0;f[(M+104|0)>>2]=f[K>>2];f[(M+104|0)+4>>2]=j;f[(M+104|0)+8>>2]=q;f[(M+104|0)+12>>2]=r;f[(M+104|0)+16>>2]=v;f[(M+104|0)+20>>2]=w;f[(M+104|0)+24>>2]=g;f[(M+104|0)+28>>2]=i;f[(M+104|0)+32>>2]=0;i=f[c+8>>2]|0;f[(M+100|0)>>2]=i;g=1;if(g){g=0;if(!i){k=0;l=0}else g=1}if(g)if(1){r=0;k=0;g=i;while(1){q=g+12|0;l=g+16|0;i=1;if(i){i=0;if((f[q>>2]|0)==(f[l>>2]|0)){m=k;o=r}else i=1}if(i)if(1){j=f[g+8>>2]|0;f[(M+64|0)>>2]=f[(j+128|0)>>2];f[(M+64|0)+4>>2]=f[(j+128|0)+4>>2];f[(M+64|0)+8>>2]=f[(j+128|0)+8>>2];f[(M+64|0)+12>>2]=f[(j+128|0)+12>>2];i=Wna(j,f[f[(a+40|0)>>2]>>2]|0,0)|0;g=f[i>>2]|0;f[(M+48|0)>>2]=g;i=f[i+4>>2]|0;f[((M+48|0)+4|0)>>2]=i;if(i){Npb(i);g=f[(M+48|0)>>2]|0}if(!g){boa(M,j,f[f[(a+40|0)>>2]>>2]|0,0,(f[(f[(a+16|0)>>2]|0)+384>>2]|0)!=0,f[(a+44|0)>>2]|0);g=f[M>>2]|0;w=f[(M+4|0)>>2]|0;f[M>>2]=0;f[(M+4|0)>>2]=0;f[(M+48|0)>>2]=g;i=f[((M+48|0)+4|0)>>2]|0;f[((M+48|0)+4|0)>>2]=w;if(i){Ppb(i);g=f[(M+4|0)>>2]|0;if(g|0)Ppb(g);g=f[(M+48|0)>>2]|0}if(!g){t=k;s=r}else{A=g;L=17}}else{A=g;L=17}if((L|0)==17){L=0;g=f[A+184>>2]|0;if(!g)g=0;else g=f[g>>2]|0;N7a(211248,g)|0;switch(b[j+186>>0]|0){case 2:{y=a+48|0;L=21;break}case 3:{y=a+52|0;L=21;break}default:x=1.0}if((L|0)==21){L=0;x=+n[f[y>>2]>>2]}WRa(M+104|0,M+48|0,j,x);w=f[l>>2]|0;i=f[q>>2]|0;j=((w-i|0)/44|0)+r|0;g=1;if(g){g=0;if((w|0)==(i|0)){t=k;s=j}else g=1}if(g)if(1){v=i;do{t=v+24|0;if(!(f[t>>2]&1))b8a(211248,+n[f[(a+56|0)>>2]>>2],+n[f[(a+60|0)>>2]>>2])|0;else{g=v+4|0;if((f[v+16>>2]|0)>>>0>1)g=f[g>>2]|0;s=f[g>>2]|0;N=1.0-+p[(K+16|0)>>3];b8a(211248,N*+n[s+144>>2],N*+n[s+148>>2])|0}if(!(f[t>>2]&4096))n8a(211248,519)|0;else{g=v+4|0;if((f[v+16>>2]|0)>>>0>1)g=f[g>>2]|0;j=(IRa(K,f[(f[g>>2]|0)+108>>2]|0,f[(a+64|0)>>2]|0)|0)+j|0}if(f[t>>2]&33554560|0){s=h[(K+77|0)>>0]|h[(K+77|0)+1>>0]<<8|128;b[(K+77|0)>>0]=s;b[(K+77|0)+1>>0]=s>>8}if((b[f[(a+68|0)>>2]>>0]|0)==2){l=f[t>>2]|0;o8a(211248,f[52868]|(l&128)>>>6|(l&33554432)>>>22|32)|0;h8a(211248,((l&128&255)>>>6|(l&33554432|0?40:32))&255)|0;k8a(211248,7680,7680,7681)|0;l=1}else{l=f[t>>2]|0;l=ORa(f[(a+76|0)>>2]|0,(l&128|0)!=0,(l&33554432|0)!=0,(l&16384|0)!=0,e)|0}g=f[v>>2]|0;i=f[g+12>>2]|0;if(i){J7a(211248,f[i>>2]|0)|0;g=f[v>>2]|0}i=f[t>>2]|0;do if(!(i&32768))if(!(i&8388608)){f[M>>2]=g;f[(M+4|0)>>2]=f[g+48>>2]&448;f[(M+44|0)>>2]=0;break}else{s=!(+n[v+28>>2]>=0.0);f[M>>2]=g;g=f[g+48>>2]|0;f[(M+4|0)>>2]=g&448;f[(M+44|0)>>2]=0;if(s)break;else{J=g;L=47;break}}else{f[M>>2]=g;J=f[g+48>>2]|0;f[(M+4|0)>>2]=J&448;f[(M+44|0)>>2]=0;L=47}while(0);if((L|0)==47){L=0;f[(M+4|0)>>2]=J&192}PRa(f[(a+80|0)>>2]|0,M+48|0,v,448,M+64|0,f[(a+16|0)>>2]|0);QRa(M,M+48|0);s=v+12|0;i=f[s>>2]|0;k=i+k|0;g=f[v>>2]|0;if(!(f[g+12>>2]|0))ke(1,f[v+8>>2]|0,i|0);else ne(1,i|0,5123,0+(f[g+20>>2]|0)+(f[v+8>>2]<<1)|0);if(l){l=b[211372]|0;W7a(211248,0)|0;m=b[211368]|0;o=b[211369]|0;q=b[211370]|0;r=b[211371]|0;V7a(211248,0,0,0,0)|0;g=f[t>>2]|0;i=f[52868]|0;if((b[f[(a+68|0)>>2]>>0]|0)==2){do if((g&33570944|0)==33554560){o8a(211248,i|21)|0;h8a(211248,21)|0}else{if((g&16512|0)==128){o8a(211248,i|17)|0;h8a(211248,17)|0;break}if(!(g&33554432)){o8a(211248,i|16)|0;h8a(211248,16)|0;break}else{o8a(211248,i|20)|0;h8a(211248,20)|0;break}}while(0);k8a(211248,7680,7681,7681)|0}else{do if((g&33570944|0)==33554560){o8a(211248,i|5)|0;h8a(211248,5)|0}else if((g&16512|0)==128){o8a(211248,i|1)|0;h8a(211248,1)|0;break}else{o8a(211248,i|4)|0;h8a(211248,4)|0;break}while(0);k8a(211248,7680,7681,7681)|0}g=f[s>>2]|0;i=f[v>>2]|0;if(!(f[i+12>>2]|0))ke(1,f[v+8>>2]|0,g|0);else ne(1,g|0,5123,0+(f[i+20>>2]|0)+(f[v+8>>2]<<1)|0);V7a(211248,m<<24>>24!=0,o<<24>>24!=0,q<<24>>24!=0,r<<24>>24!=0)|0;W7a(211248,l<<24>>24!=0)|0;k=g+k|0;j=j+1|0}i=f[(M+44|0)>>2]|0;if(i|0){g=M+8|0;do{je(f[g>>2]|0);g=g+4|0}while((g|0)!=(M+8+(i<<2)|0|0))}v=v+44|0}while((v|0)!=(w|0));t=k;s=j}}g=f[((M+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);m=t;o=s}RRa(M+100|0,c,f[f[(a+36|0)>>2]>>2]|0);g=f[(M+100|0)>>2]|0;if(!g){k=m;l=o;break}else{r=o;k=m}}}g=k;i=l}f[M+192>>2]=a;f[M+208>>2]=d;f[M+216>>2]=e;f[M+408>>2]=g;f[M+432>>2]=i;f[M+576>>2]=z;f[M+608>>2]=B;f[M+640>>2]=C;f[M+672>>2]=E;f[M+696>>2]=F;f[M+704>>2]=I;f[M+1576>>2]=K;f[M+1632>>2]=L;f[M+1704>>2]=0;f[M+1708>>2]=0;WTa(M);G=f[M+1704>>2]|0;D=f[M+1708>>2]|0;H=+n[M+1708>>2];f[M+1704>>2]=0;f[M+1708>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function MRa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0.0;A=0;B=u;u=u+1728|0;z=f[a+4>>2]|0;j=1;if(j){j=0;if(!(f[c+12>>2]|0)){g=0;i=0}else j=1}if(j)if(1){o8a(211248,f[52868]&-49|16)|0;i=f[f[a>>2]>>2]|0;C=f[a+8>>2]|0;j=f[a+12>>2]|0;q=f[(a+16|0)>>2]|0;r=f[a+20>>2]|0;v=f[a+24>>2]|0;w=f[f[a+28>>2]>>2]|0;g=f[f[a+32>>2]>>2]|0;f[(B+112|0)>>2]=f[z>>2];f[(B+112|0)+4>>2]=C;f[(B+112|0)+8>>2]=j;f[(B+112|0)+12>>2]=q;f[(B+112|0)+16>>2]=r;f[(B+112|0)+20>>2]=v;f[(B+112|0)+24>>2]=w;f[(B+112|0)+28>>2]=g;f[(B+112|0)+32>>2]=0;f[((B+112|0)+36|0)>>2]=i;i=f[c+8>>2]|0;f[(B+104|0)>>2]=i;g=1;if(g){g=0;if(!i){k=0;l=0}else g=1}if(g)if(1){r=0;k=0;g=i;while(1){q=g+12|0;l=g+16|0;i=1;if(i){i=0;if((f[q>>2]|0)==(f[l>>2]|0)){m=k;o=r}else i=1}if(i)if(1){j=f[g+8>>2]|0;f[(B+64|0)>>2]=f[(j+128|0)>>2];f[(B+64|0)+4>>2]=f[(j+128|0)+4>>2];f[(B+64|0)+8>>2]=f[(j+128|0)+8>>2];f[(B+64|0)+12>>2]=f[(j+128|0)+12>>2];i=Xna(j,f[f[(a+40|0)>>2]>>2]|0,0)|0;g=f[i>>2]|0;f[(B+48|0)>>2]=g;i=f[i+4>>2]|0;f[((B+48|0)+4|0)>>2]=i;if(i){Npb(i);g=f[(B+48|0)>>2]|0}if(!g){coa(B,j,f[f[(a+40|0)>>2]>>2]|0,0,b[f[(a+44|0)>>2]>>0]|0,b[f[(a+48|0)>>2]>>0]|0,(f[(f[(a+16|0)>>2]|0)+384>>2]|0)!=0,f[(a+52|0)>>2]|0);g=f[B>>2]|0;C=f[(B+4|0)>>2]|0;f[B>>2]=0;f[(B+4|0)>>2]=0;f[(B+48|0)>>2]=g;i=f[((B+48|0)+4|0)>>2]|0;f[((B+48|0)+4|0)>>2]=C;if(i){Ppb(i);g=f[(B+4|0)>>2]|0;if(g|0)Ppb(g);g=f[(B+48|0)>>2]|0}if(!g){t=k;s=r}else{x=g;A=15}}else{x=g;A=15}if((A|0)==15){A=0;g=f[x+184>>2]|0;if(!g)g=0;else g=f[g>>2]|0;N7a(211248,g)|0;NRa(B+112|0,B+48|0,j);g=f[(B+48|0)>>2]|0;i=f[g+84>>2]|0;if((i|0)>-1)ff(i|0,0.0,0.0,0.0);g=f[g+132>>2]|0;if((g|0)>-1)$e(g|0,+(+n[((B+112|0)+36|0)>>2]));w=f[l>>2]|0;i=f[q>>2]|0;j=((w-i|0)/44|0)+r|0;g=1;if(g){g=0;if((w|0)==(i|0)){t=k;s=j}else g=1}if(g)if(1){v=i;do{t=v+24|0;if(!(f[t>>2]&1))b8a(211248,+n[f[(a+56|0)>>2]>>2],+n[f[(a+60|0)>>2]>>2])|0;else{g=v+4|0;if((f[v+16>>2]|0)>>>0>1)g=f[g>>2]|0;C=f[g>>2]|0;E=1.0-+p[(z+16|0)>>3];b8a(211248,E*+n[C+144>>2],E*+n[C+148>>2])|0}if(!(f[t>>2]&4096))n8a(211248,519)|0;else{g=v+4|0;if((f[v+16>>2]|0)>>>0>1)g=f[g>>2]|0;j=(IRa(z,f[(f[g>>2]|0)+108>>2]|0,f[(a+64|0)>>2]|0)|0)+j|0}g=f[t>>2]|0;if(g&33554560){g=h[(z+77|0)>>0]|h[(z+77|0)+1>>0]<<8|128;b[(z+77|0)>>0]=g;b[(z+77|0)+1>>0]=g>>8;g=f[t>>2]|0}l=ORa(f[(a+68|0)>>2]|0,(g&128|0)!=0,(g&33554432|0)!=0,(g&16384|0)!=0,e)|0;g=f[v>>2]|0;i=f[g+12>>2]|0;if(i){J7a(211248,f[i>>2]|0)|0;g=f[v>>2]|0}i=f[t>>2]|0;do if(!(i&32768))if(!(i&8388608)){f[B>>2]=g;f[(B+4|0)>>2]=f[g+48>>2]&3584;f[(B+44|0)>>2]=0;break}else{C=!(+n[v+28>>2]>=0.0);f[B>>2]=g;g=f[g+48>>2]|0;f[(B+4|0)>>2]=g&3584;f[(B+44|0)>>2]=0;if(C)break;else{y=g;A=43;break}}else{f[B>>2]=g;y=f[g+48>>2]|0;f[(B+4|0)>>2]=y&3584;f[(B+44|0)>>2]=0;A=43}while(0);if((A|0)==43){A=0;f[(B+4|0)>>2]=y&1536}PRa(f[(a+72|0)>>2]|0,B+48|0,v,3584,B+64|0,f[(a+16|0)>>2]|0);QRa(B,B+48|0);s=v+12|0;i=f[s>>2]|0;k=i+k|0;g=f[v>>2]|0;if(!(f[g+12>>2]|0))ke(0,f[v+8>>2]|0,i|0);else ne(0,i|0,5123,0+(f[g+20>>2]|0)+(f[v+8>>2]<<1)|0);if(l){l=b[211372]|0;W7a(211248,0)|0;m=b[211368]|0;o=b[211369]|0;q=b[211370]|0;r=b[211371]|0;V7a(211248,0,0,0,0)|0;g=f[t>>2]|0;i=f[52868]|0;do if((g&33570944|0)==33554560){o8a(211248,i|5)|0;h8a(211248,5)|0}else if((g&16512|0)==128){o8a(211248,i|1)|0;h8a(211248,1)|0;break}else{o8a(211248,i|4)|0;h8a(211248,4)|0;break}while(0);k8a(211248,7680,7681,7681)|0;g=f[s>>2]|0;i=f[v>>2]|0;if(!(f[i+12>>2]|0))ke(0,f[v+8>>2]|0,g|0);else ne(0,g|0,5123,0+(f[i+20>>2]|0)+(f[v+8>>2]<<1)|0);V7a(211248,m<<24>>24!=0,o<<24>>24!=0,q<<24>>24!=0,r<<24>>24!=0)|0;W7a(211248,l<<24>>24!=0)|0;k=g+k|0;j=j+1|0}i=f[(B+44|0)>>2]|0;if(i|0){g=B+8|0;do{je(f[g>>2]|0);g=g+4|0}while((g|0)!=(B+8+(i<<2)|0|0))}v=v+44|0}while((v|0)!=(w|0));t=k;s=j}}g=f[((B+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);m=t;o=s}RRa(B+104|0,c,f[f[(a+36|0)>>2]>>2]|0);g=f[(B+104|0)>>2]|0;if(!g){k=m;l=o;break}else{r=o;k=m}}}g=k;i=l}f[B+192>>2]=a;f[B+208>>2]=d;f[B+216>>2]=e;f[B+400>>2]=g;f[B+424>>2]=i;f[B+1528>>2]=z;f[B+1584>>2]=A;f[B+1656>>2]=0;f[B+1660>>2]=0;XTa(B);G=f[B+1656>>2]|0;D=f[B+1660>>2]|0;H=+n[B+1660>>2];f[B+1656>>2]=0;f[B+1660>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function NRa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=f[b>>2]|0;f[a+32>>2]=0;b=f[g+36>>2]|0;if((b|0)>-1)lf(b|0,1,0,f[a+8>>2]|0);b=f[g+40>>2]|0;if((b|0)>-1)lf(b|0,1,0,f[a+4>>2]|0);b=f[g+128>>2]|0;if((b|0)>-1)$e(b|0,+(+(f[52826]|0)));b=f[g+60>>2]|0;if((b|0)>-1)bf(b|0,+n[(f[a+8>>2]|0)+44>>2]==0.0|0);b=f[g+96>>2]|0;if((b|0)>-1)gf(b|0,1,mOa(f[a>>2]|0)|0);d=a+16|0;if(f[(f[d>>2]|0)+48>>2]|0){c=0;do{e=sOa(f[a>>2]|0,c)|0;b=f[g+36+(c+29<<2)>>2]|0;if((b|0)>-1)gf(b|0,1,(f[d>>2]|0)+(c*12|0)|0);b=f[g+36+(c+33<<2)>>2]|0;if((b|0)>-1)gf(b|0,1,e+12|0);c=c+1|0}while(c>>>0<(f[(f[d>>2]|0)+48>>2]|0)>>>0)}b=f[g+108>>2]|0;if((b|0)>-1)jf(b|0,24,f[a+12>>2]|0);b=f[g+144>>2]|0;if((b|0)>-1)jf(b|0,1,f[a+20>>2]|0);b=f[g+148>>2]|0;if((b|0)<=-1)return;cf(b|0,+(+n[a+24>>2]),+(+n[a+28>>2]));return}function ORa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;if(g){if(c&d){o8a(211248,f[52868]|10)|0;h8a(211248,10)|0;k8a(211248,7680,7680,7681)|0;e=(b[f[a>>2]>>0]&1)!=0;return e|0}if(c){o8a(211248,f[52868]|2)|0;h8a(211248,2)|0;k8a(211248,7680,7680,7681)|0;if(e){e=0;return e|0}e=(b[f[a>>2]>>0]&1)!=0;return e|0}if(d){o8a(211248,f[52868]|8)|0;h8a(211248,8)|0;k8a(211248,7680,7680,7681)|0;e=(b[f[a>>2]>>0]&1)!=0;return e|0}else{k8a(211248,7680,7680,7680)|0;e=0;return e|0}}else{h8a(211248,f[f[a+4>>2]>>2]|0)|0;g=f[52868]&245;if(c&d){o8a(211248,g|10)|0;k8a(211248,7680,7680,7681)|0;e=(b[f[a>>2]>>0]&1)!=0;return e|0}if(c){o8a(211248,g|2)|0;k8a(211248,7680,7680,7681)|0;if(e){e=0;return e|0}e=(b[f[a>>2]>>0]&1)!=0;return e|0}if(d){o8a(211248,g|8)|0;k8a(211248,7680,7680,7681)|0;e=(b[f[a>>2]>>0]&1)!=0;return e|0}else{o8a(211248,g)|0;k8a(211248,7680,7680,7681)|0;e=0;return e|0}}return 0}function PRa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;W=u;u=u+112|0;T=W+40|0;i=W;V=f[c>>2]|0;c=f[V+64>>2]|0;if((c|0)>-1){if(!(b[a+12296>>0]&1))j=(f[(f[d>>2]|0)+48>>2]&4096|0)==0;else j=1;bf(c|0,j&1|0)}c=f[V+68>>2]|0;if((c|0)>-1)bf(c|0,(f[(f[d>>2]|0)+48>>2]&3|0)==0|0);c=f[V+72>>2]|0;do if((c|0)>-1){j=f[d+24>>2]|0;if(j&8388608|0){k=+n[d+28>>2];if(k>=0.0){hf(c|0,+k,+(+n[d+32>>2]),+(+n[d+36>>2]),+(+n[g+12>>2]));break}}if(!(j&32768))if(e&2336&f[(f[d>>2]|0)+48>>2]|0){hf(c|0,1.0,1.0,1.0,+(+n[g+12>>2]));break}jf(c|0,1,g|0)}while(0);c=f[V+76>>2]|0;if((c|0)>-1)$e(c|0,+(+n[d+40>>2]));c=f[V+88>>2]|0;U=d+24|0;if((c|0)>-1)$e(c|0,+((f[a+12292>>2]|f[U>>2])&8192|0?0.0:1.0));m=V+44|0;c=f[m>>2]|0;e=f[U>>2]|0;j=(e&67108864|0)==0;do if((c|0)>-1){if(!j){lf(c|0,1,0,31884);c=f[V+48>>2]|0;if((c|0)<=-1)break;kf(c|0,1,0,31948);break}l=d+4|0;l=f[(f[((f[d+16>>2]|0)>>>0>1?f[l>>2]|0:l)>>2]|0)+96>>2]|0;if(b[l+120>>0]&4){joa(l);e=f[U>>2]|0}g=l+76|0;c=f[a>>2]|0;if(!(e&24))e=l;else{f[T>>2]=f[l>>2];f[T+4>>2]=f[l+4>>2];f[T+8>>2]=f[l+8>>2];f[T+12>>2]=f[l+12>>2];f[T+16>>2]=f[l+16>>2];f[T+20>>2]=f[l+20>>2];f[T+24>>2]=f[l+24>>2];f[T+28>>2]=f[l+28>>2];f[T+32>>2]=f[l+32>>2];f[T+36>>2]=f[l+36>>2];f[T+40>>2]=f[l+40>>2];f[T+44>>2]=f[l+44>>2];f[T+48>>2]=f[l+48>>2];f[T+52>>2]=f[l+52>>2];f[T+56>>2]=f[l+56>>2];f[T+60>>2]=f[l+60>>2];if(e&8|0)Pga(c,T);if(!(e&16))e=T;else{Nga(c,T,f[52825]|0,f[52826]|0);e=T}}j=f[U>>2]|0;c=f[a>>2]|0;if(!(j&24))i=g;else{f[i>>2]=f[g>>2];f[i+4>>2]=f[l+80>>2];f[i+8>>2]=f[l+84>>2];f[i+12>>2]=f[l+88>>2];f[i+16>>2]=f[l+92>>2];f[i+20>>2]=f[l+96>>2];f[i+24>>2]=f[l+100>>2];f[i+28>>2]=f[l+104>>2];f[i+32>>2]=f[l+108>>2];if(j&8)Qga(c,i)}c=f[m>>2]|0;if((c|0)>-1)lf(c|0,1,0,e|0);c=f[V+48>>2]|0;if((c|0)>-1)kf(c|0,1,0,i|0)}else{if(j){j=d+4|0;j=f[(f[((f[d+16>>2]|0)>>>0>1?f[j>>2]|0:j)>>2]|0)+96>>2]|0;e=j+120|0;c=b[e>>0]|0;if(c&16){loa(j);c=b[e>>0]|0}j=(c&2)!=0}else j=0;c=f[V+56>>2]|0;if((c|0)>-1)ef(c|0,0,(j?f[d+16>>2]|0:0)|0);R=f[V+52>>2]|0;if((R|0)>-1){e=f[U>>2]|0;if(e&67108864|0){jf(((f[d+20>>2]|0)*3|0)+R|0,3,31984);break}S=a+4|0;P=d+16|0;c=f[P>>2]|0;Q=d+4|0;Q=c>>>0>1?f[Q>>2]|0:Q;if(!j){if(!c)c=0;else{l=T+4|0;m=T+8|0;o=T+12|0;p=T+16|0;q=T+20|0;r=T+24|0;s=T+28|0;t=T+32|0;v=T+36|0;w=T+40|0;x=T+44|0;y=T+48|0;z=T+52|0;A=T+56|0;B=T+60|0;i=0;g=S;while(1){c=f[(f[Q+(i<<2)>>2]|0)+96>>2]|0;j=f[a>>2]|0;if(e&24){f[T>>2]=f[c>>2];f[l>>2]=f[c+4>>2];f[m>>2]=f[c+8>>2];f[o>>2]=f[c+12>>2];f[p>>2]=f[c+16>>2];f[q>>2]=f[c+20>>2];f[r>>2]=f[c+24>>2];f[s>>2]=f[c+28>>2];f[t>>2]=f[c+32>>2];f[v>>2]=f[c+36>>2];f[w>>2]=f[c+40>>2];f[x>>2]=f[c+44>>2];f[y>>2]=f[c+48>>2];f[z>>2]=f[c+52>>2];f[A>>2]=f[c+56>>2];f[B>>2]=f[c+60>>2];if(e&8|0)Pga(j,T);if(!(e&16))c=T;else{Nga(j,T,f[52825]|0,f[52826]|0);c=T}}j=g;e=c;O=j+48|0;do{f[j>>2]=f[e>>2];j=j+4|0;e=e+4|0}while((j|0)<(O|0));f[g+12>>2]=f[c+48>>2];f[g+28>>2]=f[c+52>>2];f[g+44>>2]=f[c+56>>2];i=i+1|0;c=f[P>>2]|0;if(i>>>0>=c>>>0)break;g=g+48|0;e=f[U>>2]|0}c=c*3|0}jf(((f[d+20>>2]|0)*3|0)+R|0,c|0,S|0);break}if(!c)c=0;else{q=i+4|0;r=i+8|0;s=i+12|0;t=i+16|0;v=i+20|0;w=i+24|0;x=i+28|0;y=i+32|0;z=T+4|0;A=T+8|0;B=T+12|0;C=T+16|0;D=T+20|0;E=T+24|0;F=T+28|0;G=T+32|0;H=T+36|0;I=T+40|0;J=T+44|0;K=T+48|0;L=T+52|0;M=T+56|0;N=T+60|0;m=a+4+(c*12<<2)|0;o=0;p=S;while(1){e=f[(f[Q+(o<<2)>>2]|0)+96>>2]|0;if(b[e+120>>0]&4)joa(e);g=e+76|0;c=f[U>>2]|0;j=f[a>>2]|0;if(!(c&24))l=e;else{f[T>>2]=f[e>>2];f[z>>2]=f[e+4>>2];f[A>>2]=f[e+8>>2];f[B>>2]=f[e+12>>2];f[C>>2]=f[e+16>>2];f[D>>2]=f[e+20>>2];f[E>>2]=f[e+24>>2];f[F>>2]=f[e+28>>2];f[G>>2]=f[e+32>>2];f[H>>2]=f[e+36>>2];f[I>>2]=f[e+40>>2];f[J>>2]=f[e+44>>2];f[K>>2]=f[e+48>>2];f[L>>2]=f[e+52>>2];f[M>>2]=f[e+56>>2];f[N>>2]=f[e+60>>2];if(c&8|0)Pga(j,T);if(!(c&16))l=T;else{Nga(j,T,f[52825]|0,f[52826]|0);l=T}}c=f[U>>2]|0;j=f[a>>2]|0;if(!(c&24))c=g;else{f[i>>2]=f[g>>2];f[q>>2]=f[e+80>>2];f[r>>2]=f[e+84>>2];f[s>>2]=f[e+88>>2];f[t>>2]=f[e+92>>2];f[v>>2]=f[e+96>>2];f[w>>2]=f[e+100>>2];f[x>>2]=f[e+104>>2];f[y>>2]=f[e+108>>2];if(!(c&8))c=i;else{Qga(j,i);c=i}}j=p;e=l;O=j+48|0;do{f[j>>2]=f[e>>2];j=j+4|0;e=e+4|0}while((j|0)<(O|0));f[p+12>>2]=f[l+48>>2];f[p+28>>2]=f[l+52>>2];f[p+44>>2]=f[l+56>>2];f[m>>2]=f[c>>2];f[m+4>>2]=f[c+4>>2];f[m+8>>2]=f[c+8>>2];O=m+16|0;l=c+12|0;f[O>>2]=f[l>>2];f[O+4>>2]=f[l+4>>2];f[O+8>>2]=f[l+8>>2];O=m+32|0;c=c+24|0;f[O>>2]=f[c>>2];f[O+4>>2]=f[c+4>>2];f[O+8>>2]=f[c+8>>2];o=o+1|0;c=f[P>>2]|0;if(o>>>0>=c>>>0)break;else{m=m+48|0;p=p+48|0}}c=c*6|0}jf(((f[d+20>>2]|0)*3|0)+R|0,c|0,S|0)}}while(0);c=f[V+100>>2]|0;do if((c|0)>-1){if((f[d+16>>2]|0)>>>0<=1)if(!(f[U>>2]&67108896)){gf(c|0,1,(f[d+4>>2]|0)+156|0);break}ff(c|0,0.0,0.0,0.0)}while(0);c=f[V+104>>2]|0;if((c|0)<=-1){u=W;return}bf(c|0,((f[U>>2]&2|0)==0?f[h+384>>2]|0:0)|0);u=W;return}function QRa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;VRa(a,c);d=f[c>>2]|0;e=f[d+8>>2]|0;a:do if((e|0)>-1){g=f[a>>2]|0;c=f[g>>2]|0;g=f[g+4>>2]|0;b:do if((c|0)!=(g|0)){while(1){if((f[c+12>>2]|0)==2)break;c=c+28|0;if((c|0)==(g|0))break b}I7a(211248,f[f[c>>2]>>2]|0)|0;qf(e|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(e|0);g=a+44|0;f[a+8+(f[g>>2]<<2)>>2]=e;f[g>>2]=(f[g>>2]|0)+1;break a}while(0);nf(e|0,0.0)}while(0);d=f[d+32>>2]|0;if((d|0)<=-1)return;e=f[a>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;c:do if((c|0)!=(e|0)){while(1){if((f[c+12>>2]|0)==8)break;c=c+28|0;if((c|0)==(e|0))break c}I7a(211248,f[f[c>>2]>>2]|0)|0;qf(d|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(d|0);g=a+44|0;f[a+8+(f[g>>2]<<2)>>2]=d;f[g>>2]=(f[g>>2]|0)+1;return}while(0);nf(d|0,0.0);return}function RRa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=f[a>>2]|0;if((f[l+24>>2]|0)>>>0>c>>>0){f[a>>2]=f[l>>2];return}f[a>>2]=f[l>>2];j=f[b+4>>2]|0;a=f[l+4>>2]|0;g=j+-1|0;h=(g&j|0)==0;if(h)i=g&a;else if(a>>>0<j>>>0)i=a;else i=(a>>>0)%(j>>>0)|0;c=(f[b>>2]|0)+(i<<2)|0;k=f[c>>2]|0;while(1){a=f[k>>2]|0;if((a|0)==(l|0))break;else k=a}if((k|0)==(b+8|0))e=15;else{a=f[k+4>>2]|0;if(h)a=a&g;else if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)==(i|0))d=l;else e=15}do if((e|0)==15){a=f[l>>2]|0;if(a|0){a=f[a+4>>2]|0;if(h)a=a&g;else if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)==(i|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;a=c;if(c){c=f[c+4>>2]|0;if(h)c=c&g;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(i|0)){f[(f[b>>2]|0)+(c<<2)>>2]=k;a=f[l>>2]|0}}f[k>>2]=a;f[d>>2]=0;b=b+12|0;f[b>>2]=(f[b>>2]|0)+-1;if(!l)return;a=f[l+12>>2]|0;if(a|0){c=l+16|0;d=f[c>>2]|0;if((d|0)!=(a|0))f[c>>2]=d+(~(((d+-44-a|0)>>>0)/44|0)*44|0);Zpb(a)}Zpb(l);return}function SRa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0.0,k=0;k=f[c>>2]|0;i=f[k+64>>2]|0;if((i|0)>-1){if(!(b[a+4>>0]|0))c=(f[(f[d>>2]|0)+48>>2]|0)>>>12&1^1;else c=1;bf(i|0,c|0)}c=f[k+68>>2]|0;if((c|0)>-1)bf(c|0,(f[(f[d>>2]|0)+48>>2]&3|0)==0|0);c=f[k+88>>2]|0;if((c|0)>-1)$e(c|0,+((f[a>>2]|f[d+8>>2])&8192|0?0.0:1.0));c=f[k+72>>2]|0;do if((c|0)>-1){i=f[d+8>>2]|0;if(i&8388608|0){j=+n[d+20>>2];if(j>=0.0){hf(c|0,+j,+(+n[d+24>>2]),+(+n[d+28>>2]),+(+n[g+12>>2]));break}}if(!(i&32768))if(e&2336&f[(f[d>>2]|0)+48>>2]|0){hf(c|0,1.0,1.0,1.0,+(+n[g+12>>2]));break}jf(c|0,1,g|0)}while(0);c=f[k+76>>2]|0;if((c|0)>-1)$e(c|0,+(+n[d+32>>2]));c=f[k+104>>2]|0;if((c|0)<=-1)return;bf(c|0,((f[d+8>>2]&2|0)==0?f[h+384>>2]|0:0)|0);return}function TRa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;VRa(a,b);I7a(211248,f[f[a+48>>2]>>2]|0)|0;e=f[b>>2]|0;g=f[e+20>>2]|0;d=a+52|0;f[d>>2]=g;c=a+56|0;f[c>>2]=f[e+24>>2];b=a+60|0;f[b>>2]=f[e+28>>2];qf(g|0,4,5126,0,48,0);qe(g|0);e=a+44|0;f[a+8+(f[e>>2]<<2)>>2]=g;f[e>>2]=(f[e>>2]|0)+1;g=f[c>>2]|0;qf(g|0,4,5126,0,48,16);qe(g|0);f[a+8+(f[e>>2]<<2)>>2]=g;f[e>>2]=(f[e>>2]|0)+1;g=f[b>>2]|0;qf(g|0,4,5126,0,48,32);qe(g|0);f[a+8+(f[e>>2]<<2)>>2]=g;f[e>>2]=(f[e>>2]|0)+1;pf(f[d>>2]|0,1);pf(f[c>>2]|0,1);pf(f[b>>2]|0,1);return}function URa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;h=f[a+4>>2]|0;b=f[k+4>>2]|0;i=h+-1|0;e=(i&h|0)==0;if(e)g=i&b;else if(b>>>0<h>>>0)g=b;else g=(b>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)==(a+8|0))d=13;else{b=f[j+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;d=21}else d=13}do if((d|0)==13){if(l|0){b=f[l+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=22;break}}f[c>>2]=0;c=f[k>>2]|0;d=21}while(0);if((d|0)==21){b=c;if(c)d=22}if((d|0)==22){c=f[c+4>>2]|0;if(e)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;b=f[k+60>>2]|0;if(b|0){c=k+64|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[k+56>>2]|0;if(b|0)Ppb(b);b=f[k+48>>2]|0;if(b|0)Ppb(b);Zpb(k);return l|0}function VRa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;g=f[c>>2]|0;d=f[g>>2]|0;a:do if((d|0)>-1){e=f[a>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;if((c|0)!=(e|0)){while(1){if(!(f[c+12>>2]|0))break;c=c+28|0;if((c|0)==(e|0))break a}I7a(211248,f[f[c>>2]>>2]|0)|0;qf(d|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(d|0);e=a+44|0;f[a+8+(f[e>>2]<<2)>>2]=d;f[e>>2]=(f[e>>2]|0)+1}}while(0);d=f[g+4>>2]|0;b:do if((d|0)>-1){e=f[a>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;if((c|0)!=(e|0)){while(1){if((f[c+12>>2]|0)==1)break;c=c+28|0;if((c|0)==(e|0))break b}I7a(211248,f[f[c>>2]>>2]|0)|0;qf(d|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(d|0);e=a+44|0;f[a+8+(f[e>>2]<<2)>>2]=d;f[e>>2]=(f[e>>2]|0)+1}}while(0);d=f[g+12>>2]|0;c:do if((d|0)>-1){d:do if(f[a+4>>2]&2336|0){e=f[a>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;if((c|0)!=(e|0)){while(1){if((f[c+12>>2]|0)==3)break;c=c+28|0;if((c|0)==(e|0))break d}I7a(211248,f[f[c>>2]>>2]|0)|0;qf(d|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(d|0);e=a+44|0;f[a+8+(f[e>>2]<<2)>>2]=d;f[e>>2]=(f[e>>2]|0)+1;break c}}while(0);of(d|0,1.0,1.0,1.0,1.0)}while(0);d=f[g+16>>2]|0;if((d|0)<=-1)return;e=f[a>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;if((c|0)==(e|0))return;while(1){if((f[c+12>>2]|0)==4)break;c=c+28|0;if((c|0)==(e|0)){i=23;break}}if((i|0)==23)return;I7a(211248,f[f[c>>2]>>2]|0)|0;qf(d|0,h[c+25>>0]|0|0,f[c+16>>2]|0,b[c+24>>0]|0,f[c+20>>2]|0,0+(f[c+8>>2]|0)|0);qe(d|0);i=a+44|0;f[a+8+(f[i>>2]<<2)>>2]=d;f[i>>2]=(f[i>>2]|0)+1;return}function WRa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,h=0;NRa(a,b,c);g=f[b>>2]|0;b=f[g+84>>2]|0;if((b|0)>-1)ff(b|0,0.0,0.0,0.0);e=f[g+136>>2]|0;if((e|0)>-1){b=f[c+80>>2]|0;if(!b)b=0;else b=f[b+8>>2]|0;h=a+32|0;E7a(211248,f[h>>2]|0)|0;F7a(211248,b)|0;a=f[h>>2]|0;f[h>>2]=a+1;bf(e|0,a|0)}b=f[g+140>>2]|0;if((b|0)<=-1)return;$e(b|0,+(d/+n[c+172>>2]));return}function XRa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0;NRa(a,b,c);e=f[b>>2]|0;b=f[e+80>>2]|0;if((b|0)>-1){d=f[a>>2]|0;g=+Yna(c,d+216|0,d+208|0);d=f[a>>2]|0;cf(b|0,+g,+(+Zna(c,d+216|0,d+208|0)))}b=f[e+84>>2]|0;if((b|0)>-1)gf(b|0,1,c+144|0);b=f[e+112>>2]|0;if((b|0)>-1){d=f[a>>2]|0;$e(b|0,+(+_na(c,d+216|0,d+208|0)))}d=f[e+92>>2]|0;if((d|0)>-1){b=f[c+88>>2]|0;if(!b)b=0;else b=f[b+8>>2]|0;h=a+32|0;E7a(211248,f[h>>2]|0)|0;F7a(211248,b)|0;b=f[h>>2]|0;f[h>>2]=b+1;bf(d|0,b|0)}d=f[e+116>>2]|0;if((d|0)>-1){b=f[a>>2]|0;b=$na(c,b+216|0,b+208|0)|0;b=f[b>>2]|0;if(!b)b=0;else b=f[b+8>>2]|0;a=a+32|0;E7a(211248,f[a>>2]|0)|0;F7a(211248,b)|0;h=f[a>>2]|0;f[a>>2]=h+1;bf(d|0,h|0)}b=f[e+120>>2]|0;if((b|0)>-1)ff(b|0,+(+n[c+96>>2]),+(+n[c+104>>2]),+(+n[c+112>>2]));b=f[e+124>>2]|0;if((b|0)<=-1)return;ff(b|0,+(+n[c+100>>2]),+(+n[c+108>>2]),+(+n[c+116>>2]));return}function YRa(a){a=a|0;return}function ZRa(a){a=a|0;Zpb(a);return}function _Ra(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=31848;f[b+4>>2]=f[a+4>>2];return b|0}function $Ra(a,b){a=a|0;b=b|0;f[b>>2]=31848;f[b+4>>2]=f[a+4>>2];return}function aSa(a){a=a|0;return}function bSa(a){a=a|0;Zpb(a);return}function cSa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Qg[f[a+4>>2]&127](f[b>>2]|0,f[c>>2]|0,f[d>>2]|0)|0}function dSa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==151105?a+4|0:0)|0}function eSa(a){a=a|0;return 11376}function fSa(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=u;u=u+32|0;k=j;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;f[k+24>>2]=0;f[k+28>>2]=0;JRa(a,b,c,d,e,k,0.0,0.0,g,h,i);u=j;return}function gSa(){f[52768]=0;f[52769]=0;return}function hSa(){var a=0;a=f[52768]|0;if(a|0)return a|0;a=Wpb(24)|0;f[a>>2]=34962;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=4194304;f[a+16>>2]=262144;f[a+20>>2]=0;f[52768]=a;return a|0}function iSa(){var a=0;a=f[52769]|0;if(a|0)return a|0;a=Wpb(24)|0;f[a>>2]=34963;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=4194304;f[a+16>>2]=262144;f[a+20>>2]=0;f[52769]=a;return a|0}function jSa(){var a=0,b=0;a=f[52768]|0;f[52768]=0;if(a|0){b=f[a+8>>2]|0;if(b|0)Ppb(b);Zpb(a)}a=f[52769]|0;f[52769]=0;if(!a)return;b=f[a+8>>2]|0;if(b|0)Ppb(b);Zpb(a);return}function kSa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=b;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=c;f[a+16>>2]=d;f[a+20>>2]=0;return}function lSa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;l=n;if(!(q1a()|0))if(!(r1a()|0)){m=a+20|0;j=e+-1+(f[m>>2]|0)&0-e;k=a+4|0;i=f[k>>2]|0;h=i;if(!i){e=a+12|0;i=e;e=f[e>>2]|0}else{i=j+b|0;g=a+12|0;e=f[g>>2]|0;if(i>>>0>e>>>0)i=g;else{g=f[a+8>>2]|0;if(g|0)Npb(g);f[c>>2]=h;c=c+4|0;e=f[c>>2]|0;f[c>>2]=g;if(e|0)Ppb(e);f[d>>2]=j;f[m>>2]=i;u=n;return}}do if(e>>>0>=b>>>0){if(e>>>0>j>>>0&(j+b|0)>>>0>e>>>0)if((e-j|0)>>>0>(f[a+16>>2]|0)>>>0)break;D5a(l,f[a>>2]|0);h=f[l>>2]|0;g=l+4|0;j=f[g>>2]|0;f[l>>2]=0;f[g>>2]=0;f[k>>2]=h;h=a+8|0;e=f[h>>2]|0;f[h>>2]=j;if(e|0){Ppb(e);e=f[g>>2]|0;if(e|0)Ppb(e)}I5a(f[k>>2]|0,f[i>>2]|0,0,35044);e=f[k>>2]|0;g=f[h>>2]|0;if(g|0)Npb(g);f[c>>2]=e;c=c+4|0;e=f[c>>2]|0;f[c>>2]=g;if(e|0)Ppb(e);f[d>>2]=0;f[m>>2]=b;u=n;return}while(0);D5a(l,f[a>>2]|0);I5a(f[l>>2]|0,b,0,35044);e=f[l>>2]|0;g=l+4|0;h=f[g>>2]|0;if(h|0)Npb(h);f[c>>2]=e;c=c+4|0;e=f[c>>2]|0;f[c>>2]=h;if(e|0)Ppb(e);f[d>>2]=0;e=f[g>>2]|0;if(e|0)Ppb(e);u=n;return}D5a(l,f[a>>2]|0);I5a(f[l>>2]|0,b,0,35044);e=f[l>>2]|0;g=l+4|0;h=f[g>>2]|0;if(h|0)Npb(h);f[c>>2]=e;c=c+4|0;e=f[c>>2]|0;f[c>>2]=h;if(e|0)Ppb(e);f[d>>2]=0;e=f[g>>2]|0;if(e|0)Ppb(e);u=n;return}function mSa(a){a=a|0;var b=0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function nSa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+16|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=a+32|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];return}function oSa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+16|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[b+12>>2]=f[d+12>>2];b=a+32|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];return}function pSa(a){a=a|0;if(+n[a+28>>2]<1.0){a=1;return a|0}a=+n[a+44>>2]<1.0;return a|0}function qSa(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0;y=u;u=u+112|0;s=y+88|0;x=y+72|0;m=y+24|0;l=y;j=+n[a+28>>2];C=+n[a+16>>2]*j;A=j*+n[a+20>>2];e=j*+n[a+24>>2];n[s>>2]=C;t=s+4|0;n[t>>2]=A;v=s+8|0;n[v>>2]=e;w=s+12|0;n[w>>2]=j;g=+n[a+44>>2];B=+n[a+32>>2]*g;z=g*+n[a+36>>2];h=g*+n[a+40>>2];n[x>>2]=B;o=x+4|0;n[o>>2]=z;p=x+8|0;n[p>>2]=h;q=x+12|0;n[q>>2]=g;if(C==B&A==z){if(!(e==h&j==g))r=3}else r=3;do if((r|0)==3){if(!(f[a>>2]|0)){i=l+16|0;f[l>>2]=31848;f[l+4>>2]=113;f[i>>2]=l;o7a(m,151421,151460,l,1);k=f[m>>2]|0;c=m+4|0;D=f[c>>2]|0;f[m>>2]=0;f[c>>2]=0;f[a>>2]=k;k=a+4|0;d=f[k>>2]|0;f[k>>2]=D;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}c=f[i>>2]|0;if((l|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[a>>2]|0;if(!c)break;D=t7a(c,151499)|0;f[a+56>>2]=D;D=u7a(f[a>>2]|0,151518)|0;f[a+48>>2]=D;D=u7a(f[a>>2]|0,151530)|0;f[a+52>>2]=D;if(!(f[a>>2]|0))break}k=a+8|0;if(!(f[k>>2]|0)){c=m;d=32032;i=c+48|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(i|0));D5a(l,34962);D=f[l>>2]|0;d=l+4|0;i=f[d>>2]|0;f[l>>2]=0;f[d>>2]=0;f[k>>2]=D;D=a+12|0;c=f[D>>2]|0;f[D>>2]=i;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}I5a(f[k>>2]|0,48,m,35044)}}while(0);e=+n[s>>2];if(e==+n[x>>2])if(+n[t>>2]==+n[o>>2])if(+n[v>>2]==+n[p>>2]){if(!(+n[w>>2]==+n[q>>2]))r=22}else r=22;else r=22;else r=22;if((r|0)==22){c=f[a>>2]|0;if(c|0){d=a+8|0;if(f[d>>2]|0){D=f[52836]|0;N7a(211248,f[c>>2]|0)|0;w=f[52834]|0;I7a(211248,f[f[d>>2]>>2]|0)|0;v=b[211526]|0;r8a(211248,0)|0;t=b[211372]|0;W7a(211248,0)|0;r=a+56|0;qf(f[r>>2]|0,3,5126,0,0,0);r=f[r>>2]|0;qe(r|0);jf(f[a+48>>2]|0,1,s|0);jf(f[a+52>>2]|0,1,x|0);ke(6,0,4);je(r|0);W7a(211248,t<<24>>24!=0)|0;r8a(211248,v<<24>>24!=0)|0;I7a(211248,w)|0;N7a(211248,D)|0;u=y;return}}}z=+n[52845];A=+n[52846];B=+n[52847];C=+n[52848];Y7a(211248,e,+n[t>>2],+n[v>>2],+n[w>>2])|0;Ud(16384);Y7a(211248,z,A,B,C)|0;u=y;return}function rSa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0.0,s=0.0;q=u;u=u+288|0;k=q+272|0;l=q+136|0;m=q;o=c+25|0;do if((b[o>>0]|0)==1){p[k>>3]=1.0e-12;if(qza(g,k)|0){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];u=q;return}else{if((b[o>>0]|0)!=1)break;f[l>>2]=d;f[l+4>>2]=g;d=l+8|0;Bga(d,l)|0;f[m>>2]=d;f[m+4>>2]=e;d=m+8|0;Bga(d,m)|0;break}}while(0);s=+n[c>>2];r=+n[c+4>>2];j=+n[c+8>>2];h=s*+p[d>>3]+r*+p[d+32>>3]+j*+p[d+64>>3];i=s*+p[d+8>>3]+r*+p[d+40>>3]+j*+p[d+72>>3];j=s*+p[d+16>>3]+r*+p[d+48>>3]+j*+p[d+80>>3];if(!(b[c+24>>0]|0)){n[a>>2]=h;n[a+4>>2]=i;n[a+8>>2]=j;u=q;return}else{r=i+ +p[d+104>>3];s=j+ +p[d+112>>3];n[a>>2]=h+ +p[d+96>>3];n[a+4>>2]=r;n[a+8>>2]=s;u=q;return}}function sSa(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;jga(a+16|0);b[a+704>>0]=1;c=a+712|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;p[a+728>>3]=1.0;p[a+736>>3]=1.0;c=a+748|0;f[a+744>>2]=16843009;b[c>>0]=b[c>>0]|1;return}function tSa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+4|0;e=f[d>>2]|0;if((e|0)==(f[a+8>>2]|0)){EQa(a,c);u=g;return 1}else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4;u=g;return 1}return 0}function uSa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a>>2]|0;d=a+4|0;e=f[d>>2]|0;if((c|0)==(e|0)){g=0;return g|0}else a=c;while(1){if((f[a>>2]|0)==(b|0))break;a=a+4|0;if((a|0)==(e|0)){a=0;g=6;break}}if((g|0)==6)return a|0;if((a|0)==(e|0)){g=0;return g|0}b=e+-4|0;g=f[b>>2]|0;f[b>>2]=f[a>>2];f[a>>2]=g;f[d>>2]=(f[d>>2]|0)+-4;g=1;return g|0}function vSa(a,c){a=a|0;c=c|0;a=a+748|0;b[a>>0]=b[a>>0]&-2|c&1;return}function wSa(a,b){a=a|0;b=b|0;PI(a+16|0,b)|0;return}function xSa(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;b[a+704>>0]=c;p[a+712>>3]=d;p[a+720>>3]=f;p[a+728>>3]=h;p[a+736>>3]=j;b[a+744>>0]=e;b[a+745>>0]=g;b[a+746>>0]=i;b[a+747>>0]=k;return}function ySa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+32|0;m=r;h=+p[c+728>>3];i=b[c+746>>0]|0;k=+p[c+736>>3];e=b[c+747>>0]|0;n=a+8|0;o=a+12|0;r$(m);if(i<<24>>24==1)g=+(f[52825]|0);else g=+(f[m>>2]|0)/+p[m+8>>3];d=~~(h*g);f[n>>2]=d;if(e<<24>>24==1)g=+(f[52826]|0);else g=+(f[m+4>>2]|0)/+p[m+16>>3];j=~~(k*g);f[o>>2]=j;if(i<<24>>24==2){e=n;g=h;d=j;q=9}else if(e<<24>>24==2){e=o;g=k;q=9}if((q|0)==9)f[e>>2]=~~(g*+(d|0));g=+p[c+712>>3];e=b[c+744>>0]|0;k=+p[c+720>>3];j=b[c+745>>0]|0;l=a+4|0;r$(m);if(e<<24>>24==1)h=+(f[52825]|0);else h=+(f[m>>2]|0)/+p[m+8>>3];d=~~(g*h);f[a>>2]=d;if(j<<24>>24==1)h=+(f[52826]|0);else h=+(f[m+4>>2]|0)/+p[m+16>>3];i=~~(k*h);f[l>>2]=i;if(e<<24>>24==2){e=a;d=i;q=18}else if(j<<24>>24==2){e=l;g=k;q=18}if((q|0)==18)f[e>>2]=~~(g*+(d|0));e=b[c+704>>0]|0;switch(e<<24>>24){case 6:case 3:case 2:{d=(f[52825]|0)-(f[a>>2]|0)-(f[n>>2]|0)|0;q=22;break}case 7:case 4:case 8:{d=(((f[52825]|0)-(f[n>>2]|0)|0)/2|0)+(f[a>>2]|0)|0;q=22;break}case 0:{q=23;break}case 5:{q=24;break}default:{u=r;return}}a:do if((q|0)==22){f[a>>2]=d;switch(e<<24>>24){case 4:case 3:case 0:{q=23;break a}case 6:case 5:case 8:{q=24;break a}default:{}}u=r;return}while(0);if((q|0)==23)d=(f[52826]|0)-(f[l>>2]|0)-(f[o>>2]|0)|0;else if((q|0)==24)d=(((f[52826]|0)-(f[o>>2]|0)|0)/2|0)+(f[l>>2]|0)|0;f[l>>2]=d;u=r;return}function zSa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0;c=u;u=u+16|0;d=c;g=1.0/+(f[52825]|0);e=1.0/+(f[52826]|0);ySa(d,b);p[a>>3]=g*+(f[d>>2]|0);p[a+8>>3]=e*+(f[d+4>>2]|0);p[a+16>>3]=g*+(f[d+8>>2]|0);p[a+24>>3]=e*+(f[d+12>>2]|0);u=c;return}function ASa(a){a=a|0;var c=0,d=0,e=0;c=a+64|0;d=a;e=d+64|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));n[c>>2]=.06499999761581421;n[a+68>>2]=1.0;n[a+72>>2]=2.0000000949949026e-03;n[a+76>>2]=1.0;f[a+80>>2]=9;f[a+84>>2]=7;n[a+88>>2]=2.0;n[a+92>>2]=.06499999761581421;n[a+96>>2]=.8500000238418579;f[a+100>>2]=3;e=a+172|0;b[e>>0]=b[e>>0]&-8|4;return}function BSa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+352|0;x=A+136|0;y=A;p=A+336|0;z=A+176|0;s=A+324|0;v=A+160|0;t=A+312|0;g=a+172|0;e=b[g>>0]|0;if(((e&255)>>>1&1|0)!=(c&1|0)){e=(c&1)<<1&255|e&-7|4;b[g>>0]=e}if((e&1|0)!=(d&1|0)){e=e&-6|d&1|4;b[g>>0]=e}if(!(e&4)){u=A;return}b[g>>0]=e&-5;k=a+80|0;j=f[k>>2]|0;j=j>>>0>2?j+-2|0:1;w=f[52836]|0;i=a+24|0;if(!(f[i>>2]|0)){h=y+16|0;f[y>>2]=31848;f[y+4>>2]=113;f[h>>2]=y;o7a(x,190192,152773,y,1);o=f[x>>2]|0;e=x+4|0;m=f[e>>2]|0;f[x>>2]=0;f[e>>2]=0;f[i>>2]=o;o=a+28|0;g=f[o>>2]|0;f[o>>2]=m;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}e=f[h>>2]|0;if((y|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);o=t7a(f[i>>2]|0,190268)|0;f[a+104>>2]=o;N7a(211248,f[f[i>>2]>>2]|0)|0;hf(u7a(f[i>>2]|0,193110)|0,1.0,1.0,1.0,1.0)}l=y+4|0;f[y>>2]=10948;m=y+56|0;f[m>>2]=10968;Yfb(y+56|0,l);f[y+128>>2]=0;f[y+132>>2]=-1;f[y>>2]=31108;f[y+56>>2]=31128;agb(l);f[l>>2]=31144;o=y+36|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[y+52>>2]=16;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;DIa(l,x);if((b[x+11>>0]|0)<0)Zpb(f[x>>2]|0);i=FIa(kgb(FIa(kgb(FIa(y,151542,25)|0,c)|0,151568,26)|0,d)|0,151595,20)|0;j=FIa(ngb(FIa(ngb(i,f[k>>2]|0)|0,151616,25)|0,j)|0,151642,21)|0;i=a+76|0;j=kgb(j,+n[i>>2]!=1.0)|0;b[x>>0]=10;FIa(j,x,1)|0;EIa(z,l);TUa(p,z);j=x+16|0;c=Wpb(16)|0;f[c>>2]=32088;k=c+4|0;f[k>>2]=f[p>>2];f[k+4>>2]=f[p+4>>2];f[k+8>>2]=f[p+8>>2];f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[j>>2]=c;if((b[z+11>>0]|0)<0)Zpb(f[z>>2]|0);o7a(z,151664,151704,x,1);h=a+32|0;p=f[z>>2]|0;e=z+4|0;c=f[e>>2]|0;f[z>>2]=0;f[e>>2]=0;f[h>>2]=p;p=a+36|0;g=f[p>>2]|0;f[p>>2]=c;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}N7a(211248,f[f[h>>2]>>2]|0)|0;bf(u7a(f[h>>2]|0,152732)|0,0);bf(u7a(f[h>>2]|0,151740)|0,1);e=f[h>>2]|0;if(d)bf(u7a(e,151748)|0,2);else bf(u7a(e,153137)|0,2);p=t7a(f[h>>2]|0,190268)|0;f[a+108>>2]=p;p=u7a(f[h>>2]|0,153368)|0;f[a+112>>2]=p;p=u7a(f[h>>2]|0,151758)|0;f[a+116>>2]=p;p=u7a(f[h>>2]|0,151779)|0;f[a+120>>2]=p;p=u7a(f[h>>2]|0,151788)|0;f[a+124>>2]=p;p=u7a(f[h>>2]|0,152263)|0;f[a+128>>2]=p;if(+n[i>>2]!=1.0)e=u7a(f[h>>2]|0,151795)|0;else e=-1;f[a+132>>2]=e;e=f[j>>2]|0;if((x|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[y>>2]=31108;f[m>>2]=31128;f[l>>2]=31144;if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);Teb(l);Pfb(y,31204);Oeb(m);m=a+84|0;e=f[m>>2]|0;f[y>>2]=0;o=y+4|0;f[o>>2]=0;f[y+8>>2]=0;do if(!e){q=0;r=0}else if(e>>>0>1073741823)fob(y);else{p=e<<2;q=Wpb(p)|0;f[y>>2]=q;r=q+(e<<2)|0;f[y+8>>2]=r;Krb(q|0,0,p|0)|0;f[o>>2]=r;break}while(0);MUa(r-q>>2,q);j=z+4|0;f[z>>2]=10948;k=z+56|0;f[k>>2]=10968;Yfb(z+56|0,j);f[z+128>>2]=0;f[z+132>>2]=-1;f[z>>2]=31108;f[z+56>>2]=31128;agb(j);f[j>>2]=31144;l=z+36|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[z+52>>2]=16;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;DIa(j,x);if((b[x+11>>0]|0)<0)Zpb(f[x>>2]|0);i=FIa(z,152494,38)|0;i=FIa(ngb(i,f[m>>2]|0)|0,153620,19)|0;i=kgb(FIa(ngb(i,(f[m>>2]|0)>>>1)|0,151568,26)|0,d)|0;b[x>>0]=10;FIa(i,x,1)|0;EIa(v,j);TUa(s,v);i=x+16|0;r=Wpb(16)|0;f[r>>2]=32088;q=r+4|0;f[q>>2]=f[s>>2];f[q+4>>2]=f[s+4>>2];f[q+8>>2]=f[s+8>>2];f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[i>>2]=r;if((b[v+11>>0]|0)<0)Zpb(f[v>>2]|0);o7a(v,190192,151806,x,1);h=a+40|0;s=f[v>>2]|0;e=v+4|0;r=f[e>>2]|0;f[v>>2]=0;f[e>>2]=0;f[h>>2]=s;s=a+44|0;g=f[s>>2]|0;f[s>>2]=r;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}N7a(211248,f[f[h>>2]>>2]|0)|0;bf(u7a(f[h>>2]|0,154084)|0,0);s=u7a(f[h>>2]|0,153697)|0;e=f[y>>2]|0;af(s|0,(f[o>>2]|0)-e>>2|0,e|0);e=t7a(f[h>>2]|0,190268)|0;f[a+136>>2]=e;e=u7a(f[h>>2]|0,153368)|0;f[a+140>>2]=e;e=u7a(f[h>>2]|0,152575)|0;f[a+144>>2]=e;e=u7a(f[h>>2]|0,153686)|0;f[a+148>>2]=e;e=f[i>>2]|0;if((x|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[z>>2]=31108;f[k>>2]=31128;f[j>>2]=31144;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);Teb(j);Pfb(z,31204);Oeb(k);j=z+4|0;f[z>>2]=10948;k=z+56|0;f[k>>2]=10968;Yfb(z+56|0,j);f[z+128>>2]=0;f[z+132>>2]=-1;f[z>>2]=31108;f[z+56>>2]=31128;agb(j);f[j>>2]=31144;l=z+36|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[z+52>>2]=16;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;DIa(j,x);if((b[x+11>>0]|0)<0)Zpb(f[x>>2]|0);i=FIa(z,152591,38)|0;i=FIa(ngb(i,f[m>>2]|0)|0,153620,19)|0;i=kgb(FIa(ngb(i,(f[m>>2]|0)>>>1)|0,151568,26)|0,d)|0;b[x>>0]=10;FIa(i,x,1)|0;EIa(v,j);TUa(t,v);i=x+16|0;d=Wpb(16)|0;f[d>>2]=32088;s=d+4|0;f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[i>>2]=d;if((b[v+11>>0]|0)<0)Zpb(f[v>>2]|0);o7a(v,190192,151806,x,1);h=a+48|0;e=f[v>>2]|0;g=v+4|0;t=f[g>>2]|0;f[v>>2]=0;f[g>>2]=0;f[h>>2]=e;v=a+52|0;e=f[v>>2]|0;f[v>>2]=t;do if(e|0){Ppb(e);e=f[g>>2]|0;if(!e)break;Ppb(e)}while(0);N7a(211248,f[f[h>>2]>>2]|0)|0;bf(u7a(f[h>>2]|0,154084)|0,0);v=u7a(f[h>>2]|0,153697)|0;e=f[y>>2]|0;af(v|0,(f[o>>2]|0)-e>>2|0,e|0);e=t7a(f[h>>2]|0,190268)|0;f[a+152>>2]=e;e=u7a(f[h>>2]|0,153368)|0;f[a+156>>2]=e;e=u7a(f[h>>2]|0,152575)|0;f[a+160>>2]=e;e=u7a(f[h>>2]|0,153686)|0;f[a+164>>2]=e;e=u7a(f[h>>2]|0,152630)|0;f[a+168>>2]=e;e=f[i>>2]|0;do if((x|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else{if(!e)break;fh[f[(f[e>>2]|0)+20>>2]&2047](e)}while(0);f[z>>2]=31108;f[k>>2]=31128;f[j>>2]=31144;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);Teb(j);Pfb(z,31204);Oeb(k);e=f[y>>2]|0;if(e|0){g=f[o>>2]|0;if((g|0)!=(e|0))f[o>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}N7a(211248,w)|0;u=A;return}function CSa(a){a=a|0;f[a>>2]=32088;a=a+4|0;if((b[a+11>>0]|0)>=0)return;Zpb(f[a>>2]|0);return}function DSa(a){a=a|0;var c=0;f[a>>2]=32088;c=a+4|0;if((b[c+11>>0]|0)>=0){Zpb(a);return}Zpb(f[c>>2]|0);Zpb(a);return}function ESa(a){a=a|0;var b=0;b=Wpb(16)|0;f[b>>2]=32088;cqb(b+4|0,a+4|0);return b|0}function FSa(a,b){a=a|0;b=b|0;f[b>>2]=32088;cqb(b+4|0,a+4|0);return}function GSa(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)>=0)return;Zpb(f[a>>2]|0);return}function HSa(a){a=a|0;var c=0;c=a+4|0;if((b[c+11>>0]|0)>=0){Zpb(a);return}Zpb(f[c>>2]|0);Zpb(a);return}function ISa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UUa(a+4|0,f[b>>2]|0,f[c>>2]|0,f[d>>2]|0)|0}function JSa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==151847?a+4|0:0)|0}function KSa(a){a=a|0;return 11424}function LSa(a){a=a|0;return +(+n[a+64>>2])}function MSa(a,b){a=a|0;b=+b;if(!(b>0.0))return;n[a+64>>2]=b;return}function NSa(a,b){a=a|0;b=+b;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=c+4|0;n[e>>2]=b;n[d>>2]=0.0;f[a+68>>2]=f[(b>0.0?e:d)>>2];u=c;return}function OSa(a,b){a=a|0;b=+b;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=c+4|0;n[e>>2]=b;n[d>>2]=0.0;f[a+72>>2]=f[(b>0.0?e:d)>>2];u=c;return}function PSa(a,c){a=a|0;c=+c;var d=0,e=0,g=0.0;d=c>0.0?(n[s>>2]=c,f[s>>2]|0):0;e=a+76|0;g=+n[e>>2];c=(f[s>>2]=d,+n[s>>2]);if(g==c)return;if(c==1.0^g==1.0){a=a+172|0;b[a>>0]=b[a>>0]|4}f[e>>2]=d;return}function QSa(a,c){a=a|0;c=c|0;var d=0;c=c>>>0>1?c:1;d=a+80|0;if((f[d>>2]|0)==(c|0))return;f[d>>2]=c;a=a+172|0;b[a>>0]=b[a>>0]|4;return}function RSa(a,c){a=a|0;c=c|0;var d=0;c=c|1;d=a+84|0;if((f[d>>2]|0)==(c|0))return;f[d>>2]=c;a=a+172|0;b[a>>0]=b[a>>0]|4;return}function SSa(a,b){a=a|0;b=+b;n[a+88>>2]=b;return}function TSa(a,b){a=a|0;b=+b;if(b<=0.0)return;n[a+92>>2]=b;return}function USa(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;g=c+4|0;d=c+8|0;e=c;n[g>>2]=b;n[d>>2]=0.0;n[e>>2]=1.0;e=b<1.0?g:e;f[a+96>>2]=f[(+n[e>>2]>0.0?e:d)>>2];u=c;return}function VSa(a,b){a=a|0;b=b|0;var c=0;b=b>>>0<10?b:10;c=a+100|0;if((f[c>>2]|0)==(b|0))return;f[c>>2]=b;f[a+56>>2]=0;a=a+60|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Ppb(b);return}function WSa(a){a=a|0;var b=0,c=0;f[a+8>>2]=0;c=a+12|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+16>>2]=0;c=a+20|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)return;Ppb(a);return}function XSa(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0.0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;ba=u;u=u+336|0;_=ba+304|0;$=ba+284|0;aa=ba+264|0;Y=ba+200|0;Z=ba+136|0;k=ba;if(d)if(!(f[(f[c>>2]|0)+72>>2]|0)){W=1;d=4}else d=3;else d=3;if((d|0)==3)if(q6a()|0){W=0;d=4}do if((d|0)==4)if(v6a()|0){if(!(y6a()|0))if(!(z6a()|0))break;U=a+68|0;if(+n[U>>2]<=0.0){u=ba;return}X=a+96|0;if(+n[X>>2]<=0.0){u=ba;return}j=f[c>>2]|0;if(!j){u=ba;return}if(W)d=f[j+4>>2]|0;else d=j+64|0;V=d+8|0;if(!(f[V>>2]|0)){u=ba;return}if(W|e){d=0;e=0}else{T=f[j+4>>2]|0;d=T;if((((f[j+8>>2]|0)-T|0)/24|0)>>>0>1){j=f[d+32>>2]|0;d=f[d+36>>2]|0;e=d;if(!d)d=j;else{Npb(d);d=j}}else{d=0;e=0}}T=d;R=(d|0)!=0;BSa(a,W,R);S=a+56|0;if(!(f[S>>2]|0)){LUa(_,f[a+100>>2]|0);Q=f[_>>2]|0;d=_+4|0;P=f[d>>2]|0;f[_>>2]=0;f[d>>2]=0;f[S>>2]=Q;Q=a+60|0;j=f[Q>>2]|0;f[Q>>2]=P;if(j|0){Ppb(j);d=f[d>>2]|0;if(d|0)Ppb(d)}}Q=f[V>>2]|0;nVa(_,i,f[Q+16>>2]|0,f[Q+20>>2]|0);Q=f[V>>2]|0;nVa($,i,f[Q+16>>2]|0,f[Q+20>>2]|0);Q=f[V>>2]|0;nVa(aa,i,f[Q+16>>2]|0,f[Q+20>>2]|0);Q=a+8|0;if(!(d6a(f[c>>2]|0,Q)|0)){X5a(Y,f[c>>2]|0,0,1);P=f[Y>>2]|0;d=Y+4|0;K=f[d>>2]|0;f[Y>>2]=0;f[d>>2]=0;f[Q>>2]=P;P=a+12|0;j=f[P>>2]|0;f[P>>2]=K;if(j|0){Ppb(j);d=f[d>>2]|0;if(d|0)Ppb(d)}}$5a(f[Q>>2]|0,0,$,3553,0);if(!R){i=a+16|0;if(!(d6a(f[c>>2]|0,i)|0)){X5a(Y,f[c>>2]|0,0,1);P=f[Y>>2]|0;d=Y+4|0;K=f[d>>2]|0;f[Y>>2]=0;f[d>>2]=0;f[i>>2]=P;P=a+20|0;j=f[P>>2]|0;f[P>>2]=K;if(j|0){Ppb(j);d=f[d>>2]|0;if(d|0)Ppb(d)}}$5a(f[i>>2]|0,0,aa,3553,0)}d=f[a>>2]|0;if(!d){JUa(Y);P=f[Y>>2]|0;d=Y+4|0;K=f[d>>2]|0;f[Y>>2]=0;f[d>>2]=0;f[a>>2]=P;P=a+4|0;j=f[P>>2]|0;f[P>>2]=K;if(j|0){Ppb(j);d=f[d>>2]|0;if(d|0)Ppb(d)}d=f[a>>2]|0}P=f[52834]|0;I7a(211248,f[d>>2]|0)|0;C=f[52836]|0;D=f[52827]|0;H6a(Y);E=b[211526]|0;r8a(211248,0)|0;F=b[211372]|0;W7a(211248,0)|0;G=b[211524]|0;p8a(211248,0)|0;H=f[52853]|0;I=f[52855]|0;J=f[52854]|0;K=f[52856]|0;$7a(211248,1,771)|0;L=+n[52845];M=+n[52846];N=+n[52847];O=+n[52848];Lga(Gga(g)|0,k);n[Z>>2]=+p[k>>3];n[Z+4>>2]=+p[k+8>>3];n[Z+8>>2]=+p[k+16>>3];n[Z+12>>2]=+p[k+24>>3];n[Z+16>>2]=+p[k+32>>3];n[Z+20>>2]=+p[k+40>>3];n[Z+24>>2]=+p[k+48>>3];n[Z+28>>2]=+p[k+56>>3];n[Z+32>>2]=+p[k+64>>3];n[Z+36>>2]=+p[k+72>>3];n[Z+40>>2]=+p[k+80>>3];n[Z+44>>2]=+p[k+88>>3];n[Z+48>>2]=+p[k+96>>3];n[Z+52>>2]=+p[k+104>>3];n[Z+56>>2]=+p[k+112>>3];n[Z+60>>2]=+p[k+120>>3];s=f[V>>2]|0;r=f[s+16>>2]|0;t=1.0/+(r|0);s=f[s+20>>2]|0;v=1.0/+(s|0);w=f[52838]|0;x=f[52839]|0;y=f[52823]|0;z=f[52824]|0;A=f[52825]|0;B=f[52826]|0;D7a(211248,0,0,r,s)|0;do if(!R){P7a(211248,f[f[a+16>>2]>>2]|0)|0;Y7a(211248,0.0,0.0,0.0,0.0)|0;Ud(16384);N7a(211248,f[f[a+24>>2]>>2]|0)|0;d=f[52875]|0;j=f[52876]|0;i=f[52877]|0;c=f[52878]|0;k=f[52879]|0;g=f[52880]|0;k8a(211248,7680,7680,7680)|0;l=f[52867]|0;m=f[52870]|0;o=f[52868]|0;q=f[52871]|0;r=f[52869]|0;s=f[52872]|0;e8a(211248,517,0,h)|0;h=b[211532]|0;u8a(211248,1)|0;KUa(f[a+104>>2]|0);u8a(211248,h<<24>>24!=0)|0;if((l|0)==(m|0)&(o|0)==(q|0)&(r|0)==(s|0))e8a(211248,l,o,r)|0;else{f8a(211248,l,o,r)|0;g8a(211248,m,q,s)|0}if((d|0)==(c|0)&(j|0)==(k|0)&(i|0)==(g|0)){k8a(211248,d,j,i)|0;break}else{l8a(211248,d,j,i)|0;m8a(211248,c,k,g)|0;break}}while(0);N7a(211248,f[f[a+32>>2]>>2]|0)|0;i=tVa(_)|0;P7a(211248,f[f[i>>2]>>2]|0)|0;Y7a(211248,1.0,0.0,0.0,0.0)|0;Ud(16384);i=f[52858]|0;a8a(211248,516)|0;c=b[211526]|0;r8a(211248,W)|0;lf(f[a+112>>2]|0,1,0,Z|0);W=f[V>>2]|0;d=f[S>>2]|0;cf(f[a+116>>2]|0,+(+(f[W+16>>2]|0)/+(f[d+16>>2]|0)),+(+(f[W+20>>2]|0)/+(f[d+20>>2]|0)));$e(f[a+120>>2]|0,+(+n[a+64>>2]));$e(f[a+124>>2]|0,+(+n[a+72>>2]*2.0));$e(f[a+128>>2]|0,+(+n[U>>2]*2.0));d=f[a+132>>2]|0;if((d|0)>-1)$e(d|0,+(+n[a+76>>2]));E7a(211248,0)|0;F7a(211248,f[(f[V>>2]|0)+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[(f[S>>2]|0)+8>>2]|0)|0;E7a(211248,2)|0;if(R)F7a(211248,f[T+8>>2]|0)|0;else F7a(211248,f[(f[aa>>2]|0)+8>>2]|0)|0;KUa(f[a+108>>2]|0);N7a(211248,f[f[a+40>>2]>>2]|0)|0;P7a(211248,f[f[Q>>2]>>2]|0)|0;Ud(16384);r8a(211248,1)|0;lf(f[a+140>>2]|0,1,0,Z|0);d=a+92|0;$e(f[a+144>>2]|0,+(+n[d>>2]));j=a+88|0;cf(f[a+148>>2]|0,+(t*+n[j>>2]),0.0);E7a(211248,0)|0;F7a(211248,f[(f[_>>2]|0)+8>>2]|0)|0;KUa(f[a+136>>2]|0);r8a(211248,c<<24>>24!=0)|0;a8a(211248,i)|0;D7a(211248,y,z,A,B)|0;if((w|0)==(x|0))P7a(211248,w)|0;else{Q7a(211248,w)|0;R7a(211248,x)|0}N7a(211248,f[f[a+48>>2]>>2]|0)|0;p8a(211248,1)|0;lf(f[a+156>>2]|0,1,0,Z|0);$e(f[a+160>>2]|0,+(+n[d>>2]));$e(f[a+168>>2]|0,+(+n[X>>2]));cf(f[a+164>>2]|0,0.0,+(v*+n[j>>2]));E7a(211248,0)|0;F7a(211248,f[(f[$>>2]|0)+8>>2]|0)|0;KUa(f[a+152>>2]|0);Y7a(211248,L,M,N,O)|0;_7a(211248,H,I,J,K)|0;p8a(211248,G<<24>>24!=0)|0;W7a(211248,F<<24>>24!=0)|0;r8a(211248,E<<24>>24!=0)|0;I6a(Y);E7a(211248,D)|0;N7a(211248,C)|0;I7a(211248,P)|0;rVa(aa);rVa($);rVa(_);if(!e){u=ba;return}Ppb(e);u=ba;return}while(0);f[a+8>>2]=0;aa=a+12|0;d=f[aa>>2]|0;f[aa>>2]=0;if(d|0)Ppb(d);f[a+16>>2]=0;a=a+20|0;d=f[a>>2]|0;f[a>>2]=0;if(!d){u=ba;return}Ppb(d);u=ba;return}function YSa(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+20|0;c=a+72|0;d=a;e=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));n[c>>2]=.75;n[a+76>>2]=.10000000149011612;n[a+80>>2]=1.0;ZSa(b,5);e=f[b>>2]|0;f[e+48>>2]=1056964608;f[e+64>>2]=5;f[e+120>>2]=1056964608;f[e+136>>2]=5;f[e+192>>2]=1056964608;f[e+208>>2]=9;f[e+264>>2]=1065353216;f[e+280>>2]=9;f[e+336>>2]=1073741824;f[e+352>>2]=11;return}function ZSa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;l=a+8|0;h=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;if(((h-d|0)/72|0)>>>0>=c>>>0){do{h=d;i=h+72|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));oVa(d);oVa(d+20|0);f[d+40>>2]=0;f[d+44>>2]=0;n[d+48>>2]=1.0;n[d+52>>2]=1.0;f[d+64>>2]=9;b[d+68>>0]=0;d=(f[m>>2]|0)+72|0;f[m>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;g=(d-e|0)/72|0;d=g+c|0;if(d>>>0>59652323)fob(a);j=(h-e|0)/72|0;k=j<<1;d=j>>>0<29826161?(k>>>0<d>>>0?d:k):59652323;do if(!d)i=0;else if(d>>>0>59652323)ud();else{i=Wpb(d*72|0)|0;break}while(0);j=i+(g*72|0)|0;e=j;g=i+(d*72|0)|0;k=e;d=j;do{h=d;i=h+72|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));oVa(d);oVa(d+20|0);f[d+40>>2]=0;f[d+44>>2]=0;n[d+48>>2]=1.0;n[d+52>>2]=1.0;f[d+64>>2]=9;b[d+68>>0]=0;d=k+72|0;k=d;c=c+-1|0}while((c|0)!=0);i=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(i|0)){c=e;h=i;d=i}else{c=j;do{h=d;d=d+-72|0;pVa(c+-72|0,d);pVa(c+-52|0,h+-52|0);o=h+-32|0;f[c+-32>>2]=f[o>>2];j=h+-28|0;f[c+-28>>2]=f[j>>2];f[o>>2]=0;f[j>>2]=0;j=c+-24|0;h=h+-24|0;f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];f[j+16>>2]=f[h+16>>2];b[j+20>>0]=b[h+20>>0]|0;c=e+-72|0;e=c}while((d|0)!=(i|0));c=e;h=f[a>>2]|0;d=f[m>>2]|0}f[a>>2]=c;f[m>>2]=k;f[l>>2]=g;e=h;if((d|0)!=(e|0))do{c=f[d+-28>>2]|0;if(c|0)Ppb(c);rVa(d+-52|0);d=d+-72|0;rVa(d)}while((d|0)!=(e|0));if(!h)return;Zpb(h);return}function _Sa(a,b){a=a|0;b=+b;var c=0;c=b>0.0?(n[s>>2]=b,f[s>>2]|0):0;a=a+72|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){c=0;return c|0}f[a>>2]=c;c=1;return c|0}function $Sa(a,b){a=a|0;b=+b;var c=0;c=b>0.0?(n[s>>2]=b,f[s>>2]|0):0;a=a+76|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){c=0;return c|0}f[a>>2]=c;c=1;return c|0}function aTa(a,b){a=a|0;b=+b;var c=0;c=b>0.0?(n[s>>2]=b,f[s>>2]|0):0;a=a+80|0;if(+n[a>>2]==(f[s>>2]=c,+n[s>>2])){c=0;return c|0}f[a>>2]=c;c=1;return c|0}function bTa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=a+20|0;h=a+24|0;d=f[h>>2]|0;c=f[e>>2]|0;g=(d-c|0)/72|0;if((g|0)==(b|0)){h=0;return h|0}if(g>>>0<b>>>0)ZSa(e,b-g|0);else if(g>>>0>b>>>0){e=c+(b*72|0)|0;if((e|0)!=(d|0))do{c=d+-72|0;f[h>>2]=c;b=f[d+-28>>2]|0;if(b|0)Ppb(b);rVa(d+-52|0);rVa(c);d=f[h>>2]|0}while((d|0)!=(e|0))}f[a+40>>2]=0;h=a+44|0;c=f[h>>2]|0;f[h>>2]=0;if(!c){h=1;return h|0}Ppb(c);h=1;return h|0}function cTa(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0;e=f[a+20>>2]|0;if((((f[a+24>>2]|0)-e|0)/72|0)>>>0<=b>>>0){e=0;return e|0}d=c>0.0?(n[s>>2]=c,f[s>>2]|0):0;a=e+(b*72|0)+48|0;if(+n[a>>2]==(f[s>>2]=d,+n[s>>2])){e=0;return e|0}f[a>>2]=d;e=1;return e|0}function dTa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=f[a+24>>2]|0;d=f[a+20>>2]|0;a=d;e=g;if(((g-d|0)/72|0)>>>0<=b>>>0){g=0;return g|0}d=c|1;c=a+(b*72|0)+64|0;if((f[c>>2]|0)==(d|0)){g=0;return g|0}f[c>>2]=d;if((a|0)==(e|0)){g=1;return g|0}do{f[a+40>>2]=0;g=a+44|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c);a=a+72|0}while((a|0)!=(e|0));a=1;return a|0}function eTa(a,c,d,e){a=a|0;c=c|0;d=+d;e=e|0;var g=0,h=0;if(d<=0.0){e=0;return e|0}h=f[a+20>>2]|0;g=h;if((((f[a+24>>2]|0)-h|0)/72|0)>>>0<=c>>>0){e=0;return e|0}h=g+(c*72|0)+52|0;a=g+(c*72|0)+68|0;if(+n[h>>2]==d)if((b[a>>0]|0)==e<<24>>24){e=0;return e|0}n[h>>2]=d;b[a>>0]=e;e=1;return e|0}function fTa(a){a=a|0;return}function gTa(a){a=a|0;if((f[a+20>>2]|0)==(f[a+24>>2]|0)){a=1;return a|0}a=+n[a+80>>2]<=0.0;return a|0}function hTa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=u;u=u+288|0;F=L+24|0;G=L;H=L+232|0;I=L+96|0;j=L+268|0;E=L+32|0;B=L+256|0;C=L+244|0;K=f[52836]|0;l=a+20|0;m=a+24|0;d=f[m>>2]|0;c=f[l>>2]|0;D=(d-c|0)/72|0;J=f[52813]|0;D=J>>>0<D>>>0?J:D;f[H>>2]=0;J=H+4|0;f[J>>2]=0;f[H+8>>2]=0;k=a+32|0;if(!(f[k>>2]|0)){c=f[c+64>>2]|0;if(!c){c=0;d=0}else{E7(H,c);c=f[H>>2]|0;d=f[J>>2]|0}MUa(d-c>>2,c);g=I+4|0;f[I>>2]=10948;h=I+56|0;f[h>>2]=10968;Yfb(I+56|0,g);f[I+128>>2]=0;f[I+132>>2]=-1;f[I>>2]=31108;f[I+56>>2]=31128;agb(g);f[g>>2]=31144;i=I+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[I+52>>2]=16;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;DIa(g,G);if((b[G+11>>0]|0)<0)Zpb(f[G>>2]|0);e=FIa(I,153600,19)|0;e=FIa(ngb(e,f[(f[l>>2]|0)+64>>2]|0)|0,153620,19)|0;e=FIa(ngb(e,(f[(f[l>>2]|0)+64>>2]|0)>>>1)|0,152030,25)|0;b[G>>0]=10;FIa(e,G,1)|0;EIa(E,g);TUa(j,E);e=G+16|0;A=Wpb(16)|0;f[A>>2]=32088;z=A+4|0;f[z>>2]=f[j>>2];f[z+4>>2]=f[j+4>>2];f[z+8>>2]=f[j+8>>2];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[e>>2]=A;if((b[E+11>>0]|0)<0)Zpb(f[E>>2]|0);o7a(E,190192,152056,G,1);A=f[E>>2]|0;c=E+4|0;z=f[c>>2]|0;f[E>>2]=0;f[c>>2]=0;f[k>>2]=A;A=a+36|0;d=f[A>>2]|0;f[A>>2]=z;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}A=t7a(f[k>>2]|0,190268)|0;f[a+48>>2]=A;A=u7a(f[k>>2]|0,153686)|0;f[a+52>>2]=A;A=u7a(f[k>>2]|0,152100)|0;f[a+56>>2]=A;A=u7a(f[k>>2]|0,152117)|0;f[a+60>>2]=A;N7a(211248,f[f[k>>2]>>2]|0)|0;bf(u7a(f[k>>2]|0,154084)|0,0);A=u7a(f[k>>2]|0,153697)|0;c=f[H>>2]|0;af(A|0,(f[J>>2]|0)-c>>2|0,c|0);c=f[e>>2]|0;if((G|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[I>>2]=31108;f[h>>2]=31128;f[g>>2]=31144;if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);Teb(g);Pfb(I,31204);Oeb(h);c=f[l>>2]|0;d=f[m>>2]|0}if((c|0)!=(d|0)){n=I+56|0;o=I+4|0;p=I+56|0;q=I+56|0;r=I+128|0;s=I+132|0;t=I+36|0;v=I+52|0;w=G+11|0;x=G+16|0;y=E+11|0;z=E+4|0;A=t+11|0;do{m=c+40|0;if(!(f[m>>2]|0)){l=c+64|0;h=f[l>>2]|0;e=f[J>>2]|0;g=f[H>>2]|0;i=e-g>>2;j=g;k=e;if(h>>>0>i>>>0){E7(H,h-i|0);g=f[H>>2]|0;e=f[J>>2]|0}else if(h>>>0<i>>>0){h=j+(h<<2)|0;if((h|0)!=(k|0)){e=k+(~((k+-4-h|0)>>>2)<<2)|0;f[J>>2]=e}}MUa(e-g>>2,g);f[I>>2]=10948;f[p>>2]=10968;Yfb(q,o);f[r>>2]=0;f[s>>2]=-1;f[I>>2]=31108;f[n>>2]=31128;agb(o);f[o>>2]=31144;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[t+12>>2]=0;f[v>>2]=16;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;DIa(o,G);if((b[w>>0]|0)<0)Zpb(f[G>>2]|0);k=FIa(I,153600,19)|0;k=FIa(ngb(k,f[l>>2]|0)|0,153620,19)|0;l=FIa(ngb(k,(f[l>>2]|0)>>>1)|0,152145,25)|0;b[G>>0]=10;FIa(l,G,1)|0;EIa(E,o);TUa(B,E);l=Wpb(16)|0;f[l>>2]=32088;k=l+4|0;f[k>>2]=f[B>>2];f[k+4>>2]=f[B+4>>2];f[k+8>>2]=f[B+8>>2];f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[x>>2]=l;if((b[y>>0]|0)<0)Zpb(f[E>>2]|0);o7a(E,190192,152056,G,1);l=f[E>>2]|0;k=f[z>>2]|0;f[E>>2]=0;f[z>>2]=0;f[m>>2]=l;l=c+44|0;e=f[l>>2]|0;f[l>>2]=k;if(e|0){Ppb(e);e=f[z>>2]|0;if(e|0)Ppb(e)}e=t7a(f[m>>2]|0,190268)|0;f[c+56>>2]=e;e=u7a(f[m>>2]|0,153686)|0;f[c+60>>2]=e;N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,154084)|0,0);m=u7a(f[m>>2]|0,153697)|0;e=f[H>>2]|0;af(m|0,(f[J>>2]|0)-e>>2|0,e|0);e=f[x>>2]|0;if((G|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[I>>2]=31108;f[p>>2]=31128;f[o>>2]=31144;if((b[A>>0]|0)<0)Zpb(f[t>>2]|0);Teb(o);Pfb(I,31204);Oeb(p)}c=c+72|0}while((c|0)!=(d|0))}h=a+40|0;if(!(f[h>>2]|0)){i=I+4|0;f[I>>2]=10948;j=I+56|0;f[j>>2]=10968;Yfb(I+56|0,i);f[I+128>>2]=0;f[I+132>>2]=-1;f[I>>2]=31108;f[I+56>>2]=31128;agb(i);f[i>>2]=31144;k=I+36|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[I+52>>2]=16;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;DIa(i,G);if((b[G+11>>0]|0)<0)Zpb(f[G>>2]|0);FIa(ngb(FIa(I,152171,23)|0,D)|0,152195,18)|0;e=(D|0)==0;if(!e){c=0;do{B=ngb(FIa(ngb(FIa(I,152275,10)|0,c)|0,152286,9)|0,c)|0;b[G>>0]=41;FIa(B,G,1)|0;c=c+1|0}while(c>>>0<D>>>0)}b[G>>0]=10;FIa(I,G,1)|0;EIa(E,i);TUa(C,E);g=G+16|0;B=Wpb(16)|0;f[B>>2]=32088;A=B+4|0;f[A>>2]=f[C>>2];f[A+4>>2]=f[C+4>>2];f[A+8>>2]=f[C+8>>2];f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;f[g>>2]=B;if((b[E+11>>0]|0)<0)Zpb(f[E>>2]|0);o7a(E,190192,152214,G,1);C=f[E>>2]|0;c=E+4|0;B=f[c>>2]|0;f[E>>2]=0;f[c>>2]=0;f[h>>2]=C;C=a+44|0;d=f[C>>2]|0;f[C>>2]=B;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}C=t7a(f[h>>2]|0,190268)|0;f[a+64>>2]=C;C=u7a(f[h>>2]|0,152263)|0;f[a+68>>2]=C;N7a(211248,f[f[h>>2]>>2]|0)|0;if(!e){c=0;do{f[F>>2]=c;pdb(E,64,152296,F)|0;bf(u7a(f[h>>2]|0,E)|0,c|0);c=c+1|0}while(c>>>0<D>>>0)}c=f[g>>2]|0;if((G|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[I>>2]=31108;f[j>>2]=31128;f[i>>2]=31144;if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);Teb(i);Pfb(I,31204);Oeb(j)}c=f[H>>2]|0;if(!c){N7a(211248,K)|0;u=L;return}d=f[J>>2]|0;if((d|0)!=(c|0))f[J>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);N7a(211248,K)|0;u=L;return}function iTa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j;i=a+20|0;e=f[i>>2]|0;g=((f[a+24>>2]|0)-e|0)/72|0;a=f[52813]|0;g=a>>>0<g>>>0?a:g;if(!g){u=j;return}a=0;while(1){b=b>>>1;b=(b|0)==0?1:b;c=c>>>1;c=(c|0)==0?1:c;nVa(h,d,b,c);qVa(e+(a*72|0)|0,h)|0;rVa(h);nVa(h,d,b,c);qVa(e+(a*72|0)+20|0,h)|0;rVa(h);a=a+1|0;if(a>>>0>=g>>>0)break;e=f[i>>2]|0}u=j;return}function jTa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;F=u;u=u+80|0;C=F+8|0;D=F;E=a+20|0;e=a+24|0;if((f[E>>2]|0)==(f[e>>2]|0)){u=F;return}B=a+80|0;if(+n[B>>2]<=0.0){u=F;return}hTa(a);A=f[c>>2]|0;iTa(a,f[A+16>>2]|0,f[A+20>>2]|0,d);A=a+20|0;z=((f[e>>2]|0)-(f[A>>2]|0)|0)/72|0;d=f[52813]|0;z=d>>>0<z>>>0?d:z;d=f[a>>2]|0;if(!d){JUa(C);y=f[C>>2]|0;d=C+4|0;x=f[d>>2]|0;f[C>>2]=0;f[d>>2]=0;f[a>>2]=y;y=a+4|0;e=f[y>>2]|0;f[y>>2]=x;if(e|0){Ppb(e);d=f[d>>2]|0;if(d|0)Ppb(d)}d=f[a>>2]|0}y=f[52834]|0;I7a(211248,f[d>>2]|0)|0;t=f[52836]|0;v=f[52827]|0;H6a(C);w=b[211526]|0;r8a(211248,0)|0;x=b[211372]|0;W7a(211248,0)|0;k=b[211524]|0;p8a(211248,0)|0;l=f[52838]|0;m=f[52839]|0;o=f[52823]|0;p=f[52824]|0;q=f[52825]|0;r=f[52826]|0;N7a(211248,f[f[a+32>>2]>>2]|0)|0;E7a(211248,0)|0;F7a(211248,f[(f[c>>2]|0)+8>>2]|0)|0;$e(f[a+56>>2]|0,+(+n[a+72>>2]));$e(f[a+60>>2]|0,+(+n[a+76>>2]));s=f[A>>2]|0;i=f[a+52>>2]|0;j=f[a+48>>2]|0;h=tVa(s)|0;P7a(211248,f[f[h>>2]>>2]|0)|0;h=f[s>>2]|0;D7a(211248,0,0,f[h+16>>2]|0,f[h+20>>2]|0)|0;h=f[s>>2]|0;g=+NUa(+n[s+52>>2],b[s+68>>0]|0,+(f[h+16>>2]|0),+(f[h+20>>2]|0));cf(i|0,+(g/+(f[(f[s>>2]|0)+16>>2]|0)),0.0);KUa(j);F7a(211248,f[(f[s>>2]|0)+8>>2]|0)|0;s=(z|0)==0;if(!s){h=0;do{j=f[A>>2]|0;d=j+(h*72|0)|0;N7a(211248,f[f[j+(h*72|0)+40>>2]>>2]|0)|0;i=j+(h*72|0)+60|0;if(!h){d=j+(h*72|0)+56|0;e=j+(h*72|0)+52|0;c=j+(h*72|0)+68|0}else{I=f[i>>2]|0;G=j+(h*72|0)+56|0;H=f[G>>2]|0;e=tVa(d)|0;P7a(211248,f[f[e>>2]>>2]|0)|0;e=f[d>>2]|0;D7a(211248,0,0,f[e+16>>2]|0,f[e+20>>2]|0)|0;e=j+(h*72|0)+52|0;c=j+(h*72|0)+68|0;J=f[d>>2]|0;g=+NUa(+n[e>>2],b[c>>0]|0,+(f[J+16>>2]|0),+(f[J+20>>2]|0));cf(I|0,+(g/+(f[(f[d>>2]|0)+16>>2]|0)),0.0);KUa(H);F7a(211248,f[(f[d>>2]|0)+8>>2]|0)|0;d=G}H=f[i>>2]|0;I=f[d>>2]|0;J=j+(h*72|0)+20|0;G=tVa(J)|0;P7a(211248,f[f[G>>2]>>2]|0)|0;G=f[J>>2]|0;D7a(211248,0,0,f[G+16>>2]|0,f[G+20>>2]|0)|0;G=f[J>>2]|0;g=+NUa(+n[e>>2],b[c>>0]|0,+(f[G+16>>2]|0),+(f[G+20>>2]|0));cf(H|0,0.0,+(g/+(f[(f[J>>2]|0)+20>>2]|0)));KUa(I);F7a(211248,f[(f[J>>2]|0)+8>>2]|0)|0;h=h+1|0}while(h>>>0<z>>>0)}D7a(211248,o,p,q,r)|0;if((l|0)==(m|0))P7a(211248,l)|0;else{Q7a(211248,l)|0;R7a(211248,m)|0}p8a(211248,k<<24>>24!=0)|0;N7a(211248,f[f[a+40>>2]>>2]|0)|0;if(!s){d=0;do{E7a(211248,d)|0;F7a(211248,f[(f[(f[A>>2]|0)+(d*72|0)+20>>2]|0)+8>>2]|0)|0;d=d+1|0}while(d>>>0<z>>>0)}i=a+8|0;c=f[i>>2]|0;j=a+12|0;d=f[j>>2]|0;e=c;if((d|0)!=(c|0)){d=d+(~((d+-4-e|0)>>>2)<<2)|0;f[j>>2]=d}h=a+16|0;if((f[h>>2]|0)-e>>2>>>0<z>>>0){if(z>>>0>1073741823)ud();d=d-e|0;e=Wpb(z<<2)|0;if((d|0)>0)Irb(e|0,c|0,d|0)|0;f[i>>2]=e;f[j>>2]=e+(d>>2<<2);f[h>>2]=e+(z<<2);if(c|0)Zpb(c)}if(!s){d=0;do{g=+n[(f[A>>2]|0)+(d*72|0)+48>>2]*+n[B>>2];n[D>>2]=g;e=f[j>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){n[e>>2]=g;f[j>>2]=e+4}else Oy(i,D);d=d+1|0}while(d>>>0<z>>>0)}J=f[i>>2]|0;af(f[a+68>>2]|0,(f[j>>2]|0)-J>>2|0,J|0);KUa(f[a+64>>2]|0);W7a(211248,x<<24>>24!=0)|0;r8a(211248,w<<24>>24!=0)|0;I6a(C);E7a(211248,v)|0;N7a(211248,t)|0;I7a(211248,y)|0;if(s){u=F;return}else d=0;do{J=f[E>>2]|0;sVa(J+(d*72|0)|0);sVa(J+(d*72|0)+20|0);d=d+1|0}while(d>>>0<z>>>0);u=F;return}function kTa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];b=a+12|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];c=a+24|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];return}function lTa(a){a=a|0;return}function mTa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;b=h+24|0;e=h;g=a+44|0;if(f[g>>2]|0){u=h;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,190192,152306,e,1);i=f[b>>2]|0;c=b+4|0;j=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+48|0;b=f[i>>2]|0;f[i>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[g>>2]|0,190268)|0;f[a+52>>2]=j;j=u7a(f[g>>2]|0,152350)|0;f[a+56>>2]=j;j=u7a(f[g>>2]|0,152363)|0;f[a+60>>2]=j;j=u7a(f[g>>2]|0,152377)|0;f[a+64>>2]=j;j=f[52836]|0;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,152391)|0,0);bf(u7a(f[g>>2]|0,152400)|0,1);N7a(211248,j)|0;u=h;return}function nTa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=u;u=u+64|0;i=j;mTa(a);h=a+36|0;e=f[h>>2]|0;if(!e){JUa(i);k=f[i>>2]|0;g=i+4|0;l=f[g>>2]|0;f[i>>2]=0;f[g>>2]=0;f[h>>2]=k;k=a+40|0;e=f[k>>2]|0;f[k>>2]=l;if(e|0){Ppb(e);e=f[g>>2]|0;if(e|0)Ppb(e)}e=f[h>>2]|0}l=f[52834]|0;I7a(211248,f[e>>2]|0)|0;k=f[52836]|0;N7a(211248,f[f[a+44>>2]>>2]|0)|0;h=f[52827]|0;H6a(i);g=b[211526]|0;r8a(211248,0)|0;e=b[211372]|0;W7a(211248,0)|0;p=f[52853]|0;o=f[52855]|0;n=f[52854]|0;m=f[52856]|0;$7a(211248,1,771)|0;q=b[211524]|0;p8a(211248,1)|0;E7a(211248,0)|0;F7a(211248,f[c+8>>2]|0)|0;E7a(211248,1)|0;F7a(211248,f[d+8>>2]|0)|0;gf(f[a+56>>2]|0,1,a|0);gf(f[a+60>>2]|0,1,a+12|0);gf(f[a+64>>2]|0,1,a+24|0);KUa(f[a+52>>2]|0);p8a(211248,q<<24>>24!=0)|0;_7a(211248,p,o,n,m)|0;W7a(211248,e<<24>>24!=0)|0;r8a(211248,g<<24>>24!=0)|0;I6a(i);E7a(211248,h)|0;N7a(211248,k)|0;I7a(211248,l)|0;u=j;return}function oTa(a){a=a|0;f[a+20>>2]=0;f[a+24>>2]=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function pTa(a){a=a|0;return}function qTa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;g=i+24|0;h=i;if(b){e=a+8|0;if(f[e>>2]|0){u=i;return}d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152409,h,1);b=f[g>>2]|0;c=g+4|0;j=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[e>>2]=b;g=a+12|0;b=f[g>>2]|0;f[g>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[e>>2]|0,190268)|0;f[a+16>>2]=j;j=f[52836]|0;N7a(211248,f[f[e>>2]>>2]|0)|0;bf(u7a(f[e>>2]|0,190287)|0,0);bf(u7a(f[e>>2]|0,190296)|0,1);bf(u7a(f[e>>2]|0,153147)|0,2);bf(u7a(f[e>>2]|0,153162)|0,3);N7a(211248,j)|0;u=i;return}else{e=a+20|0;if(f[e>>2]|0){u=i;return}d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152740,h,1);j=f[g>>2]|0;c=g+4|0;k=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[e>>2]=j;j=a+24|0;b=f[j>>2]|0;f[j>>2]=k;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);k=t7a(f[e>>2]|0,190268)|0;f[a+28>>2]=k;k=f[52836]|0;N7a(211248,f[f[e>>2]>>2]|0)|0;bf(u7a(f[e>>2]|0,153590)|0,0);N7a(211248,k)|0;u=i;return}}function rTa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+64|0;r=s;e=f[d>>2]|0;if(!e)h=0;else h=(f[e+72>>2]|0)!=0;qTa(a,h);q=h?a+8|0:a+20|0;e=f[a>>2]|0;if(!e){JUa(r);p=f[r>>2]|0;e=r+4|0;o=f[e>>2]|0;f[r>>2]=0;f[e>>2]=0;f[a>>2]=p;p=a+4|0;g=f[p>>2]|0;f[p>>2]=o;if(g|0){Ppb(g);e=f[e>>2]|0;if(e|0)Ppb(e)}e=f[a>>2]|0}p=f[52834]|0;I7a(211248,f[e>>2]|0)|0;g=f[52836]|0;N7a(211248,f[f[q>>2]>>2]|0)|0;a=f[52827]|0;H6a(r);i=b[211526]|0;r8a(211248,0)|0;j=b[211372]|0;W7a(211248,0)|0;k=f[52853]|0;l=f[52855]|0;m=f[52854]|0;n=f[52856]|0;$7a(211248,1,771)|0;o=b[211524]|0;p8a(211248,1)|0;if(h){E7a(211248,3)|0;e=f[(f[d>>2]|0)+72>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;F7a(211248,e)|0;E7a(211248,2)|0;e=f[(f[c>>2]|0)+72>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;F7a(211248,e)|0;E7a(211248,1)|0;e=f[(f[(f[d>>2]|0)+4>>2]|0)+8>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;F7a(211248,e)|0;e=c}else e=c;E7a(211248,0)|0;e=f[(f[(f[e>>2]|0)+4>>2]|0)+8>>2]|0;if(!e)e=0;else e=f[e+8>>2]|0;F7a(211248,e)|0;KUa(f[q+8>>2]|0);p8a(211248,o<<24>>24!=0)|0;_7a(211248,k,l,m,n)|0;W7a(211248,j<<24>>24!=0)|0;r8a(211248,i<<24>>24!=0)|0;I6a(r);E7a(211248,a)|0;N7a(211248,g)|0;I7a(211248,p)|0;u=s;return}function sTa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;b=h+24|0;e=h;g=a+8|0;if(f[g>>2]|0){u=h;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,190192,152740,e,1);i=f[b>>2]|0;c=b+4|0;j=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+12|0;b=f[i>>2]|0;f[i>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[g>>2]|0,190268)|0;f[a+16>>2]=j;j=f[52836]|0;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,153590)|0,0);N7a(211248,j)|0;u=h;return}function tTa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;g=u;u=u+16|0;d=g;if(!(f[a>>2]|0)){JUa(d);h=f[d>>2]|0;e=d+4|0;i=f[e>>2]|0;f[d>>2]=0;f[e>>2]=0;f[a>>2]=h;h=a+4|0;d=f[h>>2]|0;f[h>>2]=i;if(d|0){Ppb(d);d=f[e>>2]|0;if(d|0)Ppb(d)}}sTa(a);i=b[211526]|0;r8a(211248,0)|0;h=b[211372]|0;W7a(211248,0)|0;e=f[52834]|0;I7a(211248,f[f[a>>2]>>2]|0)|0;d=f[52836]|0;N7a(211248,f[f[a+8>>2]>>2]|0)|0;j=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;F7a(211248,f[c+8>>2]|0)|0;KUa(f[a+16>>2]|0);F7a(211248,j)|0;N7a(211248,d)|0;I7a(211248,e)|0;W7a(211248,h<<24>>24!=0)|0;r8a(211248,i<<24>>24!=0)|0;u=g;return}function uTa(a){a=a|0;var b=0,c=0,d=0;b=a+48|0;c=a;d=c+48|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=7;n[a+52>>2]=1.0;n[a+56>>2]=.029999999329447746;n[a+60>>2]=2.0;n[a+64>>2]=1.0;f[a+68>>2]=0;f[a+72>>2]=0;f[a+96>>2]=0;f[a+100>>2]=0;return}function vTa(a){a=a|0;var b=0;f[a+8>>2]=0;b=a+12|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;Ppb(a);return}function wTa(a,b){a=a|0;b=b|0;var c=0;b=(b|0)==0?0:b|1;c=a+48|0;if((f[c>>2]|0)==(b|0))return;f[c>>2]=b;f[a+68>>2]=0;c=a+72|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+96>>2]=0;c=a+100|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+32>>2]=0;c=a+36|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+40>>2]=0;a=a+44|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Ppb(b);return}function xTa(a,b){a=a|0;b=+b;n[a+52>>2]=b;return}function yTa(a,b){a=a|0;b=+b;if(b<=0.0)return;n[a+56>>2]=b;return}function zTa(a,b){a=a|0;b=+b;if(b<=0.0)return;n[a+60>>2]=b;return}function ATa(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;g=c+4|0;d=c+8|0;e=c;n[g>>2]=b;n[d>>2]=0.0;n[e>>2]=1.0;e=b<1.0?g:e;f[a+64>>2]=f[(+n[e>>2]>0.0?e:d)>>2];u=c;return}function BTa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;t=u;u=u+224|0;p=t+24|0;q=t;r=t+64|0;k=t+212|0;o=t+48|0;n=t+200|0;s=f[52836]|0;g=a+16|0;if(!(f[g>>2]|0)){e=q+16|0;f[q>>2]=31848;f[q+4>>2]=113;f[e>>2]=q;o7a(p,190192,152448,q,1);m=f[p>>2]|0;c=p+4|0;l=f[c>>2]|0;f[p>>2]=0;f[c>>2]=0;f[g>>2]=m;m=a+20|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}c=f[e>>2]|0;if((q|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);m=t7a(f[g>>2]|0,190268)|0;f[a+124>>2]=m;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,153590)|0,0)}g=a+24|0;if(!(f[g>>2]|0)){e=q+16|0;f[q>>2]=31848;f[q+4>>2]=113;f[e>>2]=q;o7a(p,190192,152773,q,1);m=f[p>>2]|0;c=p+4|0;l=f[c>>2]|0;f[p>>2]=0;f[c>>2]=0;f[g>>2]=m;m=a+28|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}c=f[e>>2]|0;if((q|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);m=t7a(f[g>>2]|0,190268)|0;f[a+128>>2]=m;N7a(211248,f[f[g>>2]>>2]|0)|0;hf(u7a(f[g>>2]|0,193110)|0,0.0,0.0,0.0,1.0)}c=a+68|0;if(!(f[c>>2]|0))CTa(a,c,0);c=a+96|0;if(!(f[c>>2]|0))CTa(a,c,1);f[q>>2]=0;m=q+4|0;f[m>>2]=0;f[q+8>>2]=0;l=a+48|0;c=f[l>>2]|0;do if(c|0){g=a+32|0;if(!(f[g>>2]|0)){E7(q,c);h=f[q>>2]|0;MUa((f[m>>2]|0)-h>>2,h);h=r+4|0;f[r>>2]=10948;i=r+56|0;f[i>>2]=10968;Yfb(r+56|0,h);f[r+128>>2]=0;f[r+132>>2]=-1;f[r>>2]=31108;f[r+56>>2]=31128;agb(h);f[h>>2]=31144;j=r+36|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[r+52>>2]=16;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;DIa(h,p);if((b[p+11>>0]|0)<0)Zpb(f[p>>2]|0);e=FIa(r,152494,38)|0;e=FIa(ngb(e,f[l>>2]|0)|0,153620,19)|0;e=ngb(e,(f[l>>2]|0)>>>1)|0;b[p>>0]=10;FIa(e,p,1)|0;EIa(o,h);TUa(k,o);e=p+16|0;d=Wpb(16)|0;f[d>>2]=32088;c=d+4|0;f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[e>>2]=d;if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);o7a(o,190192,152533,p,1);k=f[o>>2]|0;c=o+4|0;v=f[c>>2]|0;f[o>>2]=0;f[c>>2]=0;f[g>>2]=k;k=a+36|0;d=f[k>>2]|0;f[k>>2]=v;if(d|0){Ppb(d);c=f[c>>2]|0;if(c|0)Ppb(c)}N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,154084)|0,0);v=u7a(f[g>>2]|0,153697)|0;c=f[q>>2]|0;af(v|0,(f[m>>2]|0)-c>>2|0,c|0);c=t7a(f[g>>2]|0,190268)|0;f[a+132>>2]=c;c=u7a(f[g>>2]|0,153368)|0;f[a+136>>2]=c;c=u7a(f[g>>2]|0,152575)|0;f[a+140>>2]=c;c=u7a(f[g>>2]|0,153686)|0;f[a+144>>2]=c;c=f[e>>2]|0;if((p|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[r>>2]=31108;f[i>>2]=31128;f[h>>2]=31144;if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);Teb(h);Pfb(r,31204);Oeb(i);c=f[l>>2]|0;if(!c)break}j=a+40|0;if(!(f[j>>2]|0)){e=f[q>>2]|0;v=f[m>>2]|0;h=v;d=e;if((e|0)==(v|0)){g=h-d>>2;if(c>>>0>g>>>0){E7(q,c-g|0);d=f[q>>2]|0;c=f[m>>2]|0}else if(c>>>0<g>>>0){c=e+(~((-4-(c<<2)|0)>>>2)<<2)|0;f[m>>2]=c}else c=h;MUa(c-d>>2,d)}g=r+4|0;f[r>>2]=10948;h=r+56|0;f[h>>2]=10968;Yfb(r+56|0,g);f[r+128>>2]=0;f[r+132>>2]=-1;f[r>>2]=31108;f[r+56>>2]=31128;agb(g);f[g>>2]=31144;i=r+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[r+52>>2]=16;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;DIa(g,p);if((b[p+11>>0]|0)<0)Zpb(f[p>>2]|0);e=FIa(r,152591,38)|0;e=FIa(ngb(e,f[l>>2]|0)|0,153620,19)|0;e=ngb(e,(f[l>>2]|0)>>>1)|0;b[p>>0]=10;FIa(e,p,1)|0;EIa(o,g);TUa(n,o);e=p+16|0;v=Wpb(16)|0;f[v>>2]=32088;l=v+4|0;f[l>>2]=f[n>>2];f[l+4>>2]=f[n+4>>2];f[l+8>>2]=f[n+8>>2];f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[e>>2]=v;if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);o7a(o,190192,152533,p,1);v=f[o>>2]|0;d=o+4|0;n=f[d>>2]|0;f[o>>2]=0;f[d>>2]=0;f[j>>2]=v;v=a+44|0;c=f[v>>2]|0;f[v>>2]=n;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}N7a(211248,f[f[j>>2]>>2]|0)|0;bf(u7a(f[j>>2]|0,154084)|0,0);v=u7a(f[j>>2]|0,153697)|0;c=f[q>>2]|0;af(v|0,(f[m>>2]|0)-c>>2|0,c|0);c=t7a(f[j>>2]|0,190268)|0;f[a+148>>2]=c;c=u7a(f[j>>2]|0,153368)|0;f[a+152>>2]=c;c=u7a(f[j>>2]|0,152575)|0;f[a+156>>2]=c;c=u7a(f[j>>2]|0,153686)|0;f[a+160>>2]=c;c=u7a(f[j>>2]|0,152630)|0;f[a+164>>2]=c;c=f[e>>2]|0;if((p|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[r>>2]=31108;f[h>>2]=31128;f[g>>2]=31144;if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);Teb(g);Pfb(r,31204);Oeb(h)}}while(0);c=f[q>>2]|0;if(!c){N7a(211248,s)|0;u=t;return}d=f[m>>2]|0;if((d|0)!=(c|0))f[m>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);N7a(211248,s)|0;u=t;return}function CTa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+192|0;j=n;k=n+40|0;e=n+176|0;h=n+24|0;l=k+4|0;f[k>>2]=10948;m=k+56|0;f[m>>2]=10968;Yfb(k+56|0,l);f[k+128>>2]=0;f[k+132>>2]=-1;f[k>>2]=31108;f[k+56>>2]=31128;agb(l);f[l>>2]=31144;i=k+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[k+52>>2]=16;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;DIa(l,j);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);g=FIa(k,152638,16)|0;g=mgb(FIa(mgb(g,(f[a+48>>2]|0)!=0&1)|0,152655,26)|0,d&1)|0;b[j>>0]=10;FIa(g,j,1)|0;EIa(h,l);TUa(e,h);g=j+16|0;d=Wpb(16)|0;f[d>>2]=32088;a=d+4|0;f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[g>>2]=d;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);o7a(h,190192,152682,j,1);a=f[h>>2]|0;d=h+4|0;e=f[d>>2]|0;f[h>>2]=0;f[d>>2]=0;f[c>>2]=a;h=c+4|0;a=f[h>>2]|0;f[h>>2]=e;if(a|0){Ppb(a);a=f[d>>2]|0;if(a|0)Ppb(a)}a=t7a(f[c>>2]|0,190268)|0;f[c+8>>2]=a;a=u7a(f[c>>2]|0,153368)|0;f[c+12>>2]=a;a=u7a(f[c>>2]|0,152719)|0;f[c+16>>2]=a;a=u7a(f[c>>2]|0,152630)|0;f[c+20>>2]=a;a=u7a(f[c>>2]|0,152575)|0;f[c+24>>2]=a;N7a(211248,f[f[c>>2]>>2]|0)|0;bf(u7a(f[c>>2]|0,152732)|0,0);a=f[g>>2]|0;if((j|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);f[k>>2]=31108;f[m>>2]=31128;f[l>>2]=31144;if((b[i+11>>0]|0)>=0){Teb(l);Pfb(k,31204);Oeb(m);u=n;return}Zpb(f[i>>2]|0);Teb(l);Pfb(k,31204);Oeb(m);u=n;return}function DTa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;da=u;u=u+352|0;I=da+336|0;ba=da+272|0;ca=da+248|0;K=da+240|0;$=da+176|0;aa=da;W=da+156|0;X=da+136|0;if(q6a()|0)if(v6a()|0){Y=a+64|0;if(+n[Y>>2]<=0.0){u=da;return}h=f[c>>2]|0;if(!h){u=da;return}i=f[h+72>>2]|0;f[I>>2]=i;Z=f[h+76>>2]|0;_=(Z|0)==0;s=i;if(!_)Npb(Z);if(i|0){BTa(a);h=f[a>>2]|0;if(!h){JUa(ba);V=f[ba>>2]|0;h=ba+4|0;U=f[h>>2]|0;f[ba>>2]=0;f[h>>2]=0;f[a>>2]=V;V=a+4|0;i=f[V>>2]|0;f[V>>2]=U;if(i|0){Ppb(i);h=f[h>>2]|0;if(h|0)Ppb(h)}h=f[a>>2]|0}V=f[52834]|0;I7a(211248,f[h>>2]|0)|0;M=f[52836]|0;N=f[52827]|0;H6a(ba);O=b[211526]|0;r8a(211248,0)|0;P=b[211372]|0;W7a(211248,0)|0;Q=f[52853]|0;R=f[52855]|0;S=f[52854]|0;T=f[52856]|0;$7a(211248,1,771)|0;U=b[211524]|0;H=(e|0)!=0;J=H?a+96|0:a+68|0;oVa(ca);f[K>>2]=0;L=K+4|0;f[L>>2]=0;do if(H){h=s+16|0;i=s+20|0;nVa($,g,f[h>>2]|0,f[i>>2]|0);qVa(ca,$)|0;rVa($);q=f[ca>>2]|0;o=f[ca+4>>2]|0;r=o;if(!o){f[K>>2]=q;f[L>>2]=r}else{Npb(o);o=f[L>>2]|0;f[K>>2]=q;f[L>>2]=r;if(o|0)Ppb(o)}D=tVa(ca)|0;B=f[52838]|0;C=f[52839]|0;P7a(211248,f[f[D>>2]>>2]|0)|0;D=f[52823]|0;E=f[52824]|0;F=f[52825]|0;G=f[52826]|0;D7a(211248,0,0,f[h>>2]|0,f[i>>2]|0)|0;N7a(211248,f[f[a+16>>2]>>2]|0)|0;E7a(211248,0)|0;F7a(211248,f[s+8>>2]|0)|0;KUa(f[a+124>>2]|0);F7a(211248,0)|0;r=a+8|0;if(!(d6a(f[c>>2]|0,r)|0)){X5a($,f[c>>2]|0,0,1);A=f[$>>2]|0;o=$+4|0;z=f[o>>2]|0;f[$>>2]=0;f[o>>2]=0;f[r>>2]=A;A=a+12|0;q=f[A>>2]|0;f[A>>2]=z;if(q|0){Ppb(q);o=f[o>>2]|0;if(o|0)Ppb(o)}}P7a(211248,f[f[r>>2]>>2]|0)|0;$5a(f[r>>2]|0,0,K,3553,0);N7a(211248,f[f[a+24>>2]>>2]|0)|0;o=f[52875]|0;q=f[52876]|0;r=f[52877]|0;s=f[52878]|0;c=f[52879]|0;t=f[52880]|0;k8a(211248,7680,7680,7680)|0;v=f[52867]|0;w=f[52870]|0;x=f[52868]|0;y=f[52871]|0;z=f[52869]|0;A=f[52872]|0;e8a(211248,514,0,e)|0;e=b[211532]|0;u8a(211248,1)|0;KUa(f[a+128>>2]|0);u8a(211248,e<<24>>24!=0)|0;if((v|0)==(w|0)&(x|0)==(y|0)&(z|0)==(A|0))e8a(211248,v,x,z)|0;else{f8a(211248,v,x,z)|0;g8a(211248,w,y,A)|0}if((o|0)==(s|0)&(q|0)==(c|0)&(r|0)==(t|0))k8a(211248,o,q,r)|0;else{l8a(211248,o,q,r)|0;m8a(211248,s,c,t)|0}D7a(211248,D,E,F,G)|0;if((B|0)==(C|0)){P7a(211248,B)|0;break}else{Q7a(211248,B)|0;R7a(211248,C)|0;break}}else{i=s+20|0;h=s+16|0}while(0);N7a(211248,f[f[J>>2]>>2]|0)|0;Lga(Gga(d)|0,aa);n[$>>2]=+p[aa>>3];n[$+4>>2]=+p[aa+8>>3];n[$+8>>2]=+p[aa+16>>3];n[$+12>>2]=+p[aa+24>>3];n[$+16>>2]=+p[aa+32>>3];n[$+20>>2]=+p[aa+40>>3];n[$+24>>2]=+p[aa+48>>3];n[$+28>>2]=+p[aa+56>>3];n[$+32>>2]=+p[aa+64>>3];n[$+36>>2]=+p[aa+72>>3];n[$+40>>2]=+p[aa+80>>3];n[$+44>>2]=+p[aa+88>>3];n[$+48>>2]=+p[aa+96>>3];n[$+52>>2]=+p[aa+104>>3];n[$+56>>2]=+p[aa+112>>3];n[$+60>>2]=+p[aa+120>>3];m=1.0/+(f[i>>2]|0);n[aa>>2]=1.0/+(f[h>>2]|0);r=aa+4|0;n[r>>2]=m;lf(f[J+12>>2]|0,1,0,$|0);df(f[J+16>>2]|0,1,aa|0);$e(f[J+20>>2]|0,+(+n[Y>>2]));$e(f[J+24>>2]|0,+(+n[a+60>>2]*+n[r>>2]*2.0*6.828428268432617));E7a(211248,0)|0;F7a(211248,f[(f[(H?K:I)>>2]|0)+8>>2]|0)|0;if(!(f[a+48>>2]|0)){p8a(211248,1)|0;KUa(f[J+8>>2]|0)}else{if(H){pVa(W,ca);h=f[I>>2]|0}else{h=f[I>>2]|0;nVa(W,g,f[h+16>>2]|0,f[h+20>>2]|0)}i=h+16|0;h=h+20|0;nVa(X,g,f[i>>2]|0,f[h>>2]|0);j=+n[52845];k=+n[52846];l=+n[52847];m=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;d=tVa(X)|0;o=f[52838]|0;q=f[52839]|0;P7a(211248,f[f[d>>2]>>2]|0)|0;d=f[52823]|0;I=f[52824]|0;K=f[52825]|0;g=f[52826]|0;D7a(211248,0,0,f[i>>2]|0,f[h>>2]|0)|0;Ud(16384);p8a(211248,0)|0;KUa(f[J+8>>2]|0);h=tVa(W)|0;P7a(211248,f[f[h>>2]>>2]|0)|0;Ud(16384);N7a(211248,f[f[a+32>>2]>>2]|0)|0;lf(f[a+136>>2]|0,1,0,$|0);h=a+56|0;$e(f[a+140>>2]|0,+(+n[h>>2]));i=a+52|0;cf(f[a+144>>2]|0,+(+n[i>>2]*+n[aa>>2]),0.0);E7a(211248,0)|0;F7a(211248,f[(f[X>>2]|0)+8>>2]|0)|0;KUa(f[a+132>>2]|0);D7a(211248,d,I,K,g)|0;if((o|0)==(q|0))P7a(211248,o)|0;else{Q7a(211248,o)|0;R7a(211248,q)|0}N7a(211248,f[f[a+40>>2]>>2]|0)|0;p8a(211248,1)|0;lf(f[a+152>>2]|0,1,0,$|0);$e(f[a+156>>2]|0,+(+n[h>>2]));$e(f[a+164>>2]|0,+(+n[Y>>2]));cf(f[a+160>>2]|0,0.0,+(+n[i>>2]*+n[r>>2]));E7a(211248,0)|0;F7a(211248,f[(f[W>>2]|0)+8>>2]|0)|0;KUa(f[a+148>>2]|0);Y7a(211248,j,k,l,m)|0;rVa(X);rVa(W)}h=f[L>>2]|0;if(h|0)Ppb(h);rVa(ca);p8a(211248,U<<24>>24!=0)|0;_7a(211248,Q,R,S,T)|0;W7a(211248,P<<24>>24!=0)|0;r8a(211248,O<<24>>24!=0)|0;I6a(ba);E7a(211248,N)|0;N7a(211248,M)|0;I7a(211248,V)|0}if(!_)Ppb(Z);u=da;return}f[a+8>>2]=0;ca=a+12|0;h=f[ca>>2]|0;f[ca>>2]=0;if(!h){u=da;return}Ppb(h);u=da;return}function ETa(a){a=a|0;var b=0;f[a>>2]=0;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;Ppb(a);return}function FTa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+24|0;h=j;i=a+16|0;if(f[i>>2]|0){u=j;return}d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152773,h,1);e=f[g>>2]|0;c=g+4|0;k=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[i>>2]=e;e=a+20|0;b=f[e>>2]|0;f[e>>2]=k;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152740,h,1);e=a+24|0;k=f[g>>2]|0;c=g+4|0;l=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[e>>2]=k;k=a+28|0;b=f[k>>2]|0;f[k>>2]=l;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=t7a(f[i>>2]|0,190268)|0;f[a+136>>2]=l;l=t7a(f[e>>2]|0,190268)|0;f[a+144>>2]=l;l=u7a(f[i>>2]|0,193110)|0;f[a+140>>2]=l;l=f[52836]|0;N7a(211248,f[f[e>>2]>>2]|0)|0;bf(u7a(f[e>>2]|0,153590)|0,0);N7a(211248,l)|0;u=j;return}function GTa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;b=h+24|0;e=h;g=a+32|0;if(f[g>>2]|0){u=h;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,190192,152812,e,1);i=f[b>>2]|0;c=b+4|0;j=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=i;i=a+36|0;b=f[i>>2]|0;f[i>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);j=t7a(f[g>>2]|0,190268)|0;f[a+148>>2]=j;j=u7a(f[g>>2]|0,152853)|0;f[a+152>>2]=j;j=u7a(f[g>>2]|0,152870)|0;f[a+156>>2]=j;j=u7a(f[g>>2]|0,152886)|0;f[a+160>>2]=j;j=f[52836]|0;N7a(211248,f[f[g>>2]>>2]|0)|0;bf(u7a(f[g>>2]|0,153590)|0,0);N7a(211248,j)|0;u=h;return}function HTa(a,c,d,e,g,h,i,j,k,l,m,o){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0.0,ia=0.0,ja=0.0;ga=u;u=u+48|0;fa=ga+24|0;da=ga+16|0;ea=ga;p=f[c>>2]|0;if(!p){u=ga;return}if(!(d6a(p,a)|0)){X5a(fa,f[c>>2]|0,0,1);ca=f[fa>>2]|0;p=fa+4|0;ba=f[p>>2]|0;f[fa>>2]=0;f[p>>2]=0;f[a>>2]=ca;ca=a+4|0;q=f[ca>>2]|0;f[ca>>2]=ba;if(q|0){Ppb(q);p=f[p>>2]|0;if(p|0)Ppb(p)}}FTa(a);ca=P5a(f[(f[c>>2]|0)+4>>2]|0)|0;nVa(fa,k,ca,Q5a(f[(f[c>>2]|0)+4>>2]|0)|0);f[da>>2]=f[fa>>2];ca=da+4|0;p=f[fa+4>>2]|0;f[ca>>2]=p;if(p|0)Npb(p);k=a+8|0;p=f[k>>2]|0;if(!p){JUa(ea);ba=f[ea>>2]|0;p=ea+4|0;aa=f[p>>2]|0;f[ea>>2]=0;f[p>>2]=0;f[k>>2]=ba;ba=a+12|0;q=f[ba>>2]|0;f[ba>>2]=aa;if(q|0){Ppb(q);p=f[p>>2]|0;if(p|0)Ppb(p)}p=f[k>>2]|0;if(!p)p=0;else C=14}else C=14;if((C|0)==14)p=f[p>>2]|0;ba=f[52834]|0;I7a(211248,p)|0;E=f[52836]|0;F=f[(f[52828]|0)+(f[52827]<<2)>>2]|0;G=+n[52845];H=+n[52846];I=+n[52847];J=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;K=b[211526]|0;r8a(211248,0)|0;L=b[211372]|0;W7a(211248,0)|0;M=f[52875]|0;N=f[52876]|0;O=f[52877]|0;P=f[52878]|0;Q=f[52879]|0;R=f[52880]|0;k8a(211248,7680,7680,7680)|0;S=f[52867]|0;T=f[52870]|0;U=f[52868]|0;V=f[52871]|0;W=f[52869]|0;X=f[52872]|0;Y=b[211524]|0;p8a(211248,0)|0;Z=f[52853]|0;_=f[52855]|0;$=f[52854]|0;aa=f[52856]|0;$7a(211248,1,771)|0;p=f[a>>2]|0;if(!p)p=0;else p=f[p>>2]|0;A=f[52838]|0;B=f[52839]|0;P7a(211248,p)|0;z=f[da>>2]|0;v=f[52823]|0;w=f[52824]|0;x=f[52825]|0;y=f[52826]|0;D7a(211248,0,0,f[z+16>>2]|0,f[z+20>>2]|0)|0;$5a(f[a>>2]|0,0,da,3553,0);z=b[211532]|0;u8a(211248,1)|0;Ud(16384);D=a+16|0;p=f[D>>2]|0;if(!p)p=0;else p=f[p>>2]|0;N7a(211248,p)|0;a:do if(l){s=a+72|0;t=a+88|0;do if(+n[s>>2]==+n[t>>2]){q=a+76|0;if(+n[q>>2]==+n[a+92>>2]){r=a+80|0;if(+n[r>>2]==+n[a+96>>2]){p=a+84|0;ha=+n[p>>2];k=ha>0.0;if(!(ha==+n[a+100>>2]))if(k){k=r;C=29;break}else break;if(!k)break a;e8a(211248,517,0,h|g)|0;h=f[a+140>>2]|0;ha=+n[p>>2];ja=ha*+n[q>>2];ia=ha*+n[r>>2];n[ea>>2]=+n[s>>2]*ha;n[ea+4>>2]=ja;n[ea+8>>2]=ia;n[ea+12>>2]=ha;jf(h|0,1,ea|0);KUa(f[a+136>>2]|0);break a}else C=23}else C=23}else C=23;while(0);if((C|0)==23){p=a+84|0;if(+n[p>>2]>0.0){q=a+76|0;k=a+80|0;C=29}}if((C|0)==29){e8a(211248,517,0,g)|0;C=f[a+140>>2]|0;ja=+n[p>>2];ha=ja*+n[q>>2];ia=ja*+n[k>>2];n[ea>>2]=+n[s>>2]*ja;n[ea+4>>2]=ha;n[ea+8>>2]=ia;n[ea+12>>2]=ja;jf(C|0,1,ea|0);KUa(f[a+136>>2]|0)}p=a+100|0;if(+n[p>>2]>0.0){e8a(211248,517,0,h)|0;h=f[a+140>>2]|0;ja=+n[p>>2];ha=ja*+n[a+92>>2];ia=ja*+n[a+96>>2];n[ea>>2]=+n[t>>2]*ja;n[ea+4>>2]=ha;n[ea+8>>2]=ia;n[ea+12>>2]=ja;jf(h|0,1,ea|0);KUa(f[a+136>>2]|0)}}while(0);p8a(211248,1)|0;p=a+52|0;if(+n[p>>2]>0.0){e8a(211248,514,e|d,e)|0;q=a+140|0;h=f[q>>2]|0;ja=+n[p>>2];ha=ja*+n[a+44>>2];ia=ja*+n[a+48>>2];n[ea>>2]=+n[a+40>>2]*ja;n[ea+4>>2]=ha;n[ea+8>>2]=ia;n[ea+12>>2]=ja;jf(h|0,1,ea|0);h=a+136|0;KUa(f[h>>2]|0)}else{h=a+136|0;q=a+140|0}e8a(211248,517,0,d)|0;d=f[q>>2]|0;ja=+n[a+68>>2];ha=ja*+n[a+60>>2];ia=ja*+n[a+64>>2];n[ea>>2]=+n[a+56>>2]*ja;n[ea+4>>2]=ha;n[ea+8>>2]=ia;n[ea+12>>2]=ja;jf(d|0,1,ea|0);KUa(f[h>>2]|0);u8a(211248,z<<24>>24!=0)|0;D7a(211248,v,w,x,y)|0;if((A|0)==(B|0))P7a(211248,A)|0;else{Q7a(211248,A)|0;R7a(211248,B)|0}p=f[a+24>>2]|0;if(!p)p=0;else p=f[p>>2]|0;N7a(211248,p)|0;p=f[da>>2]|0;if(!p)p=0;else p=f[p+8>>2]|0;F7a(211248,p)|0;KUa(f[a+144>>2]|0);gUa(m,f[c>>2]|0,0,o,1);do if(l){C=a+116|0;if(+n[C>>2]<=0.0)if(+n[a+132>>2]<=0.0)break;GTa(a);F7a(211248,0)|0;p=f[a>>2]|0;if(!p)p=0;else p=f[p>>2]|0;B=f[52838]|0;g=f[52839]|0;P7a(211248,p)|0;v=f[da>>2]|0;k=f[52823]|0;r=f[52824]|0;s=f[52825]|0;t=f[52826]|0;D7a(211248,0,0,f[v+16>>2]|0,f[v+20>>2]|0)|0;v=b[211524]|0;p8a(211248,0)|0;w=b[211368]|0;x=b[211369]|0;y=b[211370]|0;z=b[211371]|0;Ud(16384);A=b[211532]|0;u8a(211248,1)|0;p=f[D>>2]|0;if(!p)p=0;else p=f[p>>2]|0;N7a(211248,p)|0;hf(f[q>>2]|0,1.0,1.0,1.0,1.0);if(+n[C>>2]>0.0){V7a(211248,1,0,0,0)|0;e8a(211248,517,0,i)|0;KUa(f[h>>2]|0)}q=a+132|0;if(+n[q>>2]>0.0){V7a(211248,0,1,0,0)|0;e8a(211248,517,0,j)|0;KUa(f[h>>2]|0)}u8a(211248,A<<24>>24!=0)|0;V7a(211248,w<<24>>24!=0,x<<24>>24!=0,y<<24>>24!=0,z<<24>>24!=0)|0;p8a(211248,v<<24>>24!=0)|0;D7a(211248,k,r,s,t)|0;if((B|0)==(g|0))P7a(211248,B)|0;else{Q7a(211248,B)|0;R7a(211248,g)|0}p=f[a+32>>2]|0;if(!p)p=0;else p=f[p>>2]|0;N7a(211248,p)|0;p=f[da>>2]|0;if(!p)p=0;else p=f[p+8>>2]|0;F7a(211248,p)|0;j=f[a+152>>2]|0;ja=+n[C>>2];ia=ja*+n[a+108>>2];ha=ja*+n[a+112>>2];n[ea>>2]=+n[a+104>>2]*ja;n[ea+4>>2]=ia;n[ea+8>>2]=ha;n[ea+12>>2]=ja;jf(j|0,1,ea|0);j=f[a+156>>2]|0;ja=+n[q>>2];ha=ja*+n[a+124>>2];ia=ja*+n[a+128>>2];n[ea>>2]=+n[a+120>>2]*ja;n[ea+4>>2]=ha;n[ea+8>>2]=ia;n[ea+12>>2]=ja;jf(j|0,1,ea|0);ea=f[da>>2]|0;cf(f[a+160>>2]|0,+(1.5/+(f[ea+16>>2]|0)),+(1.5/+(f[ea+20>>2]|0)));KUa(f[a+148>>2]|0)}while(0);_7a(211248,Z,_,$,aa)|0;p8a(211248,Y<<24>>24!=0)|0;if((S|0)==(T|0)&(U|0)==(V|0)&(W|0)==(X|0))e8a(211248,S,U,W)|0;else{f8a(211248,S,U,W)|0;g8a(211248,T,V,X)|0}if((M|0)==(P|0)&(N|0)==(Q|0)&(O|0)==(R|0))k8a(211248,M,N,O)|0;else{l8a(211248,M,N,O)|0;m8a(211248,P,Q,R)|0}W7a(211248,L<<24>>24!=0)|0;r8a(211248,K<<24>>24!=0)|0;Y7a(211248,G,H,I,J)|0;F7a(211248,F)|0;N7a(211248,E)|0;I7a(211248,ba)|0;p=f[ca>>2]|0;if(p|0)Ppb(p);rVa(fa);u=ga;return}function ITa(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;b[a+24>>0]=0;b[a+25>>0]=3;b[a+26>>0]=2;n[a+28>>2]=1.0;n[a+32>>2]=1.0;n[a+36>>2]=1.0;n[a+40>>2]=.5;n[a+44>>2]=0.0;n[a+48>>2]=1.0;n[a+52>>2]=0.0;n[a+56>>2]=1.0;n[a+60>>2]=0.0;n[a+64>>2]=1.0;n[a+68>>2]=0.0;n[a+72>>2]=1.0;n[a+76>>2]=0.0;n[a+80>>2]=0.0;n[a+84>>2]=.5;n[a+88>>2]=1.0;n[a+92>>2]=.5;n[a+96>>2]=0.0;n[a+100>>2]=.5;n[a+104>>2]=1.0;n[a+108>>2]=.25;c=a+112|0;f[a+176>>2]=0;f[a+180>>2]=0;f[a+196>>2]=0;f[a+200>>2]=0;f[a+216>>2]=0;f[a+220>>2]=0;f[a+236>>2]=0;f[a+240>>2]=0;f[a+256>>2]=0;f[a+260>>2]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;return}function JTa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+24|0;h=j;i=a+112|0;if(f[i>>2]|0){u=j;return}d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152773,h,1);e=f[g>>2]|0;c=g+4|0;k=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[i>>2]=e;e=a+116|0;b=f[e>>2]|0;f[e>>2]=k;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);d=h+16|0;f[h>>2]=31848;f[h+4>>2]=113;f[d>>2]=h;o7a(g,190192,152812,h,1);e=a+120|0;k=f[g>>2]|0;c=g+4|0;l=f[c>>2]|0;f[g>>2]=0;f[c>>2]=0;f[e>>2]=k;k=a+124|0;b=f[k>>2]|0;f[k>>2]=l;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((h|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);l=t7a(f[i>>2]|0,190268)|0;f[a+136>>2]=l;l=t7a(f[e>>2]|0,190268)|0;f[a+140>>2]=l;l=u7a(f[e>>2]|0,152853)|0;f[a+144>>2]=l;l=u7a(f[e>>2]|0,152870)|0;f[a+148>>2]=l;l=u7a(f[e>>2]|0,152886)|0;f[a+152>>2]=l;l=f[52836]|0;N7a(211248,f[f[e>>2]>>2]|0)|0;bf(u7a(f[e>>2]|0,153590)|0,0);N7a(211248,f[f[i>>2]>>2]|0)|0;hf(u7a(f[i>>2]|0,193110)|0,1.0,1.0,1.0,1.0);N7a(211248,l)|0;u=j;return}function KTa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+192|0;j=o;m=o+48|0;g=o+36|0;h=o+24|0;i=a+128|0;if(f[i>>2]|0){u=o;return}n=m+4|0;f[m>>2]=10948;k=m+56|0;f[k>>2]=10968;Yfb(m+56|0,n);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=31108;f[m+56>>2]=31128;agb(n);f[n>>2]=31144;l=m+36|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[m+52>>2]=16;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;DIa(n,j);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);d=FIa(m,152904,26)|0;switch(b[a+25>>0]|0){case 1:{c=152960;break}case 2:{c=152949;break}case 3:{c=152940;break}default:c=152931}d=FIa(FIa(d,c,cdb(c)|0)|0,152969,28)|0;switch(b[a+24>>0]|0){case 1:{c=152960;break}case 2:{c=152949;break}case 3:{c=152940;break}default:c=152931}d=FIa(FIa(d,c,cdb(c)|0)|0,152998,33)|0;switch(b[a+26>>0]|0){case 1:{c=152960;break}case 2:{c=152949;break}case 3:{c=152940;break}default:c=152931}FIa(FIa(d,c,cdb(c)|0)|0,153032,22)|0;EIa(h,n);TUa(g,h);e=j+16|0;d=Wpb(16)|0;f[d>>2]=32088;c=d+4|0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[e>>2]=d;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);o7a(h,190192,153055,j,1);c=f[h>>2]|0;d=h+4|0;g=f[d>>2]|0;f[h>>2]=0;f[d>>2]=0;f[i>>2]=c;h=a+132|0;c=f[h>>2]|0;f[h>>2]=g;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}c=t7a(f[i>>2]|0,190268)|0;f[a+156>>2]=c;c=u7a(f[i>>2]|0,153101)|0;f[a+164>>2]=c;c=u7a(f[i>>2]|0,152853)|0;f[a+168>>2]=c;c=u7a(f[i>>2]|0,152870)|0;f[a+172>>2]=c;c=u7a(f[i>>2]|0,153123)|0;f[a+160>>2]=c;c=f[52836]|0;N7a(211248,f[f[i>>2]>>2]|0)|0;bf(u7a(f[i>>2]|0,153137)|0,0);bf(u7a(f[i>>2]|0,190287)|0,1);bf(u7a(f[i>>2]|0,190296)|0,2);bf(u7a(f[i>>2]|0,153147)|0,3);bf(u7a(f[i>>2]|0,153162)|0,4);N7a(211248,c)|0;c=f[e>>2]|0;if((j|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[m>>2]=31108;f[k>>2]=31128;f[n>>2]=31144;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);Teb(n);Pfb(m,31204);Oeb(k);u=o;return}function LTa(a,c){a=a|0;c=c|0;var d=0;d=a+26|0;if(c<<24>>24==4?1:(b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;f[a+128>>2]=0;d=a+132|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)Ppb(c);f[a+256>>2]=0;a=a+260|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function MTa(a,c){a=a|0;c=c|0;var d=0;d=a+24|0;if(c<<24>>24==4?1:(b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;f[a+128>>2]=0;d=a+132|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)Ppb(c);f[a+256>>2]=0;a=a+260|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function NTa(a,c){a=a|0;c=c|0;var d=0;d=a+25|0;if(c<<24>>24==4?1:(b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;f[a+128>>2]=0;d=a+132|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)Ppb(c);f[a+256>>2]=0;a=a+260|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function OTa(a){a=a|0;var b=0,c=0;f[a>>2]=0;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+8>>2]=0;c=a+12|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)return;Ppb(a);return}function PTa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;m=n;i=n+48|0;l=n+60|0;j=n+36|0;k=n+24|0;if(f[c>>2]|0){u=n;return}a=Wpb(32)|0;f[k>>2]=a;f[k+8>>2]=-2147483616;f[k+4>>2]=18;e=a;g=153176;h=e+18|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[a+18>>0]=0;g=pqb(k,d)|0;f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;g=pqb(j,153195)|0;f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;TUa(i,l);g=m+16|0;d=Wpb(16)|0;f[d>>2]=32088;h=d+4|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[g>>2]=d;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);o7a(l,190192,153197,m,1);a=f[l>>2]|0;e=l+4|0;k=f[e>>2]|0;f[l>>2]=0;f[e>>2]=0;f[c>>2]=a;l=c+4|0;a=f[l>>2]|0;f[l>>2]=k;if(a|0){Ppb(a);a=f[e>>2]|0;if(a|0)Ppb(a)}a=t7a(f[c>>2]|0,190268)|0;f[c+8>>2]=a;a=u7a(f[c>>2]|0,193110)|0;f[c+12>>2]=a;a=u7a(f[c>>2]|0,153123)|0;f[c+16>>2]=a;N7a(211248,f[f[c>>2]>>2]|0)|0;bf(u7a(f[c>>2]|0,154084)|0,0);a=f[g>>2]|0;if((m|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);u=n;return}function QTa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0;g=u;u=u+16|0;e=g;switch(b<<24>>24){case 3:{b=152940;d=a+176|0;break}case 1:{b=152960;d=a+216|0;break}case 2:{b=152949;d=a+196|0;break}default:{b=152931;d=a+236|0}}PTa(0,d,b);N7a(211248,f[f[d>>2]>>2]|0)|0;b=f[d+12>>2]|0;h=+n[c+12>>2];j=h*+n[c+4>>2];i=h*+n[c+8>>2];n[e>>2]=+n[c>>2]*h;n[e+4>>2]=j;n[e+8>>2]=i;n[e+12>>2]=h;jf(b|0,1,e|0);$e(f[d+16>>2]|0,+(+n[a+108>>2]));KUa(f[d+8>>2]|0);u=g;return}function RTa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+80|0;n=o;i=o+48|0;l=o+60|0;j=o+36|0;k=o+24|0;m=a+256|0;if(f[m>>2]|0){u=o;return}switch(b[a+26>>0]|0){case 3:{c=152940;break}case 1:{c=152960;break}case 2:{c=152949;break}default:c=152931}d=Wpb(32)|0;f[k>>2]=d;f[k+8>>2]=-2147483616;f[k+4>>2]=18;e=d;g=153176;h=e+18|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+18>>0]=0;e=pqb(k,c)|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=pqb(j,153195)|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;TUa(i,l);e=n+16|0;h=Wpb(16)|0;f[h>>2]=32088;g=h+4|0;f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[e>>2]=h;if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);if((b[k+11>>0]|0)<0)Zpb(f[k>>2]|0);o7a(l,190192,153055,n,1);c=f[l>>2]|0;d=l+4|0;k=f[d>>2]|0;f[l>>2]=0;f[d>>2]=0;f[m>>2]=c;l=a+260|0;c=f[l>>2]|0;f[l>>2]=k;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}c=t7a(f[m>>2]|0,190268)|0;f[a+264>>2]=c;c=u7a(f[m>>2]|0,193110)|0;f[a+268>>2]=c;c=u7a(f[m>>2]|0,153123)|0;f[a+272>>2]=c;N7a(211248,f[f[m>>2]>>2]|0)|0;bf(u7a(f[m>>2]|0,190287)|0,0);bf(u7a(f[m>>2]|0,190296)|0,1);bf(u7a(f[m>>2]|0,153147)|0,2);bf(u7a(f[m>>2]|0,153162)|0,3);c=f[e>>2]|0;if((n|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);u=o;return}function STa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=f[a+32>>2]|0;o=f[a+40>>2]|0;q=f[a+80>>2]|0;p=f[a+392>>2]|0;j=f[a+600>>2]|0;r=f[a+1432>>2]|0;a:{b:do if(j|0){k=((j+-1|0)&j|0)==0;if(k)d=(j+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<j>>>0)d=p>>>15^p;else d=((p>>>15^p)>>>0)%(j>>>0)|0;l=n+124+(q*20|0)|0;e=f[l>>2]|0;b=f[e+(d<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){c:do if(k)while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(j+-1|0)|0)==(d|0)))break b;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0)){h=b;break c}b=f[b>>2]|0;if(!b)break b}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0)){h=b;break c}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0))break b}b=f[b>>2]|0;if(!b)break b}while(0);if(k)g=(j+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<j>>>0)g=p>>>15^p;else g=((p>>>15^p)>>>0)%(j>>>0)|0;c=e+(g<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(h|0))break;else d=b}if((d|0)==(n+124+(q*20|0)+8|0))r=134;else{b=f[d+4>>2]|0;if(k)b=b&(j+-1|0);else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(g|0))i=h;else r=134}do if((r|0)==134){r=0;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;if(k)b=b&(j+-1|0);else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(g|0)){i=h;break}}f[c>>2]=0;i=h}while(0);b=f[i>>2]|0;if(b){c=f[b+4>>2]|0;if(k)c=c&(j+-1|0);else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(g|0)){f[(f[l>>2]|0)+(c<<2)>>2]=d;b=f[h>>2]|0}}f[d>>2]=b;f[i>>2]=0;b=n+124+(q*20|0)+12|0;f[b>>2]=(f[b>>2]|0)+-1;b=f[h+12>>2]|0;if(b|0){c=h+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-44-b|0)>>>0)/44|0)*44|0);Zpb(b)}Zpb(h)}}}while(0);i=f[n+184+(q*20|0)+4>>2]|0;d:do if(i|0){j=((i+-1|0)&i|0)==0;if(j)d=(i+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<i>>>0)d=p>>>15^p;else d=((p>>>15^p)>>>0)%(i>>>0)|0;k=n+184+(q*20|0)|0;e=f[k>>2]|0;b=f[e+(d<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){e:do if(j)while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(i+-1|0)|0)==(d|0)))break d;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0)){h=b;break e}b=f[b>>2]|0;if(!b)break d}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0)){h=b;break e}}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(d|0))break d}b=f[b>>2]|0;if(!b)break d}while(0);if(j)g=(i+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<i>>>0)g=p>>>15^p;else g=((p>>>15^p)>>>0)%(i>>>0)|0;c=e+(g<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(h|0))break;else d=b}if((d|0)==(n+184+(q*20|0)+8|0))r=184;else{b=f[d+4>>2]|0;if(j)b=b&(i+-1|0);else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0))m=h;else r=184}do if((r|0)==184){r=0;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;if(j)b=b&(i+-1|0);else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0)){m=h;break}}f[c>>2]=0;m=h}while(0);b=f[m>>2]|0;if(b){c=f[b+4>>2]|0;if(j)c=c&(i+-1|0);else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(g|0)){f[(f[k>>2]|0)+(c<<2)>>2]=d;b=f[h>>2]|0}}f[d>>2]=b;f[m>>2]=0;b=n+184+(q*20|0)+12|0;f[b>>2]=(f[b>>2]|0)+-1;b=f[h+12>>2]|0;if(b|0){c=h+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-44-b|0)>>>0)/44|0)*44|0);Zpb(b)}Zpb(h)}}}while(0);g=n+244+(q*20|0)|0;d=f[n+244+(q*20|0)+4>>2]|0;f:do if(d|0){if(!((d+-1|0)&d))e=(d+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<d>>>0)e=p>>>15^p;else e=((p>>>15^p)>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){g:do if(!((d+-1|0)&d))while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(d+-1|0)|0)==(e|0)))break f;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0))break g;b=f[b>>2]|0;if(!b)break f}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0))break g}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0))break f}b=f[b>>2]|0;if(!b)break f}while(0);f[a>>2]=b;f[(a+4|0)>>2]=f[a>>2];qQa(g,a+4|0)|0}}}while(0);g=n+304+(q*20|0)|0;d=f[n+304+(q*20|0)+4>>2]|0;h:do if(d|0){if(!((d+-1|0)&d))e=(d+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<d>>>0)e=p>>>15^p;else e=((p>>>15^p)>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){i:do if(!((d+-1|0)&d))while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(d+-1|0)|0)==(e|0)))break h;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0))break i;b=f[b>>2]|0;if(!b)break h}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0))break i}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0))break h}b=f[b>>2]|0;if(!b)break h}while(0);f[a>>2]=b;f[(a+4|0)>>2]=f[a>>2];qQa(g,a+4|0)|0}}}while(0);g=n+364+(q*20|0)|0;d=f[n+364+(q*20|0)+4>>2]|0;j:do if(d|0){if(!((d+-1|0)&d))e=(d+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<d>>>0)e=p>>>15^p;else e=((p>>>15^p)>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){k:do if(!((d+-1|0)&d))while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(d+-1|0)|0)==(e|0)))break j;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0))break k;b=f[b>>2]|0;if(!b)break j}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0))break k}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0))break j}b=f[b>>2]|0;if(!b)break j}while(0);f[a>>2]=b;f[(a+4|0)>>2]=f[a>>2];qQa(g,a+4|0)|0}}}while(0);g=n+424+(q*20|0)|0;d=f[n+424+(q*20|0)+4>>2]|0;l:do if(d|0){if(!((d+-1|0)&d))e=(d+-1|0)&(p>>>15^p);else if((p>>>15^p)>>>0<d>>>0)e=p>>>15^p;else e=((p>>>15^p)>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){m:do if(!((d+-1|0)&d))while(1){c=f[b+4>>2]|0;if(!((c|0)==(p>>>15^p|0)|(c&(d+-1|0)|0)==(e|0)))break l;if((c|0)==(p>>>15^p|0))if((f[b+8>>2]|0)==(o|0))break m;b=f[b>>2]|0;if(!b)break l}else while(1){c=f[b+4>>2]|0;if((c|0)==(p>>>15^p|0)){if((f[b+8>>2]|0)==(o|0))break m}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0))break l}b=f[b>>2]|0;if(!b)break l}while(0);f[a>>2]=b;f[(a+4|0)>>2]=f[a>>2];qQa(g,a+4|0)|0}}}while(0);q=q+1|0;if((q|0)==3){f[a+1440>>2]=1;break a}}f[a+80>>2]=q;f[a+1432>>2]=r}function TTa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0.0,m=0,o=0.0,p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0;$=f[a+160>>2]|0;aa=f[a+168>>2]|0;ga=f[a+176>>2]|0;la=f[a+200>>2]|0;r=f[a+216>>2]|0;ma=f[a+224>>2]|0;na=f[a+232>>2]|0;v=f[a+376>>2]|0;t=f[a+416>>2]|0;Y=f[a+464>>2]|0;s=f[a+1008>>2]|0;g=f[a+1016>>2]|0;ba=f[a+1040>>2]|0;ja=f[a+1256>>2]|0;ka=f[a+1336>>2]|0;c=f[a+1512>>2]|0;k=f[a+1544>>2]|0;l=+n[a+1576>>2];m=f[a+1584>>2]|0;o=+n[a+1616>>2];p=f[a+1624>>2]|0;q=+n[a+1640>>2];d=f[a+1656>>2]|0;e=f[a+1672>>2]|0;i=f[a+1720>>2]|0;oa=f[a+1904>>2]|0;pa=f[a+1912>>2]|0;a:{if(pa){pa=0;if(!(g>>>28&7|i&7|(i&16777215)>>>3&7)){if(!c){c=f[(ga+12|0)>>2]|0;if(!c){spa(ga,0);c=f[(ga+12|0)>>2]|0}}if(!d){d=f[(ga+20|0)>>2]|0;if(!d){spa(ga,1);d=f[(ga+20|0)>>2]|0}}if(!e){e=f[(ga+28|0)>>2]|0;if(!e){spa(ga,2);e=f[(ga+28|0)>>2]|0}}g=uqa(ga)|0;f[(a+12|0)>>2]=g;f[(a+12|0)+4>>2]=ga;f[(a+12|0)+8>>2]=0;f[(a+12|0)+12>>2]=0;f[(a+12|0)+16>>2]=1;f[(a+12|0)+20>>2]=0;n[(a+12|0)+40>>2]=1.0;f[(a+12|0)+24>>2]=ba;g=t<<24>>24!=0;i=v<<24>>24!=0;if(!(ba&r)){T=f[((a+116|0)+8|0)>>2]|0;S=(f[(a+128|0)+8>>2]|0)+(f[ja+44>>2]|0)|0;R=k+(f[ja+40>>2]|0)|0;U=(s&16512|0)==128?aa+381|0:aa+384|0;sQa($,0,a+12|0,ka&7&((ka&255)>>>3&7|la),c,a+56|0,l,(f[(a+128|0)>>2]|0)+(f[ja+36>>2]|0)|0,m,g,i,ma,b[U>>0]|0,na);sQa($,1,a+12|0,ka&7&((ka&255)>>>3&7|la),d,(a+56|0)+12|0,o,R,p,g,i,ma,b[U+1>>0]|0,na);sQa($,2,a+12|0,ka&7&((ka&255)>>>3&7|la),e,(a+56|0)+24|0,q,S,T,g,i,ma,b[U+2>>0]|0,na)}}else pa=1}if(pa){pa=0;if(1){U=uqa(ga)|0;f[(a+12|0)>>2]=U;f[(a+12|0)+4>>2]=ga;f[(a+12|0)+8>>2]=0;f[(a+12|0)+12>>2]=0;f[(a+12|0)+16>>2]=1;f[(a+12|0)+20>>2]=0;U=(a+12|0)+24|0;n[(a+12|0)+40>>2]=1.0;f[U>>2]=ba;T=(s&16512|0)==128?aa+381|0:aa+384|0;S=t<<24>>24!=0;R=v<<24>>24!=0;Q=0;N=0;while(1){e=1<<N;do if(e&(ka&7&((ka&255)>>>3&7|la)&255)|0){O=f[(a+116|0)+(N<<2)>>2]|0;if(O|0){P=f[(a+104|0)+(N<<2)>>2]|0;if(!P){c=ga+12+(N<<3)|0;d=f[c>>2]|0;if(!d){spa(ga,Q);d=f[c>>2]|0}}else d=P;M=f[ja+36+(N<<2)>>2]|0;c=j[(ga+200|0)>>1]|h[(ga+200|0)+2>>0]<<16;if(!(((f[(ga+196|0)>>2]|0)>>>28&7|c&7|(c&16777215)>>>3&7)&e)){f[U>>2]=ba;sQa($,Q,a+12|0,ka&7&((ka&255)>>>3&7|la),d,(a+56|0)+(N*12|0)|0,+n[(a+92|0)+(N<<2)>>2],(f[(a+128|0)+(N<<2)>>2]|0)+M|0,O,S,R,ma,b[T+N>>0]|0,na);break}if(!(e&((c&16777215)>>>6&7)))if(!(f[(ga+104|0)>>2]|0)){X=0;ca=c;da=0}else{Fpa(ga,Q);Z=j[(ga+200|0)>>1]|h[(ga+200|0)+2>>0]<<16;oa=42}else{Z=c;oa=42}if((oa|0)==42){oa=0;da=f[(ga+104|0)>>2]|0;X=da+(N*36|0)|0;ca=Z}if(!(e&((ca&16777215)>>>9&7)))if(!da){W=0;fa=ca;ha=0}else{Tpa(ga,Q);_=j[(ga+200|0)>>1]|h[(ga+200|0)+2>>0]<<16;ea=f[(ga+104|0)>>2]|0;oa=46}else{_=ca;ea=da;oa=46}if((oa|0)==46){oa=0;W=ea+(N*36|0)+12|0;fa=_;ha=ea}if(!(e&((fa&16777215)>>>12&7)))if(!ha)V=0;else{cqa(ga,Q);ia=f[(ga+104|0)>>2]|0;oa=50}else{ia=ha;oa=50}if((oa|0)==50){oa=0;V=ia+(N*36|0)+24|0}K=f[(a+128|0)+(N<<2)>>2]|0;i=f[X>>2]|0;L=f[X+4>>2]|0;if((i|0)==(L|0)){c=-1;k=1}else{c=f[i+4>>2]|0;if(!c){c=f[i+8>>2]|0;k=0}else k=1}m=f[W>>2]|0;J=f[W+4>>2]|0;if((m|0)==(J|0)){e=-1;r=1}else{e=f[m>>2]|0;if(!e){e=f[m+4>>2]|0;r=0}else r=1}s=f[V>>2]|0;I=f[V+4>>2]|0;if((s|0)==(I|0)){g=-1;p=1}else{g=f[s+12>>2]|0;if(!g){g=f[s+16>>2]|0;p=0}else p=1}t=e>>>0<c>>>0?e:c;if(O+K|0|0){G=(a+92|0)+(N<<2)|0;H=(a+56|0)+(N*12|0)|0;v=0;x=0;w=0;F=g;C=0;A=g>>>0<t>>>0?g:t;while(1){f[U>>2]=ba;B=k<<24>>24==0;if(B){y=f[i>>2]|0;f[U>>2]=ba|32768;g=ba|32768}else{y=d;g=ba}D=r<<24>>24==0;if(D){g=g|33554432;f[U>>2]=g;t=aa+381|0}else t=T;z=b[t+N>>0]|0;E=p<<24>>24==0;if(E){g=g|8388608;f[U>>2]=g;t=s;f[a>>2]=f[t>>2];f[a+4>>2]=f[t+4>>2];f[a+8>>2]=f[t+8>>2]}else{f[a>>2]=f[H>>2];f[a+4>>2]=f[H+4>>2];f[a+8>>2]=f[H+8>>2]}f[U>>2]=g&Y;t=(P|0)==0?y:P;do if((b[(aa+226|0)>>0]|0)==3)g=R;else{if(g&32768|0){g=0;break}g=(f[(ja+48|0)>>2]&32768|0)!=0}while(0);y=K>>>0<C>>>0?C:K;A=C+A|0;C=A>>>0<(O+K|0)>>>0?A:O+K|0;sQa($,Q,a+12|0,ka&7&((ka&255)>>>3&7|la),t,a,+n[G>>2],y+M|0,(C>>>0<y>>>0?y:C)-y|0,S,g,ma,z,na);g=v+c|0;if(g>>>0>A>>>0)z=v;else{t=i;do if(B){if((t+12|0|0)==(L|0)){i=t+12|0;v=g;c=~g;k=1;break}c=f[t+16>>2]|0;if((c|0)==(g|0)){i=t+12|0;v=g;c=f[t+20>>2]|0;k=0;break}else{i=t+12|0;v=g;c=c-g|0;k=1;break}}else{if((L|0)==(t|0))break;v=g;c=f[t+8>>2]|0;k=0}while(0);g=v+c|0;z=v}t=x+e|0;if(t>>>0<=A>>>0){v=m;do if(D){if((v+8|0|0)==(J|0)){m=v+8|0;x=t;e=~t;r=1;break}e=f[(v+8|0)>>2]|0;if((e|0)==(t|0)){m=v+8|0;x=t;e=f[v+12>>2]|0;r=0;break}else{m=v+8|0;x=t;e=e-t|0;r=1;break}}else{if((J|0)==(v|0))break;x=t;e=f[v+4>>2]|0;r=0}while(0);t=x+e|0}y=t>>>0<g>>>0?t:g;t=w+F|0;if(t>>>0>A>>>0)g=F;else{v=s;do if(E){if((v+20|0|0)==(I|0)){s=v+20|0;w=t;g=~t;p=1;break}g=f[v+32>>2]|0;if((g|0)==(t|0)){s=v+20|0;w=t;g=f[v+36>>2]|0;p=0;break}else{s=v+20|0;w=t;g=g-t|0;p=1;break}}else{if((I|0)==(v|0)){g=F;break}w=t;g=f[v+16>>2]|0;p=0}while(0);t=w+g|0}if(A>>>0<(O+K|0)>>>0){v=z;F=g;C=A;A=(t>>>0<y>>>0?t:y)-A|0}else break}}}}while(0);c=N+1|0;Q=c&255;if((Q&255)>=3)break;else N=c&255}}else pa=1}u=a;f[a+1920>>2]=5;break a}f[a+1904>>2]=oa;f[a+1912>>2]=pa}function UTa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0,_=0.0,$=0.0,aa=0.0;W=f[a+13568>>2]|0;Y=f[a+13592>>2]|0;g=f[a+13600>>2]|0;X=f[a+13648>>2]|0;n[(a+472|0)>>2]=+(f[52825]|0)/+(f[a>>2]|0);n[(a+456|0)>>2]=+(f[52826]|0)/+(f[a+4>>2]|0);c=f[W>>2]|0;V=j[(c+230|0)>>1]|j[(c+230|0)+2>>1]<<16;b[a>>0]=V>>>1&1;b[(a+13544|0)>>0]=V&1;if((h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8)&16){b[(a+13544|0)>>0]=1;b[a>>0]=0}f[(a+448|0)>>2]=(b[(a+13545|0)>>0]|0)==2?42:58;b[(a+13543|0)>>0]=b[c+225>>0]|0;f[(a+440|0)>>2]=a+13543|0;f[(a+440|0)+4>>2]=a+448|0;f[(a+432|0)>>2]=f[c+128>>2];b[(a+13539|0)>>0]=b[c+229>>0]|0;c=COa(c)|0;d=f[W>>2]|0;b[(a+13538|0)>>0]=b[d+312>>0]|0;b[(a+13537|0)>>0]=b[d+313>>0]|0;e=(gOa(d)|0)&1;b[(a+13536|0)>>0]=e;aa=+n[((a+13440|0)+20|0)>>2];_=+n[((a+13440|0)+40|0)>>2];t=+n[((a+13440|0)+36|0)>>2];$=+n[((a+13440|0)+24|0)>>2];Z=+n[((a+13440|0)+4|0)>>2];u=+n[((a+13440|0)+8|0)>>2];if(+n[((a+13440|0)+32|0)>>2]*($*Z-aa*u)+(+n[(a+13440|0)>>2]*(aa*_-t*$)-+n[((a+13440|0)+16|0)>>2]*(_*Z-t*u))<0.0)b[(a+13536|0)>>0]=e^1;f[(a+320|0)>>2]=a+13544|0;f[(a+320|0)+4>>2]=a;f[(a+320|0)+8>>2]=W;f[(a+320|0)+12>>2]=a+13440|0;f[(a+320|0)+16>>2]=a+13376|0;f[(a+320|0)+20>>2]=a+556|0;f[(a+320|0)+24>>2]=a+504|0;f[(a+320|0)+28>>2]=a+488|0;f[(a+320|0)+32>>2]=a+13520|0;f[(a+320|0)+36>>2]=a+13516|0;f[(a+320|0)+40>>2]=a+13512|0;f[(a+320|0)+44>>2]=a+432|0;f[(a+320|0)+48>>2]=a+13546|0;f[(a+320|0)+52>>2]=d+216;f[(a+320|0)+56>>2]=d+208;f[(a+320|0)+60>>2]=a+13539|0;f[(a+320|0)+64>>2]=c;f[(a+320|0)+68>>2]=a+13536|0;f[(a+320|0)+72>>2]=a+13268|0;f[(a+320|0)+76>>2]=a+13264|0;f[(a+320|0)+80>>2]=a+13312|0;f[(a+320|0)+84>>2]=a+440|0;f[(a+320|0)+88>>2]=a+952|0;f[(a+320|0)+92>>2]=a+13542|0;f[(a+320|0)+96>>2]=g;f[(a+320|0)+100>>2]=a+944|0;f[(a+320|0)+104>>2]=a+24|0;f[(a+320|0)+108>>2]=a+13528|0;f[(a+208|0)>>2]=a+13546|0;f[(a+208|0)+4>>2]=W;f[(a+208|0)+8>>2]=a+13440|0;f[(a+208|0)+12>>2]=a+13376|0;f[(a+208|0)+16>>2]=a+556|0;f[(a+208|0)+20>>2]=a+504|0;f[(a+208|0)+24>>2]=a+488|0;f[(a+208|0)+28>>2]=a+13520|0;f[(a+208|0)+32>>2]=a+13516|0;f[(a+208|0)+36>>2]=a+13512|0;f[(a+208|0)+40>>2]=a+432|0;f[(a+208|0)+44>>2]=c;f[(a+208|0)+48>>2]=a+472|0;f[(a+208|0)+52>>2]=a+456|0;f[(a+208|0)+56>>2]=a+13260|0;f[(a+208|0)+60>>2]=a+13256|0;f[(a+208|0)+64>>2]=a+13312|0;f[(a+208|0)+68>>2]=a+13545|0;f[(a+208|0)+72>>2]=a+13541|0;f[(a+208|0)+76>>2]=a+440|0;f[(a+208|0)+80>>2]=a+952|0;f[(a+208|0)+84>>2]=a+13540|0;f[(a+208|0)+88>>2]=a+13542|0;f[(a+208|0)+92>>2]=g;f[(a+208|0)+96>>2]=a+944|0;f[(a+208|0)+100>>2]=a+13508|0;f[(a+208|0)+104>>2]=a+13528|0;f[(a+112|0)>>2]=a+13252|0;f[(a+112|0)+4>>2]=W;f[(a+112|0)+8>>2]=a+13440|0;f[(a+112|0)+12>>2]=a+13376|0;f[(a+112|0)+16>>2]=a+556|0;f[(a+112|0)+20>>2]=a+504|0;f[(a+112|0)+24>>2]=a+488|0;f[(a+112|0)+28>>2]=a+13520|0;f[(a+112|0)+32>>2]=a+13516|0;f[(a+112|0)+36>>2]=a+13512|0;f[(a+112|0)+40>>2]=a+432|0;f[(a+112|0)+44>>2]=a+13538|0;f[(a+112|0)+48>>2]=a+13537|0;f[(a+112|0)+52>>2]=c;f[(a+112|0)+56>>2]=a+13260|0;f[(a+112|0)+60>>2]=a+13256|0;f[(a+112|0)+64>>2]=a+13312|0;f[(a+112|0)+68>>2]=a+440|0;f[(a+112|0)+72>>2]=a+952|0;f[(a+112|0)+76>>2]=a+13542|0;f[(a+112|0)+80>>2]=g;f[(a+112|0)+84>>2]=a+944|0;f[(a+112|0)+88>>2]=a+13504|0;f[(a+112|0)+92>>2]=a+13528|0;d=b[211525]|0;e=b[211526]|0;r8a(211248,1)|0;g=f[52836]|0;i=f[52834]|0;k=f[52835]|0;l=f[52844]|0;m=b[211368]|0;o=b[211369]|0;p=b[211370]|0;q=b[211371]|0;r=f[52827]|0;H6a(a+48|0);s=f[52858]|0;a8a(211248,515)|0;t=+n[52859];u=+n[52860];v=f[52873]|0;w=f[52874]|0;x=f[52875]|0;y=f[52876]|0;z=f[52877]|0;A=f[52878]|0;B=f[52879]|0;C=f[52880]|0;D=f[52867]|0;E=f[52870]|0;F=f[52868]|0;G=f[52871]|0;H=f[52869]|0;I=f[52872]|0;e8a(211248,519,255,0)|0;J=b[211532]|0;u8a(211248,1)|0;K=b[211372]|0;L=b[211368]|0;M=b[211369]|0;N=b[211370]|0;O=b[211371]|0;P=b[211524]|0;p8a(211248,0)|0;Q=f[52853]|0;R=f[52855]|0;S=f[52854]|0;T=f[52856]|0;$7a(211248,1,771)|0;if((h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8)&1)P7a(211248,f[f[W+24>>2]>>2]|0)|0;KRa(a+320|0,Y+4|0,Y+244|0,0)|0;LRa(a+208|0,Y+24|0,Y+264|0,0)|0;MRa(a+112|0,Y+44|0,Y+284|0,0)|0;V=(b[(a+13546|0)>>0]|0)!=1;U=(f[(W+40|0)>>2]|0)!=0&V;if(U&((b[(a+13545|0)>>0]|0)!=3|(b[(a+13539|0)>>0]|0)!=0)|V^1)c=0;else{p8a(211248,1)|0;W7a(211248,0)|0;c=1}do if((h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8)&1){if(U){P7a(211248,f[f[(W+40|0)>>2]>>2]|0)|0;break}if(c)P7a(211248,f[f[W+32>>2]>>2]|0)|0}while(0);V=KRa(a+320|0,Y+64|0,Y+304|0,c)|0;V=(LRa(a+208|0,Y+84|0,Y+324|0,c)|0)+V|0;c=MRa(a+112|0,Y+104|0,Y+344|0,c)|0;if((h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8)&1)P7a(211248,f[f[W+24>>2]>>2]|0)|0;V7a(211248,0,0,0,0)|0;W7a(211248,0)|0;p8a(211248,0)|0;KRa(a+320|0,Y+124|0,Y+364|0,1)|0;LRa(a+208|0,Y+144|0,Y+384|0,1)|0;MRa(a+112|0,Y+164|0,Y+404|0,1)|0;if(U)P7a(211248,f[f[(W+40|0)>>2]>>2]|0)|0;KRa(a+320|0,Y+184|0,Y+424|0,1)|0;LRa(a+208|0,Y+204|0,Y+444|0,1)|0;MRa(a+112|0,Y+224|0,Y+464|0,1)|0;if(X|0){f[(X+8|0)>>2]=(f[(X+8|0)>>2]|0)+(f[(a+13528|0)>>2]|0);f[(X+12|0)>>2]=(f[(X+12|0)>>2]|0)+(((f[(a+24|0)>>2]|0)>>>0)/3|0);f[(X+16|0)>>2]=(f[(X+16|0)>>2]|0)+((f[(a+13508|0)>>2]|0)>>>1);f[(X+20|0)>>2]=(f[(X+20|0)>>2]|0)+(f[(a+13504|0)>>2]|0)}if((V|0)!=(0-c|0)){Y=h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8|256;b[(W+77|0)>>0]=Y;b[(W+77|0)+1>>0]=Y>>8}if(f[(a+24|0)>>2]|0){Y=h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8|512;b[(W+77|0)>>0]=Y;b[(W+77|0)+1>>0]=Y>>8}if(f[(a+13508|0)>>2]|0){Y=h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8|1024;b[(W+77|0)>>0]=Y;b[(W+77|0)+1>>0]=Y>>8}if(f[(a+13504|0)>>2]|0){Y=h[(W+77|0)>>0]|h[(W+77|0)+1>>0]<<8|2048;b[(W+77|0)>>0]=Y;b[(W+77|0)+1>>0]=Y>>8}_7a(211248,Q,R,S,T)|0;p8a(211248,P<<24>>24!=0)|0;V7a(211248,L<<24>>24!=0,M<<24>>24!=0,N<<24>>24!=0,O<<24>>24!=0)|0;W7a(211248,K<<24>>24!=0)|0;u8a(211248,J<<24>>24!=0)|0;if((D|0)==(E|0)&(F|0)==(G|0)&(H|0)==(I|0))e8a(211248,D,F,H)|0;else{f8a(211248,D,F,H)|0;g8a(211248,E,G,I)|0}if((x|0)==(A|0)&(y|0)==(B|0)&(z|0)==(C|0))k8a(211248,x,y,z)|0;else{l8a(211248,x,y,z)|0;m8a(211248,A,B,C)|0}if((v|0)==(w|0))h8a(211248,v)|0;else{i8a(211248,v)|0;j8a(211248,w)|0}b8a(211248,t,u)|0;a8a(211248,s)|0;I6a(a+48|0);E7a(211248,r)|0;V7a(211248,m<<24>>24!=0,o<<24>>24!=0,p<<24>>24!=0,q<<24>>24!=0)|0;X7a(211248,l)|0;J7a(211248,k)|0;I7a(211248,i)|0;N7a(211248,g)|0;r8a(211248,e<<24>>24!=0)|0;q8a(211248,d<<24>>24!=0)|0}function VTa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0;z=f[a+192>>2]|0;D=f[a+208>>2]|0;E=f[a+216>>2]|0;c=f[a+416>>2]|0;i=f[a+440>>2]|0;A=+n[a+592>>2];B=+n[a+600>>2];C=f[a+632>>2]|0;J=f[a+1576>>2]|0;K=f[a+1640>>2]|0;a:{if(!(f[D+12>>2]|0)){H=c;J=i;I=z+104|0;I=f[I>>2]|0;G=f[I>>2]|0;H=G+H|0;f[I>>2]=H;I=z+108|0;I=f[I>>2]|0;H=f[I>>2]|0;H=H+J|0;f[I>>2]=H;I=C<<24>>24!=0;s8a(211248,I)|0;c8a(211248,A,B)|0;u=a;f[a+1712>>2]=6;f[a+1716>>2]=J|0;break a}if(!(b[f[z>>2]>>0]|0))if(!(b[f[(z+4|0)>>2]>>0]|0)){H=c;J=i;I=z+104|0;I=f[I>>2]|0;G=f[I>>2]|0;H=G+H|0;f[I>>2]=H;I=z+108|0;I=f[I>>2]|0;H=f[I>>2]|0;H=H+J|0;f[I>>2]=H;I=C<<24>>24!=0;s8a(211248,I)|0;c8a(211248,A,B)|0;u=a;f[a+1712>>2]=6;f[a+1716>>2]=J|0;break a}c8a(211248,1.0,0.0)|0;s8a(211248,1)|0;o8a(211248,f[52868]&-49)|0;w=f[z+12>>2]|0;x=f[z+16>>2]|0;y=f[(z+20|0)>>2]|0;g=f[z+24>>2]|0;j=f[z+28>>2]|0;G=f[f[z+32>>2]>>2]|0;F=f[f[z+36>>2]>>2]|0;f[(a+64|0)>>2]=f[J>>2];f[(a+64|0)+4>>2]=w;f[(a+64|0)+8>>2]=x;f[(a+64|0)+12>>2]=y;f[(a+64|0)+16>>2]=g;f[(a+64|0)+20>>2]=j;f[(a+64|0)+24>>2]=G;f[(a+64|0)+28>>2]=F;f[(a+64|0)+32>>2]=0;F=(b[f[z>>2]>>0]|0)==0;G=(b[f[(z+4|0)>>2]>>0]|0)!=0;j=f[D+8>>2]|0;g=1;if(g){g=0;if(!j){d=c;e=i}else g=1}if(g)if(1){y=c;while(1){x=j;w=1;if(w){w=0;if(!(b[x+32>>0]|0)){e=f[x+8>>2]|0;f[(a+48|0)>>2]=f[(e+128|0)>>2];f[(a+48|0)+4>>2]=f[(e+128|0)+4>>2];f[(a+48|0)+8>>2]=f[(e+128|0)+8>>2];f[(a+48|0)+12>>2]=f[(e+128|0)+12>>2];d=Vna(e,f[f[(z+44|0)>>2]>>2]|0,b[f[(z+48|0)>>2]>>0]|0,1)|0;c=f[d>>2]|0;f[a>>2]=c;d=f[d+4>>2]|0;f[(a+4|0)>>2]=d;if(d){Npb(d);c=f[a>>2]|0}if(!c){aoa(a+104|0,e,f[f[(z+44|0)>>2]>>2]|0,b[f[(z+48|0)>>2]>>0]|0,1,f[(z+52|0)>>2]|0,f[(z+56|0)>>2]|0,b[f[(z+60|0)>>2]>>0]|0,F&G,(f[(f[(z+20|0)>>2]|0)+384>>2]|0)!=0,f[(z+64|0)>>2]|0);c=f[(a+104|0)>>2]|0;v=f[((a+104|0)+4|0)>>2]|0;f[(a+104|0)>>2]=0;f[((a+104|0)+4|0)>>2]=0;f[a>>2]=c;d=f[(a+4|0)>>2]|0;f[(a+4|0)>>2]=v;if(d){Ppb(d);c=f[((a+104|0)+4|0)>>2]|0;if(c|0)Ppb(c);c=f[a>>2]|0}if(!c){m=y;o=i}else{H=c;K=82}}else{H=c;K=82}if((K|0)==82){K=0;c=f[H+184>>2]|0;if(!c)c=0;else c=f[c>>2]|0;N7a(211248,c)|0;XRa(a+64|0,a,e);e=f[x+20>>2]|0;c=1;if(c){c=0;if(!e){m=y;o=i}else c=1}if(c)if(1){l=y;d=i;t=e;while(1){v=t;c=1;if(c){c=0;if((f[(v+60|0)>>2]|0)==(f[(v+64|0)>>2]|0)){r=d;q=l}else c=1}if(c)if(1){d=d+1|0;s=f[(v+8|0)>>2]|0;c=f[(s+48|0)>>2]|0;q8a(211248,(G^(F^1))&(c&4|0)==0)|0;if(!(c&3))r=v+16|0;else{X7a(211248,(c&1|0)!=0^(F&G^(b[f[(z+68|0)>>2]>>0]|0)!=0^(f[(v+16|0)>>2]&33554432|0)!=0)?2304:2305)|0;r=v+16|0}if(!(f[r>>2]&1))b8a(211248,+n[f[(z+72|0)>>2]>>2],+n[f[(z+76|0)>>2]>>2])|0;else{L=+p[(J+16|0)>>3];b8a(211248,L+(1.0-L)*+n[v+20>>2],L+(1.0-L)*+n[v+24>>2])|0}if(!(f[r>>2]&4096))n8a(211248,519)|0;else d=(IRa(J,f[v+12>>2]|0,f[(z+80|0)>>2]|0)|0)+d|0;c=f[r>>2]|0;if(c&128){c=h[(J+77|0)>>0]|h[(J+77|0)+1>>0]<<8|128;b[(J+77|0)>>0]=c;b[(J+77|0)+1>>0]=c>>8;c=f[r>>2]|0}k=ORa(f[(z+84|0)>>2]|0,(c&128|0)!=0,0,(c&16384|0)!=0,E)|0;c=f[(s+12|0)>>2]|0;if(c|0)J7a(211248,f[c>>2]|0)|0;e=v+44+(h[(J+76|0)>>0]<<3)|0;FRa(J,v+60|0,e,f[(z+96|0)>>2]|0);c=f[r>>2]|0;do if(!(c&32768))if(!(c&8388608)){f[(a+104|0)>>2]=s;f[((a+104|0)+4|0)>>2]=f[(s+48|0)>>2]&56;f[((a+104|0)+44|0)>>2]=0;break}else{q=!(+n[v+28>>2]>=0.0);f[(a+104|0)>>2]=s;c=f[(s+48|0)>>2]|0;f[((a+104|0)+4|0)>>2]=c&56;f[((a+104|0)+44|0)>>2]=0;if(q)break;else{I=c;K=105;break}}else{f[(a+104|0)>>2]=s;I=f[(s+48|0)>>2]|0;f[((a+104|0)+4|0)>>2]=I&56;f[((a+104|0)+44|0)>>2]=0;K=105}while(0);if((K|0)==105){K=0;f[((a+104|0)+4|0)>>2]=I&24}f[((a+104|0)+48|0)>>2]=f[e>>2];SRa(f[(z+100|0)>>2]|0,a,v+8|0,56,a+48|0,f[(z+20|0)>>2]|0);TRa(a+104|0,a);c=f[(s+24|0)>>2]|0;g=(f[(v+64|0)>>2]|0)-(f[(v+60|0)>>2]|0)>>2;e=(X(g,c)|0)+l|0;if(!(f[(s+12|0)>>2]|0))le(4,f[s+36>>2]|0,c|0,g|0);else oe(4,c|0,5123,0+(f[s+20>>2]|0)+(f[s+36>>2]<<1)|0,g|0);if(k){k=b[211372]|0;W7a(211248,0)|0;l=b[211368]|0;m=b[211369]|0;o=b[211370]|0;q=b[211371]|0;V7a(211248,0,0,0,0)|0;q8a(211248,0)|0;c=f[52868]|0;if((f[r>>2]&16512|0)==128){o8a(211248,c|1)|0;h8a(211248,1)|0}else{o8a(211248,c|4)|0;h8a(211248,4)|0}k8a(211248,7680,7681,7681)|0;c=f[(s+24|0)>>2]|0;g=(f[(v+64|0)>>2]|0)-(f[(v+60|0)>>2]|0)>>2;e=(X(g,c)|0)+e|0;if(!(f[(s+12|0)>>2]|0))le(4,f[s+36>>2]|0,c|0,g|0);else oe(4,c|0,5123,0+(f[s+20>>2]|0)+(f[s+36>>2]<<1)|0,g|0);V7a(211248,l<<24>>24!=0,m<<24>>24!=0,o<<24>>24!=0,q<<24>>24!=0)|0;W7a(211248,k<<24>>24!=0)|0;g=d+1|0}else g=d;pf(f[((a+104|0)+52|0)>>2]|0,0);pf(f[((a+104|0)+56|0)>>2]|0,0);pf(f[((a+104|0)+60|0)>>2]|0,0);d=f[((a+104|0)+44|0)>>2]|0;if(d|0){c=(a+104|0)+8|0;do{je(f[c>>2]|0);c=c+4|0}while((c|0)!=((a+104|0)+8+(d<<2)|0|0))}r=g;q=e}c=t;t=f[t>>2]|0;if((f[v+72>>2]|0)>>>0<=(f[f[(z+40|0)>>2]>>2]|0)>>>0){f[(a+100|0)>>2]=c;f[(a+104|0)>>2]=f[(a+100|0)>>2];URa(x+12|0,a+104|0)|0}if(!t){m=q;o=r;break}else{l=q;d=r}}}}c=f[(a+4|0)>>2]|0;if(c|0)Ppb(c);k=m;l=o}else w=1}if(w)if(1){k=y;l=i}c=j;j=f[j>>2]|0;if((f[x+36>>2]|0)>>>0<=(f[f[(z+40|0)>>2]>>2]|0)>>>0){f[(a+100|0)>>2]=c;f[(a+104|0)>>2]=f[(a+100|0)>>2];qQa(D,a+104|0)|0}if(!j){d=k;e=l;break}else{y=k;i=l}}}H=d;J=e;I=z+104|0;I=f[I>>2]|0;G=f[I>>2]|0;H=G+H|0;f[I>>2]=H;I=z+108|0;I=f[I>>2]|0;H=f[I>>2]|0;H=H+J|0;f[I>>2]=H;I=C<<24>>24!=0;s8a(211248,I)|0;c8a(211248,A,B)|0;u=a;f[a+1712>>2]=6;f[a+1716>>2]=J|0;break a}f[a+1640>>2]=K}function WTa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0;y=f[a+192>>2]|0;F=f[a+208>>2]|0;G=f[a+216>>2]|0;c=f[a+408>>2]|0;j=f[a+432>>2]|0;z=f[a+576>>2]|0;A=f[a+608>>2]|0;B=f[a+640>>2]|0;C=f[a+672>>2]|0;D=f[a+696>>2]|0;E=f[a+704>>2]|0;J=f[a+1576>>2]|0;K=f[a+1632>>2]|0;a:{if(!(f[F+12>>2]|0)){G=c;J=j;F=y+100|0;F=f[F>>2]|0;H=f[F>>2]|0;G=H+G|0;f[F>>2]=G;F=y+104|0;F=f[F>>2]|0;G=f[F>>2]|0;G=G+J|0;f[F>>2]=G;F=B<<24>>24!=0;G=C<<24>>24!=0;H=D<<24>>24!=0;I=E<<24>>24!=0;V7a(211248,F,G,H,I)|0;I=A<<24>>24!=0;W7a(211248,I)|0;a8a(211248,z)|0;u=a;f[a+1704>>2]=6;f[a+1708>>2]=J|0;break a}o8a(211248,f[52868]&-49|32)|0;a8a(211248,515)|0;if((b[f[y>>2]>>0]|0)==1){W7a(211248,0)|0;V7a(211248,0,0,0,0)|0}s=f[y+8>>2]|0;t=f[y+12>>2]|0;v=f[(y+16|0)>>2]|0;w=f[y+20>>2]|0;x=f[y+24>>2]|0;i=f[f[y+28>>2]>>2]|0;k=f[f[y+32>>2]>>2]|0;f[(a+64|0)>>2]=f[J>>2];f[(a+64|0)+4>>2]=s;f[(a+64|0)+8>>2]=t;f[(a+64|0)+12>>2]=v;f[(a+64|0)+16>>2]=w;f[(a+64|0)+20>>2]=x;f[(a+64|0)+24>>2]=i;f[(a+64|0)+28>>2]=k;f[(a+64|0)+32>>2]=0;k=f[F+8>>2]|0;i=1;if(i){i=0;if(!k){d=c;e=j}else i=1}if(i)if(1){x=c;while(1){w=k;v=1;if(v){v=0;if(!(b[w+32>>0]|0)){e=f[w+8>>2]|0;f[(a+48|0)>>2]=f[(e+128|0)>>2];f[(a+48|0)+4>>2]=f[(e+128|0)+4>>2];f[(a+48|0)+8>>2]=f[(e+128|0)+8>>2];f[(a+48|0)+12>>2]=f[(e+128|0)+12>>2];d=Wna(e,f[f[(y+40|0)>>2]>>2]|0,1)|0;c=f[d>>2]|0;f[a>>2]=c;d=f[d+4>>2]|0;f[(a+4|0)>>2]=d;if(d){Npb(d);c=f[a>>2]|0}if(!c){boa(a+104|0,e,f[f[(y+40|0)>>2]>>2]|0,1,(f[(f[(y+16|0)>>2]|0)+384>>2]|0)!=0,f[(y+44|0)>>2]|0);c=f[(a+104|0)>>2]|0;t=f[((a+104|0)+4|0)>>2]|0;f[(a+104|0)>>2]=0;f[((a+104|0)+4|0)>>2]=0;f[a>>2]=c;d=f[(a+4|0)>>2]|0;f[(a+4|0)>>2]=t;if(d){Ppb(d);c=f[((a+104|0)+4|0)>>2]|0;if(c|0)Ppb(c);c=f[a>>2]|0}if(!c){o=x;q=j}else{H=c;K=94}}else{H=c;K=94}if((K|0)==94){K=0;c=f[H+184>>2]|0;if(!c)c=0;else c=f[c>>2]|0;N7a(211248,c)|0;WRa(a+64|0,a,e,1.0);e=f[w+20>>2]|0;c=1;if(c){c=0;if(!e){o=x;q=j}else c=1}if(c)if(1){l=x;d=j;s=e;while(1){t=s;c=1;if(c){c=0;if((f[(t+60|0)>>2]|0)==(f[(t+64|0)>>2]|0)){r=d;g=l}else c=1}if(c)if(1){c=d+1|0;r=f[(t+8|0)>>2]|0;if(!(f[(t+16|0)>>2]&1))b8a(211248,+n[f[(y+56|0)>>2]>>2],+n[f[(y+60|0)>>2]>>2])|0;else{L=1.0-+p[(J+16|0)>>3];b8a(211248,L*+n[t+20>>2],L*+n[t+24>>2])|0}if(!(f[(t+16|0)>>2]&4096))n8a(211248,519)|0;else c=(IRa(J,f[t+12>>2]|0,f[(y+64|0)>>2]|0)|0)+c|0;if(f[(t+16|0)>>2]&128|0){q=h[(J+77|0)>>0]|h[(J+77|0)+1>>0]<<8|128;b[(J+77|0)>>0]=q;b[(J+77|0)+1>>0]=q>>8}if((b[f[(y+68|0)>>2]>>0]|0)==2){i=f[(t+16|0)>>2]&128;o8a(211248,f[52868]|i>>>6|32)|0;h8a(211248,((i&255)>>>6|32)&255)|0;k8a(211248,7680,7680,7681)|0;i=1}else{i=f[(t+16|0)>>2]|0;i=ORa(f[(y+76|0)>>2]|0,(i&128|0)!=0,0,(i&16384|0)!=0,G)|0}d=f[(r+12|0)>>2]|0;if(d|0)J7a(211248,f[d>>2]|0)|0;e=t+44+(h[(J+76|0)>>0]<<3)|0;FRa(J,t+60|0,e,f[(y+92|0)>>2]|0);d=f[(t+16|0)>>2]|0;do if(!(d&32768))if(!(d&8388608)){f[(a+104|0)>>2]=r;f[((a+104|0)+4|0)>>2]=f[r+48>>2]&448;f[((a+104|0)+44|0)>>2]=0;break}else{q=!(+n[t+28>>2]>=0.0);f[(a+104|0)>>2]=r;d=f[r+48>>2]|0;f[((a+104|0)+4|0)>>2]=d&448;f[((a+104|0)+44|0)>>2]=0;if(q)break;else{I=d;K=117;break}}else{f[(a+104|0)>>2]=r;I=f[r+48>>2]|0;f[((a+104|0)+4|0)>>2]=I&448;f[((a+104|0)+44|0)>>2]=0;K=117}while(0);if((K|0)==117){K=0;f[((a+104|0)+4|0)>>2]=I&192}f[((a+104|0)+48|0)>>2]=f[e>>2];SRa(f[(y+96|0)>>2]|0,a,t+8|0,448,a+48|0,f[(y+16|0)>>2]|0);TRa(a+104|0,a);d=f[(r+28|0)>>2]|0;e=(f[(t+64|0)>>2]|0)-(f[(t+60|0)>>2]|0)>>2;g=(X(e,d)|0)+l|0;if(!(f[(r+12|0)>>2]|0))le(1,f[r+40>>2]|0,d|0,e|0);else oe(1,d|0,5123,0+(f[r+20>>2]|0)+(f[r+40>>2]<<1)|0,e|0);if(i){i=b[211372]|0;W7a(211248,0)|0;l=b[211368]|0;m=b[211369]|0;o=b[211370]|0;q=b[211371]|0;V7a(211248,0,0,0,0)|0;d=(f[(t+16|0)>>2]&16512|0)==128;e=f[52868]|0;if((b[f[(y+68|0)>>2]>>0]|0)==2){if(d){o8a(211248,e|17)|0;h8a(211248,17)|0}else{o8a(211248,e|16)|0;h8a(211248,16)|0}k8a(211248,7680,7681,7681)|0}else{if(d){o8a(211248,e|1)|0;h8a(211248,1)|0}else{o8a(211248,e|4)|0;h8a(211248,4)|0}k8a(211248,7680,7681,7681)|0}d=f[(r+28|0)>>2]|0;e=(f[(t+64|0)>>2]|0)-(f[(t+60|0)>>2]|0)>>2;g=(X(e,d)|0)+g|0;if(!(f[(r+12|0)>>2]|0))le(1,f[r+40>>2]|0,d|0,e|0);else oe(1,d|0,5123,0+(f[r+20>>2]|0)+(f[r+40>>2]<<1)|0,e|0);V7a(211248,l<<24>>24!=0,m<<24>>24!=0,o<<24>>24!=0,q<<24>>24!=0)|0;W7a(211248,i<<24>>24!=0)|0;c=c+1|0}pf(f[((a+104|0)+52|0)>>2]|0,0);pf(f[((a+104|0)+56|0)>>2]|0,0);pf(f[((a+104|0)+60|0)>>2]|0,0);e=f[((a+104|0)+44|0)>>2]|0;if(e|0){d=(a+104|0)+8|0;do{je(f[d>>2]|0);d=d+4|0}while((d|0)!=((a+104|0)+8+(e<<2)|0|0))}r=c}c=s;s=f[s>>2]|0;if((f[t+72>>2]|0)>>>0<=(f[f[(y+36|0)>>2]>>2]|0)>>>0){f[(a+100|0)>>2]=c;f[(a+104|0)>>2]=f[(a+100|0)>>2];URa(w+12|0,a+104|0)|0}if(!s){o=g;q=r;break}else{l=g;d=r}}}}c=f[(a+4|0)>>2]|0;if(c|0)Ppb(c);l=o;m=q}else v=1}if(v)if(1){l=x;m=j}c=k;k=f[k>>2]|0;if((f[w+36>>2]|0)>>>0<=(f[f[(y+36|0)>>2]>>2]|0)>>>0){f[(a+100|0)>>2]=c;f[(a+104|0)>>2]=f[(a+100|0)>>2];qQa(F,a+104|0)|0}if(!k){d=l;e=m;break}else{x=l;j=m}}}G=d;J=e;F=y+100|0;F=f[F>>2]|0;H=f[F>>2]|0;G=H+G|0;f[F>>2]=G;F=y+104|0;F=f[F>>2]|0;G=f[F>>2]|0;G=G+J|0;f[F>>2]=G;F=B<<24>>24!=0;G=C<<24>>24!=0;H=D<<24>>24!=0;I=E<<24>>24!=0;V7a(211248,F,G,H,I)|0;I=A<<24>>24!=0;W7a(211248,I)|0;a8a(211248,z)|0;u=a;f[a+1704>>2]=6;f[a+1708>>2]=J|0;break a}f[a+1632>>2]=K}function XTa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;y=f[a+192>>2]|0;z=f[a+208>>2]|0;A=f[a+216>>2]|0;c=f[a+400>>2]|0;j=f[a+424>>2]|0;D=f[a+1528>>2]|0;E=f[a+1584>>2]|0;a:{if(!(f[z+12>>2]|0)){B=c;D=j;C=y+88|0;C=f[C>>2]|0;A=f[C>>2]|0;B=A+B|0;f[C>>2]=B;C=y+92|0;C=f[C>>2]|0;B=f[C>>2]|0;B=B+D|0;f[C>>2]=B;u=a;f[a+1656>>2]=6;f[a+1660>>2]=D|0;break a}o8a(211248,f[52868]&-49|16)|0;k=f[f[y>>2]>>2]|0;F=f[y+8>>2]|0;s=f[y+12>>2]|0;t=f[(y+16|0)>>2]|0;v=f[y+20>>2]|0;w=f[y+24>>2]|0;x=f[f[y+28>>2]>>2]|0;i=f[f[y+32>>2]>>2]|0;f[(a+64|0)>>2]=f[D>>2];f[(a+64|0)+4>>2]=F;f[(a+64|0)+8>>2]=s;f[(a+64|0)+12>>2]=t;f[(a+64|0)+16>>2]=v;f[(a+64|0)+20>>2]=w;f[(a+64|0)+24>>2]=x;f[(a+64|0)+28>>2]=i;f[(a+64|0)+32>>2]=0;f[((a+64|0)+36|0)>>2]=k;k=f[z+8>>2]|0;i=1;if(i){i=0;if(!k){d=c;e=j}else i=1}if(i)if(1){x=c;while(1){w=k;v=1;if(v){v=0;if(!(b[w+32>>0]|0)){e=f[w+8>>2]|0;f[(a+48|0)>>2]=f[(e+128|0)>>2];f[(a+48|0)+4>>2]=f[(e+128|0)+4>>2];f[(a+48|0)+8>>2]=f[(e+128|0)+8>>2];f[(a+48|0)+12>>2]=f[(e+128|0)+12>>2];d=Xna(e,f[f[(y+40|0)>>2]>>2]|0,1)|0;c=f[d>>2]|0;f[a>>2]=c;d=f[d+4>>2]|0;f[(a+4|0)>>2]=d;if(d){Npb(d);c=f[a>>2]|0}if(!c){coa(a+112|0,e,f[f[(y+40|0)>>2]>>2]|0,1,b[f[(y+44|0)>>2]>>0]|0,b[f[(y+48|0)>>2]>>0]|0,(f[(f[(y+16|0)>>2]|0)+384>>2]|0)!=0,f[(y+52|0)>>2]|0);c=f[(a+112|0)>>2]|0;F=f[((a+112|0)+4|0)>>2]|0;f[(a+112|0)>>2]=0;f[((a+112|0)+4|0)>>2]=0;f[a>>2]=c;d=f[(a+4|0)>>2]|0;f[(a+4|0)>>2]=F;if(d){Ppb(d);c=f[((a+112|0)+4|0)>>2]|0;if(c|0)Ppb(c);c=f[a>>2]|0}if(!c){o=x;q=j}else{B=c;E=78}}else{B=c;E=78}if((E|0)==78){E=0;c=f[B+184>>2]|0;if(!c)c=0;else c=f[c>>2]|0;N7a(211248,c)|0;NRa(a+64|0,a,e);c=f[a>>2]|0;d=f[c+84>>2]|0;if((d|0)>-1)ff(d|0,0.0,0.0,0.0);c=f[c+132>>2]|0;if((c|0)>-1)$e(c|0,+(+n[((a+64|0)+36|0)>>2]));e=f[w+20>>2]|0;c=1;if(c){c=0;if(!e){o=x;q=j}else c=1}if(c)if(1){l=x;d=j;s=e;while(1){t=s;c=1;if(c){c=0;if((f[(t+60|0)>>2]|0)==(f[(t+64|0)>>2]|0)){r=d;g=l}else c=1}if(c)if(1){c=d+1|0;r=f[(t+8|0)>>2]|0;if(!(f[(t+16|0)>>2]&1))b8a(211248,+n[f[(y+56|0)>>2]>>2],+n[f[(y+60|0)>>2]>>2])|0;else{G=1.0-+p[(D+16|0)>>3];b8a(211248,G*+n[t+20>>2],G*+n[t+24>>2])|0}if(!(f[(t+16|0)>>2]&4096))n8a(211248,519)|0;else c=(IRa(D,f[t+12>>2]|0,f[(y+64|0)>>2]|0)|0)+c|0;d=f[(t+16|0)>>2]|0;if(d&128){d=h[(D+77|0)>>0]|h[(D+77|0)+1>>0]<<8|128;b[(D+77|0)>>0]=d;b[(D+77|0)+1>>0]=d>>8;d=f[(t+16|0)>>2]|0}i=ORa(f[(y+68|0)>>2]|0,(d&128|0)!=0,0,(d&16384|0)!=0,A)|0;d=f[(r+12|0)>>2]|0;if(d|0)J7a(211248,f[d>>2]|0)|0;e=t+44+(h[(D+76|0)>>0]<<3)|0;FRa(D,t+60|0,e,f[(y+80|0)>>2]|0);d=f[(t+16|0)>>2]|0;do if(!(d&32768))if(!(d&8388608)){f[(a+112|0)>>2]=r;f[((a+112|0)+4|0)>>2]=f[r+48>>2]&3584;f[((a+112|0)+44|0)>>2]=0;break}else{F=!(+n[t+28>>2]>=0.0);f[(a+112|0)>>2]=r;d=f[r+48>>2]|0;f[((a+112|0)+4|0)>>2]=d&3584;f[((a+112|0)+44|0)>>2]=0;if(F)break;else{C=d;E=102;break}}else{f[(a+112|0)>>2]=r;C=f[r+48>>2]|0;f[((a+112|0)+4|0)>>2]=C&3584;f[((a+112|0)+44|0)>>2]=0;E=102}while(0);if((E|0)==102){E=0;f[((a+112|0)+4|0)>>2]=C&1536}f[((a+112|0)+48|0)>>2]=f[e>>2];SRa(f[(y+84|0)>>2]|0,a,t+8|0,3584,a+48|0,f[(y+16|0)>>2]|0);TRa(a+112|0,a);d=f[(r+32|0)>>2]|0;e=(f[(t+64|0)>>2]|0)-(f[(t+60|0)>>2]|0)>>2;g=(X(e,d)|0)+l|0;if(!(f[(r+12|0)>>2]|0))le(0,f[r+44>>2]|0,d|0,e|0);else oe(0,d|0,5123,0+(f[r+20>>2]|0)+(f[r+44>>2]<<1)|0,e|0);if(i){i=b[211372]|0;W7a(211248,0)|0;l=b[211368]|0;m=b[211369]|0;o=b[211370]|0;q=b[211371]|0;V7a(211248,0,0,0,0)|0;d=f[52868]|0;if((f[(t+16|0)>>2]&16512|0)==128){o8a(211248,d|1)|0;h8a(211248,1)|0}else{o8a(211248,d|4)|0;h8a(211248,4)|0}k8a(211248,7680,7681,7681)|0;d=f[(r+32|0)>>2]|0;e=(f[(t+64|0)>>2]|0)-(f[(t+60|0)>>2]|0)>>2;g=(X(e,d)|0)+g|0;if(!(f[(r+12|0)>>2]|0))le(0,f[r+44>>2]|0,d|0,e|0);else oe(0,d|0,5123,0+(f[r+20>>2]|0)+(f[r+44>>2]<<1)|0,e|0);V7a(211248,l<<24>>24!=0,m<<24>>24!=0,o<<24>>24!=0,q<<24>>24!=0)|0;W7a(211248,i<<24>>24!=0)|0;c=c+1|0}pf(f[((a+112|0)+52|0)>>2]|0,0);pf(f[((a+112|0)+56|0)>>2]|0,0);pf(f[((a+112|0)+60|0)>>2]|0,0);e=f[((a+112|0)+44|0)>>2]|0;if(e|0){d=(a+112|0)+8|0;do{je(f[d>>2]|0);d=d+4|0}while((d|0)!=((a+112|0)+8+(e<<2)|0|0))}r=c}c=s;s=f[s>>2]|0;if((f[t+72>>2]|0)>>>0<=(f[f[(y+36|0)>>2]>>2]|0)>>>0){f[(a+104|0)>>2]=c;f[(a+112|0)>>2]=f[(a+104|0)>>2];URa(w+12|0,a+112|0)|0}if(!s){o=g;q=r;break}else{l=g;d=r}}}}c=f[(a+4|0)>>2]|0;if(c|0)Ppb(c);l=o;m=q}else v=1}if(v)if(1){l=x;m=j}c=k;k=f[k>>2]|0;if((f[w+36>>2]|0)>>>0<=(f[f[(y+36|0)>>2]>>2]|0)>>>0){f[(a+104|0)>>2]=c;f[(a+112|0)>>2]=f[(a+104|0)>>2];qQa(z,a+112|0)|0}if(!k){d=l;e=m;break}else{x=l;j=m}}}C=d;F=e;D=y+88|0;D=f[D>>2]|0;B=f[D>>2]|0;C=B+C|0;f[D>>2]=C;D=y+92|0;D=f[D>>2]|0;C=f[D>>2]|0;C=C+F|0;f[D>>2]=C;u=a;f[a+1656>>2]=6;f[a+1660>>2]=F|0;break a}f[a+1584>>2]=E}
function nMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+1632|0;k=0;a:while(1){d=b;i=b+-8|0;e=b+-16|0;j=b+-4|0;c=a;while(1){l=c;f[m+32>>2]=c;f[m+136>>2]=b;f[m+168>>2]=l;f[m+288>>2]=g;f[m+504>>2]=d;f[m+704>>2]=i;f[m+920>>2]=e;f[m+1096>>2]=j;f[m+1464>>2]=h;f[m+1560>>2]=k;f[m+1576>>2]=0;f[m+1580>>2]=0;cQa(m);c=f[m+32>>2]|0;l=f[m+168>>2]|0;g=f[m+288>>2]|0;h=f[m+1464>>2]|0;k=f[m+1560>>2]|0;G=f[m+1576>>2]|0;D=f[m+1580>>2]|0;H=+n[m+1580>>2];f[m+1576>>2]=0;f[m+1580>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break a}if((G|0)==3)continue}if((k|0)==133){k=0;nMa(g+8|0,b);a=l;b=g;continue}else if((k|0)==134){k=0;if(h){k=135;break}else{a=l;b=g;continue}}}a=1;if(a)if((k|0)==5){b=f[i>>2]|0;a=f[l>>2]|0;if((b|0)==(a|0)){if((f[j>>2]|0)>=(f[l+4>>2]|0)){u=m;return}}else if((b|0)>=(a|0)){u=m;return}k=l;j=f[k>>2]|0;k=f[k+4>>2]|0;h=f[i+4>>2]|0;f[l>>2]=f[i>>2];f[l+4>>2]=h;f[i>>2]=j;f[i+4>>2]=k;u=m;return}else if((k|0)==9){d=l+8|0;c=f[d>>2]|0;a=f[l>>2]|0;if((c|0)==(a|0))b=(f[l+12>>2]|0)<(f[l+4>>2]|0);else b=(c|0)<(a|0);a=f[i>>2]|0;if((a|0)==(c|0))a=(f[j>>2]|0)<(f[l+12>>2]|0);else a=(a|0)<(c|0);if(!b){if(!a){u=m;return}b=f[d>>2]|0;a=f[d+4>>2]|0;k=f[i+4>>2]|0;f[d>>2]=f[i>>2];f[d+4>>2]=k;f[i>>2]=b;f[i+4>>2]=a;a=f[d>>2]|0;b=f[l>>2]|0;if((a|0)==(b|0)){if((f[l+12>>2]|0)>=(f[l+4>>2]|0)){u=m;return}}else if((a|0)>=(b|0)){u=m;return}k=l;j=f[k>>2]|0;k=f[k+4>>2]|0;i=f[d+4>>2]|0;f[l>>2]=f[d>>2];f[l+4>>2]=i;f[d>>2]=j;f[d+4>>2]=k;u=m;return}c=l;b=f[c>>2]|0;c=f[c+4>>2]|0;if(a){k=f[i+4>>2]|0;f[l>>2]=f[i>>2];f[l+4>>2]=k;f[i>>2]=b;f[i+4>>2]=c;u=m;return}k=f[d+4>>2]|0;a=l;f[a>>2]=f[d>>2];f[a+4>>2]=k;f[d>>2]=b;f[d+4>>2]=c;a=f[i>>2]|0;if((a|0)==(b|0)){if((f[j>>2]|0)>=(c|0)){u=m;return}}else if((a|0)>=(b|0)){u=m;return}l=f[i+4>>2]|0;f[d>>2]=f[i>>2];f[d+4>>2]=l;f[i>>2]=b;f[i+4>>2]=c;u=m;return}else if((k|0)==27){oMa(l,l+8|0,l+16|0,i)|0;u=m;return}else if((k|0)==28){pMa(l,l+8|0,l+16|0,l+24|0,i)|0;u=m;return}else a=1;if(a)if((k|0)==30){i=l+16|0;h=l+8|0;a=f[h>>2]|0;g=f[l>>2]|0;if((a|0)==(g|0))c=(f[l+12>>2]|0)<(f[l+4>>2]|0);else c=(a|0)<(g|0);d=f[i>>2]|0;if((d|0)==(a|0))e=(f[l+20>>2]|0)<(f[l+12>>2]|0);else e=(d|0)<(a|0);do if(c){c=l;a=f[c>>2]|0;c=f[c+4>>2]|0;if(e){j=f[i+4>>2]|0;d=l;f[d>>2]=f[i>>2];f[d+4>>2]=j;f[i>>2]=a;f[i+4>>2]=c;d=a;break}g=f[h+4>>2]|0;j=l;f[j>>2]=f[h>>2];f[j+4>>2]=g;f[h>>2]=a;f[h+4>>2]=c;if((d|0)==(a|0)){if((f[l+20>>2]|0)>=(c|0))break}else if((d|0)>=(a|0))break;d=f[i+4>>2]|0;f[h>>2]=f[i>>2];f[h+4>>2]=d;f[i>>2]=a;f[i+4>>2]=c;d=a}else if(e){d=f[h>>2]|0;j=f[h+4>>2]|0;a=f[i>>2]|0;c=f[i+4>>2]|0;f[h>>2]=a;f[h+4>>2]=c;f[i>>2]=d;f[i+4>>2]=j;if((g|0)==(a|0)){if((f[l+4>>2]|0)<=(c|0))break}else if((g|0)<=(a|0))break;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;e=l;f[e>>2]=a;f[e+4>>2]=c;f[h>>2]=g;f[h+4>>2]=j}while(0);a=l+24|0;if((a|0)==(b|0)){u=m;return}else{h=a;a=i}while(1){c=f[h>>2]|0;if((c|0)==(d|0)){if((f[h+4>>2]|0)<(f[a+4>>2]|0))k=52}else if((c|0)<(d|0))k=52;if((k|0)==52){k=0;g=h;e=f[g>>2]|0;g=f[g+4>>2]|0;d=a;i=f[d+4>>2]|0;j=h;f[j>>2]=f[d>>2];f[j+4>>2]=i;b:do if((a|0)!=(l|0))while(1){c=a+-8|0;d=f[c>>2]|0;if((d|0)==(e|0)){if((f[a+-4>>2]|0)<=(g|0))break b}else if((d|0)<=(e|0))break b;i=f[c+4>>2]|0;j=a;f[j>>2]=f[c>>2];f[j+4>>2]=i;if((c|0)==(l|0)){a=c;break}else a=c}while(0);j=a;f[j>>2]=e;f[j+4>>2]=g}a=h+8|0;if((a|0)==(b|0))break;d=f[h>>2]|0;j=h;h=a;a=j}u=m;return}else if((k|0)==135)if(1){u=m;return}u=m}function oMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if((h|0)==(e|0))e=(f[b+4>>2]|0)<(f[a+4>>2]|0);else e=(h|0)<(e|0);g=f[c>>2]|0;if((g|0)==(h|0))h=(f[c+4>>2]|0)<(f[b+4>>2]|0);else h=(g|0)<(h|0);do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if((g|0)==(i|0)){if((f[c+4>>2]|0)>=(e|0)){j=1;break}}else if((g|0)>=(i|0)){j=1;break}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if((e|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){j=1;break}}else if((e|0)>=(h|0)){j=1;break}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if((e|0)==(g|0)){if((f[d+4>>2]|0)>=(f[c+4>>2]|0)){b=j;return b|0}}else if((e|0)>=(g|0)){b=j;return b|0}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if((g|0)==(h|0)){if((f[c+4>>2]|0)>=(f[b+4>>2]|0)){k=e;return k|0}}else if((g|0)>=(h|0)){k=e;return k|0}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if((g|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){k=e;return k|0}}else if((g|0)>=(h|0)){k=e;return k|0}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function pMa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=oMa(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if((g|0)==(h|0)){if((f[e+4>>2]|0)>=(f[d+4>>2]|0))return i|0}else if((g|0)>=(h|0))return i|0;g=d;h=f[g>>2]|0;g=f[g+4>>2]|0;l=e;k=f[l+4>>2]|0;j=d;f[j>>2]=f[l>>2];f[j+4>>2]=k;f[e>>2]=h;f[e+4>>2]=g;e=i+1|0;g=f[d>>2]|0;h=f[c>>2]|0;if((g|0)==(h|0)){if((f[d+4>>2]|0)>=(f[c+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;l=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=l;e=d;f[e>>2]=h;f[e+4>>2]=g;e=i+2|0;g=f[c>>2]|0;h=f[b>>2]|0;if((g|0)==(h|0)){if((f[c+4>>2]|0)>=(f[b+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;k=c;l=f[k+4>>2]|0;e=b;f[e>>2]=f[k>>2];f[e+4>>2]=l;e=c;f[e>>2]=h;f[e+4>>2]=g;e=i+3|0;g=f[b>>2]|0;h=f[a>>2]|0;if((g|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function qMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if((d|0)==(e|0)){if((f[b+-4>>2]|0)>=(f[a+4>>2]|0)){b=1;return b|0}}else if((d|0)>=(e|0)){b=1;return b|0}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if((e|0)==(c|0))d=(f[a+12>>2]|0)<(f[a+4>>2]|0);else d=(e|0)<(c|0);c=f[g>>2]|0;if((c|0)==(e|0))c=(f[b+-4>>2]|0)<(f[a+12>>2]|0);else c=(c|0)<(e|0);if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if((c|0)==(d|0)){if((f[a+12>>2]|0)>=(f[a+4>>2]|0)){b=1;return b|0}}else if((c|0)>=(d|0)){b=1;return b|0}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if((c|0)==(d|0)){if((f[b+-4>>2]|0)>=(e|0)){b=1;return b|0}}else if((c|0)>=(d|0)){b=1;return b|0}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{oMa(a,a+8|0,a+16|0,b+-8|0)|0;b=1;return b|0}case 5:{pMa(a,a+8|0,a+16|0,a+24|0,b+-8|0)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if((c|0)==(i|0))e=(f[a+12>>2]|0)<(f[a+4>>2]|0);else e=(c|0)<(i|0);g=f[d>>2]|0;if((g|0)==(c|0))h=(f[a+20>>2]|0)<(f[a+12>>2]|0);else h=(g|0)<(c|0);do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if((g|0)==(c|0)){if((f[a+20>>2]|0)>=(e|0))break}else if((g|0)>=(c|0))break;i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if((i|0)==(c|0)){if((f[a+4>>2]|0)<=(e|0))break}else if((i|0)<=(c|0))break;i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if((e|0)==(g|0)){if((f[k+4>>2]|0)<(f[d+4>>2]|0))l=48}else if((e|0)<(g|0))l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if((e|0)==(i|0)){if((f[h+-4>>2]|0)<=(j|0)){d=g;break b}}else if((e|0)<=(i|0)){d=g;break b}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function rMa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0.0,J=0.0;H=u;u=u+512|0;F=H+464|0;G=H;l=Wpb(48)|0;f[l>>2]=f[c>>2];f[l+4>>2]=f[c+4>>2];f[l+8>>2]=f[c+8>>2];f[l+12>>2]=f[c+12>>2];h=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;b[h+16>>0]=0;h=f[52767]|0;f[52767]=h+1;f[l+44>>2]=h;f[a>>2]=l;h=Wpb(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[l+24>>2]=h;h=Wpb(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;l=l+28|0;n=f[l>>2]|0;f[l>>2]=h;if(n|0){d=f[n>>2]|0;if(d|0){l=n+4|0;e=f[l>>2]|0;if((e|0)!=(d|0)){do{g=e+-12|0;f[l>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-24-h|0)>>>0)/24|0)*24|0);Zpb(h);e=f[l>>2]|0}}while((e|0)!=(d|0));d=f[n>>2]|0}Zpb(d)}Zpb(n)}l=f[a>>2]|0;n=Wpb(12)|0;_1a(n,c);c=l+20|0;d=f[c>>2]|0;f[c>>2]=n;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-8-e|0)>>>3)<<3);Zpb(e)}Zpb(d)}B=+(f[l>>2]|0);C=+(f[l+4>>2]|0);D=+(f[l+8>>2]|0);E=+(f[l+12>>2]|0);i=B-B;j=C-E;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));z=i*i;A=j*j;if(!(q<=+L(+(z+(A+1.0)))*+L(+(z+(A+0.0)))*2.220446049250313e-16)){A=k/q;z=m/q;y=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;ZLa(G,F,16)|0;A=+p[G+80>>3];z=+p[G+88>>3];y=+p[G+96>>3]}i=D-D;j=E-C;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));w=i*i;x=j*j;if(!(q<=+L(+(w+(x+1.0)))*+L(+(w+(x+0.0)))*2.220446049250313e-16)){x=k/q;w=m/q;v=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;ZLa(G,F,16)|0;x=+p[G+80>>3];w=+p[G+88>>3];v=+p[G+96>>3]}i=D-B;j=C-C;k=j+j*0.0;m=-i-i*0.0;o=j*i;o=o-o;q=+L(+(k*k+(o*o+m*m)));s=i*i;t=j*j;if(!(q<=+L(+(s+(t+1.0)))*+L(+(s+(t+0.0)))*2.220446049250313e-16)){t=k/q;s=m/q;r=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;ZLa(G,F,16)|0;t=+p[G+80>>3];s=+p[G+88>>3];r=+p[G+96>>3]}i=B-D;j=E-E;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));J=i*i;I=j*j;if(!(q<=+L(+(J+(I+1.0)))*+L(+(J+(I+0.0)))*2.220446049250313e-16)){k=k/q;j=m/q;i=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;ZLa(G,F,16)|0;k=+p[G+80>>3];j=+p[G+88>>3];i=+p[G+96>>3]}F=Wpb(12)|0;d=Wpb(128)|0;f[F>>2]=d;G=d+128|0;f[F+8>>2]=G;p[d>>3]=A;p[d+8>>3]=z;p[d+16>>3]=y;p[d+24>>3]=-(A*B+(y*0.0+z*E));p[d+32>>3]=x;p[d+40>>3]=w;p[d+48>>3]=v;p[d+56>>3]=-(x*D+(v*0.0+w*C));p[d+64>>3]=t;p[d+72>>3]=s;p[d+80>>3]=r;p[d+88>>3]=-(t*B+(r*0.0+s*C));p[d+96>>3]=k;p[d+104>>3]=j;p[d+112>>3]=i;p[d+120>>3]=-(k*D+(i*0.0+j*E));f[F+4>>2]=G;G=l+16|0;d=f[G>>2]|0;f[G>>2]=F;if(!d){u=H;return}e=f[d>>2]|0;if(e|0){g=d+4|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-32-e|0)>>>5)<<5);Zpb(e)}Zpb(d);u=H;return}function sMa(a,c){a=a|0;c=c|0;var d=0,e=0;d=Wpb(48)|0;f[d>>2]=f[a+4>>2];f[d+4>>2]=f[a+8>>2];f[d+8>>2]=f[a+12>>2];f[d+12>>2]=f[a+16>>2];e=d+16|0;f[d+36>>2]=0;f[d+40>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;e=f[52767]|0;f[52767]=e+1;f[d+44>>2]=e;e=f[a>>2]|0;f[a>>2]=d;if(e){KJa(e);Zpb(e);d=f[a>>2]|0}f[a+20>>2]=c;c=a+24|0;f[c>>2]=(f[c>>2]|0)+1;tMa(a,d,0);return}function tMa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;i=r+24|0;k=r+8|0;l=r;j=f[c>>2]|0;e=f[c+4>>2]|0;f[i>>2]=j;f[i+4>>2]=e;m=f[c+8>>2]|0;n=f[c+12>>2]|0;f[k+8>>2]=m;f[k+12>>2]=n;if(!(d&1)){o=((m-j|0)/2|0)+j|0;g=o;h=n;p=e}else{p=((n-e|0)/2|0)+e|0;g=m;h=p;o=j}f[i+8>>2]=g;f[i+12>>2]=h;f[k>>2]=o;f[k+4>>2]=p;q=d+1|0;if((q|0)==(f[a+20>>2]|0)){rMa(l,i);q=c+36|0;p=f[l>>2]|0;f[l>>2]=0;d=f[q>>2]|0;f[q>>2]=p;if(d|0){KJa(d);Zpb(d)}rMa(l,k);q=c+40|0;c=f[l>>2]|0;f[l>>2]=0;d=f[q>>2]|0;f[q>>2]=c;if(d|0){KJa(d);Zpb(d)}a=a+24|0;f[a>>2]=(f[a>>2]|0)+2;u=r;return}else{l=Wpb(48)|0;f[l>>2]=j;f[l+4>>2]=e;f[l+8>>2]=g;f[l+12>>2]=h;g=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;b[g+16>>0]=0;g=f[52767]|0;d=g+1|0;f[52767]=d;f[l+44>>2]=g;g=c+36|0;e=f[g>>2]|0;f[g>>2]=l;if(e){KJa(e);Zpb(e);d=f[52767]|0}l=Wpb(48)|0;f[l>>2]=o;f[l+4>>2]=p;f[l+8>>2]=m;f[l+12>>2]=n;e=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;f[52767]=d+1;f[l+44>>2]=d;d=c+40|0;e=f[d>>2]|0;f[d>>2]=l;if(e|0){KJa(e);Zpb(e)}c=a+24|0;f[c>>2]=(f[c>>2]|0)+2;tMa(a,f[g>>2]|0,q);tMa(a,f[d>>2]|0,q);u=r;return}}function uMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+176|0;d=e+16|0;g=e;N_a(d,0);Y1a(g,b);a=vMa(a,f[a>>2]|0,b,g,d)|0;if(a){PJa(d,32500);g=d+76|0;EZa(g);u=e;return a|0}O_a(d,1,c,1,1)|0;S_a(c,1);PJa(d,32500);g=d+76|0;EZa(g);u=e;return a|0}function vMa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0;v=u;u=u+192|0;q=v+36|0;t=v+24|0;s=v+12|0;n=v;l=f[c+36>>2]|0;if(l|0){if(!(b[l+32>>0]|0))if((f[e+8>>2]|0)<(f[l>>2]|0))k=0;else if((f[e>>2]|0)>(f[l+8>>2]|0))k=0;else if((f[e+12>>2]|0)<(f[l+4>>2]|0))k=0;else k=(f[e+4>>2]|0)<=(f[l+12>>2]|0);else if(!(b[(f[c+40>>2]|0)+32>>0]|0))k=0;else{h=c+32|0;if(b[h>>0]|0){t=1;u=v;return t|0}b[h>>0]=1;t=1;u=v;return t|0}j=c+40|0;h=f[j>>2]|0;if(!(b[h+32>>0]|0))if((f[e+8>>2]|0)<(f[h>>2]|0))i=0;else if((f[e>>2]|0)>(f[h+8>>2]|0))i=0;else if((f[e+12>>2]|0)<(f[h+4>>2]|0))i=0;else i=(f[e+4>>2]|0)<=(f[h+12>>2]|0);else i=0;if(k)h=vMa(a,l,d,e,g)|0;else h=1;if(!i){t=h;u=v;return t|0}t=h&(vMa(a,f[j>>2]|0,d,e,g)|0);u=v;return t|0}g2a(t,d);f[s>>2]=0;r=s+4|0;f[r>>2]=0;f[s+8>>2]=0;o=c+20|0;l=f[o>>2]|0;N_a(q,0);h=q+76|0;GZa(h,l,1,1)|0;GZa(h,t,0,1)|0;f[n>>2]=0;l=n+4|0;f[l>>2]=0;f[n+8>>2]=0;O_a(q,0,n,1,1)|0;S_a(n,1);PJa(q,32500);EZa(h);h=f[s>>2]|0;if(!h)h=s+8|0;else{i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);Zpb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}Zpb(h);h=s+8|0;f[h>>2]=0;f[r>>2]=0;f[s>>2]=0}f[s>>2]=f[n>>2];f[r>>2]=f[l>>2];f[h>>2]=f[n+8>>2];m=c+24|0;l=f[m>>2]|0;N_a(q,0);h=q+76|0;M_a(h,l,1,1)|0;M_a(h,s,0,1)|0;f[n>>2]=0;l=n+4|0;f[l>>2]=0;f[n+8>>2]=0;O_a(q,2,n,1,1)|0;S_a(n,1);PJa(q,32500);EZa(h);h=f[s>>2]|0;if(!h)h=s+8|0;else{i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);Zpb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}Zpb(h);h=s+8|0;f[h>>2]=0;f[r>>2]=0;f[s>>2]=0}a=f[n>>2]|0;f[s>>2]=a;e=f[l>>2]|0;f[r>>2]=e;f[h>>2]=f[n+8>>2];h=a;if((h|0)==(e|0))l=1;else{a=f[m>>2]|0;N_a(q,0);e=q+76|0;M_a(e,a,0,1)|0;M_a(e,s,0,1)|0;f[n>>2]=0;a=n+4|0;f[a>>2]=0;f[n+8>>2]=0;O_a(q,1,n,1,1)|0;S_a(n,1);PJa(q,32500);EZa(e);e=f[m>>2]|0;i=f[e>>2]|0;if(!i){h=e+4|0;i=e+8|0}else{h=e+4|0;j=f[h>>2]|0;if((j|0)!=(i|0)){do{k=j+-12|0;f[h>>2]=k;l=f[k>>2]|0;if(!l)j=k;else{j=j+-8|0;k=f[j>>2]|0;if((k|0)!=(l|0))f[j>>2]=k+(~((k+-8-l|0)>>>3)<<3);Zpb(l);j=f[h>>2]|0}}while((j|0)!=(i|0));i=f[e>>2]|0}Zpb(i);i=e+8|0;f[i>>2]=0;f[h>>2]=0;f[e>>2]=0}f[e>>2]=f[n>>2];f[h>>2]=f[a>>2];f[i>>2]=f[n+8>>2];M_a(g+76|0,s,0,1)|0;e=f[d>>2]|0;E=+(f[e>>2]|0);D=+(f[e+4>>2]|0);C=+(f[e+8>>2]|0);B=+(f[e+12>>2]|0);A=+(f[e+16>>2]|0);z=+(f[e+20>>2]|0);y=+(f[e+24>>2]|0);x=+(f[e+28>>2]|0);w=+(f[e+32>>2]|0);e=q+4|0;a=Wpb(72)|0;f[q>>2]=a;h=a+72|0;f[q+8>>2]=h;p[a>>3]=E;p[a+8>>3]=D;p[a+16>>3]=C;p[a+24>>3]=B;p[a+32>>3]=A;p[a+40>>3]=z;p[a+48>>3]=y;p[a+56>>3]=x;p[a+64>>3]=w;f[e>>2]=h;h=f[c+28>>2]|0;a=h+4|0;k=f[a>>2]|0;if((k|0)==(f[h+8>>2]|0))wMa(h,q);else{f[k>>2]=0;l=k+4|0;f[l>>2]=0;f[k+8>>2]=0;h=(f[e>>2]|0)-(f[q>>2]|0)|0;j=(h|0)/24|0;if(h|0){if(j>>>0>178956970)fob(k);i=Wpb(h)|0;f[l>>2]=i;f[k>>2]=i;f[k+8>>2]=i+(j*24|0);h=f[q>>2]|0;j=f[e>>2]|0;if((h|0)!=(j|0)){do{p[i>>3]=+p[h>>3];p[i+8>>3]=+p[h+8>>3];p[i+16>>3]=+p[h+16>>3];h=h+24|0;i=i+24|0}while((h|0)!=(j|0));f[l>>2]=i}}f[a>>2]=(f[a>>2]|0)+12}if(kMa(f[o>>2]|0,f[m>>2]|0)|0)b[c+32>>0]=1;h=f[q>>2]|0;if(h|0){i=f[e>>2]|0;if((i|0)!=(h|0))f[e>>2]=i+(~(((i+-24-h|0)>>>0)/24|0)*24|0);Zpb(h)}l=0;h=f[s>>2]|0}if(h|0){i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);Zpb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}Zpb(h)}j=f[t>>2]|0;if(j|0){h=t+4|0;i=f[h>>2]|0;if((i|0)!=(j|0))f[h>>2]=i+(~((i+-8-j|0)>>>3)<<3);Zpb(j)}t=l;u=v;return t|0}function wMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;e=f[r>>2]|0;h=f[a>>2]|0;m=(e-h|0)/12|0;c=m+1|0;n=h;if(c>>>0>357913941)fob(a);q=a+8|0;o=((f[q>>2]|0)-h|0)/12|0;g=o<<1;g=o>>>0<178956970?(g>>>0<c>>>0?c:g):357913941;do if(!g)k=0;else if(g>>>0>357913941)ud();else{k=Wpb(g*12|0)|0;break}while(0);d=k+(m*12|0)|0;c=d;o=k+(g*12|0)|0;f[d>>2]=0;l=k+(m*12|0)+4|0;f[l>>2]=0;f[k+(m*12|0)+8>>2]=0;j=f[b+4>>2]|0;b=f[b>>2]|0;g=j-b|0;i=(g|0)/24|0;if(g|0){if(i>>>0>178956970)fob(d);g=Wpb(g)|0;f[l>>2]=g;f[d>>2]=g;f[k+(m*12|0)+8>>2]=g+(i*24|0);if((b|0)!=(j|0)){do{p[g>>3]=+p[b>>3];p[g+8>>3]=+p[b+8>>3];p[g+16>>3]=+p[b+16>>3];b=b+24|0;g=g+24|0}while((b|0)!=(j|0));f[l>>2]=g}}g=d+12|0;if((e|0)!=(n|0)){do{m=d+-12|0;l=e;e=e+-12|0;f[m>>2]=0;k=d+-8|0;f[k>>2]=0;f[d+-4>>2]=0;f[m>>2]=f[e>>2];m=l+-8|0;f[k>>2]=f[m>>2];l=l+-4|0;f[d+-4>>2]=f[l>>2];f[l>>2]=0;f[m>>2]=0;f[e>>2]=0;d=c+-12|0;c=d}while((e|0)!=(n|0));h=f[a>>2]|0}f[a>>2]=c;c=f[r>>2]|0;f[r>>2]=g;f[q>>2]=o;b=h;if((c|0)!=(b|0)){e=c;do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~(((d+-24-g|0)>>>0)/24|0)*24|0);Zpb(g)}}while((e|0)!=(b|0))}if(!h)return;Zpb(h);return}function xMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;Y1a(e,b);c=yMa(a,f[a>>2]|0,b,e,c)|0;u=d;return c|0}function yMa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0;L=u;u=u+320|0;C=L+208|0;s=L+312|0;r=L+300|0;g=L+288|0;h=L+176|0;K=L+276|0;H=L+264|0;E=L+252|0;t=L+32|0;v=L;w=L+248|0;x=L+244|0;y=L+240|0;k=f[a+84>>2]|0;z=+p[k+48>>3];A=+p[k+56>>3];k=f[b+36>>2]|0;if(k|0){h=f[d+8>>2]|0;if((h|0)<(f[k>>2]|0))j=0;else if((f[d>>2]|0)>(f[k+8>>2]|0))j=0;else if((f[d+12>>2]|0)<(f[k+4>>2]|0))j=0;else j=(f[d+4>>2]|0)<=(f[k+12>>2]|0);i=b+40|0;g=f[i>>2]|0;if((h|0)<(f[g>>2]|0))h=0;else if((f[d>>2]|0)>(f[g+8>>2]|0))h=0;else if((f[d+12>>2]|0)<(f[g+4>>2]|0))h=0;else h=(f[d+4>>2]|0)<=(f[g+12>>2]|0);if(j)g=yMa(a,k,c,d,e)|0;else g=1;if(!h){K=g;u=L;return K|0}K=g&(yMa(a,f[i>>2]|0,c,d,e)|0);u=L;return K|0}I=f[c>>2]|0;R=+(f[I>>2]|0);Q=+(f[I+4>>2]|0);P=+(f[I+8>>2]|0);M=+(f[I+12>>2]|0);N=+(f[I+16>>2]|0);O=+(f[I+20>>2]|0);I=g+4|0;J=Wpb(48)|0;f[g>>2]=J;G=J+48|0;f[g+8>>2]=G;p[J>>3]=R;p[J+8>>3]=Q;p[J+16>>3]=P;p[J+24>>3]=M;p[J+32>>3]=N;p[J+40>>3]=O;f[I>>2]=G;O=+(f[b+4>>2]|0);N=+(f[b+8>>2]|0);M=+(f[b+12>>2]|0);p[h>>3]=+(f[b>>2]|0);p[h+8>>3]=O;p[h+16>>3]=N;p[h+24>>3]=M;f[K>>2]=0;G=K+4|0;f[G>>2]=0;f[K+8>>2]=0;if(c2a(J,f[b+16>>2]|0,h,K)|0)i=1;else{f[H>>2]=0;F=H+4|0;f[F>>2]=0;f[H+8>>2]=0;wMa(H,K);f[E>>2]=0;D=E+4|0;f[D>>2]=0;f[E+8>>2]=0;m=f[b+28>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;a:do if((g|0)==(m|0)){g=f[H>>2]|0;n=f[F>>2]|0;B=42}else{n=r+4|0;o=r+8|0;q=E+8|0;l=g;b:while(1){Z1a(v,f[l>>2]|0,3);g=f[F>>2]|0;h=f[H>>2]|0;if((g|0)!=(h|0)){j=0;do{b=h+(j*12|0)|0;Z1a(C,f[b>>2]|0,2);if(i2a(f[l>>2]|0,v,f[b>>2]|0,C,t,s,A,z)|0){if(f[s>>2]&2147483647|0){b=0;do{M=+p[t+(b*24|0)>>3];N=+p[t+(b*24|0)+8>>3];O=+p[t+(b*24|0)+16>>3];d=b|1;P=+p[t+(d*24|0)>>3];Q=+p[t+(d*24|0)+8>>3];R=+p[t+(d*24|0)+16>>3];d=Wpb(48)|0;f[r>>2]=d;h=d+48|0;f[o>>2]=h;p[d>>3]=M;p[d+8>>3]=N;p[d+16>>3]=O;p[d+24>>3]=P;p[d+32>>3]=Q;p[d+40>>3]=R;f[n>>2]=h;h=f[D>>2]|0;if((h|0)==(f[q>>2]|0)){wMa(E,r);g=f[r>>2]|0}else{f[h>>2]=0;d=h+4|0;f[d>>2]=0;f[h+8>>2]=0;g=f[r>>2]|0;k=(f[n>>2]|0)-g|0;a=(k|0)/24|0;if(k){if(a>>>0>178956970)break b;c=Wpb(k)|0;f[d>>2]=c;f[h>>2]=c;f[h+8>>2]=c+(a*24|0);g=f[r>>2]|0;a=f[n>>2]|0;if((g|0)!=(a|0)){k=g;h=c;do{p[h>>3]=+p[k>>3];p[h+8>>3]=+p[k+8>>3];p[h+16>>3]=+p[k+16>>3];k=k+24|0;h=h+24|0}while((k|0)!=(a|0));f[d>>2]=h;h=f[D>>2]|0}}f[D>>2]=h+12}if(g|0){h=f[n>>2]|0;if((h|0)!=(g|0))f[n>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);Zpb(g)}b=b+2|0}while(b>>>0<f[s>>2]<<1>>>0)}b=f[H>>2]|0;d=b+(j*12|0)|0;h=f[F>>2]|0;c=h+-12|0;a=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=a;c=b+(j*12|0)+4|0;a=h+-8|0;d=f[c>>2]|0;f[c>>2]=f[a>>2];f[a>>2]=d;b=b+(j*12|0)+8|0;h=h+-4|0;a=f[b>>2]|0;f[b>>2]=f[h>>2];f[h>>2]=a;h=f[F>>2]|0;a=h+-12|0;while(1){g=h+-12|0;f[F>>2]=g;k=f[g>>2]|0;if(k){g=h+-8|0;h=f[g>>2]|0;if((h|0)!=(k|0))f[g>>2]=h+(~(((h+-24-k|0)>>>0)/24|0)*24|0);Zpb(k);g=f[F>>2]|0}if((g|0)==(a|0))break;else h=g}}else{j=j+1|0;g=f[F>>2]|0}h=f[H>>2]|0}while(j>>>0<((g-h|0)/12|0)>>>0)}h=f[E>>2]|0;j=f[D>>2]|0;if((h|0)!=(j|0)){f[w>>2]=g;f[x>>2]=h;f[y>>2]=j;f[r>>2]=f[w>>2];f[s>>2]=f[x>>2];f[C>>2]=f[y>>2];zMa(H,r,s,C)|0;k=f[E>>2]|0;g=f[D>>2]|0;if((g|0)!=(k|0))do{h=g+-12|0;f[D>>2]=h;j=f[h>>2]|0;if(!j)g=h;else{g=g+-8|0;h=f[g>>2]|0;if((h|0)!=(j|0))f[g>>2]=h+(~(((h+-24-j|0)>>>0)/24|0)*24|0);Zpb(j);g=f[D>>2]|0}}while((g|0)!=(k|0))}g=f[H>>2]|0;h=f[F>>2]|0;l=l+12|0;if((g|0)==(h|0)){i=1;break a}if((l|0)==(m|0)){n=h;B=42;break a}}fob(h)}while(0);c:do if((B|0)==42)if((g|0)==(n|0))i=0;else{b=e+4|0;l=e+8|0;m=C+4|0;d=g;while(1){LLa(C,d);j=f[b>>2]|0;if((j|0)==(f[l>>2]|0)){AMa(e,C);g=f[C>>2]|0}else{f[j>>2]=0;c=j+4|0;f[c>>2]=0;f[j+8>>2]=0;g=f[C>>2]|0;h=(f[m>>2]|0)-g|0;k=h>>3;if(k){if(k>>>0>536870911)break;a=Wpb(h)|0;f[c>>2]=a;f[j>>2]=a;f[j+8>>2]=a+(k<<3);g=f[C>>2]|0;h=(f[m>>2]|0)-g|0;if((h|0)>0){Irb(a|0,g|0,h|0)|0;f[c>>2]=a+(h>>>3<<3)}}f[b>>2]=(f[b>>2]|0)+12}if(g|0){h=f[m>>2]|0;if((h|0)!=(g|0))f[m>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}d=d+12|0;if((d|0)==(n|0)){i=0;break c}}fob(j)}while(0);g=f[E>>2]|0;if(g|0){h=f[D>>2]|0;if((h|0)!=(g|0)){do{j=h+-12|0;f[D>>2]=j;k=f[j>>2]|0;if(!k)h=j;else{h=h+-8|0;j=f[h>>2]|0;if((j|0)!=(k|0))f[h>>2]=j+(~(((j+-24-k|0)>>>0)/24|0)*24|0);Zpb(k);h=f[D>>2]|0}}while((h|0)!=(g|0));g=f[E>>2]|0}Zpb(g)}g=f[H>>2]|0;if(g|0){h=f[F>>2]|0;if((h|0)!=(g|0)){do{j=h+-12|0;f[F>>2]=j;k=f[j>>2]|0;if(!k)h=j;else{h=h+-8|0;j=f[h>>2]|0;if((j|0)!=(k|0))f[h>>2]=j+(~(((j+-24-k|0)>>>0)/24|0)*24|0);Zpb(k);h=f[F>>2]|0}}while((h|0)!=(g|0));g=f[H>>2]|0}Zpb(g)}}g=f[K>>2]|0;if(g|0){h=f[G>>2]|0;if((h|0)!=(g|0))f[G>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);Zpb(g)}g=f[I>>2]|0;if((g|0)!=(J|0))f[I>>2]=g+(~(((g+-24-J|0)>>>0)/24|0)*24|0);Zpb(J);K=i;u=L;return K|0}function zMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;l=f[a>>2]|0;h=l;i=(f[b>>2]|0)-h|0;b=l+(((i|0)/12|0)*12|0)|0;m=f[c>>2]|0;g=f[d>>2]|0;v=g-m|0;o=(v|0)/12|0;t=g;if((v|0)<=0){v=b;return v|0}u=a+8|0;e=f[u>>2]|0;v=a+4|0;q=f[v>>2]|0;d=q;if((o|0)<=((e-d|0)/12|0|0)){n=d-b|0;d=(n|0)/12|0;if((o|0)>(d|0)){d=m+(d*12|0)|0;g=d;a:do if((d|0)==(t|0))k=q;else{e=q;while(1){f[e>>2]=0;m=e+4|0;f[m>>2]=0;f[e+8>>2]=0;j=d+4|0;h=(f[j>>2]|0)-(f[d>>2]|0)|0;i=(h|0)/24|0;if(h|0){if(i>>>0>178956970)break;l=Wpb(h)|0;f[m>>2]=l;f[e>>2]=l;f[e+8>>2]=l+(i*24|0);h=f[d>>2]|0;i=f[j>>2]|0;if((h|0)!=(i|0)){e=l;do{p[e>>3]=+p[h>>3];p[e+8>>3]=+p[h+8>>3];p[e+16>>3]=+p[h+16>>3];h=h+24|0;e=e+24|0}while((h|0)!=(i|0));f[m>>2]=e}}d=d+12|0;e=(f[v>>2]|0)+12|0;f[v>>2]=e;if((d|0)==(t|0)){k=e;break a}}fob(e)}while(0);if((n|0)<=0){v=b;return v|0}}else k=q;e=k-(b+(o*12|0))|0;h=b+(((e|0)/12|0)*12|0)|0;if(h>>>0<q>>>0){d=h;i=k;do{f[i>>2]=0;u=i+4|0;f[u>>2]=0;f[i+8>>2]=0;f[i>>2]=f[d>>2];a=d+4|0;f[u>>2]=f[a>>2];u=d+8|0;f[i+8>>2]=f[u>>2];f[u>>2]=0;f[a>>2]=0;f[d>>2]=0;d=d+12|0;i=(f[v>>2]|0)+12|0;f[v>>2]=i}while(d>>>0<q>>>0)}if(e|0)do{j=h;h=h+-12|0;d=k;k=k+-12|0;e=f[k>>2]|0;l=d+-8|0;if(!e)d=d+-4|0;else{i=f[l>>2]|0;if((i|0)!=(e|0))f[l>>2]=i+(~(((i+-24-e|0)>>>0)/24|0)*24|0);Zpb(e);d=d+-4|0;f[d>>2]=0;f[l>>2]=0;f[k>>2]=0}f[k>>2]=f[h>>2];v=j+-8|0;f[l>>2]=f[v>>2];a=j+-4|0;f[d>>2]=f[a>>2];f[a>>2]=0;f[v>>2]=0;f[h>>2]=0}while((h|0)!=(b|0));d=f[c>>2]|0;if((d|0)==(g|0)){v=b;return v|0}else e=b;while(1){if((e|0)!=(d|0))BMa(e,f[d>>2]|0,f[d+4>>2]|0);d=d+12|0;if((d|0)==(g|0))break;else e=e+12|0}return b|0}d=((d-h|0)/12|0)+o|0;if(d>>>0>357913941)fob(a);c=(e-h|0)/12|0;g=c<<1;g=c>>>0<178956970?(g>>>0<d>>>0?d:g):357913941;d=(i|0)/12|0;do if(!g)j=0;else if(g>>>0>357913941)ud();else{j=Wpb(g*12|0)|0;break}while(0);o=j+(d*12|0)|0;e=o;n=j+(g*12|0)|0;do if((m|0)==(t|0)){s=e;r=l}else{l=e;i=o;k=m;while(1){f[i>>2]=0;j=i+4|0;f[j>>2]=0;f[i+8>>2]=0;h=k+4|0;d=(f[h>>2]|0)-(f[k>>2]|0)|0;g=(d|0)/24|0;if(d|0){if(g>>>0>178956970){d=35;break}d=Wpb(d)|0;f[j>>2]=d;f[i>>2]=d;f[i+8>>2]=d+(g*24|0);g=f[k>>2]|0;h=f[h>>2]|0;if((g|0)!=(h|0)){do{p[d>>3]=+p[g>>3];p[d+8>>3]=+p[g+8>>3];p[d+16>>3]=+p[g+16>>3];g=g+24|0;d=d+24|0}while((g|0)!=(h|0));f[j>>2]=d}}d=l+12|0;l=d;k=k+12|0;if((k|0)==(t|0)){d=40;break}else i=d}if((d|0)==35)fob(i);else if((d|0)==40){s=l;r=f[a>>2]|0;break}}while(0);if((r|0)==(b|0)){d=o;h=e}else{g=b;d=o;do{t=d+-12|0;c=g;g=g+-12|0;f[t>>2]=0;q=d+-8|0;f[q>>2]=0;f[d+-4>>2]=0;f[t>>2]=f[g>>2];t=c+-8|0;f[q>>2]=f[t>>2];c=c+-4|0;f[d+-4>>2]=f[c>>2];f[c>>2]=0;f[t>>2]=0;f[g>>2]=0;d=e+-12|0;e=d}while((g|0)!=(r|0));h=e}g=f[v>>2]|0;if((g|0)==(b|0))e=s;else{e=s;d=s;do{f[d>>2]=0;c=d+4|0;f[c>>2]=0;f[d+8>>2]=0;f[d>>2]=f[b>>2];t=b+4|0;f[c>>2]=f[t>>2];c=b+8|0;f[d+8>>2]=f[c>>2];f[c>>2]=0;f[t>>2]=0;f[b>>2]=0;b=b+12|0;d=e+12|0;e=d}while((b|0)!=(g|0));d=h;b=f[v>>2]|0}h=f[a>>2]|0;f[a>>2]=d;f[v>>2]=e;f[u>>2]=n;if((b|0)!=(h|0))do{d=b;b=b+-12|0;g=f[b>>2]|0;if(g|0){d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~(((e+-24-g|0)>>>0)/24|0)*24|0);Zpb(g)}}while((b|0)!=(h|0));if(!h){v=o;return v|0}Zpb(h);v=o;return v|0}function AMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;g=f[q>>2]|0;i=f[a>>2]|0;n=(g-i|0)/12|0;c=n+1|0;e=i;if(c>>>0>357913941)fob(a);p=a+8|0;o=((f[p>>2]|0)-i|0)/12|0;h=o<<1;h=o>>>0<178956970?(h>>>0<c>>>0?c:h):357913941;do if(!h)m=0;else if(h>>>0>357913941)ud();else{m=Wpb(h*12|0)|0;break}while(0);c=m+(n*12|0)|0;d=c;o=m+(h*12|0)|0;f[c>>2]=0;k=m+(n*12|0)+4|0;f[k>>2]=0;f[m+(n*12|0)+8>>2]=0;l=f[b>>2]|0;h=(f[b+4>>2]|0)-l|0;b=h>>3;if(b|0){if(b>>>0>536870911)fob(c);j=Wpb(h)|0;f[k>>2]=j;f[c>>2]=j;f[m+(n*12|0)+8>>2]=j+(b<<3);if((h|0)>0){Irb(j|0,l|0,h|0)|0;f[k>>2]=j+(h>>>3<<3)}}h=c+12|0;if((g|0)!=(e|0)){do{n=c+-12|0;m=g;g=g+-12|0;f[n>>2]=0;l=c+-8|0;f[l>>2]=0;f[c+-4>>2]=0;f[n>>2]=f[g>>2];n=m+-8|0;f[l>>2]=f[n>>2];m=m+-4|0;f[c+-4>>2]=f[m>>2];f[m>>2]=0;f[n>>2]=0;f[g>>2]=0;c=d+-12|0;d=c}while((g|0)!=(e|0));i=f[a>>2]|0;e=f[q>>2]|0}f[a>>2]=d;f[q>>2]=h;f[p>>2]=o;h=i;if((e|0)!=(h|0))do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~((d+-8-g|0)>>>3)<<3);Zpb(g)}}while((e|0)!=(h|0));if(!i)return;Zpb(i);return}function BMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=(c-b|0)/24|0;k=a+8|0;d=f[k>>2]|0;i=f[a>>2]|0;e=i;if(j>>>0>((d-i|0)/24|0)>>>0){h=i;if(i){d=a+4|0;g=f[d>>2]|0;if((g|0)!=(e|0))f[d>>2]=g+(~(((g+-24-i|0)>>>0)/24|0)*24|0);Zpb(h);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(j>>>0>178956970)fob(a);i=(d|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<j>>>0?j:e):178956970;if(e>>>0>178956970)fob(a);d=Wpb(e*24|0)|0;g=a+4|0;f[g>>2]=d;f[a>>2]=d;f[k>>2]=d+(e*24|0);if((b|0)==(c|0))return;do{p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];b=b+24|0;d=d+24|0}while((b|0)!=(c|0));f[g>>2]=d;return}else{a=a+4|0;k=f[a>>2]|0;d=(k-i|0)/24|0;h=j>>>0>d>>>0;d=b+(d*24|0)|0;g=h?d:c;i=k;if((g|0)==(b|0))b=e;else{do{p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];b=b+24|0;e=e+24|0}while((b|0)!=(g|0));b=e}if(!h){if((b|0)==(i|0))return;f[a>>2]=i+(~(((i+-24-b|0)>>>0)/24|0)*24|0);return}if((g|0)==(c|0))return;b=f[a>>2]|0;do{p[b>>3]=+p[d>>3];p[b+8>>3]=+p[d+8>>3];p[b+16>>3]=+p[d+16>>3];d=d+24|0;b=b+24|0}while((d|0)!=(c|0));f[a>>2]=b;return}}function CMa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;i=f[d>>2]|0;if((i|0)<3){h=0;return h|0}if((d+(i<<2)+4|0)==(e|0)){if((i|0)==3){k=f[d+4>>2]|0;l=f[d+8>>2]|0;d=f[d+12>>2]|0;_h[g&3](h,0,b+(k*12|0)|0,b+(l*12|0)|0,b+(d*12|0)|0,k,l,d,0,0,0);h=1;return h|0}if(!((DMa(b,d,e)|0)&1)){a=f[d>>2]|0;j=d+8|0;i=f[d+4>>2]|0;c=f[j>>2]|0;e=a+-2|0;if((a|0)>3){k=a+-4|0;l=k>>>1;a=j;while(1){j=i;i=f[a+(e<<2)>>2]|0;n=b+(c*12|0)|0;m=b+(i*12|0)|0;_h[g&3](h,1,b+(j*12|0)|0,n,m,j,c,i,0,0,0);a=a+4|0;j=c;c=f[a>>2]|0;_h[g&3](h,1,n,b+(c*12|0)|0,m,j,c,i,0,0,0);if((e|0)<=3)break;else e=e+-2|0}e=k&1;a=l+3|0}else a=2;if(!e){n=1;return n|0}n=f[d+(a<<2)+4>>2]|0;_h[g&3](h,1,b+(i*12|0)|0,b+(c*12|0)|0,b+(n*12|0)|0,i,c,n,0,0,0);n=1;return n|0}}n=EMa(a,b,c,d,e,g,h)|0;return n|0}function DMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0;y=u;u=u+80|0;p=y+36|0;q=p;i=y;d=f[b>>2]|0;if((d|0)!=((c-b>>2)+-1|0)){x=1;u=y;return x|0}if((d|0)==3){x=0;u=y;return x|0}d=b+4|0;l=f[c+-8>>2]|0;o=f[c+-4>>2]|0;b=a+(o*12|0)|0;m=+n[b>>2];k=m-+n[a+(l*12|0)>>2];g=+n[a+(o*12|0)+4>>2]-+n[a+(l*12|0)+4>>2];e=+n[a+(o*12|0)+8>>2]-+n[a+(l*12|0)+8>>2];n[p>>2]=k;l=p+4|0;n[l>>2]=g;o=p+8|0;n[o>>2]=e;a:do if(k==0.0){while(1){if(!(e==0.0&g==0.0))break a;h=f[d>>2]|0;j=a+(h*12|0)|0;d=d+4|0;if((d|0)==(c|0)){b=0;break}k=m;m=+n[j>>2];k=m-k;g=+n[a+(h*12|0)+4>>2]-+n[b+4>>2];e=+n[a+(h*12|0)+8>>2]-+n[b+8>>2];n[p>>2]=k;n[l>>2]=g;n[o>>2]=e;if(!(k==0.0)){b=j;break a}else b=j}u=y;return b|0}while(0);f[p+12>>2]=k==0.0?0:k<0.0?-1:1;f[p+16>>2]=g==0.0?0:g<0.0?-1:1;f[p+20>>2]=e==0.0?0:e<0.0?-1:1;n[p+24>>2]=0.0;n[p+28>>2]=0.0;n[p+32>>2]=0.0;w=b;v=d;h=0;t=q;r=0;q=0;while(1){b=f[v>>2]|0;s=w;w=a+(b*12|0)|0;k=+n[a+(b*12|0)+4>>2]-+n[s+4>>2];m=+n[a+(b*12|0)+8>>2]-+n[s+8>>2];b=i;p=i;n[p>>2]=+n[w>>2]-+n[s>>2];n[b+4>>2]=k;n[b+8>>2]=m;m=+n[p>>2];p=m==0.0;b=m<0.0?-1:1;s=i;d=s+12|0;f[d>>2]=p?0:b;if(p){b=f[t+12>>2]|0;f[d>>2]=b}m=+n[s+4>>2];p=m==0.0;d=m<0.0?-1:1;j=s+16|0;f[j>>2]=p?0:d;if(p){d=f[t+16>>2]|0;f[j>>2]=d}g=+n[s+8>>2];o=g==0.0;j=g<0.0?-1:1;l=s+20|0;f[l>>2]=o?0:j;if(o){j=f[t+20>>2]|0;f[l>>2]=j}e=+n[s>>2];if(e!=0.0|p^1|o^1){l=t;h=h+((b|0)!=(f[l+12>>2]|0)&1)|0;b=q+((d|0)!=(f[l+16>>2]|0)&1)|0;d=r+((j|0)!=(f[l+20>>2]|0)&1)|0;z=+n[l+4>>2];B=+n[l+8>>2];k=g*z-m*B;A=+n[l>>2];g=e*B-g*A;e=m*A-e*z;n[s+24>>2]=k;n[s+28>>2]=g;n[s+32>>2]=e;if(e==0.0&(k==0.0&g==0.0))j=t;else if(k*+n[l+24>>2]+g*+n[l+28>>2]+e*+n[l+32>>2]<0.0){b=1;x=19;break}else{j=i;i=t}}else{j=t;d=r;b=q}v=v+4|0;if((v|0)==(c|0))break;else{t=j;r=d;q=b}}if((x|0)==19){u=y;return b|0}x=((d|0)>2|((b|0)>2|(h|0)>2))&1;u=y;return x|0}function EMa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0.0,k=0.0,l=0.0,m=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;K=0;O=u;u=u+6400|0;f[(O+24|0)>>2]=a;J=(O+24|0)+4|0;f[J>>2]=g;F=(O+24|0)+8|0;f[F>>2]=h;f[(O+24|0)+12>>2]=0;if(!c)K=4;else{l=+n[c>>2];k=+n[c+4>>2];j=+n[c+8>>2];if(l!=0.0|k!=0.0|j!=0.0){t=l<0.0?-l:l;w=k<0.0?-k:k;v=j<0.0?-j:j;y=v>t?2:0;o=t>w;m=v>w;x=f[d+4>>2]|0}else K=4}if((K|0)==4){o=(f[d>>2]|0)+1|0;x=f[d+4>>2]|0;t=+n[(b+(x*12|0)|0)>>2];if((o|0)==2){g=b+(x*12|0)|0;l=0.0;p=0.0;k=0.0;j=t}else{g=b+(x*12|0)|0;l=0.0;p=0.0;k=0.0;h=d+8|0;q=t;while(1){c=f[h>>2]|0;h=h+4|0;v=+n[b+(c*12|0)+4>>2];w=+n[g+4>>2];r=+n[b+(c*12|0)+8>>2];s=+n[g+8>>2];k=k+(v+w)*(r-s);j=+n[(b+(c*12|0)|0)>>2];p=p+(r+s)*(j-q);l=l+(v-w)*(q+j);if((h|0)==(d+(o<<2)|0|0)){g=b+(c*12|0)|0;break}else{g=b+(c*12|0)|0;q=j}}}v=+n[b+(x*12|0)+4>>2];s=+n[g+4>>2];q=+n[b+(x*12|0)+8>>2];r=+n[g+8>>2];w=k+(v+s)*(q-r);k=p+(t-j)*(q+r);l=l+(t+j)*(v-s);j=w<0.0?-w:w;k=k<0.0?-k:k;l=l<0.0?-l:l;a:do if(l<9.999999974752427e-07&(j<9.999999974752427e-07&k<9.999999974752427e-07)){m=b+(x*12|0)|0;h=g;c=d+8|0;q=t;p=s;while(1){if((c|0)==(d+(o<<2)|0|0))break a;g=f[c>>2]|0;l=p;p=+n[m+4>>2];j=r;r=+n[m+8>>2];j=(+n[b+(g*12|0)+4>>2]-p)*(r-j);k=(+n[b+(g*12|0)+8>>2]-r)*(q-+n[h>>2]);w=q;q=+n[(b+(g*12|0)|0)>>2];l=(q-w)*(p-l);j=j<0.0?-j:j;k=k<0.0?-k:k;l=l<0.0?-l:l;if(j>1.000000013351432e-10|k>1.000000013351432e-10|l>1.000000013351432e-10)break;else{h=m;m=b+(g*12|0)|0;c=c+4|0}}}while(0);y=l>j?2:0;o=j>k;m=l>k}y=o?y:m?2:1;f[(O+24|0)+16>>2]=y;z=(O+24|0)+24|0;f[z>>2]=0;A=(O+24|0)+20|0;f[A>>2]=0;h=b+(x*12|0)|0;f[(O+12|0)>>2]=f[h>>2];f[(O+12|0)+4>>2]=f[h+4>>2];f[(O+12|0)+8>>2]=f[h+8>>2];f[O>>2]=f[h>>2];f[O+4>>2]=f[h+4>>2];f[O+8>>2]=f[h+8>>2];h=d;do{o=h+4|0;m=f[h>>2]|0;m=(m|0)>-1?m:0-m|0;c=o;do{g=f[c>>2]|0;c=c+4|0;j=+n[b+(g*12|0)>>2];if(j<+n[(O+12|0)>>2]){B=O+12|0;K=14}else if(j>+n[O>>2]){B=O;K=14}if((K|0)==14){K=0;n[B>>2]=j}j=+n[b+(g*12|0)+4>>2];if(j<+n[((O+12|0)+4|0)>>2]){C=O+12|0;K=17}else if(j>+n[(O+4|0)>>2]){C=O;K=17}if((K|0)==17){K=0;n[C+4>>2]=j}j=+n[b+(g*12|0)+8>>2];if(j<+n[((O+12|0)+8|0)>>2]){E=O+12|0;K=20}else if(j>+n[(O+8|0)>>2]){E=O;K=20}if((K|0)==20){K=0;n[E+8>>2]=j}}while((c|0)!=(o+(m<<2)|0|0));h=h+8+(((m<<2)+-4|0)>>>2<<2)|0}while((h|0)!=(e|0));p=+n[(O+12|0)>>2];q=+n[O>>2];r=+n[((O+12|0)+4|0)>>2];s=+n[(O+4|0)>>2];t=+n[((O+12|0)+8|0)>>2];v=+n[(O+8|0)>>2];j=q-p!=0.0?2.0/(q-p):q-p;k=s-r!=0.0?2.0/(s-r):s-r;l=v-t!=0.0?2.0/(v-t):v-t;w=q-p<s-r?s-r:q-p;w=(w<v-t?v-t:w)*9.999999974752427e-07;b:do{g=1;if(g){g=0;if((d|0)==(e|0)){L=0;M=0;K=450}else g=1}if(g)if(1){C=0;E=0;f[O+80>>2]=a;f[O+88>>2]=b;f[O+112>>2]=e;f[O+152>>2]=I;f[O+216>>2]=C;f[O+240>>2]=E;f[O+280>>2]=d;f[O+488>>2]=y;f[O+520>>2]=L;f[O+528>>2]=N;f[O+1040>>2]=M;f[O+1048>>2]=i;n[O+1904>>2]=j;n[O+1912>>2]=k;n[O+1920>>2]=l;f[O+1944>>2]=J;f[O+2200>>2]=F;f[O+2640>>2]=z;f[O+2648>>2]=A;n[O+3456>>2]=p;n[O+3464>>2]=q;n[O+3504>>2]=r;n[O+3536>>2]=s;n[O+3592>>2]=t;n[O+3632>>2]=v;n[O+3872>>2]=w;f[O+6072>>2]=K;f[O+6176>>2]=0;f[O+6180>>2]=0;hQa(O);L=f[O+520>>2]|0;N=f[O+528>>2]|0;M=f[O+1040>>2]|0;i=f[O+1048>>2]|0;K=f[O+6072>>2]|0;G=f[O+6176>>2]|0;D=f[O+6180>>2]|0;H=+n[O+6180>>2];f[O+6176>>2]=0;f[O+6180>>2]=0;if((G|0)==6)return D|0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 8:break b}}}while(0);if((K|0)==450){g=f[z>>2]|0;if(!g){N=L;i=M}else{do{N=g;g=f[g>>2]|0;Lbb(N)}while((g|0)!=0);f[z>>2]=g;N=L;i=M}}if(i|0)do{h=i;i=f[i>>2]|0;g=f[(h+8|0)>>2]|0;if(g|0)do{f[(h+8|0)>>2]=f[g>>2];Lbb(g);g=f[(h+8|0)>>2]|0}while((g|0)!=0);Lbb(h)}while((i|0)!=0);g=f[A>>2]|0;if(g|0){do{c=g;g=f[g>>2]|0;i=f[(c+4|0)>>2]|0;h=f[i+24>>2]|0;if(h){Lbb(h);i=f[(c+4|0)>>2]|0}Lbb(i);Lbb(c)}while((g|0)!=0);f[A>>2]=g}N=N^1;u=O;return N|0}function FMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=c-b|0;a:do if(e>>>0>=2){u=c+-1|0;v=a+(u<<2)|0;w=a+(c<<2)|0;t=d;d=e;while(1){if((t|0)==0|d>>>0<33)break;d=a+(b<<2)|0;e=f[d>>2]|0;j=a+((b+c|0)>>>1<<2)|0;h=f[j>>2]|0;m=+n[(f[e+4>>2]|0)+20>>2];o=+n[(f[h+4>>2]|0)+20>>2];if(m==o){s=f[e+20>>2]|0;g=f[h+20>>2]|0;g=(s|0)==(g|0)?0:(s|0)<(g|0)?-1:1}else g=m<o?-1:1;i=f[v>>2]|0;p=+n[(f[i+4>>2]|0)+20>>2];if(m==p){s=f[e+20>>2]|0;e=f[i+20>>2]|0;e=(s|0)==(e|0)?0:(s|0)<(e|0)?-1:1}else e=m<p?-1:1;e=(e|0)<0;do if((g|0)<0){if(!e)break;d=o<p?-1:1;if(o==p){e=f[h+20>>2]|0;d=f[i+20>>2]|0;if((e|0)==(d|0)){d=v;break}else d=(e|0)<(d|0)?-1:1}d=(d|0)<0?j:v}else{if(e)break;d=o<p?-1:1;if(o==p){e=f[h+20>>2]|0;d=f[i+20>>2]|0;if((e|0)!=(d|0)){d=(e|0)<(d|0)?-1:1;x=31}}else x=31;if((x|0)==31){x=0;if((d|0)<0){d=v;break}}d=j}while(0);s=f[d>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=s;s=u;d=b;e=b;g=u;b:while(1){r=d;while(1){c:do if(e>>>0<c>>>0){i=f[w>>2]|0;m=+n[(f[i+4>>2]|0)+20>>2];i=i+20|0;while(1){h=f[a+(e<<2)>>2]|0;p=+n[(f[h+4>>2]|0)+20>>2];d=p<m?-1:1;if(p==m){d=f[h+20>>2]|0;h=f[i>>2]|0;if((d|0)==(h|0)){q=e;break c}else d=(d|0)<(h|0)?-1:1}if((d|0)>=0){q=e;break c}e=e+1|0;if(e>>>0>=c>>>0){q=e;break}}}else q=e;while(0);d:do if(g>>>0>b>>>0){i=f[w>>2]|0;m=+n[(f[i+4>>2]|0)+20>>2];i=i+20|0;do{e=f[a+(g<<2)>>2]|0;p=+n[(f[e+4>>2]|0)+20>>2];d=m<p?-1:1;if(m==p){h=f[i>>2]|0;d=f[e+20>>2]|0;if((h|0)==(d|0))break d;else d=(h|0)<(d|0)?-1:1}if((d|0)>=0)break d;g=g+-1|0}while(g>>>0>b>>>0)}while(0);if(q>>>0>=g>>>0)break b;e=a+(q<<2)|0;l=a+(g<<2)|0;i=f[e>>2]|0;f[e>>2]=f[l>>2];f[l>>2]=i;d=f[e>>2]|0;h=f[w>>2]|0;m=+n[(f[h+4>>2]|0)+20>>2];j=d;k=i;if(+n[(f[d+4>>2]|0)+20>>2]==m)if((f[d+20>>2]|0)==(f[h+20>>2]|0)){d=a+(r<<2)|0;if((r|0)==(q|0))i=k;else{k=f[d>>2]|0;f[d>>2]=j;f[e>>2]=k;k=f[w>>2]|0;i=f[l>>2]|0;h=k;m=+n[(f[k+4>>2]|0)+20>>2]}d=r+1|0;e=q+1|0;k=i}else{d=r;e=q}else{d=r;e=q}if(!(+n[(f[k+4>>2]|0)+20>>2]==m)){r=d;continue}if((f[k+20>>2]|0)==(f[h+20>>2]|0))break;else r=d}h=a+(s<<2)|0;if((g|0)!=(s|0)){f[l>>2]=f[h>>2];f[h>>2]=i}s=s+-1|0;g=g+-1|0}d=a+(q<<2)|0;if((q|0)!=(c|0)){l=f[d>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=l}if(q>>>0>r>>>0){e=q+-1|0;e:do if(b>>>0<r>>>0){d=b;while(1){if(e>>>0<r>>>0)break e;g=a+(d<<2)|0;h=a+(e<<2)|0;if((d|0)!=(e|0)){l=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=l}d=d+1|0;e=e+-1|0;if(d>>>0>=r>>>0){d=e;break}}}else d=e;while(0);FMa(a,b,d,t+-1|0)}b=q+1|0;f:do if(u>>>0>s>>>0){d=u;while(1){if(b>>>0>s>>>0)break;e=a+(b<<2)|0;g=a+(d<<2)|0;if((b|0)!=(d|0)){r=f[e>>2]|0;f[e>>2]=f[g>>2];f[g>>2]=r}d=d+-1|0;b=b+1|0;if(d>>>0<=s>>>0)break f}b=d+1|0}while(0);d=c-b|0;if(d>>>0<2)break a;else t=t+-1|0}d=b+1|0;if(d>>>0>c>>>0)return;do{g:do if(d>>>0>b>>>0){i=d;h=f[a+(d<<2)>>2]|0;do{k=i;i=i+-1|0;j=a+(i<<2)|0;g=f[j>>2]|0;k=a+(k<<2)|0;o=+n[(f[g+4>>2]|0)+20>>2];p=+n[(f[h+4>>2]|0)+20>>2];e=o<p?-1:1;l=g;if(o==p){g=f[g+20>>2]|0;e=f[h+20>>2]|0;if((g|0)==(e|0))break g;else e=(g|0)<(e|0)?-1:1}if((e|0)<=0)break g;h=f[k>>2]|0;f[k>>2]=l;f[j>>2]=h}while(i>>>0>b>>>0)}while(0);d=d+1|0}while(d>>>0<=c>>>0);return}while(0);if(b>>>0>=c>>>0)return;j=a+(b<<2)|0;d=f[j>>2]|0;g=a+(c<<2)|0;e=f[g>>2]|0;o=+n[(f[d+4>>2]|0)+20>>2];p=+n[(f[e+4>>2]|0)+20>>2];b=o<p?-1:1;h=d;i=e;if(o==p){d=f[d+20>>2]|0;b=f[e+20>>2]|0;if((d|0)==(b|0))return;else b=(d|0)<(b|0)?-1:1}if((b|0)<=0)return;f[j>>2]=i;f[g>>2]=h;return}function GMa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var g=0.0,h=0.0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=u;u=u+32|0;z=I;G=f[b+16>>2]|0;E=b+12|0;F=f[E>>2]|0;D=f[c+16>>2]|0;B=c+12|0;C=f[B>>2]|0;if((F|0)==(C|0)|((G|0)==(D|0)|((F|0)==0|(C|0)==0))){u=I;return}if((f[G+12>>2]|0)==(f[D+12>>2]|0)){u=I;return}b=f[F+12>>2]|0;c=f[C+12>>2]|0;if((b|0)==(c|0)){u=I;return}w=+n[G+16>>2];x=+n[F+16>>2]-w;p=+n[G+20>>2];q=+n[F+20>>2]-p;g=+n[C+16>>2];h=+n[C+20>>2];if(x*(h-p)<q*(g-w)){u=I;return}m=+n[D+16>>2];l=g-m;o=+n[D+20>>2];g=h-o;m=m-w;o=o-p;h=q*l-x*g;if(h>-1.000000013351432e-10&h<1.000000013351432e-10){u=I;return}y=1.0/h;A=(l*o-m*g)*y;y=(x*o-q*m)*y;if(A<d|y<e){u=I;return}if((b|0)<0){if(A>1.0){u=I;return}}else if(A>=.9999989867210388){u=I;return}if((c|0)<0){if(y>1.0){u=I;return}}else if(y>=.9999989867210388){u=I;return}p=p+A*q;b=a+24|0;c=f[b>>2]|0;a:do if(!c)c=0;else while(1){if(p<=+n[(f[c+4>>2]|0)+20>>2]+9.999999974752427e-07)break a;b=f[c>>2]|0;if(!b){b=c;c=0;break}else{v=c;c=b;b=v}}while(0);r=F+12|0;s=C+12|0;b:do if(c){while(1){i=f[c+4>>2]|0;g=+n[i+20>>2];if(p<=g+9.999999974752427e-07)break b;if((f[c+20>>2]|0)!=5)break b;i=f[i+12>>2]|0;j=f[r>>2]|0;if((i|0)==(j|0))break b;k=f[s>>2]|0;if((i|0)==(k|0))break b;if((f[(f[c+12>>2]|0)+12>>2]|0)==(k|0))if(g==p?(f[(f[c+16>>2]|0)+12>>2]|0)==(j|0):0)break;b=f[c>>2]|0;if(!b){b=c;break b}else{v=c;c=b;b=v}}u=I;return}while(0);o=+n[G>>2];n[z>>2]=o+A*(+n[F>>2]-o);o=+n[G+4>>2];n[z+4>>2]=o+A*(+n[F+4>>2]-o);o=+n[G+8>>2];n[z+8>>2]=o+A*(+n[F+8>>2]-o);o=w+A*x;n[z+16>>2]=o;n[z+20>>2]=p;j=f[f[a>>2]>>2]|0;j=Pg[f[f[j>>2]>>2]&255](j,28)|0;f[j+20>>2]=5;k=j+8|0;f[k>>2]=0;r=j+4|0;f[r>>2]=0;s=f[a>>2]|0;i=a+12|0;J=f[i>>2]|0;c=J+-1|0;f[i>>2]=c;i=f[a+16>>2]|0;t=a+20|0;v=f[s>>2]|0;v=Pg[f[f[v>>2]>>2]&255](v,28)|0;if((J|0)>0){J=z+(c*12|0)|0;f[v>>2]=f[J>>2];f[v+4>>2]=f[J+4>>2];f[v+8>>2]=f[J+8>>2]}else{f[v>>2]=f[z>>2];f[v+4>>2]=f[z+4>>2];f[v+8>>2]=f[z+8>>2]}f[v+12>>2]=c;g=+n[v>>2];m=+n[v+4>>2];l=+n[v+8>>2];switch(i|0){case 0:{h=l;g=m;H=31;break}case 1:{h=g;g=l;H=31;break}case 2:{h=m;H=31;break}default:{c=v+16|0;i=v+20|0}}if((H|0)==31){c=v+16|0;n[c>>2]=g;i=v+20|0;n[i>>2]=h}f[v+24>>2]=0;J=f[s>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,8)|0;f[J+4>>2]=v;f[J>>2]=f[t>>2];f[t>>2]=J;n[c>>2]=o;n[i>>2]=p;f[k>>2]=v;f[r>>2]=v;f[j>>2]=f[b>>2];f[b>>2]=j;f[j+12>>2]=f[B>>2];f[j+16>>2]=f[E>>2];J=f[r>>2]|0;f[B>>2]=J;f[E>>2]=J;J=f[f[a>>2]>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,40)|0;f[(f[r>>2]|0)+24>>2]=J;LMa(J,0,G,F,A);LMa(J,1,D,C,y);u=I;return}function HMa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;l=+n[a+20>>2];k=+n[c+20>>2];f=l-k;if((f<0.0?-f:f)<9.999999974752427e-07){f=+n[a+16>>2];h=+n[c+16>>2];if(f<h){e=1;return e|0}if(!(f==h)){e=0;return e|0}g=(+n[b+16>>2]-f)*(+n[d+20>>2]-k);f=(+n[d+16>>2]-h)*(+n[b+20>>2]-l);if(g<f){e=1;return e|0}else return g<f+9.999999974752427e-07&e|0}g=+n[d+20>>2];i=l-g;j=+n[a+16>>2];if((i<0.0?-i:i)<9.999999974752427e-07){f=+n[d+16>>2];if(j<f){e=1;return e|0}if(!(j==f)){e=0;return e|0}g=(g-k)*(+n[b+16>>2]-j);f=(f-+n[c+16>>2])*(+n[b+20>>2]-l);if(g<f){e=1;return e|0}e=g<f+9.999999974752427e-07&e;return e|0}i=+n[c+16>>2];h=(j-i)/f;i=+n[d+16>>2]-i;f=g-k;g=i/f;if(h<g+-9.999999974752427e-07){e=1;return e|0}if(h<g+9.999999974752427e-07){g=f*(+n[b+16>>2]-j);f=i*(+n[b+20>>2]-l);if(g<f){e=1;return e|0}if(g<f+9.999999974752427e-07&e){e=1;return e|0}}e=0;return e|0}function IMa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0;w=c+8|0;x=c+4|0;u=a+4|0;v=a+8|0;p=a+28|0;q=d+12|0;r=d+24|0;s=d+16|0;t=d+20|0;a:while(1){a=f[w>>2]|0;g=f[a>>2]|0;if(g){while(1){l=f[a+4>>2]|0;j=+n[l+20>>2];m=f[g+4>>2]|0;k=+n[m+20>>2];if(j!=k){z=+n[l+16>>2];if(!((j-k)*(+n[s>>2]-z)>=(z-+n[m+16>>2])*(+n[t>>2]-j)))y=8;else break}else{j=+n[m+16>>2];k=+n[l+16>>2];if(j>k)break;if(j==k)Lbb(a);else y=8}if((y|0)==8){y=0;h=f[u>>2]|0;i=f[v>>2]|0;if(!(b[p>>0]|0))_h[h&3](i,0,d,l,m,f[q>>2]|0,f[l+12>>2]|0,f[m+12>>2]|0,f[r>>2]|0,f[l+24>>2]|0,f[m+24>>2]|0);else _h[h&3](i,0,d,m,l,f[q>>2]|0,f[m+12>>2]|0,f[l+12>>2]|0,f[r>>2]|0,f[m+24>>2]|0,f[l+24>>2]|0);Lbb(a)}a=f[g>>2]|0;if(!a){a=g;break}else{o=g;g=a;a=o}}f[w>>2]=a;if(f[a>>2]|0){y=28;break}}g=f[x>>2]|0;o=f[g+8>>2]|0;if(e){h=f[o>>2]|0;if(h){a=o;while(1){l=f[a+4>>2]|0;m=f[h+4>>2]|0;if(+n[l+16>>2]!=+n[m+16>>2])y=18;else if(+n[l+20>>2]!=+n[m+20>>2])y=18;do if((y|0)==18){y=0;g=f[u>>2]|0;i=f[v>>2]|0;if(!(b[p>>0]|0)){_h[g&3](i,0,d,m,l,f[q>>2]|0,f[m+12>>2]|0,f[l+12>>2]|0,f[r>>2]|0,f[m+24>>2]|0,f[l+24>>2]|0);break}else{_h[g&3](i,0,d,l,m,f[q>>2]|0,f[l+12>>2]|0,f[m+12>>2]|0,f[r>>2]|0,f[l+24>>2]|0,f[m+24>>2]|0);break}}while(0);if((a|0)!=(o|0))Lbb(a);a=f[h>>2]|0;if(!a)break;else{m=h;h=a;a=m}}Lbb(h);g=f[x>>2]|0;f[f[g+8>>2]>>2]=0;a=f[w>>2]|0;f[a+4>>2]=f[o+4>>2]}}if(f[g+12>>2]|0){y=28;break}while(1){Lbb(a);Lbb(f[g+8>>2]|0);o=g+4|0;m=f[o>>2]|0;f[w>>2]=f[m+8>>2];m=f[m+4>>2]|0;f[x>>2]=m;f[m>>2]=c;Lbb(f[o>>2]|0);Lbb(g);g=f[x>>2]|0;if(f[g+12>>2]|0)continue a;a=f[w>>2]|0}}if((y|0)==28)return}function JMa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;w=c+8|0;u=a+4|0;v=a+8|0;p=a+28|0;q=d+12|0;r=d+24|0;s=d+16|0;t=d+20|0;a:while(1){a=f[w>>2]|0;g=f[a>>2]|0;if(g){while(1){l=f[a+4>>2]|0;j=+n[l+20>>2];m=f[g+4>>2]|0;k=+n[m+20>>2];if(j!=k){y=+n[l+16>>2];if(!((j-k)*(+n[s>>2]-y)<=(y-+n[m+16>>2])*(+n[t>>2]-j)))x=8;else break}else{j=+n[m+16>>2];k=+n[l+16>>2];if(j<k)break;if(j==k)Lbb(a);else x=8}if((x|0)==8){x=0;h=f[u>>2]|0;i=f[v>>2]|0;if(!(b[p>>0]|0))_h[h&3](i,0,d,m,l,f[q>>2]|0,f[m+12>>2]|0,f[l+12>>2]|0,f[r>>2]|0,f[m+24>>2]|0,f[l+24>>2]|0);else _h[h&3](i,0,d,l,m,f[q>>2]|0,f[l+12>>2]|0,f[m+12>>2]|0,f[r>>2]|0,f[l+24>>2]|0,f[m+24>>2]|0);Lbb(a)}a=f[g>>2]|0;if(!a){a=g;break}else{o=g;g=a;a=o}}f[w>>2]=a;if(f[a>>2]|0){x=28;break}}g=f[c>>2]|0;o=f[g+8>>2]|0;if(e){h=f[o>>2]|0;if(h){a=o;while(1){l=f[a+4>>2]|0;m=f[h+4>>2]|0;if(+n[l+16>>2]!=+n[m+16>>2])x=18;else if(+n[l+20>>2]!=+n[m+20>>2])x=18;do if((x|0)==18){x=0;g=f[u>>2]|0;i=f[v>>2]|0;if(!(b[p>>0]|0)){_h[g&3](i,0,d,l,m,f[q>>2]|0,f[l+12>>2]|0,f[m+12>>2]|0,f[r>>2]|0,f[l+24>>2]|0,f[m+24>>2]|0);break}else{_h[g&3](i,0,d,m,l,f[q>>2]|0,f[m+12>>2]|0,f[l+12>>2]|0,f[r>>2]|0,f[m+24>>2]|0,f[l+24>>2]|0);break}}while(0);if((a|0)!=(o|0))Lbb(a);a=f[h>>2]|0;if(!a)break;else{m=h;h=a;a=m}}Lbb(h);g=f[c>>2]|0;f[f[g+8>>2]>>2]=0;a=f[w>>2]|0;f[a+4>>2]=f[o+4>>2]}}if(f[g+12>>2]|0){x=28;break}while(1){Lbb(a);Lbb(f[g+8>>2]|0);o=f[g>>2]|0;f[w>>2]=f[o+8>>2];o=f[o>>2]|0;f[c>>2]=o;f[o+4>>2]=c;Lbb(f[g>>2]|0);Lbb(g);g=f[c>>2]|0;if(f[g+12>>2]|0)continue a;a=f[w>>2]|0}}if((x|0)==28)return}function KMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0,h=0,i=0.0,j=0,k=0.0,l=0.0,m=0,o=0,p=0.0,q=0,r=0.0,s=0,t=0.0,v=0,w=0,x=0;w=u;u=u+32|0;h=w;e=+n[b+20>>2];i=+n[c+20>>2];if(e==i){u=w;return c|0}s=d+4|0;p=+n[(f[s>>2]|0)+20>>2];t=(p-e)/(i-e);r=+n[b>>2];n[h>>2]=r+t*(+n[c>>2]-r);r=+n[b+4>>2];n[h+4>>2]=r+t*(+n[c+4>>2]-r);r=+n[b+8>>2];n[h+8>>2]=r+t*(+n[c+8>>2]-r);r=+n[b+16>>2];r=r+t*(+n[c+16>>2]-r);n[h+16>>2]=r;n[h+20>>2]=p;m=f[a>>2]|0;j=a+12|0;x=f[j>>2]|0;g=x+-1|0;f[j>>2]=g;j=f[a+16>>2]|0;o=a+20|0;v=f[m>>2]|0;v=Pg[f[f[v>>2]>>2]&255](v,28)|0;if((x|0)>0){x=h+(g*12|0)|0;f[v>>2]=f[x>>2];f[v+4>>2]=f[x+4>>2];f[v+8>>2]=f[x+8>>2]}else{f[v>>2]=f[h>>2];f[v+4>>2]=f[h+4>>2];f[v+8>>2]=f[h+8>>2]}f[v+12>>2]=g;e=+n[v>>2];l=+n[v+4>>2];k=+n[v+8>>2];switch(j|0){case 0:{i=k;e=l;q=9;break}case 1:{i=e;e=k;q=9;break}case 2:{i=l;q=9;break}default:{g=v+16|0;h=v+20|0}}if((q|0)==9){g=v+16|0;n[g>>2]=e;h=v+20|0;n[h>>2]=i}x=v+24|0;f[x>>2]=0;j=f[m>>2]|0;j=Pg[f[f[j>>2]>>2]&255](j,8)|0;f[j+4>>2]=v;f[j>>2]=f[o>>2];f[o>>2]=j;n[g>>2]=r;n[h>>2]=p;j=f[f[a>>2]>>2]|0;j=Pg[f[f[j>>2]>>2]&255](j,40)|0;f[x>>2]=j;h=f[s>>2]|0;f[j>>2]=h;g=f[d+8>>2]|0;f[j+4>>2]=g;f[j+8>>2]=f[h+12>>2];f[j+12>>2]=f[g+12>>2];if(+n[h>>2]<+n[g>>2]){e=+n[h+16>>2];e=(r-e)/(+n[g+16>>2]-e)}else e=0.0;n[j+16>>2]=e;LMa(j,1,b,c,t);x=v;u=w;return x|0}function LMa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0.0;l=f[c+12>>2]|0;m=(l|0)<0;if(m){k=f[c+24>>2]|0;i=f[k+12>>2]|0;h=d+12|0;g=f[h>>2]|0;do if((g|0)>-1&(i|0)==(g|0))o=6;else{if((g|0)<0){j=f[d+24>>2]|0;if((i|0)==(f[j+12>>2]|0)){o=6;break}if((i|0)==(f[j+32>>2]|0)){o=6;break}}f[a+(b*20|0)>>2]=f[k+20>>2];f[a+(b*20|0)+8>>2]=f[k+28>>2];i=k+36|0}while(0);if((o|0)==6){f[a+(b*20|0)>>2]=f[k>>2];f[a+(b*20|0)+8>>2]=f[k+8>>2];i=k+16|0}p=+n[i>>2];e=p+(1.0-p)*e}else{f[a+(b*20|0)>>2]=c;f[a+(b*20|0)+8>>2]=l;g=d+12|0;h=g;g=f[g>>2]|0}if((g|0)>=0){f[a+(b*20|0)+4>>2]=d;f[a+(b*20|0)+12>>2]=f[h>>2];p=e;o=a+(b*20|0)+16|0;n[o>>2]=p;return}h=f[d+24>>2]|0;i=f[h+8>>2]|0;do if((l|0)>-1&(i|0)==(l|0))o=15;else{if(m){g=f[c+24>>2]|0;if((i|0)==(f[g+8>>2]|0)){o=15;break}if((i|0)==(f[g+28>>2]|0)){o=15;break}}f[a+(b*20|0)+4>>2]=f[h+24>>2];f[a+(b*20|0)+12>>2]=f[h+32>>2];g=h+36|0}while(0);if((o|0)==15){f[a+(b*20|0)+4>>2]=f[h+4>>2];f[a+(b*20|0)+12>>2]=f[h+12>>2];g=h+16|0}p=e*+n[g>>2];o=a+(b*20|0)+16|0;n[o>>2]=p;return}function MMa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;j=h+4|0;i=h;f[j>>2]=31604;f[i>>2]=j;g=CMa(i,a,d,b,b+(c<<2)|0,e,g)|0;u=h;return g|0}function NMa(a,b){a=a|0;b=b|0;return Kbb(b)|0}function OMa(a,b){a=a|0;b=b|0;Lbb(b);return}function PMa(a,c){a=a|0;c=c|0;var d=0,e=0;d=Wpb(744)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=31620;e=d+16|0;f[e>>2]=c;jga(d+24|0);f[d+712>>2]=0;f[d+716>>2]=0;f[d+720>>2]=0;f[d+724>>2]=-1;c=d+740|0;b[c>>0]=b[c>>0]&-16;f[a>>2]=e;f[a+4>>2]=d;return}function QMa(a){a=a|0;var b=0;f[a>>2]=31620;b=f[a+716>>2]|0;if(b|0)Ppb(b);Hpb(a);return}function RMa(a){a=a|0;var b=0;f[a>>2]=31620;b=f[a+716>>2]|0;if(b|0)Ppb(b);Hpb(a);Zpb(a);return}function SMa(a){a=a|0;a=f[a+716>>2]|0;if(!a)return;Ppb(a);return}function TMa(a){a=a|0;Zpb(a);return}function UMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b;b=f[d+4>>2]|0;c=a+704|0;f[c>>2]=f[d>>2];f[c+4>>2]=b;return}function VMa(a,c){a=a|0;c=c|0;PI(a+8|0,c)|0;c=a+724|0;b[c>>0]=b[c>>0]|1;return}function WMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=a+696|0;c=f[h>>2]|0;d=f[b>>2]|0;e=d;if((c|0)==(d|0)){h=0;return h|0}if(!c)c=0;else c=(f[c+8>>2]|0)!=0;if(!d)if(c)g=7;else c=e;else if(c^(f[d+8>>2]|0)!=0)g=7;else c=e;do if((g|0)==7){c=f[a>>2]|0;if(!c)c=e;else{if((f[c+216>>2]|0)!=(a|0))if((f[c+208>>2]|0)!=(a|0)){c=e;break}eOa(c);c=f[b>>2]|0}}while(0);d=f[b+4>>2]|0;if(d|0)Npb(d);f[h>>2]=c;h=a+700|0;c=f[h>>2]|0;f[h>>2]=d;if(!c){h=1;return h|0}Ppb(c);h=1;return h|0}function XMa(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+4|0;h=j+8|0;e=j;n[g>>2]=c;n[h>>2]=0.0;n[e>>2]=1.0;e=c<1.0?g:e;h=f[(+n[e>>2]>0.0?e:h)>>2]|0;f[g>>2]=h;g=a+724|0;e=b[g>>0]|0;c=(f[s>>2]=h,+n[s>>2]);do if(!(e&2))i=4;else if(+n[a+712>>2]==c){a=0;u=j;return a|0}else if(+n[a+712>>2]>0.0^c>0.0){i=4;break}else{d=e;break}while(0);do if((i|0)==4){d=f[a>>2]|0;if(!d)d=e;else{if((f[d+216>>2]|0)!=(a|0))if((f[d+208>>2]|0)!=(a|0)){d=e;break}eOa(d);d=b[g>>0]|0}}while(0);f[a+712>>2]=h;b[g>>0]=d|2;a=1;u=j;return a|0}function YMa(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+4|0;h=j+8|0;e=j;n[g>>2]=c;n[h>>2]=0.0;n[e>>2]=1.0;e=c<1.0?g:e;h=f[(+n[e>>2]>0.0?e:h)>>2]|0;f[g>>2]=h;g=a+724|0;e=b[g>>0]|0;c=(f[s>>2]=h,+n[s>>2]);do if(!(e&4))i=4;else if(+n[a+716>>2]==c){a=0;u=j;return a|0}else if(+n[a+716>>2]>0.0^c>0.0){i=4;break}else{d=e;break}while(0);do if((i|0)==4){d=f[a>>2]|0;if(!d)d=e;else{if((f[d+216>>2]|0)!=(a|0))if((f[d+208>>2]|0)!=(a|0)){d=e;break}eOa(d);d=b[g>>0]|0}}while(0);f[a+716>>2]=h;b[g>>0]=d|4;a=1;u=j;return a|0}function ZMa(a,c){a=a|0;c=+c;var d=0,e=0;d=a+724|0;e=b[d>>0]|0;a=a+720|0;if(e&8)if(+n[a>>2]==c){e=0;return e|0}n[a>>2]=c;b[d>>0]=e|8;e=1;return e|0}function _Ma(a){a=a|0;var b=0,c=0;b=a+696|0;if(!(f[b>>2]|0)){a=0;return a|0}f[b>>2]=0;c=a+700|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);b=f[a>>2]|0;if(!b){c=1;return c|0}if((f[b+216>>2]|0)!=(a|0))if((f[b+208>>2]|0)!=(a|0)){c=1;return c|0}eOa(b);c=1;return c|0}function $Ma(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0;l=a+60|0;i=a;k=i+60|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(k|0));k=Wpb(3800)|0;aNa(k,a);f[l>>2]=k;f[a+64>>2]=f[c>>2];c=f[c+4>>2]|0;f[a+68>>2]=c;if(c|0)Npb(c);g=a+72|0;c=Wpb(160)|0;sRa(c,13.0,13.0,128,512,200);f[g>>2]=c;c=a+120|0;i=a+80|0;k=i+40|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(k|0));p[c>>3]=1.0;f[a+128>>2]=0;n[a+132>>2]=.15000000596046448;n[a+136>>2]=.15000000596046448;n[a+140>>2]=.15000000596046448;c=a+208|0;i=a+144|0;k=i+64|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(k|0));PMa(c,a);f[a+216>>2]=0;f[a+220>>2]=0;b[a+224>>0]=7;b[a+225>>0]=2;b[a+226>>0]=0;b[a+227>>0]=0;b[a+228>>0]=1;b[a+229>>0]=1;i=a+230|0;k=(j[i>>1]|j[i+2>>1]<<16)&-131072|63617;d[i>>1]=k;d[i+2>>1]=k>>>16;i=a+236|0;k=i+48|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(k|0));b[a+296>>0]=0;p[a+304>>3]=1.0;b[a+312>>0]=0;b[a+313>>0]=0;e=a+360|0;i=a+320|0;k=i+40|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(k|0));p[e>>3]=1.0;f[a+368>>2]=512;n[a+372>>2]=0.0;n[a+376>>2]=1.0;b[a+380>>0]=1;k=f[g>>2]|0;nh[f[(f[k>>2]|0)+84>>2]&1023](k,a);vRa((f[l>>2]|0)+112|0,0);k=(f[l>>2]|0)+189|0;i=h[k>>0]|h[k+1>>0]<<8|16;b[k>>0]=i;b[k+1>>0]=i>>8;k=(f[l>>2]|0)+189|0;i=h[k>>0]|h[k+1>>0]<<8|32;b[k>>0]=i;b[k+1>>0]=i>>8;k=a+381|0;b[k>>0]=1;b[k+1>>0]=1;b[k+2>>0]=1;b[k+3>>0]=1;b[k+4>>0]=1;b[k+5>>0]=1;n[a+284>>2]=.07500000298023224;n[a+288>>2]=.07500000298023224;n[a+292>>2]=.07500000298023224;a=f[l>>2]|0;MTa(a+2716|0,b[a+2742>>0]|0);a=f[l>>2]|0;k=a+2744|0;a=a+2760|0;f[a>>2]=f[k>>2];f[a+4>>2]=f[k+4>>2];f[a+8>>2]=f[k+8>>2];f[a+12>>2]=f[k+12>>2];l=(f[l>>2]|0)+2792|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;XMa(f[c>>2]|0,.3330000042915344)|0;YMa(f[c>>2]|0,.5)|0;ZMa(f[c>>2]|0,12.0)|0;return}function aNa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0;tRa(a,c);tRa(a+112|0,c);jga(a+224|0);e=a+912|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;d[e+12>>1]=0;f[a+928>>2]=1026;e=a+960|0;g=a+932|0;h=g+28|0;do{b[g>>0]=0;g=g+1|0}while((g|0)<(h|0));n[e>>2]=1.0;g=a+964|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+980>>2]=1.0;uVa(a+984|0,c);f[a+1824>>2]=0;f[a+1828>>2]=0;f[a+1820>>2]=a+1824;c=a+1832|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;mSa(a+1852|0);m2a(a+1912|0);m2a(a+1980|0);m2a(a+2048|0);oTa(a+2116|0);jVa(a+2148|0);DUa(a+2152|0);ASa(a+2228|0);_Ta(a+2404|0);ITa(a+2440|0);ITa(a+2716|0);c=a+3044|0;g=a+2992|0;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[c>>2]=.20000000298023224;n[a+3048>>2]=0.0;n[a+3052>>2]=0.0;n[a+3056>>2]=0.0;n[a+3060>>2]=1.0;n[a+3064>>2]=0.0;n[a+3068>>2]=1.0;n[a+3072>>2]=0.0;n[a+3076>>2]=1.0;n[a+3080>>2]=1.0;n[a+3084>>2]=1.0;n[a+3088>>2]=0.0;n[a+3092>>2]=1.0;n[a+3096>>2]=1.0;n[a+3100>>2]=0.0;n[a+3104>>2]=0.0;n[a+3108>>2]=1.0;n[a+3112>>2]=0.0;n[a+3116>>2]=0.0;n[a+3120>>2]=1.0;n[a+3124>>2]=1.0;PUa(a+3156|0);uTa(a+3176|0);c=a+3344|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;YSa(a+3364|0);n[a+3448>>2]=0.0;n[a+3452>>2]=0.0;n[a+3456>>2]=0.0;n[a+3460>>2]=1.0;n[a+3464>>2]=0.0;n[a+3468>>2]=0.0;n[a+3472>>2]=0.0;n[a+3476>>2]=1.0;c=a+3480|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;c=a+3572|0;g=a+3516|0;h=g+56|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[c>>2]=-1;f[c+4>>2]=-1;f[c+8>>2]=-1;f[c+12>>2]=-1;f[c+16>>2]=-1;n[a+3592>>2]=0.0;n[a+3596>>2]=0.0;n[a+3600>>2]=0.0;n[a+3604>>2]=.6499999761581421;f[a+3608>>2]=5;n[a+3612>>2]=1.0;b[a+3616>>0]=1;f[a+3620>>2]=0;f[a+3624>>2]=0;f[a+3648>>2]=0;f[a+3652>>2]=0;f[a+3676>>2]=0;f[a+3680>>2]=0;g=a+3704|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;n[a+3724>>2]=1.0;n[a+3728>>2]=.05000000074505806;n[a+3732>>2]=.02500000037252903;g=a+3736|0;h=a+3760|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[h>>2]=-1;f[h+4>>2]=-1;f[h+8>>2]=-1;f[h+12>>2]=-1;f[h+16>>2]=-1;n[a+3780>>2]=.6499999761581421;n[a+3784>>2]=10.0;n[a+3788>>2]=1.0;f[a+3792>>2]=9;b[a+3796>>0]=0;return}function bNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=a+72|0;b=f[d>>2]|0;do if(b|0){if(Pg[f[(f[b>>2]|0)+88>>2]&255](b,a)|0){b=f[d>>2]|0;f[d>>2]=0;if(b|0){fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[d>>2]|0;f[d>>2]=0;if(!b)break;fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[d>>2]|0;if(!b)break;nh[f[(f[b>>2]|0)+84>>2]&1023](b,a);b=f[d>>2]|0;c=f[b>>2]|0;if(!(f[a+104>>2]|0)){fh[f[c+116>>2]&2047](b);break}else{fh[f[c+112>>2]&2047](b);break}}}else f[d>>2]=0;f[d>>2]=0}while(0);b=a+60|0;c=f[b>>2]|0;if(c|0){cNa(c);Zpb(c)}f[b>>2]=0;b=f[a+280>>2]|0;if(b|0)Ppb(b);b=f[a+272>>2]|0;if(b|0)Ppb(b);b=f[a+264>>2]|0;if(b|0)Ppb(b);b=f[a+256>>2]|0;if(b|0)Ppb(b);b=f[a+248>>2]|0;if(b|0)Ppb(b);b=f[a+240>>2]|0;if(b|0)Ppb(b);b=f[a+220>>2]|0;if(b|0)Ppb(b);b=f[a+212>>2]|0;if(b|0)Ppb(b);b=f[d>>2]|0;f[d>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[a+68>>2]|0;if(b|0)Ppb(b);d=a+48|0;b=f[d>>2]|0;if(b|0){e=a+52|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+24|0;b=f[d>>2]|0;if(b|0){e=a+28|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+12|0;b=f[d>>2]|0;if(b|0){e=a+16|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}b=f[a>>2]|0;if(!b)return;d=a+4|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[d>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function cNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+3756>>2]|0;if(b|0)Ppb(b);b=f[a+3748>>2]|0;if(b|0)Ppb(b);b=f[a+3740>>2]|0;if(b|0)Ppb(b);b=f[a+3708>>2]|0;if(b|0)Ppb(b);b=f[a+3680>>2]|0;if(b|0)Ppb(b);b=f[a+3652>>2]|0;if(b|0)Ppb(b);b=f[a+3624>>2]|0;if(b|0)Ppb(b);b=f[a+3568>>2]|0;if(b|0)Ppb(b);b=f[a+3560>>2]|0;if(b|0)Ppb(b);b=f[a+3552>>2]|0;if(b|0)Ppb(b);b=f[a+3544>>2]|0;if(b|0)Ppb(b);b=f[a+3536>>2]|0;if(b|0)Ppb(b);b=f[a+3528>>2]|0;if(b|0)Ppb(b);b=f[a+3520>>2]|0;if(b|0)Ppb(b);b=f[a+3496>>2]|0;if(b|0)Ppb(b);b=f[a+3488>>2]|0;if(b|0)Ppb(b);dNa(a+3364|0);b=f[a+3356>>2]|0;if(b|0)Ppb(b);b=f[a+3348>>2]|0;if(b|0)Ppb(b);eNa(a+3176|0);b=f[a+3168>>2]|0;if(b|0)Ppb(b);b=f[a+3160>>2]|0;if(b|0)Ppb(b);b=f[a+3028>>2]|0;if(b|0)Ppb(b);b=f[a+3020>>2]|0;if(b|0)Ppb(b);b=f[a+3012>>2]|0;if(b|0)Ppb(b);b=f[a+3004>>2]|0;if(b|0)Ppb(b);b=f[a+2996>>2]|0;if(b|0)Ppb(b);fNa(a+2716|0);fNa(a+2440|0);b=f[a+2432>>2]|0;if(b|0)Ppb(b);b=f[a+2424>>2]|0;if(b|0)Ppb(b);b=f[a+2416>>2]|0;if(b|0)Ppb(b);b=f[a+2408>>2]|0;if(b|0)Ppb(b);gNa(a+2228|0);b=f[a+2196>>2]|0;if(b|0)Ppb(b);b=f[a+2188>>2]|0;if(b|0)Ppb(b);b=f[a+2180>>2]|0;if(b|0)Ppb(b);b=f[a+2172>>2]|0;if(b|0)Ppb(b);b=f[a+2164>>2]|0;if(b|0)Ppb(b);b=f[a+2156>>2]|0;if(b|0)Ppb(b);kVa(a+2148|0);b=f[a+2140>>2]|0;if(b|0)Ppb(b);b=f[a+2128>>2]|0;if(b|0)Ppb(b);b=f[a+2120>>2]|0;if(b|0)Ppb(b);b=f[a+2072>>2]|0;if(b|0){c=a+2076|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+2068>>2]|0;if(b|0)Ppb(b);b=f[a+2060>>2]|0;if(b|0)Ppb(b);b=f[a+2052>>2]|0;if(b|0)Ppb(b);b=f[a+2004>>2]|0;if(b|0){c=a+2008|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+2e3>>2]|0;if(b|0)Ppb(b);b=f[a+1992>>2]|0;if(b|0)Ppb(b);b=f[a+1984>>2]|0;if(b|0)Ppb(b);b=f[a+1936>>2]|0;if(b|0){c=a+1940|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+1932>>2]|0;if(b|0)Ppb(b);b=f[a+1924>>2]|0;if(b|0)Ppb(b);b=f[a+1916>>2]|0;if(b|0)Ppb(b);b=f[a+1864>>2]|0;if(b|0)Ppb(b);b=f[a+1856>>2]|0;if(b|0)Ppb(b);e=a+1848|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){hNa(b+840|0);iNa(b);Zpb(b)}e=a+1844|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){hNa(b+840|0);iNa(b);Zpb(b)}d=a+1832|0;b=f[d>>2]|0;if(b|0){e=a+1836|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-120|0;f[e>>2]=g;hNa(g);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}jNa(a+1820|0,f[a+1824>>2]|0);iNa(a+984|0);b=f[a+972>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[e+24>>2]|0;if(c|0)Qpb(c);c=f[e+8>>2]|0;if(c|0){d=e+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Zpb(c)}Zpb(e)}while((b|0)!=0);g=a+964|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+952>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;c=f[d+20>>2]|0;if(c|0)Qpb(c);c=f[d+12>>2]|0;if(c|0)Ppb(c);Zpb(d)}while((b|0)!=0);g=a+944|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+912>>2]|0;if(!b){g=a+112|0;hNa(g);hNa(a);return}c=a+916|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-28-b|0)>>>0)/28|0)*28|0);Zpb(b);g=a+112|0;hNa(g);hNa(a);return}function dNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);h=a+20|0;b=f[h>>2]|0;if(b|0){g=a+24|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-72|0;f[g>>2]=d;e=f[c+-28>>2]|0;if(e|0)Ppb(e);rVa(c+-52|0);rVa(d);c=f[g>>2]|0}while((c|0)!=(b|0));b=f[h>>2]|0}Zpb(b)}b=f[a+8>>2]|0;if(b|0){c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+4>>2]|0;if(!b)return;Ppb(b);return}function eNa(a){a=a|0;var b=0;b=f[a+100>>2]|0;if(b|0)Ppb(b);b=f[a+72>>2]|0;if(b|0)Ppb(b);b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(b|0)Ppb(b);b=f[a+12>>2]|0;if(b|0)Ppb(b);b=f[a+4>>2]|0;if(!b)return;Ppb(b);return}function fNa(a){a=a|0;var b=0;b=f[a+260>>2]|0;if(b|0)Ppb(b);b=f[a+240>>2]|0;if(b|0)Ppb(b);b=f[a+220>>2]|0;if(b|0)Ppb(b);b=f[a+200>>2]|0;if(b|0)Ppb(b);b=f[a+180>>2]|0;if(b|0)Ppb(b);b=f[a+132>>2]|0;if(b|0)Ppb(b);b=f[a+124>>2]|0;if(b|0)Ppb(b);b=f[a+116>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(b|0)Ppb(b);b=f[a+12>>2]|0;if(b|0)Ppb(b);b=f[a+4>>2]|0;if(!b)return;Ppb(b);return}function gNa(a){a=a|0;var b=0;b=f[a+60>>2]|0;if(b|0)Ppb(b);b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(b|0)Ppb(b);b=f[a+12>>2]|0;if(b|0)Ppb(b);b=f[a+4>>2]|0;if(!b)return;Ppb(b);return}function hNa(a){a=a|0;var b=0,c=0;b=f[a+92>>2]|0;if(b|0)Ppb(b);b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+60>>2]|0;if(b|0)Ppb(b);b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);c=f[a+4>>2]|0;if(!c)return;b=a+8|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Zpb(c);return}function iNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;kNa(a+324|0);e=a+312|0;b=f[e>>2]|0;if(b|0){g=a+316|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-524|0;f[g>>2]=d;kNa(c+-504|0);c=f[c+-516>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;Zpb(h)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c);c=f[g>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b)}b=f[a+296>>2]|0;if(b|0){c=a+300|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+284>>2]|0;if(b|0){c=a+288|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+272>>2]|0;if(!b){h=a+16|0;mNa(h);return}c=a+276|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b);h=a+16|0;mNa(h);return}function jNa(a,b){a=a|0;b=b|0;var c=0,d=0;if(!b)return;jNa(a,f[b>>2]|0);jNa(a,f[b+4>>2]|0);kNa(b+776|0);d=f[b+24>>2]|0;if(d|0){a=b+28|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d)}Zpb(b);return}function kNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+484>>2]|0;if(b|0){c=a+488|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-60-b|0)>>>0)/60|0)*60|0);Zpb(b)}g=a+464|0;lNa(g,f[a+472>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+444|0;lNa(g,f[a+452>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+424|0;lNa(g,f[a+432>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+404|0;lNa(g,f[a+412>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+384|0;lNa(g,f[a+392>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+364|0;lNa(g,f[a+372>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+344|0;lNa(g,f[a+352>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+324|0;lNa(g,f[a+332>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+304|0;lNa(g,f[a+312>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+284|0;lNa(g,f[a+292>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+264|0;lNa(g,f[a+272>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);g=a+244|0;lNa(g,f[a+252>>2]|0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+232>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+224|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+212>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+204|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+192>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+184|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+172>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+164|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+152>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+144|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+132>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+124|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+112>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+104|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+92>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+84|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+72>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+64|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+52>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;g=f[c+12>>2]|0;if(g|0){d=c+16|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~(((e+-44-g|0)>>>0)/44|0)*44|0);Zpb(g)}Zpb(c)}while((b|0)!=0);g=a+44|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+32>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);g=a+24|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+12>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}Zpb(c)}while((b|0)!=0);a=a+4|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Zpb(b);return}function lNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;if(!b)return;do{h=b;b=f[b>>2]|0;a=f[h+20>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;e=f[g+60>>2]|0;if(e|0){c=g+64|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}c=f[g+56>>2]|0;if(c|0)Ppb(c);c=f[g+48>>2]|0;if(c|0)Ppb(c);Zpb(g)}while((a|0)!=0);g=h+12|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Zpb(a);Zpb(h)}while((b|0)!=0);return}function mNa(a){a=a|0;var b=0,c=0,d=0;b=f[a+244>>2]|0;if(b|0){c=a+248|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+228>>2]|0;if(b|0){c=a+232|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+212>>2]|0;if(b|0){c=a+216|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+196>>2]|0;if(b|0){c=a+200|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+180>>2]|0;if(b|0){c=a+184|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+164>>2]|0;if(b|0){c=a+168|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+148>>2]|0;if(b|0){c=a+152|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+132>>2]|0;if(b|0){c=a+136|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+116>>2]|0;if(b|0){c=a+120|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+100>>2]|0;if(b|0){c=a+104|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+84>>2]|0;if(b|0){c=a+88|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+68>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+36>>2]|0;if(b|0){c=a+40|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-16-d|0)>>>4)<<4);Zpb(d);return}function nNa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0;j=u;u=u+32|0;h=j;i=j+24|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;oNa(i,a,c,d,h);g=(b[i+1>>0]|0)==0;if(g)re();d=f[a+72>>2]|0;if(d|0){k=+Kg[f[(f[d>>2]|0)+80>>2]&63](d);p[h>>3]=k}if(c<<24>>24==4){c=a+88|0;f[c>>2]=(f[c>>2]|0)+(f[h+8>>2]|0);c=a+92|0;f[c>>2]=(f[c>>2]|0)+(f[h+12>>2]|0);c=a+96|0;f[c>>2]=(f[c>>2]|0)+(f[h+16>>2]|0);c=a+100|0;f[c>>2]=(f[c>>2]|0)+(f[h+20>>2]|0)}else{c=a+80|0;f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];f[c+16>>2]=f[h+16>>2];f[c+20>>2]=f[h+20>>2]}if(e|0){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[e+12>>2]=f[h+12>>2];f[e+16>>2]=f[h+16>>2];f[e+20>>2]=f[h+20>>2]}if(g){i=b[i>>0]|0;i=i<<24>>24!=0;u=j;return i|0}pNa(a,h);i=b[i>>0]|0;i=i<<24>>24!=0;u=j;return i|0}function oNa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0;r=0;t=u;u=u+2720|0;if(c<<24>>24==1)Xwa(f[b+64>>2]|0);g=(d|0)==0?-1:d;j=~~+n$()>>>0;f[(b+108|0)>>2]=(f[(b+108|0)>>2]|0)+1;if(e|0){f[(e+8|0)>>2]=0;f[(e+8|0)+4>>2]=0;f[(e+8|0)+8>>2]=0;f[(e+8|0)+12>>2]=0}k=Jga((f[(b+60|0)>>2]|0)+224|0,f[52825]|0,f[52826]|0)|0;n[(t+1120|0)>>2]=+p[k>>3];n[((t+1120|0)+4|0)>>2]=+p[k+8>>3];n[((t+1120|0)+8|0)>>2]=+p[k+16>>3];n[((t+1120|0)+12|0)>>2]=+p[k+24>>3];n[((t+1120|0)+16|0)>>2]=+p[k+32>>3];n[((t+1120|0)+20|0)>>2]=+p[k+40>>3];n[((t+1120|0)+24|0)>>2]=+p[k+48>>3];n[((t+1120|0)+28|0)>>2]=+p[k+56>>3];n[((t+1120|0)+32|0)>>2]=+p[k+64>>3];n[((t+1120|0)+36|0)>>2]=+p[k+72>>3];n[((t+1120|0)+40|0)>>2]=+p[k+80>>3];n[((t+1120|0)+44|0)>>2]=+p[k+88>>3];n[((t+1120|0)+48|0)>>2]=+p[k+96>>3];n[((t+1120|0)+52|0)>>2]=+p[k+104>>3];n[((t+1120|0)+56|0)>>2]=+p[k+112>>3];n[((t+1120|0)+60|0)>>2]=+p[k+120>>3];f[(t+304|0)>>2]=t+1120|0;f[(t+304|0)+4>>2]=b+144|0;if(qNa(t+304|0)|0){f[(b+144|0)>>2]=f[(t+1120|0)>>2];f[b+148>>2]=f[((t+1120|0)+4|0)>>2];f[b+152>>2]=f[((t+1120|0)+8|0)>>2];f[b+156>>2]=f[((t+1120|0)+12|0)>>2];f[b+160>>2]=f[((t+1120|0)+16|0)>>2];f[b+164>>2]=f[((t+1120|0)+20|0)>>2];f[b+168>>2]=f[((t+1120|0)+24|0)>>2];f[b+172>>2]=f[((t+1120|0)+28|0)>>2];f[b+176>>2]=f[((t+1120|0)+32|0)>>2];f[b+180>>2]=f[((t+1120|0)+36|0)>>2];f[b+184>>2]=f[((t+1120|0)+40|0)>>2];f[b+188>>2]=f[((t+1120|0)+44|0)>>2];f[b+192>>2]=f[((t+1120|0)+48|0)>>2];f[b+196>>2]=f[((t+1120|0)+52|0)>>2];f[b+200>>2]=f[((t+1120|0)+56|0)>>2];f[b+204>>2]=f[((t+1120|0)+60|0)>>2];THa(b+36|0,(f[(b+60|0)>>2]|0)+224|0);d=1}else d=0;h=f[(b+60|0)>>2]|0;i=f[h+1820>>2]|0;k=1;if(k){k=0;if((i|0)==(h+1824|0|0))l=0;else k=1}f[t+1224>>2]=b;f[t+1232>>2]=c;f[t+1248>>2]=e;f[t+1288>>2]=d;f[t+1296>>2]=l;f[t+1320>>2]=m;f[t+1336>>2]=o;f[t+1344>>2]=g;f[t+1352>>2]=q;f[t+1432>>2]=h;f[t+1440>>2]=i;f[t+1576>>2]=j;f[t+2560>>2]=r;f[t+2568>>2]=k;f[t+2576>>2]=s;f[t+2616>>2]=0;f[t+2620>>2]=0;jQa(t);l=f[t+1296>>2]|0;m=f[t+1320>>2]|0;o=f[t+1336>>2]|0;q=f[t+1352>>2]|0;r=f[t+2560>>2]|0;s=f[t+2576>>2]|0;f[t+1216>>2]=a;f[t+1224>>2]=b;f[t+1232>>2]=c;f[t+1248>>2]=e;f[t+1296>>2]=l;f[t+1320>>2]=m;f[t+1336>>2]=o;f[t+1352>>2]=q;f[t+1576>>2]=j;f[t+2560>>2]=r;f[t+2576>>2]=s;f[t+2608>>2]=0;f[t+2612>>2]=0;iQa(t);G=f[t+2608>>2]|0;D=f[t+2612>>2]|0;H=+n[t+2612>>2];f[t+2608>>2]=0;f[t+2612>>2]=0;if((G|0)==5)return}function pNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;h=m;d=f[a>>2]|0;l=a+4|0;i=f[l>>2]|0;if((d|0)==(i|0)){u=m;return}j=h+16|0;do{g=d+16|0;e=f[g>>2]|0;if(e|0){nh[f[(f[e>>2]|0)+24>>2]&1023](e,c);if(b[d+24>>0]|0){f[j>>2]=0;e=f[g>>2]|0;if((d|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[g>>2]=0;e=f[j>>2]|0;do if(!e){f[g>>2]=0;k=15}else if((h|0)==(e|0)){f[g>>2]=d;k=f[j>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,d);k=15;break}else{f[g>>2]=e;f[j>>2]=0;e=0;g=0;break}while(0);if((k|0)==15){k=0;g=f[j>>2]|0;e=g}if((h|0)==(e|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}}d=d+32|0}while((d|0)!=(i|0));d=f[l>>2]|0;if((f[a>>2]|0)==(d|0)){u=m;return}while(1){if(!(f[d+-16>>2]|0)){e=d;g=0;c=0}else{k=30;break}d=d+-32|0;while(1){k=e+-32|0;f[l>>2]=k;if((k|0)==(g|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);e=f[l>>2]|0;if((e|0)==(d|0))break;c=f[e+-16>>2]|0;g=c}if((f[a>>2]|0)==(d|0)){k=30;break}}if((k|0)==30){u=m;return}}function qNa(a){a=a|0;var b=0;b=f[a>>2]|0;a=f[a+4>>2]|0;if(+n[b>>2]!=+n[a>>2]){b=1;return b|0}if(+n[b+4>>2]!=+n[a+4>>2]){b=1;return b|0}if(+n[b+8>>2]!=+n[a+8>>2]){b=1;return b|0}if(+n[b+12>>2]!=+n[a+12>>2]){b=1;return b|0}if(+n[b+16>>2]!=+n[a+16>>2]){b=1;return b|0}if(+n[b+20>>2]!=+n[a+20>>2]){b=1;return b|0}if(+n[b+24>>2]!=+n[a+24>>2]){b=1;return b|0}if(+n[b+28>>2]!=+n[a+28>>2]){b=1;return b|0}if(+n[b+32>>2]!=+n[a+32>>2]){b=1;return b|0}if(+n[b+36>>2]!=+n[a+36>>2]){b=1;return b|0}if(+n[b+40>>2]!=+n[a+40>>2]){b=1;return b|0}if(+n[b+44>>2]!=+n[a+44>>2]){b=1;return b|0}if(+n[b+48>>2]!=+n[a+48>>2]){b=1;return b|0}if(+n[b+52>>2]!=+n[a+52>>2]){b=1;return b|0}if(+n[b+56>>2]!=+n[a+56>>2]){b=1;return b|0}b=+n[b+60>>2]!=+n[a+60>>2];return b|0}function rNa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0.0,r=0.0,s=0.0,t=0;m=+p[a+344>>3];q=+p[a+352>>3];r=+p[a+360>>3];s=+L(+(m*m+(q*q+r*r)));p[d>>3]=m/s;n=d+8|0;p[n>>3]=q/s;o=d+16|0;p[o>>3]=r/s;t=a+230|0;if((j[t>>1]|j[t+2>>1]<<16)&16384|0){m=+p[b>>3];r=+p[b+24>>3];if(m<=r){l=+p[b+8>>3];s=+p[b+32>>3];if(l<=s){k=+p[b+16>>3];q=+p[b+40>>3];if(k<=q){p[c>>3]=m;b=c+8|0;p[b>>3]=l;a=c+16|0;p[a>>3]=k;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3];i=f*l+e*k;h=g*m+i;i=g*r+i;if(i<h){p[c>>3]=r;p[b>>3]=l;p[a>>3]=k;h=i;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3]}i=g*m+(f*s+e*k);if(i<h){p[c>>3]=m;p[b>>3]=s;p[a>>3]=k;h=i;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3]}i=g*r+(f*s+e*k);if(i<h){p[c>>3]=r;p[b>>3]=s;p[a>>3]=k;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3]}else i=h;h=g*m+(f*l+e*q);if(h<i){p[c>>3]=m;p[b>>3]=l;p[a>>3]=q;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3]}else h=i;i=g*r+(f*l+e*q);if(i<h){p[c>>3]=r;p[b>>3]=l;p[a>>3]=q;e=+p[o>>3];g=+p[d>>3];f=+p[n>>3]}else i=h;h=g*m+(f*s+e*q);if(h<i){p[c>>3]=m;p[b>>3]=s;p[a>>3]=q;g=+p[d>>3];f=+p[n>>3];e=+p[o>>3]}else h=i;if(!(g*r+(f*s+e*q)<h))return;p[c>>3]=r;p[b>>3]=s;p[a>>3]=q;return}}}}p[c>>3]=+p[a+320>>3];p[c+8>>3]=+p[a+328>>3];p[c+16>>3]=+p[a+336>>3];return}function sNa(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,k=0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0,y=0.0,z=0,A=0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0;N=u;u=u+1920|0;F=N+1232|0;G=N+1208|0;I=N+520|0;J=N+392|0;K=N+264|0;M=N;h=a+230|0;i=j[h>>1]|j[h+2>>1]<<16;if(!(i&1024)){M=0;u=N;return M|0}l=+p[c>>3];k=c+24|0;m=+p[k>>3];if(l<=m){z=c+8|0;o=+p[z>>3];A=c+32|0;q=+p[A>>3];if(o<=q){C=c+16|0;r=+p[C>>3];D=c+40|0;s=+p[D>>3];if(r<=s){H=a+60|0;E=f[H>>2]|0;x=f[E+1844>>2]|0;if(!(i&4096))if(+p[x+952>>3]==l)if(+p[x+960>>3]==o)if(+p[x+968>>3]==r)if(+p[x+976>>3]==m)if(+p[x+984>>3]==q)if(+p[x+992>>3]==s){M=0;u=N;return M|0}p[x+952>>3]=l;p[x+960>>3]=+p[z>>3];p[x+968>>3]=+p[C>>3];p[x+976>>3]=+p[k>>3];p[x+984>>3]=+p[A>>3];p[x+992>>3]=+p[D>>3];x=(j[h>>1]|j[h+2>>1]<<16)&-4097;d[h>>1]=x;d[h+2>>1]=x>>>16;t=+p[k>>3];B=+p[c>>3]*.5+t*.5;p[F>>3]=B;r=+p[A>>3];y=+p[z>>3]*.5+r*.5;p[F+8>>3]=y;s=+p[D>>3];w=+p[C>>3]*.5+s*.5;p[F+16>>3]=w;t=t-B;r=r-y;s=s-w;s=+L(+(t*t+(r*r+s*s)));r=+n[E+3612>>2]*+(((f[E+3608>>2]|0)+-1|0)>>>0);x=a+368|0;r=s+s*(r/(+((f[x>>2]|0)>>>0)-r));s=r*2.0;t=+p[g+8>>3];v=+p[g+16>>3];if(!(t*t+v*v+0.0>=.001)){l=+p[g>>3];m=l;o=0.0;q=-v}else{m=-t;o=v;q=0.0;l=+p[g>>3]}p[G>>3]=q;p[G+8>>3]=o;p[G+16>>3]=m;p[J>>3]=B+l;p[J+8>>3]=y+t;p[J+16>>3]=w+v;fga(I,1,J,F,G,s,s,1.0/r);c=f[(f[H>>2]|0)+1844>>2]|0;b[c+1e3>>0]=b[I>>0]|0;p[c+1008>>3]=+p[I+8>>3];p[c+1016>>3]=+p[I+16>>3];p[c+1024>>3]=+p[I+24>>3];p[c+1032>>3]=+p[I+32>>3];p[c+1040>>3]=+p[I+40>>3];p[c+1048>>3]=+p[I+48>>3];p[c+1056>>3]=+p[I+56>>3];p[c+1064>>3]=+p[I+64>>3];p[c+1072>>3]=+p[I+72>>3];p[c+1080>>3]=+p[I+80>>3];p[c+1088>>3]=+p[I+88>>3];p[c+1096>>3]=+p[I+96>>3];p[c+1104>>3]=+p[I+104>>3];p[c+1112>>3]=+p[I+112>>3];p[c+1120>>3]=+p[I+120>>3];p[c+1128>>3]=+p[I+128>>3];p[c+1136>>3]=+p[I+136>>3];p[c+1144>>3]=+p[I+144>>3];p[c+1152>>3]=+p[I+152>>3];p[c+1160>>3]=+p[I+160>>3];p[c+1168>>3]=+p[I+168>>3];p[c+1176>>3]=+p[I+176>>3];p[c+1184>>3]=+p[I+184>>3];p[c+1192>>3]=+p[I+192>>3];p[c+1200>>3]=+p[I+200>>3];h=c+1208|0;i=I+208|0;k=h+40|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(k|0));p[c+1248>>3]=+p[I+248>>3];p[c+1256>>3]=+p[I+256>>3];p[c+1264>>3]=+p[I+264>>3];p[c+1272>>3]=+p[I+272>>3];p[c+1280>>3]=+p[I+280>>3];p[c+1288>>3]=+p[I+288>>3];p[c+1296>>3]=+p[I+296>>3];p[c+1304>>3]=+p[I+304>>3];p[c+1312>>3]=+p[I+312>>3];p[c+1320>>3]=+p[I+320>>3];p[c+1328>>3]=+p[I+328>>3];p[c+1336>>3]=+p[I+336>>3];p[c+1344>>3]=+p[I+344>>3];p[c+1352>>3]=+p[I+352>>3];p[c+1360>>3]=+p[I+360>>3];p[c+1368>>3]=+p[I+368>>3];p[c+1376>>3]=+p[I+376>>3];p[c+1384>>3]=+p[I+384>>3];p[c+1392>>3]=+p[I+392>>3];p[c+1400>>3]=+p[I+400>>3];p[c+1408>>3]=+p[I+408>>3];p[c+1416>>3]=+p[I+416>>3];p[c+1424>>3]=+p[I+424>>3];p[c+1432>>3]=+p[I+432>>3];p[c+1440>>3]=+p[I+440>>3];p[c+1448>>3]=+p[I+448>>3];p[c+1456>>3]=+p[I+456>>3];p[c+1464>>3]=+p[I+464>>3];p[c+1472>>3]=+p[I+472>>3];p[c+1480>>3]=+p[I+480>>3];p[c+1488>>3]=+p[I+488>>3];p[c+1496>>3]=+p[I+496>>3];p[c+1504>>3]=+p[I+504>>3];p[c+1512>>3]=+p[I+512>>3];p[c+1520>>3]=+p[I+520>>3];p[c+1528>>3]=+p[I+528>>3];p[c+1536>>3]=+p[I+536>>3];p[c+1544>>3]=+p[I+544>>3];p[c+1552>>3]=+p[I+552>>3];p[c+1560>>3]=+p[I+560>>3];p[c+1568>>3]=+p[I+568>>3];p[c+1576>>3]=+p[I+576>>3];p[c+1584>>3]=+p[I+584>>3];p[c+1592>>3]=+p[I+592>>3];p[c+1600>>3]=+p[I+600>>3];p[c+1608>>3]=+p[I+608>>3];p[c+1616>>3]=+p[I+616>>3];p[c+1624>>3]=+p[I+624>>3];f[c+1632>>2]=f[I+632>>2];f[c+1636>>2]=f[I+636>>2];f[c+1640>>2]=f[I+640>>2];f[c+1644>>2]=f[I+644>>2];f[c+1648>>2]=f[I+648>>2];f[c+1652>>2]=f[I+652>>2];f[c+1656>>2]=f[I+656>>2];f[c+1660>>2]=f[I+660>>2];f[c+1664>>2]=f[I+664>>2];G=c+1668|0;F=I+668|0;f[G>>2]=f[F>>2];f[G+4>>2]=f[F+4>>2];f[G+8>>2]=f[F+8>>2];b[G+12>>0]=b[F+12>>0]|0;G=f[x>>2]|0;I=Jga(I,G,G)|0;p[J>>3]=+p[I>>3];p[J+8>>3]=+p[I+8>>3];v=+p[I+16>>3];p[J+16>>3]=v;p[J+24>>3]=+p[I+24>>3];p[J+32>>3]=+p[I+32>>3];p[J+40>>3]=+p[I+40>>3];w=+p[I+48>>3];p[J+48>>3]=w;p[J+56>>3]=+p[I+56>>3];p[J+64>>3]=+p[I+64>>3];p[J+72>>3]=+p[I+72>>3];B=+p[I+80>>3];p[J+80>>3]=B;p[J+88>>3]=+p[I+88>>3];p[J+96>>3]=+p[I+96>>3];p[J+104>>3]=+p[I+104>>3];y=+p[I+112>>3];p[J+112>>3]=y;p[J+120>>3]=+p[I+120>>3];B=v*+p[e>>3]+w*+p[e+8>>3]+(y+B*+p[e+16>>3]);p[K>>3]=1.0;I=K+8|0;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=0;f[I+20>>2]=0;f[I+24>>2]=0;f[I+28>>2]=0;p[K+40>>3]=1.0;I=K+48|0;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=0;f[I+20>>2]=0;f[I+24>>2]=0;f[I+28>>2]=0;p[K+80>>3]=1.0;I=K+88|0;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=0;f[I+20>>2]=0;p[K+120>>3]=1.0;p[K+112>>3]=B;Lga(J,M);f[M+128>>2]=K;J=M+136|0;wNa(J,M)|0;K=f[(f[H>>2]|0)+1844>>2]|0;n[K+1688>>2]=+p[J>>3];n[K+1692>>2]=+p[M+144>>3];n[K+1696>>2]=+p[M+152>>3];n[K+1700>>2]=+p[M+160>>3];n[K+1704>>2]=+p[M+168>>3];n[K+1708>>2]=+p[M+176>>3];n[K+1712>>2]=+p[M+184>>3];n[K+1716>>2]=+p[M+192>>3];n[K+1720>>2]=+p[M+200>>3];n[K+1724>>2]=+p[M+208>>3];n[K+1728>>2]=+p[M+216>>3];n[K+1732>>2]=+p[M+224>>3];n[K+1736>>2]=+p[M+232>>3];n[K+1740>>2]=+p[M+240>>3];n[K+1744>>2]=+p[M+248>>3];n[K+1748>>2]=+p[M+256>>3];M=1;u=N;return M|0}}}jga(F);HI((f[(f[a+60>>2]|0)+1844>>2]|0)+1e3|0,F)|0;M=1;u=N;return M|0}function tNa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0;i=u;u=u+192|0;h=i;switch(b[a+380>>0]|0){case 0:{f[e>>2]=f[a+372>>2];f[g>>2]=f[a+376>>2];u=i;return}case 1:{q=+p[c>>3];v=+p[c+8>>3];r=+p[c+16>>3];p[h>>3]=q;p[h+8>>3]=v;p[h+16>>3]=r;t=+p[c+24>>3];p[h+24>>3]=t;p[h+32>>3]=v;p[h+40>>3]=r;s=+p[c+32>>3];p[h+48>>3]=q;p[h+56>>3]=s;p[h+64>>3]=r;p[h+72>>3]=t;p[h+80>>3]=s;p[h+88>>3]=r;o=+p[c+40>>3];p[h+96>>3]=q;p[h+104>>3]=v;p[h+112>>3]=o;p[h+120>>3]=t;p[h+128>>3]=v;p[h+136>>3]=o;p[h+144>>3]=q;p[h+152>>3]=s;p[h+160>>3]=o;p[h+168>>3]=t;p[h+176>>3]=s;p[h+184>>3]=o;o=+p[d>>3];m=+p[d+8>>3];l=+p[d+16>>3];k=+p[d+24>>3];q=q*o;v=v*m;r=r*l+k;j=q+v+r;j=j>0.0?j:0.0;t=t*o;v=t+v+r;j=j<v?v:j;s=s*m;v=q+s+r;j=j<v?v:j;r=t+s+r;j=j<r?r:j;q=q+ +p[h+104>>3]*m+(+p[h+112>>3]*l+k);j=j<q?q:j;q=+p[h+120>>3]*o+ +p[h+128>>3]*m+(+p[h+136>>3]*l+k);j=j<q?q:j;q=+p[h+144>>3]*o+ +p[h+152>>3]*m+(+p[h+160>>3]*l+k);j=j<q?q:j;k=+p[h+168>>3]*o+ +p[h+176>>3]*m+(+p[h+184>>3]*l+k);j=j<k?k:j;n[e>>2]=j*+n[a+372>>2];n[g>>2]=j*+n[a+376>>2];u=i;return}default:{u=i;return}}}function uNa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;k=r;q=f[a>>2]|0;n=h[q+225>>0]|0;l=n&2;o=(l>>>1)+1|0;l=(l<<1)+4|0;n=n&1;m=2-n|0;n=(n<<2^4)+4|0;p=q+226|0;a:do switch(b[p>>0]|0){case 1:{k=f[q+60>>2]|0;YTa(k+2440|0,f[a+4>>2]|0,f[a+8>>2]|0,o,l,m,n,k+2148|0,(b[f[a+12>>2]>>0]|0)!=0);break}case 2:{k=f[q+60>>2]|0;HTa(k+2992|0,f[a+4>>2]|0,32,16,o,l,m,n,k+2148|0,(b[f[a+12>>2]>>0]|0)!=0,k+3620|0,k+224|0);break}case 3:{i=q+60|0;c=f[i>>2]|0;g=c+77|0;if(!((h[g>>0]|h[g+1>>0]<<8)&128)){SUa(c+3156|0,f[a+4>>2]|0,f[a+8>>2]|0);break a}if(b[f[a+16>>2]>>0]|0){e=b[211524]|0;p8a(211248,1)|0;g=(f[i>>2]|0)+3344|0;c=f[f[a+8>>2]>>2]|0;if(!c)c=0;else{d=f[c+4>>2]|0;if((f[c+8>>2]|0)==(d|0))c=0;else c=f[d+8>>2]|0}tTa(g,c);p8a(211248,e<<24>>24!=0)|0;c=f[i>>2]|0}g=f[a+4>>2]|0;f[k>>2]=0;i=k+4|0;f[i>>2]=0;YTa(c+2716|0,g,k,o,l,m,n,c+2148|0,(b[f[a+12>>2]>>0]|0)!=0);c=f[i>>2]|0;if(c|0)Ppb(c);break}default:rTa((f[q+60>>2]|0)+2116|0,f[a+4>>2]|0,f[a+8>>2]|0)}while(0);e=q+230|0;if((j[e>>1]|j[e+2>>1]<<16)&16|0)if(b[f[a+20>>2]>>0]|0){o=f[q+60>>2]|0;n=(b[p>>0]|0)==2;XSa(o+2228|0,f[a+4>>2]|0,n,0,o+224|0,n?32:48,o+2148|0)}if((b[p>>0]|0)==2){u=r;return}c=j[e>>1]|j[e+2>>1]<<16;if(c&32)if(b[f[a+24>>2]>>0]|0){c=f[q+60>>2]|0;if(!(b[f[a+20>>2]>>0]|0))d=b[f[a+28>>2]>>0]|0?16:0;else d=16;DTa(c+3176|0,f[a+4>>2]|0,c+224|0,d,c+2148|0);c=j[e>>1]|j[e+2>>1]<<16}if(!(c&256)){u=r;return}if(!(b[f[a+20>>2]>>0]|0))if(!(b[f[a+24>>2]>>0]|0)){u=r;return}q=f[q+60>>2]|0;gUa(q+3620|0,f[f[a+4>>2]>>2]|0,f[f[a+8>>2]>>2]|0,q+224|0,0);u=r;return}function vNa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,o=0,q=0;q=u;u=u+96|0;e=q+72|0;k=q;l=f[a>>2]|0;m=l+60|0;qSa((f[m>>2]|0)+1852|0);if(b[f[a+4>>2]>>0]|0){g=f[m>>2]|0;c=f[(f[g+1848>>2]|0)+864>>2]|0;if(c|0){d=f[c+4>>2]|0;if((f[c+8>>2]|0)!=(d|0)){c=f[d+8>>2]|0;if(c|0){i=f[a+8>>2]|0;n[e>>2]=+p[i>>3];n[e+4>>2]=+p[i+8>>3];n[e+8>>2]=+p[i+16>>3];mUa(g+3736|0,e,+p[f[a+12>>2]>>3],c,g+2148|0)}}}}e=a+16|0;t2a((f[m>>2]|0)+1912|0,f[e>>2]|0,0);g=l+230|0;if((j[g>>1]|j[g+2>>1]<<16)&1024|0)if((b[l+226>>0]|0)!=2){i=f[m>>2]|0;if((f[i+1832>>2]|0)==(f[i+1836>>2]|0))if(!(exa(f[l+64>>2]|0)|0)){h=f[m>>2]|0;i=f[h+1844>>2]|0;c=f[i+864>>2]|0;if(c|0){d=f[c+4>>2]|0;if((f[c+8>>2]|0)!=(d|0)){c=f[d+8>>2]|0;if(c|0){f[k>>2]=f[e>>2];f[k+4>>2]=i+1688;i=k+8|0;bda(i,k)|0;uUa(h+3516|0,c,i,(b[f[a+20>>2]>>0]|0)!=0)}}}}}if(!((j[g>>1]|j[g+2>>1]<<16)&64))o=18;else if(gTa((f[m>>2]|0)+3364|0)|0)o=18;else if((b[l+226>>0]|0)==2)o=18;else{h=f[52853]|0;i=f[52855]|0;k=f[52854]|0;l=f[52856]|0;g=b[211524]|0;p8a(211248,1)|0;$7a(211248,1,771)|0;a=a+24|0;tTa((f[m>>2]|0)+3344|0,f[f[a>>2]>>2]|0);$7a(211248,1,1)|0;e=f[m>>2]|0;jTa(e+3364|0,f[a>>2]|0,e+2148|0);sVa(f[a>>2]|0);p8a(211248,g<<24>>24!=0)|0;_7a(211248,h,i,k,l)|0}if((o|0)==18)uNa(f[a+28>>2]|0);c=f[m>>2]|0;d=f[c+1832>>2]|0;if((d|0)==(f[c+1836>>2]|0)){u=q;return}nTa(c+3448|0,f[(f[(f[d+24>>2]|0)+4>>2]|0)+8>>2]|0,f[(f[(f[d+144>>2]|0)+4>>2]|0)+8>>2]|0);u=q;return}function wNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0;h=b+128|0;r=f[h>>2]|0;u=b+32|0;t=b+64|0;s=b+96|0;p[a>>3]=+p[b>>3]*+p[r>>3]+ +p[u>>3]*+p[r+8>>3]+ +p[t>>3]*+p[r+16>>3]+ +p[s>>3]*+p[r+24>>3];r=f[h>>2]|0;q=b+8|0;o=b+40|0;n=b+72|0;m=b+104|0;p[a+8>>3]=+p[q>>3]*+p[r>>3]+ +p[o>>3]*+p[r+8>>3]+ +p[n>>3]*+p[r+16>>3]+ +p[m>>3]*+p[r+24>>3];r=f[h>>2]|0;l=b+16|0;k=b+48|0;j=b+80|0;i=b+112|0;p[a+16>>3]=+p[l>>3]*+p[r>>3]+ +p[k>>3]*+p[r+8>>3]+ +p[j>>3]*+p[r+16>>3]+ +p[i>>3]*+p[r+24>>3];r=f[h>>2]|0;g=b+24|0;e=b+56|0;d=b+88|0;c=b+120|0;p[a+24>>3]=+p[g>>3]*+p[r>>3]+ +p[e>>3]*+p[r+8>>3]+ +p[d>>3]*+p[r+16>>3]+ +p[c>>3]*+p[r+24>>3];r=f[h>>2]|0;p[a+32>>3]=+p[b>>3]*+p[r+32>>3]+ +p[u>>3]*+p[r+40>>3]+ +p[t>>3]*+p[r+48>>3]+ +p[s>>3]*+p[r+56>>3];r=f[h>>2]|0;p[a+40>>3]=+p[q>>3]*+p[r+32>>3]+ +p[o>>3]*+p[r+40>>3]+ +p[n>>3]*+p[r+48>>3]+ +p[m>>3]*+p[r+56>>3];r=f[h>>2]|0;p[a+48>>3]=+p[l>>3]*+p[r+32>>3]+ +p[k>>3]*+p[r+40>>3]+ +p[j>>3]*+p[r+48>>3]+ +p[i>>3]*+p[r+56>>3];r=f[h>>2]|0;p[a+56>>3]=+p[g>>3]*+p[r+32>>3]+ +p[e>>3]*+p[r+40>>3]+ +p[d>>3]*+p[r+48>>3]+ +p[c>>3]*+p[r+56>>3];r=f[h>>2]|0;p[a+64>>3]=+p[b>>3]*+p[r+64>>3]+ +p[u>>3]*+p[r+72>>3]+ +p[t>>3]*+p[r+80>>3]+ +p[s>>3]*+p[r+88>>3];r=f[h>>2]|0;p[a+72>>3]=+p[q>>3]*+p[r+64>>3]+ +p[o>>3]*+p[r+72>>3]+ +p[n>>3]*+p[r+80>>3]+ +p[m>>3]*+p[r+88>>3];r=f[h>>2]|0;p[a+80>>3]=+p[l>>3]*+p[r+64>>3]+ +p[k>>3]*+p[r+72>>3]+ +p[j>>3]*+p[r+80>>3]+ +p[i>>3]*+p[r+88>>3];r=f[h>>2]|0;p[a+88>>3]=+p[g>>3]*+p[r+64>>3]+ +p[e>>3]*+p[r+72>>3]+ +p[d>>3]*+p[r+80>>3]+ +p[c>>3]*+p[r+88>>3];r=f[h>>2]|0;p[a+96>>3]=+p[b>>3]*+p[r+96>>3]+ +p[u>>3]*+p[r+104>>3]+ +p[t>>3]*+p[r+112>>3]+ +p[s>>3]*+p[r+120>>3];b=f[h>>2]|0;p[a+104>>3]=+p[q>>3]*+p[b+96>>3]+ +p[o>>3]*+p[b+104>>3]+ +p[n>>3]*+p[b+112>>3]+ +p[m>>3]*+p[b+120>>3];b=f[h>>2]|0;p[a+112>>3]=+p[l>>3]*+p[b+96>>3]+ +p[k>>3]*+p[b+104>>3]+ +p[j>>3]*+p[b+112>>3]+ +p[i>>3]*+p[b+120>>3];b=f[h>>2]|0;p[a+120>>3]=+p[g>>3]*+p[b+96>>3]+ +p[e>>3]*+p[b+104>>3]+ +p[d>>3]*+p[b+112>>3]+ +p[c>>3]*+p[b+120>>3];return a|0}function xNa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=a+60|0;BVa((f[g>>2]|0)+984|0,c,d,e);h=a+230|0;if(!((j[h>>1]|j[h+2>>1]<<16)&1024))return;if((b[a+226>>0]|0)==2)return;h=f[g>>2]|0;if((f[h+1832>>2]|0)!=(f[h+1836>>2]|0))return;if(exa(f[a+64>>2]|0)|0)return;BVa(f[(f[g>>2]|0)+1844>>2]|0,c,d,e);return}function yNa(a){a=a|0;a=a+60|0;fWa((f[a>>2]|0)+984|0);uRa(f[a>>2]|0);return}function zNa(a){a=a|0;var b=0,c=0;b=a+230|0;c=(j[b>>1]|j[b+2>>1]<<16)&-77825|12288;d[b>>1]=c;d[b+2>>1]=c>>>16;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+104>>2]&2047](a);return}function ANa(a){a=a|0;var b=0,c=0;b=a+230|0;c=j[b>>1]|j[b+2>>1]<<16|12288;d[b>>1]=c;d[b+2>>1]=c>>>16;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+104>>2]&2047](a);return}function BNa(a){a=a|0;if((b[a+226>>0]|0)==3){a=1;return a|0}if((b[a+229>>0]|0)!=1){a=0;return a|0}a=r6a()|0;return a|0}function CNa(a){a=a|0;a=f[a+60>>2]|0;return (f[a+1832>>2]|0)!=(f[a+1836>>2]|0)|0}function DNa(a,b){a=a|0;b=b|0;a=a+230|0;b=b&1;b=b<<13|b<<12|(j[a>>1]|j[a+2>>1]<<16)&-12289;d[a>>1]=b;d[a+2>>1]=b>>>16;return}function ENa(a){a=a|0;return (f[a+60>>2]|0)+224|0}function FNa(a,b,c){a=a|0;b=b|0;c=c|0;if(!c){PI((f[a+60>>2]|0)+224|0,b)|0;c=a+230|0;b=j[c>>1]|j[c+2>>1]<<16|65536;d[c>>1]=b;d[c+2>>1]=b>>>16;return}c=a+230|0;if((j[c>>1]|j[c+2>>1]<<16)&65536|0)return;PI((f[a+60>>2]|0)+224|0,b)|0;return}function GNa(a,b){a=a|0;b=b|0;b=f[b>>2]|0;if((f[a+236>>2]|0)==(b|0))return 1;if((f[a+244>>2]|0)==(b|0))return 1;if((f[a+252>>2]|0)==(b|0))return 1;if((f[a+260>>2]|0)==(b|0))return 1;if((f[a+268>>2]|0)==(b|0))return 1;else return (f[a+276>>2]|0)==(b|0)|0;return 0}function HNa(a,b){a=a|0;b=b|0;pQa((f[a+60>>2]|0)+1308|0,b);return}function INa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;e=JNa(b+964|0,c)|0;f[a>>2]=0;g=a+4|0;f[g>>2]=0;h=e+4|0;b=f[h>>2]|0;do if(!b)f[g>>2]=0;else{b=Rpb(b)|0;f[g>>2]=b;if(b|0){d=f[e>>2]|0;f[a>>2]=d;if(!d){Ppb(b);break}else{u=j;return}}}while(0);hoa(i,c);b=f[i>>2]|0;c=i+4|0;d=f[c>>2]|0;if(d|0)Opb(d);f[e>>2]=b;b=f[h>>2]|0;f[h>>2]=d;if(b|0)Qpb(b);f[a>>2]=f[i>>2];f[g>>2]=f[c>>2];u=j;return}function JNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;v=f[c>>2]|0;i=f[c+4>>2]|0;t=i;u=v;if((v|0)==(i|0))w=0;else{c=0;e=v;do{c=(c<<6)+-1640531527+(c>>>2)+(h[e>>0]|0)^c;e=e+1|0}while((e|0)!=(i|0));w=c}r=a+4|0;e=f[r>>2]|0;s=(e|0)==0;a:do if(s)d=0;else{m=e+-1|0;i=(m&e|0)==0;if(i)p=m&w;else if(w>>>0<e>>>0)p=w;else p=(w>>>0)%(e>>>0)|0;c=f[(f[a>>2]|0)+(p<<2)>>2]|0;if(!c)d=p;else{c=f[c>>2]|0;if(!c)d=p;else{o=t-u|0;if(i){b:while(1){l=f[c+4>>2]|0;if(!((l|0)==(w|0)|(l&m|0)==(p|0))){d=p;break a}z=f[c+12>>2]|0;k=f[c+8>>2]|0;i=k;l=z;c:do if((z-k|0)==(o|0)){if((i|0)==(l|0)){y=45;break b}else k=v;while(1){if((b[i>>0]|0)!=(b[k>>0]|0))break c;i=i+1|0;if((i|0)==(l|0)){y=45;break b}else k=k+1|0}}while(0);c=f[c>>2]|0;if(!c){d=p;break a}}if((y|0)==45){z=c+20|0;return z|0}}else q=c;d:while(1){c=f[q+4>>2]|0;if((c|0)!=(w|0)){if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(p|0)){d=p;break a}}m=f[q+12>>2]|0;z=f[q+8>>2]|0;c=z;k=m;e:do if((m-z|0)==(o|0)){if((c|0)==(k|0)){c=q;y=45;break d}else i=v;while(1){if((b[c>>0]|0)!=(b[i>>0]|0))break e;c=c+1|0;if((c|0)==(k|0)){c=q;y=45;break d}else i=i+1|0}}while(0);q=f[q>>2]|0;if(!q){d=p;break a}}if((y|0)==45){z=c+20|0;return z|0}}}}while(0);m=Wpb(28)|0;i=m+8|0;f[i>>2]=0;k=m+12|0;f[k>>2]=0;l=m+16|0;f[l>>2]=0;c=t-u|0;do if(c|0)if((c|0)<0)fob(i);else{u=Wpb(c)|0;f[k>>2]=u;f[i>>2]=u;z=u+c|0;f[l>>2]=z;Irb(u|0,v|0,c|0)|0;f[k>>2]=z;break}while(0);f[m+20>>2]=0;f[m+24>>2]=0;f[m+4>>2]=w;f[m>>2]=0;i=a+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(s|g*+(e>>>0)<j){d=e<<1|(e>>>0<3|(e+-1&e|0)!=0)&1;c=~~+W(+(j/g))>>>0;KNa(a,d>>>0<c>>>0?c:d);d=f[r>>2]|0;c=d+-1|0;if(!(c&d)){e=d;d=c&w;break}if(w>>>0<d>>>0){e=d;d=w}else{e=d;d=(w>>>0)%(d>>>0)|0}}while(0);d=(f[a>>2]|0)+(d<<2)|0;c=f[d>>2]|0;if(!c){z=a+8|0;f[m>>2]=f[z>>2];f[z>>2]=m;f[d>>2]=z;d=f[m>>2]|0;if(d|0){d=f[d+4>>2]|0;c=e+-1|0;if(!(c&e))d=d&c;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;x=(f[a>>2]|0)+(d<<2)|0;y=43}}else{f[m>>2]=f[c>>2];x=c;y=43}if((y|0)==43)f[x>>2]=m;f[i>>2]=(f[i>>2]|0)+1;z=m;z=z+20|0;return z|0}function KNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){LNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;LNa(a,b);return}function LNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Zpb(d);f[e>>2]=0;return}if(c>>>0>1073741823)ud();r=Wpb(c<<2)|0;d=f[a>>2]|0;f[a>>2]=r;if(d|0)Zpb(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;q=c+-1|0;r=(q&c|0)==0;if(r)d=d&q;else if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{h=i;g=e;e=i}a:while(1){p=e;b:while(1){c:do if(r){e=g;while(1){o=f[e+4>>2]&q;if((o|0)==(d|0))break c;g=(f[a>>2]|0)+(o<<2)|0;if(!(f[g>>2]|0)){d=o;break b}i=f[e>>2]|0;d:do if(!i)g=e;else{l=f[e+12>>2]|0;m=f[e+8>>2]|0;n=l-m|0;if((m|0)==(l|0)){g=e;while(1){if((n|0)!=((f[i+12>>2]|0)-(f[i+8>>2]|0)|0))break d;g=f[i>>2]|0;if(!g){g=i;break d}else{m=i;i=g;g=m}}}else g=e;while(1){j=f[i+8>>2]|0;if((n|0)!=((f[i+12>>2]|0)-j|0))break d;k=m;while(1){if((b[k>>0]|0)!=(b[j>>0]|0))break d;k=k+1|0;if((k|0)==(l|0))break;else j=j+1|0}g=f[i>>2]|0;if(!g){g=i;break}else{k=i;i=g;g=k}}}while(0);f[p>>2]=f[g>>2];f[g>>2]=f[f[(f[a>>2]|0)+(o<<2)>>2]>>2];f[f[(f[a>>2]|0)+(o<<2)>>2]>>2]=e;e=f[h>>2]|0;if(!e){d=47;break a}}}else{e=g;while(1){g=f[e+4>>2]|0;if(g>>>0<c>>>0)o=g;else o=(g>>>0)%(c>>>0)|0;if((o|0)==(d|0))break c;g=(f[a>>2]|0)+(o<<2)|0;if(!(f[g>>2]|0)){d=o;break b}i=f[e>>2]|0;e:do if(!i)g=e;else{l=f[e+12>>2]|0;m=f[e+8>>2]|0;n=l-m|0;if((m|0)==(l|0)){g=e;while(1){if((n|0)!=((f[i+12>>2]|0)-(f[i+8>>2]|0)|0))break e;g=f[i>>2]|0;if(!g){g=i;break e}else{m=i;i=g;g=m}}}else g=e;while(1){j=f[i+8>>2]|0;if((n|0)!=((f[i+12>>2]|0)-j|0))break e;k=m;while(1){if((b[k>>0]|0)!=(b[j>>0]|0))break e;k=k+1|0;if((k|0)==(l|0))break;else j=j+1|0}g=f[i>>2]|0;if(!g){g=i;break}else{k=i;i=g;g=k}}}while(0);f[p>>2]=f[g>>2];f[g>>2]=f[f[(f[a>>2]|0)+(o<<2)>>2]>>2];f[f[(f[a>>2]|0)+(o<<2)>>2]>>2]=e;e=f[h>>2]|0;if(!e){d=47;break a}}}while(0);g=f[e>>2]|0;if(!g){d=47;break a}else{h=e;p=e}}f[g>>2]=p;g=f[e>>2]|0;if(!g){d=47;break}else h=e}if((d|0)==47)return}function MNa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l+8|0;e=l;g=b+60|0;h=NNa((f[g>>2]|0)+944|0,c)|0;f[a>>2]=0;k=a+4|0;f[k>>2]=0;i=h+4|0;d=f[i>>2]|0;do if(!d)f[k>>2]=0;else{d=Rpb(d)|0;f[k>>2]=d;if(d|0){m=f[h>>2]|0;f[a>>2]=m;if(!m){Ppb(d);break}else{u=l;return}}}while(0);Tna(j,b,c);d=f[c>>2]|0;d=Ng[f[(f[d>>2]|0)+56>>2]&511](d)|0;if(d|0){m=f[j>>2]|0;INa(e,f[g>>2]|0,d);eoa(m,e);d=f[e+4>>2]|0;if(d|0)Ppb(d)}d=f[j>>2]|0;b=j+4|0;c=f[b>>2]|0;if(c|0)Opb(c);f[h>>2]=d;d=f[i>>2]|0;f[i>>2]=c;if(d|0)Qpb(d);f[a>>2]=f[j>>2];f[k>>2]=f[b>>2];u=l;return}function NNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=ONa(f[b>>2]|0)|0;j=a+4|0;k=f[j>>2]|0;l=(k|0)==0;a:do if(l)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(o>>>0<k>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while(!(PNa(f[c+8>>2]|0,f[b>>2]|0)|0));a=c+16|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while(!(PNa(f[c+8>>2]|0,f[b>>2]|0)|0));a=c+16|0;return a|0}}while(0);m=Wpb(24)|0;f[m+8>>2]=f[b>>2];d=f[b+4>>2]|0;f[m+12>>2]=d;if(d|0)Npb(d);f[m+16>>2]=0;f[m+20>>2]=0;f[m+4>>2]=o;f[m>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(l|g*+(k>>>0)<e){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;d=~~+W(+(e/g))>>>0;QNa(a,c>>>0<d>>>0?d:c);c=f[j>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(o>>>0<c>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[m>>2]=f[c>>2];f[c>>2]=m;f[d>>2]=c;c=f[m>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=32}}else{f[m>>2]=f[c>>2];p=32}if((p|0)==32)f[c>>2]=m;f[i>>2]=(f[i>>2]|0)+1;a=m;a=a+16|0;return a|0}function ONa(a){a=a|0;var b=0,c=0,d=0.0,e=0,g=0,i=0;c=Ng[f[(f[a>>2]|0)+16>>2]&511](a)|0;if(!c)b=0;else{d=+n[c>>2];b=d==0.0?0:(n[s>>2]=d,f[s>>2]|0);d=+n[c+4>>2];b=(b>>>2)+(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^b;d=+n[c+8>>2];b=(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(b>>>2)^b;d=+n[c+12>>2];b=((b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(b>>>2)^b)+-1640531527|0}c=Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;if(c){d=+n[c>>2];b=(b>>>2)+(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^b}c=Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0;if(c){d=+n[c>>2];b=(b>>>2)+(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^b}c=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;if(c){d=+n[c>>2];b=(b>>>2)+(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^b}c=Ng[f[(f[a>>2]|0)+48>>2]&511](a)|0;if(!c)i=b;else{i=X(f[c>>2]|0,1540483477)|0;i=(X(i>>>24^i,1540483477)|0)^1866966612;i=X(i>>>13^i,1540483477)|0;i=(b<<6)+-1640531527+(b>>>2)+(i>>>15^i)^b}b=Ng[f[(f[a>>2]|0)+56>>2]&511](a)|0;if(!b)b=i;else{e=f[b>>2]|0;g=f[b+4>>2]|0;if((e|0)==(g|0))b=-1640531527;else{c=0;b=e;do{c=(c<<6)+-1640531527+(c>>>2)+(h[b>>0]|0)^c;b=b+1|0}while((b|0)!=(g|0));b=c+-1640531527|0}b=(i>>>2)+(i<<6)+b^i}c=Ng[f[(f[a>>2]|0)+64>>2]&511](a)|0;if(c){d=+n[c>>2];b=(b>>>2)+(b<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^b}c=Ng[f[(f[a>>2]|0)+72>>2]&511](a)|0;if(c)b=(b<<6)+-1640531527+(b>>>2)+(h[c>>0]|0)^b;c=Ng[f[(f[a>>2]|0)+80>>2]&511](a)|0;if(c){i=X(f[c>>2]|0,1540483477)|0;i=(X(i>>>24^i,1540483477)|0)^1866966612;i=X(i>>>13^i,1540483477)|0;b=(b<<6)+-1640531527+(b>>>2)+(i>>>15^i)^b}e=Ng[f[(f[a>>2]|0)+88>>2]&511](a)|0;if(!e)c=b;else{d=+n[e>>2];c=d==0.0?0:(n[s>>2]=d,f[s>>2]|0);d=+n[e+4>>2];c=(c>>>2)+(c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)^c;d=+n[e+8>>2];c=(c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;d=+n[e+12>>2];c=(c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;d=+n[e+16>>2];c=(c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;d=+n[e+20>>2];c=(b<<6)+-1640531527+(b>>>2)+((c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c)^b}b=Ng[f[(f[a>>2]|0)+96>>2]&511](a)|0;if(!b){a=c;return a|0}a=(c<<6)+-1640531527+(c>>>2)+(h[b>>0]|0)^c;return a|0}function PNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=Ng[f[(f[a>>2]|0)+16>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){c=0;return c|0}if(!(+n[d>>2]==+n[e>>2])){c=0;return c|0}if(!(+n[d+4>>2]==+n[e+4>>2])){c=0;return c|0}if(!(+n[d+8>>2]==+n[e+8>>2])){c=0;return c|0}if(!(+n[d+12>>2]==+n[e+12>>2])){c=0;return c|0}}d=Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+24>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){c=0;return c|0}if(!(+n[d>>2]==+n[e>>2])){c=0;return c|0}}d=Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+32>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){c=0;return c|0}if(!(+n[d>>2]==+n[e>>2])){c=0;return c|0}}d=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+40>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){c=0;return c|0}if(!(+n[d>>2]==+n[e>>2])){c=0;return c|0}}d=Ng[f[(f[a>>2]|0)+48>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+48>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){c=0;return c|0}if((f[d>>2]|0)!=(f[e>>2]|0)){c=0;return c|0}}d=Ng[f[(f[a>>2]|0)+56>>2]&511](a)|0;g=Ng[f[(f[c>>2]|0)+56>>2]&511](c)|0;a:do if((d|0)!=(g|0)){if(!((d|0)!=0&(g|0)!=0)){c=0;return c|0}j=f[d+4>>2]|0;i=f[d>>2]|0;d=f[g>>2]|0;e=i;h=j;if((j-i|0)!=((f[g+4>>2]|0)-d|0)){j=0;return j|0}if((e|0)!=(h|0)){while(1){if((b[e>>0]|0)!=(b[d>>0]|0)){d=0;break}e=e+1|0;if((e|0)==(h|0))break a;else d=d+1|0}return d|0}}while(0);d=Ng[f[(f[a>>2]|0)+64>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+64>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){j=0;return j|0}if(!(+n[d>>2]==+n[e>>2])){j=0;return j|0}}d=Ng[f[(f[a>>2]|0)+72>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+72>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){j=0;return j|0}if((b[d>>0]|0)!=(b[e>>0]|0)){j=0;return j|0}}d=Ng[f[(f[a>>2]|0)+80>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+80>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){j=0;return j|0}if((f[d>>2]|0)!=(f[e>>2]|0)){j=0;return j|0}}d=Ng[f[(f[a>>2]|0)+88>>2]&511](a)|0;e=Ng[f[(f[c>>2]|0)+88>>2]&511](c)|0;if((d|0)!=(e|0)){if(!((d|0)!=0&(e|0)!=0)){j=0;return j|0}if(!(+n[d>>2]==+n[e>>2])){j=0;return j|0}if(!(+n[d+4>>2]==+n[e+4>>2])){j=0;return j|0}if(!(+n[d+8>>2]==+n[e+8>>2])){j=0;return j|0}if(!(+n[d+12>>2]==+n[e+12>>2])){j=0;return j|0}if(!(+n[d+16>>2]==+n[e+16>>2])){j=0;return j|0}if(!(+n[d+20>>2]==+n[e+20>>2])){j=0;return j|0}}e=Ng[f[(f[a>>2]|0)+96>>2]&511](a)|0;d=Ng[f[(f[c>>2]|0)+96>>2]&511](c)|0;if((e|0)==(d|0)){j=1;return j|0}if(!((e|0)!=0&(d|0)!=0)){j=0;return j|0}j=(b[e>>0]|0)==(b[d>>0]|0);return j|0}function QNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){RNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;RNa(a,b);return}function RNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}h=f[d>>2]|0;d:do if(!h)e=d;else{j=d+8|0;e=d;i=d;while(1){if(!(PNa(f[j>>2]|0,f[h+8>>2]|0)|0))break d;i=f[i>>2]|0;h=f[i>>2]|0;if(!h){e=i;break}else e=i}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}h=f[d>>2]|0;e:do if(!h)e=d;else{j=d+8|0;e=d;i=d;while(1){if(!(PNa(f[j>>2]|0,f[h+8>>2]|0)|0))break e;i=f[i>>2]|0;h=f[i>>2]|0;if(!h){e=i;break}else e=i}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}}while(0);e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function SNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[a+60>>2]|0;k=l+944|0;m=TNa(k,b)|0;if(!m)return;i=f[l+948>>2]|0;a=f[m+4>>2]|0;e=i+-1|0;g=(e&i|0)==0;if(g)h=e&a;else if(a>>>0<i>>>0)h=a;else h=(a>>>0)%(i>>>0)|0;b=(f[k>>2]|0)+(h<<2)|0;j=f[b>>2]|0;while(1){a=f[j>>2]|0;if((a|0)==(m|0))break;else j=a}if((j|0)==(l+952|0))d=15;else{a=f[j+4>>2]|0;if(g)a=a&e;else if(a>>>0>=i>>>0)a=(a>>>0)%(i>>>0)|0;if((a|0)==(h|0))c=m;else d=15}do if((d|0)==15){a=f[m>>2]|0;if(a|0){a=f[a+4>>2]|0;if(g)a=a&e;else if(a>>>0>=i>>>0)a=(a>>>0)%(i>>>0)|0;if((a|0)==(h|0)){c=m;break}}f[b>>2]=0;c=m}while(0);b=f[c>>2]|0;a=b;if(b){b=f[b+4>>2]|0;if(g)b=b&e;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)!=(h|0)){f[(f[k>>2]|0)+(b<<2)>>2]=j;a=f[m>>2]|0}}f[j>>2]=a;f[c>>2]=0;a=l+956|0;f[a>>2]=(f[a>>2]|0)+-1;a=f[m+20>>2]|0;if(a|0)Qpb(a);a=f[m+12>>2]|0;if(a|0)Ppb(a);Zpb(m);return}function TNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=ONa(f[b>>2]|0)|0;i=f[a+4>>2]|0;if(!i){i=0;return i|0}d=i+-1|0;c=(d&i|0)==0;if(c)g=d&h;else if(h>>>0<i>>>0)g=h;else g=(h>>>0)%(i>>>0)|0;a=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!a){i=0;return i|0}a=f[a>>2]|0;if(!a){i=0;return i|0}if(c){while(1){j=f[a+4>>2]|0;c=(j|0)==(h|0);if(!(c|(j&d|0)==(g|0))){a=0;c=19;break}if(c)if(PNa(f[a+8>>2]|0,f[b>>2]|0)|0){c=19;break}a=f[a>>2]|0;if(!a){a=0;c=19;break}}if((c|0)==19)return a|0}else e=a;while(1){a=f[e+4>>2]|0;if((a|0)==(h|0)){if(PNa(f[e+8>>2]|0,f[b>>2]|0)|0){a=e;c=19;break}}else{if(a>>>0>=i>>>0)a=(a>>>0)%(i>>>0)|0;if((a|0)!=(g|0)){a=0;c=19;break}}e=f[e>>2]|0;if(!e){a=0;c=19;break}}if((c|0)==19)return a|0;return 0}function UNa(a){a=a|0;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+92>>2]&2047](a);return}function VNa(a){a=a|0;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+96>>2]&2047](a);return}function WNa(a){a=a|0;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+100>>2]&2047](a);return}function XNa(a){a=a|0;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+104>>2]&2047](a);return}function YNa(a){a=a|0;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+108>>2]&2047](a);return}function ZNa(a){a=a|0;var b=0,c=0;b=a+230|0;c=j[b>>1]|j[b+2>>1]<<16|12288;d[b>>1]=c;d[b+2>>1]=c>>>16;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+92>>2]&2047](a);return}function _Na(a){a=a|0;var b=0,c=0;c=a+104|0;b=f[c>>2]|0;f[c>>2]=b+1;if(b|0)return;a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+112>>2]&2047](a);return}function $Na(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+104|0;d=f[c>>2]|0;if(!d)return;if(b)f[c>>2]=0;else{d=d+-1|0;f[c>>2]=d;if(d|0)return}a=f[a+72>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+116>>2]&2047](a);return}function aOa(a,c){a=a|0;c=c|0;var d=0;a=a+224|0;d=b[a>>0]|0;if(!((d&1)!=0^c))return;b[a>>0]=d^1;return}function bOa(a,c){a=a|0;c=c|0;var d=0;a=a+224|0;d=b[a>>0]|0;if(!((d&2)!=0^c))return;b[a>>0]=d^2;return}function cOa(a,c){a=a|0;c=c|0;var d=0;a=a+224|0;d=b[a>>0]|0;if(!((d&4)!=0^c))return;b[a>>0]=d^4;return}function dOa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;e=a+230|0;g=j[e>>1]|j[e+2>>1]<<16;c=b&1;b=a+128|0;if((g&1|0)==(c|0))return;g=g&-2|c;d[e>>1]=g;d[e+2>>1]=g>>>16;f[b>>2]=(f[b>>2]|0)+1;return}function eOa(a){a=a|0;a=a+128|0;f[a>>2]=(f[a>>2]|0)+1;return}function fOa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;e=a+230|0;g=j[e>>1]|j[e+2>>1]<<16;c=b&1;b=a+128|0;if((g>>>1&1|0)==(c|0))return;g=g&-3|c<<1;d[e>>1]=g;d[e+2>>1]=g>>>16;f[b>>2]=(f[b>>2]|0)+1;return}function gOa(a){a=a|0;a=a+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&8|0)!=0|0}function hOa(a,b){a=a|0;b=b|0;a=a+230|0;b=(j[a>>1]|j[a+2>>1]<<16)&-9|(b&1)<<3;d[a>>1]=b;d[a+2>>1]=b>>>16;return}function iOa(a){a=a|0;a=a+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&4|0)!=0|0}function jOa(a,c,d){a=a|0;c=+c;d=d|0;var e=0,g=0,h=0;e=a+304|0;g=a+312|0;h=b[g>>0]|0;if(+p[e>>3]==c?h<<24>>24==d<<24>>24:0)return;if(h<<24>>24!=d<<24>>24){h=a+128|0;f[h>>2]=(f[h>>2]|0)+1}p[e>>3]=c;b[g>>0]=d;return}function kOa(a,c){a=a|0;c=c|0;var d=0;d=a+313|0;if((b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;d=a+128|0;f[d>>2]=(f[d>>2]|0)+1;return}function lOa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+228|0;if((b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;e=(b[a+226>>0]|0)==3;c=b[(e?a+296|0:d)>>0]|0;d=a+229|0;if((b[d>>0]|0)!=c<<24>>24){b[d>>0]=c;d=a+128|0;f[d>>2]=(f[d>>2]|0)+1}if(e)return;if(c<<24>>24==1)if(r6a()|0)return;xRa(f[a+60>>2]|0);return}function mOa(a){a=a|0;return a+132|0}function nOa(a,b){a=a|0;b=b|0;a=a+132|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];return}function oOa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+60>>2]|0;c=f[b+912>>2]|0;d=b+916|0;e=f[d>>2]|0;if((c|0)==(e|0)){e=0;return e|0}f[d>>2]=e+(~(((e+-28-c|0)>>>0)/28|0)*28|0);f[b+940>>2]=0;e=a+128|0;f[e>>2]=(f[e>>2]|0)+1;e=1;return e|0}function pOa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0;e=a+60|0;g=f[e>>2]|0;h=g+916|0;i=f[h>>2]|0;if((i|0)==(f[g+920>>2]|0))qOa(g+912|0,c);else{f[i>>2]=f[c>>2];f[i+4>>2]=f[c+4>>2];f[i+8>>2]=f[c+8>>2];i=i+12|0;g=c+12|0;f[i>>2]=f[g>>2];f[i+4>>2]=f[g+4>>2];f[i+8>>2]=f[g+8>>2];d[i+12>>1]=d[g+12>>1]|0;f[h>>2]=(f[h>>2]|0)+28}c=f[e>>2]|0;if((((f[c+916>>2]|0)-(f[c+912>>2]|0)|0)/28|0)>>>0>4)return;i=c+940|0;h=c+932+(f[i>>2]<<1)|0;b[h>>0]=0;b[h+1>>0]=0;f[i>>2]=(f[i>>2]|0)+1;a=a+128|0;f[a>>2]=(f[a>>2]|0)+1;return}function qOa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;c=f[o>>2]|0;e=f[a>>2]|0;j=(c-e|0)/28|0;h=j+1|0;m=e;g=c;if(h>>>0>153391689)fob(a);n=a+8|0;k=((f[n>>2]|0)-e|0)/28|0;l=k<<1;h=k>>>0<76695844?(l>>>0<h>>>0?h:l):153391689;do if(!h)i=0;else if(h>>>0>153391689)ud();else{i=Wpb(h*28|0)|0;break}while(0);k=i+(j*28|0)|0;e=k;l=i+(h*28|0)|0;f[k>>2]=f[b>>2];f[i+(j*28|0)+4>>2]=f[b+4>>2];f[i+(j*28|0)+8>>2]=f[b+8>>2];h=i+(j*28|0)+12|0;j=b+12|0;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];d[h+12>>1]=d[j+12>>1]|0;h=k+28|0;if((g|0)!=(m|0)){c=k;do{j=g;g=g+-28|0;f[c+-28>>2]=f[g>>2];f[c+-24>>2]=f[j+-24>>2];f[c+-20>>2]=f[j+-20>>2];k=c+-16|0;j=j+-16|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];d[k+12>>1]=d[j+12>>1]|0;c=e+-28|0;e=c}while((g|0)!=(m|0));c=f[a>>2]|0}f[a>>2]=e;f[o>>2]=h;f[n>>2]=l;if(!c)return;Zpb(c);return}function rOa(a){a=a|0;a=f[a+60>>2]|0;return ((f[a+916>>2]|0)-(f[a+912>>2]|0)|0)/28|0|0}function sOa(a,b){a=a|0;b=b|0;return (f[(f[a+60>>2]|0)+912>>2]|0)+(b*28|0)|0}function tOa(a,b){a=a|0;b=b|0;a=a+230|0;b=(j[a>>1]|j[a+2>>1]<<16)&-129|(b&1)<<7;d[a>>1]=b;d[a+2>>1]=b>>>16;return}function uOa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+688|0;m=n;g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0)Npb(h);f[a+216>>2]=g;l=a+220|0;g=f[l>>2]|0;f[l>>2]=h;if(g|0)Ppb(g);g=a+128|0;f[g>>2]=(f[g>>2]|0)+1;g=f[c>>2]|0;if(!g){u=n;return}l=g+8|0;if(!(b[g+724>>0]&1)){u=n;return}g=a+60|0;c=f[g>>2]|0;b[m>>0]=b[c+224>>0]|0;p[m+8>>3]=+p[c+232>>3];p[m+16>>3]=+p[c+240>>3];p[m+24>>3]=+p[c+248>>3];p[m+32>>3]=+p[c+256>>3];p[m+40>>3]=+p[c+264>>3];p[m+48>>3]=+p[c+272>>3];p[m+56>>3]=+p[c+280>>3];p[m+64>>3]=+p[c+288>>3];p[m+72>>3]=+p[c+296>>3];p[m+80>>3]=+p[c+304>>3];p[m+88>>3]=+p[c+312>>3];p[m+96>>3]=+p[c+320>>3];p[m+104>>3]=+p[c+328>>3];p[m+112>>3]=+p[c+336>>3];p[m+120>>3]=+p[c+344>>3];p[m+128>>3]=+p[c+352>>3];p[m+136>>3]=+p[c+360>>3];p[m+144>>3]=+p[c+368>>3];p[m+152>>3]=+p[c+376>>3];p[m+160>>3]=+p[c+384>>3];p[m+168>>3]=+p[c+392>>3];p[m+176>>3]=+p[c+400>>3];p[m+184>>3]=+p[c+408>>3];p[m+192>>3]=+p[c+416>>3];p[m+200>>3]=+p[c+424>>3];h=m+208|0;i=c+432|0;k=h+40|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(k|0));p[m+248>>3]=+p[c+472>>3];p[m+256>>3]=+p[c+480>>3];p[m+264>>3]=+p[c+488>>3];p[m+272>>3]=+p[c+496>>3];p[m+280>>3]=+p[c+504>>3];p[m+288>>3]=+p[c+512>>3];p[m+296>>3]=+p[c+520>>3];p[m+304>>3]=+p[c+528>>3];p[m+312>>3]=+p[c+536>>3];p[m+320>>3]=+p[c+544>>3];p[m+328>>3]=+p[c+552>>3];p[m+336>>3]=+p[c+560>>3];p[m+344>>3]=+p[c+568>>3];p[m+352>>3]=+p[c+576>>3];p[m+360>>3]=+p[c+584>>3];p[m+368>>3]=+p[c+592>>3];p[m+376>>3]=+p[c+600>>3];p[m+384>>3]=+p[c+608>>3];p[m+392>>3]=+p[c+616>>3];p[m+400>>3]=+p[c+624>>3];p[m+408>>3]=+p[c+632>>3];p[m+416>>3]=+p[c+640>>3];p[m+424>>3]=+p[c+648>>3];p[m+432>>3]=+p[c+656>>3];p[m+440>>3]=+p[c+664>>3];p[m+448>>3]=+p[c+672>>3];p[m+456>>3]=+p[c+680>>3];p[m+464>>3]=+p[c+688>>3];p[m+472>>3]=+p[c+696>>3];p[m+480>>3]=+p[c+704>>3];p[m+488>>3]=+p[c+712>>3];p[m+496>>3]=+p[c+720>>3];p[m+504>>3]=+p[c+728>>3];p[m+512>>3]=+p[c+736>>3];p[m+520>>3]=+p[c+744>>3];p[m+528>>3]=+p[c+752>>3];p[m+536>>3]=+p[c+760>>3];p[m+544>>3]=+p[c+768>>3];p[m+552>>3]=+p[c+776>>3];p[m+560>>3]=+p[c+784>>3];p[m+568>>3]=+p[c+792>>3];p[m+576>>3]=+p[c+800>>3];p[m+584>>3]=+p[c+808>>3];p[m+592>>3]=+p[c+816>>3];p[m+600>>3]=+p[c+824>>3];p[m+608>>3]=+p[c+832>>3];p[m+616>>3]=+p[c+840>>3];p[m+624>>3]=+p[c+848>>3];f[m+632>>2]=f[c+856>>2];f[m+636>>2]=f[c+860>>2];f[m+640>>2]=f[c+864>>2];f[m+644>>2]=f[c+868>>2];f[m+648>>2]=f[c+872>>2];f[m+652>>2]=f[c+876>>2];f[m+656>>2]=f[c+880>>2];f[m+660>>2]=f[c+884>>2];f[m+664>>2]=f[c+888>>2];k=m+668|0;i=c+892|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];b[k+12>>0]=b[i+12>>0]|0;if(e){e=a+230|0;if(!((j[e>>1]|j[e+2>>1]<<16)&65536))PI((f[g>>2]|0)+224|0,l)|0}else{PI((f[g>>2]|0)+224|0,l)|0;e=a+230|0;l=j[e>>1]|j[e+2>>1]<<16|65536;d[e>>1]=l;d[e+2>>1]=l>>>16}if(!(kga((f[g>>2]|0)+224|0,m)|0))THa(a+48|0,(f[g>>2]|0)+224|0);u=n;return}function vOa(a,b,c){a=a|0;b=+b;c=+c;p[a+112>>3]=b;p[a+120>>3]=c;return}function wOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;d=h+8|0;e=h+4|0;g=h;f[g>>2]=b;if((b+-1|0)>>>0>14){b=0;u=h;return b|0}a=f[a+60>>2]|0;if(c){f[e>>2]=g;xOa(d,a+1820|0,g,215192,e,h+16|0);b=(f[d>>2]|0)+24|0;u=h;return b|0}e=a+1824|0;c=f[e>>2]|0;if(!c){b=0;u=h;return b|0}else a=e;a:while(1){d=c;while(1){if((f[d+16>>2]|0)>>>0>=b>>>0)break;c=f[d+4>>2]|0;if(!c)break a;else d=c}c=f[d>>2]|0;if(!c){a=d;break}else a=d}if((a|0)==(e|0)){b=0;u=h;return b|0}if((a|0)==(e|0)?1:(f[a+16>>2]|0)>>>0>b>>>0){b=0;u=h;return b|0}b=a+24|0;u=h;return b|0}function xOa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;h=c+4|0;e=f[h>>2]|0;do if(!e){j=h;d=h}else{i=f[d>>2]|0;d=c+4|0;while(1){h=f[e+16>>2]|0;if(i>>>0<h>>>0){h=f[e>>2]|0;if(!h){h=5;break}else{d=e;e=h}}else{if(h>>>0>=i>>>0){h=10;break}d=e+4|0;h=f[d>>2]|0;if(!h){h=9;break}else e=h}}if((h|0)==5){j=e;d=e;break}else if((h|0)==9){j=e;break}else if((h|0)==10){j=e;break}}while(0);e=f[d>>2]|0;if(e|0){c=e;g=0;f[a>>2]=c;c=a+4|0;b[c>>0]=g;return}i=Wpb(1344)|0;f[i+16>>2]=f[f[g>>2]>>2];e=i+24|0;Krb(e|0,0,1320)|0;sSa(e);e=i+776|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;n[i+796>>2]=1.0;e=i+800|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+816>>2]=1.0;e=i+820|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+836>>2]=1.0;e=i+840|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+856>>2]=1.0;e=i+860|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+876>>2]=1.0;e=i+880|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+896>>2]=1.0;e=i+900|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+916>>2]=1.0;e=i+920|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+936>>2]=1.0;e=i+940|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+956>>2]=1.0;e=i+960|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+976>>2]=1.0;e=i+980|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+996>>2]=1.0;e=i+1e3|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1016>>2]=1.0;e=i+1020|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1036>>2]=1.0;e=i+1040|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1056>>2]=1.0;e=i+1060|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1076>>2]=1.0;e=i+1080|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1096>>2]=1.0;e=i+1100|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1116>>2]=1.0;e=i+1120|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1136>>2]=1.0;e=i+1140|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1156>>2]=1.0;e=i+1160|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1176>>2]=1.0;e=i+1180|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1196>>2]=1.0;e=i+1200|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1216>>2]=1.0;e=i+1220|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1236>>2]=1.0;e=i+1240|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+1256>>2]=1.0;e=i+1260|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;e=i+1280|0;h=e+64|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(h|0));f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=j;f[d>>2]=i;e=f[f[c>>2]>>2]|0;if(!e)e=i;else{f[c>>2]=e;e=f[d>>2]|0}tEa(f[c+4>>2]|0,e);c=c+8|0;f[c>>2]=(f[c>>2]|0)+1;c=i;g=1;f[a>>2]=c;c=a+4|0;b[c>>0]=g;return}function yOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+4|0;j=k;if((b+-1|0)>>>0>14){j=0;u=k;return j|0}h=a+60|0;a=f[h>>2]|0;g=a+1824|0;c=f[g>>2]|0;if(!c){j=0;u=k;return j|0}else{e=g;d=c}a:while(1){c=d;while(1){if((f[c+16>>2]|0)>>>0>=b>>>0)break;c=f[c+4>>2]|0;if(!c){c=e;break a}}d=f[c>>2]|0;if(!d)break;else e=c}if((c|0)==(g|0)){j=0;u=k;return j|0}if((f[c+16>>2]|0)>>>0>b>>>0){j=0;u=k;return j|0}b=c;if((c|0)==(g|0)){j=0;u=k;return j|0}e=c+24|0;d=f[e>>2]|0;c=c+28|0;if((d|0)!=(f[c>>2]|0)){a=d;do{Hoa(f[a>>2]|0,0)|0;a=f[e>>2]|0}while((a|0)!=(f[c>>2]|0));a=f[h>>2]|0}f[j>>2]=b;f[i>>2]=f[j>>2];zOa(a+1820|0,i)|0;j=1;u=k;return j|0}function zOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[b>>2]|0;b=f[e+4>>2]|0;if(!b){c=e+8|0;b=f[c>>2]|0;if((f[b>>2]|0)!=(e|0))do{d=f[c>>2]|0;c=d+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(d|0))}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}if((f[a>>2]|0)==(e|0))f[a>>2]=b;c=a+8|0;f[c>>2]=(f[c>>2]|0)+-1;oEa(f[a+4>>2]|0,e);kNa(e+776|0);c=f[e+24>>2]|0;if(!c){Zpb(e);return b|0}a=e+28|0;d=f[a>>2]|0;if((d|0)!=(c|0))f[a>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);Zpb(e);return b|0}function AOa(a){a=a|0;return f[(f[a+60>>2]|0)+1828>>2]|0}function BOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=f[a+60>>2]|0;a=f[g+1820>>2]|0;g=g+1824|0;if((a|0)==(g|0))return;else e=a;while(1){wh[b&127](f[e+16>>2]|0,e+24|0,c);a=f[e+4>>2]|0;if(!a){d=e+8|0;a=f[d>>2]|0;if((f[a>>2]|0)!=(e|0))do{e=f[d>>2]|0;d=e+8|0;a=f[d>>2]|0}while((f[a>>2]|0)!=(e|0))}else while(1){d=f[a>>2]|0;if(!d)break;else a=d}if((a|0)==(g|0))break;else e=a}return}function COa(a){a=a|0;return (f[a+60>>2]|0)+924|0}function DOa(a,b){a=a|0;b=b|0;nSa((f[a+60>>2]|0)+1852|0,b,b);return}function EOa(a,b,c){a=a|0;b=b|0;c=c|0;nSa((f[a+60>>2]|0)+1852|0,b,c);return}function FOa(a,b,c){a=a|0;b=b|0;c=c|0;oSa((f[a+60>>2]|0)+1852|0,b,c);return}function GOa(a,b){a=a|0;b=b|0;a=a+60|0;o2a((f[a>>2]|0)+1912|0,b);o2a((f[a>>2]|0)+2048|0,b);return}function HOa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+16|0;h=i;a=a+60|0;g=f[a>>2]|0;if(b){p2a(g+1912|0,d,e);u=i;return}if(c){p2a(g+1980|0,d,e);e=(f[a>>2]|0)+1980|0;n[h>>2]=0.0;n[h+4>>2]=1.0;n[h+8>>2]=0.0;n[h+12>>2]=.5;o2a(e,h);u=i;return}else{p2a(g+2048|0,d,e);u=i;return}}function IOa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=a+226|0;e=b[d>>0]|0;if(c<<24>>24==4?1:e<<24>>24==c<<24>>24)return;switch(e<<24>>24){case 1:{OTa((f[a+60>>2]|0)+2440|0);break}case 2:{ETa((f[a+60>>2]|0)+2992|0);break}case 3:{OTa((f[a+60>>2]|0)+2716|0);break}default:{}}b[d>>0]=c;g=(b[a+225>>0]|0)==3?2:1;b[a+384>>0]=1;b[a+381>>0]=g;d=a+385|0;b[d>>0]=1;e=a+382|0;b[e>>0]=g;b[a+386>>0]=1;b[a+383>>0]=g;if(c<<24>>24==2){b[d>>0]=2;b[e>>0]=2;c=2}d=c<<24>>24==3;c=b[(d?a+296|0:a+228|0)>>0]|0;e=a+229|0;if((b[e>>0]|0)!=c<<24>>24){b[e>>0]=c;g=a+128|0;f[g>>2]=(f[g>>2]|0)+1}if(d)return;if(c<<24>>24==1)if(r6a()|0)return;xRa(f[a+60>>2]|0);return}function JOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b&255;b=c&255;c=f[d>>2]|0;d=f[d+4>>2]|0;if(d|0)Npb(d);f[a+236+(e*24|0)+(b<<3)>>2]=c;a=a+236+(e*24|0)+(b<<3)+4|0;b=f[a>>2]|0;f[a>>2]=d;if(!b)return;Ppb(b);return}function KOa(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;h=d+4|0;e=d+8|0;g=d;n[h>>2]=c;n[e>>2]=0.0;n[g>>2]=1.0;g=c<1.0?h:g;f[a+284+((b&255)<<2)>>2]=f[(+n[g>>2]>0.0?g:e)>>2];u=d;return}function LOa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+296|0;if((b[d>>0]|0)==c<<24>>24)return;b[d>>0]=c;e=(b[a+226>>0]|0)==3;c=b[(e?d:a+228|0)>>0]|0;d=a+229|0;if((b[d>>0]|0)!=c<<24>>24){b[d>>0]=c;d=a+128|0;f[d>>2]=(f[d>>2]|0)+1}if(e)return;if(c<<24>>24==1)if(r6a()|0)return;xRa(f[a+60>>2]|0);return}function MOa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+227|0;e=b[d>>0]|0;if(c<<24>>24==2?1:e<<24>>24==c<<24>>24)return;if(e<<24>>24==1)HUa((f[a+60>>2]|0)+2152|0);b[d>>0]=c;return}function NOa(a){a=a|0;return b[(f[a+60>>2]|0)+2224>>0]|0}function OOa(a,b){a=a|0;b=b|0;EUa((f[a+60>>2]|0)+2152|0,b);return}function POa(a,c){a=a|0;c=c|0;var d=0,e=0;switch(c<<24>>24){case 0:{c=2;d=4;break}case 1:{c=3;d=4;break}case 2:return;default:c=b[a+225>>0]|0}if((d|0)==4)b[a+225>>0]=c;e=c<<24>>24==3?2:1;b[a+384>>0]=1;b[a+381>>0]=e;c=a+385|0;b[c>>0]=1;d=a+382|0;b[d>>0]=e;b[a+386>>0]=1;b[a+383>>0]=e;if((b[a+226>>0]|0)!=2)return;b[c>>0]=2;b[d>>0]=2;return}function QOa(a,b){a=a|0;b=+b;a=a+60|0;ZTa((f[a>>2]|0)+2440|0,b);ZTa((f[a>>2]|0)+2716|0,b);return}function ROa(a,b){a=a|0;b=b|0;MTa((f[a+60>>2]|0)+2440|0,b);return}function SOa(a,b){a=a|0;b=b|0;a=a+60|0;NTa((f[a>>2]|0)+2440|0,b);NTa((f[a>>2]|0)+2716|0,b);return}function TOa(a,b){a=a|0;b=b|0;a=a+60|0;LTa((f[a>>2]|0)+2440|0,b);LTa((f[a>>2]|0)+2716|0,b);MTa((f[a>>2]|0)+2716|0,b);return}function UOa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+2484|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function VOa(a,b){a=a|0;b=b|0;var c=0;a=a+60|0;c=(f[a>>2]|0)+2500|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];a=(f[a>>2]|0)+2776|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function WOa(a,b){a=a|0;b=b|0;var c=0;a=a+60|0;c=(f[a>>2]|0)+2468|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];c=(f[a>>2]|0)+2744|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];a=(f[a>>2]|0)+2760|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function XOa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+2516|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function YOa(a,b){a=a|0;b=b|0;var c=0;a=a+60|0;c=(f[a>>2]|0)+2532|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];a=(f[a>>2]|0)+2808|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function ZOa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3032|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function _Oa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3048|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function $Oa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3064|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function aPa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3080|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function bPa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3096|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function cPa(a,b){a=a|0;b=b|0;a=(f[a+60>>2]|0)+3112|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function dPa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;c=a+230|0;e=j[c>>1]|j[c+2>>1]<<16;g=b&1;if((e>>>4&1|0)==(g|0))return;g=e&-17|g<<4;d[c>>1]=g;d[c+2>>1]=g>>>16;if(b)return;WSa((f[a+60>>2]|0)+2228|0);return}function ePa(a){a=a|0;return +(+LSa((f[a+60>>2]|0)+2228|0))}function fPa(a,b){a=a|0;b=+b;MSa((f[a+60>>2]|0)+2228|0,b);return}function gPa(a,b){a=a|0;b=+b;NSa((f[a+60>>2]|0)+2228|0,b);return}function hPa(a,b){a=a|0;b=+b;OSa((f[a+60>>2]|0)+2228|0,b);return}function iPa(a,b){a=a|0;b=+b;PSa((f[a+60>>2]|0)+2228|0,b);return}function jPa(a,b){a=a|0;b=b|0;QSa((f[a+60>>2]|0)+2228|0,b);return}function kPa(a,b){a=a|0;b=b|0;RSa((f[a+60>>2]|0)+2228|0,b);return}function lPa(a,b){a=a|0;b=+b;SSa((f[a+60>>2]|0)+2228|0,b);return}function mPa(a,b){a=a|0;b=+b;TSa((f[a+60>>2]|0)+2228|0,b);return}function nPa(a,b){a=a|0;b=+b;USa((f[a+60>>2]|0)+2228|0,b);return}function oPa(a,b){a=a|0;b=b|0;VSa((f[a+60>>2]|0)+2228|0,b);return}function pPa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;c=a+230|0;e=j[c>>1]|j[c+2>>1]<<16;g=b&1;if((e>>>5&1|0)==(g|0))return;g=e&-33|g<<5;d[c>>1]=g;d[c+2>>1]=g>>>16;if(b)return;vTa((f[a+60>>2]|0)+3176|0);return}function qPa(a){a=a|0;a=a+230|0;return ((j[a>>1]|j[a+2>>1]<<16)&32|0)!=0|0}function rPa(a,b){a=a|0;b=b|0;wTa((f[a+60>>2]|0)+3176|0,b);return}function sPa(a){a=a|0;return f[(f[a+60>>2]|0)+3224>>2]|0}function tPa(a,b){a=a|0;b=+b;xTa((f[a+60>>2]|0)+3176|0,b);return}function uPa(a){a=a|0;return +(+n[(f[a+60>>2]|0)+3228>>2])}function vPa(a,b){a=a|0;b=+b;yTa((f[a+60>>2]|0)+3176|0,b);return}function wPa(a){a=a|0;return +(+n[(f[a+60>>2]|0)+3232>>2])}function xPa(a,b){a=a|0;b=+b;zTa((f[a+60>>2]|0)+3176|0,b);return}function yPa(a){a=a|0;return +(+n[(f[a+60>>2]|0)+3236>>2])}function zPa(a,b){a=a|0;b=+b;ATa((f[a+60>>2]|0)+3176|0,b);return}function APa(a){a=a|0;return +(+n[(f[a+60>>2]|0)+3240>>2])}function BPa(a,b){a=a|0;b=b|0;var c=0,e=0;a=a+230|0;c=j[a>>1]|j[a+2>>1]<<16;e=b&1;if((c>>>6&1|0)==(e|0)){b=0;return b|0}e=c&-65|e<<6;d[a>>1]=e;d[a+2>>1]=e>>>16;if(b){b=1;return b|0}b=1;return b|0}function CPa(a,b){a=a|0;b=+b;if(!(_Sa((f[a+60>>2]|0)+3364|0,b)|0)){a=0;return a|0}a=a+230|0;a=((j[a>>1]|j[a+2>>1]<<16)&64|0)!=0;return a|0}function DPa(a,b){a=a|0;b=+b;if(!($Sa((f[a+60>>2]|0)+3364|0,b)|0)){a=0;return a|0}a=a+230|0;a=((j[a>>1]|j[a+2>>1]<<16)&64|0)!=0;return a|0}function EPa(a,b){a=a|0;b=+b;if(!(aTa((f[a+60>>2]|0)+3364|0,b)|0)){a=0;return a|0}a=a+230|0;a=((j[a>>1]|j[a+2>>1]<<16)&64|0)!=0;return a|0}function FPa(a,b){a=a|0;b=b|0;if(!(bTa((f[a+60>>2]|0)+3364|0,b)|0)){b=0;return b|0}b=a+230|0;b=((j[b>>1]|j[b+2>>1]<<16)&64|0)!=0;return b|0}function GPa(a,b,c){a=a|0;b=b|0;c=+c;if(!(cTa((f[a+60>>2]|0)+3364|0,b,c)|0)){b=0;return b|0}b=a+230|0;b=((j[b>>1]|j[b+2>>1]<<16)&64|0)!=0;return b|0}function HPa(a,b,c){a=a|0;b=b|0;c=c|0;if(!(dTa((f[a+60>>2]|0)+3364|0,b,c)|0)){c=0;return c|0}c=a+230|0;c=((j[c>>1]|j[c+2>>1]<<16)&64|0)!=0;return c|0}function IPa(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;if(!(eTa((f[a+60>>2]|0)+3364|0,b,c,d)|0)){d=0;return d|0}d=a+230|0;d=((j[d>>1]|j[d+2>>1]<<16)&64|0)!=0;return d|0}function JPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(f[b+12>>2]|0)){i=0;return i|0}if(!(f[c+12>>2]|0)){i=0;return i|0}i=a+60|0;g=f[i>>2]|0;e=f[g+1832>>2]|0;h=g+1836|0;d=f[h>>2]|0;if((e|0)!=(d|0)){do{g=d+-120|0;f[h>>2]=g;hNa(g);d=f[h>>2]|0}while((d|0)!=(e|0));zVa((f[i>>2]|0)+984|0);e=f[i>>2]|0;g=e;e=f[e+1836>>2]|0}d=g+1836|0;if(e>>>0<(f[g+1840>>2]|0)>>>0){tRa(e,a);f[d>>2]=(f[d>>2]|0)+120}else KPa(g+1832|0,a);d=f[(f[i>>2]|0)+1836>>2]|0;e=d+-120|0;yRa(e,0);zRa(e,0);e=vVa((f[i>>2]|0)+984|0,b)|0;f[d+-8>>2]=e;d=f[i>>2]|0;e=d+1836|0;g=f[e>>2]|0;if(g>>>0<(f[d+1840>>2]|0)>>>0){tRa(g,a);f[e>>2]=(f[e>>2]|0)+120}else KPa(d+1832|0,a);a=f[(f[i>>2]|0)+1836>>2]|0;b=a+-120|0;yRa(b,0);zRa(b,0);i=vVa((f[i>>2]|0)+984|0,c)|0;f[a+-8>>2]=i;i=1;return i|0}function KPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;c=f[a>>2]|0;e=((f[a+4>>2]|0)-c|0)/120|0;d=e+1|0;if(d>>>0>35791394)fob(a);j=((f[a+8>>2]|0)-c|0)/120|0;c=j<<1;c=j>>>0<17895697?(c>>>0<d>>>0?d:c):35791394;f[h+12>>2]=0;f[h+16>>2]=a+8;do if(!c)g=0;else if(c>>>0>35791394)ud();else{g=Wpb(c*120|0)|0;break}while(0);f[h>>2]=g;j=g+(e*120|0)|0;e=h+8|0;d=h+4|0;f[d>>2]=j;f[h+12>>2]=g+(c*120|0);tRa(j,b);f[e>>2]=j+120;LPa(a,h);d=f[d>>2]|0;c=f[e>>2]|0;if((c|0)!=(d|0))do{j=c+-120|0;f[e>>2]=j;hNa(j);c=f[e>>2]|0}while((c|0)!=(d|0));c=f[h>>2]|0;if(!c){u=i;return}Zpb(c);u=i;return}function LPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;g=a+4|0;c=f[g>>2]|0;h=b+4|0;if((c|0)==(e|0)){d=h;c=a;h=f[h>>2]|0;f[c>>2]=h;f[d>>2]=e;e=b+8|0;h=f[g>>2]|0;c=f[e>>2]|0;f[g>>2]=c;f[e>>2]=h;e=a+8|0;h=b+12|0;g=f[e>>2]|0;a=f[h>>2]|0;f[e>>2]=a;f[h>>2]=g;h=f[d>>2]|0;f[b>>2]=h;return}d=f[h>>2]|0;do{i=c;c=c+-120|0;f[d+-120>>2]=f[c>>2];j=d+-116|0;k=i+-116|0;f[j>>2]=0;l=d+-112|0;f[l>>2]=0;f[d+-108>>2]=0;f[j>>2]=f[k>>2];j=i+-112|0;f[l>>2]=f[j>>2];l=i+-108|0;f[d+-108>>2]=f[l>>2];f[l>>2]=0;f[j>>2]=0;f[k>>2]=0;p[d+-104>>3]=+p[i+-104>>3];k=i+-96|0;f[d+-96>>2]=f[k>>2];j=i+-92|0;f[d+-92>>2]=f[j>>2];f[k>>2]=0;f[j>>2]=0;j=i+-88|0;f[d+-88>>2]=f[j>>2];k=i+-84|0;f[d+-84>>2]=f[k>>2];f[j>>2]=0;f[k>>2]=0;k=i+-80|0;f[d+-80>>2]=f[k>>2];j=i+-76|0;f[d+-76>>2]=f[j>>2];f[k>>2]=0;f[j>>2]=0;j=i+-72|0;f[d+-72>>2]=f[j>>2];k=i+-68|0;f[d+-68>>2]=f[k>>2];f[j>>2]=0;f[k>>2]=0;k=i+-64|0;f[d+-64>>2]=f[k>>2];j=i+-60|0;f[d+-60>>2]=f[j>>2];f[k>>2]=0;f[j>>2]=0;j=i+-56|0;f[d+-56>>2]=f[j>>2];k=i+-52|0;f[d+-52>>2]=f[k>>2];f[j>>2]=0;f[k>>2]=0;k=d+-48|0;j=i+-48|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];k=i+-32|0;f[d+-32>>2]=f[k>>2];j=i+-28|0;f[d+-28>>2]=f[j>>2];f[k>>2]=0;f[j>>2]=0;j=d+-24|0;k=i+-24|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];f[d+-8>>2]=f[i+-8>>2];d=(f[h>>2]|0)+-120|0;f[h>>2]=d}while((c|0)!=(e|0));l=h;k=a;j=d;i=f[a>>2]|0;f[k>>2]=j;f[l>>2]=i;i=b+8|0;k=f[g>>2]|0;j=f[i>>2]|0;f[g>>2]=j;f[i>>2]=k;i=a+8|0;k=b+12|0;j=f[i>>2]|0;h=f[k>>2]|0;f[i>>2]=h;f[k>>2]=j;l=f[l>>2]|0;f[b>>2]=l;return}function MPa(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+60|0;d=f[b>>2]|0;c=f[d+1832>>2]|0;d=d+1836|0;a=f[d>>2]|0;if((c|0)==(a|0)){d=0;return d|0}do{e=a+-120|0;f[d>>2]=e;hNa(e);a=f[d>>2]|0}while((a|0)!=(c|0));zVa((f[b>>2]|0)+984|0);e=1;return e|0}function NPa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kTa((f[a+60>>2]|0)+3448|0,b,c,d);return}function OPa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0;i=a+230|0;e=j[i>>1]|j[i+2>>1]<<16;g=c&1;if((e>>>10&1|0)==(g|0)){i=0;return i|0}g=e&-1025|g<<10;d[i>>1]=g;d[i+2>>1]=g>>>16;g=a+60|0;h=(f[g>>2]|0)+1844|0;if(c){c=Wpb(1752)|0;uVa(c,a);tRa(c+840|0,a);p[c+952>>3]=1.0;p[c+960>>3]=1.0;p[c+968>>3]=1.0;e=c+976|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;jga(c+1e3|0);e=f[h>>2]|0;f[h>>2]=c;if(e|0){hNa(e+840|0);iNa(e);Zpb(e)}h=(f[(f[g>>2]|0)+1844>>2]|0)+832|0;b[h>>0]=b[h>>0]&-8|5;h=(f[(f[g>>2]|0)+1844>>2]|0)+832|0;b[h>>0]=b[h>>0]|8;h=(f[(f[g>>2]|0)+1844>>2]|0)+832|0;b[h>>0]=b[h>>0]|16;h=f[(f[g>>2]|0)+1844>>2]|0;f[h+828>>2]=86040;ARa(h+840|0,0);yRa((f[(f[g>>2]|0)+1844>>2]|0)+840|0,0);zRa((f[(f[g>>2]|0)+1844>>2]|0)+840|0,0);BRa((f[(f[g>>2]|0)+1844>>2]|0)+840|0,1);h=j[i>>1]|j[i+2>>1]<<16|12288;d[i>>1]=h;d[i+2>>1]=h>>>16;i=1;return i|0}else{e=f[h>>2]|0;f[h>>2]=0;if(e|0){hNa(e+840|0);iNa(e);Zpb(e)}CUa((f[g>>2]|0)+3516|0);i=1;return i|0}return 0}function PPa(a,c){a=a|0;c=c|0;var e=0,g=0.0,h=0,i=0;h=a+230|0;i=j[h>>1]|j[h+2>>1]<<16;if(!(i&16384)){e=a+344|0;g=+p[c>>3]}else{e=a+344|0;g=+p[c>>3];if(+p[e>>3]==g)if(+p[a+352>>3]==+p[c+8>>3])if(+p[a+360>>3]==+p[c+16>>3]){a=0;return a|0}}p[e>>3]=g;p[a+352>>3]=+p[c+8>>3];p[a+360>>3]=+p[c+16>>3];e=i|28672;d[h>>1]=e;d[h+2>>1]=e>>>16;do if(i&1024)if((b[a+226>>0]|0)!=2){i=f[a+60>>2]|0;if((f[i+1832>>2]|0)==(f[i+1836>>2]|0))if(exa(f[a+64>>2]|0)|0){e=j[h>>1]|j[h+2>>1]<<16;break}else{a=1;return a|0}}while(0);if(!(e&512)){a=0;return a|0}if((b[a+226>>0]|0)==2){a=0;return a|0}i=f[a+60>>2]|0;if((f[i+1832>>2]|0)!=(f[i+1836>>2]|0)){a=0;return a|0}a=(exa(f[a+64>>2]|0)|0)^1;return a|0}function QPa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,k=0;i=a+230|0;k=j[i>>1]|j[i+2>>1]<<16;if(!(k&16384)){g=a+320|0;if(+p[g>>3]==+p[e>>3])if(+p[a+328>>3]==+p[e+8>>3])if(+p[a+336>>3]==+p[e+16>>3])if(+p[a+344>>3]==+p[c>>3])if(+p[a+352>>3]==+p[c+8>>3])if(+p[a+360>>3]==+p[c+16>>3]){a=0;return a|0}else h=e;else h=e;else h=e;else h=e;else h=e;else h=e}else{g=a+320|0;h=e}p[a+344>>3]=+p[c>>3];p[a+352>>3]=+p[c+8>>3];p[a+360>>3]=+p[c+16>>3];p[g>>3]=+p[h>>3];p[a+328>>3]=+p[e+8>>3];p[a+336>>3]=+p[e+16>>3];g=k&-28673|12288;d[i>>1]=g;d[i+2>>1]=g>>>16;do if(k&1024)if((b[a+226>>0]|0)!=2){k=f[a+60>>2]|0;if((f[k+1832>>2]|0)==(f[k+1836>>2]|0))if(exa(f[a+64>>2]|0)|0){g=j[i>>1]|j[i+2>>1]<<16;break}else{a=1;return a|0}}while(0);if(!(g&512)){a=0;return a|0}if((b[a+226>>0]|0)==2){a=0;return a|0}k=f[a+60>>2]|0;if((f[k+1832>>2]|0)!=(f[k+1836>>2]|0)){a=0;return a|0}a=(exa(f[a+64>>2]|0)|0)^1;return a|0}function RPa(a,c){a=a|0;c=c|0;var e=0,g=0;c=c>>>0>16?c:16;e=a+368|0;if((f[e>>2]|0)==(c|0)){a=0;return a|0}f[e>>2]=c;c=a+230|0;e=j[c>>1]|j[c+2>>1]<<16;g=e|12288;d[c>>1]=g;d[c+2>>1]=g>>>16;if(!(e&1024)){g=0;return g|0}if((b[a+226>>0]|0)==2){g=0;return g|0}g=f[a+60>>2]|0;if((f[g+1832>>2]|0)!=(f[g+1836>>2]|0)){g=0;return g|0}g=(exa(f[a+64>>2]|0)|0)^1;return g|0}function SPa(a,c){a=a|0;c=c|0;var d=0;d=a+60|0;if(!(yUa((f[d>>2]|0)+3516|0,c)|0)){d=0;return d|0}c=a+230|0;if(!((j[c>>1]|j[c+2>>1]<<16)&1024)){d=0;return d|0}if((b[a+226>>0]|0)==2){d=0;return d|0}d=f[d>>2]|0;if((f[d+1832>>2]|0)!=(f[d+1836>>2]|0)){d=0;return d|0}d=(exa(f[a+64>>2]|0)|0)^1;return d|0}function TPa(a,c){a=a|0;c=+c;var d=0,e=0;d=a+60|0;if(!(zUa((f[d>>2]|0)+3516|0,c)|0)){d=0;return d|0}e=a+230|0;if(!((j[e>>1]|j[e+2>>1]<<16)&1024)){e=0;return e|0}if((b[a+226>>0]|0)==2){e=0;return e|0}e=f[d>>2]|0;if((f[e+1832>>2]|0)!=(f[e+1836>>2]|0)){e=0;return e|0}e=(exa(f[a+64>>2]|0)|0)^1;return e|0}function UPa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0;e=a+60|0;if(!(AUa((f[e>>2]|0)+3516|0,c)|0)){e=0;return e|0}g=a+230|0;c=j[g>>1]|j[g+2>>1]<<16;h=c|12288;d[g>>1]=h;d[g+2>>1]=h>>>16;if(!(c&1024)){h=0;return h|0}if((b[a+226>>0]|0)==2){h=0;return h|0}h=f[e>>2]|0;if((f[h+1832>>2]|0)!=(f[h+1836>>2]|0)){h=0;return h|0}h=(exa(f[a+64>>2]|0)|0)^1;return h|0}function VPa(a,c){a=a|0;c=+c;var d=0,e=0;d=a+60|0;if(!(BUa((f[d>>2]|0)+3516|0,c)|0)){d=0;return d|0}e=a+230|0;if(!((j[e>>1]|j[e+2>>1]<<16)&1024)){e=0;return e|0}if((b[a+226>>0]|0)==2){e=0;return e|0}e=f[d>>2]|0;if((f[e+1832>>2]|0)!=(f[e+1836>>2]|0)){e=0;return e|0}e=(exa(f[a+64>>2]|0)|0)^1;return e|0}function WPa(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+230|0;e=j[c>>1]|j[c+2>>1]<<16;a=b&1;if((e>>>8&1|0)==(a|0)){e=0;return e|0}e=e&-257|a<<8;d[c>>1]=e;d[c+2>>1]=e>>>16;e=1;return e|0}function XPa(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+230|0;e=j[c>>1]|j[c+2>>1]<<16;a=b&1;if((e>>>11&1|0)==(a|0)){e=0;return e|0}e=e&-2049|a<<11;d[c>>1]=e;d[c+2>>1]=e>>>16;e=1;return e|0}function YPa(a,b){a=a|0;b=+b;return hUa((f[a+60>>2]|0)+3620|0,b)|0}function ZPa(a,b){a=a|0;b=+b;return iUa((f[a+60>>2]|0)+3620|0,b)|0}function _Pa(a,b){a=a|0;b=b|0;return jUa((f[a+60>>2]|0)+3620|0,b)|0}function $Pa(a,b){a=a|0;b=+b;return kUa((f[a+60>>2]|0)+3620|0,b)|0}function aQa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0;e=a+230|0;g=j[e>>1]|j[e+2>>1]<<16;h=c&1;if((g>>>9&1|0)==(h|0)){c=0;return c|0}g=g&-513|h<<9;d[e>>1]=g;d[e+2>>1]=g>>>16;g=a+60|0;h=(f[g>>2]|0)+1848|0;if(c){c=Wpb(952)|0;uVa(c,a);tRa(c+840|0,a);e=f[h>>2]|0;f[h>>2]=c;if(e|0){hNa(e+840|0);iNa(e);Zpb(e)}c=(f[(f[g>>2]|0)+1848>>2]|0)+832|0;b[c>>0]=b[c>>0]|16;c=f[(f[g>>2]|0)+1848>>2]|0;f[c+828>>2]=8;yRa(c+840|0,0);zRa((f[(f[g>>2]|0)+1848>>2]|0)+840|0,0);BRa((f[(f[g>>2]|0)+1848>>2]|0)+840|0,1);c=1;return c|0}else{e=f[h>>2]|0;f[h>>2]=0;if(!e){c=1;return c|0}hNa(e+840|0);iNa(e);Zpb(e);c=1;return c|0}return 0}function bQa(a,c){a=a|0;c=+c;var d=0,e=0;d=a+60|0;if(!(nUa((f[d>>2]|0)+3736|0,c)|0)){d=0;return d|0}e=a+230|0;if(!((j[e>>1]|j[e+2>>1]<<16)&512)){e=0;return e|0}if((b[a+226>>0]|0)==2){e=0;return e|0}e=f[d>>2]|0;if((f[e+1832>>2]|0)!=(f[e+1836>>2]|0)){e=0;return e|0}e=(exa(f[a+64>>2]|0)|0)^1;return e|0}function cQa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;v=f[a+32>>2]|0;w=f[a+136>>2]|0;u=f[a+168>>2]|0;t=f[a+288>>2]|0;x=f[a+504>>2]|0;o=f[a+704>>2]|0;p=f[a+920>>2]|0;q=f[a+1096>>2]|0;y=f[a+1464>>2]|0;z=f[a+1560>>2]|0;a:{b:while(1){s=u;switch((x-s|0)>>3|0){case 2:{z=5;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 3:{z=9;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 4:{z=27;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 5:{z=28;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 1:case 0:{z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}default:{}}if((x-s|0|0)<248){z=30;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}k=((x-s|0)>>3|0)/2|0;j=u+(k<<3)|0;do if((x-s|0|0)>7992){i=pMa(u,u+((((x-s|0)>>3|0)/4|0)<<3)|0,j,j+((((x-s|0)>>3|0)/4|0)<<3)|0,o)|0;c=j;m=u}else{g=f[j>>2]|0;c=f[u>>2]|0;if((g|0)==(c|0))d=(f[u+(k<<3)+4>>2]|0)<(f[u+4>>2]|0);else d=(g|0)<(c|0);c=f[o>>2]|0;if((c|0)==(g|0))c=(f[q>>2]|0)<(f[u+(k<<3)+4>>2]|0);else c=(c|0)<(g|0);if(!d){if(!c){i=0;c=j;m=u;break}d=f[j>>2]|0;c=f[j+4>>2]|0;m=f[o+4>>2]|0;f[j>>2]=f[o>>2];f[j+4>>2]=m;f[o>>2]=d;f[o+4>>2]=c;c=f[j>>2]|0;d=f[u>>2]|0;if((c|0)==(d|0)){if((f[u+(k<<3)+4>>2]|0)>=(f[u+4>>2]|0)){i=1;c=j;m=u;break}}else if((c|0)>=(d|0)){i=1;c=j;m=u;break}i=u;c=f[i>>2]|0;i=f[i+4>>2]|0;l=f[j+4>>2]|0;m=u;f[m>>2]=f[j>>2];f[m+4>>2]=l;f[j>>2]=c;f[j+4>>2]=i;i=2;c=j;m=u;break}g=u;d=f[g>>2]|0;g=f[g+4>>2]|0;if(c){c=f[o+4>>2]|0;i=u;f[i>>2]=f[o>>2];f[i+4>>2]=c;f[o>>2]=d;f[o+4>>2]=g;i=1;c=j;m=u;break}m=f[j+4>>2]|0;c=u;f[c>>2]=f[j>>2];f[c+4>>2]=m;f[j>>2]=d;f[j+4>>2]=g;c=f[o>>2]|0;if((c|0)==(d|0)){if((f[q>>2]|0)>=(g|0)){i=1;c=j;m=u;break}}else if((c|0)>=(d|0)){i=1;c=j;m=u;break}i=f[o+4>>2]|0;f[j>>2]=f[o>>2];f[j+4>>2]=i;f[o>>2]=d;f[o+4>>2]=g;i=2;c=j;m=u}while(0);l=f[m>>2]|0;h=f[c>>2]|0;if((l|0)==(h|0)){if((f[u+4>>2]|0)<(f[u+(k<<3)+4>>2]|0)){e=o;b=i;break}}else if((l|0)<(h|0)){e=o;b=i;break}if((u|0)!=(p|0)){g=u+(k<<3)+4|0;c=o;r=p;while(1){d=f[r>>2]|0;if((d|0)==(h|0)){if((f[c+-4>>2]|0)<(f[g>>2]|0)){z=111;break b}}else if((d|0)<(h|0)){z=111;break b}c=r+-8|0;if((u|0)==(c|0))break;else{k=r;r=c;c=k}}}c=u+8|0;d=f[o>>2]|0;if((l|0)==(d|0))if((f[u+4>>2]|0)<(f[q>>2]|0))n=c;else z=88;else if((l|0)<(d|0))n=c;else z=88;if((z|0)==88){z=0;if((c|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}g=u+4|0;while(1){d=f[c>>2]|0;if((l|0)==(d|0)){if((f[g>>2]|0)<(f[c+4>>2]|0))break}else if((l|0)<(d|0))break;c=c+8|0;if((c|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}}n=c;s=f[n>>2]|0;n=f[n+4>>2]|0;k=f[o+4>>2]|0;l=c;f[l>>2]=f[o>>2];f[l+4>>2]=k;f[o>>2]=s;f[o+4>>2]=n;n=c+8|0}if((n|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}i=u+4|0;g=o;c=n;while(1){j=f[m>>2]|0;while(1){d=f[c>>2]|0;if((j|0)==(d|0)){if((f[i>>2]|0)<(f[c+4>>2]|0))break}else if((j|0)<(d|0))break;c=c+8|0}while(1){d=g+-8|0;h=f[d>>2]|0;if((j|0)==(h|0))if((f[i>>2]|0)<(f[g+-4>>2]|0)){g=d;continue}else break;else if((j|0)<(h|0)){g=d;continue}else break}if(c>>>0>=d>>>0){u=c;continue b}g=c;u=f[g>>2]|0;g=f[g+4>>2]|0;l=f[d+4>>2]|0;s=c;f[s>>2]=f[d>>2];f[s+4>>2]=l;f[d>>2]=u;f[d+4>>2]=g;g=d;c=c+8|0}}if((z|0)==111){z=0;b=u;t=f[b>>2]|0;b=f[b+4>>2]|0;p=r;q=f[p+4>>2]|0;e=u;f[e>>2]=f[p>>2];f[e+4>>2]=q;e=r;f[e>>2]=t;f[e+4>>2]=b;e=r;b=i+1|0}c=u+8|0;c:do if(c>>>0<e>>>0)while(1){h=f[j>>2]|0;i=j+4|0;while(1){d=f[c>>2]|0;if((d|0)==(h|0)){if((f[c+4>>2]|0)>=(f[i>>2]|0)){d=e;break}}else if((d|0)>=(h|0)){d=e;break}c=c+8|0}while(1){e=d+-8|0;g=f[e>>2]|0;if((g|0)==(h|0))if((f[d+-4>>2]|0)<(f[i>>2]|0))break;else{d=e;continue}else if((g|0)<(h|0))break;else{d=e;continue}}if(c>>>0>e>>>0){e=j;t=c;break c}t=c;r=f[t>>2]|0;t=f[t+4>>2]|0;p=f[e+4>>2]|0;q=c;f[q>>2]=f[e>>2];f[q+4>>2]=p;f[e>>2]=r;f[e+4>>2]=t;j=(j|0)==(c|0)?e:j;c=c+8|0;b=b+1|0}else{e=j;t=c}while(0);do if((t|0)!=(e|0)){c=f[e>>2]|0;d=f[t>>2]|0;if((c|0)==(d|0)){if((f[e+4>>2]|0)>=(f[t+4>>2]|0))break}else if((c|0)>=(d|0))break;q=t;p=f[q>>2]|0;q=f[q+4>>2]|0;n=e;o=f[n+4>>2]|0;r=t;f[r>>2]=f[n>>2];f[r+4>>2]=o;r=e;f[r>>2]=p;f[r+4>>2]=q;b=b+1|0}while(0);if(!b){y=qMa(u,t)|0;b=t+8|0;if(qMa(b,w)|0){z=134;f[a+1576>>2]=1;break a}if(y){v=b;f[a+1576>>2]=3;break a}}w=t;if((w-s|0)>=(x-w|0)){z=133;f[a+1576>>2]=1;break a}nMa(u,t);v=t+8|0}f[a+32>>2]=v;f[a+168>>2]=u;f[a+288>>2]=t;f[a+1464>>2]=y;f[a+1560>>2]=z}function dQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;P=f[a+80>>2]|0;Q=f[a+248>>2]|0;R=f[a+272>>2]|0;S=f[a+504>>2]|0;T=f[a+512>>2]|0;U=f[a+968>>2]|0;V=f[a+984>>2]|0;x=f[a+992>>2]|0;W=f[a+1008>>2]|0;y=f[a+1024>>2]|0;X=f[a+1032>>2]|0;B=f[a+1944>>2]|0;C=f[a+2200>>2]|0;D=f[a+4904>>2]|0;N=f[a+4912>>2]|0;M=f[a+4928>>2]|0;L=f[a+4936>>2]|0;O=f[a+6072>>2]|0;Y=f[a+6104>>2]|0;K=f[a+6112>>2]|0;a:{if(Y){Y=0;switch(K|0){case 1:{if(!Q){T=1;V=N;X=0;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}i=f[N+8>>2]|0;h=Q;while(1){if((f[h+12>>2]|0)==(i|0))break;h=f[h>>2]|0;if(!h){S=1;U=N;W=Q;O=448;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}}w=N+12|0;n=i;v=h;while(1){o=v+4|0;if(!(f[o>>2]|0)){O=342;break}l=v+20|0;if(!(b[l>>0]|0))IMa(a+24|0,v,n,1);else JMa(a+24|0,v,n,1);u=v+8|0;h=f[u>>2]|0;if(!h)O=354;else if((f[h+4>>2]|0)==(n|0))g=h;else O=354;if((O|0)==354){O=0;g=f[P>>2]|0;g=Pg[f[f[g>>2]>>2]&255](g,8)|0;f[g+4>>2]=n;f[g>>2]=f[u>>2];f[u>>2]=g}t=v+16|0;f[t>>2]=n;h=f[o>>2]|0;i=f[h+12>>2]|0;if(!i)i=n;else{e=f[M>>2]|0;h=f[(f[h+8>>2]|0)+4>>2]|0;if(!(HMa(e,f[w>>2]|0,h,i,1)|0))break;i=KMa(a+24|0,h,i,N)|0;h=f[u>>2]|0;do if(!(b[l>>0]|0)){k=f[h+4>>2]|0;h=f[B>>2]|0;j=f[C>>2]|0;if(!(b[D>>0]|0))_h[h&3](j,0,k,i,n,f[k+12>>2]|0,f[i+12>>2]|0,f[n+12>>2]|0,f[k+24>>2]|0,f[i+24>>2]|0,f[n+24>>2]|0);else _h[h&3](j,0,k,n,i,f[k+12>>2]|0,f[n+12>>2]|0,f[i+12>>2]|0,f[k+24>>2]|0,f[n+24>>2]|0,f[i+24>>2]|0);IMa(a+24|0,v,i,1);JMa(a+24|0,f[o>>2]|0,i,1);f[(f[u>>2]|0)+4>>2]=i;f[(f[(f[o>>2]|0)+8>>2]|0)+4>>2]=i}else{if(!h)O=377;else if((f[h+4>>2]|0)==(n|0)){m=h;O=378}else O=377;if((O|0)==377){O=0;h=f[P>>2]|0;h=Pg[f[f[h>>2]>>2]&255](h,8)|0;f[h+4>>2]=n;f[h>>2]=f[u>>2];f[u>>2]=h;if(h|0){m=h;O=378}}if((O|0)==378){O=0;if((f[m+4>>2]|0)==(i|0))break}n=f[P>>2]|0;n=Pg[f[f[n>>2]>>2]&255](n,8)|0;f[n+4>>2]=i;f[n>>2]=f[u>>2];f[u>>2]=n}while(0);h=f[o>>2]|0;f[v+12>>2]=f[(h+12|0)>>2];f[t>>2]=f[h+16>>2];f[(h+12|0)>>2]=f[w>>2];j=f[v>>2]|0;if(j){GMa(a+24|0,v,j,9.999999974752427e-07,9.999999974752427e-07);h=f[o>>2]|0}}if(!h){S=1;U=N;W=Q;O=448;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}else{n=i;v=h}}if((O|0)==342){JMa(a+24|0,v,n,1);e=v+8|0;c=f[e>>2]|0;if(!c)O=345;else if((f[c+4>>2]|0)==(n|0)){p=c;q=f[M>>2]|0;O=346}else O=345;if((O|0)==345){d=f[P>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=n;f[d>>2]=f[e>>2];f[e>>2]=d;c=f[M>>2]|0;if(!d){r=c;O=347}else{p=d;q=c;O=346}}if((O|0)==346){O=0;if((f[p+4>>2]|0)==(q|0))s=q;else{r=q;O=347}}if((O|0)==347){O=0;s=f[P>>2]|0;s=Pg[f[f[s>>2]>>2]&255](s,8)|0;f[s+4>>2]=r;f[s>>2]=f[e>>2];f[e>>2]=s;s=r}f[v+16>>2]=s;f[v+12>>2]=f[w>>2];GMa(a+24|0,v,f[v>>2]|0,9.999999974752427e-07,9.999999974752427e-07);x=Q;y=R;f[a+6144>>2]=2;f[a+6148>>2]=8;break a}if(!(b[l>>0]|0)){i=f[g+4>>2]|0;do if((i|0)!=(n|0)){g=f[B>>2]|0;h=f[C>>2]|0;if(!(b[D>>0]|0)){_h[g&3](h,0,i,e,n,f[i+12>>2]|0,f[e+12>>2]|0,f[n+12>>2]|0,f[i+24>>2]|0,f[e+24>>2]|0,f[n+24>>2]|0);break}else{_h[g&3](h,0,i,n,e,f[i+12>>2]|0,f[n+12>>2]|0,f[e+12>>2]|0,f[i+24>>2]|0,f[n+24>>2]|0,f[e+24>>2]|0);break}}while(0);IMa(a+24|0,v,f[M>>2]|0,1);g=f[u>>2]|0;e=f[M>>2]|0}if(!g)O=365;else if((f[g+4>>2]|0)!=(e|0))O=365;if((O|0)==365){O=0;y=f[P>>2]|0;y=Pg[f[f[y>>2]>>2]&255](y,8)|0;f[y+4>>2]=e;f[y>>2]=f[u>>2];f[u>>2]=y}f[t>>2]=e;f[v+12>>2]=f[w>>2];e=f[o>>2]|0;if(e|0)GMa(a+24|0,e,v,9.999999974752427e-07,0.0);e=f[v>>2]|0;if(!e){x=Q;y=R}else{GMa(a+24|0,v,e,0.0,9.999999974752427e-07);x=Q;y=R}break}default:Y=1}}if(Y){Y=0;switch(K|0){case 2:{if(!Q){T=1;V=N;X=0;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}else e=Q;while(1){if((f[e+12>>2]|0)==(L|0))break;e=f[e>>2]|0;if(!e){S=1;U=N;W=Q;O=448;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}}k=N+8|0;m=N+16|0;j=L;l=e;while(1){if(!(f[l>>2]|0)){O=388;break}z=l+20|0;if(!(b[z>>0]|0))IMa(a+24|0,l,j,1);else JMa(a+24|0,l,j,1);J=l+8|0;e=f[J>>2]|0;if(!e)O=400;else if((f[e+4>>2]|0)==(j|0))d=e;else O=400;if((O|0)==400){O=0;d=f[P>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=j;f[d>>2]=f[J>>2];f[J>>2]=d}I=l+16|0;f[I>>2]=j;e=f[l>>2]|0;g=f[e+12>>2]|0;if(!g)g=j;else{c=f[k>>2]|0;e=f[(f[e+8>>2]|0)+4>>2]|0;if(HMa(c,f[m>>2]|0,e,g,1)|0)break;i=KMa(a+24|0,e,g,N)|0;e=f[J>>2]|0;do if(!(b[z>>0]|0)){if(!e)O=423;else if((f[e+4>>2]|0)==(j|0)){A=e;O=424}else O=423;if((O|0)==423){O=0;e=f[P>>2]|0;e=Pg[f[f[e>>2]>>2]&255](e,8)|0;f[e+4>>2]=j;f[e>>2]=f[J>>2];f[J>>2]=e;if(e|0){A=e;O=424}}if((O|0)==424){O=0;if((f[A+4>>2]|0)==(i|0))break}w=f[P>>2]|0;w=Pg[f[f[w>>2]>>2]&255](w,8)|0;f[w+4>>2]=i;f[w>>2]=f[J>>2];f[J>>2]=w}else{h=f[e+4>>2]|0;e=f[B>>2]|0;g=f[C>>2]|0;if(!(b[D>>0]|0))_h[e&3](g,0,h,j,i,f[h+12>>2]|0,f[j+12>>2]|0,f[i+12>>2]|0,f[h+24>>2]|0,f[j+24>>2]|0,f[i+24>>2]|0);else _h[e&3](g,0,h,i,j,f[h+12>>2]|0,f[i+12>>2]|0,f[j+12>>2]|0,f[h+24>>2]|0,f[i+24>>2]|0,f[j+24>>2]|0);JMa(a+24|0,l,i,1);IMa(a+24|0,f[l>>2]|0,i,1);f[(f[J>>2]|0)+4>>2]=i;f[(f[(f[l>>2]|0)+8>>2]|0)+4>>2]=i}while(0);e=f[l>>2]|0;f[l+12>>2]=f[(e+12|0)>>2];f[I>>2]=f[e+16>>2];f[(e+12|0)>>2]=f[m>>2];g=f[l+4>>2]|0;if(!g)g=i;else{GMa(a+24|0,g,l,9.999999974752427e-07,9.999999974752427e-07);g=i;e=f[l>>2]|0}}if(!e){S=1;U=N;W=Q;O=448;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}else{j=g;l=e}}if((O|0)==388){IMa(a+24|0,l,j,1);e=l+8|0;c=f[e>>2]|0;if(!c)O=391;else if((f[c+4>>2]|0)==(j|0)){E=c;F=f[k>>2]|0;O=392}else O=391;if((O|0)==391){d=f[P>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=j;f[d>>2]=f[e>>2];f[e>>2]=d;c=f[k>>2]|0;if(!d){G=c;O=393}else{E=d;F=c;O=392}}if((O|0)==392){O=0;if((f[E+4>>2]|0)==(F|0))H=F;else{G=F;O=393}}if((O|0)==393){O=0;H=f[P>>2]|0;H=Pg[f[f[H>>2]>>2]&255](H,8)|0;f[H+4>>2]=G;f[H>>2]=f[e>>2];f[e>>2]=H;H=G}f[l+16>>2]=H;f[l+12>>2]=f[m>>2];GMa(a+24|0,f[l+4>>2]|0,l,9.999999974752427e-07,9.999999974752427e-07);x=Q;y=R;f[a+6144>>2]=2;f[a+6148>>2]=8;break a}if(b[z>>0]|0){g=f[d+4>>2]|0;do if((g|0)!=(j|0)){e=f[B>>2]|0;d=f[C>>2]|0;if(!(b[D>>0]|0)){_h[e&3](d,0,g,j,c,f[g+12>>2]|0,f[j+12>>2]|0,f[c+12>>2]|0,f[g+24>>2]|0,f[j+24>>2]|0,f[c+24>>2]|0);break}else{_h[e&3](d,0,g,c,j,f[g+12>>2]|0,f[c+12>>2]|0,f[j+12>>2]|0,f[g+24>>2]|0,f[c+24>>2]|0,f[j+24>>2]|0);break}}while(0);JMa(a+24|0,l,f[k>>2]|0,1);d=f[J>>2]|0;c=f[k>>2]|0}if(!d)O=411;else if((f[d+4>>2]|0)!=(c|0))O=411;if((O|0)==411){O=0;H=f[P>>2]|0;H=Pg[f[f[H>>2]>>2]&255](H,8)|0;f[H+4>>2]=c;f[H>>2]=f[J>>2];f[J>>2]=H}f[I>>2]=c;f[l+12>>2]=f[m>>2];c=f[l+4>>2]|0;if(c|0)GMa(a+24|0,c,l,9.999999974752427e-07,0.0);c=f[l>>2]|0;if(!c){x=Q;y=R}else{GMa(a+24|0,l,c,0.0,9.999999974752427e-07);x=Q;y=R}break}default:Y=1}}if(Y){Y=0;switch(K|0){case 5:{if(!Q){T=1;V=N;X=0;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}else h=Q;while(1){g=h+12|0;if((f[g>>2]|0)==(L|0))break;c=f[h>>2]|0;if(!c){S=1;U=N;W=Q;O=448;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}else h=c}c=(f[h>>2]|0)==0;do if(!(b[h+20>>0]|0)){if(c){T=1;V=N;X=Q;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}IMa(a+24|0,h,L,1);c=f[M>>2]|0;d=h+8|0;e=f[d>>2]|0;if(!e)O=438;else if((f[e+4>>2]|0)!=(c|0))O=438;if((O|0)==438){O=0;M=f[P>>2]|0;M=Pg[f[f[M>>2]>>2]&255](M,8)|0;f[M+4>>2]=c;f[M>>2]=f[d>>2];f[d>>2]=M}f[g>>2]=f[N+12>>2];d=N+8|0;JMa(a+24|0,f[h>>2]|0,f[d>>2]|0,1);c=f[h>>2]|0;d=f[d>>2]|0;e=f[(c+8|0)>>2]|0;if(e|0)if((f[e+4>>2]|0)==(d|0))break;P=f[P>>2]|0;P=Pg[f[f[P>>2]>>2]&255](P,8)|0;f[P+4>>2]=d;f[P>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=P;c=f[h>>2]|0}else{if(c){T=1;V=N;X=Q;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}JMa(a+24|0,h,L,1);P=N+8|0;IMa(a+24|0,f[h>>2]|0,f[P>>2]|0,1);f[(f[h+8>>2]|0)+4>>2]=f[M>>2];f[g>>2]=f[N+12>>2];c=f[h>>2]|0;f[(f[c+8>>2]|0)+4>>2]=f[P>>2]}while(0);f[c+12>>2]=f[N+16>>2];N=h+16|0;c=c+16|0;P=f[N>>2]|0;f[N>>2]=f[c>>2];f[c>>2]=P;c=f[h+4>>2]|0;if(c|0)GMa(a+24|0,c,h,9.999999974752427e-07,9.999999974752427e-07);c=f[h>>2]|0;d=f[c>>2]|0;if(!d){x=Q;y=R}else{GMa(a+24|0,c,d,9.999999974752427e-07,9.999999974752427e-07);x=Q;y=R}break}default:{T=1;V=N;X=Q;f[a+6144>>2]=2;f[a+6148>>2]=13;break a}}}}f[a+504>>2]=S;f[a+512>>2]=T;f[a+968>>2]=U;f[a+984>>2]=V;f[a+992>>2]=x;f[a+1008>>2]=W;f[a+1024>>2]=y;f[a+1032>>2]=X;f[a+6072>>2]=O;f[a+6104>>2]=Y}function eQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;G=f[a+80>>2]|0;v=f[a+352>>2]|0;H=f[a+704>>2]|0;w=f[a+800>>2]|0;c=f[a+880>>2]|0;J=f[a+1624>>2]|0;C=f[a+1944>>2]|0;g=f[a+2032>>2]|0;D=f[a+2200>>2]|0;o=f[a+2248>>2]|0;E=f[a+4904>>2]|0;x=f[a+4912>>2]|0;t=f[a+4928>>2]|0;F=f[a+5856>>2]|0;i=f[a+5864>>2]|0;r=f[a+5880>>2]|0;m=f[a+5904>>2]|0;p=f[a+5912>>2]|0;q=f[a+5944>>2]|0;l=f[a+5968>>2]|0;I=f[a+6072>>2]|0;a:{if((J|0)==(q|0)){if(!(b[c+20>>0]|0)){IMa(a+24|0,c,g,1);h=f[t>>2]|0;i=c+8|0;e=f[i>>2]|0;if(!e)I=223;else if((f[e+4>>2]|0)==(h|0)){j=h;k=e}else I=223;if((I|0)==223){I=0;k=f[G>>2]|0;k=Pg[f[f[k>>2]>>2]&255](k,8)|0;f[k+4>>2]=h;f[k>>2]=f[i>>2];f[i>>2]=k;j=f[t>>2]|0}g=c+16|0;f[g>>2]=h;e=f[F>>2]|0;if(+n[j+16>>2]!=+n[e+16>>2]){if(!k)I=227;else if((f[k+4>>2]|0)==(e|0))d=e;else I=227;if((I|0)==227){I=0;d=f[G>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=e;f[d>>2]=f[i>>2];f[i>>2]=d;d=f[F>>2]|0}f[g>>2]=e}else d=e;f[r>>2]=0;c=f[c>>2]|0;JMa(a+24|0,c,d,1);d=f[F>>2]|0;e=f[(c+8|0)>>2]|0;if(!e)I=231;else if((f[e+4>>2]|0)!=(d|0))I=231;if((I|0)==231){I=0;J=f[G>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,8)|0;f[J+4>>2]=d;f[J>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=J}f[c+16>>2]=d;f[c+12>>2]=0;GMa(a+24|0,f[(f[c+4>>2]|0)+4>>2]|0,f[c>>2]|0,9.999999974752427e-07,9.999999974752427e-07);h=H;i=47;e=v;d=w;f[a+6152>>2]=1;break a}j=c+4|0;k=f[j>>2]|0;JMa(a+24|0,c,l,1);g=f[t>>2]|0;h=f[F>>2]|0;do if(+n[g+16>>2]!=+n[h+16>>2]){i=f[(f[c+8>>2]|0)+4>>2]|0;e=f[C>>2]|0;d=f[D>>2]|0;if(!(b[E>>0]|0)){_h[e&3](d,0,i,g,h,f[i+12>>2]|0,f[g+12>>2]|0,f[h+12>>2]|0,f[i+24>>2]|0,f[g+24>>2]|0,f[h+24>>2]|0);break}else{_h[e&3](d,0,i,h,g,f[i+12>>2]|0,f[h+12>>2]|0,f[g+12>>2]|0,f[i+24>>2]|0,f[h+24>>2]|0,f[g+24>>2]|0);break}}while(0);IMa(a+24|0,f[c>>2]|0,f[F>>2]|0,1);e=f[j>>2]|0;if(e|0)f[e>>2]=f[f[c>>2]>>2];d=f[c>>2]|0;g=f[d>>2]|0;if(g|0)f[g+4>>2]=e;g=(w|0)==(c|0)?g:w;e=f[(d+8|0)>>2]|0;if(e){do{f[(d+8|0)>>2]=f[e>>2];Lbb(e);e=f[(d+8|0)>>2]|0}while((e|0)!=0);d=f[c>>2]|0}Lbb(d);e=c+8|0;d=f[e>>2]|0;if(d|0)do{f[e>>2]=f[d>>2];Lbb(d);d=f[e>>2]|0}while((d|0)!=0);Lbb(c);if(!k){h=H;i=47;e=v;d=g;f[a+6152>>2]=1;break a}d=f[k>>2]|0;if(!d){h=H;i=47;e=v;d=g;f[a+6152>>2]=1;break a}GMa(a+24|0,k,d,9.999999974752427e-07,9.999999974752427e-07);h=H;i=47;e=v;d=g;f[a+6152>>2]=1;break a}i=f[i>>2]|0;d=f[p+12>>2]|0;if(!d){d=p;while(1){g=f[d>>2]|0;d=f[g+12>>2]|0;if(!d)d=g;else break}}else g=p;if(HMa(q,i,f[(f[g+8>>2]|0)+4>>2]|0,d,0)|0){if((f[(f[c+8>>2]|0)+4>>2]|0)==(f[(f[p+8>>2]|0)+4>>2]|0)){f[r>>2]=f[(p+12|0)>>2];f[(p+12|0)>>2]=m;h=H;i=46;e=v;d=w;f[a+6152>>2]=1;break a}d=f[p>>2]|0;if(!d){h=1;i=23;e=v;d=w;f[a+6152>>2]=1;break a}e=f[(d+12|0)>>2]|0;if((q|0)!=(e|0)){h=1;i=23;e=v;d=w;f[a+6152>>2]=1;break a}h=f[(p+12|0)>>2]|0;f[(p+12|0)>>2]=e;f[(d+12|0)>>2]=h;h=H;i=46;e=v;d=w;f[a+6152>>2]=1;break a}do{d=1;if(d)if(!(b[c+20>>0]|0)){IMa(a+24|0,c,o,1);d=f[t>>2]|0;e=c+8|0;g=f[e>>2]|0;if(!g)I=247;else if((f[g+4>>2]|0)!=(d|0))I=247;if((I|0)==247){I=0;J=f[G>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,8)|0;f[J+4>>2]=d;f[J>>2]=f[e>>2];f[e>>2]=J}f[c+16>>2]=d;i=f[c>>2]|0;h=KMa(a+24|0,f[(f[(i+8|0)>>2]|0)+4>>2]|0,f[(i+12|0)>>2]|0,x)|0;c=f[(i+4|0)>>2]|0;d=f[(c+8|0)>>2]|0;if(!d)I=250;else if((f[d+4>>2]|0)==(h|0))s=c;else I=250;if((I|0)==250){I=0;s=f[G>>2]|0;s=Pg[f[f[s>>2]>>2]&255](s,8)|0;f[s+4>>2]=h;f[s>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=s;s=f[(i+4|0)>>2]|0}f[s+12>>2]=f[(i+12|0)>>2];f[s+16>>2]=f[i+16>>2];c=f[i>>2]|0;d=f[c+12>>2]|0;if((d|0)!=(f[F>>2]|0)){if(!d)do{c=f[f[c>>2]>>2]|0;d=f[c+12>>2]|0}while((d|0)==0);d=KMa(a+24|0,f[(f[c+8>>2]|0)+4>>2]|0,d,x)|0}JMa(a+24|0,i,h,1);g=f[(f[(i+8|0)>>2]|0)+4>>2]|0;c=f[C>>2]|0;e=f[D>>2]|0;if(!(b[E>>0]|0)){_h[c&3](e,0,g,h,d,f[g+12>>2]|0,f[h+12>>2]|0,f[d+12>>2]|0,f[g+24>>2]|0,f[h+24>>2]|0,f[d+24>>2]|0);h=d;e=0;u=i;break}else{_h[c&3](e,0,g,d,h,f[g+12>>2]|0,f[d+12>>2]|0,f[h+12>>2]|0,f[g+24>>2]|0,f[d+24>>2]|0,f[h+24>>2]|0);h=d;e=0;u=i;break}}else d=1;if(d)if(1){JMa(a+24|0,c,o,1);h=f[c>>2]|0;h=KMa(a+24|0,f[(f[h+8>>2]|0)+4>>2]|0,f[h+12>>2]|0,x)|0;i=f[(f[c+8>>2]|0)+4>>2]|0;g=f[t>>2]|0;d=f[C>>2]|0;e=f[D>>2]|0;if(!(b[E>>0]|0)){_h[d&3](e,0,i,g,h,f[i+12>>2]|0,f[g+12>>2]|0,f[h+12>>2]|0,f[i+24>>2]|0,f[g+24>>2]|0,f[h+24>>2]|0);e=v;u=c;break}else{_h[d&3](e,0,i,h,g,f[i+12>>2]|0,f[h+12>>2]|0,f[g+12>>2]|0,f[i+24>>2]|0,f[h+24>>2]|0,f[g+24>>2]|0);e=v;u=c;break}}}while(0);c=f[u>>2]|0;IMa(a+24|0,c,h,1);j=f[c+12>>2]|0;i=f[c+16>>2]|0;c=f[c>>2]|0;d=f[u+4>>2]|0;if(d|0)f[d>>2]=c;if(c)f[c+4>>2]=d;p=(w|0)==(u|0)?c:w;d=f[u>>2]|0;g=f[(d+8|0)>>2]|0;if(g){do{f[(d+8|0)>>2]=f[g>>2];Lbb(g);g=f[(d+8|0)>>2]|0}while((g|0)!=0);d=f[u>>2]|0}Lbb(d);g=u+8|0;d=f[g>>2]|0;if(d|0)do{f[g>>2]=f[d>>2];Lbb(d);d=f[g>>2]|0}while((d|0)!=0);Lbb(u);if((h|0)==(f[F>>2]|0)){h=H;i=47;d=p;f[a+6152>>2]=1;break a}if(!c){h=1;i=23;d=p;c=0;f[a+6152>>2]=1;break a}else{o=i;m=j;l=h}while(1){k=c+12|0;d=f[k>>2]|0;if(!d){h=l;d=o;g=m}else{if((d|0)==(f[F>>2]|0))break;j=c+8|0;h=KMa(a+24|0,f[(f[j>>2]|0)+4>>2]|0,d,x)|0;do if(!(b[c+20>>0]|0)){IMa(a+24|0,c,f[F>>2]|0,1);i=f[(f[j>>2]|0)+4>>2]|0;d=f[C>>2]|0;g=f[D>>2]|0;if(!(b[E>>0]|0))_h[d&3](g,0,i,l,h,f[i+12>>2]|0,f[l+12>>2]|0,f[h+12>>2]|0,f[i+24>>2]|0,f[l+24>>2]|0,f[h+24>>2]|0);else _h[d&3](g,0,i,h,l,f[i+12>>2]|0,f[h+12>>2]|0,f[l+12>>2]|0,f[i+24>>2]|0,f[h+24>>2]|0,f[l+24>>2]|0);f[(f[j>>2]|0)+4>>2]=l;if(!e)break;d=(f[c+4>>2]|0)+8|0;J=f[d>>2]|0;f[J+4>>2]=l;if((J|0)!=0&(l|0)==(e|0))break;J=f[G>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,8)|0;f[J+4>>2]=e;f[J>>2]=f[d>>2];f[d>>2]=J}else JMa(a+24|0,c,h,1);while(0);g=f[k>>2]|0;f[k>>2]=m;e=c+16|0;d=f[e>>2]|0;f[e>>2]=o;e=l}c=f[c>>2]|0;if(!c){h=1;i=23;d=p;c=0;f[a+6152>>2]=2;f[a+6156>>2]=1;break a}else{o=d;m=g;l=h}}if(b[c+20>>0]|0){JMa(a+24|0,c,d,1);h=f[F>>2]|0;i=c+8|0;d=f[i>>2]|0;do if(!d)I=278;else{if((f[d+4>>2]|0)!=(h|0)){I=278;break}A=c+16|0;f[A>>2]=h;y=d;I=279}while(0);if((I|0)==278){d=f[G>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=h;f[d>>2]=f[i>>2];f[i>>2]=d;g=c+16|0;f[g>>2]=h;if(!d){B=g;I=280}else{y=d;A=g;I=279}}if((I|0)==279){I=0;if((f[y+4>>2]|0)==(l|0))z=A;else{B=A;I=280}}if((I|0)==280){I=0;z=f[G>>2]|0;z=Pg[f[f[z>>2]>>2]&255](z,8)|0;f[z+4>>2]=l;f[z>>2]=f[i>>2];f[i>>2]=z;z=B}f[k>>2]=m;f[z>>2]=o;h=H;i=47;d=p;f[a+6152>>2]=1;break a}IMa(a+24|0,c,d,1);j=c+8|0;i=f[(f[j>>2]|0)+4>>2]|0;h=f[F>>2]|0;g=f[C>>2]|0;d=f[D>>2]|0;if(!(b[E>>0]|0))_h[g&3](d,0,i,l,h,f[i+12>>2]|0,f[l+12>>2]|0,f[h+12>>2]|0,f[i+24>>2]|0,f[l+24>>2]|0,f[h+24>>2]|0);else _h[g&3](d,0,i,h,l,f[i+12>>2]|0,f[h+12>>2]|0,f[l+12>>2]|0,f[i+24>>2]|0,f[h+24>>2]|0,f[l+24>>2]|0);d=f[j>>2]|0;g=f[(d+4|0)>>2]|0;h=c+4|0;do if((g|0)==(f[(f[(f[h>>2]|0)+8>>2]|0)+4>>2]|0))f[(d+4|0)>>2]=l;else{if((d|0)!=0&(g|0)==(l|0))break;J=f[G>>2]|0;J=Pg[f[f[J>>2]>>2]&255](J,8)|0;f[J+4>>2]=l;f[J>>2]=f[j>>2];f[j>>2]=J}while(0);f[k>>2]=m;f[c+16>>2]=o;if(!e){h=H;i=47;e=0;d=p;f[a+6152>>2]=1;break a}d=(f[h>>2]|0)+8|0;J=f[d>>2]|0;f[J+4>>2]=l;if((J|0)!=0&(l|0)==(e|0)){h=H;i=47;d=p;f[a+6152>>2]=1;break a}h=f[G>>2]|0;h=Pg[f[f[h>>2]>>2]&255](h,8)|0;f[h+4>>2]=e;f[h>>2]=f[d>>2];f[d>>2]=h;h=H;i=47;d=p}f[a+816>>2]=h;f[a+824>>2]=i;f[a+928>>2]=e;f[a+944>>2]=d;f[a+976>>2]=c;f[a+6072>>2]=I}function fQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;X=f[a+80>>2]|0;z=f[a+248>>2]|0;w=f[a+256>>2]|0;t=f[a+264>>2]|0;Y=f[a+272>>2]|0;Z=f[a+504>>2]|0;_=f[a+968>>2]|0;D=f[a+992>>2]|0;$=f[a+1008>>2]|0;E=f[a+1024>>2]|0;K=f[a+1944>>2]|0;L=f[a+2200>>2]|0;N=f[a+4904>>2]|0;M=f[a+4912>>2]|0;O=f[a+4928>>2]|0;A=f[a+4960>>2]|0;j=f[a+5008>>2]|0;V=f[a+5024>>2]|0;W=f[a+6072>>2]|0;a:{if((W|0)==185){W=0;f[w>>2]=A;f[(A+4|0)>>2]=w;GMa(a+24|0,w,A,9.999999974752427e-07,9.999999974752427e-07);c=f[A>>2]|0;d=f[(f[(A+8|0)>>2]|0)+4>>2]|0;e=f[(c+8|0)>>2]|0;if(!e)W=187;else if((f[e+4>>2]|0)!=(d|0))W=187;if((W|0)==187){W=0;V=f[X>>2]|0;V=Pg[f[f[V>>2]>>2]&255](V,8)|0;f[V+4>>2]=d;f[V>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=V}f[c+16>>2]=d;e=f[M+8>>2]|0;if(!(+n[(f[O>>2]|0)+16>>2]!=+n[e+16>>2])){D=z;E=Y;f[a+6160>>2]=2;f[a+6164>>2]=4;break a}c=f[A>>2]|0;d=f[(c+8|0)>>2]|0;if(!d)W=191;else if((f[d+4>>2]|0)==(e|0))g=c;else W=191;if((W|0)==191){W=0;g=f[X>>2]|0;g=Pg[f[f[g>>2]>>2]&255](g,8)|0;f[g+4>>2]=e;f[g>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=g;g=f[A>>2]|0}f[c+16>>2]=e;GMa(a+24|0,A,g,9.999999974752427e-07,9.999999974752427e-07);D=z;E=Y;f[a+6160>>2]=2;f[a+6164>>2]=4;break a}v=w+4|0;c=f[v>>2]|0;if(!c)y=0;else{GMa(a+24|0,c,A,9.999999974752427e-07,9.999999974752427e-07);y=f[v>>2]|0}do{u=1;if(u){u=0;if(!(b[w+20>>0]|0)){i=(f[A>>2]|0)+20|0;B=b[(A+20|0)>>0]|0;b[(A+20|0)>>0]=b[i>>0]|0;b[i>>0]=B;i=y+12|0;if(!(f[i>>2]|0)){c=y+4|0;IMa(a+24|0,f[c>>2]|0,f[O>>2]|0,1);d=f[c>>2]|0;e=f[O>>2]|0;g=f[(d+8|0)>>2]|0;if(!g)W=118;else if((f[g+4>>2]|0)==(e|0)){k=d;l=e}else W=118;if((W|0)==118){W=0;k=f[X>>2]|0;k=Pg[f[f[k>>2]>>2]&255](k,8)|0;f[k+4>>2]=e;f[k>>2]=f[(d+8|0)>>2];f[(d+8|0)>>2]=k;k=f[c>>2]|0;l=f[O>>2]|0}f[d+16>>2]=e;f[k+12>>2]=f[j>>2];JMa(a+24|0,y,l,1);f[i>>2]=f[V>>2];c=f[c>>2]|0;GMa(a+24|0,f[c+4>>2]|0,c,9.999999974752427e-07,9.999999974752427e-07);c=f[A>>2]|0;d=f[(c+8|0)>>2]|0;if(d){do{f[(c+8|0)>>2]=f[d>>2];Lbb(d);d=f[(c+8|0)>>2]|0}while((d|0)!=0);c=f[A>>2]|0}Lbb(c);c=f[(A+8|0)>>2]|0;if(c|0)do{f[(A+8|0)>>2]=f[c>>2];Lbb(c);c=f[(A+8|0)>>2]|0}while((c|0)!=0);Lbb(A);B=z;d=y;break}c=y+8|0;e=f[(f[c>>2]|0)+4>>2]|0;g=f[(f[t>>2]|0)+4>>2]|0;JMa(a+24|0,y,f[O>>2]|0,0);IMa(a+24|0,w,f[O>>2]|0,0);d=f[c>>2]|0;do if(!(f[d>>2]|0)){f[d+4>>2]=e;f[y+16>>2]=e;c=f[A>>2]|0;d=f[(c+8|0)>>2]|0;if(d|0)if((f[d+4>>2]|0)==(g|0)){m=g;o=c;break}s=f[X>>2]|0;p=c;q=c+8|0;r=g;s=Pg[f[f[s>>2]>>2]&255](s,8)|0;W=131}else{f[(f[A>>2]|0)+8>>2]=d;f[c>>2]=0;s=f[X>>2]|0;p=y;q=c;r=e;s=Pg[f[f[s>>2]>>2]&255](s,8)|0;W=131}while(0);if((W|0)==131){W=0;f[s+4>>2]=r;f[s>>2]=f[q>>2];f[q>>2]=s;m=r;o=p}f[o+16>>2]=m;c=f[t>>2]|0;if(!(f[c>>2]|0)){B=f[(A+8|0)>>2]|0;f[B+4>>2]=e;f[(A+16|0)>>2]=e;e=B}else{e=f[(A+8|0)>>2]|0;f[(A+8|0)>>2]=c;f[t>>2]=e;c=e;e=f[(A+8|0)>>2]|0}f[c+4>>2]=g;f[w+16>>2]=g;c=f[v>>2]|0;f[(A+4|0)>>2]=c;f[f[A>>2]>>2]=w;f[c>>2]=A;c=f[A>>2]|0;f[v>>2]=c;d=f[O>>2]|0;if(!e)W=137;else if((f[e+4>>2]|0)==(d|0))x=c;else W=137;if((W|0)==137){W=0;x=f[X>>2]|0;x=Pg[f[f[x>>2]>>2]&255](x,8)|0;f[x+4>>2]=d;f[x>>2]=f[(A+8|0)>>2];f[(A+8|0)>>2]=x;x=f[A>>2]|0}f[(A+16|0)>>2]=d;B=z;d=x}else u=1}if(u)if(1){f[(A+4|0)>>2]=y;if(y|0)f[y>>2]=A;f[f[A>>2]>>2]=w;d=f[A>>2]|0;f[v>>2]=d;B=(z|0)==(w|0)?A:z}}while(0);k=M+8|0;i=f[O>>2]|0;j=d;while(1){c=f[j>>2]|0;d=f[c+12>>2]|0;if(!d){h=i;C=c}else{P=f[k>>2]|0;c=f[(f[c+8>>2]|0)+4>>2]|0;if(HMa(P,f[V>>2]|0,c,d,1)|0)break;h=KMa(a+24|0,c,d,M)|0;g=j+8|0;c=f[g>>2]|0;do if(!(b[j+20>>0]|0)){do if(!c)W=167;else{if((f[c+4>>2]|0)!=(i|0)){W=167;break}F=j+16|0;f[F>>2]=i;H=c;W=168}while(0);if((W|0)==167){W=0;c=f[X>>2]|0;c=Pg[f[f[c>>2]>>2]&255](c,8)|0;f[c+4>>2]=i;f[c>>2]=f[g>>2];f[g>>2]=c;d=j+16|0;f[d>>2]=i;if(!c)G=d;else{F=d;H=c;W=168}}if((W|0)==168){W=0;if((f[H+4>>2]|0)==(h|0)){c=F;break}else G=F}c=f[X>>2]|0;c=Pg[f[f[c>>2]>>2]&255](c,8)|0;f[c+4>>2]=h;f[c>>2]=f[g>>2];f[g>>2]=c;c=G}else{e=f[c+4>>2]|0;c=f[K>>2]|0;d=f[L>>2]|0;if(!(b[N>>0]|0))_h[c&3](d,0,e,i,h,f[e+12>>2]|0,f[i+12>>2]|0,f[h+12>>2]|0,f[e+24>>2]|0,f[i+24>>2]|0,f[h+24>>2]|0);else _h[c&3](d,0,e,h,i,f[e+12>>2]|0,f[h+12>>2]|0,f[i+12>>2]|0,f[e+24>>2]|0,f[h+24>>2]|0,f[i+24>>2]|0);JMa(a+24|0,j,h,1);IMa(a+24|0,f[j>>2]|0,h,1);f[(f[g>>2]|0)+4>>2]=h;f[(f[(f[j>>2]|0)+8>>2]|0)+4>>2]=h;c=j+16|0}while(0);d=f[j>>2]|0;f[j+12>>2]=f[(d+12|0)>>2];f[c>>2]=f[d+16>>2];f[(d+12|0)>>2]=f[V>>2];c=f[j+4>>2]|0;if(!c)C=d;else{GMa(a+24|0,c,j,9.999999974752427e-07,9.999999974752427e-07);C=f[j>>2]|0}}if(!C){Z=1;_=M;$=B;W=448;f[a+6160>>2]=2;f[a+6164>>2]=3;break a}if(!(f[C>>2]|0)){W=174;break}if(!(b[C+20>>0]|0)){IMa(a+24|0,C,h,1);i=h;j=C;continue}else{JMa(a+24|0,C,h,1);i=h;j=C;continue}}if((W|0)==174){e=C+8|0;c=f[e>>2]|0;if(!c)W=177;else if((f[c+4>>2]|0)==(h|0)){Q=c;R=f[k>>2]|0;W=178}else W=177;if((W|0)==177){d=f[X>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,8)|0;f[d+4>>2]=h;f[d>>2]=f[e>>2];f[e>>2]=d;c=f[k>>2]|0;if(!d){S=c;W=179}else{Q=d;R=c;W=178}}if((W|0)==178){W=0;if((f[Q+4>>2]|0)==(R|0))T=R;else{S=R;W=179}}if((W|0)==179){W=0;T=f[X>>2]|0;T=Pg[f[f[T>>2]>>2]&255](T,8)|0;f[T+4>>2]=S;f[T>>2]=f[e>>2];f[e>>2]=T;T=S}f[C+16>>2]=T;f[C+12>>2]=f[V>>2];GMa(a+24|0,f[C+4>>2]|0,C,9.999999974752427e-07,9.999999974752427e-07);D=B;E=Y;f[a+6160>>2]=2;f[a+6164>>2]=4;break a}if(!(b[j+20>>0]|0))W=148;else if(+n[(f[O>>2]|0)+16>>2]!=+n[P+16>>2]){g=j+8|0;e=f[(f[g>>2]|0)+4>>2]|0;d=f[K>>2]|0;c=f[L>>2]|0;if(!(b[N>>0]|0))_h[d&3](c,0,e,i,P,f[e+12>>2]|0,f[i+12>>2]|0,f[P+12>>2]|0,f[e+24>>2]|0,f[i+24>>2]|0,f[P+24>>2]|0);else _h[d&3](c,0,e,P,i,f[e+12>>2]|0,f[P+12>>2]|0,f[i+12>>2]|0,f[e+24>>2]|0,f[P+24>>2]|0,f[i+24>>2]|0);JMa(a+24|0,j,f[k>>2]|0,1);J=g;I=f[g>>2]|0}else W=148;if((W|0)==148){W=0;c=j+8|0;d=f[c>>2]|0;if(!d)W=150;else if((f[d+4>>2]|0)==(i|0))U=d;else W=150;if((W|0)==150){W=0;U=f[X>>2]|0;U=Pg[f[f[U>>2]>>2]&255](U,8)|0;f[U+4>>2]=i;f[U>>2]=f[c>>2];f[c>>2]=U}f[j+16>>2]=i;J=c;I=U}c=f[k>>2]|0;if(!I)W=154;else if((f[I+4>>2]|0)!=(c|0))W=154;if((W|0)==154){W=0;X=f[X>>2]|0;X=Pg[f[f[X>>2]>>2]&255](X,8)|0;f[X+4>>2]=c;f[X>>2]=f[J>>2];f[J>>2]=X}f[j+16>>2]=c;f[j+12>>2]=f[V>>2];c=f[j+4>>2]|0;if(c|0)GMa(a+24|0,c,j,9.999999974752427e-07,9.999999974752427e-07);c=f[j>>2]|0;if(!c){D=B;E=Y}else{GMa(a+24|0,j,c,9.999999974752427e-07,9.999999974752427e-07);D=B;E=Y}f[a+6160>>2]=1;break a}f[a+504>>2]=Z;f[a+968>>2]=_;f[a+992>>2]=D;f[a+1008>>2]=$;f[a+1024>>2]=E;f[a+6072>>2]=W}function gQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0;T=f[a+80>>2]|0;v=f[a+248>>2]|0;z=f[a+272>>2]|0;K=f[a+504>>2]|0;L=f[a+512>>2]|0;M=f[a+816>>2]|0;N=f[a+824>>2]|0;O=f[a+944>>2]|0;P=f[a+968>>2]|0;Q=f[a+984>>2]|0;A=f[a+992>>2]|0;R=f[a+1008>>2]|0;B=f[a+1024>>2]|0;S=f[a+1032>>2]|0;C=f[a+1944>>2]|0;E=f[a+2200>>2]|0;F=f[a+4904>>2]|0;I=f[a+4912>>2]|0;J=f[a+4928>>2]|0;w=f[a+4936>>2]|0;U=f[a+6072>>2]|0;V=f[a+6104>>2]|0;q=f[a+6112>>2]|0;a:{if(V){V=0;switch(q|0){case 3:{m=f[T>>2]|0;m=Pg[f[f[m>>2]>>2]&255](m,24)|0;h=f[T>>2]|0;h=Pg[f[f[h>>2]>>2]&255](h,24)|0;f[m>>2]=h;f[h+4>>2]=m;f[h>>2]=0;f[(m+4|0)>>2]=0;f[(f[m>>2]|0)+8>>2]=0;f[(m+8|0)>>2]=0;h=f[J>>2]|0;i=f[T>>2]|0;i=Pg[f[f[i>>2]>>2]&255](i,8)|0;f[i+4>>2]=h;f[i>>2]=f[(m+8|0)>>2];f[(m+8|0)>>2]=i;f[(m+16|0)>>2]=h;h=I+12|0;i=f[h>>2]|0;f[m+12>>2]=i;j=I+16|0;e=f[m>>2]|0;f[e+12>>2]=f[j>>2];b[(m+20|0)>>0]=1;b[e+20>>0]=0;if(!v){c=f[J>>2]|0;d=f[(e+8|0)>>2]|0;if(!d)U=101;else if((f[d+4>>2]|0)==(c|0))k=c;else U=101;if((U|0)==101){U=0;k=f[T>>2]|0;k=Pg[f[f[k>>2]>>2]&255](k,8)|0;f[k+4>>2]=c;f[k>>2]=f[(e+8|0)>>2];f[(e+8|0)>>2]=k;k=f[J>>2]|0}f[e+16>>2]=c;e=f[I+8>>2]|0;if(!(+n[k+16>>2]!=+n[e+16>>2])){A=m;B=z;f[a+6168>>2]=2;f[a+6172>>2]=15;break a}c=f[m>>2]|0;d=f[(c+8|0)>>2]|0;if(!d)U=105;else if((f[d+4>>2]|0)==(e|0))l=c;else U=105;if((U|0)==105){U=0;l=f[T>>2]|0;l=Pg[f[f[l>>2]>>2]&255](l,8)|0;f[l+4>>2]=e;f[l>>2]=f[(c+8|0)>>2];f[(c+8|0)>>2]=l;l=f[m>>2]|0}f[c+16>>2]=e;GMa(a+24|0,m,l,9.999999974752427e-07,9.999999974752427e-07);A=m;B=z;f[a+6168>>2]=2;f[a+6172>>2]=15;break a}else d=v;while(1){c=f[d+12>>2]|0;if(c|0){g=d+8|0;if(HMa(f[J>>2]|0,i,f[(f[g>>2]|0)+4>>2]|0,c,0)|0)break}c=f[d>>2]|0;if(!c){U=185;break}else d=c}f[a+80>>2]=T;f[a+248>>2]=v;f[a+256>>2]=d;f[a+264>>2]=g;f[a+272>>2]=z;f[a+504>>2]=K;f[a+968>>2]=P;f[a+992>>2]=A;f[a+1008>>2]=R;f[a+1024>>2]=B;f[a+1944>>2]=C;f[a+2200>>2]=E;f[a+4904>>2]=F;f[a+4912>>2]=I;f[a+4928>>2]=J;f[a+4960>>2]=m;f[a+5008>>2]=h;f[a+5024>>2]=j;f[a+6072>>2]=U;f[a+6160>>2]=0;f[a+6164>>2]=0;fQa(a);K=f[a+504>>2]|0;P=f[a+968>>2]|0;A=f[a+992>>2]|0;R=f[a+1008>>2]|0;B=f[a+1024>>2]|0;U=f[a+6072>>2]|0;G=f[a+6160>>2]|0;D=f[a+6164>>2]|0;H=+n[a+6164>>2];f[a+6160>>2]=0;f[a+6164>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:{f[a+6168>>2]=2;f[a+6172>>2]=15;break a}case 3:{f[a+6168>>2]=2;f[a+6172>>2]=14;break a}}}default:V=1}}if(V){V=0;switch(q|0){case 0:{if(!v){L=1;Q=I;S=0;f[a+6168>>2]=2;f[a+6172>>2]=14;break a}s=I+8|0;t=I+16|0;u=I+12|0;r=0;p=z;q=v;c=v;d=w;while(1){k=d;i=d;j=d;e=d;g=d;b:while(1){o=c+12|0;d=f[o>>2]|0;if((d|0)==(g|0))break;l=f[s>>2]|0;h=l;m=e;e=k;while(1){if((d|0)!=(h|0))break;f[s>>2]=m;f[J>>2]=l;e=f[t>>2]|0;f[t>>2]=f[u>>2];f[u>>2]=e;e=f[o>>2]|0;g=l;if((e|0)==(g|0)){d=e;k=e;j=e;i=e;break b}else{z=l;d=e;h=m;e=g;i=g;j=g;l=m;m=z}}c=f[c>>2]|0;if(!c){L=1;Q=I;S=q;f[a+6168>>2]=2;f[a+6172>>2]=14;break a}else{k=e;e=m}}g=d;h=f[c>>2]|0;c:do{d=1;if(d){d=0;if(!h){M=1;N=23;x=r;O=q;y=c}else d=1}if(d)if(1){d=f[h+12>>2]|0;if(!d){e=h;do{e=f[e>>2]|0;d=f[e+12>>2]|0}while(!(d|0))}z=f[s>>2]|0;f[a+80>>2]=T;f[a+352>>2]=r;f[a+704>>2]=p;f[a+800>>2]=q;f[a+816>>2]=M;f[a+824>>2]=N;f[a+880>>2]=c;f[a+928>>2]=x;f[a+944>>2]=O;f[a+976>>2]=y;f[a+1624>>2]=d;f[a+1944>>2]=C;f[a+2032>>2]=k;f[a+2200>>2]=E;f[a+2248>>2]=j;f[a+4904>>2]=F;f[a+4912>>2]=I;f[a+4928>>2]=J;f[a+5856>>2]=s;f[a+5864>>2]=t;f[a+5880>>2]=o;f[a+5904>>2]=g;f[a+5912>>2]=h;f[a+5944>>2]=z;f[a+5968>>2]=i;f[a+6072>>2]=U;f[a+6152>>2]=0;f[a+6156>>2]=0;eQa(a);M=f[a+816>>2]|0;N=f[a+824>>2]|0;x=f[a+928>>2]|0;O=f[a+944>>2]|0;y=f[a+976>>2]|0;U=f[a+6072>>2]|0;G=f[a+6152>>2]|0;D=f[a+6156>>2]|0;H=+n[a+6156>>2];f[a+6152>>2]=0;f[a+6156>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 1:break c}}}while(0);switch(N&63){case 47:{A=O;B=M;f[a+6168>>2]=2;f[a+6172>>2]=15;break a}case 46:break;default:{f[a+6168>>2]=2;f[a+6172>>2]=11;break a}}r=x;p=M;q=O;c=y;d=f[J>>2]|0}}default:V=1}}if(V){V=0;switch(q|0){case 4:{if(!v){L=1;Q=I;S=0;f[a+6168>>2]=2;f[a+6172>>2]=14;break a}else p=v;while(1){l=p+12|0;if((f[l>>2]|0)==(w|0))break;c=f[p>>2]|0;if(!c){L=1;Q=I;S=v;f[a+6168>>2]=2;f[a+6172>>2]=14;break a}else p=c}if(!(b[p+20>>0]|0))IMa(a+24|0,p,w,1);else JMa(a+24|0,p,w,1);d=f[I+8>>2]|0;m=p+8|0;c=f[m>>2]|0;if(!c)U=315;else if((f[c+4>>2]|0)==(d|0))o=c;else U=315;if((U|0)==315){U=0;o=f[T>>2]|0;o=Pg[f[f[o>>2]>>2]&255](o,8)|0;f[o+4>>2]=d;f[o>>2]=f[m>>2];f[m>>2]=o}j=p+16|0;f[j>>2]=d;f[l>>2]=f[I+16>>2];k=p+4|0;d=f[k>>2]|0;d:do if(!d){i=p;d=0}else{c=f[(f[d+8>>2]|0)+4>>2]|0;if((c|0)==(f[o+4>>2]|0))while(1){e=f[l>>2]|0;g=d+12|0;h=f[g>>2]|0;X=+n[c+16>>2];W=+n[c+20>>2];if((+n[e+16>>2]-X)*(+n[h+20>>2]-W)>=(+n[h+16>>2]-X)*(+n[e+20>>2]-W)){i=p;break d}f[l>>2]=h;f[g>>2]=e;c=(f[k>>2]|0)+16|0;B=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=B;c=f[p>>2]|0;if(c|0)GMa(a+24|0,p,c,0.0,9.999999974752427e-07);d=f[k>>2]|0;if(!d){i=p;d=0;break d}c=f[(f[d+8>>2]|0)+4>>2]|0;if((c|0)!=(f[(f[m>>2]|0)+4>>2]|0)){i=p;break}}else i=p}while(0);c=f[i>>2]|0;if(!c)c=0;else{while(1){d=f[(f[c+8>>2]|0)+4>>2]|0;if((d|0)!=(f[(f[m>>2]|0)+4>>2]|0))break;e=f[l>>2]|0;g=c+12|0;h=f[g>>2]|0;W=+n[d+16>>2];X=+n[d+20>>2];if((+n[e+16>>2]-W)*(+n[h+20>>2]-X)<=(+n[h+16>>2]-W)*(+n[e+20>>2]-X))break;f[l>>2]=h;f[g>>2]=e;c=(f[i>>2]|0)+16|0;B=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=B;c=f[k>>2]|0;if(c|0)GMa(a+24|0,c,p,0.0,9.999999974752427e-07);c=f[i>>2]|0;if(!c){c=0;break}}d=f[k>>2]|0}if(d){c=+n[(f[(f[m>>2]|0)+4>>2]|0)+16>>2]==+n[(f[(f[d+8>>2]|0)+4>>2]|0)+16>>2];GMa(a+24|0,d,p,c?-9.999999974752427e-07:9.999999974752427e-07,c?-9.999999974752427e-07:0.0);c=f[i>>2]|0}if(!c){A=v;B=z}else{A=+n[(f[(f[m>>2]|0)+4>>2]|0)+16>>2]==+n[(f[(f[c+8>>2]|0)+4>>2]|0)+16>>2];GMa(a+24|0,p,c,A?-9.999999974752427e-07:0.0,A?-9.999999974752427e-07:9.999999974752427e-07);A=v;B=z}break}default:V=1}}f[a+80>>2]=T;f[a+248>>2]=v;f[a+272>>2]=z;f[a+504>>2]=K;f[a+512>>2]=L;f[a+968>>2]=P;f[a+984>>2]=Q;f[a+992>>2]=A;f[a+1008>>2]=R;f[a+1024>>2]=B;f[a+1032>>2]=S;f[a+1944>>2]=C;f[a+2200>>2]=E;f[a+4904>>2]=F;f[a+4912>>2]=I;f[a+4928>>2]=J;f[a+4936>>2]=w;f[a+6072>>2]=U;f[a+6104>>2]=V;f[a+6112>>2]=q;f[a+6144>>2]=0;f[a+6148>>2]=0;dQa(a);K=f[a+504>>2]|0;L=f[a+512>>2]|0;P=f[a+968>>2]|0;Q=f[a+984>>2]|0;A=f[a+992>>2]|0;R=f[a+1008>>2]|0;B=f[a+1024>>2]|0;S=f[a+1032>>2]|0;U=f[a+6072>>2]|0;V=f[a+6104>>2]|0;G=f[a+6144>>2]|0;D=f[a+6148>>2]|0;H=+n[a+6148>>2];f[a+6144>>2]=0;f[a+6148>>2]=0;if((G|0)==1){f[a+6168>>2]=1;break a}if((G|0)==2)switch(D|0){case 13:{f[a+6168>>2]=2;f[a+6172>>2]=14;break a}case 8:{f[a+6168>>2]=2;f[a+6172>>2]=15;break a}}}f[a+504>>2]=K;f[a+512>>2]=L;f[a+816>>2]=M;f[a+824>>2]=N;f[a+944>>2]=O;f[a+968>>2]=P;f[a+984>>2]=Q;f[a+992>>2]=A;f[a+1008>>2]=R;f[a+1024>>2]=B;f[a+1032>>2]=S;f[a+6072>>2]=U;f[a+6104>>2]=V}function hQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0.0,J=0.0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0;pa=f[a+80>>2]|0;K=f[a+88>>2]|0;X=f[a+112>>2]|0;Y=f[a+152>>2]|0;Z=f[a+216>>2]|0;_=f[a+240>>2]|0;$=f[a+280>>2]|0;t=f[a+488>>2]|0;ca=f[a+520>>2]|0;da=f[a+528>>2]|0;na=f[a+1040>>2]|0;oa=f[a+1048>>2]|0;C=+n[a+1904>>2];E=+n[a+1912>>2];F=+n[a+1920>>2];qa=f[a+1944>>2]|0;ra=f[a+2200>>2]|0;sa=f[a+2640>>2]|0;L=f[a+2648>>2]|0;M=+n[a+3456>>2];N=+n[a+3464>>2];O=+n[a+3504>>2];P=+n[a+3536>>2];Q=+n[a+3592>>2];R=+n[a+3632>>2];S=+n[a+3872>>2];ta=f[a+6072>>2]|0;a:{b:while(1){c=$;while(1){r=f[c>>2]|0;r=(r|0)<0?0-r|0:r;s=c+(r<<2)|0;if((r|0)>=3)break;if((s+4|0|0)==(X|0)){d=Z;e=_;break b}else c=s+4|0}g=c+4|0;c=f[g>>2]|0;d=f[pa>>2]|0;d=Pg[f[f[d>>2]>>2]&255](d,28)|0;if((c|0)>-1){f[d>>2]=f[(K+(c*12|0)|0)>>2];f[d+4>>2]=f[(K+(c*12|0)|0)+4>>2];f[d+8>>2]=f[(K+(c*12|0)|0)+8>>2]}else{f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2]}f[d+12>>2]=c;h=C*(+n[d>>2]-(M+N)*.5);i=E*(+n[d+4>>2]-(O+P)*.5);l=F*(+n[d+8>>2]-(Q+R)*.5);switch(t&255&3){case 0:{A=l;I=i;ta=33;break}case 1:{A=h;I=l;ta=33;break}case 2:{A=i;I=h;ta=33;break}default:{}}if((ta|0)==33){ta=0;n[d+16>>2]=I;n[d+20>>2]=A}f[d+24>>2]=0;r=f[pa>>2]|0;r=Pg[f[f[r>>2]>>2]&255](r,8)|0;f[r+4>>2]=d;f[r>>2]=f[L>>2];f[L>>2]=r;r=0;e=_;p=f[sa>>2]|0;while(1){c=f[pa>>2]|0;c=Pg[f[f[c>>2]>>2]&255](c,28)|0;f[c>>2]=p;f[sa>>2]=c;q=e+1|0;r=(r|0)==0?c:r;f[(c+8|0)>>2]=d;f[(c+4|0)>>2]=d;k=g+4|0;p=c;do{j=1;if(j){j=0;if(k>>>0>s>>>0){v=d;w=k;x=d;W=d}else j=1}if(j)if(1){while(1){d=f[k>>2]|0;o=f[pa>>2]|0;o=Pg[f[f[o>>2]>>2]&255](o,28)|0;if((d|0)>-1){f[o>>2]=f[(K+(d*12|0)|0)>>2];f[o+4>>2]=f[(K+(d*12|0)|0)+4>>2];f[o+8>>2]=f[(K+(d*12|0)|0)+8>>2]}else{f[o>>2]=f[K>>2];f[o+4>>2]=f[K+4>>2];f[o+8>>2]=f[K+8>>2]}f[o+12>>2]=d;h=C*(+n[o>>2]-(M+N)*.5);i=E*(+n[(o+4|0)>>2]-(O+P)*.5);l=F*(+n[(o+8|0)>>2]-(Q+R)*.5);switch(t&255&3){case 0:{B=l;J=i;ta=44;break}case 1:{B=h;J=l;ta=44;break}case 2:{B=i;J=h;ta=44;break}default:{y=o+20|0;z=o+20|0}}if((ta|0)==44){ta=0;n[o+16>>2]=J;n[(o+20|0)>>2]=B;y=o+20|0;z=o+20|0}f[o+24>>2]=0;m=f[pa>>2]|0;m=Pg[f[f[m>>2]>>2]&255](m,8)|0;f[m+4>>2]=o;f[m>>2]=f[L>>2];f[L>>2]=m;m=f[(c+4|0)>>2]|0;h=+n[m+20>>2];l=+n[z>>2]-h;if(!((l<0.0?-l:l)<=1.0000000116860974e-07)){d=s-k|0;g=g+8|0;c:do if((d|0)>0){h=+n[o>>2];j=(d>>>2)+1|0;while(1){d=f[g>>2]|0;l=+n[K+(d*12|0)>>2]-h;if(!((l<0.0?-l:l)<=S))break c;l=+n[K+(d*12|0)+4>>2]-+n[(o+4|0)>>2];if(!((l<0.0?-l:l)<=S))break c;l=+n[K+(d*12|0)+8>>2]-+n[(o+8|0)>>2];if(!((l<0.0?-l:l)<=S))break c;g=g+4|0;if((j|0)>2)j=j+-1|0;else break}}while(0);if(g>>>0>s>>>0){ta=59;break}d=f[g>>2]|0;U=f[(c+8|0)>>2]|0;l=+n[K+(d*12|0)>>2]-+n[U>>2];if(!((l<0.0?-l:l)<=S)){ta=58;break}l=+n[K+(d*12|0)+4>>2]-+n[U+4>>2];if(!((l<0.0?-l:l)<=S)){ta=60;break}l=+n[K+(d*12|0)+8>>2]-+n[U+8>>2];if(!((l<0.0?-l:l)<=S)){ta=61;break}else T=U}else{f[(c+8|0)>>2]=o;n[y>>2]=h;g=k;T=o}V=g+4|0;if(V>>>0>s>>>0){ta=62;break}else k=V}if((ta|0)==58){ta=0;v=o;w=k;x=m;W=U;break}else if((ta|0)==59){ta=0;v=o;w=k;x=m;W=f[(c+8|0)>>2]|0;break}else if((ta|0)==60){ta=0;v=o;w=k;x=m;W=U;break}else if((ta|0)==61){ta=0;v=o;w=k;x=m;W=U;break}else if((ta|0)==62){ta=0;v=o;w=V;x=m;W=T;break}}}while(0);g=x;l=+n[x+16>>2]-+n[W+16>>2];if((l<0.0?-l:l)<9.999999974752427e-07){f[(c+8|0)>>2]=g;j=x}else j=W;if(w>>>0>s>>>0)break;else{d=v;e=q;g=w}}if((r|0)==(c|0)){f[sa>>2]=f[c>>2];Lbb(c);d=0}else{d=r+4|0;l=+n[j+20>>2]-+n[(f[d>>2]|0)+20>>2];if((l<0.0?-l:l)<9.999999974752428e-08){f[d>>2]=g;s=f[c>>2]|0;f[sa>>2]=s;Lbb(c);c=s}else e=q;d=f[r>>2]|0;do{q=c;c=f[c>>2]|0;s=(c|0)==(d|0);r=s?f[sa>>2]|0:c;f[q+12>>2]=f[r+8>>2];f[r+16>>2]=f[q+4>>2]}while(!s);c=f[sa>>2]|0;do{g=c+20|0;f[g>>2]=0;if(+n[(f[c+12>>2]|0)+20>>2]>+n[(f[c+4>>2]|0)+20>>2]){f[g>>2]=1;j=3}else j=2;if(+n[(f[c+16>>2]|0)+20>>2]>+n[(f[c+8>>2]|0)+20>>2])f[g>>2]=j;c=f[c>>2]|0}while((c|0)!=(d|0));c=f[sa>>2]|0;do{g=c+24|0;b[g>>0]=1;j=c+4|0;k=f[j>>2]|0;h=+n[k+16>>2];m=c+8|0;o=f[m>>2]|0;i=+n[o+16>>2];d:do if((h-i<0.0?-(h-i):h-i)<9.999999974752427e-07){p=c+20|0;switch(f[p>>2]|0){case 3:{s=f[c+12>>2]|0;r=f[c+16>>2]|0;if((+n[s+16>>2]-h)*(+n[r+20>>2]-+n[o+20>>2])>(+n[r+16>>2]-i)*(+n[s+20>>2]-+n[k+20>>2])){ta=87;break d}else break d}case 0:{s=f[c+12>>2]|0;r=f[c+16>>2]|0;if((+n[s+16>>2]-h)*(+n[r+20>>2]-+n[o+20>>2])<(+n[r+16>>2]-i)*(+n[s+20>>2]-+n[k+20>>2])){ta=87;break d}else break d}case 2:case 1:{f[p>>2]=4;if(+n[(f[c+12>>2]|0)+20>>2]>+n[(f[c+16>>2]|0)+20>>2]){ta=87;break d}else break d}default:break d}}else if(h>i)ta=87;while(0);if((ta|0)==87){ta=0;b[g>>0]=0;f[m>>2]=k;f[j>>2]=o;q=c+16|0;s=c+12|0;r=f[q>>2]|0;f[q>>2]=f[s>>2];f[s>>2]=r;s=c+20|0;f[s>>2]=f[31572+(f[s>>2]<<2)>>2]}c=f[c>>2]|0}while((c|0)!=(d|0))}if((w|0)==(X|0))break;else{Z=d;_=e;$=w}}e:{c=1;if(c){c=0;if(!e){aa=0;ha=d;ka=0;ta=448}else c=1}if(c)if(1){g=f[pa>>2]|0;g=Pg[f[f[g>>2]>>2]&255](g,e<<2)|0;c=g;d=f[sa>>2]|0;while(1){f[c>>2]=d;d=f[d>>2]|0;if(!d)break;else c=c+4|0}d=e+-1|0;FMa(g,0,d,1024);if((d|0)>0){c=0;do{X=c;c=c+1|0;f[f[g+(X<<2)>>2]>>2]=f[g+(c<<2)>>2]}while((c|0)!=(d|0))}f[f[g+(d<<2)>>2]>>2]=0;c=f[g>>2]|0;f[sa>>2]=c;Lbb(g);k=(a+24|0)+28|0;b[k>>0]=b[c+24>>0]|0;if(!c){ca=0;na=0;ta=450;f[a+6176>>2]=2;f[a+6180>>2]=8;break a}else{h=-10.0;g=0;j=0}f:while(1){f[sa>>2]=f[c>>2];d=c+4|0;e=f[d>>2]|0;i=+n[(e+20|0)>>2];if(i<h)n[(e+20|0)>>2]=h;else h=i;g:do{W=1;X=f[c+20>>2]|0;f[a+80>>2]=pa;f[a+248>>2]=g;f[a+272>>2]=j;f[a+504>>2]=aa;f[a+512>>2]=ba;f[a+816>>2]=ea;f[a+824>>2]=fa;f[a+944>>2]=ga;f[a+968>>2]=ha;f[a+984>>2]=ia;f[a+992>>2]=ja;f[a+1008>>2]=ka;f[a+1024>>2]=la;f[a+1032>>2]=ma;f[a+1944>>2]=qa;f[a+2200>>2]=ra;f[a+4904>>2]=k;f[a+4912>>2]=c;f[a+4928>>2]=d;f[a+4936>>2]=e;f[a+6072>>2]=ta;f[a+6104>>2]=W;f[a+6112>>2]=X;f[a+6168>>2]=0;f[a+6172>>2]=0;gQa(a);aa=f[a+504>>2]|0;ba=f[a+512>>2]|0;ea=f[a+816>>2]|0;fa=f[a+824>>2]|0;ga=f[a+944>>2]|0;ha=f[a+968>>2]|0;ia=f[a+984>>2]|0;ja=f[a+992>>2]|0;ka=f[a+1008>>2]|0;la=f[a+1024>>2]|0;ma=f[a+1032>>2]|0;ta=f[a+6072>>2]|0;G=f[a+6168>>2]|0;D=f[a+6172>>2]|0;H=+n[a+6172>>2];f[a+6168>>2]=0;f[a+6172>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 15:break g;case 14:break e;case 11:break f}}while(0);Lbb(c);c=f[sa>>2]|0;if(!c){da=la;oa=ja;f[a+6176>>2]=2;f[a+6180>>2]=8;break a}else{g=ja;j=la}}if((fa|0)==23){aa=ea;ha=c;ka=ga;ta=448}else{Y=0;u=a;f[a+6176>>2]=6;f[a+6180>>2]=Y|0;break a}}}if((ta|0)==448)if(!ha){ca=aa;na=ka;ta=450;f[a+6176>>2]=1;break a}else{ba=aa;ia=ha;ma=ka}Lbb(ia);ca=ba;na=ma;ta=450}f[a+152>>2]=Y;f[a+216>>2]=Z;f[a+240>>2]=_;f[a+280>>2]=$;f[a+520>>2]=ca;f[a+528>>2]=da;f[a+1040>>2]=na;f[a+1048>>2]=oa;f[a+6072>>2]=ta}function iQa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0;m=f[a+1216>>2]|0;I=f[a+1224>>2]|0;o=f[a+1232>>2]|0;K=f[a+1248>>2]|0;q=f[a+1296>>2]|0;k=f[a+1320>>2]|0;l=f[a+1336>>2]|0;H=f[a+1352>>2]|0;J=f[a+1576>>2]|0;N=f[a+2560>>2]|0;O=f[a+2576>>2]|0;a:{if(O){O=0;if(1){c=1;if(c){c=0;if((b[(I+226|0)>>0]|0)==2)H=k;else c=1}if(c)if(1){c=f[(I+60|0)>>2]|0;i=1;if(i){i=0;if((f[c+1832>>2]|0)==(f[c+1836>>2]|0)){if(exa(f[I+64>>2]|0)|0)c=b[(a+1187|0)>>0]|0;else{G=f[(I+60|0)>>2]|0;c=(b[G+224>>0]|0)==0?a+192|0:G+280|0;C=+p[G+256>>3]-+p[c>>3];D=+p[G+264>>3]-+p[c+8>>3];E=+p[G+272>>3]-+p[c+16>>3];F=+L(+(C*C+(D*D+E*E)));F=+p[(a+168|0)>>3]*(C/F)+(D/F*+p[(a+168|0)+8>>3]+E/F*+p[(a+168|0)+16>>3]);p[(a+128|0)>>3]=F;b[(a+1187|0)>>0]=F>0.0&1;c=F>0.0&1}d=1;if(d){d=0;if(!(c<<24>>24))H=k;else d=1}if(d)if(1){c=f[(I+60|0)>>2]|0;b[(a+304|0)>>0]=b[c+224>>0]|0;p[(a+304|0)+8>>3]=+p[c+232>>3];p[(a+304|0)+16>>3]=+p[c+240>>3];p[(a+304|0)+24>>3]=+p[c+248>>3];p[(a+304|0)+32>>3]=+p[c+256>>3];p[(a+304|0)+40>>3]=+p[c+264>>3];p[(a+304|0)+48>>3]=+p[c+272>>3];p[(a+304|0)+56>>3]=+p[c+280>>3];p[(a+304|0)+64>>3]=+p[c+288>>3];p[(a+304|0)+72>>3]=+p[c+296>>3];p[(a+304|0)+80>>3]=+p[c+304>>3];p[(a+304|0)+88>>3]=+p[c+312>>3];p[(a+304|0)+96>>3]=+p[c+320>>3];p[(a+304|0)+104>>3]=+p[c+328>>3];p[(a+304|0)+112>>3]=+p[c+336>>3];p[(a+304|0)+120>>3]=+p[c+344>>3];p[(a+304|0)+128>>3]=+p[c+352>>3];p[(a+304|0)+136>>3]=+p[c+360>>3];p[(a+304|0)+144>>3]=+p[c+368>>3];p[(a+304|0)+152>>3]=+p[c+376>>3];p[(a+304|0)+160>>3]=+p[c+384>>3];p[(a+304|0)+168>>3]=+p[c+392>>3];p[(a+304|0)+176>>3]=+p[c+400>>3];p[(a+304|0)+184>>3]=+p[c+408>>3];p[(a+304|0)+192>>3]=+p[c+416>>3];p[(a+304|0)+200>>3]=+p[c+424>>3];d=(a+304|0)+208|0;e=c+432|0;g=d+40|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));p[(a+304|0)+248>>3]=+p[c+472>>3];p[(a+304|0)+256>>3]=+p[c+480>>3];p[(a+304|0)+264>>3]=+p[c+488>>3];p[(a+304|0)+272>>3]=+p[c+496>>3];p[(a+304|0)+280>>3]=+p[c+504>>3];p[(a+304|0)+288>>3]=+p[c+512>>3];p[(a+304|0)+296>>3]=+p[c+520>>3];p[(a+304|0)+304>>3]=+p[c+528>>3];p[(a+304|0)+312>>3]=+p[c+536>>3];p[(a+304|0)+320>>3]=+p[c+544>>3];p[(a+304|0)+328>>3]=+p[c+552>>3];p[(a+304|0)+336>>3]=+p[c+560>>3];p[(a+304|0)+344>>3]=+p[c+568>>3];p[(a+304|0)+352>>3]=+p[c+576>>3];p[(a+304|0)+360>>3]=+p[c+584>>3];p[(a+304|0)+368>>3]=+p[c+592>>3];p[(a+304|0)+376>>3]=+p[c+600>>3];p[(a+304|0)+384>>3]=+p[c+608>>3];p[(a+304|0)+392>>3]=+p[c+616>>3];p[(a+304|0)+400>>3]=+p[c+624>>3];p[(a+304|0)+408>>3]=+p[c+632>>3];p[(a+304|0)+416>>3]=+p[c+640>>3];p[(a+304|0)+424>>3]=+p[c+648>>3];p[(a+304|0)+432>>3]=+p[c+656>>3];p[(a+304|0)+440>>3]=+p[c+664>>3];p[(a+304|0)+448>>3]=+p[c+672>>3];p[(a+304|0)+456>>3]=+p[c+680>>3];p[(a+304|0)+464>>3]=+p[c+688>>3];p[(a+304|0)+472>>3]=+p[c+696>>3];p[(a+304|0)+480>>3]=+p[c+704>>3];p[(a+304|0)+488>>3]=+p[c+712>>3];p[(a+304|0)+496>>3]=+p[c+720>>3];p[(a+304|0)+504>>3]=+p[c+728>>3];p[(a+304|0)+512>>3]=+p[c+736>>3];p[(a+304|0)+520>>3]=+p[c+744>>3];p[(a+304|0)+528>>3]=+p[c+752>>3];p[(a+304|0)+536>>3]=+p[c+760>>3];p[(a+304|0)+544>>3]=+p[c+768>>3];p[(a+304|0)+552>>3]=+p[c+776>>3];p[(a+304|0)+560>>3]=+p[c+784>>3];p[(a+304|0)+568>>3]=+p[c+792>>3];p[(a+304|0)+576>>3]=+p[c+800>>3];p[(a+304|0)+584>>3]=+p[c+808>>3];p[(a+304|0)+592>>3]=+p[c+816>>3];p[(a+304|0)+600>>3]=+p[c+824>>3];p[(a+304|0)+608>>3]=+p[c+832>>3];p[(a+304|0)+616>>3]=+p[c+840>>3];p[(a+304|0)+624>>3]=+p[c+848>>3];f[(a+304|0)+632>>2]=f[c+856>>2];f[(a+304|0)+636>>2]=f[c+860>>2];f[(a+304|0)+640>>2]=f[c+864>>2];f[(a+304|0)+644>>2]=f[c+868>>2];f[(a+304|0)+648>>2]=f[c+872>>2];f[(a+304|0)+652>>2]=f[c+876>>2];f[(a+304|0)+656>>2]=f[c+880>>2];f[(a+304|0)+660>>2]=f[c+884>>2];f[(a+304|0)+664>>2]=f[c+888>>2];f[((a+304|0)+668|0)>>2]=f[(c+892|0)>>2];f[((a+304|0)+668|0)+4>>2]=f[(c+892|0)+4>>2];f[((a+304|0)+668|0)+8>>2]=f[(c+892|0)+8>>2];b[((a+304|0)+668|0)+12>>0]=b[(c+892|0)+12>>0]|0;rUa(a,a+192|0,a+168|0);Sga(a+304|0,a);B=(o|1)<<24>>24==3?4:o;G=f[(f[(I+60|0)>>2]|0)+1848>>2]|0;H=DVa(G,B,a+304|0,0,l,0,J)|0;n[a>>2]=0.0;n[(a+1112|0)>>2]=0.0;tNa(I,a+256|0,a+136|0,a,a+1112|0);JRa((f[(f[(I+60|0)>>2]|0)+1848>>2]|0)+840|0,0,B,G+324|0,a+304|0,a+136|0,+n[a>>2],+n[(a+1112|0)>>2],J,f[(I+108|0)>>2]|0,K);H=k<<24>>24==0?H:k}}else i=1}if(i)if(1)H=k}}else O=1}b[m>>0]=H<<24>>24!=0&1;if(H<<24>>24==1){G=(j[(I+230|0)>>1]|j[(I+230|0)+2>>1]<<16)&32768;b[m+1>>0]=G>>>15;if(!G){u=a;f[a+2608>>2]=5;break a}}else b[m+1>>0]=1;i=f[(I+60|0)>>2]|0;B=h[(i+77|0)>>0]|h[(i+77|0)+1>>0]<<8;b[a>>0]=(B&65535)>>>7&1;b[(a+1112|0)>>0]=(B&65535)>>>8&1;b[(a+1186|0)>>0]=(B&65535)>>>9&1;b[(a+1185|0)>>0]=(B&65535)>>>10&1;b[(a+1184|0)>>0]=(B&65535)>>>11&1;g=f[(f[(i+24|0)>>2]|0)+4>>2]|0;f[(a+1104|0)>>2]=0;G=(a+1104|0)+4|0;f[G>>2]=0;do if(((B&65535)>>>8&1)<<24>>24){d=f[i+40>>2]|0;e=f[i+44>>2]|0;if(!e){f[(a+1104|0)>>2]=d;f[G>>2]=e;break}Npb(e);c=f[G>>2]|0;f[(a+1104|0)>>2]=d;f[G>>2]=e;if(c|0)Ppb(c)}while(0);y=f[52853]|0;z=f[52855]|0;A=f[52854]|0;B=f[52856]|0;$7a(211248,1,771)|0;C=+n[52845];D=+n[52846];E=+n[52847];F=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;Ud(16384);lVa((f[(I+60|0)>>2]|0)+2148|0);f[(a+1072|0)>>2]=I;f[(a+1072|0)+4>>2]=i+24|0;f[(a+1072|0)+8>>2]=a+1104|0;f[(a+1072|0)+12>>2]=a;f[(a+1072|0)+16>>2]=a+1112|0;f[(a+1072|0)+20>>2]=a+1186|0;f[(a+1072|0)+24>>2]=a+1184|0;f[(a+1072|0)+28>>2]=a+1185|0;oVa(a+1048|0);do if((j[(I+230|0)>>1]|j[(I+230|0)+2>>1]<<16)&64|0)if(!(gTa((f[(I+60|0)>>2]|0)+3364|0)|0))if((b[(I+226|0)>>0]|0)!=2){r=f[(f[(i+24|0)>>2]|0)+4>>2]|0;d=(f[(I+60|0)>>2]|0)+2148|0;c=P5a(r)|0;nVa(a+304|0,d,c,Q5a(r)|0);qVa(a+1048|0,a+304|0)|0;rVa(a+304|0);r=tVa(a+1048|0)|0;c=f[52838]|0;d=f[52839]|0;P7a(211248,f[f[r>>2]>>2]|0)|0;r=f[(a+1048|0)>>2]|0;s=f[52823]|0;t=f[52824]|0;v=f[52825]|0;w=f[52826]|0;D7a(211248,0,0,f[r+16>>2]|0,f[r+20>>2]|0)|0;S=+n[52845];R=+n[52846];Q=+n[52847];P=+n[52848];Y7a(211248,0.0,0.0,0.0,0.0)|0;Ud(16384);uNa(a+1072|0);Y7a(211248,S,R,Q,P)|0;D7a(211248,s,t,v,w)|0;if((c|0)==(d|0)){P7a(211248,c)|0;break}else{Q7a(211248,c)|0;R7a(211248,d)|0;break}}while(0);f[(a+1016|0)>>2]=I;f[(a+1016|0)+4>>2]=a+1187|0;f[(a+1016|0)+8>>2]=a+168|0;f[(a+1016|0)+12>>2]=a+128|0;f[(a+1016|0)+16>>2]=a+1120|0;f[(a+1016|0)+20>>2]=a+1188|0;f[(a+1016|0)+24>>2]=a+1048|0;f[(a+1016|0)+28>>2]=a+1072|0;if(n2a((f[(I+60|0)>>2]|0)+2048|0)|0){w=(n2a((f[(I+60|0)>>2]|0)+1980|0)|0)^1;c=(q|0)!=0;if(c|(b[(I+227|0)>>0]|0)==1|w){M=I+227|0;x=c;N=79}else{$Ta((f[(I+60|0)>>2]|0)+2404|0);vNa(a+1016|0)}}else{M=I+227|0;x=(q|0)!=0;N=79}if((N|0)==79){e=f[(I+60|0)>>2]|0;d=f[g+8>>2]|0;c=f[d+16>>2]|0;d=f[d+20>>2]|0;nVa(a+992|0,e+2148|0,c,d);q=f[52838]|0;r=f[52839]|0;s=f[52823]|0;t=f[52824]|0;v=f[52825]|0;w=f[52826]|0;dUa(e+2404|0,tVa(a+992|0)|0);vNa(a+1016|0);cUa(e+2404|0,i+24|0);if(f[(e+2420|0)>>2]|0)eUa(e+2404|0,e+2420|0,a+992|0);if(!(n2a((f[(I+60|0)>>2]|0)+2048|0)|0))t2a((f[(I+60|0)>>2]|0)+2048|0,a+1120|0,1);if(!(n2a((f[(I+60|0)>>2]|0)+1980|0)|0))t2a((f[(I+60|0)>>2]|0)+1980|0,a+1120|0,1);if(x){aUa(e+2404|0,c,d);eUa(e+2404|0,e+2428|0,a+992|0);g=f[52863]|0;i=f[52864]|0;k=f[52865]|0;l=f[52866]|0;m=b[211531]|0;t8a(211248,1)|0;o=f[(I+60|0)>>2]|0;c=f[o+1820>>2]|0;if((c|0)!=(o+1824|0|0)){e=c;while(1){c=e+24|0;do if(b[e+772>>0]&1){if((f[c>>2]|0)==(f[e+28>>2]|0))break;ySa(a+304|0,c);T=f[52823]|0;c=f[52824]|0;d=f[52825]|0;x=f[52826]|0;D7a(211248,f[(a+304|0)>>2]|0,f[((a+304|0)+4|0)>>2]|0,f[((a+304|0)+8|0)>>2]|0,f[((a+304|0)+12|0)>>2]|0)|0;d8a(211248,f[(a+304|0)>>2]|0,f[((a+304|0)+4|0)>>2]|0,f[((a+304|0)+8|0)>>2]|0,f[((a+304|0)+12|0)>>2]|0)|0;Ud(256);fSa((f[(I+60|0)>>2]|0)+112|0,0,4,e+776|0,e+40|0,J,f[(I+108|0)>>2]|0,K);D7a(211248,T,c,d,x)|0}while(0);c=f[e+4>>2]|0;do if(!c){d=e+8|0;c=f[d>>2]|0;if((f[c>>2]|0)==(e|0))break;do{T=f[d>>2]|0;d=T+8|0;c=f[d>>2]|0}while((f[c>>2]|0)!=(T|0))}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((c|0)==(o+1824|0|0))break;else e=c}}t8a(211248,m<<24>>24!=0)|0;d8a(211248,g,i,k,l)|0}else bUa(e+2404|0);D7a(211248,s,t,v,w)|0;if((q|0)==(r|0))P7a(211248,q)|0;else{Q7a(211248,q)|0;R7a(211248,r)|0}if((b[M>>0]|0)==1){T=f[(I+60|0)>>2]|0;if(!(IUa(T+2152|0,a+992|0,T+2148|0,pSa(T+1852|0)|0)|0))N=104}else N=104;if((N|0)==104)tTa((f[(I+60|0)>>2]|0)+3344|0,f[(a+992|0)>>2]|0);rVa(a+992|0)}mVa((f[(I+60|0)>>2]|0)+2148|0);rVa(a+1048|0);Y7a(211248,C,D,E,F)|0;_7a(211248,y,z,A,B)|0;c=f[G>>2]|0;if(c|0)Ppb(c);u=a;f[a+2608>>2]=5;break a}f[a+1352>>2]=H;f[a+2560>>2]=N;f[a+2576>>2]=O}function jQa(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0;C=f[a+1224>>2]|0;v=f[a+1232>>2]|0;B=f[a+1248>>2]|0;s=f[a+1288>>2]|0;i=f[a+1296>>2]|0;z=f[a+1320>>2]|0;e=f[a+1336>>2]|0;q=f[a+1344>>2]|0;D=f[a+1352>>2]|0;r=f[a+1432>>2]|0;c=f[a+1440>>2]|0;A=f[a+1576>>2]|0;y=f[a+2560>>2]|0;E=f[a+2568>>2]|0;if(E){E=0;if(1){o=0;while(1){h=c+24|0;l=c+776|0;oQa(l);if(b[c+772>>0]&1){i=c+28|0;if((f[h>>2]|0)!=(f[i>>2]|0)){ySa(a+256|0,h);m=c+40|0;g=Jga(m,f[((a+256|0)+8|0)>>2]|0,f[((a+256|0)+12|0)>>2]|0)|0;n[(a+192|0)>>2]=+p[g>>3];n[((a+192|0)+4|0)>>2]=+p[g+8>>3];n[((a+192|0)+8|0)>>2]=+p[g+16>>3];n[((a+192|0)+12|0)>>2]=+p[g+24>>3];n[((a+192|0)+16|0)>>2]=+p[g+32>>3];n[((a+192|0)+20|0)>>2]=+p[g+40>>3];n[((a+192|0)+24|0)>>2]=+p[g+48>>3];n[((a+192|0)+28|0)>>2]=+p[g+56>>3];n[((a+192|0)+32|0)>>2]=+p[g+64>>3];n[((a+192|0)+36|0)>>2]=+p[g+72>>3];n[((a+192|0)+40|0)>>2]=+p[g+80>>3];n[((a+192|0)+44|0)>>2]=+p[g+88>>3];n[((a+192|0)+48|0)>>2]=+p[g+96>>3];n[((a+192|0)+52|0)>>2]=+p[g+104>>3];n[((a+192|0)+56|0)>>2]=+p[g+112>>3];n[((a+192|0)+60|0)>>2]=+p[g+120>>3];g=c+1280|0;f[(a+304|0)>>2]=a+192|0;f[((a+304|0)+4|0)>>2]=g;if(qNa(a+304|0)|0){f[g>>2]=f[(a+192|0)>>2];f[c+1284>>2]=f[((a+192|0)+4|0)>>2];f[c+1288>>2]=f[((a+192|0)+8|0)>>2];f[c+1292>>2]=f[((a+192|0)+12|0)>>2];f[c+1296>>2]=f[((a+192|0)+16|0)>>2];f[c+1300>>2]=f[((a+192|0)+20|0)>>2];f[c+1304>>2]=f[((a+192|0)+24|0)>>2];f[c+1308>>2]=f[((a+192|0)+28|0)>>2];f[c+1312>>2]=f[((a+192|0)+32|0)>>2];f[c+1316>>2]=f[((a+192|0)+36|0)>>2];f[c+1320>>2]=f[((a+192|0)+40|0)>>2];f[c+1324>>2]=f[((a+192|0)+44|0)>>2];f[c+1328>>2]=f[((a+192|0)+48|0)>>2];f[c+1332>>2]=f[((a+192|0)+52|0)>>2];f[c+1336>>2]=f[((a+192|0)+56|0)>>2];f[c+1340>>2]=f[((a+192|0)+60|0)>>2];k=1}else k=0;g=f[h>>2]|0;h=f[i>>2]|0;if((g|0)!=(h|0))do{i=f[g>>2]|0;vqa(i,k,m,f[((a+256|0)+8|0)>>2]|0,f[((a+256|0)+12|0)>>2]|0);zQa(l,C,i,0,0,7,4196130,0,0,A);g=g+4|0}while((g|0)!=(h|0))}}i=(f[l>>2]|0)+o|0;g=f[c+4>>2]|0;if(!g){g=c+8|0;h=f[g>>2]|0;if((f[h>>2]|0)==(c|0))c=h;else do{o=f[g>>2]|0;g=o+8|0;c=f[g>>2]|0}while((f[c>>2]|0)!=(o|0))}else{c=g;while(1){g=f[c>>2]|0;if(!g)break;else c=g}}if((c|0)==(r+1824|0|0))break;else o=i}}else E=1}h=q>>>0>i>>>0?q-i|0:1;c=b[(C+226|0)>>0]|0;if(c<<24>>24==3)y=25;else if((b[C+229>>0]|0)==1)if(r6a()|0)y=25;else t=0;else t=0;if((y|0)==25){t=f[(C+60|0)>>2]|0;t=(f[t+1832>>2]|0)==(f[t+1836>>2]|0)}l=f[(C+60|0)>>2]|0;l=DVa(l+984|0,v,l+224|0,s,h,v<<24>>24==0?0:c<<24>>24==2?2:(t^1)&1,A)|0;g=f[(C+60|0)>>2]|0;fSa(g,c<<24>>24==2&1,v,g+1308|0,g+224|0,A,f[(C+108|0)>>2]|0,B);g=f[(C+60|0)>>2]|0;k=f[g+1308>>2]|0;k=h-(k>>>0<h>>>0?k:h)|0;c=f[g+1832>>2]|0;h=f[g+1836>>2]|0;a:do if((c|0)!=(h|0))while(1){y=AVa(g+984|0,f[c+112>>2]|0)|0;fSa(c,0,v,y,(f[(C+60|0)>>2]|0)+224|0,A,f[(C+108|0)>>2]|0,B);c=c+120|0;if((c|0)==(h|0))break a;g=f[(C+60|0)>>2]|0}while(0);p[(a+256|0)>>3]=1.0;p[(a+256|0)+8>>3]=1.0;p[(a+256|0)+16>>3]=1.0;c=(a+256|0)+24|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[(a+136|0)>>2]=0;f[(a+136|0)+4>>2]=0;f[(a+136|0)+8>>2]=0;f[(a+136|0)+12>>2]=0;f[(a+136|0)+16>>2]=0;f[(a+136|0)+20>>2]=0;f[(a+136|0)+24>>2]=0;f[(a+136|0)+28>>2]=0;c=j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16;if(!(c&1024)){w=c;y=34}else if((b[(C+226|0)>>0]|0)==2){w=c;y=34}else{y=f[(C+60|0)>>2]|0;if((f[y+1832>>2]|0)==(f[y+1836>>2]|0))if(exa(f[(C+64|0)>>2]|0)|0){w=j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16;y=34}else{u=C+64|0;y=38}else{w=c;y=34}}if((y|0)==34)if(w&512|0)if((b[(C+226|0)>>0]|0)!=2){w=f[(C+60|0)>>2]|0;if((f[w+1832>>2]|0)==(f[w+1836>>2]|0))if(!(exa(f[(C+64|0)>>2]|0)|0)){u=C+64|0;y=38}}if((y|0)==38){zka(f[u>>2]|0,a+256|0)|0;rNa(C,a+256|0,a+192|0,a+168|0);I=+p[(a+168|0)>>3];H=+p[(a+168|0)+8>>3];G=+p[(a+168|0)+16>>3];F=-(I*+p[(a+192|0)>>3]+(H*+p[(a+192|0)+8>>3]+G*+p[(a+192|0)+16>>3]));p[(a+136|0)>>3]=I;p[((a+136|0)+8|0)>>3]=H;p[((a+136|0)+16|0)>>3]=G;p[((a+136|0)+24|0)>>3]=F}b[(a+1188|0)>>0]=0;if(!((j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16)&1024))y=53;else if((b[(C+226|0)>>0]|0)==2)y=53;else{w=f[(C+60|0)>>2]|0;if((f[w+1832>>2]|0)==(f[w+1836>>2]|0))if(exa(f[C+64>>2]|0)|0)y=53;else{do if(!k){c=1;e=0}else{if(!(v<<24>>24))if(!((j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16)&2048)){c=1;e=k;break}z=sNa(C,a+256|0,a+192|0,a+168|0)|0;c=j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16;if(z){d[(C+230|0)>>1]=c|8192;d[(C+230|0)+2>>1]=(c|8192)>>>16;c=c|8192}e=c&8192|0?1:4;g=f[(f[(C+60|0)>>2]|0)+1844>>2]|0;c=DVa(g,e,g+1e3|0,0,k,0,A)|0;if(!((j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16)&8192)){if(f[(g+324|0)>>2]|0)y=50}else y=50;if((y|0)==50)b[(a+1188|0)>>0]=1;u=f[C+368>>2]|0;v=f[52823]|0;w=f[52824]|0;x=f[52825]|0;z=f[52826]|0;D7a(211248,0,0,u,u)|0;fSa((f[(f[(C+60|0)>>2]|0)+1844>>2]|0)+840|0,0,e,g+324|0,g+1e3|0,A,f[(C+108|0)>>2]|0,B);e=(j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16)&-8193;d[(C+230|0)>>1]=e;d[(C+230|0)+2>>1]=e>>>16;e=f[(g+324|0)>>2]|0;D7a(211248,v,w,x,z)|0;e=k-(e>>>0<k>>>0?e:k)|0}while(0);z=l<<24>>24==0?c:l;x=j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16}else y=53}if((y|0)==53){CUa((f[(C+60|0)>>2]|0)+3516|0);x=j[(C+230|0)>>1]|j[(C+230|0)+2>>1]<<16|12288;d[(C+230|0)>>1]=x;d[(C+230|0)+2>>1]=x>>>16;z=l;e=k}b[(a+1187|0)>>0]=0;c=1;if(c){c=0;if(!(x&512))D=z;else c=1}f[a+1296>>2]=i;f[a+1320>>2]=z;f[a+1336>>2]=e;f[a+1352>>2]=D;f[a+2560>>2]=y;f[a+2568>>2]=E;f[a+2576>>2]=c}
function Uga(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if(!(b[209560]|0))if(rrb(209560)|0){f[52700]=0;f[52701]=0;f[52702]=0}d=f[52701]|0;if((f[52700]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;i=a+12|0;f[i>>2]=c;return}g=d+-12|0;h=f[g>>2]|0;j=d+-8|0;i=f[j>>2]|0;d=d+-4|0;e=f[d>>2]|0;f[d>>2]=0;f[j>>2]=0;f[g>>2]=0;d=f[52701]|0;g=d+-12|0;do{d=d+-12|0;f[52701]=d;if(f[d>>2]|0){Vga(d);Zpb(f[d>>2]|0);d=f[52701]|0}}while((d|0)!=(g|0));f[a>>2]=h;f[a+4>>2]=i;f[a+8>>2]=e;j=a+12|0;f[j>>2]=c;return}function Vga(a){a=a|0;var b=0,c=0,d=0;d=f[a>>2]|0;c=a+4|0;a=f[c>>2]|0;if((a|0)==(d|0))return;do{f[c>>2]=a+-20;b=a+-16|0;a=f[a+-4>>2]|0;if(a|0)Wga(a,b);if(f[b>>2]|0){Vga(b);Zpb(f[b>>2]|0)}a=f[c>>2]|0}while((a|0)!=(d|0));return}function Wga(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=c+8|0;h=f[c>>2]|0;e=h;if((f[g>>2]|0)==(h|0))return;h=c+4|0;a=f[h>>2]|0;if((a|0)!=(e|0))do{f[h>>2]=a+-20;d=a+-16|0;a=f[a+-4>>2]|0;if(a|0)Wga(a,d);if(f[d>>2]|0){Vga(d);Zpb(f[d>>2]|0)}a=f[h>>2]|0}while((a|0)!=(e|0));if(!(b[209560]|0))if(rrb(209560)|0){f[52700]=0;f[52701]=0;f[52702]=0}a=f[52701]|0;if(a>>>0<(f[52702]|0)>>>0){f[a>>2]=0;e=a+4|0;f[e>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[e>>2]=f[h>>2];f[a+8>>2]=f[g>>2];f[g>>2]=0;f[h>>2]=0;f[c>>2]=0;f[52701]=a+12;return}else{Xga(210800,c);return}}function Xga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;e=b;c=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));d=e;e=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=g;f[k>>2]=i;d=e;if((c|0)!=(d|0))do{c=c+-12|0;if(f[c>>2]|0){Vga(c);Zpb(f[c>>2]|0)}}while((c|0)!=(d|0));if(!e)return;Zpb(e);return}function Yga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=a+12|0;c=f[h>>2]|0;if(c|0)Wga(c,a);d=f[a>>2]|0;if(!d){c=a+4|0;d=a+8|0}else{c=a+4|0;e=f[c>>2]|0;if((e|0)!=(d|0)){do{f[c>>2]=e+-20;g=e+-16|0;e=f[e+-4>>2]|0;if(e|0)Wga(e,g);if(f[g>>2]|0){Vga(g);Zpb(f[g>>2]|0)}e=f[c>>2]|0}while((e|0)!=(d|0));d=f[a>>2]|0}Zpb(d);d=a+8|0;f[d>>2]=0;f[c>>2]=0;f[a>>2]=0}f[a>>2]=f[b>>2];a=b+4|0;f[c>>2]=f[a>>2];g=b+8|0;f[d>>2]=f[g>>2];f[g>>2]=0;f[a>>2]=0;f[b>>2]=0;b=b+12|0;f[h>>2]=f[b>>2];f[b>>2]=0;return}function Zga(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209600]|0))if(rrb(209600)|0){f[52715]=0;f[52716]=0;f[52717]=0}e=f[52716]|0;if((f[52715]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52716]|0;j=h+-12|0;while(1){e=h+-12|0;f[52716]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-16-i|0)>>>4)<<4);Zpb(i);e=f[52716]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function _ga(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209592]|0))if(rrb(209592)|0){f[52712]=0;f[52713]=0;f[52714]=0}e=f[52713]|0;if((f[52712]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52713]|0;j=h+-12|0;while(1){e=h+-12|0;f[52713]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-4-i|0)>>>2)<<2);Zpb(i);e=f[52713]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function $ga(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209584]|0))if(rrb(209584)|0){f[52709]=0;f[52710]=0;f[52711]=0}e=f[52710]|0;if((f[52709]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52710]|0;j=h+-12|0;while(1){e=h+-12|0;f[52710]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-32-i|0)>>>5)<<5);Zpb(i);e=f[52710]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function aha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209576]|0))if(rrb(209576)|0){f[52706]=0;f[52707]=0;f[52708]=0}e=f[52707]|0;if((f[52706]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52707]|0;j=h+-12|0;while(1){e=h+-12|0;f[52707]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~(((h+-12-i|0)>>>0)/12|0)*12|0);Zpb(i);e=f[52707]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function bha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209568]|0))if(rrb(209568)|0){f[52703]=0;f[52704]=0;f[52705]=0}e=f[52704]|0;if((f[52703]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52704]|0;j=h+-12|0;while(1){e=h+-12|0;f[52704]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-4-i|0)>>>2)<<2);Zpb(i);e=f[52704]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function cha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+48|0;q=z+16|0;s=z;x=z+36|0;y=z+32|0;h=z+40|0;f[x>>2]=b;f[y>>2]=c;d=a+36|0;e=a+40|0;c=f[e>>2]|0;t=c-(f[d>>2]|0)>>2;v=a+20|0;w=a+24|0;b=(f[w>>2]|0)-(f[v>>2]|0)>>4;f[h>>2]=b;if((f[a+44>>2]|0)==(c|0))BD(d,h);else{f[c>>2]=b;f[e>>2]=c+4}n=a+56|0;o=f[n>>2]|0;if(o>>>0<(f[a+60>>2]|0)>>>0){e=f[x>>2]|0;b=f[y>>2]|0;p[o+24>>3]=-1.0;g=+p[e>>3];p[q>>3]=g;m=+p[e+8>>3];h=q+8|0;p[h>>3]=m;p[s>>3]=g;i=s+8|0;p[i>>3]=m;if(b>>>0>1){c=1;while(1){j=+p[e+(c<<4)>>3];if(j<g){d=q;r=9}else if(j>+p[s>>3]){d=s;r=9}if((r|0)==9){r=0;p[d>>3]=j}g=+p[e+(c<<4)+8>>3];if(g<+p[h>>3]){d=q;r=12}else if(g>+p[i>>3]){d=s;r=12}if((r|0)==12){r=0;p[d+8>>3]=g}c=c+1|0;if((c|0)==(b|0))break;g=+p[q>>3]}l=+p[q>>3];k=+p[s>>3];j=+p[h>>3];g=+p[i>>3]}else{l=g;k=g;j=m;g=m}m=(k-l)*.5;k=(g-j)*.5;p[o>>3]=l+m;p[o+8>>3]=j+k;p[o+16>>3]=k*k+m*m;f[n>>2]=o+32}else{dha(a+52|0,x,y);b=f[y>>2]|0}if(!b){eha(a,a,t);u=z;return}i=a+28|0;h=0;do{c=f[x>>2]|0;d=c+(h<<4)|0;e=f[w>>2]|0;if((e|0)==(f[i>>2]|0)){fha(v,d);b=f[y>>2]|0}else{p[e>>3]=+p[d>>3];p[e+8>>3]=+p[c+(h<<4)+8>>3];f[w>>2]=e+16}h=h+1|0}while(h>>>0<b>>>0);eha(a,a,t);u=z;return}function dha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=u;u=u+32|0;r=C+16|0;t=C;B=a+4|0;d=f[B>>2]|0;i=f[a>>2]|0;w=d-i>>5;e=w+1|0;z=i;g=d;if(e>>>0>134217727)fob(a);A=a+8|0;y=(f[A>>2]|0)-i|0;i=y>>4;i=y>>5>>>0<67108863?(i>>>0<e>>>0?e:i):134217727;do if(!i)v=0;else if(i>>>0>134217727)ud();else{v=Wpb(i<<5)|0;break}while(0);x=v+(w<<5)|0;e=x;y=v+(i<<5)|0;n=f[b>>2]|0;c=f[c>>2]|0;p[v+(w<<5)+24>>3]=-1.0;h=+p[n>>3];p[r>>3]=h;m=+p[n+8>>3];o=r+8|0;p[o>>3]=m;p[t>>3]=h;q=t+8|0;p[q>>3]=m;if(c>>>0>1){i=1;while(1){j=+p[n+(i<<4)>>3];if(j<h){b=r;s=11}else if(j>+p[t>>3]){b=t;s=11}if((s|0)==11){s=0;p[b>>3]=j}h=+p[n+(i<<4)+8>>3];if(h<+p[o>>3]){b=r;s=14}else if(h>+p[q>>3]){b=t;s=14}if((s|0)==14){s=0;p[b+8>>3]=h}i=i+1|0;if((i|0)==(c|0))break;h=+p[r>>3]}l=+p[r>>3];k=+p[t>>3];j=+p[o>>3];h=+p[q>>3]}else{l=h;k=h;j=m;h=m}m=(k-l)*.5;k=(h-j)*.5;p[x>>3]=l+m;p[v+(w<<5)+8>>3]=j+k;p[v+(w<<5)+16>>3]=k*k+m*m;i=x+32|0;if((g|0)!=(z|0)){d=x;do{w=g;g=g+-32|0;p[d+-32>>3]=+p[g>>3];p[d+-24>>3]=+p[w+-24>>3];x=d+-16|0;w=w+-16|0;f[x>>2]=f[w>>2];f[x+4>>2]=f[w+4>>2];f[x+8>>2]=f[w+8>>2];f[x+12>>2]=f[w+12>>2];d=e+-32|0;e=d}while((g|0)!=(z|0));d=f[a>>2]|0}f[a>>2]=e;f[B>>2]=i;f[A>>2]=y;if(!d){u=C;return}Zpb(d);u=C;return}function eha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;j=p;l=p+4|0;f[j>>2]=c;f[l>>2]=-1;o=l+4|0;Uga(o,f[52697]|0);m=b+4|0;e=f[m>>2]|0;n=b+8|0;g=f[n>>2]|0;if((e|0)==(g|0)){d=e;c=e}else{h=l+8|0;i=l+12|0;d=e;while(1){if(gha(a,c,f[d>>2]|0)|0){if((f[l>>2]|0)==-1)f[l>>2]=f[j>>2];c=f[h>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[c>>2]=f[d>>2];q=c+4|0;e=d+4|0;f[q>>2]=0;r=c+8|0;f[r>>2]=0;f[c+12>>2]=0;f[q>>2]=f[e>>2];q=d+8|0;f[r>>2]=f[q>>2];r=d+12|0;f[c+12>>2]=f[r>>2];f[r>>2]=0;f[q>>2]=0;f[e>>2]=0;e=d+16|0;f[c+16>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=(f[h>>2]|0)+20}else hha(o,d);f[d>>2]=-1}d=d+20|0;if((d|0)==(g|0))break;c=f[j>>2]|0}d=f[m>>2]|0;c=f[n>>2]|0}e=(d|0)==(c|0);a:do if((f[l>>2]|0)==-1){do if(!e){while(1){if(gha(a,f[d>>2]|0,f[j>>2]|0)|0){k=41;break}d=d+20|0;if((d|0)==(c|0)){k=42;break}}if((k|0)==41){eha(a,d,f[j>>2]|0);break a}else if((k|0)==42){c=f[n>>2]|0;break}}while(0);if(c>>>0<(f[b+12>>2]|0)>>>0){f[c>>2]=f[j>>2];Uga(c+4|0,f[52697]|0);f[n>>2]=(f[n>>2]|0)+20;break}else{iha(m,j);break}}else{do if(e)g=c;else{e=d;while(1){if((f[e>>2]|0)==-1)break;e=e+20|0;if((e|0)==(c|0)){k=19;break}}if((k|0)==19){g=c;break}g=e;if((e|0)!=(c|0)){d=g;b:while(1){do{h=d;e=h+20|0;d=e;if((e|0)==(c|0))break b;e=f[e>>2]|0}while((e|0)==-1);r=g;f[r>>2]=e;Yga(r+4|0,h+24|0);g=r+20|0}d=f[m>>2]|0;c=f[n>>2]|0}}while(0);d=d+(((g-d|0)/20|0)*20|0)|0;if((c|0)==(g|0))d=c;else{e=d+(((c-g|0)/20|0)*20|0)|0;if((e|0)!=(c|0)){do{f[d>>2]=f[e>>2];Yga(d+4|0,e+4|0);e=e+20|0;d=d+20|0}while((e|0)!=(c|0));c=f[n>>2]|0}if((c|0)==(d|0))d=c;else do{f[n>>2]=c+-20;e=c+-16|0;c=f[c+-4>>2]|0;if(c|0)Wga(c,e);if(f[e>>2]|0){Vga(e);Zpb(f[e>>2]|0)}c=f[n>>2]|0}while((c|0)!=(d|0))}if(d>>>0<(f[b+12>>2]|0)>>>0){f[d>>2]=f[l>>2];r=d+4|0;f[r>>2]=0;q=d+8|0;f[q>>2]=0;f[d+12>>2]=0;f[r>>2]=f[o>>2];r=l+8|0;f[q>>2]=f[r>>2];q=l+12|0;f[d+12>>2]=f[q>>2];f[q>>2]=0;f[r>>2]=0;f[o>>2]=0;r=l+16|0;f[d+16>>2]=f[r>>2];f[r>>2]=0;f[n>>2]=(f[n>>2]|0)+20;break}else{hha(m,l);break}}while(0);d=f[l+16>>2]|0;if(d|0)Wga(d,o);if(!(f[o>>2]|0)){u=p;return}Vga(o);Zpb(f[o>>2]|0);u=p;return}function fha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=d-m>>4;c=h+1|0;j=m;if(c>>>0>268435455)fob(a);k=a+8|0;i=(f[k>>2]|0)-m|0;e=i>>3;e=i>>4>>>0<134217727?(e>>>0<c>>>0?c:e):268435455;do if(!e)g=0;else if(e>>>0>268435455)ud();else{g=Wpb(e<<4)|0;break}while(0);c=g+(h<<4)|0;i=g+(e<<4)|0;p[c>>3]=+p[b>>3];p[g+(h<<4)+8>>3]=+p[b+8>>3];g=c+16|0;if((d|0)!=(j|0)){b=d+-16-m|0;e=c;while(1){h=d;d=d+-16|0;p[e+-16>>3]=+p[d>>3];p[e+-8>>3]=+p[h+-8>>3];if((d|0)==(j|0))break;else e=e+-16|0}c=c+(~(b>>>4)<<4)|0}f[a>>2]=c;f[l>>2]=g;f[k>>2]=i;if(!m)return;Zpb(m);return}function gha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0;e=f[a+52>>2]|0;j=+p[e+(b<<5)>>3]-+p[e+(c<<5)>>3];i=+p[e+(b<<5)+8>>3]-+p[e+(c<<5)+8>>3];d=e+(b<<5)+24|0;g=+p[d>>3];if(g==-1.0){h=+L(+(+p[e+(b<<5)+16>>3]));p[d>>3]=h}else h=g;d=e+(c<<5)+24|0;g=+p[d>>3];if(g==-1.0){g=+L(+(+p[e+(c<<5)+16>>3]));p[d>>3]=g}h=h+g;if(!(j*j+i*i<=h*h)){a=0;return a|0}l=f[a+36>>2]|0;e=f[l+(b<<2)>>2]|0;k=f[a+20>>2]|0;o=k+(e<<4)|0;n=f[l+(c<<2)>>2]|0;q=k+(n<<4)|0;m=(f[a+40>>2]|0)-l>>2;d=b+1|0;b=k;if((m|0)==(d|0))d=(f[a+24>>2]|0)-b>>4;else d=f[l+(d<<2)>>2]|0;k=d-e|0;d=c+1|0;if((m|0)==(d|0))d=(f[a+24>>2]|0)-b>>4;else d=f[l+(d<<2)>>2]|0;e=d-n|0;if(!k){a=0;return a|0}else d=0;while(1){if(mWa(q,e,o+(d<<4)|0)|0){d=1;e=15;break}d=d+1|0;if(d>>>0>=k>>>0){d=0;e=15;break}}if((e|0)==15)return d|0;return 0}function hha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/20|0;c=i<<1;c=i>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)g=0;else if(c>>>0>214748364)ud();else{g=Wpb(c*20|0)|0;break}while(0);d=g+(h*20|0)|0;e=d;i=g+(c*20|0)|0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*20|0)+12>>2]=0;f[g+(h*20|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*20|0)+8>>2]=f[l>>2];m=b+12|0;f[g+(h*20|0)+12>>2]=f[m>>2];f[m>>2]=0;f[l>>2]=0;f[c>>2]=0;b=b+16|0;f[g+(h*20|0)+16>>2]=f[b>>2];f[b>>2]=0;h=d+20|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;g=b;c=b}else{do{m=c;c=c+-20|0;f[d+-20>>2]=f[c>>2];g=d+-16|0;l=m+-16|0;f[g>>2]=0;n=d+-12|0;f[n>>2]=0;f[d+-8>>2]=0;f[g>>2]=f[l>>2];g=m+-12|0;f[n>>2]=f[g>>2];n=m+-8|0;f[d+-8>>2]=f[n>>2];f[n>>2]=0;f[g>>2]=0;f[l>>2]=0;m=m+-4|0;f[d+-4>>2]=f[m>>2];f[m>>2]=0;d=e+-20|0;e=d}while((c|0)!=(b|0));d=e;g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;b=g;if((c|0)!=(b|0))do{d=c+-16|0;e=f[c+-4>>2]|0;c=c+-20|0;if(e|0)Wga(e,d);if(f[d>>2]|0){Vga(d);Zpb(f[d>>2]|0)}}while((c|0)!=(b|0));if(!g)return;Zpb(g);return}function iha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/20|0;c=i<<1;c=i>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)g=0;else if(c>>>0>214748364)ud();else{g=Wpb(c*20|0)|0;break}while(0);d=g+(h*20|0)|0;e=d;i=g+(c*20|0)|0;f[d>>2]=f[b>>2];Uga(g+(h*20|0)+4|0,f[52697]|0);h=d+20|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;g=b;c=b}else{do{g=c;c=c+-20|0;f[d+-20>>2]=f[c>>2];m=d+-16|0;l=g+-16|0;f[m>>2]=0;n=d+-12|0;f[n>>2]=0;f[d+-8>>2]=0;f[m>>2]=f[l>>2];m=g+-12|0;f[n>>2]=f[m>>2];n=g+-8|0;f[d+-8>>2]=f[n>>2];f[n>>2]=0;f[m>>2]=0;f[l>>2]=0;g=g+-4|0;f[d+-4>>2]=f[g>>2];f[g>>2]=0;d=e+-20|0;e=d}while((c|0)!=(b|0));d=e;g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;b=g;if((c|0)!=(b|0))do{d=c+-16|0;e=f[c+-4>>2]|0;c=c+-20|0;if(e|0)Wga(e,d);if(f[d>>2]|0){Vga(d);Zpb(f[d>>2]|0)}}while((c|0)!=(b|0));if(!g)return;Zpb(g);return}function jha(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0;F=u;u=u+32|0;E=F;B=F+24|0;h=f[c>>2]|0;i=f[a+36>>2]|0;j=f[i+(h<<2)>>2]|0;g=f[a+20>>2]|0;A=g+(j<<4)|0;h=h+1|0;if(((f[a+40>>2]|0)-i>>2|0)==(h|0))g=(f[a+24>>2]|0)-g>>4;else g=f[i+(h<<2)>>2]|0;C=g-j|0;i=a+68|0;j=a+72|0;h=f[j>>2]|0;D=(h-(f[i>>2]|0)|0)/12|0;a:do if(C|0){k=b+32|0;l=b+56|0;o=b+80|0;q=b+40|0;r=b+64|0;s=b+88|0;t=E+8|0;v=b+48|0;w=b+72|0;x=b+96|0;y=E+16|0;z=a+76|0;g=0;while(1){I=A+(g<<4)|0;H=+p[I>>3];G=+p[I+8>>3];m=+p[k>>3]+H*+p[l>>3]+G*+p[o>>3];p[E>>3]=m;p[t>>3]=+p[q>>3]+H*+p[r>>3]+G*+p[s>>3];p[y>>3]=+p[v>>3]+H*+p[w>>3]+G*+p[x>>3];f[B>>2]=E;if(h>>>0<(f[z>>2]|0)>>>0){n[h>>2]=m;I=f[B>>2]|0;n[h+4>>2]=+p[I+8>>3];n[h+8>>2]=+p[I+16>>3];f[j>>2]=h+12}else nha(i,B);g=g+1|0;if((g|0)==(C|0))break a;h=f[j>>2]|0}}while(0);j=a+84|0;g=d?0-C|0:C;f[E>>2]=g;k=a+88|0;h=f[k>>2]|0;l=a+92|0;if(h>>>0<(f[l>>2]|0)>>>0){f[h>>2]=g;f[k>>2]=h+4}else mha(j,E);if((C|0)>0){g=0;do{h=g+D|0;f[E>>2]=h;i=f[k>>2]|0;if(i>>>0<(f[l>>2]|0)>>>0){f[i>>2]=h;f[k>>2]=i+4}else mha(j,E);g=g+1|0}while((g|0)!=(C|0))}g=f[c+4>>2]|0;i=f[c+8>>2]|0;if((g|0)==(i|0)){u=F;return}h=d^1;do{jha(a,b,g,h,e);g=g+20|0}while((g|0)!=(i|0));u=F;return}function kha(a,b,c,d,e,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;j=u;u=u+16|0;h=j;f[h>>2]=c;i=a+4|0;l=f[i>>2]|0;g=a+8|0;b=f[g>>2]|0;if(l>>>0<b>>>0){p[l>>3]=+n[c>>2];c=f[h>>2]|0;p[l+8>>3]=+n[c+4>>2];p[l+16>>3]=+n[c+8>>2];l=l+24|0;f[i>>2]=l}else{lha(a,h);l=f[i>>2]|0;b=f[g>>2]|0}f[h>>2]=d;if(l>>>0<b>>>0){p[l>>3]=+n[d>>2];d=f[h>>2]|0;p[l+8>>3]=+n[d+4>>2];p[l+16>>3]=+n[d+8>>2];l=l+24|0;f[i>>2]=l}else{lha(a,h);l=f[i>>2]|0;b=f[g>>2]|0}f[h>>2]=e;if(l>>>0<b>>>0){p[l>>3]=+n[e>>2];e=f[h>>2]|0;p[l+8>>3]=+n[e+4>>2];p[l+16>>3]=+n[e+8>>2];f[i>>2]=l+24;u=j;return}else{lha(a,h);u=j;return}}function lha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<c>>>0?c:e):178956970;do if(!e)g=0;else if(e>>>0>178956970)ud();else{g=Wpb(e*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(e*24|0)|0;e=f[b>>2]|0;p[c>>3]=+n[e>>2];p[g+(h*24|0)+8>>3]=+n[e+4>>2];p[g+(h*24|0)+16>>3]=+n[e+8>>2];e=c+24|0;if((d|0)!=(j|0))do{h=d;d=d+-24|0;p[c+-24>>3]=+p[d>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-24|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;Zpb(m);return}function mha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function nha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;b=f[b>>2]|0;n[c>>2]=+p[b>>3];n[g+(h*12|0)+4>>2]=+p[b+8>>3];n[g+(h*12|0)+8>>2]=+p[b+16>>3];b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function oha(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;pha(a)|0;c=a+1171|0;if((b[c>>0]|0)!=1){b[c>>0]=1;if(b[a+1170>>0]|0){i=(tva(f[a>>2]|0)|0)+140|0;qha(i,1,f[a+1288>>2]|0)}}c=f[a+1284>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1276|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1264>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1256|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1244>>2]|0;if(c|0){d=a+1248|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+1232>>2]|0;if(c|0){d=a+1236|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+1220>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1212|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1200>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1192|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1180>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1172|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1152>>2]|0;if(c|0){d=a+1156|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+1140>>2]|0;if(c|0){d=a+1144|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}d=f[a+1128>>2]|0;if(d|0){e=a+1132|0;c=f[e>>2]|0;if((c|0)!=(d|0))f[e>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d)}c=f[a+1116>>2]|0;if(c|0){d=a+1120|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}e=f[a+1104>>2]|0;if(e|0){c=a+1108|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~(((d+-24-e|0)>>>0)/24|0)*24|0);Zpb(e)}c=f[a+1092>>2]|0;if(c|0){d=a+1096|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=f[a+1080>>2]|0;if(c|0){d=a+1084|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=f[a+1068>>2]|0;if(c|0){d=a+1072|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-16-c|0)>>>4)<<4);Zpb(c)}h=a+1056|0;c=f[h>>2]|0;if(c|0){i=a+1060|0;d=f[i>>2]|0;if((d|0)!=(c|0)){do{e=d+-16|0;f[i>>2]=e;g=f[d+-4>>2]|0;if(g|0)rha(g,e);g=f[e>>2]|0;if(g|0){d=d+-12|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g)}d=f[i>>2]|0}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}c=f[a+1044>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);i=a+1036|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0)Zpb(c);c=f[a+1024>>2]|0;if(c|0){d=a+1028|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-16-c|0)>>>4)<<4);Zpb(c)}c=f[a+1012>>2]|0;if(c|0){d=a+1016|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}h=a+1e3|0;c=f[h>>2]|0;if(c|0){i=a+1004|0;d=f[i>>2]|0;if((d|0)!=(c|0)){do{e=d+-16|0;f[i>>2]=e;g=f[d+-4>>2]|0;if(g|0)sha(g,e);g=f[e>>2]|0;if(g|0){d=d+-12|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-32-g|0)>>>5)<<5);Zpb(g)}d=f[i>>2]|0}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}c=f[a+16>>2]|0;if(c|0)Ppb(c);c=f[a+8>>2]|0;if(!c)return;Ppb(c);return}function pha(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=a+1164|0;if(!(f[c>>2]|0)){a=0;return a|0}f[c>>2]=0;b[a+1169>>0]=0;vha(a);g=f[a+1e3>>2]|0;h=a+1004|0;c=f[h>>2]|0;if((c|0)!=(g|0))do{d=c+-16|0;f[h>>2]=d;e=f[c+-4>>2]|0;if(e|0)sha(e,d);e=f[d>>2]|0;if(e|0){c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e)}c=f[h>>2]|0}while((c|0)!=(g|0));a=Kwa(f[a>>2]|0)|0;a=(f[a>>2]|0)!=(f[a+4>>2]|0);return a|0}function qha(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;j=o;k=o+24|0;e=f[a>>2]|0;n=a+4|0;l=f[n>>2]|0;if((e|0)==(l|0)){u=o;return}i=c&1;h=j+16|0;do{g=e+16|0;c=f[g>>2]|0;if(c|0){b[j>>0]=i;f[k>>2]=d;wh[f[(f[c>>2]|0)+24>>2]&127](c,j,k);if(b[e+24>>0]|0){f[h>>2]=0;c=f[g>>2]|0;if((e|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);f[g>>2]=0;c=f[h>>2]|0;do if(!c){f[g>>2]=0;m=15}else if((j|0)==(c|0)){f[g>>2]=e;m=f[h>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,e);m=15;break}else{f[g>>2]=c;f[h>>2]=0;c=0;g=0;break}while(0);if((m|0)==15){m=0;g=f[h>>2]|0;c=g}if((j|0)==(c|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}}e=e+32|0}while((e|0)!=(l|0));c=f[n>>2]|0;if((f[a>>2]|0)==(c|0)){u=o;return}while(1){if(!(f[c+-16>>2]|0)){e=c;g=0;h=0}else{m=30;break}c=c+-32|0;while(1){m=e+-32|0;f[n>>2]=m;if((m|0)==(g|0))fh[f[(f[h>>2]|0)+16>>2]&2047](h);else if(h|0)fh[f[(f[h>>2]|0)+20>>2]&2047](h);e=f[n>>2]|0;if((e|0)==(c|0))break;h=f[e+-16>>2]|0;g=h}if((f[a>>2]|0)==(c|0)){m=30;break}}if((m|0)==30){u=o;return}}function rha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-4-a|0)>>>2)<<2);if(!(b[209592]|0))if(rrb(209592)|0){f[52712]=0;f[52713]=0;f[52714]=0}a=f[52713]|0;if(a>>>0<(f[52714]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52713]=a+12;return}else{uha(210848,c);return}}function sha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-32-a|0)>>>5)<<5);if(!(b[209608]|0))if(rrb(209608)|0){f[52718]=0;f[52719]=0;f[52720]=0}a=f[52719]|0;if(a>>>0<(f[52720]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52719]=a+12;return}else{tha(210872,c);return}}function tha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function uha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function vha(a){a=a|0;var b=0,c=0,d=0,e=0;e=a+1268|0;if(f[e>>2]|0){c=a+1264|0;b=f[c>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);f[c>>2]=0;c=f[a+1260>>2]|0;if(c|0){d=a+1256|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}b=f[a+1244>>2]|0;c=a+1248|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);e=a+1184|0;if(f[e>>2]|0){c=a+1180|0;b=f[c>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);f[c>>2]=0;c=f[a+1176>>2]|0;if(c|0){d=a+1172|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}e=a+1204|0;if(f[e>>2]|0){c=a+1200|0;b=f[c>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);f[c>>2]=0;c=f[a+1196>>2]|0;if(c|0){d=a+1192|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}e=a+1224|0;if(f[e>>2]|0){c=a+1220|0;b=f[c>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);f[c>>2]=0;c=f[a+1216>>2]|0;if(c|0){d=a+1212|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}c=a+1284|0;b=f[c>>2]|0;if(b|0)do{Toa(f[b+8>>2]|0);b=f[b>>2]|0}while((b|0)!=0);e=a+1288|0;if(!(f[e>>2]|0))return;b=f[c>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);f[c>>2]=0;d=f[a+1280>>2]|0;if(d|0){c=a+1276|0;b=0;do{f[(f[c>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[e>>2]=0;return}function wha(a){a=a|0;var c=0,d=0;c=pha(a)|0;d=a+1171|0;if((b[d>>0]|0)==1)return c|0;b[d>>0]=1;if(!(b[a+1170>>0]|0))return c|0;d=(tva(f[a>>2]|0)|0)+140|0;qha(d,1,f[a+1288>>2]|0);return c|0}function xha(a,c){a=a|0;c=c|0;var e=0,g=0,h=0;f[a>>2]=c;c=a+4|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;jga(a+24|0);c=a+712|0;n[c>>2]=-1.0;n[a+716>>2]=0.0;n[a+720>>2]=0.0;n[a+724>>2]=1.0;n[a+728>>2]=0.0;n[a+732>>2]=-1.0;n[a+736>>2]=0.0;n[a+740>>2]=1.0;n[a+744>>2]=0.0;n[a+748>>2]=0.0;n[a+752>>2]=-1.0;n[a+756>>2]=1.0;f[a+760>>2]=1065353216;f[a+764>>2]=0;f[a+768>>2]=0;f[a+772>>2]=1065353216;f[a+776>>2]=0;f[a+780>>2]=1065353216;f[a+784>>2]=0;f[a+788>>2]=1065353216;f[a+792>>2]=0;f[a+796>>2]=0;f[a+800>>2]=1065353216;f[a+804>>2]=1065353216;yha(c);b[a+976>>0]=0;c=a+1052|0;g=a+984|0;h=g+68|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[c>>2]=1.0;c=a+1056|0;e=a+1171|0;g=c;h=g+112|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));d[c+112>>1]=0;b[c+114>>0]=0;b[e>>0]=1;c=a+1172|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[a+1188>>2]=1.0;c=a+1192|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[a+1208>>2]=1.0;c=a+1212|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[a+1228>>2]=1.0;c=a+1272|0;g=a+1232|0;h=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[c>>2]=1.0;h=a+1276|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[a+1292>>2]=1.0;a=a+1296|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function yha(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=a+12|0;n[v>>2]=-+n[v>>2];b=+n[a>>2];c=+K(+b);n[a+96>>2]=c;v=a+4|0;c=+n[v>>2];d=+K(+c);n[a+100>>2]=d;u=a+8|0;d=+n[u>>2];g=+K(+d);n[a+104>>2]=g;n[a+168>>2]=b>=0.0?1.0:-1.0;n[a+172>>2]=c>=0.0?1.0:-1.0;n[a+176>>2]=d>=0.0?1.0:-1.0;t=a+28|0;n[t>>2]=-+n[t>>2];t=a+16|0;d=+n[t>>2];c=+K(+d);n[a+108>>2]=c;s=a+20|0;c=+n[s>>2];b=+K(+c);n[a+112>>2]=b;r=a+24|0;b=+n[r>>2];g=+K(+b);n[a+116>>2]=g;n[a+180>>2]=d>=0.0?1.0:-1.0;n[a+184>>2]=c>=0.0?1.0:-1.0;n[a+188>>2]=b>=0.0?1.0:-1.0;q=a+44|0;n[q>>2]=-+n[q>>2];q=a+32|0;b=+n[q>>2];c=+K(+b);n[a+120>>2]=c;p=a+36|0;c=+n[p>>2];d=+K(+c);n[a+124>>2]=d;o=a+40|0;d=+n[o>>2];g=+K(+d);n[a+128>>2]=g;n[a+192>>2]=b>=0.0?1.0:-1.0;n[a+196>>2]=c>=0.0?1.0:-1.0;n[a+200>>2]=d>=0.0?1.0:-1.0;m=a+60|0;n[m>>2]=-+n[m>>2];m=a+48|0;d=+n[m>>2];c=+K(+d);n[a+132>>2]=c;l=a+52|0;c=+n[l>>2];b=+K(+c);n[a+136>>2]=b;k=a+56|0;b=+n[k>>2];g=+K(+b);n[a+140>>2]=g;n[a+204>>2]=d>=0.0?1.0:-1.0;n[a+208>>2]=c>=0.0?1.0:-1.0;n[a+212>>2]=b>=0.0?1.0:-1.0;j=a+76|0;n[j>>2]=-+n[j>>2];j=a+64|0;b=+n[j>>2];c=+K(+b);n[a+144>>2]=c;i=a+68|0;c=+n[i>>2];d=+K(+c);n[a+148>>2]=d;h=a+72|0;d=+n[h>>2];g=+K(+d);n[a+152>>2]=g;n[a+216>>2]=b>=0.0?1.0:-1.0;n[a+220>>2]=c>=0.0?1.0:-1.0;n[a+224>>2]=d>=0.0?1.0:-1.0;w=a+92|0;n[w>>2]=-+n[w>>2];d=+n[a+80>>2];c=+K(+d);n[a+156>>2]=c;c=+n[a+84>>2];b=+K(+c);n[a+160>>2]=b;b=+n[a+88>>2];g=+K(+b);n[a+164>>2]=g;n[a+228>>2]=d>=0.0?1.0:-1.0;n[a+232>>2]=c>=0.0?1.0:-1.0;n[a+236>>2]=b>=0.0?1.0:-1.0;g=+n[a>>2];f=+n[v>>2];e=+n[u>>2];e=g*g+(f*f+e*e);n[a+240>>2]=e==0.0?0.0:1.0/e;e=+n[t>>2];f=+n[s>>2];g=+n[r>>2];g=e*e+(f*f+g*g);n[a+244>>2]=g==0.0?0.0:1.0/g;g=+n[q>>2];f=+n[p>>2];e=+n[o>>2];e=g*g+(f*f+e*e);n[a+248>>2]=e==0.0?0.0:1.0/e;e=+n[m>>2];f=+n[l>>2];g=+n[k>>2];g=e*e+(f*f+g*g);n[a+252>>2]=g==0.0?0.0:1.0/g;g=+n[j>>2];f=+n[i>>2];e=+n[h>>2];e=g*g+(f*f+e*e);n[a+256>>2]=e==0.0?0.0:1.0/e;b=d*d+(c*c+b*b);n[a+260>>2]=b==0.0?0.0:1.0/b;return}function zha(a){a=a|0;var b=0,c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0;x=u;u=u+32|0;k=x+8|0;t=x;v=Kwa(f[a>>2]|0)|0;b=f[v>>2]|0;v=f[v+4>>2]|0;if((b|0)==(v|0)){u=x;return}w=a+1004|0;l=a+1008|0;m=k+4|0;o=k+8|0;q=k+12|0;r=k+8|0;s=k+16|0;j=a+1e3|0;do{e=b+4|0;if((f[b>>2]|0)!=(f[e>>2]|0)){Aha(k,f[52699]|0);a=f[w>>2]|0;if(a>>>0<(f[l>>2]|0)>>>0){f[a>>2]=0;i=a+4|0;f[i>>2]=0;f[a+8>>2]=0;f[a>>2]=f[k>>2];f[i>>2]=f[m>>2];f[a+8>>2]=f[o>>2];f[o>>2]=0;f[m>>2]=0;f[k>>2]=0;f[a+12>>2]=f[q>>2];f[q>>2]=0;f[w>>2]=(f[w>>2]|0)+16}else{Bha(j,k);a=f[q>>2]|0;if(a|0)sha(a,k)}a=f[k>>2]|0;if(a|0){c=f[m>>2]|0;if((c|0)!=(a|0))f[m>>2]=c+(~((c+-32-a|0)>>>5)<<5);Zpb(a)}a=f[w>>2]|0;i=a+-16|0;c=f[b>>2]|0;g=f[e>>2]|0;if((c|0)!=(g|0)){h=a+-12|0;e=a+-8|0;a=c;do{d=+n[a>>2];A=+n[a+4>>2];z=+n[a+8>>2];y=1.0/+L(+(d*d+(A*A+z*z)));d=y*d;p[k>>3]=d;p[r>>3]=y*A;p[s>>3]=y*z;p[t>>3]=y*+n[a+12>>2];c=f[h>>2]|0;if(c>>>0<(f[e>>2]|0)>>>0){p[c>>3]=d;p[c+8>>3]=+p[r>>3];p[c+16>>3]=+p[s>>3];p[c+24>>3]=+p[t>>3];f[h>>2]=c+32}else Cha(i,k,t);a=a+16|0}while((a|0)!=(g|0))}}b=b+12|0}while((b|0)!=(v|0));u=x;return}function Aha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209608]|0))if(rrb(209608)|0){f[52718]=0;f[52719]=0;f[52720]=0}e=f[52719]|0;if((f[52718]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52719]|0;j=h+-12|0;while(1){e=h+-12|0;f[52719]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-32-i|0)>>>5)<<5);Zpb(i);e=f[52719]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function Bha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=(f[j>>2]|0)-c>>4;d=h+1|0;if(d>>>0>268435455)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>3;c=i>>4>>>0<134217727?(c>>>0<d>>>0?d:c):268435455;do if(!c)g=0;else if(c>>>0>268435455)ud();else{g=Wpb(c<<4)|0;break}while(0);d=g+(h<<4)|0;e=d;i=g+(c<<4)|0;f[g+(h<<4)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h<<4)+4>>2]=f[c>>2];l=b+8|0;f[g+(h<<4)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;b=b+12|0;f[g+(h<<4)+12>>2]=f[b>>2];f[b>>2]=0;g=d+16|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b}else{do{h=d+-16|0;l=c;c=c+-16|0;f[h>>2]=0;m=d+-12|0;f[m>>2]=0;f[d+-8>>2]=0;f[h>>2]=f[c>>2];h=l+-12|0;f[m>>2]=f[h>>2];m=l+-8|0;f[d+-8>>2]=f[m>>2];f[m>>2]=0;f[h>>2]=0;f[c>>2]=0;l=l+-4|0;f[d+-4>>2]=f[l>>2];f[l>>2]=0;d=e+-16|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;b=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((b|0)!=(g|0))do{d=b;b=b+-16|0;c=f[d+-4>>2]|0;if(c|0)sha(c,b);e=f[b>>2]|0;if(e|0){c=d+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e)}}while((b|0)!=(g|0));if(!h)return;Zpb(h);return}function Cha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;e=f[m>>2]|0;n=f[a>>2]|0;i=e-n>>5;d=i+1|0;k=n;if(d>>>0>134217727)fob(a);l=a+8|0;j=(f[l>>2]|0)-n|0;g=j>>4;g=j>>5>>>0<67108863?(g>>>0<d>>>0?d:g):134217727;do if(!g)h=0;else if(g>>>0>134217727)ud();else{h=Wpb(g<<5)|0;break}while(0);d=h+(i<<5)|0;j=h+(g<<5)|0;p[d>>3]=+p[b>>3];p[h+(i<<5)+8>>3]=+p[b+8>>3];p[h+(i<<5)+16>>3]=+p[b+16>>3];p[h+(i<<5)+24>>3]=+p[c>>3];c=d+32|0;if((e|0)!=(k|0)){b=e+-32-n|0;g=d;while(1){i=e;e=e+-32|0;p[g+-32>>3]=+p[e>>3];p[g+-24>>3]=+p[i+-24>>3];p[g+-16>>3]=+p[i+-16>>3];p[g+-8>>3]=+p[i+-8>>3];if((e|0)==(k|0))break;else g=g+-32|0}d=d+(~(b>>>5)<<5)|0}f[a>>2]=d;f[m>>2]=c;f[l>>2]=j;if(!n)return;Zpb(n);return}function Dha(a,c,d,e){a=a|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;l=u;u=u+288|0;k=l+16|0;g=l;if(!(f[c>>2]|0))if(!(f[d>>2]|0)){g=pha(a)|0;h=a+1171|0;if((b[h>>0]|0)==1){a=g;u=l;return a|0}b[h>>0]=1;if(!(b[a+1170>>0]|0)){a=g;u=l;return a|0}k=(tva(f[a>>2]|0)|0)+140|0;qha(k,1,f[a+1288>>2]|0);a=g;u=l;return a|0}if(e<0.0)if(Mwa(f[a>>2]|0,k,g)|0){q=+n[g>>2]-+n[k>>2];o=+n[g+4>>2]-+n[k+4>>2];m=+n[g+8>>2]-+n[k+8>>2];e=+L(+(q*q+(o*o+m*m)))/-e}else e=0.0;e=e>0.0?e:0.0;j=a+1164|0;g=f[j>>2]|0;switch(g|0){case 1:{f[j>>2]=2;i=12;break}case 2:{i=12;break}default:h=0}if((i|0)==12){if((f[c>>2]|0)==(f[a+4>>2]|0))if((f[d>>2]|0)==(f[a+12>>2]|0))if(!(e!=+p[a+984>>3])){a=0;u=l;return a|0}h=pha(a)|0;g=f[j>>2]|0}if(g|0){a=h;u=l;return a|0}g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0)Npb(h);f[a+4>>2]=g;c=a+8|0;g=f[c>>2]|0;f[c>>2]=h;if(g|0)Ppb(g);g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0)Npb(h);f[a+12>>2]=g;d=a+16|0;g=f[d>>2]|0;f[d>>2]=h;if(g|0)Ppb(g);b[a+976>>0]=e!=0.0&1;p[a+984>>3]=e;g=a+24|0;PI(g,ENa(uva(f[a>>2]|0)|0)|0)|0;g=Iga(g)|0;D=+p[g>>3];z=+p[g+8>>3];v=+p[g+16>>3];t=+p[g+24>>3];C=+p[g+32>>3];y=+p[g+40>>3];s=+p[g+48>>3];r=+p[g+56>>3];B=+p[g+64>>3];x=+p[g+72>>3];e=+p[g+80>>3];m=+p[g+88>>3];A=+p[g+96>>3];w=+p[g+104>>3];o=+p[g+112>>3];q=+p[g+120>>3];n[k>>2]=t-D;n[k+4>>2]=r-C;n[k+8>>2]=m-B;n[k+12>>2]=q-A;n[k+16>>2]=t-z;n[k+20>>2]=r-y;n[k+24>>2]=m-x;n[k+28>>2]=q-w;n[k+32>>2]=t-v;n[k+36>>2]=r-s;n[k+40>>2]=m-e;n[k+44>>2]=q-o;n[k+48>>2]=D+t;n[k+52>>2]=C+r;n[k+56>>2]=B+m;n[k+60>>2]=A+q;n[k+64>>2]=z+t;n[k+68>>2]=y+r;n[k+72>>2]=x+m;n[k+76>>2]=w+q;n[k+80>>2]=v+t;n[k+84>>2]=s+r;n[k+88>>2]=e+m;n[k+92>>2]=o+q;yha(k);Eha(a+712|0,k)|0;f[j>>2]=2;g=a+1171|0;if(b[g>>0]|0){b[g>>0]=0;if(b[a+1170>>0]|0){k=(tva(f[a>>2]|0)|0)+140|0;qha(k,0,f[a+1288>>2]|0)}}g=a+1168|0;if(!(b[g>>0]|0)){b[g>>0]=1;o$(782,a,4)}a=Kwa(f[a>>2]|0)|0;a=(f[a>>2]|0)!=(f[a+4>>2]|0);u=l;return a|0}function Eha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;f[b>>2]=f[a>>2];f[a>>2]=c;c=b+4|0;e=f[c>>2]|0;d=a+4|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+8|0;e=f[d>>2]|0;c=a+8|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+12|0;e=f[c>>2]|0;d=a+12|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=a+16|0;e=b+16|0;c=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=c;d=b+20|0;c=f[d>>2]|0;e=a+20|0;f[d>>2]=f[e>>2];f[e>>2]=c;e=b+24|0;c=f[e>>2]|0;d=a+24|0;f[e>>2]=f[d>>2];f[d>>2]=c;d=b+28|0;c=f[d>>2]|0;e=a+28|0;f[d>>2]=f[e>>2];f[e>>2]=c;e=a+32|0;c=b+32|0;d=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+36|0;d=f[e>>2]|0;c=a+36|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+40|0;d=f[c>>2]|0;e=a+40|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+44|0;d=f[e>>2]|0;c=a+44|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+48|0;d=b+48|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+52|0;e=f[c>>2]|0;d=a+52|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+56|0;e=f[d>>2]|0;c=a+56|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+60|0;e=f[c>>2]|0;d=a+60|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=a+64|0;e=b+64|0;c=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=c;d=b+68|0;c=f[d>>2]|0;e=a+68|0;f[d>>2]=f[e>>2];f[e>>2]=c;e=b+72|0;c=f[e>>2]|0;d=a+72|0;f[e>>2]=f[d>>2];f[d>>2]=c;d=b+76|0;c=f[d>>2]|0;e=a+76|0;f[d>>2]=f[e>>2];f[e>>2]=c;e=a+80|0;c=b+80|0;d=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+84|0;d=f[e>>2]|0;c=a+84|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+88|0;d=f[c>>2]|0;e=a+88|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+92|0;d=f[e>>2]|0;c=a+92|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+96|0;d=b+96|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+100|0;e=f[c>>2]|0;d=a+100|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+104|0;e=f[d>>2]|0;c=a+104|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+108|0;e=b+108|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+112|0;d=f[c>>2]|0;e=a+112|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+116|0;d=f[e>>2]|0;c=a+116|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+120|0;d=b+120|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+124|0;e=f[c>>2]|0;d=a+124|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+128|0;e=f[d>>2]|0;c=a+128|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+132|0;e=b+132|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+136|0;d=f[c>>2]|0;e=a+136|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+140|0;d=f[e>>2]|0;c=a+140|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+144|0;d=b+144|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+148|0;e=f[c>>2]|0;d=a+148|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+152|0;e=f[d>>2]|0;c=a+152|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+156|0;e=b+156|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+160|0;d=f[c>>2]|0;e=a+160|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+164|0;d=f[e>>2]|0;c=a+164|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+168|0;d=b+168|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+172|0;e=f[c>>2]|0;d=a+172|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+176|0;e=f[d>>2]|0;c=a+176|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+180|0;e=b+180|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+184|0;d=f[c>>2]|0;e=a+184|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+188|0;d=f[e>>2]|0;c=a+188|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+192|0;d=b+192|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+196|0;e=f[c>>2]|0;d=a+196|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+200|0;e=f[d>>2]|0;c=a+200|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+204|0;e=b+204|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+208|0;d=f[c>>2]|0;e=a+208|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+212|0;d=f[e>>2]|0;c=a+212|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+216|0;d=b+216|0;e=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=b+220|0;e=f[c>>2]|0;d=a+220|0;f[c>>2]=f[d>>2];f[d>>2]=e;d=b+224|0;e=f[d>>2]|0;c=a+224|0;f[d>>2]=f[c>>2];f[c>>2]=e;c=a+228|0;e=b+228|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=b+232|0;d=f[c>>2]|0;e=a+232|0;f[c>>2]=f[e>>2];f[e>>2]=d;e=b+236|0;d=f[e>>2]|0;c=a+236|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+240|0;b=b+240|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];return a|0}function Fha(a,b){a=a|0;b=b|0;if(!a)return;Gha(b);return}function Gha(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0;j=a+1168|0;b[j>>0]=0;switch(f[a+1164>>2]|0){case 1:{b[j>>0]=1;o$(782,a,4);return}case 0:return;default:{k=+n$();g=a+1296|0;p[g>>3]=k;h=a+1304|0;p[h>>3]=k+20.0;c=a+1169|0;do if(!(b[c>>0]|0)){e=Hha(a)|0;b[c>>0]=e&1;if(e){k=+n$();p[g>>3]=k;if(!(k>=+p[h>>3]))break}c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){i=(tva(f[a>>2]|0)|0)+140|0;qha(i,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}while(0);if(!(Iha(a)|0)){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){i=(tva(f[a>>2]|0)|0)+140|0;qha(i,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}if(!(Jha(a)|0)){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){i=(tva(f[a>>2]|0)|0)+140|0;qha(i,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}c=a+1244|0;d=a+1248|0;while(1){e=f[d>>2]|0;if((f[c>>2]|0)==(e|0))break;l=e+-4|0;e=f[l>>2]|0;f[d>>2]=l;Kha(a,Nla(e)|0);k=+n$();p[g>>3]=k;if(k>=+p[h>>3]){i=26;break}}if((i|0)==26){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){l=(tva(f[a>>2]|0)|0)+140|0;qha(l,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}if(!(Jha(a)|0)){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){l=(tva(f[a>>2]|0)|0)+140|0;qha(l,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}if(!(Lha(a)|0)){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){l=(tva(f[a>>2]|0)|0)+140|0;qha(l,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}if(!(Mha(a,a+1192|0)|0)){c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){l=(tva(f[a>>2]|0)|0)+140|0;qha(l,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}l=Mha(a,a+1212|0)|0;c=a+1171|0;d=b[c>>0]|0;if(l){if(d<<24>>24==1)return;b[c>>0]=1;if(!(b[a+1170>>0]|0))return;l=(tva(f[a>>2]|0)|0)+140|0;qha(l,1,f[a+1288>>2]|0);return}if(d<<24>>24){b[c>>0]=0;if(b[a+1170>>0]|0){l=(tva(f[a>>2]|0)|0)+140|0;qha(l,0,f[a+1288>>2]|0)}}if(b[j>>0]|0)return;b[j>>0]=1;o$(782,a,4);return}}}function Hha(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;m=z+24|0;l=z+20|0;k=z+16|0;o=z+12|0;q=z+8|0;r=z+28|0;s=z+4|0;t=z;c=f[a+1244>>2]|0;d=a+1248|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);g=a+1268|0;if(f[g>>2]|0){d=a+1264|0;c=f[d>>2]|0;if(c|0)do{x=c;c=f[c>>2]|0;Zpb(x)}while((c|0)!=0);f[d>>2]=0;d=f[a+1260>>2]|0;if(d|0){e=a+1256|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}x=(uva(f[a>>2]|0)|0)+224|0;if(!(b[x>>0]&1)){a=1;u=z;return a|0}zha(a);c=a+1e3|0;j=a+1004|0;if((f[c>>2]|0)==(f[j>>2]|0)){a=1;u=z;return a|0}dxa(f[a>>2]|0);i=+n$();p[a+1296>>3]=i;if(i>=+p[a+1304>>3]){g=f[c>>2]|0;c=f[j>>2]|0;if((c|0)==(g|0)){a=0;u=z;return a|0}do{d=c+-16|0;f[j>>2]=d;e=f[c+-4>>2]|0;if(e|0)sha(e,d);e=f[d>>2]|0;if(e|0){c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e)}c=f[j>>2]|0}while((c|0)!=(g|0));c=0;u=z;return c|0}x=fxa(f[a>>2]|0)|0;c=f[a>>2]|0;a:do if(x){c=(uwa(c)|0)+8|0;c=f[c>>2]|0;b:do if(!c){d=0;c=0}else{d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c){d=0;c=0;break b}d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0)}while(0);s=a+1172|0;t=a+1176|0;v=a+1184|0;w=a+1188|0;x=a+1180|0;if(c|0)c:while(1){do{e=d+12|0;d:do if(_ia(a,f[e>>2]|0)|0){l=f[e>>2]|0;m=l;r=X(m,1540483477)|0;r=(X(r>>>24^r,1540483477)|0)^1866966612;r=X(r>>>13^r,1540483477)|0;r=r>>>15^r;o=f[t>>2]|0;q=(o|0)==0;e:do if(q)e=0;else{k=o+-1|0;j=(k&o|0)==0;if(j)e=r&k;else if(r>>>0<o>>>0)e=r;else e=(r>>>0)%(o>>>0)|0;g=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(g){if(j)while(1){g=f[g>>2]|0;if(!g)break e;j=f[g+4>>2]|0;if(!((j|0)==(r|0)|(j&k|0)==(e|0)))break e;if((f[g+8>>2]|0)==(l|0))break d}while(1){g=f[g>>2]|0;if(!g)break e;j=f[g+4>>2]|0;if((j|0)!=(r|0)){if(j>>>0>=o>>>0)j=(j>>>0)%(o>>>0)|0;if((j|0)!=(e|0))break e}if((f[g+8>>2]|0)==(l|0))break d}}}while(0);k=Wpb(12)|0;f[k+8>>2]=m;f[k+4>>2]=r;f[k>>2]=0;h=+(((f[v>>2]|0)+1|0)>>>0);i=+n[w>>2];do if(q|i*+(o>>>0)<h){e=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;g=~~+W(+(h/i))>>>0;Via(s,e>>>0<g>>>0?g:e);e=f[t>>2]|0;g=e+-1|0;if(!(g&e)){j=e;e=g&r;break}if(r>>>0<e>>>0){j=e;e=r}else{j=e;e=(r>>>0)%(e>>>0)|0}}else j=o;while(0);g=(f[s>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[k>>2]=f[x>>2];f[x>>2]=k;f[g>>2]=x;e=f[k>>2]|0;if(e|0){e=f[e+4>>2]|0;g=j+-1|0;do if(!(g&j))e=e&g;else{if(e>>>0<j>>>0)break;e=(e>>>0)%(j>>>0)|0}while(0);e=(f[s>>2]|0)+(e<<2)|0;y=58}}else{f[k>>2]=f[e>>2];y=58}if((y|0)==58){y=0;f[e>>2]=k}f[v>>2]=(f[v>>2]|0)+1}while(0);d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue c}}}else{e=Uwa(c)|0;c=e+40|0;if(!(b[c>>0]|0))d=e+4|0;else{b[c>>0]=0;f[o>>2]=f[e>>2];d=e+4|0;f[q>>2]=f[d>>2];f[k>>2]=f[o>>2];f[l>>2]=f[q>>2];b[m>>0]=b[r>>0]|0;x=$ia(k,l,m)|0;f[s>>2]=x;f[t>>2]=f[d>>2];f[l>>2]=f[s>>2];f[m>>2]=f[t>>2];aja(e,l,m)|0}c=f[e>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{dja(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));e=yva(f[a>>2]|0)|0;c=e+40|0;if(!(b[c>>0]|0))d=e+4|0;else{b[c>>0]=0;f[o>>2]=f[e>>2];d=e+4|0;f[q>>2]=f[d>>2];f[k>>2]=f[o>>2];f[l>>2]=f[q>>2];b[m>>0]=b[r>>0]|0;x=bja(k,l,m)|0;f[s>>2]=x;f[t>>2]=f[d>>2];f[l>>2]=f[s>>2];f[m>>2]=f[t>>2];cja(e,l,m)|0}c=f[e>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{eja(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));r=Twa(f[a>>2]|0)|0;c=f[r>>2]|0;r=f[r+4>>2]|0;if((c|0)!=(r|0)){s=a+1172|0;t=a+1176|0;v=a+1184|0;w=a+1188|0;x=a+1180|0;do{k=f[c>>2]|0;l=k;f:do if(_ia(a,k)|0){q=X(l,1540483477)|0;q=(X(q>>>24^q,1540483477)|0)^1866966612;q=X(q>>>13^q,1540483477)|0;q=q>>>15^q;m=f[t>>2]|0;o=(m|0)==0;g:do if(o)d=0;else{j=m+-1|0;g=(j&m|0)==0;if(g)d=j&q;else if(q>>>0<m>>>0)d=q;else d=(q>>>0)%(m>>>0)|0;e=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(e){if(g)while(1){e=f[e>>2]|0;if(!e)break g;g=f[e+4>>2]|0;if(!((g|0)==(q|0)|(g&j|0)==(d|0)))break g;if((f[e+8>>2]|0)==(k|0))break f}while(1){e=f[e>>2]|0;if(!e)break g;g=f[e+4>>2]|0;if((g|0)!=(q|0)){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(d|0))break g}if((f[e+8>>2]|0)==(k|0))break f}}}while(0);j=Wpb(12)|0;f[j+8>>2]=l;f[j+4>>2]=q;f[j>>2]=0;h=+(((f[v>>2]|0)+1|0)>>>0);i=+n[w>>2];do if(o|i*+(m>>>0)<h){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(h/i))>>>0;Via(s,d>>>0<e>>>0?e:d);d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&q;break}if(q>>>0<d>>>0){g=d;d=q}else{g=d;d=(q>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[s>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[j>>2]=f[x>>2];f[x>>2]=j;f[e>>2]=x;d=f[j>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;do if(!(e&g))d=d&e;else{if(d>>>0<g>>>0)break;d=(d>>>0)%(g>>>0)|0}while(0);d=(f[s>>2]|0)+(d<<2)|0;y=105}}else{f[j>>2]=f[d>>2];y=105}if((y|0)==105){y=0;f[d>>2]=j}f[v>>2]=(f[v>>2]|0)+1}while(0);c=c+4|0}while((c|0)!=(r|0))}}while(0);if(!(b[a+976>>0]|0)){a=1;u=z;return a|0}p[a+992>>3]=1.0/+p[a+984>>3];a=1;u=z;return a|0}function Iha(a){a=a|0;var b=0,c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;x=a+1260|0;y=a+1256|0;z=a+1264|0;A=a+1268|0;B=a+1172|0;C=a+1176|0;D=a+1184|0;t=a+1188|0;u=a+1180|0;v=a+1296|0;w=a+1304|0;s=f[a+1264>>2]|0;while(1){g=s;if(!s){b=1;r=63;break}q=f[s+8>>2]|0;m=s;o=s;s=f[m>>2]|0;h=f[x>>2]|0;b=f[g+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)k=i&b;else if(b>>>0<h>>>0)k=b;else k=(b>>>0)%(h>>>0)|0;c=(f[y>>2]|0)+(k<<2)|0;l=f[c>>2]|0;while(1){b=f[l>>2]|0;if((b|0)==(g|0))break;else l=b}if((l|0)==(z|0))r=16;else{b=f[l+4>>2]|0;if(j)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)!=(k|0))r=16}do if((r|0)==16){r=0;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;if(j)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(k|0))break}f[c>>2]=0}while(0);c=f[g>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(k|0)){f[(f[y>>2]|0)+(c<<2)>>2]=l;b=f[m>>2]|0}}f[l>>2]=b;f[g>>2]=0;f[A>>2]=(f[A>>2]|0)+-1;Zpb(o);a:do if(_ia(a,q)|0){i=q;l=X(i,1540483477)|0;l=(X(l>>>24^l,1540483477)|0)^1866966612;l=X(l>>>13^l,1540483477)|0;l=l>>>15^l;j=f[C>>2]|0;k=(j|0)==0;b:do if(k)b=0;else{h=j+-1|0;g=(h&j|0)==0;if(g)b=h&l;else if(l>>>0<j>>>0)b=l;else b=(l>>>0)%(j>>>0)|0;c=f[(f[B>>2]|0)+(b<<2)>>2]|0;if(c){if(g)while(1){c=f[c>>2]|0;if(!c)break b;o=f[c+4>>2]|0;if(!((o|0)==(l|0)|(o&h|0)==(b|0)))break b;if((f[c+8>>2]|0)==(q|0))break a}while(1){c=f[c>>2]|0;if(!c)break b;g=f[c+4>>2]|0;if((g|0)!=(l|0)){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(b|0))break b}if((f[c+8>>2]|0)==(q|0))break a}}}while(0);h=Wpb(12)|0;f[h+8>>2]=i;f[h+4>>2]=l;f[h>>2]=0;d=+(((f[D>>2]|0)+1|0)>>>0);e=+n[t>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Via(B,b>>>0<c>>>0?c:b);b=f[C>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&l;break}if(l>>>0<b>>>0){g=b;b=l}else{g=b;b=(l>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[B>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){f[h>>2]=f[u>>2];f[u>>2]=h;f[c>>2]=u;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[B>>2]|0)+(b<<2)|0;r=60}}else{f[h>>2]=f[b>>2];r=60}if((r|0)==60){r=0;f[b>>2]=h}f[D>>2]=(f[D>>2]|0)+1}while(0);e=+n$();p[v>>3]=e;if(e>=+p[w>>3]){b=0;r=63;break}}if((r|0)==63)return b|0;return 0}function Jha(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;t=a+1232|0;u=a+1236|0;v=a+1296|0;w=a+1304|0;x=a+1172|0;y=a+1176|0;z=a+1184|0;A=a+1188|0;B=a+1180|0;while(1){c=f[u>>2]|0;if((f[t>>2]|0)==(c|0)){c=1;r=39;break}c=c+-4|0;s=f[c>>2]|0;f[u>>2]=c;c=f[s+4>>2]|0;s=f[s+8>>2]|0;if((c|0)!=(s|0))do{k=f[c>>2]|0;l=k;a:do if((b[k+203>>0]&3)==1)if(_ia(a,k)|0){q=X(l,1540483477)|0;q=(X(q>>>24^q,1540483477)|0)^1866966612;q=X(q>>>13^q,1540483477)|0;q=q>>>15^q;m=f[y>>2]|0;o=(m|0)==0;b:do if(o)d=0;else{j=m+-1|0;i=(j&m|0)==0;if(i)d=j&q;else if(q>>>0<m>>>0)d=q;else d=(q>>>0)%(m>>>0)|0;e=f[(f[x>>2]|0)+(d<<2)>>2]|0;if(e){if(i)while(1){e=f[e>>2]|0;if(!e)break b;i=f[e+4>>2]|0;if(!((i|0)==(q|0)|(i&j|0)==(d|0)))break b;if((f[e+8>>2]|0)==(k|0))break a}while(1){e=f[e>>2]|0;if(!e)break b;i=f[e+4>>2]|0;if((i|0)!=(q|0)){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0;if((i|0)!=(d|0))break b}if((f[e+8>>2]|0)==(k|0))break a}}}while(0);j=Wpb(12)|0;f[j+8>>2]=l;f[j+4>>2]=q;f[j>>2]=0;g=+(((f[z>>2]|0)+1|0)>>>0);h=+n[A>>2];do if(o|h*+(m>>>0)<g){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(g/h))>>>0;Via(x,d>>>0<e>>>0?e:d);d=f[y>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0<d>>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}else i=m;while(0);e=(f[x>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[j>>2]=f[B>>2];f[B>>2]=j;f[e>>2]=B;d=f[j>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[x>>2]|0)+(d<<2)|0;r=36}}else{f[j>>2]=f[d>>2];r=36}if((r|0)==36){r=0;f[d>>2]=j}f[z>>2]=(f[z>>2]|0)+1}while(0);c=c+4|0}while((c|0)!=(s|0));h=+n$();p[v>>3]=h;if(h>=+p[w>>3]){c=0;r=39;break}}if((r|0)==39)return c|0;return 0}function Kha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0.0;q=u;u=u+48|0;o=q+40|0;c=q;RWa(c,b);d=f[a+1e3>>2]|0;i=f[a+1004>>2]|0;if((d|0)==(i|0)){u=q;return}k=+p[c>>3];l=+p[c+8>>3];m=+p[c+16>>3];j=+p[c+24>>3];c=0;a:do{e=f[d>>2]|0;h=f[d+4>>2]|0;b:do if((e|0)!=(h|0)){g=2;do{s=+p[e+24>>3]+(k*+p[e>>3]+(l*+p[e+8>>3]+m*+p[e+16>>3]));r=!(s*s>=j)?1:s<0.0?0:2;g=(r|0)<(g|0)?r:g;e=e+32|0}while((e|0)!=(h|0));switch(g|0){case 2:{n=17;break a}case 1:break;default:break b}c=1}while(0);d=d+16|0}while((d|0)!=(i|0));if((n|0)==17){u=q;return}if(!c){u=q;return}c=f[b+12>>2]|0;d=f[b+16>>2]|0;if((c|0)!=(d|0))do{Kha(a,c);c=c+72|0}while((c|0)!=(d|0));c=f[b+24>>2]|0;g=f[b+28>>2]|0;if((c|0)==(g|0)){u=q;return}h=a+1236|0;i=a+1240|0;e=a+1232|0;do{f[o>>2]=c;d=f[h>>2]|0;if(d>>>0<(f[i>>2]|0)>>>0){f[d>>2]=c;f[h>>2]=(f[h>>2]|0)+4}else Zia(e,o);c=c+20|0}while((c|0)!=(g|0));u=q;return}function Lha(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,i=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0;O=u;u=u+272|0;d=O;b=uva(f[a>>2]|0)|0;c=a+24|0;if(kga(c,ENa(b)|0)|0){b=a+1296|0;c=a+1304|0;e=a+712|0}else{PI(c,ENa(b)|0)|0;e=Iga(c)|0;ca=+p[e>>3];_=+p[e+8>>3];U=+p[e+16>>3];T=+p[e+24>>3];ba=+p[e+32>>3];Z=+p[e+40>>3];S=+p[e+48>>3];R=+p[e+56>>3];aa=+p[e+64>>3];Y=+p[e+72>>3];Q=+p[e+80>>3];P=+p[e+88>>3];$=+p[e+96>>3];V=+p[e+104>>3];g=+p[e+112>>3];i=+p[e+120>>3];n[d>>2]=T-ca;n[d+4>>2]=R-ba;n[d+8>>2]=P-aa;n[d+12>>2]=i-$;n[d+16>>2]=T-_;n[d+20>>2]=R-Z;n[d+24>>2]=P-Y;n[d+28>>2]=i-V;n[d+32>>2]=T-U;n[d+36>>2]=R-S;n[d+40>>2]=P-Q;n[d+44>>2]=i-g;n[d+48>>2]=ca+T;n[d+52>>2]=ba+R;n[d+56>>2]=aa+P;n[d+60>>2]=$+i;n[d+64>>2]=_+T;n[d+68>>2]=Z+R;n[d+72>>2]=Y+P;n[d+76>>2]=V+i;n[d+80>>2]=U+T;n[d+84>>2]=S+R;n[d+88>>2]=Q+P;n[d+92>>2]=g+i;yha(d);e=a+712|0;Eha(e,d)|0;Xia(a,a+1192|0);Xia(a,a+1212|0);i=+n$();b=a+1296|0;p[b>>3]=i;c=a+1304|0;if(i>=+p[c>>3]){N=0;u=O;return N|0}}x=a+1176|0;y=a+1172|0;z=a+1180|0;A=a+1184|0;B=a+1192|0;C=a+1196|0;D=a+1204|0;E=a+1208|0;F=a+1192|0;G=a+1200|0;H=a+1212|0;I=a+1216|0;J=a+1224|0;K=a+1228|0;L=a+1212|0;M=a+1220|0;w=f[a+1180>>2]|0;while(1){k=w;if(!w){b=1;N=101;break}v=f[w+8>>2]|0;s=w;t=w;w=f[s>>2]|0;l=f[x>>2]|0;d=f[k+4>>2]|0;m=l+-1|0;o=(m&l|0)==0;if(o)q=m&d;else if(d>>>0<l>>>0)q=d;else q=(d>>>0)%(l>>>0)|0;a=(f[y>>2]|0)+(q<<2)|0;r=f[a>>2]|0;while(1){d=f[r>>2]|0;if((d|0)==(k|0))break;else r=d}if((r|0)==(z|0))N=19;else{d=f[r+4>>2]|0;if(o)d=d&m;else if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)!=(q|0))N=19}do if((N|0)==19){N=0;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;if(o)d=d&m;else if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)==(q|0))break}f[a>>2]=0}while(0);a=f[k>>2]|0;d=a;if(a){a=f[a+4>>2]|0;if(o)a=a&m;else if(a>>>0>=l>>>0)a=(a>>>0)%(l>>>0)|0;if((a|0)!=(q|0)){f[(f[y>>2]|0)+(a<<2)>>2]=r;d=f[s>>2]|0}}f[r>>2]=d;f[k>>2]=0;f[A>>2]=(f[A>>2]|0)+-1;Zpb(t);a=v+200|0;d=j[a>>1]|0|(h[a+2>>0]|0)<<16;if(d&65536){ppa(v);d=j[a>>1]|0|(h[a+2>>0]|0)<<16}if(d&32768|0)qpa(v);q=v;r=X(q,1540483477)|0;r=(X(r>>>24^r,1540483477)|0)^1866966612;r=X(r>>>13^r,1540483477)|0;r=r>>>15^r;a:do if(Yia(e,v+168|0,+n[v+152>>2])|0){m=f[C>>2]|0;o=(m|0)==0;b:do if(o)d=0;else{l=m+-1|0;k=(l&m|0)==0;if(k)d=l&r;else if(r>>>0<m>>>0)d=r;else d=(r>>>0)%(m>>>0)|0;a=f[(f[F>>2]|0)+(d<<2)>>2]|0;if(a){if(k)while(1){a=f[a>>2]|0;if(!a)break b;t=f[a+4>>2]|0;if(!((t|0)==(r|0)|(t&l|0)==(d|0)))break b;if((f[a+8>>2]|0)==(v|0))break a}while(1){a=f[a>>2]|0;if(!a)break b;k=f[a+4>>2]|0;if((k|0)!=(r|0)){if(k>>>0>=m>>>0)k=(k>>>0)%(m>>>0)|0;if((k|0)!=(d|0))break b}if((f[a+8>>2]|0)==(v|0))break a}}}while(0);l=Wpb(12)|0;f[l+8>>2]=q;f[l+4>>2]=r;f[l>>2]=0;g=+(((f[D>>2]|0)+1|0)>>>0);i=+n[E>>2];do if(o|i*+(m>>>0)<g){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;a=~~+W(+(g/i))>>>0;Via(B,d>>>0<a>>>0?a:d);d=f[C>>2]|0;a=d+-1|0;if(!(a&d)){k=d;d=a&r;break}if(r>>>0<d>>>0){k=d;d=r}else{k=d;d=(r>>>0)%(d>>>0)|0}}else k=m;while(0);a=(f[F>>2]|0)+(d<<2)|0;d=f[a>>2]|0;if(!d){f[l>>2]=f[G>>2];f[G>>2]=l;f[a>>2]=G;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;a=k+-1|0;if(!(a&k))d=d&a;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;d=(f[F>>2]|0)+(d<<2)|0;N=67}}else{f[l>>2]=f[d>>2];N=67}if((N|0)==67){N=0;f[d>>2]=l}f[D>>2]=(f[D>>2]|0)+1}else{m=f[I>>2]|0;o=(m|0)==0;c:do if(o)d=0;else{l=m+-1|0;k=(l&m|0)==0;if(k)d=l&r;else if(r>>>0<m>>>0)d=r;else d=(r>>>0)%(m>>>0)|0;a=f[(f[L>>2]|0)+(d<<2)>>2]|0;if(a){if(k)while(1){a=f[a>>2]|0;if(!a)break c;t=f[a+4>>2]|0;if(!((t|0)==(r|0)|(t&l|0)==(d|0)))break c;if((f[a+8>>2]|0)==(v|0))break a}while(1){a=f[a>>2]|0;if(!a)break c;k=f[a+4>>2]|0;if((k|0)!=(r|0)){if(k>>>0>=m>>>0)k=(k>>>0)%(m>>>0)|0;if((k|0)!=(d|0))break c}if((f[a+8>>2]|0)==(v|0))break a}}}while(0);l=Wpb(12)|0;f[l+8>>2]=q;f[l+4>>2]=r;f[l>>2]=0;g=+(((f[J>>2]|0)+1|0)>>>0);i=+n[K>>2];do if(o|i*+(m>>>0)<g){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;a=~~+W(+(g/i))>>>0;Via(H,d>>>0<a>>>0?a:d);d=f[I>>2]|0;a=d+-1|0;if(!(a&d)){k=d;d=a&r;break}if(r>>>0<d>>>0){k=d;d=r}else{k=d;d=(r>>>0)%(d>>>0)|0}}else k=m;while(0);a=(f[L>>2]|0)+(d<<2)|0;d=f[a>>2]|0;if(!d){f[l>>2]=f[M>>2];f[M>>2]=l;f[a>>2]=M;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;a=k+-1|0;if(!(a&k))d=d&a;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;d=(f[L>>2]|0)+(d<<2)|0;N=98}}else{f[l>>2]=f[d>>2];N=98}if((N|0)==98){N=0;f[d>>2]=l}f[J>>2]=(f[J>>2]|0)+1}while(0);ca=+n$();p[b>>3]=ca;if(ca>=+p[c>>3]){b=0;N=101;break}}if((N|0)==101){u=O;return b|0}return 0}function Mha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;q=b+4|0;r=b+8|0;s=b+12|0;t=a+1296|0;u=a+1304|0;m=f[b+8>>2]|0;while(1){e=m;if(!m){v=32;break}o=f[m+8>>2]|0;l=m;n=m;m=f[l>>2]|0;g=f[q>>2]|0;c=f[e+4>>2]|0;h=g+-1|0;i=(h&g|0)==0;if(i)j=h&c;else if(c>>>0<g>>>0)j=c;else j=(c>>>0)%(g>>>0)|0;d=(f[b>>2]|0)+(j<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(e|0))break;else k=c}if((k|0)==(r|0))v=16;else{c=f[k+4>>2]|0;if(i)c=c&h;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)!=(j|0))v=16}do if((v|0)==16){v=0;c=f[e>>2]|0;if(c|0){c=f[c+4>>2]|0;if(i)c=c&h;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)==(j|0))break}f[d>>2]=0}while(0);d=f[e>>2]|0;c=d;if(d){d=f[d+4>>2]|0;if(i)d=d&h;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(j|0)){f[(f[b>>2]|0)+(d<<2)>>2]=k;c=f[l>>2]|0}}f[k>>2]=c;f[e>>2]=0;f[s>>2]=(f[s>>2]|0)+-1;Zpb(n);Nha(a,o);w=+n$();p[t>>3]=w;if(w>=+p[u>>3]){v=31;break}}if((v|0)==31){YNa(uva(f[a>>2]|0)|0);v=0;return v|0}else if((v|0)==32){YNa(uva(f[a>>2]|0)|0);v=1;return v|0}return 0}function Nha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0,s=0.0,t=0,v=0,w=0,x=0,y=0;w=0;x=u;u=u+2096|0;PWa(x+152|0,f[a>>2]|0,0,c,x+192|0);d=(f[c+4>>2]|0)+44|0;jka(x+408|0,f[d>>2]|0);b[(x+492|0)>>0]=(f[(f[d>>2]|0)+48>>2]|0)>>>16&1;d=f[(a+1e3|0)>>2]|0;v=f[(a+1004|0)>>2]|0;if((d|0)!=(v|0))do{e=f[d>>2]|0;t=f[d+4>>2]|0;a:do if((e|0)!=(t|0)){i=+p[(x+152|0)>>3];j=+p[((x+152|0)+8|0)>>3];k=+p[((x+152|0)+16|0)>>3];l=+p[((x+152|0)+24|0)>>3];g=2;h=e;do{s=+p[h+24>>3]+(i*+p[h>>3]+(j*+p[h+8>>3]+k*+p[h+16>>3]));r=!(s*s>=l)?1:s<0.0?0:2;g=(r|0)<(g|0)?r:g;h=h+32|0}while((h|0)!=(t|0));if((g|0)==1)while(1){m=+p[e>>3];g=e+8|0;o=+p[g>>3];h=e+16|0;q=+p[h>>3];r=e+24|0;s=+p[r>>3];k=s+(m*i+(o*j+q*k));if(!(k*k>=l)){p[(x+48|0)>>3]=m;p[((x+48|0)+8|0)>>3]=o;p[((x+48|0)+16|0)>>3]=q;p[((x+48|0)+24|0)>>3]=s;p[((x+48|0)+32|0)>>3]=m*-s;p[((x+48|0)+40|0)>>3]=o*-s;p[((x+48|0)+48|0)>>3]=q*-s;l=!(o*o+q*q+0.0>=.001)?-q:0.0;k=!(o*o+q*q+0.0>=.001)?0.0:q;j=!(o*o+q*q+0.0>=.001)?m:-o;s=+L(+(l*l+(k*k+j*j)));p[((x+48|0)+56|0)>>3]=l/s;p[((x+48|0)+64|0)>>3]=k/s;p[((x+48|0)+72|0)>>3]=j/s;p[((x+48|0)+80|0)>>3]=o*(j/s)-q*(k/s);p[((x+48|0)+88|0)>>3]=q*(l/s)-m*(j/s);p[((x+48|0)+96|0)>>3]=m*(k/s)-o*(l/s);qka(x+392|0,x+408|0);y=tka(x+392|0)|0;f[(x+368|0)>>2]=x+392|0;f[((x+368|0)+4|0)>>2]=a;f[((x+368|0)+8|0)>>2]=x+192|0;f[((x+368|0)+12|0)>>2]=e;f[((x+368|0)+16|0)>>2]=x+48|0;f[((x+368|0)+20|0)>>2]=x+492|0;b:do if(y)while(1){y=vka(x+392|0)|0;m=+n[y+4>>2];q=+n[y+8>>2];l=+n[y+12>>2];o=+n[y+16>>2];k=+n[y+20>>2];p[x>>3]=+n[y>>2];p[(x+8|0)>>3]=m;p[(x+16|0)>>3]=q;p[(x+24|0)>>3]=l;p[(x+32|0)>>3]=o;p[(x+40|0)>>3]=k;Sha(x+320|0,x,x+192|0);k=+p[(x+320|0)>>3];o=(+p[((x+320|0)+24|0)>>3]-k)*.5;l=+p[((x+320|0)+8|0)>>3];q=(+p[((x+320|0)+32|0)>>3]-l)*.5;m=+p[((x+320|0)+16|0)>>3];s=(+p[((x+320|0)+40|0)>>3]-m)*.5;m=+p[r>>3]+((k+o)*+p[e>>3]+((l+q)*+p[g>>3]+(m+s)*+p[h>>3]));if(!(m*m>=o*o+(q*q+s*s)))Rha(x+368|0);if(!(tka(x+392|0)|0))break b;uka(x+392|0)}else Rha(x+368|0);while(0);n[x>>2]=+p[e>>3];n[(x+4|0)>>2]=+p[g>>3];n[(x+8|0)>>2]=+p[h>>3];Tha(a,x,x+48|0);g=f[(a+1e3|0)>>2]|0;if(((f[(a+1004|0)>>2]|0)-g|0)==16){if(((f[g+4>>2]|0)-(f[g>>2]|0)|0)!=32)w=29}else w=29;if((w|0)==29){w=0;Uha(a,d);Vha(a,e,d)}r=f[(a+1080|0)>>2]|0;y=(f[(a+1084|0)>>2]|0)-r|0;f[x+512>>2]=a;f[x+928>>2]=r;f[x+936>>2]=y;f[x+2e3>>2]=w;f[x+2008>>2]=0;f[x+2012>>2]=0;Sja(x);w=f[x+2e3>>2]|0}e=e+32|0;if((e|0)==(t|0))break a;i=+p[(x+152|0)>>3];j=+p[((x+152|0)+8|0)>>3];k=+p[((x+152|0)+16|0)>>3];l=+p[((x+152|0)+24|0)>>3]}}while(0);d=d+16|0}while((d|0)!=(v|0));Oha(a,c);d=f[(x+408|0)+60>>2]|0;if(d|0)Pha(d,(x+408|0)+48|0);d=f[((x+408|0)+48|0)>>2]|0;if(d|0){e=f[((x+408|0)+52|0)>>2]|0;if((e|0)!=(d|0))f[((x+408|0)+52|0)>>2]=e+(~((e+-4-d|0)>>>2)<<2);Zpb(d)}d=f[(x+408|0)+44>>2]|0;if(d|0)Qha(d,(x+408|0)+32|0);d=f[((x+408|0)+32|0)>>2]|0;if(!d){u=x;return}e=f[((x+408|0)+36|0)>>2]|0;if((e|0)!=(d|0))f[((x+408|0)+36|0)>>2]=e+(~((e+-2-d|0)>>>1)<<1);Zpb(d);u=x;return}function Oha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;v=w;if(!(f[a+12>>2]|0)){c=f[a+1152>>2]|0;d=a+1156|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2)}if(!(f[a+4>>2]|0)){c=f[a+1140>>2]|0;d=a+1144|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2)}q=a+1152|0;r=a+1156|0;if((f[q>>2]|0)==(f[r>>2]|0))if((f[a+1140>>2]|0)==(f[a+1144>>2]|0)){u=w;return}s=a+1140|0;Kja(v,f[a>>2]|0,b,q,s);Soa(b,v);xNa(uva(f[a>>2]|0)|0,b,0,0);p=a+1276|0;j=b;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=a+1280|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(m){c=0;t=25}else{i=l+-1|0;e=(i&l|0)==0;if(e)c=i&o;else if(o>>>0<l>>>0)c=o;else c=(o>>>0)%(l>>>0)|0;d=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!d)t=25;else{if(e)while(1){d=f[d>>2]|0;if(!d){t=25;break a}e=f[d+4>>2]|0;if(!((e|0)==(o|0)|(e&i|0)==(c|0))){t=25;break a}if((f[d+8>>2]|0)==(b|0))break a}do{d=f[d>>2]|0;if(!d){t=25;break a}e=f[d+4>>2]|0;if((e|0)!=(o|0)){if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)!=(c|0)){t=25;break a}}}while((f[d+8>>2]|0)!=(b|0))}}while(0);if((t|0)==25){b=Wpb(12)|0;f[b+8>>2]=j;f[b+4>>2]=o;f[b>>2]=0;i=a+1288|0;g=+(((f[i>>2]|0)+1|0)>>>0);h=+n[a+1292>>2];do if(m|h*+(l>>>0)<g){c=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;d=~~+W(+(g/h))>>>0;Via(p,c>>>0<d>>>0?d:c);c=f[k>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&o;break}if(o>>>0<c>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}else e=l;while(0);d=(f[p>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+1284|0;f[b>>2]=f[c>>2];f[c>>2]=b;f[d>>2]=c;c=f[b>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[p>>2]|0)+(c<<2)|0;t=38}}else{f[b>>2]=f[c>>2];t=38}if((t|0)==38)f[c>>2]=b;f[i>>2]=(f[i>>2]|0)+1}c=f[q>>2]|0;d=f[r>>2]|0;if((d|0)!=(c|0))f[r>>2]=d+(~((d+-4-c|0)>>>2)<<2);e=f[s>>2]|0;c=a+1144|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);c=f[v+4>>2]|0;if(c|0)Ppb(c);u=w;return}function Pha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-4-a|0)>>>2)<<2);if(!(b[209664]|0))if(rrb(209664)|0){f[52739]=0;f[52740]=0;f[52741]=0}a=f[52740]|0;if(a>>>0<(f[52741]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52740]=a+12;return}else{Uia(210956,c);return}}function Qha(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-2-a|0)>>>1)<<1);if(!(b[209656]|0))if(rrb(209656)|0){f[52736]=0;f[52737]=0;f[52738]=0}a=f[52737]|0;if(a>>>0<(f[52738]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52737]=a+12;return}else{Tia(210944,c);return}}function Rha(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0,Q=0.0,R=0.0,S=0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0;E=u;u=u+80|0;n=E;C=f[a+4>>2]|0;D=C+1012|0;nka(f[a>>2]|0,D);c=f[D>>2]|0;B=(f[C+1016>>2]|0)-c|0;o=(B|0)/24|0;if(!B){u=E;return}q=n+8|0;r=n+16|0;s=n+24|0;t=n+32|0;v=n+40|0;w=n+48|0;x=n+56|0;y=n+64|0;z=a+8|0;A=a+12|0;B=a+16|0;d=a+20|0;e=n+8|0;g=n+16|0;h=n+24|0;i=n+32|0;j=n+40|0;k=n+48|0;l=n+56|0;m=n+64|0;a=0;while(1){X=+p[c+(a*24|0)>>3];p[n>>3]=X;W=+p[c+(a*24|0)+8>>3];p[q>>3]=W;V=+p[c+(a*24|0)+16>>3];p[r>>3]=V;S=a+1|0;M=+p[c+(S*24|0)>>3];p[s>>3]=M;K=+p[c+(S*24|0)+8>>3];p[t>>3]=K;G=+p[c+(S*24|0)+16>>3];p[v>>3]=G;S=a+2|0;p[w>>3]=+p[c+(S*24|0)>>3];p[x>>3]=+p[c+(S*24|0)+8>>3];p[y>>3]=+p[c+(S*24|0)+16>>3];c=f[z>>2]|0;L=+p[c+32>>3];F=+p[c+64>>3];S=c+8|0;R=+p[c+40>>3];Q=+p[c+72>>3];P=c+16|0;O=+p[c+48>>3];N=+p[c+80>>3];H=+p[c+96>>3];I=+p[c+104>>3];U=X*+p[S>>3]+W*R+V*Q+I;J=+p[c+112>>3];T=X*+p[P>>3]+W*O+V*N+J;p[n>>3]=+p[c>>3]*X+L*W+F*V+H;p[e>>3]=U;p[g>>3]=T;I=M*+p[S>>3]+K*R+G*Q+I;J=M*+p[P>>3]+K*O+G*N+J;p[h>>3]=+p[c>>3]*M+L*K+F*G+H;p[i>>3]=I;p[j>>3]=J;c=f[z>>2]|0;J=+p[k>>3];I=+p[l>>3];H=+p[m>>3];G=J*+p[c+8>>3]+I*+p[c+40>>3]+H*+p[c+72>>3]+ +p[c+104>>3];F=J*+p[c+16>>3]+I*+p[c+48>>3]+H*+p[c+80>>3]+ +p[c+112>>3];p[k>>3]=+p[c>>3]*J+ +p[c+32>>3]*I+ +p[c+64>>3]*H+ +p[c+96>>3];p[l>>3]=G;p[m>>3]=F;Nia(C,f[A>>2]|0,f[B>>2]|0,n,(b[f[d>>2]>>0]|0)!=0);a=a+3|0;if(a>>>0>=o>>>0)break;c=f[D>>2]|0}u=E;return}function Sha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0,L=0,M=0,N=0.0;G=u;u=u+240|0;e=G+40|0;C=G;J=+p[b>>3];K=+p[b+8>>3];d=+p[b+16>>3];p[e>>3]=J;D=e+8|0;p[D>>3]=K;E=e+16|0;p[E>>3]=d;I=+p[b+24>>3];p[e+24>>3]=I;p[e+32>>3]=K;p[e+40>>3]=d;H=+p[b+32>>3];p[e+48>>3]=J;p[e+56>>3]=H;p[e+64>>3]=d;p[e+72>>3]=I;p[e+80>>3]=H;p[e+88>>3]=d;d=+p[b+40>>3];p[e+96>>3]=J;p[e+104>>3]=K;p[e+112>>3]=d;p[e+120>>3]=I;p[e+128>>3]=K;p[e+136>>3]=d;p[e+144>>3]=J;p[e+152>>3]=H;p[e+160>>3]=d;p[e+168>>3]=I;p[e+176>>3]=H;p[e+184>>3]=d;g=e+192|0;h=c+32|0;i=c+64|0;j=c+8|0;k=c+40|0;l=c+72|0;m=c+16|0;n=c+48|0;o=c+80|0;q=c+24|0;r=c+56|0;s=c+88|0;t=C+8|0;v=C+16|0;w=C+24|0;x=c+96|0;y=c+104|0;z=c+112|0;A=c+120|0;B=C+32|0;b=e;do{N=+p[b>>3];M=b+8|0;d=+p[M>>3];L=b+16|0;J=+p[L>>3];K=N*+p[j>>3]+d*+p[k>>3]+J*+p[l>>3];H=N*+p[m>>3]+d*+p[n>>3]+J*+p[o>>3];I=N*+p[q>>3]+d*+p[r>>3]+J*+p[s>>3];J=+p[c>>3]*N+ +p[h>>3]*d+ +p[i>>3]*J+ +p[x>>3];p[C>>3]=J;K=K+ +p[y>>3];p[t>>3]=K;p[v>>3]=H+ +p[z>>3];p[w>>3]=I+ +p[A>>3];f[B>>2]=0;p[b>>3]=J;p[M>>3]=K;p[L>>3]=+p[v>>3];b=b+24|0}while((b|0)!=(g|0));l=e+168|0;m=a+24|0;K=+p[e>>3];p[m>>3]=K;N=+p[D>>3];k=a+32|0;p[k>>3]=N;d=+p[E>>3];h=a+40|0;p[h>>3]=d;p[a>>3]=K;i=a+8|0;p[i>>3]=N;j=a+16|0;b=a;a:while(1){p[b+16>>3]=d;while(1){if((e|0)==(l|0))break a;g=e+24|0;d=+p[g>>3];if(d<+p[a>>3]){b=a;F=7}else if(d>+p[m>>3]){b=m;F=7}if((F|0)==7){F=0;p[b>>3]=d}d=+p[e+32>>3];if(d<+p[i>>3]){b=a;F=10}else if(d>+p[k>>3]){b=m;F=10}if((F|0)==10){F=0;p[b+8>>3]=d}d=+p[e+40>>3];if(d<+p[j>>3]){e=g;b=a;continue a}if(d>+p[h>>3]){e=g;b=m;continue a}else e=g}}u=G;return}function Tha(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;t=0;z=u;u=u+2800|0;if((f[(a+1056|0)>>2]|0)==(f[a+1060>>2]|0)){u=z;return}e=(f[a+1028>>2]|0)-(f[a+1024>>2]|0)>>4;if(e>>>0<3){u=z;return}_ga(z+304|0,f[52698]|0);y=(z+304|0)+4|0;h=f[y>>2]|0;i=f[(z+304|0)>>2]|0;f[z+432>>2]=a;f[z+640>>2]=j;f[z+872>>2]=k;f[z+880>>2]=w;f[z+888>>2]=v;f[z+976>>2]=x;f[z+1112>>2]=e;f[z+1168>>2]=y;f[z+1200>>2]=h;f[z+1224>>2]=i;f[z+1296>>2]=l;f[z+1304>>2]=m;f[z+1312>>2]=o;f[z+1320>>2]=q;f[z+1328>>2]=r;f[z+1336>>2]=s;f[z+2664>>2]=t;f[z+2680>>2]=0;f[z+2684>>2]=0;Uja(z);j=f[z+640>>2]|0;k=f[z+872>>2]|0;w=f[z+880>>2]|0;v=f[z+888>>2]|0;x=f[z+976>>2]|0;l=f[z+1296>>2]|0;m=f[z+1304>>2]|0;o=f[z+1312>>2]|0;q=f[z+1320>>2]|0;r=f[z+1328>>2]|0;s=f[z+1336>>2]|0;t=f[z+2664>>2]|0;a:do if((f[k>>2]|0)!=1){b:while(1){_ga(z+320|0,f[52698]|0);eia((z+320|0)+16|0,f[52698]|0);_ga(z+32|0,f[52698]|0);g=(f[k>>2]|0)-(f[l>>2]|0)|0;h=f[m>>2]|0;i=f[(z+32|0)>>2]|0;if(g>>>0>h-i>>2>>>0){dia(z+32|0,g-(h-i>>2)|0);e=f[(z+32|0)>>2]|0;h=f[m>>2]|0}else if(g>>>0<h-i>>2>>>0)if((i+(g<<2)|0|0)==(h|0))e=i;else{f[m>>2]=h+(~((h+-4-(i+(g<<2)|0)|0)>>>2)<<2)|0;e=i;h=h+(~((h+-4-(i+(g<<2)|0)|0)>>>2)<<2)|0}else e=i;if((e|0)!=(h|0)){g=f[l>>2]|0;while(1){f[e>>2]=g;e=e+4|0;if((e|0)==(h|0))break;else g=g+1|0}}lia(z,z+132|0,z+32|0);e=f[o>>2]|0;if(e|0)rha(e,z+320|0);e=f[(z+320|0)>>2]|0;if(e|0){g=f[j>>2]|0;if((g|0)!=(e|0))f[j>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e);f[((z+320|0)+8|0)>>2]=0;f[j>>2]=0;f[(z+320|0)>>2]=0}f[(z+320|0)>>2]=f[z>>2];f[j>>2]=f[(z+4|0)>>2];f[((z+320|0)+8|0)>>2]=f[(z+8|0)>>2];f[(z+8|0)>>2]=0;f[(z+4|0)>>2]=0;f[z>>2]=0;f[o>>2]=f[(z+12|0)>>2];f[(z+12|0)>>2]=0;mia((z+320|0)+16|0,z+16|0);nia(z+16|0);e=f[(z+12|0)>>2]|0;if(e|0)rha(e,z);e=f[z>>2]|0;if(e|0){g=f[(z+4|0)>>2]|0;if((g|0)!=(e|0))f[(z+4|0)>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}f[(z+352|0)>>2]=z+320|0;f[((z+352|0)+4|0)>>2]=(z+320|0)+16|0;f[((z+352|0)+8|0)>>2]=0;_ga((z+352|0)+12|0,f[52698]|0);e=f[52698]|0;do if(!(b[209624]|0)){if(!(rrb(209624)|0))break;f[52724]=0;f[52725]=0;f[52726]=0}while(0);i=f[52725]|0;f[z+640>>2]=j;f[z+872>>2]=k;f[z+880>>2]=w;f[z+888>>2]=v;f[z+1296>>2]=l;f[z+1304>>2]=m;f[z+1312>>2]=o;f[z+1320>>2]=q;f[z+1328>>2]=r;f[z+1336>>2]=s;f[z+1440>>2]=e;f[z+1448>>2]=i;f[z+2664>>2]=t;f[z+2672>>2]=0;f[z+2676>>2]=0;Tja(z);t=f[z+2664>>2]|0;G=f[z+2672>>2]|0;D=f[z+2676>>2]|0;H=+n[z+2676>>2];f[z+2672>>2]=0;f[z+2676>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:break b;case 6:break a}}if((t|0)==117)fob(q);else if((t|0)==120)ud();else if((t|0)==145)fob(210896);else if((t|0)==148)ud()}while(0);f[(z+240|0)>>2]=f[((z+132|0)+88|0)>>2];f[((z+240|0)+4|0)>>2]=f[((z+132|0)+92|0)>>2];f[(z+240|0)+8>>2]=f[((z+132|0)+96|0)>>2];f[((z+132|0)+96|0)>>2]=0;f[((z+132|0)+92|0)>>2]=0;f[((z+132|0)+88|0)>>2]=0;f[(z+240|0)+12>>2]=f[((z+132|0)+100|0)>>2];f[((z+132|0)+100|0)>>2]=0;nia((z+132|0)+88|0);e=f[(z+132|0)+84>>2]|0;if(e|0)rha(e,(z+132|0)+72|0);e=f[((z+132|0)+72|0)>>2]|0;if(e|0){g=f[((z+132|0)+76|0)>>2]|0;if((g|0)!=(e|0))f[((z+132|0)+76|0)>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}e=f[((z+132|0)+68|0)>>2]|0;if(e|0)qia(e,v);e=f[v>>2]|0;if(e|0)Zpb(e);e=f[(z+132|0)+52>>2]|0;if(e|0)ria(e,w);e=f[w>>2]|0;if(e|0){g=f[x>>2]|0;if((g|0)!=(e|0)){do{i=g+-24|0;f[x>>2]=i;h=f[g+-4>>2]|0;if(h|0)iia(h,i);g=f[g+-16>>2]|0;if(g|0)do{v=g;g=f[g>>2]|0;Zpb(v)}while((g|0)!=0);g=f[i>>2]|0;f[i>>2]=0;if(g|0)Zpb(g);g=f[x>>2]|0}while((g|0)!=(e|0));e=f[w>>2]|0}Zpb(e)}nia((z+132|0)+16|0);e=f[((z+132|0)+12|0)>>2]|0;if(e|0)rha(e,z+132|0);e=f[(z+132|0)>>2]|0;if(e|0){g=f[((z+132|0)+4|0)>>2]|0;if((g|0)!=(e|0))f[((z+132|0)+4|0)>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}f[(z+32|0)>>2]=-1;Uga((z+32|0)+4|0,f[52697]|0);Zga((z+32|0)+20|0,f[52699]|0);_ga((z+32|0)+36|0,f[52699]|0);$ga((z+32|0)+52|0,f[52699]|0);aha((z+32|0)+68|0,f[52699]|0);bha((z+32|0)+84|0,f[52699]|0);e=f[(z+240|0)>>2]|0;l=f[((z+240|0)+4|0)>>2]|0;if((e|0)!=(l|0))do{j=f[e>>2]|0;k=(f[e+4>>2]|0)-j>>2;g=f[(a+1068|0)>>2]|0;h=f[(a+1072|0)>>2]|0;if((h|0)==(g|0))i=g;else{f[(a+1072|0)>>2]=h+(~((h+-16-g|0)>>>4)<<4)|0;i=h+(~((h+-16-g|0)>>>4)<<4)|0}if(!(k+-1|0))g=i;else{g=0;h=j;j=i;while(1){h=f[h+(g<<2)>>2]|0;i=f[(a+1024|0)>>2]|0;if((j|0)==(f[(a+1076|0)>>2]|0))fha(a+1068|0,i+(h<<4)|0);else{p[j>>3]=+p[(i+(h<<4)|0)>>3];p[j+8>>3]=+p[i+(h<<4)+8>>3];f[(a+1072|0)>>2]=j+16}g=g+1|0;if((g|0)==(k+-1|0|0))break;h=f[e>>2]|0;j=f[(a+1072|0)>>2]|0}g=f[(a+1072|0)>>2]|0}cha(z+32|0,g+(1-k<<4)|0,k+-1|0);e=e+16|0}while((e|0)!=(l|0));e=f[((z+32|0)+68|0)>>2]|0;g=f[((z+32|0)+72|0)>>2]|0;if((g|0)!=(e|0))f[((z+32|0)+72|0)>>2]=g+(~(((g+-12-e|0)>>>0)/12|0)*12|0);i=f[((z+32|0)+84|0)>>2]|0;e=f[((z+32|0)+88|0)>>2]|0;if((e|0)==(i|0))g=i;else{f[((z+32|0)+88|0)>>2]=e+(~((e+-4-i|0)>>>2)<<2)|0;g=e+(~((e+-4-i|0)>>>2)<<2)|0}e=f[(z+32|0)+4>>2]|0;h=f[(z+32|0)+8>>2]|0;if((e|0)==(h|0)){h=i;e=i}else{do{jha(z+32|0,d,e,0,a+1092|0);e=e+20|0}while((e|0)!=(h|0));e=f[((z+32|0)+84|0)>>2]|0;g=f[((z+32|0)+88|0)>>2]|0;h=e}if((h|0)!=(g|0))MMa(f[((z+32|0)+68|0)>>2]|0,h,g-e>>2,c,2,a+1092|0)|0;uia(z+32|0);nia(z+240|0);nia((z+256|0)+16|0);e=f[((z+256|0)+12|0)>>2]|0;if(e|0)rha(e,z+256|0);e=f[(z+256|0)>>2]|0;if(e|0){g=f[((z+256|0)+4|0)>>2]|0;if((g|0)!=(e|0))f[((z+256|0)+4|0)>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}nia(z+288|0);e=f[((z+304|0)+12|0)>>2]|0;if(e|0)rha(e,z+304|0);e=f[(z+304|0)>>2]|0;if(e|0){g=f[y>>2]|0;if((g|0)!=(e|0))f[y>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e)}u=z;return}function Uha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+112|0;h=s+108|0;n=s;o=s+104|0;p=s+100|0;q=s+96|0;r=a+1104|0;c=f[a+1e3>>2]|0;j=f[a+1004>>2]|0;if((c|0)==(j|0)){u=s;return}k=a+1080|0;l=a+1084|0;i=a+1088|0;m=a+1108|0;e=a+1112|0;g=b+4|0;a=f[k>>2]|0;d=f[l>>2]|0;do{t=d-a|0;d=a+(((t|0)/24|0)*24|0)|0;a:do if(t|0){if((c|0)!=(b|0))while(1){t=cia(c,a,n)|0;f[q>>2]=f[m>>2];f[h>>2]=f[q>>2];Wha(r,h,n,n+((t<<1)*24|0)|0)|0;a=a+48|0;if((a|0)==(d|0))break a}do do if(((f[g>>2]|0)-(f[b>>2]|0)|0)==32){f[o>>2]=f[m>>2];t=a+48|0;f[h>>2]=f[o>>2];Wha(r,h,a,t)|0;a=t}else if(jWa(b,a)|0){f[p>>2]=f[m>>2];t=a+48|0;f[h>>2]=f[p>>2];Wha(r,h,a,t)|0;a=t;break}else{a=a+48|0;break}while(0);while((a|0)!=(d|0))}while(0);a=f[k>>2]|0;if(a|0){d=f[l>>2]|0;if((d|0)!=(a|0))f[l>>2]=d+(~(((d+-24-a|0)>>>0)/24|0)*24|0);Zpb(a);f[i>>2]=0;f[l>>2]=0;f[k>>2]=0}a=f[r>>2]|0;f[k>>2]=a;d=f[m>>2]|0;f[l>>2]=d;f[i>>2]=f[e>>2];f[e>>2]=0;f[m>>2]=0;f[r>>2]=0;c=c+16|0}while((c|0)!=(j|0));u=s;return}function Vha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=u;u=u+400|0;j=A+388|0;i=A+384|0;h=A+380|0;s=A;t=A+376|0;v=A+372|0;w=A+368|0;x=A+364|0;y=A+360|0;z=a+1116|0;l=a+1128|0;d=f[a+1e3>>2]|0;m=f[a+1004>>2]|0;if((d|0)==(m|0)){u=A;return}n=a+1092|0;o=a+1096|0;k=a+1100|0;p=a+1120|0;q=a+1124|0;r=c+4|0;g=a+1132|0;a=f[n>>2]|0;e=f[o>>2]|0;do{B=e-a|0;e=a+(((B|0)/24|0)*24|0)|0;a:do if(B|0){if((d|0)!=(c|0))while(1){Yha(d,a,b,l,1);f[w>>2]=f[p>>2];f[x>>2]=f[l>>2];f[y>>2]=f[g>>2];f[h>>2]=f[w>>2];f[i>>2]=f[x>>2];f[j>>2]=f[y>>2];Zha(z,h,i,j)|0;a=a+72|0;if((a|0)==(e|0))break a}do if(((f[r>>2]|0)-(f[c>>2]|0)|0)==32){f[t>>2]=f[p>>2];B=a+72|0;f[j>>2]=f[t>>2];Xha(z,j,a,B)|0;a=B}else{B=kWa(c,a,b,s)|0;f[v>>2]=f[p>>2];f[j>>2]=f[v>>2];Wha(z,j,s,s+(B*24|0)|0)|0;a=a+72|0}while((a|0)!=(e|0))}while(0);a=f[n>>2]|0;if(a|0){e=f[o>>2]|0;if((e|0)!=(a|0))f[o>>2]=e+(~(((e+-24-a|0)>>>0)/24|0)*24|0);Zpb(a);f[k>>2]=0;f[o>>2]=0;f[n>>2]=0}a=f[z>>2]|0;f[n>>2]=a;e=f[p>>2]|0;f[o>>2]=e;f[k>>2]=f[q>>2];f[q>>2]=0;f[p>>2]=0;f[z>>2]=0;d=d+16|0}while((d|0)!=(m|0));u=A;return}function Wha(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0;m=f[a>>2]|0;h=m;k=(f[b>>2]|0)-h|0;b=m+(((k|0)/24|0)*24|0)|0;o=d-c|0;j=(o|0)/24|0;if((o|0)<=0){o=b;return o|0}l=a+8|0;g=f[l>>2]|0;o=a+4|0;n=f[o>>2]|0;e=n;if((j|0)<=((g-e|0)/24|0|0)){i=e-b|0;e=(i|0)/24|0;if((j|0)>(e|0)){h=c+(e*24|0)|0;if((h|0)==(d|0))e=n;else{g=h;e=n;do{p[e>>3]=+p[g>>3];p[e+8>>3]=+p[g+8>>3];p[e+16>>3]=+p[g+16>>3];g=g+24|0;e=e+24|0}while((g|0)!=(d|0));f[o>>2]=e}if((i|0)>0)d=h;else{o=b;return o|0}}else e=n;i=e-(b+(j*24|0))|0;g=b+(((i|0)/24|0)*24|0)|0;if(g>>>0<n>>>0){h=g;j=e;do{f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];f[j+16>>2]=f[h+16>>2];f[j+20>>2]=f[h+20>>2];p[j>>3]=+p[h>>3];p[j+8>>3]=+p[h+8>>3];p[j+16>>3]=+p[h+16>>3];h=h+24|0;j=(f[o>>2]|0)+24|0;f[o>>2]=j}while(h>>>0<n>>>0)}if(i|0)do{n=g;g=g+-24|0;o=e;e=e+-24|0;q=+p[g>>3];p[g>>3]=+p[e>>3];p[e>>3]=q;a=n+-16|0;q=+p[a>>3];m=o+-16|0;p[a>>3]=+p[m>>3];p[m>>3]=q;n=n+-8|0;q=+p[n>>3];o=o+-8|0;p[n>>3]=+p[o>>3];p[o>>3]=q}while((g|0)!=(b|0));if((d|0)==(c|0)){o=b;return o|0}else e=b;while(1){p[e>>3]=+p[c>>3];p[e+8>>3]=+p[c+8>>3];p[e+16>>3]=+p[c+16>>3];c=c+24|0;if((c|0)==(d|0))break;else e=e+24|0}return b|0}e=((e-h|0)/24|0)+j|0;if(e>>>0>178956970)fob(a);j=(g-h|0)/24|0;g=j<<1;g=j>>>0<89478485?(g>>>0<e>>>0?e:g):178956970;e=(k|0)/24|0;do if(!g)i=0;else if(g>>>0>178956970)ud();else{i=Wpb(g*24|0)|0;break}while(0);j=i+(e*24|0)|0;h=i+(g*24|0)|0;if((c|0)==(d|0))e=j;else{e=j;do{p[e>>3]=+p[c>>3];p[e+8>>3]=+p[c+8>>3];p[e+16>>3]=+p[c+16>>3];e=e+24|0;c=c+24|0}while((c|0)!=(d|0))}if(!k)c=j;else{g=b;c=j;do{k=g;g=g+-24|0;p[c+-24>>3]=+p[g>>3];p[c+-16>>3]=+p[k+-16>>3];p[c+-8>>3]=+p[k+-8>>3];c=c+-24|0}while((g|0)!=(m|0))}if((n|0)==(b|0))b=e;else{do{p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];b=b+24|0;e=e+24|0}while((b|0)!=(n|0));b=e}f[a>>2]=c;f[o>>2]=b;f[l>>2]=h;if(!m){o=j;return o|0}Zpb(m);o=j;return o|0}function Xha(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0;m=f[a>>2]|0;h=m;k=(f[b>>2]|0)-h|0;b=m+(((k|0)/24|0)*24|0)|0;o=d-c|0;j=(o|0)/24|0;if((o|0)<=0){o=b;return o|0}l=a+8|0;g=f[l>>2]|0;o=a+4|0;n=f[o>>2]|0;e=n;if((j|0)<=((g-e|0)/24|0|0)){i=e-b|0;e=(i|0)/24|0;if((j|0)>(e|0)){h=c+(e*24|0)|0;if((h|0)==(d|0))e=n;else{g=h;e=n;do{p[e>>3]=+p[g>>3];p[e+8>>3]=+p[g+8>>3];p[e+16>>3]=+p[g+16>>3];g=g+24|0;e=e+24|0}while((g|0)!=(d|0));f[o>>2]=e}if((i|0)>0)d=h;else{o=b;return o|0}}else e=n;i=e-(b+(j*24|0))|0;g=b+(((i|0)/24|0)*24|0)|0;if(g>>>0<n>>>0){h=g;j=e;do{f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];f[j+16>>2]=f[h+16>>2];f[j+20>>2]=f[h+20>>2];p[j>>3]=+p[h>>3];p[j+8>>3]=+p[h+8>>3];p[j+16>>3]=+p[h+16>>3];h=h+24|0;j=(f[o>>2]|0)+24|0;f[o>>2]=j}while(h>>>0<n>>>0)}if(i|0)do{n=g;g=g+-24|0;o=e;e=e+-24|0;q=+p[g>>3];p[g>>3]=+p[e>>3];p[e>>3]=q;a=n+-16|0;q=+p[a>>3];m=o+-16|0;p[a>>3]=+p[m>>3];p[m>>3]=q;n=n+-8|0;q=+p[n>>3];o=o+-8|0;p[n>>3]=+p[o>>3];p[o>>3]=q}while((g|0)!=(b|0));if((d|0)==(c|0)){o=b;return o|0}else e=b;while(1){p[e>>3]=+p[c>>3];p[e+8>>3]=+p[c+8>>3];p[e+16>>3]=+p[c+16>>3];c=c+24|0;if((c|0)==(d|0))break;else e=e+24|0}return b|0}e=((e-h|0)/24|0)+j|0;if(e>>>0>178956970)fob(a);j=(g-h|0)/24|0;g=j<<1;g=j>>>0<89478485?(g>>>0<e>>>0?e:g):178956970;e=(k|0)/24|0;do if(!g)i=0;else if(g>>>0>178956970)ud();else{i=Wpb(g*24|0)|0;break}while(0);j=i+(e*24|0)|0;h=i+(g*24|0)|0;if((c|0)==(d|0))e=j;else{e=j;do{p[e>>3]=+p[c>>3];p[e+8>>3]=+p[c+8>>3];p[e+16>>3]=+p[c+16>>3];e=e+24|0;c=c+24|0}while((c|0)!=(d|0))}if(!k)c=j;else{g=b;c=j;do{k=g;g=g+-24|0;p[c+-24>>3]=+p[g>>3];p[c+-16>>3]=+p[k+-16>>3];p[c+-8>>3]=+p[k+-8>>3];c=c+-24|0}while((g|0)!=(m|0))}if((n|0)==(b|0))b=e;else{do{p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];b=b+24|0;e=e+24|0}while((b|0)!=(n|0));b=e}f[a>>2]=c;f[o>>2]=b;f[l>>2]=h;if(!m){o=j;return o|0}Zpb(m);o=j;return o|0}function Yha(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if(e){c=f[d>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(c|0))k=e;else{f[e>>2]=g+(~(((g+-24-c|0)>>>0)/24|0)*24|0);k=e}}else k=d+4|0;j=f[a>>2]|0;e=j;if(((f[a+4>>2]|0)-j|0)!=32){c=f[k>>2]|0;h=d+8|0;e=f[h>>2]|0;if(c>>>0<e>>>0){p[c>>3]=+p[b>>3];p[c+8>>3]=+p[b+8>>3];p[c+16>>3]=+p[b+16>>3];g=c+24|0;f[k>>2]=g}else{aia(d,b);g=f[k>>2]|0;e=f[h>>2]|0}c=b+24|0;if(g>>>0<e>>>0){p[g>>3]=+p[c>>3];p[g+8>>3]=+p[b+32>>3];p[g+16>>3]=+p[b+40>>3];g=g+24|0;f[k>>2]=g}else{aia(d,c);g=f[k>>2]|0;e=f[h>>2]|0}c=b+48|0;if(g>>>0<e>>>0){p[g>>3]=+p[c>>3];p[g+8>>3]=+p[b+56>>3];p[g+16>>3]=+p[b+64>>3];f[k>>2]=g+24;return}else{aia(d,c);return}}j=f[k>>2]|0;c=f[d>>2]|0;g=j-c|0;h=(g|0)/24|0;i=c;if(h>>>0<6){_ha(d,6-h|0);e=f[a>>2]|0;c=f[d>>2]|0}else if((g|0)!=144){g=i+144|0;if((g|0)!=(j|0))f[k>>2]=j+(~(((j+-24-g|0)>>>0)/24|0)*24|0)}c=$ha(e,b,c)|0;h=f[k>>2]|0;e=f[d>>2]|0;g=(h-e|0)/24|0;if(c>>>0>g>>>0){_ha(d,c-g|0);return}if(c>>>0>=g>>>0)return;c=e+(c*24|0)|0;if((c|0)==(h|0))return;f[k>>2]=h+(~(((h+-24-c|0)>>>0)/24|0)*24|0);return}function Zha(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0;n=f[a>>2]|0;h=n;k=(f[b>>2]|0)-h|0;b=n+(((k|0)/24|0)*24|0)|0;c=f[c>>2]|0;e=f[d>>2]|0;q=e-c|0;j=(q|0)/24|0;l=e;if((q|0)<=0){q=b;return q|0}m=a+8|0;g=f[m>>2]|0;q=a+4|0;o=f[q>>2]|0;d=o;if((j|0)<=((g-d|0)/24|0|0)){h=d-b|0;d=(h|0)/24|0;if((j|0)>(d|0)){d=c+(d*24|0)|0;e=d;if((d|0)==(l|0))d=o;else{g=d;d=o;do{p[d>>3]=+p[g>>3];p[d+8>>3]=+p[g+8>>3];p[d+16>>3]=+p[g+16>>3];g=g+24|0;d=d+24|0}while((g|0)!=(l|0));f[q>>2]=d}if((h|0)<=0){q=b;return q|0}}else d=o;i=d-(b+(j*24|0))|0;g=b+(((i|0)/24|0)*24|0)|0;if(g>>>0<o>>>0){h=g;j=d;do{f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];f[j+16>>2]=f[h+16>>2];f[j+20>>2]=f[h+20>>2];p[j>>3]=+p[h>>3];p[j+8>>3]=+p[h+8>>3];p[j+16>>3]=+p[h+16>>3];h=h+24|0;j=(f[q>>2]|0)+24|0;f[q>>2]=j}while(h>>>0<o>>>0)}if(i|0)do{o=g;g=g+-24|0;q=d;d=d+-24|0;r=+p[g>>3];p[g>>3]=+p[d>>3];p[d>>3]=r;a=o+-16|0;r=+p[a>>3];n=q+-16|0;p[a>>3]=+p[n>>3];p[n>>3]=r;o=o+-8|0;r=+p[o>>3];q=q+-8|0;p[o>>3]=+p[q>>3];p[q>>3]=r}while((g|0)!=(b|0));if((c|0)==(e|0)){q=b;return q|0}else d=b;while(1){p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];c=c+24|0;if((c|0)==(e|0))break;else d=d+24|0}return b|0}d=((d-h|0)/24|0)+j|0;if(d>>>0>178956970)fob(a);j=(g-h|0)/24|0;e=j<<1;e=j>>>0<89478485?(e>>>0<d>>>0?d:e):178956970;d=(k|0)/24|0;do if(!e)i=0;else if(e>>>0>178956970)ud();else{i=Wpb(e*24|0)|0;break}while(0);h=i+(d*24|0)|0;g=i+(e*24|0)|0;if((c|0)==(l|0))d=h;else{d=h;do{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];d=d+24|0;c=c+24|0}while((c|0)!=(l|0))}if(!k)c=h;else{e=b;c=h;do{l=e;e=e+-24|0;p[c+-24>>3]=+p[e>>3];p[c+-16>>3]=+p[l+-16>>3];p[c+-8>>3]=+p[l+-8>>3];c=c+-24|0}while((e|0)!=(n|0))}if((o|0)==(b|0))b=d;else{do{p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];b=b+24|0;d=d+24|0}while((b|0)!=(o|0));b=d}f[a>>2]=c;f[q>>2]=b;f[m>>2]=g;if(!n){q=h;return q|0}Zpb(n);q=h;return q|0}function _ha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;e=f[k>>2]|0;l=a+4|0;d=f[l>>2]|0;i=d;if(((e-d|0)/24|0)>>>0>=b>>>0){f[l>>2]=i+(b*24|0);return}c=f[a>>2]|0;g=(d-c|0)/24|0;d=g+b|0;j=c;if(d>>>0>178956970)fob(a);m=(e-c|0)/24|0;e=m<<1;e=m>>>0<89478485?(e>>>0<d>>>0?d:e):178956970;do if(!e)h=0;else if(e>>>0>178956970)ud();else{h=Wpb(e*24|0)|0;break}while(0);d=h+(g*24|0)|0;g=h+(e*24|0)|0;e=d+(b*24|0)|0;if((i|0)!=(j|0)){c=i;do{m=c;c=c+-24|0;p[d+-24>>3]=+p[c>>3];p[d+-16>>3]=+p[m+-16>>3];p[d+-8>>3]=+p[m+-8>>3];d=d+-24|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=d;f[l>>2]=e;f[k>>2]=g;if(!c)return;Zpb(c);return}function $ha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0.0;J=u;u=u+144|0;q=J+120|0;g=J+72|0;e=J+24|0;d=J;K=+p[a>>3];o=+p[b>>3];A=b+8|0;y=+p[a+8>>3];h=+p[A>>3];B=b+16|0;z=+p[a+16>>3];i=+p[B>>3];L=+p[a+24>>3];H=b+24|0;j=+p[H>>3];C=b+32|0;k=+p[C>>3];D=b+40|0;l=+p[D>>3];I=b+48|0;m=+p[I>>3];E=b+56|0;n=+p[E>>3];F=b+64|0;r=L+(K*o+(y*h+z*i))>=0.0;s=L+(K*j+(y*k+z*l))>=0.0;t=L+(K*m+(y*n+z*+p[F>>3]))>=0.0;switch(((r&1)+(s&1)<<24>>24)+(t&1)&7){case 0:{d=c;e=b;g=d+72|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));I=3;u=J;return I|0}case 1:{v=g+24|0;x=r?q:g;w=r?g:v;p[x>>3]=o;p[x+8>>3]=h;p[x+16>>3]=i;x=s?q:w;p[x>>3]=j;p[x+8>>3]=k;p[x+16>>3]=l;w=t?q:s?w:w+24|0;p[w>>3]=m;p[w+8>>3]=n;p[w+16>>3]=+p[F>>3];w=d+8|0;t=d+16|0;bia(d,a,q,g);K=+p[d>>3];p[e>>3]=K;L=+p[w>>3];p[e+8>>3]=L;h=+p[t>>3];p[e+16>>3]=h;bia(d,a,q,v);z=+p[d>>3];v=e+24|0;p[d>>3]=+p[v>>3];p[v>>3]=z;o=+p[w>>3];v=e+32|0;p[w>>3]=+p[v>>3];p[v>>3]=o;y=+p[t>>3];p[e+40>>3]=y;j=+p[g>>3];p[c>>3]=j;k=+p[g+8>>3];t=c+8|0;p[t>>3]=k;l=+p[g+16>>3];v=c+16|0;p[v>>3]=l;m=+p[g+24>>3];w=c+24|0;p[w>>3]=m;n=+p[g+32>>3];x=c+32|0;p[x>>3]=n;i=+p[g+40>>3];q=c+40|0;p[q>>3]=i;p[c+48>>3]=K;p[c+56>>3]=L;p[c+64>>3]=h;r=c+72|0;p[r>>3]=m;s=c+80|0;p[s>>3]=n;d=c+88|0;p[d>>3]=i;e=c+96|0;p[e>>3]=z;g=c+104|0;p[g>>3]=o;a=c+112|0;p[a>>3]=y;p[c+120>>3]=K;p[c+128>>3]=L;p[c+136>>3]=h;h=+p[b>>3];if(j==h)if(k==+p[A>>3])if(l==+p[B>>3])if(m==+p[H>>3])if(n==+p[C>>3]){if(!(i==+p[D>>3]))G=9}else G=9;else G=9;else G=9;else G=9;else G=9;do if((G|0)==9){if(j==+p[H>>3])if(k==+p[C>>3])if(l==+p[D>>3])if(m==+p[I>>3])if(n==+p[E>>3])if(i==+p[F>>3])break;if(j==+p[I>>3])if(k==+p[E>>3])if(m==h?l==+p[F>>3]:0)if(n==+p[A>>3])if(i==+p[B>>3])break;p[c>>3]=m;p[t>>3]=n;p[v>>3]=i;p[w>>3]=j;p[x>>3]=k;p[q>>3]=l;p[r>>3]=z;p[s>>3]=o;p[d>>3]=y;p[e>>3]=m;p[g>>3]=n;p[a>>3]=i}while(0);I=6;u=J;return I|0}case 2:{d=c;e=b;g=d+72|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=b+((s&t?0:s?2:1)*24|0)|0;e=q+8|0;g=q+16|0;if(r){bia(q,a,d,b);L=+p[q>>3];p[q>>3]=+p[c>>3];p[c>>3]=L;L=+p[e>>3];b=c+8|0;p[e>>3]=+p[b>>3];p[b>>3]=L;p[c+16>>3]=+p[g>>3]}if(s){bia(q,a,d,H);L=+p[q>>3];H=c+24|0;p[q>>3]=+p[H>>3];p[H>>3]=L;L=+p[e>>3];H=c+32|0;p[e>>3]=+p[H>>3];p[H>>3]=L;p[c+40>>3]=+p[g>>3]}if(!t){I=3;u=J;return I|0}bia(q,a,d,I);L=+p[q>>3];I=c+48|0;p[q>>3]=+p[I>>3];p[I>>3]=L;L=+p[e>>3];I=c+56|0;p[e>>3]=+p[I>>3];p[I>>3]=L;p[c+64>>3]=+p[g>>3];I=3;u=J;return I|0}default:{I=0;u=J;return I|0}}return 0}function aia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<c>>>0?c:e):178956970;do if(!e)g=0;else if(e>>>0>178956970)ud();else{g=Wpb(e*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(e*24|0)|0;p[c>>3]=+p[b>>3];p[g+(h*24|0)+8>>3]=+p[b+8>>3];p[g+(h*24|0)+16>>3]=+p[b+16>>3];e=c+24|0;if((d|0)!=(j|0))do{h=d;d=d+-24|0;p[c+-24>>3]=+p[d>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-24|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;Zpb(m);return}function bia(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0;g=c;h=d;v=+p[c>>3];w=+p[d>>3];if(v<w)i=6;else if(v>w)j=h;else{e=+p[c+8>>3];f=+p[d+8>>3];if(e<f)i=6;else if(e>f)j=h;else if(+p[c+16>>3]<+p[d+16>>3])i=6;else j=h}if((i|0)==6){j=g;g=h}s=+p[b+24>>3];t=+p[b>>3];u=+p[b+8>>3];r=+p[b+16>>3];q=-s/(t*t+(u*u+r*r));b=j;h=g;l=+p[h>>3];m=+p[b>>3]-l;g=h+8|0;e=+p[g>>3];n=+p[b+8>>3]-e;h=h+16|0;f=+p[h>>3];o=+p[b+16>>3]-f;k=t*m+(u*n+r*o);if(!(k==0.0)){e=(t*(t*q-l)+(u*(u*q-e)+r*(r*q-f)))/k;if(e>=-1.0e-07&e<=1.0000001){p[a>>3]=l+m*e;p[a+8>>3]=n*e+ +p[g>>3];w=o*e+ +p[h>>3];d=a+16|0;p[d>>3]=w;return}}l=w-v;m=+p[c+8>>3];n=+p[d+8>>3]-m;o=+p[c+16>>3];w=+p[d+16>>3]-o;q=+L(+(l*l+(n*n+w*w)));l=l/q;n=n/q;q=w/q;w=-(s+(v*t+(m*u+o*r)))/(l*t+(n*u+q*r));p[a>>3]=v+l*w;p[a+8>>3]=m+n*w;w=o+q*w;d=a+16|0;p[d>>3]=w;return}function cia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0;D=u;u=u+80|0;o=D+48|0;q=D;g=+p[b>>3];p[q>>3]=g;A=b+8|0;k=+p[A>>3];B=q+8|0;p[B>>3]=k;C=b+16|0;i=+p[C>>3];t=q+16|0;p[t>>3]=i;s=q+24|0;v=b+24|0;j=+p[v>>3];p[s>>3]=j;w=b+32|0;h=+p[w>>3];x=q+32|0;p[x>>3]=h;y=b+40|0;d=+p[y>>3];z=q+40|0;p[z>>3]=d;e=f[a>>2]|0;l=f[a+4>>2]|0;do if((e|0)==(l|0))h=g;else{m=o+8|0;n=o+16|0;while(1){G=+p[e>>3];F=+p[e+8>>3];E=+p[e+16>>3];H=+p[e+24>>3];a=H+(G*g+(F*k+E*i))<0.0;if(a^H+(G*j+(F*h+E*d))<0.0){bia(o,e,q,s);a=(a^1)&1;H=+p[o>>3];I=q+(a*24|0)|0;p[o>>3]=+p[I>>3];p[I>>3]=H;H=+p[m>>3];I=q+(a*24|0)+8|0;p[m>>3]=+p[I>>3];p[I>>3]=H;p[q+(a*24|0)+16>>3]=+p[n>>3]}else if(a)break;e=e+32|0;g=+p[q>>3];if((e|0)==(l|0)){r=9;break}k=+p[B>>3];i=+p[t>>3];j=+p[s>>3];h=+p[x>>3];d=+p[z>>3]}if((r|0)==9){h=+p[b>>3];break}p[c>>3]=+p[b>>3];p[c+8>>3]=+p[A>>3];p[c+16>>3]=+p[C>>3];p[c+24>>3]=+p[v>>3];p[c+32>>3]=+p[w>>3];p[c+40>>3]=+p[y>>3];I=1;u=D;return I|0}while(0);if(g==h){if(+p[B>>3]==+p[A>>3])if(+p[t>>3]==+p[C>>3])if(+p[s>>3]==+p[v>>3])if(+p[x>>3]==+p[w>>3])if(+p[z>>3]==+p[y>>3]){I=0;u=D;return I|0}if(+p[B>>3]==+p[A>>3])if(+p[t>>3]==+p[C>>3]){p[c>>3]=+p[s>>3];p[c+8>>3]=+p[x>>3];p[c+16>>3]=+p[z>>3];p[c+24>>3]=+p[v>>3];p[c+32>>3]=+p[w>>3];p[c+40>>3]=+p[y>>3];I=1;u=D;return I|0}}d=+p[s>>3];if(d==+p[v>>3])if(+p[x>>3]==+p[w>>3])e=+p[z>>3]==+p[y>>3];else e=0;else e=0;p[c>>3]=h;p[c+8>>3]=+p[A>>3];p[c+16>>3]=+p[C>>3];p[c+24>>3]=g;p[c+32>>3]=+p[B>>3];p[c+40>>3]=+p[t>>3];if(e){I=1;u=D;return I|0}p[c+48>>3]=d;p[c+56>>3]=+p[x>>3];p[c+64>>3]=+p[z>>3];p[c+72>>3]=+p[v>>3];p[c+80>>3]=+p[w>>3];p[c+88>>3]=+p[y>>3];I=2;u=D;return I|0}function dia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+8|0;d=f[i>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Krb(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}h=f[a>>2]|0;g=c-h|0;e=g>>2;c=e+b|0;if(c>>>0>1073741823)fob(a);m=d-h|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){j=0;k=0}else if(d>>>0>1073741823)ud();else{k=Wpb(d<<2)|0;j=k;break}while(0);c=j+(e<<2)|0;Krb(c|0,0,b<<2|0)|0;if((g|0)>0)Irb(k|0,h|0,g|0)|0;f[a>>2]=j;f[l>>2]=c+(b<<2);f[i>>2]=j+(d<<2);if(!h)return;Zpb(h);return}function eia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!(b[209640]|0))if(rrb(209640)|0){f[52730]=0;f[52731]=0;f[52732]=0}e=f[52731]|0;if((f[52730]|0)==(e|0)){m=0;l=0;k=0;n=a+4|0;f[a>>2]=k;f[n>>2]=l;n=a+8|0;f[n>>2]=m;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;m=e+-8|0;n=f[m>>2]|0;l=e+-4|0;g=f[l>>2]|0;f[l>>2]=0;f[m>>2]=0;f[h>>2]=0;h=f[52731]|0;m=h+-12|0;while(1){e=h+-12|0;f[52731]=e;l=f[e>>2]|0;if(l){k=h+-8|0;h=f[k>>2]|0;if((h|0)==(l|0))e=l;else{do{i=h+-16|0;f[k>>2]=i;j=f[h+-4>>2]|0;if(j|0)rha(j,i);j=f[i>>2]|0;if(j|0){h=h+-12|0;i=f[h>>2]|0;if((i|0)!=(j|0))f[h>>2]=i+(~((i+-4-j|0)>>>2)<<2);Zpb(j)}h=f[k>>2]|0}while((h|0)!=(l|0));e=f[e>>2]|0}Zpb(e);e=f[52731]|0}if((e|0)==(m|0)){e=n;break}else h=e}n=a+4|0;f[a>>2]=d;f[n>>2]=e;n=a+8|0;f[n>>2]=g;a=a+12|0;f[a>>2]=c;return}function fia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!(b[209632]|0))if(rrb(209632)|0){f[52727]=0;f[52728]=0;f[52729]=0}e=f[52728]|0;if((f[52727]|0)==(e|0)){m=0;l=0;k=0;n=a+4|0;f[a>>2]=k;f[n>>2]=l;n=a+8|0;f[n>>2]=m;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;m=e+-8|0;n=f[m>>2]|0;l=e+-4|0;g=f[l>>2]|0;f[l>>2]=0;f[m>>2]=0;f[h>>2]=0;h=f[52728]|0;m=h+-12|0;while(1){e=h+-12|0;f[52728]=e;l=f[e>>2]|0;if(l){k=h+-8|0;h=f[k>>2]|0;if((h|0)==(l|0))e=l;else{do{j=h+-24|0;f[k>>2]=j;i=f[h+-4>>2]|0;if(i|0)iia(i,j);h=f[h+-16>>2]|0;if(h|0)do{i=h;h=f[h>>2]|0;Zpb(i)}while((h|0)!=0);h=f[j>>2]|0;f[j>>2]=0;if(h|0)Zpb(h);h=f[k>>2]|0}while((h|0)!=(l|0));e=f[e>>2]|0}Zpb(e);e=f[52728]|0}if((e|0)==(m|0)){e=n;break}else h=e}n=a+4|0;f[a>>2]=d;f[n>>2]=e;n=a+8|0;f[n>>2]=g;a=a+12|0;f[a>>2]=c;return}function gia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p;if(!(b[209648]|0))if(rrb(209648)|0){f[52733]=0;f[52734]=0;f[52735]=0}d=f[52734]|0;if((f[52733]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=c;u=p;return}k=d+-20|0;h=f[k>>2]|0;f[k>>2]=0;k=d+-16|0;g=f[k>>2]|0;f[k>>2]=0;f[o>>2]=h;k=o+4|0;f[k>>2]=g;m=o+8|0;i=d+-12|0;e=f[i>>2]|0;f[m>>2]=e;j=d+-8|0;n=o+12|0;q=f[j>>2]|0;f[n>>2]=q;l=o+16|0;f[l>>2]=f[d+-4>>2];if(q|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=m;f[i>>2]=0;f[j>>2]=0}d=f[52734]|0;e=d+-20|0;do{g=d+-20|0;f[52734]=g;d=f[d+-12>>2]|0;if(d|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0);d=f[g>>2]|0;f[g>>2]=0;if(d|0)Zpb(d);d=f[52734]|0}while((d|0)!=(e|0));g=f[o>>2]|0;f[o>>2]=0;h=f[k>>2]|0;f[k>>2]=0;f[a>>2]=g;f[a+4>>2]=h;i=a+8|0;e=f[m>>2]|0;f[i>>2]=e;q=f[n>>2]|0;f[a+12>>2]=q;f[a+16>>2]=f[l>>2];d=e;if(!q){f[a+20>>2]=c;if(e|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0)}else{d=f[d+4>>2]|0;e=h+-1|0;if(!(e&h))d=d&e;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[g+(d<<2)>>2]=i;f[m>>2]=0;f[n>>2]=0;f[a+20>>2]=c}d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);u=p;return}function hia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=a+4|0;c=f[a>>2]|0;l=((f[r>>2]|0)-c|0)/24|0;d=l+1|0;if(d>>>0>178956970)fob(a);s=a+8|0;q=((f[s>>2]|0)-c|0)/24|0;c=q<<1;c=q>>>0<89478485?(c>>>0<d>>>0?d:c):178956970;do if(!c)k=0;else if(c>>>0>178956970)ud();else{k=Wpb(c*24|0)|0;break}while(0);n=k+(l*24|0)|0;m=n;q=k+(c*24|0)|0;j=f[b>>2]|0;f[b>>2]=0;g=b+4|0;e=f[g>>2]|0;f[g>>2]=0;f[n>>2]=j;f[k+(l*24|0)+4>>2]=e;g=k+(l*24|0)+8|0;h=b+8|0;c=f[h>>2]|0;f[g>>2]=c;i=b+12|0;p=f[i>>2]|0;f[k+(l*24|0)+12>>2]=p;f[k+(l*24|0)+16>>2]=f[b+16>>2];if(p|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;f[j+(c<<2)>>2]=g;f[h>>2]=0;f[i>>2]=0}p=b+20|0;f[k+(l*24|0)+20>>2]=f[p>>2];f[p>>2]=0;p=n+24|0;o=f[a>>2]|0;c=f[r>>2]|0;if((c|0)==(o|0)){c=m;h=o;e=o}else{i=n;do{h=c;c=c+-24|0;l=f[c>>2]|0;f[c>>2]=0;j=h+-20|0;g=f[j>>2]|0;f[j>>2]=0;f[i+-24>>2]=l;f[i+-20>>2]=g;j=i+-16|0;b=h+-16|0;d=f[b>>2]|0;f[j>>2]=d;k=h+-12|0;n=f[k>>2]|0;f[i+-12>>2]=n;f[i+-8>>2]=f[h+-8>>2];if(n|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[l+(d<<2)>>2]=j;f[b>>2]=0;f[k>>2]=0}n=h+-4|0;f[i+-4>>2]=f[n>>2];f[n>>2]=0;i=m+-24|0;m=i}while((c|0)!=(o|0));c=m;h=f[a>>2]|0;e=f[r>>2]|0}f[a>>2]=c;f[r>>2]=p;f[s>>2]=q;g=h;if((e|0)!=(g|0))do{c=e;e=e+-24|0;d=f[c+-4>>2]|0;if(d|0)iia(d,e);c=f[c+-16>>2]|0;if(c|0)do{s=c;c=f[c>>2]|0;Zpb(s)}while((c|0)!=0);c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c)}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function iia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=c+4|0;d=f[h>>2]|0;if(!d)return;j=c+12|0;if(f[j>>2]|0){e=c+8|0;a=f[e>>2]|0;if(!a){f[e>>2]=0;g=7}else{do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);a=f[h>>2]|0;f[e>>2]=0;if(a|0){d=a;g=7}}if((g|0)==7){a=0;do{f[(f[c>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[j>>2]=0}if(!(b[209648]|0))if(rrb(209648)|0){f[52733]=0;f[52734]=0;f[52735]=0}a=f[52734]|0;if(a>>>0>=(f[52735]|0)>>>0){Mia(210932,c);return}e=f[c>>2]|0;f[c>>2]=0;g=f[h>>2]|0;f[h>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){a=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))a=a&d;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;f[e+(a<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}f[52734]=(f[52734]|0)+20;return}function jia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;m=p+8|0;j=p;n=a+4|0;e=f[n>>2]|0;if(e>>>0>=b>>>0){f[n>>2]=b;u=p;return}o=a+8|0;h=f[o>>2]|0;g=h<<5;d=b-e|0;if(g>>>0<d>>>0|e>>>0>(g-d|0)>>>0){f[m>>2]=0;k=m+4|0;f[k>>2]=0;l=m+8|0;f[l>>2]=0;if((b|0)<0)fob(a);e=h<<6;h=b+31&-32;ry(m,g>>>0<1073741823?(e>>>0<h>>>0?h:e):2147483647);g=f[n>>2]|0;f[k>>2]=g+d;e=f[a>>2]|0;h=e;b=f[m>>2]|0;g=(h+(g>>>5<<2)-e<<3)+(g&31)|0;if((g|0)>0){i=g>>>5;Jrb(b|0,e|0,i<<2|0)|0;e=g&31;g=b+(i<<2)|0;b=g;if(!e)e=0;else{q=-1>>>(32-e|0);f[g>>2]=f[g>>2]&~q|f[h+(i<<2)>>2]&q}}else e=0;f[j>>2]=b;f[j+4>>2]=e;g=j;b=f[g>>2]|0;g=f[g+4>>2]|0;e=f[a>>2]|0;f[a>>2]=f[m>>2];f[m>>2]=e;q=f[n>>2]|0;f[n>>2]=f[k>>2];f[k>>2]=q;q=f[o>>2]|0;f[o>>2]=f[l>>2];f[l>>2]=q;if(e|0)Zpb(e)}else{g=(f[a>>2]|0)+(e>>>5<<2)|0;f[n>>2]=b;b=g;g=e&31}if(!d){u=p;return}h=(g|0)==0;e=b;if(c){if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]|-1>>>(q-b|0)&-1<<g;e=e+4|0;d=d-b|0;b=e}q=d>>>5;Krb(b|0,-1,q<<2|0)|0;d=d&31;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]|-1>>>(32-d|0);u=p;return}else{if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]&~(-1>>>(q-b|0)&-1<<g);e=e+4|0;d=d-b|0;b=e}q=d>>>5;Krb(b|0,0,q<<2|0)|0;d=d&31;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]&~(-1>>>(32-d|0));u=p;return}}function kia(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p;_ga(n,f[52698]|0);b=a+72|0;if((n|0)!=(b|0))tia(n,f[b>>2]|0,f[a+76>>2]|0);c=a+104|0;o=n+4|0;b=f[o>>2]|0;m=n+8|0;if((b|0)==(f[m>>2]|0)){BD(n,c);l=o;b=f[o>>2]|0}else{f[b>>2]=f[c>>2];b=b+4|0;f[o>>2]=b;l=o}c=f[n>>2]|0;j=(b-c>>2)+-1|0;a:do if(j|0){k=a+16|0;b=0;while(1){i=f[c+(b<<2)>>2]|0;b=b+1|0;e=f[c+(b<<2)>>2]|0;d=f[k>>2]|0;c=f[d+(i<<4)>>2]|0;i=d+(i<<4)+4|0;d=f[i>>2]|0;h=d;b:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(e|0))break b;c=c+4|0;if((c|0)==(d|0)){c=d;break}}while(0);g=c+4|0;e=h-g|0;h=e>>2;if(h){Jrb(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2);if((b|0)==(j|0))break a;c=f[n>>2]|0}}while(0);b=a+92|0;c=f[b>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=0;a=c+4|0;f[a>>2]=0;f[c+8>>2]=0;f[c>>2]=f[n>>2];f[a>>2]=f[l>>2];f[c+8>>2]=f[m>>2];f[m>>2]=0;f[o>>2]=0;f[n>>2]=0;a=n+12|0;f[c+12>>2]=f[a>>2];f[a>>2]=0;f[b>>2]=(f[b>>2]|0)+16}else{sia(a+88|0,n);b=f[n+12>>2]|0;if(b|0)rha(b,n)}b=f[n>>2]|0;if(!b){u=p;return}c=f[o>>2]|0;if((c|0)!=(b|0))f[o>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b);u=p;return}function lia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+32|0;t=w+16|0;s=w;eia(t,f[52698]|0);v=c+4|0;d=f[v>>2]|0;g=f[c>>2]|0;a:do if((d-g|0)==((f[b+4>>2]|0)-(f[b>>2]|0)|0)){n=b+16|0;h=(f[b+20>>2]|0)-(f[n>>2]|0)>>4;if(!h){d=t+4|0;break}d=t+4|0;i=t+8|0;j=s+4|0;k=s+8|0;l=s+12|0;m=0;do{_ga(s,f[52698]|0);e=f[d>>2]|0;if(e>>>0<(f[i>>2]|0)>>>0){f[e>>2]=0;r=e+4|0;f[r>>2]=0;f[e+8>>2]=0;f[e>>2]=f[s>>2];f[r>>2]=f[j>>2];f[e+8>>2]=f[k>>2];f[k>>2]=0;f[j>>2]=0;f[s>>2]=0;f[e+12>>2]=f[l>>2];f[l>>2]=0;f[d>>2]=e+16}else{sia(t,s);e=f[l>>2]|0;if(e|0)rha(e,s)}e=f[s>>2]|0;if(e|0){b=f[j>>2]|0;if((b|0)!=(e|0))f[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);Zpb(e)}e=f[n>>2]|0;b=e+(m<<4)|0;g=(f[d>>2]|0)+-16|0;if((g|0)!=(b|0))tia(g,f[b>>2]|0,f[e+(m<<4)+4>>2]|0);m=m+1|0}while((m|0)!=(h|0))}else{h=d;e=g;d=t+4|0;r=b+16|0;k=b+20|0;b=f[r>>2]|0;if(((f[d>>2]|0)-(f[t>>2]|0)|0)>>>0<((f[k>>2]|0)-b|0)>>>0){g=t+8|0;h=s+4|0;i=s+8|0;j=s+12|0;do{_ga(s,f[52698]|0);e=f[d>>2]|0;if(e>>>0<(f[g>>2]|0)>>>0){f[e>>2]=0;q=e+4|0;f[q>>2]=0;f[e+8>>2]=0;f[e>>2]=f[s>>2];f[q>>2]=f[h>>2];f[e+8>>2]=f[i>>2];f[i>>2]=0;f[h>>2]=0;f[s>>2]=0;f[e+12>>2]=f[j>>2];f[j>>2]=0;f[d>>2]=e+16}else{sia(t,s);e=f[j>>2]|0;if(e|0)rha(e,s)}e=f[s>>2]|0;if(e|0){b=f[h>>2]|0;if((b|0)!=(e|0))f[h>>2]=b+(~((b+-4-e|0)>>>2)<<2);Zpb(e)}b=f[r>>2]|0}while(((f[d>>2]|0)-(f[t>>2]|0)|0)>>>0<((f[k>>2]|0)-b|0)>>>0);g=f[c>>2]|0;e=g;h=f[v>>2]|0}if((e|0)!=(h|0)){q=h;while(1){o=f[e>>2]|0;p=q;i=f[b+(o<<4)>>2]|0;n=f[b+(o<<4)+4>>2]|0;b:do if((i|0)!=(n|0))while(1){m=f[i>>2]|0;f[s>>2]=m;b=p-g>>2;if(!b)b=g;else{l=b;b=g;while(1){x=(l|0)/2|0;k=g+(x<<2)|0;j=(f[k>>2]|0)>>>0<m>>>0;k=k+4|0;b=j?k:b;l=j?l+-1-x|0:x;if(!l)break;else g=j?k:g}}g=b;if((b|0)==(q|0))break;do if((m|0)==(f[b>>2]|0)){b=f[t>>2]|0;j=b+(o<<4)+4|0;k=f[j>>2]|0;if((k|0)==(f[b+(o<<4)+8>>2]|0)){BD(b+(o<<4)|0,s);break}else{f[k>>2]=m;f[j>>2]=k+4;break}}while(0);i=i+4|0;if((i|0)==(n|0))break b}while(0);e=e+4|0;if((e|0)==(h|0))break a;q=f[v>>2]|0;b=f[r>>2]|0;g=f[c>>2]|0}}}while(0);f[a>>2]=f[c>>2];f[a+4>>2]=f[v>>2];x=c+8|0;f[a+8>>2]=f[x>>2];f[x>>2]=0;f[v>>2]=0;f[c>>2]=0;x=c+12|0;f[a+12>>2]=f[x>>2];f[x>>2]=0;f[a+16>>2]=f[t>>2];f[a+20>>2]=f[d>>2];x=t+8|0;f[a+24>>2]=f[x>>2];f[x>>2]=0;f[d>>2]=0;f[t>>2]=0;x=t+12|0;f[a+28>>2]=f[x>>2];f[x>>2]=0;nia(t);u=w;return}function mia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+12|0;c=f[i>>2]|0;if(c|0)Jia(c,a);d=f[a>>2]|0;if(!d){c=a+4|0;d=a+8|0}else{c=a+4|0;e=f[c>>2]|0;if((e|0)!=(d|0)){do{g=e+-16|0;f[c>>2]=g;h=f[e+-4>>2]|0;if(h|0)rha(h,g);h=f[g>>2]|0;if(h|0){e=e+-12|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~((g+-4-h|0)>>>2)<<2);Zpb(h)}e=f[c>>2]|0}while((e|0)!=(d|0));d=f[a>>2]|0}Zpb(d);d=a+8|0;f[d>>2]=0;f[c>>2]=0;f[a>>2]=0}f[a>>2]=f[b>>2];a=b+4|0;f[c>>2]=f[a>>2];h=b+8|0;f[d>>2]=f[h>>2];f[h>>2]=0;f[a>>2]=0;f[b>>2]=0;b=b+12|0;f[i>>2]=f[b>>2];f[b>>2]=0;return}function nia(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+12>>2]|0;if(b|0)Jia(b,a);b=f[a>>2]|0;if(!b)return;g=a+4|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{e=c+-16|0;f[g>>2]=e;d=f[c+-4>>2]|0;if(d|0)rha(d,e);e=f[e>>2]|0;if(e|0){c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}c=f[g>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function oia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;m=r;n=r+8|0;q=r+16|0;o=r+4|0;f[n>>2]=c;p=a+16|0;d=f[p>>2]|0;if((d|0)==(f[a+20>>2]|0))BD(a+12|0,n);else{f[d>>2]=c;f[p>>2]=d+4}g=f[n>>2]|0;l=a+28|0;d=f[l>>2]|0;i=a+8|0;c=f[i>>2]|0;h=d+(g*12|0)|0;f[h>>2]=c;j=d+(g*12|0)+4|0;f[j>>2]=c;b[d+(g*12|0)+8>>0]=1;f[i>>2]=c+1;i=f[n>>2]|0;g=f[f[a+4>>2]>>2]|0;e=f[g+(i<<4)>>2]|0;i=f[g+(i<<4)+4>>2]|0;if((e|0)!=(i|0)){while(1){g=f[e>>2]|0;c=f[d+(g*12|0)>>2]|0;if((c|0)==-1){oia(a,g);c=f[d+(g*12|0)+4>>2]|0;k=10}else if(b[d+(g*12|0)+8>>0]|0)k=10;if((k|0)==10){k=0;g=f[j>>2]|0;f[j>>2]=c>>>0<g>>>0?c:g}c=e+4|0;if((c|0)==(i|0))break;d=f[l>>2]|0;e=c}c=f[h>>2]|0}if((f[j>>2]|0)!=(c|0)){u=r;return}_ga(q,f[52698]|0);g=q+4|0;e=q+8|0;do{d=(f[p>>2]|0)+-4|0;c=f[d>>2]|0;f[o>>2]=c;f[p>>2]=d;b[(f[l>>2]|0)+(c*12|0)+8>>0]=0;d=f[g>>2]|0;if((d|0)==(f[e>>2]|0))BD(q,o);else{f[d>>2]=c;f[g>>2]=d+4}}while((f[o>>2]|0)!=(f[n>>2]|0));Feb(f[q>>2]|0,f[g>>2]|0,m);c=a+48|0;d=f[c>>2]|0;if(d>>>0<(f[a+52>>2]|0)>>>0){f[d>>2]=0;a=d+4|0;f[a>>2]=0;f[d+8>>2]=0;f[d>>2]=f[q>>2];f[a>>2]=f[g>>2];f[d+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[q>>2]=0;a=q+12|0;f[d+12>>2]=f[a>>2];f[a>>2]=0;f[c>>2]=(f[c>>2]|0)+16}else{sia(a+44|0,q);c=f[q+12>>2]|0;if(c|0)rha(c,q)}c=f[q>>2]|0;if(c|0){d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}u=r;return}function pia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;v=x;f[v>>2]=b;if((c|0)==1024){w=0;u=x;return w|0}o=a+72|0;w=a+76|0;d=f[w>>2]|0;if((d|0)==(f[a+80>>2]|0))BD(o,v);else{f[d>>2]=b;f[w>>2]=d+4}h=f[v>>2]|0;g=a+56|0;m=(f[g>>2]|0)+(h>>>5<<2)|0;f[m>>2]=f[m>>2]|1<<(h&31);m=f[v>>2]|0;h=f[f[a+36>>2]>>2]|0;j=h+(m<<4)|0;d=f[j>>2]|0;m=h+(m<<4)+4|0;h=f[m>>2]|0;do if((d|0)==(h|0))t=17;else{i=a+104|0;e=c+1|0;b=0;a:while(1){c=f[d>>2]|0;b:do if((c|0)==(f[i>>2]|0))if((f[w>>2]|0)-(f[o>>2]|0)>>2>>>0<3)b=1;else{t=9;break a}else if(!(f[(f[g>>2]|0)+(c>>>5<<2)>>2]&1<<(c&31))){switch(pia(a,c,e)|0){case 2:{b=2;t=52;break a}case 1:break;default:break b}b=1}while(0);d=d+4|0;if((d|0)==(h|0)){t=15;break}}if((t|0)==9){kia(a);b=f[o>>2]|0;d=f[w>>2]|0;if((d|0)==(b|0)){w=2;u=x;return w|0}f[w>>2]=d+(~((d+-4-b|0)>>>2)<<2);w=2;u=x;return w|0}else if((t|0)==15){if(!b){t=17;break}Gia(a,f[v>>2]|0);b=1;break}else if((t|0)==52){u=x;return b|0}}while(0);if((t|0)==17){b=f[j>>2]|0;s=f[m>>2]|0;if((b|0)==(s|0))b=0;else{r=a+40|0;while(1){a=f[b>>2]|0;p=f[r>>2]|0;q=p+(a*24|0)|0;o=f[v>>2]|0;h=p+(a*24|0)+4|0;i=f[h>>2]|0;j=(i|0)==0;c:do if(j){d=0;t=35}else{g=i+-1|0;e=(g&i|0)==0;if(e)d=g&o;else if(o>>>0<i>>>0)d=o;else d=(o>>>0)%(i>>>0)|0;c=f[(f[q>>2]|0)+(d<<2)>>2]|0;if(!c)t=35;else{if(e)while(1){c=f[c>>2]|0;if(!c){t=35;break c}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&g|0)==(d|0))){t=35;break c}if((f[c+8>>2]|0)==(o|0))break c}do{c=f[c>>2]|0;if(!c){t=35;break c}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(d|0)){t=35;break c}}}while((f[c+8>>2]|0)!=(o|0))}}while(0);if((t|0)==35){t=0;g=Wpb(12)|0;f[g+8>>2]=o;f[g+4>>2]=o;f[g>>2]=0;m=p+(a*24|0)+12|0;k=+(((f[m>>2]|0)+1|0)>>>0);l=+n[p+(a*24|0)+16>>2];do if(j|l*+(i>>>0)<k){d=i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1;c=~~+W(+(k/l))>>>0;Hia(q,d>>>0<c>>>0?c:d);d=f[h>>2]|0;c=d+-1|0;if(!(c&d)){e=d;d=c&o;break}if(o>>>0<d>>>0){e=d;d=o}else{e=d;d=(o>>>0)%(d>>>0)|0}}else e=i;while(0);c=(f[q>>2]|0)+(d<<2)|0;d=f[c>>2]|0;if(!d){d=p+(a*24|0)+8|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[c>>2]=d;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;c=e+-1|0;if(!(c&e))d=d&c;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;d=(f[q>>2]|0)+(d<<2)|0;t=48}}else{f[g>>2]=f[d>>2];t=48}if((t|0)==48){t=0;f[d>>2]=g}f[m>>2]=(f[m>>2]|0)+1}b=b+4|0;if((b|0)==(s|0)){b=0;break}}}}f[w>>2]=(f[w>>2]|0)+-4;w=b;u=x;return w|0}function qia(a,c){a=a|0;c=c|0;var d=0,e=0;d=c+8|0;if(!(f[d>>2]&134217727))return;e=c+4|0;f[e>>2]=0;if(!(b[209616]|0))if(rrb(209616)|0){f[52721]=0;f[52722]=0;f[52723]=0}a=f[52722]|0;if(a>>>0<(f[52723]|0)>>>0){f[a>>2]=f[c>>2];f[a+4>>2]=f[e>>2];f[a+8>>2]=f[d>>2];f[c>>2]=0;f[e>>2]=0;f[d>>2]=0;f[52722]=a+12;return}else{Fia(210884,c);return}}function ria(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[c>>2]|0;g=i;if((f[h>>2]|0)==(i|0))return;i=c+4|0;a=f[i>>2]|0;if((a|0)!=(g|0))do{e=a+-24|0;f[i>>2]=e;d=f[a+-4>>2]|0;if(d|0)iia(d,e);a=f[a+-16>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;Zpb(d)}while((a|0)!=0);a=f[e>>2]|0;f[e>>2]=0;if(a|0)Zpb(a);a=f[i>>2]|0}while((a|0)!=(g|0));if(!(b[209632]|0))if(rrb(209632)|0){f[52727]=0;f[52728]=0;f[52729]=0}a=f[52728]|0;if(a>>>0<(f[52729]|0)>>>0){f[a>>2]=0;g=a+4|0;f[g>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[g>>2]=f[i>>2];f[a+8>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[c>>2]=0;f[52728]=a+12;return}else{Dia(210908,c);return}}function sia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=(f[j>>2]|0)-c>>4;d=h+1|0;if(d>>>0>268435455)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>3;c=i>>4>>>0<134217727?(c>>>0<d>>>0?d:c):268435455;do if(!c)g=0;else if(c>>>0>268435455)ud();else{g=Wpb(c<<4)|0;break}while(0);d=g+(h<<4)|0;e=d;i=g+(c<<4)|0;f[g+(h<<4)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h<<4)+4>>2]=f[c>>2];l=b+8|0;f[g+(h<<4)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;b=b+12|0;f[g+(h<<4)+12>>2]=f[b>>2];f[b>>2]=0;g=d+16|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b}else{do{h=d+-16|0;l=c;c=c+-16|0;f[h>>2]=0;m=d+-12|0;f[m>>2]=0;f[d+-8>>2]=0;f[h>>2]=f[c>>2];h=l+-12|0;f[m>>2]=f[h>>2];m=l+-8|0;f[d+-8>>2]=f[m>>2];f[m>>2]=0;f[h>>2]=0;f[c>>2]=0;l=l+-4|0;f[d+-4>>2]=f[l>>2];f[l>>2]=0;d=e+-16|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;b=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((b|0)!=(g|0))do{d=b;b=b+-16|0;c=f[d+-4>>2]|0;if(c|0)rha(c,b);e=f[b>>2]|0;if(e|0){c=d+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}}while((b|0)!=(g|0));if(!h)return;Zpb(h);return}function tia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c;h=b;i=j-h|0;g=i>>2;k=a+8|0;d=f[k>>2]|0;m=f[a>>2]|0;l=m;if(g>>>0<=d-m>>2>>>0){i=a+4|0;e=(f[i>>2]|0)-m>>2;a=g>>>0>e>>>0;g=a?b+(e<<2)|0:c;e=g;d=e-h|0;c=d>>2;if(c|0)Jrb(m|0,b|0,d|0)|0;c=l+(c<<2)|0;if(a){d=j-e|0;if((d|0)<=0)return;Irb(f[i>>2]|0,g|0,d|0)|0;f[i>>2]=(f[i>>2]|0)+(d>>>2<<2);return}else{d=f[i>>2]|0;if((d|0)==(c|0))return;f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2);return}}e=m;if(m){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~((c+-4-m|0)>>>2)<<2);Zpb(e);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(g>>>0>1073741823)fob(a);m=d>>1;d=d>>2>>>0<536870911?(m>>>0<g>>>0?g:m):1073741823;if(d>>>0>1073741823)fob(a);c=Wpb(d<<2)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[k>>2]=c+(d<<2);if((i|0)<=0)return;Irb(c|0,b|0,i|0)|0;f[e>>2]=c+(i>>>2<<2);return}function uia(a){a=a|0;var b=0,c=0,d=0;b=a+84|0;c=f[a+96>>2]|0;if(c|0)via(c,b);b=f[b>>2]|0;if(b|0){c=a+88|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=a+68|0;c=f[a+80>>2]|0;if(c|0)wia(c,b);b=f[b>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=a+52|0;c=f[a+64>>2]|0;if(c|0)xia(c,b);b=f[b>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}b=a+36|0;c=f[a+48>>2]|0;if(c|0)rha(c,b);b=f[b>>2]|0;if(b|0){c=a+40|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=a+20|0;c=f[a+32>>2]|0;if(c|0)yia(c,b);b=f[b>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}c=a+4|0;b=f[a+16>>2]|0;if(b|0)Wga(b,c);if(!(f[c>>2]|0))return;Vga(c);Zpb(f[c>>2]|0);return}function via(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-4-a|0)>>>2)<<2);if(!(b[209568]|0))if(rrb(209568)|0){f[52703]=0;f[52704]=0;f[52705]=0}a=f[52704]|0;if(a>>>0<(f[52705]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52704]=a+12;return}else{Cia(210812,c);return}}function wia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~(((d+-12-a|0)>>>0)/12|0)*12|0);if(!(b[209576]|0))if(rrb(209576)|0){f[52706]=0;f[52707]=0;f[52708]=0}a=f[52707]|0;if(a>>>0<(f[52708]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52707]=a+12;return}else{Bia(210824,c);return}}function xia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-32-a|0)>>>5)<<5);if(!(b[209584]|0))if(rrb(209584)|0){f[52709]=0;f[52710]=0;f[52711]=0}a=f[52710]|0;if(a>>>0<(f[52711]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52710]=a+12;return}else{Aia(210836,c);return}}function yia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-16-a|0)>>>4)<<4);if(!(b[209600]|0))if(rrb(209600)|0){f[52715]=0;f[52716]=0;f[52717]=0}a=f[52716]|0;if(a>>>0<(f[52717]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52716]=a+12;return}else{zia(210860,c);return}}function zia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Aia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Bia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Cia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Dia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;m=o;n=a+4|0;c=f[a>>2]|0;h=((f[n>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);l=a+8|0;j=((f[l>>2]|0)-c|0)/12|0;k=j<<1;d=j>>>0<178956970?(k>>>0<d>>>0?d:k):357913941;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!d)e=0;else if(d>>>0>357913941)ud();else{e=Wpb(d*12|0)|0;break}while(0);f[m>>2]=e;c=e+(h*12|0)|0;j=m+8|0;k=m+4|0;f[k>>2]=c;g=e+(d*12|0)|0;i=m+12|0;f[i>>2]=g;f[e+(h*12|0)+8>>2]=0;f[c>>2]=f[b>>2];d=b+4|0;f[e+(h*12|0)+4>>2]=f[d>>2];p=b+8|0;f[e+(h*12|0)+8>>2]=f[p>>2];f[p>>2]=0;f[d>>2]=0;f[b>>2]=0;b=c+12|0;f[j>>2]=b;e=f[a>>2]|0;d=f[n>>2]|0;if((d|0)==(e|0)){h=j;p=e;e=d;j=g;g=c;f[a>>2]=g;f[k>>2]=p;f[n>>2]=b;f[h>>2]=e;n=f[l>>2]|0;f[l>>2]=j;f[i>>2]=n;f[m>>2]=p;Eia(m);u=o;return}do{p=c+-12|0;h=d;d=d+-12|0;f[p>>2]=0;g=c+-8|0;f[g>>2]=0;f[c+-4>>2]=0;f[p>>2]=f[d>>2];p=h+-8|0;f[g>>2]=f[p>>2];h=h+-4|0;f[c+-4>>2]=f[h>>2];f[h>>2]=0;f[p>>2]=0;f[d>>2]=0;c=(f[k>>2]|0)+-12|0;f[k>>2]=c}while((d|0)!=(e|0));d=c;h=i;g=j;p=f[a>>2]|0;b=f[j>>2]|0;e=f[n>>2]|0;j=f[i>>2]|0;i=d;f[a>>2]=i;f[k>>2]=p;f[n>>2]=b;f[g>>2]=e;n=f[l>>2]|0;f[l>>2]=j;f[h>>2]=n;f[m>>2]=p;Eia(m);u=o;return}function Eia(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=f[a+4>>2]|0;j=a+8|0;b=f[j>>2]|0;if((b|0)!=(i|0)){c=b;while(1){b=c+-12|0;f[j>>2]=b;h=f[b>>2]|0;if(h){g=c+-8|0;c=f[g>>2]|0;if((c|0)==(h|0))b=h;else{do{e=c+-24|0;f[g>>2]=e;d=f[c+-4>>2]|0;if(d|0)iia(d,e);c=f[c+-16>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;Zpb(d)}while((c|0)!=0);c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c);c=f[g>>2]|0}while((c|0)!=(h|0));b=f[b>>2]|0}Zpb(b);b=f[j>>2]|0}if((b|0)==(i|0))break;else c=b}}b=f[a>>2]|0;if(!b)return;Zpb(b);return}function Fia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;e=f[n>>2]|0;g=f[a>>2]|0;j=(e-g|0)/12|0;c=j+1|0;k=g;if(c>>>0>357913941)fob(a);m=a+8|0;l=((f[m>>2]|0)-g|0)/12|0;h=l<<1;h=l>>>0<178956970?(h>>>0<c>>>0?c:h):357913941;do if(!h)i=0;else if(h>>>0>357913941)ud();else{i=Wpb(h*12|0)|0;break}while(0);d=i+(j*12|0)|0;c=d;l=i+(h*12|0)|0;f[d>>2]=f[b>>2];o=b+4|0;f[i+(j*12|0)+4>>2]=f[o>>2];h=b+8|0;f[i+(j*12|0)+8>>2]=f[h>>2];f[b>>2]=0;f[o>>2]=0;f[h>>2]=0;h=d+12|0;if((e|0)!=(k|0)){do{o=e;e=e+-12|0;f[d+-12>>2]=f[e>>2];j=o+-8|0;f[d+-8>>2]=f[j>>2];o=o+-4|0;f[d+-4>>2]=f[o>>2];f[e>>2]=0;f[j>>2]=0;f[o>>2]=0;d=c+-12|0;c=d}while((e|0)!=(k|0));g=f[a>>2]|0}f[a>>2]=c;c=f[n>>2]|0;f[n>>2]=h;f[m>>2]=l;e=g;if((c|0)!=(e|0))do{c=c+-12|0;d=f[c>>2]|0;if(d|0)Zpb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Gia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=a+56|0;c=(f[t>>2]|0)+(b>>>5<<2)|0;f[c>>2]=f[c>>2]&~(1<<(b&31));c=f[a+40>>2]|0;p=c+(b*24|0)+12|0;d=f[p>>2]|0;if(!d)return;q=c+(b*24|0)+8|0;r=c+(b*24|0)+4|0;s=c+(b*24|0)|0;o=c+(b*24|0)+8|0;do{m=f[q>>2]|0;n=f[m+8>>2]|0;j=f[r>>2]|0;b=f[m+4>>2]|0;k=j+-1|0;l=(k&j|0)==0;if(l)b=k&b;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;e=(f[s>>2]|0)+(b<<2)|0;i=f[e>>2]|0;while(1){c=f[i>>2]|0;if((c|0)==(m|0))break;else i=c}if((i|0)==(o|0))h=16;else{c=f[i+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(b|0))e=m;else h=16}do if((h|0)==16){c=f[m>>2]|0;if(c|0){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(b|0)){e=m;break}}f[e>>2]=0;e=m}while(0);c=f[e>>2]|0;g=c;if(!c)h=30;else{c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)==(b|0))h=30;else{f[(f[s>>2]|0)+(c<<2)>>2]=i;f[i>>2]=f[m>>2];f[e>>2]=0;f[p>>2]=d+-1;h=31}}if((h|0)==30){h=0;f[i>>2]=g;f[e>>2]=0;f[p>>2]=d+-1;if(m|0)h=31}if((h|0)==31){h=0;Zpb(m)}if(f[(f[t>>2]|0)+(n>>>5<<2)>>2]&1<<(n&31)|0)Gia(a,n);d=f[p>>2]|0}while((d|0)!=0);return}function Hia(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Iia(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Iia(a,b);return}function Iia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Jia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[c>>2]|0;g=i;if((f[h>>2]|0)==(i|0))return;i=c+4|0;a=f[i>>2]|0;if((a|0)!=(g|0))do{d=a+-16|0;f[i>>2]=d;e=f[a+-4>>2]|0;if(e|0)rha(e,d);e=f[d>>2]|0;if(e|0){a=a+-12|0;d=f[a>>2]|0;if((d|0)!=(e|0))f[a>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}a=f[i>>2]|0}while((a|0)!=(g|0));if(!(b[209640]|0))if(rrb(209640)|0){f[52730]=0;f[52731]=0;f[52732]=0}a=f[52731]|0;if(a>>>0<(f[52732]|0)>>>0){f[a>>2]=0;g=a+4|0;f[g>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[g>>2]=f[i>>2];f[a+8>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[c>>2]=0;f[52731]=a+12;return}else{Kia(210920,c);return}}function Kia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;m=o;n=a+4|0;c=f[a>>2]|0;h=((f[n>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);l=a+8|0;j=((f[l>>2]|0)-c|0)/12|0;k=j<<1;d=j>>>0<178956970?(k>>>0<d>>>0?d:k):357913941;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!d)e=0;else if(d>>>0>357913941)ud();else{e=Wpb(d*12|0)|0;break}while(0);f[m>>2]=e;c=e+(h*12|0)|0;j=m+8|0;k=m+4|0;f[k>>2]=c;g=e+(d*12|0)|0;i=m+12|0;f[i>>2]=g;f[e+(h*12|0)+8>>2]=0;f[c>>2]=f[b>>2];d=b+4|0;f[e+(h*12|0)+4>>2]=f[d>>2];p=b+8|0;f[e+(h*12|0)+8>>2]=f[p>>2];f[p>>2]=0;f[d>>2]=0;f[b>>2]=0;b=c+12|0;f[j>>2]=b;e=f[a>>2]|0;d=f[n>>2]|0;if((d|0)==(e|0)){h=j;p=e;e=d;j=g;g=c;f[a>>2]=g;f[k>>2]=p;f[n>>2]=b;f[h>>2]=e;n=f[l>>2]|0;f[l>>2]=j;f[i>>2]=n;f[m>>2]=p;Lia(m);u=o;return}do{p=c+-12|0;h=d;d=d+-12|0;f[p>>2]=0;g=c+-8|0;f[g>>2]=0;f[c+-4>>2]=0;f[p>>2]=f[d>>2];p=h+-8|0;f[g>>2]=f[p>>2];h=h+-4|0;f[c+-4>>2]=f[h>>2];f[h>>2]=0;f[p>>2]=0;f[d>>2]=0;c=(f[k>>2]|0)+-12|0;f[k>>2]=c}while((d|0)!=(e|0));d=c;h=i;g=j;p=f[a>>2]|0;b=f[j>>2]|0;e=f[n>>2]|0;j=f[i>>2]|0;i=d;f[a>>2]=i;f[k>>2]=p;f[n>>2]=b;f[g>>2]=e;n=f[l>>2]|0;f[l>>2]=j;f[h>>2]=n;f[m>>2]=p;Lia(m);u=o;return}function Lia(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=f[a+4>>2]|0;j=a+8|0;b=f[j>>2]|0;if((b|0)!=(i|0)){c=b;while(1){b=c+-12|0;f[j>>2]=b;h=f[b>>2]|0;if(h){g=c+-8|0;c=f[g>>2]|0;if((c|0)==(h|0))b=h;else{do{d=c+-16|0;f[g>>2]=d;e=f[c+-4>>2]|0;if(e|0)rha(e,d);e=f[d>>2]|0;if(e|0){c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}c=f[g>>2]|0}while((c|0)!=(h|0));b=f[b>>2]|0}Zpb(b);b=f[j>>2]|0}if((b|0)==(i|0))break;else c=b}}b=f[a>>2]|0;if(!b)return;Zpb(b);return}function Mia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;h=((f[q>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/20|0;c=p<<1;c=p>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)e=0;else if(c>>>0>214748364)ud();else{e=Wpb(c*20|0)|0;break}while(0);n=e+(h*20|0)|0;l=n;p=e+(c*20|0)|0;m=f[b>>2]|0;f[b>>2]=0;i=b+4|0;g=f[i>>2]|0;f[i>>2]=0;f[n>>2]=m;f[e+(h*20|0)+4>>2]=g;i=e+(h*20|0)+8|0;j=b+8|0;c=f[j>>2]|0;f[i>>2]=c;k=b+12|0;o=f[k>>2]|0;f[e+(h*20|0)+12>>2]=o;f[e+(h*20|0)+16>>2]=f[b+16>>2];b=m;if(o|0){c=f[c+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[b+(c<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}o=n+20|0;m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=l;e=m;d=m}else{k=l;d=n;do{l=c;c=c+-20|0;g=f[c>>2]|0;f[c>>2]=0;h=l+-16|0;e=f[h>>2]|0;f[h>>2]=0;f[d+-20>>2]=g;f[d+-16>>2]=e;h=d+-12|0;i=l+-12|0;b=f[i>>2]|0;f[h>>2]=b;j=l+-8|0;n=f[j>>2]|0;f[d+-8>>2]=n;f[d+-4>>2]=f[l+-4>>2];if(n|0){d=f[b+4>>2]|0;b=e+-1|0;if(!(b&e))d=d&b;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;f[g+(d<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}d=k+-20|0;k=d}while((c|0)!=(m|0));c=k;e=f[a>>2]|0;d=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;b=e;if((d|0)!=(b|0))do{c=f[d+-12>>2]|0;d=d+-20|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(b|0));if(!e)return;Zpb(e);return}function Nia(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0,o=0.0,q=0,r=0.0,s=0.0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0.0,Ba=0.0,Ca=0.0,Da=0.0,Ea=0.0,Fa=0.0,Ga=0.0,Ha=0.0,Ia=0.0,Ja=0.0,Ka=0.0,La=0.0,Ma=0.0,Na=0.0;za=u;u=u+208|0;ta=za+56|0;ua=za+24|0;va=za+200|0;wa=za;xa=e+24|0;h=+p[e>>3];i=+p[xa>>3];if(h==i)if(+p[e+8>>3]==+p[e+32>>3])if(+p[e+16>>3]==+p[e+40>>3]){u=za;return}sa=e+48|0;j=+p[sa>>3];if(h==j)if(+p[e+8>>3]==+p[e+56>>3])if(+p[e+16>>3]==+p[e+64>>3]){u=za;return}if(i==j)if(+p[e+32>>3]==+p[e+56>>3])if(+p[e+40>>3]==+p[e+64>>3]){u=za;return}F=sWa(c,e,ta)|0;switch(F|0){case 0:case 3:break;default:{G=d+32|0;H=d+40|0;I=d+48|0;J=d+56|0;L=d+64|0;M=d+72|0;N=d+80|0;O=d+88|0;P=d+96|0;Q=e+32|0;R=e+8|0;S=e+64|0;T=e+16|0;U=e+40|0;V=e+56|0;W=d+8|0;X=d+16|0;Y=d+24|0;Z=ua+16|0;_=ua+24|0;$=ua+8|0;aa=a+976|0;ba=wa+4|0;ca=wa+8|0;da=a+1036|0;ea=a+1024|0;fa=a+1028|0;ga=a+1032|0;ha=a+992|0;ia=a+984|0;ja=va+4|0;ka=a+1024|0;la=wa+8|0;ma=wa+16|0;na=a+1084|0;oa=a+1088|0;pa=a+1080|0;qa=a+1056|0;ra=a+1060|0;y=a+1064|0;z=wa+4|0;A=wa+8|0;B=wa+12|0;C=c+8|0;D=c+16|0;E=ua+16|0;x=0;do{k=x<<1;m=ta+(k*24|0)|0;j=+p[m>>3];l=+p[m+24>>3];a=ta+(k*24|0)+8|0;if(j==l){h=+p[a>>3];i=+p[m+32>>3];if(h==i){if(!(+p[ta+(k*24|0)+16>>3]==+p[m+40>>3]))ya=16}else ya=16}else{h=+p[a>>3];i=+p[m+32>>3];ya=16}if((ya|0)==16){ya=0;Ea=+p[G>>3];Ca=+p[H>>3];Aa=+p[I>>3];Ja=+p[J>>3];Ia=+p[L>>3];r=+p[M>>3];Da=+p[N>>3];Ba=+p[O>>3];s=+p[P>>3];Ka=j-Ea;La=h-Ca;Na=+p[ta+(k*24|0)+16>>3]-Aa;p[ua>>3]=Ka*Ja+(La*Ia+Na*r);p[$>>3]=Ka*Da+(La*Ba+Na*s);Na=l-Ea;La=i-Ca;i=+p[m+40>>3]-Aa;h=Na*Ja+(La*Ia+i*r);i=Na*Da+(La*Ba+i*s);p[Z>>3]=h;p[_>>3]=i;La=+p[R>>3];Na=+p[Q>>3]-La;Ka=+p[T>>3];l=+p[S>>3]-Ka;Ka=+p[U>>3]-Ka;La=+p[V>>3]-La;j=Na*l-Ka*La;Ma=+p[e>>3];o=+p[sa>>3]-Ma;Ma=+p[xa>>3]-Ma;l=Ka*o-l*Ma;o=La*Ma-Na*o;Na=+p[d>>3];Ma=+p[W>>3];La=+p[X>>3];Ka=+p[Y>>3];Fa=Ka+(j*Na+(Ma*l+La*o));Ha=j-Na*Fa-Ea;Ga=l-Ma*Fa-Ca;Fa=o-La*Fa-Aa;Ka=Ka+(Na*0.0+(Ma*0.0+La*0.0));Ea=0.0-Na*Ka-Ea;Ca=0.0-Ma*Ka-Ca;Aa=0.0-La*Ka-Aa;r=Ja*Ha+(Ia*Ga+Fa*r)-(Ja*Ea+(Ia*Ca+Aa*r));s=Ha*Da+(Ga*Ba+Fa*s)-(Ea*Da+(Ca*Ba+Aa*s));do if(!(+K(+r)<=1.0e-12)|!(+K(+s)<=1.0e-12)){l=+p[ua>>3];j=+p[$>>3];if(s*(h-l)-r*(i-j)<0.0)ya=21;else{h=l;i=j}}else if(j*+p[c>>3]+(l*+p[C>>3]+o*+p[D>>3])<0.0){l=+p[ua>>3];j=+p[$>>3];ya=21;break}else{h=+p[ua>>3];i=+p[$>>3];break}while(0);if((ya|0)==21){ya=0;p[ua>>3]=h;p[$>>3]=i;p[Z>>3]=l;p[_>>3]=j}if(!(b[aa>>0]|0))j=1.0;else{Ma=+p[ha>>3];Na=(+p[H>>3]+h*+p[L>>3]+i*+p[O>>3])*Ma;j=Ma*(+p[I>>3]+h*+p[M>>3]+i*+p[P>>3]);h=+Hrb(+((+p[G>>3]+h*+p[J>>3]+i*+p[N>>3])*Ma));i=+Hrb(+Na);j=+Hrb(+j);Na=+p[ia>>3];j=Na*j;i=Na*i;h=Na*h}n[wa>>2]=h;n[ba>>2]=i;n[ca>>2]=j;a=Oia(da,wa)|0;do if(!a){w=(f[fa>>2]|0)-(f[ea>>2]|0)>>4;f[va>>2]=w;a=Pia(da,wa)|0;f[a>>2]=w;a=f[fa>>2]|0;if((a|0)==(f[ga>>2]|0)){fha(ea,ua);break}else{p[a>>3]=+p[ua>>3];p[a+8>>3]=+p[$>>3];f[fa>>2]=a+16;break}}else f[va>>2]=f[a+20>>2];while(0);h=+p[E>>3];i=+p[_>>3];if(!(b[aa>>0]|0))j=1.0;else{Ma=+p[ha>>3];Na=(+p[H>>3]+h*+p[L>>3]+i*+p[O>>3])*Ma;j=Ma*(+p[I>>3]+h*+p[M>>3]+i*+p[P>>3]);h=+Hrb(+((+p[G>>3]+h*+p[J>>3]+i*+p[N>>3])*Ma));i=+Hrb(+Na);j=+Hrb(+j);Na=+p[ia>>3];j=Na*j;i=Na*i;h=Na*h}n[wa>>2]=h;n[ba>>2]=i;n[ca>>2]=j;a=Oia(da,wa)|0;do if(!a){w=(f[fa>>2]|0)-(f[ea>>2]|0)>>4;f[ja>>2]=w;a=Pia(da,wa)|0;f[a>>2]=w;a=f[fa>>2]|0;if((a|0)==(f[ga>>2]|0)){fha(ea,E);break}else{p[a>>3]=+p[E>>3];p[a+8>>3]=+p[_>>3];f[fa>>2]=a+16;break}}else f[ja>>2]=f[a+20>>2];while(0);a=f[va>>2]|0;k=f[ja>>2]|0;do if((a|0)!=(k|0)){w=f[ka>>2]|0;Ma=+p[w+(a<<4)>>3];Na=+p[w+(a<<4)+8>>3];h=+p[G>>3]+Ma*+p[J>>3]+Na*+p[N>>3];p[wa>>3]=h;p[la>>3]=+p[H>>3]+Ma*+p[L>>3]+Na*+p[O>>3];p[ma>>3]=+p[I>>3]+Ma*+p[M>>3]+Na*+p[P>>3];a=f[na>>2]|0;if(a>>>0<(f[oa>>2]|0)>>>0){f[a>>2]=f[wa>>2];f[a+4>>2]=f[wa+4>>2];f[a+8>>2]=f[wa+8>>2];f[a+12>>2]=f[wa+12>>2];f[a+16>>2]=f[wa+16>>2];f[a+20>>2]=f[wa+20>>2];p[a>>3]=h;p[a+8>>3]=+p[la>>3];p[a+16>>3]=+p[ma>>3];w=(f[na>>2]|0)+24|0;f[na>>2]=w;a=k;k=w}else{Qia(pa,wa);a=f[ja>>2]|0;k=f[na>>2]|0}w=f[ka>>2]|0;Ma=+p[w+(a<<4)>>3];Na=+p[w+(a<<4)+8>>3];h=+p[G>>3]+Ma*+p[J>>3]+Na*+p[N>>3];p[wa>>3]=h;p[la>>3]=+p[H>>3]+Ma*+p[L>>3]+Na*+p[O>>3];p[ma>>3]=+p[I>>3]+Ma*+p[M>>3]+Na*+p[P>>3];if(k>>>0<(f[oa>>2]|0)>>>0){f[k>>2]=f[wa>>2];f[k+4>>2]=f[wa+4>>2];f[k+8>>2]=f[wa+8>>2];f[k+12>>2]=f[wa+12>>2];f[k+16>>2]=f[wa+16>>2];f[k+20>>2]=f[wa+20>>2];p[k>>3]=h;p[k+8>>3]=+p[la>>3];p[k+16>>3]=+p[ma>>3];f[na>>2]=(f[na>>2]|0)+24}else Qia(pa,wa);if(g){k=f[va>>2]|0;m=f[ja>>2]|0;m=(k>>>0<m>>>0?m:k)+1|0;a=f[qa>>2]|0;if((f[ra>>2]|0)-a>>4>>>0<m>>>0){do{_ga(wa,f[52698]|0);a=f[ra>>2]|0;do if(a>>>0<(f[y>>2]|0)>>>0){f[a>>2]=0;w=a+4|0;f[w>>2]=0;f[a+8>>2]=0;f[a>>2]=f[wa>>2];f[w>>2]=f[z>>2];f[a+8>>2]=f[A>>2];f[A>>2]=0;f[z>>2]=0;f[wa>>2]=0;f[a+12>>2]=f[B>>2];f[B>>2]=0;f[ra>>2]=(f[ra>>2]|0)+16}else{sia(qa,wa);a=f[B>>2]|0;if(!a)break;rha(a,wa)}while(0);a=f[wa>>2]|0;if(a|0){k=f[z>>2]|0;if((k|0)!=(a|0))f[z>>2]=k+(~((k+-4-a|0)>>>2)<<2);Zpb(a)}a=f[qa>>2]|0}while((f[ra>>2]|0)-a>>4>>>0<m>>>0);k=f[va>>2]|0}t=a+(k<<4)|0;m=f[t>>2]|0;v=a+(k<<4)+4|0;w=f[v>>2]|0;a:do if((m|0)==(w|0))ya=49;else{q=f[ja>>2]|0;do{if((f[m>>2]|0)==(q|0)){ya=49;break a}m=m+4|0}while((m|0)!=(w|0))}while(0);if((ya|0)==49){ya=0;if((m|0)!=(w|0))break}if((w|0)==(f[a+(k<<4)+8>>2]|0)){BD(t,ja);break}else{f[w>>2]=f[ja>>2];f[v>>2]=w+4;break}}}while(0)}x=x+1|0}while((x|0)!=(F|0))}}u=za;return}function Oia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0,k=0.0,l=0.0;k=+n[b>>2];c=k==0.0?0:(n[s>>2]=k,f[s>>2]|0);l=+n[b+4>>2];c=(c>>>2)+(c<<6)+(l==0.0?-1640531527:(n[s>>2]=l,f[s>>2]|0)+-1640531527|0)^c;i=+n[b+8>>2];e=(c<<6)+(i==0.0?-1640531527:(n[s>>2]=i,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;b=(d&g|0)==0;if(b)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;c=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!c){j=0;return j|0}c=f[c>>2]|0;if(!c){j=0;return j|0}if(b){while(1){a=f[c+4>>2]|0;b=(a|0)==(e|0);if(!(b|(a&d|0)==(h|0))){c=0;b=23;break}if(b)if(+n[c+8>>2]==k)if(+n[c+12>>2]==l)if(+n[c+16>>2]==i){b=23;break}c=f[c>>2]|0;if(!c){c=0;b=23;break}}if((b|0)==23)return c|0}else j=c;while(1){c=f[j+4>>2]|0;if((c|0)==(e|0)){if(+n[j+8>>2]==k)if(+n[j+12>>2]==l)if(+n[j+16>>2]==i){c=j;b=23;break}}else{if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)!=(h|0)){c=0;b=23;break}}j=f[j>>2]|0;if(!j){c=0;b=23;break}}if((b|0)==23)return c|0;return 0}function Pia(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0;e=+n[b>>2];c=e==0.0?0:(n[s>>2]=e,f[s>>2]|0);l=+n[b+4>>2];c=(c>>>2)+(c<<6)+(l==0.0?-1640531527:(n[s>>2]=l,f[s>>2]|0)+-1640531527|0)^c;d=+n[b+8>>2];m=(c<<6)+(d==0.0?-1640531527:(n[s>>2]=d,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;j=a+4|0;g=f[j>>2]|0;k=(g|0)==0;a:do if(k)c=0;else{h=g+-1|0;b=(h&g|0)==0;if(b)i=m&h;else if(m>>>0<g>>>0)i=m;else i=(m>>>0)%(g>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{c=f[c>>2]|0;if(!c)c=i;else{if(b){while(1){b=f[c+4>>2]|0;if(!((b|0)==(m|0)|(b&h|0)==(i|0))){c=i;break a}if(+n[c+8>>2]==e)if(+n[c+12>>2]==l)if(+n[c+16>>2]==d)break;c=f[c>>2]|0;if(!c){c=i;break a}}a=c+20|0;return a|0}while(1){b=f[c+4>>2]|0;if((b|0)!=(m|0)){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){c=i;break a}}if(+n[c+8>>2]==e)if(+n[c+12>>2]==l)if(+n[c+16>>2]==d)break;c=f[c>>2]|0;if(!c){c=i;break a}}a=c+20|0;return a|0}}}while(0);i=Wpb(24)|0;n[i+8>>2]=e;n[i+12>>2]=l;n[i+16>>2]=d;f[i+20>>2]=0;f[i+4>>2]=m;f[i>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(g>>>0)<d){b=g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1;c=~~+W(+(d/e))>>>0;Ria(a,b>>>0<c>>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){g=b;c=c&m;break}if(m>>>0<b>>>0){g=b;c=m}else{g=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=(f[a>>2]|0)+(c<<2)|0;c=f[b>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[b>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;b=g+-1|0;if(!(b&g))c=c&b;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;o=35}}else{f[i>>2]=f[c>>2];o=35}if((o|0)==35)f[c>>2]=i;f[h>>2]=(f[h>>2]|0)+1;a=i;a=a+20|0;return a|0}function Qia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<c>>>0?c:e):178956970;do if(!e)g=0;else if(e>>>0>178956970)ud();else{g=Wpb(e*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(e*24|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];p[c>>3]=+p[b>>3];p[g+(h*24|0)+8>>3]=+p[b+8>>3];p[g+(h*24|0)+16>>3]=+p[b+16>>3];e=c+24|0;if((d|0)!=(j|0))do{h=d;d=d+-24|0;p[c+-24>>3]=+p[d>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-24|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;Zpb(m);return}function Ria(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Sia(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Sia(a,b);return}function Sia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();p=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=p;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;o=b+-1|0;p=(o&b|0)==0;if(p)c=c&o;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(p){d=e;while(1){l=f[d+4>>2]&o;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=+n[d+8>>2];e=d;while(1){if(!(i==+n[h+8>>2]))break d;if(!(+n[j>>2]==+n[h+12>>2]))break d;if(!(+n[k>>2]==+n[h+16>>2]))break d;e=f[h>>2]|0;if(!e){e=h;break}else{q=h;h=e;e=q}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{i=+n[d+8>>2];e=d;while(1){if(!(i==+n[h+8>>2]))break e;if(!(+n[j>>2]==+n[h+12>>2]))break e;if(!(+n[k>>2]==+n[h+16>>2]))break e;e=f[h>>2]|0;if(!e){e=h;break}else{q=h;h=e;e=q}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function Tia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-2-b|0)>>>1)<<1);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Uia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Via(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Wia(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Wia(a,b);return}function Wia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Xia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=a+1172|0;v=b+8|0;c=f[v>>2]|0;if(c|0){s=a+1176|0;t=a+1184|0;u=a+1188|0;q=a+1180|0;d=c;o=c;c=f[s>>2]|0;while(1){k=f[d+8>>2]|0;m=X(k,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;m=m>>>15^m;l=(c|0)==0;j=k;a:do if(l){a=0;p=19}else{i=c+-1|0;h=(i&c|0)==0;if(h)a=m&i;else if(m>>>0<c>>>0)a=m;else a=(m>>>0)%(c>>>0)|0;d=f[(f[r>>2]|0)+(a<<2)>>2]|0;if(!d)p=19;else{if(h)while(1){d=f[d>>2]|0;if(!d){p=19;break a}h=f[d+4>>2]|0;if(!((h|0)==(m|0)|(h&i|0)==(a|0))){p=19;break a}if((f[d+8>>2]|0)==(j|0))break a}do{d=f[d>>2]|0;if(!d){p=19;break a}h=f[d+4>>2]|0;if((h|0)!=(m|0)){if(h>>>0>=c>>>0)h=(h>>>0)%(c>>>0)|0;if((h|0)!=(a|0)){p=19;break a}}}while((f[d+8>>2]|0)!=(j|0))}}while(0);if((p|0)==19){p=0;h=Wpb(12)|0;f[h+8>>2]=k;f[h+4>>2]=m;f[h>>2]=0;e=+(((f[t>>2]|0)+1|0)>>>0);g=+n[u>>2];do if(l|g*+(c>>>0)<e){a=c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1;d=~~+W(+(e/g))>>>0;Via(r,a>>>0<d>>>0?d:a);a=f[s>>2]|0;d=a+-1|0;if(!(d&a)){c=a;a=d&m;break}if(m>>>0<a>>>0){c=a;a=m}else{c=a;a=(m>>>0)%(a>>>0)|0}}while(0);d=(f[r>>2]|0)+(a<<2)|0;a=f[d>>2]|0;if(!a){f[h>>2]=f[q>>2];f[q>>2]=h;f[d>>2]=q;a=f[h>>2]|0;if(a|0){a=f[a+4>>2]|0;d=c+-1|0;if(!(d&c))a=a&d;else if(a>>>0>=c>>>0)a=(a>>>0)%(c>>>0)|0;a=(f[r>>2]|0)+(a<<2)|0;p=32}}else{f[h>>2]=f[a>>2];p=32}if((p|0)==32){p=0;f[a>>2]=h}f[t>>2]=(f[t>>2]|0)+1}a=f[o>>2]|0;if(!a)break;else{d=a;o=a}}}d=b+12|0;if(!(f[d>>2]|0))return;a=f[v>>2]|0;if(a|0)do{u=a;a=f[a>>2]|0;Zpb(u)}while((a|0)!=0);f[v>>2]=0;c=f[b+4>>2]|0;if(c|0){a=0;do{f[(f[b>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(c|0))}f[d>>2]=0;return}function Yia(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0,f=0.0,g=0.0;f=+n[b>>2];g=+n[b+4>>2];e=+n[b+8>>2];d=+n[a>>2]*f+(+n[a+4>>2]*g+ +n[a+8>>2]*e)-+n[a+12>>2];if(d<0.0)if(d*d*+n[a+240>>2]>=c){a=0;return a|0}d=+n[a+16>>2]*f+(+n[a+20>>2]*g+ +n[a+24>>2]*e)-+n[a+28>>2];if(d<0.0)if(d*d*+n[a+244>>2]>=c){a=0;return a|0}d=+n[a+32>>2]*f+(+n[a+36>>2]*g+ +n[a+40>>2]*e)-+n[a+44>>2];if(d<0.0)if(d*d*+n[a+248>>2]>=c){a=0;return a|0}d=+n[a+48>>2]*f+(+n[a+52>>2]*g+ +n[a+56>>2]*e)-+n[a+60>>2];if(d<0.0)if(d*d*+n[a+252>>2]>=c){a=0;return a|0}d=+n[a+64>>2]*f+(+n[a+68>>2]*g+ +n[a+72>>2]*e)-+n[a+76>>2];if(d<0.0)if(d*d*+n[a+256>>2]>=c){a=0;return a|0}d=+n[a+80>>2]*f+(+n[a+84>>2]*g+ +n[a+88>>2]*e)-+n[a+92>>2];if(d<0.0)if(d*d*+n[a+260>>2]>=c){a=0;return a|0}a=1;return a|0}function Zia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function _ia(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0.0,k=0,l=0.0,m=0.0,n=0.0,o=0,q=0,r=0,s=0.0;q=u;u=u+48|0;g=q;o=c+196|0;d=f[o>>2]|0;if(d&1048576|0){o=0;u=q;return o|0}e=f[c+4>>2]|0;if((d&131074|0)!=0|(e|0)==0){o=0;u=q;return o|0}if(!(b[c+192>>0]&1)){o=0;u=q;return o|0}k=c+200|0;if((j[k>>1]|0|(h[k+2>>0]|0)<<16)&7864320|0){o=0;u=q;return o|0}if(!(b[(f[e+44>>2]|0)+144>>0]&2)){o=0;u=q;return o|0}PWa(g,f[a>>2]|0,0,c,0);d=f[a+1e3>>2]|0;k=f[a+1004>>2]|0;a:do if((d|0)==(k|0))c=0;else{l=+p[g>>3];m=+p[g+8>>3];n=+p[g+16>>3];i=+p[g+24>>3];c=0;do{e=f[d>>2]|0;g=f[d+4>>2]|0;b:do if((e|0)!=(g|0)){a=2;do{s=+p[e+24>>3]+(l*+p[e>>3]+(m*+p[e+8>>3]+n*+p[e+16>>3]));r=!(s*s>=i)?1:s<0.0?0:2;a=(r|0)<(a|0)?r:a;e=e+32|0}while((e|0)!=(g|0));switch(a|0){case 2:{c=0;break a}case 1:break;default:break b}c=1}while(0);d=d+16|0}while((d|0)!=(k|0));if(c)c=(f[o>>2]&24|0)==0;else c=0}while(0);r=c;u=q;return r|0}function $ia(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;c=f[a>>2]|0;e=f[b>>2]|0;a:do if((c|0)!=(e|0)){do{d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))break a;c=c+4|0}while((c|0)!=(e|0));f[a>>2]=e;j=e;return j|0}while(0);f[a>>2]=c;if((c|0)==(e|0)){j=e;return j|0}d=c+4|0;if((d|0)==(e|0)){j=c;return j|0}do{g=f[d>>2]|0;h=g;if((f[g+24>>2]|0)==(f[g+28>>2]|0)){if(f[g+36>>2]|0)j=10}else j=10;if((j|0)==10){j=0;f[d>>2]=0;i=f[c>>2]|0;f[c>>2]=h;if(i|0){h=i+36|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0){ija(c);Zpb(c)}c=f[i+24>>2]|0;if(c|0){e=i+28|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~((g+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(i)}c=(f[a>>2]|0)+4|0;f[a>>2]=c;e=f[b>>2]|0}d=d+4|0}while((d|0)!=(e|0));return c|0}function aja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=f[a>>2]|0;d=f[b>>2]|0;j=j+(d-j>>2<<2)|0;b=f[c>>2]|0;if((b|0)==(d|0))return j|0;b=j+(b-d>>2<<2)|0;i=a+4|0;h=f[i>>2]|0;if((b|0)==(h|0))e=j;else{e=j;do{a=f[b>>2]|0;f[b>>2]=0;g=f[e>>2]|0;f[e>>2]=a;if(g|0){a=g+36|0;c=f[a>>2]|0;f[a>>2]=0;if(c|0){ija(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;a=f[d>>2]|0;if((a|0)!=(c|0))f[d>>2]=a+(~((a+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}b=b+4|0;e=e+4|0}while((b|0)!=(h|0));b=f[i>>2]|0}if((b|0)==(e|0))return j|0;do{h=b+-4|0;f[i>>2]=h;a=f[h>>2]|0;f[h>>2]=0;if(a|0){h=a+36|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){ija(b);Zpb(b)}b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}Zpb(a)}b=f[i>>2]|0}while((b|0)!=(e|0));return j|0}function bja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;c=f[a>>2]|0;e=f[b>>2]|0;a:do if((c|0)!=(e|0)){do{d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))break a;c=c+4|0}while((c|0)!=(e|0));f[a>>2]=e;j=e;return j|0}while(0);f[a>>2]=c;if((c|0)==(e|0)){j=e;return j|0}d=c+4|0;if((d|0)==(e|0)){j=c;return j|0}do{g=f[d>>2]|0;h=g;if((f[g+24>>2]|0)==(f[g+28>>2]|0)){if(f[g+36>>2]|0)j=10}else j=10;if((j|0)==10){j=0;f[d>>2]=0;i=f[c>>2]|0;f[c>>2]=h;if(i|0){h=i+36|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0){hja(c);Zpb(c)}c=f[i+24>>2]|0;if(c|0){e=i+28|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~((g+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(i)}c=(f[a>>2]|0)+4|0;f[a>>2]=c;e=f[b>>2]|0}d=d+4|0}while((d|0)!=(e|0));return c|0}function cja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=f[a>>2]|0;d=f[b>>2]|0;j=j+(d-j>>2<<2)|0;b=f[c>>2]|0;if((b|0)==(d|0))return j|0;b=j+(b-d>>2<<2)|0;i=a+4|0;h=f[i>>2]|0;if((b|0)==(h|0))e=j;else{e=j;do{a=f[b>>2]|0;f[b>>2]=0;g=f[e>>2]|0;f[e>>2]=a;if(g|0){a=g+36|0;c=f[a>>2]|0;f[a>>2]=0;if(c|0){hja(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;a=f[d>>2]|0;if((a|0)!=(c|0))f[d>>2]=a+(~((a+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}b=b+4|0;e=e+4|0}while((b|0)!=(h|0));b=f[i>>2]|0}if((b|0)==(e|0))return j|0;do{h=b+-4|0;f[i>>2]=h;a=f[h>>2]|0;f[h>>2]=0;if(a|0){h=a+36|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){hja(b);Zpb(b)}b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}Zpb(a)}b=f[i>>2]|0}while((b|0)!=(e|0));return j|0}function dja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0.0,Y=0,Z=0,_=0,$=0.0;_=u;u=u+192|0;Y=_;G=+n[c>>2];V=+n[c+4>>2];i=+n[c+8>>2];z=+n[c+12>>2];A=+n[c+16>>2];B=+n[c+20>>2];e=f[a+1e3>>2]|0;m=f[a+1004>>2]|0;if((e|0)==(m|0)){u=_;return}$=(z-G)*.5;h=(A-V)*.5;F=(B-i)*.5;C=$+G;D=h+V;E=F+i;F=$*$+(h*h+F*F);o=Y+8|0;q=Y+16|0;r=Y+24|0;s=Y+32|0;t=Y+40|0;v=Y+48|0;w=Y+56|0;x=Y+64|0;y=Y+72|0;H=Y+80|0;I=Y+88|0;J=Y+96|0;K=Y+104|0;L=Y+112|0;M=Y+120|0;N=Y+128|0;O=Y+136|0;P=Y+144|0;Q=Y+152|0;R=Y+160|0;S=Y+168|0;T=Y+176|0;U=Y+184|0;d=0;a:do{g=f[e>>2]|0;l=f[e+4>>2]|0;b:do if((g|0)!=(l|0)){k=2;do{h=+p[g+24>>3]+(C*+p[g>>3]+(D*+p[g+8>>3]+E*+p[g+16>>3]));if(!(h*h>=F)){p[Y>>3]=G;p[o>>3]=V;p[q>>3]=i;p[r>>3]=z;p[s>>3]=V;p[t>>3]=i;p[v>>3]=G;p[w>>3]=A;p[x>>3]=i;p[y>>3]=z;p[H>>3]=A;p[I>>3]=i;p[J>>3]=G;p[K>>3]=V;p[L>>3]=B;p[M>>3]=z;p[N>>3]=V;p[O>>3]=B;p[P>>3]=G;p[Q>>3]=A;p[R>>3]=B;p[S>>3]=z;p[T>>3]=A;p[U>>3]=B;j=fja(g,Y)|0}else j=h<0.0?0:2;k=(j|0)<(k|0)?j:k;g=g+32|0}while((g|0)!=(l|0));switch(k|0){case 2:{Z=49;break a}case 1:break;default:break b}d=1}while(0);e=e+16|0}while((e|0)!=(m|0));if((Z|0)==49){u=_;return}if(!d){u=_;return}d=c+36|0;if(f[d>>2]|0){hWa(Y,c,b[c+48>>0]|0,+n[c+44>>2]);U=f[d>>2]|0;f[U>>2]=f[Y>>2];f[U+4>>2]=f[Y+4>>2];f[U+8>>2]=f[Y+8>>2];f[U+12>>2]=f[Y+12>>2];f[U+16>>2]=f[Y+16>>2];f[U+20>>2]=f[Y+20>>2];f[U+52>>2]=f[Y+24>>2];f[U+56>>2]=f[Y+28>>2];f[U+60>>2]=f[Y+32>>2];f[U+64>>2]=f[Y+36>>2];f[U+68>>2]=f[Y+40>>2];f[U+72>>2]=f[Y+44>>2];dja(a,U);dja(a,U+52|0)}d=f[c+24>>2]|0;s=f[c+28>>2]|0;if((d|0)==(s|0)){u=_;return}t=a+1172|0;v=a+1176|0;w=a+1184|0;x=a+1188|0;y=a+1180|0;do{l=f[d>>2]|0;m=l;c:do if(_ia(a,l)|0){r=X(m,1540483477)|0;r=(X(r>>>24^r,1540483477)|0)^1866966612;r=X(r>>>13^r,1540483477)|0;r=r>>>15^r;o=f[v>>2]|0;q=(o|0)==0;d:do if(q)e=0;else{k=o+-1|0;j=(k&o|0)==0;if(j)e=k&r;else if(r>>>0<o>>>0)e=r;else e=(r>>>0)%(o>>>0)|0;g=f[(f[t>>2]|0)+(e<<2)>>2]|0;if(g){if(j)while(1){g=f[g>>2]|0;if(!g)break d;c=f[g+4>>2]|0;if(!((c|0)==(r|0)|(c&k|0)==(e|0)))break d;if((f[g+8>>2]|0)==(l|0))break c}while(1){g=f[g>>2]|0;if(!g)break d;j=f[g+4>>2]|0;if((j|0)!=(r|0)){if(j>>>0>=o>>>0)j=(j>>>0)%(o>>>0)|0;if((j|0)!=(e|0))break d}if((f[g+8>>2]|0)==(l|0))break c}}}while(0);k=Wpb(12)|0;f[k+8>>2]=m;f[k+4>>2]=r;f[k>>2]=0;h=+(((f[w>>2]|0)+1|0)>>>0);i=+n[x>>2];do if(q|i*+(o>>>0)<h){e=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;g=~~+W(+(h/i))>>>0;Via(t,e>>>0<g>>>0?g:e);e=f[v>>2]|0;g=e+-1|0;if(!(g&e)){j=e;e=g&r;break}if(r>>>0<e>>>0){j=e;e=r}else{j=e;e=(r>>>0)%(e>>>0)|0}}else j=o;while(0);g=(f[t>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[k>>2]=f[y>>2];f[y>>2]=k;f[g>>2]=y;e=f[k>>2]|0;if(e|0){e=f[e+4>>2]|0;g=j+-1|0;if(!(g&j))e=e&g;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;e=(f[t>>2]|0)+(e<<2)|0;Z=46}}else{f[k>>2]=f[e>>2];Z=46}if((Z|0)==46){Z=0;f[e>>2]=k}f[w>>2]=(f[w>>2]|0)+1}while(0);d=d+4|0}while((d|0)!=(s|0));u=_;return}function eja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0.0,W=0,X=0,Y=0,Z=0.0;Y=u;u=u+192|0;X=Y;C=+n[c>>2];V=+n[c+4>>2];m=+n[c+8>>2];o=+n[c+12>>2];q=+n[c+16>>2];r=+n[c+20>>2];e=f[a+1e3>>2]|0;k=f[a+1004>>2]|0;if((e|0)==(k|0)){u=Y;return}Z=(o-C)*.5;l=(q-V)*.5;w=(r-m)*.5;s=Z+C;t=l+V;v=w+m;w=Z*Z+(l*l+w*w);x=X+8|0;y=X+16|0;z=X+24|0;A=X+32|0;B=X+40|0;D=X+48|0;E=X+56|0;F=X+64|0;G=X+72|0;H=X+80|0;I=X+88|0;J=X+96|0;K=X+104|0;L=X+112|0;M=X+120|0;N=X+128|0;O=X+136|0;P=X+144|0;Q=X+152|0;R=X+160|0;S=X+168|0;T=X+176|0;U=X+184|0;d=0;a:do{g=f[e>>2]|0;j=f[e+4>>2]|0;b:do if((g|0)!=(j|0)){i=2;do{l=+p[g+24>>3]+(s*+p[g>>3]+(t*+p[g+8>>3]+v*+p[g+16>>3]));if(!(l*l>=w)){p[X>>3]=C;p[x>>3]=V;p[y>>3]=m;p[z>>3]=o;p[A>>3]=V;p[B>>3]=m;p[D>>3]=C;p[E>>3]=q;p[F>>3]=m;p[G>>3]=o;p[H>>3]=q;p[I>>3]=m;p[J>>3]=C;p[K>>3]=V;p[L>>3]=r;p[M>>3]=o;p[N>>3]=V;p[O>>3]=r;p[P>>3]=C;p[Q>>3]=q;p[R>>3]=r;p[S>>3]=o;p[T>>3]=q;p[U>>3]=r;h=fja(g,X)|0}else h=l<0.0?0:2;i=(h|0)<(i|0)?h:i;g=g+32|0}while((g|0)!=(j|0));switch(i|0){case 2:{W=20;break a}case 1:break;default:break b}d=1}while(0);e=e+16|0}while((e|0)!=(k|0));if((W|0)==20){u=Y;return}if(!d){u=Y;return}d=c+36|0;if(f[d>>2]|0){hWa(X,c,b[c+48>>0]|0,+n[c+44>>2]);W=f[d>>2]|0;f[W>>2]=f[X>>2];f[W+4>>2]=f[X+4>>2];f[W+8>>2]=f[X+8>>2];f[W+12>>2]=f[X+12>>2];f[W+16>>2]=f[X+16>>2];f[W+20>>2]=f[X+20>>2];f[W+52>>2]=f[X+24>>2];f[W+56>>2]=f[X+28>>2];f[W+60>>2]=f[X+32>>2];f[W+64>>2]=f[X+36>>2];f[W+68>>2]=f[X+40>>2];f[W+72>>2]=f[X+44>>2];eja(a,W);eja(a,W+52|0)}d=f[c+24>>2]|0;i=f[c+28>>2]|0;if((d|0)==(i|0)){u=Y;return}j=a+1248|0;k=a+1252|0;h=a+1244|0;do{e=f[d>>2]|0;f[X>>2]=e;g=f[j>>2]|0;if(g>>>0<(f[k>>2]|0)>>>0){f[g>>2]=e;f[j>>2]=(f[j>>2]|0)+4}else gja(h,X);d=d+4|0}while((d|0)!=(i|0));u=Y;return}function fja(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0;d=+p[a>>3];e=+p[a+8>>3];f=+p[a+16>>3];c=+p[a+24>>3];a=!(c+(d*+p[b>>3]+(e*+p[b+8>>3]+f*+p[b+16>>3]))<0.0);if(!(c+(d*+p[b+24>>3]+(e*+p[b+32>>3]+f*+p[b+40>>3]))<0.0))a=a?2:1;else if(a){b=1;return b|0}else a=0;if(!(c+(d*+p[b+48>>3]+(e*+p[b+56>>3]+f*+p[b+64>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}if(!(c+(d*+p[b+72>>3]+(e*+p[b+80>>3]+f*+p[b+88>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}if(!(c+(d*+p[b+96>>3]+(e*+p[b+104>>3]+f*+p[b+112>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}if(!(c+(d*+p[b+120>>3]+(e*+p[b+128>>3]+f*+p[b+136>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}if(!(c+(d*+p[b+144>>3]+(e*+p[b+152>>3]+f*+p[b+160>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}if(!(c+(d*+p[b+168>>3]+(e*+p[b+176>>3]+f*+p[b+184>>3]))<0.0))a=a+1|0;else if(!a)a=0;else{b=1;return b|0}b=(a|0)==0?0:(a|0)==8?2:1;return b|0}function gja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function hja(a){a=a|0;var b=0,c=0,d=0;d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){hja(b);Zpb(b)}b=f[a+76>>2]|0;if(b|0){c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=a+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){hja(b);Zpb(b)}d=f[a+24>>2]|0;if(!d)return;b=a+28|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);return}function ija(a){a=a|0;var b=0,c=0,d=0;d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){ija(b);Zpb(b)}b=f[a+76>>2]|0;if(b|0){c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=a+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){ija(b);Zpb(b)}d=f[a+24>>2]|0;if(!d)return;b=a+28|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);return}function jja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;d=a+1170|0;if((h[d>>0]|0)==(c&1|0))d=a+1171|0;else{b[d>>0]=c&1;d=a+1171|0;g=b[d>>0]|0;e=g<<24>>24!=0;i=e^1;b[d>>0]=i&1;if((i&1|0)!=(g&255|0)){b[d>>0]=g;if(c){i=(tva(f[a>>2]|0)|0)+140|0;qha(i,e,f[a+1288>>2]|0)}}}return (b[d>>0]|0)!=0|0}function kja(a){a=a|0;var c=0;c=a+1164|0;if(!(f[c>>2]|0))return;f[c>>2]=1;c=a+1171|0;if((b[c>>0]|0)==1)return;b[c>>0]=1;if(!(b[a+1170>>0]|0))return;c=(tva(f[a>>2]|0)|0)+140|0;qha(c,1,f[a+1288>>2]|0);return}function lja(a){a=a|0;var c=0,d=0;c=a+1164|0;if(!(f[c>>2]|0))return;f[c>>2]=2;c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){d=(tva(f[a>>2]|0)|0)+140|0;qha(d,0,f[a+1288>>2]|0)}}if(b[a+1168>>0]|0)return;if((b[c>>0]|0)==1)return;b[c>>0]=1;if(!(b[a+1170>>0]|0))return;d=(tva(f[a>>2]|0)|0)+140|0;qha(d,1,f[a+1288>>2]|0);return}function mja(a,b){a=a|0;b=b|0;b=f[b>>2]|0;if((b|0)==(f[a+4>>2]|0)){a=1;return a|0}a=(b|0)==(f[a+12>>2]|0);return a|0}function nja(a){a=a|0;if(!(f[a+1164>>2]|0))return;oja(a);return}function oja(a){a=a|0;var c=0,d=0,e=0;d=a+1164|0;e=(f[d>>2]|0)==1;pha(a)|0;f[d>>2]=2;c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){c=(tva(f[a>>2]|0)|0)+140|0;qha(c,0,f[a+1288>>2]|0)}}c=a+1168|0;if(!(b[c>>0]|0)){b[c>>0]=1;o$(782,a,4)}if(!e)return;f[d>>2]=1;return}function pja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;if(!(f[a+1164>>2]|0))return;if(!(b[c+192>>0]&1))return;if(f[c+196>>2]&2|0)return;r=a+1256|0;k=c;p=X(k,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;l=a+1260|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(o){d=0;q=20}else{j=m+-1|0;g=(j&m|0)==0;if(g)d=j&p;else if(p>>>0<m>>>0)d=p;else d=(p>>>0)%(m>>>0)|0;e=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!e)q=20;else{if(g)while(1){e=f[e>>2]|0;if(!e){q=20;break a}g=f[e+4>>2]|0;if(!((g|0)==(p|0)|(g&j|0)==(d|0))){q=20;break a}if((f[e+8>>2]|0)==(c|0))break a}do{e=f[e>>2]|0;if(!e){q=20;break a}g=f[e+4>>2]|0;if((g|0)!=(p|0)){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(d|0)){q=20;break a}}}while((f[e+8>>2]|0)!=(c|0))}}while(0);if((q|0)==20){c=Wpb(12)|0;f[c+8>>2]=k;f[c+4>>2]=p;f[c>>2]=0;j=a+1268|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[a+1272>>2];do if(o|i*+(m>>>0)<h){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(h/i))>>>0;Via(r,d>>>0<e>>>0?e:d);d=f[l>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&p;break}if(p>>>0<d>>>0){g=d;d=p}else{g=d;d=(p>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[r>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+1264|0;f[c>>2]=f[d>>2];f[d>>2]=c;f[e>>2]=d;d=f[c>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[r>>2]|0)+(d<<2)|0;q=33}}else{f[c>>2]=f[d>>2];q=33}if((q|0)==33)f[d>>2]=c;f[j>>2]=(f[j>>2]|0)+1}d=a+1171|0;if(b[d>>0]|0){b[d>>0]=0;if(b[a+1170>>0]|0){r=(tva(f[a>>2]|0)|0)+140|0;qha(r,0,f[a+1288>>2]|0)}}d=a+1168|0;if(b[d>>0]|0)return;b[d>>0]=1;o$(782,a,4);return}function qja(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(!(f[a+1164>>2]|0)){u=d;return}f[c>>2]=b;rja(a+1256|0,c)|0;f[c>>2]=b;rja(a+1276|0,c)|0;f[c>>2]=b;rja(a+1172|0,c)|0;f[c>>2]=b;rja(a+1192|0,c)|0;f[c>>2]=b;rja(a+1212|0,c)|0;Toa(b);u=d;return}function rja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=sja(a,b)|0;if(!l){a=0;return a|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0<i>>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;Zpb(l);a=1;return a|0}function sja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;e=X(h,1540483477)|0;e=(X(e>>>24^e,1540483477)|0)^1866966612;e=X(e>>>13^e,1540483477)|0;e=e>>>15^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=e&d;else if(e>>>0<g>>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function tja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;if(!(f[a+1164>>2]|0)){u=h;return}f[d>>2]=c;e=a+1248|0;g=f[e>>2]|0;if(g>>>0<(f[a+1252>>2]|0)>>>0){f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}else gja(a+1244|0,d);c=a+1171|0;if(b[c>>0]|0){b[c>>0]=0;if(b[a+1170>>0]|0){g=(tva(f[a>>2]|0)|0)+140|0;qha(g,0,f[a+1288>>2]|0)}}c=a+1168|0;if(b[c>>0]|0){u=h;return}b[c>>0]=1;o$(782,a,4);u=h;return}function uja(a){a=a|0;if(!(f[a+1164>>2]|0))return;oja(a);return}function vja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;d=s;if(!(f[a+1164>>2]|0)){u=s;return}f[d>>2]=c;rja(a+1256|0,d)|0;f[d>>2]=c;rja(a+1276|0,d)|0;f[d>>2]=c;rja(a+1172|0,d)|0;f[d>>2]=c;rja(a+1192|0,d)|0;f[d>>2]=c;rja(a+1212|0,d)|0;Toa(c);r=a+1256|0;k=c;p=X(k,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;l=a+1260|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(o){d=0;q=18}else{j=m+-1|0;g=(j&m|0)==0;if(g)d=j&p;else if(p>>>0<m>>>0)d=p;else d=(p>>>0)%(m>>>0)|0;e=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!e)q=18;else{if(g)while(1){e=f[e>>2]|0;if(!e){q=18;break a}g=f[e+4>>2]|0;if(!((g|0)==(p|0)|(g&j|0)==(d|0))){q=18;break a}if((f[e+8>>2]|0)==(c|0))break a}do{e=f[e>>2]|0;if(!e){q=18;break a}g=f[e+4>>2]|0;if((g|0)!=(p|0)){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(d|0)){q=18;break a}}}while((f[e+8>>2]|0)!=(c|0))}}while(0);if((q|0)==18){c=Wpb(12)|0;f[c+8>>2]=k;f[c+4>>2]=p;f[c>>2]=0;j=a+1268|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[a+1272>>2];do if(o|i*+(m>>>0)<h){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(h/i))>>>0;Via(r,d>>>0<e>>>0?e:d);d=f[l>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&p;break}if(p>>>0<d>>>0){g=d;d=p}else{g=d;d=(p>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[r>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+1264|0;f[c>>2]=f[d>>2];f[d>>2]=c;f[e>>2]=d;d=f[c>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[r>>2]|0)+(d<<2)|0;q=31}}else{f[c>>2]=f[d>>2];q=31}if((q|0)==31)f[d>>2]=c;f[j>>2]=(f[j>>2]|0)+1}d=a+1171|0;if(b[d>>0]|0){b[d>>0]=0;if(b[a+1170>>0]|0){r=(tva(f[a>>2]|0)|0)+140|0;qha(r,0,f[a+1288>>2]|0)}}d=a+1168|0;if(b[d>>0]|0){u=s;return}b[d>>0]=1;o$(782,a,4);u=s;return}function wja(a,b){a=a|0;b=b|0;vja(a,b);return}function xja(a,b){a=a|0;b=b|0;if(!(f[b+196>>2]&2)){pja(a,b);return}else{qja(a,b);return}}function yja(a,c){a=a|0;c=c|0;if(!(b[c+192>>0]&1)){qja(a,c);return}else{pja(a,c);return}}function zja(a){a=a|0;if(!(f[a+1164>>2]|0))return;oja(a);return}function Aja(a){a=a|0;if(!(f[a+1164>>2]|0))return;oja(a);return}function Bja(){if(!(b[209528]|0))rrb(209528)|0;f[52742]=215189;return}function Cja(a,b){a=a|0;b=b|0;f[a>>2]=b&15;f[a+4>>2]=b>>>4&15;f[a+8>>2]=b>>>8&15;f[a+12>>2]=b>>>12&15;f[a+16>>2]=b>>>16&15;return}function Dja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return b<<4|a|c<<8|d<<12|e<<16|0}function Eja(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[a>>2]|0)==1)w8a(b,33071,0);else w8a(b,10497,0);c=a+8|0;d=(f[c>>2]|0)==0;do if(!(f[a+4>>2]|0))if(d){x8a(b,9729,9987);break}else{x8a(b,9729,9729);break}else if(d){x8a(b,9728,9986);break}else{x8a(b,9728,9728);break}while(0);if(f[c>>2]|0)return;y8a(b,8.0);return}function Fja(a,b,c){a=a|0;b=b|0;c=c|0;return qqa(b,c,(f[a+16>>2]|0)==1&1)|0}function Gja(a,c,d,e,g,h,i,j,k,l,m,o,p){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;o=o|0;p=p|0;var q=0,r=0,t=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=u;u=u+32|0;B=M+20|0;C=M+8|0;K=M;I=(f[(f[c>>2]|0)+44>>2]|0)+64|0;H=Qqa(I)|0;I=Rqa(I)|0;D=f[c>>2]|0;J=(b[(f[D+44>>2]|0)+144>>0]&8)==0;Sra(D,a);D=zra(d)|0;E=g+e|0;F=E+h|0;w=B+4|0;y=B+8|0;z=C+4|0;A=C+8|0;t=f[i>>2]|0;f[B>>2]=t;r=f[i+4>>2]|0;f[w>>2]=r;G=f[i+8>>2]|0;f[y>>2]=G;f[C>>2]=t;f[z>>2]=r;f[A>>2]=G;G=X(D,F)|0;v=(f[s>>2]=t,+n[s>>2]);a:do if(G|0){t=0;x=v;while(1){r=i+(t<<2)|0;if(v<x){q=B;L=5}else if(v>+n[C>>2]){q=C;L=5}if((L|0)==5){L=0;n[q>>2]=v}v=+n[r+4>>2];if(v<+n[w>>2]){q=B;L=8}else if(v>+n[z>>2]){q=C;L=8}if((L|0)==8){L=0;n[q+4>>2]=v}v=+n[r+8>>2];if(v<+n[y>>2]){q=B;L=11}else if(v>+n[A>>2]){q=C;L=11}if((L|0)==11){L=0;n[q+8>>2]=v}q=t+D|0;if(q>>>0>=G>>>0)break a;t=q;x=+n[B>>2];v=+n[i+(q<<2)>>2]}}while(0);c=f[c>>2]|0;w=c+44|0;Xra(f[w>>2]|0,B,C);C=f[w>>2]|0;f[C+48>>2]=f[d>>2];d=C+144|0;b[d>>0]=b[d>>0]|8;if(!(Oqa((f[w>>2]|0)+64|0,G,0)|0)){L=0;u=M;return L|0}D5a(K,34962);I5a(f[K>>2]|0,X(F<<2,D)|0,0,35044);Fra(f[w>>2]|0,K,0);Sqa((f[w>>2]|0)+64|0,0,G,i)|0;t=f[w>>2]|0;r=f[t>>2]|0;Vqa(t+64|0,f[r+8>>2]|0,r)|0;r=f[w>>2]|0;f[r+104>>2]=F;Dra(r,0,e);Dra(f[w>>2]|0,1,g);Dra(f[w>>2]|0,2,h);Era(f[w>>2]|0,0,0);Era(f[w>>2]|0,1,e);Era(f[w>>2]|0,2,E);Hja(f[w>>2]|0,0,j,k);Hja(f[w>>2]|0,1,l,m);Hja(f[w>>2]|0,2,o,p);Yra(f[w>>2]|0,0,0,0)|0;r=kxa(a)|0;t=f[w>>2]|0;q=f[t+108>>2]|0;t=f[t+112>>2]|0;if((q|0)!=(t|0))do{wja(r,f[q>>2]|0);q=q+4|0}while((q|0)!=(t|0));r=c+28|0;if(!(f[r>>2]|0)){if((f[c+32>>2]|0)!=-1)L=19}else L=19;if((L|0)==19){q=zwa(a)|0;if(J){if(!(f[r>>2]|0))L=21}else L=21;if((L|0)==21)q=(X(H,-4)|0)+-148+(X(I,-2)|0)+q|0;L=(f[w>>2]|0)+64|0;J=(Qqa(L)|0)<<2;Bwa(a,q+148+J+((Rqa(L)|0)<<1)|0)}q=f[K+4>>2]|0;if(q|0)Ppb(q);L=1;u=M;return L|0}function Hja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;l=n;k=c+(d*12|0)|0;f[l>>2]=0;m=l+4|0;f[m>>2]=0;f[l+8>>2]=0;e=d*12|0;g=(e|0)/12|0;if(!e){h=l+8|0;d=0;c=0;e=0}else{if(g>>>0>357913941)fob(l);i=Wpb(e)|0;f[m>>2]=i;f[l>>2]=i;e=i+(g*12|0)|0;h=l+8|0;f[h>>2]=e;j=i;if(!d){d=j;c=j}else{g=c;d=i;c=i;while(1){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];g=g+12|0;c=c+12|0;if((g|0)==(k|0))break;else d=c}f[m>>2]=c;d=j}}b=b&255;k=a+68+(b*12|0)|0;g=f[k>>2]|0;f[l>>2]=g;f[k>>2]=d;k=a+68+(b*12|0)+4|0;l=f[k>>2]|0;f[m>>2]=l;f[k>>2]=c;a=a+68+(b*12|0)+8|0;f[h>>2]=f[a>>2];f[a>>2]=e;e=l;if(!g){u=n;return}if((e|0)!=(g|0))f[m>>2]=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0);Zpb(g);u=n;return}function Ija(a,b,c,d,e,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+48|0;s=r+32|0;o=r+24|0;t=r+16|0;q=r+8|0;p=r;c=f[c>>2]|0;Hra(o);f[t>>2]=c;f[s>>2]=f[t>>2];if(Gja(b,o,s,d,e,g,h,i,j,k,l,m,n)|0){f[q>>2]=f[o>>2];m=o+4|0;f[q+4>>2]=f[m>>2];f[o>>2]=0;l=m}else{f[q>>2]=0;l=o+4|0;m=q+4|0}f[m>>2]=0;l=f[l>>2]|0;if(l|0)Ppb(l);Kva(p,b,q);m=(f[p>>2]|0)==0;l=f[p+4>>2]|0;if(l|0)Ppb(l);if(m){f[a>>2]=0;m=q+4|0;l=a+4|0}else{f[a>>2]=f[q>>2];l=q+4|0;f[a+4>>2]=f[l>>2];f[q>>2]=0;m=l}f[l>>2]=0;l=f[m>>2]|0;if(!l){u=r;return}Ppb(l);u=r;return}function Jja(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+16|0;k=j;Boa(k,b);l=f[k>>2]|0;Noa(l,c);Yoa(l,0,d);Qoa(l,0,e);Qoa(l,1,g);Qoa(l,2,h);lpa(l,1,(i&1|0)!=0,1)|0;lpa(l,2,(i&2|0)!=0,1)|0;lpa(l,4,(i&4|0)!=0,1)|0;Lva(a,b,k);a=f[k+4>>2]|0;if(!a){u=j;return}Ppb(a);u=j;return}function Kja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+96|0;y=F+80|0;x=F+72|0;w=F+64|0;D=F+24|0;r=F+60|0;s=F+56|0;t=F+52|0;v=F+48|0;o=F+44|0;p=F+40|0;z=F+12|0;A=F;n=d+4|0;B=((f[n>>2]|0)-(f[d>>2]|0)>>2>>>0)/6|0;q=e+4|0;C=((f[q>>2]|0)-(f[e>>2]|0)>>2>>>0)/6|0;Lja(D,f[52742]|0);g=f[n>>2]|0;h=f[d>>2]|0;i=((f[q>>2]|0)-(f[e>>2]|0)>>2)+(g-h>>2)|0;j=D+8|0;k=f[D>>2]|0;E=D+4|0;if((f[j>>2]|0)-k>>2>>>0<i>>>0){if(i>>>0>1073741823)ud();l=(f[E>>2]|0)-k|0;m=Wpb(i<<2)|0;if((l|0)>0)Irb(m|0,k|0,l|0)|0;f[D>>2]=m;f[E>>2]=m+(l>>2<<2);f[j>>2]=m+(i<<2);if(k){Zpb(k);h=f[d>>2]|0;g=f[n>>2]|0}}f[r>>2]=f[E>>2];f[s>>2]=h;f[t>>2]=g;f[w>>2]=f[r>>2];f[x>>2]=f[s>>2];f[y>>2]=f[t>>2];Mja(D,w,x,y)|0;f[v>>2]=f[E>>2];f[o>>2]=f[e>>2];f[p>>2]=f[q>>2];f[w>>2]=f[v>>2];f[x>>2]=f[o>>2];f[y>>2]=f[p>>2];Mja(D,w,x,y)|0;f[z>>2]=0;f[z+4>>2]=B;i=z+8|0;j=f[(f[c+4>>2]|0)+44>>2]|0;h=f[j+68>>2]|0;d=f[j+72>>2]|0;if((h|0)==(d|0))g=0;else{g=-1;do{g=f[h+8>>2]&g;h=h+12|0}while((h|0)!=(d|0))}f[i>>2]=g;f[A>>2]=0;f[A+4>>2]=C;i=A+8|0;h=f[j+80>>2]|0;d=f[j+84>>2]|0;if((h|0)==(d|0))g=0;else{g=-1;do{g=f[h+8>>2]&g;h=h+12|0}while((h|0)!=(d|0))}f[i>>2]=g;c=f[D>>2]|0;Hra(x);f[w>>2]=4681;f[y>>2]=f[w>>2];if(Gja(b,x,y,B,C,0,c,z,1,A,1,0,0)|0){f[a>>2]=f[x>>2];g=x+4|0;f[a+4>>2]=f[g>>2];f[x>>2]=0;h=g}else{f[a>>2]=0;h=x+4|0;g=a+4|0}f[g>>2]=0;g=f[h>>2]|0;if(g|0)Ppb(g);g=f[D+12>>2]|0;if(g|0)Pha(g,D);g=f[D>>2]|0;if(!g){u=F;return}h=f[E>>2]|0;if((h|0)!=(g|0))f[E>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g);u=F;return}function Lja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209664]|0))if(rrb(209664)|0){f[52739]=0;f[52740]=0;f[52741]=0}e=f[52740]|0;if((f[52739]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52740]|0;j=h+-12|0;while(1){e=h+-12|0;f[52740]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-4-i|0)>>>2)<<2);Zpb(i);e=f[52740]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function Mja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=f[a>>2]|0;v=q;n=(f[b>>2]|0)-v|0;r=n>>2;b=q+(r<<2)|0;k=f[c>>2]|0;g=f[d>>2]|0;w=g-k|0;m=w>>2;d=k;t=g;if((w|0)<=0){w=b;return w|0}p=a+8|0;h=f[p>>2]|0;w=a+4|0;u=f[w>>2]|0;l=u;if((m|0)<=(h-l>>2|0)){j=l-b|0;e=j>>2;if((m|0)>(e|0)){e=d+(e<<2)|0;g=e;if((e|0)==(t|0))e=u;else{i=((t+-4-g|0)>>>2)+1|0;h=u;while(1){f[h>>2]=f[e>>2];e=e+4|0;if((e|0)==(t|0))break;else h=h+4|0}e=u+(i<<2)|0;f[w>>2]=e}if((j|0)>0)l=e;else{w=b;return w|0}}else l=u;j=l-(b+(m<<2))|0;k=j>>2;e=b+(k<<2)|0;if(e>>>0<u>>>0){i=((u+(0-k-r<<2)+~v|0)>>>2)+1|0;h=l;while(1){f[h>>2]=f[e>>2];e=e+4|0;if(e>>>0>=u>>>0)break;else h=h+4|0}f[w>>2]=l+(i<<2)}if(k){Jrb(l+(0-k<<2)|0,b|0,j|0)|0;d=f[c>>2]|0}if((d|0)==(g|0)){w=b;return w|0}else e=b;while(1){f[e>>2]=f[d>>2];d=d+4|0;if((d|0)==(g|0))break;else e=e+4|0}return b|0}e=(l-v>>2)+m|0;if(e>>>0>1073741823)fob(a);g=h-v|0;h=g>>1;e=g>>2>>>0<536870911?(h>>>0<e>>>0?e:h):1073741823;h=b;g=n>>2;do if(!e){o=0;s=0}else if(e>>>0>1073741823)ud();else{s=Wpb(e<<2)|0;o=s;break}while(0);j=s+(g<<2)|0;i=s+(e<<2)|0;if((t|0)==(d|0))e=j;else{g=g+((t+-4+(0-k)|0)>>>2)+1|0;e=j;while(1){f[e>>2]=f[d>>2];d=d+4|0;if((d|0)==(t|0))break;else e=e+4|0}e=s+(g<<2)|0}if((n|0)>0)Irb(o|0,q|0,n|0)|0;d=l-h|0;if((d|0)>0){Irb(e|0,b|0,d|0)|0;b=e+(d>>>2<<2)|0}else b=e;f[a>>2]=s;f[w>>2]=b;f[p>>2]=i;if(!q){w=j;return w|0}Zpb(q);w=j;return w|0}function Nja(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+32|0;i=l+20|0;k=l;if((e|0)==0|(g|0)==0){k=1;u=l;return k|0}if(!h){k=2;u=l;return k|0}b=(b|0)==0?i:b;switch(a|0){case 3:case 2:case 0:case 1:{switch(a|0){case 2:{b=6409;break}case 1:{b=6407;break}case 3:{b=6410;break}default:b=6408}G6a(k,e,g,b,5121,h);F6a(c,k)|0;b=f[k>>2]|0;f[k>>2]=0;if(b|0)_pb(b);j=25;break}case 4:{if((b|0)==(i|0))f[i>>2]=1;b=(f[b>>2]|0)+-1|0;if(b>>>0<4)b=50462979>>>(b<<3)&255;else b=4;D6a(k,h,e,0,b);C6a(d,k)|0;b=f[k>>2]|0;f[k>>2]=0;if(b|0)_pb(b);j=25;break}case 5:{if((b|0)==(i|0))f[i>>2]=0;b=(f[b>>2]|0)+-1|0;if(b>>>0<4)b=50462979>>>(b<<3)&255;else b=4;D6a(k,h,e,1,b);C6a(d,k)|0;b=f[k>>2]|0;f[k>>2]=0;if(b|0)_pb(b);j=25;break}default:b=3}do if((j|0)==25){if(!(f[c>>2]|0))if(!(f[d>>2]|0)){b=4;break}b=0}while(0);k=b;u=l;return k|0}function Oja(){if(!(b[209528]|0))rrb(209528)|0;f[52743]=215189;return}function Pja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;a=fxa(a)|0;e=c+196|0;g=f[e>>2]|0;if(!((g&32|0)!=0|(g&2048|0)==0&(a^1))){g=d+48|0;n[g>>2]=+n[c+156>>2]+ +n[g>>2];g=d+52|0;n[g>>2]=+n[c+160>>2]+ +n[g>>2];g=d+56|0;n[g>>2]=+n[c+164>>2]+ +n[g>>2]}if(!b)return;a=f[e>>2]|0;if(!(a&24))return;if(a&8){Pga(b,d);a=f[e>>2]|0}if(!(a&16))return;Mga(b,d);return}function Qja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0;P=u;u=u+144|0;O=P+128|0;N=P+112|0;M=P+56|0;F=P;e=f[(f[c+4>>2]|0)+44>>2]|0;e=(f[e+72>>2]|0)-(f[e+68>>2]|0)|0;J=(e|0)/12|0;g=f[(f[d+4>>2]|0)+44>>2]|0;g=(f[g+72>>2]|0)-(f[g+68>>2]|0)|0;D=(g|0)/12|0;if(J>>>0>D>>>0){Qja(a,b,d,c);O=a+8|0;K=a+16|0;n=+p[a>>3];o=+p[O>>3];q=+p[K>>3];M=a+24|0;p[a>>3]=+p[M>>3];N=a+32|0;p[O>>3]=+p[N>>3];O=a+40|0;p[K>>3]=+p[O>>3];p[M>>3]=n;p[N>>3]=o;p[O>>3]=q;u=P;return}Rja(O,f[52743]|0);Rja(N,f[52743]|0);E=M+48|0;p[E>>3]=C;a:do if(!e){q=0.0;n=C;o=0.0;m=0.0;l=0.0;k=0.0;j=0.0}else{I=O+4|0;s=F+48|0;t=F+8|0;G=M+8|0;v=F+16|0;H=M+16|0;w=F+24|0;x=M+24|0;y=F+32|0;K=M+32|0;z=F+40|0;A=M+40|0;B=N+4|0;if(!g){h=f[O>>2]|0;i=h;g=0;e=f[I>>2]|0;while(1){if((e|0)==(h|0))e=h;else{e=e+(~(((e+-24-i|0)>>>0)/24|0)*24|0)|0;f[I>>2]=e}g=g+1|0;if(g>>>0>=J>>>0){q=0.0;n=C;o=0.0;m=0.0;l=0.0;k=0.0;j=0.0;break a}}}else{r=0;e=0}do{i=0;do{Vja(F,e,b,c,r,d,i,O,N);n=+p[s>>3];j=+p[E>>3];if(n<j){p[M>>3]=+p[F>>3];p[G>>3]=+p[t>>3];p[H>>3]=+p[v>>3];p[x>>3]=+p[w>>3];p[K>>3]=+p[y>>3];p[A>>3]=+p[z>>3];p[E>>3]=n;e=M}else n=j;g=f[N>>2]|0;h=f[B>>2]|0;if((h|0)!=(g|0))f[B>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);i=i+1|0}while(i>>>0<D>>>0);h=f[O>>2]|0;g=f[I>>2]|0;if((g|0)!=(h|0))f[I>>2]=g+(~(((g+-24-h|0)>>>0)/24|0)*24|0);r=r+1|0}while(r>>>0<J>>>0);q=+p[A>>3];o=+p[M>>3];m=+p[G>>3];l=+p[H>>3];k=+p[M+24>>3];j=+p[K>>3]}while(0);n=+L(+n);p[a>>3]=o;p[a+8>>3]=m;p[a+16>>3]=l;p[a+24>>3]=k;p[a+32>>3]=j;p[a+40>>3]=q;p[a+48>>3]=n;e=f[N+12>>2]|0;if(e|0)Wja(e,N);h=f[N>>2]|0;if(h|0){e=N+4|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-24-h|0)>>>0)/24|0)*24|0);Zpb(h)}e=f[O+12>>2]|0;if(e|0)Wja(e,O);h=f[O>>2]|0;if(h|0){e=O+4|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-24-h|0)>>>0)/24|0)*24|0);Zpb(h)}u=P;return}function Rja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209672]|0))if(rrb(209672)|0){f[52744]=0;f[52745]=0;f[52746]=0}e=f[52745]|0;if((f[52744]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52745]|0;j=h+-12|0;while(1){e=h+-12|0;f[52745]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~(((h+-24-i|0)>>>0)/24|0)*24|0);Zpb(i);e=f[52745]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function Sja(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0,i=0.0,j=0,k=0,l=0,m=0;l=f[a+512>>2]|0;j=f[a+928>>2]|0;k=f[a+936>>2]|0;m=f[a+2e3>>2]|0;if(k|0){h=0;do{d=j+(h*24|0)|0;e=+p[d>>3];if(e==+p[d+24>>3])if(+p[j+(h*24|0)+8>>3]==+p[d+32>>3]){if(!(+p[j+(h*24|0)+16>>3]==+p[d+40>>3]))m=34}else m=34;else m=34;do if((m|0)==34){m=0;n[(a+320|0)>>2]=e;c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0;if(c>>>0<b>>>0){n[c>>2]=e;f[(l+1144|0)>>2]=c+4|0;c=c+4|0}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}e=+p[j+(h*24|0)+8>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1144|0)>>2]=c}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}e=+p[j+(h*24|0)+16>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1144|0)>>2]=c}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}if((c|0)==(b|0)){N4(l+1140|0,a);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}else{f[c>>2]=f[a>>2];c=c+4|0;f[(l+1144|0)>>2]=c}if((c|0)==(b|0)){N4(l+1140|0,a+4|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}else{f[c>>2]=f[(a+4|0)>>2];c=c+4|0;f[(l+1144|0)>>2]=c}if((c|0)==(b|0)){N4(l+1140|0,a+8|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}else{f[c>>2]=f[(a+8|0)>>2];c=c+4|0;f[(l+1144|0)>>2]=c}e=+p[(d+24|0)>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1144|0)>>2]=c}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}e=+p[(d+24|0)+8>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1144|0)>>2]=c}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}e=+p[(d+24|0)+16>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1144|0)>>2]=c}else{Oy(l+1140|0,a+320|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}if((c|0)==(b|0)){N4(l+1140|0,a);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}else{f[c>>2]=f[a>>2];c=c+4|0;f[(l+1144|0)>>2]=c}if((c|0)==(b|0)){N4(l+1140|0,a+4|0);c=f[(l+1144|0)>>2]|0;b=f[(l+1148|0)>>2]|0}else{f[c>>2]=f[(a+4|0)>>2];c=c+4|0;f[(l+1144|0)>>2]=c}if((c|0)==(b|0)){N4(l+1140|0,a+8|0);break}else{f[c>>2]=f[(a+8|0)>>2];f[(l+1144|0)>>2]=c+4;break}}while(0);h=h+2|0}while(h>>>0<((k|0)/24|0)>>>0)}j=f[(l+1092|0)>>2]|0;k=(f[(l+1096|0)>>2]|0)-j|0;if(k|0){h=0;do{d=j+(h*24|0)|0;i=+p[d>>3];e=+p[d+24>>3];if(i==e)if(+p[j+(h*24|0)+8>>3]==+p[d+32>>3]){if(!(+p[j+(h*24|0)+16>>3]==+p[d+40>>3]))m=75}else m=75;else m=75;a:do if((m|0)==75){m=0;g=+p[d+48>>3];if(i==g)if(+p[j+(h*24|0)+8>>3]==+p[d+56>>3])if(+p[j+(h*24|0)+16>>3]==+p[d+64>>3])break;do if(e==g){if(!(+p[d+32>>3]==+p[d+56>>3]))break;if(+p[d+40>>3]==+p[d+64>>3])break a}while(0);n[(a+320|0)>>2]=i;c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0;if(c>>>0<b>>>0){n[c>>2]=i;f[(l+1156|0)>>2]=c+4|0;c=c+4|0}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[j+(h*24|0)+8>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[j+(h*24|0)+16>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}if((c|0)==(b|0)){N4(l+1152|0,a);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[a>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+4|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[(a+4|0)>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+8|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[(a+8|0)>>2];c=c+4|0;f[(l+1156|0)>>2]=c}e=+p[(d+24|0)>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[(d+24|0)+8>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[(d+24|0)+16>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}if((c|0)==(b|0)){N4(l+1152|0,a);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[a>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+4|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[(a+4|0)>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+8|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[(a+8|0)>>2];c=c+4|0;f[(l+1156|0)>>2]=c}e=+p[(d+48|0)>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[(d+48|0)+8>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}e=+p[(d+48|0)+16>>3];n[(a+320|0)>>2]=e;if(c>>>0<b>>>0){n[c>>2]=e;c=c+4|0;f[(l+1156|0)>>2]=c}else{Oy(l+1152|0,a+320|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}if((c|0)==(b|0)){N4(l+1152|0,a);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[a>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+4|0);c=f[(l+1156|0)>>2]|0;b=f[(l+1160|0)>>2]|0}else{f[c>>2]=f[(a+4|0)>>2];c=c+4|0;f[(l+1156|0)>>2]=c}if((c|0)==(b|0)){N4(l+1152|0,a+8|0);break}else{f[c>>2]=f[(a+8|0)>>2];f[(l+1156|0)>>2]=c+4;break}}while(0);h=h+3|0}while(h>>>0<((k|0)/24|0)>>>0)}b=f[(l+1080|0)>>2]|0;c=f[(l+1084|0)>>2]|0;if((c|0)!=(b|0))f[(l+1084|0)>>2]=c+(~(((c+-24-b|0)>>>0)/24|0)*24|0);b=f[(l+1092|0)>>2]|0;c=f[(l+1096|0)>>2]|0;if((c|0)!=(b|0))f[(l+1096|0)>>2]=c+(~(((c+-24-b|0)>>>0)/24|0)*24|0);h=f[(l+1056|0)>>2]|0;b=f[(l+1060|0)>>2]|0;if((b|0)!=(h|0))do{c=b+-16|0;f[(l+1060|0)>>2]=c;d=f[b+-4>>2]|0;if(d|0)rha(d,c);d=f[c>>2]|0;if(d|0){b=b+-12|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d)}b=f[(l+1060|0)>>2]|0}while((b|0)!=(h|0));b=f[(l+1024|0)>>2]|0;c=f[(l+1028|0)>>2]|0;if((c|0)!=(b|0))f[(l+1028|0)>>2]=c+(~((c+-16-b|0)>>>4)<<4);if(f[(l+1048|0)>>2]|0){b=f[(l+1044|0)>>2]|0;if(b|0)do{k=b;b=f[b>>2]|0;Zpb(k)}while((b|0)!=0);f[(l+1044|0)>>2]=0;c=f[(l+1040|0)>>2]|0;if(c|0){b=0;do{f[(f[(l+1036|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(l+1048|0)>>2]=0}f[a+2e3>>2]=m}function Tja(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=f[a+640>>2]|0;w=f[a+872>>2]|0;s=f[a+880>>2]|0;t=f[a+888>>2]|0;x=f[a+1296>>2]|0;r=f[a+1304>>2]|0;u=f[a+1312>>2]|0;n=f[a+1320>>2]|0;o=f[a+1328>>2]|0;m=f[a+1336>>2]|0;k=f[a+1440>>2]|0;e=f[a+1448>>2]|0;q=f[a+2664>>2]|0;a:{if((f[52724]|0)==(e|0)){e=0;d=0;c=0}else{c=f[(e+-12|0)>>2]|0;d=f[(e+-8|0)>>2]|0;j=f[(e+-4|0)>>2]|0;f[(e+-4|0)>>2]=0;f[(e+-8|0)>>2]=0;f[(e+-12|0)>>2]=0;i=f[52725]|0;g=i;while(1){e=g+-12|0;f[52725]=e;h=f[e>>2]|0;if(h){e=g+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-12-h|0)>>>0)/12|0)*12|0);Zpb(h);e=f[52725]|0}if((e|0)==(i+-12|0|0)){e=j;break}else g=e}}f[n>>2]=c;f[o>>2]=d;f[m>>2]=e;f[((a+352|0)+40|0)>>2]=k;eia((a+352|0)+44|0,f[52698]|0);i=(f[(f[(f[(a+352|0)>>2]|0)+4>>2]|0)+-4>>2]|0)+1|0;l=f[o>>2]|0;j=f[n>>2]|0;do if(i>>>0>((l-j|0|0)/12|0)>>>0){k=i-((l-j|0|0)/12|0)|0;c=f[m>>2]|0;if(((c-l|0)/12|0)>>>0>=k>>>0){c=k;d=l;while(1){f[d>>2]=-1;b[d+8>>0]=0;c=c+-1|0;if(!c)break;else d=d+12|0}f[o>>2]=l+(k*12|0);break}if(i>>>0>357913941){q=117;f[a+2672>>2]=2;f[a+2676>>2]=4;break a}e=((c-j|0)/12|0)>>>0<178956970?(((c-j|0)/12|0)<<1>>>0<i>>>0?i:((c-j|0)/12|0)<<1):357913941;if(!e)h=0;else{if(e>>>0>357913941){q=120;f[a+2672>>2]=2;f[a+2676>>2]=4;break a}h=Wpb(e*12|0)|0}g=h+(((l-j|0|0)/12|0)*12|0)|0;c=k;d=g;while(1){f[d>>2]=-1;b[d+8>>0]=0;c=c+-1|0;if(!c)break;else d=d+12|0}if((l-j|0|0)>0)Irb(g+(((l-j|0|0)/-12|0)*12|0)|0|0,j|0,l-j|0|0)|0;f[n>>2]=g+(((l-j|0|0)/-12|0)*12|0)|0;f[o>>2]=h+(i*12|0);f[m>>2]=h+(e*12|0);if(!j)break;Zpb(j)}else{if(i>>>0>=((l-j|0|0)/12|0)>>>0)break;if((j+(i*12|0)|0|0)==(l|0))break;f[o>>2]=l+(~(((l+-12-(j+(i*12|0)|0)|0)>>>0)/12|0)*12|0)}while(0);e=f[(a+352|0)>>2]|0;c=f[e>>2]|0;e=f[e+4>>2]|0;if((c|0)!=(e|0))do{d=f[c>>2]|0;if((f[(f[n>>2]|0)+(d*12|0)>>2]|0)==-1)oia(a+352|0,d);c=c+4|0}while((c|0)!=(e|0));f[a>>2]=f[((a+352|0)+44|0)>>2];f[(a+4|0)>>2]=f[((a+352|0)+48|0)>>2];f[(a+8|0)>>2]=f[((a+352|0)+52|0)>>2];f[((a+352|0)+52|0)>>2]=0;f[((a+352|0)+48|0)>>2]=0;f[((a+352|0)+44|0)>>2]=0;f[(a+12|0)>>2]=f[((a+352|0)+56|0)>>2];f[((a+352|0)+56|0)>>2]=0;nia((a+352|0)+44|0);do if(!(f[((a+352|0)+40|0)>>2]|0))q=161;else{c=f[n>>2]|0;if((f[m>>2]|0)==(c|0)){p=c;q=162;break}d=f[o>>2]|0;if((d|0)!=(c|0))f[o>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);do if(!(b[209624]|0)){if(!(rrb(209624)|0))break;f[52724]=0;f[52725]=0;f[52726]=0}while(0);e=f[52725]|0;d=f[52726]|0;if(e>>>0<d>>>0){f[e>>2]=0;f[(e+4|0)>>2]=0;f[e+8>>2]=0;f[e>>2]=f[n>>2];f[(e+4|0)>>2]=f[o>>2];f[e+8>>2]=f[m>>2];f[m>>2]=0;f[o>>2]=0;f[n>>2]=0;f[52725]=e+12;break}i=f[52724]|0;c=((e-i|0)/12|0)+1|0;if(c>>>0>357913941){q=145;f[a+2672>>2]=2;f[a+2676>>2]=4;break a}c=((d-i|0)/12|0)>>>0<178956970?(((d-i|0)/12|0)<<1>>>0<c>>>0?c:((d-i|0)/12|0)<<1):357913941;if(!c)d=0;else{if(c>>>0>357913941){q=148;f[a+2672>>2]=2;f[a+2676>>2]=4;break a}d=Wpb(c*12|0)|0}h=d+(((e-i|0)/12|0)*12|0)|0;g=d+(c*12|0)|0;f[d+(((e-i|0)/12|0)*12|0)+8>>2]=0;f[h>>2]=f[n>>2];f[d+(((e-i|0)/12|0)*12|0)+4>>2]=f[o>>2];f[d+(((e-i|0)/12|0)*12|0)+8>>2]=f[m>>2];f[m>>2]=0;f[o>>2]=0;f[n>>2]=0;if((e|0)==(i|0)){d=h;c=e}else{c=e;d=h;e=h;do{l=e+-12|0;q=c;c=c+-12|0;f[l>>2]=0;m=e+-8|0;f[m>>2]=0;f[e+-4>>2]=0;f[l>>2]=f[c>>2];f[m>>2]=f[(q+-8|0)>>2];f[e+-4>>2]=f[(q+-4|0)>>2];f[(q+-4|0)>>2]=0;f[(q+-8|0)>>2]=0;f[c>>2]=0;e=d+-12|0;d=e}while((c|0)!=(i|0));i=f[52724]|0;c=f[52725]|0}f[52724]=d;f[52725]=h+12|0;f[52726]=g;h=i;if((c|0)!=(h|0))do{d=c;c=c+-12|0;e=f[c>>2]|0;if(e|0){g=f[(d+-8|0)>>2]|0;if((g|0)!=(e|0))f[(d+-8|0)>>2]=g+(~(((g+-12-e|0)>>>0)/12|0)*12|0);Zpb(e)}}while((c|0)!=(h|0));if(!i){q=161;break}Zpb(i);q=161}while(0);if((q|0)==161){p=f[n>>2]|0;q=162}do if((q|0)==162){q=0;if(!p)break;c=f[o>>2]|0;if((c|0)!=(p|0))f[o>>2]=c+(~(((c+-12-p|0)>>>0)/12|0)*12|0);Zpb(p)}while(0);c=f[((a+352|0)+24|0)>>2]|0;if(c|0)rha(c,(a+352|0)+12|0);c=f[((a+352|0)+12|0)>>2]|0;if(c|0){d=f[((a+352|0)+16|0)>>2]|0;if((d|0)!=(c|0))f[((a+352|0)+16|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}g=f[a>>2]|0;h=(f[(a+4|0)>>2]|0)-g>>4;do if(!h)e=0;else{c=-1;d=-1;i=0;do{e=f[g+(i<<4)>>2]|0;if((f[g+(i<<4)+4>>2]|0)-e>>2>>>0>2){o=f[e>>2]|0;p=o>>>0<c>>>0;c=p?o:c;d=p?i:d}i=i+1|0}while((i|0)!=(h|0));if((c|0)==-1){e=0;break}lia(a+352|0,a+320|0,g+(d<<4)|0);c=f[u>>2]|0;if(c|0)rha(c,a+320|0);c=f[(a+320|0)>>2]|0;if(c|0){d=f[v>>2]|0;if((d|0)!=(c|0))f[v>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);f[((a+320|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+320|0)>>2]=0}f[(a+320|0)>>2]=f[(a+352|0)>>2];f[v>>2]=f[((a+352|0)+4|0)>>2];f[((a+320|0)+8|0)>>2]=f[((a+352|0)+8|0)>>2];f[((a+352|0)+8|0)>>2]=0;f[((a+352|0)+4|0)>>2]=0;f[(a+352|0)>>2]=0;f[u>>2]=f[((a+352|0)+12|0)>>2];f[((a+352|0)+12|0)>>2]=0;mia((a+320|0)+16|0,(a+352|0)+16|0);nia((a+352|0)+16|0);c=f[((a+352|0)+12|0)>>2]|0;if(c|0)rha(c,a+352|0);c=f[(a+352|0)>>2]|0;if(c|0){d=f[((a+352|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+352|0)+4|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}e=1}while(0);nia(a);c=f[((a+32|0)+12|0)>>2]|0;if(c|0)rha(c,a+32|0);c=f[(a+32|0)>>2]|0;if(c|0){d=f[r>>2]|0;if((d|0)!=(c|0))f[r>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}do if(e){f[((a+132|0)+36|0)>>2]=(a+320|0)+16|0;d=f[(a+320|0)>>2]|0;c=f[d>>2]|0;f[x>>2]=c;i=f[v>>2]|0;if((d|0)!=(i|0)){do{g=f[d>>2]|0;h=(f[t>>2]|0)+(g>>>5<<2)|0;f[h>>2]=f[h>>2]&~(1<<(g&31));h=f[s>>2]|0;if(f[(h+(g*24|0)+12|0)>>2]|0){c=f[(h+(g*24|0)+8|0)>>2]|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);f[(h+(g*24|0)+8|0)>>2]=0;e=f[h+(g*24|0)+4>>2]|0;if(e|0){c=0;do{f[(f[(h+(g*24|0)|0)>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[(h+(g*24|0)+12|0)>>2]=0}d=d+4|0}while((d|0)!=(i|0));c=f[x>>2]|0}if((pia(a+132|0,c,0)|0)==2){e=6;break}f[x>>2]=(f[x>>2]|0)+1;e=0}else e=7;while(0);nia((a+320|0)+16|0);c=f[u>>2]|0;if(c|0)rha(c,a+320|0);c=f[(a+320|0)>>2]|0;if(c|0){d=f[v>>2]|0;if((d|0)!=(c|0))f[v>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}if((e|0)==7){f[a+2672>>2]=2;f[a+2676>>2]=6;break a}if((f[x>>2]|0)>>>0>=((f[w>>2]|0)+-1|0)>>>0){f[a+2672>>2]=2;f[a+2676>>2]=6;break a}}f[a+2664>>2]=q}function Uja(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=f[a+432>>2]|0;n=f[a+1112>>2]|0;o=f[a+1168>>2]|0;c=f[a+1200>>2]|0;d=f[a+1224>>2]|0;p=f[a+2664>>2]|0;if(n>>>0>c-d>>2>>>0){dia(a+304|0,n-(c-d>>2)|0);g=f[(a+304|0)>>2]|0;c=f[o>>2]|0}else if(n>>>0<c-d>>2>>>0)if((d+(n<<2)|0|0)==(c|0))g=d;else{f[o>>2]=c+(~((c+-4-(d+(n<<2)|0)|0)>>>2)<<2)|0;g=d;c=c+(~((c+-4-(d+(n<<2)|0)|0)>>>2)<<2)|0}else g=d;if((g|0)==(c|0))p=11;else{e=0;d=g;while(1){f[d>>2]=e;d=d+4|0;if((d|0)==(c|0))break;else e=e+1|0}if(!n)h=1;else p=11}if((p|0)==11){g=0;do{h=f[(m+1056|0)>>2]|0;e=h+(g<<4)|0;h=h+(g<<4)+4|0;Feb(f[e>>2]|0,f[h>>2]|0,a+32|0);e=f[e>>2]|0;i=f[h>>2]|0;f[a>>2]=e;do if((i|0)==(e|0))p=20;else{c=a+32|0;d=a;while(1){f[c>>2]=f[d>>2];c=(f[(a+32|0)>>2]|0)+4|0;f[(a+32|0)>>2]=c;if((c|0)==(i|0)){p=18;break}k=f[a>>2]|0;l=f[k>>2]|0;if((l|0)==(f[c>>2]|0))break;else{c=a;d=a+32|0}}if((p|0)==18){p=20;break}if((k|0)==(i|0))j=i;else{if((k+8|0|0)==(i|0))c=k;else{d=k+8|0;e=l;c=k;do{j=e;e=f[d>>2]|0;if((j|0)!=(e|0)){c=c+4|0;f[c>>2]=e}d=d+4|0}while((d|0)!=(i|0))}j=c+4|0}}while(0);if((p|0)==20){p=0;j=i}if((i|0)!=(j|0))f[h>>2]=i+(~((i+-4-j|0)>>>2)<<2);g=g+1|0}while((g|0)!=(n|0));h=0}eia(a+288|0,f[52698]|0);if(h){c=(a+288|0)+8|0;d=(a+288|0)+4|0}else{g=0;do{_ga(a+32|0,f[52698]|0);c=f[((a+288|0)+4|0)>>2]|0;if(c>>>0<(f[((a+288|0)+8|0)>>2]|0)>>>0){f[c>>2]=0;f[(c+4|0)>>2]=0;f[c+8>>2]=0;f[c>>2]=f[(a+32|0)>>2];f[(c+4|0)>>2]=f[((a+32|0)+4|0)>>2];f[c+8>>2]=f[((a+32|0)+8|0)>>2];f[((a+32|0)+8|0)>>2]=0;f[((a+32|0)+4|0)>>2]=0;f[(a+32|0)>>2]=0;f[c+12>>2]=f[((a+32|0)+12|0)>>2];f[((a+32|0)+12|0)>>2]=0;f[((a+288|0)+4|0)>>2]=c+16}else{sia(a+288|0,a+32|0);c=f[((a+32|0)+12|0)>>2]|0;if(c|0)rha(c,a+32|0)}c=f[(a+32|0)>>2]|0;if(c|0){d=f[((a+32|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+32|0)+4|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}c=f[(m+1056|0)>>2]|0;d=c+(g<<4)|0;e=(f[((a+288|0)+4|0)>>2]|0)+-16|0;if((e|0)!=(d|0))tia(e,f[d>>2]|0,f[c+(g<<4)+4>>2]|0);g=g+1|0}while((g|0)!=(n|0));c=(a+288|0)+8|0;d=(a+288|0)+4|0}m=f[(a+304|0)>>2]|0;n=f[o>>2]|0;h=f[((a+304|0)+8|0)>>2]|0;f[((a+304|0)+8|0)>>2]=0;f[o>>2]=0;f[(a+304|0)>>2]=0;i=f[((a+304|0)+12|0)>>2]|0;f[((a+304|0)+12|0)>>2]=0;j=f[(a+288|0)>>2]|0;o=f[d>>2]|0;k=f[c>>2]|0;f[c>>2]=0;f[d>>2]=0;f[(a+288|0)>>2]=0;l=f[((a+288|0)+12|0)>>2]|0;f[((a+288|0)+12|0)>>2]=0;f[(a+132|0)>>2]=m;f[((a+132|0)+4|0)>>2]=n;f[(a+132|0)+8>>2]=h;f[(a+256|0)+8>>2]=0;f[((a+256|0)+4|0)>>2]=0;f[(a+256|0)>>2]=0;f[((a+132|0)+12|0)>>2]=i;f[((a+256|0)+12|0)>>2]=0;f[((a+132|0)+16|0)>>2]=j;f[(a+132|0)+20>>2]=o;f[(a+132|0)+24>>2]=k;f[(a+256|0)+24>>2]=0;f[(a+256|0)+20>>2]=0;f[((a+256|0)+16|0)>>2]=0;f[(a+132|0)+28>>2]=l;f[(a+256|0)+28>>2]=0;l=(a+132|0)+32|0;f[l>>2]=n-m>>2;m=(a+132|0)+40|0;fia(m,f[52698]|0);n=(a+132|0)+56|0;k=f[52698]|0;if(!(b[209616]|0))if(rrb(209616)|0){f[52721]=0;f[52722]=0;f[52723]=0}j=f[52722]|0;a:do if((f[52721]|0)==(j|0)){e=0;d=0;c=0}else{c=f[(j+-12|0)>>2]|0;d=f[(j+-8|0)>>2]|0;e=f[(j+-4|0)>>2]|0;f[(j+-12|0)>>2]=0;f[(j+-8|0)>>2]=0;f[(j+-4|0)>>2]=0;g=j;h=0;i=0;while(1){g=g+-12|0;f[52722]=g;if(h){Zpb(i);g=f[52722]|0}if((g|0)==(j+-12|0|0))break a;i=f[g+-12>>2]|0;h=i}}while(0);f[n>>2]=c;f[((a+132|0)+60|0)>>2]=d;f[(a+132|0)+64>>2]=e;f[((a+132|0)+68|0)>>2]=k;_ga((a+132|0)+72|0,f[52698]|0);eia((a+132|0)+88|0,f[52698]|0);k=(a+132|0)+44|0;c=f[l>>2]|0;if((((f[k>>2]|0)-(f[m>>2]|0)|0)/24|0)>>>0<c>>>0)do{gia(a+32|0,f[52698]|0);e=f[k>>2]|0;if(e>>>0<(f[((a+132|0)+48|0)>>2]|0)>>>0){g=f[(a+32|0)>>2]|0;f[(a+32|0)>>2]=0;d=f[((a+32|0)+4|0)>>2]|0;f[((a+32|0)+4|0)>>2]=0;f[e>>2]=g;f[e+4>>2]=d;c=f[((a+32|0)+8|0)>>2]|0;f[(e+8|0)>>2]=c;o=f[((a+32|0)+12|0)>>2]|0;f[e+12>>2]=o;f[e+16>>2]=f[((a+32|0)+16|0)>>2];if(o|0){c=f[c+4>>2]|0;if(!((d+-1|0)&d))c=c&(d+-1|0);else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[g+(c<<2)>>2]=e+8|0;f[((a+32|0)+8|0)>>2]=0;f[((a+32|0)+12|0)>>2]=0}f[e+20>>2]=f[((a+32|0)+20|0)>>2];f[((a+32|0)+20|0)>>2]=0;f[k>>2]=(f[k>>2]|0)+24}else{hia(m,a+32|0);c=f[((a+32|0)+20|0)>>2]|0;if(c|0)iia(c,a+32|0)}c=f[((a+32|0)+8|0)>>2]|0;if(c|0)do{o=c;c=f[c>>2]|0;Zpb(o)}while((c|0)!=0);c=f[(a+32|0)>>2]|0;f[(a+32|0)>>2]=0;if(c|0)Zpb(c);c=f[l>>2]|0}while((((f[k>>2]|0)-(f[m>>2]|0)|0)/24|0)>>>0<c>>>0);jia(n,c,0);c=f[(a+132|0)>>2]|0;i=f[((a+132|0)+4|0)>>2]|0;if((c|0)!=(i|0)){j=(a+132|0)+76|0;do{d=f[c>>2]|0;f[((a+132|0)+104|0)>>2]=d;f[(a+32|0)>>2]=d;e=(f[((a+132|0)+56|0)>>2]|0)+(d>>>5<<2)|0;g=f[e>>2]|0;if(!(g&1<<(d&31))){f[e>>2]=g|1<<(d&31);d=f[((a+132|0)+72|0)>>2]|0;e=f[j>>2]|0;if((e|0)!=(d|0)){f[j>>2]=e+(~((e+-4-d|0)>>>2)<<2)|0;d=e+(~((e+-4-d|0)>>>2)<<2)|0}if((d|0)==(f[((a+132|0)+80|0)>>2]|0))BD((a+132|0)+72|0,a+32|0);else{f[d>>2]=f[(a+32|0)>>2];f[j>>2]=d+4}d=f[(a+32|0)>>2]|0;e=f[((a+132|0)+16|0)>>2]|0;b:do if(((f[e+(d<<4)+4>>2]|0)-(f[(e+(d<<4)|0)>>2]|0)|0)==4){g=e+(d<<4)|0;while(1){d=f[f[g>>2]>>2]|0;f[(a+32|0)>>2]=d;if((d|0)==(f[((a+132|0)+104|0)>>2]|0))break;g=(f[((a+132|0)+56|0)>>2]|0)+(d>>>5<<2)|0;h=f[g>>2]|0;if(h&1<<(d&31)|0)break b;f[g>>2]=h|1<<(d&31);d=f[j>>2]|0;if((d|0)==(f[((a+132|0)+80|0)>>2]|0)){BD((a+132|0)+72|0,a+32|0);d=f[((a+132|0)+16|0)>>2]|0}else{f[d>>2]=f[(a+32|0)>>2];f[j>>2]=d+4;d=e}o=f[(a+32|0)>>2]|0;g=d+(o<<4)|0;if(((f[d+(o<<4)+4>>2]|0)-(f[g>>2]|0)|0)!=4)break b;else e=d}if((f[j>>2]|0)-(f[((a+132|0)+72|0)>>2]|0)>>2>>>0>2)kia(a+132|0)}while(0)}c=c+4|0}while((c|0)!=(i|0))}d=f[(a+132|0)+56>>2]|0;c=f[((a+132|0)+60|0)>>2]|0;if((d+(c>>>5<<2)-d<<3)+(c&31)|0|0){e=((d+(c>>>5<<2)-d<<3)+(c&31)|0)>>>5;Krb(d|0,0,e<<2|0)|0;c=((d+(c>>>5<<2)-d<<3)+(c&31)|0)&31;if(c|0)f[(d+(e<<2)|0)>>2]=f[(d+(e<<2)|0)>>2]&~(-1>>>(32-c|0))}c=f[(a+132|0)+72>>2]|0;d=f[((a+132|0)+76|0)>>2]|0;if((d|0)!=(c|0))f[((a+132|0)+76|0)>>2]=d+(~((d+-4-c|0)>>>2)<<2);e=(a+132|0)+104|0;f[e>>2]=0;g=(a+32|0)+4|0;h=(a+320|0)+12|0;d=(a+320|0)+4|0;i=(a+352|0)+28|0;j=(a+352|0)+32|0;o=(a+352|0)+36|0;f[a+640>>2]=d;f[a+872>>2]=l;f[a+880>>2]=m;f[a+888>>2]=n;f[a+976>>2]=k;f[a+1296>>2]=e;f[a+1304>>2]=g;f[a+1312>>2]=h;f[a+1320>>2]=i;f[a+1328>>2]=j;f[a+1336>>2]=o;f[a+2664>>2]=p}
function Vja(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0.0,l=0.0,m=0.0,o=0,q=0,r=0.0,s=0.0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,E=0,F=0,I=0,J=0.0,K=0.0,M=0,N=0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0;M=0;N=u;u=u+1200|0;o=a;q=o+48|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(q|0));p[(a+48|0)>>3]=C;if((f[i>>2]|0)==(f[(i+4|0)>>2]|0))if(!(Yja(c,d,e,i)|0)){u=N;return}if(!(Yja(c,g,h,j)|0)){u=N;return}F=f[i>>2]|0;I=f[j>>2]|0;E=(f[(i+4|0)>>2]|0)-F|0;j=(f[j+4>>2]|0)-I|0;c=1;if(c){c=0;if(!b){if(!E){u=N;return}}else c=1}if(c)if(1){e=(N+24|0)+24|0;t=+p[F>>3];p[e>>3]=t;v=+p[F+8>>3];p[((N+24|0)+32|0)>>3]=v;k=+p[F+16>>3];p[((N+24|0)+40|0)>>3]=k;p[(N+24|0)>>3]=t;p[((N+24|0)+8|0)>>3]=v;d=F;c=N+24|0;a:while(1){p[c+16>>3]=k;c=d;while(1){if((c|0)==(F+(((E|0)/24|0)*24|0)+-24|0|0))break a;d=c+24|0;k=+p[d>>3];if(k<+p[(N+24|0)>>3]){x=N+24|0;M=10}else if(k>+p[e>>3]){x=e;M=10}if((M|0)==10){M=0;p[x>>3]=k}k=+p[c+32>>3];if(k<+p[((N+24|0)+8|0)>>3]){w=N+24|0;M=13}else if(k>+p[((N+24|0)+32|0)>>3]){w=e;M=13}if((M|0)==13){M=0;p[w+8>>3]=k}k=+p[c+40>>3];if(k<+p[((N+24|0)+16|0)>>3]){c=N+24|0;continue a}if(k>+p[((N+24|0)+40|0)>>3]){c=e;continue a}else c=d}}l=+p[(N+24|0)>>3];m=(+p[(N+24|0)+24>>3]-l)*.5;r=+p[((N+24|0)+8|0)>>3];s=(+p[((N+24|0)+32|0)>>3]-r)*.5;t=+p[((N+24|0)+16|0)>>3];v=(+p[((N+24|0)+40|0)>>3]-t)*.5;e=(N+24|0)+24|0;P=+p[I>>3];p[e>>3]=P;O=+p[I+8>>3];p[((N+24|0)+32|0)>>3]=O;k=+p[I+16>>3];p[((N+24|0)+40|0)>>3]=k;p[(N+24|0)>>3]=P;p[((N+24|0)+8|0)>>3]=O;d=I;c=N+24|0;b:while(1){p[c+16>>3]=k;c=d;while(1){if((c|0)==(I+(((j|0)/24|0)*24|0)+-24|0|0))break b;d=c+24|0;k=+p[d>>3];if(k<+p[(N+24|0)>>3]){z=N+24|0;M=21}else if(k>+p[e>>3]){z=e;M=21}if((M|0)==21){M=0;p[z>>3]=k}k=+p[c+32>>3];if(k<+p[((N+24|0)+8|0)>>3]){y=N+24|0;M=24}else if(k>+p[((N+24|0)+32|0)>>3]){y=e;M=24}if((M|0)==24){M=0;p[y+8>>3]=k}k=+p[c+40>>3];if(k<+p[((N+24|0)+16|0)>>3]){c=N+24|0;continue b}if(k>+p[((N+24|0)+40|0)>>3]){c=e;continue b}else c=d}}S=+p[(N+24|0)>>3];k=(+p[(N+24|0)+24>>3]-S)*.5;R=+p[((N+24|0)+8|0)>>3];O=(+p[((N+24|0)+32|0)>>3]-R)*.5;Q=+p[((N+24|0)+16|0)>>3];P=(+p[((N+24|0)+40|0)>>3]-Q)*.5;P=+L(+((l+m-(S+k))*(l+m-(S+k))+((r+s-(R+O))*(r+s-(R+O))+(t+v-(Q+P))*(t+v-(Q+P)))))-+L(+(m*m+(s*s+v*v)))-+L(+(k*k+(O*O+P*P)));P=P>0.0?P:0.0;if(!(E|0?!(P*P>=+p[b+48>>3]):0)){u=N;return}}o=(N+24|0)+8|0;q=(N+24|0)+16|0;h=0;r=0.0;s=0.0;c:while(1){i=F+(h*24|0)|0;k=+p[i>>3];l=+p[i+24>>3];if(k==l)if(+p[F+(h*24|0)+8>>3]==+p[i+32>>3])if(+p[F+(h*24|0)+16>>3]==+p[i+40>>3]){A=r;B=s}else M=33;else M=33;else M=33;do if((M|0)==33){M=0;m=+p[i+48>>3];if(k==m)if(+p[F+(h*24|0)+8>>3]==+p[i+56>>3])if(+p[F+(h*24|0)+16>>3]==+p[i+64>>3]){A=r;B=s;break}if(l==m)if(+p[i+32>>3]==+p[i+56>>3])if(+p[i+40>>3]==+p[i+64>>3]){A=r;B=s;break}c=1;if(c){c=0;if(!j){A=r;B=s}else c=1}if(c)if(1){e=F+(h*24|0)+8|0;g=F+(h*24|0)+16|0;d=0;while(1){c=I+(d*24|0)|0;k=+p[c>>3];l=+p[c+24>>3];if(k==l)if(+p[I+(d*24|0)+8>>3]==+p[c+32>>3])if(+p[I+(d*24|0)+16>>3]==+p[c+40>>3]){J=r;K=s}else M=44;else M=44;else M=44;do if((M|0)==44){M=0;m=+p[c+48>>3];if(k==m)if(+p[I+(d*24|0)+8>>3]==+p[c+56>>3])if(+p[I+(d*24|0)+16>>3]==+p[c+64>>3]){J=r;K=s;break}if(l==m)if(+p[c+32>>3]==+p[c+56>>3])if(+p[c+40>>3]==+p[c+64>>3]){J=r;K=s;break}uWa(N+24|0,i,c,c+24|0,c+48|0);v=+p[(N+24|0)>>3];p[(N+24|0)>>3]=r;t=+p[((N+24|0)+8|0)>>3];p[((N+24|0)+8|0)>>3]=s;k=+p[((N+24|0)+16|0)>>3];l=+p[i>>3]-v;m=+p[e>>3]-t;r=+p[g>>3]-k;if(l*l+(m*m+r*r)<+p[(a+48|0)>>3]){p[(a+48|0)>>3]=l*l+(m*m+r*r);p[a>>3]=+p[i>>3];p[(a+8|0)>>3]=+p[e>>3];p[(a+16|0)>>3]=+p[g>>3];p[(a+24|0)>>3]=v;p[(a+32|0)>>3]=t;p[(a+40|0)>>3]=k}if(l*l+(m*m+r*r)==0.0){M=98;break c}uWa(N+24|0,i+24|0,c,c+24|0,c+48|0);B=+p[(N+24|0)>>3];p[(N+24|0)>>3]=v;O=+p[((N+24|0)+8|0)>>3];p[((N+24|0)+8|0)>>3]=t;P=+p[((N+24|0)+16|0)>>3];Q=+p[(i+24|0)>>3]-B;R=+p[((i+24|0)+8|0)>>3]-O;S=+p[((i+24|0)+16|0)>>3]-P;f[N+96>>2]=a;f[N+208>>2]=d;n[N+296>>2]=J;n[N+328>>2]=K;f[N+432>>2]=o;f[N+440>>2]=q;f[N+448>>2]=i;f[N+496>>2]=c;f[N+528>>2]=I;n[N+600>>2]=B;n[N+608>>2]=O;n[N+616>>2]=P;n[N+624>>2]=Q;n[N+632>>2]=R;n[N+640>>2]=S;f[N+1112>>2]=M;f[N+1136>>2]=0;f[N+1140>>2]=0;Mpa(N);J=+n[N+296>>2];K=+n[N+328>>2];M=f[N+1112>>2]|0;G=f[N+1136>>2]|0;D=f[N+1140>>2]|0;H=+n[N+1140>>2];f[N+1136>>2]=0;f[N+1140>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 14:break c}}while(0);d=d+3|0;if(d>>>0>=((j|0)/24|0)>>>0){A=J;B=K;break}else{r=J;s=K}}}}while(0);h=h+3|0;if(h>>>0>=((E|0)/24|0)>>>0){M=98;break}else{r=A;s=B}}if((M|0)==94){u=N;return}else if((M|0)==98){u=N;return}}function Wja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~(((d+-24-a|0)>>>0)/24|0)*24|0);if(!(b[209672]|0))if(rrb(209672)|0){f[52744]=0;f[52745]=0;f[52746]=0}a=f[52745]|0;if(a>>>0<(f[52746]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52745]=a+12;return}else{Xja(210976,c);return}}function Xja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-24-b|0)>>>0)/24|0)*24|0);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Yja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0,H=0.0,I=0.0,J=0.0,K=0,L=0.0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0.0,T=0.0;Q=u;u=u+112|0;M=Q;N=Q+88|0;P=Q+72|0;O=Q+56|0;K=Q+32|0;Zja(P,f[52743]|0);Lja(O,f[52743]|0);t=(f[b+4>>2]|0)+44|0;z=f[t>>2]|0;G=f[z+68>>2]|0;v=G;if((((f[z+72>>2]|0)-G|0)/12|0)>>>0>c>>>0){G=f[b+96>>2]|0;i=+n[G>>2];k=+n[G+4>>2];l=+n[G+8>>2];m=+n[G+12>>2];o=+n[G+16>>2];q=+n[G+20>>2];r=+n[G+24>>2];A=+n[G+28>>2];B=+n[G+32>>2];C=+n[G+36>>2];D=+n[G+40>>2];E=+n[G+44>>2];e=f[G+48>>2]|0;g=f[G+52>>2]|0;h=f[G+56>>2]|0;F=+n[G+60>>2];G=fxa(a)|0;z=f[b+196>>2]|0;if(!((z&32|0)!=0|(z&2048|0)==0&(G^1))){e=(n[s>>2]=+n[b+156>>2]+(f[s>>2]=e,+n[s>>2]),f[s>>2]|0);g=(n[s>>2]=+n[b+160>>2]+(f[s>>2]=g,+n[s>>2]),f[s>>2]|0);h=(n[s>>2]=+n[b+164>>2]+(f[s>>2]=h,+n[s>>2]),f[s>>2]|0)}L=q;J=(f[s>>2]=e,+n[s>>2]);I=(f[s>>2]=g,+n[s>>2]);H=(f[s>>2]=h,+n[s>>2]);_ja(K,f[t>>2]|0,0,P,O);a=f[v+(c*12|0)>>2]|0;G=(f[v+(c*12|0)+4>>2]|0)+a|0;z=f[K>>2]|0;if((f[z>>2]|0)==(f[z+4>>2]|0)){t=f[K+12>>2]|0;if(G>>>0>a>>>0){c=M+8|0;v=M+16|0;w=M+24|0;x=N+8|0;y=N+12|0;z=f[K+20>>2]|0;g=f[K+8>>2]|0;b=d+4|0;h=d+8|0;do{e=z+((X(g,a+t|0)|0)<<2)|0;T=+n[e>>2];S=+n[e+4>>2];R=+n[e+8>>2];q=i*T+o*S+B*R+J;p[M>>3]=q;p[c>>3]=k*T+L*S+C*R+I;p[v>>3]=l*T+r*S+D*R+H;p[w>>3]=m*T+A*S+E*R+F;f[N>>2]=M;f[x>>2]=M;f[y>>2]=4;e=f[b>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){p[e>>3]=q;p[e+8>>3]=+p[c>>3];p[e+16>>3]=+p[v>>3];f[b>>2]=e+24}else $ja(d,N);a=a+1|0}while((a|0)!=(G|0))}}else{t=f[K+16>>2]|0;if(G>>>0>a>>>0){c=M+8|0;v=M+16|0;w=M+24|0;x=N+8|0;y=N+12|0;z=f[K+20>>2]|0;g=f[K+8>>2]|0;b=d+4|0;h=d+8|0;do{e=z+((X(g,j[t+(a<<1)>>1]|0)|0)<<2)|0;R=+n[e>>2];S=+n[e+4>>2];T=+n[e+8>>2];q=i*R+o*S+B*T+J;p[M>>3]=q;p[c>>3]=k*R+L*S+C*T+I;p[v>>3]=l*R+r*S+D*T+H;p[w>>3]=m*R+A*S+E*T+F;f[N>>2]=M;f[x>>2]=M;f[y>>2]=4;e=f[b>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){p[e>>3]=q;p[e+8>>3]=+p[c>>3];p[e+16>>3]=+p[v>>3];f[b>>2]=e+24}else $ja(d,N);a=a+1|0}while((a|0)!=(G|0))}}b=1}else b=0;a=f[O+12>>2]|0;if(a|0)Pha(a,O);g=f[O>>2]|0;if(g|0){a=O+4|0;e=f[a>>2]|0;if((e|0)!=(g|0))f[a>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g)}a=f[P+12>>2]|0;if(a|0)Qha(a,P);g=f[P>>2]|0;if(!g){u=Q;return b|0}a=P+4|0;e=f[a>>2]|0;if((e|0)!=(g|0))f[a>>2]=e+(~((e+-2-g|0)>>>1)<<1);Zpb(g);u=Q;return b|0}function Zja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209656]|0))if(rrb(209656)|0){f[52736]=0;f[52737]=0;f[52738]=0}e=f[52737]|0;if((f[52736]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52737]|0;j=h+-12|0;while(1){e=h+-12|0;f[52737]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-2-i|0)>>>1)<<1);Zpb(i);e=f[52737]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function _ja(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;f[a>>2]=e;l=a+4|0;f[l>>2]=g;n=zra(c+48|0)|0;f[a+8>>2]=n;n=a+12|0;a:do switch(d<<24>>24){case 2:if(!(b[c+144>>0]&2)){d=f[c+44>>2]|0;break a}else{d=(f[c+28>>2]|0)+(f[c+24>>2]|0)|0;break a}case 1:{d=f[((b[c+144>>0]&2)==0?c+40|0:c+24|0)>>2]|0;break}default:d=0}while(0);f[n>>2]=d;i=f[l>>2]|0;k=i+4|0;if((f[i>>2]|0)==(f[k>>2]|0)){m=c+64|0;d=Qqa(m)|0;j=f[k>>2]|0;h=f[i>>2]|0;c=j-h>>2;if(d>>>0>c>>>0)E7(i,d-c|0);else if(d>>>0<c>>>0){d=h+(d<<2)|0;if((d|0)!=(j|0))f[k>>2]=j+(~((j+-4-d|0)>>>2)<<2)}Tqa(m,f[f[l>>2]>>2]|0)|0;d=f[a>>2]|0;c=Rqa(m)|0;j=d+4|0;k=f[j>>2]|0;i=f[d>>2]|0;h=k-i>>1;if(c>>>0>h>>>0)F7(d,c-h|0);else if(c>>>0<h>>>0){d=i+(c<<1)|0;if((d|0)!=(k|0))f[j>>2]=k+(~((k+-2-d|0)>>>1)<<1)}Uqa(m,f[f[a>>2]>>2]|0)|0}m=f[a>>2]|0;if((f[m>>2]|0)==(f[m+4>>2]|0)){e=0;n=a+16|0;f[n>>2]=e;g=f[g>>2]|0;n=a+20|0;f[n>>2]=g;return}e=(f[e>>2]|0)+(f[n>>2]<<1)|0;n=a+16|0;f[n>>2]=e;g=f[g>>2]|0;n=a+20|0;f[n>>2]=g;return}function $ja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<c>>>0?c:e):178956970;do if(!e)g=0;else if(e>>>0>178956970)ud();else{g=Wpb(e*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(e*24|0)|0;e=f[b>>2]|0;p[c>>3]=+p[e>>3];p[g+(h*24|0)+8>>3]=+p[e+8>>3];p[g+(h*24|0)+16>>3]=+p[e+16>>3];e=c+24|0;if((d|0)!=(j|0))do{h=d;d=d+-24|0;p[c+-24>>3]=+p[d>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-24|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;Zpb(m);return}function aka(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0.0;j=u;u=u+32|0;i=j+16|0;h=j;Rja(i,f[52743]|0);Rja(h,f[52743]|0);Vja(a,0,b,c,d,e,g,i,h);a=a+48|0;k=+L(+(+p[a>>3]));p[a>>3]=k;a=f[h+12>>2]|0;if(a|0)Wja(a,h);c=f[h>>2]|0;if(c|0){a=h+4|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}a=f[i+12>>2]|0;if(a|0)Wja(a,i);c=f[i>>2]|0;if(!c){u=j;return}a=i+4|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-24-c|0)>>>0)/24|0)*24|0);Zpb(c);u=j;return}function bka(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+64|0;w=x+48|0;r=x+24|0;s=x;Rja(w,f[52743]|0);t=a+8|0;m=a+16|0;n=a+24|0;o=a+32|0;q=a+40|0;v=a+48|0;h=a;i=h+48|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));p[v>>3]=C;if(Yja(b,c,d,w)|0){c=f[w>>2]|0;l=(f[w+4>>2]|0)-c|0;d=(l|0)/24|0;if(!l)g=C;else{h=s+8|0;i=s+16|0;k=r+8|0;l=r+16|0;b=0;j=C;while(1){g=+yWa(e,c+(b*24|0)|0,r,s);if(g<j){p[v>>3]=g;p[a>>3]=+p[s>>3];p[t>>3]=+p[h>>3];p[m>>3]=+p[i>>3];p[n>>3]=+p[r>>3];p[o>>3]=+p[k>>3];p[q>>3]=+p[l>>3]}else g=j;b=b+3|0;if(b>>>0>=d>>>0)break;else j=g}}j=+L(+g);p[v>>3]=j}b=f[w+12>>2]|0;if(b|0)Wja(b,w);d=f[w>>2]|0;if(!d){u=x;return}b=w+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d);u=x;return}function cka(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,D=0.0;y=u;u=u+160|0;x=y+144|0;m=y+48|0;t=y+24|0;v=y;Rja(x,f[52743]|0);n=a+8|0;o=a+16|0;q=a+24|0;r=a+32|0;s=a+40|0;w=a+48|0;h=a;i=h+48|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));p[w>>3]=C;if(Yja(b,c,d,x)|0){D=+p[e>>3];p[m>>3]=D;B=+p[e+8>>3];p[m+8>>3]=B;A=+p[e+16>>3];p[m+16>>3]=A;z=+p[e+24>>3];p[m+24>>3]=z;g=+p[e+32>>3];p[m+32>>3]=g;j=+p[e+40>>3];p[m+40>>3]=j;p[m+48>>3]=D;p[m+56>>3]=B;p[m+64>>3]=A;p[m+72>>3]=-z;p[m+80>>3]=-g;p[m+88>>3]=-j;d=f[x>>2]|0;c=(f[x+4>>2]|0)-d|0;e=(c|0)/24|0;h=v+8|0;i=v+16|0;k=t+8|0;l=t+16|0;if(!c)g=C;else{b=0;j=C;while(1){g=+yWa(m,d+(b*24|0)|0,t,v);if(g<j){p[w>>3]=g;p[a>>3]=+p[v>>3];p[n>>3]=+p[h>>3];p[o>>3]=+p[i>>3];p[q>>3]=+p[t>>3];p[r>>3]=+p[k>>3];p[s>>3]=+p[l>>3]}else g=j;b=b+3|0;if(b>>>0>=e>>>0)break;else j=g}c=m+48|0;b=0;j=g;while(1){g=+yWa(c,d+(b*24|0)|0,t,v);if(g<j){p[w>>3]=g;p[a>>3]=+p[v>>3];p[n>>3]=+p[h>>3];p[o>>3]=+p[i>>3];p[q>>3]=+p[t>>3];p[r>>3]=+p[k>>3];p[s>>3]=+p[l>>3]}else g=j;b=b+3|0;if(b>>>0>=e>>>0)break;else j=g}}D=+L(+g);p[w>>3]=D}b=f[x+12>>2]|0;if(b|0)Wja(b,x);d=f[x>>2]|0;if(!d){u=y;return}b=x+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d);u=y;return}function dka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+64|0;r=s+40|0;q=s+24|0;n=s;d=f[c>>2]|0;p=c+4|0;e=f[p>>2]|0;if((e|0)!=(d|0))f[p>>2]=e+(~(((e+-12-d|0)>>>0)/12|0)*12|0);Zja(r,f[52743]|0);Lja(q,f[52743]|0);o=f[a+80>>2]|0;i=o;if((((f[a+84>>2]|0)-o|0)/12|0)>>>0>b>>>0){m=i+(b*12|0)+4|0;e=f[m>>2]|0;o=c+8|0;k=f[c>>2]|0;g=k;if((((f[o>>2]|0)-k|0)/12|0)>>>0<e>>>0){if(e>>>0>357913941)ud();t=f[p>>2]|0;h=Wpb(e*12|0)|0;d=h+(((t-k|0)/12|0)*12|0)|0;l=d;h=h+(e*12|0)|0;e=t;if((e|0)==(g|0))d=l;else do{t=d;d=d+-12|0;v=e;e=e+-12|0;f[d>>2]=f[e>>2];f[t+-8>>2]=f[v+-8>>2];f[t+-4>>2]=f[v+-4>>2]}while((e|0)!=(g|0));f[c>>2]=d;f[p>>2]=l;f[o>>2]=h;if(k|0)Zpb(k)}_ja(n,a,1,r,q);d=f[i+(b*12|0)>>2]|0;a=(f[m>>2]|0)+d|0;v=f[n>>2]|0;if((f[v>>2]|0)==(f[v+4>>2]|0)){l=f[n+12>>2]|0;if(a>>>0>d>>>0){m=f[n+20>>2]|0;k=f[n+8>>2]|0;do{e=m+((X(k,d+l|0)|0)<<2)|0;g=e+4|0;h=e+8|0;i=f[p>>2]|0;if(i>>>0<(f[o>>2]|0)>>>0){f[i>>2]=f[e>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[p>>2]=i+12}else eka(c,e,g,h);d=d+1|0}while((d|0)!=(a|0))}}else{l=f[n+16>>2]|0;if(a>>>0>d>>>0){m=f[n+20>>2]|0;k=f[n+8>>2]|0;do{e=m+((X(k,j[l+(d<<1)>>1]|0)|0)<<2)|0;g=e+4|0;h=e+8|0;i=f[p>>2]|0;if(i>>>0<(f[o>>2]|0)>>>0){f[i>>2]=f[e>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[p>>2]=i+12}else eka(c,e,g,h);d=d+1|0}while((d|0)!=(a|0))}}}d=f[q+12>>2]|0;if(d|0)Pha(d,q);g=f[q>>2]|0;if(g|0){d=q+4|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g)}d=f[r+12>>2]|0;if(d|0)Qha(d,r);g=f[r>>2]|0;if(!g){u=s;return}d=r+4|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-2-g|0)>>>1)<<1);Zpb(g);u=s;return}function eka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;h=f[n>>2]|0;o=f[a>>2]|0;j=(h-o|0)/12|0;e=j+1|0;l=o;if(e>>>0>357913941)fob(a);m=a+8|0;k=((f[m>>2]|0)-o|0)/12|0;g=k<<1;g=k>>>0<178956970?(g>>>0<e>>>0?e:g):357913941;do if(!g)i=0;else if(g>>>0>357913941)ud();else{i=Wpb(g*12|0)|0;break}while(0);e=i+(j*12|0)|0;k=i+(g*12|0)|0;f[e>>2]=f[b>>2];f[i+(j*12|0)+4>>2]=f[c>>2];f[i+(j*12|0)+8>>2]=f[d>>2];b=e+12|0;if((h|0)!=(l|0))while(1){g=e+-12|0;j=h;h=h+-12|0;f[g>>2]=f[h>>2];f[e+-8>>2]=f[j+-8>>2];f[e+-4>>2]=f[j+-4>>2];if((h|0)==(l|0)){e=g;break}else e=g}f[a>>2]=e;f[n>>2]=b;f[m>>2]=k;if(!o)return;Zpb(o);return}function fka(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;j=k+40|0;i=k+24|0;Zja(j,f[52743]|0);Lja(i,f[52743]|0);g=(f[b+4>>2]|0)+44|0;_ja(k,f[g>>2]|0,c,j,i);g=f[g>>2]|0;b=c&255;a:do if(!e)h=6;else{g=((f[g+68+(b*12|0)+4>>2]|0)-(f[g+68+(b*12|0)>>2]|0)|0)/12|0;b=0;while(1){if((f[d+(b<<2)>>2]|0)>>>0>=g>>>0)break;b=b+1|0;if(b>>>0>=e>>>0){h=6;break a}}f[a>>2]=1065353216;f[a+4>>2]=1065353216;f[a+8>>2]=1065353216;f[a+12>>2]=0;f[a+16>>2]=0}while(0);if((h|0)==6){f[a>>2]=1065353216;f[a+4>>2]=1065353216;f[a+8>>2]=1065353216;h=a+12|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0}f[a+20>>2]=0;b=f[i+12>>2]|0;if(b|0)Pha(b,i);c=f[i>>2]|0;if(c|0){b=i+4|0;g=f[b>>2]|0;if((g|0)!=(c|0))f[b>>2]=g+(~((g+-4-c|0)>>>2)<<2);Zpb(c)}b=f[j+12>>2]|0;if(b|0)Qha(b,j);c=f[j>>2]|0;if(!c){u=k;return}b=j+4|0;g=f[b>>2]|0;if((g|0)!=(c|0))f[b>>2]=g+(~((g+-2-c|0)>>>1)<<1);Zpb(c);u=k;return}function gka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;S=u;u=u+144|0;L=S+8|0;K=S;R=S+120|0;Q=S+104|0;P=S+88|0;O=S+72|0;J=S+48|0;I=S+24|0;M=S+12|0;Zja(R,f[52743]|0);Lja(Q,f[52743]|0);aha(P,f[52743]|0);aha(O,f[52743]|0);N=b+44|0;b=f[N>>2]|0;_ja(J,b,0,R,Q);_ja(I,f[N>>2]|0,1,R,Q);f[M>>2]=0;N=M+4|0;f[N>>2]=0;f[M+8>>2]=0;do if(!d){b=0;e=0;k=68}else{A=b+80|0;B=b+68|0;C=b+84|0;D=P+4|0;E=P+8|0;F=f[I+12>>2]|0;G=f[I+20>>2]|0;H=f[I+8>>2]|0;q=b+72|0;r=O+4|0;s=O+8|0;t=f[J+12>>2]|0;v=f[J+20>>2]|0;w=f[J+8>>2]|0;x=M+8|0;y=f[J+16>>2]|0;z=f[I+16>>2]|0;p=0;a:while(1){k=f[c+(p<<2)>>2]|0;o=f[A>>2]|0;l=o;if(k>>>0>=(((f[C>>2]|0)-o|0)/12|0)>>>0){k=83;break}n=l+(k*12|0)+4|0;h=f[n>>2]|0;if(h|0){m=f[P>>2]|0;b=f[D>>2]|0;g=m;if((b|0)!=(m|0)){b=b+(~(((b+-12-g|0)>>>0)/12|0)*12|0)|0;f[D>>2]=b}e=b;if((((f[E>>2]|0)-g|0)/12|0)>>>0<h>>>0){if(h>>>0>357913941){k=9;break}o=Wpb(h*12|0)|0;e=o+(((e-g|0)/12|0)*12|0)|0;i=e;g=o+(h*12|0)|0;if((b|0)==(m|0))b=i;else{do{o=e;e=e+-12|0;h=b;b=b+-12|0;f[e>>2]=f[b>>2];f[o+-8>>2]=f[h+-8>>2];f[o+-4>>2]=f[h+-4>>2]}while((b|0)!=(m|0));b=e}f[P>>2]=b;f[D>>2]=i;f[E>>2]=g;if(m|0)Zpb(m)}e=f[l+(k*12|0)>>2]|0;k=(f[n>>2]|0)+e|0;o=f[I>>2]|0;b=k>>>0>e>>>0;if((f[o>>2]|0)==(f[o+4>>2]|0)){if(b)do{b=G+((X(H,e+F|0)|0)<<2)|0;g=b+4|0;h=b+8|0;i=f[D>>2]|0;if(i>>>0<(f[E>>2]|0)>>>0){f[i>>2]=f[b>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[D>>2]=i+12}else eka(P,b,g,h);e=e+1|0}while((e|0)!=(k|0))}else if(b)do{b=G+((X(H,j[z+(e<<1)>>1]|0)|0)<<2)|0;g=b+4|0;h=b+8|0;i=f[D>>2]|0;if(i>>>0<(f[E>>2]|0)>>>0){f[i>>2]=f[b>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[D>>2]=i+12}else eka(P,b,g,h);e=e+1|0}while((e|0)!=(k|0));b=f[D>>2]|0;e=f[P>>2]|0;k=(b-e|0)/12|0;l=e;if(k>>>0>2){h=2;i=2;while(1){o=l+(h*12|0)+12|0;g=i+1|0;f[l+(i*12|0)>>2]=f[o>>2];f[l+(i*12|0)+4>>2]=f[o+4>>2];f[l+(i*12|0)+8>>2]=f[o+8>>2];h=h+2|0;if(h>>>0>=k>>>0)break;else i=g}}else g=2;h=b;if(g>>>0>k>>>0){hka(P,g-k|0);e=f[P>>2]|0;b=f[D>>2]|0}else if(g>>>0<k>>>0){g=l+(g*12|0)|0;if((g|0)!=(h|0)){b=h+(~(((h+-12-g|0)>>>0)/12|0)*12|0)|0;f[D>>2]=b}}o=(b-e|0)/12|0;b=f[B>>2]|0;if((f[q>>2]|0)!=(b|0)){n=0;do{m=b+(n*12|0)+4|0;i=f[m>>2]|0;do if(i>>>0>=o>>>0){l=f[O>>2]|0;e=f[r>>2]|0;h=l;if((e|0)!=(l|0)){e=e+(~(((e+-12-h|0)>>>0)/12|0)*12|0)|0;f[r>>2]=e}g=e;do if((((f[s>>2]|0)-h|0)/12|0)>>>0<i>>>0){if(i>>>0>357913941){k=39;break a}T=Wpb(i*12|0)|0;g=T+(((g-h|0)/12|0)*12|0)|0;k=g;h=T+(i*12|0)|0;if((e|0)==(l|0))e=k;else{do{T=g;g=g+-12|0;i=e;e=e+-12|0;f[g>>2]=f[e>>2];f[T+-8>>2]=f[i+-8>>2];f[T+-4>>2]=f[i+-4>>2]}while((e|0)!=(l|0));e=g}f[O>>2]=e;f[r>>2]=k;f[s>>2]=h;if(!l)break;Zpb(l)}while(0);e=f[b+(n*12|0)>>2]|0;k=(f[m>>2]|0)+e|0;T=f[J>>2]|0;b=k>>>0>e>>>0;if((f[T>>2]|0)==(f[T+4>>2]|0)){if(b)do{b=v+((X(w,e+t|0)|0)<<2)|0;g=b+4|0;h=b+8|0;i=f[r>>2]|0;if(i>>>0<(f[s>>2]|0)>>>0){f[i>>2]=f[b>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[r>>2]=i+12}else eka(O,b,g,h);e=e+1|0}while((e|0)!=(k|0))}else if(b)do{b=v+((X(w,j[y+(e<<1)>>1]|0)|0)<<2)|0;g=b+4|0;h=b+8|0;i=f[r>>2]|0;if(i>>>0<(f[s>>2]|0)>>>0){f[i>>2]=f[b>>2];f[i+4>>2]=f[g>>2];f[i+8>>2]=f[h>>2];f[r>>2]=i+12}else eka(O,b,g,h);e=e+1|0}while((e|0)!=(k|0));if(!(ika(P,O)|0)){e=f[P>>2]|0;b=f[D>>2]|0;do if((e|0)!=(b|0)){b=b+-12|0;if(e>>>0>=b>>>0)break;do{T=e+4|0;h=e+8|0;i=f[e>>2]|0;k=f[T>>2]|0;m=f[h>>2]|0;f[e>>2]=f[b>>2];l=b+4|0;f[T>>2]=f[l>>2];T=b+8|0;f[h>>2]=f[T>>2];f[b>>2]=i;f[l>>2]=k;f[T>>2]=m;e=e+12|0;b=b+-12|0}while(e>>>0<b>>>0)}while(0);if(!(ika(P,O)|0))break}f[L>>2]=n;b=f[N>>2]|0;if(b>>>0<(f[x>>2]|0)>>>0){f[b>>2]=n;f[N>>2]=b+4}else y3(M,L)}while(0);n=n+1|0;b=f[B>>2]|0}while(n>>>0<(((f[q>>2]|0)-b|0)/12|0)>>>0)}}p=p+1|0;if(p>>>0>=d>>>0){k=67;break}}if((k|0)==9)ud();else if((k|0)==39)ud();else if((k|0)==67){b=f[M>>2]|0;e=f[N>>2]|0;k=68;break}else if((k|0)==83){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=f[M>>2]|0;if(!b)break;e=f[N>>2]|0;if((e|0)!=(b|0))f[N>>2]=e+(~((e+-4-b|0)>>>2)<<2);Zpb(b);break}}while(0);if((k|0)==68){Feb(b,e,L);T=f[M>>2]|0;b=f[N>>2]|0;i=T;f[K>>2]=i;do if((b|0)==(T|0))k=73;else{e=L;g=K;while(1){f[e>>2]=f[g>>2];g=(f[L>>2]|0)+4|0;f[L>>2]=g;if((g|0)==(b|0)){k=71;break}e=f[K>>2]|0;h=f[e>>2]|0;if((h|0)==(f[g>>2]|0))break;else{e=K;g=L}}if((k|0)==71){k=73;break}if((e|0)==(b|0))e=b;else{g=e+8|0;if((g|0)!=(b|0))do{T=h;h=f[g>>2]|0;if((T|0)!=(h|0)){e=e+4|0;f[e>>2]=h}g=g+4|0}while((g|0)!=(b|0));e=e+4|0}}while(0);if((k|0)==73)e=b;if((b|0)!=(e|0)){b=b+(~((b+-4-e|0)>>>2)<<2)|0;f[N>>2]=b}f[a>>2]=i;f[a+4>>2]=b;T=M+8|0;f[a+8>>2]=f[T>>2];f[T>>2]=0;f[N>>2]=0;f[M>>2]=0}b=f[O+12>>2]|0;if(b|0)wia(b,O);g=f[O>>2]|0;if(g|0){b=O+4|0;e=f[b>>2]|0;if((e|0)!=(g|0))f[b>>2]=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0);Zpb(g)}b=f[P+12>>2]|0;if(b|0)wia(b,P);g=f[P>>2]|0;if(g|0){b=P+4|0;e=f[b>>2]|0;if((e|0)!=(g|0))f[b>>2]=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0);Zpb(g)}b=f[Q+12>>2]|0;if(b|0)Pha(b,Q);g=f[Q>>2]|0;if(g|0){b=Q+4|0;e=f[b>>2]|0;if((e|0)!=(g|0))f[b>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g)}b=f[R+12>>2]|0;if(b|0)Qha(b,R);g=f[R>>2]|0;if(!g){u=S;return}b=R+4|0;e=f[b>>2]|0;if((e|0)!=(g|0))f[b>>2]=e+(~((e+-2-g|0)>>>1)<<1);Zpb(g);u=S;return}function hka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;e=f[k>>2]|0;l=a+4|0;d=f[l>>2]|0;i=d;if(((e-d|0)/12|0)>>>0>=b>>>0){f[l>>2]=i+(b*12|0);return}c=f[a>>2]|0;g=(d-c|0)/12|0;d=g+b|0;j=c;if(d>>>0>357913941)fob(a);m=(e-c|0)/12|0;e=m<<1;e=m>>>0<178956970?(e>>>0<d>>>0?d:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(g*12|0)|0;g=h+(e*12|0)|0;e=d+(b*12|0)|0;if((i|0)!=(j|0)){c=i;do{m=d;d=d+-12|0;i=c;c=c+-12|0;f[d>>2]=f[c>>2];f[m+-8>>2]=f[i+-8>>2];f[m+-4>>2]=f[i+-4>>2]}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=d;f[l>>2]=e;f[k>>2]=g;if(!c)return;Zpb(c);return}function ika(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=f[a>>2]|0;e=(f[a+4>>2]|0)-i|0;j=(e|0)/12|0;h=f[b>>2]|0;d=((f[b+4>>2]|0)-h|0)/12|0;g=d-j|0;c=h+(g*12|0)|0;a:do if((g|0)<0)a=h;else{if(!e){j=1;return j|0}else a=h;b:while(1){b=0;while(1){if(+n[i+(b*12|0)>>2]!=+n[a+(b*12|0)>>2])break;if(+n[i+(b*12|0)+4>>2]!=+n[a+(b*12|0)+4>>2])break;if(+n[i+(b*12|0)+8>>2]!=+n[a+(b*12|0)+8>>2])break;b=b+1|0;if(b>>>0>=j>>>0){a=1;break b}}a=a+12|0;if(a>>>0>c>>>0)break a}return a|0}while(0);g=h+(d*12|0)|0;if(a>>>0>=g>>>0){j=0;return j|0}if(!e){j=1;return j|0}c:while(1){b=0;e=0;while(1){c=a+(e*12|0)|0;d=i+(e*12|0)|0;if(c>>>0<g>>>0){if(+n[d>>2]!=+n[c>>2])break;if(+n[i+(e*12|0)+4>>2]!=+n[a+(e*12|0)+4>>2])break;if(+n[i+(e*12|0)+8>>2]!=+n[a+(e*12|0)+8>>2])break}else{if(+n[d>>2]!=+n[h+(b*12|0)>>2])break;if(+n[i+(e*12|0)+4>>2]!=+n[h+(b*12|0)+4>>2])break;if(+n[i+(e*12|0)+8>>2]!=+n[h+(b*12|0)+8>>2])break;else b=b+1|0}e=e+1|0;if(e>>>0>=j>>>0){a=1;b=21;break c}}a=a+12|0;if(a>>>0>=g>>>0){a=0;b=21;break}}if((b|0)==21)return a|0;return 0}function jka(a,c){a=a|0;c=c|0;var d=0,e=0;e=c+144|0;d=b[e>>0]|0;b[e>>0]=d<<1&4|d&-5;kka(a,c,c+52|0,(d&4)==0);return}function kka(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0;f[a>>2]=c;k=a+4|0;f[k>>2]=d;Zja(a+32|0,f[52743]|0);Lja(a+48|0,f[52743]|0);d=zra((f[a>>2]|0)+48|0)|0;f[a+64>>2]=d;d=a+80|0;g=f[a>>2]|0;c=f[g+24>>2]|0;if(c>>>0<1537)if((f[g+28>>2]|0)>>>0<1025){j=(f[g+32>>2]|0)>>>0<513;b[d>>0]=j&1;if(j){r=+n[g+120>>2];q=+n[g+132>>2];p=+n[g+124>>2];o=+n[g+136>>2];m=+n[g+128>>2];l=+n[g+140>>2];n[a+8>>2]=r-q;n[a+12>>2]=p-o;n[a+16>>2]=m-l;n[a+20>>2]=r+q;n[a+24>>2]=p+o;n[a+28>>2]=m+l;return}}else h=3;else h=3;if((h|0)==3)b[d>>0]=0;if(!(b[g+144>>0]&2)){d=f[g+40>>2]|0;j=f[g+44>>2]|0;c=d-(f[g+36>>2]|0)|0;d=j-d|0;j=(f[g+104>>2]|0)-j|0}else{d=f[g+28>>2]|0;j=f[g+32>>2]|0}c=((c>>>0)/1536|0)+(((c>>>0)%1536|0|0)!=0&1)|0;f[a+68>>2]=0;f[a+72>>2]=c;c=(d>>>10)+((d&1023|0)!=0&1)+c|0;f[a+76>>2]=c;if(!e)return;h=f[k>>2]|0;e=f[h>>2]|0;i=h+4|0;g=f[i>>2]|0;if((e|0)==(g|0)){d=(j>>>9)+((j&511|0)!=0&1)+c|0;c=(g-e|0)/24|0;if(d>>>0>c>>>0)lka(h,d-c|0);else if(!(d>>>0>=c>>>0|(d|0)==0)){j=e+(~((((X(d,-24)|0)+-24|0)>>>0)/24|0)*24|0)|0;f[i>>2]=j}c=f[k>>2]|0;g=f[c>>2]|0;c=(f[c+4>>2]|0)-g|0;if((c|0)>0){d=(c>>>0)/24|0;c=g;while(1){f[c>>2]=1065353216;f[c+4>>2]=1065353216;f[c+8>>2]=1065353216;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;if((d|0)>1){d=d+-1|0;c=c+24|0}else break}}}mka(a,0,1536);mka(a,1,1024);mka(a,2,512);return}function lka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/24|0)>>>0>=b>>>0){do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=(f[k>>2]|0)+24|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/24|0;c=e+b|0;if(c>>>0>178956970)fob(a);g=(g-d|0)/24|0;i=g<<1;c=g>>>0<89478485?(i>>>0<c>>>0?c:i):178956970;do if(!c)h=0;else if(c>>>0>178956970)ud();else{h=Wpb(c*24|0)|0;break}while(0);i=h+(e*24|0)|0;g=i;d=h+(c*24|0)|0;c=i;h=g;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=h+24|0;h=c;b=b+-1|0}while((b|0)!=0);e=d;c=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(c|0))b=g;else{b=i;do{i=b;b=b+-24|0;g=d;d=d+-24|0;f[b>>2]=f[d>>2];f[i+-20>>2]=f[g+-20>>2];f[i+-16>>2]=f[g+-16>>2];f[i+-12>>2]=f[g+-12>>2];f[i+-8>>2]=f[g+-8>>2];f[i+-4>>2]=f[g+-4>>2]}while((d|0)!=(c|0));c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=h;f[j>>2]=e;if(!c)return;Zpb(c);return}function mka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=u;u=u+48|0;m=E+24|0;B=E;d=f[a>>2]|0;e=b&255;C=f[d+24+(e<<2)>>2]|0;if(!C){u=E;return}_ja(m,d,b,a+32|0,a+48|0);b=f[a+68+(e<<2)>>2]|0;e=b+1|0;A=a+4|0;a=f[A>>2]|0;g=f[a>>2]|0;a=((f[a+4>>2]|0)-g|0)/24|0;a:do if(e>>>0<a>>>0){d=0;while(1){if(!(+n[g+(e*24|0)>>2]<=+n[g+(e*24|0)+12>>2]))break a;d=d+c|0;b=e+1|0;if(b>>>0<a>>>0){z=e;e=b;b=z}else{b=e;break}}}else d=0;while(0);if(d>>>0<C>>>0){t=B+4|0;v=B+8|0;w=B+12|0;x=B+16|0;y=B+20|0;p=f[m>>2]|0;z=f[m+12>>2]|0;q=f[m+20>>2]|0;r=f[m+8>>2]|0;o=f[m+16>>2]|0;p=(f[p>>2]|0)==(f[p+4>>2]|0);while(1){m=d+c|0;a=d;d=C>>>0<m>>>0?C:m;f[B>>2]=1065353216;f[t>>2]=1065353216;f[v>>2]=1065353216;f[w>>2]=0;f[x>>2]=0;f[y>>2]=0;e=a+1|0;g=(a|0)==-1;b:do if(p){if(g)h=1.0;else{a=q+((X(a+z|0,r)|0)<<2)|0;g=f[a>>2]|0;F=f[a+4>>2]|0;a=f[a+8>>2]|0;f[B>>2]=g;f[t>>2]=F;f[v>>2]=a;f[w>>2]=g;f[x>>2]=F;f[y>>2]=a;h=(f[s>>2]=g,+n[s>>2])}if(e>>>0<d>>>0)while(1){F=q+((X(e+z|0,r)|0)<<2)|0;i=+n[F>>2];k=+n[F+4>>2];l=+n[F+8>>2];if(i<h){a=B;D=15}else if(i>+n[w>>2]){a=w;D=15}if((D|0)==15){D=0;n[a>>2]=i}if(k<+n[t>>2]){a=B;D=18}else if(k>+n[x>>2]){a=w;D=18}if((D|0)==18){D=0;n[a+4>>2]=k}if(l<+n[v>>2]){a=B;D=21}else if(l>+n[y>>2]){a=w;D=21}if((D|0)==21){D=0;n[a+8>>2]=l}e=e+1|0;if((e|0)==(d|0))break b;h=+n[B>>2]}}else{if(g)h=1.0;else{g=q+((X(r,j[o+(a<<1)>>1]|0)|0)<<2)|0;F=f[g>>2]|0;a=f[g+4>>2]|0;g=f[g+8>>2]|0;f[B>>2]=F;f[t>>2]=a;f[v>>2]=g;f[w>>2]=F;f[x>>2]=a;f[y>>2]=g;h=(f[s>>2]=F,+n[s>>2])}if(e>>>0<d>>>0)while(1){F=q+((X(r,j[o+(e<<1)>>1]|0)|0)<<2)|0;i=+n[F>>2];k=+n[F+4>>2];l=+n[F+8>>2];if(i<h){a=B;D=27}else if(i>+n[w>>2]){a=w;D=27}if((D|0)==27){D=0;n[a>>2]=i}if(k<+n[t>>2]){a=B;D=30}else if(k>+n[x>>2]){a=w;D=30}if((D|0)==30){D=0;n[a+4>>2]=k}if(l<+n[v>>2]){a=B;D=33}else if(l>+n[y>>2]){a=w;D=33}if((D|0)==33){D=0;n[a+8>>2]=l}e=e+1|0;if((e|0)==(d|0))break b;h=+n[B>>2]}}while(0);F=f[f[A>>2]>>2]|0;f[F+(b*24|0)>>2]=f[B>>2];f[F+(b*24|0)+4>>2]=f[t>>2];f[F+(b*24|0)+8>>2]=f[v>>2];f[F+(b*24|0)+12>>2]=f[w>>2];f[F+(b*24|0)+16>>2]=f[x>>2];f[F+(b*24|0)+20>>2]=f[y>>2];if(C>>>0<=m>>>0)break;else b=b+1|0}}u=E;return}function nka(a,b){a=a|0;b=b|0;oka(a,b);return}function oka(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0;s=u;u=u+32|0;i=s;e=f[a>>2]|0;g=f[e>>2]|0;if(!(b[e+80>>0]|0)){r=b[a+12>>0]|0;d=r;a=(f[a+4>>2]|0)-(f[e+68+((r&255)<<2)>>2]|0)|0}else{d=b[a+12>>0]|0;a=0}switch(d<<24>>24){case 0:{r=a*1536|0;q=r+1536|0;m=f[g+24>>2]|0;q=m>>>0<q>>>0?m:q;m=r;r=q-(((q-r|0)>>>0)%3|0)|0;break}case 1:{m=a<<10;r=m+1024|0;q=f[g+28>>2]|0;r=(q>>>0<r>>>0?q:r)&-2;break}case 2:{m=a<<9;r=m+512|0;q=f[g+32>>2]|0;r=q>>>0<r>>>0?q:r;break}default:{u=s;return}}_ja(i,g,d,e+32|0,e+48|0);h=f[c>>2]|0;q=c+4|0;a=f[q>>2]|0;d=h;if((a|0)!=(h|0)){a=a+(~(((a+-24-d|0)>>>0)/24|0)*24|0)|0;f[q>>2]=a}o=c+8|0;if((((f[o>>2]|0)-d|0)/24|0)>>>0<1536){g=Wpb(36864)|0;d=g+(((a-d|0)/24|0)*24|0)|0;e=d;g=g+36864|0;if((a|0)==(h|0))a=e;else{do{l=a;a=a+-24|0;p[d+-24>>3]=+p[a>>3];p[d+-16>>3]=+p[l+-16>>3];p[d+-8>>3]=+p[l+-8>>3];d=d+-24|0}while((a|0)!=(h|0));a=d}f[c>>2]=a;f[q>>2]=e;f[o>>2]=g;if(h|0)Zpb(h)}l=f[i>>2]|0;if((f[l>>2]|0)==(f[l+4>>2]|0)){k=f[i+12>>2]|0;if(m>>>0<r>>>0){l=f[i+20>>2]|0;i=f[i+8>>2]|0;a=m;do{d=l+((X(i,a+k|0)|0)<<2)|0;e=d+4|0;g=d+8|0;h=f[q>>2]|0;if(h>>>0<(f[o>>2]|0)>>>0){v=+n[e>>2];t=+n[g>>2];p[h>>3]=+n[d>>2];p[h+8>>3]=v;p[h+16>>3]=t;f[q>>2]=h+24}else pka(c,d,e,g);a=a+1|0}while((a|0)!=(r|0))}}else{k=f[i+16>>2]|0;if(m>>>0<r>>>0){l=f[i+20>>2]|0;i=f[i+8>>2]|0;a=m;do{d=l+((X(i,j[k+(a<<1)>>1]|0)|0)<<2)|0;e=d+4|0;g=d+8|0;h=f[q>>2]|0;if(h>>>0<(f[o>>2]|0)>>>0){t=+n[e>>2];v=+n[g>>2];p[h>>3]=+n[d>>2];p[h+8>>3]=t;p[h+16>>3]=v;f[q>>2]=h+24}else pka(c,d,e,g);a=a+1|0}while((a|0)!=(r|0))}}u=s;return}function pka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0.0,s=0.0;o=a+4|0;g=f[o>>2]|0;q=f[a>>2]|0;j=(g-q|0)/24|0;e=j+1|0;l=q;if(e>>>0>178956970)fob(a);m=a+8|0;k=((f[m>>2]|0)-q|0)/24|0;h=k<<1;h=k>>>0<89478485?(h>>>0<e>>>0?e:h):178956970;do if(!h)i=0;else if(h>>>0>178956970)ud();else{i=Wpb(h*24|0)|0;break}while(0);e=i+(j*24|0)|0;k=i+(h*24|0)|0;s=+n[c>>2];r=+n[d>>2];p[e>>3]=+n[b>>2];p[i+(j*24|0)+8>>3]=s;p[i+(j*24|0)+16>>3]=r;h=e+24|0;if((g|0)!=(l|0))do{j=g;g=g+-24|0;p[e+-24>>3]=+p[g>>3];p[e+-16>>3]=+p[j+-16>>3];p[e+-8>>3]=+p[j+-8>>3];e=e+-24|0}while((g|0)!=(l|0));f[a>>2]=e;f[o>>2]=h;f[m>>2]=k;if(!q)return;Zpb(q);return}function qka(a,c){a=a|0;c=c|0;var d=0,e=0;if(!(b[c+80>>0]|0)){d=f[c+72>>2]|0;e=f[c+68>>2]|0}else{d=0;e=0}f[a>>2]=c;f[a+4>>2]=e;f[a+8>>2]=d;b[a+12>>0]=0;b[a+13>>0]=(h[(f[c>>2]|0)+144>>0]|0)>>>1&1;return}function rka(a,c){a=a|0;c=c|0;var d=0,e=0;if(!(b[c+80>>0]|0)){d=f[c+76>>2]|0;e=f[c+72>>2]|0}else{d=0;e=0}f[a>>2]=c;f[a+4>>2]=e;f[a+8>>2]=d;b[a+12>>0]=1;b[a+13>>0]=(h[(f[c>>2]|0)+144>>0]|0)>>>1&1;return}function ska(a,c){a=a|0;c=c|0;var d=0,e=0;if(!(b[c+80>>0]|0)){d=f[c+4>>2]|0;d=((f[d+4>>2]|0)-(f[d>>2]|0)|0)/24|0;e=f[c+76>>2]|0}else{d=0;e=0}f[a>>2]=c;f[a+4>>2]=e;f[a+8>>2]=d;b[a+12>>0]=2;b[a+13>>0]=(h[(f[c>>2]|0)+144>>0]|0)>>>1&1;return}function tka(a){a=a|0;var c=0;c=(f[a+4>>2]|0)+1|0;if(c>>>0>=(f[a+8>>2]|0)>>>0){c=0;return c|0}if(b[a+13>>0]|0){c=1;return c|0}a=f[f[(f[a>>2]|0)+4>>2]>>2]|0;c=+n[a+(c*24|0)>>2]<=+n[a+(c*24|0)+12>>2];return c|0}function uka(a){a=a|0;a=a+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function vka(a){a=a|0;var c=0;c=f[a>>2]|0;if(!(b[c+80>>0]|0)){c=(f[f[c+4>>2]>>2]|0)+((f[a+4>>2]|0)*24|0)|0;return c|0}else{c=c+8|0;return c|0}return 0}function wka(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,k=0.0,l=0.0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=u;u=u+32|0;C=E;a=(uwa(a)|0)+8|0;a=f[a>>2]|0;a:do if(!a){g=0;a=0}else{g=f[(f[a+12>>2]|0)+56>>2]|0;if(!g)do{a=f[a>>2]|0;if(!a){g=0;a=0;break a}g=f[(f[a+12>>2]|0)+56>>2]|0}while((g|0)==0)}while(0);p=C+12|0;q=e+12|0;r=C+4|0;s=e+4|0;t=C+8|0;v=e+8|0;w=e+12|0;x=C+16|0;y=e+16|0;z=C+20|0;A=e+20|0;B=C+12|0;if(!a){u=E;return}b:while(1){if(c)do{i=f[g+12>>2]|0;do if(i|0)if(b[i+192>>0]&7){if(!d)if(f[i+196>>2]&65536|0)break;F=i+200|0;if(!((j[F>>1]|0|(h[F+2>>0]|0)<<16)&7864320)){npa(i,C,p);k=+n[e>>2];l=+n[q>>2];if(!(k<=l)){f[e>>2]=f[C>>2];f[s>>2]=f[r>>2];f[v>>2]=f[t>>2];f[w>>2]=f[p>>2];f[y>>2]=f[x>>2];f[A>>2]=f[z>>2];break}m=+n[C>>2];o=+n[B>>2];if(m<=o){if(m<k){i=e;D=16}else if(m>l){i=w;D=16}if((D|0)==16){D=0;n[i>>2]=m}k=+n[r>>2];if(k<+n[s>>2]){i=e;D=19}else if(k>+n[y>>2]){i=w;D=19}if((D|0)==19){D=0;n[i+4>>2]=k}k=+n[t>>2];if(k<+n[v>>2]){i=e;D=22}else if(k>+n[A>>2]){i=w;D=22}if((D|0)==22){D=0;n[i+8>>2]=k}if(o<+n[e>>2]){i=e;D=25}else if(o>+n[w>>2]){i=w;D=25}if((D|0)==25){D=0;n[i>>2]=o}k=+n[x>>2];if(k<+n[s>>2]){i=e;D=28}else if(k>+n[y>>2]){i=w;D=28}if((D|0)==28){D=0;n[i+4>>2]=k}k=+n[z>>2];if(k<+n[v>>2])i=e;else if(k>+n[A>>2])i=w;else break;n[i+8>>2]=k}}}while(0);g=f[g>>2]|0}while((g|0)!=0);else do{i=f[g+12>>2]|0;do if(i|0){if(!d)if(f[i+196>>2]&65536|0)break;F=i+200|0;if(!((j[F>>1]|0|(h[F+2>>0]|0)<<16)&7864320)){npa(i,C,p);k=+n[e>>2];l=+n[q>>2];if(!(k<=l)){f[e>>2]=f[C>>2];f[s>>2]=f[r>>2];f[v>>2]=f[t>>2];f[w>>2]=f[p>>2];f[y>>2]=f[x>>2];f[A>>2]=f[z>>2];break}m=+n[C>>2];o=+n[B>>2];if(m<=o){if(m<k){i=e;D=43}else if(m>l){i=w;D=43}if((D|0)==43){D=0;n[i>>2]=m}k=+n[r>>2];if(k<+n[s>>2]){i=e;D=46}else if(k>+n[y>>2]){i=w;D=46}if((D|0)==46){D=0;n[i+4>>2]=k}k=+n[t>>2];if(k<+n[v>>2]){i=e;D=49}else if(k>+n[A>>2]){i=w;D=49}if((D|0)==49){D=0;n[i+8>>2]=k}if(o<+n[e>>2]){i=e;D=52}else if(o>+n[w>>2]){i=w;D=52}if((D|0)==52){D=0;n[i>>2]=o}k=+n[x>>2];if(k<+n[s>>2]){i=e;D=55}else if(k>+n[y>>2]){i=w;D=55}if((D|0)==55){D=0;n[i+4>>2]=k}k=+n[z>>2];if(k<+n[v>>2])i=e;else if(k>+n[A>>2])i=w;else break;n[i+8>>2]=k}}}while(0);g=f[g>>2]|0}while((g|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;g=f[(f[a+12>>2]|0)+56>>2]|0;if(g)continue b}}u=E;return}function xka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+32|0;w=y+16|0;t=y+8|0;v=y;f[w>>2]=0;x=w+4|0;f[x>>2]=0;f[w+8>>2]=0;Bva(t,a,0);e=f[(f[t>>2]|0)+56>>2]|0;do if(!e){r=0;s=0}else{q=w+8|0;a:while(1){g=e;p=(f[g+12>>2]|0)+200|0;do if(!((j[p>>1]|0|(h[p+2>>0]|0)<<16)&7864320)){o=f[g+8>>2]|0;g=f[x>>2]|0;i=f[q>>2]|0;if(g>>>0<i>>>0){f[g>>2]=0;f[g+4>>2]=o;f[x>>2]=g+8;break}p=f[w>>2]|0;m=g-p|0;n=m>>3;g=n+1|0;if(g>>>0>536870911){e=15;break a}k=i-p|0;l=k>>2;g=k>>3>>>0<268435455?(l>>>0<g>>>0?g:l):536870911;if(!g){k=0;l=0}else{if(g>>>0>536870911){e=18;break a}l=Wpb(g<<3)|0;k=l}i=k+(n<<3)|0;f[i>>2]=0;f[k+(n<<3)+4>>2]=o;if((m|0)>0)Irb(l|0,p|0,m|0)|0;f[w>>2]=k;f[x>>2]=i+8;f[q>>2]=k+(g<<3);if(p|0)Zpb(p)}while(0);e=f[e>>2]|0;if(!e){e=3;break}}if((e|0)==3){r=f[w>>2]|0;s=f[x>>2]|0;break}else if((e|0)==15)fob(w);else if((e|0)==18)ud()}while(0);f[v>>2]=s-r>>3;yka(a,r,v,b,c,d);e=f[t+4>>2]|0;if(e|0)Ppb(e);e=f[w>>2]|0;if(!e){u=y;return}g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e);u=y;return}function yka(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+32|0;z=D+24|0;A=D;B=f[d>>2]|0;if(!B){u=D;return}k=z+4|0;y=h+12|0;a:do if(e){i=B;do{i=i+-1|0;f[d>>2]=i;i=c+(i<<3)|0;mwa(z,a,i);j=f[z>>2]|0;do if(!j)i=0;else{x=i;f[x>>2]=0;f[x+4>>2]=-1;if(!(b[j+192>>0]&7))i=0;else{if(!g)if(f[j+196>>2]&65536|0){i=0;break}npa(j,h,y);i=1}}while(0);j=f[k>>2]|0;if(j|0)Ppb(j);if(i){C=26;break a}i=f[d>>2]|0}while((i|0)!=0)}else{if(g){i=B;while(1){i=i+-1|0;f[d>>2]=i;i=c+(i<<3)|0;mwa(z,a,i);j=f[z>>2]|0;if(!j)i=0;else{f[i>>2]=0;f[i+4>>2]=-1;npa(j,h,y);i=1}j=f[k>>2]|0;if(j|0)Ppb(j);if(i){C=26;break a}i=f[d>>2]|0;if(!i)break a}}else i=B;do{i=i+-1|0;f[d>>2]=i;i=c+(i<<3)|0;mwa(z,a,i);j=f[z>>2]|0;if(!j)i=0;else{x=i;f[x>>2]=0;f[x+4>>2]=-1;if(!(f[j+196>>2]&65536)){npa(j,h,y);i=1}else i=0}j=f[k>>2]|0;if(j|0)Ppb(j);if(i){C=26;break a}i=f[d>>2]|0}while((i|0)!=0)}while(0);b:do if((C|0)==26){i=f[d>>2]|0;if(i|0){k=z+4|0;m=A+4|0;o=h+4|0;p=A+8|0;q=h+8|0;r=A+12|0;s=A+16|0;t=A+20|0;v=h+20|0;w=h+16|0;x=A+12|0;if(!e)while(1){i=i+-1|0;f[d>>2]=i;i=c+(i<<3)|0;mwa(z,a,i);j=f[z>>2]|0;do if(!j)i=0;else{e=i;f[e>>2]=0;f[e+4>>2]=-1;if(!g)if(f[j+196>>2]&65536|0){i=0;break}npa(j,A,x);i=1}while(0);j=f[k>>2]|0;if(j|0)Ppb(j);do if(i){l=+n[A>>2];if(l<+n[h>>2]){i=h;C=64}else if(l>+n[y>>2]){i=y;C=64}if((C|0)==64){C=0;n[i>>2]=l}l=+n[m>>2];if(l<+n[o>>2]){i=h;C=67}else if(l>+n[w>>2]){i=y;C=67}if((C|0)==67){C=0;n[i+4>>2]=l}l=+n[p>>2];if(l<+n[q>>2]){i=h;C=70}else if(l>+n[v>>2]){i=y;C=70}if((C|0)==70){C=0;n[i+8>>2]=l}l=+n[r>>2];if(l<+n[h>>2]){i=h;C=73}else if(l>+n[y>>2]){i=y;C=73}if((C|0)==73){C=0;n[i>>2]=l}l=+n[s>>2];if(l<+n[o>>2]){i=h;C=76}else if(l>+n[w>>2]){i=y;C=76}if((C|0)==76){C=0;n[i+4>>2]=l}l=+n[t>>2];if(l<+n[q>>2])i=h;else if(l>+n[v>>2])i=y;else break;n[i+8>>2]=l}while(0);i=f[d>>2]|0;if(!i)break b}do{i=i+-1|0;f[d>>2]=i;i=c+(i<<3)|0;mwa(z,a,i);j=f[z>>2]|0;do if(!j)i=0;else{e=i;f[e>>2]=0;f[e+4>>2]=-1;if(!(b[j+192>>0]&7))i=0;else{if(!g)if(f[j+196>>2]&65536|0){i=0;break}npa(j,A,x);i=1}}while(0);j=f[k>>2]|0;if(j|0)Ppb(j);do if(i){l=+n[A>>2];if(l<+n[h>>2]){i=h;C=38}else if(l>+n[y>>2]){i=y;C=38}if((C|0)==38){C=0;n[i>>2]=l}l=+n[m>>2];if(l<+n[o>>2]){i=h;C=41}else if(l>+n[w>>2]){i=y;C=41}if((C|0)==41){C=0;n[i+4>>2]=l}l=+n[p>>2];if(l<+n[q>>2]){i=h;C=44}else if(l>+n[v>>2]){i=y;C=44}if((C|0)==44){C=0;n[i+8>>2]=l}l=+n[r>>2];if(l<+n[h>>2]){i=h;C=47}else if(l>+n[y>>2]){i=y;C=47}if((C|0)==47){C=0;n[i>>2]=l}l=+n[s>>2];if(l<+n[o>>2]){i=h;C=50}else if(l>+n[w>>2]){i=y;C=50}if((C|0)==50){C=0;n[i+4>>2]=l}l=+n[t>>2];if(l<+n[q>>2])i=h;else if(l>+n[v>>2])i=y;else break;n[i+8>>2]=l}while(0);i=f[d>>2]|0}while((i|0)!=0)}}while(0);e=c+(B<<3)|0;i=c;while(1){if(!(f[i>>2]|0))if((f[i+4>>2]|0)==-1){C=85;break}i=i+8|0;if((i|0)==(e|0)){i=e;break}}c:do if((C|0)==85)if((i|0)==(e|0))i=e;else{j=i;while(1){do{k=j;j=j+8|0;if((j|0)==(e|0))break c;if(f[j>>2]|0)break}while((f[k+12>>2]|0)==-1);A=j;B=f[A+4>>2]|0;C=i;f[C>>2]=f[A>>2];f[C+4>>2]=B;i=i+8|0}}while(0);f[d>>2]=i-c>>3;u=D;return}function zka(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0,o=0,q=0,r=0,t=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;G=u;u=u+64|0;o=G+48|0;m=G+44|0;l=G+40|0;q=G+36|0;r=G+32|0;t=G+52|0;v=G+28|0;w=G+24|0;d=G;f[d>>2]=1065353216;E=d+4|0;f[E>>2]=1065353216;F=d+8|0;f[F>>2]=1065353216;i=d+12|0;f[i>>2]=0;C=d+16|0;f[C>>2]=0;D=d+20|0;f[D>>2]=0;j=Uwa(a)|0;h=j+40|0;if(!(b[h>>0]|0))h=j+4|0;else{b[h>>0]=0;f[q>>2]=f[j>>2];h=j+4|0;f[r>>2]=f[h>>2];f[l>>2]=f[q>>2];f[m>>2]=f[r>>2];b[o>>0]=b[t>>0]|0;H=$ia(l,m,o)|0;f[v>>2]=H;f[w>>2]=f[h>>2];f[m>>2]=f[v>>2];f[o>>2]=f[w>>2];aja(j,m,o)|0}if((f[j>>2]|0)==(f[h>>2]|0)){e=1.0;x=0.0;y=1.0;z=1.0;A=0.0}else{K=Aka(Uwa(a)|0)|0;J=f[K>>2]|0;f[d>>2]=J;h=f[K+4>>2]|0;f[E>>2]=h;H=f[K+8>>2]|0;f[F>>2]=H;I=f[K+12>>2]|0;f[i>>2]=I;j=f[K+16>>2]|0;f[C>>2]=j;f[D>>2]=f[K+20>>2];y=(f[s>>2]=J,+n[s>>2]);x=(f[s>>2]=I,+n[s>>2]);z=(f[s>>2]=h,+n[s>>2]);A=(f[s>>2]=j,+n[s>>2]);e=(f[s>>2]=H,+n[s>>2])}j=yva(a)|0;h=j+40|0;if(!(b[h>>0]|0))h=j+4|0;else{b[h>>0]=0;f[q>>2]=f[j>>2];h=j+4|0;f[r>>2]=f[h>>2];f[l>>2]=f[q>>2];f[m>>2]=f[r>>2];b[o>>0]=b[t>>0]|0;K=bja(l,m,o)|0;f[v>>2]=K;f[w>>2]=f[h>>2];f[m>>2]=f[v>>2];f[o>>2]=f[w>>2];cja(j,m,o)|0}do if((f[j>>2]|0)==(f[h>>2]|0))h=d+12|0;else{l=Bka(yva(a)|0)|0;h=d+12|0;if(!(y<=x)){f[d>>2]=f[l>>2];f[E>>2]=f[l+4>>2];f[F>>2]=f[l+8>>2];f[i>>2]=f[l+12>>2];f[C>>2]=f[l+16>>2];f[D>>2]=f[l+20>>2];break}g=+n[l>>2];k=+n[l+12>>2];if(g<=k){if(g<y){j=d;B=15}else if(g>x){j=i;B=15}if((B|0)==15)n[j>>2]=g;g=+n[l+4>>2];if(g<z){j=d;B=18}else if(g>A){j=i;B=18}if((B|0)==18){n[j+4>>2]=g;e=+n[F>>2]}g=+n[l+8>>2];if(g<e){j=d;B=21}else if(g>+n[D>>2]){j=i;B=21}if((B|0)==21)n[j+8>>2]=g;if(k<+n[d>>2]){j=d;B=24}else if(k>+n[i>>2]){j=i;B=24}if((B|0)==24)n[j>>2]=k;e=+n[l+16>>2];if(e<+n[E>>2]){j=d;B=27}else if(e>+n[C>>2]){j=i;B=27}if((B|0)==27)n[j+4>>2]=e;e=+n[l+20>>2];if(e<+n[F>>2])i=d;else if(!(e>+n[D>>2]))break;n[i+8>>2]=e}}while(0);g=+n[d>>2];e=+n[h>>2];if(!(g<=e)){K=0;u=G;return K|0}x=+n[E>>2];y=+n[F>>2];z=+n[C>>2];A=+n[D>>2];p[c>>3]=g;p[c+8>>3]=x;p[c+16>>3]=y;p[c+24>>3]=e;p[c+32>>3]=z;p[c+40>>3]=A;K=1;u=G;return K|0}function Aka(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,t=0,v=0;v=u;u=u+32|0;e=v+24|0;d=v+20|0;c=v+16|0;g=v+12|0;h=v+8|0;i=v+4|0;j=v;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];r=a+4|0;f[h>>2]=f[r>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[v+28>>0]|0;q=$ia(c,d,e)|0;f[i>>2]=q;f[j>>2]=f[r>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];aja(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0))d=a+12|0;else{b[c>>0]=0;d=a+12|0;f[d>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;e=f[a+4>>2]|0;if((c|0)!=(e|0)){g=a+42|0;do{if(!(Dka(f[c>>2]|0)|0))b[g>>0]=1;c=c+4|0}while((c|0)!=(e|0))}}i=a+12|0;if(+n[i>>2]<=+n[a+24>>2])if(+n[a+16>>2]<=+n[a+28>>2])if(+n[a+20>>2]<=+n[a+32>>2]){u=v;return d|0}c=f[a>>2]|0;j=f[a+4>>2]|0;if((c|0)==(j|0)){u=v;return d|0}h=f[c>>2]|0;e=f[h>>2]|0;f[d>>2]=e;k=a+16|0;f[k>>2]=f[h+4>>2];o=a+20|0;f[o>>2]=f[h+8>>2];p=a+24|0;f[p>>2]=f[h+12>>2];q=a+28|0;f[q>>2]=f[h+16>>2];r=a+32|0;f[r>>2]=f[h+20>>2];c=c+4|0;if((c|0)==(j|0)){u=v;return d|0}h=a+12|0;l=(f[s>>2]=e,+n[s>>2]);while(1){g=f[c>>2]|0;m=+n[g>>2];if(m<l){e=h;t=18}else if(m>+n[p>>2]){e=p;t=18}if((t|0)==18){t=0;n[e>>2]=m}l=+n[g+4>>2];if(l<+n[k>>2]){e=h;t=21}else if(l>+n[q>>2]){e=p;t=21}if((t|0)==21){t=0;n[e+4>>2]=l}l=+n[g+8>>2];if(l<+n[o>>2]){e=h;t=24}else if(l>+n[r>>2]){e=p;t=24}if((t|0)==24){t=0;n[e+8>>2]=l}l=+n[g+12>>2];if(l<+n[i>>2]){e=h;t=27}else if(l>+n[p>>2]){e=p;t=27}if((t|0)==27){t=0;n[e>>2]=l}l=+n[g+16>>2];if(l<+n[k>>2]){e=h;t=30}else if(l>+n[q>>2]){e=p;t=30}if((t|0)==30){t=0;n[e+4>>2]=l}l=+n[g+20>>2];if(l<+n[o>>2]){e=h;t=35}else if(l>+n[r>>2]){e=p;t=35}if((t|0)==35){t=0;n[e+8>>2]=l}c=c+4|0;if((c|0)==(j|0))break;l=+n[i>>2]}u=v;return d|0}function Bka(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,t=0,v=0;v=u;u=u+32|0;e=v+24|0;d=v+20|0;c=v+16|0;g=v+12|0;h=v+8|0;i=v+4|0;j=v;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];r=a+4|0;f[h>>2]=f[r>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[v+28>>0]|0;q=bja(c,d,e)|0;f[i>>2]=q;f[j>>2]=f[r>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];cja(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0))d=a+12|0;else{b[c>>0]=0;d=a+12|0;f[d>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;e=f[a+4>>2]|0;if((c|0)!=(e|0)){g=a+42|0;do{if(!(Cka(f[c>>2]|0)|0))b[g>>0]=1;c=c+4|0}while((c|0)!=(e|0))}}i=a+12|0;if(+n[i>>2]<=+n[a+24>>2])if(+n[a+16>>2]<=+n[a+28>>2])if(+n[a+20>>2]<=+n[a+32>>2]){u=v;return d|0}c=f[a>>2]|0;j=f[a+4>>2]|0;if((c|0)==(j|0)){u=v;return d|0}h=f[c>>2]|0;e=f[h>>2]|0;f[d>>2]=e;k=a+16|0;f[k>>2]=f[h+4>>2];o=a+20|0;f[o>>2]=f[h+8>>2];p=a+24|0;f[p>>2]=f[h+12>>2];q=a+28|0;f[q>>2]=f[h+16>>2];r=a+32|0;f[r>>2]=f[h+20>>2];c=c+4|0;if((c|0)==(j|0)){u=v;return d|0}h=a+12|0;l=(f[s>>2]=e,+n[s>>2]);while(1){g=f[c>>2]|0;m=+n[g>>2];if(m<l){e=h;t=18}else if(m>+n[p>>2]){e=p;t=18}if((t|0)==18){t=0;n[e>>2]=m}l=+n[g+4>>2];if(l<+n[k>>2]){e=h;t=21}else if(l>+n[q>>2]){e=p;t=21}if((t|0)==21){t=0;n[e+4>>2]=l}l=+n[g+8>>2];if(l<+n[o>>2]){e=h;t=24}else if(l>+n[r>>2]){e=p;t=24}if((t|0)==24){t=0;n[e+8>>2]=l}l=+n[g+12>>2];if(l<+n[i>>2]){e=h;t=27}else if(l>+n[p>>2]){e=p;t=27}if((t|0)==27){t=0;n[e>>2]=l}l=+n[g+16>>2];if(l<+n[k>>2]){e=h;t=30}else if(l>+n[q>>2]){e=p;t=30}if((t|0)==30){t=0;n[e+4>>2]=l}l=+n[g+20>>2];if(l<+n[o>>2]){e=h;t=35}else if(l>+n[r>>2]){e=p;t=35}if((t|0)==35){t=0;n[e+8>>2]=l}c=c+4|0;if((c|0)==(j|0))break;l=+n[i>>2]}u=v;return d|0}function Cka(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;s=v;c=a+49|0;if(b[c>>0]|0){t=1;u=v;return t|0}if(f[a+36>>2]|0){t=0;u=v;return t|0}e=f[a+24>>2]|0;d=a+28|0;if((e|0)==(f[d>>2]|0)){t=0;u=v;return t|0}b[c>>0]=1;Tla(s,f[e>>2]|0);p=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=p;p=s+4|0;r=f[p>>2]|0;m=a+4|0;f[p>>2]=f[m>>2];f[m>>2]=r;r=s+8|0;p=f[r>>2]|0;o=a+8|0;f[r>>2]=f[o>>2];f[o>>2]=p;p=a+12|0;r=s+12|0;l=f[r>>2]|0;f[r>>2]=f[p>>2];f[p>>2]=l;l=s+16|0;r=f[l>>2]|0;q=a+16|0;f[l>>2]=f[q>>2];f[q>>2]=r;r=a+20|0;f[r>>2]=f[s+20>>2];l=f[d>>2]|0;c=e+4|0;if((c|0)==(l|0)){t=1;u=v;return t|0}e=s+4|0;h=s+8|0;i=s+12|0;j=s+16|0;k=s+20|0;do{Tla(s,f[c>>2]|0);g=+n[s>>2];if(g<+n[a>>2]){d=a;t=8}else if(g>+n[p>>2]){d=p;t=8}if((t|0)==8){t=0;n[d>>2]=g}g=+n[e>>2];if(g<+n[m>>2]){d=a;t=11}else if(g>+n[q>>2]){d=p;t=11}if((t|0)==11){t=0;n[d+4>>2]=g}g=+n[h>>2];if(g<+n[o>>2]){d=a;t=14}else if(g>+n[r>>2]){d=p;t=14}if((t|0)==14){t=0;n[d+8>>2]=g}g=+n[i>>2];if(g<+n[a>>2]){d=a;t=17}else if(g>+n[p>>2]){d=p;t=17}if((t|0)==17){t=0;n[d>>2]=g}g=+n[j>>2];if(g<+n[m>>2]){d=a;t=20}else if(g>+n[q>>2]){d=p;t=20}if((t|0)==20){t=0;n[d+4>>2]=g}g=+n[k>>2];if(g<+n[o>>2]){d=a;t=23}else if(g>+n[r>>2]){d=p;t=23}if((t|0)==23){t=0;n[d+8>>2]=g}c=c+4|0}while((c|0)!=(l|0));c=1;u=v;return c|0}function Dka(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;s=v;c=a+49|0;if(b[c>>0]|0){t=1;u=v;return t|0}if(f[a+36>>2]|0){t=0;u=v;return t|0}e=f[a+24>>2]|0;d=a+28|0;if((e|0)==(f[d>>2]|0)){t=0;u=v;return t|0}b[c>>0]=1;gta(s,f[e>>2]|0);p=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=p;p=s+4|0;r=f[p>>2]|0;m=a+4|0;f[p>>2]=f[m>>2];f[m>>2]=r;r=s+8|0;p=f[r>>2]|0;o=a+8|0;f[r>>2]=f[o>>2];f[o>>2]=p;p=a+12|0;r=s+12|0;l=f[r>>2]|0;f[r>>2]=f[p>>2];f[p>>2]=l;l=s+16|0;r=f[l>>2]|0;q=a+16|0;f[l>>2]=f[q>>2];f[q>>2]=r;r=a+20|0;f[r>>2]=f[s+20>>2];l=f[d>>2]|0;c=e+4|0;if((c|0)==(l|0)){t=1;u=v;return t|0}e=s+4|0;h=s+8|0;i=s+12|0;j=s+16|0;k=s+20|0;do{gta(s,f[c>>2]|0);g=+n[s>>2];if(g<+n[a>>2]){d=a;t=8}else if(g>+n[p>>2]){d=p;t=8}if((t|0)==8){t=0;n[d>>2]=g}g=+n[e>>2];if(g<+n[m>>2]){d=a;t=11}else if(g>+n[q>>2]){d=p;t=11}if((t|0)==11){t=0;n[d+4>>2]=g}g=+n[h>>2];if(g<+n[o>>2]){d=a;t=14}else if(g>+n[r>>2]){d=p;t=14}if((t|0)==14){t=0;n[d+8>>2]=g}g=+n[i>>2];if(g<+n[a>>2]){d=a;t=17}else if(g>+n[p>>2]){d=p;t=17}if((t|0)==17){t=0;n[d>>2]=g}g=+n[j>>2];if(g<+n[m>>2]){d=a;t=20}else if(g>+n[q>>2]){d=p;t=20}if((t|0)==20){t=0;n[d+4>>2]=g}g=+n[k>>2];if(g<+n[o>>2]){d=a;t=23}else if(g>+n[r>>2]){d=p;t=23}if((t|0)==23){t=0;n[d+8>>2]=g}c=c+4|0}while((c|0)!=(l|0));c=1;u=v;return c|0}function Eka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[a+44>>2]|0;e=b*3|0;a=f[d+72>>2]|0;b=f[d+68>>2]|0;d=b;if((a|0)==(b|0)){e=0;return e|0}b=(a-b|0)/12|0;a=0;while(1){c=f[d+(a*12|0)>>2]|0;if(e>>>0>=c>>>0)if(e>>>0<((f[d+(a*12|0)+4>>2]|0)+c|0)>>>0){b=6;break}a=a+1|0;if(a>>>0>=b>>>0){a=0;b=6;break}}if((b|0)==6)return a|0;return 0}function Fka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[a+44>>2]|0;e=b<<1;a=f[d+84>>2]|0;b=f[d+80>>2]|0;d=b;if((a|0)==(b|0)){e=0;return e|0}b=(a-b|0)/12|0;a=0;while(1){c=f[d+(a*12|0)>>2]|0;if(e>>>0>=c>>>0)if(e>>>0<((f[d+(a*12|0)+4>>2]|0)+c|0)>>>0){b=6;break}a=a+1|0;if(a>>>0>=b>>>0){a=0;b=6;break}}if((b|0)==6)return a|0;return 0}function Gka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+44>>2]|0;a=f[c+96>>2]|0;c=f[c+92>>2]|0;e=c;if((a|0)==(c|0)){b=0;return b|0}c=(a-c|0)/12|0;a=0;while(1){d=f[e+(a*12|0)>>2]|0;if(d>>>0<=b>>>0)if(((f[e+(a*12|0)+4>>2]|0)+d|0)>>>0>b>>>0){c=6;break}a=a+1|0;if(a>>>0>=c>>>0){a=0;c=6;break}}if((c|0)==6)return a|0;return 0}function Hka(){if(!(b[209528]|0))rrb(209528)|0;f[52747]=215189;return}function Ika(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p;if(!(b[209688]|0))if(rrb(209688)|0){f[52751]=0;f[52752]=0;f[52753]=0}d=f[52752]|0;if((f[52751]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=c;u=p;return}k=d+-20|0;h=f[k>>2]|0;f[k>>2]=0;k=d+-16|0;g=f[k>>2]|0;f[k>>2]=0;f[o>>2]=h;k=o+4|0;f[k>>2]=g;m=o+8|0;i=d+-12|0;e=f[i>>2]|0;f[m>>2]=e;j=d+-8|0;n=o+12|0;q=f[j>>2]|0;f[n>>2]=q;l=o+16|0;f[l>>2]=f[d+-4>>2];if(q|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=m;f[i>>2]=0;f[j>>2]=0}d=f[52752]|0;e=d+-20|0;do{g=d+-20|0;f[52752]=g;d=f[d+-12>>2]|0;if(d|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0);d=f[g>>2]|0;f[g>>2]=0;if(d|0)Zpb(d);d=f[52752]|0}while((d|0)!=(e|0));g=f[o>>2]|0;f[o>>2]=0;h=f[k>>2]|0;f[k>>2]=0;f[a>>2]=g;f[a+4>>2]=h;i=a+8|0;e=f[m>>2]|0;f[i>>2]=e;q=f[n>>2]|0;f[a+12>>2]=q;f[a+16>>2]=f[l>>2];d=e;if(!q){f[a+20>>2]=c;if(e|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0)}else{d=f[d+4>>2]|0;e=h+-1|0;if(!(e&h))d=d&e;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[g+(d<<2)>>2]=i;f[m>>2]=0;f[n>>2]=0;f[a+20>>2]=c}d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);u=p;return}function Jka(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209680]|0))if(rrb(209680)|0){f[52748]=0;f[52749]=0;f[52750]=0}e=f[52749]|0;if((f[52748]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52749]|0;j=h+-12|0;while(1){e=h+-12|0;f[52749]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~((h+-8-i|0)>>>3)<<3);Zpb(i);e=f[52749]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function Kka(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=e+(d<<2)|0;f[a>>2]=0;k=a+4|0;f[k>>2]=0;f[a+8>>2]=0;l=e;g=d<<2;h=g>>2;if(h|0){if(h>>>0>1073741823)fob(a);i=Wpb(g)|0;f[k>>2]=i;f[a>>2]=i;f[a+8>>2]=i+(h<<2);if(d|0){d=j+-4|0;g=i;while(1){f[g>>2]=f[e>>2];e=e+4|0;if((e|0)==(j|0))break;else g=g+4|0}f[k>>2]=i+(((d-l|0)>>>2)+1<<2)}}j=c;k=f[j+4>>2]|0;l=a+12|0;f[l>>2]=f[j>>2];f[l+4>>2]=k;b[a+20>>0]=0;return}function Lka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)ud();else{j=Wpb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;n=f[c>>2]|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=n;if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;Zpb(k);return}function Mka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+64|0;h=i;f[h>>2]=b;g=h+4|0;Ika(g,f[52747]|0);Jka(h+28|0,f[52747]|0);Jka(h+44|0,f[52747]|0);e=h+16|0;if(f[e>>2]|0){d=h+12|0;b=f[d>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);f[d>>2]=0;d=f[h+8>>2]|0;if(d|0){b=0;do{f[(f[g>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[e>>2]=0}b=f[c>>2]|0;d=c+4|0;e=f[d>>2]|0;if((e|0)==(b|0)){Nka(a,h,c);Oka(h);u=i;return}f[d>>2]=e+(~((e+-8-b|0)>>>3)<<3);Nka(a,h,c);Oka(h);u=i;return}function Nka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;t=w;v=b+4|0;m=a+12|0;i=f[m>>2]|0;j=f[a+16>>2]|0;r=j+-1640531527+(i<<6)+(i>>>2)^i;o=b+8|0;p=f[o>>2]|0;q=(p|0)==0;a:do if(q){d=0;s=20}else{h=p+-1|0;g=(h&p|0)==0;if(g)d=r&h;else if(r>>>0<p>>>0)d=r;else d=(r>>>0)%(p>>>0)|0;e=f[(f[v>>2]|0)+(d<<2)>>2]|0;if(!e)s=20;else{e=f[e>>2]|0;if(!e)s=20;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(r|0)|(g&h|0)==(d|0))){s=20;break a}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){s=20;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(r|0)){if(g>>>0>=p>>>0)g=(g>>>0)%(p>>>0)|0;if((g|0)!=(d|0)){s=20;break a}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){s=20;break}}}}}while(0);if((s|0)==20){i=Wpb(16)|0;j=m;m=f[j+4>>2]|0;h=i+8|0;f[h>>2]=f[j>>2];f[h+4>>2]=m;f[i+4>>2]=r;f[i>>2]=0;h=b+16|0;k=+(((f[h>>2]|0)+1|0)>>>0);l=+n[b+20>>2];do if(q|l*+(p>>>0)<k){d=p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1;e=~~+W(+(k/l))>>>0;Tka(v,d>>>0<e>>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&r;break}if(r>>>0<d>>>0){g=d;d=r}else{g=d;d=(r>>>0)%(d>>>0)|0}}else g=p;while(0);e=(f[v>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=b+12|0;f[i>>2]=f[d>>2];f[d>>2]=i;f[e>>2]=d;d=f[i>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[v>>2]|0)+(d<<2)|0;s=33}}else{f[i>>2]=f[d>>2];s=33}if((s|0)==33)f[d>>2]=i;f[h>>2]=(f[h>>2]|0)+1}p=c+4|0;h=f[p>>2]|0;g=f[c>>2]|0;d=h-g>>3;i=f[a>>2]|0;j=(f[a+4>>2]|0)-i>>2;m=h;e=g;if(j>>>0>1){s=f[i+4>>2]|0;i=i+8+(s<<2)|0;if((j+-2-s|0)>>>0>1){o=f[i>>2]|0;j=i+4|0;f[t>>2]=f[a+12>>2];if(!o)e=h;else{i=c+8|0;e=0;h=m;while(1){g=j+(e<<2)|0;if(h>>>0<(f[i>>2]|0)>>>0){a=f[g>>2]|0;f[h>>2]=f[t>>2];f[h+4>>2]=a;f[p>>2]=h+8}else Lka(c,t,g);e=e+1|0;if((e|0)==(o|0))break;h=f[p>>2]|0}e=f[p>>2]|0;g=f[c>>2]|0}i=g;h=e;e=g}else i=g}else i=g;g=h-i>>3;if(d>>>0>=g>>>0){u=w;return}h=t+4|0;while(1){e=e+(d<<3)|0;if(!(Uka(v,e)|0)){owa(t,f[b>>2]|0,e);Nka(f[t>>2]|0,b,c);e=f[h>>2]|0;if(e|0)Ppb(e)}d=d+1|0;if((d|0)==(g|0))break;e=f[c>>2]|0}u=w;return}function Oka(a){a=a|0;var b=0,c=0,d=0;b=a+44|0;c=f[a+56>>2]|0;if(c|0)Pka(c,b);b=f[b>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=a+28|0;c=f[a+40>>2]|0;if(c|0)Pka(c,b);b=f[b>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}c=a+4|0;b=f[a+24>>2]|0;if(b|0)Qka(b,c);b=f[a+12>>2]|0;if(b|0)do{a=b;b=f[b>>2]|0;Zpb(a)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(!b)return;Zpb(b);return}function Pka(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-8-a|0)>>>3)<<3);if(!(b[209680]|0))if(rrb(209680)|0){f[52748]=0;f[52749]=0;f[52750]=0}a=f[52749]|0;if(a>>>0<(f[52750]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52749]=a+12;return}else{Ska(210992,c);return}}function Qka(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=c+4|0;d=f[h>>2]|0;if(!d)return;j=c+12|0;if(f[j>>2]|0){e=c+8|0;a=f[e>>2]|0;if(!a){f[e>>2]=0;g=7}else{do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);a=f[h>>2]|0;f[e>>2]=0;if(a|0){d=a;g=7}}if((g|0)==7){a=0;do{f[(f[c>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[j>>2]=0}if(!(b[209688]|0))if(rrb(209688)|0){f[52751]=0;f[52752]=0;f[52753]=0}a=f[52752]|0;if(a>>>0>=(f[52753]|0)>>>0){Rka(211004,c);return}e=f[c>>2]|0;f[c>>2]=0;g=f[h>>2]|0;f[h>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){a=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))a=a&d;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;f[e+(a<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}f[52752]=(f[52752]|0)+20;return}function Rka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;h=((f[q>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/20|0;c=p<<1;c=p>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)e=0;else if(c>>>0>214748364)ud();else{e=Wpb(c*20|0)|0;break}while(0);n=e+(h*20|0)|0;l=n;p=e+(c*20|0)|0;m=f[b>>2]|0;f[b>>2]=0;i=b+4|0;g=f[i>>2]|0;f[i>>2]=0;f[n>>2]=m;f[e+(h*20|0)+4>>2]=g;i=e+(h*20|0)+8|0;j=b+8|0;c=f[j>>2]|0;f[i>>2]=c;k=b+12|0;o=f[k>>2]|0;f[e+(h*20|0)+12>>2]=o;f[e+(h*20|0)+16>>2]=f[b+16>>2];b=m;if(o|0){c=f[c+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[b+(c<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}o=n+20|0;m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=l;e=m;d=m}else{k=l;d=n;do{l=c;c=c+-20|0;g=f[c>>2]|0;f[c>>2]=0;h=l+-16|0;e=f[h>>2]|0;f[h>>2]=0;f[d+-20>>2]=g;f[d+-16>>2]=e;h=d+-12|0;i=l+-12|0;b=f[i>>2]|0;f[h>>2]=b;j=l+-8|0;n=f[j>>2]|0;f[d+-8>>2]=n;f[d+-4>>2]=f[l+-4>>2];if(n|0){d=f[b+4>>2]|0;b=e+-1|0;if(!(b&e))d=d&b;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;f[g+(d<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}d=k+-20|0;k=d}while((c|0)!=(m|0));c=k;e=f[a>>2]|0;d=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;b=e;if((d|0)!=(b|0))do{c=f[d+-12>>2]|0;d=d+-20|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(b|0));if(!e)return;Zpb(e);return}function Ska(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Tka(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Vka(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Vka(a,b);return}function Uka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function Vka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function Wka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+96|0;m=s+8|0;r=s+24|0;n=s;o=s+16|0;f[r>>2]=b;Ika(r+4|0,f[52747]|0);h=r+28|0;Jka(h,f[52747]|0);Jka(r+44|0,f[52747]|0);d=f[c>>2]|0;q=c+4|0;e=f[q>>2]|0;if((e|0)!=(d|0))f[q>>2]=e+(~((e+-8-d|0)>>>3)<<3);d=f[h>>2]|0;g=r+32|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-8-d|0)>>>3)<<3);Mka(a,b,h);d=f[h>>2]|0;j=f[g>>2]|0;if((d|0)!=(j|0)){k=c+8|0;l=o+4|0;i=d;do{d=i;h=f[d+4>>2]|0;e=n;f[e>>2]=f[d>>2];f[e+4>>2]=h;owa(o,b,n);e=f[o>>2]|0;h=f[e>>2]|0;d=h;if((f[e+4>>2]|0)-h>>2>>>0>1){h=f[d+4>>2]|0;a=d+8|0;f[m>>2]=f[e+12>>2];if(h|0){d=0;do{e=a+(d<<2)|0;g=f[q>>2]|0;if(g>>>0<(f[k>>2]|0)>>>0){e=f[e>>2]|0;f[g>>2]=f[m>>2];f[g+4>>2]=e;f[q>>2]=g+8}else Lka(c,m,e);d=d+1|0}while((d|0)!=(h|0))}}d=f[l>>2]|0;if(d|0)Ppb(d);i=i+8|0}while((i|0)!=(j|0))}Xka(f[c>>2]|0,f[q>>2]|0,m);d=f[c>>2]|0;e=f[q>>2]|0;a:do if((d|0)==(e|0))g=d;else{g=d+8|0;if((g|0)==(e|0)){Oka(r);u=s;return}while(1){if((f[d>>2]|0)==(f[d+8>>2]|0))if((f[d+4>>2]|0)==(f[d+12>>2]|0)){g=d;break a}d=g+8|0;if((d|0)==(e|0))break;else{o=g;g=d;d=o}}Oka(r);u=s;return}while(0);if((g|0)==(e|0)){Oka(r);u=s;return}d=g+16|0;if((d|0)==(e|0))d=g;else{a=d;d=g;g=g+8|0;while(1){if((f[d>>2]|0)==(f[a>>2]|0)){if((f[d+4>>2]|0)!=(f[g+12>>2]|0))p=17}else p=17;if((p|0)==17){p=0;d=d+8|0;m=a;n=f[m+4>>2]|0;o=d;f[o>>2]=f[m>>2];f[o+4>>2]=n}g=a+8|0;if((g|0)==(e|0))break;else{o=a;a=g;g=o}}e=f[q>>2]|0}d=d+8|0;if((e|0)==(d|0)){Oka(r);u=s;return}f[q>>2]=e+(~((e+-8-d|0)>>>3)<<3);Oka(r);u=s;return}function Xka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=Zka(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0<d>>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0<g>>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0<k>>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0<k>>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0<e>>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0<g>>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0<e>>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0<j>>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0<j>>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=$ka(a,i,c)|0;e=i+8|0;if($ka(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}Xka(a,i,c);a=i+8|0}if((q|0)==105){q=0;Xka(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0<b>>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0<e>>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){Yka(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){Zka(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){_ka(a,b,c);return}else if((q|0)==107)return}function Yka(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0<e>>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0<h>>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function Zka(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=Yka(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function _ka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0<h>>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0<c>>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0<c>>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0<e>>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0<h>>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function $ka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0<c>>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0<e>>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{Yka(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{Zka(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0<i>>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0<c>>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0<c>>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0<g>>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0<i>>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function ala(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+64|0;e=g;f[e>>2]=b;Ika(e+4|0,f[52747]|0);Jka(e+28|0,f[52747]|0);Jka(e+44|0,f[52747]|0);switch(c|0){case 0:{d=bla(a,e,d)|0;Oka(e);u=g;return d|0}case 1:{d=cla(a,e,d)|0;Oka(e);u=g;return d|0}default:{d=0;Oka(e);u=g;return d|0}}return 0}function bla(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p;o=p+8|0;if(!d){o=1;u=p;return o|0}m=a+20|0;if(b[m>>0]&2){o=1;u=p;return o|0}k=c+44|0;e=f[k>>2]|0;l=c+48|0;d=f[l>>2]|0;if((d|0)==(e|0))d=e;else{d=d+(~((d+-8-e|0)>>>3)<<3)|0;f[l>>2]=d}j=f[a>>2]|0;g=j;if((f[a+4>>2]|0)-j>>2>>>0>1){j=f[g+4>>2]|0;i=g+8|0;f[n>>2]=f[a+12>>2];if(j){a=c+52|0;g=0;while(1){e=i+(g<<2)|0;if(d>>>0<(f[a>>2]|0)>>>0){e=f[e>>2]|0;f[d>>2]=f[n>>2];f[d+4>>2]=e;f[l>>2]=d+8}else Lka(k,n,e);d=g+1|0;if((d|0)==(j|0))break;g=d;d=f[l>>2]|0}e=f[k>>2]|0;d=f[l>>2]|0}}a:do if((e|0)!=(d|0)){i=o+4|0;while(1){k=e;l=f[k+4>>2]|0;g=n;f[g>>2]=f[k>>2];f[g+4>>2]=l;nwa(o,f[c>>2]|0,n);g=f[o>>2]|0;if(!g)g=1;else{g=f[g+4>>2]|0;if(!g)g=1;else g=((h[(f[g+44>>2]|0)+144>>0]|0)>>>1&1^1)&255}a=f[i>>2]|0;if(a|0)Ppb(a);e=e+8|0;if(g|0){d=0;break}if((e|0)==(d|0))break a}u=p;return d|0}while(0);b[m>>0]=b[m>>0]|2;o=1;u=p;return o|0}function cla(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0;j=c+16|0;if(f[j>>2]|0){g=c+12|0;e=f[g>>2]|0;if(e|0)do{i=e;e=f[e>>2]|0;Zpb(i)}while((e|0)!=0);f[g>>2]=0;g=f[c+8>>2]|0;if(g|0){i=c+4|0;e=0;do{f[(f[i>>2]|0)+(e<<2)>>2]=0;e=e+1|0}while((e|0)!=(g|0))}f[j>>2]=0}e=f[c+28>>2]|0;g=c+32|0;i=f[g>>2]|0;if((i|0)!=(e|0))f[g>>2]=i+(~((i+-8-e|0)>>>3)<<3);e=a+20|0;g=h[e>>0]|0;if(!(g&1))k=12;else if((g&4|0)==0&d)k=12;a:do if((k|0)==12){switch(dla(a,c,d)|0){case 1:break a;case 2:break;default:{k=0;return k|0}}b[e>>0]=b[e>>0]|(d?5:1);k=1;return k|0}while(0);k=1;return k|0}function dla(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;v=y;w=y+8|0;if(!(bla(a,c,d)|0)){x=0;u=y;return x|0}x=c+4|0;o=a+12|0;k=f[o>>2]|0;j=f[a+16>>2]|0;s=j+-1640531527+(k<<6)+(k>>>2)^k;p=c+8|0;q=f[p>>2]|0;r=(q|0)==0;a:do if(r){e=0;t=21}else{i=q+-1|0;h=(i&q|0)==0;if(h)e=s&i;else if(s>>>0<q>>>0)e=s;else e=(s>>>0)%(q>>>0)|0;g=f[(f[x>>2]|0)+(e<<2)>>2]|0;if(!g)t=21;else{g=f[g>>2]|0;if(!g)t=21;else{if(h)while(1){h=f[g+4>>2]|0;if(!((h|0)==(s|0)|(h&i|0)==(e|0))){t=21;break a}if((f[g+8>>2]|0)==(k|0))if((f[g+12>>2]|0)==(j|0))break a;g=f[g>>2]|0;if(!g){t=21;break a}}while(1){h=f[g+4>>2]|0;if((h|0)!=(s|0)){if(h>>>0>=q>>>0)h=(h>>>0)%(q>>>0)|0;if((h|0)!=(e|0)){t=21;break a}}if((f[g+8>>2]|0)==(k|0))if((f[g+12>>2]|0)==(j|0))break a;g=f[g>>2]|0;if(!g){t=21;break}}}}}while(0);if((t|0)==21){j=Wpb(16)|0;k=o;o=f[k+4>>2]|0;i=j+8|0;f[i>>2]=f[k>>2];f[i+4>>2]=o;f[j+4>>2]=s;f[j>>2]=0;i=c+16|0;l=+(((f[i>>2]|0)+1|0)>>>0);m=+n[c+20>>2];do if(r|m*+(q>>>0)<l){e=q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1;g=~~+W(+(l/m))>>>0;Tka(x,e>>>0<g>>>0?g:e);e=f[p>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&s;break}if(s>>>0<e>>>0){h=e;e=s}else{h=e;e=(s>>>0)%(e>>>0)|0}}else h=q;while(0);g=(f[x>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=c+12|0;f[j>>2]=f[e>>2];f[e>>2]=j;f[g>>2]=e;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[x>>2]|0)+(e<<2)|0;t=34}}else{f[j>>2]=f[e>>2];t=34}if((t|0)==34)f[e>>2]=j;f[i>>2]=(f[i>>2]|0)+1}q=c+28|0;p=c+32|0;e=f[p>>2]|0;g=f[q>>2]|0;h=e-g>>3;j=f[a>>2]|0;k=(f[a+4>>2]|0)-j>>2;i=e;o=g;if(k>>>0>1){t=f[j+4>>2]|0;j=j+8+(t<<2)|0;if((k+-2-t|0)>>>0>1){o=f[j>>2]|0;k=j+4|0;f[v>>2]=f[a+12>>2];if(o){j=c+36|0;e=0;while(1){g=k+(e<<2)|0;if(i>>>0<(f[j>>2]|0)>>>0){a=f[g>>2]|0;f[i>>2]=f[v>>2];f[i+4>>2]=a;f[p>>2]=i+8}else Lka(q,v,g);e=e+1|0;if((e|0)==(o|0))break;i=f[p>>2]|0}e=f[p>>2]|0;g=f[q>>2]|0}i=g}else{i=g;g=o}}else{i=g;g=o}i=e-i>>3;if(h>>>0>=i>>>0){x=2;u=y;return x|0}j=w+4|0;b:do if(d){while(1){t=g+(h<<3)|0;a=f[t+4>>2]|0;d=v;f[d>>2]=f[t>>2];f[d+4>>2]=a;if(!(Uka(x,v)|0)){owa(w,f[c>>2]|0,v);e=f[w>>2]|0;if(!e)e=1;else{if((b[e+20>>0]&5)==5)e=1;else e=dla(e,c,1)|0;e=(e|0)==0&1}g=f[j>>2]|0;if(g|0)Ppb(g);if(e|0)break b}e=h+1|0;if(e>>>0>=i>>>0){e=2;break}g=f[q>>2]|0;h=e}u=y;return e|0}else{while(1){t=g+(h<<3)|0;a=f[t+4>>2]|0;d=v;f[d>>2]=f[t>>2];f[d+4>>2]=a;if(!(Uka(x,v)|0)){owa(w,f[c>>2]|0,v);e=f[w>>2]|0;if(!e)e=1;else{if(!(b[e+20>>0]&1))e=dla(e,c,0)|0;else e=1;e=(e|0)==0&1}g=f[j>>2]|0;if(g|0)Ppb(g);if(e|0)break b}e=h+1|0;if(e>>>0>=i>>>0){e=2;break}g=f[q>>2]|0;h=e}u=y;return e|0}while(0);x=0;u=y;return x|0}function ela(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;n=s;r=(e|0)!=0;if(r){h=f[e>>2]|0;i=e+4|0;j=f[i>>2]|0;if((j|0)!=(h|0))f[i>>2]=j+(~((j+-8-h|0)>>>3)<<3)}p=(g|0)!=0;if(p){h=f[g>>2]|0;i=g+4|0;j=f[i>>2]|0;if((j|0)!=(h|0))f[i>>2]=j+(~((j+-8-h|0)>>>3)<<3)}o=a+20|0;h=b[o>>0]|0;if((h&24)==24){g=0;u=s;return g|0}switch(d|0){case 0:{if(r&(h&8)==0){h=f[a>>2]|0;i=(f[a+4>>2]|0)-h>>2;if(i>>>0>1){m=f[h+4>>2]|0;h=h+8+(m<<2)|0;if((i+-2-m|0)>>>0>1){m=f[h>>2]|0;i=h+4|0;f[n>>2]=f[a+12>>2];if(m|0){j=e+4|0;d=e+8|0;h=0;do{k=i+(h<<2)|0;l=f[j>>2]|0;if(l>>>0<(f[d>>2]|0)>>>0){k=f[k>>2]|0;f[l>>2]=f[n>>2];f[l+4>>2]=k;f[j>>2]=l+8}else Lka(e,n,k);h=h+1|0}while((h|0)!=(m|0))}}}}if(p)if(!(b[o>>0]&16)){m=f[a>>2]|0;h=m;if((f[a+4>>2]|0)-m>>2>>>0>1){m=f[h+4>>2]|0;l=h+8|0;f[n>>2]=f[a+12>>2];if(m|0){i=g+4|0;j=g+8|0;h=0;do{d=l+(h<<2)|0;k=f[i>>2]|0;if(k>>>0<(f[j>>2]|0)>>>0){a=f[d>>2]|0;f[k>>2]=f[n>>2];f[k+4>>2]=a;f[i>>2]=k+8}else Lka(g,n,d);h=h+1|0}while((h|0)!=(m|0))}}}break}case 1:{if(r&(h&8)==0)Mka(a,c,e);if(p)if(!(b[o>>0]&16))Wka(a,c,g);break}default:{}}a:do if(r){h=f[e>>2]|0;m=e+4|0;j=f[m>>2]|0;if((h|0)!=(j|0)){d=n+4|0;do{owa(n,c,h);if(f[n>>2]|0){a=h;f[a>>2]=0;f[a+4>>2]=-1}i=f[d>>2]|0;if(i|0)Ppb(i);h=h+8|0}while((h|0)!=(j|0));h=f[e>>2]|0;l=f[m>>2]|0;if((h|0)!=(l|0)){while(1){if(!(f[h>>2]|0))if((f[h+4>>2]|0)==-1)break;h=h+8|0;if((h|0)==(l|0))break a}if((h|0)!=(l|0)){i=h+8|0;if((i|0)==(l|0))i=l;else{k=h;j=h;d=h;while(1){if(!(f[i>>2]|0))if((f[j+12>>2]|0)==-1)h=k;else q=46;else q=46;if((q|0)==46){q=0;k=i;a=f[k+4>>2]|0;h=d;f[h>>2]=f[k>>2];f[h+4>>2]=a;d=d+8|0;h=d}j=i+8|0;if((j|0)==(l|0))break;else{a=i;i=j;k=h;j=a}}i=f[m>>2]|0}if((i|0)!=(h|0))f[m>>2]=i+(~((i+-8-h|0)>>>3)<<3)}}}}while(0);b:do if(p){h=f[g>>2]|0;l=g+4|0;j=f[l>>2]|0;if((h|0)!=(j|0)){d=n+4|0;do{nwa(n,c,h);if(f[n>>2]|0){a=h;f[a>>2]=0;f[a+4>>2]=-1}i=f[d>>2]|0;if(i|0)Ppb(i);h=h+8|0}while((h|0)!=(j|0));h=f[g>>2]|0;i=f[l>>2]|0;if((h|0)!=(i|0)){d=h;while(1){if(!(f[d>>2]|0))if((f[d+4>>2]|0)==-1)break;h=d+8|0;if((h|0)==(i|0))break b;else d=h}if((d|0)!=(i|0)){h=d+8|0;if((h|0)==(i|0))h=d;else{k=h;h=d;j=d;while(1){if(!(f[k>>2]|0)){if((f[j+12>>2]|0)!=-1)q=68}else q=68;if((q|0)==68){q=0;c=k;n=f[c+4>>2]|0;h=d;f[h>>2]=f[c>>2];f[h+4>>2]=n;d=d+8|0;h=d}j=k+8|0;if((j|0)==(i|0))break;else{n=k;k=j;j=n}}i=f[l>>2]|0}if((i|0)!=(h|0))f[l>>2]=i+(~((i+-8-h|0)>>>3)<<3)}}}}while(0);if(r)if((f[e>>2]|0)==(f[e+4>>2]|0))b[o>>0]=b[o>>0]|8;if(p)if((f[g>>2]|0)==(f[g+4>>2]|0))b[o>>0]=b[o>>0]|16;if(r){h=(f[e>>2]|0)!=(f[e+4>>2]|0);if(h|p^1){g=h;u=s;return g|0}}else if(!p){g=0;u=s;return g|0}g=(f[g>>2]|0)!=(f[g+4>>2]|0);u=s;return g|0}function fla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;switch(c|0){case 0:{Wka(a,b,d);u=k;return}case 1:{b=f[d>>2]|0;i=d+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){b=c+(~((c+-8-b|0)>>>3)<<3)|0;f[i>>2]=b}h=f[a>>2]|0;c=h;if((f[a+4>>2]|0)-h>>2>>>0<=1){u=k;return}h=f[c+4>>2]|0;g=c+8|0;f[j>>2]=f[a+12>>2];a:do if(h|0){e=d+8|0;a=0;while(1){c=g+(a<<2)|0;if(b>>>0<(f[e>>2]|0)>>>0){c=f[c>>2]|0;f[b>>2]=f[j>>2];f[b+4>>2]=c;f[i>>2]=b+8}else Lka(d,j,c);b=a+1|0;if((b|0)==(h|0))break a;a=b;b=f[i>>2]|0}}while(0);u=k;return}default:{u=k;return}}}function gla(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=Wpb(88)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=27884;e=d+12|0;f[d+16>>2]=0;f[d+20>>2]=-1;g=d+24|0;f[g>>2]=0;f[e>>2]=27912;h=d+28|0;E6a(h);B6a(d+48|0);i=d+60|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[d+76>>2]=1.0;f[d+80>>2]=c;b[d+84>>0]=0;f[g>>2]=h;f[a>>2]=e;f[a+4>>2]=d;Npb(d);Ppb(d);return}function hla(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=27912;b=f[a+56>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+32>>2]|0;if(d|0)Qpb(d);Zpb(c)}while((b|0)!=0);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);d=a+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)_pb(b);a=a+16|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;_pb(b);return}function ila(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=27912;b=f[a+56>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+32>>2]|0;if(d|0)Qpb(d);Zpb(c)}while((b|0)!=0);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);d=a+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)_pb(b);d=a+16|0;b=f[d>>2]|0;f[d>>2]=0;if(!b){Zpb(a);return}_pb(b);Zpb(a);return}function jla(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=27884;f[a+12>>2]=27912;b=f[a+68>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+32>>2]|0;if(d|0)Qpb(d);Zpb(c)}while((b|0)!=0);d=a+60|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)_pb(b);d=a+28|0;b=f[d>>2]|0;f[d>>2]=0;if(!b){Hpb(a);return}_pb(b);Hpb(a);return}function kla(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=27884;f[a+12>>2]=27912;b=f[a+68>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+32>>2]|0;if(d|0)Qpb(d);Zpb(c)}while((b|0)!=0);d=a+60|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)_pb(b);d=a+28|0;b=f[d>>2]|0;f[d>>2]=0;if(!b){Hpb(a);Zpb(a);return}_pb(b);Hpb(a);Zpb(a);return}function lla(a){a=a|0;a=a+12|0;fh[f[f[a>>2]>>2]&2047](a);return}function mla(a){a=a|0;Zpb(a);return}function nla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=f[b>>2]|0;if(!c){f[a>>2]=0;f[a+4>>2]=0;return}g=Wpb(36)|0;f[g+4>>2]=0;f[g+8>>2]=0;f[g>>2]=27928;h=g+12|0;f[g+16>>2]=0;f[g+20>>2]=-1;e=g+24|0;f[e>>2]=0;f[h>>2]=27956;f[g+28>>2]=c;d=f[b+4>>2]|0;f[g+32>>2]=d;if(d){Npb(d);c=f[b>>2]|0}f[e>>2]=f[c+12>>2];f[a>>2]=h;f[a+4>>2]=g;Npb(g);Ppb(g);return}function ola(a){a=a|0;f[a>>2]=27956;a=f[a+20>>2]|0;if(!a)return;Ppb(a);return}function pla(a){a=a|0;var b=0;f[a>>2]=27956;b=f[a+20>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function qla(a){a=a|0;var b=0;f[a>>2]=27928;f[a+12>>2]=27956;b=f[a+32>>2]|0;if(!b){Hpb(a);return}Ppb(b);Hpb(a);return}function rla(a){a=a|0;var b=0;f[a>>2]=27928;f[a+12>>2]=27956;b=f[a+32>>2]|0;if(b|0)Ppb(b);Hpb(a);Zpb(a);return}function sla(a){a=a|0;a=a+12|0;fh[f[f[a>>2]>>2]&2047](a);return}function tla(a){a=a|0;Zpb(a);return}function ula(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b;b=f[d+4>>2]|0;c=a+4|0;f[c>>2]=f[d>>2];f[c+4>>2]=b;return}function vla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c=f[a+40>>2]|0;if(!c)return;u=a+36|0;v=a+32|0;w=a+40|0;x=a+44|0;r=(b&1|0)==0;s=a+20|0;t=a+52|0;b=c;do{m=b;e=b;d=e+28|0;q=e+32|0;c=f[q>>2]|0;if(!c){c=0;p=7}else{c=Rpb(c)|0;if(!c){c=0;p=7}else{p=f[d>>2]|0;g=p;if(!p)p=7;else{e=e+8|0;b=f[b>>2]|0;if(!r)if(f[a>>2]|0)O8a(g,a,e);if(!(f[s>>2]|0))p=47;else{d=f[t>>2]|0;if(!d)d=0;else{mxa(d,1);d=f[t>>2]|0}P8a(g,s,e,d,1295,1295);p=47}}}}if((p|0)==7){p=0;n=b;o=f[n>>2]|0;h=f[u>>2]|0;d=f[m+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)k=i&d;else if(d>>>0<h>>>0)k=d;else k=(d>>>0)%(h>>>0)|0;e=(f[v>>2]|0)+(k<<2)|0;l=f[e>>2]|0;while(1){d=f[l>>2]|0;if((d|0)==(m|0))break;else l=d}if((l|0)==(w|0))p=20;else{d=f[l+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)==(k|0))g=m;else p=20}do if((p|0)==20){p=0;d=f[m>>2]|0;if(d|0){d=f[d+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)==(k|0)){g=m;break}}f[e>>2]=0;g=m}while(0);e=f[g>>2]|0;d=e;if(e){e=f[e+4>>2]|0;if(j)e=e&i;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(k|0)){f[(f[v>>2]|0)+(e<<2)>>2]=l;d=f[n>>2]|0}}f[l>>2]=d;f[g>>2]=0;f[x>>2]=(f[x>>2]|0)+-1;if(b|0){d=f[q>>2]|0;if(d|0)Qpb(d);Zpb(b)}if(!c)b=o;else{b=o;p=47}}if((p|0)==47)Ppb(c)}while((b|0)!=0);return}function wla(a){a=a|0;if(!a)return;mxa(a,-1);return}function xla(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+16|0;y=B;f[a>>2]=0;k=a+4|0;f[k>>2]=0;A=c+32|0;v=yla(A,d)|0;if(!v){j=k;e=0}else{j=v+28|0;t=v+32|0;e=f[t>>2]|0;if(!e){e=0;z=5}else{g=Rpb(e)|0;e=g;if(!g)z=5;else{x=f[j>>2]|0;f[a>>2]=x;f[k>>2]=e;if(!x){e=g;j=k;r=a}else{u=B;return}}}if((z|0)==5){f[a>>2]=0;f[k>>2]=e;j=k;r=a}l=f[c+36>>2]|0;a=f[v+4>>2]|0;m=l+-1|0;o=(m&l|0)==0;if(o)p=m&a;else if(a>>>0<l>>>0)p=a;else p=(a>>>0)%(l>>>0)|0;g=(f[A>>2]|0)+(p<<2)|0;q=f[g>>2]|0;while(1){a=f[q>>2]|0;if((a|0)==(v|0))break;else q=a}if((q|0)==(c+40|0))z=20;else{a=f[q+4>>2]|0;if(o)a=a&m;else if(a>>>0>=l>>>0)a=(a>>>0)%(l>>>0)|0;if((a|0)==(p|0))k=v;else z=20}do if((z|0)==20){a=f[v>>2]|0;if(a|0){a=f[a+4>>2]|0;if(o)a=a&m;else if(a>>>0>=l>>>0)a=(a>>>0)%(l>>>0)|0;if((a|0)==(p|0)){k=v;break}}f[g>>2]=0;k=v}while(0);g=f[k>>2]|0;a=g;if(g){g=f[g+4>>2]|0;if(o)g=g&m;else if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)!=(p|0)){f[(f[A>>2]|0)+(g<<2)>>2]=q;a=f[v>>2]|0}}f[q>>2]=a;f[k>>2]=0;a=c+44|0;f[a>>2]=(f[a>>2]|0)+-1;a=f[t>>2]|0;if(a|0)Qpb(a);Zpb(v);a=r}D8a(y);w=f[y>>2]|0;g=y+4|0;x=f[g>>2]|0;f[y>>2]=0;f[g>>2]=0;f[a>>2]=w;f[j>>2]=x;j=w;v=x;if(e|0){Ppb(e);e=f[g>>2]|0;if(e|0)Ppb(e)}if(!(f[c>>2]|0))K8a(j,b[c+28>>0]|0);else O8a(j,c,d);g=c+20|0;if(f[g>>2]|0){a=c+52|0;e=f[a>>2]|0;if(e){mxa(e,1);e=f[a>>2]|0}P8a(j,g,d,e,1295,1295)}m=f[d>>2]|0;o=f[d+4>>2]|0;e=o+-1640531527+(m<<6)+(m>>>2)^m;p=f[d+8>>2]|0;e=p+-1640531527+(e<<6)+(e>>>2)^e;l=f[d+12>>2]|0;e=l+-1640531527+(e<<6)+(e>>>2)^e;h=+n[d+16>>2];t=(e<<6)+(h==0.0?-1640531527:(n[s>>2]=h,f[s>>2]|0)+-1640531527|0)+(e>>>2)^e;q=c+36|0;g=f[q>>2]|0;r=(g|0)==0;a:do if(r)e=0;else{k=g+-1|0;j=(k&g|0)==0;if(j)e=t&k;else if(t>>>0<g>>>0)e=t;else e=(t>>>0)%(g>>>0)|0;a=f[(f[A>>2]|0)+(e<<2)>>2]|0;if(a){a=f[a>>2]|0;if(a){if(j){while(1){y=f[a+4>>2]|0;if(!((y|0)==(t|0)|(y&k|0)==(e|0)))break a;if((f[a+8>>2]|0)==(m|0))if((f[a+12>>2]|0)==(o|0))if((f[a+16>>2]|0)==(p|0))if((f[a+20>>2]|0)==(l|0))if(+n[a+24>>2]==h)break;a=f[a>>2]|0;if(!a)break a}u=B;return}while(1){j=f[a+4>>2]|0;if((j|0)!=(t|0)){if(j>>>0>=g>>>0)j=(j>>>0)%(g>>>0)|0;if((j|0)!=(e|0))break a}if((f[a+8>>2]|0)==(m|0))if((f[a+12>>2]|0)==(o|0))if((f[a+16>>2]|0)==(p|0))if((f[a+20>>2]|0)==(l|0))if(+n[a+24>>2]==h)break;a=f[a>>2]|0;if(!a)break a}u=B;return}}}while(0);k=Wpb(36)|0;y=k+8|0;f[y>>2]=f[d>>2];f[y+4>>2]=f[d+4>>2];f[y+8>>2]=f[d+8>>2];f[y+12>>2]=f[d+12>>2];f[y+16>>2]=f[d+16>>2];f[k+28>>2]=w;f[k+32>>2]=v;if(x|0)Opb(v);f[k+4>>2]=t;f[k>>2]=0;j=c+44|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[c+48>>2];do if(r|i*+(g>>>0)<h){e=g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1;a=~~+W(+(h/i))>>>0;zla(A,e>>>0<a>>>0?a:e);e=f[q>>2]|0;a=e+-1|0;if(!(a&e)){g=e;e=a&t;break}if(t>>>0<e>>>0){g=e;e=t}else{g=e;e=(t>>>0)%(e>>>0)|0}}while(0);a=(f[A>>2]|0)+(e<<2)|0;e=f[a>>2]|0;if(!e){e=c+40|0;f[k>>2]=f[e>>2];f[e>>2]=k;f[a>>2]=e;e=f[k>>2]|0;if(e|0){e=f[e+4>>2]|0;a=g+-1|0;if(!(a&g))e=e&a;else if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;e=(f[A>>2]|0)+(e<<2)|0;z=88}}else{f[k>>2]=f[e>>2];z=88}if((z|0)==88)f[e>>2]=k;f[j>>2]=(f[j>>2]|0)+1;u=B;return}function yla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,o=0;l=f[b>>2]|0;o=f[b+4>>2]|0;c=o+-1640531527+(l<<6)+(l>>>2)^l;k=f[b+8>>2]|0;c=k+-1640531527+(c<<6)+(c>>>2)^c;m=f[b+12>>2]|0;c=m+-1640531527+(c<<6)+(c>>>2)^c;i=+n[b+16>>2];e=(c<<6)+(i==0.0?-1640531527:(n[s>>2]=i,f[s>>2]|0)+-1640531527|0)+(c>>>2)^c;g=f[a+4>>2]|0;if(!g){o=0;return o|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){o=0;return o|0}b=f[b>>2]|0;if(!b){o=0;return o|0}if(c){while(1){a=f[b+4>>2]|0;c=(a|0)==(e|0);if(!(c|(a&d|0)==(h|0))){b=0;c=27;break}if(c)if((f[b+8>>2]|0)==(l|0))if((f[b+12>>2]|0)==(o|0))if((f[b+16>>2]|0)==(k|0))if((f[b+20>>2]|0)==(m|0))if(+n[b+24>>2]==i){c=27;break}b=f[b>>2]|0;if(!b){b=0;c=27;break}}if((c|0)==27)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(l|0))if((f[j+12>>2]|0)==(o|0))if((f[j+16>>2]|0)==(k|0))if((f[j+20>>2]|0)==(m|0))if(+n[j+24>>2]==i){b=j;c=27;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;c=27;break}}j=f[j>>2]|0;if(!j){b=0;c=27;break}}if((c|0)==27)return b|0;return 0}function zla(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Ala(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Ala(a,b);return}function Ala(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();r=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=r;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;q=b+-1|0;r=(q&b|0)==0;if(r)c=c&q;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){p=d;b:while(1){c:do if(r){d=e;while(1){o=f[d+4>>2]&q;if((o|0)==(c|0))break c;e=(f[a>>2]|0)+(o<<2)|0;if(!(f[e>>2]|0)){c=o;break b}j=d+12|0;k=d+16|0;l=d+20|0;m=d+24|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;if((f[l>>2]|0)!=(f[h+20>>2]|0))break d;if(!(+n[m>>2]==+n[h+24>>2]))break d;e=f[h>>2]|0;if(!e){e=h;break}else{s=h;h=e;e=s}}}while(0);f[p>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(o<<2)>>2]>>2];f[f[(f[a>>2]|0)+(o<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=45;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)o=e;else o=(e>>>0)%(b>>>0)|0;if((o|0)==(c|0))break c;e=(f[a>>2]|0)+(o<<2)|0;if(!(f[e>>2]|0)){c=o;break b}i=d+12|0;j=d+16|0;k=d+20|0;l=d+24|0;h=f[d>>2]|0;e:do if(!h)e=d;else{m=f[d+8>>2]|0;e=d;while(1){if((m|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;if((f[k>>2]|0)!=(f[h+20>>2]|0))break e;if(!(+n[l>>2]==+n[h+24>>2]))break e;e=f[h>>2]|0;if(!e){e=h;break}else{s=h;h=e;e=s}}}while(0);f[p>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(o<<2)>>2]>>2];f[f[(f[a>>2]|0)+(o<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=45;break a}}}while(0);e=f[d>>2]|0;if(!e){c=45;break a}else{g=d;p=d}}f[e>>2]=p;e=f[d>>2]|0;if(!e){c=45;break}else g=d}if((c|0)==45)return}function Bla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;a=f[a+12>>2]|0;if(!(f[b>>2]|0)){u=e;return}B6a(d);C6a(a+20|0,d)|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)_pb(c);F6a(a,b)|0;vla(a,1);u=e;return}function Cla(a,b){a=a|0;b=b|0;a=f[a+12>>2]|0;if(!(f[b>>2]|0))return;C6a(a+20|0,b)|0;vla(a,2);return}function Dla(a){a=a|0;return (b[(f[a+12>>2]|0)+56>>0]|0)!=0|0}function Ela(a,c){a=a|0;c=c|0;b[(f[a+12>>2]|0)+56>>0]=c&1;return}function Fla(a,b,c){a=a|0;b=b|0;c=c|0;xla(a,f[b+12>>2]|0,c);return}function Gla(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;b=f[b+12>>2]|0;v8a(d);x8a(d,9729,9987);y8a(d,8.0);xla(a,b,d);u=c;return}function Hla(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;f[a+12>>2]=f[g>>2];c=f[g+4>>2]|0;f[a+16>>2]=c;if(c|0)Npb(c);g=a+20|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;n[a+44>>2]=1.0;g=a+48|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+64>>2]=1.0;g=a+68|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+84>>2]=1.0;g=a+88|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+104>>2]=1.0;g=a+108|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+124>>2]=1.0;b[a+128>>0]=h;return}function Ila(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;m1a(c,b,a);b=a+20|0;e=f[c>>2]|0;f[c>>2]=0;a=f[b>>2]|0;f[b>>2]=e;if(!a){f[c>>2]=0;u=d;return}Jla(a);Zpb(a);a=f[c>>2]|0;f[c>>2]=0;if(!a){u=d;return}Jla(a);Zpb(a);u=d;return}function Jla(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=a+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){b=f[c+8>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(b|0)Zpb(b);Zpb(c)}d=a+24|0;b=f[d>>2]|0;if(b|0){e=a+28|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-20|0;f[e>>2]=g;Kla(g);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}e=a+12|0;b=f[e>>2]|0;if(!b)return;d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{g=c+-72|0;f[d>>2]=g;Jla(g);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b);return}function Kla(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;if(b|0){c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}e=f[a>>2]|0;f[a>>2]=0;if(!e)return;b=f[e+52>>2]|0;if(b|0){c=e+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[e+16>>2]|0;if(b|0)Ppb(b);b=f[e>>2]|0;if(b|0){a=e+4|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[a>>2]=d;c=f[c+-24>>2]|0;if(!c)c=d;else{Ppb(c);c=f[a>>2]|0}}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b)}Zpb(e);return}function Lla(a){a=a|0;return (f[a+4>>2]|0)==0|0}function Mla(a){a=a|0;return f[a+20>>2]|0}function Nla(a){a=a|0;return f[a+20>>2]|0}function Ola(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=b;b=Pla(a+28|0,e)|0;f[b>>2]=f[c>>2];u=d;return}function Pla(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Qla(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function Qla(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Rla(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Rla(a,b);return}function Rla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Sla(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a+32>>2]|0;if(!e){h=0;return h|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(e>>>0>b>>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a+28>>2]|0)+(g<<2)>>2]|0;if(!a){h=0;return h|0}a=f[a>>2]|0;if(!a){h=0;return h|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(e|0)==(b|0);if(!(c|(e&d|0)==(g|0))){a=0;c=20;break}if(c)if((f[a+8>>2]|0)==(b|0)){h=a;break a}a=f[a>>2]|0;if(!a){a=0;c=20;break}}if((c|0)==20)return a|0}else{while(1){c=f[a+4>>2]|0;if((c|0)==(b|0)){if((f[a+8>>2]|0)==(b|0)){h=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=0;c=20;break}}a=f[a>>2]|0;if(!a){a=0;c=20;break}}if((c|0)==20)return a|0}while(0);h=h+12|0;return h|0}function Tla(a,b){a=a|0;b=b|0;QWa(a,f[b+20>>2]|0);return}function Ula(a){a=a|0;return f[a+24>>2]|0}function Vla(a,b){a=a|0;b=b|0;f[a+24>>2]=b;return}function Wla(){return}function Xla(){p$();jSa();return}function Yla(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;f[a>>2]=0;i=c+128|0;if(+n[i>>2]==1.0)if(+n[c+132>>2]==1.0)if(+n[c+136>>2]==1.0)if(+n[c+140>>2]!=1.0)k=5;else e=0;else k=5;else k=5;else k=5;a:do if((k|0)==5){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;g=e;while(1){b:while(1)switch(Pg[f[(f[g>>2]|0)+104>>2]&255](g,i)|0){case 1:case 0:break a;case 2:break b;default:g=e}nh[f[(f[e>>2]|0)+100>>2]&1023](l,e);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!e)f[l>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}g=h;e=h}}while(0);j=+n[c+164>>2];c:do if(j!=-1.0){if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;h=e}else h=e;g=e;e=h;while(1){d:while(1)switch(Og[f[(f[g>>2]|0)+108>>2]&15](g,j)|0){case 1:case 0:break c;case 2:break d;default:g=e}nh[f[(f[e>>2]|0)+100>>2]&1023](l,e);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!e)f[l>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}g=h;e=h}}while(0);j=+n[c+160>>2];e:do if(j!=-1.0){if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;h=e}else h=e;g=e;e=h;while(1){f:while(1)switch(Og[f[(f[g>>2]|0)+112>>2]&15](g,j)|0){case 1:case 0:break e;case 2:break f;default:g=e}nh[f[(f[e>>2]|0)+100>>2]&1023](l,e);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!e)f[l>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}g=h;e=h}}while(0);j=+n[c+168>>2];g:do if(j!=-1.0){if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;h=e}else h=e;g=e;e=h;while(1){h:while(1)switch(Og[f[(f[g>>2]|0)+116>>2]&15](g,j)|0){case 1:case 0:break g;case 2:break h;default:g=e}nh[f[(f[e>>2]|0)+100>>2]&1023](l,e);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!e)f[l>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}g=h;e=h}}while(0);i=c+120|0;i:do if(!(f[i>>2]|0))g=e;else{if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;g=e}else g=e;while(1){j:while(1)switch(Pg[f[(f[e>>2]|0)+120>>2]&255](e,i)|0){case 1:case 0:break i;case 2:break j;default:e=g}nh[f[(f[g>>2]|0)+100>>2]&1023](l,g);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!g)f[l>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}e=h;g=h}}while(0);i=c+88|0;k:do if(!(f[i>>2]|0))e=g;else{if(!g){g=Wpb(24)|0;d[g+4>>1]=0;f[g>>2]=27972;f[a>>2]=g;e=g}else e=g;while(1){l:while(1)switch(Pg[f[(f[g>>2]|0)+136>>2]&255](g,i)|0){case 1:case 0:break k;case 2:break l;default:g=e}nh[f[(f[e>>2]|0)+100>>2]&1023](l,e);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!e)f[l>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}g=h;e=h}}while(0);i=c+96|0;if(+n[i>>2]!=1.0)k=74;else if(+n[c+100>>2]!=0.0)k=74;else if(+n[c+104>>2]!=0.0)k=74;else if(+n[c+108>>2]!=1.0)k=74;else if(+n[c+112>>2]!=0.0)k=74;else if(+n[c+116>>2]!=0.0)k=74;m:do if((k|0)==74){if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;g=e}else g=e;while(1){n:while(1)switch(Pg[f[(f[e>>2]|0)+140>>2]&255](e,i)|0){case 1:case 0:{e=g;break m}case 2:break n;default:e=g}nh[f[(f[g>>2]|0)+100>>2]&1023](l,g);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!g)f[l>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}e=h;g=h}}while(0);i=b[c+185>>0]|0;if(!(i<<24>>24)){u=m;return}if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[a>>2]=e;g=e}else g=e;o:while(1){p:while(1)switch(Pg[f[(f[e>>2]|0)+144>>2]&255](e,i)|0){case 1:case 0:break o;case 2:break p;default:e=g}nh[f[(f[g>>2]|0)+100>>2]&1023](l,g);h=f[l>>2]|0;f[l>>2]=0;f[a>>2]=h;if(!g)f[l>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);e=f[l>>2]|0;f[l>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}e=h;g=h}u=m;return}function Zla(a){a=a|0;return}function _la(a){a=a|0;Zpb(a);return}function $la(a,b){a=a|0;b=b|0;var c=0,e=0;c=Wpb(24)|0;d[c+4>>1]=d[b+4>>1]|0;f[c>>2]=27972;e=c+8|0;b=b+8|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[a>>2]=c;return}function ama(a){a=a|0;var b=0;a=a+4|0;b=d[a>>1]|0;if(!(b&1)){b=0;return b|0}d[a>>1]=b&-2;b=1;return b|0}function bma(a){a=a|0;return (d[a+4>>1]&1?a+8|0:0)|0}function cma(a){a=a|0;return 0}function dma(a){a=a|0;return 0}function ema(a){a=a|0;return 0}function fma(a){a=a|0;return 0}function gma(a){a=a|0;return 0}function hma(a){a=a|0;return 0}function ima(a){a=a|0;return 0}function jma(a){a=a|0;return 0}function kma(a){a=a|0;return 0}function lma(a){a=a|0;return 0}function mma(a){a=a|0;return 0}function nma(a){a=a|0;return 0}function oma(a){a=a|0;return 0}function pma(a){a=a|0;return 0}function qma(a){a=a|0;return 0}function rma(a){a=a|0;return 0}function sma(a){a=a|0;return 0}function tma(a){a=a|0;return 0}function uma(a){a=a|0;return 0}function vma(a){a=a|0;return 0}function wma(a,b){a=a|0;b=b|0;var c=0,e=0;c=Wpb(32)|0;d[c+4>>1]=d[b+4>>1]|0;e=c+8|0;b=b+8|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[c>>2]=28128;f[a>>2]=c;return}function xma(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(e&1)if(+n[a+8>>2]==+n[b>>2])if(+n[a+12>>2]==+n[b+4>>2])if(+n[a+16>>2]==+n[b+8>>2])if(+n[a+20>>2]==+n[b+12>>2]){e=0;return e|0}d[c>>1]=e|1;e=a+8|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];e=1;return e|0}function yma(a,b){a=a|0;b=+b;return 2}function zma(a,b){a=a|0;b=+b;return 2}function Ama(a,b){a=a|0;b=+b;return 2}function Bma(a,b){a=a|0;b=b|0;return 2}function Cma(a,b){a=a|0;b=b|0;return 2}function Dma(a,b){a=a|0;b=+b;return 2}function Ema(a,b){a=a|0;b=b|0;return 2}function Fma(a,b){a=a|0;b=b|0;return 2}function Gma(a,b){a=a|0;b=b|0;return 2}function Hma(a,b){a=a|0;b=b|0;return 2}function Ima(a){a=a|0;Zpb(a);return}function Jma(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;c=Wpb(32)|0;d[c+4>>1]=d[b+4>>1]|0;g=c+8|0;e=b+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[c>>2]=28128;g=b+24|0;e=f[g+4>>2]|0;b=c+24|0;f[b>>2]=f[g>>2];f[b+4>>2]=e;f[a>>2]=c;return}function Kma(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&2)){c=0;return c|0}d[b>>1]=c&-3;n[a+24>>2]=0.0;c=1;return c|0}function Lma(a){a=a|0;return (d[a+4>>1]&2?a+24|0:0)|0}function Mma(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&4)){c=0;return c|0}d[b>>1]=c&-5;n[a+28>>2]=0.0;c=1;return c|0}function Nma(a){a=a|0;return (d[a+4>>1]&4?a+28|0:0)|0}function Oma(a,b){a=a|0;b=b|0;var c=0,e=0,g=0;c=Wpb(44)|0;d[c+4>>1]=d[b+4>>1]|0;g=c+8|0;e=b+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];g=b+24|0;e=f[g+4>>2]|0;b=c+24|0;f[b>>2]=f[g>>2];f[b+4>>2]=e;f[c>>2]=28284;f[c+36>>2]=0;f[c+40>>2]=0;f[a>>2]=c;return}function Pma(a,b){a=a|0;b=+b;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;a=a+24|0;if(e&2)if(+n[a>>2]==b){e=0;return e|0}d[c>>1]=e|2;n[a>>2]=b;e=1;return e|0}function Qma(a,b){a=a|0;b=+b;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;a=a+28|0;if(e&4)if(+n[a>>2]==b){e=0;return e|0}d[c>>1]=e|4;n[a>>2]=b;e=1;return e|0}function Rma(a){a=a|0;f[a>>2]=28284;a=f[a+40>>2]|0;if(!a)return;Ppb(a);return}function Sma(a){a=a|0;var b=0;f[a>>2]=28284;b=f[a+40>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function Tma(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0;c=Wpb(44)|0;d[c+4>>1]=d[b+4>>1]|0;h=c+8|0;g=b+8|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];h=b+24|0;g=f[h+4>>2]|0;e=c+24|0;f[e>>2]=f[h>>2];f[e+4>>2]=g;f[c>>2]=28284;f[c+32>>2]=f[b+32>>2];f[c+36>>2]=f[b+36>>2];b=f[b+40>>2]|0;f[c+40>>2]=b;if(!b){h=c;f[a>>2]=h;return}Npb(b);h=c;f[a>>2]=h;return}function Uma(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&8)){c=0;return c|0}d[b>>1]=c&-9;n[a+32>>2]=0.0;c=1;return c|0}function Vma(a){a=a|0;return (d[a+4>>1]&8?a+32|0:0)|0}function Wma(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&16)){c=0;return c|0}d[b>>1]=c&-17;f[a+36>>2]=0;c=a+40|0;a=f[c>>2]|0;f[c>>2]=0;if(!a){c=1;return c|0}Ppb(a);c=1;return c|0}function Xma(a){a=a|0;return (d[a+4>>1]&16?a+36|0:0)|0}function Yma(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0;c=Wpb(64)|0;d[c+4>>1]=d[b+4>>1]|0;h=c+8|0;g=b+8|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];h=b+24|0;g=f[h+4>>2]|0;e=c+24|0;f[e>>2]=f[h>>2];f[e+4>>2]=g;f[c+32>>2]=f[b+32>>2];e=b+36|0;f[c+36>>2]=f[e>>2];b=b+40|0;f[c+40>>2]=f[b>>2];f[e>>2]=0;f[b>>2]=0;f[c>>2]=28440;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=0;f[a>>2]=c;return}function Zma(a,b){a=a|0;b=+b;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;a=a+32|0;if(e&8)if(+n[a>>2]==b){e=0;return e|0}d[c>>1]=e|8;n[a>>2]=b;e=1;return e|0}function _ma(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(e&16)if((f[a+36>>2]|0)==(f[b>>2]|0)){a=0;return a|0}d[c>>1]=e|16;c=f[b>>2]|0;e=f[b+4>>2]|0;if(e|0)Npb(e);f[a+36>>2]=c;a=a+40|0;c=f[a>>2]|0;f[a>>2]=e;if(!c){a=1;return a|0}Ppb(c);a=1;return a|0}function $ma(a){a=a|0;var b=0,c=0;f[a>>2]=28440;b=f[a+44>>2]|0;if(b|0){c=a+48|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b)}f[a>>2]=28284;a=f[a+40>>2]|0;if(!a)return;Ppb(a);return}function ana(a){a=a|0;var b=0,c=0;f[a>>2]=28440;b=f[a+44>>2]|0;if(b|0){c=a+48|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b)}f[a>>2]=28284;b=f[a+40>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function bna(a,b){a=a|0;b=b|0;var c=0;c=Wpb(64)|0;zna(c,b);f[a>>2]=c;return}function cna(a){a=a|0;var b=0,c=0,e=0;b=a+4|0;c=d[b>>1]|0;if(!(c&32)){a=0;return a|0}d[b>>1]=c&-33;e=a+44|0;b=f[e>>2]|0;c=a+48|0;if(!b)b=a+52|0;else{if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b);b=a+52|0;f[b>>2]=0;f[c>>2]=0;f[e>>2]=0}f[e>>2]=0;f[c>>2]=0;f[b>>2]=0;a=1;return a|0}function dna(a){a=a|0;return (d[a+4>>1]&32?a+44|0:0)|0}function ena(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&64)){c=0;return c|0}d[b>>1]=c&-65;n[a+56>>2]=0.0;c=1;return c|0}function fna(a){a=a|0;return (d[a+4>>1]&64?a+56|0:0)|0}function gna(a){a=a|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(!(e&128)){e=0;return e|0}d[c>>1]=e&-129;b[a+60>>0]=0;e=1;return e|0}function hna(a){a=a|0;return (d[a+4>>1]&128?a+60|0:0)|0}function ina(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0;e=Wpb(100)|0;d[e+4>>1]=d[c+4>>1]|0;i=e+8|0;g=c+8|0;f[i>>2]=f[g>>2];f[i+4>>2]=f[g+4>>2];f[i+8>>2]=f[g+8>>2];f[i+12>>2]=f[g+12>>2];i=c+24|0;g=f[i+4>>2]|0;h=e+24|0;f[h>>2]=f[i>>2];f[h+4>>2]=g;f[e+32>>2]=f[c+32>>2];h=c+36|0;f[e+36>>2]=f[h>>2];g=c+40|0;f[e+40>>2]=f[g>>2];f[h>>2]=0;f[g>>2]=0;g=c+44|0;f[e+44>>2]=f[g>>2];h=c+48|0;f[e+48>>2]=f[h>>2];i=c+52|0;f[e+52>>2]=f[i>>2];f[i>>2]=0;f[h>>2]=0;f[g>>2]=0;g=e+56|0;c=c+56|0;f[g>>2]=f[c>>2];b[g+4>>0]=b[c+4>>0]|0;f[e>>2]=28596;f[e+64>>2]=0;f[e+68>>2]=0;f[a>>2]=e;return}function jna(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=a+4|0;l=d[k>>1]|0;m=a+44|0;a:do if(!(l&32)){h=a+48|0;g=f[m>>2]|0}else{h=a+48|0;n=f[h>>2]|0;j=f[m>>2]|0;e=f[c>>2]|0;g=j;i=n;if((n-j|0)==((f[c+4>>2]|0)-e|0)){if((g|0)==(i|0)){n=0;return n|0}j=g;while(1){if((b[j>>0]|0)!=(b[e>>0]|0))break a;j=j+1|0;if((j|0)==(i|0)){e=0;break}else e=e+1|0}return e|0}}while(0);d[k>>1]=l|32;e=a+44|0;if(!g)e=a+52|0;else{if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Zpb(g);n=a+52|0;f[n>>2]=0;f[h>>2]=0;f[e>>2]=0;e=n}f[m>>2]=f[c>>2];n=c+4|0;f[h>>2]=f[n>>2];m=c+8|0;f[e>>2]=f[m>>2];f[m>>2]=0;f[n>>2]=0;f[c>>2]=0;n=1;return n|0}function kna(a,b){a=a|0;b=+b;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;a=a+56|0;if(e&64)if(+n[a>>2]==b){e=0;return e|0}d[c>>1]=e|64;n[a>>2]=b;e=1;return e|0}function lna(a,c){a=a|0;c=c|0;var e=0,f=0;e=a+4|0;f=d[e>>1]|0;a=a+60|0;if(f&128)if((b[a>>0]|0)==c<<24>>24){f=0;return f|0}d[e>>1]=f|128;b[a>>0]=c;f=1;return f|0}function mna(a){a=a|0;var b=0,c=0;f[a>>2]=28596;b=f[a+68>>2]|0;if(b|0)Ppb(b);f[a>>2]=28440;b=f[a+44>>2]|0;if(b|0){c=a+48|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b)}f[a>>2]=28284;b=f[a+40>>2]|0;if(!b)return;Ppb(b);return}function nna(a){a=a|0;var b=0,c=0;f[a>>2]=28596;b=f[a+68>>2]|0;if(b|0)Ppb(b);f[a>>2]=28440;b=f[a+44>>2]|0;if(b|0){c=a+48|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b)}f[a>>2]=28284;b=f[a+40>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function ona(a,c){a=a|0;c=c|0;var d=0,e=0;d=Wpb(100)|0;zna(d,c);f[d>>2]=28596;f[d+64>>2]=f[c+64>>2];e=f[c+68>>2]|0;f[d+68>>2]=e;if(e|0)Npb(e);f[d+72>>2]=f[c+72>>2];f[d+76>>2]=f[c+76>>2];f[d+80>>2]=f[c+80>>2];f[d+84>>2]=f[c+84>>2];f[d+88>>2]=f[c+88>>2];f[d+92>>2]=f[c+92>>2];b[d+96>>0]=b[c+96>>0]|0;f[a>>2]=d;return}function pna(a){a=a|0;var b=0,c=0;b=a+4|0;c=d[b>>1]|0;if(!(c&256)){c=0;return c|0}d[b>>1]=c&-257;f[a+64>>2]=0;c=a+68|0;a=f[c>>2]|0;f[c>>2]=0;if(!a){c=1;return c|0}Ppb(a);c=1;return c|0}function qna(a){a=a|0;return (d[a+4>>1]&256?a+64|0:0)|0}function rna(a){a=a|0;var b=0;a=a+4|0;b=d[a>>1]|0;if(!(b&512)){b=0;return b|0}d[a>>1]=b&-513;b=1;return b|0}function sna(a){a=a|0;return (d[a+4>>1]&512?a+72|0:0)|0}function tna(a){a=a|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(!(e&1024)){e=0;return e|0}d[c>>1]=e&-1025;b[a+96>>0]=0;e=1;return e|0}function una(a){a=a|0;return (d[a+4>>1]&1024?a+96|0:0)|0}function vna(a,b){a=a|0;b=b|0;nh[f[(f[b>>2]|0)+8>>2]&1023](a,b);return}function wna(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(e&256)if((f[a+64>>2]|0)==(f[b>>2]|0)){a=0;return a|0}d[c>>1]=e|256;c=f[b>>2]|0;e=f[b+4>>2]|0;if(e|0)Npb(e);f[a+64>>2]=c;a=a+68|0;c=f[a>>2]|0;f[a>>2]=e;if(!c){a=1;return a|0}Ppb(c);a=1;return a|0}function xna(a,b){a=a|0;b=b|0;var c=0,e=0;c=a+4|0;e=d[c>>1]|0;if(e&512)if(+n[a+72>>2]==+n[b>>2])if(+n[a+76>>2]==+n[b+4>>2])if(+n[a+80>>2]==+n[b+8>>2])if(+n[a+84>>2]==+n[b+12>>2])if(+n[a+88>>2]==+n[b+16>>2])if(+n[a+92>>2]==+n[b+20>>2]){e=0;return e|0}d[c>>1]=e|512;f[a+72>>2]=f[b>>2];f[a+76>>2]=f[b+4>>2];f[a+80>>2]=f[b+8>>2];f[a+84>>2]=f[b+12>>2];f[a+88>>2]=f[b+16>>2];f[a+92>>2]=f[b+20>>2];e=1;return e|0}function yna(a,c){a=a|0;c=c|0;var e=0,f=0;e=a+4|0;f=d[e>>1]|0;a=a+96|0;if(f&1024)if((b[a>>0]|0)==c<<24>>24){f=0;return f|0}d[e>>1]=f|1024;b[a>>0]=c;f=1;return f|0}function zna(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0;f[a>>2]=28752;d[a+4>>1]=d[c+4>>1]|0;f[a>>2]=27972;j=a+8|0;k=c+8|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];f[a>>2]=28128;j=c+24|0;k=f[j+4>>2]|0;e=a+24|0;f[e>>2]=f[j>>2];f[e+4>>2]=k;f[a>>2]=28284;f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];e=f[c+40>>2]|0;f[a+40>>2]=e;if(e|0)Npb(e);f[a>>2]=28440;e=a+44|0;g=c+44|0;f[e>>2]=0;j=a+48|0;f[j>>2]=0;f[a+52>>2]=0;i=c+48|0;h=(f[i>>2]|0)-(f[g>>2]|0)|0;if(!h){a=a+56|0;c=c+56|0;f[a>>2]=f[c>>2];b[a+4>>0]=b[c+4>>0]|0;return}if((h|0)<0)fob(e);k=Wpb(h)|0;f[j>>2]=k;f[e>>2]=k;f[a+52>>2]=k+h;g=f[g>>2]|0;e=(f[i>>2]|0)-g|0;if((e|0)<=0){a=a+56|0;c=c+56|0;f[a>>2]=f[c>>2];b[a+4>>0]=b[c+4>>0]|0;return}Irb(k|0,g|0,e|0)|0;f[j>>2]=k+e;a=a+56|0;c=c+56|0;f[a>>2]=f[c>>2];b[a+4>>0]=b[c+4>>0]|0;return}function Ana(a){a=a|0;wf()}function Bna(a){a=a|0;return 0}function Cna(a){a=a|0;return 0}function Dna(a,b){a=a|0;b=b|0;return 2}function Ena(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=Wpb(200)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=28908;d=c+12|0;e=c+108|0;g=d;h=g+96|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[e>>2]=1.0;n[c+112>>2]=0.0;n[c+116>>2]=0.0;n[c+120>>2]=1.0;h=c+124|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[c+140>>2]=1.0;n[c+144>>2]=1.0;n[c+148>>2]=1.0;n[c+152>>2]=1.0;n[c+156>>2]=0.0;n[c+160>>2]=0.0;n[c+164>>2]=0.0;n[c+168>>2]=1.0;n[c+172>>2]=-1.0;n[c+176>>2]=-1.0;n[c+180>>2]=-1.0;n[c+184>>2]=1.0;f[c+188>>2]=0;f[c+192>>2]=-1;b[c+196>>0]=0;b[c+197>>0]=0;b[c+198>>0]=0;b[c+199>>0]=2;f[a>>2]=d;f[a+4>>2]=c;return}function Fna(a){a=a|0;f[a>>2]=28908;Jna(a+12|0);Hpb(a);return}function Gna(a){a=a|0;f[a>>2]=28908;Jna(a+12|0);Hpb(a);Zpb(a);return}function Hna(a){a=a|0;Jna(a+12|0);return}function Ina(a){a=a|0;Zpb(a);return}function Jna(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;if(b|0){c=a+4|0;if(f[c>>2]|0)SNa(b,c)}b=f[a+124>>2]|0;if(b|0)Ppb(b);b=f[a+92>>2]|0;if(b|0)Ppb(b);b=f[a+84>>2]|0;if(b|0)Ppb(b);b=f[a+72>>2]|0;if(b|0)Ppb(b);b=f[a+64>>2]|0;if(b|0)Ppb(b);b=f[a+56>>2]|0;if(b|0)Ppb(b);b=f[a+48>>2]|0;if(b|0)Ppb(b);b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+32>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function Kna(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0;j=Wpb(200)|0;f[j+4>>2]=0;f[j+8>>2]=0;f[j>>2]=28908;k=j+12|0;d=j+108|0;g=k;h=g+96|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[d>>2]=1.0;n[j+112>>2]=0.0;n[j+116>>2]=0.0;n[j+120>>2]=1.0;d=j+124|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[j+140>>2]=1.0;n[j+144>>2]=1.0;n[j+148>>2]=1.0;n[j+152>>2]=1.0;n[j+156>>2]=0.0;n[j+160>>2]=0.0;n[j+164>>2]=0.0;n[j+168>>2]=1.0;n[j+172>>2]=-1.0;n[j+176>>2]=-1.0;n[j+180>>2]=-1.0;n[j+184>>2]=1.0;f[j+188>>2]=0;f[j+192>>2]=-1;b[j+196>>0]=0;b[j+197>>0]=0;b[j+198>>0]=0;b[j+199>>0]=2;f[a>>2]=k;f[a+4>>2]=j;d=j+16|0;g=f[c>>2]|0;a=f[c+4>>2]|0;h=a;if(!a){f[d>>2]=g;f[j+20>>2]=h}else{Npb(a);l=j+20|0;a=f[l>>2]|0;f[d>>2]=g;f[l>>2]=h;if(a|0)Ppb(a)}a=f[c>>2]|0;if(!a)return;a=Ng[f[(f[a>>2]|0)+16>>2]&511](a)|0;do if(a|0){d=j+140|0;if(+n[d>>2]==+n[a>>2])if(+n[j+144>>2]==+n[a+4>>2])if(+n[j+148>>2]==+n[a+8>>2])if(+n[j+152>>2]==+n[a+12>>2])break;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[d+12>>2]=f[a+12>>2];l=j+199|0;b[l>>0]=b[l>>0]|2;if(f[j+100>>2]|0){f[j+24>>2]=0;l=j+28|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a);f[j+40>>2]=0;l=j+44|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a)}}while(0);a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;if(a|0)f[j+176>>2]=f[a>>2];a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0;if(a|0){i=+n[a>>2];d=j+172|0;e=+n[d>>2];if(!(e==i)){if(i==0.0^e==0.0){f[j+24>>2]=0;l=j+28|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a);f[j+40>>2]=0;l=j+44|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a)}n[d>>2]=i}}a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;if(a|0){i=+n[a>>2];d=j+180|0;e=+n[d>>2];if(!(e==i)){a=f[j+132>>2]|0;if(a|0)if(f[a+8>>2]|0)if(i>0.0^e>0.0){f[j+24>>2]=0;l=j+28|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a);f[j+40>>2]=0;l=j+44|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a)}n[d>>2]=i}}a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+48>>2]&511](a)|0;if(a|0)Lna(k,a);a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+64>>2]&511](a)|0;if(a|0)f[j+184>>2]=f[a>>2];a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+72>>2]&511](a)|0;if(a|0){a=b[a>>0]|0;d=j+198|0;if((b[d>>0]|0)!=a<<24>>24){b[d>>0]=a;f[j+56>>2]=0;l=j+60|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a);f[j+64>>2]=0;l=j+68|0;a=f[l>>2]|0;f[l>>2]=0;if(a|0)Ppb(a)}}a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+80>>2]&511](a)|0;if(a|0)Mna(k,a);a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+88>>2]&511](a)|0;if(a|0)Nna(k,a);a=f[c>>2]|0;a=Ng[f[(f[a>>2]|0)+96>>2]&511](a)|0;if(!a)return;Ona(k,b[a>>0]|0);return}function Lna(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+120|0;d=f[g>>2]|0;c=f[b>>2]|0;if((d|0)==(c|0))return;if(!c)c=0;else c=(f[c+8>>2]|0)!=0;if(!d){if(c)e=7}else if(c^(f[d+8>>2]|0)!=0)e=7;if((e|0)==7){f[a+12>>2]=0;e=a+16|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;e=a+32|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c)}c=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)Npb(d);f[g>>2]=c;g=a+124|0;c=f[g>>2]|0;f[g>>2]=d;if(!c)return;Ppb(c);return}function Mna(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+88|0;e=f[h>>2]|0;d=f[c>>2]|0;if((e|0)==(d|0))return;if(!d)d=0;else d=(f[d+8>>2]|0)!=0;if(!e){if(d)g=7}else if(d^(f[e+8>>2]|0)!=0)g=7;if((g|0)==7){f[a+12>>2]=0;g=a+16|0;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ppb(d);f[a+28>>2]=0;g=a+32|0;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ppb(d)}d=f[c>>2]|0;g=f[c+4>>2]|0;if(g|0)Npb(g);f[h>>2]=d;h=a+92|0;e=f[h>>2]|0;f[h>>2]=g;if(e){Ppb(e);d=f[a+88>>2]|0}h=a+187|0;b[h>>0]=b[h>>0]|2;if(!d)return;f[a+12>>2]=0;h=a+16|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ppb(d);f[a+28>>2]=0;a=a+32|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;Ppb(d);return}function Nna(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0;h=a+96|0;d=+n[h>>2];e=+n[b>>2];if(d==e)if(+n[a+100>>2]==+n[b+4>>2])if(+n[a+104>>2]==+n[b+8>>2])if(+n[a+108>>2]==+n[b+12>>2])if(+n[a+112>>2]==+n[b+16>>2])if(+n[a+116>>2]==+n[b+20>>2])return;if(d!=1.0)c=1;else if(+n[a+100>>2]!=0.0)c=1;else if(+n[a+104>>2]!=0.0)c=1;else if(+n[a+108>>2]!=1.0)c=1;else if(+n[a+112>>2]!=0.0)c=1;else c=+n[a+116>>2]!=0.0;if(e!=1.0)g=18;else if(+n[b+4>>2]!=0.0)g=18;else if(+n[b+8>>2]!=0.0)g=18;else if(+n[b+12>>2]!=1.0)g=18;else if(+n[b+16>>2]!=0.0)g=18;else if(c^+n[b+20>>2]!=0.0)g=20;if((g|0)==18)if(!c)g=20;if((g|0)==20){f[a+12>>2]=0;g=a+16|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;g=a+32|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c)}f[h>>2]=f[b>>2];f[a+100>>2]=f[b+4>>2];f[a+104>>2]=f[b+8>>2];f[a+108>>2]=f[b+12>>2];f[a+112>>2]=f[b+16>>2];f[a+116>>2]=f[b+20>>2];return}function Ona(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+185|0;if((b[e>>0]|0)==c<<24>>24)return;g=a+88|0;d=f[g>>2]|0;if(!d){b[e>>0]=c;a=a+187|0;b[a>>0]=b[a>>0]|2;return}if(f[d+8>>2]|0){f[a+12>>2]=0;h=a+16|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ppb(d);f[a+28>>2]=0;h=a+32|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ppb(d)}h=f[g>>2]|0;b[e>>0]=c;g=a+187|0;b[g>>0]=b[g>>0]|2;if(!h)return;f[a+12>>2]=0;h=a+16|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ppb(d);f[a+28>>2]=0;h=a+32|0;d=f[h>>2]|0;f[h>>2]=0;if(!d)return;Ppb(d);return}function Pna(a,c){a=a|0;c=c|0;var d=0;d=a+128|0;if(+n[d>>2]==+n[c>>2])if(+n[a+132>>2]==+n[c+4>>2])if(+n[a+136>>2]==+n[c+8>>2])if(+n[a+140>>2]==+n[c+12>>2])return;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];d=a+187|0;b[d>>0]=b[d>>0]|2;if(!(f[a+88>>2]|0))return;f[a+12>>2]=0;d=a+16|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;a=a+32|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ppb(c);return}function Qna(a,b){a=a|0;b=+b;n[a+164>>2]=b;return}function Rna(a,b){a=a|0;b=+b;var c=0,d=0.0,e=0,g=0;e=a+160|0;d=+n[e>>2];if(d==b)return;if(b==0.0^d==0.0){f[a+12>>2]=0;g=a+16|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;g=a+32|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c)}n[e>>2]=b;return}function Sna(a,b){a=a|0;b=+b;var c=0,d=0.0,e=0,g=0;e=a+168|0;d=+n[e>>2];if(d==b)return;c=f[a+120>>2]|0;if(c|0)if(f[c+8>>2]|0)if(b>0.0^d>0.0){f[a+12>>2]=0;g=a+16|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;g=a+32|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ppb(c)}n[e>>2]=b;return}function Tna(a,b,c){a=a|0;b=b|0;c=c|0;Kna(a,c);f[f[a>>2]>>2]=b;return}function Una(a){a=a|0;var b=0,c=0;f[a+44>>2]=0;c=a+48|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+52>>2]=0;c=a+56|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+60>>2]=0;c=a+64|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+68>>2]=0;c=a+72|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+12>>2]=0;c=a+16|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+20>>2]=0;c=a+24|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+28>>2]=0;c=a+32|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+36>>2]=0;c=a+40|0;b=f[c>>2]|0;f[c>>2]=0;if(!b)return;Ppb(b);return}function Vna(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;if(!(b[a+187>>0]&1)){g=f[a+88>>2]|0;if(g|0)if(f[g+8>>2]|0)if((f[g+24>>2]|0)==10497)if(!(J8a(g)|0)){f[a+12>>2]=0;h=a+16|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)Ppb(g);f[a+20>>2]=0;h=a+24|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)Ppb(g);f[a+28>>2]=0;h=a+32|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)Ppb(g);f[a+36>>2]=0;h=a+40|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)Ppb(g)}}g=a+76|0;if((f[g>>2]|0)==(c|0)){e=e&255;h=d&255;h=a+12+(e<<4)+(h<<3)|0;return h|0}f[g>>2]=c;Una(a);e=e&255;h=d&255;h=a+12+(e<<4)+(h<<3)|0;return h|0}function Wna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+76|0;if((f[d>>2]|0)!=(b|0)){f[d>>2]=b;Una(a)}return a+44+((c&255)<<3)|0}function Xna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+76|0;if((f[d>>2]|0)!=(b|0)){f[d>>2]=b;Una(a)}return a+60+((c&255)<<3)|0}function Yna(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0;e=+n[a+160>>2];if(e>=0.0)return +e;a=f[c>>2]|0;if(a|0)if(b[a+724>>0]&4){e=+n[a+716>>2];return +e}a=f[d>>2]|0;if(!a){e=0.0;return +e}if(!(b[a+724>>0]&4)){e=0.0;return +e}e=+n[a+716>>2];return +e}function Zna(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0;e=+n[a+164>>2];if(e>=0.0)return +e;a=f[c>>2]|0;if(a|0)if(b[a+724>>0]&8){e=+n[a+720>>2];return +e}a=f[d>>2]|0;if(!a){e=1.0;return +e}if(!(b[a+724>>0]&8)){e=1.0;return +e}e=+n[a+720>>2];return +e}function _na(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0;e=+n[a+168>>2];if(e>=0.0)return +e;a=f[c>>2]|0;if(a|0)if(b[a+724>>0]&2){e=+n[a+712>>2];return +e}a=f[d>>2]|0;if(!a){e=0.0;return +e}if(!(b[a+724>>0]&2)){e=0.0;return +e}e=+n[a+712>>2];return +e}function $na(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+120|0;if(f[d>>2]|0)return d|0;a=f[b>>2]|0;if(a|0){a=a+696|0;if(f[a>>2]|0){d=a;return d|0}}a=f[c>>2]|0;if(a|0){a=a+696|0;if(f[a>>2]|0){d=a;return d|0}}return d|0}function aoa(a,c,d,e,g,h,i,j,k,l,m){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var o=0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;t=v;o=c+76|0;if((f[o>>2]|0)!=(d|0)){f[o>>2]=d;Una(c)}if((e&255)<3)b[m>>0]=256>>>((e&255)<<3&16777215);b[m+1>>0]=b[c+184>>0]|0;r=m+4|0;s=g&255;o=s<<2&4;g=o|1024;o=o|3072;d=l?o:g;w=d|8;d=k?w:d;f[r>>2]=k?w:l?o:g;p=+n[c+160>>2];do if(!(p>=0.0)){o=f[h>>2]|0;if(!o)q=8;else if(!(b[o+724>>0]&4))q=8;if((q|0)==8){o=f[i>>2]|0;if(!o)break;if(!(b[o+724>>0]&4))break}p=+n[o+716>>2];q=11}else q=11;while(0);if((q|0)==11)if(p>0.0){d=d|2;f[r>>2]=d}k=c+88|0;g=f[k>>2]|0;if(g|0)if(f[g+8>>2]|0){o=d|16;f[r>>2]=o;l=c+185|0;if((b[l>>0]|0)==1){o=d|48;f[r>>2]=o}if(+n[c+96>>2]!=1.0)q=23;else if(+n[c+100>>2]!=0.0)q=23;else if(+n[c+104>>2]!=0.0)q=23;else if(+n[c+108>>2]!=1.0)q=23;else if(+n[c+112>>2]!=0.0)q=23;else if(+n[c+116>>2]!=0.0)q=23;if((q|0)==23)f[r>>2]=o|128;if((f[g+24>>2]|0)==10497)if(J8a(g)|0)q=27;else{f[r>>2]=f[r>>2]|64;w=c+187|0;o=b[w>>0]|1;b[w>>0]=o}else q=27;if((q|0)==27){w=c+187|0;o=b[w>>0]&-2;b[w>>0]=o}if(j<<24>>24==1){g=c+187|0;if(o&2){d=f[k>>2]|0;a:do if(!d){d=+n[c+140>>2]<1.0;q=37}else switch(b[l>>0]|0){case 0:{if(+n[c+140>>2]<1.0){d=1;q=37;break a}d=(f[d+12>>2]|2|0)==6410;q=37;break a}case 1:{if(!(+n[c+140>>2]<1.0)){d=0;q=37;break a}d=(f[d+12>>2]|2|0)==6410;q=37;break a}default:break a}while(0);if((q|0)==37){o=(d&1)<<2&255|o&-5;b[g>>0]=o}o=o&-3;b[g>>0]=o}if(o&4)f[r>>2]=f[r>>2]|512}}p=+n[c+168>>2];do if(!(p>=0.0)){o=f[h>>2]|0;if(!o)q=44;else if(!(b[o+724>>0]&2))q=44;if((q|0)==44){o=f[i>>2]|0;if(!o)break;if(!(b[o+724>>0]&2))break}p=+n[o+712>>2];q=47}else q=47;while(0);b:do if((q|0)==47)if(p>0.0){o=f[c+120>>2]|0;do if(!o){o=f[h>>2]|0;if(o|0){o=f[o+696>>2]|0;if(o|0)break}o=f[i>>2]|0;if(!o)break b;o=f[o+696>>2]|0;if(!o)break b}while(0);if(f[o+8>>2]|0)f[r>>2]=f[r>>2]|256}while(0);cVa(t,XUa()|0,m,1);w=f[t>>2]|0;d=w;if(!w){f[a>>2]=0;d=t+4|0;o=a+4|0}else{o=e&255;k=t+4|0;g=f[k>>2]|0;if(g|0)Npb(g);f[c+12+(s<<4)+(o<<3)>>2]=d;w=c+12+(s<<4)+(o<<3)+4|0;o=f[w>>2]|0;f[w>>2]=g;if(o|0)Ppb(o);f[a>>2]=f[t>>2];f[a+4>>2]=f[k>>2];f[t>>2]=0;d=k;o=k}f[o>>2]=0;o=f[d>>2]|0;if(!o){u=v;return}Ppb(o);u=v;return}function boa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;k=l;i=c+76|0;if((f[i>>2]|0)!=(d|0)){f[i>>2]=d;Una(c)}b[h>>0]=0;b[h+1>>0]=0;i=h+4|0;j=e&255;e=j<<2&4;m=e|2048;d=g?m:e;f[i>>2]=g?m:e;if(f[c+80>>2]|0){f[i>>2]=d|65536;if((b[c+186>>0]&-2)<<24>>24==2)f[i>>2]=d|196608}m=h+16|0;d=f[m>>2]|0;f[m>>2]=0;cVa(k,XUa()|0,h,1);f[m>>2]=d>>>0<4?d:4;m=f[k>>2]|0;d=m;if(!m){f[a>>2]=0;i=k+4|0;d=a+4|0}else{e=k+4|0;i=f[e>>2]|0;if(i|0)Npb(i);f[c+44+(j<<3)>>2]=d;m=c+44+(j<<3)+4|0;d=f[m>>2]|0;f[m>>2]=i;if(d|0)Ppb(d);f[a>>2]=f[k>>2];f[a+4>>2]=f[e>>2];f[k>>2]=0;i=e;d=e}f[d>>2]=0;d=f[i>>2]|0;if(!d){u=l;return}Ppb(d);u=l;return}function coa(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;m=o;k=c+76|0;if((f[k>>2]|0)!=(d|0)){f[k>>2]=d;Una(c)}b[j>>0]=0;b[j+1>>0]=0;k=j+4|0;l=e&255;p=l<<2&4;e=p|4096;p=p|6144;d=i?p:e;f[k>>2]=i?p:e;switch(g<<24>>24){case 2:case 5:{d=d|8192;f[k>>2]=d;break}default:{}}switch(h<<24>>24){case 1:{f[k>>2]=d|16384;n=8;break}case 2:{f[k>>2]=d|32768;cVa(m,XUa()|0,j,1);e=f[m>>2]|0;k=f[m+4>>2]|0;break}default:n=8}if((n|0)==8){p=j+16|0;n=f[p>>2]|0;f[p>>2]=0;cVa(m,XUa()|0,j,1);e=f[m>>2]|0;k=f[m+4>>2]|0;f[p>>2]=n>>>0<4?n:4}if(!e){f[a>>2]=0;f[a+4>>2]=0;if(!k){u=o;return}Ppb(k);u=o;return}if(k|0)Npb(k);f[c+60+(l<<3)>>2]=e;p=c+60+(l<<3)+4|0;d=f[p>>2]|0;f[p>>2]=k;if(d|0)Ppb(d);f[a>>2]=e;f[a+4>>2]=k;u=o;return}function doa(a,b){a=a|0;b=b|0;a=a+144|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function eoa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+80|0;d=f[g>>2]|0;c=f[b>>2]|0;if((d|0)==(c|0))return;if(!c)c=0;else c=(f[c+8>>2]|0)!=0;if(!d){if(c)e=7}else if(c^(f[d+8>>2]|0)!=0)e=7;if((e|0)==7){f[a+44>>2]=0;e=a+48|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+52>>2]=0;e=a+56|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c)}c=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)Npb(d);f[g>>2]=c;g=a+84|0;c=f[g>>2]|0;f[g>>2]=d;if(!c)return;Ppb(c);return}function foa(a){a=a|0;var c=0;c=f[a+88>>2]|0;a:do if(!c)c=+n[a+140>>2]<1.0;else switch(b[a+185>>0]|0){case 0:{if(+n[a+140>>2]<1.0){c=1;break a}c=(f[c+12>>2]|2|0)==6410;break a}case 1:{if(!(+n[a+140>>2]<1.0)){c=0;break a}c=(f[c+12>>2]|2|0)==6410;break a}default:{c=a+187|0;a=c;c=b[c>>0]|0;c=c&-3;b[a>>0]=c;return}}while(0);a=a+187|0;c=b[a>>0]&-5|(c&1)<<2&255;b[a>>0]=c;c=c&-3;b[a>>0]=c;return}function goa(a,b){a=a|0;b=b|0;switch(b|0){case 0:{Ona(a,0);return}case 1:{Ona(a,1);return}default:return}}function hoa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+32|0;d=c;D8a(a);v8a(d);x8a(d,9728,0);w8a(d,10497,0);e=f[b>>2]|0;L8a(f[a>>2]|0,6409,(f[b+4>>2]|0)-e|0,1,6409,5121,e,d);u=c;return}function ioa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;i=u;u=u+64|0;g=i;f[g>>2]=f[a>>2];x=a+4|0;f[g+4>>2]=f[x>>2];w=a+8|0;f[g+8>>2]=f[w>>2];v=a+12|0;f[g+12>>2]=f[v>>2];t=a+16|0;f[g+16>>2]=f[t>>2];s=a+20|0;f[g+20>>2]=f[s>>2];r=a+24|0;f[g+24>>2]=f[r>>2];q=a+28|0;f[g+28>>2]=f[q>>2];p=a+32|0;f[g+32>>2]=f[p>>2];o=a+36|0;f[g+36>>2]=f[o>>2];n=a+40|0;f[g+40>>2]=f[n>>2];m=a+44|0;f[g+44>>2]=f[m>>2];l=a+48|0;f[g+48>>2]=f[l>>2];k=a+52|0;f[g+52>>2]=f[k>>2];d=a+56|0;f[g+56>>2]=f[d>>2];e=a+60|0;f[g+60>>2]=f[e>>2];f[a>>2]=f[c>>2];f[x>>2]=f[c+4>>2];f[w>>2]=f[c+8>>2];f[v>>2]=f[c+12>>2];f[t>>2]=f[c+16>>2];f[s>>2]=f[c+20>>2];f[r>>2]=f[c+24>>2];f[q>>2]=f[c+28>>2];f[p>>2]=f[c+32>>2];f[o>>2]=f[c+36>>2];f[n>>2]=f[c+40>>2];f[m>>2]=f[c+44>>2];f[l>>2]=f[c+48>>2];f[k>>2]=f[c+52>>2];f[d>>2]=f[c+56>>2];f[e>>2]=f[c+60>>2];c=a+120|0;b[c>>0]=b[c>>0]|28;c=f[a+64>>2]|0;e=f[a+68>>2]|0;if((c|0)==(e|0)){u=i;return}do{d=f[c>>2]|0;x=d+200|0;if((f[d+72+((((j[x>>1]|0|(h[x+2>>0]|0)<<16)&16777215)>>>17&3)<<3)>>2]|0)==(a|0))Woa(d,g,a);c=c+4|0}while((c|0)!=(e|0));u=i;return}function joa(a){a=a|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0;g=+n[a>>2];e=+n[a+4>>2];i=+n[a+8>>2];d=+n[a+16>>2];f=+n[a+20>>2];h=+n[a+24>>2];k=+n[a+32>>2];j=+n[a+36>>2];l=+n[a+40>>2];p=f*l-h*j;o=h*k-d*l;m=d*j-f*k;c=1.0/(g*p+(i*m+e*o));n[a+76>>2]=p*c;n[a+80>>2]=o*c;n[a+84>>2]=m*c;n[a+88>>2]=(i*j-e*l)*c;n[a+92>>2]=(g*l-i*k)*c;n[a+96>>2]=(e*k-g*j)*c;n[a+100>>2]=(e*h-i*f)*c;n[a+104>>2]=(i*d-g*h)*c;n[a+108>>2]=(g*f-e*d)*c;a=a+120|0;b[a>>0]=b[a>>0]&-5;return}function koa(a){a=a|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0;i=+n[a+20>>2];g=+n[a+40>>2];e=+n[a+36>>2];h=+n[a+24>>2];f=+n[a+4>>2];d=+n[a+8>>2];c=a+120|0;b[c>>0]=b[c>>0]&-10|+n[a+32>>2]*(h*f-i*d)+(+n[a>>2]*(i*g-e*h)-+n[a+16>>2]*(g*f-e*d))<0.0;return}function loa(a){a=a|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;g=+n[a>>2];f=+n[a+4>>2];h=+n[a+8>>2];h=g*g+(f*f+h*h);f=+n[a+16>>2];g=+n[a+20>>2];d=+n[a+24>>2];d=f*f+(g*g+d*d);g=+n[a+32>>2];f=+n[a+36>>2];e=+n[a+40>>2];e=g*g+(f*f+e*e);f=(h+0.0+d+e)*.3333333432674408;g=f*9.999999747378752e-05;if(+K(+(h-f))>g)c=2;else if(+K(+(d-f))>g)c=2;else if(+K(+(e-f))>g)c=2;else c=0;a=a+120|0;b[a>>0]=b[a>>0]&-19|c;return}function moa(a){a=a|0;var b=0;b=Wpb(136)|0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=28936;f[b+76>>2]=0;f[b+80>>2]=0;f[b+84>>2]=0;f[b+124>>2]=0;f[b+128>>2]=-1;f[a>>2]=b+12;f[a+4>>2]=b;return}function noa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=28936;b=f[a+76>>2]|0;if(!b){Hpb(a);return}c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);return}function ooa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=28936;b=f[a+76>>2]|0;if(!b){Hpb(a);Zpb(a);return}c=a+80|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);Zpb(a);return}function poa(a){a=a|0;var b=0,c=0;c=f[a+76>>2]|0;if(!c)return;a=a+80|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function qoa(a){a=a|0;Zpb(a);return}function roa(a,c){a=a|0;c=c|0;var d=0,e=0;d=Wpb(136)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=28936;e=d+12|0;f[e>>2]=f[c>>2];f[d+16>>2]=f[c+4>>2];f[d+20>>2]=f[c+8>>2];f[d+24>>2]=f[c+12>>2];f[d+28>>2]=f[c+16>>2];f[d+32>>2]=f[c+20>>2];f[d+36>>2]=f[c+24>>2];f[d+40>>2]=f[c+28>>2];f[d+44>>2]=f[c+32>>2];f[d+48>>2]=f[c+36>>2];f[d+52>>2]=f[c+40>>2];f[d+56>>2]=f[c+44>>2];f[d+60>>2]=f[c+48>>2];f[d+64>>2]=f[c+52>>2];f[d+68>>2]=f[c+56>>2];f[d+72>>2]=f[c+60>>2];f[d+76>>2]=0;f[d+80>>2]=0;f[d+84>>2]=0;f[d+124>>2]=0;f[d+128>>2]=-1;c=d+132|0;b[c>>0]=b[c>>0]|28;f[a>>2]=e;f[a+4>>2]=d;return}function soa(a){a=a|0;var c=0,d=0,e=0;if(!(b[209696]|0))if(rrb(209696)|0){c=Wpb(136)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=28936;d=c+12|0;f[d>>2]=1065353216;e=c+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[c+32>>2]=1065353216;e=c+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[c+52>>2]=1065353216;e=c+56|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[c+72>>2]=1065353216;f[c+76>>2]=0;f[c+80>>2]=0;f[c+84>>2]=0;f[c+124>>2]=0;f[c+128>>2]=-1;b[c+132>>0]=-1;f[52754]=d;f[52755]=c}f[a>>2]=f[52754];c=f[52755]|0;f[a+4>>2]=c;if(!c)return;Npb(c);return}function toa(a){a=a|0;var b=0,c=0;b=f[a+64>>2]|0;c=f[a+68>>2]|0;if((b|0)==(c|0)){c=0;return c|0}else a=b;while(1){b=f[a>>2]|0;if(f[b+196>>2]&524288|0){b=b+200|0;if(!((j[b>>1]|0|(h[b+2>>0]|0)<<16)&7864320)){a=1;b=5;break}}a=a+4|0;if((a|0)==(c|0)){a=0;b=5;break}}if((b|0)==5)return a|0;return 0}function uoa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i;f[c>>2]=b;d=a+64|0;e=a+68|0;g=f[e>>2]|0;h=g-(f[d>>2]|0)>>2;if((f[a+72>>2]|0)>>>0>g>>>0){f[g>>2]=b;f[e>>2]=(f[e>>2]|0)+4;u=i;return h|0}else{voa(d,c);u=i;return h|0}return 0}function voa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function woa(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=a;xoa(a+64|0,b,d);u=c;return}function xoa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=a+4|0;d=f[h>>2]|0;g=f[a>>2]|0;e=d-g>>2;if(e>>>0<=b>>>0)return;if((b+1|0)>>>0<e>>>0){Poa(f[d+-4>>2]|0,b,e+-1|0,f[c>>2]|0);g=(f[h>>2]|0)+-4|0;e=(f[a>>2]|0)+(b<<2)|0;d=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=d;e=f[a>>2]|0;d=f[h>>2]|0;b=e}else{b=g;e=g}d=d+-4|0;f[h>>2]=d;if((b|0)!=(d|0))return;c=a+8|0;b=d-e|0;d=b>>2;if((f[c>>2]|0)-e>>2>>>0<=d>>>0)return;do if(!d){i=0;j=0}else if(d>>>0>1073741823)ud();else{j=Wpb(b)|0;i=j;break}while(0);d=i+(d<<2)|0;if((b|0)>0)Irb(j|0,e|0,b|0)|0;f[a>>2]=i;f[h>>2]=d;f[c>>2]=d;if(!e)return;Zpb(e);return}function yoa(a){a=a|0;var b=0,c=0,d=0;d=a+196|0;b=a+72|0;c=f[b>>2]|0;if(c|0){woa(c,f[a+132>>2]|0);f[b>>2]=0;c=a+76|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b)}b=a+80|0;c=f[b>>2]|0;if(c|0){woa(c,f[a+136>>2]|0);f[b>>2]=0;c=a+84|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b)}c=a+88|0;b=f[c>>2]|0;if(b|0){woa(b,f[a+140>>2]|0);b=f[c>>2]|0;if((f[b+64>>2]|0)==(f[b+68>>2]|0))if((f[b+112>>2]|0)==-1){if(!(f[d>>2]&262144))b=(f[a>>2]|0)+8|0;else b=a;ixa(f[b>>2]|0,c)}f[c>>2]=0;d=a+92|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Ppb(b)}c=a+4|0;b=f[c>>2]|0;if(b|0){zoa((f[b+44>>2]|0)+108|0,f[a+128>>2]|0);f[c>>2]=0;d=a+8|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Ppb(b)}b=f[a+112>>2]|0;if(b|0)Ppb(b);d=a+104|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){Aoa(b);Zpb(b)}b=f[a+100>>2]|0;if(b|0)Ppb(b);b=f[a+92>>2]|0;if(b|0)Ppb(b);b=f[a+84>>2]|0;if(b|0)Ppb(b);b=f[a+76>>2]|0;if(b|0)Ppb(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);d=a+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);d=a+60|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[a+56>>2]|0;if(b|0)Ppb(b);b=f[a+48>>2]|0;if(b|0)Ppb(b);b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+32>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function zoa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=a+4|0;d=f[g>>2]|0;e=f[a>>2]|0;c=d-e>>2;if(c>>>0<=b>>>0)return;if((b+1|0)>>>0<c>>>0){Vra(f[d+-4>>2]|0,b,c+-1|0);c=(f[g>>2]|0)+-4|0;e=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=b;e=f[a>>2]|0;b=f[g>>2]|0;c=e}else{b=d;c=e}b=b+-4|0;f[g>>2]=b;if((c|0)!=(b|0))return;d=a+8|0;c=b-e|0;b=c>>2;if((f[d>>2]|0)-e>>2>>>0<=b>>>0)return;do if(!b){h=0;i=0}else if(b>>>0>1073741823)ud();else{i=Wpb(c)|0;h=i;break}while(0);b=h+(b<<2)|0;if((c|0)>0)Irb(i|0,e|0,c|0)|0;f[a>>2]=h;f[g>>2]=b;f[d>>2]=b;if(!e)return;Zpb(e);return}function Aoa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+224>>2]|0;if(b|0)Ppb(b);e=a+216|0;g=f[e>>2]|0;f[e>>2]=0;if(g|0){b=f[g+16>>2]|0;if(b|0)Ppb(b);b=f[g>>2]|0;if(b|0){e=g+4|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[e>>2]=d;c=f[c+-24>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}Zpb(g)}g=a+180|0;b=f[a+204>>2]|0;if(b|0){c=a+208|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-20-b|0)>>>0)/20|0)*20|0);Zpb(b)}b=f[a+192>>2]|0;if(b|0){c=a+196|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0;if(b|0){e=a+184|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-16|0;f[e>>2]=d;c=f[c+-12>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}g=a+144|0;d=f[a+168>>2]|0;if(d|0){b=a+172|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-20-d|0)>>>0)/20|0)*20|0);Zpb(d)}b=f[a+156>>2]|0;if(b|0){c=a+160|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0;if(b|0){e=a+148|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-16|0;f[e>>2]=d;c=f[c+-12>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}g=a+108|0;b=f[a+132>>2]|0;if(b|0){c=a+136|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-20-b|0)>>>0)/20|0)*20|0);Zpb(b)}b=f[a+120>>2]|0;if(b|0){c=a+124|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0;if(b|0){e=a+112|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-16|0;f[e>>2]=d;c=f[c+-12>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}d=f[a+96>>2]|0;if(d|0){b=a+100|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-20-d|0)>>>0)/20|0)*20|0);Zpb(d)}b=f[a+84>>2]|0;if(b|0){c=a+88|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+72>>2]|0;if(b|0){c=a+76|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+60>>2]|0;if(b|0){c=a+64|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-20-b|0)>>>0)/20|0)*20|0);Zpb(b)}b=f[a+48>>2]|0;if(b|0){c=a+52|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+36>>2]|0;if(b|0){c=a+40|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-20-b|0)>>>0)/20|0)*20|0);Zpb(b)}b=f[a+12>>2]|0;if(b|0){c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}d=f[a>>2]|0;if(!d)return;b=a+4|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);return}function Boa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0;i=Wpb(216)|0;f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=28964;j=i+12|0;e=i+132|0;g=i+16|0;h=g+116|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e>>2]=-1;f[i+136>>2]=0;f[i+140>>2]=-1;f[i+168>>2]=0;f[i+172>>2]=0;f[i+176>>2]=0;b[i+204>>0]=7;b[i+205>>0]=0;f[i+208>>2]=393472;h=i+212|0;d[h>>1]=-32768;b[h+2>>0]=1;b[i+215>>0]=1;f[j>>2]=c;n[i+192>>2]=1.0;n[i+196>>2]=1.0;n[i+200>>2]=1.0;h=i+144|0;f[h>>2]=-1;f[h+4>>2]=-1;f[h+8>>2]=-1;f[a>>2]=j;f[a+4>>2]=i;return}function Coa(a){a=a|0;f[a>>2]=28964;yoa(a+12|0);Hpb(a);return}function Doa(a){a=a|0;f[a>>2]=28964;yoa(a+12|0);Hpb(a);Zpb(a);return}function Eoa(a){a=a|0;yoa(a+12|0);return}function Foa(a){a=a|0;Zpb(a);return}function Goa(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,i=0,k=0,l=0,m=0,o=0,p=0;p=u;u=u+16|0;d=p;k=a+196|0;b=f[k>>2]|0;c=b&2;l=(c|0)!=0;m=(b&4|0)!=0;o=(b&1|0)!=0;i=a+200|0;i=((j[i>>1]|0|(h[i+2>>0]|0)<<16)&16777215)>>>19&15;if(o){e=+n[a+148>>2];g=+n[a+144>>2]}else{e=0.0;g=0.0}if(c){if(b&524288){if(!(b&262144))b=(f[a>>2]|0)+8|0;else b=a;b=Qwa(f[b>>2]|0)|0;f[d>>2]=a;rja(b,d)|0;b=f[k>>2]|0}b=b&-259|256;f[k>>2]=b}if(b&4){if(b&524288){if(!(b&262144))b=(f[a>>2]|0)+8|0;else b=a;b=Pwa(f[b>>2]|0)|0;f[d>>2]=a;rja(b,d)|0;b=f[k>>2]|0}b=b&-261|256;f[k>>2]=b}if(b&1|0){if(b&524288){if(!(b&262144))b=(f[a>>2]|0)+8|0;else b=a;b=Owa(f[b>>2]|0)|0;f[d>>2]=a;rja(b,d)|0;b=f[k>>2]|0}f[k>>2]=b&-258|256}Hoa(a,0)|0;f[k>>2]=f[k>>2]|524288;Ioa(a);Joa(a,l);Koa(a,m);if(!o){Hoa(a,i)|0;u=p;return}Loa(a,g,e);Hoa(a,i)|0;u=p;return}function Hoa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0;i=a+200|0;g=j[i>>1]|0|(h[i+2>>0]|0)<<16;if(c>>>0>15|((g&16777215)>>>19&15|0)==(c|0)){i=0;return i|0}e=f[a+196>>2]|0;do if(e&524288|0){if(!(f[a+116>>2]|0))if((f[a+120>>2]|0)==-1)break;if(!(e&262144))e=(f[a>>2]|0)+8|0;else e=a;g=uva(f[e>>2]|0)|0;e=((j[i>>1]|0|(h[i+2>>0]|0)<<16)&16777215)>>>19&15;if(e&16777215|0){e=wOa(g,e&16777215,0)|0;if(e|0)uSa(e,a)|0}e=(j[i>>1]|0|(h[i+2>>0]|0)<<16)&8912895|c<<19&7864320;d[i>>1]=e;b[i+2>>0]=e>>>16;Ioa(a);if(!c){i=1;return i|0}e=wOa(g,((j[i>>1]|0|(h[i+2>>0]|0)<<16)&16777215)>>>19&15,1)|0;if(e|0)if(tSa(e,a)|0){i=1;return i|0}c=(j[i>>1]|0|(h[i+2>>0]|0)<<16)&8912895;d[i>>1]=c;b[i+2>>0]=c>>>16;Ioa(a);i=0;return i|0}while(0);a=g&8912895|c<<19&7864320;d[i>>1]=a;b[i+2>>0]=a>>>16;i=1;return i|0}function Ioa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0;g=f[a+196>>2]|0;if(!(g&524288))return;if(!(f[a+116>>2]|0))if((f[a+120>>2]|0)==-1)return;i=a+203|0;k=b[i>>0]|0;e=k&3;c=a+200|0;c=j[c>>1]|0|(h[c+2>>0]|0)<<16;do if(!(c&7864320)){if(g&2072|0){c=k&-4;break}if((c&393216|0)!=0|(g&262144|0)!=0)d=10;else if(!(b[(f[(f[a+4>>2]|0)+44>>2]|0)+144>>0]&8))c=1;else d=10;if((d|0)==10)c=2;c=k&-4|c}else c=k|3;while(0);b[i>>0]=c;d=c&3;if(d<<24>>24!=2?e<<24>>24==d<<24>>24:0)return;if(!(g&262144))c=(f[a>>2]|0)+8|0;else c=a;c=f[c>>2]|0;switch(k&3){case 0:{Swa(c,f[a+124>>2]|0);break}case 2:{Wwa(c,a);break}default:{}}switch(b[i>>0]&3){case 0:{k=Rwa(c,a)|0;f[a+124>>2]=k;return}case 2:{Vwa(c,a);return}default:return}}function Joa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;d=s;r=a+196|0;c=f[r>>2]|0;if(!((c&2|0)!=0^b)){u=s;return}a:do if(c&524288|0){if(!(c&262144))c=(f[a>>2]|0)+8|0;else c=a;p=Qwa(f[c>>2]|0)|0;if(!b){f[d>>2]=a;rja(p,d)|0;break}j=a;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=p+4|0;l=f[k>>2]|0;m=(l|0)==0;b:do if(m)c=0;else{i=l+-1|0;e=(i&l|0)==0;if(e)c=i&o;else if(o>>>0<l>>>0)c=o;else c=(o>>>0)%(l>>>0)|0;d=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(d){if(e)while(1){d=f[d>>2]|0;if(!d)break b;e=f[d+4>>2]|0;if(!((e|0)==(o|0)|(e&i|0)==(c|0)))break b;if((f[d+8>>2]|0)==(a|0))break a}while(1){d=f[d>>2]|0;if(!d)break b;e=f[d+4>>2]|0;if((e|0)!=(o|0)){if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)!=(c|0))break b}if((f[d+8>>2]|0)==(a|0))break a}}}while(0);a=Wpb(12)|0;f[a+8>>2]=j;f[a+4>>2]=o;f[a>>2]=0;i=p+12|0;g=+(((f[i>>2]|0)+1|0)>>>0);h=+n[p+16>>2];do if(m|h*+(l>>>0)<g){c=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;d=~~+W(+(g/h))>>>0;Via(p,c>>>0<d>>>0?d:c);c=f[k>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&o;break}if(o>>>0<c>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}else e=l;while(0);d=(f[p>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=p+8|0;f[a>>2]=f[c>>2];f[c>>2]=a;f[d>>2]=c;c=f[a>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[p>>2]|0)+(c<<2)|0;q=36}}else{f[a>>2]=f[c>>2];q=36}if((q|0)==36)f[c>>2]=a;f[i>>2]=(f[i>>2]|0)+1}while(0);q=f[r>>2]|0;f[r>>2]=(b&1)<<1|q&33554173|q&-33554432|256;u=s;return}function Koa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;d=s;r=a+196|0;c=f[r>>2]|0;if(!((c&4|0)!=0^b)){u=s;return}a:do if(c&524288|0){if(!(c&262144))c=(f[a>>2]|0)+8|0;else c=a;p=Pwa(f[c>>2]|0)|0;if(!b){f[d>>2]=a;rja(p,d)|0;break}j=a;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=p+4|0;l=f[k>>2]|0;m=(l|0)==0;b:do if(m)c=0;else{i=l+-1|0;e=(i&l|0)==0;if(e)c=i&o;else if(o>>>0<l>>>0)c=o;else c=(o>>>0)%(l>>>0)|0;d=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(d){if(e)while(1){d=f[d>>2]|0;if(!d)break b;e=f[d+4>>2]|0;if(!((e|0)==(o|0)|(e&i|0)==(c|0)))break b;if((f[d+8>>2]|0)==(a|0))break a}while(1){d=f[d>>2]|0;if(!d)break b;e=f[d+4>>2]|0;if((e|0)!=(o|0)){if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)!=(c|0))break b}if((f[d+8>>2]|0)==(a|0))break a}}}while(0);a=Wpb(12)|0;f[a+8>>2]=j;f[a+4>>2]=o;f[a>>2]=0;i=p+12|0;g=+(((f[i>>2]|0)+1|0)>>>0);h=+n[p+16>>2];do if(m|h*+(l>>>0)<g){c=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;d=~~+W(+(g/h))>>>0;Via(p,c>>>0<d>>>0?d:c);c=f[k>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&o;break}if(o>>>0<c>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}else e=l;while(0);d=(f[p>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=p+8|0;f[a>>2]=f[c>>2];f[c>>2]=a;f[d>>2]=c;c=f[a>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[p>>2]|0)+(c<<2)|0;q=36}}else{f[a>>2]=f[c>>2];q=36}if((q|0)==36)f[c>>2]=a;f[i>>2]=(f[i>>2]|0)+1}while(0);q=f[r>>2]|0;f[r>>2]=(b&1)<<2|q&33554171|q&-33554432|256;u=s;return}function Loa(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=a+196|0;d=f[t>>2]|0;if(d&1|0){s=d;r=a+144|0;n[r>>2]=b;a=a+148|0;n[a>>2]=c;a=s|256;f[t>>2]=a;return}a:do if(d&524288|0){if(!(d&262144))d=(f[a>>2]|0)+8|0;else d=a;r=Owa(f[d>>2]|0)|0;k=a;p=X(k,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;l=r+4|0;m=f[l>>2]|0;o=(m|0)==0;b:do if(o)d=0;else{j=m+-1|0;g=(j&m|0)==0;if(g)d=j&p;else if(p>>>0<m>>>0)d=p;else d=(p>>>0)%(m>>>0)|0;e=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(e){if(g)while(1){e=f[e>>2]|0;if(!e)break b;q=f[e+4>>2]|0;if(!((q|0)==(p|0)|(q&j|0)==(d|0)))break b;if((f[e+8>>2]|0)==(a|0))break a}while(1){e=f[e>>2]|0;if(!e)break b;g=f[e+4>>2]|0;if((g|0)!=(p|0)){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(d|0))break b}if((f[e+8>>2]|0)==(a|0))break a}}}while(0);q=Wpb(12)|0;f[q+8>>2]=k;f[q+4>>2]=p;f[q>>2]=0;j=r+12|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[r+16>>2];do if(o|i*+(m>>>0)<h){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(h/i))>>>0;Via(r,d>>>0<e>>>0?e:d);d=f[l>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&p;break}if(p>>>0<d>>>0){g=d;d=p}else{g=d;d=(p>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[r>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=r+8|0;f[q>>2]=f[d>>2];f[d>>2]=q;f[e>>2]=d;d=f[q>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[r>>2]|0)+(d<<2)|0;s=35}}else{f[q>>2]=f[d>>2];s=35}if((s|0)==35)f[d>>2]=q;f[j>>2]=(f[j>>2]|0)+1}while(0);s=f[t>>2]|1;f[t>>2]=s;r=a+144|0;n[r>>2]=b;a=a+148|0;n[a>>2]=c;a=s|256;f[t>>2]=a;return}function Moa(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+16|0;c=e;d=a+196|0;b=f[d>>2]|0;if(!(b&1)){u=e;return}if(b&524288){if(!(b&262144))b=(f[a>>2]|0)+8|0;else b=a;b=Owa(f[b>>2]|0)|0;f[c>>2]=a;rja(b,c)|0;b=f[d>>2]|0}f[d>>2]=b&-258|256;u=e;return}function Noa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+80|0;i=m+72|0;k=m;l=a+4|0;d=f[l>>2]|0;c=f[b>>2]|0;if((d|0)==(c|0)){u=m;return}if(d){zoa((f[d+44>>2]|0)+108|0,f[a+128>>2]|0);c=f[b>>2]|0}if(c){n=f[c+44>>2]|0;f[i>>2]=a;c=n+108|0;d=n+112|0;e=f[d>>2]|0;g=e-(f[c>>2]|0)>>2;if((f[n+116>>2]|0)>>>0>e>>>0){f[e>>2]=a;f[d>>2]=(f[d>>2]|0)+4}else voa(c,i);f[a+128>>2]=g;c=f[b>>2]|0}d=f[b+4>>2]|0;if(d|0)Npb(d);f[l>>2]=c;n=a+8|0;e=f[n>>2]|0;f[n>>2]=d;if(e){Ppb(e);c=f[l>>2]|0}n=a+196|0;f[n>>2]=f[n>>2]|256;if(c|0)if(f[c+36>>2]|0){g=a+96|0;e=a+200|0;c=j[e>>1]|0|(h[e+2>>0]|0)<<16;if((f[g>>2]|0)==(f[a+72+(((c&16777215)>>>17&3)<<3)>>2]|0)){moa(i);n=f[i>>2]|0;d=i+4|0;b=f[d>>2]|0;f[i>>2]=0;f[d>>2]=0;f[g>>2]=n;n=a+100|0;c=f[n>>2]|0;f[n>>2]=b;if(c|0){Ppb(c);c=f[d>>2]|0;if(c|0)Ppb(c)}c=j[e>>1]|0|(h[e+2>>0]|0)<<16}c=f[a+72+(((c&16777215)>>>17&3)<<3)>>2]|0;if(c|0){i=f[g>>2]|0;n=f[(f[l>>2]|0)+36>>2]|0;f[k>>2]=c;f[k+4>>2]=n;n=k+8|0;bda(n,k)|0;ioa(i,n)}Ooa(a);u=m;return}d=a+200|0;d=((j[d>>1]|0|(h[d+2>>0]|0)<<16)&16777215)>>>17&3;c=f[a+72+(d<<3)>>2]|0;d=f[a+72+(d<<3)+4>>2]|0;if(d|0)Npb(d);f[a+96>>2]=c;n=a+100|0;c=f[n>>2]|0;f[n>>2]=d;if(!c){u=m;return}Ppb(c);u=m;return}function Ooa(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0;if(!(f[a+196>>2]&33554432))return;d=a+104|0;c=f[d>>2]|0;if(b[c+292>>0]&1)return;a=f[a+96>>2]|0;if(b[a+120>>0]&4){joa(a);c=f[d>>2]|0}j=+n[c+228>>2];e=+n[c+232>>2];g=+n[c+236>>2];i=+n[a+76>>2]*j+ +n[a+88>>2]*e+ +n[a+100>>2]*g;h=j*+n[a+80>>2]+e*+n[a+92>>2]+g*+n[a+104>>2];g=j*+n[a+84>>2]+e*+n[a+96>>2]+g*+n[a+108>>2];e=+L(+(i*i+(h*h+g*g)));n[c+240>>2]=i/e;n[c+244>>2]=h/e;n[c+248>>2]=g/e;return}function Poa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=a+132|0;if((f[e>>2]|0)==(c|0)){if((f[a+72>>2]|0)!=(d|0))g=4}else g=4;do if((g|0)==4){e=a+136|0;if((f[e>>2]|0)==(c|0))if((f[a+80>>2]|0)==(d|0))break;e=a+140|0;if((f[e>>2]|0)!=(c|0))return;if((f[a+88>>2]|0)!=(d|0))return}while(0);f[e>>2]=b;return}function Qoa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=b&255;d=f[c>>2]|0;c=f[c+4>>2]|0;if(c|0)Npb(c);f[a+36+(b<<3)>>2]=d;a=a+36+(b<<3)+4|0;b=f[a>>2]|0;f[a>>2]=c;if(!b)return;Ppb(b);return}function Roa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+80|0;d=g;c=f[b+4>>2]|0;if(!c)e=4;else{c=f[c+36>>2]|0;if(!c)e=4;else{f[d>>2]=f[b+72>>2];f[d+4>>2]=c;c=d+8|0;bda(c,d)|0}}if((e|0)==4)c=f[b+72>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];u=g;return}function Soa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=a+104|0;c=f[d>>2]|0;if(!c){c=Wpb(296)|0;Krb(c|0,0,228)|0;n[c+256>>2]=-1.0;n[c+260>>2]=-1.0;n[c+264>>2]=-1.0;n[c+268>>2]=-1.0;n[c+272>>2]=-1.0;n[c+276>>2]=-1.0;n[c+280>>2]=-1.0;n[c+284>>2]=-1.0;n[c+288>>2]=-1.0;f[d>>2]=c}e=f[b>>2]|0;g=b+4|0;d=f[g>>2]|0;f[b>>2]=0;f[g>>2]=0;f[c+220>>2]=e;b=c+224|0;c=f[b>>2]|0;f[b>>2]=d;if(!c){g=a+196|0;e=f[g>>2]|0;e=e|1049600;f[g>>2]=e;return}Ppb(c);g=a+196|0;e=f[g>>2]|0;e=e|1049600;f[g>>2]=e;return}function Toa(a){a=a|0;var b=0,c=0,d=0;d=a+104|0;b=f[d>>2]|0;if(!b)return;f[b+220>>2]=0;c=b+224|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);b=a+196|0;c=f[b>>2]|0;f[b>>2]=c&-1048577;b=f[d>>2]|0;if(!((c&1879048192|0)==0&(b|0)!=0))return;a=a+200|0;if(!((c&176160768|0)==0?((j[a>>1]|0|(h[a+2>>0]|0)<<16)&63|0)==0:0))return;f[d>>2]=0;Aoa(b);Zpb(b);return}function Uoa(a){a=a|0;return (f[a+104>>2]|0)+220|0}function Voa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,k=0,l=0;l=u;u=u+16|0;k=l;i=a+200|0;g=(j[i>>1]|0|(h[i+2>>0]|0)<<16)&16744511;d[i>>1]=g;b[i+2>>0]=g>>>16;i=a+196|0;g=f[i>>2]|0;f[i>>2]=g|256;if(!(g&524288)){u=l;return}if(!(g&262144))g=(f[a>>2]|0)+8|0;else g=a;xNa(uva(f[g>>2]|0)|0,a,c,e);if(!(f[i>>2]&262144)){g=f[(f[a>>2]|0)+8>>2]|0;Bva(k,g,f[a+116>>2]|0);if(f[k>>2]|0){i=f[a>>2]|0;Z0a(i,k,nxa(g)|0)}g=f[k+4>>2]|0;if(g|0)Ppb(g)}Ioa(a);u=l;return}function Woa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=u;u=u+80|0;l=o;g=a+200|0;k=j[g>>1]|0|(h[g+2>>0]|0)<<16;i=k|98304;d[g>>1]=i;b[g+2>>0]=i>>>16;g=f[a+4>>2]|0;if(!g)m=5;else{i=f[g+36>>2]|0;if(!i)m=5;else{g=f[a+72+(((k&16777215)>>>17&3)<<3)>>2]|0;if(g|0){p=f[a+96>>2]|0;f[l>>2]=g;f[l+4>>2]=i;k=l+8|0;bda(k,l)|0;ioa(p,k)}}}if((m|0)==5){i=(k&16777215)>>>17&3;g=f[a+72+(i<<3)>>2]|0;i=f[a+72+(i<<3)+4>>2]|0;if(i|0)Npb(i);f[a+96>>2]=g;p=a+100|0;g=f[p>>2]|0;f[p>>2]=i;if(g|0)Ppb(g)}g=a+196|0;if(!(f[g>>2]&67108864)){Ooa(a);p=f[g>>2]|0;p=p|256;f[g>>2]=p;Ioa(a);u=o;return}if(!((c|0)==0|(e|0)==0)){s=+n[c>>2];t=+n[c+4>>2];q=+n[c+8>>2];q=+L(+(s*s+(t*t+q*q)));t=+n[e>>2];s=+n[e+4>>2];r=+n[e+8>>2];if(!(q==0.0?1:+K(+(1.0-+L(+(t*t+(s*s+r*r)))/q))>9.999999747378752e-05)){r=+n[c+16>>2];q=+n[c+20>>2];t=+n[c+24>>2];t=+L(+(r*r+(q*q+t*t)));q=+n[e+16>>2];r=+n[e+20>>2];s=+n[e+24>>2];if(!(t==0.0?1:+K(+(1.0-+L(+(q*q+(r*r+s*s)))/t))>9.999999747378752e-05)){r=+n[c+32>>2];q=+n[c+36>>2];t=+n[c+40>>2];t=+L(+(r*r+(q*q+t*t)));q=+n[e+32>>2];r=+n[e+36>>2];s=+n[e+40>>2];if(!(t==0.0?1:+K(+(1.0-+L(+(q*q+(r*r+s*s)))/t))>9.999999747378752e-05)){Ooa(a);p=f[g>>2]|0;p=p|256;f[g>>2]=p;Ioa(a);u=o;return}}}}Xoa(a);Ooa(a);p=f[g>>2]|0;p=p|256;f[g>>2]=p;Ioa(a);u=o;return}function Xoa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,k=0;i=a+196|0;if(!(f[i>>2]&134217728))return;k=a+104|0;e=(f[k>>2]|0)+216|0;g=f[e>>2]|0;f[e>>2]=0;if(g|0){b=f[g+16>>2]|0;if(b|0)Ppb(b);b=f[g>>2]|0;if(b|0){e=g+4|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[e>>2]=d;c=f[c+-24>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}Zpb(g)}c=f[i>>2]|0;f[i>>2]=c&-134217729;b=f[k>>2]|0;if(!((c&1879048192|0)==0&(b|0)!=0))return;a=a+200|0;if(!((c&42991616|0)==0?((j[a>>1]|0|(h[a+2>>0]|0)<<16)&63|0)==0:0))return;f[k>>2]=0;Aoa(b);Zpb(b);return}function Yoa(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+16|0;q=r;l=a+72+(c<<3)|0;g=f[l>>2]|0;if((g|0)==(f[e>>2]|0)){u=r;return}m=a+200|0;i=((j[m>>1]|0|(h[m+2>>0]|0)<<16)&16777215)>>>17&3;n=f[a+72+(i<<3)>>2]|0;f[q>>2]=n;p=q+4|0;i=f[a+72+(i<<3)+4>>2]|0;f[p>>2]=i;o=n;if(i){Npb(i);g=f[l>>2]|0}if(g|0)woa(g,f[a+132+(c<<2)>>2]|0);g=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0)Npb(i);f[l>>2]=g;s=a+72+(c<<3)+4|0;k=f[s>>2]|0;f[s>>2]=i;if(k){Ppb(k);g=f[l>>2]|0}if(g|0){s=uoa(g,a)|0;f[a+132+(c<<2)>>2]=s}g=j[m>>1]|0|(h[m+2>>0]|0)<<16;i=(g&16777215)>>>17&3;a:do if(!(f[e>>2]|0)){if(!((i|0)!=(c|0)|(g&393216|0)==0))do{if(f[a+72+(((g&16777215)>>>17&3)<<3)>>2]|0)break a;s=g+393216&393216;g=s|g&16383999;d[m>>1]=g;b[m+2>>0]=g>>>16}while((s&16777215|0)!=0)}else if(i>>>0<c>>>0){g=g&16383999|c<<17&393216;d[m>>1]=g;b[m+2>>0]=g>>>16}while(0);i=(g&16777215)>>>17&3;g=f[a+72+(i<<3)>>2]|0;i=f[a+72+(i<<3)+4>>2]|0;k=(i|0)==0;if(!k)Npb(i);if((g|0)!=(o|0)){Woa(a,o,g);if(!((c|0)!=2|(n|0)==0))if((f[o+64>>2]|0)==(f[o+68>>2]|0))if((f[o+112>>2]|0)==-1){if(!(f[a+196>>2]&262144))a=(f[a>>2]|0)+8|0;ixa(f[a>>2]|0,q)}}if(!k)Ppb(i);a=f[p>>2]|0;if(a|0)Ppb(a);u=r;return}function Zoa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;c=a+196|0;d=f[c>>2]|0;if(!(d&262144))if((f[a>>2]|0)==(b|0))return;f[a>>2]=b;f[c>>2]=d&-262145;return}function _oa(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+196|0;d=f[c>>2]|0;if(!((d&8|0)!=0^b))return;f[c>>2]=d&33554423|(b&1)<<3|d&-33554432;Ioa(a);f[c>>2]=f[c>>2]|256;return}function $oa(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+196|0;d=f[c>>2]|0;if(!((d&16|0)!=0^b))return;f[c>>2]=d&33554415|(b&1)<<4|d&-33554432;Ioa(a);f[c>>2]=f[c>>2]|256;return}function apa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+196|0;c=f[d>>2]|0;if(!((c&32|0)!=0^b))return;if(b){f[a+156>>2]=0;f[a+160>>2]=0;f[a+164>>2]=0}else if(f[a+4>>2]|0){if(!(c&262144))c=(f[a>>2]|0)+8|0;else c=a;e=fxa(f[c>>2]|0)|0;c=f[d>>2]|0;if(!((c&32|0)!=0|(c&2048|0)==0&(e^1))){if(!(c&262144))c=(f[a>>2]|0)+8|0;else c=a;cxa(f[c>>2]|0,a);c=f[d>>2]|0}}f[d>>2]=(b&1)<<5|c&33554143|c&-33554432|256;return}function bpa(a,b){a=a|0;b=b|0;f[a+156>>2]=f[b>>2];f[a+160>>2]=f[b+4>>2];f[a+164>>2]=f[b+8>>2];return}function cpa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;f[a>>2]=c&33554367|(b&1)<<6|c&-33554432;return}function dpa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;if(!((c&8192|0)!=0^b))return;f[a>>2]=(b&1)<<13|c&33545983|c&-33554432|256;return}function epa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;if(!((c&16384|0)!=0^b))return;f[a>>2]=(b&1)<<14|c&33537535|c&-33554432|512;return}function fpa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;if(!((c&32768|0)!=0^b))return;f[a>>2]=(b&1)<<15|c&33521407|c&-33554432|256;return}function gpa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;f[a>>2]=c&33488895|(b&1)<<16|c&-33554432;return}function hpa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;if(!((c&2097152|0)!=0^b))return;f[a>>2]=(b&1)<<21|c&31457023|c&-33554432|256;return}function ipa(a,b){a=a|0;b=b|0;var c=0;a=a+196|0;c=f[a>>2]|0;if(!((c&4194304|0)!=0^b))return;f[a>>2]=(b&1)<<22|c&29359871|c&-33554432|256;return}function jpa(a){a=a|0;a=a+196|0;f[a>>2]=f[a>>2]|16777216;return}function kpa(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+196|0;d=f[c>>2]|0;if(!((d&2048|0)!=0^b))return;f[c>>2]=d&33552383|(b&1)<<11|d&-33554432;if(!(d&524288))return;if(!b){f[a+156>>2]=0;f[a+160>>2]=0;f[a+164>>2]=0}Ioa(a);return}function lpa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=a+193|0;h=c&7;if(e)b[g>>0]=b[g>>0]|h;c=a+192|0;e=b[c>>0]|0;if(!((e&h)<<24>>24!=0^d)){d=0;return d|0}b[c>>0]=e^h;d=a+196|0;f[d>>2]=f[d>>2]|256;d=1;return d|0}function mpa(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+192|0;e=b[d>>0]|0;if(((e&255)>>>3&7)==c<<24>>24)return;b[d>>0]=e&-57|c<<3&56;e=a+196|0;f[e>>2]=f[e>>2]|256;return}function npa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0;d=u;u=u+32|0;g=d+12|0;e=d;o=f[(f[a+4>>2]|0)+44>>2]|0;m=+n[o+120>>2];l=+n[o+132>>2];n[g>>2]=m-l;k=+n[o+124>>2];j=+n[o+136>>2];n[g+4>>2]=k-j;i=+n[o+128>>2];h=+n[o+140>>2];n[g+8>>2]=i-h;n[e>>2]=m+l;n[e+4>>2]=k+j;n[e+8>>2]=i+h;opa(g,e,f[a+96>>2]|0,b,c);u=d;return}function opa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0;E=u;u=u+32|0;C=E;k=f[a>>2]|0;f[C>>2]=k;l=f[a+4>>2]|0;f[C+4>>2]=l;m=f[a+8>>2]|0;f[C+8>>2]=m;f[C+12>>2]=f[b>>2];f[C+16>>2]=f[b+4>>2];f[C+20>>2]=f[b+8>>2];F=(f[s>>2]=k,+n[s>>2]);k=c+16|0;h=(f[s>>2]=l,+n[s>>2]);l=c+32|0;j=(f[s>>2]=m,+n[s>>2]);m=c+4|0;o=c+20|0;p=c+36|0;q=c+8|0;r=c+24|0;t=c+40|0;v=c+48|0;g=+n[c>>2]*F+ +n[k>>2]*h+ +n[l>>2]*j+ +n[v>>2];w=c+52|0;i=+n[m>>2]*F+ +n[o>>2]*h+ +n[p>>2]*j+ +n[w>>2];x=c+56|0;j=+n[q>>2]*F+ +n[r>>2]*h+ +n[t>>2]*j+ +n[x>>2];n[e>>2]=g;y=e+4|0;n[y>>2]=i;z=e+8|0;n[z>>2]=j;n[d>>2]=g;A=d+4|0;f[A>>2]=f[y>>2];B=d+8|0;f[B>>2]=f[z>>2];a=1;while(1){G=+n[C+((a&1)*12|0)>>2];F=+n[C+((a>>>1&1)*12|0)+4>>2];j=+n[C+((a>>>2&1)*12|0)+8>>2];h=+n[v>>2]+(G*+n[c>>2]+F*+n[k>>2]+j*+n[l>>2]);i=+n[w>>2]+(G*+n[m>>2]+F*+n[o>>2]+j*+n[p>>2]);j=+n[x>>2]+(G*+n[q>>2]+F*+n[r>>2]+j*+n[t>>2]);if(h<g){b=d;D=5}else if(h>+n[e>>2]){b=e;D=5}if((D|0)==5){D=0;n[b>>2]=h}if(i<+n[A>>2]){b=d;D=8}else if(i>+n[y>>2]){b=e;D=8}if((D|0)==8){D=0;n[b+4>>2]=i}if(j<+n[B>>2]){b=d;D=11}else if(j>+n[z>>2]){b=e;D=11}if((D|0)==11){D=0;n[b+8>>2]=j}a=a+1|0;if((a|0)==8)break;g=+n[d>>2]}u=E;return}function ppa(a){a=a|0;var c=0,e=0.0,g=0.0,i=0.0,k=0.0,l=0.0,m=0;c=f[a+96>>2]|0;m=f[(f[a+4>>2]|0)+44>>2]|0;l=+n[m+120>>2];k=+n[m+124>>2];i=+n[m+128>>2];g=l*+n[c+4>>2]+k*+n[c+20>>2]+i*+n[c+36>>2];e=l*+n[c+8>>2]+k*+n[c+24>>2]+i*+n[c+40>>2];n[a+168>>2]=+n[c>>2]*l+ +n[c+16>>2]*k+ +n[c+32>>2]*i+ +n[c+48>>2];n[a+172>>2]=g+ +n[c+52>>2];n[a+176>>2]=e+ +n[c+56>>2];a=a+200|0;c=(j[a>>1]|0|(h[a+2>>0]|0)<<16)&16711679;d[a>>1]=c;b[a+2>>0]=c>>>16;return}function qpa(a){a=a|0;var c=0,e=0.0,g=0.0,i=0.0,k=0.0,l=0.0,m=0;c=f[a+96>>2]|0;m=f[(f[a+4>>2]|0)+44>>2]|0;l=+n[m+132>>2];k=+n[m+136>>2];e=+n[m+140>>2];i=+n[c>>2]*l+ +n[c+16>>2]*k+ +n[c+32>>2]*e;g=l*+n[c+4>>2]+k*+n[c+20>>2]+e*+n[c+36>>2];e=l*+n[c+8>>2]+k*+n[c+24>>2]+e*+n[c+40>>2];n[a+152>>2]=i*i+(g*g+e*e);a=a+200|0;c=(j[a>>1]|0|(h[a+2>>0]|0)<<16)&16744447;d[a>>1]=c;b[a+2>>0]=c>>>16;return}function rpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;e=n+4|0;l=n;c=c&255;if(!(1<<c&7&(f[b+196>>2]|0)>>>28)){f[a>>2]=0;f[a+4>>2]=0;u=n;return}k=f[b+104>>2]|0;j=f[k+108+(c*36|0)>>2]|0;k=f[k+108+(c*36|0)+4>>2]|0;f[l>>2]=k;c=k-j>>4;if(!c)c=j;else{b=c;c=j;g=j;while(1){o=(b|0)/2|0;h=(f[g+(o<<4)+8>>2]|0)>>>0<d>>>0;i=g+(o<<4)+16|0;c=h?i:c;b=h?b+-1-o|0:o;if(!b)break;else g=h?i:g}}f[e>>2]=c;if((c|0)==(k|0))m=7;else if((f[c+8>>2]|0)!=(d|0))m=7;if((m|0)==7)if((c|0)==(j|0))e=l;else{f[e>>2]=c+-16;e=((f[c+-4>>2]|0)+(f[c+-8>>2]|0)|0)>>>0>d>>>0?e:l}e=f[e>>2]|0;if((e|0)==(k|0)){f[a>>2]=0;f[a+4>>2]=0;u=n;return}f[a>>2]=f[e>>2];e=f[e+4>>2]|0;f[a+4>>2]=e;if(!e){u=n;return}Npb(e);u=n;return}function spa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;h=k+8|0;g=k;i=b&255;c=a+36+(i<<3)|0;d=f[c>>2]|0;e=d;if(!d){u=k;return}b=a+60+(i<<2)|0;if(!(f[b>>2]|0)){c=f[a+36+(i<<3)+4>>2]|0;if(c|0)Npb(c);f[a+12+(i<<3)>>2]=e;j=a+12+(i<<3)+4|0;b=f[j>>2]|0;f[j>>2]=c;if(!b){u=k;return}Ppb(b);u=k;return}Yla(j,d);if(tpa(f[b>>2]|0,j)|0){if(!(f[a+196>>2]&262144))b=(f[a>>2]|0)+8|0;else b=a;b=uva(f[b>>2]|0)|0;d=f[j>>2]|0;f[j>>2]=0;f[g>>2]=d;c=Wpb(16)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=28992;f[c+12>>2]=d;d=g+4|0;f[d>>2]=c;MNa(h,b,g);b=f[h>>2]|0;c=h+4|0;g=f[c>>2]|0;f[h>>2]=0;f[c>>2]=0;f[a+12+(i<<3)>>2]=b;a=a+12+(i<<3)+4|0;b=f[a>>2]|0;f[a>>2]=g;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if(b|0)Ppb(b)}else{b=f[c>>2]|0;c=f[a+36+(i<<3)+4>>2]|0;if(c|0)Npb(c);f[a+12+(i<<3)>>2]=b;a=a+12+(i<<3)+4|0;b=f[a>>2]|0;f[a>>2]=c;if(b|0)Ppb(b)}b=f[j>>2]|0;f[j>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=k;return}function tpa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0;m=0;o=u;u=u+1248|0;g=Ng[f[(f[a>>2]|0)+16>>2]&511](a)|0;a:do if(!g)c=0;else{c=f[b>>2]|0;if(!c){c=Wpb(24)|0;d[c+4>>1]=0;f[c>>2]=27972;f[b>>2]=c;e=b}else e=b;b:while(1){switch(Pg[f[(f[c>>2]|0)+104>>2]&255](c,g)|0){case 1:{c=1;break a}case 0:break b;case 2:{p=f[b>>2]|0;nh[f[(f[p>>2]|0)+100>>2]&1023](o+12|0,p);p=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;c=f[b>>2]|0;f[e>>2]=p;if(!c)f[(o+12|0)>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}break}default:{}}c=f[b>>2]|0}c=0}while(0);e=Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0;if(e){i=+n[e>>2];e=f[b>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[b>>2]=e;g=b}else g=b;c:while(1){switch(Og[f[(f[e>>2]|0)+108>>2]&15](e,i)|0){case 0:{m=26;break c}case 1:{h=1;break c}case 2:{p=f[b>>2]|0;nh[f[(f[p>>2]|0)+100>>2]&1023](o+12|0,p);p=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;e=f[b>>2]|0;f[g>>2]=p;if(!e)f[(o+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[b>>2]|0}if((m|0)==26)h=0;c=c|h}e=Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0;if(e){i=+n[e>>2];e=f[b>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[b>>2]=e;g=b}else g=b;d:while(1){switch(Og[f[(f[e>>2]|0)+112>>2]&15](e,i)|0){case 0:{m=40;break d}case 1:{j=1;break d}case 2:{p=f[b>>2]|0;nh[f[(f[p>>2]|0)+100>>2]&1023](o+12|0,p);p=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;e=f[b>>2]|0;f[g>>2]=p;if(!e)f[(o+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[b>>2]|0}if((m|0)==40)j=0;c=c|j}e=Ng[f[(f[a>>2]|0)+40>>2]&511](a)|0;if(e){i=+n[e>>2];e=f[b>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[b>>2]=e;g=b}else g=b;e:while(1){switch(Og[f[(f[e>>2]|0)+116>>2]&15](e,i)|0){case 0:{m=54;break e}case 1:{k=1;break e}case 2:{p=f[b>>2]|0;nh[f[(f[p>>2]|0)+100>>2]&1023](o+12|0,p);p=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;e=f[b>>2]|0;f[g>>2]=p;if(!e)f[(o+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[b>>2]|0}if((m|0)==54)k=0;c=c|k}h=Ng[f[(f[a>>2]|0)+48>>2]&511](a)|0;if(h){e=f[b>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[b>>2]=e;g=b}else g=b;f:while(1){switch(Pg[f[(f[e>>2]|0)+120>>2]&255](e,h)|0){case 0:{m=68;break f}case 1:{l=1;break f}case 2:{p=f[b>>2]|0;nh[f[(f[p>>2]|0)+100>>2]&1023](o+12|0,p);p=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;e=f[b>>2]|0;f[g>>2]=p;if(!e)f[(o+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(o+12|0)>>2]|0;f[(o+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[b>>2]|0}if((m|0)==68)l=0;c=c|l}p=Ng[f[(f[a>>2]|0)+56>>2]&511](a)|0;f[o+32>>2]=a;f[o+40>>2]=b;f[o+168>>2]=c;f[o+520>>2]=p;f[o+1192>>2]=m;f[o+1200>>2]=0;f[o+1204>>2]=0;Npa(o);G=f[o+1200>>2]|0;D=f[o+1204>>2]|0;H=+n[o+1204>>2];f[o+1200>>2]=0;f[o+1204>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function upa(a){a=a|0;Hpb(a);Zpb(a);return}function vpa(a){a=a|0;a=f[a+12>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function wpa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==143510?a+12|0:0)|0}function xpa(a){a=a|0;Zpb(a);return}function ypa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=u;u=u+16|0;e=d+12|0;g=d+8|0;i=d+4|0;h=d;f[i>>2]=f[c>>2];f[h>>2]=f[c+4>>2];f[g>>2]=f[i>>2];f[e>>2]=f[h>>2];zpa(a,b,g,e);u=d;return}function zpa(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+16|0;w=x;r=f[e>>2]|0;v=f[g>>2]|0;l=r;m=v;if((r|0)==(v|0)){Apa(a,c);u=x;return}s=c&255;t=a+196|0;f[t>>2]=f[t>>2]|268435456<<s&1879048192;g=a+104|0;c=f[g>>2]|0;if(!c){c=Wpb(296)|0;Krb(c|0,0,228)|0;n[c+256>>2]=-1.0;n[c+260>>2]=-1.0;n[c+264>>2]=-1.0;n[c+268>>2]=-1.0;n[c+272>>2]=-1.0;n[c+276>>2]=-1.0;n[c+280>>2]=-1.0;n[c+284>>2]=-1.0;n[c+288>>2]=-1.0;f[g>>2]=c}p=c+108+(s*36|0)|0;k=f[p>>2]|0;f[p>>2]=0;q=c+108+(s*36|0)+4|0;g=f[q>>2]|0;f[q>>2]=0;o=c+108+(s*36|0)+8|0;f[o>>2]=0;i=k;if(k|0){if((g|0)!=(i|0))do{c=f[g+-12>>2]|0;g=g+-16|0;if(c|0)Ppb(c)}while((g|0)!=(i|0));Zpb(k)}Bpa(p,m-l>>4);i=w+4|0;k=w+8|0;l=w+12|0;c=r;do{f[w>>2]=f[c>>2];g=f[c+4>>2]|0;f[i>>2]=g;if(g|0)Npb(g);f[k>>2]=f[c+8>>2];f[l>>2]=f[c+12>>2];g=f[q>>2]|0;if(g>>>0<(f[o>>2]|0)>>>0){f[g>>2]=f[w>>2];f[g+4>>2]=f[i>>2];f[w>>2]=0;f[i>>2]=0;y=k;m=f[y+4>>2]|0;r=g+8|0;f[r>>2]=f[y>>2];f[r+4>>2]=m;f[q>>2]=(f[q>>2]|0)+16}else{Cpa(p,w);g=f[i>>2]|0;if(g|0)Ppb(g)}c=c+16|0;f[e>>2]=c}while((c|0)!=(v|0));y=a+200|0;w=j[y>>1]|0|(h[y+2>>0]|0)<<16;w=((1<<s^7)&((w&16777215)>>>6&16777215))<<6&448|w&16776767;d[y>>1]=w;b[y+2>>0]=w>>>16;f[t>>2]=f[t>>2]|256;u=x;return}function Apa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0;o=a+196|0;g=f[o>>2]|0;l=c&255;n=1<<l;if(!(n&7&g>>>28))return;m=a+104|0;e=f[m>>2]|0;i=f[e+108+(l*36|0)>>2]|0;k=e+108+(l*36|0)+4|0;c=f[k>>2]|0;if((c|0)!=(i|0)){e=c;while(1){c=e+-16|0;f[k>>2]=c;e=f[e+-12>>2]|0;if(e){Ppb(e);c=f[k>>2]|0}if((c|0)==(i|0))break;else e=c}g=f[o>>2]|0;e=f[m>>2]|0}l=g&((268435456<<l|-1879048193)^1879048192);a=a+200|0;c=j[a>>1]|0|(h[a+2>>0]|0)<<16;n=((n^7)&((c&16777215)>>>6&16777215))<<6&448|c&16776767;d[a>>1]=n;b[a+2>>0]=n>>>16;f[o>>2]=l|256;if(!((l&1879048192|0)==0&(e|0)!=0))return;if(!((g&177209344|0)==0&(c&63|0)==0))return;f[m>>2]=0;Aoa(e);Zpb(e);return}function Bpa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[a>>2]|0;c=d;if((f[k>>2]|0)-d>>4>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>268435455)ud();g=f[l>>2]|0;i=Wpb(b<<4)|0;h=i+(g-d>>4<<4)|0;j=h;i=i+(b<<4)|0;d=g;if((d|0)==(c|0))e=j;else{e=j;b=h;do{m=d;d=d+-16|0;f[b+-16>>2]=f[d>>2];g=m+-12|0;f[b+-12>>2]=f[g>>2];f[d>>2]=0;f[g>>2]=0;m=m+-8|0;g=f[m+4>>2]|0;h=b+-8|0;f[h>>2]=f[m>>2];f[h+4>>2]=g;b=e+-16|0;e=b}while((d|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=i;b=g;if((c|0)!=(b|0))do{d=f[c+-12>>2]|0;c=c+-16|0;if(d|0)Ppb(d)}while((c|0)!=(b|0));if(!g)return;Zpb(g);return}function Cpa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;g=f[n>>2]|0;c=f[a>>2]|0;j=g-c>>4;d=j+1|0;l=c;e=g;if(d>>>0>268435455)fob(a);m=a+8|0;k=(f[m>>2]|0)-c|0;h=k>>3;h=k>>4>>>0<134217727?(h>>>0<d>>>0?d:h):268435455;do if(!h)i=0;else if(h>>>0>268435455)ud();else{i=Wpb(h<<4)|0;break}while(0);d=i+(j<<4)|0;c=d;k=i+(h<<4)|0;f[d>>2]=f[b>>2];o=b+4|0;f[i+(j<<4)+4>>2]=f[o>>2];f[b>>2]=0;f[o>>2]=0;o=b+8|0;b=f[o+4>>2]|0;h=i+(j<<4)+8|0;f[h>>2]=f[o>>2];f[h+4>>2]=b;h=d+16|0;if((e|0)!=(l|0)){do{i=e;e=e+-16|0;f[d+-16>>2]=f[e>>2];j=i+-12|0;f[d+-12>>2]=f[j>>2];f[e>>2]=0;f[j>>2]=0;i=i+-8|0;j=f[i+4>>2]|0;o=d+-8|0;f[o>>2]=f[i>>2];f[o+4>>2]=j;d=c+-16|0;c=d}while((e|0)!=(l|0));g=f[a>>2]|0}f[a>>2]=c;c=f[n>>2]|0;f[n>>2]=h;f[m>>2]=k;e=g;if((c|0)!=(e|0))do{d=f[c+-12>>2]|0;c=c+-16|0;if(d|0)Ppb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function Dpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;e=i+12|0;d=i+8|0;g=i+4|0;h=i;if(!(f[c+196>>2]&1879048192)){Apa(a,b);u=i;return}else{j=f[c+104>>2]|0;c=b&255;f[g>>2]=f[j+108+(c*36|0)>>2];f[h>>2]=f[j+108+(c*36|0)+4>>2];f[d>>2]=f[g>>2];f[e>>2]=f[h>>2];Epa(a,b,d,e);u=i;return}}function Epa(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+16|0;w=x;r=f[e>>2]|0;v=f[g>>2]|0;l=r;m=v;if((r|0)==(v|0)){Apa(a,c);u=x;return}s=c&255;t=a+196|0;f[t>>2]=f[t>>2]|268435456<<s&1879048192;g=a+104|0;c=f[g>>2]|0;if(!c){c=Wpb(296)|0;Krb(c|0,0,228)|0;n[c+256>>2]=-1.0;n[c+260>>2]=-1.0;n[c+264>>2]=-1.0;n[c+268>>2]=-1.0;n[c+272>>2]=-1.0;n[c+276>>2]=-1.0;n[c+280>>2]=-1.0;n[c+284>>2]=-1.0;n[c+288>>2]=-1.0;f[g>>2]=c}p=c+108+(s*36|0)|0;k=f[p>>2]|0;f[p>>2]=0;q=c+108+(s*36|0)+4|0;g=f[q>>2]|0;f[q>>2]=0;o=c+108+(s*36|0)+8|0;f[o>>2]=0;i=k;if(k|0){if((g|0)!=(i|0))do{c=f[g+-12>>2]|0;g=g+-16|0;if(c|0)Ppb(c)}while((g|0)!=(i|0));Zpb(k)}Bpa(p,m-l>>4);i=w+4|0;k=w+8|0;l=w+12|0;c=r;do{f[w>>2]=f[c>>2];g=f[c+4>>2]|0;f[i>>2]=g;if(g|0)Npb(g);f[k>>2]=f[c+8>>2];f[l>>2]=f[c+12>>2];g=f[q>>2]|0;if(g>>>0<(f[o>>2]|0)>>>0){f[g>>2]=f[w>>2];f[g+4>>2]=f[i>>2];f[w>>2]=0;f[i>>2]=0;y=k;m=f[y+4>>2]|0;r=g+8|0;f[r>>2]=f[y>>2];f[r+4>>2]=m;f[q>>2]=(f[q>>2]|0)+16}else{Cpa(p,w);g=f[i>>2]|0;if(g|0)Ppb(g)}c=c+16|0;f[e>>2]=c}while((c|0)!=(v|0));y=a+200|0;w=j[y>>1]|0|(h[y+2>>0]|0)<<16;w=((1<<s^7)&((w&16777215)>>>6&16777215))<<6&448|w&16776767;d[y>>1]=w;b[y+2>>0]=w>>>16;f[t>>2]=f[t>>2]|256;u=x;return}function Fpa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+16|0;p=q;o=c&255;n=a+200|0;e=j[n>>1]|0|(h[n+2>>0]|0)<<16;e=(1<<o|(e&16777215)>>>6&16777215)<<6&448|e&16776767;d[n>>1]=e;b[n+2>>0]=e>>>16;n=a+104|0;e=f[n>>2]|0;c=f[e+(o*36|0)>>2]|0;e=e+(o*36|0)+4|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~(((g+-12-c|0)>>>0)/12|0)*12|0);if(f[a+60+(o<<2)>>2]|0){u=q;return}c=f[(f[a+4>>2]|0)+44>>2]|0;m=f[c+68+(o*12|0)>>2]|0;c=f[c+68+(o*12|0)+4>>2]|0;if((m|0)==(c|0)){u=q;return}a=(c-m|0)/12|0;i=f[n>>2]|0;c=f[i+108+(o*36|0)>>2]|0;i=f[i+108+(o*36|0)+4>>2]|0;if((c|0)==(i|0)){u=q;return}k=p+4|0;l=p+8|0;while(1){e=f[c+8>>2]|0;if(e>>>0>=a>>>0){c=12;break}g=(f[c+12>>2]|0)+e|0;g=a>>>0<g>>>0?a:g;if(e>>>0<g>>>0)do{r=(f[n>>2]|0)+(o*36|0)|0;f[p>>2]=f[c>>2];f[k>>2]=f[m+(e*12|0)>>2];f[l>>2]=f[m+(e*12|0)+4>>2];Gpa(r,p)|0;e=e+1|0}while(e>>>0<g>>>0);c=c+16|0;if((c|0)==(i|0)){c=12;break}}if((c|0)==12){u=q;return}}function Gpa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+48|0;v=z+44|0;n=z+16|0;p=z+40|0;y=z+8|0;w=z+4|0;c=z;s=b+8|0;l=f[s>>2]|0;if(!l){y=0;u=z;return y|0}k=f[a>>2]|0;x=a+4|0;r=f[x>>2]|0;q=b+4|0;d=r-k|0;do if(!d){h=k;d=k;k=h;e=l+(f[q>>2]|0)|0}else{i=f[q>>2]|0;e=(d|0)/12|0;d=k;g=k;while(1){o=(e|0)/2|0;h=(f[g+(o*12|0)+4>>2]|0)>>>0<i>>>0;j=g+(o*12|0)+12|0;d=h?j:d;e=h?e+-1-o|0:o;if(!e)break;else g=h?j:g}o=d;e=l+i|0;if((d|0)==(k|0)){k=o;h=o}else{g=d+-12|0;h=g;m=f[d+-8>>2]|0;j=d+-4|0;k=(f[j>>2]|0)+m|0;if(i>>>0>k>>>0){k=o;h=o}else{l=(f[b>>2]|0)==(f[g>>2]|0);if(k>>>0<e>>>0){if(l){f[q>>2]=m;i=e;g=b}else h=o;f[g+8>>2]=i-m;k=h;h=o;break}if(l){y=0;u=z;return y|0}f[j>>2]=i-m;if(k>>>0>e>>>0){f[n>>2]=f[b>>2];f[n+4>>2]=f[b+4>>2];f[n+8>>2]=f[b+8>>2];f[n+12>>2]=f[g>>2];f[n+16>>2]=e;f[n+20>>2]=k-e;f[p>>2]=o;f[v>>2]=f[p>>2];Hpa(a,v,n,n+24|0)|0;y=1;u=z;return y|0}else{k=o;h=o}}}}while(0);a:do if((d|0)==(r|0))g=h;else{g=h;while(1){j=d+4|0;i=f[j>>2]|0;if(e>>>0<=i>>>0){t=17;break}i=(f[d+8>>2]|0)+i|0;if(i>>>0>e>>>0)break;h=h+12|0;d=d+12|0;g=d;if((d|0)==(r|0))break a}if((t|0)==17){if((e|0)!=(i|0))break;if((f[b>>2]|0)!=(f[d>>2]|0))break;f[s>>2]=(f[d+8>>2]|0)+e-(f[q>>2]|0);h=h+12|0;break}if((f[b>>2]|0)==(f[d>>2]|0)){e=f[q>>2]|0;d=b;h=h+12|0}else f[j>>2]=e;f[d+8>>2]=i-e}while(0);e=k;d=h;if((e|0)==(d|0)){f[w>>2]=g;f[v>>2]=f[w>>2];d=Ipa(a,v,b)|0}else{g=k;f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];g=e+12|0;if((g|0)==(d|0))c=y;else{c=g+(((h-g|0)/12|0)*12|0)|0;d=f[x>>2]|0;e=d-c|0;if(e){Jrb(g|0,c|0,e|0)|0;d=f[x>>2]|0}c=g+(((e|0)/12|0)*12|0)|0;if((d|0)==(c|0)){d=g;c=y}else{f[x>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);d=g;c=y}}}f[c>>2]=d;y=1;u=z;return y|0}function Hpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=f[a>>2]|0;g=m;i=(f[b>>2]|0)-g|0;p=m+(((i|0)/12|0)*12|0)|0;h=d;k=c;q=h-k|0;j=(q|0)/12|0;if((q|0)<=0){q=p;return q|0}o=a+8|0;e=f[o>>2]|0;q=a+4|0;n=f[q>>2]|0;b=n;if((j|0)<=((e-b|0)/12|0|0)){g=b-p|0;b=(g|0)/12|0;if((j|0)>(b|0)){e=c+(b*12|0)|0;b=h-e|0;if((b|0)>0){Irb(n|0,e|0,b|0)|0;b=(f[q>>2]|0)+(((b>>>0)/12|0)*12|0)|0;f[q>>2]=b}else b=n;if((g|0)>0){d=e;h=b}else{q=p;return q|0}}else h=n;g=h-(p+(j*12|0))|0;b=p+(((g|0)/12|0)*12|0)|0;if(b>>>0<n>>>0){e=h;do{f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];b=b+12|0;e=(f[q>>2]|0)+12|0;f[q>>2]=e}while(b>>>0<n>>>0)}if(g|0)Jrb(h+(((g|0)/-12|0)*12|0)|0,p|0,g|0)|0;b=d-k|0;if(!b){q=p;return q|0}Jrb(p|0,c|0,b|0)|0;q=p;return q|0}b=((b-g|0)/12|0)+j|0;if(b>>>0>357913941)fob(a);j=(e-g|0)/12|0;g=j<<1;g=j>>>0<178956970?(g>>>0<b>>>0?b:g):357913941;j=p;b=(i|0)/12|0;do if(!g)l=0;else if(g>>>0>357913941)ud();else{l=Wpb(g*12|0)|0;break}while(0);k=l+(b*12|0)|0;e=k;i=l+(g*12|0)|0;if((c|0)==(d|0))b=m;else{b=c;g=k;do{f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];g=e+12|0;e=g;b=b+12|0}while((b|0)!=(d|0));b=f[a>>2]|0}g=j-b|0;h=k+(((g|0)/-12|0)*12|0)|0;if((g|0)>0)Irb(h|0,b|0,g|0)|0;g=(f[q>>2]|0)-j|0;if((g|0)>0){Irb(e|0,p|0,g|0)|0;e=e+(((g>>>0)/12|0)*12|0)|0;b=f[a>>2]|0}f[a>>2]=h;f[q>>2]=e;f[o>>2]=i;if(!b){q=k;return q|0}Zpb(b);q=k;return q|0}function Ipa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=f[a>>2]|0;e=g;j=(f[b>>2]|0)-e|0;p=g+(((j|0)/12|0)*12|0)|0;q=a+4|0;h=f[q>>2]|0;o=a+8|0;n=f[o>>2]|0;b=h;d=n;if(h>>>0<n>>>0){if((p|0)==(h|0)){f[p>>2]=f[c>>2];f[p+4>>2]=f[c+4>>2];f[p+8>>2]=f[c+8>>2];f[q>>2]=(f[q>>2]|0)+12;q=p;return q|0}e=b-(p+12)|0;b=p+(((e|0)/12|0)*12|0)|0;if(b>>>0<h>>>0){d=h;do{f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];b=b+12|0;d=(f[q>>2]|0)+12|0;f[q>>2]=d}while(b>>>0<h>>>0)}if(!e)b=p;else{Jrb(h+(((e|0)/-12|0)*12|0)|0,p|0,e|0)|0;b=p};f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];q=p;return q|0}b=((b-e|0)/12|0)+1|0;if(b>>>0>357913941)fob(a);n=(d-e|0)/12|0;d=n<<1;d=n>>>0<178956970?(d>>>0<b>>>0?b:d):357913941;n=p;h=(j|0)/12|0;do if(!d){l=0;m=0}else if(d>>>0>357913941)ud();else{m=Wpb(d*12|0)|0;l=m;break}while(0);b=l+(h*12|0)|0;e=b;i=l+(d*12|0)|0;do if((h|0)==(d|0)){if((j|0)>0){b=b+(((d+1|0)/-2|0)*12|0)|0;e=b;break}d=d*12|0;d=(d|0)==0?1:((d|0)/12|0)<<1;b=d>>>2;do if(!d)k=0;else if(d>>>0>357913941)ud();else{k=Wpb(d*12|0)|0;break}while(0);b=k+(b*12|0)|0;e=b;d=k+(d*12|0)|0;if(!l)i=d;else{Zpb(m);i=d;g=f[a>>2]|0}}while(0);f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];b=e+12|0;d=n-g|0;h=e+(((d|0)/-12|0)*12|0)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[q>>2]|0)-n|0;if((d|0)>0){Irb(b|0,p|0,d|0)|0;b=b+(((d>>>0)/12|0)*12|0)|0}d=f[a>>2]|0;f[a>>2]=h;f[q>>2]=b;f[o>>2]=i;if(!d){q=e;return q|0}Zpb(d);q=e;return q|0}function Jpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=b+88|0;d=f[g>>2]|0;if(!d){f[a>>2]=0;f[a+4>>2]=-1;u=h;return}if((f[d+112>>2]|0)==-1){jxa(e,c,g);Yoa(b,2,e);d=f[e+4>>2]|0;if(d|0)Ppb(d);d=f[g>>2]|0}e=d+112|0;g=f[e+4>>2]|0;f[a>>2]=f[e>>2];f[a+4>>2]=g;u=h;return}function Kpa(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var k=0,l=0,m=0,o=0;o=u;u=u+16|0;l=o;if(i){i=a+104|0;k=f[i>>2]|0;if(!k){k=Wpb(296)|0;Krb(k|0,0,228)|0;n[k+256>>2]=-1.0;n[k+260>>2]=-1.0;n[k+264>>2]=-1.0;n[k+268>>2]=-1.0;n[k+272>>2]=-1.0;n[k+276>>2]=-1.0;n[k+280>>2]=-1.0;n[k+284>>2]=-1.0;n[k+288>>2]=-1.0;f[i>>2]=k}i=c&255;f[l>>2]=e;f[l+4>>2]=g;if(!(Lpa(k+108+(i*36|0)+12|0,l)|0)){u=o;return}m=1<<i;g=a+200|0;e=j[g>>1]|0|(h[g+2>>0]|0)<<16;e=(m|e&16777215)&7|e&16773624|((m^7)&((e&16777215)>>>9&16777215))<<9&3584;d[g>>1]=e;b[g+2>>0]=e>>>16;a=a+196|0;f[a>>2]=f[a>>2]|512;u=o;return}l=a+200|0;i=c&255;k=1<<i;if(!(k&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7))){u=o;return}m=a+104|0;if(!(Opa((f[m>>2]|0)+108+(i*36|0)+12|0,e,g)|0)){u=o;return}c=f[m>>2]|0;if((f[c+108+(i*36|0)+12>>2]|0)==(f[c+108+(i*36|0)+16>>2]|0)){i=k^7;k=j[l>>1]|0|(h[l+2>>0]|0)<<16;k=i&(k&16777215)&7|k&16777208;d[l>>1]=k;b[l+2>>0]=k>>>16}else{i=k^7;k=j[l>>1]|0|(h[l+2>>0]|0)<<16}i=(i&((k&16777215)>>>9&16777215))<<9&3584|k&16773631;d[l>>1]=i;b[l+2>>0]=i>>>16;a=a+196|0;i=f[a>>2]|0;f[a>>2]=i|512;if(!((i&1879048192|0)==0&(c|0)!=0)){u=o;return}if(!((i&177209344|0)==0&(k&63|0)==0)){u=o;return}f[m>>2]=0;Aoa(c);Zpb(c);u=o;return}function Lpa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;r=w+12|0;v=w+8|0;s=w+4|0;c=w;p=b+4|0;j=f[p>>2]|0;if(!j){v=0;u=w;return v|0}i=f[a>>2]|0;t=a+4|0;o=f[t>>2]|0;d=o-i>>3;n=f[b>>2]|0;do if(!d){d=i;k=i;i=d;m=j+n|0;j=n}else{k=i;e=i;while(1){m=(d|0)/2|0;h=e+(m<<3)|0;g=(f[h>>2]|0)>>>0<n>>>0;h=h+8|0;k=g?h:k;d=g?d+-1-m|0:m;if(!d)break;else e=g?h:e}l=k;g=j+n|0;if((k|0)==(i|0)){i=l;m=g;j=n;d=l}else{h=k+-8|0;e=h;h=f[h>>2]|0;d=(f[k+-4>>2]|0)+h|0;if(n>>>0>d>>>0){i=l;m=g;j=n;d=l}else if(d>>>0<g>>>0){f[b>>2]=h;f[p>>2]=g-h;i=e;m=g;j=h;d=l;break}else{v=0;u=w;return v|0}}}while(0);a:do if((k|0)==(o|0)){h=d;g=d}else{h=d;g=d;e=k;while(1){d=f[e>>2]|0;if(m>>>0<=d>>>0)break;d=(f[e+4>>2]|0)+d|0;g=g+8|0;if(d>>>0>m>>>0){q=14;break}d=e+8|0;h=d;if((d|0)==(o|0))break a;else e=d}if((q|0)==14){f[p>>2]=d-j;break}if((m|0)==(d|0)){f[p>>2]=(f[e+4>>2]|0)+m-j;g=g+8|0}}while(0);e=i;d=g;if((e|0)==(d|0)){f[s>>2]=h;f[r>>2]=f[s>>2];d=Ppa(a,r,b)|0}else{s=f[b+4>>2]|0;h=i;f[h>>2]=f[b>>2];f[h+4>>2]=s;h=e+8|0;if((h|0)==(d|0))c=v;else{c=h+(g-h>>3<<3)|0;d=f[t>>2]|0;e=d-c|0;g=e>>3;if(g){Jrb(h|0,c|0,e|0)|0;d=f[t>>2]|0}c=h+(g<<3)|0;if((d|0)==(c|0)){d=h;c=v}else{f[t>>2]=d+(~((d+-8-c|0)>>>3)<<3);d=h;c=v}}}f[c>>2]=d;v=1;u=w;return v|0}function Mpa(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,g=0,h=0.0,i=0.0,j=0,k=0.0,l=0,m=0,o=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0;s=f[a+96>>2]|0;g=f[a+208>>2]|0;q=+n[a+296>>2];r=+n[a+328>>2];t=f[a+432>>2]|0;u=f[a+440>>2]|0;m=f[a+448>>2]|0;o=f[a+496>>2]|0;l=f[a+528>>2]|0;h=+n[a+600>>2];i=+n[a+608>>2];b=+n[a+616>>2];c=+n[a+624>>2];d=+n[a+632>>2];e=+n[a+640>>2];v=f[a+1112>>2]|0;a:{if(c*c+(d*d+e*e)<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=c*c+(d*d+e*e);p[s>>3]=+p[(m+24|0)>>3];p[(s+8|0)>>3]=+p[((m+24|0)+8|0)>>3];p[(s+16|0)>>3]=+p[((m+24|0)+16|0)>>3];p[(s+24|0)>>3]=h;p[(s+32|0)>>3]=i;p[(s+40|0)>>3]=b}if(c*c+(d*d+e*e)==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}uWa(a+24|0,m+48|0,o,o+24|0,o+48|0);k=+p[(a+24|0)>>3];p[(a+24|0)>>3]=h;h=+p[((a+24|0)+8|0)>>3];p[((a+24|0)+8|0)>>3]=i;b=+p[((a+24|0)+16|0)>>3];c=+p[(m+48|0)>>3]-k;d=+p[((m+48|0)+8|0)>>3]-h;e=+p[((m+48|0)+16|0)>>3]-b;if(c*c+(d*d+e*e)<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=c*c+(d*d+e*e);p[s>>3]=+p[(m+48|0)>>3];p[(s+8|0)>>3]=+p[((m+48|0)+8|0)>>3];p[(s+16|0)>>3]=+p[((m+48|0)+16|0)>>3];p[(s+24|0)>>3]=k;p[(s+32|0)>>3]=h;p[(s+40|0)>>3]=b}if(c*c+(d*d+e*e)==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}uWa(a+24|0,o,m,m+24|0,m+48|0);i=+p[(a+24|0)>>3];p[(a+24|0)>>3]=k;k=+p[((a+24|0)+8|0)>>3];p[((a+24|0)+8|0)>>3]=h;c=+p[((a+24|0)+16|0)>>3];d=+p[o>>3]-i;j=l+(g*24|0)+8|0;e=+p[j>>3]-k;g=l+(g*24|0)+16|0;b=+p[g>>3]-c;if(d*d+(e*e+b*b)<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=d*d+(e*e+b*b);p[s>>3]=+p[o>>3];p[(s+8|0)>>3]=+p[j>>3];p[(s+16|0)>>3]=+p[g>>3];p[(s+24|0)>>3]=i;p[(s+32|0)>>3]=k;p[(s+40|0)>>3]=c}if(d*d+(e*e+b*b)==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}uWa(a+24|0,o+24|0,m,m+24|0,m+48|0);h=+p[(a+24|0)>>3];p[(a+24|0)>>3]=i;i=+p[((a+24|0)+8|0)>>3];p[((a+24|0)+8|0)>>3]=k;b=+p[((a+24|0)+16|0)>>3];c=+p[(o+24|0)>>3]-h;d=+p[((o+24|0)+8|0)>>3]-i;e=+p[((o+24|0)+16|0)>>3]-b;if(c*c+(d*d+e*e)<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=c*c+(d*d+e*e);p[s>>3]=+p[(o+24|0)>>3];p[(s+8|0)>>3]=+p[((o+24|0)+8|0)>>3];p[(s+16|0)>>3]=+p[((o+24|0)+16|0)>>3];p[(s+24|0)>>3]=h;p[(s+32|0)>>3]=i;p[(s+40|0)>>3]=b}if(c*c+(d*d+e*e)==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}uWa(a+24|0,o+48|0,m,m+24|0,m+48|0);k=+p[(a+24|0)>>3];p[(a+24|0)>>3]=h;h=+p[((a+24|0)+8|0)>>3];p[((a+24|0)+8|0)>>3]=i;b=+p[((a+24|0)+16|0)>>3];c=+p[(o+48|0)>>3]-k;d=+p[((o+48|0)+8|0)>>3]-h;e=+p[((o+48|0)+16|0)>>3]-b;if(c*c+(d*d+e*e)<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=c*c+(d*d+e*e);p[s>>3]=+p[(o+48|0)>>3];p[(s+8|0)>>3]=+p[((o+48|0)+8|0)>>3];p[(s+16|0)>>3]=+p[((o+48|0)+16|0)>>3];p[(s+24|0)>>3]=k;p[(s+32|0)>>3]=h;p[(s+40|0)>>3]=b}if(c*c+(d*d+e*e)==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m,m+24|0,o,o+24|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+24|0,m+48|0,o,o+24|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+48|0,m,o,o+24|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m,m+24|0,o+24|0,o+48|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+24|0,m+48|0,o+24|0,o+48|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+48|0,m,o+24|0,o+48|0,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m,m+24|0,o+48|0,o,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+24|0,m+48|0,o+48|0,o,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=94;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}b=+tWa(m+48|0,m,o+48|0,o,a+24|0,a);if(b<+p[(s+48|0)>>3]){p[(s+48|0)>>3]=b;p[s>>3]=+p[(a+24|0)>>3];p[(s+8|0)>>3]=+p[t>>3];p[(s+16|0)>>3]=+p[u>>3];p[(s+24|0)>>3]=+p[a>>3];p[(s+32|0)>>3]=+p[(a+8|0)>>3];p[(s+40|0)>>3]=+p[(a+16|0)>>3]}if(b==0.0){v=98;f[a+1136>>2]=2;f[a+1140>>2]=14;break a}else{q=k;r=h}}n[a+296>>2]=q;n[a+328>>2]=r;f[a+1112>>2]=v}function Npa(a){a=a|0;var c=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;o=f[a+32>>2]|0;q=f[a+40>>2]|0;c=f[a+168>>2]|0;e=f[a+520>>2]|0;r=f[a+1192>>2]|0;a:{if(e){f[a>>2]=0;f[(a+4|0)>>2]=0;f[a+8>>2]=0;g=f[e>>2]|0;e=(f[e+4>>2]|0)-g|0;do if(e|0)if((e|0)<0)fob(a);else{s=Wpb(e)|0;f[(a+4|0)>>2]=s;f[a>>2]=s;f[a+8>>2]=s+e|0;Irb(s|0,g|0,e|0)|0;f[(a+4|0)>>2]=s+e|0;break}while(0);e=f[q>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[q>>2]=e;g=q}else g=q;b:while(1){switch(Pg[f[(f[e>>2]|0)+124>>2]&255](e,a)|0){case 0:{r=86;break b}case 1:{h=1;break b}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;e=f[q>>2]|0;f[g>>2]=s;if(!e)f[(a+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[q>>2]|0}if((r|0)==86)h=0;c=c|h;e=f[a>>2]|0;if(e|0){if((f[(a+4|0)>>2]|0)!=(e|0))f[(a+4|0)>>2]=e;Zpb(e)}}e=Ng[f[(f[o>>2]|0)+64>>2]&511](o)|0;if(!e)e=c;else{i=+n[e>>2];e=f[q>>2]|0;if(!e){e=Wpb(24)|0;d[e+4>>1]=0;f[e>>2]=27972;f[q>>2]=e;g=q}else g=q;c:while(1){switch(Og[f[(f[e>>2]|0)+128>>2]&15](e,i)|0){case 0:{r=104;break c}case 1:{j=1;break c}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;e=f[q>>2]|0;f[g>>2]=s;if(!e)f[(a+12|0)>>2]=0;else{fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e)}break}default:{}}e=f[q>>2]|0}if((r|0)==104)j=0;e=c|j}c=Ng[f[(f[o>>2]|0)+72>>2]&511](o)|0;if(c){h=b[c>>0]|0;c=f[q>>2]|0;if(!c){c=Wpb(24)|0;d[c+4>>1]=0;f[c>>2]=27972;f[q>>2]=c;g=q}else g=q;d:while(1){switch(Pg[f[(f[c>>2]|0)+132>>2]&255](c,h)|0){case 0:{r=118;break d}case 1:{k=1;break d}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;c=f[q>>2]|0;f[g>>2]=s;if(!c)f[(a+12|0)>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}break}default:{}}c=f[q>>2]|0}if((r|0)==118)k=0;e=e|k}h=Ng[f[(f[o>>2]|0)+80>>2]&511](o)|0;if(h){c=f[q>>2]|0;if(!c){c=Wpb(24)|0;d[c+4>>1]=0;f[c>>2]=27972;f[q>>2]=c;g=q}else g=q;e:while(1){switch(Pg[f[(f[c>>2]|0)+136>>2]&255](c,h)|0){case 0:{r=132;break e}case 1:{l=1;break e}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;c=f[q>>2]|0;f[g>>2]=s;if(!c)f[(a+12|0)>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}break}default:{}}c=f[q>>2]|0}if((r|0)==132)l=0;e=e|l}h=Ng[f[(f[o>>2]|0)+88>>2]&511](o)|0;if(!h)h=e;else{c=f[q>>2]|0;if(!c){c=Wpb(24)|0;d[c+4>>1]=0;f[c>>2]=27972;f[q>>2]=c;g=q}else g=q;f:while(1){switch(Pg[f[(f[c>>2]|0)+140>>2]&255](c,h)|0){case 0:{r=146;break f}case 1:{m=1;break f}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;c=f[q>>2]|0;f[g>>2]=s;if(!c)f[(a+12|0)>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}break}default:{}}c=f[q>>2]|0}if((r|0)==146)m=0;h=e|m}c=Ng[f[(f[o>>2]|0)+96>>2]&511](o)|0;if(!c){s=h;u=a;f[a+1200>>2]=6;f[a+1204>>2]=s|0;break a}g=b[c>>0]|0;c=f[q>>2]|0;if(!c){c=Wpb(24)|0;d[c+4>>1]=0;f[c>>2]=27972;f[q>>2]=c;e=q}else e=q;g:while(1){switch(Pg[f[(f[c>>2]|0)+144>>2]&255](c,g)|0){case 0:{r=160;break g}case 1:{p=1;break g}case 2:{s=f[q>>2]|0;nh[f[(f[s>>2]|0)+100>>2]&1023](a+12|0,s);s=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;c=f[q>>2]|0;f[e>>2]=s;if(!c)f[(a+12|0)>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+12|0)>>2]|0;f[(a+12|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}break}default:{}}c=f[q>>2]|0}if((r|0)==160)p=0;s=h|p;u=a;f[a+1200>>2]=6;f[a+1204>>2]=s|0;break a}f[a+1192>>2]=r}
function hGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;nh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=VCa(r+860|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+88>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+84|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+772|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<c>>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+768|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=Wpb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+780|0)>>2]|0)+1|0)>>>0);o=+n[(r+784|0)>>2];do if((c|0)==0|o*+(c>>>0)<m){e=~~+W(+(m/o))>>>0;Tka(r+768|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0<e>>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+772|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<e>>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+768|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+776|0)>>2];f[(r+776|0)>>2]=j;f[e>>2]=r+776|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+768|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+780|0)>>2]=(f[(r+780|0)>>2]|0)+1}p=TCa(d+84|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+220>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;IIa(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function iGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;nh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=VCa(r+860|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+108>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+104|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+792|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<c>>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+788|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=Wpb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+800|0)>>2]|0)+1|0)>>>0);o=+n[(r+804|0)>>2];do if((c|0)==0|o*+(c>>>0)<m){e=~~+W(+(m/o))>>>0;Tka(r+788|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0<e>>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+792|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<e>>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+788|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+796|0)>>2];f[(r+796|0)>>2]=j;f[e>>2]=r+796|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+788|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+800|0)>>2]=(f[(r+800|0)>>2]|0)+1}p=TCa(d+104|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+220>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;JIa(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function jGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;nh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=VCa(r+860|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+128>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+124|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+812|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<c>>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+808|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=Wpb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+820|0)>>2]|0)+1|0)>>>0);o=+n[(r+824|0)>>2];do if((c|0)==0|o*+(c>>>0)<m){e=~~+W(+(m/o))>>>0;Tka(r+808|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0<e>>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+812|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<e>>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+808|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+816|0)>>2];f[(r+816|0)>>2]=j;f[e>>2]=r+816|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+808|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+820|0)>>2]=(f[(r+820|0)>>2]|0)+1}p=TCa(d+124|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+220>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;KIa(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function kGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;p=0;q=u;u=u+1360|0;a:do if((f[a+12>>2]|0)!=2){g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}p=f[b>>2]|0;nh[f[(f[p>>2]|0)+16>>2]&1023](p,0);u=q;return}}while(0);j=f[b>>2]|0;if(!j){VFa(a,c,d);u=q;return}k=f[(f[a+8>>2]|0)+220>>2]|0;l=f[a+4>>2]|0;f[b>>2]=0;f[(q+20|0)>>2]=j;f[(q+36|0)>>2]=0;o=(q+36|0)+4|0;f[o>>2]=0;f[(q+36|0)+8>>2]=0;f[(q+24|0)>>2]=0;m=(q+24|0)+4|0;f[m>>2]=0;f[(q+24|0)+8>>2]=0;b=f[c>>2]|0;i=f[(c+4|0)>>2]|0;b:do if(i|0){if(d){h=b;while(1){hwa(q+48|0,k,h);if(!(f[(q+48|0)>>2]|0))e=zEa(a,h,8)|0;else e=1;g=f[((q+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);c:do switch(e<<24>>24){case 0:if(!(f[h>>2]|0)){e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){dB(q+36|0,h);break c}else{r=h;g=f[r+4>>2]|0;f[e>>2]=f[r>>2];f[e+4>>2]=g;f[o>>2]=(f[o>>2]|0)+8;break c}}else{e=f[m>>2]|0;if((e|0)==(f[((q+24|0)+8|0)>>2]|0)){dB(q+24|0,h);break c}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[m>>2]=(f[m>>2]|0)+8;break c}}case 3:{e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){dB(q+36|0,h);break c}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break c}}default:{}}while(0);h=h+8|0;if((h|0)==(b+(i<<3)|0|0))break b}}else h=b;while(1){hwa(q+48|0,k,h);e=f[(q+48|0)>>2]|0;if(!e)e=zEa(a,h,8)|0;else e=((Dla(e)|0)^1)&1;g=f[((q+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);d:do switch(e<<24>>24){case 0:if(!(f[h>>2]|0)){e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){dB(q+36|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break d}}else{e=f[m>>2]|0;if((e|0)==(f[((q+24|0)+8|0)>>2]|0)){dB(q+24|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[m>>2]=(f[m>>2]|0)+8;break d}}case 3:{e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){dB(q+36|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break d}}default:{}}while(0);h=h+8|0;if((h|0)==(b+(i<<3)|0|0))break b}}while(0);do{r=1;f[q+80>>2]=a;f[q+96>>2]=c;f[q+104>>2]=d;f[q+472>>2]=j;f[q+632>>2]=l;f[q+656>>2]=o;f[q+688>>2]=m;f[q+1248>>2]=p;f[q+1256>>2]=r;f[q+1288>>2]=0;f[q+1292>>2]=0;LIa(q);G=f[q+1288>>2]|0;D=f[q+1292>>2]|0;H=+n[q+1292>>2];f[q+1288>>2]=0;f[q+1292>>2]=0;if((G|0)==1)break}while(0);e=f[(q+24|0)>>2]|0;if(e|0){g=f[m>>2]|0;if((g|0)!=(e|0))f[m>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(q+36|0)>>2]|0;if(e|0){g=f[o>>2]|0;if((g|0)!=(e|0))f[o>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(q+20|0)>>2]|0;f[(q+20|0)>>2]=0;if(!e){u=q;return}fh[f[(f[e>>2]|0)+4>>2]&2047](e);u=q;return}function lGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+128|0;l=q+124|0;p=q+120|0;m=q+96|0;n=q+8|0;o=q+88|0;j=q+4|0;k=q;f[p>>2]=d;if(f[a+500>>2]|0){h=f[e>>2]|0;if(h>>>0<(f[(f[a+492>>2]|0)+16>>2]|0)>>>0){g=a+444|0;c=f[g>>2]|0;if(c>>>0<(f[a+448>>2]|0)>>>0){f[c>>2]=h;f[c+4>>2]=f[p>>2];f[g>>2]=c+8;u=q;return}else{mGa(a+440|0,e,p);u=q;return}}}jYa(c,d);g=TXa(c,d)|0;i=UXa(c,d)|0;if(b[i+13>>0]|0){e=(nGa(a+420|0,p)|0)+20|0;e=f[e>>2]|0;nh[f[(f[e>>2]|0)+8>>2]&1023](e,p);u=q;return}switch(g|0){case 0:{VXa(m,c,d);XXa(n,c,f[p>>2]|0);a=f[a+916>>2]|0;k=f[(f[a>>2]|0)+152>>2]|0;f[o>>2]=f[e>>2];e=f[p>>2]|0;h=m+4|0;g=f[m>>2]|0;p=(f[h>>2]|0)-g>>4;f[l>>2]=f[o>>2];Wh[k&63](a,l,e,i,p,g,n);g=f[m>>2]|0;if(g|0){c=f[h>>2]|0;if((c|0)!=(g|0))f[h>>2]=c+(~((c+-16-g|0)>>>4)<<4);Zpb(g)}u=q;return}case 1:{YXa(m,c,d);a=f[a+916>>2]|0;o=f[(f[a>>2]|0)+160>>2]|0;f[j>>2]=f[e>>2];p=f[p>>2]|0;f[l>>2]=f[j>>2];Kh[o&255](a,l,p,i,m);u=q;return}case 2:{ZXa(m,c,d);_Xa(n,c,f[p>>2]|0);a=f[a+916>>2]|0;o=f[(f[a>>2]|0)+156>>2]|0;f[k>>2]=f[e>>2];p=f[p>>2]|0;f[l>>2]=f[k>>2];Sh[o&63](a,l,p,i,m,n);u=q;return}default:{u=q;return}}}function mGa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)ud();else{j=Wpb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=f[c>>2];if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;Zpb(k);return}function nGa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{e=k+-1|0;d=(e&k|0)==0;if(d)g=e&o;else if(k>>>0>o>>>0)g=o;else g=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!c)c=g;else{if(d){do{c=f[c>>2]|0;if(!c){c=g;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&e|0)==(g|0))){c=g;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=g;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(g|0)){c=g;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);m=Wpb(48)|0;f[m+8>>2]=o;d=m+28|0;e=m+12|0;g=e+36|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[d>>2]=1.0;g=m+32|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;b[g+12>>0]=0;f[m+4>>2]=o;f[m>>2]=0;g=a+12|0;h=+(((f[g>>2]|0)+1|0)>>>0);d=a+16|0;i=+n[d>>2];do if(j|i*+(k>>>0)<h){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(h/i))>>>0;c=c>>>0<j>>>0?j:c;if((c|0)==1){c=2;e=k}else if(!(c+-1&c))e=k;else{c=Meb(c)|0;e=f[l>>2]|0}if(c>>>0>e>>>0)oGa(a,c);else if(c>>>0<e>>>0){d=~~+W(+(+((f[g>>2]|0)>>>0)/+n[d>>2]))>>>0;if(e>>>0>2&(e+-1&e|0)==0)d=1<<32-(_(d+-1|0)|0);else d=Meb(d)|0;c=c>>>0<d>>>0?d:c;if(c>>>0<e>>>0)oGa(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&o;break}if(c>>>0>o>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}else e=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[m>>2]=f[c>>2];f[c>>2]=m;f[d>>2]=c;c=f[m>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[m>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=m;f[g>>2]=(f[g>>2]|0)+1;a=m;a=a+12|0;return a|0}function oGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function pGa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;i=m+8|0;k=m+4|0;l=m;if((f[a+12>>2]|0)!=2){l=f[b>>2]|0;nh[f[(f[l>>2]|0)+16>>2]&1023](l,0);u=m;return}j=a+4|0;EDa(f[j>>2]|0,1);h=f[(f[a+8>>2]|0)+220>>2]|0;g=$Xa(c,h,d,e,g)|0;f[l>>2]=g;if(!g){l=f[b>>2]|0;nh[f[(f[l>>2]|0)+12>>2]&1023](l,i)}else{c=nGa((f[j>>2]|0)+420|0,l)|0;g=c+20|0;e=f[b>>2]|0;f[b>>2]=0;a=f[g>>2]|0;f[g>>2]=e;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);g=(f[j>>2]|0)+904|0;b=(f[g>>2]|0)+-1|0;f[g>>2]=b;f[c+24>>2]=b;l=f[l>>2]|0;j=f[j>>2]|0;f[k>>2]=b;f[i>>2]=f[k>>2];lGa(j,h,l,i)}u=m;return}function qGa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l+8|0;j=l+4|0;k=l;if((f[a+12>>2]|0)!=2){k=f[b>>2]|0;nh[f[(f[k>>2]|0)+16>>2]&1023](k,0);u=l;return}i=a+4|0;EDa(f[i>>2]|0,1);g=f[(f[a+8>>2]|0)+220>>2]|0;e=hYa(c,g,d,e)|0;f[k>>2]=e;if(!e){k=f[b>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,h)}else{c=nGa((f[i>>2]|0)+420|0,k)|0;e=c+20|0;d=f[b>>2]|0;f[b>>2]=0;a=f[e>>2]|0;f[e>>2]=d;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);e=(f[i>>2]|0)+904|0;b=(f[e>>2]|0)+-1|0;f[e>>2]=b;f[c+24>>2]=b;k=f[k>>2]|0;i=f[i>>2]|0;f[j>>2]=b;f[h>>2]=f[j>>2];lGa(i,g,k,h)}u=l;return}function rGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k+8|0;i=k+4|0;j=k;if((f[a+12>>2]|0)!=2){j=f[b>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,0);u=k;return}h=a+4|0;EDa(f[h>>2]|0,1);e=f[(f[a+8>>2]|0)+220>>2]|0;d=gYa(c,e,d)|0;f[j>>2]=d;if(!d){j=f[b>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,g)}else{c=nGa((f[h>>2]|0)+420|0,j)|0;d=c+20|0;l=f[b>>2]|0;f[b>>2]=0;a=f[d>>2]|0;f[d>>2]=l;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);l=(f[h>>2]|0)+904|0;b=(f[l>>2]|0)+-1|0;f[l>>2]=b;f[c+24>>2]=b;l=f[j>>2]|0;j=f[h>>2]|0;f[i>>2]=b;f[g>>2]=f[i>>2];lGa(j,e,l,g)}u=k;return}function sGa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;q=x+4|0;r=x;if((c|0)==0?1:(f[a+12>>2]|0)!=2){u=x;return}n=a+4|0;j=f[n>>2]|0;m=j+444|0;l=f[m>>2]|0;k=l;j=f[j+440>>2]|0;a:do if((j|0)==(l|0))g=l;else{e=j;while(1){if((f[e+4>>2]|0)==(c|0))break;e=e+8|0;if((e|0)==(l|0)){g=k;break a}}g=e;if((e|0)!=(l|0)){e=g;while(1){do{h=e;i=h+8|0;e=i;if((i|0)==(l|0))break a;h=h+12|0}while((f[h>>2]|0)==(c|0));p=g;f[p>>2]=f[i>>2];f[p+4>>2]=f[h>>2];g=p+8|0}}}while(0);e=j+(g-j>>3<<3)|0;if((l|0)!=(g|0)){i=e+(k-g>>3<<3)|0;if((i|0)!=(l|0)){j=l+-8|0;g=i;h=e;while(1){f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];g=g+8|0;if((g|0)==(l|0))break;else h=h+8|0}e=e+(((j-i|0)>>>3)+1<<3)|0}if((l|0)!=(e|0))f[m>>2]=l+(~((l+-8-e|0)>>>3)<<3)}o=f[(f[a+8>>2]|0)+220>>2]|0;i=(UXa(o,c)|0)+13|0;i=b[i>>0]|0;kYa(o,c);o=f[n>>2]|0;l=f[o+424>>2]|0;if(!l){u=x;return}m=l+-1|0;n=(m&l|0)==0;if(n)h=m&c;else if(l>>>0>c>>>0)h=c;else h=(c>>>0)%(l>>>0)|0;p=o+420|0;k=f[p>>2]|0;e=f[k+(h<<2)>>2]|0;if(!e){u=x;return}e=f[e>>2]|0;if(!e){u=x;return}b:do if(n){while(1){j=f[e+4>>2]|0;g=(j|0)==(c|0);if(!(g|(j&m|0)==(h|0))){g=75;break}if(g)if((f[e+8>>2]|0)==(c|0)){w=e;break b}e=f[e>>2]|0;if(!e){g=75;break}}if((g|0)==75){u=x;return}}else{while(1){g=f[e+4>>2]|0;if((g|0)==(c|0)){if((f[e+8>>2]|0)==(c|0)){w=e;break b}}else{if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)!=(h|0)){g=75;break}}e=f[e>>2]|0;if(!e){g=75;break}}if((g|0)==75){u=x;return}}while(0);if(!(i<<24>>24)){t=o+904|0;v=(f[t>>2]|0)+-1|0;f[t>>2]=v;f[w+40>>2]=v;w=f[(f[a>>2]|0)+164>>2]|0;f[r>>2]=v;f[q>>2]=f[r>>2];wh[w&127](a,q,c);u=x;return}j=f[w>>2]|0;if(n)c=m&c;else if(l>>>0<=c>>>0)c=(c>>>0)%(l>>>0)|0;h=k+(c<<2)|0;i=f[h>>2]|0;while(1){e=f[i>>2]|0;if((e|0)==(w|0))break;else i=e}if((i|0)==(o+428|0))g=49;else{e=f[i+4>>2]|0;if(n)e=e&m;else if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)==(c|0)){s=j;g=57}else g=49}do if((g|0)==49){if(j|0){e=f[j+4>>2]|0;if(n)g=e&m;else if(e>>>0<l>>>0)g=e;else g=(e>>>0)%(l>>>0)|0;if((g|0)==(c|0)){d=e;v=j;g=59;break}}f[h>>2]=0;s=f[w>>2]|0;g=57}while(0);if((g|0)==57){e=s;if(!s)t=e;else{d=f[s+4>>2]|0;v=e;g=59}}if((g|0)==59){if(n)d=d&m;else if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)==(c|0))t=v;else{f[(f[p>>2]|0)+(d<<2)>>2]=i;t=f[w>>2]|0}}f[i>>2]=t;f[w>>2]=0;v=o+432|0;f[v>>2]=(f[v>>2]|0)+-1;v=w+32|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[w+20>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;v=e+12|0;g=f[v>>2]|0;f[v>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);Zpb(e)}while((d|0)!=0);v=w+12|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0)Zpb(d);Zpb(w);u=x;return}function tGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;o=q+20|0;p=q+4|0;m=q;n=q+16|0;if((f[a+12>>2]|0)!=2){p=f[c>>2]|0;nh[f[(f[p>>2]|0)+16>>2]&1023](p,0);u=q;return}if(!d){p=f[c>>2]|0;nh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}l=a+4|0;g=f[l>>2]|0;j=f[g+424>>2]|0;a:do if(j|0){i=j+-1|0;h=(i&j|0)==0;if(h)k=i&d;else if(j>>>0>d>>>0)k=d;else k=(d>>>0)%(j>>>0)|0;g=f[(f[g+420>>2]|0)+(k<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){b:do if(h)while(1){j=f[g+4>>2]|0;h=(j|0)==(d|0);if(!(h|(j&i|0)==(k|0)))break a;if(h)if((f[g+8>>2]|0)==(d|0))break b;g=f[g>>2]|0;if(!g)break a}else while(1){h=f[g+4>>2]|0;if((h|0)==(d|0)){if((f[g+8>>2]|0)==(d|0))break b}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0))break a}g=f[g>>2]|0;if(!g)break a}while(0);h=g+12|0;if(f[g+40>>2]|0){p=f[c>>2]|0;nh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}g=f[(f[a+8>>2]|0)+220>>2]|0;if(!(iYa(g,d)|0)){p=f[c>>2]|0;nh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}f[p>>2]=0;j=p+4|0;f[j>>2]=0;f[p+8>>2]=0;nYa(g,d,e,p);do if((f[p>>2]|0)==(f[j>>2]|0)){k=(UXa(g,d)|0)+13|0;if(!(b[k>>0]|0)){k=(f[l>>2]|0)+904|0;l=(f[k>>2]|0)+-1|0;f[k>>2]=l;f[m>>2]=l;l=uGa(h,m)|0;k=f[c>>2]|0;f[c>>2]=0;g=f[l>>2]|0;f[l>>2]=k;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);c=f[(f[a>>2]|0)+168>>2]|0;f[n>>2]=f[m>>2];f[o>>2]=f[n>>2];Eh[c&255](a,o,d,e);break}i=o+4|0;n=Wpb(8)|0;f[o>>2]=n;g=n+8|0;f[o+8>>2]=g;f[n>>2]=0;f[n+4>>2]=-1;f[i>>2]=g;g=f[c>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,o);g=f[o>>2]|0;if(g|0){h=f[i>>2]|0;if((h|0)!=(g|0))f[i>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}}else{o=f[c>>2]|0;nh[f[(f[o>>2]|0)+8>>2]&1023](o,p)}while(0);g=f[p>>2]|0;if(g|0){h=f[j>>2]|0;if((h|0)!=(g|0))f[j>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}u=q;return}}}while(0);p=f[c>>2]|0;nh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}function uGa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;vGa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function vGa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){wGa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;wGa(a,b);return}function wGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function xGa(a,b,c){a=a|0;b=b|0;c=c|0;wh[f[(f[a>>2]|0)+172>>2]&127](a,b,c);return}function yGa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if(Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0)return;a=f[a+4>>2]|0;w=a+624|0;if(!b)return;t=a+628|0;u=a+636|0;v=a+640|0;s=a+632|0;r=0;do{l=c+(r<<3)|0;j=f[l>>2]|0;a:do if(j|0){k=f[c+(r<<3)+4>>2]|0;p=(j<<6)+-1640531527+(j>>>2)+k^j;m=f[t>>2]|0;o=(m|0)==0;b:do if(o)a=0;else{i=m+-1|0;h=(i&m|0)==0;if(h)a=p&i;else if(p>>>0<m>>>0)a=p;else a=(p>>>0)%(m>>>0)|0;d=f[(f[w>>2]|0)+(a<<2)>>2]|0;if(d){d=f[d>>2]|0;if(d){if(h)while(1){h=f[d+4>>2]|0;if(!((h|0)==(p|0)|(h&i|0)==(a|0)))break b;if((f[d+8>>2]|0)==(j|0))if((f[d+12>>2]|0)==(k|0))break a;d=f[d>>2]|0;if(!d)break b}do{h=f[d+4>>2]|0;if((h|0)!=(p|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(a|0))break b}if((f[d+8>>2]|0)==(j|0))if((f[d+12>>2]|0)==(k|0))break a;d=f[d>>2]|0}while((d|0)!=0)}}}while(0);i=Wpb(16)|0;j=l;k=f[j+4>>2]|0;l=i+8|0;f[l>>2]=f[j>>2];f[l+4>>2]=k;f[i+4>>2]=p;f[i>>2]=0;e=+(((f[u>>2]|0)+1|0)>>>0);g=+n[v>>2];do if(o|g*+(m>>>0)<e){a=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;d=~~+W(+(e/g))>>>0;Jfa(w,a>>>0<d>>>0?d:a);a=f[t>>2]|0;d=a+-1|0;if(!(d&a)){h=a;a=d&p;break}if(p>>>0<a>>>0){h=a;a=p}else{h=a;a=(p>>>0)%(a>>>0)|0}}else h=m;while(0);d=(f[w>>2]|0)+(a<<2)|0;a=f[d>>2]|0;if(!a){f[i>>2]=f[s>>2];f[s>>2]=i;f[d>>2]=s;a=f[i>>2]|0;if(a|0){a=f[a+4>>2]|0;d=h+-1|0;if(!(d&h))a=a&d;else if(a>>>0>=h>>>0)a=(a>>>0)%(h>>>0)|0;a=(f[w>>2]|0)+(a<<2)|0;q=37}}else{f[i>>2]=f[a>>2];q=37}if((q|0)==37){q=0;f[a>>2]=i}f[u>>2]=(f[u>>2]|0)+1}while(0);r=r+1|0}while((r|0)!=(b|0));return}function zGa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0)return;a=f[a+4>>2]|0;u=a+644|0;if(!b)return;q=a+580|0;r=a+648|0;s=a+656|0;t=a+660|0;p=a+652|0;o=0;do{l=c+(o<<3)+4|0;AGa(q,l)|0;l=f[l>>2]|0;j=f[r>>2]|0;k=(j|0)==0;a:do if(k){a=0;m=20}else{i=j+-1|0;e=(i&j|0)==0;if(e)a=i&l;else if(l>>>0<j>>>0)a=l;else a=(l>>>0)%(j>>>0)|0;d=f[(f[u>>2]|0)+(a<<2)>>2]|0;if(!d)m=20;else{if(e)while(1){d=f[d>>2]|0;if(!d){m=20;break a}e=f[d+4>>2]|0;if(!((e|0)==(l|0)|(e&i|0)==(a|0))){m=20;break a}if((f[d+8>>2]|0)==(l|0))break a}do{d=f[d>>2]|0;if(!d){m=20;break a}e=f[d+4>>2]|0;if((e|0)!=(l|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(a|0)){m=20;break a}}}while((f[d+8>>2]|0)!=(l|0))}}while(0);if((m|0)==20){m=0;i=Wpb(12)|0;f[i+8>>2]=l;f[i+4>>2]=l;f[i>>2]=0;g=+(((f[s>>2]|0)+1|0)>>>0);h=+n[t>>2];do if(k|h*+(j>>>0)<g){a=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(g/h))>>>0;Hia(u,a>>>0<d>>>0?d:a);a=f[r>>2]|0;d=a+-1|0;if(!(d&a)){e=a;a=d&l;break}if(l>>>0<a>>>0){e=a;a=l}else{e=a;a=(l>>>0)%(a>>>0)|0}}else e=j;while(0);d=(f[u>>2]|0)+(a<<2)|0;a=f[d>>2]|0;if(!a){f[i>>2]=f[p>>2];f[p>>2]=i;f[d>>2]=p;a=f[i>>2]|0;if(a|0){a=f[a+4>>2]|0;d=e+-1|0;if(!(d&e))a=a&d;else if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;a=(f[u>>2]|0)+(a<<2)|0;m=33}}else{f[i>>2]=f[a>>2];m=33}if((m|0)==33){m=0;f[a>>2]=i}f[s>>2]=(f[s>>2]|0)+1}o=o+1|0}while((o|0)!=(b|0));return}function AGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){a=0;return a|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){a=0;return a|0}b=f[b>>2]|0;if(!b){a=0;return a|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=48;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=48;break}}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}Zpb(m);n=1;return n|0}function BGa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if(Ng[f[(f[a>>2]|0)+32>>2]&511](a)|0)return;a=f[a+4>>2]|0;v=a+580|0;if(!b)return;r=a+584|0;s=a+592|0;t=a+596|0;u=a+588|0;p=a+644|0;o=0;do{q=c+(o<<3)+4|0;l=f[q>>2]|0;j=f[r>>2]|0;k=(j|0)==0;a:do if(k){a=0;m=20}else{i=j+-1|0;e=(i&j|0)==0;if(e)a=i&l;else if(l>>>0<j>>>0)a=l;else a=(l>>>0)%(j>>>0)|0;d=f[(f[v>>2]|0)+(a<<2)>>2]|0;if(!d)m=20;else{if(e)while(1){d=f[d>>2]|0;if(!d){m=20;break a}e=f[d+4>>2]|0;if(!((e|0)==(l|0)|(e&i|0)==(a|0))){m=20;break a}if((f[d+8>>2]|0)==(l|0))break a}do{d=f[d>>2]|0;if(!d){m=20;break a}e=f[d+4>>2]|0;if((e|0)!=(l|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(a|0)){m=20;break a}}}while((f[d+8>>2]|0)!=(l|0))}}while(0);if((m|0)==20){m=0;i=Wpb(12)|0;f[i+8>>2]=l;f[i+4>>2]=l;f[i>>2]=0;g=+(((f[s>>2]|0)+1|0)>>>0);h=+n[t>>2];do if(k|h*+(j>>>0)<g){a=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(g/h))>>>0;Hia(v,a>>>0<d>>>0?d:a);a=f[r>>2]|0;d=a+-1|0;if(!(d&a)){e=a;a=d&l;break}if(l>>>0<a>>>0){e=a;a=l}else{e=a;a=(l>>>0)%(a>>>0)|0}}else e=j;while(0);d=(f[v>>2]|0)+(a<<2)|0;a=f[d>>2]|0;if(!a){f[i>>2]=f[u>>2];f[u>>2]=i;f[d>>2]=u;a=f[i>>2]|0;if(a|0){a=f[a+4>>2]|0;d=e+-1|0;if(!(d&e))a=a&d;else if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;a=(f[v>>2]|0)+(a<<2)|0;m=33}}else{f[i>>2]=f[a>>2];m=33}if((m|0)==33){m=0;f[a>>2]=i}f[s>>2]=(f[s>>2]|0)+1}AGa(p,q)|0;o=o+1|0}while((o|0)!=(b|0));return}function CGa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0;if(((f[a+12>>2]|0)+-1|0)>>>0<2){Fh[f[(f[a>>2]|0)+44>>2]&3](a,b,c,d,e);return}j=a+4|0;a=f[j>>2]|0;k=a+664|0;g=f[k>>2]|0;i=a+668|0;if(!g)a=a+672|0;else{h=f[i>>2]|0;if((h|0)!=(g|0))f[i>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g);a=a+672|0;f[a>>2]=0;f[i>>2]=0;f[k>>2]=0}f[k>>2]=f[b>>2];k=b+4|0;f[i>>2]=f[k>>2];i=b+8|0;f[a>>2]=f[i>>2];f[i>>2]=0;f[k>>2]=0;f[b>>2]=0;b=f[j>>2]|0;f[b+676>>2]=c;f[b+680>>2]=d;n[b+684>>2]=e;return}function DGa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;p=0;t=u;u=u+3296|0;d=f[b>>2]|0;if((c|0)==17&(d|0)==0){q=f[(f[(f[a+4>>2]|0)+492>>2]|0)+16>>2]|0;f[b>>2]=q}else q=d;s=f[(a+4|0)>>2]|0;if(q>>>0<=(f[s+900>>2]|0)>>>0){if(q>>>0<=(f[s+908>>2]|0)>>>0){u=t;return}i=f[(f[a+8>>2]|0)+220>>2]|0;b=f[(s+532|0)>>2]|0;do if(!b){k=s+532|0;l=s+532|0}else{e=s+532|0;a:while(1){d=f[b+16>>2]|0;do if(d>>>0>q>>>0)p=11;else{if(d>>>0>=q>>>0){d=f[b+20>>2]|0;if((d|0)>(c|0)){p=11;break}if((d|0)>=(c|0)){p=16;break a}}j=b+4|0;d=f[j>>2]|0;if(!d){p=15;break a}else{h=j;g=d}}while(0);if((p|0)==11){p=0;d=f[b>>2]|0;if(!d){p=12;break}else{h=b;g=d}}e=h;b=g}if((p|0)==12){k=b;l=b;break}else if((p|0)==15){k=b;l=j;break}else if((p|0)==16){k=b;l=e;break}}while(0);if(!(f[l>>2]|0)){b=Wpb(24)|0;f[(b+16|0)>>2]=q;f[(b+16|0)+4>>2]=c;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=k;f[l>>2]=b;d=f[f[(s+528|0)>>2]>>2]|0;if(d){f[(s+528|0)>>2]=d;b=f[l>>2]|0}tEa(f[s+532>>2]|0,b);f[(s+536|0)>>2]=(f[(s+536|0)>>2]|0)+1}DDa(s,a,i);u=t;return}if(q>>>0>=(f[s+912>>2]|0)>>>0){u=t;return}r=f[(f[a+8>>2]|0)+220>>2]|0;f[t>>2]=q;b:do{m=1;l=c|0;if(m){m=0;switch(l|0){case 14:{e=f[(s+364|0)>>2]|0;if(e|0){if(!((e+-1|0)&e))g=(e+-1|0)&q;else if(e>>>0>q>>>0)g=q;else g=(q>>>0)%(e>>>0)|0;b=f[(f[(s+360|0)>>2]|0)+(g<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){c:do if(!((e+-1|0)&e))while(1){c=f[b+4>>2]|0;d=(c|0)==(q|0);if(!(d|(c&(e+-1|0)|0)==(g|0)))break b;if(d)if((f[b+8>>2]|0)==(q|0)){j=b;break c}b=f[b>>2]|0;if(!b)break b}else while(1){d=f[b+4>>2]|0;if((d|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){j=b;break c}}else{if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(g|0))break b}b=f[b>>2]|0;if(!b)break b}while(0);k=j+12|0;e=f[k>>2]|0;nh[f[(f[e>>2]|0)+8>>2]&1023](e,t+8|0);e=f[(s+364|0)>>2]|0;b=f[j+4>>2]|0;g=((e+-1|0)&e|0)==0;if(g)h=(e+-1|0)&b;else if(b>>>0<e>>>0)h=b;else h=(b>>>0)%(e>>>0)|0;d=(f[(s+360|0)>>2]|0)+(h<<2)|0;i=f[d>>2]|0;while(1){b=f[i>>2]|0;if((b|0)==(j|0))break;else i=b}if((i|0)==(s+368|0))p=56;else{b=f[i+4>>2]|0;if(g)b=b&(e+-1|0);else if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0;if((b|0)==(h|0))o=j;else p=56}do if((p|0)==56){b=f[j>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&(e+-1|0);else if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0;if((b|0)==(h|0)){o=j;break}}f[d>>2]=0;o=j}while(0);b=f[o>>2]|0;if(b){d=f[b+4>>2]|0;if(g)d=d&(e+-1|0);else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(h|0)){f[(f[(s+360|0)>>2]|0)+(d<<2)>>2]=i;b=f[j>>2]|0}}f[i>>2]=b;f[o>>2]=0;f[(s+372|0)>>2]=(f[(s+372|0)>>2]|0)+-1;b=f[k>>2]|0;f[k>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(j)}}}break}default:m=1}}f[t+48>>2]=a;f[t+1200>>2]=s;f[t+1232>>2]=q;f[t+2352>>2]=r;f[t+3104>>2]=p;f[t+3112>>2]=m;f[t+3120>>2]=l;f[t+3152>>2]=0;f[t+3156>>2]=0;NIa(t);p=f[t+3104>>2]|0;m=f[t+3112>>2]|0;G=f[t+3152>>2]|0;D=f[t+3156>>2]|0;H=+n[t+3156>>2];f[t+3152>>2]=0;f[t+3156>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 12:break b}if(m){m=0;switch(l|0){case 11:{b=f[s+428>>2]|0;if(b|0){o=b;f[t+656>>2]=o;f[t+1200>>2]=s;f[t+1232>>2]=q;f[t+2352>>2]=r;f[t+3104>>2]=p;f[t+3144>>2]=0;f[t+3148>>2]=0;MIa(t);G=f[t+3144>>2]|0;D=f[t+3148>>2]|0;H=+n[t+3148>>2];f[t+3144>>2]=0;f[t+3148>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 8:break b}}break}default:m=1}}if(m)switch(l|0){case 17:{g=f[(s+496|0)>>2]|0;if(g|0){e=s+496|0;d=g;d:while(1){b=d;while(1){if((f[b+16>>2]|0)>>>0<=q>>>0)break;b=f[b+4>>2]|0;if(!b)break d}d=f[b>>2]|0;if(!d){e=b;break}else e=b}if((e|0)!=(s+496|0|0))if((f[e+16>>2]|0)>>>0>=q>>>0){b=f[e+4>>2]|0;if(!b){d=e+8|0;b=f[d>>2]|0;if((f[b>>2]|0)!=(e|0))do{q=f[d>>2]|0;d=q+8|0;b=f[d>>2]|0}while((f[b>>2]|0)!=(q|0))}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}if((f[(s+492|0)>>2]|0)==(e|0))f[(s+492|0)>>2]=b;f[(s+500|0)>>2]=(f[(s+500|0)>>2]|0)+-1;oEa(g,e);Zpb(e);if(!(f[(s+500|0)>>2]|0)){b=f[(s+440|0)>>2]|0;d=f[s+444>>2]|0;if((b|0)==(d|0))break b;while(1){s=f[b+4>>2]|0;q=f[(a+4|0)>>2]|0;f[(t+4|0)>>2]=f[b>>2];f[(t+8|0)>>2]=f[(t+4|0)>>2];lGa(q,r,s,t+8|0);b=b+8|0;if((b|0)==(d|0))break b}}i=f[(f[(s+492|0)>>2]|0)+16>>2]|0;b=f[(s+440|0)>>2]|0;d=f[(s+444|0)>>2]|0;if((b|0)!=(d|0)){e=d;while(1){d=f[b>>2]|0;if(i>>>0<d>>>0){h=f[b+4>>2]|0;q=f[(a+4|0)>>2]|0;f[(t+4|0)>>2]=d;f[(t+8|0)>>2]=f[(t+4|0)>>2];lGa(q,r,h,t+8|0);h=b+8|0;d=f[(s+444|0)>>2]|0;if((h|0)==(d|0))e=d+-8|0;else{e=h;g=b;while(1){f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];e=e+8|0;if((e|0)==(d|0))break;else g=g+8|0}b=b+((((d+-8|0)-h|0)>>>3)+1<<3)|0;e=d+-8|0}e=d+(~((e-b|0)>>>3)<<3)|0;if((d|0)==(b|0))b=h;else{f[(s+444|0)>>2]=e;b=h;d=e}}else{b=b+8|0;d=e}if((b|0)==(d|0))break;else e=d}}}}break}default:{}}}while(0);u=t;return}function EGa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(36)|0;f[h+8>>2]=m;l=h+12|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;f[l+20>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;GGa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function FGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){a=0;return a|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){a=0;return a|0}b=f[b>>2]|0;if(!b){a=0;return a|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=48;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=48;break}}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}Zpb(m);n=1;return n|0}function GGa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){HGa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;HGa(a,b);return}function HGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function IGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;k=m+4|0;l=m;switch(d|0){case 1:{wh[f[(f[a>>2]|0)+16>>2]&127](a,c,e);u=m;return}case 3:{JGa(a,c,e);u=m;return}case 4:{KGa(a,c,e);u=m;return}case 5:{LGa(a,c,e,0);u=m;return}case 7:{MGa(f[a+4>>2]|0,f[(f[a+8>>2]|0)+220>>2]|0,c,e);u=m;return}case 8:{NGa(a,c,e);u=m;return}case 10:{OGa(a,c,e);u=m;return}case 9:{j=a+4|0;h=VCa((f[j>>2]|0)+860|0,c)|0;g=h+16|0;if(f[g>>2]|0){d=h+12|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+8>>2]|0;if(d|0){e=h+4|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+36|0;if(f[g>>2]|0){d=h+32|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+28>>2]|0;if(d|0){e=h+24|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+56|0;if(f[g>>2]|0){d=h+52|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+48>>2]|0;if(d|0){e=h+44|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+76|0;if(f[g>>2]|0){d=h+72|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+68>>2]|0;if(d|0){e=h+64|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+96|0;if(f[g>>2]|0){d=h+92|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+88>>2]|0;if(d|0){e=h+84|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+116|0;if(f[g>>2]|0){d=h+112|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+108>>2]|0;if(d|0){e=h+104|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+136|0;if(f[g>>2]|0){d=h+132|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+128>>2]|0;if(d|0){e=h+124|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}g=h+156|0;if(f[g>>2]|0){d=h+152|0;a=f[d>>2]|0;if(a|0)do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);f[d>>2]=0;d=f[h+148>>2]|0;if(d|0){e=h+144|0;a=0;do{f[(f[e>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[g>>2]=0}b[h>>0]=3;h=k+4|0;i=k+8|0;e=f[c>>2]|0;d=f[j>>2]|0;f[k>>2]=9;f[h>>2]=3;f[i>>2]=e;d=PGa(d+400|0,k)|0;g=d;if(d|0){a=f[d+20>>2]|0;d=f[d+24>>2]|0;if((a|0)!=(d|0))do{n=f[a>>2]|0;o=f[(f[n>>2]|0)+12>>2]|0;f[k>>2]=e;nh[o&1023](n,k);a=a+4|0}while((a|0)!=(d|0));o=(f[j>>2]|0)+400|0;f[l>>2]=g;f[k>>2]=f[l>>2];QGa(o,k)|0}g=f[c>>2]|0;d=f[j>>2]|0;f[k>>2]=9;f[h>>2]=1;f[i>>2]=g;d=PGa(d+400|0,k)|0;e=d;if(!d){u=m;return}a=f[d+20>>2]|0;d=f[d+24>>2]|0;if((a|0)!=(d|0))do{o=f[a>>2]|0;n=f[(f[o>>2]|0)+12>>2]|0;f[k>>2]=g;nh[n&1023](o,k);a=a+4|0}while((a|0)!=(d|0));o=(f[j>>2]|0)+400|0;f[l>>2]=e;f[k>>2]=f[l>>2];QGa(o,k)|0;u=m;return}default:{u=m;return}}}function JGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=f[a+4>>2]|0;j=f[c>>2]|0;i=f[a+864>>2]|0;if(!i)return;g=i+-1|0;e=(g&i|0)==0;if(e)k=g&j;else if(i>>>0>j>>>0)k=j;else k=(j>>>0)%(i>>>0)|0;a=f[(f[a+860>>2]|0)+(k<<2)>>2]|0;if(!a)return;a=f[a>>2]|0;if(!a)return;a:do if(e){while(1){l=f[a+4>>2]|0;e=(l|0)==(j|0);if(!(e|(l&g|0)==(k|0))){m=69;break}if(e)if((f[a+8>>2]|0)==(j|0)){o=a;break a}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){o=a;break a}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(k|0)){m=69;break}}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}while(0);l=o+76|0;if((h[o+12>>0]|0)>1)return;switch(d<<24>>24){case 0:{e=f[c+4>>2]|0;j=f[o+80>>2]|0;if(!j)return;k=j+-1|0;c=(k&j|0)==0;if(c)g=k&e;else if(j>>>0>e>>>0)g=e;else g=(e>>>0)%(j>>>0)|0;i=f[l>>2]|0;d=f[i+(g<<2)>>2]|0;if(!d)return;d=f[d>>2]|0;if(!d)return;b:do if(c){while(1){q=f[d+4>>2]|0;a=(q|0)==(e|0);if(!(a|(q&k|0)==(g|0))){m=69;break}if(a)if((f[d+8>>2]|0)==(e|0)){p=d;break b}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}else{while(1){a=f[d+4>>2]|0;if((a|0)==(e|0)){if((f[d+8>>2]|0)==(e|0)){p=d;break b}}else{if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(g|0)){m=69;break}}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}while(0);if(c)e=k&e;else if(j>>>0<=e>>>0)e=(e>>>0)%(j>>>0)|0;a=i+(e<<2)|0;g=f[a>>2]|0;while(1){d=f[g>>2]|0;if((d|0)==(p|0))break;else g=d}if((g|0)==(o+84|0))m=52;else{d=f[g+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0))n=p;else m=52}do if((m|0)==52){d=f[p>>2]|0;if(d|0){d=f[d+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0)){n=p;break}}f[a>>2]=0;n=p}while(0);a=f[n>>2]|0;d=a;if(a){a=f[a+4>>2]|0;if(c)a=a&k;else if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(e|0)){f[(f[l>>2]|0)+(a<<2)>>2]=g;d=f[p>>2]|0}}f[g>>2]=d;f[n>>2]=0;q=o+88|0;f[q>>2]=(f[q>>2]|0)+-1;Zpb(p);return}case 2:case 1:break;default:d=2}q=TCa(l,c+4|0)|0;b[q>>0]=d;return}function KGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=f[a+4>>2]|0;j=f[c>>2]|0;i=f[a+864>>2]|0;if(!i)return;g=i+-1|0;e=(g&i|0)==0;if(e)k=g&j;else if(i>>>0>j>>>0)k=j;else k=(j>>>0)%(i>>>0)|0;a=f[(f[a+860>>2]|0)+(k<<2)>>2]|0;if(!a)return;a=f[a>>2]|0;if(!a)return;a:do if(e){while(1){l=f[a+4>>2]|0;e=(l|0)==(j|0);if(!(e|(l&g|0)==(k|0))){m=69;break}if(e)if((f[a+8>>2]|0)==(j|0)){o=a;break a}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){o=a;break a}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(k|0)){m=69;break}}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}while(0);l=o+96|0;if((h[o+12>>0]|0)>1)return;switch(d<<24>>24){case 0:{e=f[c+4>>2]|0;j=f[o+100>>2]|0;if(!j)return;k=j+-1|0;c=(k&j|0)==0;if(c)g=k&e;else if(j>>>0>e>>>0)g=e;else g=(e>>>0)%(j>>>0)|0;i=f[l>>2]|0;d=f[i+(g<<2)>>2]|0;if(!d)return;d=f[d>>2]|0;if(!d)return;b:do if(c){while(1){q=f[d+4>>2]|0;a=(q|0)==(e|0);if(!(a|(q&k|0)==(g|0))){m=69;break}if(a)if((f[d+8>>2]|0)==(e|0)){p=d;break b}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}else{while(1){a=f[d+4>>2]|0;if((a|0)==(e|0)){if((f[d+8>>2]|0)==(e|0)){p=d;break b}}else{if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(g|0)){m=69;break}}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}while(0);if(c)e=k&e;else if(j>>>0<=e>>>0)e=(e>>>0)%(j>>>0)|0;a=i+(e<<2)|0;g=f[a>>2]|0;while(1){d=f[g>>2]|0;if((d|0)==(p|0))break;else g=d}if((g|0)==(o+104|0))m=52;else{d=f[g+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0))n=p;else m=52}do if((m|0)==52){d=f[p>>2]|0;if(d|0){d=f[d+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0)){n=p;break}}f[a>>2]=0;n=p}while(0);a=f[n>>2]|0;d=a;if(a){a=f[a+4>>2]|0;if(c)a=a&k;else if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(e|0)){f[(f[l>>2]|0)+(a<<2)>>2]=g;d=f[p>>2]|0}}f[g>>2]=d;f[n>>2]=0;q=o+108|0;f[q>>2]=(f[q>>2]|0)+-1;Zpb(p);return}case 2:case 1:break;default:d=2}q=TCa(l,c+4|0)|0;b[q>>0]=d;return}function LGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;p=s+8|0;q=s;r=a+4|0;g=f[r>>2]|0;n=f[c>>2]|0;k=f[g+864>>2]|0;a:do if(k|0){j=k+-1|0;i=(j&k|0)==0;if(i)l=j&n;else if(k>>>0>n>>>0)l=n;else l=(n>>>0)%(k>>>0)|0;g=f[(f[g+860>>2]|0)+(l<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){b:do if(i)while(1){o=f[g+4>>2]|0;i=(o|0)==(n|0);if(!(i|(o&j|0)==(l|0)))break a;if(i)if((f[g+8>>2]|0)==(n|0))break b;g=f[g>>2]|0;if(!g)break a}else while(1){i=f[g+4>>2]|0;if((i|0)==(n|0)){if((f[g+8>>2]|0)==(n|0))break b}else{if(i>>>0>=k>>>0)i=(i>>>0)%(k>>>0)|0;if((i|0)!=(l|0))break a}g=f[g>>2]|0;if(!g)break a}while(0);o=g+16|0;if((h[g+12>>0]|0)<=1){switch(d<<24>>24){case 0:{m=c+4|0;l=f[m>>2]|0;j=f[g+20>>2]|0;if(!j)break a;i=j+-1|0;g=(i&j|0)==0;if(g)k=i&l;else if(j>>>0>l>>>0)k=l;else k=(l>>>0)%(j>>>0)|0;d=f[(f[o>>2]|0)+(k<<2)>>2]|0;if(!d)break a;d=f[d>>2]|0;if(!d)break a;c:do if(g)while(1){j=f[d+4>>2]|0;g=(j|0)==(l|0);if(!(g|(j&i|0)==(k|0)))break a;if(g)if((f[d+8>>2]|0)==(l|0)){k=d;break c}d=f[d>>2]|0;if(!d)break a}else while(1){g=f[d+4>>2]|0;if((g|0)==(l|0)){if((f[d+8>>2]|0)==(l|0)){k=d;break c}}else{if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(k|0))break a}d=f[d>>2]|0;if(!d)break a}while(0);if(b[k+12>>0]|0){i=_wa(f[(f[a+8>>2]|0)+220>>2]|0,n)|0;j=f[m>>2]|0;d=f[i+24>>2]|0;g=d+-1|0;if(!(g&d)){d=f[(f[i+20>>2]|0)+((g&j)<<2)>>2]|0;while(1){d=f[d>>2]|0;if((j|0)!=(f[d+4>>2]|0))continue;if((f[d+8>>2]|0)==(j|0))break}}else{if(j>>>0<d>>>0)d=j;else d=(j>>>0)%(d>>>0)|0;d=f[(f[i+20>>2]|0)+(d<<2)>>2]|0;while(1){d=f[d>>2]|0;if((j|0)!=(f[d+4>>2]|0))continue;if((f[d+8>>2]|0)==(j|0))break}}d=f[(f[d+16>>2]|0)+4>>2]|0;if(!d)break a;if(!(b[(f[d+44>>2]|0)+144>>0]&2))break a}tDa(o,k)|0;break a}case 2:case 1:break;default:d=2}o=(OFa(o,c+4|0)|0)+1|0;b[o>>0]=d}}}}while(0);if(!e){u=s;return}l=f[(f[a+8>>2]|0)+220>>2]|0;m=kxa(l)|0;n=_wa(l,f[c>>2]|0)|0;d=f[n+8>>2]|0;n=f[n+12>>2]|0;if((d|0)==(n|0)){u=s;return}i=c+4|0;j=p+4|0;k=q+4|0;g=d;do{d=f[i>>2]|0;f[p>>2]=f[(f[g>>2]|0)+4>>2];f[j>>2]=d;mwa(q,l,p);pja(m,f[q>>2]|0);d=f[(f[r>>2]|0)+428>>2]|0;if(d|0)do{lYa(l,f[d+8>>2]|0,f[q>>2]|0);d=f[d>>2]|0}while((d|0)!=0);d=f[k>>2]|0;if(d|0)Ppb(d);g=g+8|0}while((g|0)!=(n|0));u=s;return}function MGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+32|0;t=x+16|0;v=x+8|0;w=x;l=f[d>>2]|0;k=f[a+864>>2]|0;if(!k){u=x;return}j=k+-1|0;i=(j&k|0)==0;if(i)m=j&l;else if(k>>>0>l>>>0)m=l;else m=(l>>>0)%(k>>>0)|0;g=f[(f[a+860>>2]|0)+(m<<2)>>2]|0;if(!g){u=x;return}g=f[g>>2]|0;if(!g){u=x;return}a:do if(i){while(1){p=f[g+4>>2]|0;i=(p|0)==(l|0);if(!(i|(p&j|0)==(m|0))){q=80;break}if(i)if((f[g+8>>2]|0)==(l|0)){s=g;break a}g=f[g>>2]|0;if(!g){q=80;break}}if((q|0)==80){u=x;return}}else{while(1){i=f[g+4>>2]|0;if((i|0)==(l|0)){if((f[g+8>>2]|0)==(l|0)){s=g;break a}}else{if(i>>>0>=k>>>0)i=(i>>>0)%(k>>>0)|0;if((i|0)!=(m|0)){q=80;break}}g=f[g>>2]|0;if(!g){q=80;break}}if((q|0)==80){u=x;return}}while(0);p=s+136|0;if((h[s+12>>0]|0)>1){u=x;return}switch(e<<24>>24){case 0:{j=f[d+4>>2]|0;m=f[s+140>>2]|0;b:do if(m|0){n=m+-1|0;o=(n&m|0)==0;if(o)i=n&j;else if(m>>>0>j>>>0)i=j;else i=(j>>>0)%(m>>>0)|0;k=f[p>>2]|0;e=f[k+(i<<2)>>2]|0;if(e|0){e=f[e>>2]|0;if(e|0){c:do if(o)while(1){l=f[e+4>>2]|0;g=(l|0)==(j|0);if(!(g|(l&n|0)==(i|0)))break b;if(g)if((f[e+8>>2]|0)==(j|0)){l=e;break c}e=f[e>>2]|0;if(!e)break b}else while(1){g=f[e+4>>2]|0;if((g|0)==(j|0)){if((f[e+8>>2]|0)==(j|0)){l=e;break c}}else{if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(i|0))break b}e=f[e>>2]|0;if(!e)break b}while(0);if(o)j=n&j;else if(m>>>0<=j>>>0)j=(j>>>0)%(m>>>0)|0;g=k+(j<<2)|0;i=f[g>>2]|0;while(1){e=f[i>>2]|0;if((e|0)==(l|0))break;else i=e}if((i|0)==(s+144|0))q=52;else{e=f[i+4>>2]|0;if(o)e=e&n;else if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;if((e|0)==(j|0))r=l;else q=52}do if((q|0)==52){e=f[l>>2]|0;if(e|0){e=f[e+4>>2]|0;do if(o)e=e&n;else{if(e>>>0<m>>>0)break;e=(e>>>0)%(m>>>0)|0}while(0);if((e|0)==(j|0)){r=l;break}}f[g>>2]=0;r=l}while(0);g=f[r>>2]|0;e=g;if(g){g=f[g+4>>2]|0;if(o)g=g&n;else if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(j|0)){f[(f[p>>2]|0)+(g<<2)>>2]=i;e=f[l>>2]|0}}f[i>>2]=e;f[r>>2]=0;s=s+148|0;f[s>>2]=(f[s>>2]|0)+-1;Zpb(l)}}}while(0);lwa(t,c,d);l=f[(f[t>>2]|0)+44>>2]|0;e=f[l+108>>2]|0;l=f[l+112>>2]|0;if((e|0)!=(l|0)){m=w+4|0;j=a+916|0;k=v+4|0;do{g=f[e>>2]|0;i=g+116|0;if(!(f[g+196>>2]&131072)){Bva(v,c,f[i>>2]|0);g=f[g+120>>2]|0;f[w>>2]=f[(f[v>>2]|0)+8>>2];f[m>>2]=g;LGa(f[j>>2]|0,w,0,1);g=f[k>>2]|0;if(g|0)Ppb(g)}else LGa(f[j>>2]|0,i,0,1);e=e+4|0}while((e|0)!=(l|0))}e=f[t+4>>2]|0;if(e|0)Ppb(e);u=x;return}case 2:case 1:break;default:e=2}w=TCa(p,d+4|0)|0;b[w>>0]=e;u=x;return}function NGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p;e=f[a+4>>2]|0;k=f[c>>2]|0;j=f[e+864>>2]|0;if(!j){u=p;return}i=j+-1|0;g=(i&j|0)==0;if(g)l=i&k;else if(j>>>0>k>>>0)l=k;else l=(k>>>0)%(j>>>0)|0;e=f[(f[e+860>>2]|0)+(l<<2)>>2]|0;if(!e){u=p;return}e=f[e>>2]|0;if(!e){u=p;return}a:do if(g){while(1){j=f[e+4>>2]|0;g=(j|0)==(k|0);if(!(g|(j&i|0)==(l|0))){e=47;break}if(g)if((f[e+8>>2]|0)==(k|0)){m=e;break a}e=f[e>>2]|0;if(!e){e=47;break}}if((e|0)==47){u=p;return}}else{while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0)){m=e;break a}}else{if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(l|0)){e=47;break}}e=f[e>>2]|0;if(!e){e=47;break}}if((e|0)==47){u=p;return}}while(0);l=m+156|0;if((h[m+12>>0]|0)>1){u=p;return}switch(d<<24>>24){case 0:{k=f[c+4>>2]|0;i=f[m+160>>2]|0;if(!i){u=p;return}g=i+-1|0;e=(g&i|0)==0;if(e)j=g&k;else if(i>>>0>k>>>0)j=k;else j=(k>>>0)%(i>>>0)|0;d=f[(f[l>>2]|0)+(j<<2)>>2]|0;if(!d){u=p;return}d=f[d>>2]|0;if(!d){u=p;return}b:do if(e){while(1){m=f[d+4>>2]|0;e=(m|0)==(k|0);if(!(e|(m&g|0)==(j|0))){e=47;break}if(e)if((f[d+8>>2]|0)==(k|0)){o=d;break b}d=f[d>>2]|0;if(!d){e=47;break}}if((e|0)==47){u=p;return}}else{while(1){e=f[d+4>>2]|0;if((e|0)==(k|0)){if((f[d+8>>2]|0)==(k|0)){o=d;break b}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){e=47;break}}d=f[d>>2]|0;if(!d){e=47;break}}if((e|0)==47){u=p;return}}while(0);if(!(b[o+12>>0]|0)){hwa(n,f[(f[a+8>>2]|0)+220>>2]|0,c);e=f[n>>2]|0;d=f[n+4>>2]|0;if(d|0)Ppb(d);if(Dla(e)|0){u=p;return}}tDa(l,o)|0;u=p;return}case 2:case 1:break;default:d=2}o=(OFa(l,c+4|0)|0)+1|0;b[o>>0]=d;u=p;return}function OGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p;e=f[a+4>>2]|0;k=f[c>>2]|0;j=f[e+864>>2]|0;if(!j){u=p;return}i=j+-1|0;g=(i&j|0)==0;if(g)l=i&k;else if(j>>>0>k>>>0)l=k;else l=(k>>>0)%(j>>>0)|0;e=f[(f[e+860>>2]|0)+(l<<2)>>2]|0;if(!e){u=p;return}e=f[e>>2]|0;if(!e){u=p;return}a:do if(g){while(1){j=f[e+4>>2]|0;g=(j|0)==(k|0);if(!(g|(j&i|0)==(l|0))){e=47;break}if(g)if((f[e+8>>2]|0)==(k|0)){m=e;break a}e=f[e>>2]|0;if(!e){e=47;break}}if((e|0)==47){u=p;return}}else{while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0)){m=e;break a}}else{if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(l|0)){e=47;break}}e=f[e>>2]|0;if(!e){e=47;break}}if((e|0)==47){u=p;return}}while(0);l=m+56|0;if((h[m+12>>0]|0)>1){u=p;return}switch(d<<24>>24){case 0:{k=f[c+4>>2]|0;i=f[m+60>>2]|0;if(!i){u=p;return}g=i+-1|0;e=(g&i|0)==0;if(e)j=g&k;else if(i>>>0>k>>>0)j=k;else j=(k>>>0)%(i>>>0)|0;d=f[(f[l>>2]|0)+(j<<2)>>2]|0;if(!d){u=p;return}d=f[d>>2]|0;if(!d){u=p;return}b:do if(e){while(1){m=f[d+4>>2]|0;e=(m|0)==(k|0);if(!(e|(m&g|0)==(j|0))){e=47;break}if(e)if((f[d+8>>2]|0)==(k|0)){o=d;break b}d=f[d>>2]|0;if(!d){e=47;break}}if((e|0)==47){u=p;return}}else{while(1){e=f[d+4>>2]|0;if((e|0)==(k|0)){if((f[d+8>>2]|0)==(k|0)){o=d;break b}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){e=47;break}}d=f[d>>2]|0;if(!d){e=47;break}}if((e|0)==47){u=p;return}}while(0);if(b[o+12>>0]|0){g=f[(f[a+8>>2]|0)+220>>2]|0;owa(n,g,c);e=f[n>>2]|0;d=f[n+4>>2]|0;if(d|0)Ppb(d);if(!(ala(e,g,1,0)|0)){u=p;return}}tDa(l,o)|0;u=p;return}case 2:case 1:break;default:d=2}o=(OFa(l,c+4|0)|0)+1|0;b[o>>0]=d;u=p;return}function PGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[b+4>>2]|0;g=l+-1640531527+(k<<6)+(k>>>2)^k;e=f[b+8>>2]|0;g=e+-1640531527+(g<<6)+(g>>>2)^g;h=f[a+4>>2]|0;if(!h){l=0;return l|0}d=h+-1|0;c=(d&h|0)==0;if(c)i=g&d;else if(g>>>0<h>>>0)i=g;else i=(g>>>0)%(h>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){l=0;return l|0}b=f[b>>2]|0;if(!b){l=0;return l|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(g|0);if(!(a|(c&d|0)==(i|0))){b=0;a=23;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(l|0))if((f[b+16>>2]|0)==(e|0)){a=23;break}b=f[b>>2]|0;if(!b){b=0;a=23;break}}if((a|0)==23)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(g|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(l|0))if((f[j+16>>2]|0)==(e|0)){b=j;a=23;break}}else{if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)!=(i|0)){b=0;a=23;break}}j=f[j>>2]|0;if(!j){b=0;a=23;break}}if((a|0)==23)return b|0;return 0}function QGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;h=f[a+4>>2]|0;b=f[k+4>>2]|0;i=h+-1|0;e=(i&h|0)==0;if(e)g=i&b;else if(b>>>0<h>>>0)g=b;else g=(b>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)==(a+8|0))d=13;else{b=f[j+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;d=21}else d=13}do if((d|0)==13){if(l|0){b=f[l+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=22;break}}f[c>>2]=0;c=f[k>>2]|0;d=21}while(0);if((d|0)==21){b=c;if(c)d=22}if((d|0)==22){c=f[c+4>>2]|0;if(e)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;d=k+20|0;b=f[d>>2]|0;if(b|0){e=k+24|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[e>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}Zpb(k);return l|0}function RGa(a,b,c){a=a|0;b=b|0;c=c|0;MGa(f[a+4>>2]|0,f[(f[a+8>>2]|0)+220>>2]|0,b,c);return}function SGa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;w=y+4|0;x=y;v=a+4|0;t=f[v>>2]|0;f[w>>2]=b;f[w+4>>2]=c;f[w+8>>2]=d;b=PGa(t+400|0,w)|0;t=b;if(!b){u=y;return}a=f[b+20>>2]|0;s=f[b+24>>2]|0;a:do if((a|0)!=(s|0)){l=e+(g<<2)|0;m=w+4|0;n=w+8|0;k=g<<2;o=k>>2;p=(o|0)==0;q=o>>>0>1073741823;r=w+8|0;i=(g|0)==0;j=((l+-4-e|0)>>>2)+1|0;if(!h)while(1){e=f[a>>2]|0;r=f[(f[e>>2]|0)+12>>2]|0;f[w>>2]=d;nh[r&1023](e,w);a=a+4|0;if((a|0)==(s|0))break a}while(1){c=f[a>>2]|0;g=f[(f[c>>2]|0)+8>>2]|0;f[w>>2]=0;f[m>>2]=0;f[n>>2]=0;if(!p){if(q)break;h=Wpb(k)|0;f[m>>2]=h;f[w>>2]=h;f[r>>2]=h+(o<<2);if(!i){b=e;d=h;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(l|0))break;else d=d+4|0}f[m>>2]=h+(j<<2)}}nh[g&1023](c,w);b=f[w>>2]|0;if(b|0){c=f[m>>2]|0;if((c|0)!=(b|0))f[m>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}a=a+4|0;if((a|0)==(s|0))break a}fob(w)}while(0);v=(f[v>>2]|0)+400|0;f[x>>2]=t;f[w>>2]=f[x>>2];QGa(v,w)|0;u=y;return}function TGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+16|0;m=n+4|0;e=n;a=f[a+4>>2]|0;if((f[b>>2]|0)>>>0>=(f[a+912>>2]|0)>>>0){u=n;return}l=UGa(a+452|0,b)|0;k=l+4|0;a=f[k>>2]|0;if((f[l>>2]|0)!=(a|0)){f[e>>2]=a;f[m>>2]=f[e>>2];VGa(l,m,c,c+(d<<3)|0)|0;u=n;return}h=c+(d<<3)|0;f[m>>2]=0;j=m+4|0;f[j>>2]=0;f[m+8>>2]=0;b=d<<3;a=b>>3;if(!a){a=0;e=0}else{if(a>>>0>536870911)fob(m);i=Wpb(b)|0;f[j>>2]=i;f[m>>2]=i;f[m+8>>2]=i+(a<<3);e=i;if(!d)a=e;else{g=((b+-8|0)>>>3)+1|0;a=c;b=i;d=i;while(1){p=a;o=f[p+4>>2]|0;c=b;f[c>>2]=f[p>>2];f[c+4>>2]=o;a=a+8|0;d=d+8|0;if((a|0)==(h|0))break;else b=d}a=i+(g<<3)|0;f[j>>2]=a}}b=f[l>>2]|0;if(!b){d=l+8|0;b=e}else{a=f[k>>2]|0;if((a|0)!=(b|0))f[k>>2]=a+(~((a+-8-b|0)>>>3)<<3);Zpb(b);d=l+8|0;f[d>>2]=0;f[k>>2]=0;f[l>>2]=0;b=f[m>>2]|0;a=f[j>>2]|0}f[l>>2]=b;f[k>>2]=a;f[d>>2]=f[m+8>>2];u=n;return}function UGa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(24)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;WGa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function VGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=f[a>>2]|0;g=l;h=(f[b>>2]|0)-g|0;o=l+(h>>3<<3)|0;k=c;p=d-k|0;j=p>>3;if((p|0)<=0){p=o;return p|0}n=a+8|0;e=f[n>>2]|0;p=a+4|0;m=f[p>>2]|0;b=m;if((j|0)<=(e-b>>3|0)){h=b-o|0;b=h>>3;if((j|0)>(b|0)){g=c+(b<<3)|0;if((g|0)==(d|0))b=m;else{e=g;b=m;do{n=e;a=f[n+4>>2]|0;f[b>>2]=f[n>>2];f[b+4>>2]=a;e=e+8|0;b=(f[p>>2]|0)+8|0;f[p>>2]=b}while((e|0)!=(d|0))}if((h|0)>0)d=g;else{p=o;return p|0}}else b=m;h=b-(o+(j<<3))|0;i=h>>3;e=o+(i<<3)|0;if(e>>>0<m>>>0){g=b;do{l=e;n=f[l+4>>2]|0;a=g;f[a>>2]=f[l>>2];f[a+4>>2]=n;e=e+8|0;g=(f[p>>2]|0)+8|0;f[p>>2]=g}while(e>>>0<m>>>0)}if(i|0)Jrb(b+(0-i<<3)|0,o|0,h|0)|0;b=d-k|0;if(!b){p=o;return p|0}Jrb(o|0,c|0,b|0)|0;p=o;return p|0}b=(b-g>>3)+j|0;if(b>>>0>536870911)fob(a);j=e-g|0;g=j>>2;g=j>>3>>>0<268435455?(g>>>0<b>>>0?b:g):536870911;j=o;b=h>>3;do if(!g)i=0;else if(g>>>0>536870911)ud();else{i=Wpb(g<<3)|0;break}while(0);k=i+(b<<3)|0;e=k;i=i+(g<<3)|0;if((c|0)==(d|0))b=l;else{b=c;g=k;do{l=b;m=f[l+4>>2]|0;c=g;f[c>>2]=f[l>>2];f[c+4>>2]=m;g=e+8|0;e=g;b=b+8|0}while((b|0)!=(d|0));b=f[a>>2]|0}g=j-b|0;h=k+(0-(g>>3)<<3)|0;if((g|0)>0)Irb(h|0,b|0,g|0)|0;g=(f[p>>2]|0)-j|0;if((g|0)>0){Irb(e|0,o|0,g|0)|0;e=e+(g>>>3<<3)|0;b=f[a>>2]|0}f[a>>2]=h;f[p>>2]=e;f[n>>2]=i;if(!b){p=k;return p|0}Zpb(b);p=k;return p|0}function WGa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){XGa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;XGa(a,b);return}function XGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function YGa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;a=f[(f[a+4>>2]|0)+428>>2]|0;if(!a)return;j=f[c>>2]|0;a:while(1){i=a;if((f[i+36>>2]|0)==(j|0))break;if((f[i+40>>2]|0)==(j|0))break;c=i+12|0;g=f[i+16>>2]|0;b:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&j;else if(j>>>0<g>>>0)h=j;else h=(j>>>0)%(g>>>0)|0;c=f[(f[c>>2]|0)+(h<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){if(d)while(1){g=f[c+4>>2]|0;d=(g|0)==(j|0);if(!(d|(g&e|0)==(h|0)))break b;if(d)if((f[c+8>>2]|0)==(j|0))break a;c=f[c>>2]|0;if(!c)break b}do{d=f[c+4>>2]|0;if((d|0)==(j|0)){if((f[c+8>>2]|0)==(j|0))break a}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break b}c=f[c>>2]|0}while((c|0)!=0)}}}while(0);a=f[a>>2]|0;if(!a){k=25;break}}if((k|0)==25)return;b[i+44>>0]=1;return}function ZGa(a,b,c){a=a|0;b=b|0;c=c|0;a=f[a+4>>2]|0;if((f[b>>2]|0)>>>0>=(f[a+912>>2]|0)>>>0)return;b=EGa(a+472|0,b)|0;f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[b+16>>2]=f[c+16>>2];f[b+20>>2]=f[c+20>>2];return}function _Ga(a,b){a=a|0;b=b|0;return}function $Ga(a){a=a|0;var b=0;f[a>>2]=30880;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;hJa(a);Zpb(a);return}function aHa(a){a=a|0;var b=0,c=0;f[a>>2]=30880;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}hJa(b);Zpb(b);Zpb(a);return}function bHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;c=a+4|0;a=f[c>>2]|0;d=a+156|0;h=b[d>>0]|0;if(h&4){b[d>>0]=h&-5;gva((f[a>>2]|0)+92|0);a=f[c>>2]|0}f[a+140>>2]=g;MCa(f[a>>2]|0,(e|0)==0?1:e);return}function cHa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+24|0;i=j;if((c|0)!=2){u=j;return}g=a+4|0;a=(f[g>>2]|0)+156|0;c=b[a>>0]|0;if(c&4){u=j;return}b[a>>0]=c|4;a=(f[g>>2]|0)+156|0;c=b[a>>0]|0;do if(c&8){b[a>>0]=c&-9;d=f[g>>2]|0;a=f[d>>2]|0;d=f[d+4>>2]|0;if((lxa(d)|0)<=0){ANa(f[a+228>>2]|0);break}e=i+16|0;f[i>>2]=31224;f[i+4>>2]=a;f[e>>2]=i;b[h>>0]=1;a=d+8|0;c=f[a>>2]|0;if(c>>>0<(f[d+12>>2]|0)>>>0){f[c+16>>2]=c;h=f[e>>2]|0;nh[f[(f[h>>2]|0)+12>>2]&1023](h,c);h=f[a>>2]|0;b[c+24>>0]=1;f[a>>2]=h+32}else x$(d+4|0,i,h);a=f[e>>2]|0;if((i|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a)}while(0);gva((f[f[g>>2]>>2]|0)+104|0);u=j;return}function dHa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;if(!c){u=g;return}do switch(c&-2113929217|0){case 1:{c=8;break}case 2:{c=5;break}case 3:{c=4;break}case 4:{c=6;break}case 5:{c=c>>>30|2;break}case 6:{c=9;break}case 7:{c=7;break}case 8:{c=1;break}case 9:{c=10;break}case 10:{c=0;break}case 11:{c=14;break}case 12:{c=16;break}default:{u=g;return}}while(0);a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;f[e>>2]=b;f[d>>2]=f[e>>2];DGa(a,d,c);u=g;return}function eHa(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+784|0;n=v+768|0;o=v+760|0;q=v+72|0;r=v+48|0;s=v+24|0;t=v;m=a+4|0;a=f[m>>2]|0;k=a+156|0;l=b[k>>0]|0;if(l&4){b[k>>0]=l&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=v;return}a=vva(f[(f[m>>2]|0)+4>>2]|0)|0;f[n>>2]=a;f[n+4>>2]=j;qwa(o,f[(f[m>>2]|0)+4>>2]|0,n);a=f[o>>2]|0;if(!a){PMa(q,f[(f[f[m>>2]>>2]|0)+228>>2]|0);k=f[q>>2]|0;a=q+4|0;j=f[a>>2]|0;f[q>>2]=0;f[a>>2]=0;f[o>>2]=k;k=o+4|0;l=f[k>>2]|0;f[k>>2]=j;if(l|0){Ppb(l);a=f[a>>2]|0;if(a|0)Ppb(a)}Sva(f[(f[m>>2]|0)+4>>2]|0,o,n)|0;a=f[o>>2]|0}else k=o+4|0;p[r>>3]=+p[d>>3];p[r+8>>3]=+p[d+8>>3];p[r+16>>3]=+p[d+16>>3];p[s>>3]=+p[e>>3];p[s+8>>3]=+p[e+8>>3];p[s+16>>3]=+p[e+16>>3];p[t>>3]=+p[g>>3];p[t+8>>3]=+p[g+8>>3];p[t+16>>3]=+p[g+16>>3];fga(q,(c|0)==3?2:(c|0)!=1&1,r,s,t,h,i,.01);VMa(a,q);a=f[k>>2]|0;if(a|0)Ppb(a);u=v;return}function fHa(a,b,c,d,e,g,h){a=a|0;b=+b;c=+c;d=+d;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;l=o+32|0;k=o+24|0;j=o+16|0;n=o+8|0;m=o;i=a+4|0;a=vva(f[(f[i>>2]|0)+4>>2]|0)|0;f[j>>2]=a;f[j+4>>2]=h;qwa(n,f[(f[i>>2]|0)+4>>2]|0,j);if(!(f[n>>2]|0)){PMa(l,f[(f[f[i>>2]>>2]|0)+228>>2]|0);p=f[l>>2]|0;a=l+4|0;q=f[a>>2]|0;f[l>>2]=0;f[a>>2]=0;f[n>>2]=p;p=n+4|0;h=f[p>>2]|0;f[p>>2]=q;if(h|0){Ppb(h);a=f[a>>2]|0;if(a|0)Ppb(a)}Sva(f[(f[i>>2]|0)+4>>2]|0,n,j)|0}if(b>=0.0)XMa(f[n>>2]|0,b)|0;if(c>=0.0)YMa(f[n>>2]|0,c)|0;if(d>=0.0)ZMa(f[n>>2]|0,d)|0;a=(f[i>>2]|0)+4|0;h=vva(f[a>>2]|0)|0;do if(!g){f[m>>2]=0;f[m+4>>2]=0}else{if(!e){f[m>>2]=0;f[m+4>>2]=0;break}if((g|0)!=1){f[m>>2]=0;f[m+4>>2]=0;break}a=f[a>>2]|0;q=f[e>>2]|0;f[k>>2]=h;f[k+4>>2]=q;hwa(l,a,k);a=f[l>>2]|0;if(!a){f[m>>2]=0;f[m+4>>2]=0}else Gla(m,a);a=f[l+4>>2]|0;if(a|0)Ppb(a);if(f[m>>2]|0)WMa(f[n>>2]|0,m)|0}while(0);a=f[m+4>>2]|0;if(a|0)Ppb(a);a=f[n+4>>2]|0;if(!a){u=o;return}Ppb(a);u=o;return}function gHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=u;u=u+16|0;i=h;f[i>>2]=g;Sh[f[(f[a>>2]|0)+180>>2]&63](a,c,d,e,i,(b[(f[a+4>>2]|0)+156>>0]&16)==0);u=h;return}function hHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;d=u;u=u+48|0;h=d+32|0;i=d;g=d+8|0;a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;f[i>>2]=e;f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[g+12>>2]=f[c>>2];f[g+16>>2]=f[c+4>>2];f[g+20>>2]=f[c+8>>2];f[h>>2]=f[i>>2];ZGa(a,h,g);u=d;return}function iHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=u;u=u+32|0;g=h;if(!e){u=h;return}if(b[d+(e+-1)>>0]|0){u=h;return}e=d+e+-1|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;if((e|0)!=(d|0)){do{d=xIa(g,d,e)|0;if(!d)break;yIa(a,c,g)|0}while((d|0)!=(e|0));if((b[g+12+11>>0]|0)<0)Zpb(f[g+12>>2]|0)}d=f[g>>2]|0;if(d|0){c=g+4|0;e=f[c>>2]|0;if((e|0)!=(d|0)){do{a=e+-24|0;f[c>>2]=a;e=e+-12|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);e=f[c>>2]|0}while((e|0)!=(d|0));d=f[g>>2]|0}Zpb(d)}u=h;return}function jHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=a+4|0;a=f[h>>2]|0;i=a+156|0;j=b[i>>0]|0;if(j&4){b[i>>0]=j&-5;gva((f[a>>2]|0)+92|0);a=f[h>>2]|0}j=f[(f[a>>2]|0)+228>>2]|0;HOa(j,d,e,c,g);YNa(j);return}function kHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;a=a+4|0;h=f[a>>2]|0;i=h+156|0;j=b[i>>0]|0;if(j&4){b[i>>0]=j&-5;gva((f[h>>2]|0)+92|0)}if(!c){u=l;return}f[k>>2]=c;f[k+4>>2]=d;if(Rva(f[(f[a>>2]|0)+4>>2]|0,k,e,g)|0)OGa(f[(f[f[a>>2]>>2]|0)+232>>2]|0,k,0);u=l;return}function lHa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;if(!b){u=g;return}f[e>>2]=b;f[e+4>>2]=c;IGa(f[(f[f[a+4>>2]>>2]|0)+232>>2]|0,e,d&-134217729,d&134217728|0?1:2);u=g;return}function mHa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;e=f[a+4>>2]|0;a=f[e>>2]|0;e=f[e+4>>2]|0;a:do if((d|0)<11){switch(d|0){case 9:break;default:break a}NCa(a,c)}else if((d|0)<536870919){switch(d|0){case 11:break;default:break a}Dva(e,a,c)|0;break}else{switch(d|0){case 536870919:break;default:break a}f[g>>2]=b;f[g+4>>2]=c;gwa(e,g)|0;break}while(0);u=h;return}function nHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=e&268435456;if(!(h|b))return;do switch(e&-2113929217|0){case 1:{g=8;break}case 2:{g=5;break}case 3:{g=4;break}case 4:{g=6;break}case 5:{g=2;break}case 6:{g=9;break}case 7:{g=7;break}case 8:{g=1;break}case 9:{g=10;break}case 10:{g=0;break}case 11:{g=14;break}case 12:{g=16;break}default:return}while(0);g=Zra(g)|0;SGa(f[(f[f[a+4>>2]>>2]|0)+232>>2]|0,g,(h>>>28|e>>>24&2)^1,b,d,c,1);return}function oHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+8|0;j=k;a=f[a+4>>2]|0;g=f[a>>2]|0;h=f[g+228>>2]|0;switch(e|0){case 1:{a=f[a+4>>2]|0;f[i>>2]=b;f[i+4>>2]=c;lwa(j,a,i);a=f[j>>2]|0;if(a|0)if(Qg[f[(f[a>>2]|0)+20>>2]&127](a,d,1)|0)ANa(h);a=f[j+4>>2]|0;if(a|0)Ppb(a);u=k;return}case 3:{PEa(f[g+232>>2]|0,d,c);u=k;return}default:{u=k;return}}}function pHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_Ea(f[(f[f[a+4>>2]>>2]|0)+232>>2]|0,e,b,c,d);return}function qHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;REa(f[(f[f[a+4>>2]>>2]|0)+232>>2]|0,e,c,d);return}function rHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;if(!c){u=l;return}e=a+4|0;m=f[e>>2]|0;a=f[m>>2]|0;c=f[m+4>>2]|0;d=f[a+228>>2]|0;if(!(b[m+156>>0]&16)){n=vva(c)|0;m=f[(f[e>>2]|0)+140>>2]|0;f[h>>2]=n;f[h+4>>2]=m;qwa(i,c,h);if(f[i>>2]|0)uOa(d,i,1);d=f[i+4>>2]|0;if(d|0)Ppb(d)}n=f[a+232>>2]|0;uYa(oxa(c)|0,n);f[j>>2]=g;f[i>>2]=f[j>>2];f[k>>2]=g;f[i>>2]=f[k>>2];DGa(n,i,12);u=l;return}function sHa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=a+4|0;a=f[e>>2]|0;g=a+156|0;h=b[g>>0]|0;if(h&4){b[g>>0]=h&-5;gva((f[a>>2]|0)+92|0);a=f[e>>2]|0}wIa((f[a>>2]|0)+116|0,c,d);return}function tHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;j=r+24|0;o=r+8|0;p=r;n=a+4|0;i=f[n>>2]|0;a=i+156|0;h=b[a>>0]|0;if(h&4){b[a>>0]=h&-5;gva((f[i>>2]|0)+92|0)}if(!c){u=r;return}f[j>>2]=c;f[j+4>>2]=d;if(e|0){m=tIa((f[n>>2]|0)+60|0,j)|0;Dqa(o);Kqa(o,m);a=f[o>>2]|0;if(a|0){d=o+4|0;h=f[d>>2]|0;if((h|0)!=(a|0)){do{i=h+-16|0;f[d>>2]=i;h=f[h+-12>>2]|0;if(!h)h=i;else{Ppb(h);h=f[d>>2]|0}}while((h|0)!=(a|0));a=f[o>>2]|0}Zpb(a)}if(g|0){j=o+4|0;k=p+4|0;i=0;while(1){h=e+(i<<2)|0;d=i;do{d=d+1|0;l=d>>>0<g>>>0;if(!l){q=16;break}a=f[h>>2]|0}while((f[e+(d<<2)>>2]|0)==(a|0));if((q|0)==16){q=0;a=f[h>>2]|0}if((a|0)!=-1){f[o>>2]=c;f[j>>2]=a;kwa(p,f[(f[n>>2]|0)+4>>2]|0,o);if(f[p>>2]|0)Eqa(m,i,d-i|0,p);a=f[k>>2]|0;if(a|0)Ppb(a)}if(l)i=d;else break}}}u=r;return}function uHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;j=n+24|0;l=n+8|0;m=n;k=a+4|0;i=f[k>>2]|0;a=i+156|0;h=b[a>>0]|0;if(h&4){b[a>>0]=h&-5;gva((f[i>>2]|0)+92|0)}if(!c){u=n;return}f[j>>2]=c;f[j+4>>2]=d;if(e|0){j=tIa((f[k>>2]|0)+60|0,j)|0;Dqa(l);Kqa(l,j);a=f[l>>2]|0;if(a|0){d=l+4|0;h=f[d>>2]|0;if((h|0)!=(a|0)){do{i=h+-16|0;f[d>>2]=i;h=f[h+-12>>2]|0;if(!h)h=i;else{Ppb(h);h=f[d>>2]|0}}while((h|0)!=(a|0));a=f[l>>2]|0}Zpb(a)}if(g|0){h=l+4|0;i=m+4|0;a=0;do{d=f[e+(a*12|0)+8>>2]|0;f[l>>2]=c;f[h>>2]=d;kwa(m,f[(f[k>>2]|0)+4>>2]|0,l);if(f[m>>2]|0)Eqa(j,f[e+(a*12|0)>>2]|0,f[e+(a*12|0)+4>>2]|0,m);d=f[i>>2]|0;if(d|0)Ppb(d);a=a+1|0}while((a|0)!=(g|0))}}u=n;return}function vHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+80|0;i=m+16|0;l=m+8|0;j=m;k=a+4|0;g=f[k>>2]|0;h=g+156|0;a=b[h>>0]|0;if(a&4){b[h>>0]=a&-5;gva((f[g>>2]|0)+92|0)}if(!c){u=m;return}f[i>>2]=f[e>>2];f[i+16>>2]=f[e+12>>2];f[i+32>>2]=f[e+24>>2];f[i+48>>2]=f[e+36>>2];f[i+4>>2]=f[e+4>>2];f[i+20>>2]=f[e+16>>2];f[i+36>>2]=f[e+28>>2];f[i+52>>2]=f[e+40>>2];f[i+8>>2]=f[e+8>>2];f[i+24>>2]=f[e+20>>2];f[i+40>>2]=f[e+32>>2];f[i+56>>2]=f[e+44>>2];f[i+12>>2]=0;f[i+28>>2]=0;f[i+44>>2]=0;f[i+60>>2]=1065353216;f[l>>2]=c;f[l+4>>2]=d;g=f[(f[k>>2]|0)+4>>2]|0;roa(j,i);g=Nva(g,j,l)|0;a=f[j+4>>2]|0;if(a|0)Ppb(a);if(g)KGa(f[(f[f[k>>2]>>2]|0)+232>>2]|0,l,0);u=m;return}function wHa(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+48|0;r=s+24|0;p=s+16|0;q=s;n=a+4|0;a=f[n>>2]|0;j=a+156|0;k=b[j>>0]|0;if(k&4){b[j>>0]=k&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=s;return}f[r>>2]=0;o=r+4|0;f[o>>2]=0;f[r+8>>2]=0;if(!g)a=0;else{hka(r,g);a=f[r>>2]|0}Irb(a|0,i|0,g*12|0)|0;i=h+(e<<2)|0;f[q>>2]=0;m=q+4|0;f[m>>2]=0;f[q+8>>2]=0;l=h;a=e<<2;j=a>>2;if(j|0){if(j>>>0>1073741823)fob(q);g=Wpb(a)|0;f[m>>2]=g;f[q>>2]=g;f[q+8>>2]=g+(j<<2);if(e|0){k=i+-4|0;a=h;j=g;while(1){f[j>>2]=f[a>>2];a=a+4|0;if((a|0)==(i|0))break;else j=j+4|0}f[m>>2]=g+(((k-l|0)>>>2)+1<<2)}}S1a(p,r,q);a=f[q>>2]|0;if(a|0){j=f[m>>2]|0;if((j|0)!=(a|0))f[m>>2]=j+(~((j+-4-a|0)>>>2)<<2);Zpb(a)}a=f[(f[n>>2]|0)+4>>2]|0;f[q>>2]=c;f[q+4>>2]=d;Tva(a,p,q)|0;a=f[p+4>>2]|0;if(a|0)Ppb(a);a=f[r>>2]|0;if(a|0){j=f[o>>2]|0;if((j|0)!=(a|0))f[o>>2]=j+(~(((j+-12-a|0)>>>0)/12|0)*12|0);Zpb(a)}u=s;return}function xHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+64|0;r=w+56|0;s=w+16|0;t=w+8|0;v=w;q=a+4|0;h=f[q>>2]|0;a=h+156|0;g=b[a>>0]|0;if(g&4){b[a>>0]=g&-5;gva((f[h>>2]|0)+92|0)}if(!c){u=w;return}H1a(r);a=f[e>>2]|0;i=f[e+4>>2]|0;if((a|0)!=(i|0)){j=s+24|0;k=s+16|0;l=s+4|0;m=t+4|0;n=v+4|0;o=t+4|0;p=v+4|0;do{w1a(s);h=a+16|0;g=f[h>>2]|0;if(g&2){z1a(s,1);g=f[h>>2]|0}if(g&1|0)x1a(s,1);g=f[a+12>>2]|0;if(g|0){f[t>>2]=c;f[o>>2]=g;jwa(v,f[(f[q>>2]|0)+4>>2]|0,t);if(f[v>>2]|0)y1a(s,v);g=f[p>>2]|0;if(g|0)Ppb(g)}g=f[a>>2]|0;e=f[a+4>>2]|0;if((g|0)!=(e|0))do{h=f[g>>2]|0;f[t>>2]=c;f[m>>2]=h;rwa(v,f[(f[q>>2]|0)+4>>2]|0,t);if(f[v>>2]|0)A1a(s,v);h=f[n>>2]|0;if(h|0)Ppb(h);g=g+4|0}while((g|0)!=(e|0));N1a(f[r>>2]|0,s);g=f[j>>2]|0;if(g|0)Ppb(g);g=f[k>>2]|0;if(g|0)Ppb(g);g=f[s>>2]|0;if(g|0){h=f[l>>2]|0;if((h|0)!=(g|0)){do{e=h+-8|0;f[l>>2]=e;h=f[h+-4>>2]|0;if(!h)h=e;else{Ppb(h);h=f[l>>2]|0}}while((h|0)!=(g|0));g=f[s>>2]|0}Zpb(g)}a=a+20|0}while((a|0)!=(i|0))}a=f[(f[q>>2]|0)+4>>2]|0;f[s>>2]=c;f[s+4>>2]=d;Uva(a,r,s)|0;a=f[r+4>>2]|0;if(a|0)Ppb(a);u=w;return}function yHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;h=n+24|0;i=n+8|0;j=n;k=a+4|0;l=f[k>>2]|0;m=l+156|0;g=b[m>>0]|0;if(g&4){b[m>>0]=g&-5;gva((f[l>>2]|0)+92|0)}if(!c){u=n;return}Ena(h);g=f[e+4>>2]|0;l=f[e+8>>2]|0;m=f[e+12>>2]|0;f[i>>2]=f[e>>2];f[i+4>>2]=g;f[i+8>>2]=l;f[i+12>>2]=m;Pna(f[h>>2]|0,i);f[j>>2]=c;f[j+4>>2]=d;if(Ova(f[(f[k>>2]|0)+4>>2]|0,h,j)|0){JGa(f[(f[f[k>>2]>>2]|0)+232>>2]|0,j,0);cIa(f[k>>2]|0,a)}a=f[h+4>>2]|0;if(a|0)Ppb(a);u=n;return}function zHa(a,c,d,e,g,h,i,j,k,l,m){a=a|0;c=c|0;d=d|0;e=e|0;g=+g;h=+h;i=+i;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+96|0;w=z+72|0;t=z+64|0;x=z+56|0;n=z+40|0;v=z+32|0;r=z+8|0;s=z;y=a+4|0;o=f[y>>2]|0;p=o+156|0;q=b[p>>0]|0;if(q&4){b[p>>0]=q&-5;gva((f[o>>2]|0)+92|0)}if(!c){u=z;return}Ena(x);o=f[e+4>>2]|0;p=f[e+8>>2]|0;q=f[e+12>>2]|0;f[n>>2]=f[e>>2];f[n+4>>2]=o;f[n+8>>2]=p;f[n+12>>2]=q;Pna(f[x>>2]|0,n);Qna(f[x>>2]|0,i);Rna(f[x>>2]|0,h);Sna(f[x>>2]|0,g);if((l|0)!=0&(m|0)!=0){Cja(w,f[l+8>>2]|0);m=f[l+4>>2]|0;if(m|0){f[t>>2]=c;f[t+4>>2]=m;jwa(v,f[(f[y>>2]|0)+4>>2]|0,t);m=f[v>>2]|0;if(m|0){e=f[x>>2]|0;f[r>>2]=f[m>>2];f[r+8>>2]=f[m+16>>2];f[r+16>>2]=f[m+48>>2];f[r+4>>2]=f[m+4>>2];f[r+12>>2]=f[m+20>>2];f[r+20>>2]=f[m+52>>2];Nna(e,r)}m=f[v+4>>2]|0;if(m|0)Ppb(m)}l=f[l>>2]|0;f[t>>2]=c;f[t+4>>2]=l;hwa(v,f[(f[y>>2]|0)+4>>2]|0,t);if(f[v>>2]|0){v8a(r);Eja(w,r);Fla(s,f[v>>2]|0,r);if(f[s>>2]|0){goa(f[x>>2]|0,f[w+16>>2]|0);Mna(f[x>>2]|0,s)}m=f[s+4>>2]|0;if(m|0)Ppb(m)}m=f[v+4>>2]|0;if(m|0)Ppb(m)}m=f[y>>2]|0;do if(!k){f[v>>2]=0;f[v+4>>2]=0}else{if(!j){f[v>>2]=0;f[v+4>>2]=0;break}if((k|0)!=1){f[v>>2]=0;f[v+4>>2]=0;break}m=f[m+4>>2]|0;k=f[j>>2]|0;f[t>>2]=c;f[t+4>>2]=k;hwa(w,m,t);m=f[w>>2]|0;if(!m){f[v>>2]=0;f[v+4>>2]=0}else Gla(v,m);m=f[w+4>>2]|0;if(m|0)Ppb(m);if(f[v>>2]|0)Lna(f[x>>2]|0,v)}while(0);m=f[v+4>>2]|0;if(m|0)Ppb(m);f[w>>2]=c;f[w+4>>2]=d;if(Ova(f[(f[y>>2]|0)+4>>2]|0,x,w)|0){JGa(f[(f[f[y>>2]>>2]|0)+232>>2]|0,w,0);cIa(f[y>>2]|0,a)}m=f[x+4>>2]|0;if(m|0)Ppb(m);u=z;return}function AHa(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0;s=u;u=u+64|0;r=s;f[r>>2]=b;f[r+4>>2]=c;c=r+8|0;f[c>>2]=d;f[c+4>>2]=e;f[r+16>>2]=g;f[r+20>>2]=h;f[r+24>>2]=i;f[r+28>>2]=j;f[r+32>>2]=k;f[r+36>>2]=l;f[r+40>>2]=m;f[r+44>>2]=n;f[r+48>>2]=o;f[r+52>>2]=p;f[r+56>>2]=q;if(dIa(a,r)|0){u=s;return}a=f[a+4>>2]|0;m=a+148|0;b=f[m>>2]|0;if((b|0)==(f[a+152>>2]|0)){sIa(a+144|0,r);u=s;return}else{a=r;l=b+64|0;do{f[b>>2]=f[a>>2];b=b+4|0;a=a+4|0}while((b|0)<(l|0));f[m>>2]=(f[m>>2]|0)+64;u=s;return}}function BHa(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+48|0;w=x+32|0;q=x+24|0;v=x+16|0;r=x+8|0;s=x;t=a+4|0;a=f[t>>2]|0;o=a+156|0;p=b[o>>0]|0;if(p&4){b[o>>0]=p&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=x;return}Bva(w,f[(f[t>>2]|0)+4>>2]|0,c);a=f[w>>2]|0;if(a|0){f[q>>2]=m;Ola(a,d,q)}f[q>>2]=c;f[q+4>>2]=d;xwa(v,f[(f[t>>2]|0)+4>>2]|0,q);o=r+4|0;p=s+4|0;if((e|0)!=-1){d=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=d;f[o>>2]=e;kwa(s,f[(f[t>>2]|0)+4>>2]|0,r);if(f[s>>2]|0)Qoa(f[v>>2]|0,0,s);a=f[p>>2]|0;if(a|0)Ppb(a)}if((g|0)!=-1){e=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=e;f[o>>2]=g;kwa(s,f[(f[t>>2]|0)+4>>2]|0,r);if(f[s>>2]|0)Qoa(f[v>>2]|0,1,s);a=f[p>>2]|0;if(a|0)Ppb(a)}if((h|0)!=-1){g=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=g;f[o>>2]=h;kwa(s,f[(f[t>>2]|0)+4>>2]|0,r);if(f[s>>2]|0)Qoa(f[v>>2]|0,2,s);a=f[p>>2]|0;if(a|0)Ppb(a)}o=r+4|0;if(i|0){a=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=a;f[o>>2]=i;a=$Ha((f[t>>2]|0)+60|0,r)|0;if(a|0)ypa(f[v>>2]|0,0,a+16|0)}if(j|0){a=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=a;f[o>>2]=j;a=$Ha((f[t>>2]|0)+60|0,r)|0;if(a|0)ypa(f[v>>2]|0,1,a+16|0)}if(k|0){a=vva(f[(f[t>>2]|0)+4>>2]|0)|0;f[r>>2]=a;f[o>>2]=k;a=$Ha((f[t>>2]|0)+60|0,r)|0;if(a|0)ypa(f[v>>2]|0,2,a+16|0)}if(l|0){f[r>>2]=c;f[r+4>>2]=l;swa(s,f[(f[t>>2]|0)+4>>2]|0,r);if(f[s>>2]|0)dqa(f[v>>2]|0,s);a=f[s+4>>2]|0;if(a|0)Ppb(a)}if((m|0)!=-1){o=f[v>>2]|0;a=b[o+193>>0]|0;if(!(a&1)){lpa(o,1,(m&1|0)!=0,0)|0;o=f[v>>2]|0;a=b[o+193>>0]|0}if(!(a&2)){lpa(o,2,(m&2|0)!=0,0)|0;o=f[v>>2]|0;a=b[o+193>>0]|0}if(!(a&4))lpa(o,4,(m&4|0)!=0,0)|0}eIa(f[v>>2]|0,n);if(f[(f[v>>2]|0)+4>>2]|0)ANa(f[(f[f[t>>2]>>2]|0)+228>>2]|0);a=f[v+4>>2]|0;if(a|0)Ppb(a);a=f[w+4>>2]|0;if(a|0)Ppb(a);u=x;return}function CHa(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=+e;g=+g;h=+h;i=+i;j=j|0;var k=0,l=0,m=0;l=u;u=u+16|0;k=l+8|0;m=l;f[k>>2]=c;f[k+4>>2]=d;a=a+4|0;nwa(m,f[(f[a>>2]|0)+4>>2]|0,k);c=(f[m>>2]|0)==0;d=f[m+4>>2]|0;if(d|0)Ppb(d);if(!c){u=l;return}m=pIa((f[a>>2]|0)+120|0,k)|0;n[m>>2]=e;n[m+4>>2]=g;n[m+8>>2]=h;n[m+12>>2]=i;b[m+16>>0]=(j|0)==1&1;u=l;return}function DHa(a,c,d,e,g,h,i,j,k,l,m,n,o){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+80|0;C=F+56|0;A=F+40|0;y=F+64|0;w=F+48|0;x=F+28|0;D=F+16|0;s=F+8|0;t=F;f[C>>2]=d;f[A>>2]=e;E=a+4|0;p=f[E>>2]|0;q=p+156|0;r=b[q>>0]|0;if(r&4){b[q>>0]=r&-5;gva((f[p>>2]|0)+92|0)}if(!c){u=F;return}v=f[(f[E>>2]|0)+4>>2]|0;f[y>>2]=c;f[y+4>>2]=d;f[w>>2]=0;B=w+4|0;f[B>>2]=0;do if(!e){Hra(x);q=f[x>>2]|0;p=x+4|0;z=f[p>>2]|0;f[x>>2]=0;f[p>>2]=0;f[w>>2]=q;q=f[B>>2]|0;f[B>>2]=z;if(q|0){Ppb(q);p=f[p>>2]|0;if(p|0)Ppb(p)}Wra(f[(f[w>>2]|0)+44>>2]|0,v,0);z=f[w>>2]|0;f[x>>2]=f[n>>2];f[x+4>>2]=f[n+4>>2];f[x+8>>2]=f[n+8>>2];f[D>>2]=f[o>>2];f[D+4>>2]=f[o+4>>2];f[D+8>>2]=f[o+8>>2];Xra(f[z+44>>2]|0,x,D);z=26}else{f[x>>2]=c;f[x+4>>2]=e;lwa(D,v,x);if(!(f[D>>2]|0)){p=f[D+4>>2]|0;if(p|0)Ppb(p);break}Ira(s,D);q=f[s>>2]|0;p=s+4|0;z=f[p>>2]|0;f[s>>2]=0;f[p>>2]=0;f[w>>2]=q;q=f[B>>2]|0;f[B>>2]=z;if(q|0){Ppb(q);p=f[p>>2]|0;if(p|0)Ppb(p)}if(g|0){f[s>>2]=c;f[s+4>>2]=g;jwa(t,v,s);z=f[t>>2]|0;q=z;if(!z)p=t+4|0;else{r=f[w>>2]|0;p=t+4|0;d=f[p>>2]|0;if(d|0)Npb(d);f[r+36>>2]=q;z=r+40|0;q=f[z>>2]|0;f[z>>2]=d;if(q)Ppb(q)}p=f[p>>2]|0;if(p|0)Ppb(p)}p=f[D+4>>2]|0;if(p|0)Ppb(p);z=26}while(0);if((z|0)==26){d=x+4|0;e=D+4|0;if((h|0)!=-1){f[x>>2]=c;f[d>>2]=h;kwa(D,v,x);h=f[D>>2]|0;p=h;if(h|0){q=f[w>>2]|0;r=f[e>>2]|0;if(r|0)Npb(r);f[q+4>>2]=p;h=q+8|0;p=f[h>>2]|0;f[h>>2]=r;if(p|0)Ppb(p)}p=f[e>>2]|0;if(p|0)Ppb(p)}if((i|0)!=-1){f[x>>2]=c;f[d>>2]=i;kwa(D,v,x);i=f[D>>2]|0;p=i;if(i|0){q=f[w>>2]|0;r=f[e>>2]|0;if(r|0)Npb(r);f[q+12>>2]=p;i=q+16|0;p=f[i>>2]|0;f[i>>2]=r;if(p|0)Ppb(p)}p=f[e>>2]|0;if(p|0)Ppb(p)}if((j|0)!=-1){f[x>>2]=c;f[d>>2]=j;kwa(D,v,x);j=f[D>>2]|0;p=j;if(j|0){q=f[w>>2]|0;r=f[e>>2]|0;if(r|0)Npb(r);f[q+20>>2]=p;j=q+24|0;p=f[j>>2]|0;f[j>>2]=r;if(p|0)Ppb(p)}p=f[e>>2]|0;if(p|0)Ppb(p)}f[x>>2]=k;f[x+4>>2]=l;f[x+8>>2]=m;q=D+4|0;if(!k)p=0;else{f[D>>2]=c;f[q>>2]=k;p=($Ha((f[E>>2]|0)+60|0,D)|0)!=0}if(l){f[D>>2]=c;f[q>>2]=l;p=p|($Ha((f[E>>2]|0)+60|0,D)|0)!=0}if(!m){if(p)z=38}else{f[D>>2]=c;f[q>>2]=m;if(p|($Ha((f[E>>2]|0)+60|0,D)|0)!=0)z=38}if((z|0)==38){m=aIa((f[E>>2]|0)+80|0,y)|0;f[m>>2]=f[x>>2];f[m+4>>2]=f[x+4>>2];f[m+8>>2]=f[x+8>>2]}if(Pva(v,w,y)|0){p=f[A>>2]|0;if(p|0){f[x>>2]=c;f[x+4>>2]=p;lwa(D,v,x);p=f[E>>2]|0;do if(!(b[(f[(f[D>>2]|0)+44>>2]|0)+144>>0]&2)){e=bIa(p+100|0,x)|0;n=bIa((f[E>>2]|0)+100|0,y)|0;y=f[e>>2]|0;p=y;do if(!y){d=Wpb(24)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=31076;r=d+12|0;f[r>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[n>>2]=r;p=n+4|0;q=f[p>>2]|0;f[p>>2]=d;if(!q){p=d;q=d;z=51}else{Ppb(q);p=f[p>>2]|0;r=f[n>>2]|0;q=p;if(p)z=51}if((z|0)==51)Npb(p);f[e>>2]=r;z=e+4|0;p=f[z>>2]|0;f[z>>2]=q;if(p|0)Ppb(p);p=f[n>>2]|0;q=p+4|0;r=f[q>>2]|0;if((r|0)==(f[p+8>>2]|0)){BD(p,A);break}else{f[r>>2]=f[A>>2];f[q>>2]=r+4;break}}else{q=f[e+4>>2]|0;if(q|0)Npb(q);f[n>>2]=p;A=n+4|0;p=f[A>>2]|0;f[A>>2]=q;if(p|0)Ppb(p)}while(0);p=f[n>>2]|0;q=p+4|0;r=f[q>>2]|0;if((r|0)==(f[p+8>>2]|0)){BD(p,C);break}else{f[r>>2]=f[C>>2];f[q>>2]=r+4;break}}else RGa(f[(f[p>>2]|0)+232>>2]|0,y,0);while(0);p=f[D+4>>2]|0;if(p|0)Ppb(p)}cIa(f[E>>2]|0,a)}}p=f[B>>2]|0;if(p|0)Ppb(p);u=F;return}function EHa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+48|0;m=p+32|0;o=p+24|0;n=p+16|0;l=p;f[m>>2]=b;f[m+4>>2]=c;if(!b){u=p;return}if(!((d|0)!=0&g>>>0<e>>>0)){u=p;return}k=f[(f[a+4>>2]|0)+4>>2]|0;j=f[d+(g<<2)>>2]|0;f[n>>2]=b;f[n+4>>2]=j;lwa(o,k,n);if(f[o>>2]|0){h=d+(e<<2)|0;f[l>>2]=0;j=l+4|0;f[j>>2]=0;f[l+8>>2]=0;i=d;a=e<<2;c=a>>2;if(c|0){if(c>>>0>1073741823)fob(l);g=Wpb(a)|0;f[j>>2]=g;f[l>>2]=g;f[l+8>>2]=g+(c<<2);b=h+-4|0;a=d;c=g;while(1){f[c>>2]=f[a>>2];a=a+4|0;if((a|0)==(h|0))break;else c=c+4|0}f[j>>2]=g+(((b-i|0)>>>2)+1<<2)}Nra(n,k,l,o);a=f[l>>2]|0;if(a|0){c=f[j>>2]|0;if((c|0)!=(a|0))f[j>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a)}if(f[n>>2]|0)Pva(k,n,m)|0;a=f[n+4>>2]|0;if(a|0)Ppb(a)}a=f[o+4>>2]|0;if(a|0)Ppb(a);u=p;return}function FHa(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=u;u=u+64|0;v=E+48|0;D=E+40|0;A=E+32|0;B=E+24|0;C=E+16|0;x=E+8|0;y=E;z=a+4|0;a=f[z>>2]|0;s=a+156|0;t=b[s>>0]|0;if(t&4){b[s>>0]=t&-5;gva((f[a>>2]|0)+92|0)}if((c|0)==0|(g|0)==0|(h|0)==0){u=E;return}t=k+j|0;w=t+l|0;if(!w){u=E;return}f[v>>2]=c;f[v+4>>2]=d;lwa(D,f[(f[z>>2]|0)+4>>2]|0,v);if(f[D>>2]|0){switch(e&3){case 2:{a=2;s=8;break}case 1:{a=1;s=8;break}default:{a=0;s=9}}if((s|0)==8)if(e&4)s=9;if((s|0)==9)a=a|4;if(e&268435456)a=e>>>2&64|e>>>1&8|e>>>3&512|a|4096;if(e&536870912)a=e>>>2&128|e>>>1&16|e>>>3&1024|a|8192;if(e&1073741824)a=e>>31&32768|e>>>2&256|e>>>1&32|e>>>3&2048|a|16384;f[A>>2]=a|e&196608;a=zra(A)|0;f[B>>2]=0;s=B+4|0;f[s>>2]=0;a=X(a,h)|0;if(Pqa((f[(f[D>>2]|0)+44>>2]|0)+64|0,a,g,w,i)|0){lSa((f[z>>2]|0)+12|0,a<<2,B,C,64);Vqa((f[(f[D>>2]|0)+44>>2]|0)+64|0,f[C>>2]|0,B)|0;a=f[(f[D>>2]|0)+44>>2]|0;f[a+104>>2]=h;Dra(a,0,j);Dra(f[(f[D>>2]|0)+44>>2]|0,1,k);Dra(f[(f[D>>2]|0)+44>>2]|0,2,l);Era(f[(f[D>>2]|0)+44>>2]|0,0,0);Era(f[(f[D>>2]|0)+44>>2]|0,1,j);Era(f[(f[D>>2]|0)+44>>2]|0,2,t);Hja(f[(f[D>>2]|0)+44>>2]|0,0,m,n);Hja(f[(f[D>>2]|0)+44>>2]|0,1,o,p);Hja(f[(f[D>>2]|0)+44>>2]|0,2,q,r);f[x>>2]=0;a=x+4|0;f[a>>2]=0;lSa((f[z>>2]|0)+36|0,w<<1,x,y,64);Vqa((f[(f[D>>2]|0)+44>>2]|0)+64|0,f[y>>2]|0,x)|0;Bra(f[(f[D>>2]|0)+44>>2]|0,x);Cra(f[(f[D>>2]|0)+44>>2]|0,f[y>>2]|0);a=f[a>>2]|0;if(a|0)Ppb(a);l=f[(f[D>>2]|0)+44>>2]|0;f[l+48>>2]=f[A>>2];Fra(l,B,f[C>>2]|0);Wra(f[(f[D>>2]|0)+44>>2]|0,f[(f[z>>2]|0)+4>>2]|0,1);YHa(f[z>>2]|0,D);if(Yra(f[(f[D>>2]|0)+44>>2]|0,0,0,0)|0)YNa(f[(f[f[z>>2]>>2]|0)+228>>2]|0)}a=f[s>>2]|0;if(a|0)Ppb(a)}a=f[D+4>>2]|0;if(a|0)Ppb(a);u=E;return}function GHa(a,c,d,e,g,h,i,j,k,l,m,n,o){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+32|0;r=y+24|0;x=y+16|0;t=y+12|0;v=y+8|0;w=y;s=a+4|0;a=f[s>>2]|0;p=a+156|0;q=b[p>>0]|0;if(q&4){b[p>>0]=q&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=y;return}h=h+g|0;q=h+i|0;if(!q){u=y;return}f[r>>2]=c;f[r+4>>2]=d;lwa(x,f[(f[s>>2]|0)+4>>2]|0,r);a=f[x>>2]|0;do if(a|0){a=f[(f[a+44>>2]|0)+12>>2]|0;if(a|0)if(f[a>>2]|0)break;switch(e&3){case 2:{a=2;p=10;break}case 1:{a=1;p=10;break}default:{a=0;p=11}}if((p|0)==10)if(e&4)p=11;if((p|0)==11)a=a|4;if(e&268435456)a=e>>>2&64|e>>>1&8|e>>>3&512|a|4096;if(e&536870912)a=e>>>2&128|e>>>1&16|e>>>3&1024|a|8192;if(e&1073741824)a=e>>31&32768|e>>>2&256|e>>>1&32|e>>>3&2048|a|16384;f[t>>2]=a|e&196608;a=zra(t)|0;if(Oqa((f[(f[x>>2]|0)+44>>2]|0)+64|0,X(a,q)|0,0)|0){Hja(f[(f[x>>2]|0)+44>>2]|0,0,j,k);Hja(f[(f[x>>2]|0)+44>>2]|0,1,l,m);Hja(f[(f[x>>2]|0)+44>>2]|0,2,n,o);l=f[(f[x>>2]|0)+44>>2]|0;f[l+48>>2]=f[t>>2];f[l+104>>2]=q;Era(l,0,0);Era(f[(f[x>>2]|0)+44>>2]|0,1,g);Era(f[(f[x>>2]|0)+44>>2]|0,2,h);Dra(f[(f[x>>2]|0)+44>>2]|0,0,0);Dra(f[(f[x>>2]|0)+44>>2]|0,1,0);Dra(f[(f[x>>2]|0)+44>>2]|0,2,0);f[v>>2]=0;f[w>>2]=0;l=w+4|0;f[l>>2]=0;lSa((f[s>>2]|0)+12|0,X(q<<2,a)|0,w,v,64);Fra(f[(f[x>>2]|0)+44>>2]|0,w,f[v>>2]|0);a=f[l>>2]|0;if(a|0)Ppb(a)}}while(0);a=f[x+4>>2]|0;if(a|0)Ppb(a);u=y;return}function HHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;j=s+8|0;r=s;q=a+4|0;h=f[q>>2]|0;i=h+156|0;a=b[i>>0]|0;if(a&4){b[i>>0]=a&-5;gva((f[h>>2]|0)+92|0)}if((c|0)==0|(e|0)==0|(g|0)==0){u=s;return}f[j>>2]=c;f[j+4>>2]=d;lwa(r,f[(f[q>>2]|0)+4>>2]|0,j);a=f[r>>2]|0;do if(a|0){a=f[a+44>>2]|0;h=f[a+12>>2]|0;if(h|0)if(f[h>>2]|0)break;h=zra(a+48|0)|0;i=h<<2;a=(g>>>0)/(i>>>0)|0;if((X(a,i)|0)==(g|0)){c=f[(f[r>>2]|0)+44>>2]|0;d=f[c+104>>2]|0;j=f[c+40>>2]|0;k=f[c+44>>2]|0;l=f[c+24>>2]|0;m=f[c+28>>2]|0;n=f[c+32>>2]|0;p=m+l+n|0;o=d-p|0;o=a>>>0>o>>>0?o:a;if(o|0){a=j-l|0;a=a>>>0<o>>>0?a:o;t=o-a|0;j=k-j-m|0;j=j>>>0<t>>>0?j:t;m=t-j|0;n=d-k-n|0;Dra(c,0,a+l|0);l=f[(f[r>>2]|0)+44>>2]|0;Dra(l,1,(f[l+28>>2]|0)+j|0);l=f[(f[r>>2]|0)+44>>2]|0;Dra(l,2,(f[l+32>>2]|0)+(n>>>0<m>>>0?n:m)|0);Sqa((f[(f[r>>2]|0)+44>>2]|0)+64|0,X(p,h)|0,X(o,h)|0,e)|0;n=f[f[(f[r>>2]|0)+44>>2]>>2]|0;J5a(f[n>>2]|0,(f[n+8>>2]|0)+(X(p,i)|0)|0,g,e);if((o+p|0)>>>0>=d>>>0)Wra(f[(f[r>>2]|0)+44>>2]|0,f[(f[q>>2]|0)+4>>2]|0,1);a=f[(f[r>>2]|0)+44>>2]|0;if(b[a+144>>0]&2){YHa(f[q>>2]|0,r);a=f[(f[r>>2]|0)+44>>2]|0}if(Yra(a,p,o,0)|0)YNa(f[(f[f[q>>2]>>2]|0)+228>>2]|0)}}}while(0);a=f[r+4>>2]|0;if(a|0)Ppb(a);u=s;return}function IHa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;i=l+16|0;j=l+4|0;k=l;a=a+4|0;h=f[a>>2]|0;e=h+156|0;g=b[e>>0]|0;if(g&4){b[e>>0]=g&-5;gva((f[h>>2]|0)+92|0)}if((c|0)==0|(d|0)==0){u=l;return 0}h=Wpb(72)|0;e=f[(f[a>>2]|0)+4>>2]|0;f[i>>2]=f[d+16>>2];f[i+4>>2]=f[d+20>>2];f[i+8>>2]=f[d+24>>2];f[j>>2]=f[d+28>>2];f[j+4>>2]=f[d+32>>2];f[j+8>>2]=f[d+36>>2];W0a(h,e,d,i,j,f[d+8>>2]|0);VHa(f[a>>2]|0,d,h);e=f[(f[a>>2]|0)+4>>2]|0;f[k>>2]=h;ywa(e,c,k)|0;e=f[k>>2]|0;f[k>>2]=0;if(!e){u=l;return 0}Jla(e);Zpb(e);u=l;return 0}function JHa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;e=xva(f[(f[a+4>>2]|0)+4>>2]|0,e)|0;Sh[f[(f[a>>2]|0)+176>>2]&63](a,b,c,d,e,g?0:2);return}function KHa(a,c,d,e,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+64|0;m=v+36|0;t=v+40|0;s=v+24|0;p=v+16|0;q=v+8|0;n=v;f[m>>2]=g;o=a+4|0;a=f[o>>2]|0;g=a+156|0;l=b[g>>0]|0;if(l&4){b[g>>0]=l&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=v;return}E6a(t);B6a(s);if(((Nja(e,m,t,s,h,i,j)|0)+-1|0)>>>0>=4){f[p>>2]=c;f[p+4>>2]=d;hwa(q,f[(f[o>>2]|0)+4>>2]|0,p);a=f[q>>2]|0;c=(a|0)!=0;if(c)r=11;else{gla(n,f[(f[o>>2]|0)+4>>2]|0);a=f[n>>2]|0;l=n+4|0;m=f[l>>2]|0;f[n>>2]=0;f[l>>2]=0;f[q>>2]=a;a=q+4|0;g=f[a>>2]|0;f[a>>2]=m;if(g|0){Ppb(g);g=f[l>>2]|0;if(g|0)Ppb(g)}if(Mva(f[(f[o>>2]|0)+4>>2]|0,q,p)|0){a=f[q>>2]|0;r=11}}if((r|0)==11){Ela(a,k);if(f[t>>2]|0)Bla(f[q>>2]|0,t);if(f[s>>2]|0)Cla(f[q>>2]|0,s);if(c){r=(f[o>>2]|0)+156|0;b[r>>0]=b[r>>0]|8}NGa(f[(f[f[o>>2]>>2]|0)+232>>2]|0,p,0);a=q+4|0}a=f[a>>2]|0;if(a|0)Ppb(a)}a=f[s>>2]|0;f[s>>2]=0;if(a|0)_pb(a);a=f[t>>2]|0;f[t>>2]=0;if(a|0)_pb(a);u=v;return}function LHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;i=n+24|0;l=n+16|0;m=n+8|0;j=n;k=a+4|0;h=f[k>>2]|0;a=h+156|0;g=b[a>>0]|0;if(g&4){b[a>>0]=g&-5;gva((f[h>>2]|0)+92|0)}if(!c){u=n;return}f[i>>2]=c;f[i+4>>2]=e;hwa(l,f[(f[k>>2]|0)+4>>2]|0,i);if(f[l>>2]|0){f[m>>2]=c;f[m+4>>2]=d;g=f[(f[k>>2]|0)+4>>2]|0;nla(j,l);g=Mva(g,j,m)|0;a=f[j+4>>2]|0;if(a|0)Ppb(a);if(g)NGa(f[(f[f[k>>2]>>2]|0)+232>>2]|0,m,0)}a=f[l+4>>2]|0;if(a|0)Ppb(a);u=n;return}function MHa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+8|0;e=h+4|0;g=h;a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;if(c){f[e>>2]=b;f[d>>2]=f[e>>2];YGa(a,d)}f[g>>2]=b;f[d>>2]=f[g>>2];DGa(a,d,13);u=h;return}function NHa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+8|0;e=h+4|0;g=h;a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;if(c){f[e>>2]=b;f[d>>2]=f[e>>2];YGa(a,d)}f[g>>2]=b;f[d>>2]=f[g>>2];DGa(a,d,15);u=h;return}function OHa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+12|0;g=k+8|0;i=k+4|0;j=k;a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;if(e){f[g>>2]=b;f[h>>2]=f[g>>2];YGa(a,h);c=0;d=0}f[i>>2]=b;f[h>>2]=f[i>>2];TGa(a,h,c,d);f[j>>2]=b;f[h>>2]=f[j>>2];DGa(a,h,11);u=k;return}function PHa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;a=f[(f[f[a+4>>2]>>2]|0)+232>>2]|0;f[e>>2]=b;f[d>>2]=f[e>>2];DGa(a,d,17);u=c;return}function QHa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;a=a+4|0;UHa(f[a>>2]|0);a=f[(f[f[a>>2]>>2]|0)+232>>2]|0;f[e>>2]=b;f[d>>2]=f[e>>2];DGa(a,d,18);u=c;return}function RHa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;i=a+4|0;j=f[i>>2]|0;k=j+156|0;a=b[k>>0]|0;if(a&4){b[k>>0]=a&-5;gva((f[j>>2]|0)+92|0)}if((d|0)==0|(e|0)==0){u=m;return}if(!(Cva(f[(f[i>>2]|0)+4>>2]|0,c,d,e,g,h)|0)){u=m;return}h=f[(f[f[i>>2]>>2]|0)+232>>2]|0;g=f[(f[h>>2]|0)+12>>2]|0;f[l>>2]=d;f[l+4>>2]=e;nh[g&1023](h,l);D3((f[f[i>>2]>>2]|0)+152|0,c,d,e);YNa(f[(f[f[i>>2]>>2]|0)+228>>2]|0);u=m;return}function SHa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0.0,l=0.0,m=0,o=0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0;C=u;u=u+800|0;s=C+780|0;v=C+768|0;A=C+760|0;B=C+736|0;w=C+712|0;x=C+24|0;y=C;z=a+4|0;a=f[z>>2]|0;m=a+156|0;o=b[m>>0]|0;if(o&4){b[m>>0]=o&-5;gva((f[a>>2]|0)+92|0)}if(!c){u=C;return}c=(f[z>>2]|0)+156|0;b[c>>0]=b[c>>0]|16;if(g|0)Nwa(f[(f[z>>2]|0)+4>>2]|0,f[g>>2]|0);f[s>>2]=f[d>>2];m=s+4|0;f[m>>2]=f[d+4>>2];g=s+8|0;f[g>>2]=f[d+8>>2];f[v>>2]=f[e>>2];o=v+4|0;f[o>>2]=f[e+4>>2];d=v+8|0;f[d>>2]=f[e+8>>2];Lwa(f[(f[z>>2]|0)+4>>2]|0,s,v);if(h){h=f[z>>2]|0;c=f[(f[h>>2]|0)+228>>2]|0;h=f[h+4>>2]|0;a=vva(h)|0;e=f[(f[z>>2]|0)+140>>2]|0;f[B>>2]=a;f[B+4>>2]=e;qwa(A,h,B);if(!(f[A>>2]|0))t=10;else{uOa(c,A,1);a=f[A>>2]|0;if(!a)t=10;else if(!(b[a+724>>0]&1))t=10}if((t|0)==10){r=+n[s>>2];q=+n[v>>2];if(!(r>q)){l=+n[m>>2];k=+n[o>>2];if(!(l>k)){j=+n[g>>2];i=+n[d>>2];if(!(j>i))if(!(r==q&l==k&j==i)){E=q;F=r;G=E-F;D=k;k=D-l;q=i;r=q-j;r=+L(+(G*G+(k*k+r*r)));k=F*.5+E*.5;p[B>>3]=k;l=l*.5+D*.5;p[B+8>>3]=l;q=j*.5+q*.5;p[B+16>>3]=q;p[w>>3]=k;p[w+8>>3]=l;p[w+16>>3]=r+q;p[y>>3]=0.0;p[y+8>>3]=1.0;p[y+16>>3]=0.0;fga(x,1,w,B,y,r,r,.01);FNa(c,x,1);THa(c+48|0,ENa(c)|0)}}}}a=f[A+4>>2]|0;if(a|0)Ppb(a)}gva((f[f[z>>2]>>2]|0)+20|0);u=C;return}function THa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;h=m;d=f[a>>2]|0;l=a+4|0;i=f[l>>2]|0;if((d|0)==(i|0)){u=m;return}j=h+16|0;do{g=d+16|0;e=f[g>>2]|0;if(e|0){nh[f[(f[e>>2]|0)+24>>2]&1023](e,c);if(b[d+24>>0]|0){f[j>>2]=0;e=f[g>>2]|0;if((d|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[g>>2]=0;e=f[j>>2]|0;do if(!e){f[g>>2]=0;k=15}else if((h|0)==(e|0)){f[g>>2]=d;k=f[j>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,d);k=15;break}else{f[g>>2]=e;f[j>>2]=0;e=0;g=0;break}while(0);if((k|0)==15){k=0;g=f[j>>2]|0;e=g}if((h|0)==(e|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}}d=d+32|0}while((d|0)!=(i|0));d=f[l>>2]|0;if((f[a>>2]|0)==(d|0)){u=m;return}while(1){if(!(f[d+-16>>2]|0)){e=d;g=0;c=0}else{k=30;break}d=d+-32|0;while(1){k=e+-32|0;f[l>>2]=k;if((k|0)==(g|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);e=f[l>>2]|0;if((e|0)==(d|0))break;c=f[e+-16>>2]|0;g=c}if((f[a>>2]|0)==(d|0)){k=30;break}}if((k|0)==30){u=m;return}}function UHa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+688|0;m=n;f[a+140>>2]=0;l=a+72|0;if(f[l>>2]|0){k=a+68|0;c=f[k>>2]|0;if(c|0)do{j=c;c=f[c>>2]|0;h=j+16|0;d=f[h>>2]|0;if(d|0){i=j+20|0;e=f[i>>2]|0;if((e|0)!=(d|0)){do{g=e+-16|0;f[i>>2]=g;e=f[e+-12>>2]|0;if(!e)e=g;else{Ppb(e);e=f[i>>2]|0}}while((e|0)!=(d|0));d=f[h>>2]|0}Zpb(d)}Zpb(j)}while((c|0)!=0);f[k>>2]=0;d=f[a+64>>2]|0;if(d|0){e=a+60|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[l>>2]=0}g=a+92|0;if(f[g>>2]|0){d=a+88|0;c=f[d>>2]|0;if(c|0)do{l=c;c=f[c>>2]|0;Zpb(l)}while((c|0)!=0);f[d>>2]=0;d=f[a+84>>2]|0;if(d|0){e=a+80|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}h=a+112|0;if(f[h>>2]|0){g=a+108|0;c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+20>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[a+104>>2]|0;if(d|0){e=a+100|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}g=a+132|0;if(f[g>>2]|0){d=a+128|0;c=f[d>>2]|0;if(c|0)do{l=c;c=f[c>>2]|0;Zpb(l)}while((c|0)!=0);f[d>>2]=0;d=f[a+124>>2]|0;if(d|0){e=a+120|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}c=f[a+144>>2]|0;d=a+148|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-64-c|0)>>>6)<<6);c=a+156|0;b[c>>0]=b[c>>0]&-32;kSa(m,34962,4194304,262144);f[a+12>>2]=f[m>>2];c=m+4|0;l=f[c>>2]|0;d=m+8|0;k=f[d>>2]|0;f[c>>2]=0;f[d>>2]=0;f[a+16>>2]=l;l=a+20|0;c=f[l>>2]|0;f[l>>2]=k;if(!c){l=a+24|0;k=m+12|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2]}else{Ppb(c);c=f[d>>2]|0;l=a+24|0;k=m+12|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];if(c|0)Ppb(c)}kSa(m,34963,4194304,262144);f[a+36>>2]=f[m>>2];d=m+4|0;l=f[d>>2]|0;c=m+8|0;k=f[c>>2]|0;f[d>>2]=0;f[c>>2]=0;f[a+40>>2]=l;l=a+44|0;d=f[l>>2]|0;f[l>>2]=k;if(!d){l=a+48|0;k=m+12|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];a=f[a>>2]|0;a=a+228|0;a=f[a>>2]|0;jga(m);FNa(a,m,1);u=n;return}Ppb(d);c=f[c>>2]|0;l=a+48|0;k=m+12|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];if(!c){a=f[a>>2]|0;a=a+228|0;a=f[a>>2]|0;jga(m);FNa(a,m,1);u=n;return}Ppb(c);a=f[a>>2]|0;a=a+228|0;a=f[a>>2]|0;jga(m);FNa(a,m,1);u=n;return}function VHa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;o=r+12|0;p=r;q=c+12|0;n=b+40|0;h=b+44|0;WHa(q,((f[h>>2]|0)-(f[n>>2]|0)|0)/56|0);b=f[n>>2]|0;h=f[h>>2]|0;if((b|0)==(h|0)){u=r;return}i=a+4|0;j=o+4|0;k=o+8|0;l=p+4|0;m=p+8|0;n=c+16|0;g=c+20|0;do{c=f[i>>2]|0;f[o>>2]=f[b+16>>2];f[j>>2]=f[b+20>>2];f[k>>2]=f[b+24>>2];f[p>>2]=f[b+28>>2];f[l>>2]=f[b+32>>2];f[m>>2]=f[b+36>>2];d=b+8|0;e=f[n>>2]|0;if(e>>>0<(f[g>>2]|0)>>>0){W0a(e,c,b,o,p,f[d>>2]|0);c=(f[n>>2]|0)+72|0;f[n>>2]=c}else{XHa(q,c,b,o,p,d);c=f[n>>2]|0}VHa(a,b,c+-72|0);b=b+56|0}while((b|0)!=(h|0));u=r;return}function WHa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[a>>2]|0;c=d;if((((f[k>>2]|0)-d|0)/72|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>59652323)ud();g=f[l>>2]|0;i=Wpb(b*72|0)|0;h=i+(((g-d|0)/72|0)*72|0)|0;j=h;i=i+(b*72|0)|0;d=g;if((d|0)==(c|0)){e=j;b=g}else{e=j;b=h;do{d=d+-72|0;X0a(b+-72|0,d);b=e+-72|0;e=b}while((d|0)!=(c|0));b=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=i;d=b;if((c|0)!=(d|0))do{c=c+-72|0;Jla(c)}while((c|0)!=(d|0));if(!b)return;Zpb(b);return}function XHa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;i=f[a>>2]|0;j=((f[n>>2]|0)-i|0)/72|0;h=j+1|0;if(h>>>0>59652323)fob(a);m=a+8|0;i=((f[m>>2]|0)-i|0)/72|0;l=i<<1;h=i>>>0<29826161?(l>>>0<h>>>0?h:l):59652323;do if(!h)k=0;else if(h>>>0>59652323)ud();else{k=Wpb(h*72|0)|0;break}while(0);i=k+(j*72|0)|0;j=i;l=k+(h*72|0)|0;W0a(i,b,c,d,e,f[g>>2]|0);b=i+72|0;k=f[a>>2]|0;h=f[n>>2]|0;if((h|0)==(k|0)){i=j;j=k;h=k}else{do{h=h+-72|0;X0a(i+-72|0,h);i=j+-72|0;j=i}while((h|0)!=(k|0));i=j;j=f[a>>2]|0;h=f[n>>2]|0}f[a>>2]=i;f[n>>2]=b;f[m>>2]=l;i=j;if((h|0)!=(i|0))do{h=h+-72|0;Jla(h)}while((h|0)!=(i|0));if(!j)return;Zpb(j);return}function YHa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;m=o+8|0;n=o;RGa(f[(f[a>>2]|0)+232>>2]|0,(f[b>>2]|0)+28|0,0);l=a+100|0;c=ZHa(l,(f[b>>2]|0)+28|0)|0;if(!c){u=o;return}d=f[c+16>>2]|0;j=f[c+20>>2]|0;k=(j|0)==0;if(!k)Npb(j);c=f[d>>2]|0;e=f[d+4>>2]|0;if((c|0)!=(e|0)){g=m+4|0;h=a+4|0;i=n+4|0;do{p=f[c>>2]|0;d=f[b>>2]|0;f[m>>2]=f[d+28>>2];f[g>>2]=p;if((p|0)!=(f[d+32>>2]|0)){lwa(n,f[h>>2]|0,m);d=f[n>>2]|0;if(d|0)RGa(f[(f[a>>2]|0)+232>>2]|0,d+28|0,0);d=f[i>>2]|0;if(d|0)Ppb(d)}_Ha(l,m)|0;c=c+4|0}while((c|0)!=(e|0))}if(k){u=o;return}Ppb(j);u=o;return}function ZHa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function _Ha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=ZHa(a,b)|0;if(!l){l=0;return l|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0<i>>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;b=a+12|0;f[b>>2]=(f[b>>2]|0)+-1;b=f[l+20>>2]|0;if(b|0)Ppb(b);Zpb(l);l=1;return l|0}function $Ha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function aIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;j=f[b>>2]|0;l=f[b+4>>2]|0;p=l+-1640531527+(j<<6)+(j>>>2)^j;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(o)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)k=p&i;else if(p>>>0<h>>>0)k=p;else k=(p>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(k<<2)>>2]|0;if(!c)c=k;else{c=f[c>>2]|0;if(!c)c=k;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&i|0)==(k|0))){c=k;break a}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(k|0)){c=k;break a}}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}}}while(0);j=Wpb(28)|0;l=b;b=f[l+4>>2]|0;i=j+8|0;f[i>>2]=f[l>>2];f[i+4>>2]=b;i=j+16|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;nIa(a,c>>>0<d>>>0?d:c);c=f[m>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=33}}else{f[j>>2]=f[c>>2];q=33}if((q|0)==33)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+16|0;return a|0}function bIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;j=f[b>>2]|0;l=f[b+4>>2]|0;p=l+-1640531527+(j<<6)+(j>>>2)^j;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(o)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)k=p&i;else if(p>>>0<h>>>0)k=p;else k=(p>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(k<<2)>>2]|0;if(!c)c=k;else{c=f[c>>2]|0;if(!c)c=k;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&i|0)==(k|0))){c=k;break a}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(k|0)){c=k;break a}}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}}}while(0);j=Wpb(24)|0;l=b;b=f[l+4>>2]|0;i=j+8|0;f[i>>2]=f[l>>2];f[i+4>>2]=b;f[j+16>>2]=0;f[j+20>>2]=0;f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;lIa(a,c>>>0<d>>>0?d:c);c=f[m>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=33}}else{f[j>>2]=f[c>>2];q=33}if((q|0)==33)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+16|0;return a|0}function cIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;s=y+8|0;t=y;v=a+144|0;w=a+148|0;c=f[w>>2]|0;if((f[v>>2]|0)==(c|0)){u=y;return}x=a+4|0;k=s+4|0;l=t+4|0;m=s+4|0;n=t+4|0;o=s+4|0;p=t+4|0;q=s+4|0;r=t+4|0;while(1){g=f[x>>2]|0;i=f[(f[a>>2]|0)+232>>2]|0;j=c+-64|0;d=f[c+-48>>2]|0;f[s>>2]=f[j>>2];f[k>>2]=d;lwa(t,g,s);d=(f[t>>2]|0)==0;e=f[l>>2]|0;if(e|0)Ppb(e);if(d){d=zEa(i,s,5)|0;if(d<<24>>24==1)h=8;else{c=d;h=24}}else h=8;do if((h|0)==8){h=0;d=f[c+-40>>2]|0;f[s>>2]=f[j>>2];f[m>>2]=d;kwa(t,g,s);d=(f[t>>2]|0)==0;e=f[n>>2]|0;if(e|0)Ppb(e);if(d){d=zEa(i,s,3)|0;if(d<<24>>24!=1){c=d;h=24;break}}d=f[c+-36>>2]|0;f[s>>2]=f[j>>2];f[o>>2]=d;kwa(t,g,s);d=(f[t>>2]|0)==0;e=f[p>>2]|0;if(e|0)Ppb(e);if(d){d=zEa(i,s,3)|0;if(d<<24>>24!=1){c=d;h=24;break}}c=f[c+-32>>2]|0;f[s>>2]=f[j>>2];f[q>>2]=c;kwa(t,g,s);c=(f[t>>2]|0)==0;d=f[r>>2]|0;if(d|0)Ppb(d);if(c){c=zEa(i,s,3)|0;if(c<<24>>24!=1){h=24;break}}dIa(b,j)|0}while(0);if((h|0)==24)if(!(c<<24>>24)){h=26;break}c=(f[w>>2]|0)+-64|0;f[w>>2]=c;if((f[v>>2]|0)==(c|0)){h=26;break}}if((h|0)==26){u=y;return}}function dIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+64|0;t=x+48|0;w=x+40|0;g=x+32|0;v=x+24|0;l=x+16|0;m=x+8|0;k=x;p=a+4|0;a=f[p>>2]|0;d=a+156|0;e=b[d>>0]|0;if(e&4){b[d>>0]=e&-5;gva((f[a>>2]|0)+92|0)}a=f[c>>2]|0;if(!a){w=1;u=x;return w|0}s=f[p>>2]|0;r=f[s+4>>2]|0;s=f[s>>2]|0;o=f[c+4>>2]|0;f[t>>2]=a;f[t+4>>2]=o;Boa(w,r);o=f[c+16>>2]|0;f[g>>2]=f[c>>2];f[g+4>>2]=o;lwa(v,r,g);do if(!(f[v>>2]|0))d=0;else{Noa(f[w>>2]|0,v);a=f[c+24>>2]|0;e=f[c+28>>2]|0;g=f[c+32>>2]|0;j=l+4|0;h=m+4|0;i=k+4|0;d=f[v>>2]|0;f[l>>2]=f[d+4>>2];d=f[d+8>>2]|0;f[j>>2]=d;if(d|0)Npb(d);if((a|0)==-1)q=25;else{f[m>>2]=f[c>>2];f[h>>2]=a;kwa(k,r,m);o=f[k>>2]|0;a=o;if(!o)if(!(f[l>>2]|0))a=1;else q=21;else{d=f[i>>2]|0;if(d|0)Npb(d);f[l>>2]=a;a=f[j>>2]|0;f[j>>2]=d;if(!a)q=21;else{Ppb(a);q=21}}if((q|0)==21)a=0;d=f[i>>2]|0;if(d|0)Ppb(d);if(!a)q=25;else a=1}if((q|0)==25){Qoa(f[w>>2]|0,0,l);a=0}d=f[j>>2]|0;if(d|0)Ppb(d);if(!a){a=f[v>>2]|0;f[l>>2]=f[a+12>>2];a=f[a+16>>2]|0;f[j>>2]=a;if(a|0)Npb(a);if((e|0)==-1)q=113;else{f[m>>2]=f[c>>2];f[h>>2]=e;kwa(k,r,m);o=f[k>>2]|0;a=o;if(!o)if(!(f[l>>2]|0))a=1;else q=109;else{d=f[i>>2]|0;if(d|0)Npb(d);f[l>>2]=a;a=f[j>>2]|0;f[j>>2]=d;if(!a)q=109;else{Ppb(a);q=109}}if((q|0)==109)a=0;d=f[i>>2]|0;if(d|0)Ppb(d);if(!a)q=113;else a=1}if((q|0)==113){Qoa(f[w>>2]|0,1,l);a=0}d=f[j>>2]|0;if(d|0)Ppb(d);if(!a){a=f[v>>2]|0;f[l>>2]=f[a+20>>2];a=f[a+24>>2]|0;f[j>>2]=a;if(a|0)Npb(a);if((g|0)==-1)q=130;else{f[m>>2]=f[c>>2];f[h>>2]=g;kwa(k,r,m);o=f[k>>2]|0;a=o;if(!o)if(!(f[l>>2]|0))d=1;else q=126;else{d=f[i>>2]|0;if(d|0)Npb(d);f[l>>2]=a;a=f[j>>2]|0;f[j>>2]=d;if(!a)q=126;else{Ppb(a);q=126}}if((q|0)==126)d=0;a=f[i>>2]|0;if(a|0)Ppb(a);if(!d)q=130;else d=1}if((q|0)==130){Qoa(f[w>>2]|0,2,l);d=0}a=f[j>>2]|0;if(a|0)Ppb(a);if(!d){d=f[c+36>>2]|0;g=f[c+40>>2]|0;j=f[c+44>>2]|0;i=gIa((f[p>>2]|0)+80|0,(f[v>>2]|0)+28|0)|0;e=i+16|0;h=l+4|0;k=l+4|0;a=(d|0)==0;a:do if(!i){do if(!a){f[l>>2]=f[c>>2];f[k>>2]=d;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a)break;else{ypa(f[w>>2]|0,0,a+16|0);break}}while(0);do if(g|0){f[l>>2]=f[c>>2];f[k>>2]=g;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a)break;else{ypa(f[w>>2]|0,1,a+16|0);break}}while(0);if(!j)break;f[l>>2]=f[c>>2];f[k>>2]=j;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a)break;else{ypa(f[w>>2]|0,2,a+16|0);break}}else{do if(a)q=33;else{f[l>>2]=f[c>>2];f[k>>2]=d;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a){q=33;break}else{ypa(f[w>>2]|0,0,a+16|0);break}}while(0);do if((q|0)==33){a=f[p>>2]|0;o=f[e>>2]|0;f[l>>2]=f[(f[v>>2]|0)+28>>2];f[h>>2]=o;a=$Ha(a+60|0,l)|0;if(!a)break;ypa(f[w>>2]|0,0,a+16|0)}while(0);do if(!g)q=93;else{f[l>>2]=f[c>>2];f[k>>2]=g;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a){q=93;break}else{ypa(f[w>>2]|0,1,a+16|0);break}}while(0);do if((q|0)==93){a=f[p>>2]|0;o=f[i+20>>2]|0;f[l>>2]=f[(f[v>>2]|0)+28>>2];f[h>>2]=o;a=$Ha(a+60|0,l)|0;if(!a)break;ypa(f[w>>2]|0,1,a+16|0)}while(0);do if(j|0){f[l>>2]=f[c>>2];f[k>>2]=j;a=$Ha((f[p>>2]|0)+60|0,l)|0;if(!a)break;else{ypa(f[w>>2]|0,2,a+16|0);break a}}while(0);a=f[p>>2]|0;o=f[i+24>>2]|0;f[l>>2]=f[(f[v>>2]|0)+28>>2];f[h>>2]=o;a=$Ha(a+60|0,l)|0;if(!a)break;ypa(f[w>>2]|0,2,a+16|0)}while(0);o=f[c+20>>2]|0;f[l>>2]=f[c>>2];f[l+4>>2]=o;jwa(m,r,l);if(f[m>>2]|0)Yoa(f[w>>2]|0,0,m);a=f[m+4>>2]|0;if(a|0)Ppb(a);a=f[c+48>>2]|0;if(a|0){f[l>>2]=f[c>>2];f[l+4>>2]=a;twa(m,r,l);if(f[m>>2]|0)dqa(f[w>>2]|0,m);a=f[m+4>>2]|0;if(a|0)Ppb(a)}o=c+52|0;lpa(f[w>>2]|0,1,(f[o>>2]&1|0)!=0,0)|0;lpa(f[w>>2]|0,2,(f[o>>2]&2|0)!=0,0)|0;lpa(f[w>>2]|0,4,(f[o>>2]&4|0)!=0,0)|0;eIa(f[w>>2]|0,f[c+56>>2]|0);o=fIa((f[p>>2]|0)+120|0,t)|0;if(o|0){jqa(f[w>>2]|0,b[o+32>>0]|0,o+16|0,+n[o+28>>2]);m=f[p>>2]|0;g=f[m+124>>2]|0;a=f[o+4>>2]|0;h=g+-1|0;i=(h&g|0)==0;do if(i)k=h&a;else{if(a>>>0<g>>>0){k=a;break}k=(a>>>0)%(g>>>0)|0}while(0);j=m+120|0;d=(f[j>>2]|0)+(k<<2)|0;l=f[d>>2]|0;while(1){a=f[l>>2]|0;if((a|0)==(o|0))break;else l=a}do if((l|0)==(m+128|0))q=59;else{a=f[l+4>>2]|0;do if(i)a=a&h;else{if(a>>>0<g>>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);if((a|0)!=(k|0)){q=59;break}e=o}while(0);do if((q|0)==59){a=f[o>>2]|0;if(a|0){a=f[a+4>>2]|0;do if(i)a=a&h;else{if(a>>>0<g>>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);if((a|0)==(k|0)){e=o;break}}f[d>>2]=0;e=o}while(0);d=f[e>>2]|0;a=d;do if(d){d=f[d+4>>2]|0;do if(i)d=d&h;else{if(d>>>0<g>>>0)break;d=(d>>>0)%(g>>>0)|0}while(0);if((d|0)==(k|0))break;f[(f[j>>2]|0)+(d<<2)>>2]=l;a=f[o>>2]|0}while(0);f[l>>2]=a;f[e>>2]=0;q=m+132|0;f[q>>2]=(f[q>>2]|0)+-1;Zpb(o)}if(!(Qva(r,w,t,c+8|0)|0)){d=1;break}c=(b[(f[(f[(f[w>>2]|0)+4>>2]|0)+44>>2]|0)+144>>0]&2)!=0;LGa(f[s+232>>2]|0,t,0,c);if(!c){d=1;break}YNa(f[s+228>>2]|0);d=1}else d=0}else d=0}else d=0}while(0);a=f[v+4>>2]|0;if(a|0)Ppb(a);a=f[w+4>>2]|0;if(a|0)Ppb(a);w=d;u=x;return w|0}function eIa(a,b){a=a|0;b=b|0;if(b&1|0)Joa(a,1);if(b&4|0)Koa(a,1);if(b&8|0)_oa(a,1);if(b&16|0)$oa(a,1);if(b&32|0)apa(a,1);if(b&64|0)cpa(a,1);if(b&2048|0)dpa(a,1);if(b&8192|0)epa(a,1);if(b&16384|0)gpa(a,1);if(b&32768|0)fpa(a,1);if(!(b&4096))return;mpa(a,7);return}function fIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function gIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function hIa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=31076;b=f[a+12>>2]|0;if(!b){Hpb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);return}function iIa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=31076;b=f[a+12>>2]|0;if(!b){Hpb(a);Zpb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);Zpb(a);return}function jIa(a){a=a|0;var b=0,c=0;c=f[a+12>>2]|0;if(!c)return;a=a+16|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function kIa(a){a=a|0;Zpb(a);return}function lIa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){mIa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;mIa(a,b);return}function mIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function nIa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){oIa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;oIa(a,b);return}function oIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function pIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;j=f[b>>2]|0;l=f[b+4>>2]|0;p=l+-1640531527+(j<<6)+(j>>>2)^j;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(o)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)k=p&i;else if(p>>>0<h>>>0)k=p;else k=(p>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(k<<2)>>2]|0;if(!c)c=k;else{c=f[c>>2]|0;if(!c)c=k;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&i|0)==(k|0))){c=k;break a}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(k|0)){c=k;break a}}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}}}while(0);j=Wpb(36)|0;l=b;b=f[l+4>>2]|0;i=j+8|0;f[i>>2]=f[l>>2];f[i+4>>2]=b;i=j+16|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;qIa(a,c>>>0<d>>>0?d:c);c=f[m>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=33}}else{f[j>>2]=f[c>>2];q=33}if((q|0)==33)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+16|0;return a|0}function qIa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){rIa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;rIa(a,b);return}function rIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function sIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;l=f[a>>2]|0;m=(f[i>>2]|0)-l|0;d=m>>6;c=d+1|0;if(c>>>0>67108863)fob(a);n=a+8|0;g=(f[n>>2]|0)-l|0;h=g>>5;c=g>>6>>>0<33554431?(h>>>0<c>>>0?c:h):67108863;do if(!c){j=0;k=0}else if(c>>>0>67108863)ud();else{k=Wpb(c<<6)|0;j=k;break}while(0);h=j+(d<<6)|0;e=j+(c<<6)|0;g=h;c=b;d=g+64|0;do{f[g>>2]=f[c>>2];g=g+4|0;c=c+4|0}while((g|0)<(d|0));if((m|0)>0)Irb(k|0,l|0,m|0)|0;f[a>>2]=j;f[i>>2]=h+64;f[n>>2]=e;if(!l)return;Zpb(l);return}function tIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;j=f[b>>2]|0;l=f[b+4>>2]|0;p=l+-1640531527+(j<<6)+(j>>>2)^j;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(o)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)k=p&i;else if(p>>>0<h>>>0)k=p;else k=(p>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(k<<2)>>2]|0;if(!c)c=k;else{c=f[c>>2]|0;if(!c)c=k;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(p|0)|(d&i|0)==(k|0))){c=k;break a}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(p|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(k|0)){c=k;break a}}if((f[c+8>>2]|0)==(j|0))if((f[c+12>>2]|0)==(l|0))break;c=f[c>>2]|0;if(!c){c=k;break a}}a=c+16|0;return a|0}}}while(0);j=Wpb(28)|0;l=b;b=f[l+4>>2]|0;i=j+8|0;f[i>>2]=f[l>>2];f[i+4>>2]=b;Dqa(j+16|0);f[j+4>>2]=p;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;uIa(a,c>>>0<d>>>0?d:c);c=f[m>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&p;break}if(p>>>0<c>>>0){h=c;c=p}else{h=c;c=(p>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;q=33}}else{f[j>>2]=f[c>>2];q=33}if((q|0)==33)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+16|0;return a|0}function uIa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){vIa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;vIa(a,b);return}function vIa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function wIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;i=o;j=o+24|0;e=f[a>>2]|0;n=a+4|0;k=f[n>>2]|0;if((e|0)==(k|0)){u=o;return}l=i+16|0;do{h=e+16|0;g=f[h>>2]|0;if(g|0){f[i>>2]=c;f[j>>2]=d;wh[f[(f[g>>2]|0)+24>>2]&127](g,i,j);if(b[e+24>>0]|0){f[l>>2]=0;g=f[h>>2]|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g);f[h>>2]=0;g=f[l>>2]|0;do if(!g){f[h>>2]=0;m=15}else if((i|0)==(g|0)){f[h>>2]=e;m=f[l>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,e);m=15;break}else{f[h>>2]=g;f[l>>2]=0;g=0;h=0;break}while(0);if((m|0)==15){m=0;h=f[l>>2]|0;g=h}if((i|0)==(g|0))fh[f[(f[h>>2]|0)+16>>2]&2047](h);else if(h|0)fh[f[(f[h>>2]|0)+20>>2]&2047](h)}}e=e+32|0}while((e|0)!=(k|0));e=f[n>>2]|0;if((f[a>>2]|0)==(e|0)){u=o;return}while(1){if(!(f[e+-16>>2]|0)){g=e;h=0;c=0}else{m=30;break}e=e+-32|0;while(1){m=g+-32|0;f[n>>2]=m;if((m|0)==(h|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);g=f[n>>2]|0;if((g|0)==(e|0))break;c=f[g+-16>>2]|0;h=c}if((f[a>>2]|0)==(e|0)){m=30;break}}if((m|0)==30){u=o;return}}function xIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;j=a+12|0;k=j+11|0;if((b[k>>0]|0)<0){b[f[j>>2]>>0]=0;f[a+16>>2]=0}else{b[j>>0]=0;b[k>>0]=0}h=f[a>>2]|0;i=a+4|0;e=f[i>>2]|0;if((e|0)!=(h|0))do{g=e+-24|0;f[i>>2]=g;e=e+-12|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);if((b[g+11>>0]|0)<0)Zpb(f[g>>2]|0);e=f[i>>2]|0}while((e|0)!=(h|0));f[l>>2]=c;if((c|0)==(d|0)){l=0;u=m;return l|0}e=c+1|0;f[l>>2]=e;if((b[c>>0]|0)!=60){l=0;u=m;return l|0}a:do if((e|0)==(d|0))e=d;else while(1){c=(Edb(b[e>>0]|0)|0)<<24;if(!((c|0)==1593835520|(c+-1610612737|0)>>>0<452984831))break a;c=e;e=e+1|0;f[l>>2]=e;qqb(j,b[c>>0]|0);if((e|0)==(d|0)){e=d;break}}while(0);g=b[k>>0]|0;if(g<<24>>24<0)g=f[a+16>>2]|0;else g=g&255;if((e|0)==(d|0)|(g|0)==0){l=0;u=m;return l|0}switch(b[e>>0]|0){case 32:{e=e+1|0;f[l>>2]=e;break}case 62:break;default:{l=0;u=m;return l|0}}if((e|0)==(d|0)){l=0;u=m;return l|0}while(1){k=(Edb(b[e>>0]|0)|0)<<24;if(!((k|0)==1593835520|(k+-1610612737|0)>>>0<452984831)){g=25;break}if(!(YIa(a,l,d)|0)){e=0;g=27;break}e=f[l>>2]|0;if((e|0)==(d|0)){e=0;g=27;break}}if((g|0)==25){if((b[e>>0]|0)!=62){l=0;u=m;return l|0}d=e+1|0;f[l>>2]=d;l=d;u=m;return l|0}else if((g|0)==27){u=m;return e|0}return 0}function yIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;j=d+12|0;h=j+11|0;g=b[h>>0]|0;i=d+16|0;e=f[i>>2]|0;do if(((g<<24>>24<0?e:g&255)|0)==24){if(rqb(j,0,-1,145751,24)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}e=f[d>>2]|0;g=f[d+4>>2]|0;a:do if((e|0)==(g|0))e=0;else{while(1){l=b[e+11>>0]|0;if(((l<<24>>24<0?f[e+4>>2]|0:l&255)|0)==5)if(!(rqb(e,0,-1,145776,5)|0))break;e=e+24|0;if((e|0)==(g|0)){e=0;break a}}e=Gqb(e+12|0,0,10)|0}while(0);QEa((f[f[a+4>>2]>>2]|0)+32|0,c,e);l=1;u=m;return l|0}while(0);do if(((g<<24>>24<0?e:g&255)|0)==14){if(rqb(j,0,-1,145782,14)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}c=(f[f[a+4>>2]>>2]|0)+56|0;zIa(l,d);AIa(c,l);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);l=1;u=m;return l|0}while(0);do if(((g<<24>>24<0?e:g&255)|0)==13){if(rqb(j,0,-1,145797,13)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}e=f[d>>2]|0;g=f[d+4>>2]|0;if((e|0)==(g|0)){l=1;u=m;return l|0}while(1){d=b[e+11>>0]|0;if(((d<<24>>24<0?f[e+4>>2]|0:d&255)|0)==4)if(!(rqb(e,0,-1,145811,4)|0))break;e=e+24|0;if((e|0)==(g|0)){e=1;k=55;break}}if((k|0)==55){u=m;return e|0}e=e+12|0;j=(f[f[a+4>>2]>>2]|0)+80|0;if((b[e+11>>0]|0)<0)e=f[e>>2]|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;i=cdb(e)|0;if(i>>>0>4294967279)aqb(l);if(i>>>0<11){h=l+11|0;b[h>>0]=i;if(!i){g=l;e=h}else{g=l;k=31}}else{h=i+16&-16;g=Wpb(h)|0;f[l>>2]=g;f[l+8>>2]=h|-2147483648;f[l+4>>2]=i;h=l+11|0;k=31}if((k|0)==31){Irb(g|0,e|0,i|0)|0;e=h}b[g+i>>0]=0;BIa(j,c,l);if((b[e>>0]|0)<0)Zpb(f[l>>2]|0);l=1;u=m;return l|0}while(0);do if(((g<<24>>24<0?e:g&255)|0)==11){if(rqb(j,0,-1,200026,11)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}rFa(f[(f[f[a+4>>2]>>2]|0)+232>>2]|0,0);l=1;u=m;return l|0}while(0);do if(((g<<24>>24<0?e:g&255)|0)==17){if(rqb(j,0,-1,145816,17)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}e=a+4|0;g=(f[e>>2]|0)+156|0;h=b[g>>0]|0;if(h&2){l=1;u=m;return l|0}b[g>>0]=h|2;c=f[f[e>>2]>>2]|0;fh[f[(f[c>>2]|0)+12>>2]&2047](c);c=(f[f[e>>2]>>2]|0)+68|0;zIa(l,d);AIa(c,l);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);l=1;u=m;return l|0}while(0);do if(((g<<24>>24<0?e:g&255)|0)==8){if(rqb(j,0,-1,145834,8)|0){g=b[h>>0]|0;e=f[i>>2]|0;break}e=a+4|0;g=(f[e>>2]|0)+156|0;h=b[g>>0]|0;if(h&1){l=1;u=m;return l|0}b[g>>0]=h|1;c=(f[f[e>>2]>>2]|0)+44|0;zIa(l,d);AIa(c,l);if((b[l+11>>0]|0)<0)Zpb(f[l>>2]|0);l=1;u=m;return l|0}while(0);if(((g<<24>>24<0?e:g&255)|0)==11){l=(rqb(j,0,-1,145843,11)|0)==0;u=m;return l|0}else{l=0;u=m;return l|0}return 0}function zIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;l=a+11|0;b[l>>0]=1;b[a>>0]=123;b[a+1>>0]=0;h=f[c>>2]|0;i=f[c+4>>2]|0;if((h|0)==(i|0))c=1;else{j=k+11|0;d=k+4|0;e=k+11|0;g=k+4|0;c=h;do{qqb(a,34);CIa(k,c);h=b[j>>0]|0;n=h<<24>>24<0;oqb(a,n?f[k>>2]|0:k,n?f[d>>2]|0:h&255)|0;if((b[j>>0]|0)<0)Zpb(f[k>>2]|0);pqb(a,145855)|0;CIa(k,c+12|0);n=b[e>>0]|0;h=n<<24>>24<0;oqb(a,h?f[k>>2]|0:k,h?f[g>>2]|0:n&255)|0;if((b[e>>0]|0)<0)Zpb(f[k>>2]|0);pqb(a,199691)|0;c=c+24|0}while((c|0)!=(i|0));c=b[l>>0]|0;if(c<<24>>24<0){l=a+4|0;n=(f[l>>2]|0)+-1|0;f[l>>2]=n;n=(f[a>>2]|0)+n|0;b[n>>0]=0;qqb(a,125);u=m;return}}n=(c&255)+-1|0;b[l>>0]=n;n=a+n|0;b[n>>0]=0;qqb(a,125);u=m;return}function AIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;h=m;d=f[a>>2]|0;l=a+4|0;i=f[l>>2]|0;if((d|0)==(i|0)){u=m;return}j=h+16|0;do{g=d+16|0;e=f[g>>2]|0;if(e|0){nh[f[(f[e>>2]|0)+24>>2]&1023](e,c);if(b[d+24>>0]|0){f[j>>2]=0;e=f[g>>2]|0;if((d|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[g>>2]=0;e=f[j>>2]|0;do if(!e){f[g>>2]=0;k=15}else if((h|0)==(e|0)){f[g>>2]=d;k=f[j>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,d);k=15;break}else{f[g>>2]=e;f[j>>2]=0;e=0;g=0;break}while(0);if((k|0)==15){k=0;g=f[j>>2]|0;e=g}if((h|0)==(e|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}}d=d+32|0}while((d|0)!=(i|0));d=f[l>>2]|0;if((f[a>>2]|0)==(d|0)){u=m;return}while(1){if(!(f[d+-16>>2]|0)){e=d;g=0;c=0}else{k=30;break}d=d+-32|0;while(1){k=e+-32|0;f[l>>2]=k;if((k|0)==(g|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);e=f[l>>2]|0;if((e|0)==(d|0))break;c=f[e+-16>>2]|0;g=c}if((f[a>>2]|0)==(d|0)){k=30;break}}if((k|0)==30){u=m;return}}function BIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;i=n;e=f[a>>2]|0;m=a+4|0;j=f[m>>2]|0;if((e|0)==(j|0)){u=n;return}k=i+16|0;do{h=e+16|0;g=f[h>>2]|0;if(g|0){f[i>>2]=c;wh[f[(f[g>>2]|0)+24>>2]&127](g,i,d);if(b[e+24>>0]|0){f[k>>2]=0;g=f[h>>2]|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g);f[h>>2]=0;g=f[k>>2]|0;do if(!g){f[h>>2]=0;l=15}else if((i|0)==(g|0)){f[h>>2]=e;l=f[k>>2]|0;nh[f[(f[l>>2]|0)+12>>2]&1023](l,e);l=15;break}else{f[h>>2]=g;f[k>>2]=0;g=0;h=0;break}while(0);if((l|0)==15){l=0;h=f[k>>2]|0;g=h}if((i|0)==(g|0))fh[f[(f[h>>2]|0)+16>>2]&2047](h);else if(h|0)fh[f[(f[h>>2]|0)+20>>2]&2047](h)}}e=e+32|0}while((e|0)!=(j|0));e=f[m>>2]|0;if((f[a>>2]|0)==(e|0)){u=n;return}while(1){if(!(f[e+-16>>2]|0)){g=e;h=0;c=0}else{l=30;break}e=e+-32|0;while(1){l=g+-32|0;f[m>>2]=l;if((l|0)==(h|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);g=f[m>>2]|0;if((g|0)==(e|0))break;c=f[g+-16>>2]|0;h=c}if((f[a>>2]|0)==(e|0)){l=30;break}}if((l|0)==30){u=n;return}}function CIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+160|0;i=m+136|0;j=m;k=j+4|0;f[j>>2]=10948;l=j+56|0;f[l>>2]=10968;Yfb(j+56|0,k);f[j+128>>2]=0;f[j+132>>2]=-1;f[j>>2]=31108;f[j+56>>2]=31128;agb(k);f[k>>2]=31144;h=j+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[j+52>>2]=16;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;DIa(k,i);if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);e=b[c+11>>0]|0;g=e<<24>>24<0;d=g?f[c>>2]|0:c;e=g?f[c+4>>2]|0:e&255;g=d+e|0;a:do if(e|0)while(1){c=b[d>>0]|0;e=c<<24>>24;b:do switch(e|0){case 34:{FIa(j,145859,2)|0;break}case 92:{FIa(j,145862,2)|0;break}case 8:{FIa(j,145865,2)|0;break}case 12:{FIa(j,145868,2)|0;break}case 10:{FIa(j,145871,2)|0;break}case 13:{FIa(j,145874,2)|0;break}case 9:{FIa(j,145877,2)|0;break}default:if((c&255)<32){c=FIa(j,145880,2)|0;n=c+(f[(f[c>>2]|0)+-12>>2]|0)+4|0;f[n>>2]=f[n>>2]&-75|8;f[c+(f[(f[c>>2]|0)+-12>>2]|0)+12>>2]=4;f[c+(f[(f[c>>2]|0)+-12>>2]|0)+76>>2]=48;mgb(c,e)|0;break b}else{b[i>>0]=c;FIa(j,i,1)|0;break b}}while(0);d=d+1|0;if((d|0)==(g|0))break a}while(0);EIa(a,k);f[j>>2]=31108;f[l>>2]=31128;f[k>>2]=31144;if((b[h+11>>0]|0)>=0){Teb(k);Pfb(j,31204);Oeb(l);u=m;return}Zpb(f[h>>2]|0);Teb(k);Pfb(j,31204);Oeb(l);u=m;return}function DIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=a+32|0;fqb(e,c)|0;i=a+44|0;f[i>>2]=0;j=a+48|0;h=f[j>>2]|0;if(h&8|0){c=b[e+11>>0]|0;if(c<<24>>24<0){c=f[e>>2]|0;d=c;g=c;c=c+(f[a+36>>2]|0)|0}else{d=e;g=e;c=e+(c&255)|0}f[i>>2]=c;f[a+8>>2]=d;f[a+12>>2]=g;f[a+16>>2]=c}if(!(h&16))return;d=e+11|0;c=b[d>>0]|0;if(c<<24>>24<0){g=f[a+36>>2]|0;f[i>>2]=(f[e>>2]|0)+g;c=(f[a+40>>2]&2147483647)+-1|0}else{g=c&255;f[i>>2]=e+g;c=10}lqb(e,c,0);c=b[d>>0]|0;if(c<<24>>24<0){e=f[e>>2]|0;c=f[a+36>>2]|0}else c=c&255;d=a+24|0;f[d>>2]=e;f[a+20>>2]=e;f[a+28>>2]=e+c;if(!(f[j>>2]&3))return;f[d>>2]=e+g;return}function EIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=f[c+48>>2]|0;if(d&16|0){d=c+44|0;e=f[d>>2]|0;g=f[c+24>>2]|0;if(e>>>0<g>>>0){f[d>>2]=g;e=g}d=f[c+20>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=e-d|0;if(c>>>0>4294967279)aqb(a);if(c>>>0<11)b[a+11>>0]=c;else{h=c+16&-16;g=Wpb(h)|0;f[a>>2]=g;f[a+8>>2]=h|-2147483648;f[a+4>>2]=c;a=g}if((d|0)!=(e|0)){g=a;while(1){b[g>>0]=b[d>>0]|0;d=d+1|0;if((d|0)==(e|0))break;else g=g+1|0}a=a+c|0}b[a>>0]=0;return}if(!(d&8)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}d=f[c+8>>2]|0;g=f[c+16>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=g-d|0;if(c>>>0>4294967279)aqb(a);if(c>>>0<11)b[a+11>>0]=c;else{e=c+16&-16;h=Wpb(e)|0;f[a>>2]=h;f[a+8>>2]=e|-2147483648;f[a+4>>2]=c;a=h}if((d|0)!=(g|0)){e=a;while(1){b[e>>0]=b[d>>0]|0;d=d+1|0;if((d|0)==(g|0))break;else e=e+1|0}a=a+c|0}b[a>>0]=0;return}function FIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;i=m+12|0;k=m;l=m+8|0;egb(k,a);if(!(b[k>>0]|0)){fgb(k);u=m;return a|0}j=(f[a>>2]|0)+-12|0;f[l>>2]=f[a+(f[j>>2]|0)+24>>2];j=a+(f[j>>2]|0)|0;g=c+d|0;h=(f[j+4>>2]&176|0)==32?g:c;e=j+76|0;d=f[e>>2]|0;if((d|0)==-1){_fb(i,j);d=Chb(i,213216)|0;d=Pg[f[(f[d>>2]|0)+28>>2]&255](d,32)|0;Dhb(i);d=d<<24>>24;f[e>>2]=d}f[i>>2]=f[l>>2];if(GIa(i,c,h,g,j,d&255)|0){fgb(k);u=m;return a|0}l=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;Xfb(l,f[l+16>>2]|5);fgb(k);u=m;return a|0}function GIa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o;n=f[a>>2]|0;if(!n){n=0;u=o;return n|0}i=c;j=e-i|0;l=g+12|0;k=f[l>>2]|0;j=(k|0)>(j|0)?k-j|0:0;k=d;g=k-i|0;if((g|0)>0)if((Qg[f[(f[n>>2]|0)+48>>2]&127](n,c,g)|0)!=(g|0)){f[a>>2]=0;n=0;u=o;return n|0}do if((j|0)>0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;if(j>>>0<11){c=m+11|0;b[c>>0]=j;g=m;i=m}else{c=j+16&-16;g=Wpb(c)|0;f[m>>2]=g;f[m+8>>2]=c|-2147483648;f[m+4>>2]=j;c=m+11|0;i=m}Krb(g|0,h|0,j|0)|0;b[g+j>>0]=0;if((Qg[f[(f[n>>2]|0)+48>>2]&127](n,(b[c>>0]|0)<0?f[i>>2]|0:m,j)|0)==(j|0)){if((b[c>>0]|0)<0)Zpb(f[i>>2]|0);break}f[a>>2]=0;if((b[c>>0]|0)<0)Zpb(f[i>>2]|0);n=0;u=o;return n|0}while(0);e=e-k|0;if((e|0)>0)if((Qg[f[(f[n>>2]|0)+48>>2]&127](n,d,e)|0)!=(e|0)){f[a>>2]=0;n=0;u=o;return n|0}f[l>>2]=0;u=o;return n|0}function HIa(a){a=a|0;var c=0;f[a>>2]=31144;c=a+32|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);Teb(a);return}function IIa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{jwa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=zEa(m,e,4)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)Ppb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){dB(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+248|0)>>2]|0;d=f[(t+252|0)>>2]|0;c=1;if(c){c=0;if(i>>>0<d>>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+248|0)>>2]=(f[(t+248|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+244|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)fob(t+244|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0<c>>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)ud();else{l=Wpb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+244|0)>>2]|0;c=f[(t+248|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+244|0)>>2]|0;c=f[(t+248|0)>>2]|0}f[(t+244|0)>>2]=d;f[(t+248|0)>>2]=k+28|0;f[(t+252|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){_pb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}while((j|0)!=(k|0))}if(l|0)Zpb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;hGa(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){_pb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){AEa(a+20|0,a+36|0,q);break}j=f[(t+900|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+504>>2]|0))nh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+900|0)>>2]=j+1|0;i=f[(t+228|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+224|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=Wpb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+236|0)>>2]|0)+1|0)>>>0);h=+n[t+240>>2];do if((i|0)==0|h*+(i>>>0)<g){b=~~+W(+(g/h))>>>0;bEa(t+224|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0<b>>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+228|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+224|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+232|0)>>2];f[(t+232|0)>>2]=e;f[b>>2]=t+232|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+224|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+236|0)>>2]=(f[(t+236|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)ud();else{s=Wpb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((i|0)!=(j|0))}if(k|0)Zpb(k)}A=aGa(t+508|0,a+48|0)|0;f[A>>2]=6}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function JIa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{pwa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=zEa(m,e,1)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)Ppb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){dB(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+312|0)>>2]|0;d=f[(t+316|0)>>2]|0;c=1;if(c){c=0;if(i>>>0<d>>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+312|0)>>2]=(f[(t+312|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+308|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)fob(t+308|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0<c>>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)ud();else{l=Wpb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+308|0)>>2]|0;c=f[(t+312|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+308|0)>>2]|0;c=f[(t+312|0)>>2]|0}f[(t+308|0)>>2]=d;f[(t+312|0)>>2]=k+28|0;f[(t+316|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){_pb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}while((j|0)!=(k|0))}if(l|0)Zpb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;iGa(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){_pb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){AEa(a+20|0,a+36|0,q);break}j=f[(t+900|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+504>>2]|0))nh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+900|0)>>2]=j+1|0;i=f[(t+292|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+288|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=Wpb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+300|0)>>2]|0)+1|0)>>>0);h=+n[t+304>>2];do if((i|0)==0|h*+(i>>>0)<g){b=~~+W(+(g/h))>>>0;$Da(t+288|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0<b>>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+292|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+288|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+296|0)>>2];f[(t+296|0)>>2]=e;f[b>>2]=t+296|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+288|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+300|0)>>2]=(f[(t+300|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)ud();else{s=Wpb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((i|0)!=(j|0))}if(k|0)Zpb(k)}A=aGa(t+508|0,a+48|0)|0;f[A>>2]=8}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function KIa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{lwa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=zEa(m,e,7)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)Ppb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){dB(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+280|0)>>2]|0;d=f[(t+284|0)>>2]|0;c=1;if(c){c=0;if(i>>>0<d>>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+280|0)>>2]=(f[(t+280|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+276|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)fob(t+276|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0<c>>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)ud();else{l=Wpb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+276|0)>>2]|0;c=f[(t+280|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+276|0)>>2]|0;c=f[(t+280|0)>>2]|0}f[(t+276|0)>>2]=d;f[(t+280|0)>>2]=k+28|0;f[(t+284|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){_pb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}while((j|0)!=(k|0))}if(l|0)Zpb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;jGa(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){_pb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){AEa(a+20|0,a+36|0,q);break}j=f[(t+900|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+504>>2]|0))nh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+900|0)>>2]=j+1|0;i=f[(t+260|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+256|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=Wpb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+268|0)>>2]|0)+1|0)>>>0);h=+n[t+272>>2];do if((i|0)==0|h*+(i>>>0)<g){b=~~+W(+(g/h))>>>0;YDa(t+256|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0<b>>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+260|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+256|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+264|0)>>2];f[(t+264|0)>>2]=e;f[b>>2]=t+264|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+256|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+268|0)>>2]=(f[(t+268|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)ud();else{s=Wpb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((i|0)!=(j|0))}if(k|0)Zpb(k)}A=aGa(t+508|0,a+48|0)|0;f[A>>2]=7}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function LIa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;u=f[a+80>>2]|0;q=f[a+96>>2]|0;s=f[a+104>>2]|0;r=f[a+472>>2]|0;v=f[a+632>>2]|0;c=f[a+656>>2]|0;w=f[a+688>>2]|0;x=f[a+1248>>2]|0;y=f[a+1256>>2]|0;a:{if(y){y=0;if((f[(a+24|0)>>2]|0)==(f[w>>2]|0)){if((f[(a+36|0)>>2]|0)!=(f[c>>2]|0)){AEa(a+20|0,a+36|0,q);f[a+1288>>2]=1;break a}k=f[(v+900|0)>>2]|0;f[(a+48|0)>>2]=k;c=1;if(c){c=0;if((k|0)==(f[v+504>>2]|0))nh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(v+900|0)>>2]=k+1|0;g=f[(v+36|0)>>2]|0;b:do if(!g){b=0;x=62}else{if(!((g+-1|0)&g))e=(g+-1|0)&(k+1|0);else if(g>>>0>(k+1|0)>>>0)e=k+1|0;else e=((k+1|0)>>>0)%(g>>>0)|0;c=f[(f[(v+32|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;x=62}else{if(!((g+-1|0)&g))while(1){c=f[c>>2]|0;if(!c){b=e;x=62;break b}o=f[c+4>>2]|0;if(!((o|0)==(k+1|0|0)|(o&(g+-1|0)|0)==(e|0))){b=e;x=62;break b}if((f[c+8>>2]|0)==(k+1|0|0)){h=c;break b}}while(1){c=f[c>>2]|0;if(!c){b=e;x=62;break b}d=f[c+4>>2]|0;if((d|0)!=(k+1|0|0)){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(e|0)){b=e;x=62;break b}}if((f[c+8>>2]|0)==(k+1|0|0)){h=c;break}}}}while(0);if((x|0)==62){e=Wpb(24)|0;f[e+8>>2]=k+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=k+1|0;f[e>>2]=0;i=+(((f[(v+44|0)>>2]|0)+1|0)>>>0);j=+n[v+48>>2];do if((g|0)==0|j*+(g>>>0)<i){b=~~+W(+(i/j))>>>0;VDa(v+32|0,(g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1)>>>0<b>>>0?b:g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1);b=f[(v+36|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(k+1|0);break}if(b>>>0>(k+1|0)>>>0){d=b;b=k+1|0}else{d=b;b=((k+1|0)>>>0)%(b>>>0)|0}}else d=g;while(0);b=(f[(v+32|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(v+40|0)>>2];f[(v+40|0)>>2]=e;f[b>>2]=v+40|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;l=(f[(v+32|0)>>2]|0)+(b<<2)|0;x=75}}else{f[e>>2]=f[c>>2];l=c;x=75}if((x|0)==75)f[l>>2]=e;f[(v+44|0)>>2]=(f[(v+44|0)>>2]|0)+1;h=e}m=h+12|0;o=h+16|0;e=f[o>>2]|0;l=h+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[e+20>>2]=s&1;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)p=0;else if(b>>>0>153391689)ud();else{p=Wpb(b*28|0)|0;break}while(0);h=p+(((e-d|0)/28|0)*28|0)|0;g=p+(b*28|0)|0;f[h>>2]=f[q>>2];f[p+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+20>>2]=s&1;f[(a+20|0)>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=h;k=e;b=e}else{c=h;d=h;do{k=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[k+-24>>2];z=d+-20|0;f[z>>2]=0;p=d+-16|0;f[p>>2]=0;f[d+-12>>2]=0;f[z>>2]=f[(k+-20|0)>>2];f[p>>2]=f[(k+-16|0)>>2];f[d+-12>>2]=f[(k+-12|0)>>2];f[(k+-12|0)>>2]=0;f[(k+-16|0)>>2]=0;f[(k+-20|0)>>2]=0;f[b>>2]=0;f[d+-8>>2]=f[k+-8>>2];p=f[(k+-4|0)>>2]|0;f[(k+-4|0)>>2]=0;f[d+-4>>2]=p;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=h+28|0;f[l>>2]=g;h=k;if((b|0)!=(h|0)){g=b;do{z=g+-4|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=g+-20|0;b=f[c>>2]|0;e=g+-16|0;g=g+-28|0;do if((b|0)==(f[e>>2]|0)){d=f[g>>2]|0;if(!d)break;_pb(d);b=f[c>>2]|0}while(0);if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((g|0)!=(h|0))}if(k|0)Zpb(k)}z=aGa(v+508|0,a+48|0)|0;f[z>>2]=1}}else y=1}if(y){y=0;if(1){e=f[(v+56|0)>>2]|0;c=f[(v+60|0)>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[e+20>>2]=s&1;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[(v+56|0)>>2]=(f[(v+56|0)>>2]|0)+28}else b=1}if(b)if(1){d=f[(v+52|0)>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(v+52|0);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)t=0;else if(b>>>0>153391689)ud();else{t=Wpb(b*28|0)|0;break}while(0);h=t+(((e-d|0)/28|0)*28|0)|0;g=t+(b*28|0)|0;f[h>>2]=f[q>>2];f[t+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+20>>2]=s&1;f[(a+20|0)>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[(v+52|0)>>2]|0;b=f[(v+56|0)>>2]|0;if((b|0)==(e|0)){c=h;k=e;b=e}else{c=h;d=h;do{t=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[t+-24>>2];s=d+-20|0;f[s>>2]=0;z=d+-16|0;f[z>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(t+-20|0)>>2];f[z>>2]=f[(t+-16|0)>>2];f[d+-12>>2]=f[(t+-12|0)>>2];f[(t+-12|0)>>2]=0;f[(t+-16|0)>>2]=0;f[(t+-20|0)>>2]=0;f[b>>2]=0;f[d+-8>>2]=f[t+-8>>2];z=f[(t+-4|0)>>2]|0;f[(t+-4|0)>>2]=0;f[d+-4>>2]=z;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[(v+52|0)>>2]|0;b=f[(v+56|0)>>2]|0}f[(v+52|0)>>2]=c;f[(v+56|0)>>2]=h+28|0;f[(v+60|0)>>2]=g;h=k;if((b|0)!=(h|0)){g=b;do{z=g+-4|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=g+-20|0;b=f[c>>2]|0;e=g+-16|0;g=g+-28|0;if((b|0)==(f[e>>2]|0)){d=f[g>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((g|0)!=(h|0))}if(k|0)Zpb(k)}b=f[(v+56|0)>>2]|0;v=f[(a+24|0)>>2]|0;z=f[w>>2]|0;f[a>>2]=(v|0)==(z|0)?0:v;f[a+4>>2]=z-v>>3;f[a+8>>2]=v;f[(a+12|0)>>2]=z;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[w>>2]=0;f[(a+24|0)>>2]=0;b=(f[b+-8>>2]&1|0)!=0;f[(a+48|0)>>2]=0;kGa(u,a+48|0,a,b);b=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+8|0)>>2]|0;if((b|0)==(f[(a+12|0)>>2]|0)){c=f[a>>2]|0;if(c){_pb(c);b=f[(a+8|0)>>2]|0}}if(b|0){c=f[(a+12|0)>>2]|0;if((c|0)!=(b|0))f[(a+12|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}else y=1}}f[a+1248>>2]=x;f[a+1256>>2]=y}function MIa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=f[a+656>>2]|0;E=f[a+1200>>2]|0;k=f[a+1232>>2]|0;A=f[a+2352>>2]|0;H=f[a+3104>>2]|0;a:{b:while(1){I=J;g=f[(I+16|0)>>2]|0;c:do if(g|0){if(!((g+-1|0)&g))i=(g+-1|0)&k;else if(g>>>0>k>>>0)i=k;else i=(k>>>0)%(g>>>0)|0;d=f[(f[(I+12|0)>>2]|0)+(i<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){if(!((g+-1|0)&g))while(1){F=f[d+4>>2]|0;e=(F|0)==(k|0);if(!(e|(F&(g+-1|0)|0)==(i|0)))break c;if(e)if((f[d+8>>2]|0)==(k|0)){F=d;break b}d=f[d>>2]|0;if(!d)break c}do{e=f[d+4>>2]|0;if((e|0)==(k|0)){if((f[d+8>>2]|0)==(k|0)){F=d;break b}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0))break c}d=f[d>>2]|0}while((d|0)!=0)}}}while(0);J=f[J>>2]|0;if(!J){f[a+3144>>2]=2;f[a+3148>>2]=8;break a}}t=f[I+8>>2]|0;t=vYa(oxa(A)|0,t)|0;g=f[(E+456|0)>>2]|0;d:do if(!g)C=0;else{if(!((g+-1|0)&g))i=(g+-1|0)&k;else if(g>>>0>k>>>0)i=k;else i=(k>>>0)%(g>>>0)|0;d=f[(f[(E+452|0)>>2]|0)+(i<<2)>>2]|0;if(!d)C=0;else{d=f[d>>2]|0;if(!d)C=0;else{if(!((g+-1|0)&g))while(1){C=f[d+4>>2]|0;e=(C|0)==(k|0);if(!(e|(C&(g+-1|0)|0)==(i|0))){C=0;break d}if(e)if((f[d+8>>2]|0)==(k|0)){C=d;break d}d=f[d>>2]|0;if(!d){C=0;break d}}while(1){e=f[d+4>>2]|0;if((e|0)==(k|0)){if((f[d+8>>2]|0)==(k|0)){C=d;break d}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){C=0;break d}}d=f[d>>2]|0;if(!d){C=0;break}}}}}while(0);do{d=1;if(d){d=0;if(!t)H=402;else d=1}if(d)if(1){w=1;if(w){w=0;if(!(b[I+44>>0]|0)){u=C+12|0;d=f[u>>2]|0;v=C+16|0;s=f[v>>2]|0;if((d|0)==(s|0)){c=Wpb(8)|0;f[(a+8|0)>>2]=c;f[(a+8|0)+8>>2]=c+8|0;f[c>>2]=0;f[c+4>>2]=-1;f[((a+8|0)+4|0)>>2]=c+8|0;c=f[F+12>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,a+8|0);c=f[(a+8|0)>>2]|0;if(c|0){d=f[((a+8|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+8|0)+4|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}break}r=0;while(1){if(!(b[(t+15|0)>>0]|0))H=345;else if(qxa(A,d,b[(t+14|0)>>0]|0)|0)H=345;else H=385;e:do if((H|0)==345){H=0;o=f[d>>2]|0;p=f[d+4>>2]|0;k=f[(t+36|0)>>2]|0;f:do if(!k)e=0;else{if(!((k+-1|0)&k))e=(p+-1640531527+(o<<6)+(o>>>2)^o)&(k+-1|0);else if((p+-1640531527+(o<<6)+(o>>>2)^o)>>>0<k>>>0)e=p+-1640531527+(o<<6)+(o>>>2)^o;else e=((p+-1640531527+(o<<6)+(o>>>2)^o)>>>0)%(k>>>0)|0;g=f[(f[(t+32|0)>>2]|0)+(e<<2)>>2]|0;if(g){g=f[g>>2]|0;if(g){if(!((k+-1|0)&k))while(1){q=f[g+4>>2]|0;if(!((q|0)==(p+-1640531527+(o<<6)+(o>>>2)^o|0)|(q&(k+-1|0)|0)==(e|0)))break f;if((f[g+8>>2]|0)==(o|0))if((f[g+12>>2]|0)==(p|0)){H=385;break e}g=f[g>>2]|0;if(!g)break f}do{i=f[g+4>>2]|0;if((i|0)!=(p+-1640531527+(o<<6)+(o>>>2)^o|0)){if(i>>>0>=k>>>0)i=(i>>>0)%(k>>>0)|0;if((i|0)!=(e|0))break f}if((f[g+8>>2]|0)==(o|0))if((f[g+12>>2]|0)==(p|0)){H=385;break e}g=f[g>>2]|0}while((g|0)!=0)}}}while(0);q=Wpb(16)|0;g=d;i=f[g+4>>2]|0;f[(q+8|0)>>2]=f[g>>2];f[(q+8|0)+4>>2]=i;f[q+4>>2]=p+-1640531527+(o<<6)+(o>>>2)^o;f[q>>2]=0;l=+(((f[(t+44|0)>>2]|0)+1|0)>>>0);m=+n[(t+48|0)>>2];do if((k|0)==0|m*+(k>>>0)<l){e=~~+W(+(l/m))>>>0;Jfa(t+32|0,(k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1)>>>0<e>>>0?e:k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1);e=f[(t+36|0)>>2]|0;if(!((e+-1|0)&e)){i=e;e=(e+-1|0)&(p+-1640531527+(o<<6)+(o>>>2)^o);break}if((p+-1640531527+(o<<6)+(o>>>2)^o)>>>0<e>>>0){i=e;e=p+-1640531527+(o<<6)+(o>>>2)^o}else{i=e;e=((p+-1640531527+(o<<6)+(o>>>2)^o)>>>0)%(e>>>0)|0}}else i=k;while(0);e=(f[(t+32|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[q>>2]=f[(t+40|0)>>2];f[(t+40|0)>>2]=q;f[e>>2]=t+40|0;e=f[q>>2]|0;if(e|0){e=f[e+4>>2]|0;g=i+-1|0;do if(!(g&i))e=e&g;else{if(e>>>0<i>>>0)break;e=(e>>>0)%(i>>>0)|0}while(0);x=(f[(t+32|0)>>2]|0)+(e<<2)|0;H=377}}else{f[q>>2]=f[g>>2];x=g;H=377}if((H|0)==377){H=0;f[x>>2]=q}f[(t+44|0)>>2]=(f[(t+44|0)>>2]|0)+1;wwa(a+8|0,A,d);e=f[(a+8|0)>>2]|0;if(!e)H=381;else if(!((j[(e+200|0)>>1]|h[(e+200|0)+2>>0]<<16)&7864320))if(!(f[e+196>>2]&24))H=381;else z=25;else z=25;if((H|0)==381){H=0;z=0}e=f[((a+8|0)+4|0)>>2]|0;if(e|0)Ppb(e);if((z&31)==25)H=385;else y=r}while(0);if((H|0)==385){H=0;y=d;f[y>>2]=0;f[y+4>>2]=-1;y=1}d=d+8|0;if((d|0)==(s|0))break;else r=y}g:do if(y){e=f[u>>2]|0;d=f[v>>2]|0;h:do if((e|0)!=(d|0))while(1){if(!(f[e>>2]|0))if((f[e+4>>2]|0)==-1)break h;e=e+8|0;if((e|0)==(d|0))break g}while(0);if((e|0)!=(d|0)){g=e+8|0;if((g|0)==(d|0))c=e;else{i=e;k=e;while(1){if(!(f[g>>2]|0))if((f[k+12>>2]|0)==-1){c=i;B=e}else H=396;else H=396;if((H|0)==396){H=0;A=g;c=f[A+4>>2]|0;B=e;f[B>>2]=f[A>>2];f[B+4>>2]=c;B=e+8|0;c=B}e=g+8|0;if((e|0)==(d|0))break;else{k=g;g=e;i=c;e=B}}d=f[v>>2]|0}if((d|0)!=(c|0))f[v>>2]=d+(~((d+-8-c|0)>>>3)<<3)}}while(0);B=f[F+12>>2]|0;nh[f[(f[B>>2]|0)+8>>2]&1023](B,u)}else w=1}if(w)if(1)H=402}}while(0);if((H|0)==402){B=f[F+12>>2]|0;nh[f[(f[B>>2]|0)+12>>2]&1023](B,a+8|0)}e=f[(E+456|0)>>2]|0;c=f[C+4>>2]|0;g=((e+-1|0)&e|0)==0;if(g)i=(e+-1|0)&c;else if(c>>>0<e>>>0)i=c;else i=(c>>>0)%(e>>>0)|0;d=(f[(E+452|0)>>2]|0)+(i<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(C|0))break;else k=c}if((k|0)==(E+460|0))H=416;else{c=f[k+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0))D=C;else H=416}do if((H|0)==416){c=f[C>>2]|0;if(c|0){c=f[c+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0)){D=C;break}}f[d>>2]=0;D=C}while(0);c=f[D>>2]|0;if(c){d=f[c+4>>2]|0;if(g)d=d&(e+-1|0);else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(i|0)){f[(f[(E+452|0)>>2]|0)+(d<<2)>>2]=k;c=f[C>>2]|0}}f[k>>2]=c;f[D>>2]=0;f[(E+464|0)>>2]=(f[(E+464|0)>>2]|0)+-1;if(C|0){c=f[C+12>>2]|0;if(c|0){d=C+16|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}Zpb(C)}e=f[(I+16|0)>>2]|0;c=f[F+4>>2]|0;g=((e+-1|0)&e|0)==0;if(g)i=(e+-1|0)&c;else if(c>>>0<e>>>0)i=c;else i=(c>>>0)%(e>>>0)|0;d=(f[(I+12|0)>>2]|0)+(i<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(F|0))break;else k=c}if((k|0)==(I+20|0))H=449;else{c=f[k+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0))G=F;else H=449}do if((H|0)==449){c=f[F>>2]|0;if(c|0){c=f[c+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0)){G=F;break}}f[d>>2]=0;G=F}while(0);c=f[G>>2]|0;if(c){d=f[c+4>>2]|0;if(g)d=d&(e+-1|0);else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(i|0)){f[(f[(I+12|0)>>2]|0)+(d<<2)>>2]=k;c=f[F>>2]|0}}f[k>>2]=c;f[G>>2]=0;f[(I+24|0)>>2]=(f[(I+24|0)>>2]|0)+-1;I=F+12|0;c=f[I>>2]|0;f[I>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);Zpb(F)}f[a+656>>2]=J;f[a+3104>>2]=H}function NIa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;o=f[a+48>>2]|0;B=f[a+1200>>2]|0;v=f[a+1232>>2]|0;w=f[a+2352>>2]|0;x=f[a+3104>>2]|0;C=f[a+3112>>2]|0;u=f[a+3120>>2]|0;a:{if(C){C=0;switch(u|0){case 16:{g=f[(B+344|0)>>2]|0;b:do if(g|0){if(!((g+-1|0)&g))h=(g+-1|0)&v;else if(g>>>0>v>>>0)h=v;else h=(v>>>0)%(g>>>0)|0;d=f[(f[(B+340|0)>>2]|0)+(h<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){c:do if(!((g+-1|0)&g))while(1){p=f[d+4>>2]|0;e=(p|0)==(v|0);if(!(e|(p&(g+-1|0)|0)==(h|0)))break b;if(e)if((f[d+8>>2]|0)==(v|0)){k=d;break c}d=f[d>>2]|0;if(!d)break b}else while(1){e=f[d+4>>2]|0;if((e|0)==(v|0)){if((f[d+8>>2]|0)==(v|0)){k=d;break c}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(h|0))break b}d=f[d>>2]|0;if(!d)break b}while(0);h=EGa(B+472|0,a)|0;l=k+12|0;g=f[l>>2]|0;d=f[(f[g>>2]|0)+8>>2]|0;f[(a+8|0)>>2]=f[h>>2];f[(a+8|0)+4>>2]=f[h+4>>2];f[(a+8|0)+8>>2]=f[h+8>>2];f[(a+8|0)+12>>2]=f[h+12>>2];f[(a+8|0)+16>>2]=f[h+16>>2];f[(a+8|0)+20>>2]=f[h+20>>2];nh[d&1023](g,a+8|0);g=f[(B+344|0)>>2]|0;d=f[k+4>>2]|0;h=((g+-1|0)&g|0)==0;if(h)i=(g+-1|0)&d;else if(d>>>0<g>>>0)i=d;else i=(d>>>0)%(g>>>0)|0;e=(f[(B+340|0)>>2]|0)+(i<<2)|0;j=f[e>>2]|0;while(1){d=f[j>>2]|0;if((d|0)==(k|0))break;else j=d}if((j|0)==(B+348|0))x=104;else{d=f[j+4>>2]|0;if(h)d=d&(g+-1|0);else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)==(i|0))m=k;else x=104}do if((x|0)==104){d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;if(h)d=d&(g+-1|0);else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)==(i|0)){m=k;break}}f[e>>2]=0;m=k}while(0);d=f[m>>2]|0;if(d){e=f[d+4>>2]|0;if(h)e=e&(g+-1|0);else if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){f[(f[(B+340|0)>>2]|0)+(e<<2)>>2]=j;d=f[k>>2]|0}}f[j>>2]=d;f[m>>2]=0;f[(B+352|0)>>2]=(f[(B+352|0)>>2]|0)+-1;d=f[l>>2]|0;f[l>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(k)}}}while(0);FGa(B+472|0,a)|0;break}default:C=1}}if(C){C=0;switch(u|0){case 12:{g=f[(B+324|0)>>2]|0;if(g|0){if(!((g+-1|0)&g))h=(g+-1|0)&v;else if(g>>>0>v>>>0)h=v;else h=(v>>>0)%(g>>>0)|0;d=f[(f[(B+320|0)>>2]|0)+(h<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){d:do if(!((g+-1|0)&g))while(1){p=f[d+4>>2]|0;e=(p|0)==(v|0);if(!(e|(p&(g+-1|0)|0)==(h|0))){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}if(e)if((f[d+8>>2]|0)==(v|0)){k=d;break d}d=f[d>>2]|0;if(!d){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}}else while(1){e=f[d+4>>2]|0;if((e|0)==(v|0)){if((f[d+8>>2]|0)==(v|0)){k=d;break d}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(h|0)){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}}d=f[d>>2]|0;if(!d){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}}while(0);l=k+12|0;g=f[l>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,a+8|0);g=f[(B+324|0)>>2]|0;d=f[k+4>>2]|0;h=((g+-1|0)&g|0)==0;if(h)i=(g+-1|0)&d;else if(d>>>0<g>>>0)i=d;else i=(d>>>0)%(g>>>0)|0;e=(f[(B+320|0)>>2]|0)+(i<<2)|0;j=f[e>>2]|0;while(1){d=f[j>>2]|0;if((d|0)==(k|0))break;else j=d}if((j|0)==(B+328|0))x=153;else{d=f[j+4>>2]|0;if(h)d=d&(g+-1|0);else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)==(i|0))n=k;else x=153}do if((x|0)==153){d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;if(h)d=d&(g+-1|0);else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)==(i|0)){n=k;break}}f[e>>2]=0;n=k}while(0);d=f[n>>2]|0;if(d){e=f[d+4>>2]|0;if(h)e=e&(g+-1|0);else if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){f[(f[(B+320|0)>>2]|0)+(e<<2)>>2]=j;d=f[k>>2]|0}}f[j>>2]=d;f[n>>2]=0;f[(B+332|0)>>2]=(f[(B+332|0)>>2]|0)+-1;d=f[l>>2]|0;f[l>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(k)}}}break}default:C=1}}if(C){C=0;switch(u|0){case 18:{i=tva(w)|0;e=f[(B+380|0)>>2]|0;f[(B+380|0)>>2]=0;f[(a+8|0)>>2]=e;h=f[(B+384|0)>>2]|0;f[(B+384|0)>>2]=0;f[((a+8|0)+4|0)>>2]=h;d=f[(B+388|0)>>2]|0;f[(B+388|0)>>2]=0;f[((a+8|0)+8|0)>>2]=d;p=f[(B+392|0)>>2]|0;f[(B+392|0)>>2]=0;f[((a+8|0)+12|0)>>2]=p;n=f[(B+396|0)>>2]|0;f[(B+396|0)>>2]=1065353216;f[(a+8|0)+16>>2]=n;if(p|0){d=f[d+4>>2]|0;if(!((h+-1|0)&h))d=d&(h+-1|0);else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[e+(d<<2)>>2]=(a+8|0)+8|0}e:do if(h|0){if(!((h+-1|0)&h))g=(h+-1|0)&v;else if(h>>>0>v>>>0)g=v;else g=(v>>>0)%(h>>>0)|0;d=f[(f[(a+8|0)>>2]|0)+(g<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){f:do if(!((h+-1|0)&h))while(1){p=f[d+4>>2]|0;e=(p|0)==(v|0);if(!(e|(p&(h+-1|0)|0)==(g|0)))break e;if(e)if((f[d+8>>2]|0)==(v|0)){p=d;break f}d=f[d>>2]|0;if(!d)break e}else while(1){e=f[d+4>>2]|0;if((e|0)==(v|0)){if((f[d+8>>2]|0)==(v|0)){p=d;break f}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(g|0))break e}d=f[d>>2]|0;if(!d)break e}while(0);d=Ng[f[(f[o>>2]|0)+20>>2]&511](o)|0;x=Ng[f[(f[o>>2]|0)+20>>2]&511](o)|0;BFa(f[(o+4|0)>>2]|0,o,x);if(!x)f[o+12>>2]=0;n=p+16|0;m=p+36|0;Fva(w,i,f[p+20>>2]|0,f[n>>2]|0,f[p+40>>2]|0,f[m>>2]|0,d);o=p+12|0;h=f[o>>2]|0;nh[f[(f[h>>2]|0)+8>>2]&1023](h,a+4|0);h=f[p>>2]|0;j=f[((a+8|0)+4|0)>>2]|0;d=f[p+4>>2]|0;k=((j+-1|0)&j|0)==0;if(k)l=(j+-1|0)&d;else if(d>>>0<j>>>0)l=d;else l=(d>>>0)%(j>>>0)|0;g=(f[(a+8|0)>>2]|0)+(l<<2)|0;i=f[g>>2]|0;while(1){d=f[i>>2]|0;if((d|0)==(p|0))break;else i=d}if((i|0)==((a+8|0)+8|0|0))x=208;else{d=f[i+4>>2]|0;if(k)d=d&(j+-1|0);else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(l|0)){q=h;x=216}else x=208}do if((x|0)==208){if(h|0){d=f[h+4>>2]|0;if(k)e=d&(j+-1|0);else if(d>>>0<j>>>0)e=d;else e=(d>>>0)%(j>>>0)|0;if((e|0)==(l|0)){t=h;r=d;x=218;break}}f[g>>2]=0;q=f[p>>2]|0;x=216}while(0);if((x|0)==216){d=q;if(!q)s=d;else{t=d;r=f[q+4>>2]|0;x=218}}if((x|0)==218){if(k)d=r&(j+-1|0);else if(r>>>0<j>>>0)d=r;else d=(r>>>0)%(j>>>0)|0;if((d|0)==(l|0))s=t;else{f[(f[(a+8|0)>>2]|0)+(d<<2)>>2]=i;s=f[p>>2]|0}}f[i>>2]=s;f[p>>2]=0;f[((a+8|0)+12|0)>>2]=(f[((a+8|0)+12|0)>>2]|0)+-1;g=p+44|0;d=f[g>>2]|0;h=p+48|0;if((d|0)==(f[h>>2]|0)){e=f[m>>2]|0;if(e){_pb(e);d=f[g>>2]|0}}if(d|0){e=f[h>>2]|0;if((e|0)!=(d|0))f[h>>2]=e+(~((e+-4-d|0)>>>2)<<2);Zpb(d)}g=p+24|0;d=f[g>>2]|0;h=p+28|0;if((d|0)==(f[h>>2]|0)){e=f[n>>2]|0;if(e){_pb(e);d=f[g>>2]|0}}if(d|0){e=f[h>>2]|0;if((e|0)!=(d|0))f[h>>2]=e+(~((e+-4-d|0)>>>2)<<2);Zpb(d)}d=f[o>>2]|0;f[o>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(p)}}}while(0);d=f[((a+8|0)+8|0)>>2]|0;if(d){do{t=f[d+12>>2]|0;nh[f[(f[t>>2]|0)+16>>2]&1023](t,1);d=f[d>>2]|0}while((d|0)!=0);d=f[((a+8|0)+8|0)>>2]|0}gDa(d);d=f[(a+8|0)>>2]|0;f[(a+8|0)>>2]=0;if(d|0)Zpb(d);break}default:C=1}}if(C){C=0;switch(u|0){case 13:{d=f[B+428>>2]|0;if(d|0){while(1){e=d;if((f[e+36>>2]|0)==(v|0))break;d=f[d>>2]|0;if(!d){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}}if(b[e+44>>0]|0){B=f[e+32>>2]|0;nh[f[(f[B>>2]|0)+12>>2]&1023](B,a+8|0);f[a+3152>>2]=2;f[a+3156>>2]=12;break a}t=f[e+8>>2]|0;f[(a+8|0)>>2]=t;t=(vYa(oxa(w)|0,t)|0)==0;d=f[e+32>>2]|0;if(t)nh[f[(f[d>>2]|0)+12>>2]&1023](d,a+4|0);else nh[f[(f[d>>2]|0)+8>>2]&1023](d,a+8|0)}break}default:C=1}}if(C){C=0;switch(u|0){case 15:{d=f[B+428>>2]|0;if(d|0){m=d;while(1){n=m;if((f[n+40>>2]|0)==(v|0))break;d=f[m>>2]|0;if(!d){f[a+3152>>2]=2;f[a+3156>>2]=12;break a}else m=d}kYa(w,f[n+8>>2]|0);i=f[n>>2]|0;k=f[B+424>>2]|0;d=f[n+4>>2]|0;l=((k+-1|0)&k|0)==0;if(l)d=(k+-1|0)&d;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;h=(f[(B+420|0)>>2]|0)+(d<<2)|0;j=f[h>>2]|0;while(1){e=f[j>>2]|0;if((e|0)==(n|0))break;else j=e}if((j|0)==(B+428|0))x=270;else{e=f[j+4>>2]|0;if(l)e=e&(k+-1|0);else if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)==(d|0)){y=i;x=278}else x=270}do if((x|0)==270){if(i|0){e=f[i+4>>2]|0;if(l)g=e&(k+-1|0);else if(e>>>0<k>>>0)g=e;else g=(e>>>0)%(k>>>0)|0;if((g|0)==(d|0)){A=i;c=e;x=280;break}}f[h>>2]=0;y=f[n>>2]|0;x=278}while(0);if((x|0)==278){e=y;if(!y)z=e;else{A=e;c=f[y+4>>2]|0;x=280}}if((x|0)==280){if(l)c=c&(k+-1|0);else if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)==(d|0))z=A;else{f[(f[(B+420|0)>>2]|0)+(c<<2)>>2]=j;z=f[m>>2]|0}}f[j>>2]=z;f[n>>2]=0;f[(B+432|0)>>2]=(f[(B+432|0)>>2]|0)+-1;c=f[(n+32|0)>>2]|0;f[(n+32|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[n+20>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[(d+12|0)>>2]|0;f[(d+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);Zpb(d)}while((c|0)!=0);c=f[(n+12|0)>>2]|0;f[(n+12|0)>>2]=0;if(c|0)Zpb(c);Zpb(m)}break}default:C=1}}}f[a+3104>>2]=x;f[a+3112>>2]=C}
function PWa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0.0,k=0,l=0.0,m=0.0,o=0,q=0,r=0.0,s=0.0,t=0.0;o=u;u=u+48|0;k=o;q=fxa(b)|0;g=f[d+196>>2]|0;if((g&32|0)!=0|(g&2048|0)==0&(q^1))if((c|0)==0|(g&24|0)==0){g=d+200|0;b=j[g>>1]|0|(h[g+2>>0]|0)<<16;if(b&65536){ppa(d);b=j[g>>1]|0|(h[g+2>>0]|0)<<16}i=+n[d+168>>2];l=+n[d+172>>2];m=+n[d+176>>2];if(b&32768|0)qpa(d);r=+n[d+152>>2];p[a>>3]=i;p[a+8>>3]=l;p[a+16>>3]=m;p[a+24>>3]=r;p[a+32>>3]=-1.0;if(!e){u=o;return}q=f[d+96>>2]|0;p[e>>3]=+n[q>>2];p[e+8>>3]=+n[q+4>>2];p[e+16>>3]=+n[q+8>>2];p[e+24>>3]=+n[q+12>>2];p[e+32>>3]=+n[q+16>>2];p[e+40>>3]=+n[q+20>>2];p[e+48>>3]=+n[q+24>>2];p[e+56>>3]=+n[q+28>>2];p[e+64>>3]=+n[q+32>>2];p[e+72>>3]=+n[q+36>>2];p[e+80>>3]=+n[q+40>>2];p[e+88>>3]=+n[q+44>>2];p[e+96>>3]=+n[q+48>>2];p[e+104>>3]=+n[q+52>>2];p[e+112>>3]=+n[q+56>>2];p[e+120>>3]=+n[q+60>>2];u=o;return}EWa(k,b,c,d,e);t=+p[k>>3];l=(+p[k+24>>3]-t)*.5;s=+p[k+8>>3];m=(+p[k+32>>3]-s)*.5;i=+p[k+16>>3];r=(+p[k+40>>3]-i)*.5;p[a>>3]=l+t;p[a+8>>3]=m+s;p[a+16>>3]=r+i;p[a+24>>3]=l*l+(m*m+r*r);p[a+32>>3]=-1.0;u=o;return}function QWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+n[b+44>>2];g=+n[b+56>>2];f=+n[b+48>>2];e=+n[b+60>>2];d=+n[b+52>>2];c=+n[b+64>>2];n[a>>2]=h-g;n[a+4>>2]=f-e;n[a+8>>2]=d-c;n[a+12>>2]=h+g;n[a+16>>2]=f+e;n[a+20>>2]=d+c;return}function RWa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+n[b+48>>2];d=+n[b+52>>2];c=+n[b+68>>2];p[a>>3]=+n[b+44>>2];p[a+8>>3]=e;p[a+16>>3]=d;p[a+24>>3]=c;p[a+32>>3]=-1.0;return}function SWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0.0;e=u;u=u+32|0;C=e;D=+p[b>>3];q=+p[b+8>>3];j=+p[b+16>>3];A=D+ +p[b+24>>3];p[C>>3]=A;v=q+ +p[b+32>>3];n=C+8|0;p[n>>3]=v;s=j+ +p[b+40>>3];m=C+16|0;p[m>>3]=s;b=C+24|0;p[b>>3]=1.0;B=+p[c>>3];z=+p[c+32>>3];y=+p[c+64>>3];i=+p[c+96>>3];l=B*D+z*q+y*j+i;x=+p[c+8>>3];w=+p[c+40>>3];t=+p[c+72>>3];h=+p[c+104>>3];k=x*D+w*q+t*j+h;r=+p[c+16>>3];o=+p[c+48>>3];f=+p[c+80>>3];g=+p[c+112>>3];j=r*D+o*q+f*j+g;q=+p[C>>3];i=B*A+z*v+y*s+i-l;h=x*q+w*v+t*s+h-k;g=r*q+o*+p[n>>3]+f*+p[m>>3]+g*+p[b>>3]-j;f=+L(+(i*i+(h*h+g*g)));p[d>>3]=f;p[a>>3]=l;p[a+8>>3]=k;p[a+16>>3]=j;p[a+24>>3]=i/f;p[a+32>>3]=h/f;p[a+40>>3]=g/f;u=e;return}function TWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;l=+n[b>>2];k=+n[b+4>>2];i=+n[b+8>>2];j=+n[d>>2]*l+ +n[d+12>>2]*k+ +n[d+24>>2]*i;h=l*+n[d+4>>2]+k*+n[d+16>>2]+i*+n[d+28>>2];f=l*+n[d+8>>2]+k*+n[d+20>>2]+i*+n[d+32>>2];e=-+n[b+12>>2]/(l*l+(k*k+i*i));l=l*e;k=k*e;e=i*e;i=+n[c>>2]*l+ +n[c+16>>2]*k+e*+n[c+32>>2]+ +n[c+48>>2];g=l*+n[c+4>>2]+k*+n[c+20>>2]+e*+n[c+36>>2]+ +n[c+52>>2];e=l*+n[c+8>>2]+k*+n[c+24>>2]+e*+n[c+40>>2]+ +n[c+56>>2];n[a>>2]=j;n[a+4>>2]=h;n[a+8>>2]=f;n[a+12>>2]=-(j*i+(h*g+f*e));return}function UWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;l=+p[b>>3];k=+p[b+8>>3];i=+p[b+16>>3];j=+p[d>>3]*l+ +p[d+8>>3]*k+ +p[d+16>>3]*i;h=+p[d+32>>3]*l+ +p[d+40>>3]*k+ +p[d+48>>3]*i;e=+p[d+64>>3]*l+ +p[d+72>>3]*k+ +p[d+80>>3]*i;f=+L(+(j*j+(h*h+e*e)));j=j/f;h=h/f;f=e/f;e=-+p[b+24>>3];l=l*e;k=k*e;e=i*e;i=+p[c>>3]*l+k*+p[c+32>>3]+e*+p[c+64>>3]+ +p[c+96>>3];g=l*+p[c+8>>3]+k*+p[c+40>>3]+e*+p[c+72>>3]+ +p[c+104>>3];e=l*+p[c+16>>3]+k*+p[c+48>>3]+e*+p[c+80>>3]+ +p[c+112>>3];p[a>>3]=j;p[a+8>>3]=h;p[a+16>>3]=f;p[a+24>>3]=-(j*i+(h*g+f*e));return}function VWa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0;g=u;u=u+944|0;i=g+936|0;j=g+928|0;l=g+776|0;h=g;k=g+920|0;XWa(j,d,(b[c+29>>0]|0)!=0,(b[c+30>>0]|0)!=0,(b[c+31>>0]|0)!=0);t=+p[e>>3];s=+p[e+8>>3];r=+p[e+16>>3];q=+p[e+24>>3];o=+p[e+32>>3];m=+p[e+40>>3];p[l>>3]=t;p[l+8>>3]=s;p[l+16>>3]=r;p[l+24>>3]=q;p[l+32>>3]=o;p[l+40>>3]=m;n[l+48>>2]=t;n[l+52>>2]=s;n[l+56>>2]=r;n[l+60>>2]=q;n[l+64>>2]=o;n[l+68>>2]=m;f[k>>2]=l;b[k+4>>0]=1;b[i>>0]=b[k>>0]|0;b[i+1>>0]=b[k+1>>0]|0;b[i+2>>0]=b[k+2>>0]|0;b[i+3>>0]=b[k+3>>0]|0;b[i+4>>0]=b[k+4>>0]|0;b[i+5>>0]=b[k+5>>0]|0;b[i+6>>0]=b[k+6>>0]|0;b[i+7>>0]=b[k+7>>0]|0;DXa(h,c,1,d,j,i,0);dxa(d);OXa(h);EXa(a,h+120|0);uXa(h);u=g;return}function WWa(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=u;u=u+1376|0;l=j+1360|0;m=j+1352|0;p=j+976|0;o=j+776|0;k=j;n=j+1344|0;XWa(m,e,(b[c+29>>0]|0)!=0,(b[c+30>>0]|0)!=0,(b[c+31>>0]|0)!=0);jXa(p,g,i,f[c+16>>2]|0);lXa(o,p,h,i);f[n>>2]=o;b[n+4>>0]=0;b[l>>0]=b[n>>0]|0;b[l+1>>0]=b[n+1>>0]|0;b[l+2>>0]=b[n+2>>0]|0;b[l+3>>0]=b[n+3>>0]|0;b[l+4>>0]=b[n+4>>0]|0;b[l+5>>0]=b[n+5>>0]|0;b[l+6>>0]=b[n+6>>0]|0;b[l+7>>0]=b[n+7>>0]|0;DXa(k,c,d,e,m,l,0);dxa(e);OXa(k);EXa(a,k+120|0);uXa(k);u=j;return}function XWa(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=uva(c)|0;if(d)c=1;else c=b[g+224>>0]&1;b[a>>0]=c;if(e)c=1;else c=(h[g+224>>0]|0)>>>1&1;b[a+1>>0]=c;if(f){g=1;f=a+2|0;b[f>>0]=g;return}g=(h[g+224>>0]|0)>>>1&1;f=a+2|0;b[f>>0]=g;return}function YWa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c){d=1;return d|0}c=b[e+192>>0]|0;if(!(c&1)){d=0;return d|0}else return (d|0?1:(b[a>>0]|c&8)<<24>>24!=0)|0;return 0}function ZWa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c){d=1;return d|0}c=b[e+192>>0]|0;if(!(c&2)){d=0;return d|0}else return (d|0?1:(b[a+1>>0]|c&16)<<24>>24!=0)|0;return 0}function _Wa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!c){d=1;return d|0}c=b[e+192>>0]|0;if(!(c&4)){d=0;return d|0}else return (d|0?1:(b[a+2>>0]|c&32)<<24>>24!=0)|0;return 0}function $Wa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0;B=u;u=u+32|0;z=B+8|0;A=B;e=Kwa(a)|0;g=f[b>>2]|0;y=b+4|0;a=f[y>>2]|0;if((a|0)!=(g|0))do{c=a+-12|0;f[y>>2]=c;d=f[c>>2]|0;if(!d)a=c;else{a=a+-8|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~((c+-32-d|0)>>>5)<<5);Zpb(d);a=f[y>>2]|0}}while((a|0)!=(g|0));t=e+4|0;aXa(b,((f[t>>2]|0)-(f[e>>2]|0)|0)/12|0);a=f[e>>2]|0;t=f[t>>2]|0;if((a|0)==(t|0)){u=B;return}v=b+8|0;w=z+8|0;x=z+16|0;while(1){c=f[y>>2]|0;if(c>>>0<(f[v>>2]|0)>>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;q=c+12|0;f[y>>2]=q}else{bXa(b);q=f[y>>2]|0}r=q+-12|0;o=a+4|0;c=(f[o>>2]|0)-(f[a>>2]|0)|0;d=c>>4;s=q+-4|0;l=f[r>>2]|0;j=l;if((f[s>>2]|0)-l>>5>>>0<d>>>0){m=q+-8|0;if(d>>>0>134217727){a=15;break}e=f[m>>2]|0;i=Wpb(c<<1)|0;g=i+(e-l>>5<<5)|0;k=g;i=i+(d<<5)|0;c=e;if((c|0)==(j|0))c=k;else{e=c+-32|0;d=g;while(1){C=c;c=c+-32|0;p[d+-32>>3]=+p[c>>3];p[d+-24>>3]=+p[C+-24>>3];p[d+-16>>3]=+p[C+-16>>3];p[d+-8>>3]=+p[C+-8>>3];if((c|0)==(j|0))break;else d=d+-32|0}c=g+(~((e-l|0)>>>5)<<5)|0}f[r>>2]=c;f[m>>2]=k;f[s>>2]=i;if(l|0)Zpb(l)}c=f[a>>2]|0;g=f[o>>2]|0;if((c|0)!=(g|0)){e=q+-8|0;do{h=+n[c>>2];F=+n[c+4>>2];E=+n[c+8>>2];D=1.0/+L(+(h*h+(F*F+E*E)));h=D*h;p[z>>3]=h;p[w>>3]=D*F;p[x>>3]=D*E;p[A>>3]=D*+n[c+12>>2];d=f[e>>2]|0;if(d>>>0<(f[s>>2]|0)>>>0){p[d>>3]=h;p[d+8>>3]=+p[w>>3];p[d+16>>3]=+p[x>>3];p[d+24>>3]=+p[A>>3];f[e>>2]=d+32}else Cha(r,z,A);c=c+16|0}while((c|0)!=(g|0))}a=a+12|0;if((a|0)==(t|0)){a=9;break}}if((a|0)==9){u=B;return}else if((a|0)==15)ud()}function aXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;g=f[a>>2]|0;d=g;if((((f[k>>2]|0)-g|0)/12|0)>>>0>=b>>>0)return;l=a+4|0;if(b>>>0>357913941)ud();i=f[l>>2]|0;h=Wpb(b*12|0)|0;c=h+(((i-g|0)/12|0)*12|0)|0;j=c;h=h+(b*12|0)|0;b=i;if((b|0)==(d|0)){e=j;i=g}else{e=j;do{i=c+-12|0;g=b;b=b+-12|0;f[i>>2]=0;m=c+-8|0;f[m>>2]=0;f[c+-4>>2]=0;f[i>>2]=f[b>>2];i=g+-8|0;f[m>>2]=f[i>>2];g=g+-4|0;f[c+-4>>2]=f[g>>2];f[g>>2]=0;f[i>>2]=0;f[b>>2]=0;c=e+-12|0;e=c}while((b|0)!=(d|0));i=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=e;f[l>>2]=j;f[k>>2]=h;g=i;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-32-e|0)>>>5)<<5);Zpb(e)}}while((d|0)!=(g|0));if(!i)return;Zpb(i);return}function bXa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;j=f[a>>2]|0;i=(e-j|0)/12|0;b=i+1|0;d=j;if(b>>>0>357913941)fob(a);m=a+8|0;k=((f[m>>2]|0)-j|0)/12|0;g=k<<1;g=k>>>0<178956970?(g>>>0<b>>>0?b:g):357913941;do if(!g)h=0;else if(g>>>0>357913941)ud();else{h=Wpb(g*12|0)|0;break}while(0);b=h+(i*12|0)|0;c=b;k=h+(g*12|0)|0;f[b>>2]=0;f[h+(i*12|0)+4>>2]=0;f[h+(i*12|0)+8>>2]=0;g=b+12|0;if((e|0)!=(d|0)){do{j=b+-12|0;i=e;e=e+-12|0;f[j>>2]=0;h=b+-8|0;f[h>>2]=0;f[b+-4>>2]=0;f[j>>2]=f[e>>2];j=i+-8|0;f[h>>2]=f[j>>2];i=i+-4|0;f[b+-4>>2]=f[i>>2];f[i>>2]=0;f[j>>2]=0;f[e>>2]=0;b=c+-12|0;c=b}while((e|0)!=(d|0));j=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=c;f[l>>2]=g;f[m>>2]=k;g=j;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-32-e|0)>>>5)<<5);Zpb(e)}}while((d|0)!=(g|0));if(!j)return;Zpb(j);return}function cXa(a){a=a|0;var b=0;b=uva(a)|0;a=gOa(b)|0;b=b+230|0;b=j[b>>1]|j[b+2>>1]<<16;return (b&1|0?(a?1:2):3)&(b&2|0?(a?-2:-3):-1)|0}function dXa(a){a=a|0;switch(a|0){case 0:{a=0;break}case 1:{a=2;break}case 2:{a=1;break}default:{}}return a|0}function eXa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;g=u;u=u+144|0;f=g;if(!d){f=0;u=g;return f|0}if(e){e=($ha(a,b,f)|0)==0;f=eXa(a,e?b:f,c,d,0)|0;u=g;return f|0}else{q=+p[c>>3];n=+p[c+32>>3];l=+p[c+64>>3];z=+p[c+8>>3];x=+p[c+40>>3];v=+p[c+72>>3];D=+p[c+24>>3];C=+p[c+56>>3];B=+p[c+88>>3];j=+p[c+96>>3];t=+p[c+104>>3];i=+p[c+120>>3];w=+p[b>>3];y=+p[b+8>>3];A=+p[b+16>>3];r=1.0/(w*D+y*C+A*B+i);h=(q*w+n*y+l*A+j)*r;r=(w*z+y*x+A*v+t)*r;A=+p[b+24>>3];y=+p[b+32>>3];w=+p[b+40>>3];s=1.0/(A*D+y*C+w*B+i);o=+p[b+48>>3];m=+p[b+56>>3];k=+p[b+64>>3];i=1.0/(o*D+m*C+k*B+i);h=((q*A+n*y+l*w+j)*s-h)*((o*z+m*x+k*v+t)*i-r)-((A*z+y*x+w*v+t)*s-r)*((q*o+n*m+l*k+j)*i-h);f=(d|0)==2?h<0.0:h>0.0;u=g;return f|0}return 0}function fXa(){if(!(b[209528]|0))rrb(209528)|0;f[52774]=215189;return}function gXa(a){a=a|0;hXa(a,f[52774]|0);p[a+24>>3]=0.0;b[a+32>>0]=0;return}function hXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p;if(!(b[209752]|0))if(rrb(209752)|0){f[52775]=0;f[52776]=0;f[52777]=0}d=f[52776]|0;if((f[52775]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=c;u=p;return}k=d+-20|0;h=f[k>>2]|0;f[k>>2]=0;k=d+-16|0;g=f[k>>2]|0;f[k>>2]=0;f[o>>2]=h;k=o+4|0;f[k>>2]=g;m=o+8|0;i=d+-12|0;e=f[i>>2]|0;f[m>>2]=e;j=d+-8|0;n=o+12|0;q=f[j>>2]|0;f[n>>2]=q;l=o+16|0;f[l>>2]=f[d+-4>>2];if(q|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=m;f[i>>2]=0;f[j>>2]=0}d=f[52776]|0;e=d+-20|0;do{g=d+-20|0;f[52776]=g;d=f[d+-12>>2]|0;if(d|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0);d=f[g>>2]|0;f[g>>2]=0;if(d|0)Zpb(d);d=f[52776]|0}while((d|0)!=(e|0));g=f[o>>2]|0;f[o>>2]=0;h=f[k>>2]|0;f[k>>2]=0;f[a>>2]=g;f[a+4>>2]=h;i=a+8|0;e=f[m>>2]|0;f[i>>2]=e;q=f[n>>2]|0;f[a+12>>2]=q;f[a+16>>2]=f[l>>2];d=e;if(!q){f[a+20>>2]=c;if(e|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0)}else{d=f[d+4>>2]|0;e=h+-1|0;if(!(e&h))d=d&e;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[g+(d<<2)>>2]=i;f[m>>2]=0;f[n>>2]=0;f[a+20>>2]=c}d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);u=p;return}function iXa(a,b){a=a|0;b=b|0;f[a>>2]=b;return}function jXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0,t=0;f[a>>2]=b;s=a+72|0;j=c+8|0;t=Jga(b,~~+p[c>>3],~~+p[j>>3])|0;p[s>>3]=+p[t>>3];p[a+80>>3]=+p[t+8>>3];p[a+88>>3]=+p[t+16>>3];e=a+96|0;p[e>>3]=+p[t+24>>3];p[a+104>>3]=+p[t+32>>3];p[a+112>>3]=+p[t+40>>3];p[a+120>>3]=+p[t+48>>3];g=a+128|0;p[g>>3]=+p[t+56>>3];p[a+136>>3]=+p[t+64>>3];p[a+144>>3]=+p[t+72>>3];p[a+152>>3]=+p[t+80>>3];h=a+160|0;p[h>>3]=+p[t+88>>3];p[a+168>>3]=+p[t+96>>3];p[a+176>>3]=+p[t+104>>3];p[a+184>>3]=+p[t+112>>3];i=a+192|0;p[i>>3]=+p[t+120>>3];Lga(s,a+200|0);q=+p[c>>3];o=+p[j>>3];q=q*.5*2.0/q+-1.0;o=(o-o*.5)*2.0/o+-1.0;k=1.0/(+p[a+320>>3]+(q*+p[a+224>>3]+o*+p[a+256>>3]-+p[a+288>>3]));s=f[a>>2]|0;n=+p[s+56>>3]-+p[s+32>>3];m=+p[s+64>>3]-+p[s+40>>3];r=+p[s+72>>3]-+p[s+48>>3];l=+L(+(n*n+(m*m+r*r)));n=n/l;m=m/l;l=r/l;k=-((+p[a+296>>3]+(+p[a+200>>3]*q+ +p[a+232>>3]*o-+p[a+264>>3]))*k*n+((+p[a+304>>3]+(q*+p[a+208>>3]+o*+p[a+240>>3]-+p[a+272>>3]))*k*m+(+p[a+312>>3]+(q*+p[a+216>>3]+o*+p[a+248>>3]-+p[a+280>>3]))*k*l));p[a+8>>3]=n;p[a+16>>3]=m;p[a+24>>3]=l;p[a+32>>3]=k;if((d|0)<=-1)return;p[a+328>>3]=+p[e>>3];p[a+336>>3]=+p[g>>3];p[a+344>>3]=+p[h>>3];p[a+352>>3]=+p[i>>3];o=+p[c>>3];n=+p[j>>3];r=+p[b+208>>3];q=+p[b+216>>3];p[a+360>>3]=+(d|0)/(o<n?n:o)*(r<q?q:r);return}function kXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0;e=+p[c>>3];r=+p[c+8>>3];o=e*+p[b+200>>3]+r*+p[b+232>>3];g=+p[b+264>>3];q=+p[b+296>>3];m=e*+p[b+208>>3]+r*+p[b+240>>3];f=+p[b+272>>3];n=+p[b+304>>3];k=e*+p[b+216>>3]+r*+p[b+248>>3];d=+p[b+280>>3];l=+p[b+312>>3];r=e*+p[b+224>>3]+r*+p[b+256>>3];e=+p[b+288>>3];s=+p[b+320>>3];h=1.0/(s+(r-e));j=(q+(o-g))*h;i=(n+(m-f))*h;h=(l+(k-d))*h;e=1.0/(s+(r+e*0.0));g=(q+(o+g*0.0))*e-j;f=(n+(m+f*0.0))*e-i;e=(l+(k+d*0.0))*e-h;d=+L(+(g*g+(f*f+e*e)));p[a>>3]=j;p[a+8>>3]=i;p[a+16>>3]=h;p[a+24>>3]=g/d;p[a+32>>3]=f/d;p[a+40>>3]=e/d;return}function lXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0;e=u;u=u+80|0;g=e;f[a>>2]=b;p[a+8>>3]=+p[d>>3];j=d+8|0;p[a+16>>3]=+p[j>>3];p[a+24>>3]=+p[c>>3];i=c+8|0;p[a+32>>3]=+p[i>>3];h=+p[j>>3];h=(h-(+p[i>>3]+.5))*2.0/h+-1.0;n[a+40>>2]=(+p[c>>3]+.5)*2.0/+p[d>>3]+-1.0;n[a+44>>2]=h;n[a+48>>2]=0.0;mXa(g,b,c,d);p[a+56>>3]=+p[g>>3];p[a+64>>3]=+p[g+8>>3];p[a+72>>3]=+p[g+16>>3];p[a+80>>3]=+p[g+24>>3];p[a+88>>3]=+p[g+32>>3];p[a+96>>3]=+p[g+40>>3];f[a+104>>2]=f[g+48>>2];f[a+108>>2]=f[g+52>>2];f[a+112>>2]=f[g+56>>2];f[a+116>>2]=f[g+60>>2];f[a+120>>2]=f[g+64>>2];f[a+124>>2]=f[g+68>>2];u=e;return}function mXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0;t=+p[d+8>>3];k=(+p[c>>3]+.5)*2.0/+p[d>>3]+-1.0;t=(t-(+p[c+8>>3]+.5))*2.0/t+-1.0;g=k*+p[b+200>>3]+ +p[b+232>>3]*t;r=+p[b+264>>3];s=+p[b+296>>3];o=k*+p[b+208>>3]+t*+p[b+240>>3];f=+p[b+272>>3];q=+p[b+304>>3];l=k*+p[b+216>>3]+t*+p[b+248>>3];e=+p[b+280>>3];m=+p[b+312>>3];t=k*+p[b+224>>3]+t*+p[b+256>>3];k=+p[b+288>>3];u=+p[b+320>>3];h=1.0/(u+(t-k));j=(s+(g-r))*h;i=(q+(o-f))*h;h=(m+(l-e))*h;k=1.0/(u+(t+k*0.0));g=(s+(r*0.0+g))*k-j;f=(q+(o+f*0.0))*k-i;k=(m+(l+e*0.0))*k-h;e=+L(+(g*g+(f*f+k*k)));g=g/e;f=f/e;e=k/e;p[a>>3]=j;p[a+8>>3]=i;p[a+16>>3]=h;p[a+24>>3]=g;p[a+32>>3]=f;p[a+40>>3]=e;n[a+48>>2]=j;n[a+52>>2]=i;n[a+56>>2]=h;n[a+60>>2]=g;n[a+64>>2]=f;n[a+68>>2]=e;return}function nXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0,h=0.0,i=0.0,j=0.0;g=f[b>>2]|0;j=+p[c>>3];i=+p[c+8>>3];h=+p[c+16>>3];e=1.0/(j*+p[g+96>>3]+i*+p[g+128>>3]+h*+p[g+160>>3]+ +p[g+192>>3]);d=+p[b+16>>3];d=d-d*(((j*+p[g+80>>3]+i*+p[g+112>>3]+h*+p[g+144>>3]+ +p[g+176>>3])*e+1.0)*.5);p[a>>3]=+p[b+8>>3]*(((+p[g+72>>3]*j+ +p[g+104>>3]*i+ +p[g+136>>3]*h+ +p[g+168>>3])*e+1.0)*.5);p[a+8>>3]=d;return}function oXa(){if(!(b[209528]|0))rrb(209528)|0;f[52778]=215189;return}function pXa(a,c){a=a|0;c=c|0;c=c&255;b[a>>0]=c&1;b[a+1>>0]=c>>>1&1;b[a+2>>0]=c>>>2&1;return}function qXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p;if(!(b[209760]|0))if(rrb(209760)|0){f[52779]=0;f[52780]=0;f[52781]=0}d=f[52780]|0;if((f[52779]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=c;u=p;return}k=d+-20|0;h=f[k>>2]|0;f[k>>2]=0;k=d+-16|0;g=f[k>>2]|0;f[k>>2]=0;f[o>>2]=h;k=o+4|0;f[k>>2]=g;m=o+8|0;i=d+-12|0;e=f[i>>2]|0;f[m>>2]=e;j=d+-8|0;n=o+12|0;q=f[j>>2]|0;f[n>>2]=q;l=o+16|0;f[l>>2]=f[d+-4>>2];if(q|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=m;f[i>>2]=0;f[j>>2]=0}d=f[52780]|0;e=d+-20|0;do{g=d+-20|0;f[52780]=g;d=f[d+-12>>2]|0;if(d|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0);d=f[g>>2]|0;f[g>>2]=0;if(d|0)Zpb(d);d=f[52780]|0}while((d|0)!=(e|0));g=f[o>>2]|0;f[o>>2]=0;h=f[k>>2]|0;f[k>>2]=0;f[a>>2]=g;f[a+4>>2]=h;i=a+8|0;e=f[m>>2]|0;f[i>>2]=e;q=f[n>>2]|0;f[a+12>>2]=q;f[a+16>>2]=f[l>>2];d=e;if(!q){f[a+20>>2]=c;if(e|0)do{q=d;d=f[d>>2]|0;Zpb(q)}while((d|0)!=0)}else{d=f[d+4>>2]|0;e=h+-1|0;if(!(e&h))d=d&e;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[g+(d<<2)>>2]=i;f[m>>2]=0;f[n>>2]=0;f[a+20>>2]=c}d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);u=p;return}function rXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!(b[209768]|0))if(rrb(209768)|0){f[52782]=0;f[52783]=0;f[52784]=0}e=f[52783]|0;if((f[52782]|0)==(e|0)){m=0;l=0;k=0;n=a+4|0;f[a>>2]=k;f[n>>2]=l;n=a+8|0;f[n>>2]=m;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;m=e+-8|0;n=f[m>>2]|0;l=e+-4|0;g=f[l>>2]|0;f[l>>2]=0;f[m>>2]=0;f[h>>2]=0;h=f[52783]|0;m=h+-12|0;while(1){e=h+-12|0;f[52783]=e;l=f[e>>2]|0;if(l){k=h+-8|0;h=f[k>>2]|0;if((h|0)==(l|0))e=l;else{do{i=h+-12|0;f[k>>2]=i;j=f[i>>2]|0;if(!j)h=i;else{h=h+-8|0;i=f[h>>2]|0;if((i|0)!=(j|0))f[h>>2]=i+(~((i+-32-j|0)>>>5)<<5);Zpb(j);h=f[k>>2]|0}}while((h|0)!=(l|0));e=f[e>>2]|0}Zpb(e);e=f[52783]|0}if((e|0)==(m|0)){e=n;break}else h=e}n=a+4|0;f[a>>2]=d;f[n>>2]=e;n=a+8|0;f[n>>2]=g;a=a+12|0;f[a>>2]=c;return}function sXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;o=(c-b|0)/12|0;j=a+8|0;e=f[j>>2]|0;q=f[a>>2]|0;d=q;if(o>>>0>((e-q|0)/12|0)>>>0){if(q){i=a+4|0;e=f[i>>2]|0;if((e|0)==(d|0))e=q;else{do{g=e+-12|0;f[i>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~((g+-32-h|0)>>>5)<<5);Zpb(h);e=f[i>>2]|0}}while((e|0)!=(d|0));e=f[a>>2]|0}Zpb(e);f[j>>2]=0;f[i>>2]=0;f[a>>2]=0;e=0}if(o>>>0>357913941)fob(a);n=(e|0)/12|0;e=n<<1;e=n>>>0<178956970?(e>>>0<o>>>0?o:e):357913941;if(e>>>0>357913941)fob(a);g=Wpb(e*12|0)|0;n=a+4|0;f[n>>2]=g;f[a>>2]=g;f[j>>2]=g+(e*12|0);if((b|0)==(c|0))return;else m=b;while(1){f[g>>2]=0;l=g+4|0;f[l>>2]=0;f[g+8>>2]=0;i=m+4|0;e=(f[i>>2]|0)-(f[m>>2]|0)|0;h=e>>5;if(h|0){if(h>>>0>134217727){e=38;break}k=Wpb(e)|0;f[l>>2]=k;f[g>>2]=k;f[g+8>>2]=k+(h<<5);j=f[m>>2]|0;h=f[i>>2]|0;if((j|0)!=(h|0)){e=j;i=k;while(1){p[i>>3]=+p[e>>3];p[i+8>>3]=+p[e+8>>3];p[i+16>>3]=+p[e+16>>3];p[i+24>>3]=+p[e+24>>3];e=e+32|0;if((e|0)==(h|0))break;else i=i+32|0}f[l>>2]=k+(((h+-32-j|0)>>>5)+1<<5)}}m=m+12|0;e=(f[n>>2]|0)+12|0;f[n>>2]=e;if((m|0)==(c|0)){e=43;break}else g=e}if((e|0)==38)fob(g);else if((e|0)==43)return}m=a+4|0;i=((f[m>>2]|0)-q|0)/12|0;h=o>>>0>i>>>0;i=b+(i*12|0)|0;g=h?i:c;if((g|0)==(b|0))j=d;else{e=b;do{if((d|0)!=(e|0))tXa(d,f[e>>2]|0,f[e+4>>2]|0);e=e+12|0;d=d+12|0}while((e|0)!=(g|0));j=d}if(!h){d=f[m>>2]|0;if((d|0)==(j|0))return;do{e=d+-12|0;f[m>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-32-g|0)>>>5)<<5);Zpb(g);d=f[m>>2]|0}}while((d|0)!=(j|0));return}if((g|0)==(c|0))return;l=f[m>>2]|0;while(1){f[l>>2]=0;k=l+4|0;f[k>>2]=0;f[l+8>>2]=0;g=i+4|0;d=(f[g>>2]|0)-(f[i>>2]|0)|0;e=d>>5;if(e|0){if(e>>>0>134217727){e=11;break}j=Wpb(d)|0;f[k>>2]=j;f[l>>2]=j;f[l+8>>2]=j+(e<<5);h=f[i>>2]|0;e=f[g>>2]|0;if((h|0)!=(e|0)){d=h;g=j;while(1){p[g>>3]=+p[d>>3];p[g+8>>3]=+p[d+8>>3];p[g+16>>3]=+p[d+16>>3];p[g+24>>3]=+p[d+24>>3];d=d+32|0;if((d|0)==(e|0))break;else g=g+32|0}f[k>>2]=j+(((e+-32-h|0)>>>5)+1<<5)}}i=i+12|0;d=(f[m>>2]|0)+12|0;f[m>>2]=d;if((i|0)==(c|0)){e=43;break}else l=d}if((e|0)==11)fob(l);else if((e|0)==43)return}function tXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=b;i=c-l>>5;j=a+8|0;d=f[j>>2]|0;h=f[a>>2]|0;k=h;if(i>>>0>d-h>>5>>>0){g=h;if(h){d=a+4|0;e=f[d>>2]|0;if((e|0)!=(k|0))f[d>>2]=e+(~((e+-32-h|0)>>>5)<<5);Zpb(g);f[j>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(i>>>0>134217727)fob(a);k=d>>4;d=d>>5>>>0<67108863?(k>>>0<i>>>0?i:k):134217727;if(d>>>0>134217727)fob(a);g=Wpb(d<<5)|0;h=a+4|0;f[h>>2]=g;f[a>>2]=g;f[j>>2]=g+(d<<5);if((b|0)==(c|0))return;e=c+-32-l|0;d=g;while(1){p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];p[d+24>>3]=+p[b+24>>3];b=b+32|0;if((b|0)==(c|0))break;else d=d+32|0}f[h>>2]=g+((e>>>5)+1<<5);return}j=a+4|0;e=f[j>>2]|0;a=e-h>>5;g=i>>>0>a>>>0;a=b+(a<<5)|0;i=g?a:c;h=e;if((i|0)==(b|0))b=k;else{e=i+-32-l|0;d=k;while(1){p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];p[d+24>>3]=+p[b+24>>3];b=b+32|0;if((b|0)==(i|0))break;else d=d+32|0}b=k+((e>>>5)+1<<5)|0}if(!g){if((b|0)==(h|0))return;f[j>>2]=h+(~((h+-32-b|0)>>>5)<<5);return}if((i|0)==(c|0))return;g=f[j>>2]|0;e=c+-32-i|0;b=a;d=g;while(1){p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];p[d+24>>3]=+p[b+24>>3];b=b+32|0;if((b|0)==(c|0))break;else d=d+32|0}f[j>>2]=g+((e>>>5)+1<<5);return}function uXa(a){a=a|0;var b=0,c=0,d=0;vXa(a+744|0);c=a+584|0;b=f[a+604>>2]|0;if(b|0)wXa(b,c);b=f[a+592>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(b|0)Zpb(b);xXa(a+184|0);AL(a+120|0);c=a+64|0;b=f[a+84>>2]|0;if(b|0)yXa(b,c);b=f[a+72>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(!b)return;Zpb(b);return}function vXa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=a+16|0;b=f[a+28>>2]|0;if(b|0)BXa(b,h);b=f[h>>2]|0;if(b|0){g=a+20|0;c=f[g>>2]|0;if((c|0)!=(b|0)){d=c;while(1){c=d+-12|0;f[g>>2]=c;e=f[c>>2]|0;if(e){c=d+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e);c=f[g>>2]|0}if((c|0)==(b|0))break;else d=c}b=f[h>>2]|0}Zpb(b)}b=f[a+12>>2]|0;if(b|0)BXa(b,a);b=f[a>>2]|0;if(!b)return;g=a+4|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[g>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function wXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=c+4|0;d=f[h>>2]|0;if(!d)return;j=c+12|0;if(f[j>>2]|0){e=c+8|0;a=f[e>>2]|0;if(!a){f[e>>2]=0;g=7}else{do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);a=f[h>>2]|0;f[e>>2]=0;if(a|0){d=a;g=7}}if((g|0)==7){a=0;do{f[(f[c>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[j>>2]=0}if(!(b[209760]|0))if(rrb(209760)|0){f[52779]=0;f[52780]=0;f[52781]=0}a=f[52780]|0;if(a>>>0>=(f[52781]|0)>>>0){AXa(211116,c);return}e=f[c>>2]|0;f[c>>2]=0;g=f[h>>2]|0;f[h>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){a=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))a=a&d;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;f[e+(a<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}f[52780]=(f[52780]|0)+20;return}function xXa(a){a=a|0;var b=0,c=0,d=0;b=f[a+368>>2]|0;if(b|0){c=a+372|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+344>>2]|0;if(b|0){c=a+348|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+320>>2]|0;if(b|0){c=a+324|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+296>>2]|0;if(b|0){c=a+300|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+272>>2]|0;if(b|0){c=a+276|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+248>>2]|0;if(b|0){c=a+252|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+224>>2]|0;if(b|0){c=a+228|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+200>>2]|0;if(b|0){c=a+204|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+176>>2]|0;if(b|0){c=a+180|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+152>>2]|0;if(b|0){c=a+156|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+128>>2]|0;if(b|0){c=a+132|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+104>>2]|0;if(b|0){c=a+108|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+80>>2]|0;if(b|0){c=a+84|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+56>>2]|0;if(b|0){c=a+60|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}d=f[a+8>>2]|0;if(!d)return;b=a+12|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-16-d|0)>>>4)<<4);Zpb(d);return}function yXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=c+4|0;d=f[h>>2]|0;if(!d)return;j=c+12|0;if(f[j>>2]|0){e=c+8|0;a=f[e>>2]|0;if(!a){f[e>>2]=0;g=7}else{do{i=a;a=f[a>>2]|0;Zpb(i)}while((a|0)!=0);a=f[h>>2]|0;f[e>>2]=0;if(a|0){d=a;g=7}}if((g|0)==7){a=0;do{f[(f[c>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[j>>2]=0}if(!(b[209752]|0))if(rrb(209752)|0){f[52775]=0;f[52776]=0;f[52777]=0}a=f[52776]|0;if(a>>>0>=(f[52777]|0)>>>0){zXa(211100,c);return}e=f[c>>2]|0;f[c>>2]=0;g=f[h>>2]|0;f[h>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){a=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))a=a&d;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;f[e+(a<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}f[52776]=(f[52776]|0)+20;return}function zXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;h=((f[q>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/20|0;c=p<<1;c=p>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)e=0;else if(c>>>0>214748364)ud();else{e=Wpb(c*20|0)|0;break}while(0);n=e+(h*20|0)|0;l=n;p=e+(c*20|0)|0;m=f[b>>2]|0;f[b>>2]=0;i=b+4|0;g=f[i>>2]|0;f[i>>2]=0;f[n>>2]=m;f[e+(h*20|0)+4>>2]=g;i=e+(h*20|0)+8|0;j=b+8|0;c=f[j>>2]|0;f[i>>2]=c;k=b+12|0;o=f[k>>2]|0;f[e+(h*20|0)+12>>2]=o;f[e+(h*20|0)+16>>2]=f[b+16>>2];b=m;if(o|0){c=f[c+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[b+(c<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}o=n+20|0;m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=l;e=m;d=m}else{k=l;d=n;do{l=c;c=c+-20|0;g=f[c>>2]|0;f[c>>2]=0;h=l+-16|0;e=f[h>>2]|0;f[h>>2]=0;f[d+-20>>2]=g;f[d+-16>>2]=e;h=d+-12|0;i=l+-12|0;b=f[i>>2]|0;f[h>>2]=b;j=l+-8|0;n=f[j>>2]|0;f[d+-8>>2]=n;f[d+-4>>2]=f[l+-4>>2];if(n|0){d=f[b+4>>2]|0;b=e+-1|0;if(!(b&e))d=d&b;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;f[g+(d<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}d=k+-20|0;k=d}while((c|0)!=(m|0));c=k;e=f[a>>2]|0;d=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;b=e;if((d|0)!=(b|0))do{c=f[d+-12>>2]|0;d=d+-20|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(b|0));if(!e)return;Zpb(e);return}function AXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;h=((f[q>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/20|0;c=p<<1;c=p>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)e=0;else if(c>>>0>214748364)ud();else{e=Wpb(c*20|0)|0;break}while(0);n=e+(h*20|0)|0;l=n;p=e+(c*20|0)|0;m=f[b>>2]|0;f[b>>2]=0;i=b+4|0;g=f[i>>2]|0;f[i>>2]=0;f[n>>2]=m;f[e+(h*20|0)+4>>2]=g;i=e+(h*20|0)+8|0;j=b+8|0;c=f[j>>2]|0;f[i>>2]=c;k=b+12|0;o=f[k>>2]|0;f[e+(h*20|0)+12>>2]=o;f[e+(h*20|0)+16>>2]=f[b+16>>2];b=m;if(o|0){c=f[c+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[b+(c<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}o=n+20|0;m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=l;e=m;d=m}else{k=l;d=n;do{l=c;c=c+-20|0;g=f[c>>2]|0;f[c>>2]=0;h=l+-16|0;e=f[h>>2]|0;f[h>>2]=0;f[d+-20>>2]=g;f[d+-16>>2]=e;h=d+-12|0;i=l+-12|0;b=f[i>>2]|0;f[h>>2]=b;j=l+-8|0;n=f[j>>2]|0;f[d+-8>>2]=n;f[d+-4>>2]=f[l+-4>>2];if(n|0){d=f[b+4>>2]|0;b=e+-1|0;if(!(b&e))d=d&b;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;f[g+(d<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}d=k+-20|0;k=d}while((c|0)!=(m|0));c=k;e=f[a>>2]|0;d=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;b=e;if((d|0)!=(b|0))do{c=f[d+-12>>2]|0;d=d+-20|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(b|0));if(!e)return;Zpb(e);return}function BXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[c>>2]|0;g=i;if((f[h>>2]|0)==(i|0))return;i=c+4|0;a=f[i>>2]|0;if((a|0)!=(g|0)){d=a;while(1){a=d+-12|0;f[i>>2]=a;e=f[a>>2]|0;if(e){a=d+-8|0;d=f[a>>2]|0;if((d|0)!=(e|0))f[a>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e);a=f[i>>2]|0}if((a|0)==(g|0))break;else d=a}}if(!(b[209768]|0))if(rrb(209768)|0){f[52782]=0;f[52783]=0;f[52784]=0}a=f[52783]|0;if(a>>>0<(f[52784]|0)>>>0){f[a>>2]=0;g=a+4|0;f[g>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[g>>2]=f[i>>2];f[a+8>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[c>>2]=0;f[52783]=a+12;return}else{CXa(211128,c);return}}function CXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-c|0)/12|0;c=l<<1;c=l>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;l=b;d=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;l=f[a>>2]|0;d=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;i=l;if((d|0)!=(i|0)){h=d;do{d=h;h=h+-12|0;c=f[h>>2]|0;if(c|0){g=d+-8|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{e=d+-12|0;f[g>>2]=e;b=f[e>>2]|0;if(!b)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-32-b|0)>>>5)<<5);Zpb(b);d=f[g>>2]|0}}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}}while((h|0)!=(i|0))}if(!l)return;Zpb(l);return}function DXa(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,t=0,u=0.0,v=0.0,w=0.0;m=a;l=m+48|0;do{f[m>>2]=f[c>>2];m=m+4|0;c=c+4|0}while((m|0)<(l|0));f[a+48>>2]=e;r=a+52|0;b[r>>0]=b[g>>0]|0;b[r+1>>0]=b[g+1>>0]|0;b[r+2>>0]=b[g+2>>0]|0;g=(tva(e)|0)+217|0;b[a+55>>0]=b[g>>0]|0;g=a+56|0;if(!(b[i+4>>0]|0)){c=f[i>>2]|0;f[g>>2]=c;c=c+56|0}else{f[g>>2]=0;c=f[i>>2]|0}o=a+60|0;f[o>>2]=c;gXa(a+64|0);q=a+104|0;iXa(q,j);n=a+108|0;b[n>>0]=d;i=a+112|0;p[i>>3]=C;f[a+192>>2]=0;f[a+196>>2]=0;f[a+200>>2]=0;f[a+216>>2]=0;f[a+220>>2]=0;f[a+224>>2]=0;f[a+240>>2]=0;f[a+244>>2]=0;f[a+248>>2]=0;f[a+264>>2]=0;f[a+268>>2]=0;f[a+272>>2]=0;f[a+288>>2]=0;f[a+292>>2]=0;f[a+296>>2]=0;f[a+312>>2]=0;f[a+316>>2]=0;f[a+320>>2]=0;f[a+336>>2]=0;f[a+340>>2]=0;f[a+344>>2]=0;f[a+360>>2]=0;f[a+364>>2]=0;f[a+368>>2]=0;f[a+384>>2]=0;f[a+388>>2]=0;f[a+392>>2]=0;f[a+408>>2]=0;f[a+412>>2]=0;f[a+416>>2]=0;f[a+432>>2]=0;f[a+436>>2]=0;f[a+440>>2]=0;f[a+456>>2]=0;f[a+460>>2]=0;f[a+464>>2]=0;f[a+480>>2]=0;f[a+484>>2]=0;f[a+488>>2]=0;f[a+504>>2]=0;f[a+508>>2]=0;f[a+512>>2]=0;f[a+528>>2]=0;f[a+532>>2]=0;f[a+536>>2]=0;f[a+552>>2]=0;f[a+556>>2]=0;f[a+560>>2]=0;c=a+184|0;m=a+120|0;l=m+60|0;do{f[m>>2]=0;m=m+4|0}while((m|0)<(l|0));p[c>>3]=2.2250738585072014e-308;p[a+208>>3]=8.938889586303288e-249;p[a+232>>3]=6.5957363400673356e-229;p[a+256>>3]=4.8667944097154903e-209;p[a+280>>3]=3.5910604374152623e-189;p[a+304>>3]=2.6497349136888998e-169;p[a+328>>3]=1.9551592726396706e-149;p[a+352>>3]=1.4426529090289578e-129;p[a+376>>3]=1.0644899600019857e-109;p[a+400>>3]=7.85454954447594e-90;p[a+424>>3]=5.795634610448756e-70;p[a+448>>3]=4.2764235361472415e-50;p[a+472>>3]=3.1554436208838314e-30;p[a+496>>3]=2.3283064365385257e-10;p[a+520>>3]=17179869183.998657;p[a+544>>3]=1797693134862315708145274.0e284;if(!j)c=cXa(e)|0;else c=2;f[a+576>>2]=c;qXa(a+584|0,f[52778]|0);f[a+608>>2]=0;j=a+744|0;rXa(j,f[52778]|0);m=a+760|0;rXa(m,f[52778]|0);$Wa(e,m);sXa(j,f[m>>2]|0,f[a+764>>2]|0);m=(f[g>>2]|0)==0;if(m){b[a+8>>0]=0;b[a+9>>0]=0;b[a+10>>0]=1;f[a+16>>2]=-1;b[a+11>>0]=0;b[a+12>>0]=0;b[a+13>>0]=0}c=a+40|0;k=+p[c>>3];if(k<0.0)p[c>>3]=C;else{p[s>>3]=k;if(!((f[s>>2]|0)==0?(f[s+4>>2]&2147483647|0)==2146435072:0)){e=f[o>>2]|0;w=+p[e+24>>3];v=+p[e+32>>3];u=+p[e+40>>3];k=k/+L(+(w*w+(v*v+u*u)));p[i>>3]=k}}i=h[n>>0]|0;n=a+109|0;g=i&1;b[n>>0]=g;d=a+110|0;c=i>>>1&1;b[d>>0]=c;l=a+111|0;i=i>>>2&1;b[l>>0]=i;if(m)t=14;else if((f[a+16>>2]|0)<0)t=14;if((t|0)==14){b[d>>0]=0;b[l>>0]=0;i=0;c=0}m=(b[a+24>>0]|0)==0;if(m)l=c;else if(!(f[q>>2]|0)){if(!(b[a+53>>0]|0))if(!(b[a+27>>0]|0)){b[d>>0]=0;c=0}if(!(b[a+54>>0]|0))if(!(b[a+28>>0]|0)){b[l>>0]=0;l=c;i=0}else l=c;else l=c}else l=c;d=l<<24>>24==0;do if((l|i)<<24>>24){if(!(b[a+8>>0]|0))if(!(b[a+12>>0]|0))break;b[n>>0]=1;g=1}while(0);if(m)t=32;else if(!(f[q>>2]|0))if(!(b[r>>0]|0)){c=a+26|0;if(!(b[c>>0]|0)){b[n>>0]=0;t=34}else t=32}else t=32;else t=32;if((t|0)==32)if(!(g<<24>>24)){c=a+26|0;t=34}else c=1;if((t|0)==34){b[c>>0]=0;b[a+12>>0]=0;c=0}if(d)b[a+27>>0]=0;if(!(i<<24>>24))b[a+28>>0]=0;if(c<<24>>24){if((l|i)<<24>>24)return;if(b[a+9>>0]|0)return}b[a+8>>0]=0;return}function EXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;c=a+4|0;f[c>>2]=0;f[a+8>>2]=0;f[a>>2]=f[b>>2];d=b+4|0;f[c>>2]=f[d>>2];c=b+8|0;f[a+8>>2]=f[c>>2];f[c>>2]=0;f[d>>2]=0;f[b>>2]=0;d=a+12|0;c=b+12|0;f[d>>2]=0;e=a+16|0;f[e>>2]=0;f[a+20>>2]=0;f[d>>2]=f[c>>2];d=b+16|0;f[e>>2]=f[d>>2];e=b+20|0;f[a+20>>2]=f[e>>2];f[e>>2]=0;f[d>>2]=0;f[c>>2]=0;c=a+24|0;d=b+24|0;f[c>>2]=0;e=a+28|0;f[e>>2]=0;f[a+32>>2]=0;f[c>>2]=f[d>>2];c=b+28|0;f[e>>2]=f[c>>2];e=b+32|0;f[a+32>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[d>>2]=0;d=a+36|0;c=b+36|0;f[d>>2]=0;e=a+40|0;f[e>>2]=0;f[a+44>>2]=0;f[d>>2]=f[c>>2];d=b+40|0;f[e>>2]=f[d>>2];b=b+44|0;f[a+44>>2]=f[b>>2];f[b>>2]=0;f[d>>2]=0;f[c>>2]=0;return}function FXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a>>2]|0;e=a+4|0;if(!c)c=a+8|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~(((d+-192-c|0)>>>0)/192|0)*192|0);Zpb(c);c=a+8|0;f[c>>2]=0;f[e>>2]=0;f[a>>2]=0}f[a>>2]=f[b>>2];i=b+4|0;f[e>>2]=f[i>>2];j=b+8|0;f[c>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[b>>2]=0;i=b+12|0;j=a+12|0;d=f[j>>2]|0;if(!d){c=a+16|0;d=a+20|0}else{c=a+16|0;e=f[c>>2]|0;if((e|0)!=(d|0)){do{g=e+-208|0;f[c>>2]=g;h=f[e+-120>>2]|0;if(!h)e=g;else{e=e+-116|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-12-h|0)>>>0)/12|0)*12|0);Zpb(h);e=f[c>>2]|0}}while((e|0)!=(d|0));d=f[j>>2]|0}Zpb(d);d=a+20|0;f[d>>2]=0;f[c>>2]=0;f[j>>2]=0}f[j>>2]=f[i>>2];g=b+16|0;f[c>>2]=f[g>>2];h=b+20|0;f[d>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[i>>2]=0;g=b+24|0;h=a+24|0;c=f[h>>2]|0;e=a+28|0;if(!c)c=a+32|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~(((d+-120-c|0)>>>0)/120|0)*120|0);Zpb(c);c=a+32|0;f[c>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];d=b+28|0;f[e>>2]=f[d>>2];e=b+32|0;f[c>>2]=f[e>>2];f[e>>2]=0;f[d>>2]=0;f[g>>2]=0;d=b+36|0;e=a+36|0;g=f[e>>2]|0;c=a+40|0;if(!g){j=a+44|0;a=f[d>>2]|0;f[e>>2]=a;a=b+40|0;i=f[a>>2]|0;f[c>>2]=i;b=b+44|0;i=f[b>>2]|0;f[j>>2]=i;f[b>>2]=0;f[a>>2]=0;f[d>>2]=0;return}h=f[c>>2]|0;if((h|0)!=(g|0))f[c>>2]=h+(~(((h+-240-g|0)>>>0)/240|0)*240|0);Zpb(g);j=a+44|0;f[j>>2]=0;f[c>>2]=0;f[e>>2]=0;a=f[d>>2]|0;f[e>>2]=a;a=b+40|0;i=f[a>>2]|0;f[c>>2]=i;b=b+44|0;i=f[b>>2]|0;f[j>>2]=i;f[b>>2]=0;f[a>>2]=0;f[d>>2]=0;return}function GXa(a){a=a|0;if((f[a>>2]|0)!=(f[a+4>>2]|0)){a=0;return a|0}if((f[a+12>>2]|0)!=(f[a+16>>2]|0)){a=0;return a|0}if((f[a+24>>2]|0)!=(f[a+28>>2]|0)){a=0;return a|0}a=(f[a+36>>2]|0)==(f[a+40>>2]|0);return a|0}function HXa(){f[52785]=0;f[52786]=0;f[52787]=0;return}function IXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+512|0;n=r+496|0;o=r;q=r+504|0;if(b[a+20>>0]|0)if(b[a+109>>0]|0)if(!(b[a+110>>0]|0))if(!(b[a+111>>0]|0)){e=a+56|0;d=f[e>>2]|0;b[n>>0]=(b[a+11>>0]|0)!=0&(d|0)!=0&1;if(!d)d=0;else d=f[f[d>>2]>>2]|0;m=a+104|0;N2a(o,n,f[a+48>>2]|0,d,(f[m>>2]|0)==0?a+744|0:211140);f[o>>2]=32204;f[o+492>>2]=a;v3a(o,c);if(!(f[e>>2]|0))l=1;else l=b[a+12>>0]|0?1:3;d=A3a(o,n,q)|0;a:do if(d|0){g=a+112|0;k=a+120|0;e=0;c=4;do{while(1){i=+p[n>>3];if(!(+p[g>>3]<i?(c|0)==(f[q>>2]|0):0))break;if(!(B3a(o)|0))break a;u3a(o,e);d=A3a(o,n,q)|0;if(!d)break a}c=d+200|0;if((f[m>>2]|0)==(((j[c>>1]|h[c+2>>0]<<16)&16777215)>>>19&15|0))E4a(a,l,d,i);if(e)e=1;else e=(GXa(k)|0)^1;u3a(o,e);c=f[q>>2]|0;d=A3a(o,n,q)|0}while((d|0)!=0)}while(0);K2a(o);u=r;return}e=a+56|0;d=f[e>>2]|0;b[n>>0]=(b[a+11>>0]|0)!=0&(d|0)!=0&1;if(!d)d=0;else d=f[f[d>>2]>>2]|0;k=a+104|0;N2a(o,n,f[a+48>>2]|0,d,(f[k>>2]|0)==0?a+744|0:211140);f[o>>2]=32204;f[o+492>>2]=a;v3a(o,c);if(!(f[e>>2]|0))g=1;else g=b[a+12>>0]|0?1:3;e=A3a(o,n,q)|0;if(e|0){c=a+120|0;d=0;do{m=e+200|0;if((f[k>>2]|0)==(((j[m>>1]|h[m+2>>0]<<16)&16777215)>>>19&15|0))E4a(a,g,e,+p[n>>3]);if(d)d=1;else d=(GXa(c)|0)^1;u3a(o,d);e=A3a(o,n,q)|0}while((e|0)!=0)}K2a(o);u=r;return}function JXa(a){a=a|0;K2a(a);Zpb(a);return}function KXa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0;q=u;u=u+48|0;c=q;a=a+492|0;if(!(zka(f[(f[a>>2]|0)+48>>2]|0,c)|0)){b=0;u=q;return b|0}a=f[(f[a>>2]|0)+60>>2]|0;e=+p[c>>3];l=(+p[c+24>>3]-e)*.5;h=+p[c+8>>3];g=(+p[c+32>>3]-h)*.5;j=+p[c+16>>3];n=(+p[c+40>>3]-j)*.5;e=e+l;h=h+g;j=j+n;n=l*l+(g*g+n*n);g=+p[a>>3];l=e-g;i=+p[a+8>>3];m=h-i;k=+p[a+16>>3];d=j-k;o=l*+p[a+24>>3]+(m*+p[a+32>>3]+d*+p[a+40>>3]);d=n-(l*l+(m*m+d*d)-o*o);if(d<0.0){b=1;u=q;return b|0}l=+L(+d);m=o+l;g=g-e;e=i-h;d=k-j;if(!(m>=0.0)){b=1;u=q;return b|0}C2a(b,g*g+(e*e+d*d)<=n?0.0:o-l,m);b=1;u=q;return b|0}function LXa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=f[a+492>>2]|0;g=d+52|0;e=(b[d+24>>0]|0)!=0;h=f[d+104>>2]|0;if(e)a=(b[d+26>>0]|0)==0;else a=0;if(YWa(g,a,h,c)|0){c=1;return c|0}if(e)a=(b[d+27>>0]|0)==0;else a=0;if(ZWa(g,a,h,c)|0){c=1;return c|0}if(e)a=(b[d+28>>0]|0)==0;else a=0;c=_Wa(g,a,h,c)|0;return c|0}function MXa(a,b){a=a|0;b=b|0;return +(+D3a(f[a+492>>2]|0,b))}function NXa(a,b){a=a|0;b=b|0;return +(+C3a(f[a+492>>2]|0,b))}function OXa(a){a=a|0;var c=0,d=0,e=0,g=0.0,i=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+512|0;n=r+496|0;o=r;q=r+504|0;e=a+56|0;if(f[e>>2]|0)if(!(b[a+10>>0]|0))P4a(a);d=a+109|0;if(!(b[d>>0]|0))if(!(b[a+110>>0]|0))if(!(b[a+111>>0]|0)){u=r;return}if(!(f[e>>2]|0))c=9;else if(!(b[a+13>>0]|0))c=9;do if((c|0)==9){m=a+120|0;if(GXa(m)|0){if(!((b[a+20>>0]|0)==0|(b[d>>0]|0)==0))if(!(b[a+110>>0]|0))if(!(b[a+111>>0]|0)){c=f[e>>2]|0;b[n>>0]=(b[a+11>>0]|0)!=0&(c|0)!=0&1;if(!c)c=0;else c=f[f[c>>2]>>2]|0;l=a+104|0;N2a(o,n,f[a+48>>2]|0,c,(f[l>>2]|0)==0?a+744|0:211140);f[o>>2]=32204;f[o+492>>2]=a;O2a(o);if(!(f[e>>2]|0))k=1;else k=b[a+12>>0]|0?1:3;c=A3a(o,n,q)|0;a:do if(c|0){i=a+112|0;d=0;e=4;do{while(1){g=+p[n>>3];if(!(+p[i>>3]<g?(e|0)==(f[q>>2]|0):0))break;if(!(B3a(o)|0))break a;u3a(o,d);c=A3a(o,n,q)|0;if(!c)break a}e=c+200|0;if((f[l>>2]|0)==(((j[e>>1]|h[e+2>>0]<<16)&16777215)>>>19&15|0))E4a(a,k,c,g);if(d)d=1;else d=(GXa(m)|0)^1;u3a(o,d);e=f[q>>2]|0;c=A3a(o,n,q)|0}while((c|0)!=0)}while(0);K2a(o);break}c=f[e>>2]|0;b[n>>0]=(b[a+11>>0]|0)!=0&(c|0)!=0&1;if(!c)c=0;else c=f[f[c>>2]>>2]|0;i=a+104|0;N2a(o,n,f[a+48>>2]|0,c,(f[i>>2]|0)==0?a+744|0:211140);f[o>>2]=32204;f[o+492>>2]=a;O2a(o);if(!(f[e>>2]|0))e=1;else e=b[a+12>>0]|0?1:3;c=A3a(o,n,q)|0;if(c|0){d=0;do{l=c+200|0;if((f[i>>2]|0)==(((j[l>>1]|h[l+2>>0]<<16)&16777215)>>>19&15|0))E4a(a,e,c,+p[n>>3]);if(d)d=1;else d=(GXa(m)|0)^1;u3a(o,d);c=A3a(o,n,q)|0}while((c|0)!=0)}K2a(o)}}while(0);E3a(a);u=r;return}function PXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+608|0;h=e+584|0;j=e+216|0;g=e+16|0;i=e;p[h>>3]=+n[d>>2];p[h+8>>3]=+n[d+4>>2];jXa(j,ENa(uva(b)|0)|0,h,0);p[i>>3]=+n[c>>2];p[i+8>>3]=+n[c+4>>2];lXa(g,j,i,h);f[a>>2]=f[g+104>>2];f[a+4>>2]=f[g+108>>2];f[a+8>>2]=f[g+112>>2];f[a+12>>2]=f[g+116>>2];f[a+16>>2]=f[g+120>>2];f[a+20>>2]=f[g+124>>2];u=e;return}function QXa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0.0,la=0.0,ma=0.0;X=u;u=u+1456|0;v=X+1408|0;Z=X+1392|0;V=X+1024|0;W=X+664|0;T=X+464|0;U=X+24|0;H=X;h=+n[d>>2];j=+n[c>>2];L=h-j;i=+n[d+4>>2];J=+n[c+4>>2];K=i-J;n[v>>2]=j;n[v+4>>2]=J;o=v+8|0;n[o>>2]=j+0.0;m=v+12|0;n[m>>2]=K+J;n[v+16>>2]=h;t=v+20|0;n[t>>2]=i;N=v+24|0;n[N>>2]=L+j;M=v+28|0;n[M>>2]=J+0.0;aa=v+32|0;n[aa>>2]=j+L*.5;$=v+36|0;n[$>>2]=J+K*.5;p[Z>>3]=+n[e>>2];p[Z+8>>3]=+n[e+4>>2];jXa(V,ENa(uva(b)|0)|0,Z,0);_=U+8|0;Y=T+56|0;R=T+64|0;S=T+72|0;D=T+80|0;E=T+88|0;F=T+96|0;B=T+104|0;x=T+108|0;w=T+112|0;G=T+116|0;I=T+120|0;C=T+124|0;p[U>>3]=+n[v>>2];p[_>>3]=J;lXa(T,V,U,Z);p[W>>3]=+p[Y>>3];b=W+8|0;p[b>>3]=+p[R>>3];c=W+16|0;p[c>>3]=+p[S>>3];Q=W+24|0;p[Q>>3]=+p[D>>3];P=W+32|0;p[P>>3]=+p[E>>3];O=W+40|0;p[O>>3]=+p[F>>3];f[W+48>>2]=f[B>>2];f[W+52>>2]=f[x>>2];f[W+56>>2]=f[w>>2];f[W+60>>2]=f[G>>2];f[W+64>>2]=f[I>>2];f[W+68>>2]=f[C>>2];p[U>>3]=+n[o>>2];p[_>>3]=+n[m>>2];lXa(T,V,U,Z);p[W+72>>3]=+p[Y>>3];m=W+80|0;p[m>>3]=+p[R>>3];o=W+88|0;p[o>>3]=+p[S>>3];e=W+96|0;p[e>>3]=+p[D>>3];l=W+104|0;p[l>>3]=+p[E>>3];d=W+112|0;p[d>>3]=+p[F>>3];f[W+120>>2]=f[B>>2];f[W+124>>2]=f[x>>2];f[W+128>>2]=f[w>>2];f[W+132>>2]=f[G>>2];f[W+136>>2]=f[I>>2];f[W+140>>2]=f[C>>2];p[U>>3]=+n[v+16>>2];p[_>>3]=+n[t>>2];lXa(T,V,U,Z);p[W+144>>3]=+p[Y>>3];t=W+152|0;p[t>>3]=+p[R>>3];v=W+160|0;p[v>>3]=+p[S>>3];q=W+168|0;p[q>>3]=+p[D>>3];r=W+176|0;p[r>>3]=+p[E>>3];s=W+184|0;p[s>>3]=+p[F>>3];f[W+192>>2]=f[B>>2];f[W+196>>2]=f[x>>2];f[W+200>>2]=f[w>>2];f[W+204>>2]=f[G>>2];f[W+208>>2]=f[I>>2];f[W+212>>2]=f[C>>2];p[U>>3]=+n[N>>2];p[_>>3]=+n[M>>2];lXa(T,V,U,Z);p[W+216>>3]=+p[Y>>3];M=W+224|0;p[M>>3]=+p[R>>3];N=W+232|0;p[N>>3]=+p[S>>3];y=W+240|0;p[y>>3]=+p[D>>3];z=W+248|0;p[z>>3]=+p[E>>3];A=W+256|0;p[A>>3]=+p[F>>3];f[W+264>>2]=f[B>>2];f[W+268>>2]=f[x>>2];f[W+272>>2]=f[w>>2];f[W+276>>2]=f[G>>2];f[W+280>>2]=f[I>>2];f[W+284>>2]=f[C>>2];p[U>>3]=+n[aa>>2];p[_>>3]=+n[$>>2];lXa(T,V,U,Z);J=+p[Y>>3];p[W+288>>3]=J;K=+p[R>>3];R=W+296|0;p[R>>3]=K;L=+p[S>>3];S=W+304|0;p[S>>3]=L;j=+p[D>>3];p[W+312>>3]=j;i=+p[E>>3];p[W+320>>3]=i;h=+p[F>>3];p[W+328>>3]=h;B=f[B>>2]|0;f[W+336>>2]=B;x=f[x>>2]|0;f[W+340>>2]=x;w=f[w>>2]|0;f[W+344>>2]=w;f[W+348>>2]=f[G>>2];f[W+352>>2]=f[I>>2];f[W+356>>2]=f[C>>2];f[g>>2]=B;f[g+4>>2]=x;f[g+8>>2]=w;J=j+J;K=i+K;L=h+L;w=H+8|0;x=H+16|0;B=U+8|0;C=U+16|0;I=U+24|0;p[H>>3]=+p[W>>3]+ +p[Q>>3];p[w>>3]=+p[b>>3]+ +p[P>>3];p[x>>3]=+p[c>>3]+ +p[O>>3];YLa(U,W,H,W+72|0);h=+p[U>>3];p[T>>3]=h;i=+p[B>>3];O=T+8|0;p[O>>3]=i;j=+p[C>>3];P=T+16|0;p[P>>3]=j;k=+p[I>>3];Q=T+24|0;p[Q>>3]=k;if(k+(J*h+(K*i+L*j))<0.0){h=-h;i=-i;j=-j;k=-(+p[W>>3]*h+(+p[b>>3]*i+ +p[c>>3]*j));p[T>>3]=h;p[O>>3]=i;p[P>>3]=j;p[Q>>3]=k}b=W+72|0;p[H>>3]=+p[b>>3]+ +p[e>>3];p[w>>3]=+p[m>>3]+ +p[l>>3];p[x>>3]=+p[o>>3]+ +p[d>>3];YLa(U,b,H,W+144|0);h=+p[U>>3];D=T+32|0;p[D>>3]=h;i=+p[B>>3];E=T+40|0;p[E>>3]=i;j=+p[C>>3];F=T+48|0;p[F>>3]=j;k=+p[I>>3];G=T+56|0;p[G>>3]=k;if(k+(J*h+(K*i+L*j))<0.0){h=-h;i=-i;j=-j;k=-(+p[b>>3]*h+(+p[m>>3]*i+ +p[o>>3]*j));p[D>>3]=h;p[E>>3]=i;p[F>>3]=j;p[G>>3]=k}b=W+144|0;p[H>>3]=+p[b>>3]+ +p[q>>3];p[w>>3]=+p[t>>3]+ +p[r>>3];p[x>>3]=+p[v>>3]+ +p[s>>3];YLa(U,b,H,W+216|0);h=+p[U>>3];l=T+64|0;p[l>>3]=h;i=+p[B>>3];m=T+72|0;p[m>>3]=i;j=+p[C>>3];o=T+80|0;p[o>>3]=j;k=+p[I>>3];q=T+88|0;p[q>>3]=k;if(k+(J*h+(K*i+L*j))<0.0){h=-h;i=-i;j=-j;k=-(+p[b>>3]*h+(+p[t>>3]*i+ +p[v>>3]*j));p[l>>3]=h;p[m>>3]=i;p[o>>3]=j;p[q>>3]=k}g=W+216|0;p[H>>3]=+p[g>>3]+ +p[y>>3];p[w>>3]=+p[M>>3]+ +p[z>>3];p[x>>3]=+p[N>>3]+ +p[A>>3];YLa(U,g,H,W);k=+p[U>>3];e=T+96|0;p[e>>3]=k;j=+p[B>>3];d=T+104|0;p[d>>3]=j;i=+p[C>>3];c=T+112|0;p[c>>3]=i;h=+p[I>>3];b=T+120|0;p[b>>3]=h;if(h+(J*k+(K*j+L*i))<0.0){k=-k;j=-j;i=-i;h=-(+p[g>>3]*k+(+p[M>>3]*j+ +p[N>>3]*i));p[e>>3]=k;p[d>>3]=j;p[c>>3]=i;p[b>>3]=h}ja=+p[V+8>>3];ka=+p[V+16>>3];la=+p[V+24>>3];ma=-(ja*+p[W+288>>3]+(ka*+p[R>>3]+la*+p[S>>3]));p[T+128>>3]=ja;p[T+136>>3]=ka;p[T+144>>3]=la;p[T+152>>3]=ma;p[U>>3]=+p[T>>3];B=U+8|0;p[B>>3]=+p[O>>3];C=U+16|0;p[C>>3]=+p[P>>3];H=U+24|0;p[H>>3]=+p[Q>>3];I=U+32|0;p[I>>3]=+p[D>>3];M=U+40|0;p[M>>3]=+p[E>>3];N=U+48|0;p[N>>3]=+p[F>>3];O=U+56|0;p[O>>3]=+p[G>>3];P=U+64|0;p[P>>3]=+p[l>>3];Q=U+72|0;p[Q>>3]=+p[m>>3];R=U+80|0;p[R>>3]=+p[o>>3];S=U+88|0;p[S>>3]=+p[q>>3];T=U+96|0;p[T>>3]=k;V=U+104|0;p[V>>3]=j;W=U+112|0;p[W>>3]=i;Y=U+120|0;p[Y>>3]=h;Z=U+128|0;p[Z>>3]=ja;_=U+136|0;p[_>>3]=ka;$=U+144|0;p[$>>3]=la;aa=U+152|0;p[aa>>3]=ma;RXa(U);ma=+p[B>>3];la=+p[C>>3];ka=-+p[H>>3];ja=+p[I>>3];ia=+p[M>>3];ha=+p[N>>3];ga=-+p[O>>3];fa=+p[P>>3];ea=+p[Q>>3];da=+p[R>>3];ca=-+p[S>>3];ba=+p[T>>3];h=+p[V>>3];i=+p[W>>3];j=-+p[Y>>3];k=+p[Z>>3];J=+p[_>>3];K=+p[$>>3];L=-+p[aa>>3];n[a>>2]=+p[U>>3];n[a+4>>2]=ma;n[a+8>>2]=la;n[a+12>>2]=ka;n[a+16>>2]=ja;n[a+20>>2]=ia;n[a+24>>2]=ha;n[a+28>>2]=ga;n[a+32>>2]=fa;n[a+36>>2]=ea;n[a+40>>2]=da;n[a+44>>2]=ca;n[a+48>>2]=ba;n[a+52>>2]=h;n[a+56>>2]=i;n[a+60>>2]=j;n[a+64>>2]=k;n[a+68>>2]=J;n[a+72>>2]=K;n[a+76>>2]=L;SXa(a);u=X;return}function RXa(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;s=a+24|0;p[s>>3]=-+p[s>>3];e=+p[a>>3];f=+K(+e);p[a+160>>3]=f;s=a+8|0;f=+p[s>>3];g=+K(+f);p[a+168>>3]=g;r=a+16|0;g=+p[r>>3];d=+K(+g);p[a+176>>3]=d;p[a+280>>3]=e>=0.0?1.0:-1.0;p[a+288>>3]=f>=0.0?1.0:-1.0;p[a+296>>3]=g>=0.0?1.0:-1.0;q=a+56|0;p[q>>3]=-+p[q>>3];q=a+32|0;g=+p[q>>3];f=+K(+g);p[a+184>>3]=f;o=a+40|0;f=+p[o>>3];e=+K(+f);p[a+192>>3]=e;n=a+48|0;e=+p[n>>3];d=+K(+e);p[a+200>>3]=d;p[a+304>>3]=g>=0.0?1.0:-1.0;p[a+312>>3]=f>=0.0?1.0:-1.0;p[a+320>>3]=e>=0.0?1.0:-1.0;m=a+88|0;p[m>>3]=-+p[m>>3];m=a+64|0;e=+p[m>>3];f=+K(+e);p[a+208>>3]=f;l=a+72|0;f=+p[l>>3];g=+K(+f);p[a+216>>3]=g;k=a+80|0;g=+p[k>>3];d=+K(+g);p[a+224>>3]=d;p[a+328>>3]=e>=0.0?1.0:-1.0;p[a+336>>3]=f>=0.0?1.0:-1.0;p[a+344>>3]=g>=0.0?1.0:-1.0;t=a+120|0;p[t>>3]=-+p[t>>3];g=+p[a+96>>3];f=+K(+g);p[a+232>>3]=f;f=+p[a+104>>3];e=+K(+f);p[a+240>>3]=e;e=+p[a+112>>3];d=+K(+e);p[a+248>>3]=d;p[a+352>>3]=g>=0.0?1.0:-1.0;p[a+360>>3]=f>=0.0?1.0:-1.0;p[a+368>>3]=e>=0.0?1.0:-1.0;t=a+152|0;p[t>>3]=-+p[t>>3];d=+p[a+128>>3];c=+K(+d);p[a+256>>3]=c;c=+p[a+136>>3];b=+K(+c);p[a+264>>3]=b;b=+p[a+144>>3];j=+K(+b);p[a+272>>3]=j;p[a+376>>3]=d>=0.0?1.0:-1.0;p[a+384>>3]=c>=0.0?1.0:-1.0;p[a+392>>3]=b>=0.0?1.0:-1.0;j=+p[a>>3];i=+p[s>>3];h=+p[r>>3];h=j*j+(i*i+h*h);p[a+400>>3]=h==0.0?0.0:1.0/h;h=+p[q>>3];i=+p[o>>3];j=+p[n>>3];j=h*h+(i*i+j*j);p[a+408>>3]=j==0.0?0.0:1.0/j;j=+p[m>>3];i=+p[l>>3];h=+p[k>>3];h=j*j+(i*i+h*h);p[a+416>>3]=h==0.0?0.0:1.0/h;e=g*g+(f*f+e*e);p[a+424>>3]=e==0.0?0.0:1.0/e;b=d*d+(c*c+b*b);p[a+432>>3]=b==0.0?0.0:1.0/b;return}function SXa(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;s=a+12|0;n[s>>2]=-+n[s>>2];e=+n[a>>2];f=+K(+e);n[a+80>>2]=f;s=a+4|0;f=+n[s>>2];g=+K(+f);n[a+84>>2]=g;r=a+8|0;g=+n[r>>2];d=+K(+g);n[a+88>>2]=d;n[a+140>>2]=e>=0.0?1.0:-1.0;n[a+144>>2]=f>=0.0?1.0:-1.0;n[a+148>>2]=g>=0.0?1.0:-1.0;q=a+28|0;n[q>>2]=-+n[q>>2];q=a+16|0;g=+n[q>>2];f=+K(+g);n[a+92>>2]=f;p=a+20|0;f=+n[p>>2];e=+K(+f);n[a+96>>2]=e;o=a+24|0;e=+n[o>>2];d=+K(+e);n[a+100>>2]=d;n[a+152>>2]=g>=0.0?1.0:-1.0;n[a+156>>2]=f>=0.0?1.0:-1.0;n[a+160>>2]=e>=0.0?1.0:-1.0;m=a+44|0;n[m>>2]=-+n[m>>2];m=a+32|0;e=+n[m>>2];f=+K(+e);n[a+104>>2]=f;l=a+36|0;f=+n[l>>2];g=+K(+f);n[a+108>>2]=g;k=a+40|0;g=+n[k>>2];d=+K(+g);n[a+112>>2]=d;n[a+164>>2]=e>=0.0?1.0:-1.0;n[a+168>>2]=f>=0.0?1.0:-1.0;n[a+172>>2]=g>=0.0?1.0:-1.0;t=a+60|0;n[t>>2]=-+n[t>>2];g=+n[a+48>>2];f=+K(+g);n[a+116>>2]=f;f=+n[a+52>>2];e=+K(+f);n[a+120>>2]=e;e=+n[a+56>>2];d=+K(+e);n[a+124>>2]=d;n[a+176>>2]=g>=0.0?1.0:-1.0;n[a+180>>2]=f>=0.0?1.0:-1.0;n[a+184>>2]=e>=0.0?1.0:-1.0;t=a+76|0;n[t>>2]=-+n[t>>2];d=+n[a+64>>2];c=+K(+d);n[a+128>>2]=c;c=+n[a+68>>2];b=+K(+c);n[a+132>>2]=b;b=+n[a+72>>2];j=+K(+b);n[a+136>>2]=j;n[a+188>>2]=d>=0.0?1.0:-1.0;n[a+192>>2]=c>=0.0?1.0:-1.0;n[a+196>>2]=b>=0.0?1.0:-1.0;j=+n[a>>2];i=+n[s>>2];h=+n[r>>2];h=j*j+(i*i+h*h);n[a+200>>2]=h==0.0?0.0:1.0/h;h=+n[q>>2];i=+n[p>>2];j=+n[o>>2];j=h*h+(i*i+j*j);n[a+204>>2]=j==0.0?0.0:1.0/j;j=+n[m>>2];i=+n[l>>2];h=+n[k>>2];h=j*j+(i*i+h*h);n[a+208>>2]=h==0.0?0.0:1.0/h;e=g*g+(f*f+e*e);n[a+212>>2]=e==0.0?0.0:1.0/e;b=d*d+(c*c+b*b);n[a+216>>2]=b==0.0?0.0:1.0/b;return}function TXa(a,b){a=a|0;b=b|0;b=(vYa(oxa(a)|0,b)|0)+24|0;b=f[b>>2]|0;return Ng[f[(f[b>>2]|0)+8>>2]&511](b)|0}function UXa(a,b){a=a|0;b=b|0;return vYa(oxa(a)|0,b)|0}function VXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0;t=u;u=u+32|0;q=t+16|0;r=t;l=(vYa(oxa(b)|0,c)|0)+24|0;l=f[l>>2]|0;e=f[l+4>>2]|0;l=(f[l+8>>2]|0)-e|0;d=(l|0)/88|0;f[r>>2]=0;s=r+4|0;f[s>>2]=0;f[r+8>>2]=0;if(!l){b=0;g=0;c=0;d=0}else{if(d>>>0>134217727)fob(r);i=Wpb(d<<5)|0;f[r>>2]=i;g=i+(d<<5)|0;f[r+8>>2]=g;f[s>>2]=g;b=i;c=0;do{p[i+(c<<5)>>3]=+p[e+(c*88|0)>>3];p[i+(c<<5)+8>>3]=+p[e+(c*88|0)+8>>3];p[i+(c<<5)+16>>3]=+p[e+(c*88|0)+16>>3];p[i+(c<<5)+24>>3]=-+p[e+(c*88|0)+24>>3];c=c+1|0}while(c>>>0<d>>>0);c=i;d=i}f[a>>2]=0;k=a+4|0;f[k>>2]=0;f[a+8>>2]=0;e=g-b|0;i=e>>5;l=a+8|0;do if(!i){o=0;m=0}else if(i>>>0>268435455)ud();else{m=Wpb(e>>1)|0;j=m;o=m+(i<<4)|0;f[a>>2]=j;f[k>>2]=j;f[l>>2]=o;break}while(0);if((b|0)!=(g|0)){e=q+4|0;i=q+8|0;j=q+12|0;d=m;c=o;while(1){h=+p[b>>3];n[q>>2]=h;n[e>>2]=+p[b+8>>3];n[i>>2]=+p[b+16>>3];n[j>>2]=+p[b+24>>3];if(d>>>0<c>>>0){n[d>>2]=h;f[d+4>>2]=f[e>>2];f[d+8>>2]=f[i>>2];f[d+12>>2]=f[j>>2];f[k>>2]=d+16}else WXa(a,q);b=b+32|0;if((b|0)==(g|0))break;d=f[k>>2]|0;c=f[l>>2]|0}c=f[r>>2]|0;d=c}if(!d){u=t;return}b=f[s>>2]|0;if((b|0)!=(d|0))f[s>>2]=b+(~((b+-32-d|0)>>>5)<<5);Zpb(c);u=t;return}function WXa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=d-m>>4;c=h+1|0;j=m;if(c>>>0>268435455)fob(a);k=a+8|0;i=(f[k>>2]|0)-m|0;e=i>>3;e=i>>4>>>0<134217727?(e>>>0<c>>>0?c:e):268435455;do if(!e)g=0;else if(e>>>0>268435455)ud();else{g=Wpb(e<<4)|0;break}while(0);c=g+(h<<4)|0;i=g+(e<<4)|0;f[c>>2]=f[b>>2];f[g+(h<<4)+4>>2]=f[b+4>>2];f[g+(h<<4)+8>>2]=f[b+8>>2];f[g+(h<<4)+12>>2]=f[b+12>>2];g=c+16|0;if((d|0)!=(j|0)){b=d+-16-m|0;e=c;do{h=e;e=e+-16|0;n=d;d=d+-16|0;f[e>>2]=f[d>>2];f[h+-12>>2]=f[n+-12>>2];f[h+-8>>2]=f[n+-8>>2];f[h+-4>>2]=f[n+-4>>2]}while((d|0)!=(j|0));c=c+(~(b>>>4)<<4)|0}f[a>>2]=c;f[l>>2]=g;f[k>>2]=i;if(!m)return;Zpb(m);return}function XXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;c=(vYa(oxa(b)|0,c)|0)+24|0;c=f[c>>2]|0;e=+p[c+40>>3];d=+p[c+48>>3];n[a>>2]=+p[c+32>>3];n[a+4>>2]=e;n[a+8>>2]=d;return}function YXa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0;c=(vYa(oxa(b)|0,c)|0)+24|0;c=f[c>>2]|0;g=+p[c+16>>3];e=+p[c+24>>3];d=+p[c+32>>3];n[a>>2]=+p[c+8>>3];n[a+4>>2]=g;n[a+8>>2]=e;n[a+12>>2]=d;n[a+16>>2]=-1.0;return}function ZXa(a,b,c){a=a|0;b=b|0;c=c|0;c=(vYa(oxa(b)|0,c)|0)+24|0;c=f[c>>2]|0;n[a>>2]=+p[c+448>>3];n[a+4>>2]=+p[c+456>>3];n[a+8>>2]=+p[c+464>>3];n[a+12>>2]=+p[c+472>>3];n[a+16>>2]=+p[c+480>>3];n[a+20>>2]=+p[c+488>>3];return}function _Xa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0;c=(vYa(oxa(b)|0,c)|0)+24|0;c=f[c>>2]|0;v=+p[c+40>>3];u=+p[c+48>>3];t=+p[c+56>>3];s=+p[c+64>>3];r=+p[c+72>>3];q=+p[c+80>>3];o=+p[c+88>>3];m=+p[c+96>>3];l=+p[c+104>>3];k=+p[c+112>>3];j=+p[c+120>>3];i=+p[c+128>>3];h=+p[c+136>>3];g=+p[c+144>>3];e=+p[c+152>>3];d=+p[c+160>>3];y=+p[c+16>>3];x=+p[c+24>>3];w=-+p[c+32>>3];n[a>>2]=+p[c+8>>3];n[a+4>>2]=y;n[a+8>>2]=x;n[a+12>>2]=w;n[a+16>>2]=v;n[a+20>>2]=u;n[a+24>>2]=t;n[a+28>>2]=-s;n[a+32>>2]=r;n[a+36>>2]=q;n[a+40>>2]=o;n[a+44>>2]=-m;n[a+48>>2]=l;n[a+52>>2]=k;n[a+56>>2]=j;n[a+60>>2]=-i;n[a+64>>2]=h;n[a+68>>2]=g;n[a+72>>2]=e;n[a+76>>2]=-d;return}function $Xa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+64|0;l=o+40|0;j=o+24|0;k=o+28|0;i=o;f[l>>2]=0;m=l+4|0;f[m>>2]=0;f[l+8>>2]=0;if(c|0){SKa(l,c);h=f[l>>2]|0;g=0;do{f[h+(g*44|0)>>2]=f[d+(g<<4)>>2];f[h+(g*44|0)+4>>2]=f[d+(g<<4)+4>>2];f[h+(g*44|0)+8>>2]=f[d+(g<<4)+8>>2];f[h+(g*44|0)+12>>2]=f[d+(g<<4)+12>>2];g=g+1|0}while((g|0)!=(c|0))}TKa(l);h=Wpb(56)|0;UKa(k,l);p[i>>3]=+n[e>>2];p[i+8>>3]=+n[e+4>>2];p[i+16>>3]=+n[e+8>>2];xZa(h,k,i);f[j>>2]=h;h=aYa(a,b,j)|0;g=f[j>>2]|0;f[j>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);b=f[k>>2]|0;if(b|0){g=k+4|0;a=f[g>>2]|0;if((a|0)!=(b|0))f[g>>2]=a+(~(((a+-88-b|0)>>>0)/88|0)*88|0);Zpb(b)}g=f[l>>2]|0;if(!g){u=o;return h|0}a=f[m>>2]|0;if((a|0)!=(g|0))f[m>>2]=a+(~(((a+-44-g|0)>>>0)/44|0)*44|0);Zpb(g);u=o;return h|0}function aYa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+64|0;m=r+59|0;t=r+56|0;s=r+52|0;l=r;q=r+48|0;o=oxa(c)|0;XWa(t,c,(b[a+5>>0]|0)!=0,(b[a+6>>0]|0)!=0,(b[a+7>>0]|0)!=0);n=Wpb(80)|0;v=f[d>>2]|0;f[d>>2]=0;f[s>>2]=v;DYa(n,a,c,t,s);a=f[s>>2]|0;f[s>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);a=l+24|0;if(zka(c,l)|0){k=+p[l>>3];g=+p[a>>3];h=+p[l+8>>3];i=+p[l+32>>3];j=+p[l+16>>3];e=+p[l+40>>3]}else{f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;f[l+20>>2]=0;p[a>>3]=1.0;p[l+32>>3]=1.0;p[l+40>>3]=1.0;k=0.0;g=1.0;h=0.0;i=1.0;j=0.0;e=1.0}t=Wpb(520)|0;b[m>>0]=0;N2a(t,m,f[n+16>>2]|0,0,n+64|0);f[t>>2]=32236;f[t+492>>2]=n;p[t+496>>3]=g-k;p[t+504>>3]=i-h;p[t+512>>3]=e-j;v=n+28|0;a=f[v>>2]|0;f[v>>2]=t;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);f[q>>2]=n;a=wYa(o,q)|0;d=f[q>>2]|0;f[q>>2]=0;if(!d){u=r;return a|0}CYa(d);Zpb(d);u=r;return a|0}function bYa(a){a=a|0;K2a(a);Zpb(a);return}function cYa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[a+496>>3];d=+p[a+504>>3];c=+p[a+512>>3];C2a(b,0.0,e*e+(d*d+c*c));return 1}function dYa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a+492>>2]|0;g=d+20|0;e=(b[d+1>>0]|0)!=0;if(e)a=(b[d+2>>0]|0)==0;else a=0;if(YWa(g,a,0,c)|0){c=1;return c|0}if(e)a=(b[d+3>>0]|0)==0;else a=0;if(ZWa(g,a,0,c)|0){c=1;return c|0}if(e)a=(b[d+4>>0]|0)==0;else a=0;c=_Wa(g,a,0,c)|0;return c|0}function eYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0;d=u;u=u+32|0;c=d;a=f[(f[a+492>>2]|0)+24>>2]|0;if((Pg[f[(f[a>>2]|0)+24>>2]&255](a,b)|0)==1){e=-1.0;u=d;return +e}j=+p[b>>3];i=+p[b+8>>3];h=(+p[b+32>>3]-i)*.5;g=+p[b+16>>3];e=(+p[b+40>>3]-g)*.5;p[c>>3]=j+(+p[b+24>>3]-j)*.5;p[c+8>>3]=i+h;p[c+16>>3]=g+e;e=+Lg[f[(f[a>>2]|0)+16>>2]&31](a,c);u=d;return +e}function fYa(a,b){a=a|0;b=b|0;var c=0.0;a=f[(f[a+492>>2]|0)+24>>2]|0;if((Pg[f[(f[a>>2]|0)+28>>2]&255](a,b)|0)==1){c=-1.0;return +c}c=+Lg[f[(f[a>>2]|0)+16>>2]&31](a,b);return +c}function gYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0;d=u;u=u+48|0;e=d+40|0;h=d;g=Wpb(48)|0;k=+n[c+4>>2];j=+n[c+8>>2];i=+n[c+12>>2];p[h>>3]=+n[c>>2];p[h+8>>3]=k;p[h+16>>3]=j;p[h+24>>3]=i;p[h+32>>3]=-1.0;yZa(g,h);f[e>>2]=g;a=aYa(a,b,e)|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){u=d;return a|0}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=d;return a|0}function hYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;e=u;u=u+720|0;F=e+492|0;g=e+488|0;i=e+440|0;h=e;f[F>>2]=f[d>>2];Y=F+4|0;f[Y>>2]=f[d+4>>2];X=F+8|0;f[X>>2]=f[d+8>>2];W=F+12|0;f[W>>2]=f[d+12>>2];V=F+16|0;f[V>>2]=f[d+16>>2];U=F+20|0;f[U>>2]=f[d+20>>2];T=F+24|0;f[T>>2]=f[d+24>>2];S=F+28|0;f[S>>2]=f[d+28>>2];R=F+32|0;f[R>>2]=f[d+32>>2];Q=F+36|0;f[Q>>2]=f[d+36>>2];P=F+40|0;f[P>>2]=f[d+40>>2];O=F+44|0;f[O>>2]=f[d+44>>2];N=F+48|0;f[N>>2]=f[d+48>>2];M=F+52|0;f[M>>2]=f[d+52>>2];L=F+56|0;f[L>>2]=f[d+56>>2];K=F+60|0;f[K>>2]=f[d+60>>2];J=F+64|0;f[J>>2]=f[d+64>>2];I=F+68|0;f[I>>2]=f[d+68>>2];H=F+72|0;f[H>>2]=f[d+72>>2];G=F+76|0;f[G>>2]=f[d+76>>2];SXa(F);d=Wpb(656)|0;p[i>>3]=+n[c>>2];p[i+8>>3]=+n[c+4>>2];p[i+16>>3]=+n[c+8>>2];p[i+24>>3]=+n[c+12>>2];p[i+32>>3]=+n[c+16>>2];p[i+40>>3]=+n[c+20>>2];E=+n[Y>>2];D=+n[X>>2];C=-+n[W>>2];B=+n[V>>2];A=+n[U>>2];z=+n[T>>2];y=-+n[S>>2];x=+n[R>>2];w=+n[Q>>2];v=+n[P>>2];t=-+n[O>>2];s=+n[N>>2];r=+n[M>>2];q=+n[L>>2];o=-+n[K>>2];m=+n[J>>2];l=+n[I>>2];k=+n[H>>2];j=-+n[G>>2];p[h>>3]=+n[F>>2];p[h+8>>3]=E;p[h+16>>3]=D;p[h+24>>3]=C;p[h+32>>3]=B;p[h+40>>3]=A;p[h+48>>3]=z;p[h+56>>3]=y;p[h+64>>3]=x;p[h+72>>3]=w;p[h+80>>3]=v;p[h+88>>3]=t;p[h+96>>3]=s;p[h+104>>3]=r;p[h+112>>3]=q;p[h+120>>3]=o;p[h+128>>3]=m;p[h+136>>3]=l;p[h+144>>3]=k;p[h+152>>3]=j;RXa(h);zZa(d,i,h);f[g>>2]=d;a=aYa(a,b,g)|0;b=f[g>>2]|0;f[g>>2]=0;if(!b){u=e;return a|0}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=e;return a|0}function iYa(a,b){a=a|0;b=b|0;return (vYa(oxa(a)|0,b)|0)!=0|0}function jYa(a,b){a=a|0;b=b|0;b=(vYa(oxa(a)|0,b)|0)+28|0;O2a(f[b>>2]|0);return}function kYa(a,b){a=a|0;b=b|0;AYa(oxa(a)|0,b);return}function lYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;d=vYa(oxa(a)|0,b)|0;if(!(mYa(a,z3a(f[d+28>>2]|0)|0,d,c,e)|0)){u=e;return}b=c+116|0;a=d+56|0;c=f[a>>2]|0;if((c|0)==(f[d+60>>2]|0)){xB(d+52|0,b);u=e;return}else{g=b;b=f[g+4>>2]|0;d=c;f[d>>2]=f[g>>2];f[d+4>>2]=b;f[a>>2]=(f[a>>2]|0)+8;u=e;return}}function mYa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;h=t;s=d+32|0;q=e+116|0;if(XVa(s,q)|0){s=0;u=t;return s|0}if(f[e+196>>2]&24|0){s=0;u=t;return s|0}p=(b[d>>0]|0)==0;PWa(h,a,c,e,0);a=BZa(d,e,h,g,0,0,0)|0;if(p)if(!(a&2))a=0;else r=6;else if((a|0)==2)r=6;else a=0;a:do if((r|0)==6){k=f[q>>2]|0;e=f[e+120>>2]|0;p=e+-1640531527+(k<<6)+(k>>>2)^k;l=d+36|0;m=f[l>>2]|0;o=(m|0)==0;b:do if(o)a=0;else{h=m+-1|0;g=(h&m|0)==0;if(g)a=p&h;else if(p>>>0<m>>>0)a=p;else a=(p>>>0)%(m>>>0)|0;c=f[(f[s>>2]|0)+(a<<2)>>2]|0;if(c){c=f[c>>2]|0;if(c){if(g)while(1){g=f[c+4>>2]|0;if(!((g|0)==(p|0)|(g&h|0)==(a|0)))break b;if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(e|0)){a=1;break a}c=f[c>>2]|0;if(!c)break b}do{g=f[c+4>>2]|0;if((g|0)!=(p|0)){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)!=(a|0))break b}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(e|0)){a=1;break a}c=f[c>>2]|0}while((c|0)!=0)}}}while(0);e=Wpb(16)|0;k=q;q=f[k+4>>2]|0;h=e+8|0;f[h>>2]=f[k>>2];f[h+4>>2]=q;f[e+4>>2]=p;f[e>>2]=0;h=d+44|0;i=+(((f[h>>2]|0)+1|0)>>>0);j=+n[d+48>>2];do if(o|j*+(m>>>0)<i){a=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;c=~~+W(+(i/j))>>>0;Jfa(s,a>>>0<c>>>0?c:a);a=f[l>>2]|0;c=a+-1|0;if(!(c&a)){g=a;a=c&p;break}if(p>>>0<a>>>0){g=a;a=p}else{g=a;a=(p>>>0)%(a>>>0)|0}}else g=m;while(0);c=(f[s>>2]|0)+(a<<2)|0;a=f[c>>2]|0;if(!a){a=d+40|0;f[e>>2]=f[a>>2];f[a>>2]=e;f[c>>2]=a;a=f[e>>2]|0;if(a|0){a=f[a+4>>2]|0;c=g+-1|0;if(!(c&g))a=a&c;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;a=(f[s>>2]|0)+(a<<2)|0;r=38}}else{f[e>>2]=f[a>>2];r=38}if((r|0)==38)f[a>>2]=e;f[h>>2]=(f[h>>2]|0)+1;a=1}while(0);s=a;u=t;return s|0}function nYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+64|0;w=A+32|0;y=A+48|0;q=A+44|0;r=A+8|0;s=A;t=A+40|0;v=vYa(oxa(a)|0,b)|0;n=f[v+28>>2]|0;o=z3a(n)|0;g=f[v+44>>2]|0;f[y>>2]=0;z=y+4|0;f[z>>2]=0;f[y+8>>2]=0;x=d+4|0;b=f[x>>2]|0;h=f[d>>2]|0;i=h;e=b;do if(b-h>>3>>>0<c>>>0){i=d+8|0;l=v+24|0;m=y+8|0;b=(g|0)!=0;while(1){e=A3a(n,w,q)|0;if(!e){g=13;break}if(mYa(a,o,v,e,r)|0){b=e+116|0;e=f[x>>2]|0;if((e|0)==(f[i>>2]|0))xB(d,b);else{g=b;h=f[g+4>>2]|0;k=e;f[k>>2]=f[g>>2];f[k+4>>2]=h;f[x>>2]=(f[x>>2]|0)+8}b=f[l>>2]|0;j=+Lg[f[(f[b>>2]|0)+16>>2]&31](b,r);p[s>>3]=j;b=f[z>>2]|0;e=b-(f[y>>2]|0)>>4;f[t>>2]=e;if((f[m>>2]|0)>>>0>b>>>0){p[b>>3]=j;f[b+8>>2]=e;f[z>>2]=b+16}else oYa(y,s,t);b=1}u3a(n,b);k=f[x>>2]|0;h=f[d>>2]|0;if(k-h>>3>>>0>=c>>>0){g=14;break}}if((g|0)==13){h=f[d>>2]|0;b=f[x>>2]|0;i=h;e=b;break}else if((g|0)==14){i=h;e=k;b=k;break}}while(0);a:do if((i|0)==(e|0)){i=v+52|0;if(b-h>>3>>>0<c>>>0){g=v+56|0;h=d+8|0;b=f[g>>2]|0;do{if((f[i>>2]|0)==(b|0))break a;b=b+-8|0;if((e|0)==(f[h>>2]|0))xB(d,b);else{t=b;v=f[t+4>>2]|0;w=e;f[w>>2]=f[t>>2];f[w+4>>2]=v;f[x>>2]=(f[x>>2]|0)+8}b=(f[g>>2]|0)+-8|0;f[g>>2]=b;e=f[x>>2]|0}while(e-(f[d>>2]|0)>>3>>>0<c>>>0)}}else{pYa(f[y>>2]|0,f[z>>2]|0,w);g=f[x>>2]|0;b=f[d>>2]|0;if((g|0)!=(b|0)){k=0;i=f[y>>2]|0;e=b;h=g;while(1){g=f[i+(k<<4)+8>>2]|0;b=f[i+(g<<4)+8>>2]|0;if((g|0)==(b|0)){b=i;g=h}else{while(1){w=e+(g<<3)|0;e=e+(b<<3)|0;g=w;c=f[g>>2]|0;g=f[g+4>>2]|0;v=e;b=f[v+4>>2]|0;f[w>>2]=f[v>>2];f[w+4>>2]=b;f[e>>2]=c;f[e+4>>2]=g;e=f[y>>2]|0;g=e+(k<<4)+8|0;c=f[g>>2]|0;w=e+(k<<4)|0;b=e+(c<<4)|0;j=+p[w>>3];p[w>>3]=+p[b>>3];p[b>>3]=j;b=e+(c<<4)+8|0;f[g>>2]=f[b>>2];f[b>>2]=c;g=f[g>>2]|0;b=f[e+(g<<4)+8>>2]|0;if((g|0)==(b|0))break;e=f[d>>2]|0}b=e;e=f[d>>2]|0;g=f[x>>2]|0}k=k+1|0;if(k>>>0>=g-e>>3>>>0)break;else{i=b;h=g}}}}while(0);b=f[y>>2]|0;if(!b){u=A;return}e=f[z>>2]|0;if((e|0)!=(b|0))f[z>>2]=e+(~((e+-16-b|0)>>>4)<<4);Zpb(b);u=A;return}function oYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>4;d=m+1|0;if(d>>>0>268435455)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>3;d=n>>4>>>0<134217727?(e>>>0<d>>>0?d:e):268435455;do if(!d){h=0;j=0}else if(d>>>0>268435455)ud();else{j=Wpb(d<<4)|0;h=j;break}while(0);e=h+(m<<4)|0;p[e>>3]=+p[b>>3];f[h+(m<<4)+8>>2]=f[c>>2];if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+16;f[g>>2]=h+(d<<4);if(!k)return;Zpb(k);return}function pYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0.0,o=0,q=0,r=0,s=0,t=0,u=0;a:while(1){q=b;r=b+-16|0;s=b+-32|0;t=b+-8|0;while(1){b:while(1){o=a;d=q-o|0;e=d>>4;switch(e|0){case 2:{u=5;break a}case 3:{u=10;break a}case 4:{u=11;break a}case 5:{u=12;break a}case 1:case 0:{u=90;break a}default:{}}if((d|0)<112){u=14;break a}g=(e|0)/2|0;m=a+(g<<4)|0;if((d|0)>15984){d=(e|0)/4|0;d=sYa(a,a+(d<<4)|0,m,m+(d<<4)|0,r,c)|0}else d=qYa(a,m,r,c)|0;n=+p[a>>3];i=+p[m>>3];if(n<i){e=r;break}if(!(i<n))if((f[a+8>>2]|0)>>>0<(f[a+(g<<4)+8>>2]|0)>>>0){e=r;break}if((a|0)!=(s|0)){k=a+(g<<4)+8|0;g=r;e=s;while(1){h=+p[e>>3];if(h<i){u=60;break b}if(!(i<h)){j=g+-8|0;g=f[j>>2]|0;if(g>>>0<(f[k>>2]|0)>>>0){u=64;break b}}g=e+-16|0;if((a|0)==(g|0))break;else{l=e;e=g;g=l}}}d=a+16|0;i=+p[r>>3];do if(!(n<i)){if(!(i<n))if((f[a+8>>2]|0)>>>0<(f[t>>2]|0)>>>0)break;if((d|0)==(r|0)){u=90;break a}j=a+8|0;while(1){h=+p[d>>3];if(n<h){u=41;break}if(!(h<n)){g=d+8|0;e=f[g>>2]|0;if((f[j>>2]|0)>>>0<e>>>0)break}d=d+16|0;if((d|0)==(r|0)){u=90;break a}}if((u|0)==41){u=0;e=d+8|0;g=e;e=f[e>>2]|0}p[d>>3]=i;p[r>>3]=h;f[g>>2]=f[t>>2];f[t>>2]=e;d=d+16|0}while(0);if((d|0)==(r|0)){u=90;break a}k=a+8|0;e=r;while(1){n=+p[a>>3];h=+p[d>>3];if(n<h){j=d;g=d}else{do{if(!(h<n))if((f[k>>2]|0)>>>0<(f[d+8>>2]|0)>>>0)break;d=d+16|0;h=+p[d>>3]}while(!(n<h));j=d;g=d}d=e;while(1){e=d+-16|0;i=+p[e>>3];if(n<i){d=e;continue}if(i<n)break;if((f[k>>2]|0)>>>0<(f[d+-8>>2]|0)>>>0)d=e;else break}if(j>>>0>=e>>>0){a=j;continue b}p[g>>3]=i;p[e>>3]=h;m=j+8|0;d=d+-8|0;o=f[m>>2]|0;f[m>>2]=f[d>>2];f[d>>2]=o;d=j+16|0}}if((u|0)==60){g=g+-8|0;j=g;g=f[g>>2]|0;u=64}if((u|0)==64){u=0;p[a>>3]=h;p[e>>3]=n;k=a+8|0;l=f[k>>2]|0;f[k>>2]=g;f[j>>2]=l;d=d+1|0}g=a+16|0;c:do if(g>>>0<e>>>0)while(1){i=+p[m>>3];l=m+8|0;while(1){n=+p[g>>3];if(!(n<i)){if(i<n)break;if((f[g+8>>2]|0)>>>0>=(f[l>>2]|0)>>>0)break}g=g+16|0}j=e+-16|0;h=+p[j>>3];d:do if(h<i)l=j;else{k=j;while(1){if(!(i<h))if((f[e+-8>>2]|0)>>>0<(f[l>>2]|0)>>>0){l=k;j=k;break d}j=k+-16|0;h=+p[j>>3];if(h<i){e=k;l=j;break}else{e=k;k=j}}}while(0);if(g>>>0>j>>>0)break c;p[g>>3]=h;p[l>>3]=n;k=g+8|0;e=e+-8|0;l=f[k>>2]|0;f[k>>2]=f[e>>2];f[e>>2]=l;m=(m|0)==(g|0)?j:m;e=j;g=g+16|0;d=d+1|0}while(0);do if((g|0)!=(m|0)){h=+p[m>>3];i=+p[g>>3];if(h<i){j=g+8|0;l=m+8|0;e=l;k=j;l=f[l>>2]|0;j=f[j>>2]|0}else{if(i<h)break;e=m+8|0;l=f[e>>2]|0;k=g+8|0;j=f[k>>2]|0;if(l>>>0>=j>>>0)break}p[g>>3]=h;p[m>>3]=i;f[k>>2]=l;f[e>>2]=j;d=d+1|0}while(0);if(!d){d=tYa(a,g,c)|0;e=g+16|0;if(tYa(e,b,c)|0){u=89;break}if(d){a=e;continue}}m=g;if((m-o|0)>=(q-m|0)){u=88;break}pYa(a,g,c);a=g+16|0}if((u|0)==88){u=0;pYa(g+16|0,b,c);b=g;continue}else if((u|0)==89){u=0;if(d){u=90;break}else{b=g;continue}}}if((u|0)==5){g=b+-16|0;h=+p[g>>3];i=+p[a>>3];if(h<i){d=a+8|0;b=d;e=f[t>>2]|0;d=f[d>>2]|0}else{if(i<h)return;e=f[t>>2]|0;b=a+8|0;d=f[b>>2]|0;if(e>>>0>=d>>>0)return}p[a>>3]=h;p[g>>3]=i;f[b>>2]=e;f[t>>2]=d;return}else if((u|0)==10){qYa(a,a+16|0,r,c)|0;return}else if((u|0)==11){rYa(a,a+16|0,a+32|0,r,c)|0;return}else if((u|0)==12){sYa(a,a+16|0,a+32|0,a+48|0,r,c)|0;return}else if((u|0)==14){e=a+32|0;qYa(a,a+16|0,e,c)|0;d=a+48|0;if((d|0)==(b|0))return;while(1){i=+p[d>>3];h=+p[e>>3];if(i<h){l=d+8|0;j=e+8|0;g=j;k=l;l=f[l>>2]|0;j=f[j>>2]|0;u=19}else if(!(h<i)){k=d+8|0;l=f[k>>2]|0;g=e+8|0;j=f[g>>2]|0;if(l>>>0<j>>>0)u=19}if((u|0)==19){u=0;p[d>>3]=h;f[k>>2]=j;e:do if((e|0)!=(a|0)){m=e;while(1){e=m+-16|0;h=+p[e>>3];if(i<h){j=m+-8|0;g=j;j=f[j>>2]|0}else{if(h<i){e=m;break e}k=m+-8|0;j=f[k>>2]|0;if(l>>>0<j>>>0)g=k;else{e=m;break e}}p[m>>3]=h;f[m+8>>2]=j;if((a|0)==(e|0))break;else m=e}}while(0);p[e>>3]=i;f[g>>2]=l}e=d+16|0;if((e|0)==(b|0))break;else{t=d;d=e;e=t}}return}else if((u|0)==90)return}function qYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0.0,i=0,j=0,k=0.0;h=+p[b>>3];k=+p[a>>3];if(h<k)d=1;else if(k<h)d=0;else d=(f[b+8>>2]|0)>>>0<(f[a+8>>2]|0)>>>0;g=+p[c>>3];if(g<h)e=1;else if(h<g)e=0;else e=(f[c+8>>2]|0)>>>0<(f[b+8>>2]|0)>>>0;if(!d){if(!e){b=0;return b|0}p[b>>3]=g;p[c>>3]=h;j=b+8|0;c=c+8|0;i=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=i;g=+p[b>>3];h=+p[a>>3];if(g<h){e=a+8|0;d=e;i=f[j>>2]|0;e=f[e>>2]|0}else{if(h<g){b=1;return b|0}i=f[j>>2]|0;d=a+8|0;e=f[d>>2]|0;if(i>>>0>=e>>>0){b=1;return b|0}}p[a>>3]=g;p[b>>3]=h;f[d>>2]=i;f[j>>2]=e;b=2;return b|0}if(e){p[a>>3]=g;p[c>>3]=k;j=a+8|0;b=c+8|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=1;return b|0}p[a>>3]=h;p[b>>3]=k;a=a+8|0;i=b+8|0;j=f[a>>2]|0;f[a>>2]=f[i>>2];f[i>>2]=j;g=+p[c>>3];if(g<k){e=c+8|0;d=e;e=f[e>>2]|0}else{if(k<g){b=1;return b|0}d=c+8|0;e=f[d>>2]|0;if(e>>>0>=j>>>0){b=1;return b|0}}k=+p[b>>3];p[b>>3]=g;p[c>>3]=k;f[i>>2]=e;f[d>>2]=j;b=2;return b|0}function rYa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0;m=qYa(a,b,c,e)|0;j=+p[d>>3];k=+p[c>>3];if(j<k){g=c+8|0;h=d+8|0;e=h;l=g;h=f[h>>2]|0;g=f[g>>2]|0}else{if(k<j){b=m;return b|0}e=d+8|0;i=f[e>>2]|0;h=c+8|0;g=f[h>>2]|0;if(i>>>0<g>>>0){l=h;h=i}else{b=m;return b|0}}p[c>>3]=j;p[d>>3]=k;f[l>>2]=h;f[e>>2]=g;g=m+1|0;j=+p[c>>3];k=+p[b>>3];if(j<k){e=b+8|0;d=e;g=f[l>>2]|0;e=f[e>>2]|0}else{if(k<j){b=g;return b|0}i=f[l>>2]|0;h=b+8|0;e=f[h>>2]|0;if(i>>>0<e>>>0){d=h;g=i}else{b=g;return b|0}}p[b>>3]=j;p[c>>3]=k;f[d>>2]=g;f[l>>2]=e;g=m+2|0;j=+p[b>>3];k=+p[a>>3];if(j<k){e=a+8|0;h=e;g=f[d>>2]|0;e=f[e>>2]|0}else{if(k<j){b=g;return b|0}i=f[d>>2]|0;h=a+8|0;e=f[h>>2]|0;if(i>>>0<e>>>0)g=i;else{b=g;return b|0}}p[a>>3]=j;p[b>>3]=k;f[h>>2]=g;f[d>>2]=e;b=m+3|0;return b|0}function sYa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0,o=0;o=rYa(a,b,c,d,g)|0;k=+p[e>>3];l=+p[d>>3];if(k<l){h=d+8|0;i=e+8|0;g=i;n=h;i=f[i>>2]|0;h=f[h>>2]|0}else{if(l<k){b=o;return b|0}g=e+8|0;j=f[g>>2]|0;i=d+8|0;h=f[i>>2]|0;if(j>>>0<h>>>0){n=i;i=j}else{b=o;return b|0}}p[d>>3]=k;p[e>>3]=l;f[n>>2]=i;f[g>>2]=h;h=o+1|0;k=+p[d>>3];l=+p[c>>3];if(k<l){g=c+8|0;m=g;h=f[n>>2]|0;g=f[g>>2]|0}else{if(l<k){b=h;return b|0}j=f[n>>2]|0;i=c+8|0;g=f[i>>2]|0;if(j>>>0<g>>>0){m=i;h=j}else{b=h;return b|0}}p[c>>3]=k;p[d>>3]=l;f[m>>2]=h;f[n>>2]=g;h=o+2|0;k=+p[c>>3];l=+p[b>>3];if(k<l){g=b+8|0;e=g;h=f[m>>2]|0;g=f[g>>2]|0}else{if(l<k){b=h;return b|0}j=f[m>>2]|0;i=b+8|0;g=f[i>>2]|0;if(j>>>0<g>>>0){e=i;h=j}else{b=h;return b|0}}p[b>>3]=k;p[c>>3]=l;f[e>>2]=h;f[m>>2]=g;h=o+3|0;k=+p[b>>3];l=+p[a>>3];if(k<l){g=a+8|0;i=g;h=f[e>>2]|0;g=f[g>>2]|0}else{if(l<k){b=h;return b|0}j=f[e>>2]|0;i=a+8|0;g=f[i>>2]|0;if(j>>>0<g>>>0)h=j;else{b=h;return b|0}}p[a>>3]=k;p[b>>3]=l;f[i>>2]=h;f[e>>2]=g;b=o+4|0;return b|0}function tYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0;switch(b-a>>4|0){case 2:{h=b+-16|0;j=+p[h>>3];k=+p[a>>3];if(j<k){d=a+8|0;g=b+-8|0;c=d;e=g;g=f[g>>2]|0;d=f[d>>2]|0}else{if(k<j){a=1;return a|0}e=b+-8|0;g=f[e>>2]|0;c=a+8|0;d=f[c>>2]|0;if(g>>>0>=d>>>0){a=1;return a|0}}p[a>>3]=j;p[h>>3]=k;f[c>>2]=g;f[e>>2]=d;a=1;return a|0}case 3:{qYa(a,a+16|0,b+-16|0,c)|0;a=1;return a|0}case 4:{rYa(a,a+16|0,a+32|0,b+-16|0,c)|0;a=1;return a|0}case 5:{sYa(a,a+16|0,a+32|0,a+48|0,b+-16|0,c)|0;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{e=a+32|0;qYa(a,a+16|0,e,c)|0;c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{d=0;while(1){k=+p[c>>3];j=+p[e>>3];if(k<j){l=c+8|0;h=e+8|0;g=h;i=l;l=f[l>>2]|0;h=f[h>>2]|0;n=15}else if(!(j<k)){i=c+8|0;l=f[i>>2]|0;g=e+8|0;h=f[g>>2]|0;if(l>>>0<h>>>0)n=15}if((n|0)==15){n=0;p[c>>3]=j;f[i>>2]=h;b:do if((e|0)!=(a|0)){m=e;i=g;while(1){e=m+-16|0;j=+p[e>>3];if(k<j){h=m+-8|0;g=h;h=f[h>>2]|0}else{if(j<k){g=i;e=m;break b}g=m+-8|0;h=f[g>>2]|0;if(l>>>0>=h>>>0){g=i;e=m;break b}}p[m>>3]=j;f[m+8>>2]=h;if((e|0)==(a|0))break;else{m=e;i=g}}}while(0);p[e>>3]=k;f[g>>2]=l;d=d+1|0;if((d|0)==8){d=0;c=(c+16|0)==(b|0);break a}}e=c+16|0;if((e|0)==(b|0)){d=1;c=0;break}else{m=c;c=e;e=m}}}while(0);a=c|d;return a|0}}return 0}function uYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=a+20|0;c=f[q>>2]|0;if(!c)return;r=a+16|0;s=a+12|0;t=a+8|0;u=a+16|0;do{p=f[r>>2]|0;sGa(b,f[p+8>>2]|0);n=c;c=f[q>>2]|0;if((c|0)==(n|0)){o=f[p+12>>2]|0;k=f[s>>2]|0;d=f[p+4>>2]|0;l=k+-1|0;m=(l&k|0)==0;if(m)d=l&d;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;g=(f[t>>2]|0)+(d<<2)|0;j=f[g>>2]|0;while(1){e=f[j>>2]|0;if((e|0)==(p|0))break;else j=e}if((j|0)==(u|0))i=17;else{e=f[j+4>>2]|0;if(m)e=e&l;else if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)==(d|0))g=p;else i=17}do if((i|0)==17){e=f[p>>2]|0;if(e|0){e=f[e+4>>2]|0;if(m)e=e&l;else if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)==(d|0)){g=p;break}}f[g>>2]=0;g=p}while(0);e=f[g>>2]|0;h=e;if(!e)i=31;else{e=f[e+4>>2]|0;if(m)e=e&l;else if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)==(d|0))i=31;else{f[(f[t>>2]|0)+(e<<2)>>2]=j;f[j>>2]=f[p>>2];f[g>>2]=0;f[q>>2]=n+-1;i=32}}if((i|0)==31){i=0;f[j>>2]=h;f[g>>2]=0;f[q>>2]=n+-1;if(p|0)i=32}if((i|0)==32){i=0;Zpb(p)}if(o|0){CYa(o);Zpb(o)}}}while((c|0)!=0);t=a+4|0;u=(f[t>>2]|0)+1|0;f[t>>2]=u;f[a>>2]=u;return}function vYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=f[a+12>>2]|0;if(!g){b=0;return b|0}e=g+-1|0;d=(e&g|0)==0;if(d)h=e&b;else if(g>>>0>b>>>0)h=b;else h=(b>>>0)%(g>>>0)|0;c=f[(f[a+8>>2]|0)+(h<<2)>>2]|0;if(!c){b=0;return b|0}c=f[c>>2]|0;if(!c){b=0;return b|0}a:do if(d){while(1){g=f[c+4>>2]|0;d=(g|0)==(b|0);if(!(d|(g&e|0)==(h|0))){c=0;d=22;break}if(d)if((f[c+8>>2]|0)==(b|0)){i=c;break a}c=f[c>>2]|0;if(!c){c=0;d=22;break}}if((d|0)==22)return c|0}else{while(1){d=f[c+4>>2]|0;if((d|0)==(b|0)){if((f[c+8>>2]|0)==(b|0)){i=c;break a}}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0)){c=0;d=22;break}}c=f[c>>2]|0;if(!c){c=0;d=22;break}}if((d|0)==22)return c|0}while(0);c=f[i+12>>2]|0;if((f[a>>2]|0)>>>0<=b>>>0)if((FYa(c)|0)==(b|0)){b=c;return b|0}b=0;return b|0}function wYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;c=d;e=f[b>>2]|0;f[b>>2]=0;g=a+4|0;b=(f[g>>2]|0)+1|0;f[g>>2]=b;EYa(e,b);f[c>>2]=b;b=xYa(a+8|0,c)|0;f[b>>2]=e;u=d;return f[c>>2]|0}function xYa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;yYa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function yYa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){zYa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;zYa(a,b);return}function zYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function AYa(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;b=vYa(a,b)|0;if(!b){u=d;return}BYa(a+8|0,c)|0;CYa(b);Zpb(b);u=d;return}function BYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){a=0;return a|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){a=0;return a|0}b=f[b>>2]|0;if(!b){a=0;return a|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=48;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=48;break}}b=f[b>>2]|0;if(!b){b=0;h=48;break}}if((h|0)==48)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}Zpb(m);n=1;return n|0}function CYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+64|0;b=f[g>>2]|0;if(b|0){h=a+68|0;c=f[h>>2]|0;if((c|0)!=(b|0)){d=c;while(1){c=d+-12|0;f[h>>2]=c;e=f[c>>2]|0;if(e){c=d+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);Zpb(e);c=f[h>>2]|0}if((c|0)==(b|0))break;else d=c}b=f[g>>2]|0}Zpb(b)}b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+40>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+32|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);h=a+28|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);a=a+24|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function DYa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=b[c+14>>0]|0;h=b[c+15>>0]|0;j=h<<24>>24==0?b[c+13>>0]|0:1;Jrb(a|0,c|0,13)|0;b[a+13>>0]=j;b[a+14>>0]=i;b[a+15>>0]=h;h=a+16|0;f[h>>2]=d;i=a+20|0;b[i>>0]=b[e>>0]|0;b[i+1>>0]=b[e+1>>0]|0;b[i+2>>0]=b[e+2>>0]|0;if(!(b[c+12>>0]|0))c=0;else{c=(tva(d)|0)+217|0;c=b[c>>0]|0}b[a+23>>0]=c;j=f[g>>2]|0;f[g>>2]=0;f[a+24>>2]=j;j=a+28|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[j+16>>2]=0;n[a+48>>2]=1.0;j=a+52|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;f[j+16>>2]=0;f[j+20>>2]=0;f[j+24>>2]=0;if(b[a+11>>0]|0)return;$Wa(f[h>>2]|0,a+64|0);return}function EYa(a,b){a=a|0;b=b|0;f[a+76>>2]=b;return}function FYa(a){a=a|0;return f[a+76>>2]|0}function GYa(a){a=a|0;return (b[a+8>>0]|0)!=0|0}function HYa(a){a=a|0;return (b[a+9>>0]|0)!=0|0}function IYa(a){a=a|0;return (b[a+10>>0]|0)!=0|0}function JYa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=32268;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-88-d|0)>>>0)/88|0)*88|0);Zpb(d);return}function KYa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=32268;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-88-b|0)>>>0)/88|0)*88|0);Zpb(b);Zpb(a);return}function LYa(a){a=a|0;return 0}function MYa(a){a=a|0;return 1}function NYa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[a+32>>3]-+p[b>>3];d=+p[a+40>>3]-+p[b+8>>3];c=+p[a+48>>3]-+p[b+16>>3];return +(e*e+(d*d+c*c))}function OYa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0,h=0;h=f[a+4>>2]|0;a=(f[a+8>>2]|0)-h|0;g=(a|0)/88|0;if(!a){h=1;return h|0}d=+p[b>>3];e=+p[b+8>>3];c=+p[b+16>>3];a=0;while(1){if(d*+p[h+(a*88|0)>>3]+(e*+p[h+(a*88|0)+8>>3]+c*+p[h+(a*88|0)+16>>3])-+p[h+(a*88|0)+24>>3]<0.0){a=0;b=5;break}a=a+1|0;if(a>>>0>=g>>>0){a=1;b=5;break}}if((b|0)==5)return a|0;return 0}function PYa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0;j=+p[b>>3];n=(+p[b+24>>3]-j)*.5;k=+p[b+8>>3];m=(+p[b+32>>3]-k)*.5;l=+p[b+16>>3];i=(+p[b+40>>3]-l)*.5;j=j+n;k=k+m;l=l+i;h=f[a+4>>2]|0;a=(f[a+8>>2]|0)-h|0;g=(a|0)/88|0;if(!a){h=2;return h|0}else{b=2;a=0}while(1){c=j*+p[h+(a*88|0)>>3]+(k*+p[h+(a*88|0)+8>>3]+l*+p[h+(a*88|0)+16>>3]);d=n*+p[h+(a*88|0)+32>>3]+(m*+p[h+(a*88|0)+40>>3]+i*+p[h+(a*88|0)+48>>3]);e=+p[h+(a*88|0)+24>>3];if(c+d<=e){b=1;a=4;break}b=c-d<e?3:b;a=a+1|0;if(a>>>0>=g>>>0){a=4;break}}if((a|0)==4)return b|0;return 0}function QYa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0.0;m=+p[b+24>>3];g=f[a+4>>2]|0;a=(f[a+8>>2]|0)-g|0;j=(a|0)/88|0;if(!a){l=2;return l|0}h=+p[b>>3];i=+p[b+8>>3];d=+p[b+16>>3];a=0;while(1){c=h*+p[g+(a*88|0)>>3]+(i*+p[g+(a*88|0)+8>>3]+d*+p[g+(a*88|0)+16>>3])-+p[g+(a*88|0)+24>>3];if(c<0.0)if(c*c*+p[g+(a*88|0)+80>>3]>=m){e=1;k=9;break}a=a+1|0;if(a>>>0>=j>>>0){l=0;break}}if((k|0)==9)return e|0;while(1){c=h*+p[g+(l*88|0)>>3]+(i*+p[g+(l*88|0)+8>>3]+d*+p[g+(l*88|0)+16>>3])-+p[g+(l*88|0)+24>>3];if(c<0.0){e=3;k=9;break}if(c*c*+p[g+(l*88|0)+80>>3]<m){e=3;k=9;break}l=l+1|0;if(l>>>0>=j>>>0){e=2;k=9;break}}if((k|0)==9)return e|0;return 0}function RYa(a,c,d){a=a|0;c=c|0;d=d|0;p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];if(!(b[209776]|0))if(rrb(209776)|0){f[52788]=0;f[52789]=0;f[52790]=0;f[52791]=0;f[52792]=0;f[52793]=0}return VYa(211152,a+4|0,a+16|0,c)|0}function SYa(a,b,c){a=a|0;b=b|0;c=c|0;return TYa(a+4|0,a+16|0,b,c)|0}function TYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;t=w;v=a+4|0;o=f[a>>2]|0;m=(f[v>>2]|0)-o|0;q=(m|0)/88|0;r=d+8|0;s=d+16|0;h=+p[c>>3];if(!m){p[d>>3]=h;p[r>>3]=+p[c+8>>3];p[s>>3]=+p[c+16>>3];p[d>>3]=+p[c+24>>3];p[r>>3]=+p[c+32>>3];p[s>>3]=+p[c+40>>3];v=2;u=w;return v|0}g=c+8|0;i=+p[g>>3];k=c+16|0;j=+p[k>>3];e=0;while(1){if(h*+p[o+(e*88|0)>>3]+(i*+p[o+(e*88|0)+8>>3]+j*+p[o+(e*88|0)+16>>3])-+p[o+(e*88|0)+24>>3]<0.0){g=0;k=1;break}e=e+1|0;if(e>>>0>=q>>>0){n=7;break}}if((n|0)==7){p[d>>3]=h;p[r>>3]=+p[g>>3];p[s>>3]=+p[k>>3];g=1;k=0}j=+p[c+24>>3];l=c+32|0;h=+p[l>>3];m=c+40|0;i=+p[m>>3];e=0;while(1){if(j*+p[o+(e*88|0)>>3]+(h*+p[o+(e*88|0)+8>>3]+i*+p[o+(e*88|0)+16>>3])-+p[o+(e*88|0)+24>>3]<0.0){n=4;break}e=e+1|0;if(e>>>0>=q>>>0){n=9;break}}if((n|0)==4){if(!g){e=f[b>>2]|0;m=f[b+4>>2]|0;a:do if((e|0)==(m|0))e=1;else{n=t+8|0;o=t+16|0;b:while(1){c:do if(UYa(e,c,t)|0){l=f[a>>2]|0;b=(f[v>>2]|0)-l|0;k=(b|0)/88|0;h=+p[t>>3];i=+p[n>>3];j=+p[o>>3];if(!b)break b;else g=0;while(1){if(h*+p[l+(g*88|0)>>3]+(i*+p[l+(g*88|0)+8>>3]+j*+p[l+(g*88|0)+16>>3])-+p[l+(g*88|0)+24>>3]<0.0)break c;g=g+1|0;if(g>>>0>=k>>>0)break b}}while(0);e=e+32|0;if((e|0)==(m|0)){e=1;break a}}p[d>>3]=h;p[r>>3]=i;p[s>>3]=j;e=3}while(0);v=e;u=w;return v|0}}else if((n|0)==9){p[d>>3]=j;p[r>>3]=+p[l>>3];p[s>>3]=+p[m>>3];if(!k){v=2;u=w;return v|0}}v=3;u=w;return v|0}function UYa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0;s=b+24|0;f=b;g=s;d=+p[b>>3];e=+p[s>>3];if(d<e)h=6;else if(d>e)b=g;else{d=+p[b+8>>3];e=+p[b+32>>3];if(d<e)h=6;else if(d>e)b=g;else if(+p[b+16>>3]<+p[b+40>>3])h=6;else b=g}if((h|0)==6){b=f;f=g}o=+p[a>>3];q=+p[a+8>>3];r=+p[a+16>>3];n=-+p[a+24>>3]/(o*o+(q*q+r*r));s=b;b=f;j=+p[b>>3];k=+p[s>>3]-j;f=b+8|0;d=+p[f>>3];l=+p[s+8>>3]-d;b=b+16|0;e=+p[b>>3];m=+p[s+16>>3]-e;i=o*k+(q*l+r*m);if(i==0.0){s=0;return s|0}d=(o*(o*n-j)+(q*(q*n-d)+r*(r*n-e)))/i;if(!(d>=-1.0e-07&d<=1.0000001)){s=0;return s|0}p[c>>3]=j+k*d;p[c+8>>3]=l*d+ +p[f>>3];p[c+16>>3]=m*d+ +p[b>>3];s=1;return s|0}function VYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+160|0;s=w+148|0;t=w;v=w+144|0;m=f[b>>2]|0;r=(f[b+4>>2]|0)-m|0;l=(r|0)/88|0;if(!r){a=2;u=w;return a|0}i=+p[d>>3];j=+p[d+8>>3];k=+p[d+16>>3];b=0;while(1){if(i*+p[m+(b*88|0)>>3]+(j*+p[m+(b*88|0)+8>>3]+k*+p[m+(b*88|0)+16>>3])-+p[m+(b*88|0)+24>>3]<0.0){h=0;break}b=b+1|0;if(b>>>0>=l>>>0){h=1;break}}i=+p[d+24>>3];j=+p[d+32>>3];k=+p[d+40>>3];b=0;while(1){if(i*+p[m+(b*88|0)>>3]+(j*+p[m+(b*88|0)+8>>3]+k*+p[m+(b*88|0)+16>>3])-+p[m+(b*88|0)+24>>3]<0.0){g=0;break}b=b+1|0;if(b>>>0>=l>>>0){g=1;break}}e=h&g;i=+p[d+48>>3];j=+p[d+56>>3];k=+p[d+64>>3];b=0;while(1){if(i*+p[m+(b*88|0)>>3]+(j*+p[m+(b*88|0)+8>>3]+k*+p[m+(b*88|0)+16>>3])-+p[m+(b*88|0)+24>>3]<0.0)break;b=b+1|0;if(b>>>0>=l>>>0){n=44;break}}if((n|0)==44){a=e?2:3;u=w;return a|0}if(h|g){a=3;u=w;return a|0}k=+p[d>>3];i=+p[d+24>>3];if(k==i)if(+p[d+8>>3]==+p[d+32>>3])if(+p[d+16>>3]==+p[d+40>>3]){a=1;u=w;return a|0}j=+p[d+48>>3];if(k==j)if(+p[d+8>>3]==+p[d+56>>3])if(+p[d+16>>3]==+p[d+64>>3]){a=1;u=w;return a|0}if(i==j)if(+p[d+32>>3]==+p[d+56>>3])if(+p[d+40>>3]==+p[d+64>>3]){a=1;u=w;return a|0}o=a+12|0;r=a+16|0;q=a+20|0;b=f[r>>2]|0;e=f[q>>2]|0;if((b|0)==(e|0)){WYa(o,d);g=f[r>>2]|0;e=f[q>>2]|0}else{p[b>>3]=k;p[b+8>>3]=+p[d+8>>3];p[b+16>>3]=+p[d+16>>3];g=b+24|0;f[r>>2]=g}b=d+24|0;if((g|0)==(e|0)){WYa(o,b);g=f[r>>2]|0;e=f[q>>2]|0}else{p[g>>3]=+p[b>>3];p[g+8>>3]=+p[d+32>>3];p[g+16>>3]=+p[d+40>>3];g=g+24|0;f[r>>2]=g}b=d+48|0;if((g|0)==(e|0))WYa(o,b);else{p[g>>3]=+p[b>>3];p[g+8>>3]=+p[d+56>>3];p[g+16>>3]=+p[d+64>>3];f[r>>2]=g+24}b=f[c>>2]|0;n=f[c+4>>2]|0;a:do if((b|0)!=(n|0)){d=a+4|0;c=a+8|0;do{m=f[o>>2]|0;l=f[r>>2]|0;g=m;h=l;if((m|0)==(l|0))break a;l=f[a>>2]|0;f[a>>2]=g;f[o>>2]=l;e=f[d>>2]|0;f[d>>2]=h;f[r>>2]=e;x=f[c>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=x;if((l|0)!=(e|0))f[r>>2]=e+(~(((e+-24-l|0)>>>0)/24|0)*24|0);x=h-g|0;g=(x|0)/24|0;if(x|0){e=0;do{x=t+(($ha(b,m+(e*24|0)|0,t)|0)*24|0)|0;f[v>>2]=f[r>>2];f[s>>2]=f[v>>2];Xha(o,s,t,x)|0;e=e+3|0}while(e>>>0<g>>>0)}b=b+32|0}while((b|0)!=(n|0))}while(0);b=f[o>>2]|0;e=f[r>>2]|0;h=(b|0)==(e|0);if(!h)f[r>>2]=e+(~(((e+-24-b|0)>>>0)/24|0)*24|0);g=f[a>>2]|0;b=a+4|0;e=f[b>>2]|0;if((e|0)!=(g|0))f[b>>2]=e+(~(((e+-24-g|0)>>>0)/24|0)*24|0);x=h?1:3;u=w;return x|0}function WYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0<c>>>0?c:e):178956970;do if(!e)g=0;else if(e>>>0>178956970)ud();else{g=Wpb(e*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(e*24|0)|0;p[c>>3]=+p[b>>3];p[g+(h*24|0)+8>>3]=+p[b+8>>3];p[g+(h*24|0)+16>>3]=+p[b+16>>3];e=c+24|0;if((d|0)!=(j|0))do{h=d;d=d+-24|0;p[c+-24>>3]=+p[d>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-24|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;Zpb(m);return}function XYa(a){a=a|0;return}function YYa(a){a=a|0;Zpb(a);return}function ZYa(a){a=a|0;return 1}function _Ya(a){a=a|0;return 1}function $Ya(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[a+8>>3]-+p[b>>3];d=+p[a+16>>3]-+p[b+8>>3];c=+p[a+24>>3]-+p[b+16>>3];return +(e*e+(d*d+c*c))}function aZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[b>>3]-+p[a+8>>3];d=+p[b+8>>3]-+p[a+16>>3];c=+p[b+16>>3]-+p[a+24>>3];return e*e+(d*d+c*c)<=+p[a+32>>3]|0}function bZa(a,b){a=a|0;b=b|0;return hZa(a+8|0,b)|0}function cZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+p[a+8>>3]-+p[b>>3];f=+p[a+16>>3]-+p[b+8>>3];g=+p[a+24>>3]-+p[b+16>>3];d=+p[a+32>>3];e=+p[b+24>>3];if(d>=e)if(h*h+(f*f+g*g)<=d){b=2;return b|0}a=a+40|0;c=+p[a>>3];if(c==-1.0){d=+L(+d);p[a>>3]=d}else d=c;a=b+32|0;c=+p[a>>3];if(c==-1.0){c=+L(+e);p[a>>3]=c}e=d+c;b=!(h*h+(f*f+g*g)<=e*e)?1:3;return b|0}function dZa(a,b,c){a=a|0;b=b|0;c=c|0;p[c>>3]=+p[b>>3];p[c+8>>3]=+p[b+8>>3];p[c+16>>3]=+p[b+16>>3];return gZa(a+8|0,b)|0}function eZa(a,b,c){a=a|0;b=b|0;c=c|0;p[c>>3]=+p[b>>3];p[c+8>>3]=+p[b+8>>3];p[c+16>>3]=+p[b+16>>3];return fZa(a+8|0,b)|0}function fZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0;k=+p[a>>3];l=+p[a+8>>3];m=+p[a+16>>3];n=+p[a+24>>3];r=+p[b>>3];e=r-k;o=+p[b+8>>3];h=o-l;q=+p[b+16>>3];d=q-m;f=e*e+(h*h+d*d)<=n;d=+p[b+24>>3];h=d-k;e=+p[b+32>>3];i=e-l;c=+p[b+40>>3];j=c-m;a=h*h+(i*i+j*j)<=n;if(f|a){f=f&a?2:3;return f|0}h=d-r;i=e-o;c=c-q;g=h*h+(i*i+c*c);j=+L(+g);h=h/j;i=i/j;j=c/j;k=k-r;l=l-o;c=m-q;e=h*k+(i*l+j*c);c=n-(k*k+(l*l+c*c)-e*e);if(c<0.0){d=-1.0;c=-1.0}else{c=+L(+c);d=e+c;c=e-c}c=c>=0.0?c:d;if(c>=0.0){n=r-(r+h*c);o=o-(o+i*c);r=q-(q+j*c);if(g>=n*n+(o*o+r*r)){f=3;return f|0}}f=1;return f|0}function gZa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0,M=0.0,N=0,O=0,P=0,Q=0,R=0.0;Q=u;u=u+80|0;B=Q;r=b+32|0;n=b+8|0;d=+p[n>>3];E=+p[r>>3]-d;N=b+64|0;o=b+16|0;e=+p[o>>3];D=+p[N>>3]-e;s=b+40|0;H=+p[s>>3]-e;I=b+56|0;x=+p[I>>3]-d;C=E*D-H*x;J=b+48|0;M=+p[b>>3];v=+p[J>>3]-M;q=b+24|0;w=+p[q>>3]-M;D=H*v-D*w;v=x*w-E*v;E=+L(+(C*C+(D*D+v*v)));C=C/E;D=D/E;E=v/E;v=+p[a>>3];O=a+8|0;w=+p[O>>3];P=a+16|0;x=+p[P>>3];e=+K(+(C*(v-M)+((w-d)*D+E*(x-e))));c=a+32|0;d=+p[c>>3];if(d==-1.0){d=+L(+(+p[a+24>>3]));p[c>>3]=d}if(e>=d){P=1;u=Q;return P|0}t=+p[a+24>>3];M=+p[b>>3];A=M-v;H=+p[n>>3];e=H-w;G=+p[o>>3];F=G-x;o=A*A+(e*e+F*F)<=t;F=+p[q>>3];e=F-v;A=+p[r>>3];k=A-w;y=+p[s>>3];d=y-x;n=e*e+(k*k+d*d)<=t;d=+p[J>>3];k=d-v;e=+p[I>>3];l=e-w;f=+p[N>>3];m=f-x;c=k*k+(l*l+m*m)<=t;if(o|n|c){P=o&n&c?2:3;u=Q;return P|0}if(M==F&H==A&G==y){P=1;u=Q;return P|0}if(M==d&H==e&G==f){P=1;u=Q;return P|0}if(F==d&A==e&y==f){P=1;u=Q;return P|0}c=0;g=M;h=H;i=G;while(1){n=c+1|0;s=(n|0)==3?0:n;d=+p[b+(s*24|0)>>3]-g;e=+p[b+(s*24|0)+8>>3]-h;R=+p[b+(s*24|0)+16>>3]-i;j=d*d+(e*e+R*R);m=+L(+j);k=d/m;l=e/m;m=R/m;p[B+(c*24|0)>>3]=d;p[B+(c*24|0)+8>>3]=e;p[B+(c*24|0)+16>>3]=R;R=v-g;e=w-h;d=x-i;f=R*k+(e*l+d*m);d=t-(R*R+(e*e+d*d)-f*f);if(d<0.0){e=-1.0;d=-1.0}else{d=+L(+d);e=f+d;d=f-d}d=d>=0.0?d:e;if(d>=0.0){k=g-(g+d*k);l=h-(h+d*l);R=i-(i+d*m);if(j>=k*k+(l*l+R*R)){c=3;break}}if(n>>>0>=3){z=16;break}c=n;g=+p[b+(n*24|0)>>3];h=+p[b+(n*24|0)+8>>3];i=+p[b+(n*24|0)+16>>3]}do if((z|0)==16){x=+p[B+16>>3];R=+p[B+8>>3];w=D*x-E*R;l=+p[B>>3];x=E*l-C*x;l=C*R-D*l;R=+L(+(w*w+(x*x+l*l)));w=w/R;x=x/R;R=l/R;l=+p[B+40>>3];m=+p[B+32>>3];k=D*l-E*m;i=+p[B+24>>3];l=E*i-C*l;i=C*m-D*i;m=+L(+(k*k+(l*l+i*i)));k=k/m;l=l/m;m=i/m;i=+p[B+64>>3];j=+p[B+56>>3];h=D*i-E*j;g=+p[B+48>>3];i=E*g-C*i;g=C*j-D*g;j=+L(+(h*h+(i*i+g*g)));h=h/j;i=i/j;j=g/j;g=h*+p[J>>3]+(i*+p[I>>3]+j*+p[N>>3]);f=+p[a>>3];e=+p[O>>3];d=+p[P>>3];if(!(w*f+(x*e+R*d)-(w*M+(x*H+R*G))<0.0))if(!(f*k+(e*l+d*m)-(k*F+(l*A+m*y))<0.0))if(!(h*f+(i*e+j*d)-g<0.0)){c=3;break}c=1}while(0);P=c;u=Q;return P|0}function hZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0.0,o=0,q=0.0,r=0.0;o=u;u=u+192|0;k=o;h=+p[b+24>>3];n=+p[a>>3];d=+p[b>>3];r=h<n?h:n;i=+p[b+32>>3];j=+p[a+8>>3];e=+p[b+8>>3];q=i<j?i:j;l=+p[b+40>>3];m=+p[a+16>>3];c=+p[b+16>>3];f=l<m?l:m;r=(d<r?r:d)-n;q=(e<q?q:e)-j;f=(c<f?f:c)-m;g=+p[a+24>>3];if(r*r+q*q+f*f>g){k=1;u=o;return k|0}p[k>>3]=d;p[k+8>>3]=e;p[k+16>>3]=c;p[k+24>>3]=h;p[k+32>>3]=e;p[k+40>>3]=c;p[k+48>>3]=d;p[k+56>>3]=i;p[k+64>>3]=c;p[k+72>>3]=h;p[k+80>>3]=i;p[k+88>>3]=c;p[k+96>>3]=d;p[k+104>>3]=e;p[k+112>>3]=l;p[k+120>>3]=h;p[k+128>>3]=e;p[k+136>>3]=l;p[k+144>>3]=d;p[k+152>>3]=i;p[k+160>>3]=l;p[k+168>>3]=h;p[k+176>>3]=i;p[k+184>>3]=l;f=d-n;f=f*f;e=e-j;d=c-m;d=d*d;e=e*e+d;if(!(f+e<=g))b=3;else{c=h-n;c=c*c;if(!(c+e<=g))b=3;else{r=i-j;r=r*r+d;if(!(f+r<=g)|!(c+r<=g))b=3;else{q=+p[k+104>>3]-j;r=+p[k+112>>3]-m;if(!(f+(q*q+r*r)<=g))b=3;else{i=+p[k+120>>3]-n;q=+p[k+128>>3]-j;r=+p[k+136>>3]-m;if(!(i*i+(q*q+r*r)<=g))b=3;else{i=+p[k+144>>3]-n;q=+p[k+152>>3]-j;r=+p[k+160>>3]-m;if(!(i*i+(q*q+r*r)<=g))b=3;else{n=+p[k+168>>3]-n;q=+p[k+176>>3]-j;r=l-m;if(!(n*n+(q*q+r*r)<=g))b=3;else b=2}}}}}}k=b;u=o;return k|0}function iZa(a){a=a|0;return}function jZa(a){a=a|0;Zpb(a);return}function kZa(a){a=a|0;return 2}function lZa(a){a=a|0;return 0}function mZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+p[a+448>>3]-+p[b>>3];d=+p[a+456>>3]-+p[b+8>>3];c=+p[a+464>>3]-+p[b+16>>3];return +(e*e+(d*d+c*c))}function nZa(a,b){a=a|0;b=b|0;return tZa(a+8|0,b)|0}function oZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0;c=u;u=u+48|0;d=c+24|0;e=c;k=+p[b>>3];j=(+p[b+24>>3]-k)*.5;p[d>>3]=j;i=+p[b+8>>3];h=(+p[b+32>>3]-i)*.5;p[d+8>>3]=h;g=+p[b+16>>3];f=(+p[b+40>>3]-g)*.5;p[d+16>>3]=f;p[e>>3]=k+j;p[e+8>>3]=i+h;p[e+16>>3]=g+f;b=wZa(a+8|0,e,d)|0;u=c;return ((b|0)==2?2:(b|0)==1?3:1)|0}function pZa(a,b){a=a|0;b=b|0;var c=0;a=a+8|0;c=b+24|0;if(!(uZa(a,b,+p[c>>3])|0)){b=1;return b|0}b=vZa(a,b,+p[c>>3])|0;b=b?2:3;return b|0}function qZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0.0,g=0.0,h=0;h=u;u=u+32|0;e=h;f=+p[b>>3];g=+p[b+24>>3];if(f==g)if(+p[b+8>>3]==+p[b+32>>3])if(+p[b+16>>3]==+p[b+40>>3]){e=1;u=h;return e|0}d=+p[b+48>>3];if(f==d)if(+p[b+8>>3]==+p[b+56>>3])if(+p[b+16>>3]==+p[b+64>>3]){e=1;u=h;return e|0}if(g==d)if(+p[b+32>>3]==+p[b+56>>3])if(+p[b+40>>3]==+p[b+64>>3]){e=1;u=h;return e|0}if(zWa(a+448|0,b,e)|0){p[c>>3]=+p[e>>3];p[c+8>>3]=+p[e+8>>3];p[c+16>>3]=+p[e+16>>3];a=3}else a=1;e=a;u=h;return e|0}function rZa(a,b,c){a=a|0;b=b|0;c=c|0;return sZa(a+8|0,a+496|0,b,c)|0}function sZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;h=k;i=d+8|0;j=d+16|0;if(tZa(a,c)|0){p[d>>3]=+p[c>>3];p[i>>3]=+p[c+8>>3];p[j>>3]=+p[c+16>>3];f=1;e=0}else{f=0;e=1}g=c+24|0;if(tZa(a,g)|0){p[d>>3]=+p[g>>3];p[i>>3]=+p[c+32>>3];p[j>>3]=+p[c+40>>3]}else if(f)e=1;else{if(UYa(b,c,h)|0)if(tZa(a,h)|0)f=7;else f=8;else f=8;do if((f|0)==8){if(UYa(b+32|0,c,h)|0)if(tZa(a,h)|0){f=7;break}if(UYa(b+64|0,c,h)|0)if(tZa(a,h)|0){f=7;break}if(UYa(b+96|0,c,h)|0)if(tZa(a,h)|0){f=7;break}if(UYa(b+128|0,c,h)|0)if(tZa(a,h)|0)f=7;else e=1;else e=1}while(0);if((f|0)==7){p[d>>3]=+p[h>>3];p[i>>3]=+p[h+8>>3];p[j>>3]=+p[h+16>>3];e=3}j=e;u=k;return j|0}j=e?3:2;u=k;return j|0}function tZa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;d=+p[b>>3];e=+p[b+8>>3];c=+p[b+16>>3];if(+p[a>>3]*d+(+p[a+8>>3]*e+ +p[a+16>>3]*c)-+p[a+24>>3]<0.0){a=0;return a|0}if(+p[a+32>>3]*d+(+p[a+40>>3]*e+ +p[a+48>>3]*c)-+p[a+56>>3]<0.0){a=0;return a|0}if(+p[a+64>>3]*d+(+p[a+72>>3]*e+ +p[a+80>>3]*c)-+p[a+88>>3]<0.0){a=0;return a|0}if(+p[a+96>>3]*d+(+p[a+104>>3]*e+ +p[a+112>>3]*c)-+p[a+120>>3]<0.0){a=0;return a|0}if(+p[a+128>>3]*d+(+p[a+136>>3]*e+ +p[a+144>>3]*c)-+p[a+152>>3]<0.0){a=0;return a|0}a=1;return a|0}function uZa(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0,f=0.0,g=0.0;f=+p[b>>3];g=+p[b+8>>3];e=+p[b+16>>3];d=+p[a>>3]*f+(+p[a+8>>3]*g+ +p[a+16>>3]*e)-+p[a+24>>3];if(d<0.0)if(d*d*+p[a+400>>3]>=c){a=0;return a|0}d=+p[a+32>>3]*f+(+p[a+40>>3]*g+ +p[a+48>>3]*e)-+p[a+56>>3];if(d<0.0)if(d*d*+p[a+408>>3]>=c){a=0;return a|0}d=+p[a+64>>3]*f+(+p[a+72>>3]*g+ +p[a+80>>3]*e)-+p[a+88>>3];if(d<0.0)if(d*d*+p[a+416>>3]>=c){a=0;return a|0}d=+p[a+96>>3]*f+(+p[a+104>>3]*g+ +p[a+112>>3]*e)-+p[a+120>>3];if(d<0.0)if(d*d*+p[a+424>>3]>=c){a=0;return a|0}d=+p[a+128>>3]*f+(+p[a+136>>3]*g+ +p[a+144>>3]*e)-+p[a+152>>3];if(d<0.0)if(d*d*+p[a+432>>3]>=c){a=0;return a|0}a=1;return a|0}function vZa(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0,f=0.0,g=0.0;f=+p[b>>3];g=+p[b+8>>3];e=+p[b+16>>3];d=+p[a>>3]*f+(+p[a+8>>3]*g+ +p[a+16>>3]*e)-+p[a+24>>3];if(d<0.0){a=0;return a|0}if(d*d*+p[a+400>>3]<c){a=0;return a|0}d=+p[a+32>>3]*f+(+p[a+40>>3]*g+ +p[a+48>>3]*e)-+p[a+56>>3];if(d<0.0){a=0;return a|0}if(d*d*+p[a+408>>3]<c){a=0;return a|0}d=+p[a+64>>3]*f+(+p[a+72>>3]*g+ +p[a+80>>3]*e)-+p[a+88>>3];if(d<0.0){a=0;return a|0}if(d*d*+p[a+416>>3]<c){a=0;return a|0}d=+p[a+96>>3]*f+(+p[a+104>>3]*g+ +p[a+112>>3]*e)-+p[a+120>>3];if(d<0.0){a=0;return a|0}if(d*d*+p[a+424>>3]<c){a=0;return a|0}d=+p[a+128>>3]*f+(+p[a+136>>3]*g+ +p[a+144>>3]*e)-+p[a+152>>3];if(d<0.0){a=0;return a|0}if(d*d*+p[a+432>>3]<c){a=0;return a|0}a=1;return a|0}function wZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;f=+p[b>>3];h=+p[b+8>>3];e=+p[b+16>>3];i=+p[c>>3];g=+p[c+8>>3];d=+p[c+16>>3];m=+p[a>>3]*f+(+p[a+8>>3]*h+ +p[a+16>>3]*e);n=+p[a+160>>3]*i+(+p[a+168>>3]*g+ +p[a+176>>3]*d);o=+p[a+24>>3];if(m+n<=o){a=0;return a|0}q=+p[a+32>>3]*f+(+p[a+40>>3]*h+ +p[a+48>>3]*e);r=+p[a+184>>3]*i+(+p[a+192>>3]*g+ +p[a+200>>3]*d);s=+p[a+56>>3];if(q+r<=s){a=0;return a|0}t=+p[a+64>>3]*f+(+p[a+72>>3]*h+ +p[a+80>>3]*e);u=+p[a+208>>3]*i+(+p[a+216>>3]*g+ +p[a+224>>3]*d);v=+p[a+88>>3];if(t+u<=v){a=0;return a|0}j=+p[a+96>>3]*f+(+p[a+104>>3]*h+ +p[a+112>>3]*e);k=+p[a+232>>3]*i+(+p[a+240>>3]*g+ +p[a+248>>3]*d);l=+p[a+120>>3];if(j+k<=l){a=0;return a|0}f=+p[a+128>>3]*f+(+p[a+136>>3]*h+ +p[a+144>>3]*e);e=+p[a+256>>3]*i+(+p[a+264>>3]*g+ +p[a+272>>3]*d);d=+p[a+152>>3];if(f+e<=d){a=0;return a|0}a=f-e<d|(j-k<l|(t-u<v|(q-r<s|m-n<o)))?1:2;return a|0}function xZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0.0;k=u;u=u+16|0;d=k;f[a>>2]=32268;g=a+4|0;f[g>>2]=0;h=a+8|0;f[h>>2]=0;f[a+12>>2]=0;f[g>>2]=f[b>>2];i=b+4|0;f[h>>2]=f[i>>2];j=b+8|0;f[a+12>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[b>>2]=0;i=a+16|0;f[i>>2]=0;j=a+20|0;f[j>>2]=0;f[a+24>>2]=0;p[a+32>>3]=+p[c>>3];p[a+40>>3]=+p[c+8>>3];p[a+48>>3]=+p[c+16>>3];g=f[g>>2]|0;h=(f[h>>2]|0)-g|0;e=(h|0)/88|0;f[d>>2]=0;b=d+4|0;f[b>>2]=0;f[d+8>>2]=0;if(!h){b=0;c=0}else{if(e>>>0>134217727)fob(d);h=Wpb(e<<5)|0;f[d>>2]=h;c=h+(e<<5)|0;f[d+8>>2]=c;f[b>>2]=c;b=h;d=0;do{p[h+(d<<5)>>3]=+p[g+(d*88|0)>>3];p[h+(d<<5)+8>>3]=+p[g+(d*88|0)+8>>3];p[h+(d<<5)+16>>3]=+p[g+(d*88|0)+16>>3];p[h+(d<<5)+24>>3]=-+p[g+(d*88|0)+24>>3];d=d+1|0}while(d>>>0<e>>>0)}f[i>>2]=b;f[j>>2]=c;f[a+24>>2]=c;if((b|0)==(c|0)){u=k;return}do{i=b+8|0;n=-+p[i>>3];j=b+16|0;m=-+p[j>>3];a=b+24|0;l=-+p[a>>3];p[b>>3]=-+p[b>>3];p[i>>3]=n;p[j>>3]=m;p[a>>3]=l;b=b+32|0}while((b|0)!=(c|0));u=k;return}function yZa(a,b){a=a|0;b=b|0;f[a>>2]=32316;p[a+8>>3]=+p[b>>3];p[a+16>>3]=+p[b+8>>3];p[a+24>>3]=+p[b+16>>3];a=a+32|0;b=b+24|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function zZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0;f[a>>2]=32364;q=a+8|0;p[q>>3]=+p[c>>3];z=a+16|0;p[z>>3]=+p[c+8>>3];e=a+24|0;p[e>>3]=+p[c+16>>3];g=a+32|0;p[g>>3]=+p[c+24>>3];h=a+40|0;p[h>>3]=+p[c+32>>3];i=a+48|0;p[i>>3]=+p[c+40>>3];j=a+56|0;p[j>>3]=+p[c+48>>3];k=a+64|0;p[k>>3]=+p[c+56>>3];l=a+72|0;p[l>>3]=+p[c+64>>3];m=a+80|0;p[m>>3]=+p[c+72>>3];n=a+88|0;p[n>>3]=+p[c+80>>3];o=a+96|0;p[o>>3]=+p[c+88>>3];r=a+104|0;p[r>>3]=+p[c+96>>3];s=a+112|0;p[s>>3]=+p[c+104>>3];t=a+120|0;p[t>>3]=+p[c+112>>3];u=a+128|0;p[u>>3]=+p[c+120>>3];v=a+136|0;p[v>>3]=+p[c+128>>3];w=a+144|0;p[w>>3]=+p[c+136>>3];x=a+152|0;p[x>>3]=+p[c+144>>3];y=a+160|0;p[y>>3]=+p[c+152>>3];p[a+168>>3]=+p[c+160>>3];p[a+176>>3]=+p[c+168>>3];p[a+184>>3]=+p[c+176>>3];p[a+192>>3]=+p[c+184>>3];p[a+200>>3]=+p[c+192>>3];p[a+208>>3]=+p[c+200>>3];p[a+216>>3]=+p[c+208>>3];p[a+224>>3]=+p[c+216>>3];p[a+232>>3]=+p[c+224>>3];p[a+240>>3]=+p[c+232>>3];p[a+248>>3]=+p[c+240>>3];p[a+256>>3]=+p[c+248>>3];p[a+264>>3]=+p[c+256>>3];p[a+272>>3]=+p[c+264>>3];p[a+280>>3]=+p[c+272>>3];p[a+288>>3]=+p[c+280>>3];p[a+296>>3]=+p[c+288>>3];p[a+304>>3]=+p[c+296>>3];p[a+312>>3]=+p[c+304>>3];p[a+320>>3]=+p[c+312>>3];p[a+328>>3]=+p[c+320>>3];p[a+336>>3]=+p[c+328>>3];p[a+344>>3]=+p[c+336>>3];p[a+352>>3]=+p[c+344>>3];p[a+360>>3]=+p[c+352>>3];p[a+368>>3]=+p[c+360>>3];p[a+376>>3]=+p[c+368>>3];p[a+384>>3]=+p[c+376>>3];p[a+392>>3]=+p[c+384>>3];p[a+400>>3]=+p[c+392>>3];A=a+408|0;c=c+400|0;d=A+40|0;do{f[A>>2]=f[c>>2];A=A+4|0;c=c+4|0}while((A|0)<(d|0));p[a+448>>3]=+p[b>>3];p[a+456>>3]=+p[b+8>>3];p[a+464>>3]=+p[b+16>>3];p[a+472>>3]=+p[b+24>>3];p[a+480>>3]=+p[b+32>>3];p[a+488>>3]=+p[b+40>>3];N=+p[q>>3];M=+p[z>>3];L=+p[e>>3];K=+p[g>>3];J=+p[h>>3];I=+p[i>>3];H=+p[j>>3];G=+p[k>>3];F=+p[l>>3];D=+p[m>>3];C=+p[n>>3];B=+p[o>>3];E=+p[r>>3];T=+p[t>>3];S=-+p[u>>3];R=+p[v>>3];Q=+p[w>>3];P=+p[x>>3];O=-+p[y>>3];p[a+600>>3]=+p[s>>3];p[a+608>>3]=T;p[a+616>>3]=S;p[a+624>>3]=R;p[a+632>>3]=Q;p[a+640>>3]=P;p[a+648>>3]=O;p[a+496>>3]=-N;p[a+504>>3]=-M;p[a+512>>3]=-L;p[a+520>>3]=K;p[a+528>>3]=-J;p[a+536>>3]=-I;p[a+544>>3]=-H;p[a+552>>3]=G;p[a+560>>3]=-F;p[a+568>>3]=-D;p[a+576>>3]=-C;p[a+584>>3]=B;z=a+600|0;B=-+p[z>>3];y=a+608|0;C=-+p[y>>3];x=a+616|0;D=-+p[x>>3];p[a+592>>3]=-E;p[z>>3]=B;p[y>>3]=C;p[x>>3]=D;x=a+624|0;y=a+632|0;D=-+p[y>>3];z=a+640|0;C=-+p[z>>3];A=a+648|0;B=-+p[A>>3];p[x>>3]=-+p[x>>3];p[y>>3]=D;p[z>>3]=C;p[A>>3]=B;return}function AZa(){if(!(b[209528]|0))rrb(209528)|0;f[52794]=215189;return}function BZa(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0.0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0;y=0;A=u;u=u+3184|0;if(b[a+23>>0]|0)if(!(f[c+196>>2]&16777216)){z=0;u=A;return z|0}if(b[a+15>>0]|0)if(!(qxa(f[(a+16|0)>>2]|0,c+116|0,b[a+14>>0]|0)|0)){z=0;u=A;return z|0}v=f[c+96>>2]|0;f[(A+456|0)>>2]=f[v>>2];f[((A+456|0)+4|0)>>2]=f[v+4>>2];f[((A+456|0)+8|0)>>2]=f[v+8>>2];f[((A+456|0)+12|0)>>2]=f[v+12>>2];f[((A+456|0)+16|0)>>2]=f[v+16>>2];f[((A+456|0)+20|0)>>2]=f[v+20>>2];f[((A+456|0)+24|0)>>2]=f[v+24>>2];f[((A+456|0)+28|0)>>2]=f[v+28>>2];f[((A+456|0)+32|0)>>2]=f[v+32>>2];f[((A+456|0)+36|0)>>2]=f[v+36>>2];f[((A+456|0)+40|0)>>2]=f[v+40>>2];f[((A+456|0)+44|0)>>2]=f[v+44>>2];f[((A+456|0)+48|0)>>2]=f[v+48>>2];f[((A+456|0)+52|0)>>2]=f[v+52>>2];f[((A+456|0)+56|0)>>2]=f[v+56>>2];f[((A+456|0)+60|0)>>2]=f[v+60>>2];Pja(f[(a+16|0)>>2]|0,0,c,A+456|0);f[A>>2]=a;f[(A+4|0)>>2]=c;c=f[c+4>>2]|0;f[(A+8|0)>>2]=c;jka(A+12|0,f[c+44>>2]|0);p[(A+96|0)>>3]=+n[(A+456|0)>>2];p[(A+104|0)>>3]=+n[((A+456|0)+4|0)>>2];p[(A+112|0)>>3]=+n[((A+456|0)+8|0)>>2];p[A+120>>3]=+n[((A+456|0)+12|0)>>2];p[(A+128|0)>>3]=+n[((A+456|0)+16|0)>>2];p[(A+136|0)>>3]=+n[((A+456|0)+20|0)>>2];p[(A+144|0)>>3]=+n[((A+456|0)+24|0)>>2];p[A+152>>3]=+n[((A+456|0)+28|0)>>2];p[(A+160|0)>>3]=+n[((A+456|0)+32|0)>>2];p[(A+168|0)>>3]=+n[((A+456|0)+36|0)>>2];p[(A+176|0)>>3]=+n[((A+456|0)+40|0)>>2];p[A+184>>3]=+n[((A+456|0)+44|0)>>2];p[(A+192|0)>>3]=+n[((A+456|0)+48|0)>>2];p[(A+200|0)>>3]=+n[((A+456|0)+52|0)>>2];p[(A+208|0)>>3]=+n[((A+456|0)+56|0)>>2];p[A+216>>3]=+n[((A+456|0)+60|0)>>2];p[(A+248|0)>>3]=C;f[(A+256|0)>>2]=g;f[(A+260|0)>>2]=h;f[(A+264|0)>>2]=i;g=f[A>>2]|0;c=(b[g+1>>0]|0)!=0;if(GYa(g)|0)if(!(f[(f[(f[(A+8|0)>>2]|0)+44>>2]|0)+24>>2]|0))v=0;else{if(c)a=(b[(f[A>>2]|0)+2>>0]|0)==0;else a=0;v=YWa(g+20|0,a,0,f[(A+4|0)>>2]|0)|0}else v=0;if(HYa(f[A>>2]|0)|0)if(!(f[(f[(f[(A+8|0)>>2]|0)+44>>2]|0)+28>>2]|0))t=0;else{if(c)a=(b[(f[A>>2]|0)+3>>0]|0)==0;else a=0;t=ZWa(g+20|0,a,0,f[(A+4|0)>>2]|0)|0}else t=0;if(IYa(f[A>>2]|0)|0)if(!(f[(f[(f[(A+8|0)>>2]|0)+44>>2]|0)+32>>2]|0))r=0;else{if(c)a=(b[(f[A>>2]|0)+4>>0]|0)==0;else a=0;r=_Wa(g+20|0,a,0,f[(A+4|0)>>2]|0)|0}else r=0;a:do{s=1;if(s){s=0;if(v|t|r){if((f[(A+256|0)>>2]|0)==0&(f[(A+260|0)>>2]|0)==0)q=(f[(A+264|0)>>2]|0)!=0;else q=1;a=f[(f[A>>2]|0)+24>>2]|0;a=Pg[f[(f[a>>2]|0)+28>>2]&255](a,d)|0;b:do switch(a|0){case 1:case 0:{z=a;break a}case 2:{if(!q){k=f[(f[A>>2]|0)+24>>2]|0;if(Ng[f[(f[k>>2]|0)+12>>2]&511](k)|0){k=f[A>>2]|0;a=f[k+64>>2]|0;k=f[k+68>>2]|0;if((a|0)==(k|0)){z=2;break a}l=+p[d>>3];m=+p[d+8>>3];o=+p[d+16>>3];j=+p[d+24>>3];i=0;while(1){c=f[a>>2]|0;h=f[a+4>>2]|0;if((c|0)==(h|0))w=(i|0)>0?i:0;else{g=2;do{B=+p[c+24>>3]+(l*+p[c>>3]+(m*+p[c+8>>3]+o*+p[c+16>>3]));d=!(B*B>=j)?1:B<0.0?0:2;g=(d|0)<(g|0)?d:g;c=c+32|0}while((c|0)!=(h|0));if((g|0)==2)break;else w=(i|0)<(g|0)?g:i}a=a+12|0;if((a|0)==(k|0)){y=33;break}else i=w}if((y|0)==33)switch(w|0){case 1:case 0:{z=2;break a}case 2:break;default:break b}z=1;break a}}break}default:{}}while(0);c=1;if(c){c=0;if(v){if((f[(A+256|0)>>2]|0)==0&(f[(A+260|0)>>2]|0)==0)a=(f[(A+264|0)>>2]|0)!=0;else a=1;qka(A+536|0,A+12|0);Rja(A+520|0,f[52794]|0);v=0;w=0;f[A+672>>2]=v;f[A+712>>2]=x;f[A+736>>2]=w;f[A+960>>2]=z;f[A+1488>>2]=q;f[A+1496>>2]=a;f[A+2952>>2]=y;f[A+3056>>2]=0;f[A+3060>>2]=0;h_a(A);x=f[A+712>>2]|0;z=f[A+960>>2]|0;y=f[A+2952>>2]|0;G=f[A+3056>>2]|0;D=f[A+3060>>2]|0;H=+n[A+3060>>2];f[A+3056>>2]=0;f[A+3060>>2]=0;if((G|0)==1)break}else c=1}if(c)if(1)x=0;w=1;f[A+616>>2]=e;f[A+712>>2]=x;f[A+960>>2]=z;f[A+1488>>2]=q;f[A+1560>>2]=t;f[A+1576>>2]=r;f[A+2952>>2]=y;f[A+2976>>2]=w;f[A+3048>>2]=0;f[A+3052>>2]=0;g_a(A);z=f[A+960>>2]|0;G=f[A+3048>>2]|0;D=f[A+3052>>2]|0;H=+n[A+3052>>2];f[A+3048>>2]=0;f[A+3052>>2]=0;if((G|0)==1)break}else s=1}if(s)if(1)z=0}while(0);a=f[A+72>>2]|0;if(a|0)Pha(a,A+60|0);a=f[(A+60|0)>>2]|0;if(a|0){c=f[(A+64|0)>>2]|0;if((c|0)!=(a|0))f[(A+64|0)>>2]=c+(~((c+-4-a|0)>>>2)<<2);Zpb(a)}a=f[A+56>>2]|0;if(a|0)Qha(a,A+44|0);a=f[(A+44|0)>>2]|0;if(a|0){c=f[(A+48|0)>>2]|0;if((c|0)!=(a|0))f[(A+48|0)>>2]=c+(~((c+-2-a|0)>>>1)<<1);Zpb(a)}u=A;return z|0}function CZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=d+4|0;g=f[r>>2]|0;q=d+8|0;h=f[q>>2]|0;if((g|0)==(h|0)){WYa(d,b);i=f[r>>2]|0;h=f[q>>2]|0}else{p[g>>3]=+p[b>>3];p[g+8>>3]=+p[b+8>>3];p[g+16>>3]=+p[b+16>>3];i=g+24|0;f[r>>2]=i}g=b+24|0;if((i|0)==(h|0)){WYa(d,g);i=f[r>>2]|0;h=f[q>>2]|0}else{p[i>>3]=+p[g>>3];p[i+8>>3]=+p[b+32>>3];p[i+16>>3]=+p[b+40>>3];i=i+24|0;f[r>>2]=i}g=b+48|0;if((i|0)==(h|0))WYa(d,g);else{p[i>>3]=+p[g>>3];p[i+8>>3]=+p[b+56>>3];p[i+16>>3]=+p[b+64>>3];f[r>>2]=i+24}g=f[e>>2]|0;o=e+4|0;h=f[o>>2]|0;if((h|0)!=(g|0))f[o>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);h=f[a>>2]|0;n=a+4|0;g=f[n>>2]|0;if((h|0)!=(g|0)){k=e;l=d;while(1){m=k;i=f[m>>2]|0;b=m+4|0;j=f[b>>2]|0;if((j|0)!=(i|0))f[b>>2]=j+(~(((j+-24-i|0)>>>0)/24|0)*24|0);j=l;i=f[j>>2]|0;j=(f[j+4>>2]|0)-(f[l>>2]|0)|0;b=i+(((j|0)/24|0)*24|0)|0;if(j|0)do{Yha(h,i,c,m,0);i=i+72|0}while((i|0)!=(b|0));h=h+12|0;if((h|0)==(g|0))break;else{m=l;l=k;k=m}}h=f[a>>2]|0;g=f[n>>2]|0}if(!(((g-h|0)/12|0)&1)){c=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=c;c=f[r>>2]|0;f[r>>2]=f[o>>2];f[o>>2]=c;e=e+8|0;c=f[q>>2]|0;f[q>>2]=f[e>>2];f[e>>2]=c}g=f[d>>2]|0;h=f[r>>2]|0;if((h|0)==(g|0))return;f[r>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);return}function DZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=u;u=u+96|0;F=I;H=c+4|0;e=f[H>>2]|0;G=c+8|0;g=f[G>>2]|0;if((e|0)==(g|0)){WYa(c,b);h=f[H>>2]|0;g=f[G>>2]|0}else{p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];h=e+24|0;f[H>>2]=h}e=b+24|0;if((h|0)==(g|0))WYa(c,e);else{p[h>>3]=+p[e>>3];p[h+8>>3]=+p[b+32>>3];p[h+16>>3]=+p[b+40>>3];f[H>>2]=h+24}e=f[d>>2]|0;E=d+4|0;g=f[E>>2]|0;if((g|0)!=(e|0))f[E>>2]=g+(~(((g+-24-e|0)>>>0)/24|0)*24|0);g=f[a>>2]|0;D=a+4|0;e=f[D>>2]|0;if((g|0)!=(e|0)){r=F+24|0;s=F+48|0;t=F+72|0;v=F+80|0;w=F+88|0;x=F+56|0;y=F+64|0;z=F+32|0;A=F+40|0;B=F+8|0;C=F+16|0;m=d;n=c;while(1){o=m;h=f[o>>2]|0;q=o+4|0;b=f[q>>2]|0;if((b|0)!=(h|0))f[q>>2]=b+(~(((b+-24-h|0)>>>0)/24|0)*24|0);l=n;h=f[l>>2]|0;l=(f[l+4>>2]|0)-(f[n>>2]|0)|0;k=h+(((l|0)/24|0)*24|0)|0;if(l|0){l=o+8|0;do{j=cia(g,h,F)|0;do if(j|0){i=f[q>>2]|0;b=f[l>>2]|0;if((i|0)==(b|0)){WYa(o,F);b=f[l>>2]|0;i=f[q>>2]|0}else{p[i>>3]=+p[F>>3];p[i+8>>3]=+p[B>>3];p[i+16>>3]=+p[C>>3];i=i+24|0;f[q>>2]=i}if((i|0)==(b|0))WYa(o,r);else{p[i>>3]=+p[r>>3];p[i+8>>3]=+p[z>>3];p[i+16>>3]=+p[A>>3];f[q>>2]=i+24}if((j|0)==2){b=f[q>>2]|0;i=f[l>>2]|0;if((b|0)==(i|0)){WYa(o,s);j=f[q>>2]|0;b=f[l>>2]|0}else{p[b>>3]=+p[s>>3];p[b+8>>3]=+p[x>>3];p[b+16>>3]=+p[y>>3];j=b+24|0;f[q>>2]=j;b=i}if((j|0)==(b|0)){WYa(o,t);break}else{p[j>>3]=+p[t>>3];p[j+8>>3]=+p[v>>3];p[j+16>>3]=+p[w>>3];f[q>>2]=j+24;break}}}while(0);h=h+48|0}while((h|0)!=(k|0))}g=g+12|0;if((g|0)==(e|0))break;else{q=n;n=m;m=q}}g=f[a>>2]|0;e=f[D>>2]|0}if(!(((e-g|0)/12|0)&1)){F=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=F;F=f[H>>2]|0;f[H>>2]=f[E>>2];f[E>>2]=F;d=d+8|0;F=f[G>>2]|0;f[G>>2]=f[d>>2];f[d>>2]=F}e=f[c>>2]|0;g=f[H>>2]|0;if((g|0)==(e|0)){u=I;return}f[H>>2]=g+(~(((g+-24-e|0)>>>0)/24|0)*24|0);u=I;return}function EZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;f[a>>2]=32412;k=a+8|0;j=f[k>>2]|0;l=a+12|0;c=f[l>>2]|0;d=j;if((c|0)!=(j|0))f[l>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);f[a+4>>2]=d;i=a+24|0;j=a+28|0;d=f[j>>2]|0;g=f[i>>2]|0;e=g;c=d;if((d|0)!=(g|0)){h=0;do{e=f[e+(h<<2)>>2]|0;if(e){_pb(e);c=f[j>>2]|0;g=f[i>>2]|0;d=c}h=h+1|0;e=g}while(h>>>0<d-g>>2>>>0);d=g}if((c|0)!=(e|0))f[j>>2]=c+(~((c+-4-d|0)>>>2)<<2);b[a+20>>0]=0;b[a+37>>0]=0;c=f[a+56>>2]|0;if(c|0){d=a+60|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+40>>2]|0;if(c|0){d=a+44|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+24>>2]|0;if(c|0){d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}c=f[k>>2]|0;if(!c)return;d=f[l>>2]|0;if((d|0)!=(c|0))f[l>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);return}function FZa(a){a=a|0;EZa(a);Zpb(a);return}function GZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;r=0;s=u;u=u+1120|0;if((c|0)==1&(d^1)){r=FIa(212344,192175,36)|0;_fb(s+12|0,r+(f[(f[r>>2]|0)+-12>>2]|0)|0);d=Chb(s+12|0,213216)|0;d=Pg[f[(f[d>>2]|0)+28>>2]&255](d,10)|0;Dhb(s+12|0);rgb(r,d)|0;dgb(r)|0;r=0;u=s;return r|0}i=f[b>>2]|0;e=(f[b+4>>2]|0)-i|0;a:do if((e|0)>8&d){h=f[i>>2]|0;e=(e>>3)+-1|0;while(1){if((f[i+(e<<3)>>2]|0)!=(h|0))break a;if((f[i+(e<<3)+4>>2]|0)!=(f[(i+4|0)>>2]|0))break a;g=e+-1|0;if((e|0)>1)e=g;else{e=g;break}}}else e=(e>>3)+-1|0;while(0);while(1){if((e|0)<=0)break;g=e+-1|0;if((f[i+(e<<3)>>2]|0)!=(f[i+(g<<3)>>2]|0))break;if((f[i+(e<<3)+4>>2]|0)==(f[i+(g<<3)+4>>2]|0))e=g;else break}if(d?(e|0)<2:(e|0)<1){r=0;u=s;return r|0}h=e+1|0;p=Xpb(h>>>0>48806446?-1:h*88|0)|0;if(!h)g=i;else{g=p;do{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;g=g+88|0}while((g|0)!=(p+(h*88|0)|0|0));g=f[b>>2]|0}f[(s+12|0)>>2]=p;m=g+8|0;o=f[m+4>>2]|0;f[(p+96|0)>>2]=f[m>>2];f[(p+96|0)+4>>2]=o;b:do{o=1;if(o){o=0;if(NZa(g,a+20|0)|0){if(!(NZa((f[b>>2]|0)+(e<<3)|0,a+20|0)|0)){_pb(p);q=0;break}g=p+(e*88|0)|0;j=f[b>>2]|0;l=p;m=l+88|0;do{f[l>>2]=0;l=l+4|0}while((l|0)<(m|0));f[p+56>>2]=p+88|0;f[p+60>>2]=g;h=f[j+4>>2]|0;f[(p+8|0)>>2]=f[j>>2];f[(p+8|0)+4>>2]=h;f[p+52>>2]=-1;h=e+-1|0;i=j+(e<<3)|0;l=g;m=l+88|0;do{f[l>>2]=0;l=l+4|0}while((l|0)<(m|0));f[p+(e*88|0)+56>>2]=p;f[p+(e*88|0)+60>>2]=p+(h*88|0)|0;l=f[i+4>>2]|0;m=p+(e*88|0)+8|0;f[m>>2]=f[i>>2];f[m+4>>2]=l;f[p+(e*88|0)+52>>2]=-1;if((e|0)>1){g=j;do{NZa(g+(h<<3)|0,a+20|0)|0;i=p+((h+1|0)*88|0)|0;e=h;h=h+-1|0;j=p+(h*88|0)|0;g=f[b>>2]|0;k=g+(e<<3)|0;l=p+(e*88|0)|0;m=l+88|0;do{f[l>>2]=0;l=l+4|0}while((l|0)<(m|0));f[p+(e*88|0)+56>>2]=i;f[p+(e*88|0)+60>>2]=j;m=f[k+4>>2]|0;f[(p+(e*88|0)+8|0)>>2]=f[k>>2];f[(p+(e*88|0)+8|0)+4>>2]=m;f[p+(e*88|0)+52>>2]=-1}while((e|0)>1)}m=p;b=p;f[s+32>>2]=a;f[s+48>>2]=c;f[s+56>>2]=d;f[s+112>>2]=m;f[s+136>>2]=b;f[s+224>>2]=q;f[s+920>>2]=p;f[s+1048>>2]=r;f[s+1064>>2]=0;f[s+1068>>2]=0;i_a(s);q=f[s+224>>2]|0;G=f[s+1064>>2]|0;D=f[s+1068>>2]|0;H=+n[s+1068>>2];f[s+1064>>2]=0;f[s+1068>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:break b}}else o=1}if(o)if(1){_pb(p);q=0}}while(0);r=q;u=s;return r|0}function HZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[a+8>>2]|0;c=a+12|0;d=f[c>>2]|0;e=j;if((d|0)!=(j|0))f[c>>2]=d+(~(((d+-12-e|0)>>>0)/12|0)*12|0);f[a+4>>2]=e;i=a+24|0;j=a+28|0;d=f[j>>2]|0;g=f[i>>2]|0;e=g;c=d;if((d|0)!=(g|0)){h=0;do{e=f[e+(h<<2)>>2]|0;if(e){_pb(e);c=f[j>>2]|0;g=f[i>>2]|0;d=c}h=h+1|0;e=g}while(h>>>0<d-g>>2>>>0);d=g}if((c|0)==(e|0)){j=a+20|0;b[j>>0]=0;a=a+37|0;b[a>>0]=0;return}f[j>>2]=c+(~((c+-4-d|0)>>>2)<<2);j=a+20|0;b[j>>0]=0;a=a+37|0;b[a>>0]=0;return}function IZa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+16|0;m=q;n=a+8|0;b=f[n>>2]|0;p=a+4|0;f[p>>2]=b;o=a+12|0;c=f[o>>2]|0;if((c|0)==(b|0)){u=q;return}JZa(b,c,m);l=a+56|0;c=f[l>>2]|0;k=a+60|0;if(!c)b=a+64|0;else{b=f[k>>2]|0;if((b|0)!=(c|0))f[k>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);b=a+64|0;f[b>>2]=0;f[k>>2]=0;f[l>>2]=0}f[l>>2]=0;f[k>>2]=0;f[b>>2]=0;b=f[n>>2]|0;if((b|0)!=(f[o>>2]|0)){j=a+64|0;d=0;e=0;while(1){c=f[b>>2]|0;f[m>>2]=c;if((d|0)==(e|0)){KZa(l,m);d=f[k>>2]|0}else{f[d>>2]=c;d=d+4|0;f[k>>2]=d}i=f[l>>2]|0;c=d-i|0;if((c|0)>4){e=((c>>>2)+-2|0)/2|0;g=i+(e<<2)|0;c=d+-4|0;d=f[g>>2]|0;h=f[c>>2]|0;if((d|0)<(h|0)){while(1){f[c>>2]=d;if(!e)break;e=(e+-1|0)/2|0;c=i+(e<<2)|0;d=f[c>>2]|0;if((d|0)>=(h|0))break;else{r=g;g=c;c=r}}f[g>>2]=h}}c=f[b+4>>2]|0;if(c|0){h=c;i=f[h+4>>2]|0;r=c+8|0;f[r>>2]=f[h>>2];f[r+4>>2]=i;f[c+36>>2]=1;f[c+52>>2]=-1}c=f[b+8>>2]|0;if(c|0){h=c;i=f[h+4>>2]|0;r=c+8|0;f[r>>2]=f[h>>2];f[r+4>>2]=i;f[c+36>>2]=2;f[c+52>>2]=-1}b=b+12|0;if((b|0)==(f[o>>2]|0))break;d=f[k>>2]|0;e=f[j>>2]|0}b=f[n>>2]|0}f[a+52>>2]=0;f[p>>2]=b;u=q;return}function JZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=0;l=u;u=u+736|0;j=b;a:while(1){d=j;i=j+-12|0;b=a;while(1){k=b;f[l+48>>2]=c;f[l+56>>2]=b;f[l+120>>2]=j;f[l+152>>2]=k;f[l+288>>2]=e;f[l+408>>2]=g;f[l+464>>2]=d;f[l+512>>2]=i;f[l+640>>2]=h;f[l+664>>2]=0;f[l+668>>2]=0;j_a(l);b=f[l+56>>2]|0;k=f[l+152>>2]|0;e=f[l+288>>2]|0;g=f[l+408>>2]|0;h=f[l+640>>2]|0;G=f[l+664>>2]|0;D=f[l+668>>2]|0;H=+n[l+668>>2];f[l+664>>2]=0;f[l+668>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break a}if((G|0)==3)continue}if((h|0)==81){h=0;JZa(e+12|0,j,c);a=k;j=e;continue}else if((h|0)==82){h=0;if(g){h=83;break}else{a=k;j=e;continue}}}a=1;if(a)if((h|0)==5){if((f[k>>2]|0)>=(f[i>>2]|0)){u=l;return};f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];u=l;return}else if((h|0)==7){a=k+12|0;j=f[a>>2]|0;b=(j|0)<(f[i>>2]|0);if((f[k>>2]|0)>=(j|0)){if(!b){u=l;return};f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];if((f[k>>2]|0)>=(f[a>>2]|0)){u=l;return};f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];u=l;return}if(b){f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];u=l;return};f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];if((f[a>>2]|0)>=(f[i>>2]|0)){u=l;return};f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];u=l;return}else if((h|0)==15){LZa(k,k+12|0,k+24|0,i,c)|0;u=l;return}else a=1;if(a)if((h|0)==16){a=k+12|0;b=k+24|0;d=k+36|0;LZa(k,a,b,d,c)|0;if((f[d>>2]|0)>=(f[i>>2]|0)){u=l;return};f[l>>2]=f[d>>2];f[l+4>>2]=f[d+4>>2];f[l+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];if((f[b>>2]|0)>=(f[d>>2]|0)){u=l;return};f[l>>2]=f[b>>2];f[l+4>>2]=f[b+4>>2];f[l+8>>2]=f[b+8>>2];f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];if((f[a>>2]|0)>=(f[b>>2]|0)){u=l;return};f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[l>>2];f[b+4>>2]=f[l+4>>2];f[b+8>>2]=f[l+8>>2];if((f[k>>2]|0)>=(f[a>>2]|0)){u=l;return};f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];u=l;return}else a=1;if(a)if((h|0)==22){b=k+24|0;a=k+12|0;d=f[k>>2]|0;e=f[a>>2]|0;g=f[b>>2]|0;do if((d|0)<(e|0)){if((e|0)<(g|0)){f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[b>>2];f[k+4>>2]=f[b+4>>2];f[k+8>>2]=f[b+8>>2];f[b>>2]=f[l>>2];f[b+4>>2]=f[l+4>>2];f[b+8>>2]=f[l+8>>2];break};f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];if((f[a>>2]|0)<(g|0)){f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[l>>2];f[b+4>>2]=f[l+4>>2];f[b+8>>2]=f[l+8>>2]}}else if((e|0)<(g|0)){f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[l>>2];f[b+4>>2]=f[l+4>>2];f[b+8>>2]=f[l+8>>2];if((d|0)<(f[a>>2]|0)){f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2]}}while(0);a=k+36|0;if((a|0)==(j|0)){u=l;return}while(1){e=f[a>>2]|0;if((f[b>>2]|0)<(e|0)){h=a+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;d=a;while(1){f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];if((b|0)==(k|0)){b=k;break}d=b+-12|0;if((f[d>>2]|0)<(e|0)){i=b;b=d;d=i}else break}f[b>>2]=e;i=b+4|0;f[i>>2]=g;f[i+4>>2]=h}b=a+12|0;if((b|0)==(j|0))break;else{i=a;a=b;b=i}}u=l;return}else a=1;if(a)if((h|0)==83)if(1){u=l;return}}function KZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function LZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+16|0;g=h;i=f[b>>2]|0;e=(i|0)<(f[c>>2]|0);do if((f[a>>2]|0)<(i|0)){if(e){f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];e=1;break};f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];if((f[b>>2]|0)<(f[c>>2]|0)){f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];e=2}else e=1}else if(e){f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];if((f[a>>2]|0)<(f[b>>2]|0)){f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];e=2}else e=1}else e=0;while(0);if((f[c>>2]|0)>=(f[d>>2]|0)){i=e;u=h;return i|0};f[g>>2]=f[c>>2];f[g+4>>2]=f[c+4>>2];f[g+8>>2]=f[c+8>>2];f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];if((f[b>>2]|0)>=(f[c>>2]|0)){i=e+1|0;u=h;return i|0};f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];if((f[a>>2]|0)>=(f[b>>2]|0)){i=e+2|0;u=h;return i|0};f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];i=e+3|0;u=h;return i|0}function MZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;switch((b-a|0)/12|0|0){case 2:{d=b+-12|0;if((f[a>>2]|0)>=(f[d>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];i=1;u=j;return i|0}case 3:{e=a+12|0;d=b+-12|0;b=f[e>>2]|0;c=(b|0)<(f[d>>2]|0);if((f[a>>2]|0)>=(b|0)){if(!c){i=1;u=j;return i|0};f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];if((f[a>>2]|0)>=(f[e>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];i=1;u=j;return i|0}if(c){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];i=1;u=j;return i|0};f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];if((f[e>>2]|0)>=(f[d>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];i=1;u=j;return i|0}case 4:{LZa(a,a+12|0,a+24|0,b+-12|0,c)|0;i=1;u=j;return i|0}case 5:{e=a+12|0;g=a+24|0;h=a+36|0;d=b+-12|0;LZa(a,e,g,h,c)|0;if((f[h>>2]|0)>=(f[d>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[h>>2]=f[d>>2];f[h+4>>2]=f[d+4>>2];f[h+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];if((f[g>>2]|0)>=(f[h>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[g>>2];f[i+4>>2]=f[g+4>>2];f[i+8>>2]=f[g+8>>2];f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];if((f[e>>2]|0)>=(f[g>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];if((f[a>>2]|0)>=(f[e>>2]|0)){i=1;u=j;return i|0};f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];i=1;u=j;return i|0}case 1:case 0:{i=1;u=j;return i|0}default:{e=a+24|0;d=a+12|0;c=f[a>>2]|0;k=f[d>>2]|0;g=f[e>>2]|0;h=(k|0)<(g|0);do if((c|0)<(k|0)){if(h){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];break};f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];if((f[d>>2]|0)<(g|0)){f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];f[i+8>>2]=f[d+8>>2];f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}}else if(h){f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];f[i+8>>2]=f[d+8>>2];f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];if((c|0)<(f[d>>2]|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2]}}while(0);d=a+36|0;a:do if((d|0)==(b|0)){c=1;d=0}else{c=0;while(1){h=f[d>>2]|0;if((f[e>>2]|0)<(h|0)){l=d+4|0;k=f[l+4>>2]|0;g=i;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=d;while(1){f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];if((e|0)==(a|0)){e=a;break}g=e+-12|0;if((f[g>>2]|0)<(h|0)){l=e;e=g;g=l}else break}f[e>>2]=h;h=i;k=f[h+4>>2]|0;l=e+4|0;f[l>>2]=f[h>>2];f[l+4>>2]=k;c=c+1|0;if((c|0)==8){c=0;d=(d+12|0)==(b|0);break a}}e=d+12|0;if((e|0)==(b|0)){c=1;d=0;break}else{l=d;d=e;e=l}}}while(0);l=d|c;u=j;return l|0}}return 0}function NZa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=f[a>>2]|0;g=(e|0)>32767;if(!(b[c>>0]|0)){if(!g)if(!((e|0)<-32767?1:((f[a+4>>2]|0)+32767|0)>>>0>65534)){g=1;u=h;return g|0}b[c>>0]=1;g=NZa(a,c)|0;u=h;return g|0}else{c=a+4|0;if(!g)if(!((e|0)<-32767?1:((f[c>>2]|0)+32767|0)>>>0>65534)){g=1;u=h;return g|0}g=FIa(212344,192212,45)|0;g=FIa(mgb(g,f[a>>2]|0)|0,192258,3)|0;g=mgb(g,f[c>>2]|0)|0;_fb(d,g+(f[(f[g>>2]|0)+-12>>2]|0)|0);e=Chb(d,213216)|0;e=Pg[f[(f[e>>2]|0)+28>>2]&255](e,10)|0;Dhb(d);rgb(g,e)|0;dgb(g)|0;g=0;u=h;return g|0}return 0}function OZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function PZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function QZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;if((f[b+52>>2]|0)==-2){a:do if(c){d=b;while(1){e=f[d+56>>2]|0;if((f[d+20>>2]|0)==(f[e+4>>2]|0))d=e;else break}if((d|0)!=(b|0))do{if(!(+p[d+24>>3]==-1.e+40)){h=11;break a}d=f[d+60>>2]|0}while((d|0)!=(b|0))}else{d=b;while(1){e=f[d+60>>2]|0;if((f[d+20>>2]|0)==(f[e+4>>2]|0))d=e;else break}if((d|0)!=(b|0))do{if(!(+p[d+24>>3]==-1.e+40)){h=11;break a}d=f[d+56>>2]|0}while((d|0)!=(b|0))}while(0);if((h|0)==11)if((d|0)!=(b|0)){d=f[(c?b+56|0:b+60|0)>>2]|0;f[i>>2]=f[d+4>>2];f[i+4>>2]=0;f[i+8>>2]=d;f[d+40>>2]=0;d=QZa(a,d,c)|0;e=a+12|0;h=f[e>>2]|0;if((h|0)==(f[a+16>>2]|0))OZa(a+8|0,i);else{f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[e>>2]=(f[e>>2]|0)+12}b=d;u=j;return b|0}if(c){b=f[b+56>>2]|0;u=j;return b|0}else{b=f[b+60>>2]|0;u=j;return b|0}}g=+p[b+24>>3];do if(g==-1.e+40){d=f[(c?b+60|0:b+56|0)>>2]|0;e=f[b>>2]|0;h=(f[d>>2]|0)!=(e|0);if(!(+p[d+24>>3]==-1.e+40)){if(!h)break;a=b+16|0;i=f[a>>2]|0;f[a>>2]=e;f[b>>2]=i;break}if(h)if((f[d+16>>2]|0)!=(e|0)){a=b+16|0;i=f[a>>2]|0;f[a>>2]=e;f[b>>2]=i}}while(0);if(c){e=b;while(1){h=f[e+56>>2]|0;if((f[e+20>>2]|0)!=(f[h+4>>2]|0))break;if((f[h+52>>2]|0)==-2)break;else e=h}if(+p[e+24>>3]==-1.e+40)if((f[h+52>>2]|0)!=-2){d=e;do d=f[d+60>>2]|0;while(+p[d+24>>3]==-1.e+40);e=(f[d+16>>2]|0)>(f[h+16>>2]|0)?d:e}if((e|0)!=(b|0)){a=b;while(1){h=f[a+56>>2]|0;f[a+64>>2]=h;if(!((a|0)==(b|0)|g!=-1.e+40)){d=f[a>>2]|0;if((d|0)!=(f[(f[a+60>>2]|0)+16>>2]|0)){i=a+16|0;c=f[i>>2]|0;f[i>>2]=d;f[a>>2]=c}}if((e|0)==(h|0))break;a=h;g=+p[h+24>>3]}if(!((e|0)==(b|0)?1:+p[e+24>>3]!=-1.e+40)){d=f[e>>2]|0;if((d|0)!=(f[(f[e+60>>2]|0)+16>>2]|0)){c=e+16|0;b=f[c>>2]|0;f[c>>2]=d;f[e>>2]=b}}}d=e+56|0}else{e=b;while(1){h=f[e+60>>2]|0;if((f[e+20>>2]|0)!=(f[h+4>>2]|0))break;if((f[h+52>>2]|0)==-2)break;else e=h}if(+p[e+24>>3]==-1.e+40)if((f[h+52>>2]|0)!=-2){d=e;do d=f[d+56>>2]|0;while(+p[d+24>>3]==-1.e+40);e=(f[d+16>>2]|0)>=(f[h+16>>2]|0)?d:e}if((e|0)!=(b|0)){a=b;while(1){h=f[a+60>>2]|0;f[a+64>>2]=h;if(!((a|0)==(b|0)|g!=-1.e+40)){d=f[a>>2]|0;if((d|0)!=(f[(f[a+56>>2]|0)+16>>2]|0)){i=a+16|0;c=f[i>>2]|0;f[i>>2]=d;f[a>>2]=c}}if((e|0)==(h|0))break;a=h;g=+p[h+24>>3]}if(!((e|0)==(b|0)?1:+p[e+24>>3]!=-1.e+40)){d=f[e>>2]|0;if((d|0)!=(f[(f[e+56>>2]|0)+16>>2]|0)){c=e+16|0;b=f[c>>2]|0;f[c>>2]=d;f[e>>2]=b}}}d=e+60|0}b=f[d>>2]|0;u=j;return b|0}function RZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;p=s;q=a+76|0;IZa(q);f[r>>2]=r;d=r+4|0;f[d>>2]=r;e=r+8|0;f[e>>2]=0;g=a+44|0;h=a+52|0;if(f[h>>2]|0){c=f[a+48>>2]|0;o=(f[g>>2]|0)+4|0;n=f[c>>2]|0;f[n+4>>2]=f[o>>2];f[f[o>>2]>>2]=n;f[h>>2]=0;if((c|0)!=(g|0)){do{o=c;c=f[c+4>>2]|0;Zpb(o)}while((c|0)!=(g|0));c=f[e>>2]|0;if(c|0){m=f[d>>2]|0;n=f[r>>2]|0;o=n+4|0;l=f[m>>2]|0;f[l+4>>2]=f[o>>2];f[f[o>>2]>>2]=l;l=f[g>>2]|0;f[l+4>>2]=m;f[m>>2]=l;f[g>>2]=n;f[o>>2]=g;f[h>>2]=(f[h>>2]|0)+c;f[e>>2]=0}}}k=a+56|0;f[k>>2]=0;do if(WZa(q,r)|0){c=f[r>>2]|0;XZa(a,c);l=a+88|0;m=a+80|0;n=a+16|0;o=a+20|0;a:while(1){if(!(WZa(q,p)|0))if((f[m>>2]|0)==(f[l>>2]|0)){p=26;break}while(1){d=f[k>>2]|0;if(!d)break;e=d+80|0;g=f[e>>2]|0;h=d+76|0;i=f[h>>2]|0;f[(g|0?g+76|0:k)>>2]=i;if(i|0)f[i+80>>2]=g;f[h>>2]=0;f[e>>2]=0;if(!(YZa(a,d)|0)){p=23;break a}}c=f[o>>2]|0;d=f[n>>2]|0;if((c|0)!=(d|0)){g=0;do{e=f[d+(g<<2)>>2]|0;if(e){Zpb(e);c=f[o>>2]|0;d=f[n>>2]|0}g=g+1|0;e=c-d>>2}while(g>>>0<e>>>0);if(!((d|0)==(c|0)|(e|0)==0))f[o>>2]=c+(~((c+-4-d|0)>>>2)<<2)}c=f[p>>2]|0;if(!(ZZa(a,c)|0)){p=25;break}if(!(_Za(a,c)|0)){p=25;break}XZa(a,c)}if((p|0)==23){f[r>>2]=c;p=24;break}else if((p|0)==25){k=0;break}else if((p|0)==26){n=a+116|0;o=a+120|0;e=f[o>>2]|0;d=f[n>>2]|0;c=d;if((e|0)!=(d|0)){l=a+72|0;m=e-d>>2;i=0;do{g=f[c+(i<<2)>>2]|0;k=f[g+16>>2]|0;if(k|0)if(!(b[g+5>>0]|0)){h=b[l>>0]^b[g+4>>0];j=0.0;g=k;do{r=f[g+16>>2]|0;j=j+ +((f[g+4>>2]|0)+(f[r+4>>2]|0)|0)*+((f[r+8>>2]|0)-(f[g+8>>2]|0)|0);g=f[g+12>>2]|0}while((g|0)!=(k|0));if((h&255|0)==(j*.5>0.0|0)){g=k;do{q=g+12|0;r=g;g=f[q>>2]|0;r=r+16|0;f[q>>2]=f[r>>2];f[r>>2]=g}while((g|0)!=(k|0))}}i=i+1|0}while(i>>>0<m>>>0)}if((f[a+4>>2]|0)!=(f[a+8>>2]|0)){$Za(a);c=f[n>>2]|0;e=f[o>>2]|0;d=c}if((e|0)!=(d|0)){h=0;do{c=f[c+(h<<2)>>2]|0;g=c+16|0;d=f[g>>2]|0;do if(d|0){if(!(b[c+5>>0]|0)){a_a(a,c);break}c=f[d+16>>2]|0;b:do if((c|0)==(d|0))c=d;else while(1){while(1){d=f[d+12>>2]|0;e=f[d+16>>2]|0;if((f[d+4>>2]|0)==(f[e+4>>2]|0))if((f[d+8>>2]|0)==(f[e+8>>2]|0))break;if((c|0)==(d|0))break b}c=(d|0)==(c|0)?e:c;r=d+12|0;f[e+12>>2]=f[r>>2];f[(f[r>>2]|0)+16>>2]=e;Zpb(d);if((c|0)==(e|0)){c=e;break}else d=e}while(0);if((f[c+16>>2]|0)==(c|0)){Zpb(c);f[g>>2]=0}}while(0);h=h+1|0;c=f[n>>2]|0}while(h>>>0<(f[o>>2]|0)-c>>2>>>0)}if(!(b[a+74>>0]|0)){k=1;break}b_a(a);k=1;break}}else p=24;while(0);if((p|0)==24)k=0;h=a+4|0;i=a+8|0;c=f[i>>2]|0;d=f[h>>2]|0;if((c|0)!=(d|0)){g=0;do{e=f[d+(g<<2)>>2]|0;if(e){Zpb(e);c=f[i>>2]|0;d=f[h>>2]|0}g=g+1|0;e=c-d>>2}while(g>>>0<e>>>0);if(!((d|0)==(c|0)|(e|0)==0))f[i>>2]=c+(~((c+-4-d|0)>>>2)<<2)}h=a+16|0;i=a+20|0;c=f[i>>2]|0;d=f[h>>2]|0;if((c|0)==(d|0)){u=s;return k|0}else g=0;do{e=f[d+(g<<2)>>2]|0;if(e){Zpb(e);c=f[i>>2]|0;d=f[h>>2]|0}g=g+1|0;e=c-d>>2}while(g>>>0<e>>>0);if((d|0)==(c|0)|(e|0)==0){u=s;return k|0}f[i>>2]=c+(~((c+-4-d|0)>>>2)<<2);u=s;return k|0}function SZa(a){a=a|0;PJa(a,32500);EZa(a+76|0);return}function TZa(a){a=a|0;PJa(a,32500);EZa(a+76|0);Zpb(a);return}function UZa(a){a=a|0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;PJa(a,32500);EZa(a+76|0);return}function VZa(a){a=a|0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;PJa(a,32500);EZa(a+76|0);Zpb(a);return}function WZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f[a+56>>2]|0;p=a+60|0;a=f[p>>2]|0;if((r|0)==(a|0)){r=0;return r|0}f[b>>2]=f[r>>2];q=r;d=a-q|0;c=d>>2;k=a+-4|0;if((d|0)>4){j=f[r>>2]|0;f[r>>2]=f[k>>2];f[k>>2]=j;j=c+-1|0;if((c|0)!=2){i=(c+-3|0)/2|0;a=r+4|0;c=a;if((d|0)>12){o=r+8|0;n=(f[a>>2]|0)<(f[o>>2]|0);a=n?2:1;c=n?o:c}else a=1;d=f[c>>2]|0;h=f[r>>2]|0;if((d|0)>=(h|0)){g=r;do{o=g;g=c;f[o>>2]=d;if((i|0)<(a|0))break;a=a<<1|1;d=r+(a<<2)|0;c=d;e=a+1|0;if((e|0)<(j|0)){o=d+4|0;n=(f[d>>2]|0)<(f[o>>2]|0);a=n?e:a;c=n?o:c}d=f[c>>2]|0}while((d|0)>=(h|0));f[g>>2]=h}}}f[p>>2]=k;if((r|0)==(k|0)){r=1;return r|0}l=r+4|0;m=l;n=r+8|0;o=n;while(1){a=f[b>>2]|0;if((a|0)!=(f[r>>2]|0)){a=1;c=26;break}d=k-q|0;c=d>>2;k=k+-4|0;if((d|0)>4){f[r>>2]=f[k>>2];f[k>>2]=a;j=c+-1|0;if((c|0)!=2){i=(c+-3|0)/2|0;if((d|0)>12){c=(f[l>>2]|0)<(f[n>>2]|0);a=c?2:1;c=c?o:m}else{a=1;c=m}d=f[c>>2]|0;h=f[r>>2]|0;if((d|0)>=(h|0)){g=r;do{e=g;g=c;f[e>>2]=d;if((i|0)<(a|0))break;a=a<<1|1;d=r+(a<<2)|0;c=d;e=a+1|0;if((e|0)<(j|0)){s=d+4|0;d=(f[d>>2]|0)<(f[s>>2]|0);a=d?e:a;c=d?s:c}d=f[c>>2]|0}while((d|0)>=(h|0));f[g>>2]=h}}}f[p>>2]=k;if((r|0)==(k|0)){a=1;c=26;break}}if((c|0)==26)return a|0;return 0}function XZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0;F=u;u=u+16|0;A=F;B=a+88|0;C=a+80|0;c=f[C>>2]|0;if((c|0)==(f[B>>2]|0)){u=F;return}D=a+132|0;E=a+136|0;r=a+140|0;s=a+128|0;t=a+56|0;v=a+8|0;w=a+12|0;x=a+4|0;y=a+16|0;z=a+20|0;while(1){if((f[c>>2]|0)!=(b|0)){c=107;break}f[C>>2]=c+12;o=f[c+4>>2]|0;q=f[c+8>>2]|0;n=(o|0)!=0;do if(n){H_a(a,o,0);if(!q){I_a(a,o);if(J_a(a,o)|0)j=q_a(a,o,o)|0;else j=0;c=f[o+20>>2]|0;f[A>>2]=c;d=f[E>>2]|0;if((d|0)==(f[r>>2]|0)){KZa(D,A);d=f[E>>2]|0}else{f[d>>2]=c;d=d+4|0;f[E>>2]=d}i=f[D>>2]|0;c=d-i|0;if((c|0)>4){e=((c>>>2)+-2|0)/2|0;g=i+(e<<2)|0;c=d+-4|0;d=f[g>>2]|0;h=f[c>>2]|0;if((d|0)<(h|0)){while(1){f[c>>2]=d;if(!e)break;e=(e+-1|0)/2|0;c=i+(e<<2)|0;d=f[c>>2]|0;if((d|0)>=(h|0))break;else{m=g;g=c;c=m}}f[g>>2]=h}}break}if(!(f[s>>2]|0)){f[q+72>>2]=0;f[q+68>>2]=0;c=s}else{i=q+20|0;j=q+16|0;k=q+24|0;l=q+4|0;c=o+68|0;d=f[c>>2]|0;a:do if(!d){e=o;d=0}else{m=f[q+8>>2]|0;e=o;while(1){g=f[d+8>>2]|0;do if((m|0)==(g|0)){g=f[i>>2]|0;h=f[d+20>>2]|0;if((g|0)>(h|0)){G=+p[d+24>>3]*+(g-(f[d+4>>2]|0)|0);if((f[j>>2]|0)<((f[d>>2]|0)+~~(G+(G<0.0?-.5:.5))|0))break a;else break}if((g|0)==(h|0))g=f[j>>2]|0;else{G=+p[k>>3]*+(h-(f[l>>2]|0)|0);g=(f[q>>2]|0)+~~(G+(G<0.0?-.5:.5))|0}if((f[d+16>>2]|0)>(g|0))break a}else if((m|0)<(g|0))break a;while(0);c=d+68|0;e=f[c>>2]|0;if(!e){e=d;d=0;break}else{h=d;d=e;e=h}}}while(0);f[q+68>>2]=d;d=f[c>>2]|0;if(d|0)f[d+72>>2]=q;f[q+72>>2]=e}f[c>>2]=q;I_a(a,o);f[q+44>>2]=f[o+44>>2];f[q+48>>2]=f[o+48>>2];if(J_a(a,o)|0)j=w_a(a,o,q,o)|0;else j=0;c=f[o+20>>2]|0;f[A>>2]=c;d=f[E>>2]|0;if((d|0)==(f[r>>2]|0)){KZa(D,A);d=f[E>>2]|0}else{f[d>>2]=c;d=d+4|0;f[E>>2]=d}i=f[D>>2]|0;c=d-i|0;if((c|0)>4){e=((c>>>2)+-2|0)/2|0;g=i+(e<<2)|0;c=d+-4|0;d=f[g>>2]|0;h=f[c>>2]|0;if((d|0)<(h|0)){while(1){f[c>>2]=d;if(!e)break;e=(e+-1|0)/2|0;c=i+(e<<2)|0;d=f[c>>2]|0;if((d|0)>=(h|0))break;else{m=g;g=c;c=m}}f[g>>2]=h}}}else{H_a(a,q,0);I_a(a,q);if(J_a(a,q)|0)j=q_a(a,q,q)|0;else j=0}while(0);if(q|0){k=q+24|0;if(+p[k>>3]==-1.e+40){c=f[t>>2]|0;if(!c){f[t>>2]=q;f[q+80>>2]=0;c=0}else{f[q+80>>2]=0;f[c+80>>2]=q;f[t>>2]=q}f[q+76>>2]=c;c=f[q+64>>2]|0;if(c|0){c=f[c+20>>2]|0;f[A>>2]=c;d=f[E>>2]|0;if((d|0)==(f[r>>2]|0)){KZa(D,A);d=f[E>>2]|0}else{f[d>>2]=c;d=d+4|0;f[E>>2]=d}i=f[D>>2]|0;c=d-i|0;if((c|0)>4){e=((c>>>2)+-2|0)/2|0;g=i+(e<<2)|0;c=d+-4|0;d=f[g>>2]|0;h=f[c>>2]|0;if((d|0)<(h|0)){while(1){f[c>>2]=d;if(!e)break;e=(e+-1|0)/2|0;c=i+(e<<2)|0;d=f[c>>2]|0;if((d|0)>=(h|0))break;else{m=g;g=c;c=m}}f[g>>2]=h}}}}else{c=f[q+20>>2]|0;f[A>>2]=c;d=f[E>>2]|0;if((d|0)==(f[r>>2]|0)){KZa(D,A);d=f[E>>2]|0}else{f[d>>2]=c;d=d+4|0;f[E>>2]=d}i=f[D>>2]|0;c=d-i|0;if((c|0)>4){e=((c>>>2)+-2|0)/2|0;g=i+(e<<2)|0;c=d+-4|0;d=f[g>>2]|0;h=f[c>>2]|0;if((d|0)<(h|0)){while(1){f[c>>2]=d;if(!e)break;e=(e+-1|0)/2|0;c=i+(e<<2)|0;d=f[c>>2]|0;if((d|0)>=(h|0))break;else{m=g;g=c;c=m}}f[g>>2]=h}}}if(n){if(j|0)if(+p[k>>3]==-1.e+40){d=f[z>>2]|0;c=f[y>>2]|0;if((d|0)!=(c|0))if(f[q+40>>2]|0){i=q+16|0;h=0;do{e=f[c+(h<<2)>>2]|0;g=f[e>>2]|0;m=f[g+4>>2]|0;e=e+8|0;n=f[e>>2]|0;k=f[q>>2]|0;H=f[i>>2]|0;l=(m|0)>(n|0);I=(k|0)>(H|0);if(((l?n:m)|0)<((I?k:H)|0)?((I?H:k)|0)<((l?m:n)|0):0){I=e;H=f[I>>2]|0;I=f[I+4>>2]|0;d=Wpb(16)|0;f[A>>2]=d;f[d>>2]=g;f[d+4>>2]=j;c=d+8|0;f[c>>2]=H;f[c+4>>2]=I;c=f[v>>2]|0;if((c|0)==(f[w>>2]|0))r_a(x,A);else{f[c>>2]=d;f[v>>2]=(f[v>>2]|0)+4}c=f[y>>2]|0;d=f[z>>2]|0}h=h+1|0}while(h>>>0<d-c>>2>>>0)}}if((f[o+52>>2]|0)>-1){c=f[o+72>>2]|0;if(c|0)if((f[c+8>>2]|0)==(f[o>>2]|0))if((f[c+52>>2]|0)>-1){H=c;I=c+16|0;m=o+8|0;d=o+16|0;n=d;if((X((f[m>>2]|0)-(f[n>>2]|0)|0,(f[H+4>>2]|0)-(f[I+4>>2]|0)|0)|0)==(X((f[m+4>>2]|0)-(f[n+4>>2]|0)|0,(f[H>>2]|0)-(f[I>>2]|0)|0)|0))if(f[o+40>>2]|0)if(f[c+40>>2]|0){n=q_a(a,c,o)|0;I=d;H=f[I>>2]|0;I=f[I+4>>2]|0;c=Wpb(16)|0;f[A>>2]=c;f[c>>2]=j;f[c+4>>2]=n;d=c+8|0;f[d>>2]=H;f[d+4>>2]=I;d=f[v>>2]|0;if((d|0)==(f[w>>2]|0))r_a(x,A);else{f[d>>2]=c;f[v>>2]=(f[v>>2]|0)+4}}}}g=o+68|0;c=f[g>>2]|0;if((c|0)!=(q|0)){if((f[q+52>>2]|0)>-1){d=f[q+72>>2]|0;if((f[d+52>>2]|0)>-1){H=d+8|0;I=d+16|0;m=q+8|0;e=q+16|0;n=e;if((X((f[m>>2]|0)-(f[n>>2]|0)|0,(f[H+4>>2]|0)-(f[I+4>>2]|0)|0)|0)==(X((f[m+4>>2]|0)-(f[n+4>>2]|0)|0,(f[H>>2]|0)-(f[I>>2]|0)|0)|0))if(f[q+40>>2]|0)if(f[d+40>>2]|0){c=q_a(a,d,q)|0;I=e;H=f[I>>2]|0;I=f[I+4>>2]|0;d=Wpb(16)|0;f[A>>2]=d;f[d>>2]=j;f[d+4>>2]=c;c=d+8|0;f[c>>2]=H;f[c+4>>2]=I;c=f[v>>2]|0;if((c|0)==(f[w>>2]|0))r_a(x,A);else{f[c>>2]=d;f[v>>2]=(f[v>>2]|0)+4}c=f[g>>2]|0}}}if(!((c|0)==0|(c|0)==(q|0))){d=o+8|0;do{t_a(a,q,c,d);c=f[c+68>>2]|0}while((c|0)!=(q|0))}}}}c=f[C>>2]|0;if((c|0)==(f[B>>2]|0)){c=107;break}}if((c|0)==107){u=F;return}}function YZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0;s=0;t=u;u=u+1632|0;f[t>>2]=b;m=(f[b+40>>2]|0)==0;o=f[b>>2]|0;q=f[b+16>>2]|0;k=(o|0)<(q|0)?o:q;r=(o|0)<(q|0)?q:o;l=b;while(1){c=f[l+64>>2]|0;if(!c){s=4;break}if(+p[c+24>>3]==-1.e+40)l=c;else{j=0;break}}do if((s|0)==4){c=f[l+56>>2]|0;d=f[l+16>>2]|0;if((f[c+16>>2]|0)==(d|0))if((f[c+20>>2]|0)==(f[l+20>>2]|0))if(!(f[c+64>>2]|0)){j=c;break}c=f[l+60>>2]|0;if((f[c+16>>2]|0)==(d|0))if((f[c+20>>2]|0)==(f[l+20>>2]|0))if(!(f[c+64>>2]|0)){j=c;break}j=0}while(0);a:do if(!(f[(a+52|0)>>2]|0)){h=a+48|0;i=a+44|0;c=0;d=0}else{if((o|0)<(q|0)){d=f[(a+48|0)>>2]|0;if((a+44|0|0)==(d|0)){h=a+48|0;i=a+44|0;c=d;d=0;break}else c=d;while(1){e=f[c+8>>2]|0;if((e|0)>(o|0))break;c=f[d+4>>2]|0;d=c;if((a+44|0|0)==(d|0)){h=a+48|0;i=a+44|0;d=0;break a}}h=a+48|0;i=a+44|0;c=(e|0)<(f[l+16>>2]|0)?c:a+44|0;d=0;break}g=f[(a+48|0)>>2]|0;if((g|0)==(a+44|0|0)){h=a+48|0;i=a+44|0;c=0;d=a+44|0}else{d=a+44|0;c=a+44|0;while(1){if((f[(f[d>>2]|0)+8>>2]|0)<=(o|0))break;e=f[d>>2]|0;if((g|0)==(e|0)){h=a+48|0;i=a+44|0;c=0;d=e;break a}else{d=e;c=e}}if((c|0)==(g|0)){h=a+48|0;i=a+44|0;c=0}else{h=a+48|0;i=a+44|0;c=0;d=(f[(f[d>>2]|0)+8>>2]|0)>(f[l+16>>2]|0)?d:g}}}while(0);v=0;e=(o|0)<(q|0);g=k;k=r;o=c;q=d;r=b;f[t+32>>2]=a;f[t+80>>2]=l;f[t+88>>2]=j;f[t+96>>2]=v;f[t+144>>2]=e;f[t+152>>2]=g;f[t+160>>2]=k;f[t+208>>2]=h;f[t+216>>2]=i;f[t+272>>2]=o;f[t+368>>2]=q;f[t+456>>2]=r;f[t+1456>>2]=m;f[t+1528>>2]=s;f[t+1560>>2]=0;f[t+1564>>2]=0;k_a(t);G=f[t+1560>>2]|0;D=f[t+1564>>2]|0;H=+n[t+1564>>2];f[t+1560>>2]=0;f[t+1564>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function ZZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;if(!(f[a+128>>2]|0)){a=1;return a|0}x_a(a,b);h=a+28|0;i=a+32|0;b=f[i>>2]|0;c=f[h>>2]|0;switch(b-c>>2|0){case 1:{d=b;break}case 0:{a=1;return a|0}default:e=3}do if((e|0)==3)if(y_a(a)|0){d=f[i>>2]|0;c=f[h>>2]|0;break}else{a=0;return a|0}while(0);b=c;if((d|0)==(c|0)){d=b;b=c}else{g=a+76|0;e=0;while(1){b=f[b+(e<<2)>>2]|0;d=b+4|0;t_a(a,f[b>>2]|0,f[d>>2]|0,b+8|0);u_a(g,f[b>>2]|0,f[d>>2]|0);if(b|0)Zpb(b);e=e+1|0;b=f[i>>2]|0;c=f[h>>2]|0;d=c;if(e>>>0>=b-c>>2>>>0)break;else b=d}}if((d|0)!=(b|0))f[i>>2]=b+(~((b+-4-c|0)>>>2)<<2);f[a+56>>2]=0;a=1;return a|0}function _Za(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;H=u;u=u+32|0;E=H+28|0;t=H+8|0;v=H+24|0;w=H+20|0;x=H;F=H+16|0;G=a+76|0;D=a+128|0;d=f[D>>2]|0;f[F>>2]=d;a:do if(!d){C=a+44|0;B=a+52|0;A=a+56|0}else{k=a+74|0;l=a+44|0;m=a+52|0;o=a+56|0;q=a+8|0;r=a+12|0;s=a+4|0;b:while(1){h=d;c:do if((f[d+20>>2]|0)==(c|0))if(!(f[d+64>>2]|0)){d=f[h+56>>2]|0;e=f[h+16>>2]|0;if((f[d+16>>2]|0)==(e|0))if((f[d+20>>2]|0)==(f[h+20>>2]|0))if(!(f[d+64>>2]|0)){j=d;y=13}else y=10;else y=10;else y=10;if((y|0)==10){y=0;d=f[h+60>>2]|0;if((f[d+16>>2]|0)==(e|0))if((f[d+20>>2]|0)==(f[h+20>>2]|0))if(!(f[d+64>>2]|0)){j=d;y=13}}do if((y|0)==13){y=0;if((f[j+52>>2]|0)!=-2){n=+p[j+24>>3];if((f[j+68>>2]|0)==(f[j+72>>2]|0))if(n==-1.e+40){y=20;break c}else break;else if(n!=-1.e+40)break;else{y=20;break c}}}while(0);if(b[k>>0]|0){g=Wpb(12)|0;f[g+8>>2]=f[h+16>>2];f[g+4>>2]=l;e=f[l>>2]|0;f[g>>2]=e;f[e+4>>2]=g;f[l>>2]=g;f[m>>2]=(f[m>>2]|0)+1}d=f[h+72>>2]|0;g=o_a(a,h)|0;if(g)g=(d|0)==0?D:d+68|0;else{z=0;y=84;break b}}else y=20;else y=20;while(0);if((y|0)==20){y=0;do if((f[h+20>>2]|0)==(c|0))if(!(f[h+64>>2]|0))y=29;else if(+p[(f[h+64>>2]|0)+24>>3]==-1.e+40){if(!(p_a(G,F)|0)){z=0;y=84;break b}d=f[F>>2]|0;if((f[d+52>>2]|0)>-1)q_a(a,d,d)|0;e=f[o>>2]|0;if(!e){f[o>>2]=d;f[d+80>>2]=0;f[d+76>>2]=0;i=d;break}else{f[d+76>>2]=e;f[d+80>>2]=0;f[e+80>>2]=d;f[o>>2]=d;i=d;break}}else y=29;else y=29;while(0);if((y|0)==29){y=0;if((f[h+20>>2]|0)==(c|0))d=f[h+16>>2]|0;else{n=+p[h+24>>3]*+(c-(f[h+4>>2]|0)|0);d=(f[h>>2]|0)+~~(n+(n<0.0?-.5:.5))|0}f[h+8>>2]=d;f[h+12>>2]=c;i=h}if(!(b[k>>0]|0))d=i;else{d=f[i+72>>2]|0;if((f[i+52>>2]|0)>-1)if((d|0)!=0&(f[i+40>>2]|0)!=0)if((f[d+52>>2]|0)>-1)if((f[d+8>>2]|0)==(f[i+8>>2]|0))if(!(f[d+40>>2]|0))d=i;else{h=i+8|0;g=f[h>>2]|0;h=f[h+4>>2]|0;I=t;f[I>>2]=g;f[I+4>>2]=h;I=q_a(a,d,t)|0;e=q_a(a,i,t)|0;d=Wpb(16)|0;f[E>>2]=d;f[d>>2]=I;f[d+4>>2]=e;e=d+8|0;f[e>>2]=g;f[e+4>>2]=h;e=f[q>>2]|0;if((e|0)==(f[r>>2]|0))r_a(s,E);else{f[e>>2]=d;f[q>>2]=(f[q>>2]|0)+4}d=f[F>>2]|0}else d=i;else d=i;else d=i;else d=i}g=d+68|0}d=f[g>>2]|0;f[F>>2]=d;if(!d){C=l;B=m;A=o;break a}}if((y|0)==84){u=H;return z|0}}while(0);j=a+48|0;f[v>>2]=f[j>>2];f[w>>2]=C;I=f[B>>2]|0;f[t>>2]=f[v>>2];f[E>>2]=f[w>>2];s_a(t,E,I,x)|0;while(1){d=f[A>>2]|0;if(!d)break;e=d+80|0;g=f[e>>2]|0;h=d+76|0;i=f[h>>2]|0;f[(g|0?g+76|0:A)>>2]=i;if(i|0)f[i+80>>2]=g;f[h>>2]=0;f[e>>2]=0;if(!(YZa(a,d)|0)){z=0;y=84;break}}if((y|0)==84){u=H;return z|0}if(f[B>>2]|0){d=f[j>>2]|0;I=(f[a+44>>2]|0)+4|0;A=f[d>>2]|0;f[A+4>>2]=f[I>>2];f[f[I>>2]>>2]=A;f[B>>2]=0;if((d|0)!=(C|0))do{I=d;d=f[d+4>>2]|0;Zpb(I)}while((d|0)!=(C|0))}d=f[D>>2]|0;f[F>>2]=d;if(!d){I=1;u=H;return I|0}k=a+8|0;l=a+12|0;m=a+4|0;d:while(1){e=d;do if((f[d+20>>2]|0)==(c|0))if(!(f[d+64>>2]|0))d=e;else{if((f[e+52>>2]|0)>-1)j=q_a(a,e,e+16|0)|0;else j=0;if(!(p_a(G,F)|0)){z=0;y=84;break d}d=f[F>>2]|0;g=f[d+72>>2]|0;i=f[d+68>>2]|0;if(g|0){h=g+8|0;if((f[h>>2]|0)==(f[d>>2]|0)){e=f[g+12>>2]|0;if(j|0?(e|0)==(f[d+4>>2]|0):0)if((f[g+52>>2]|0)>-1)if((e|0)>(f[g+20>>2]|0)){D=d+8|0;e=d+16|0;I=e;B=h;C=g+16|0;if((X((f[B>>2]|0)-(f[C>>2]|0)|0,(f[D+4>>2]|0)-(f[I+4>>2]|0)|0)|0)==(X((f[B+4>>2]|0)-(f[C+4>>2]|0)|0,(f[D>>2]|0)-(f[I>>2]|0)|0)|0))if(f[d+40>>2]|0)if(f[g+40>>2]|0){C=q_a(a,g,d)|0;I=e;D=f[I>>2]|0;I=f[I+4>>2]|0;g=Wpb(16)|0;f[E>>2]=g;f[g>>2]=j;f[g+4>>2]=C;e=g+8|0;f[e>>2]=D;f[e+4>>2]=I;e=f[k>>2]|0;if((e|0)==(f[l>>2]|0))r_a(m,E);else{f[e>>2]=g;f[k>>2]=(f[k>>2]|0)+4}break}}}}if(i){g=i+8|0;if((f[g>>2]|0)==(f[d>>2]|0)){e=f[i+12>>2]|0;if(j|0?(e|0)==(f[d+4>>2]|0):0)if((f[i+52>>2]|0)>-1)if((e|0)>(f[i+20>>2]|0)){D=d+8|0;e=d+16|0;I=e;B=g;C=i+16|0;if((X((f[B>>2]|0)-(f[C>>2]|0)|0,(f[D+4>>2]|0)-(f[I+4>>2]|0)|0)|0)==(X((f[B+4>>2]|0)-(f[C+4>>2]|0)|0,(f[D>>2]|0)-(f[I>>2]|0)|0)|0))if(f[d+40>>2]|0)if(f[i+40>>2]|0){C=q_a(a,i,d)|0;I=e;D=f[I>>2]|0;I=f[I+4>>2]|0;g=Wpb(16)|0;f[E>>2]=g;f[g>>2]=j;f[g+4>>2]=C;e=g+8|0;f[e>>2]=D;f[e+4>>2]=I;e=f[k>>2]|0;if((e|0)==(f[l>>2]|0))r_a(m,E);else{f[e>>2]=g;f[k>>2]=(f[k>>2]|0)+4}}}}}}else d=e;while(0);d=f[d+68>>2]|0;f[F>>2]=d;if(!d){z=1;y=84;break}}if((y|0)==84){u=H;return z|0}return 0}function $Za(a){a=a|0;var c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=u;u=u+16|0;s=C;x=a+4|0;y=a+8|0;c=f[x>>2]|0;if((f[y>>2]|0)==(c|0)){u=C;return}z=a+116|0;A=a+116|0;B=a+120|0;t=a+124|0;v=a+73|0;w=a+72|0;r=0;do{j=f[c+(r<<2)>>2]|0;e=f[z>>2]|0;p=f[e+(f[f[j>>2]>>2]<<2)>>2]|0;while(1){c=f[e+(f[p>>2]<<2)>>2]|0;if((p|0)==(c|0))break;else p=c}k=j+4|0;i=f[e+(f[f[k>>2]>>2]<<2)>>2]|0;while(1){c=f[e+(f[i>>2]<<2)>>2]|0;if((i|0)==(c|0))break;else i=c}n=p+16|0;a:do if(f[n>>2]|0){g=i+16|0;if(f[g>>2]|0)if(!(b[p+5>>0]|0))if(!(b[i+5>>0]|0)){h=(p|0)==(i|0);b:do if(h){e=p;l=p}else{c=p;while(1){c=f[c+8>>2]|0;if((c|0)==(i|0)){e=i;l=i;break b}if(!c){c=i;break}}do{c=f[c+8>>2]|0;if((c|0)==(p|0)){e=p;l=i;break b}}while((c|0)!=0);e=f_a(p,i)|0;l=i}while(0);if(l_a(a,j,p,l)|0){if(!h){f[g>>2]=0;f[l+20>>2]=0;f[i>>2]=f[p>>2];b[p+4>>0]=b[e+4>>0]|0;c=l+8|0;if((e|0)==(l|0))f[p+8>>2]=f[c>>2];f[c>>2]=p;if(!(b[v>>0]|0))break;c=f[B>>2]|0;e=f[A>>2]|0;j=e;if((c|0)==(e|0))break;g=c-e>>2;e=0;while(1){h=f[j+(e<<2)>>2]|0;i=h+8|0;c=f[i>>2]|0;c:do if(!c)c=0;else while(1){if(f[c+16>>2]|0)break c;c=f[c+8>>2]|0;if(!c){c=0;break}}while(0);if((c|0)==(l|0)&(f[h+16>>2]|0)!=0)f[i>>2]=p;e=e+1|0;if(e>>>0>=g>>>0)break a}}f[n>>2]=f[j>>2];f[p+20>>2]=0;c=Wpb(24)|0;f[s>>2]=c;b[c+4>>0]=0;b[c+5>>0]=0;e=c+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;e=f[B>>2]|0;if((e|0)==(f[t>>2]|0)){c_a(A,s);m=f[B>>2]|0}else{f[e>>2]=c;m=(f[B>>2]|0)+4|0;f[B>>2]=m}j=f[A>>2]|0;o=f[s>>2]|0;f[o>>2]=(m-j>>2)+-1;g=f[k>>2]|0;i=o+16|0;f[i>>2]=g;e=f[o>>2]|0;c=g;do{f[c>>2]=e;c=f[c+16>>2]|0}while((c|0)!=(g|0));h=f[n>>2]|0;c=g;do{e=d_a(c+4|0,h)|0;if((e|0)>-1){q=28;break}c=f[c+12>>2]|0}while((c|0)!=(g|0));if((q|0)==28){q=0;if(!e){c=h;while(1){i=d_a(c+4|0,g)|0;if((i|0)>-1){q=39;break}c=f[c+12>>2]|0;if((c|0)==(h|0)){q=38;break}}if((q|0)==38){q=0;e=p+4|0;c=b[e>>0]|0;b[o+4>>0]=c}else if((q|0)==39){q=0;e=p+4|0;c=b[e>>0]|0;b[o+4>>0]=c;if(!i){f[o+8>>2]=f[p+8>>2];if(!(b[v>>0]|0))break;l=j;if((m|0)==(j|0))break;j=m-j>>2;i=0;while(1){e=f[l+(i<<2)>>2]|0;k=e+8|0;c=f[k>>2]|0;d:do if(!c)c=0;else while(1){if(f[c+16>>2]|0)break d;c=f[c+8>>2]|0;if(!c){c=0;break}}while(0);h=f[e+16>>2]|0;do if((c|0)==(p|0)&(h|0)!=0){c=h;do{e=d_a(c+4|0,g)|0;if((e|0)>-1){q=56;break}c=f[c+12>>2]|0}while((c|0)!=(h|0));if((q|0)==56){q=0;if(!e)break}f[k>>2]=o}while(0);i=i+1|0;if(i>>>0>=j>>>0)break a}}}c=c^1;b[e>>0]=c;m=p+8|0;f[o+8>>2]=f[m>>2];f[m>>2]=o;if(b[v>>0]|0){e_a(a,p,o);c=b[e>>0]|0;h=f[n>>2]|0}e=(b[w>>0]^c)&255;g=(h|0)==0;if(g)d=0.0;else{d=0.0;c=h;do{p=f[c+16>>2]|0;d=d+ +((f[c+4>>2]|0)+(f[p+4>>2]|0)|0)*+((f[p+8>>2]|0)-(f[c+8>>2]|0)|0);c=f[c+12>>2]|0}while((c|0)!=(h|0));d=d*.5}if((e|0)!=(d>0.0|0)|g)break;else c=h;while(1){o=c+12|0;p=c;c=f[o>>2]|0;p=p+16|0;f[o>>2]=f[p>>2];f[p>>2]=c;if((c|0)==(h|0))break a}}}e=o+4|0;c=b[p+4>>0]^1;b[e>>0]=c;f[o+8>>2]=p;if(b[v>>0]|0){e_a(a,o,p);c=b[e>>0]|0;g=f[i>>2]|0}e=(b[w>>0]^c)&255;if(!g)d=0.0;else{d=0.0;c=g;do{p=f[c+16>>2]|0;d=d+ +((f[c+4>>2]|0)+(f[p+4>>2]|0)|0)*+((f[p+8>>2]|0)-(f[c+8>>2]|0)|0);c=f[c+12>>2]|0}while((c|0)!=(g|0));d=d*.5}if(!((e|0)!=(d>0.0|0)|(g|0)==0)){c=g;do{o=c+12|0;p=c;c=f[o>>2]|0;p=p+16|0;f[o>>2]=f[p>>2];f[p>>2]=c}while((c|0)!=(g|0))}}}}while(0);r=r+1|0;c=f[x>>2]|0}while(r>>>0<(f[y>>2]|0)-c>>2>>>0);u=C;return}function a_a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f[c+20>>2]=0;r=c+16|0;d=f[r>>2]|0;if(!(b[a+112>>0]|0))e=(b[a+74>>0]|0)!=0;else e=1;c=d;g=c+16|0;a=f[g>>2]|0;a:do if((a|0)==(c|0)){a=c;q=22}else{if(e){e=0;p=g}else{e=0;l=g;b:while(1){i=c+12|0;j=f[i>>2]|0;k=j;if((a|0)==(j|0))break a;g=c+4|0;h=f[g>>2]|0;if((h|0)==(f[j+4>>2]|0))if((f[c+8>>2]|0)==(f[j+8>>2]|0))q=30;else q=27;else q=27;do if((q|0)==27){q=0;if((h|0)==(f[a+4>>2]|0))if((f[c+8>>2]|0)==(f[a+8>>2]|0)){q=30;break}o=a+4|0;m=g;p=f[m>>2]|0;m=f[m+4>>2]|0;n=j+4|0;if((X(p-(f[n>>2]|0)|0,(f[o+4>>2]|0)-m|0)|0)==(X(m-(f[n+4>>2]|0)|0,(f[o>>2]|0)-p|0)|0))q=30;else{if((e|0)==(c|0))break b;e=(e|0)==0?c:e;d=k}}while(0);if((q|0)==30){q=0;f[a+12>>2]=k;f[(f[i>>2]|0)+16>>2]=f[l>>2];p=f[l>>2]|0;Zpb(d);e=0;d=p}c=d;l=c+16|0;a=f[l>>2]|0;if((a|0)==(c|0)){a=c;q=22;break a}}f[r>>2]=c;return}c:while(1){n=c+12|0;i=f[n>>2]|0;o=i;if((a|0)==(i|0))break a;h=c+4|0;g=f[h>>2]|0;if((g|0)==(f[i+4>>2]|0))if((f[c+8>>2]|0)==(f[i+8>>2]|0))q=19;else q=8;else q=8;d:do if((q|0)==8){q=0;if((g|0)==(f[a+4>>2]|0))if((f[c+8>>2]|0)==(f[a+8>>2]|0)){q=19;break}m=a+4|0;l=f[m>>2]|0;m=f[m+4>>2]|0;k=h;j=f[k>>2]|0;k=f[k+4>>2]|0;h=i+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;do if((X(j-g|0,m-k|0)|0)==(X(k-h|0,l-j|0)|0)){i=(l|0)==(g|0);if(i&(m|0)==(h|0)){q=19;break d}if((l|0)==(j|0)&(m|0)==(k|0)){q=19;break d}if((j|0)==(g|0)&(k|0)==(h|0)){q=19;break d}if(i)if((m|0)<(k|0)^(k|0)<(h|0)){q=19;break d}else break;else if((l|0)<(j|0)^(j|0)<(g|0)){q=19;break d}else break}while(0);if((e|0)==(c|0))break c;e=(e|0)==0?c:e;d=o}while(0);if((q|0)==19){q=0;f[a+12>>2]=o;f[(f[n>>2]|0)+16>>2]=f[p>>2];p=f[p>>2]|0;Zpb(d);e=0;d=p}c=d;p=c+16|0;a=f[p>>2]|0;if((a|0)==(c|0)){a=c;q=22;break a}}f[r>>2]=c;return}while(0);if((q|0)==22)if(!d){q=0;f[r>>2]=q;return}else c=a;f[a+12>>2]=0;do{q=c;c=f[c+12>>2]|0;Zpb(q)}while((c|0)!=0);c=0;f[r>>2]=c;return}function b_a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;y=D;z=a+116|0;A=a+120|0;c=f[z>>2]|0;if((f[A>>2]|0)==(c|0)){u=D;return}B=a+124|0;C=a+73|0;x=0;do{r=f[c+(x<<2)>>2]|0;x=x+1|0;s=r+16|0;c=f[s>>2]|0;a:do if(c|0)if(!(b[r+5>>0]|0)){t=r+4|0;v=r+8|0;q=c;do{p=q+12|0;d=f[p>>2]|0;if((d|0)==(c|0))break a;m=q+4|0;n=q+8|0;o=q+16|0;c=d;do{b:do if((f[m>>2]|0)==(f[c+4>>2]|0))if((f[n>>2]|0)==(f[c+8>>2]|0))if((f[c+12>>2]|0)!=(q|0)){d=c+16|0;e=f[d>>2]|0;if((e|0)!=(q|0)){l=f[o>>2]|0;f[o>>2]=e;f[e+12>>2]=q;f[d>>2]=l;f[l+12>>2]=c;f[s>>2]=q;d=Wpb(24)|0;f[y>>2]=d;b[d+4>>0]=0;b[d+5>>0]=0;e=d+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;e=f[A>>2]|0;if((e|0)==(f[B>>2]|0)){c_a(z,y);i=f[A>>2]|0}else{f[e>>2]=d;i=(f[A>>2]|0)+4|0;f[A>>2]=i}h=f[z>>2]|0;l=f[y>>2]|0;f[l>>2]=(i-h>>2)+-1;f[l+16>>2]=c;e=f[l>>2]|0;d=c;do{f[d>>2]=e;d=f[d+16>>2]|0}while((d|0)!=(c|0));g=f[s>>2]|0;d=c;do{e=d_a(d+4|0,g)|0;if((e|0)>-1){w=21;break}d=f[d+12>>2]|0}while((d|0)!=(c|0));if((w|0)==21){w=0;if(!e){d=g;while(1){e=d_a(d+4|0,c)|0;if((e|0)>-1){w=27;break}d=f[d+12>>2]|0;if((d|0)==(g|0)){w=26;break}}if((w|0)==26){w=0;c=b[t>>0]|0;b[l+4>>0]=c}else if((w|0)==27){w=0;d=b[t>>0]|0;b[l+4>>0]=d;if(!e){f[l+8>>2]=f[v>>2];if(!(b[C>>0]|0)){c=q;break}k=h;if((i|0)==(h|0)){c=q;break}i=i-h>>2;h=0;while(1){e=f[k+(h<<2)>>2]|0;j=e+8|0;d=f[j>>2]|0;c:do if(!d)d=0;else while(1){if(f[d+16>>2]|0)break c;d=f[d+8>>2]|0;if(!d){d=0;break}}while(0);g=f[e+16>>2]|0;do if((d|0)==(r|0)&(g|0)!=0){d=g;do{e=d_a(d+4|0,c)|0;if((e|0)>-1){w=39;break}d=f[d+12>>2]|0}while((d|0)!=(g|0));if((w|0)==39){w=0;if(!e)break}f[j>>2]=l}while(0);h=h+1|0;if(h>>>0>=i>>>0){c=q;break b}}}else c=d}b[t>>0]=c^1;f[l+8>>2]=f[v>>2];f[v>>2]=l;if(!(b[C>>0]|0)){c=q;break}e_a(a,r,l);c=q;break}}b[l+4>>0]=b[t>>0]^1;f[l+8>>2]=r;if(!(b[C>>0]|0))c=q;else{e_a(a,l,r);c=q}}}while(0);c=f[c+12>>2]|0}while((c|0)!=(f[s>>2]|0));q=f[p>>2]|0}while((q|0)!=(c|0))}while(0);c=f[z>>2]|0}while(x>>>0<(f[A>>2]|0)-c>>2>>>0);u=D;return}function c_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function d_a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[a+4>>2]|0;k=f[a>>2]|0;j=b;a=0;a:while(1){g=j;j=f[j+12>>2]|0;i=f[j+8>>2]|0;if((i|0)==(l|0)){e=f[j+4>>2]|0;if((e|0)==(k|0)){a=-1;m=16;break}c=f[g+8>>2]|0;if((c|0)==(l|0)){if(!((e|0)>(k|0)^(f[g+4>>2]|0)<(k|0))){a=-1;m=16;break}if((i|0)<(l|0)){c=l;m=9}}else m=8}else{c=f[g+8>>2]|0;m=8}if((m|0)==8){m=0;if((c|0)<(l|0)^(i|0)<(l|0))m=9}do if((m|0)==9){m=0;e=f[g+4>>2]|0;g=f[j+4>>2]|0;h=(g|0)>(k|0);if((e|0)<(k|0)){if(!h)break;d=+(i-l|0)*+(e-k|0)-+(c-l|0)*+(g-k|0);if(d!=0.0){a=(i|0)>(c|0)^d>0.0?a:1-a|0;break}else{a=-1;m=16;break a}}if(h){a=1-a|0;break}else{d=+(i-l|0)*+(e-k|0)-+(c-l|0)*+(g-k|0);if(d!=0.0){a=(i|0)>(c|0)^d>0.0?a:1-a|0;break}else{a=-1;m=16;break a}}}while(0);if((j|0)==(b|0)){m=16;break}}if((m|0)==16)return a|0;return 0}function e_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=f[c+8>>2]|0;d=f[a+120>>2]|0;a=f[a+116>>2]|0;l=a;if((d|0)==(a|0))return;m=b+16|0;n=c+16|0;k=d-a>>2;j=0;do{a=f[l+(j<<2)>>2]|0;h=f[a+16>>2]|0;a:do if(!((a|0)==(b|0)|((a|0)==(c|0)|(h|0)==0))){i=a+8|0;g=f[i>>2]|0;b:do if(!g)a=0;else{a=g;while(1){if(f[a+16>>2]|0)break b;a=f[a+8>>2]|0;if(!a){a=0;break}}}while(0);if((a|0)==(c|0)|((a|0)==(o|0)|(a|0)==(b|0))){d=f[m>>2]|0;a=h;while(1){e=d_a(a+4|0,d)|0;if((e|0)>-1){p=12;break}a=f[a+12>>2]|0;if((a|0)==(h|0)){a=b;break}}c:do if((p|0)==12){p=0;if(!e){d=f[n>>2]|0;a=h;while(1){e=d_a(a+4|0,d)|0;if((e|0)>-1)break;a=f[a+12>>2]|0;if((a|0)==(h|0)){a=c;break c}}if(!e)if((g|0)==(b|0)|(g|0)==(c|0))a=o;else break a;else a=c}else a=b}while(0);f[i>>2]=a}}while(0);j=j+1|0}while(j>>>0<k>>>0);return}function f_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+20|0;c=f[l>>2]|0;if(!c){e=f[a+16>>2]|0;d=f[e+12>>2]|0;a:do if((d|0)==(e|0))c=e;else{c=e;h=f[e+8>>2]|0;b:while(1){i=c+4|0;j=0;c:while(1){g=d;while(1){e=f[g+8>>2]|0;if((e|0)>(h|0))break c;if((e|0)==(h|0)){d=f[g+4>>2]|0;e=f[i>>2]|0;if((d|0)<=(e|0)){if((d|0)<(e|0)){e=h;break c}d=f[g+12>>2]|0;if((d|0)!=(c|0))break}}d=f[g+12>>2]|0;if((d|0)==(c|0))break b;else g=d}j=(f[g+16>>2]|0)==(c|0)?j:g}d=f[g+12>>2]|0;if((d|0)==(g|0)){c=g;break a}else{c=g;h=e}}if(!((j|0)==0|(j|0)==(c|0))){d=c;e=j;do{g=n_a(c,e)|0;d=g?d:e;g=f[d+4>>2]|0;h=f[d+8>>2]|0;while(1){e=f[e+12>>2]|0;if((f[e+4>>2]|0)!=(g|0))continue;if((f[e+8>>2]|0)==(h|0))break}}while((e|0)!=(c|0));c=d}}while(0);f[l>>2]=c}k=b+20|0;d=f[k>>2]|0;if(!d){e=f[b+16>>2]|0;c=f[e+12>>2]|0;d:do if((c|0)==(e|0))d=e;else{d=e;i=f[e+8>>2]|0;e:while(1){h=d+4|0;j=0;f:while(1){g=c;while(1){e=f[g+8>>2]|0;if((e|0)>(i|0))break f;if((e|0)==(i|0)){c=f[g+4>>2]|0;e=f[h>>2]|0;if((c|0)<=(e|0)){if((c|0)<(e|0)){e=i;break f}c=f[g+12>>2]|0;if((c|0)!=(d|0))break}}c=f[g+12>>2]|0;if((c|0)==(d|0))break e;else g=c}j=(f[g+16>>2]|0)==(d|0)?j:g}c=f[g+12>>2]|0;if((c|0)==(g|0)){d=g;break d}else{d=g;i=e}}if(!((j|0)==0|(j|0)==(d|0))){c=d;e=j;do{g=n_a(d,e)|0;c=g?c:e;g=f[c+4>>2]|0;h=f[c+8>>2]|0;while(1){e=f[e+12>>2]|0;if((f[e+4>>2]|0)!=(g|0))continue;if((f[e+8>>2]|0)==(h|0))break}}while((e|0)!=(d|0));d=c}}while(0);f[k>>2]=d;c=f[l>>2]|0}e=f[c+8>>2]|0;g=f[d+8>>2]|0;if((e|0)>(g|0)){b=a;return b|0}if((e|0)<(g|0))return b|0;e=f[c+4>>2]|0;g=f[d+4>>2]|0;if((e|0)<(g|0)){b=a;return b|0}if((e|0)>(g|0))return b|0;if((f[c+12>>2]|0)==(c|0))return b|0;if((f[d+12>>2]|0)==(d|0)){b=a;return b|0}l=n_a(c,d)|0;b=l?a:b;return b|0}function g_a(a){a=a|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;S=f[a+616>>2]|0;K=f[a+712>>2]|0;L=f[a+1488>>2]|0;d=f[a+1560>>2]|0;P=f[a+1576>>2]|0;T=f[a+2952>>2]|0;U=f[a+2976>>2]|0;a:{if(U){U=0;if(d){if((f[(a+256|0)>>2]|0)==0&(f[(a+260|0)>>2]|0)==0)G=(f[(a+264|0)>>2]|0)!=0;else G=1;rka(a+536|0,a+12|0);Rja(a+520|0,f[52794]|0);x=0;w=0;b:while(1){d=vka(a+536|0)|0;B=+n[d+4>>2];D=+n[d+8>>2];A=+n[d+12>>2];C=+n[d+16>>2];z=+n[d+20>>2];p[(a+320|0)>>3]=+n[d>>2];p[((a+320|0)+8|0)>>3]=B;p[((a+320|0)+16|0)>>3]=D;p[((a+320|0)+24|0)>>3]=A;p[((a+320|0)+32|0)>>3]=C;p[((a+320|0)+40|0)>>3]=z;Sha(a+368|0,a+320|0,a+96|0);p[((a+416|0)+32|0)>>3]=-1.0;z=+p[(a+368|0)>>3];C=(+p[((a+368|0)+24|0)>>3]-z)*.5;A=+p[((a+368|0)+8|0)>>3];D=(+p[((a+368|0)+32|0)>>3]-A)*.5;B=+p[((a+368|0)+16|0)>>3];E=(+p[((a+368|0)+40|0)>>3]-B)*.5;p[(a+416|0)>>3]=z+C;p[((a+416|0)+8|0)>>3]=A+D;p[((a+416|0)+16|0)>>3]=B+E;p[((a+416|0)+24|0)>>3]=C*C+(D*D+E*E);d=f[(f[a>>2]|0)+24>>2]|0;do{g=1;if(g){g=0;if((Pg[f[(f[d>>2]|0)+28>>2]&255](d,a+416|0)|0)==1)h=w|1;else g=1}if(g)if(1){nka(a+536|0,a+520|0);g=f[(a+520|0)>>2]|0;v=f[((a+520|0)+4|0)>>2]|0;if((g|0)!=(v|0)){d=g;do{A=+p[d>>3];t=d+8|0;B=+p[t>>3];u=d+16|0;C=+p[u>>3];D=A*+p[(a+104|0)>>3]+B*+p[(a+136|0)>>3]+C*+p[(a+168|0)>>3]+ +p[(a+200|0)>>3];E=A*+p[(a+112|0)>>3]+B*+p[(a+144|0)>>3]+C*+p[(a+176|0)>>3]+ +p[(a+208|0)>>3];p[d>>3]=+p[(a+96|0)>>3]*A+ +p[(a+128|0)>>3]*B+ +p[(a+160|0)>>3]*C+ +p[(a+192|0)>>3];p[t>>3]=D;p[u>>3]=E;d=d+24|0}while((d|0)!=(v|0))}u=f[(f[a>>2]|0)+24>>2]|0;Rja(a+552|0,f[52794]|0);Rja(a+272|0,f[52794]|0);c:{d=1;if(d){d=0;if((g|0)==(v|0))i=0;else d=1}if(d)if(1){t=x;s=g;r=0;while(1){d=Qg[f[(f[u>>2]|0)+36>>2]&127](u,s,a+320|0)|0;d:do{g=1;if(g){g=0;if((d|0)==1)F=r;else g=1}if(g)if(1){g=f[a>>2]|0;i=f[g+64>>2]|0;q=f[g+68>>2]|0;e:do if((i|0)!=(q|0)){z=+p[s>>3];A=+p[s+8>>3];B=+p[s+16>>3];C=+p[s+24>>3];D=+p[s+32>>3];E=+p[s+40>>3];h=0;do{j=f[i>>2]|0;l=f[i+4>>2]|0;if((j|0)==(l|0))h=(h|0)>0?h:0;else{k=2;do{e=+p[j>>3];m=+p[j+8>>3];o=+p[j+16>>3];y=+p[j+24>>3];if(!(y+(C*e+(D*m+E*o))<0.0)){H=!(y+(z*e+(A*m+B*o))<0.0)?2:1;T=122}else if(!(y+(z*e+(A*m+B*o))<0.0))I=1;else{H=0;T=122}if((T|0)==122){T=0;I=(H|0)==0?0:(H|0)==2?2:1}k=(I|0)<(k|0)?I:k;j=j+32|0}while((j|0)!=(l|0));if((k|0)==2){F=r;break d}else h=(h|0)<(k|0)?k:h}i=i+12|0}while((i|0)!=(q|0));switch(h|0){case 2:{F=r;break d}case 1:break;default:break e}DZa(g+64|0,s,a+552|0,a+272|0);d=f[(a+272|0)>>2]|0;h=f[((a+272|0)+4|0)>>2]|0;if((d|0)==(h|0)){F=r;break d}if((h-d|0)>0){g=d;d=0;do{d=Qg[f[(f[u>>2]|0)+36>>2]&127](u,g,a+320|0)|0|d;g=g+48|0}while(g>>>0<h>>>0);if((d|0)==1){F=r;break d}}else d=0;g=f[a>>2]|0}while(0);h=d|r;r=f[g+24>>2]|0;e=+Lg[f[(f[r>>2]|0)+16>>2]&31](r,a+320|0);if(e<+p[(a+248|0)>>3]){p[(a+248|0)>>3]=e;p[(a+224|0)>>3]=+p[(a+320|0)>>3];p[(a+232|0)>>3]=+p[((a+320|0)+8|0)>>3];p[(a+240|0)>>3]=+p[((a+320|0)+16|0)>>3]}if(f[(a+260|0)>>2]|0){F=Fka(f[(a+8|0)>>2]|0,t)|0;g=f[(a+260|0)>>2]|0;d=f[(a+4|0)>>2]|0;f[(a+416|0)>>2]=s;f[(a+368|0)>>2]=F;g=f[g+16>>2]|0;if(!g){T=136;break b}Eh[f[(f[g>>2]|0)+24>>2]&255](g,a+416|0,d,a+368|0);F=h;break}r=f[(f[a>>2]|0)+24>>2]|0;if(!(Ng[f[(f[r>>2]|0)+12>>2]&511](r)|0)){F=h;break}if((h|0)==3){i=3;break c}if((h|0)==2?(b[f[a>>2]>>0]|0)==0:0){i=2;break c}else F=h}}while(0);s=s+48|0;if((s|0)==(v|0)){i=F;break}else{t=t+1|0;r=F}}}}h=(i|0)==0?1:i;d=f[((a+272|0)+12|0)>>2]|0;if(d|0)Wja(d,a+272|0);d=f[(a+272|0)>>2]|0;if(d|0){g=f[((a+272|0)+4|0)>>2]|0;if((g|0)!=(d|0))f[((a+272|0)+4|0)>>2]=g+(~(((g+-24-d|0)>>>0)/24|0)*24|0);Zpb(d)}d=f[((a+552|0)+12|0)>>2]|0;if(d|0)Wja(d,a+552|0);d=f[(a+552|0)>>2]|0;if(d|0){g=f[((a+552|0)+4|0)>>2]|0;if((g|0)!=(d|0))f[((a+552|0)+4|0)>>2]=g+(~(((g+-24-d|0)>>>0)/24|0)*24|0);Zpb(d)}d=h|w;if(G){h=d;break}w=f[(f[a>>2]|0)+24>>2]|0;if(!(Ng[f[(f[w>>2]|0)+12>>2]&511](w)|0)){h=d;break}if((d|0)==3){J=3;break b}if((d|0)==2?(b[f[a>>2]>>0]|0)==0:0){J=2;break b}else h=d}}while(0);if(!(tka(a+536|0)|0)){J=h;break}uka(a+536|0);x=x+512|0;w=h}if((T|0)==136)ud();d=f[(a+520|0)+12>>2]|0;if(d|0)Wja(d,a+520|0);d=f[(a+520|0)>>2]|0;if(d|0){g=f[((a+520|0)+4|0)>>2]|0;if((g|0)!=(d|0))f[((a+520|0)+4|0)>>2]=g+(~(((g+-24-d|0)>>>0)/24|0)*24|0);Zpb(d)}d=J|K;if(L)G=d;else{L=f[(f[a>>2]|0)+24>>2]|0;if(Ng[f[(f[L>>2]|0)+12>>2]&511](L)|0){if((d|0)==3){c=3;f[a+3048>>2]=1;break a}if((d|0)==2?(b[f[a>>2]>>0]|0)==0:0){c=2;f[a+3048>>2]=1;break a}else G=d}else G=d}}else U=1}if(U){U=0;if(1)G=K;else U=1}F=1;if(F){F=0;if(P){if((f[(a+256|0)>>2]|0)==0&(f[(a+260|0)>>2]|0)==0)x=(f[(a+264|0)>>2]|0)!=0;else x=1;ska(a+320|0,a+12|0);Rja(a+552|0,f[52794]|0);w=0;v=0;f:while(1){c=vka(a+320|0)|0;B=+n[c+4>>2];D=+n[c+8>>2];A=+n[c+12>>2];C=+n[c+16>>2];z=+n[c+20>>2];p[(a+272|0)>>3]=+n[c>>2];p[((a+272|0)+8|0)>>3]=B;p[((a+272|0)+16|0)>>3]=D;p[((a+272|0)+24|0)>>3]=A;p[((a+272|0)+32|0)>>3]=C;p[((a+272|0)+40|0)>>3]=z;Sha(a+368|0,a+272|0,a+96|0);p[((a+416|0)+32|0)>>3]=-1.0;z=+p[(a+368|0)>>3];C=(+p[((a+368|0)+24|0)>>3]-z)*.5;A=+p[((a+368|0)+8|0)>>3];D=(+p[((a+368|0)+32|0)>>3]-A)*.5;B=+p[((a+368|0)+16|0)>>3];E=(+p[((a+368|0)+40|0)>>3]-B)*.5;p[(a+416|0)>>3]=z+C;p[((a+416|0)+8|0)>>3]=A+D;p[((a+416|0)+16|0)>>3]=B+E;p[((a+416|0)+24|0)>>3]=C*C+(D*D+E*E);c=f[(f[a>>2]|0)+24>>2]|0;d=1;if(d){d=0;if((Pg[f[(f[c>>2]|0)+28>>2]&255](c,a+416|0)|0)==1)Q=v|1;else d=1}if(d)if(1){nka(a+320|0,a+552|0);t=f[(a+552|0)>>2]|0;u=f[((a+552|0)+4|0)>>2]|0;g:do if((t|0)==(u|0))c=0;else{c=t;do{A=+p[c>>3];P=c+8|0;B=+p[P>>3];Q=c+16|0;C=+p[Q>>3];D=A*+p[(a+104|0)>>3]+B*+p[(a+136|0)>>3]+C*+p[(a+168|0)>>3]+ +p[(a+200|0)>>3];E=A*+p[(a+112|0)>>3]+B*+p[(a+144|0)>>3]+C*+p[(a+176|0)>>3]+ +p[(a+208|0)>>3];p[c>>3]=+p[(a+96|0)>>3]*A+ +p[(a+128|0)>>3]*B+ +p[(a+160|0)>>3]*C+ +p[(a+192|0)>>3];p[P>>3]=D;p[Q>>3]=E;c=c+24|0}while((c|0)!=(u|0));s=f[(f[a>>2]|0)+24>>2]|0;r=t;c=0;do{Q=Pg[f[(f[s>>2]|0)+20>>2]&255](s,r)|0;k=Q?2:1;h:do if(Q){q=f[a>>2]|0;g=f[q+64>>2]|0;l=f[q+68>>2]|0;if((g|0)!=(l|0)){e=+p[r>>3];m=+p[r+8>>3];o=+p[r+16>>3];d=0;do{h=f[g>>2]|0;j=f[g+4>>2]|0;if((h|0)==(j|0))d=(d|0)>0?d:0;else{i=2;do{Q=+p[h+24>>3]+(e*+p[h>>3]+(m*+p[h+8>>3]+o*+p[h+16>>3]))<0.0?0:2;i=(Q|0)<(i|0)?Q:i;h=h+32|0}while((h|0)!=(j|0));if((i|0)==2)break h;else d=(d|0)<(i|0)?i:d}g=g+12|0}while((g|0)!=(l|0));if((d|0)==2)break}c=k|c;Q=f[q+24>>2]|0;e=+Lg[f[(f[Q>>2]|0)+16>>2]&31](Q,r);if(e<+p[(a+248|0)>>3]){p[(a+248|0)>>3]=e;p[(a+224|0)>>3]=+p[r>>3];p[(a+232|0)>>3]=+p[r+8>>3];p[(a+240|0)>>3]=+p[r+16>>3]}if(f[(a+264|0)>>2]|0){Q=Gka(f[(a+8|0)>>2]|0,(r+(w*24|0)-t|0)/24|0)|0;g=f[(a+264|0)>>2]|0;d=f[(a+4|0)>>2]|0;f[(a+416|0)>>2]=Q;g=f[g+16>>2]|0;if(!g){T=193;break f}Eh[f[(f[g>>2]|0)+24>>2]&255](g,r,d,a+416|0);break}Q=f[(f[a>>2]|0)+24>>2]|0;if(!(Ng[f[(f[Q>>2]|0)+12>>2]&511](Q)|0))break;if((c|0)==3){c=3;break g}if((c|0)==2?(b[f[a>>2]>>0]|0)==0:0){c=2;break g}}while(0);r=r+24|0}while((r|0)!=(u|0))}while(0);c=((c|0)==0?1:c)|v;if(x)Q=c;else{Q=f[(f[a>>2]|0)+24>>2]|0;if(Ng[f[(f[Q>>2]|0)+12>>2]&511](Q)|0){if((c|0)==3){R=3;break}if((c|0)==2?(b[f[a>>2]>>0]|0)==0:0){R=2;break}else Q=c}else Q=c}}if(!(tka(a+320|0)|0)){R=Q;break}uka(a+320|0);w=w+512|0;v=Q}if((T|0)==193)ud();c=f[(a+552|0)+12>>2]|0;if(c|0)Wja(c,a+552|0);c=f[(a+552|0)>>2]|0;if(c|0){d=f[((a+552|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+552|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=R|G;M=a+224|0;N=a+232|0;O=a+240|0}else F=1}if(F)if(1){c=G;M=a+224|0;N=a+232|0;O=a+240|0}p[S>>3]=+p[M>>3];p[S+8>>3]=+p[N>>3];p[S+16>>3]=+p[O>>3]}f[a+960>>2]=c;f[a+2952>>2]=T;f[a+2976>>2]=U}function h_a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0,o=0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;N=f[a+672>>2]|0;O=f[a+712>>2]|0;P=f[a+736>>2]|0;Q=f[a+960>>2]|0;S=f[a+1488>>2]|0;M=f[a+1496>>2]|0;T=f[a+2952>>2]|0;a:{b:while(1){d=vka(a+536|0)|0;z=+n[d+4>>2];B=+n[d+8>>2];y=+n[d+12>>2];A=+n[d+16>>2];x=+n[d+20>>2];p[(a+320|0)>>3]=+n[d>>2];p[((a+320|0)+8|0)>>3]=z;p[((a+320|0)+16|0)>>3]=B;p[((a+320|0)+24|0)>>3]=y;p[((a+320|0)+32|0)>>3]=A;p[((a+320|0)+40|0)>>3]=x;Sha(a+368|0,a+320|0,a+96|0);p[((a+416|0)+32|0)>>3]=-1.0;x=+p[(a+368|0)>>3];A=(+p[((a+368|0)+24|0)>>3]-x)*.5;y=+p[((a+368|0)+8|0)>>3];B=(+p[((a+368|0)+32|0)>>3]-y)*.5;z=+p[((a+368|0)+16|0)>>3];C=(+p[((a+368|0)+40|0)>>3]-z)*.5;p[(a+416|0)>>3]=x+A;p[((a+416|0)+8|0)>>3]=y+B;p[((a+416|0)+16|0)>>3]=z+C;p[((a+416|0)+24|0)>>3]=A*A+(B*B+C*C);d=f[(f[a>>2]|0)+24>>2]|0;do{e=1;if(e){e=0;if((Pg[f[(f[d>>2]|0)+28>>2]&255](d,a+416|0)|0)==1)c=P|1;else e=1}if(e)if(1){nka(a+536|0,a+520|0);d=f[(a+520|0)>>2]|0;H=f[((a+520|0)+4|0)>>2]|0;if((d|0)!=(H|0)){c=d;do{y=+p[c>>3];F=c+8|0;z=+p[F>>3];G=c+16|0;A=+p[G>>3];B=y*+p[(a+104|0)>>3]+z*+p[(a+136|0)>>3]+A*+p[(a+168|0)>>3]+ +p[(a+200|0)>>3];C=y*+p[(a+112|0)>>3]+z*+p[(a+144|0)>>3]+A*+p[(a+176|0)>>3]+ +p[(a+208|0)>>3];p[c>>3]=+p[(a+96|0)>>3]*y+ +p[(a+128|0)>>3]*z+ +p[(a+160|0)>>3]*A+ +p[(a+192|0)>>3];p[F>>3]=B;p[G>>3]=C;c=c+24|0}while((c|0)!=(H|0))}G=f[(f[a>>2]|0)+24>>2]|0;Rja(a+552|0,f[52794]|0);Rja(a+272|0,f[52794]|0);c:{c=1;if(c){c=0;if((d|0)==(H|0))h=0;else c=1}if(c)if(1){D=0;F=N;E=d;while(1){c=Qg[f[(f[G>>2]|0)+32>>2]&127](G,E,a+320|0)|0;d:do{d=1;if(d){d=0;if((c|0)==1)I=D;else d=1}if(d)if(1){d=f[a>>2]|0;h=f[d+64>>2]|0;r=f[d+68>>2]|0;e:do if((h|0)!=(r|0)){s=+p[E>>3];t=E+8|0;u=+p[t>>3];v=E+16|0;w=+p[v>>3];x=+p[E+24>>3];y=+p[E+32>>3];z=+p[E+40>>3];A=+p[E+48>>3];B=+p[E+56>>3];C=+p[E+64>>3];e=0;do{i=f[h>>2]|0;q=f[h+4>>2]|0;if((i|0)==(q|0))e=(e|0)>0?e:0;else{o=2;m=i;do{g=+p[m>>3];j=+p[m+8>>3];k=+p[m+16>>3];l=+p[m+24>>3];if(!(l+(x*g+(y*j+z*k))<0.0)){K=!(l+(s*g+(u*j+w*k))<0.0)?2:1;T=52}else if(!(l+(s*g+(u*j+w*k))<0.0))J=1;else{K=0;T=52}do if((T|0)==52){T=0;if(!(l+(A*g+(B*j+C*k))<0.0))i=K+1|0;else if(!K)i=0;else{J=1;break}J=(i|0)==0?0:(i|0)==3?2:1}while(0);o=(J|0)<(o|0)?J:o;m=m+32|0}while((m|0)!=(q|0));if((o|0)==2){I=D;break d}else e=(e|0)<(o|0)?o:e}h=h+12|0}while((h|0)!=(r|0));switch(e|0){case 2:{I=D;break d}case 1:break;default:break e}l=(y-u)*(C-w)-(z-w)*(B-u);z=(z-w)*(A-s)-(x-s)*(C-w);B=(x-s)*(B-u)-(y-u)*(A-s);C=+L(+(l*l+(B*B+z*z)));p[(a+416|0)>>3]=l/C;p[((a+416|0)+8|0)>>3]=z/C;p[((a+416|0)+16|0)>>3]=B/C;p[((a+416|0)+24|0)>>3]=-(l/C*+p[E>>3]+(z/C*+p[t>>3]+B/C*+p[v>>3]));CZa(d+64|0,E,a+416|0,a+552|0,a+272|0);d=f[(a+272|0)>>2]|0;e=f[((a+272|0)+4|0)>>2]|0;do if((d|0)!=(e|0)){if((e-d|0)>0){c=0;do{c=Qg[f[(f[G>>2]|0)+32>>2]&127](G,d,a+320|0)|0|c;d=d+72|0}while(d>>>0<e>>>0);if((c|0)==1)break}else c=0;d=f[a>>2]|0;break e}while(0);I=D;break d}while(0);e=c|D;D=f[d+24>>2]|0;g=+Lg[f[(f[D>>2]|0)+16>>2]&31](D,a+320|0);if(g<+p[(a+248|0)>>3]){p[(a+248|0)>>3]=g;p[(a+224|0)>>3]=+p[(a+320|0)>>3];p[(a+232|0)>>3]=+p[((a+320|0)+8|0)>>3];p[(a+240|0)>>3]=+p[((a+320|0)+16|0)>>3]}if(f[(a+256|0)>>2]|0){I=Eka(f[(a+8|0)>>2]|0,F)|0;d=f[(a+256|0)>>2]|0;c=f[(a+4|0)>>2]|0;f[(a+416|0)>>2]=E;f[(a+368|0)>>2]=I;d=f[d+16>>2]|0;if(!d){T=70;break b}Eh[f[(f[d>>2]|0)+24>>2]&255](d,a+416|0,c,a+368|0);I=e;break}D=f[(f[a>>2]|0)+24>>2]|0;if(!(Ng[f[(f[D>>2]|0)+12>>2]&511](D)|0)){I=e;break}if((e|0)==3){h=3;break c}if((e|0)==2?(b[f[a>>2]>>0]|0)==0:0){h=2;break c}else I=e}}while(0);E=E+72|0;if((E|0)==(H|0)){h=I;break}else{D=I;F=F+1|0}}}}e=(h|0)==0?1:h;c=f[((a+272|0)+12|0)>>2]|0;if(c|0)Wja(c,a+272|0);c=f[(a+272|0)>>2]|0;if(c|0){d=f[((a+272|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+272|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=f[((a+552|0)+12|0)>>2]|0;if(c|0)Wja(c,a+552|0);c=f[(a+552|0)>>2]|0;if(c|0){d=f[((a+552|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+552|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=e|P;if(M)break;H=f[(f[a>>2]|0)+24>>2]|0;if(!(Ng[f[(f[H>>2]|0)+12>>2]&511](H)|0))break;if((c|0)==3){R=3;break b}if((c|0)==2?(b[f[a>>2]>>0]|0)==0:0){R=2;break b}}}while(0);if(!(tka(a+536|0)|0)){R=c;break}uka(a+536|0);N=N+512|0;P=c}if((T|0)==70)ud();c=f[(a+520|0)+12>>2]|0;if(c|0)Wja(c,a+520|0);c=f[(a+520|0)>>2]|0;if(c|0){d=f[((a+520|0)+4|0)>>2]|0;if((d|0)!=(c|0))f[((a+520|0)+4|0)>>2]=d+(~(((d+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}if(S)O=R;else{S=f[(f[a>>2]|0)+24>>2]|0;if(Ng[f[(f[S>>2]|0)+12>>2]&511](S)|0){if((R|0)==3){Q=3;f[a+3056>>2]=1;break a}if((R|0)==2?(b[f[a>>2]>>0]|0)==0:0){Q=2;f[a+3056>>2]=1;break a}else O=R}else O=R}}f[a+672>>2]=N;f[a+712>>2]=O;f[a+736>>2]=P;f[a+960>>2]=Q;f[a+2952>>2]=T}function i_a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=f[a+32>>2]|0;u=f[a+48>>2]|0;B=f[a+56>>2]|0;E=f[a+112>>2]|0;F=f[a+136>>2]|0;v=f[a+920>>2]|0;a:{b:while(1){c:do if(B){h=E;d:while(1){i=h+8|0;e=h+56|0;d=f[e>>2]|0;if((f[i>>2]|0)==(f[d+8>>2]|0))if((f[h+12>>2]|0)==(f[d+12>>2]|0))break c;l=h+60|0;m=f[l>>2]|0;if((m|0)==(d|0)){r=h;l=48;break b}n=f[(m+8|0)>>2]|0;o=f[(m+8|0)+4>>2]|0;q=f[i>>2]|0;i=f[i+4>>2]|0;j=f[(d+8|0)>>2]|0;k=f[(d+8|0)+4>>2]|0;do if((X(q-j|0,o-i|0)|0)==(X(i-k|0,n-q|0)|0)){if(!(b[(D+36|0)>>0]|0))break d;if((n|0)==(j|0)&(o|0)==(k|0))break d;if((n|0)==(q|0)&(o|0)==(i|0))break d;if((q|0)==(j|0)&(i|0)==(k|0))break d;if((n|0)==(j|0))if((o|0)<(i|0)^(i|0)<(k|0))break d;else break;else if((n|0)<(q|0)^(q|0)<(j|0))break d;else break}while(0);if((d|0)==(E|0)){r=E;l=48;break b}else h=d}f[m+56>>2]=d;E=(f[e>>2]|0)+60|0;f[E>>2]=m;f[l>>2]=0;E=f[E>>2]|0;F=(h|0)==(F|0)?d:F;continue b}else{e=E;d=f[E+56>>2]|0;h=f[E+8>>2]|0;while(1){q=h;h=f[d+8>>2]|0;if((q|0)==(h|0))if(!((d|0)==(F|0)?1:(f[e+12>>2]|0)!=(f[d+12>>2]|0)))break;if((f[e+60>>2]|0)==(d|0)){r=e;l=48;break b}if((d|0)==(E|0)){r=E;l=48;break b}e=f[d+56>>2]|0;if((e|0)==(F|0)){s=d;t=F;l=50;break b}else{q=d;d=e;e=q}}h=e;e=e+56|0}while(0);if((h|0)==(d|0)){r=d;l=48;break}q=h+60|0;o=f[q>>2]|0;f[o+56>>2]=f[e>>2];E=f[e>>2]|0;f[E+60>>2]=o;f[q>>2]=0;F=(h|0)==(F|0)?d:F}do if((l|0)==48)if(B)if((f[r+60>>2]|0)==(f[r+56>>2]|0)){l=52;break}else break;else{s=r;t=f[r+56>>2]|0;l=50;break}while(0);if((l|0)==50)if((s|0)==(t|0))l=52;else{b[D+37>>0]=1;f[(f[F+60>>2]|0)+52>>2]=-2}if((l|0)==52){_pb(v);c=0;f[a+1064>>2]=1;break a}k=F+12|0;d=1;j=F;do{e=j+8|0;i=j+56|0;h=f[i>>2]|0;if((f[j+12>>2]|0)<(f[h+12>>2]|0)){s=f[e+4>>2]|0;t=j+16|0;f[t>>2]=f[e>>2];f[t+4>>2]=s;e=j}else{s=f[e+4>>2]|0;t=j;f[t>>2]=f[e>>2];f[t+4>>2]=s;e=j+16|0}t=f[(h+8|0)+4>>2]|0;f[e>>2]=f[(h+8|0)>>2];f[e+4>>2]=t;e=(f[j+20>>2]|0)-(f[j+4>>2]|0)|0;if(!e)g=-1.e+40;else g=+((f[j+16>>2]|0)-(f[j>>2]|0)|0)/+(e|0);p[j+24>>3]=g;f[j+32>>2]=u;j=f[i>>2]|0;if(d)d=(f[j+12>>2]|0)==(f[k>>2]|0);else d=0}while((j|0)!=(F|0));if(d){if(B){_pb(v);c=0;f[a+1064>>2]=1;break a}d=f[F+60>>2]|0;f[d+52>>2]=-2;f[a>>2]=f[F+4>>2];f[a+4>>2]=0;f[a+8>>2]=F;f[F+36>>2]=2;f[F+40>>2]=0;e=F;while(1){c=f[e>>2]|0;if((c|0)!=(f[d+16>>2]|0)){B=e+16|0;C=f[B>>2]|0;f[B>>2]=c;f[e>>2]=C}c=f[e+56>>2]|0;if((f[c+52>>2]|0)==-2)break;f[e+64>>2]=c;e=c;d=f[c+60>>2]|0}c=f[(D+12|0)>>2]|0;if((c|0)==(f[D+16>>2]|0))OZa(D+8|0,a);else{f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];f[(D+12|0)>>2]=(f[(D+12|0)>>2]|0)+12}c=f[(D+28|0)>>2]|0;if((c|0)==(f[D+32>>2]|0))PZa(D+24|0,a+12|0);else{f[c>>2]=f[(a+12|0)>>2];f[(D+28|0)>>2]=(f[(D+28|0)>>2]|0)+4}c=1;f[a+1064>>2]=1;break a}d=f[(D+28|0)>>2]|0;if((d|0)==(f[D+32>>2]|0))PZa(D+24|0,a+12|0);else{f[d>>2]=v;f[(D+28|0)>>2]=(f[(D+28|0)>>2]|0)+4}d=f[F+60>>2]|0;if((f[d>>2]|0)==(f[d+16>>2]|0))if((f[d+4>>2]|0)==(f[d+20>>2]|0))d=f[F+56>>2]|0;else d=F;else d=F;i=0;while(1){while(1){while(1){e=f[d+60>>2]|0;if((f[d>>2]|0)==(f[e>>2]|0))if((f[d+4>>2]|0)==(f[e+4>>2]|0)){if((f[d+8>>2]|0)!=(f[d+16>>2]|0))break;if((f[d+12>>2]|0)!=(f[d+20>>2]|0))break}d=f[d+56>>2]|0}g=+p[d+24>>3];h=+p[e+24>>3]==-1.e+40;if(g==-1.e+40)if(h){C=e;l=95}else{y=d;c=e;x=g}else if(h){C=e;l=95}else{z=d;break}if((l|0)==95){while(1){l=0;c=f[C+60>>2]|0;if(+p[c+24>>3]==-1.e+40)C=c;else break}y=C;x=+p[C+24>>3]}if(x==-1.e+40){d=y;do d=f[d+56>>2]|0;while(+p[d+24>>3]==-1.e+40);w=d;d=f[d+60>>2]|0}else{w=y;d=c}if((f[w+20>>2]|0)==(f[d+4>>2]|0))d=w;else{l=101;break}}if((l|0)==101){l=0;z=(f[c>>2]|0)<(f[w>>2]|0)?y:w}if((z|0)==(i|0)){c=1;f[a+1064>>2]=2;f[a+1068>>2]=4;break a}i=(i|0)==0?z:i;f[a>>2]=f[z+4>>2];d=f[z+60>>2]|0;if(+p[z+24>>3]<+p[d+24>>3]){f[(a+4|0)>>2]=d;f[(a+8|0)>>2]=z;j=0;h=d;d=z}else{f[(a+4|0)>>2]=z;f[(a+8|0)>>2]=d;j=1;h=z}if(B)e=(f[h+56>>2]|0)==(d|0)?-1:1;else e=0;f[h+40>>2]=e;f[d+40>>2]=0-e;d=QZa(D,h,j)|0;if((f[d+52>>2]|0)==-2)d=QZa(D,d,j)|0;e=j^1;h=QZa(D,f[(a+8|0)>>2]|0,e)|0;if((f[h+52>>2]|0)==-2)h=QZa(D,h,e)|0;if((f[(f[(a+4|0)>>2]|0)+52>>2]|0)==-2){A=a+4|0;l=114}else if((f[(f[(a+8|0)>>2]|0)+52>>2]|0)==-2){A=a+8|0;l=114}if((l|0)==114){l=0;f[A>>2]=0}e=f[(D+12|0)>>2]|0;if((e|0)==(f[(D+16|0)>>2]|0))OZa(D+8|0,a);else{f[e>>2]=f[a>>2];f[e+4>>2]=f[a+4>>2];f[e+8>>2]=f[a+8>>2];f[(D+12|0)>>2]=(f[(D+12|0)>>2]|0)+12}d=j?d:h}}f[a+112>>2]=E;f[a+136>>2]=F;f[a+224>>2]=c;f[a+1048>>2]=l}function j_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=f[a+48>>2]|0;o=f[a+56>>2]|0;p=f[a+120>>2]|0;q=f[a+152>>2]|0;c=f[a+288>>2]|0;r=f[a+408>>2]|0;t=f[a+464>>2]|0;m=f[a+512>>2]|0;u=f[a+640>>2]|0;a:{b:while(1){n=q;switch((t-n|0|0)/12|0|0){case 2:{u=5;f[a+664>>2]=2;f[a+668>>2]=11;break a}case 3:{u=7;f[a+664>>2]=2;f[a+668>>2]=11;break a}case 4:{u=15;f[a+664>>2]=2;f[a+668>>2]=11;break a}case 5:{u=16;f[a+664>>2]=2;f[a+668>>2]=11;break a}case 1:case 0:{u=83;f[a+664>>2]=2;f[a+668>>2]=11;break a}default:{}}if((t-n|0|0)<372){u=22;f[a+664>>2]=2;f[a+668>>2]=11;break a}j=q+((((t-n|0)>>>0)/24|0)*12|0)|0;do{i=1;if(i){i=0;if((t-n|0|0)>11988){e=q+((((t-n|0)>>>0)/48|0)*12|0)|0;g=j+((((t-n|0)>>>0)/48|0)*12|0)|0;h=LZa(q,e,j,g,s)|0;if((f[g>>2]|0)>=(f[m>>2]|0)){k=j;break};f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[g>>2]=f[m>>2];f[g+4>>2]=f[m+4>>2];f[g+8>>2]=f[m+8>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];if((f[j>>2]|0)<(f[g>>2]|0)){f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];if((f[e>>2]|0)<(f[j>>2]|0)){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[j>>2];f[e+4>>2]=f[j+4>>2];f[e+8>>2]=f[j+8>>2];f[j>>2]=f[a>>2];f[j+4>>2]=f[a+4>>2];f[j+8>>2]=f[a+8>>2];if((f[q>>2]|0)<(f[e>>2]|0)){f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[q>>2]=f[e>>2];f[q+4>>2]=f[e+4>>2];f[q+8>>2]=f[e+8>>2];f[e>>2]=f[a>>2];f[e+4>>2]=f[a+4>>2];f[e+8>>2]=f[a+8>>2];h=h+4|0;k=j}else{h=h+3|0;k=j}}else{h=h+2|0;k=j}}else{h=h+1|0;k=j}}else i=1}if(i)if(1){k=f[j>>2]|0;e=(k|0)<(f[m>>2]|0);if((f[q>>2]|0)>=(k|0)){if(!e){h=0;k=j;break};f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];if((f[q>>2]|0)>=(f[j>>2]|0)){h=1;k=j;break};f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[q>>2]=f[j>>2];f[q+4>>2]=f[j+4>>2];f[q+8>>2]=f[j+8>>2];f[j>>2]=f[a>>2];f[j+4>>2]=f[a+4>>2];f[j+8>>2]=f[a+8>>2];h=2;k=j;break}if(e){f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[q>>2]=f[m>>2];f[q+4>>2]=f[m+4>>2];f[q+8>>2]=f[m+8>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];h=1;k=j;break};f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[q>>2]=f[j>>2];f[q+4>>2]=f[j+4>>2];f[q+8>>2]=f[j+8>>2];f[j>>2]=f[a>>2];f[j+4>>2]=f[a+4>>2];f[j+8>>2]=f[a+8>>2];if((f[j>>2]|0)<(f[m>>2]|0)){f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];h=2;k=j}else{h=1;k=j}}}while(0);e=f[k>>2]|0;g=f[q>>2]|0;if((e|0)<(g|0)){d=m;b=h;break}else l=m;while(1){l=l+-12|0;if((q|0)==(l|0))break;if((e|0)<(f[l>>2]|0)){u=66;break b}}e=q+12|0;if((f[m>>2]|0)>=(g|0)){if((e|0)==(m|0)){u=83;f[a+664>>2]=2;f[a+668>>2]=11;break a}while(1){if((f[e>>2]|0)<(g|0))break;e=e+12|0;if((e|0)==(m|0)){u=83;f[a+664>>2]=2;f[a+668>>2]=11;break a}}f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[m>>2];f[e+4>>2]=f[m+4>>2];f[e+8>>2]=f[m+8>>2];f[m>>2]=f[a>>2];f[m+4>>2]=f[a+4>>2];f[m+8>>2]=f[a+8>>2];e=e+12|0}if((e|0)==(m|0)){u=83;f[a+664>>2]=2;f[a+668>>2]=11;break a}else g=m;while(1){j=f[q>>2]|0;while(1){i=e+12|0;if((f[e>>2]|0)<(j|0))break;else e=i}do g=g+-12|0;while((f[g>>2]|0)<(j|0));if(e>>>0>=g>>>0){q=e;continue b};f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];e=i}}if((u|0)==66){u=0;f[a>>2]=f[q>>2];f[a+4>>2]=f[q+4>>2];f[a+8>>2]=f[q+8>>2];f[q>>2]=f[l>>2];f[q+4>>2]=f[l+4>>2];f[q+8>>2]=f[l+8>>2];f[l>>2]=f[a>>2];f[l+4>>2]=f[a+4>>2];f[l+8>>2]=f[a+8>>2];d=l;b=h+1|0}c=q+12|0;c:do if(c>>>0<d>>>0){h=j;while(1){g=f[h>>2]|0;while(1){e=c+12|0;if((g|0)<(f[c>>2]|0))c=e;else break}do d=d+-12|0;while((g|0)>=(f[d>>2]|0));if(c>>>0>d>>>0){d=h;break c};f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];h=(h|0)==(c|0)?d:h;c=e;b=b+1|0}}else d=j;while(0);if((c|0)!=(d|0))if((f[c>>2]|0)<(f[d>>2]|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];b=b+1|0}if(!b){r=MZa(q,c,s)|0;b=c+12|0;if(MZa(b,p,s)|0){u=82;f[a+664>>2]=1;break a}if(r){o=b;f[a+664>>2]=3;break a}}p=c;if(((p-n|0)/12|0|0)>=((t-p|0)/12|0|0)){u=81;f[a+664>>2]=1;break a}JZa(q,c,s);o=c+12|0}f[a+56>>2]=o;f[a+152>>2]=q;f[a+288>>2]=c;f[a+408>>2]=r;f[a+640>>2]=u}function k_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;L=f[a+32>>2]|0;n=f[a+80>>2]|0;D=f[a+88>>2]|0;F=f[a+96>>2]|0;G=f[a+144>>2]|0;H=f[a+152>>2]|0;I=f[a+160>>2]|0;o=f[a+208>>2]|0;q=f[a+216>>2]|0;J=f[a+272>>2]|0;K=f[a+368>>2]|0;E=f[a+456>>2]|0;z=f[a+1456>>2]|0;a:{b:while(1){m=(E|0)!=(n|0);b=f[(G?E+68|0:E+72|0)>>2]|0;e=1;if(e){e=0;if(!b){B=F;h=J;g=K;c=E}else e=1}if(e)if(1){l=b;b=F;e=J;g=K;while(1){c:do if(!(f[(L+52|0)>>2]|0)){k=e;j=g;A=45}else if(G){h=e;if((q|0)==(h|0)){s=e;w=g;A=46;break}j=l+8|0;if(z){i=f[j>>2]|0;while(1){if((f[e+8>>2]|0)>=(i|0)){k=e;j=g;A=45;break c}e=f[h+4>>2]|0;h=e;if((q|0)==(h|0)){k=e;j=g;A=45;break c}}}while(1){i=f[e+8>>2]|0;if((i|0)>=(f[j>>2]|0)){k=e;j=g;A=45;break c}e=f[a>>2]|0;if((f[e+52>>2]|0)>=0){A=f[e+4>>2]|0;f[(a+8|0)>>2]=i;f[((a+8|0)+4|0)>>2]=A;q_a(L,e,a+8|0)|0}e=f[h+4>>2]|0;h=e;if((q|0)==(h|0)){k=e;j=g;A=45;break}}}else{h=f[o>>2]|0;if((h|0)==(g|0)){t=e;x=g;A=47;break}k=l+8|0;if(z){i=f[k>>2]|0;while(1){if((f[(f[g>>2]|0)+8>>2]|0)<=(i|0)){k=e;j=g;A=45;break c}g=f[g>>2]|0;if((h|0)==(g|0)){k=e;j=g;A=45;break c}}}while(1){i=f[(f[g>>2]|0)+8>>2]|0;if((i|0)<=(f[k>>2]|0)){k=e;j=g;A=45;break c}j=f[a>>2]|0;if((f[j+52>>2]|0)>=0){h=f[j+4>>2]|0;f[(a+8|0)>>2]=i;f[((a+8|0)+4|0)>>2]=h;q_a(L,j,a+8|0)|0;h=f[o>>2]|0}g=f[g>>2]|0;if((h|0)==(g|0)){k=e;j=g;A=45;break}}}while(0);if((A|0)==45)if(G){s=k;w=j;A=46}else{t=k;x=j;A=47}if((A|0)==46){e=f[l+8>>2]|0;if((e|0)>(I|0)){c=s;d=w;break}else{r=s;v=w;y=e}}else if((A|0)==47){e=f[l+8>>2]|0;if((e|0)<(H|0)){c=t;d=x;break}else{r=t;v=x;y=e}}i=l+8|0;e=f[a>>2]|0;if((y|0)==(f[e+16>>2]|0)){g=f[e+64>>2]|0;if(g|0)if(+p[l+24>>3]<+p[g+24>>3]){c=r;d=v;break}}if(!(z|(f[e+52>>2]|0)<0)){b=q_a(L,e,i)|0;e=f[(L+56|0)>>2]|0;if(e|0)do{g=f[e+52>>2]|0;if((g|0)>-1){A=f[a>>2]|0;M=f[A>>2]|0;A=f[A+16>>2]|0;N=f[e>>2]|0;h=e+16|0;O=f[h>>2]|0;if((((M|0)>(A|0)?A:M)|0)<(((N|0)>(O|0)?N:O)|0)?(((N|0)>(O|0)?O:N)|0)<(((M|0)>(A|0)?M:A)|0):0){g=f[(f[(f[(L+116|0)>>2]|0)+(g<<2)>>2]|0)+16>>2]|0;if((f[e+36>>2]|0)!=1)g=f[g+16>>2]|0;N=f[h>>2]|0;O=f[h+4>>2]|0;h=Wpb(16)|0;f[(a+8|0)>>2]=h;f[h>>2]=g;f[h+4>>2]=b;f[(h+8|0)>>2]=N;f[(h+8|0)+4>>2]=O;g=f[(L+8|0)>>2]|0;if((g|0)==(f[(L+12|0)>>2]|0))r_a(L+4|0,a+8|0);else{f[g>>2]=h;f[(L+8|0)>>2]=(f[(L+8|0)>>2]|0)+4}}}e=f[e+76>>2]|0}while((e|0)!=0);g=f[a>>2]|0;O=f[g>>2]|0;g=f[g+4>>2]|0;e=Wpb(16)|0;f[(a+8|0)>>2]=e;f[e>>2]=b;f[e+4>>2]=0;f[(e+8|0)>>2]=O;f[(e+8|0)+4>>2]=g;g=f[(L+20|0)>>2]|0;if((g|0)==(f[(L+24|0)>>2]|0))r_a(L+16|0,a+8|0);else{f[g>>2]=e;f[(L+20|0)>>2]=(f[(L+20|0)>>2]|0)+4}}if(!(m|(l|0)!=(D|0))){A=67;break b}if(G){O=f[a>>2]|0;N=f[O+12>>2]|0;f[(a+8|0)>>2]=f[i>>2];f[((a+8|0)+4|0)>>2]=N;t_a(L,O,l,a+8|0)}else{O=f[a>>2]|0;N=f[O+12>>2]|0;f[(a+8|0)>>2]=f[i>>2];f[((a+8|0)+4|0)>>2]=N;t_a(L,l,O,a+8|0)}O=l;l=f[(G?l+68|0:l+72|0)>>2]|0;u_a(L+76|0,f[a>>2]|0,O);if(!l){c=r;d=v;break}else{e=r;g=v}}B=b;h=c;g=d;c=f[a>>2]|0}d=f[c+64>>2]|0;if(!d){A=96;break}if(!(+p[d+24>>3]==-1.e+40)){A=96;break}if(!(p_a(L+76|0,a)|0)){C=0;A=150;break}b=f[a>>2]|0;if((f[b+52>>2]|0)>-1){q_a(L,b,b)|0;b=f[a>>2]|0}I=f[b>>2]|0;J=f[b+16>>2]|0;F=B;G=(I|0)<(J|0);H=(I|0)<(J|0)?I:J;I=(I|0)<(J|0)?J:I;J=h;K=g;E=b}b=1;if(b)if((A|0)==67){b=f[a>>2]|0;do if((f[(b+52|0)>>2]|0)>-1){q_a(L,b,b+16|0)|0;if(!(f[D+40>>2]|0))q_a(L,D,b+16|0)|0;c=f[(b+52|0)>>2]|0;d=D+52|0;e=f[d>>2]|0;if((c|0)==(e|0)){f[(b+52|0)>>2]=-1;f[d>>2]=-1;break}if((c|0)<(e|0)){v_a(L,b,D);break}else{v_a(L,D,b);break}}while(0);b=f[a>>2]|0;c=f[(b+72|0)>>2]|0;d=f[(b+68|0)>>2]|0;if((c|0)!=0|(d|0)!=0)A=77;else if((f[(L+128|0)>>2]|0)==(b|0))A=77;if((A|0)==77){f[((c|0)!=0?c+68|0:L+128|0)>>2]=d;if(d)f[d+72>>2]=c;f[(b+68|0)>>2]=0;f[(b+72|0)>>2]=0}b=D+72|0;c=f[b>>2]|0;d=D+68|0;e=f[d>>2]|0;if(!((c|0)!=0|(e|0)!=0))if((f[(L+128|0)>>2]|0)!=(D|0)){O=1;u=a;f[a+1560>>2]=6;f[a+1564>>2]=O|0;break a}f[((c|0)!=0?c+68|0:L+128|0)>>2]=e;if(e)f[e+72>>2]=c;f[d>>2]=0;f[b>>2]=0;O=1;u=a;f[a+1560>>2]=6;f[a+1564>>2]=O|0;break a}else b=1;if(b)if((A|0)==96){b=f[c+52>>2]|0;if(!((B|0)!=0|(b|0)<0)){b=f[(f[(f[(L+116|0)>>2]|0)+(b<<2)>>2]|0)+16>>2]|0;if((f[c+36>>2]|0)!=1)b=f[b+16>>2]|0;d=f[(L+56|0)>>2]|0;if(d){do{c=f[d+52>>2]|0;if((c|0)>-1){O=f[a>>2]|0;N=f[O>>2]|0;O=f[O+16>>2]|0;M=f[d>>2]|0;e=d+16|0;D=f[e>>2]|0;if((((N|0)>(O|0)?O:N)|0)<(((M|0)>(D|0)?M:D)|0)?(((M|0)>(D|0)?D:M)|0)<(((N|0)>(O|0)?N:O)|0):0){c=f[(f[(f[(L+116|0)>>2]|0)+(c<<2)>>2]|0)+16>>2]|0;if((f[d+36>>2]|0)!=1)c=f[c+16>>2]|0;N=f[e>>2]|0;O=f[e+4>>2]|0;e=Wpb(16)|0;f[(a+8|0)>>2]=e;f[e>>2]=c;f[e+4>>2]=b;f[(e+8|0)>>2]=N;f[(e+8|0)+4>>2]=O;c=f[(L+8|0)>>2]|0;if((c|0)==(f[(L+12|0)>>2]|0))r_a(L+4|0,a+8|0);else{f[c>>2]=e;f[(L+8|0)>>2]=(f[(L+8|0)>>2]|0)+4}}}d=f[d+76>>2]|0}while((d|0)!=0);c=f[a>>2]|0}O=c+16|0;N=f[O>>2]|0;O=f[O+4>>2]|0;c=Wpb(16)|0;f[(a+8|0)>>2]=c;f[c>>2]=b;f[c+4>>2]=0;f[(c+8|0)>>2]=N;f[(c+8|0)+4>>2]=O;b=f[(L+20|0)>>2]|0;if((b|0)==(f[(L+24|0)>>2]|0))r_a(L+16|0,a+8|0);else{f[b>>2]=c;f[(L+20|0)>>2]=(f[(L+20|0)>>2]|0)+4}c=f[a>>2]|0;d=f[c+64>>2]|0;b=f[c+52>>2]|0}i=(b|0)>-1;do{j=1;if(j){j=0;if(!d){if(i){q_a(L,c,c+16|0)|0;d=f[a>>2]|0}else d=c;b=d+72|0;e=f[b>>2]|0;g=d+68|0;h=f[g>>2]|0;if(!((e|0)!=0|(h|0)!=0))if((f[(L+128|0)>>2]|0)!=(d|0))break;f[((e|0)!=0?e+68|0:L+128|0)>>2]=h;if(h)f[h+72>>2]=e;f[g>>2]=0;f[b>>2]=0}else j=1}if(j)if(1){if(!i){if(p_a(L+76|0,a)|0)break;else C=0;u=a;f[a+1560>>2]=6;f[a+1564>>2]=C|0;break a}i=q_a(L,c,c+16|0)|0;if(!(p_a(L+76|0,a)|0)){O=0;u=a;f[a+1560>>2]=6;f[a+1564>>2]=O|0;break a}g=f[a>>2]|0;if(!(f[g+40>>2]|0)){O=1;u=a;f[a+1560>>2]=6;f[a+1564>>2]=O|0;break a}b=f[g+72>>2]|0;h=f[g+68>>2]|0;if(b|0){c=f[b+8>>2]|0;if((c|0)==(f[g>>2]|0)){d=f[b+12>>2]|0;if((d|0)==(f[g+4>>2]|0))if(f[b+40>>2]|0)if((f[b+52>>2]|0)>-1){e=f[b+20>>2]|0;if((d|0)>(e|0)){O=X((f[b+16>>2]|0)-(f[b>>2]|0)|0,(f[g+20>>2]|0)-d|0)|0;if((O|0)==(X(e-(f[b+4>>2]|0)|0,(f[g+16>>2]|0)-c|0)|0)){N=q_a(L,b,g)|0;b=(f[a>>2]|0)+16|0;O=f[b>>2]|0;b=f[b+4>>2]|0;c=Wpb(16)|0;f[(a+8|0)>>2]=c;f[c>>2]=i;f[c+4>>2]=N;f[(c+8|0)>>2]=O;f[(c+8|0)+4>>2]=b;b=f[(L+8|0)>>2]|0;if((b|0)==(f[(L+12|0)>>2]|0))r_a(L+4|0,a+8|0);else{f[b>>2]=c;f[(L+8|0)>>2]=(f[(L+8|0)>>2]|0)+4}break}}}}}if(h|0){b=f[h+8>>2]|0;if((b|0)==(f[g>>2]|0)){c=f[h+12>>2]|0;if((c|0)==(f[g+4>>2]|0))if(f[h+40>>2]|0)if((f[h+52>>2]|0)>-1){d=f[h+20>>2]|0;if((c|0)>(d|0)){O=X((f[h+16>>2]|0)-(f[h>>2]|0)|0,(f[g+20>>2]|0)-c|0)|0;if((O|0)==(X(d-(f[h+4>>2]|0)|0,(f[g+16>>2]|0)-b|0)|0)){N=q_a(L,h,g)|0;b=(f[a>>2]|0)+16|0;O=f[b>>2]|0;b=f[b+4>>2]|0;c=Wpb(16)|0;f[(a+8|0)>>2]=c;f[c>>2]=i;f[c+4>>2]=N;f[(c+8|0)>>2]=O;f[(c+8|0)+4>>2]=b;b=f[(L+8|0)>>2]|0;if((b|0)==(f[(L+12|0)>>2]|0))r_a(L+4|0,a+8|0);else{f[b>>2]=c;f[(L+8|0)>>2]=(f[(L+8|0)>>2]|0)+4}}}}}}}}while(0);O=1;u=a;f[a+1560>>2]=6;f[a+1564>>2]=O|0;break a}else b=1;if(b)if((A|0)==150)if(1){u=a;f[a+1560>>2]=6;f[a+1564>>2]=C|0;break a}f[a+1560>>2]=6;f[a+1564>>2]=0;break a}f[a+96>>2]=F;f[a+144>>2]=G;f[a+152>>2]=H;f[a+160>>2]=I;f[a+272>>2]=J;f[a+368>>2]=K;f[a+456>>2]=E;f[a+1528>>2]=A}
function Opa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;m=r+12|0;n=r;o=r+8|0;if(!c){q=0;u=r;return q|0}l=f[a>>2]|0;q=a+4|0;p=f[q>>2]|0;d=p-l>>3;e=p;if(!d){k=l;c=c+b|0;j=l}else{k=l;g=l;while(1){j=(d|0)/2|0;i=g+(j<<3)|0;h=(f[i>>2]|0)>>>0<b>>>0;i=i+8|0;k=h?i:k;d=h?d+-1-j|0:j;if(!d)break;else g=h?i:g}j=k;c=c+b|0;if((k|0)!=(l|0)){d=f[k+-8>>2]|0;g=k+-4|0;h=(f[g>>2]|0)+d|0;if(h>>>0>=b>>>0){f[g>>2]=b-d;if(h>>>0>c>>>0){f[n>>2]=c;f[n+4>>2]=h-c;f[o>>2]=j;f[m>>2]=f[o>>2];Ppa(a,m,n)|0;q=1;u=r;return q|0}}}}a:do if((k|0)==(e|0)){g=0;d=j}else{d=j;g=k;while(1){h=f[g>>2]|0;if(c>>>0<=h>>>0){g=0;break a}i=g+4|0;h=(f[i>>2]|0)+h|0;if(h>>>0>c>>>0)break;d=d+8|0;g=g+8|0;if((g|0)==(e|0)){g=0;break a}}f[g>>2]=c;f[i>>2]=h-c;g=1}while(0);if((k|0)==(d|0)){q=g;u=r;return q|0}g=k+(d-j>>3<<3)|0;d=p-g|0;h=d>>3;if(h){Jrb(k|0,g|0,d|0)|0;e=f[q>>2]|0}d=k+(h<<3)|0;if((e|0)==(d|0)){q=1;u=r;return q|0}f[q>>2]=e+(~((e+-8-d|0)>>>3)<<3);q=1;u=r;return q|0}function Ppa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=f[a>>2]|0;e=g;j=(f[b>>2]|0)-e|0;o=g+(j>>3<<3)|0;p=a+4|0;h=f[p>>2]|0;n=a+8|0;m=f[n>>2]|0;b=h;d=m;if(h>>>0<m>>>0){if((o|0)==(h|0)){n=f[c+4>>2]|0;a=o;f[a>>2]=f[c>>2];f[a+4>>2]=n;f[p>>2]=(f[p>>2]|0)+8;p=o;return p|0}e=b-(o+8)|0;g=e>>3;b=o+(g<<3)|0;if(b>>>0<h>>>0){d=h;do{m=b;n=f[m+4>>2]|0;a=d;f[a>>2]=f[m>>2];f[a+4>>2]=n;b=b+8|0;d=(f[p>>2]|0)+8|0;f[p>>2]=d}while(b>>>0<h>>>0)}if(g|0)Jrb(h+(0-g<<3)|0,o|0,e|0)|0;n=c;a=f[n+4>>2]|0;p=o;f[p>>2]=f[n>>2];f[p+4>>2]=a;p=o;return p|0}b=(b-e>>3)+1|0;if(b>>>0>536870911)fob(a);m=d-e|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<b>>>0?b:d):536870911;m=o;h=j>>3;do if(!d){k=0;l=0}else if(d>>>0>536870911)ud();else{l=Wpb(d<<3)|0;k=l;break}while(0);b=k+(h<<3)|0;e=b;i=k+(d<<3)|0;do if((h|0)==(d|0)){if((j|0)>0){b=b+(((d+1|0)/-2|0)<<3)|0;e=b;break}d=d<<3>>2;d=(d|0)==0?1:d;if(d>>>0>536870911)ud();j=Wpb(d<<3)|0;b=j+(d>>>2<<3)|0;e=b;d=j+(d<<3)|0;if(!k)i=d;else{Zpb(l);i=d;g=f[a>>2]|0}}while(0);h=c;d=f[h+4>>2]|0;f[b>>2]=f[h>>2];f[b+4>>2]=d;b=e+8|0;d=m-g|0;h=e+(0-(d>>3)<<3)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[p>>2]|0)-m|0;if((d|0)>0){Irb(b|0,o|0,d|0)|0;b=b+(d>>>3<<3)|0}d=f[a>>2]|0;f[a>>2]=h;f[p>>2]=b;f[n>>2]=i;if(!d){p=e;return p|0}Zpb(d);p=e;return p|0}function Qpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;d=o+4|0;m=o;l=a+200|0;b=b&255;if(!(1<<b&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7))){n=0;u=o;return n|0}l=f[a+104>>2]|0;k=f[l+108+(b*36|0)+12>>2]|0;l=f[l+108+(b*36|0)+16>>2]|0;f[m>>2]=l;b=l-k>>3;if(!b)b=k;else{a=b;b=k;e=k;while(1){p=(a|0)/2|0;i=e+(p<<3)|0;g=(f[i>>2]|0)>>>0<c>>>0;i=i+8|0;b=g?i:b;a=g?a+-1-p|0:p;if(!a)break;else e=g?i:e}}f[d>>2]=b;if((b|0)==(l|0))n=6;else if((f[b>>2]|0)!=(c|0))n=6;if((n|0)==6)if((b|0)==(k|0))d=m;else{p=b+-8|0;f[d>>2]=p;d=((f[b+-4>>2]|0)+(f[p>>2]|0)|0)>>>0>c>>>0?d:m}p=(f[d>>2]|0)!=(l|0);u=o;return p|0}function Rpa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=a+200|0;k=j[n>>1]|0|(h[n+2>>0]|0)<<16;c=c&255;l=1<<c;if(!(l&(k&7)))return;m=a+104|0;g=f[m>>2]|0;i=f[g+108+(c*36|0)+12>>2]|0;c=g+108+(c*36|0)+16|0;e=f[c>>2]|0;if((e|0)==(i|0))c=k;else{f[c>>2]=e+(~((e+-8-i|0)>>>3)<<3);c=j[n>>1]|0|(h[n+2>>0]|0)<<16;g=f[m>>2]|0}l=l^7;e=l&(c&16777215)&7|c&16773624;c=e|(l&((c&16777215)>>>9&16777215))<<9&3584;d[n>>1]=c;b[n+2>>0]=c>>>16;n=a+196|0;c=f[n>>2]|0;f[n>>2]=c|512;if(!((c&1879048192|0)==0&(g|0)!=0))return;if(!((c&177209344|0)==0&(e&63|0)==0))return;f[m>>2]=0;Aoa(g);Zpb(g);return}function Spa(a){a=a|0;Rpa(a,0);Rpa(a,1);Rpa(a,2);return}function Tpa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;o=p;n=c&255;m=a+200|0;e=j[m>>1]|0|(h[m+2>>0]|0)<<16;e=(1<<n|(e&16777215)>>>9&16777215)<<9&3584|e&16773631;d[m>>1]=e;b[m+2>>0]=e>>>16;m=a+104|0;e=f[m>>2]|0;c=f[e+(n*36|0)+12>>2]|0;e=e+(n*36|0)+16|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~((g+-8-c|0)>>>3)<<3);c=f[(f[a+4>>2]|0)+44>>2]|0;l=f[c+68+(n*12|0)>>2]|0;c=f[c+68+(n*12|0)+4>>2]|0;if((l|0)==(c|0)){u=p;return}a=(c-l|0)/12|0;i=f[m>>2]|0;c=f[i+108+(n*36|0)+12>>2]|0;i=f[i+108+(n*36|0)+16>>2]|0;if((c|0)==(i|0)){u=p;return}k=o+4|0;while(1){e=f[c>>2]|0;if(e>>>0>=a>>>0){c=10;break}g=(f[c+4>>2]|0)+e|0;g=a>>>0<g>>>0?a:g;if(e>>>0<g>>>0)do{q=(f[m>>2]|0)+(n*36|0)+12|0;f[o>>2]=f[l+(e*12|0)>>2];f[k>>2]=f[l+(e*12|0)+4>>2];Lpa(q,o)|0;e=e+1|0}while(e>>>0<g>>>0);c=c+8|0;if((c|0)==(i|0)){c=10;break}}if((c|0)==10){u=p;return}}function Upa(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+32|0;m=q+8|0;o=q+4|0;l=q;n[m>>2]=0.0;n[o>>2]=0.0;n[l>>2]=0.0;p=f[(+n[i>>2]>0.0?i:m)>>2]|0;k=i+4|0;o=f[(+n[k>>2]>0.0?k:o)>>2]|0;i=i+8|0;l=f[(+n[i>>2]>0.0?i:l)>>2]|0;i=a+104|0;k=f[i>>2]|0;if(!k){k=Wpb(296)|0;Krb(k|0,0,228)|0;n[k+256>>2]=-1.0;n[k+260>>2]=-1.0;n[k+264>>2]=-1.0;n[k+268>>2]=-1.0;n[k+272>>2]=-1.0;n[k+276>>2]=-1.0;n[k+280>>2]=-1.0;n[k+284>>2]=-1.0;n[k+288>>2]=-1.0;f[i>>2]=k}i=c&255;f[m>>2]=p;f[m+4>>2]=o;f[m+8>>2]=l;f[m+12>>2]=e;f[m+16>>2]=g;if(!(Vpa(k+108+(i*36|0)+24|0,m)|0)){p=0;u=q;return p|0}e=1<<i;p=a+200|0;g=j[p>>1]|0|(h[p+2>>0]|0)<<16;g=(e|(g&16777215)>>>3&16777215)<<3&56|g&16748487|((e^7)&((g&16777215)>>>12&16777215))<<12&28672;d[p>>1]=g;b[p+2>>0]=g>>>16;p=a+196|0;f[p>>2]=f[p>>2]|256;p=1;u=q;return p|0}function Vpa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+64|0;x=B+60|0;p=B+16|0;r=B+56|0;A=B+8|0;y=B+4|0;c=B;v=b+16|0;l=f[v>>2]|0;if(!l){A=0;u=B;return A|0}k=f[a>>2]|0;z=a+4|0;t=f[z>>2]|0;s=b+12|0;d=t-k|0;do if(!d){h=k;d=k;k=h;e=l+(f[s>>2]|0)|0}else{i=f[s>>2]|0;e=(d|0)/20|0;d=k;g=k;while(1){q=(e|0)/2|0;h=(f[g+(q*20|0)+12>>2]|0)>>>0<i>>>0;j=g+(q*20|0)+20|0;d=h?j:d;e=h?e+-1-q|0:q;if(!e)break;else g=h?j:g}q=d;e=l+i|0;if((d|0)==(k|0)){k=q;h=q}else{g=d+-20|0;h=g;o=f[d+-8>>2]|0;k=d+-4|0;l=(f[k>>2]|0)+o|0;if(i>>>0>l>>>0){k=q;h=q}else{m=l>>>0<e>>>0;if(+n[b>>2]==+n[g>>2])if(+n[b+4>>2]==+n[d+-16>>2])j=+n[b+8>>2]==+n[d+-12>>2];else j=0;else j=0;if(m){if(j){f[s>>2]=o;i=e;g=b}else h=q;f[g+16>>2]=i-o;k=h;h=q;break}if(j){A=0;u=B;return A|0}f[k>>2]=i-o;if(l>>>0>e>>>0){f[p>>2]=f[b>>2];f[p+4>>2]=f[b+4>>2];f[p+8>>2]=f[b+8>>2];f[p+12>>2]=f[b+12>>2];f[p+16>>2]=f[b+16>>2];A=p+20|0;f[A>>2]=f[g>>2];f[A+4>>2]=f[g+4>>2];f[A+8>>2]=f[g+8>>2];f[p+32>>2]=e;f[p+36>>2]=l-e;f[r>>2]=q;f[x>>2]=f[r>>2];Wpa(a,x,p,p+40|0)|0;A=1;u=B;return A|0}else{k=q;h=q}}}}while(0);a:do if((d|0)==(t|0))g=h;else{g=h;while(1){j=d+12|0;i=f[j>>2]|0;if(e>>>0<=i>>>0){w=20;break}i=(f[d+16>>2]|0)+i|0;if(i>>>0>e>>>0)break;h=h+20|0;d=d+20|0;g=d;if((d|0)==(t|0))break a}if((w|0)==20){if((e|0)!=(i|0))break;if(!(+n[b>>2]==+n[d>>2]))break;if(!(+n[b+4>>2]==+n[d+4>>2]))break;if(!(+n[b+8>>2]==+n[d+8>>2]))break;f[v>>2]=(f[d+16>>2]|0)+e-(f[s>>2]|0);h=h+20|0;break}if(+n[b>>2]==+n[d>>2])if(+n[b+4>>2]==+n[d+4>>2])if(+n[b+8>>2]==+n[d+8>>2]){e=f[s>>2]|0;d=b;h=h+20|0}else w=30;else w=30;else w=30;if((w|0)==30)f[j>>2]=e;f[d+16>>2]=i-e}while(0);e=k;d=h;if((e|0)==(d|0)){f[y>>2]=g;f[x>>2]=f[y>>2];d=Xpa(a,x,b)|0}else{g=k;f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[g+12>>2]=f[b+12>>2];f[g+16>>2]=f[b+16>>2];g=e+20|0;if((g|0)==(d|0))c=A;else{c=g+(((h-g|0)/20|0)*20|0)|0;d=f[z>>2]|0;e=d-c|0;if(e){Jrb(g|0,c|0,e|0)|0;d=f[z>>2]|0}c=g+(((e|0)/20|0)*20|0)|0;if((d|0)==(c|0)){d=g;c=A}else{f[z>>2]=d+(~(((d+-20-c|0)>>>0)/20|0)*20|0);d=g;c=A}}}f[c>>2]=d;A=1;u=B;return A|0}function Wpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=f[a>>2]|0;g=m;i=(f[b>>2]|0)-g|0;p=m+(((i|0)/20|0)*20|0)|0;h=d;k=c;q=h-k|0;j=(q|0)/20|0;if((q|0)<=0){q=p;return q|0}o=a+8|0;e=f[o>>2]|0;q=a+4|0;n=f[q>>2]|0;b=n;if((j|0)<=((e-b|0)/20|0|0)){g=b-p|0;b=(g|0)/20|0;if((j|0)>(b|0)){e=c+(b*20|0)|0;b=h-e|0;if((b|0)>0){Irb(n|0,e|0,b|0)|0;b=(f[q>>2]|0)+(((b>>>0)/20|0)*20|0)|0;f[q>>2]=b}else b=n;if((g|0)>0){d=e;h=b}else{q=p;return q|0}}else h=n;g=h-(p+(j*20|0))|0;b=p+(((g|0)/20|0)*20|0)|0;if(b>>>0<n>>>0){e=h;do{f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[e+16>>2]=f[b+16>>2];b=b+20|0;e=(f[q>>2]|0)+20|0;f[q>>2]=e}while(b>>>0<n>>>0)}if(g|0)Jrb(h+(((g|0)/-20|0)*20|0)|0,p|0,g|0)|0;b=d-k|0;if(!b){q=p;return q|0}Jrb(p|0,c|0,b|0)|0;q=p;return q|0}b=((b-g|0)/20|0)+j|0;if(b>>>0>214748364)fob(a);j=(e-g|0)/20|0;g=j<<1;g=j>>>0<107374182?(g>>>0<b>>>0?b:g):214748364;j=p;b=(i|0)/20|0;do if(!g)l=0;else if(g>>>0>214748364)ud();else{l=Wpb(g*20|0)|0;break}while(0);k=l+(b*20|0)|0;e=k;i=l+(g*20|0)|0;if((c|0)==(d|0))b=m;else{b=c;g=k;do{f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];f[g+12>>2]=f[b+12>>2];f[g+16>>2]=f[b+16>>2];g=e+20|0;e=g;b=b+20|0}while((b|0)!=(d|0));b=f[a>>2]|0}g=j-b|0;h=k+(((g|0)/-20|0)*20|0)|0;if((g|0)>0)Irb(h|0,b|0,g|0)|0;g=(f[q>>2]|0)-j|0;if((g|0)>0){Irb(e|0,p|0,g|0)|0;e=e+(((g>>>0)/20|0)*20|0)|0;b=f[a>>2]|0}f[a>>2]=h;f[q>>2]=e;f[o>>2]=i;if(!b){q=k;return q|0}Zpb(b);q=k;return q|0}function Xpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=f[a>>2]|0;e=g;j=(f[b>>2]|0)-e|0;p=g+(((j|0)/20|0)*20|0)|0;q=a+4|0;h=f[q>>2]|0;o=a+8|0;n=f[o>>2]|0;b=h;d=n;if(h>>>0<n>>>0){if((p|0)==(h|0)){f[p>>2]=f[c>>2];f[p+4>>2]=f[c+4>>2];f[p+8>>2]=f[c+8>>2];f[p+12>>2]=f[c+12>>2];f[p+16>>2]=f[c+16>>2];f[q>>2]=(f[q>>2]|0)+20;q=p;return q|0}e=b-(p+20)|0;b=p+(((e|0)/20|0)*20|0)|0;if(b>>>0<h>>>0){d=h;do{f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];f[d+16>>2]=f[b+16>>2];b=b+20|0;d=(f[q>>2]|0)+20|0;f[q>>2]=d}while(b>>>0<h>>>0)}if(!e)b=p;else{Jrb(h+(((e|0)/-20|0)*20|0)|0,p|0,e|0)|0;b=p};f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[b+16>>2]=f[c+16>>2];q=p;return q|0}b=((b-e|0)/20|0)+1|0;if(b>>>0>214748364)fob(a);n=(d-e|0)/20|0;d=n<<1;d=n>>>0<107374182?(d>>>0<b>>>0?b:d):214748364;n=p;h=(j|0)/20|0;do if(!d){l=0;m=0}else if(d>>>0>214748364)ud();else{m=Wpb(d*20|0)|0;l=m;break}while(0);b=l+(h*20|0)|0;e=b;i=l+(d*20|0)|0;do if((h|0)==(d|0)){if((j|0)>0){b=b+(((d+1|0)/-2|0)*20|0)|0;e=b;break}d=d*20|0;d=(d|0)==0?1:((d|0)/20|0)<<1;b=d>>>2;do if(!d)k=0;else if(d>>>0>214748364)ud();else{k=Wpb(d*20|0)|0;break}while(0);b=k+(b*20|0)|0;e=b;d=k+(d*20|0)|0;if(!l)i=d;else{Zpb(m);i=d;g=f[a>>2]|0}}while(0);f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];f[b+8>>2]=f[c+8>>2];f[b+12>>2]=f[c+12>>2];f[b+16>>2]=f[c+16>>2];b=e+20|0;d=n-g|0;h=e+(((d|0)/-20|0)*20|0)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[q>>2]|0)-n|0;if((d|0)>0){Irb(b|0,p|0,d|0)|0;b=b+(((d>>>0)/20|0)*20|0)|0}d=f[a>>2]|0;f[a>>2]=h;f[q>>2]=b;f[o>>2]=i;if(!d){q=e;return q|0}Zpb(d);q=e;return q|0}function Ypa(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0;l=a+200|0;i=c&255;c=1<<i;if(!(c&(((j[l>>1]|0|(h[l+2>>0]|0)<<16)&16777215)>>>3&7))){l=0;return l|0}k=a+104|0;if(!(Zpa((f[k>>2]|0)+108+(i*36|0)+24|0,e,g)|0)){l=0;return l|0}g=f[k>>2]|0;if((f[g+108+(i*36|0)+24>>2]|0)==(f[g+108+(i*36|0)+28>>2]|0)){c=c^7;e=j[l>>1]|0|(h[l+2>>0]|0)<<16;e=(c&((e&16777215)>>>3&16777215))<<3&56|e&16777159;d[l>>1]=e;b[l+2>>0]=e>>>16}else{c=c^7;e=j[l>>1]|0|(h[l+2>>0]|0)<<16}c=(c&((e&16777215)>>>12&16777215))<<12&28672|e&16748543;d[l>>1]=c;b[l+2>>0]=c>>>16;l=a+196|0;c=f[l>>2]|0;f[l>>2]=c|256;if(!((c&1879048192|0)==0&(g|0)!=0)){l=1;return l|0}if(!((c&177209344|0)==0&(e&63|0)==0)){l=1;return l|0}f[k>>2]=0;Aoa(g);Zpb(g);l=1;return l|0}function Zpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;n=s+24|0;o=s+4|0;p=s;if(!c){r=0;u=s;return r|0}l=f[a>>2]|0;r=a+4|0;q=f[r>>2]|0;d=q-l|0;e=q;if(!d){m=l;j=c+b|0;k=l}else{d=(d|0)/20|0;m=l;g=l;while(1){k=(d|0)/2|0;h=(f[g+(k*20|0)+12>>2]|0)>>>0<b>>>0;i=g+(k*20|0)+20|0;m=h?i:m;d=h?d+-1-k|0:k;if(!d)break;else g=h?i:g}k=m;j=c+b|0;if((m|0)!=(l|0)){d=m+-20|0;g=f[m+-8>>2]|0;h=m+-4|0;i=(f[h>>2]|0)+g|0;if(i>>>0>=b>>>0){f[h>>2]=b-g;if(i>>>0>j>>>0){f[o>>2]=f[d>>2];f[o+4>>2]=f[d+4>>2];f[o+8>>2]=f[d+8>>2];f[o+12>>2]=j;f[o+16>>2]=i-j;f[p>>2]=k;f[n>>2]=f[p>>2];Xpa(a,n,o)|0;r=1;u=s;return r|0}}}}a:do if((m|0)==(e|0)){g=0;d=k}else{d=k;c=m;while(1){h=c+12|0;g=f[h>>2]|0;if(j>>>0<=g>>>0){g=0;break a}i=c+16|0;g=(f[i>>2]|0)+g|0;if(g>>>0>j>>>0)break;d=d+20|0;c=c+20|0;if((c|0)==(e|0)){g=0;break a}}f[h>>2]=j;f[i>>2]=g-j;g=1}while(0);if((m|0)==(d|0)){r=g;u=s;return r|0}d=m+(((d-k|0)/20|0)*20|0)|0;g=q-d|0;if(g){Jrb(m|0,d|0,g|0)|0;e=f[r>>2]|0}d=m+(((g|0)/20|0)*20|0)|0;if((e|0)==(d|0)){r=1;u=s;return r|0}f[r>>2]=e+(~(((e+-20-d|0)>>>0)/20|0)*20|0);r=1;u=s;return r|0}function _pa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;q=u;u=u+16|0;e=q+4|0;o=q;m=b+200|0;c=c&255;if(!(1<<c&(((j[m>>1]|0|(h[m+2>>0]|0)<<16)&16777215)>>>3&7))){n[a>>2]=-1.0;n[a+4>>2]=-1.0;n[a+8>>2]=-1.0;u=q;return}m=f[b+104>>2]|0;l=f[m+108+(c*36|0)+24>>2]|0;m=f[m+108+(c*36|0)+28>>2]|0;f[o>>2]=m;c=m-l|0;if(!c)c=l;else{b=(c|0)/20|0;c=l;g=l;while(1){r=(b|0)/2|0;i=(f[g+(r*20|0)+12>>2]|0)>>>0<d>>>0;k=g+(r*20|0)+20|0;c=i?k:c;b=i?b+-1-r|0:r;if(!b)break;else g=i?k:g}}f[e>>2]=c;if((c|0)==(m|0))p=8;else if((f[c+12>>2]|0)!=(d|0))p=8;if((p|0)==8)if((c|0)==(l|0))e=o;else{f[e>>2]=c+-20;e=((f[c+-4>>2]|0)+(f[c+-8>>2]|0)|0)>>>0>d>>>0?e:o}e=f[e>>2]|0;if((e|0)==(m|0)){n[a>>2]=-1.0;n[a+4>>2]=-1.0;n[a+8>>2]=-1.0;u=q;return}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];u=q;return}}function $pa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+16|0;e=w+12|0;p=w+8|0;v=w;s=b+200|0;t=c&255;if(1<<t&(((j[s>>1]|0|(h[s+2>>0]|0)<<16)&16777215)>>>3&7)|0){s=f[b+104>>2]|0;q=f[s+108+(t*36|0)+24>>2]|0;s=f[s+108+(t*36|0)+28>>2]|0;f[p>>2]=s;g=s-q|0;if(!g)g=q;else{k=(g|0)/20|0;g=q;l=q;while(1){x=(k|0)/2|0;m=(f[l+(x*20|0)+12>>2]|0)>>>0<d>>>0;o=l+(x*20|0)+20|0;g=m?o:g;k=m?k+-1-x|0:x;if(!k)break;else l=m?o:l}}f[e>>2]=g;if((g|0)==(s|0))r=7;else if((f[g+12>>2]|0)!=(d|0))r=7;if((r|0)==7)if((g|0)==(q|0))e=p;else{f[e>>2]=g+-20;e=((f[g+-4>>2]|0)+(f[g+-8>>2]|0)|0)>>>0>d>>>0?e:p}e=f[e>>2]|0;if((e|0)!=(s|0)){i=+n[e>>2];if(i>=0.0){x=f[e+8>>2]|0;v=f[e+4>>2]|0;n[a>>2]=i;f[a+4>>2]=v;f[a+8>>2]=x;u=w;return}}}if(f[b+196>>2]&8388608|0){e=f[b+104>>2]|0;i=+n[e+256+(t*12|0)>>2];if(i>=0.0){x=f[e+256+(t*12|0)+8>>2]|0;v=f[e+256+(t*12|0)+4>>2]|0;n[a>>2]=i;f[a+4>>2]=v;f[a+8>>2]=x;u=w;return}}rpa(v,b,c,d);e=f[v>>2]|0;k=v+4|0;g=f[k>>2]|0;if(!e){if(g|0)Ppb(g);g=b+12+(t<<3)|0;e=f[g>>2]|0;if(!e){spa(b,c);e=f[g>>2]|0}f[v>>2]=e;g=f[b+12+(t<<3)+4>>2]|0;f[k>>2]=g;if(!g)g=0;else Npb(g)}f[a>>2]=f[e+128>>2];f[a+4>>2]=f[e+132>>2];f[a+8>>2]=f[e+136>>2];if(!g){u=w;return}Ppb(g);u=w;return}function aqa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=a+200|0;k=j[n>>1]|0|(h[n+2>>0]|0)<<16;c=c&255;l=1<<c;if(!(l&((k&16777215)>>>3&7))){n=0;return n|0}m=a+104|0;g=f[m>>2]|0;i=f[g+108+(c*36|0)+24>>2]|0;c=g+108+(c*36|0)+28|0;e=f[c>>2]|0;if((e|0)==(i|0))c=k;else{f[c>>2]=e+(~(((e+-20-i|0)>>>0)/20|0)*20|0);c=j[n>>1]|0|(h[n+2>>0]|0)<<16;g=f[m>>2]|0}l=l^7;e=(l&((c&16777215)>>>3&16777215))<<3&56|c&16748487;c=e|(l&((c&16777215)>>>12&16777215))<<12&28672;d[n>>1]=c;b[n+2>>0]=c>>>16;n=a+196|0;c=f[n>>2]|0;f[n>>2]=c|256;if(!((c&1879048192|0)==0&(g|0)!=0)){n=1;return n|0}if(!((c&177209344|0)==0&(e&63|0)==0)){n=1;return n|0}f[m>>2]=0;Aoa(g);Zpb(g);n=1;return n|0}function bqa(a){a=a|0;var b=0;b=a+200|0;if(!((j[b>>1]|0|(h[b+2>>0]|0)<<16)&56)){b=0;return b|0}aqa(a,0)|0;aqa(a,1)|0;aqa(a,2)|0;b=1;return b|0}function cqa(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;p=q;o=c&255;n=a+200|0;e=j[n>>1]|0|(h[n+2>>0]|0)<<16;e=(1<<o|(e&16777215)>>>12&16777215)<<12&28672|e&16748543;d[n>>1]=e;b[n+2>>0]=e>>>16;n=a+104|0;e=f[n>>2]|0;c=f[e+(o*36|0)+24>>2]|0;e=e+(o*36|0)+28|0;g=f[e>>2]|0;if((g|0)!=(c|0))f[e>>2]=g+(~(((g+-20-c|0)>>>0)/20|0)*20|0);c=f[(f[a+4>>2]|0)+44>>2]|0;m=f[c+68+(o*12|0)>>2]|0;c=f[c+68+(o*12|0)+4>>2]|0;if((m|0)==(c|0)){u=q;return}a=(c-m|0)/12|0;i=f[n>>2]|0;c=f[i+108+(o*36|0)+24>>2]|0;i=f[i+108+(o*36|0)+28>>2]|0;if((c|0)==(i|0)){u=q;return}k=p+12|0;l=p+16|0;while(1){e=f[c+12>>2]|0;if(e>>>0>=a>>>0){c=11;break}g=(f[c+16>>2]|0)+e|0;g=a>>>0<g>>>0?a:g;if(e>>>0<g>>>0)do{r=(f[n>>2]|0)+(o*36|0)+24|0;f[p>>2]=f[c>>2];f[p+4>>2]=f[c+4>>2];f[p+8>>2]=f[c+8>>2];f[k>>2]=f[m+(e*12|0)>>2];f[l>>2]=f[m+(e*12|0)+4>>2];Vpa(r,p)|0;e=e+1|0}while(e>>>0<g>>>0);c=c+20|0;if((c|0)==(i|0)){c=11;break}}if((c|0)==11){u=q;return}}function dqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=a+108|0;c=f[b>>2]|0;if((f[e>>2]|0)==(c|0))return;d=f[b+4>>2]|0;if(d|0)Npb(d);f[e>>2]=c;g=a+112|0;b=f[g>>2]|0;f[g>>2]=d;if(b){Ppb(b);c=f[e>>2]|0}g=a+196|0;f[g>>2]=f[g>>2]&-4353|((c|0)!=0&1)<<12|256;return}function eqa(a,c,d){a=a|0;c=c|0;d=+d;var e=0,g=0,i=0,j=0;j=u;u=u+16|0;i=j+4|0;g=j+8|0;e=j;n[i>>2]=d;n[g>>2]=0.0;n[e>>2]=1.0;e=d<1.0?i:e;g=f[(+n[e>>2]>0.0?e:g)>>2]|0;f[i>>2]=g;i=a+203|0;c=c&255;e=1<<c;if(!(e&((h[i>>0]|0)>>>2&7)))c=a+180+(c<<2)|0;else{c=a+180+(c<<2)|0;if(+n[c>>2]==(f[s>>2]=g,+n[s>>2])){a=0;u=j;return a|0}}f[c>>2]=g;g=b[i>>0]|0;b[i>>0]=((e|(g&255)>>>2&255)&255)<<2&28|g&-29;a=a+196|0;f[a>>2]=f[a>>2]|256;a=1;u=j;return a|0}function fqa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=a+203|0;d=b[g>>0]|0;c=c&255;e=1<<c;if(!(e&((d&255)>>>2&7))){g=0;return g|0}c=a+180+(c<<2)|0;if(!(+n[c>>2]==1.0)){f[c>>2]=1065353216;d=b[g>>0]|0;d=((e|(d&255)>>>2&255)&255)<<2&28|d&-29;b[g>>0]=d;a=a+196|0;f[a>>2]=f[a>>2]|256}b[g>>0]=((e^7)&((d&255)>>>2&255)&255)<<2&28|d&-29;g=1;return g|0}function gqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;d=b&255;e=+n[a+180+(d<<2)>>2];d=a+12+(d<<3)|0;c=f[d>>2]|0;if(!c){spa(a,b);c=f[d>>2]|0}return +(e*+n[c+140>>2])}function hqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;g=l+8|0;h=l+4|0;j=l;d=a+104|0;e=f[d>>2]|0;if(!e){k=Wpb(296)|0;Krb(k|0,0,228)|0;n[k+256>>2]=-1.0;n[k+260>>2]=-1.0;n[k+264>>2]=-1.0;n[k+268>>2]=-1.0;n[k+272>>2]=-1.0;n[k+276>>2]=-1.0;n[k+280>>2]=-1.0;n[k+284>>2]=-1.0;n[k+288>>2]=-1.0;f[d>>2]=k}else k=e;n[g>>2]=0.0;n[h>>2]=0.0;n[j>>2]=0.0;i=f[(+n[c>>2]>0.0?c:g)>>2]|0;g=c+4|0;g=f[(+n[g>>2]>0.0?g:h)>>2]|0;e=c+8|0;e=f[(+n[e>>2]>0.0?e:j)>>2]|0;d=b&255;if(+n[k+256+(d*12|0)>>2]==(f[s>>2]=i,+n[s>>2]))if(+n[k+256+(d*12|0)+4>>2]==(f[s>>2]=g,+n[s>>2]))if(!(+n[k+256+(d*12|0)+8>>2]!=(f[s>>2]=e,+n[s>>2]))){a=0;u=l;return a|0}f[k+256+(d*12|0)>>2]=i;f[k+256+(d*12|0)+4>>2]=g;f[k+256+(d*12|0)+8>>2]=e;a=a+196|0;f[a>>2]=f[a>>2]|8388864;a=1;u=l;return a|0}function iqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;g=a+196|0;if(!(f[g>>2]&8388608)){i=0;return i|0}i=a+104|0;c=f[i>>2]|0;e=b&255;b=c+256+(e*12|0)|0;if(!(+n[b>>2]>=0.0)){i=0;return i|0}n[b>>2]=-1.0;n[c+256+(e*12|0)+4>>2]=-1.0;n[c+256+(e*12|0)+8>>2]=-1.0;b=f[g>>2]|0;c=b|256;f[g>>2]=c;d=f[i>>2]|0;if(+n[d+256+(e*12|0)>>2]>=0.0){i=1;return i|0}f[g>>2]=c&-8388609;if(!((b&1879048192|0)==0&(d|0)!=0)){i=1;return i|0}g=a+200|0;if(!((b&168820736|0)==0?((j[g>>1]|0|(h[g+2>>0]|0)<<16)&63|0)==0:0)){i=1;return i|0}f[i>>2]=0;Aoa(d);Zpb(d);i=1;return i|0}function jqa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0;if(+n[d>>2]==0.0)if(+n[d+4>>2]==0.0)if(+n[d+8>>2]==0.0)return;h=a+104|0;g=f[h>>2]|0;if(!g){g=Wpb(296)|0;Krb(g|0,0,228)|0;n[g+256>>2]=-1.0;n[g+260>>2]=-1.0;n[g+264>>2]=-1.0;n[g+268>>2]=-1.0;n[g+272>>2]=-1.0;n[g+276>>2]=-1.0;n[g+280>>2]=-1.0;n[g+284>>2]=-1.0;n[g+288>>2]=-1.0;f[h>>2]=g}m=a+196|0;f[m>>2]=f[m>>2]|33554432;g=g+292|0;b[g>>0]=b[g>>0]&-2|c&1;k=+n[d>>2];j=+n[d+4>>2];l=+n[d+8>>2];i=+L(+(k*k+(j*j+l*l)));k=k/i;j=j/i;i=l/i;d=f[h>>2]|0;n[d+240>>2]=k;n[d+244>>2]=j;n[d+248>>2]=i;n[d+228>>2]=k;n[d+232>>2]=j;n[d+236>>2]=i;e=+N(+(e*.01745329238474369));n[d+252>>2]=e;Ooa(a);return}function kqa(a){a=a|0;var b=0,c=0,d=0;c=a+196|0;b=f[c>>2]|0;f[c>>2]=b&-33554433;c=a+104|0;d=f[c>>2]|0;if(!((b&1879048192|0)==0&(d|0)!=0))return;a=a+200|0;if(!((b&143654912|0)==0?((j[a>>1]|0|(h[a+2>>0]|0)<<16)&63|0)==0:0))return;f[c>>2]=0;Aoa(d);Zpb(d);return}function lqa(a){a=a|0;return +(+Q(+(+n[(f[a+104>>2]|0)+252>>2]))*57.295780181884766)}function mqa(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=b&255;h=a+60+(g<<2)|0;b=f[h>>2]|0;if(!b){b=Wpb(24)|0;d[b+4>>1]=0;f[b>>2]=27972;f[h>>2]=b;e=h}else e=h;a:while(1){switch(Pg[f[(f[b>>2]|0)+136>>2]&255](b,c)|0){case 1:break a;case 0:{b=0;j=14;break a}case 2:{l=f[h>>2]|0;nh[f[(f[l>>2]|0)+100>>2]&1023](i,l);l=f[i>>2]|0;f[i>>2]=0;b=f[h>>2]|0;f[e>>2]=l;if(!b)f[i>>2]=0;else{fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[i>>2]|0;f[i>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}break}default:{}}b=f[h>>2]|0}if((j|0)==14){u=k;return b|0}f[a+12+(g<<3)>>2]=0;l=a+12+(g<<3)+4|0;b=f[l>>2]|0;f[l>>2]=0;if(!b){l=1;u=k;return l|0}Ppb(b);l=1;u=k;return l|0}function nqa(a,b){a=a|0;b=b|0;var c=0,e=0;b=b&255;e=a+60+(b<<2)|0;c=f[e>>2]|0;if(!c){e=0;return e|0}if(!(Ng[f[(f[c>>2]|0)+76>>2]&511](c)|0)){e=0;return e|0}f[a+12+(b<<3)>>2]=0;a=a+12+(b<<3)+4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Ppb(b);b=f[e>>2]|0;if(d[b+4>>1]&2047){e=1;return e|0}f[e>>2]=0;if(!b){e=1;return e|0}fh[f[(f[b>>2]|0)+4>>2]&2047](b);e=1;return e|0}function oqa(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=b&255;h=a+60+(g<<2)|0;b=f[h>>2]|0;if(!b){b=Wpb(24)|0;d[b+4>>1]=0;f[b>>2]=27972;f[h>>2]=b;e=h}else e=h;a:while(1){switch(Pg[f[(f[b>>2]|0)+140>>2]&255](b,c)|0){case 1:break a;case 0:{b=0;j=14;break a}case 2:{l=f[h>>2]|0;nh[f[(f[l>>2]|0)+100>>2]&1023](i,l);l=f[i>>2]|0;f[i>>2]=0;b=f[h>>2]|0;f[e>>2]=l;if(!b)f[i>>2]=0;else{fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[i>>2]|0;f[i>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}break}default:{}}b=f[h>>2]|0}if((j|0)==14){u=k;return b|0}f[a+12+(g<<3)>>2]=0;l=a+12+(g<<3)+4|0;b=f[l>>2]|0;f[l>>2]=0;if(!b){l=1;u=k;return l|0}Ppb(b);l=1;u=k;return l|0}function pqa(a,b){a=a|0;b=b|0;var c=0,e=0;b=b&255;e=a+60+(b<<2)|0;c=f[e>>2]|0;if(!c){e=0;return e|0}if(!(Ng[f[(f[c>>2]|0)+84>>2]&511](c)|0)){e=0;return e|0}f[a+12+(b<<3)>>2]=0;a=a+12+(b<<3)+4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Ppb(b);b=f[e>>2]|0;if(d[b+4>>1]&2047){e=1;return e|0}f[e>>2]=0;if(!b){e=1;return e|0}fh[f[(f[b>>2]|0)+4>>2]&2047](b);e=1;return e|0}function qqa(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=b&255;h=a+60+(g<<2)|0;b=f[h>>2]|0;if(!b){b=Wpb(24)|0;d[b+4>>1]=0;f[b>>2]=27972;f[h>>2]=b;e=h}else e=h;a:while(1){switch(Pg[f[(f[b>>2]|0)+144>>2]&255](b,c)|0){case 1:break a;case 0:{b=0;j=14;break a}case 2:{l=f[h>>2]|0;nh[f[(f[l>>2]|0)+100>>2]&1023](i,l);l=f[i>>2]|0;f[i>>2]=0;b=f[h>>2]|0;f[e>>2]=l;if(!b)f[i>>2]=0;else{fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[i>>2]|0;f[i>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}break}default:{}}b=f[h>>2]|0}if((j|0)==14){u=k;return b|0}f[a+12+(g<<3)>>2]=0;l=a+12+(g<<3)+4|0;b=f[l>>2]|0;f[l>>2]=0;if(!b){l=1;u=k;return l|0}Ppb(b);l=1;u=k;return l|0}function rqa(a,b){a=a|0;b=b|0;var c=0,e=0;b=b&255;e=a+60+(b<<2)|0;c=f[e>>2]|0;if(!c){e=0;return e|0}if(!(Ng[f[(f[c>>2]|0)+92>>2]&511](c)|0)){e=0;return e|0}f[a+12+(b<<3)>>2]=0;a=a+12+(b<<3)+4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Ppb(b);b=f[e>>2]|0;if(d[b+4>>1]&2047){e=1;return e|0}f[e>>2]=0;if(!b){e=1;return e|0}fh[f[(f[b>>2]|0)+4>>2]&2047](b);e=1;return e|0}function sqa(a,b,c,e){a=a|0;b=b|0;c=+c;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;l=a+64|0;g=f[l>>2]|0;if(!g){g=Wpb(24)|0;d[g+4>>1]=0;f[g>>2]=27972;f[l>>2]=g;h=l}else h=l;a:while(1){switch(Pg[f[(f[g>>2]|0)+124>>2]&255](g,b)|0){case 0:{j=12;break a}case 1:{i=1;break a}case 2:{i=f[l>>2]|0;nh[f[(f[i>>2]|0)+100>>2]&1023](k,i);i=f[k>>2]|0;f[k>>2]=0;g=f[l>>2]|0;f[h>>2]=i;if(!g)f[k>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);g=f[k>>2]|0;f[k>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g)}break}default:{}}g=f[l>>2]|0}if((j|0)==12)i=0;g=f[l>>2]|0;if(!g){g=Wpb(24)|0;d[g+4>>1]=0;f[g>>2]=27972;f[l>>2]=g;h=l}else h=l;b:while(1){switch(Og[f[(f[g>>2]|0)+128>>2]&15](g,c)|0){case 0:{j=24;break b}case 1:{b=1;break b}case 2:{b=f[l>>2]|0;nh[f[(f[b>>2]|0)+100>>2]&1023](k,b);b=f[k>>2]|0;f[k>>2]=0;g=f[l>>2]|0;f[h>>2]=b;if(!g)f[k>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);g=f[k>>2]|0;f[k>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g)}break}default:{}}g=f[l>>2]|0}if((j|0)==24)b=0;g=f[l>>2]|0;if(!g){g=Wpb(24)|0;d[g+4>>1]=0;f[g>>2]=27972;f[l>>2]=g;h=l}else h=l;c:while(1){switch(Pg[f[(f[g>>2]|0)+132>>2]&255](g,e)|0){case 0:{j=37;break c}case 1:{j=36;break c}case 2:{j=f[l>>2]|0;nh[f[(f[j>>2]|0)+100>>2]&1023](k,j);j=f[k>>2]|0;f[k>>2]=0;g=f[l>>2]|0;f[h>>2]=j;if(!g)f[k>>2]=0;else{fh[f[(f[g>>2]|0)+4>>2]&2047](g);g=f[k>>2]|0;f[k>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g)}break}default:{}}g=f[l>>2]|0}if((j|0)==36){l=a+196|0;f[l>>2]=f[l>>2]|67108864;Xoa(a)}else if((j|0)==37){l=a+196|0;f[l>>2]=f[l>>2]|67108864;if(!(i|b)){l=0;u=m;return l|0}}f[a+20>>2]=0;l=a+24|0;g=f[l>>2]|0;f[l>>2]=0;if(!g){l=1;u=m;return l|0}Ppb(g);l=1;u=m;return l|0}function tqa(a){a=a|0;var b=0,c=0,e=0,g=0;c=a+196|0;if(!(f[c>>2]&67108864)){e=0;return e|0}e=a+64|0;g=f[e>>2]|0;Ng[f[(f[g>>2]|0)+52>>2]&511](g)|0;g=f[e>>2]|0;Ng[f[(f[g>>2]|0)+60>>2]&511](g)|0;g=f[e>>2]|0;Ng[f[(f[g>>2]|0)+68>>2]&511](g)|0;f[c>>2]=f[c>>2]&-67108865;f[a+20>>2]=0;g=a+24|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Ppb(b);b=f[e>>2]|0;if(!(d[b+4>>1]&2047)){f[e>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}if((f[c>>2]&201326592|0)!=134217728){g=1;return g|0}Xoa(a);g=1;return g|0}function uqa(a){a=a|0;if(!(f[a+196>>2]&134217728)){a=f[(f[a+4>>2]|0)+44>>2]|0;return a|0}else{a=f[(f[a+104>>2]|0)+216>>2]|0;return a|0}return 0}function vqa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;y=u;u=u+640|0;s=y+528|0;t=y+136|0;v=y;w=y+400|0;x=y+272|0;o=a+196|0;h=f[o>>2]|0;if(!(h&67108864)){u=y;return}q=(f[a+4>>2]|0)+44|0;i=f[q>>2]|0;if(!(f[i+28>>2]|0)){u=y;return}if(!(b[i+144>>0]&2)){u=y;return}r=(h&134217728|0)!=0;if(!r){m=a+104|0;h=f[m>>2]|0;if(!h){h=Wpb(296)|0;Krb(h|0,0,228)|0;n[h+256>>2]=-1.0;n[h+260>>2]=-1.0;n[h+264>>2]=-1.0;n[h+268>>2]=-1.0;n[h+272>>2]=-1.0;n[h+276>>2]=-1.0;n[h+280>>2]=-1.0;n[h+284>>2]=-1.0;n[h+288>>2]=-1.0;f[m>>2]=h}j=Wpb(52)|0;Ara(j);k=h+216|0;l=f[k>>2]|0;f[k>>2]=j;if(l|0){h=f[l+16>>2]|0;if(h|0)Ppb(h);h=f[l>>2]|0;if(h|0){k=l+4|0;i=f[k>>2]|0;if((i|0)!=(h|0)){do{j=i+-28|0;f[k>>2]=j;i=f[i+-24>>2]|0;if(!i)i=j;else{Ppb(i);i=f[k>>2]|0}}while((i|0)!=(h|0));h=f[l>>2]|0}Zpb(h)}Zpb(l)}f[o>>2]=f[o>>2]|134217728;l=f[(f[m>>2]|0)+216>>2]|0;k=f[q>>2]|0;f[l+48>>2]=f[k+48>>2];Dra(l,0,f[k+24>>2]|0);Dra(l,1,f[(f[q>>2]|0)+28>>2]|0);Dra(l,2,f[(f[q>>2]|0)+32>>2]|0);Era(l,0,0);Era(l,1,(f[l+24>>2]|0)+(f[l+36>>2]|0)|0);Era(l,2,(f[l+28>>2]|0)+(f[l+40>>2]|0)|0);D5a(s,34962);Fra(l,s,0);k=f[(f[l>>2]|0)+20>>2]|0;q=k+4|0;m=l+4|0;h=f[m>>2]|0;if(h>>>0<(f[l+8>>2]|0)>>>0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;f[h+24>>2]=0;i=(f[m>>2]|0)+28|0;f[m>>2]=i}else{wqa(l);i=f[m>>2]|0}h=f[s>>2]|0;o=s+4|0;j=f[o>>2]|0;if(j|0)Npb(j);f[i+-28>>2]=h;z=i+-24|0;h=f[z>>2]|0;f[z>>2]=j;if(h|0)Ppb(h);f[i+-20>>2]=k;f[i+-16>>2]=8;f[i+-12>>2]=5126;f[i+-8>>2]=q;b[i+-4>>0]=1;b[i+-3>>0]=1;h=f[l>>2]|0;i=f[m>>2]|0;if((h|0)!=(i|0))do{f[h+20>>2]=q;h=h+28|0}while((h|0)!=(i|0));h=f[o>>2]|0;if(h|0)Ppb(h)}i=a+20|0;h=f[i>>2]|0;if(!h){spa(a,1);h=f[i>>2]|0}switch(b[h+186>>0]|0){case 0:{if(r){u=y;return}z=s+8|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;f[z+20>>2]=0;f[z+24>>2]=0;n[s+36>>2]=1.0;n[s+40>>2]=0.0;xqa(a,0,s);u=y;return}case 1:{if(r){u=y;return}j=f[a+96>>2]|0;k=f[j+4>>2]|0;l=f[j+8>>2]|0;m=f[j+12>>2]|0;o=f[j+16>>2]|0;q=f[j+20>>2]|0;r=f[j+24>>2]|0;c=f[j+28>>2]|0;d=f[j+32>>2]|0;e=f[j+36>>2]|0;g=f[j+40>>2]|0;t=f[j+44>>2]|0;v=f[j+48>>2]|0;w=f[j+52>>2]|0;x=f[j+56>>2]|0;z=f[j+60>>2]|0;f[s>>2]=f[j>>2];f[s+4>>2]=k;f[s+8>>2]=l;f[s+12>>2]=m;f[s+16>>2]=o;f[s+20>>2]=q;f[s+24>>2]=r;f[s+28>>2]=c;f[s+32>>2]=d;f[s+36>>2]=e;f[s+40>>2]=g;f[s+44>>2]=t;f[s+48>>2]=v;f[s+52>>2]=w;f[s+56>>2]=x;f[s+60>>2]=z;z=s+64|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;f[z+20>>2]=0;f[z+24>>2]=0;n[s+92>>2]=1.0;n[s+96>>2]=0.0;yqa(a,0,s);u=y;return}case 2:{if(!(r^1|c)){u=y;return}Rga(w,1.0,+(g|0)/+(e|0));k=Jga(d,e,g)|0;f[v>>2]=w;f[v+4>>2]=k;k=v+8|0;Bga(k,v)|0;j=f[a+96>>2]|0;n[t>>2]=+p[k>>3];n[t+4>>2]=+p[v+16>>3];n[t+8>>2]=+p[v+24>>3];n[t+12>>2]=+p[v+32>>3];n[t+16>>2]=+p[v+40>>3];n[t+20>>2]=+p[v+48>>3];n[t+24>>2]=+p[v+56>>3];n[t+28>>2]=+p[v+64>>3];n[t+32>>2]=+p[v+72>>3];n[t+36>>2]=+p[v+80>>3];n[t+40>>2]=+p[v+88>>3];n[t+44>>2]=+p[v+96>>3];n[t+48>>2]=+p[v+104>>3];n[t+52>>2]=+p[v+112>>3];n[t+56>>2]=+p[v+120>>3];n[t+60>>2]=+p[v+128>>3];f[t+64>>2]=j;zqa(s,t)|0;j=f[s+4>>2]|0;k=f[s+8>>2]|0;l=f[s+12>>2]|0;m=f[s+16>>2]|0;o=f[s+20>>2]|0;q=f[s+24>>2]|0;r=f[s+28>>2]|0;c=f[s+32>>2]|0;d=f[s+36>>2]|0;e=f[s+40>>2]|0;g=f[s+44>>2]|0;v=f[s+48>>2]|0;w=f[s+52>>2]|0;x=f[s+56>>2]|0;z=f[s+60>>2]|0;f[t>>2]=f[s>>2];f[t+4>>2]=j;f[t+8>>2]=k;f[t+12>>2]=l;f[t+16>>2]=m;f[t+20>>2]=o;f[t+24>>2]=q;f[t+28>>2]=r;f[t+32>>2]=c;f[t+36>>2]=d;f[t+40>>2]=e;f[t+44>>2]=g;f[t+48>>2]=v;f[t+52>>2]=w;f[t+56>>2]=x;f[t+60>>2]=z;z=t+64|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;n[t+84>>2]=1.0;n[t+88>>2]=0.0;Aqa(a,1,t);u=y;return}case 3:{if(!(r^1|c)){u=y;return}Rga(x,+(e|0)/+(g|0),1.0);k=Jga(d,e,g)|0;f[v>>2]=x;f[v+4>>2]=k;k=v+8|0;Bga(k,v)|0;j=f[a+96>>2]|0;n[t>>2]=+p[k>>3];n[t+4>>2]=+p[v+16>>3];n[t+8>>2]=+p[v+24>>3];n[t+12>>2]=+p[v+32>>3];n[t+16>>2]=+p[v+40>>3];n[t+20>>2]=+p[v+48>>3];n[t+24>>2]=+p[v+56>>3];n[t+28>>2]=+p[v+64>>3];n[t+32>>2]=+p[v+72>>3];n[t+36>>2]=+p[v+80>>3];n[t+40>>2]=+p[v+88>>3];n[t+44>>2]=+p[v+96>>3];n[t+48>>2]=+p[v+104>>3];n[t+52>>2]=+p[v+112>>3];n[t+56>>2]=+p[v+120>>3];n[t+60>>2]=+p[v+128>>3];f[t+64>>2]=j;zqa(s,t)|0;j=f[s+4>>2]|0;k=f[s+8>>2]|0;l=f[s+12>>2]|0;m=f[s+16>>2]|0;o=f[s+20>>2]|0;q=f[s+24>>2]|0;r=f[s+28>>2]|0;c=f[s+32>>2]|0;d=f[s+36>>2]|0;e=f[s+40>>2]|0;g=f[s+44>>2]|0;v=f[s+48>>2]|0;w=f[s+52>>2]|0;x=f[s+56>>2]|0;z=f[s+60>>2]|0;f[t>>2]=f[s>>2];f[t+4>>2]=j;f[t+8>>2]=k;f[t+12>>2]=l;f[t+16>>2]=m;f[t+20>>2]=o;f[t+24>>2]=q;f[t+28>>2]=r;f[t+32>>2]=c;f[t+36>>2]=d;f[t+40>>2]=e;f[t+44>>2]=g;f[t+48>>2]=v;f[t+52>>2]=w;f[t+56>>2]=x;f[t+60>>2]=z;z=t+64|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;f[z+12>>2]=0;f[z+16>>2]=0;n[t+84>>2]=1.0;n[t+88>>2]=0.0;Aqa(a,1,t);u=y;return}default:{u=y;return}}}function wqa(a){a=a|0;var b=0,c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;k=f[l>>2]|0;c=f[a>>2]|0;i=(k-c|0)/28|0;e=i+1|0;b=c;g=k;if(e>>>0>153391689)fob(a);m=a+8|0;c=((f[m>>2]|0)-c|0)/28|0;h=c<<1;h=c>>>0<76695844?(h>>>0<e>>>0?e:h):153391689;do if(!h)j=0;else if(h>>>0>153391689)ud();else{j=Wpb(h*28|0)|0;break}while(0);c=j+(i*28|0)|0;e=c;h=j+(h*28|0)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;i=c+28|0;if((g|0)==(b|0))g=k;else{do{j=g;g=g+-28|0;f[c+-28>>2]=f[g>>2];k=j+-24|0;f[c+-24>>2]=f[k>>2];f[g>>2]=0;f[k>>2]=0;k=c+-20|0;j=j+-20|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];d[k+16>>1]=d[j+16>>1]|0;c=e+-28|0;e=c}while((g|0)!=(b|0));g=f[a>>2]|0;b=f[l>>2]|0}f[a>>2]=e;f[l>>2]=i;f[m>>2]=h;e=g;if((b|0)!=(e|0))do{c=f[b+-24>>2]|0;b=b+-28|0;if(c|0)Ppb(c)}while((b|0)!=(e|0));if(!g)return;Zpb(g);return}function xqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0;x=(f[a+4>>2]|0)+44|0;D=f[x>>2]|0;d=D+64|0;y=f[f[(f[a+104>>2]|0)+216>>2]>>2]|0;a=f[y+20>>2]|0;z=a>>>2;A=z+-1|0;B=A<<2;D=X((f[D+28>>2]|0)+(f[D+24>>2]|0)+(f[D+32>>2]|0)|0,z)|0;C=D<<2;D=Xpb(D>>>0>1073741823?-1:D<<2)|0;E=Qqa(d)|0;E=Xpb(E>>>0>1073741823?-1:E<<2)|0;Tqa(d,E)|0;if(!(Rqa(d)|0)){s=c+8|0;t=c+16|0;u=c+24|0;v=c+36|0;r=c+32|0;k=a+-4&-4;a=f[x>>2]|0;g=f[a+24>>2]|0;if(!g){d=E;g=D}else{d=E+(A<<2)+(X(k,g+-1|0)|0)|0;h=X(z,g)|0;a=0;c=E;e=D;while(1){Irb(e|0,c|0,B|0)|0;n[e+(A<<2)>>2]=0.0;a=a+1|0;if((a|0)==(g|0))break;else{c=c+(A<<2)|0;e=e+(z<<2)|0}}g=D+(h<<2)|0;a=f[x>>2]|0}q=f[a+28>>2]|0;if(q){e=d+(A<<2)+(X(k,q+-1|0)|0)|0;h=X(z,q)|0;c=0;a=g;while(1){Irb(a|0,d|0,B|0)|0;l=+n[d>>2];m=+n[d+4>>2];o=+n[d+8>>2];i=+p[s>>3];if(i==l)if(+p[t>>3]==m)if(+p[u>>3]==o){n[v>>2]=0.0;i=+n[r>>2]}else w=16;else w=16;else w=16;do if((w|0)==16){w=0;if(+n[v>>2]==0.0){G=l-i;F=m-+p[t>>3];i=o-+p[u>>3];i=+L(+(G*G+(F*F+i*i)));n[v>>2]=i;i=+n[r>>2]+i;n[r>>2]=i;break}else{n[r>>2]=0.0;n[v>>2]=0.0;i=0.0;break}}while(0);p[s>>3]=l;p[t>>3]=m;p[u>>3]=o;n[a+(A<<2)>>2]=i;c=c+1|0;if((c|0)==(q|0))break;else{d=d+(A<<2)|0;a=a+(z<<2)|0}}d=e;g=g+(h<<2)|0;a=f[x>>2]|0}e=f[a+32>>2]|0;if(!e){B=f[y>>2]|0;b=b?35040:35044;I5a(B,C,D,b);_pb(E);_pb(D);return}else{c=0;a=g}while(1){Irb(a|0,d|0,B|0)|0;n[a+(A<<2)>>2]=0.0;c=c+1|0;if((c|0)==(e|0))break;else{d=d+(A<<2)|0;a=a+(z<<2)|0}}B=f[y>>2]|0;b=b?35040:35044;I5a(B,C,D,b);_pb(E);_pb(D);return}else{v=Rqa(d)|0;v=Xpb(v>>>0>2147483647?-1:v<<1)|0;Uqa(d,v)|0;r=c+8|0;s=c+16|0;t=c+24|0;u=c+36|0;q=c+32|0;a=f[x>>2]|0;h=f[a+24>>2]|0;if(!h){g=D;d=v}else{e=X(z,h)|0;a=0;d=v;c=D;while(1){Irb(c|0,E+((X(A,j[d>>1]|0)|0)<<2)|0,B|0)|0;n[c+(A<<2)>>2]=0.0;a=a+1|0;if((a|0)==(h|0))break;else{d=d+2|0;c=c+(z<<2)|0}}g=D+(e<<2)|0;d=v+(h<<1)|0;a=f[x>>2]|0}k=f[a+28>>2]|0;if(k){h=X(z,k)|0;a=0;c=d;e=g;while(1){H=E+((X(A,j[c>>1]|0)|0)<<2)|0;Irb(e|0,H|0,B|0)|0;l=+n[H>>2];m=+n[H+4>>2];o=+n[H+8>>2];i=+p[r>>3];if(i==l)if(+p[s>>3]==m)if(+p[t>>3]==o){n[u>>2]=0.0;i=+n[q>>2]}else w=29;else w=29;else w=29;do if((w|0)==29){w=0;if(+n[u>>2]==0.0){F=l-i;G=m-+p[s>>3];i=o-+p[t>>3];i=+L(+(F*F+(G*G+i*i)));n[u>>2]=i;i=+n[q>>2]+i;n[q>>2]=i;break}else{n[q>>2]=0.0;n[u>>2]=0.0;i=0.0;break}}while(0);p[r>>3]=l;p[s>>3]=m;p[t>>3]=o;n[e+(A<<2)>>2]=i;a=a+1|0;if((a|0)==(k|0))break;else{c=c+2|0;e=e+(z<<2)|0}}g=g+(h<<2)|0;d=d+(k<<1)|0;a=f[x>>2]|0}e=f[a+32>>2]|0;if(e|0){c=0;a=g;while(1){Irb(a|0,E+((X(A,j[d>>1]|0)|0)<<2)|0,B|0)|0;n[a+(A<<2)>>2]=0.0;c=c+1|0;if((c|0)==(e|0))break;else{d=d+2|0;a=a+(z<<2)|0}}}_pb(v);B=f[y>>2]|0;H=b?35040:35044;I5a(B,C,D,H);_pb(E);_pb(D);return}}function yqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0;m=(f[a+4>>2]|0)+44|0;t=f[m>>2]|0;d=t+64|0;o=f[f[(f[a+104>>2]|0)+216>>2]>>2]|0;a=f[o+20>>2]|0;p=a>>>2;q=p+-1|0;r=q<<2;t=X((f[t+28>>2]|0)+(f[t+24>>2]|0)+(f[t+32>>2]|0)|0,p)|0;s=t<<2;t=Xpb(t>>>0>1073741823?-1:t<<2)|0;u=Qqa(d)|0;u=Xpb(u>>>0>1073741823?-1:u<<2)|0;Tqa(d,u)|0;if(!(Rqa(d)|0)){l=a+-4&-4;a=f[m>>2]|0;h=f[a+24>>2]|0;if(!h){d=u;h=t}else{d=u+(q<<2)+(X(l,h+-1|0)|0)|0;i=X(p,h)|0;a=0;e=u;g=t;while(1){Irb(g|0,e|0,r|0)|0;n[g+(q<<2)>>2]=0.0;a=a+1|0;if((a|0)==(h|0))break;else{e=e+(q<<2)|0;g=g+(p<<2)|0}}h=t+(i<<2)|0;a=f[m>>2]|0}k=f[a+28>>2]|0;if(k){g=d+(q<<2)+(X(l,k+-1|0)|0)|0;i=X(p,k)|0;e=0;a=h;while(1){Irb(a|0,d|0,r|0)|0;v=+Cqa(c,d);n[a+(q<<2)>>2]=v;e=e+1|0;if((e|0)==(k|0))break;else{d=d+(q<<2)|0;a=a+(p<<2)|0}}d=g;h=h+(i<<2)|0;a=f[m>>2]|0}g=f[a+32>>2]|0;if(!g){r=f[o>>2]|0;b=b?35040:35044;I5a(r,s,t,b);_pb(u);_pb(t);return}else{e=0;a=h}while(1){Irb(a|0,d|0,r|0)|0;n[a+(q<<2)>>2]=0.0;e=e+1|0;if((e|0)==(g|0))break;else{d=d+(q<<2)|0;a=a+(p<<2)|0}}r=f[o>>2]|0;b=b?35040:35044;I5a(r,s,t,b);_pb(u);_pb(t);return}else{l=Rqa(d)|0;l=Xpb(l>>>0>2147483647?-1:l<<1)|0;Uqa(d,l)|0;a=f[m>>2]|0;h=f[a+24>>2]|0;if(!h){k=t;d=l}else{g=X(p,h)|0;a=0;d=l;e=t;while(1){Irb(e|0,u+((X(q,j[d>>1]|0)|0)<<2)|0,r|0)|0;n[e+(q<<2)>>2]=0.0;a=a+1|0;if((a|0)==(h|0))break;else{d=d+2|0;e=e+(p<<2)|0}}k=t+(g<<2)|0;d=l+(h<<1)|0;a=f[m>>2]|0}i=f[a+28>>2]|0;if(!i)h=k;else{h=X(p,i)|0;a=0;e=d;g=k;while(1){w=u+((X(q,j[e>>1]|0)|0)<<2)|0;Irb(g|0,w|0,r|0)|0;v=+Cqa(c,w);n[g+(q<<2)>>2]=v;a=a+1|0;if((a|0)==(i|0))break;else{e=e+2|0;g=g+(p<<2)|0}}h=k+(h<<2)|0;d=d+(i<<1)|0;a=f[m>>2]|0}g=f[a+32>>2]|0;if(g|0){e=0;a=h;while(1){Irb(a|0,u+((X(q,j[d>>1]|0)|0)<<2)|0,r|0)|0;n[a+(q<<2)>>2]=0.0;e=e+1|0;if((e|0)==(g|0))break;else{d=d+2|0;a=a+(p<<2)|0}}}_pb(l);r=f[o>>2]|0;w=b?35040:35044;I5a(r,s,t,w);_pb(u);_pb(t);return}}function zqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=b+64|0;r=f[h>>2]|0;u=b+16|0;t=b+32|0;s=b+48|0;n[a>>2]=+n[b>>2]*+n[r>>2]+ +n[u>>2]*+n[r+4>>2]+ +n[t>>2]*+n[r+8>>2]+ +n[s>>2]*+n[r+12>>2];r=f[h>>2]|0;q=b+4|0;p=b+20|0;o=b+36|0;m=b+52|0;n[a+4>>2]=+n[q>>2]*+n[r>>2]+ +n[p>>2]*+n[r+4>>2]+ +n[o>>2]*+n[r+8>>2]+ +n[m>>2]*+n[r+12>>2];r=f[h>>2]|0;l=b+8|0;k=b+24|0;j=b+40|0;i=b+56|0;n[a+8>>2]=+n[l>>2]*+n[r>>2]+ +n[k>>2]*+n[r+4>>2]+ +n[j>>2]*+n[r+8>>2]+ +n[i>>2]*+n[r+12>>2];r=f[h>>2]|0;g=b+12|0;e=b+28|0;d=b+44|0;c=b+60|0;n[a+12>>2]=+n[g>>2]*+n[r>>2]+ +n[e>>2]*+n[r+4>>2]+ +n[d>>2]*+n[r+8>>2]+ +n[c>>2]*+n[r+12>>2];r=f[h>>2]|0;n[a+16>>2]=+n[b>>2]*+n[r+16>>2]+ +n[u>>2]*+n[r+20>>2]+ +n[t>>2]*+n[r+24>>2]+ +n[s>>2]*+n[r+28>>2];r=f[h>>2]|0;n[a+20>>2]=+n[q>>2]*+n[r+16>>2]+ +n[p>>2]*+n[r+20>>2]+ +n[o>>2]*+n[r+24>>2]+ +n[m>>2]*+n[r+28>>2];r=f[h>>2]|0;n[a+24>>2]=+n[l>>2]*+n[r+16>>2]+ +n[k>>2]*+n[r+20>>2]+ +n[j>>2]*+n[r+24>>2]+ +n[i>>2]*+n[r+28>>2];r=f[h>>2]|0;n[a+28>>2]=+n[g>>2]*+n[r+16>>2]+ +n[e>>2]*+n[r+20>>2]+ +n[d>>2]*+n[r+24>>2]+ +n[c>>2]*+n[r+28>>2];r=f[h>>2]|0;n[a+32>>2]=+n[b>>2]*+n[r+32>>2]+ +n[u>>2]*+n[r+36>>2]+ +n[t>>2]*+n[r+40>>2]+ +n[s>>2]*+n[r+44>>2];r=f[h>>2]|0;n[a+36>>2]=+n[q>>2]*+n[r+32>>2]+ +n[p>>2]*+n[r+36>>2]+ +n[o>>2]*+n[r+40>>2]+ +n[m>>2]*+n[r+44>>2];r=f[h>>2]|0;n[a+40>>2]=+n[l>>2]*+n[r+32>>2]+ +n[k>>2]*+n[r+36>>2]+ +n[j>>2]*+n[r+40>>2]+ +n[i>>2]*+n[r+44>>2];r=f[h>>2]|0;n[a+44>>2]=+n[g>>2]*+n[r+32>>2]+ +n[e>>2]*+n[r+36>>2]+ +n[d>>2]*+n[r+40>>2]+ +n[c>>2]*+n[r+44>>2];r=f[h>>2]|0;n[a+48>>2]=+n[b>>2]*+n[r+48>>2]+ +n[u>>2]*+n[r+52>>2]+ +n[t>>2]*+n[r+56>>2]+ +n[s>>2]*+n[r+60>>2];b=f[h>>2]|0;n[a+52>>2]=+n[q>>2]*+n[b+48>>2]+ +n[p>>2]*+n[b+52>>2]+ +n[o>>2]*+n[b+56>>2]+ +n[m>>2]*+n[b+60>>2];b=f[h>>2]|0;n[a+56>>2]=+n[l>>2]*+n[b+48>>2]+ +n[k>>2]*+n[b+52>>2]+ +n[j>>2]*+n[b+56>>2]+ +n[i>>2]*+n[b+60>>2];b=f[h>>2]|0;n[a+60>>2]=+n[g>>2]*+n[b+48>>2]+ +n[e>>2]*+n[b+52>>2]+ +n[d>>2]*+n[b+56>>2]+ +n[c>>2]*+n[b+60>>2];return a|0}function Aqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0;m=(f[a+4>>2]|0)+44|0;t=f[m>>2]|0;d=t+64|0;o=f[f[(f[a+104>>2]|0)+216>>2]>>2]|0;a=f[o+20>>2]|0;p=a>>>2;q=p+-1|0;r=q<<2;t=X((f[t+28>>2]|0)+(f[t+24>>2]|0)+(f[t+32>>2]|0)|0,p)|0;s=t<<2;t=Xpb(t>>>0>1073741823?-1:t<<2)|0;u=Qqa(d)|0;u=Xpb(u>>>0>1073741823?-1:u<<2)|0;Tqa(d,u)|0;if(!(Rqa(d)|0)){l=a+-4&-4;a=f[m>>2]|0;h=f[a+24>>2]|0;if(!h){d=u;h=t}else{d=u+(q<<2)+(X(l,h+-1|0)|0)|0;i=X(p,h)|0;a=0;e=u;g=t;while(1){Irb(g|0,e|0,r|0)|0;n[g+(q<<2)>>2]=0.0;a=a+1|0;if((a|0)==(h|0))break;else{e=e+(q<<2)|0;g=g+(p<<2)|0}}h=t+(i<<2)|0;a=f[m>>2]|0}k=f[a+28>>2]|0;if(k){g=d+(q<<2)+(X(l,k+-1|0)|0)|0;i=X(p,k)|0;e=0;a=h;while(1){Irb(a|0,d|0,r|0)|0;v=+Bqa(c,d);n[a+(q<<2)>>2]=v;e=e+1|0;if((e|0)==(k|0))break;else{d=d+(q<<2)|0;a=a+(p<<2)|0}}d=g;h=h+(i<<2)|0;a=f[m>>2]|0}g=f[a+32>>2]|0;if(!g){r=f[o>>2]|0;b=b?35040:35044;I5a(r,s,t,b);_pb(u);_pb(t);return}else{e=0;a=h}while(1){Irb(a|0,d|0,r|0)|0;n[a+(q<<2)>>2]=0.0;e=e+1|0;if((e|0)==(g|0))break;else{d=d+(q<<2)|0;a=a+(p<<2)|0}}r=f[o>>2]|0;b=b?35040:35044;I5a(r,s,t,b);_pb(u);_pb(t);return}else{l=Rqa(d)|0;l=Xpb(l>>>0>2147483647?-1:l<<1)|0;Uqa(d,l)|0;a=f[m>>2]|0;h=f[a+24>>2]|0;if(!h){k=t;d=l}else{g=X(p,h)|0;a=0;d=l;e=t;while(1){Irb(e|0,u+((X(q,j[d>>1]|0)|0)<<2)|0,r|0)|0;n[e+(q<<2)>>2]=0.0;a=a+1|0;if((a|0)==(h|0))break;else{d=d+2|0;e=e+(p<<2)|0}}k=t+(g<<2)|0;d=l+(h<<1)|0;a=f[m>>2]|0}i=f[a+28>>2]|0;if(!i)h=k;else{h=X(p,i)|0;a=0;e=d;g=k;while(1){w=u+((X(q,j[e>>1]|0)|0)<<2)|0;Irb(g|0,w|0,r|0)|0;v=+Bqa(c,w);n[g+(q<<2)>>2]=v;a=a+1|0;if((a|0)==(i|0))break;else{e=e+2|0;g=g+(p<<2)|0}}h=k+(h<<2)|0;d=d+(i<<1)|0;a=f[m>>2]|0}g=f[a+32>>2]|0;if(g|0){e=0;a=h;while(1){Irb(a|0,u+((X(q,j[d>>1]|0)|0)<<2)|0,r|0)|0;n[a+(q<<2)>>2]=0.0;e=e+1|0;if((e|0)==(g|0))break;else{d=d+2|0;a=a+(p<<2)|0}}}_pb(l);r=f[o>>2]|0;w=b?35040:35044;I5a(r,s,t,w);_pb(u);_pb(t);return}}function Bqa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0,g=0.0,h=0.0,i=0.0;i=+n[b>>2];h=+n[b+4>>2];g=+n[b+8>>2];e=+n[a+60>>2]+(i*+n[a+12>>2]+h*+n[a+28>>2]+g*+n[a+44>>2]);e=1.0/(e<9.999999747378752e-06?9.999999747378752e-06:e);d=(+n[a+48>>2]+(i*+n[a>>2]+h*+n[a+16>>2]+g*+n[a+32>>2]))*e;e=(+n[a+52>>2]+(i*+n[a+4>>2]+h*+n[a+20>>2]+g*+n[a+36>>2]))*e;f=a+64|0;g=+p[f>>3];if(g==d){c=a+72|0;b=a+84|0;if(+p[c>>3]==e){n[b>>2]=0.0;i=+n[a+80>>2];a=c;p[f>>3]=d;p[a>>3]=e;return +i}}else b=a+84|0;if(+n[b>>2]==0.0){h=d-g;c=a+72|0;i=e-+p[c>>3];i=+L(+(h*h+i*i));n[b>>2]=i;a=a+80|0;i=+n[a>>2]+i;n[a>>2]=i;a=c;p[f>>3]=d;p[a>>3]=e;return +i}else{n[a+80>>2]=0.0;n[b>>2]=0.0;i=0.0;a=a+72|0;p[f>>3]=d;p[a>>3]=e;return +i}return 0.0}function Cqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0.0,g=0.0,h=0,i=0.0,j=0,k=0.0,l=0.0;k=+n[b>>2];i=+n[b+4>>2];g=+n[b+8>>2];e=+n[a>>2]*k+ +n[a+16>>2]*i+ +n[a+32>>2]*g+ +n[a+48>>2];f=+n[a+4>>2]*k+ +n[a+20>>2]*i+ +n[a+36>>2]*g+ +n[a+52>>2];g=+n[a+8>>2]*k+ +n[a+24>>2]*i+ +n[a+40>>2]*g+ +n[a+56>>2];h=a+64|0;i=+p[h>>3];if(i==e){c=a+72|0;if(+p[c>>3]==f){d=a+80|0;b=a+92|0;if(+p[d>>3]==g){n[b>>2]=0.0;k=+n[a+88>>2];j=d;a=c;p[h>>3]=e;p[a>>3]=f;p[j>>3]=g;return +k}}else j=3}else j=3;if((j|0)==3)b=a+92|0;if(+n[b>>2]==0.0){l=e-i;d=a+72|0;i=f-+p[d>>3];j=a+80|0;k=g-+p[j>>3];k=+L(+(l*l+(i*i+k*k)));n[b>>2]=k;a=a+88|0;k=+n[a>>2]+k;n[a>>2]=k;a=d;p[h>>3]=e;p[a>>3]=f;p[j>>3]=g;return +k}else{n[a+88>>2]=0.0;n[b>>2]=0.0;l=0.0;j=a+80|0;a=a+72|0;p[h>>3]=e;p[a>>3]=f;p[j>>3]=g;return +l}return 0.0}function Dqa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Eqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n;j=f[d>>2]|0;k=j;if(!j){Gqa(a,b,c)|0;u=n;return}l=a+4|0;g=f[l>>2]|0;if((f[a>>2]|0)!=(g|0)){e=g+-4|0;h=f[e>>2]|0;i=h+(f[g+-8>>2]|0)|0;if(i>>>0>=b>>>0){if((i|0)!=(b|0)){f[m>>2]=k;g=m+4|0;e=f[d+4>>2]|0;f[g>>2]=e;if(e|0)Npb(e);f[m+8>>2]=b;f[m+12>>2]=c;Fqa(a,m)|0;e=f[g>>2]|0;if(e|0)Ppb(e);u=n;return}if((f[g+-16>>2]|0)==(j|0)){f[e>>2]=h+c;u=n;return}f[m>>2]=k;i=m+4|0;h=f[d+4>>2]|0;f[i>>2]=h;if(h){Npb(h);g=f[l>>2]|0}e=m+8|0;f[e>>2]=b;f[m+12>>2]=c;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=k;f[g+4>>2]=h;f[m>>2]=0;f[i>>2]=0;b=e;c=f[b+4>>2]|0;m=g+8|0;f[m>>2]=f[b>>2];f[m+4>>2]=c;f[l>>2]=(f[l>>2]|0)+16}else{Cpa(a,m);e=f[i>>2]|0;if(e|0)Ppb(e)}u=n;return}}f[m>>2]=k;i=m+4|0;h=f[d+4>>2]|0;f[i>>2]=h;if(h){Npb(h);g=f[l>>2]|0}e=m+8|0;f[e>>2]=b;f[m+12>>2]=c;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=k;f[g+4>>2]=h;f[m>>2]=0;f[i>>2]=0;b=e;c=f[b+4>>2]|0;m=g+8|0;f[m>>2]=f[b>>2];f[m+4>>2]=c;f[l>>2]=(f[l>>2]|0)+16}else{Cpa(a,m);e=f[i>>2]|0;if(e|0)Ppb(e)}u=n;return}function Fqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+64|0;w=A+52|0;q=A+16|0;p=A+48|0;z=A+8|0;v=A+4|0;c=A;s=b+12|0;l=f[s>>2]|0;if(!l){z=0;u=A;return z|0}k=f[a>>2]|0;y=a+4|0;r=f[y>>2]|0;x=b+8|0;d=r-k>>4;i=f[x>>2]|0;do if(!d){e=k;d=k;k=e;g=l+i|0}else{e=d;d=k;g=k;while(1){o=(e|0)/2|0;h=(f[g+(o<<4)+8>>2]|0)>>>0<i>>>0;j=g+(o<<4)+16|0;d=h?j:d;e=h?e+-1-o|0:o;if(!e)break;else g=h?j:g}o=d;g=l+i|0;if((d|0)==(k|0)){k=o;e=o}else{e=d+-16|0;h=e;n=f[d+-8>>2]|0;j=d+-4|0;m=(f[j>>2]|0)+n|0;if(i>>>0>m>>>0){k=o;e=o}else{l=f[b>>2]|0;k=(l|0)==(f[e>>2]|0);if(m>>>0<g>>>0){if(k){f[x>>2]=n;i=g;e=b}else h=o;f[e+12>>2]=i-n;k=h;e=o;break}if(k){z=0;u=A;return z|0}f[j>>2]=i-n;if(m>>>0>g>>>0){f[q>>2]=l;y=b+4|0;f[q+4>>2]=f[y>>2];f[b>>2]=0;f[y>>2]=0;y=x;z=f[y+4>>2]|0;c=q+8|0;f[c>>2]=f[y>>2];f[c+4>>2]=z;f[q+16>>2]=f[e>>2];c=f[d+-12>>2]|0;f[q+20>>2]=c;if(c|0)Npb(c);f[q+24>>2]=g;f[q+28>>2]=m-g;f[p>>2]=o;f[w>>2]=f[p>>2];Jqa(a,w,q,q+32|0)|0;c=f[q+20>>2]|0;if(c|0)Ppb(c);c=f[q+4>>2]|0;if(c|0)Ppb(c);z=1;u=A;return z|0}else{k=o;e=o}}}}while(0);a:do if((d|0)==(r|0)){h=e;g=e}else{h=e;while(1){j=d+8|0;i=f[j>>2]|0;if(g>>>0<=i>>>0){t=20;break}i=(f[d+12>>2]|0)+i|0;if(i>>>0>g>>>0)break;e=e+16|0;d=d+16|0;h=d;if((d|0)==(r|0)){g=e;break a}}if((t|0)==20){if((g|0)!=(i|0)){g=e;break}if((f[b>>2]|0)!=(f[d>>2]|0)){g=e;break}f[s>>2]=(f[d+12>>2]|0)+g-(f[x>>2]|0);g=e+16|0;break}if((f[b>>2]|0)==(f[d>>2]|0)){g=f[x>>2]|0;d=b;e=e+16|0}else f[j>>2]=g;f[d+12>>2]=i-g;g=e}while(0);e=k;d=g;if((e|0)==(d|0)){f[v>>2]=h;f[w>>2]=f[v>>2];d=Hqa(a,w,b)|0}else{a=f[b>>2]|0;c=b+4|0;w=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[k>>2]=a;a=e+4|0;c=f[a>>2]|0;f[a>>2]=w;if(c|0)Ppb(c);a=x;x=f[a+4>>2]|0;h=e+8|0;f[h>>2]=f[a>>2];f[h+4>>2]=x;h=e+16|0;if((h|0)==(d|0))c=z;else{c=h+(g-h>>4<<4)|0;g=f[y>>2]|0;if((c|0)==(g|0))d=h;else{d=h;do{x=f[c>>2]|0;e=c+4|0;a=f[e>>2]|0;f[c>>2]=0;f[e>>2]=0;f[d>>2]=x;x=d+4|0;e=f[x>>2]|0;f[x>>2]=a;if(e|0)Ppb(e);w=c+8|0;a=f[w+4>>2]|0;x=d+8|0;f[x>>2]=f[w>>2];f[x+4>>2]=a;c=c+16|0;d=d+16|0}while((c|0)!=(g|0));c=f[y>>2]|0}if((c|0)==(d|0)){d=h;c=z}else{do{e=c+-16|0;f[y>>2]=e;c=f[c+-12>>2]|0;if(!c)c=e;else{Ppb(c);c=f[y>>2]|0}}while((c|0)!=(d|0));d=h;c=z}}}f[c>>2]=d;z=1;u=A;return z|0}function Gqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;n=r+24|0;o=r+8|0;p=r;if(!c){q=0;u=r;return q|0}m=f[a>>2]|0;q=a+4|0;d=f[q>>2]|0;e=d-m>>4;if(!e){g=m;k=c+b|0;l=m}else{g=m;h=m;while(1){l=(e|0)/2|0;i=(f[h+(l<<4)+8>>2]|0)>>>0<b>>>0;j=h+(l<<4)+16|0;g=i?j:g;e=i?e+-1-l|0:l;if(!e)break;else h=i?j:h}l=g;k=c+b|0;if((g|0)!=(m|0)){e=g+-16|0;h=f[g+-8>>2]|0;i=g+-4|0;j=(f[i>>2]|0)+h|0;if(j>>>0>=b>>>0){f[i>>2]=b-h;if(j>>>0>k>>>0){f[o>>2]=f[e>>2];e=o+4|0;d=f[g+-12>>2]|0;f[e>>2]=d;if(d|0)Npb(d);f[o+8>>2]=k;f[o+12>>2]=j-k;f[p>>2]=l;f[n>>2]=f[p>>2];Hqa(a,n,o)|0;d=f[e>>2]|0;if(d|0)Ppb(d);q=1;u=r;return q|0}}}}a:do if((g|0)==(d|0)){h=0;e=l}else{e=l;c=g;while(1){i=c+8|0;h=f[i>>2]|0;if(k>>>0<=h>>>0){h=0;break a}j=c+12|0;h=(f[j>>2]|0)+h|0;if(h>>>0>k>>>0)break;e=e+16|0;c=c+16|0;if((c|0)==(d|0)){h=0;break a}}f[i>>2]=k;f[j>>2]=h-k;h=1}while(0);if((g|0)==(e|0)){q=h;u=r;return q|0}e=g+(e-l>>4<<4)|0;if((e|0)!=(d|0)){do{p=f[e>>2]|0;h=e+4|0;o=f[h>>2]|0;f[e>>2]=0;f[h>>2]=0;f[g>>2]=p;p=g+4|0;h=f[p>>2]|0;f[p>>2]=o;if(h|0)Ppb(h);a=e+8|0;o=f[a+4>>2]|0;p=g+8|0;f[p>>2]=f[a>>2];f[p+4>>2]=o;e=e+16|0;g=g+16|0}while((e|0)!=(d|0));d=f[q>>2]|0}if((d|0)==(g|0)){q=1;u=r;return q|0}do{e=d+-16|0;f[q>>2]=e;d=f[d+-12>>2]|0;if(!d)d=e;else{Ppb(d);d=f[q>>2]|0}}while((d|0)!=(g|0));d=1;u=r;return d|0}function Hqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;p=q;k=f[a>>2]|0;g=k;h=(f[b>>2]|0)-g|0;j=h>>4;n=k+(j<<4)|0;o=a+4|0;d=f[o>>2]|0;m=a+8|0;l=f[m>>2]|0;b=d;e=l;if(d>>>0<l>>>0){if((n|0)==(d|0)){f[n>>2]=f[c>>2];m=c+4|0;f[k+(j<<4)+4>>2]=f[m>>2];f[c>>2]=0;f[m>>2]=0;m=c+8|0;a=f[m+4>>2]|0;p=k+(j<<4)+8|0;f[p>>2]=f[m>>2];f[p+4>>2]=a;f[o>>2]=(f[o>>2]|0)+16;p=n;u=q;return p|0}e=b-(n+16)>>4;h=n+(e<<4)|0;if(h>>>0<d>>>0){b=h;g=d;do{f[g>>2]=f[b>>2];m=b+4|0;f[g+4>>2]=f[m>>2];f[b>>2]=0;f[m>>2]=0;m=b+8|0;a=f[m+4>>2]|0;p=g+8|0;f[p>>2]=f[m>>2];f[p+4>>2]=a;b=b+16|0;g=(f[o>>2]|0)+16|0;f[o>>2]=g}while(b>>>0<d>>>0)}if(e|0)do{b=h;h=h+-16|0;e=d;d=d+-16|0;p=f[h>>2]|0;g=b+-12|0;o=f[g>>2]|0;f[h>>2]=0;f[g>>2]=0;f[d>>2]=p;p=e+-12|0;g=f[p>>2]|0;f[p>>2]=o;if(g|0)Ppb(g);a=b+-8|0;o=f[a+4>>2]|0;p=e+-8|0;f[p>>2]=f[a>>2];f[p+4>>2]=o}while((h|0)!=(n|0));p=f[c>>2]|0;b=c+4|0;o=f[b>>2]|0;f[c>>2]=0;f[b>>2]=0;f[n>>2]=p;p=k+(j<<4)+4|0;b=f[p>>2]|0;f[p>>2]=o;if(b|0)Ppb(b);a=c+8|0;o=f[a+4>>2]|0;p=k+(j<<4)+8|0;f[p>>2]=f[a>>2];f[p+4>>2]=o;p=n;u=q;return p|0}b=(b-g>>4)+1|0;if(b>>>0>268435455)fob(a);l=e-g|0;d=l>>3;d=l>>4>>>0<134217727?(d>>>0<b>>>0?b:d):268435455;b=h>>4;f[p+12>>2]=0;f[p+16>>2]=a+8;do if(!d)i=0;else if(d>>>0>268435455)ud();else{i=Wpb(d<<4)|0;break}while(0);f[p>>2]=i;k=i+(b<<4)|0;l=p+8|0;f[l>>2]=k;j=p+4|0;f[j>>2]=k;k=p+12|0;f[k>>2]=i+(d<<4);Iqa(p,c);i=f[j>>2]|0;e=f[a>>2]|0;if((e|0)==(n|0))b=i;else{d=n;b=i;do{h=d;d=d+-16|0;f[b+-16>>2]=f[d>>2];c=h+-12|0;f[b+-12>>2]=f[c>>2];f[d>>2]=0;f[c>>2]=0;h=h+-8|0;c=f[h+4>>2]|0;b=b+-8|0;f[b>>2]=f[h>>2];f[b+4>>2]=c;b=(f[j>>2]|0)+-16|0;f[j>>2]=b}while((d|0)!=(e|0))}d=f[o>>2]|0;if((d|0)==(n|0)){g=j;h=l;e=f[l>>2]|0}else{b=n;e=f[l>>2]|0;do{f[e>>2]=f[b>>2];h=b+4|0;f[e+4>>2]=f[h>>2];f[b>>2]=0;f[h>>2]=0;h=b+8|0;c=f[h+4>>2]|0;n=e+8|0;f[n>>2]=f[h>>2];f[n+4>>2]=c;b=b+16|0;e=(f[l>>2]|0)+16|0;f[l>>2]=e}while((b|0)!=(d|0));g=j;h=l;b=f[j>>2]|0;d=f[o>>2]|0}n=f[a>>2]|0;f[a>>2]=b;f[g>>2]=n;f[o>>2]=e;f[h>>2]=d;b=f[m>>2]|0;f[m>>2]=f[k>>2];f[k>>2]=b;f[p>>2]=n;b=n;if((d|0)!=(b|0)){do{e=d+-16|0;f[l>>2]=e;d=f[d+-12>>2]|0;if(!d)d=e;else{Ppb(d);d=f[l>>2]|0}}while((d|0)!=(b|0));b=f[p>>2]|0}if(b|0)Zpb(b);p=i;u=q;return p|0}function Iqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=a+8|0;m=f[o>>2]|0;l=a+12|0;n=f[l>>2]|0;g=n;do if((m|0)==(n|0)){n=a+4|0;e=f[n>>2]|0;c=f[a>>2]|0;d=c;if(e>>>0>c>>>0){g=((e-d>>4)+1|0)/-2|0;d=e+(g<<4)|0;if((e|0)==(m|0))c=m;else{do{l=f[e>>2]|0;c=e+4|0;a=f[c>>2]|0;f[e>>2]=0;f[c>>2]=0;f[d>>2]=l;l=d+4|0;c=f[l>>2]|0;f[l>>2]=a;if(c|0)Ppb(c);k=e+8|0;a=f[k+4>>2]|0;l=d+8|0;f[l>>2]=f[k>>2];f[l+4>>2]=a;e=e+16|0;d=d+16|0}while((e|0)!=(m|0));c=f[n>>2]|0}f[o>>2]=d;f[n>>2]=c+(g<<4);break}d=g-d>>3;d=(d|0)==0?1:d;if(d>>>0>268435455)ud();i=Wpb(d<<4)|0;j=i;g=i+(d>>>2<<4)|0;k=g;i=i+(d<<4)|0;if((e|0)==(m|0)){f[a>>2]=j;f[n>>2]=k;f[o>>2]=k;f[l>>2]=i}else{h=k;c=g;do{f[c>>2]=f[e>>2];p=e+4|0;f[c+4>>2]=f[p>>2];f[e>>2]=0;f[p>>2]=0;p=e+8|0;d=f[p+4>>2]|0;g=c+8|0;f[g>>2]=f[p>>2];f[g+4>>2]=d;c=h+16|0;h=c;e=e+16|0}while((e|0)!=(m|0));c=f[a>>2]|0;g=f[n>>2]|0;d=f[o>>2]|0;f[a>>2]=j;f[n>>2]=k;f[o>>2]=h;f[l>>2]=i;if((d|0)!=(g|0))do{e=f[d+-12>>2]|0;d=d+-16|0;if(e|0)Ppb(e)}while((d|0)!=(g|0))}if(c|0)Zpb(c)}while(0);p=f[o>>2]|0;f[p>>2]=f[b>>2];n=b+4|0;f[p+4>>2]=f[n>>2];f[b>>2]=0;f[n>>2]=0;n=b+8|0;b=f[n+4>>2]|0;p=p+8|0;f[p>>2]=f[n>>2];f[p+4>>2]=b;f[o>>2]=(f[o>>2]|0)+16;return}function Jqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=f[a>>2]|0;i=h;j=(f[b>>2]|0)-i|0;b=h+(j>>4<<4)|0;o=d-c|0;l=o>>4;if((o|0)<=0){o=b;return o|0}n=a+8|0;g=f[n>>2]|0;o=a+4|0;m=f[o>>2]|0;e=m;if((l|0)<=(g-e>>4|0)){j=e-b|0;e=j>>4;if((l|0)>(e|0)){i=c+(e<<4)|0;if((i|0)==(d|0))g=m;else{h=i;g=m;do{f[g>>2]=f[h>>2];e=f[h+4>>2]|0;f[g+4>>2]=e;if(e|0)Npb(e);n=h+8|0;a=f[n+4>>2]|0;g=g+8|0;f[g>>2]=f[n>>2];f[g+4>>2]=a;h=h+16|0;g=(f[o>>2]|0)+16|0;f[o>>2]=g}while((h|0)!=(d|0))}if((j|0)>0)k=i;else{o=b;return o|0}}else{k=d;g=m}h=g-(b+(l<<4))>>4;j=b+(h<<4)|0;if(j>>>0<m>>>0){e=j;i=g;do{f[i>>2]=f[e>>2];d=e+4|0;f[i+4>>2]=f[d>>2];f[e>>2]=0;f[d>>2]=0;d=e+8|0;n=f[d+4>>2]|0;a=i+8|0;f[a>>2]=f[d>>2];f[a+4>>2]=n;e=e+16|0;i=(f[o>>2]|0)+16|0;f[o>>2]=i}while(e>>>0<m>>>0)}if(h|0)do{e=j;j=j+-16|0;h=g;g=g+-16|0;o=f[j>>2]|0;i=e+-12|0;a=f[i>>2]|0;f[j>>2]=0;f[i>>2]=0;f[g>>2]=o;o=h+-12|0;i=f[o>>2]|0;f[o>>2]=a;if(i|0)Ppb(i);n=e+-8|0;a=f[n+4>>2]|0;o=h+-8|0;f[o>>2]=f[n>>2];f[o+4>>2]=a}while((j|0)!=(b|0));if((k|0)==(c|0)){o=b;return o|0}else g=b;while(1){e=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0)Npb(h);f[g>>2]=e;o=g+4|0;e=f[o>>2]|0;f[o>>2]=h;if(e|0)Ppb(e);n=c+8|0;a=f[n+4>>2]|0;o=g+8|0;f[o>>2]=f[n>>2];f[o+4>>2]=a;c=c+16|0;if((c|0)==(k|0))break;else g=g+16|0}return b|0}e=(e-i>>4)+l|0;if(e>>>0>268435455)fob(a);m=g-i|0;g=m>>3;g=m>>4>>>0<134217727?(g>>>0<e>>>0?e:g):268435455;e=j>>4;do if(!g)k=0;else if(g>>>0>268435455)ud();else{k=Wpb(g<<4)|0;break}while(0);l=k+(e<<4)|0;j=l;k=k+(g<<4)|0;if((c|0)==(d|0))i=j;else{e=j;g=l;do{f[g>>2]=f[c>>2];h=f[c+4>>2]|0;f[g+4>>2]=h;if(h|0)Npb(h);h=c+8|0;i=f[h+4>>2]|0;m=g+8|0;f[m>>2]=f[h>>2];f[m+4>>2]=i;g=e+16|0;e=g;c=c+16|0}while((c|0)!=(d|0));i=e;h=f[a>>2]|0}if((h|0)==(b|0)){e=l;h=j}else{g=b;c=j;e=l;do{m=g;g=g+-16|0;f[e+-16>>2]=f[g>>2];d=m+-12|0;f[e+-12>>2]=f[d>>2];f[g>>2]=0;f[d>>2]=0;m=m+-8|0;d=f[m+4>>2]|0;e=e+-8|0;f[e>>2]=f[m>>2];f[e+4>>2]=d;e=c+-16|0;c=e}while((g|0)!=(h|0));h=c}g=f[o>>2]|0;if((g|0)==(b|0))c=i;else{c=i;e=i;do{f[e>>2]=f[b>>2];j=b+4|0;f[e+4>>2]=f[j>>2];f[b>>2]=0;f[j>>2]=0;j=b+8|0;m=f[j+4>>2]|0;d=e+8|0;f[d>>2]=f[j>>2];f[d+4>>2]=m;b=b+16|0;e=c+16|0;c=e}while((b|0)!=(g|0));e=h;b=f[o>>2]|0}g=f[a>>2]|0;f[a>>2]=e;f[o>>2]=c;f[n>>2]=k;if((b|0)!=(g|0))do{e=f[b+-12>>2]|0;b=b+-16|0;if(e|0)Ppb(e)}while((b|0)!=(g|0));if(!g){o=l;return o|0}Zpb(g);o=l;return o|0}function Kqa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=a+4|0;c=b+4|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+8|0;b=b+8|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;return}function Lqa(a){a=a|0;var b=0;b=Qb()|0;f[a>>2]=b;return}function Mqa(a){a=a|0;Rb(f[a>>2]|0);return}function Nqa(a){a=a|0;Pb(f[a>>2]|0);return}function Oqa(a,b,c){a=a|0;b=b|0;c=c|0;return (Nb(f[a>>2]|0,b|0,c|0)|0)!=0|0}function Pqa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return (Ob(f[a>>2]|0,b|0,c|0,d|0,e|0)|0)!=0|0}function Qqa(a){a=a|0;return _b(f[a>>2]|0)|0}function Rqa(a){a=a|0;return Ub(f[a>>2]|0)|0}function Sqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (Zb(f[a>>2]|0,b|0,c|0,d|0)|0)!=0|0}function Tqa(a,b){a=a|0;b=b|0;return (Tb(f[a>>2]|0,b|0)|0)!=0|0}function Uqa(a,b){a=a|0;b=b|0;return (Sb(f[a>>2]|0,b|0)|0)!=0|0}function Vqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=f[c>>2]|0;if(!c){b=0;return b|0}switch(f[c+4>>2]|0){case 34962:{d=f[52834]|0;I7a(211248,f[c>>2]|0)|0;b=(Xb(f[a>>2]|0,b|0)|0)!=0;I7a(211248,d)|0;return b|0}case 34963:{e=f[52835]|0;J7a(211248,f[c>>2]|0)|0;d=(Vb(f[a>>2]|0,b|0)|0)!=0;J7a(211248,e)|0;return d|0}default:{e=0;return e|0}}return 0}function Wqa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;e=f[e>>2]|0;if(!e){d=0;return d|0}switch(f[e+4>>2]|0){case 34962:{g=f[52834]|0;I7a(211248,f[e>>2]|0)|0;d=(Yb(f[a>>2]|0,b|0,c|0,d|0)|0)!=0;I7a(211248,g)|0;return d|0}case 34963:{h=f[52835]|0;J7a(211248,f[e>>2]|0)|0;g=(Wb(f[a>>2]|0,b|0,c|0,d|0)|0)!=0;J7a(211248,h)|0;return g|0}default:{h=0;return h|0}}return 0}function Xqa(a){a=a|0;var b=0;f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function Yqa(a){a=a|0;wf()}function Zqa(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+28|0;c=f[d+4>>2]|0;b=a;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function _qa(a){a=a|0;return 0}function $qa(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function ara(a){a=a|0;return 0}function bra(a){a=a|0;return f[a+44>>2]|0}function cra(a){a=a|0;var b=0;f[a>>2]=29064;b=f[a+200>>2]|0;if(b|0)Ppb(b);nra(a+48|0);f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function dra(a){a=a|0;var b=0;f[a>>2]=29064;b=f[a+200>>2]|0;if(b|0)Ppb(b);nra(a+48|0);f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function era(a){a=a|0;return 0}function fra(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n;k=a+196|0;if(f[k>>2]|0){m=0;u=n;return m|0}if(!(f[a+28>>2]|0)){m=0;u=n;return m|0}if(c){ira(m,a);d=m+4|0;e=d;c=f[m>>2]|0;d=f[d>>2]|0}else{d=Wpb(216)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=29108;c=d+12|0;g=d+16|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[d+44>>2]=-1;f[d+48>>2]=0;f[d+52>>2]=0;g=d+56|0;f[g>>2]=0;f[c>>2]=29064;h=d+60|0;e=d+108|0;i=h;j=i+36|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;Lqa(d+124|0);e=d+204|0;i=d+128|0;j=i+76|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b[e>>0]=b[e>>0]&-16|2;f[d+208>>2]=0;f[d+212>>2]=0;f[g>>2]=h;f[m>>2]=c;e=m+4|0;f[e>>2]=d;Npb(d);Ppb(d)}f[m>>2]=0;f[e>>2]=0;f[k>>2]=c;l=a+200|0;c=f[l>>2]|0;f[l>>2]=d;if(c|0)Ppb(c);c=f[(f[k>>2]|0)+44>>2]|0;i=a+160|0;e=f[i>>2]|0;j=a+156|0;d=f[j>>2]|0;f[a+44>>2]=c;if((e|0)==(d|0)){m=1;u=n;return m|0}k=c+108|0;l=c+112|0;h=c+116|0;g=0;c=d;d=e;a:while(1){while(1){e=f[c+(g<<2)>>2]|0;if((f[e+4>>2]|0)!=(a|0))break;f[m>>2]=e;c=f[l>>2]|0;d=c-(f[k>>2]|0)>>2;if((f[h>>2]|0)>>>0>c>>>0){f[c>>2]=e;f[l>>2]=(f[l>>2]|0)+4}else voa(k,m);f[e+128>>2]=d;zoa(j,g);d=f[i>>2]|0;c=f[j>>2]|0;if(g>>>0>=d-c>>2>>>0){c=1;d=17;break a}}g=g+1|0;if(g>>>0>=d-c>>2>>>0){c=1;d=17;break}}if((d|0)==17){u=n;return c|0}return 0}function gra(a){a=a|0;return 1}function hra(a){a=a|0;return a+48|0}function ira(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=Wpb(216)|0;f[k+4>>2]=0;f[k+8>>2]=0;f[k>>2]=29108;h=k+12|0;e=k+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[k+44>>2]=-1;f[k+48>>2]=0;f[k+52>>2]=0;e=k+56|0;f[e>>2]=0;f[h>>2]=29064;g=k+60|0;d=k+108|0;i=g;j=i+36|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;Lqa(k+124|0);d=k+204|0;i=k+128|0;j=i+76|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b[d>>0]=b[d>>0]&-16|2;f[k+208>>2]=0;f[k+212>>2]=0;f[e>>2]=g;f[a>>2]=h;f[a+4>>2]=k;Npb(k);Ppb(k);d=f[c+36>>2]|0;a=f[c+40>>2]|0;if(a|0)Npb(a);f[k+48>>2]=d;j=k+52|0;d=f[j>>2]|0;f[j>>2]=a;if(d|0)Ppb(d);d=f[c+4>>2]|0;a=f[c+8>>2]|0;if(a|0)Npb(a);f[k+16>>2]=d;j=k+20|0;d=f[j>>2]|0;f[j>>2]=a;if(d|0)Ppb(d);d=f[c+12>>2]|0;a=f[c+16>>2]|0;if(a|0)Npb(a);f[k+24>>2]=d;j=k+28|0;d=f[j>>2]|0;f[j>>2]=a;if(d|0)Ppb(d);d=f[c+20>>2]|0;a=f[c+24>>2]|0;if(a|0)Npb(a);f[k+32>>2]=d;k=k+36|0;d=f[k>>2]|0;f[k>>2]=a;if(!d)return;Ppb(d);return}function jra(a){a=a|0;var b=0,c=0;f[a>>2]=29108;b=a+12|0;f[b>>2]=29064;c=f[a+212>>2]|0;if(c|0)Ppb(c);nra(a+60|0);f[b>>2]=29020;b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(!b){Hpb(a);return}Ppb(b);Hpb(a);return}function kra(a){a=a|0;var b=0,c=0;f[a>>2]=29108;b=a+12|0;f[b>>2]=29064;c=f[a+212>>2]|0;if(c|0)Ppb(c);nra(a+60|0);f[b>>2]=29020;b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(!b){Hpb(a);Zpb(a);return}Ppb(b);Hpb(a);Zpb(a);return}function lra(a){a=a|0;a=a+12|0;fh[f[f[a>>2]>>2]&2047](a);return}function mra(a){a=a|0;Zpb(a);return}function nra(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+108>>2]|0;if(b|0){c=a+112|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+92>>2]|0;if(b|0){c=a+96|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+80>>2]|0;if(b|0){c=a+84|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+68>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}Mqa(a+64|0);d=f[a+52>>2]|0;if(d|0){b=a+56|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d)}b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a>>2]|0;if(!b)return;e=a+4|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[e>>2]=d;c=f[c+-24>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function ora(a){a=a|0;var b=0;f[a>>2]=29136;b=f[a+52>>2]|0;if(b|0)Ppb(b);f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function pra(a){a=a|0;var b=0;f[a>>2]=29136;b=f[a+52>>2]|0;if(b|0)Ppb(b);f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function qra(a){a=a|0;return 0}function rra(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;p=s+8|0;k=s;m=a+48|0;n=f[m>>2]|0;if(!(f[n+28>>2]|0))if((f[n+32>>2]|0)==-1){r=0;u=s;return r|0}l=a+52|0;q=f[l>>2]|0;r=(q|0)==0;if(!r)Npb(q);if(c){ira(k,a);c=f[k>>2]|0;d=k+4|0;g=f[d>>2]|0;e=g;if(!g)o=d;else h=8}else{j=Wpb(216)|0;f[j+4>>2]=0;f[j+8>>2]=0;f[j>>2]=29108;c=j+12|0;e=j+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[j+44>>2]=-1;f[j+48>>2]=0;f[j+52>>2]=0;e=j+56|0;f[e>>2]=0;f[c>>2]=29064;g=j+60|0;d=j+108|0;h=g;i=h+36|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;Lqa(j+124|0);d=j+204|0;h=j+128|0;i=h+76|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[d>>0]=b[d>>0]&-16|2;f[j+208>>2]=0;f[j+212>>2]=0;f[e>>2]=g;f[k>>2]=c;d=k+4|0;f[d>>2]=j;Npb(j);Ppb(j);g=j;e=j;h=8}if((h|0)==8){Npb(g);o=d}f[m>>2]=c;d=f[l>>2]|0;f[l>>2]=e;if(d){Ppb(d);c=f[m>>2]|0}c=f[c+44>>2]|0;f[a+44>>2]=c;j=f[n+44>>2]|0;i=j+108|0;j=j+112|0;e=f[j>>2]|0;d=f[i>>2]|0;a:do if((e|0)!=(d|0)){k=c+108|0;l=c+112|0;h=c+116|0;g=0;c=d;d=e;do{while(1){e=f[c+(g<<2)>>2]|0;if((f[e+4>>2]|0)!=(a|0))break;f[p>>2]=e;c=f[l>>2]|0;d=c-(f[k>>2]|0)>>2;if((f[h>>2]|0)>>>0>c>>>0){f[c>>2]=e;f[l>>2]=(f[l>>2]|0)+4}else voa(k,p);f[e+128>>2]=d;zoa(i,g);d=f[j>>2]|0;c=f[i>>2]|0;if(g>>>0>=d-c>>2>>>0)break a}g=g+1|0}while(g>>>0<d-c>>2>>>0)}while(0);c=f[o>>2]|0;if(c|0)Ppb(c);if(r){r=1;u=s;return r|0}Ppb(q);r=1;u=s;return r|0}function sra(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=29180;b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function tra(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=29180;b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}f[a>>2]=29020;b=f[a+40>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0)Ppb(b);b=f[a+16>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function ura(a){a=a|0;return (f[a+56>>2]|0)-(f[a+52>>2]|0)>>2>>>0>1|0}function vra(a,b){a=a|0;b=b|0;var c=0,d=0;d=(f[b+64>>2]|0)+28|0;c=f[d+4>>2]|0;b=a;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function wra(a){a=a|0;var b=0,c=0,d=0;d=f[(f[a+64>>2]|0)+32>>2]|0;b=f[a+56>>2]|0;a=f[a+52>>2]|0;c=a;if((b|0)==(a|0)){d=0;return d|0}b=b-a>>2;a=0;while(1){if((f[c+(a<<2)>>2]|0)==(d|0)){b=5;break}a=a+1|0;if(a>>>0>=b>>>0){a=0;b=5;break}}if((b|0)==5)return a|0;return 0}function xra(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;n=t+8|0;s=t;e=f[a+52>>2]|0;if((f[a+56>>2]|0)-e>>2>>>0<=c>>>0){s=0;u=t;return s|0}p=a+48|0;r=f[p>>2]|0;c=f[e+(c<<2)>>2]|0;f[n>>2]=f[a+28>>2];f[n+4>>2]=c;lwa(s,r,n);c=f[s>>2]|0;do if(!c)e=0;else{g=a+64|0;h=f[g>>2]|0;if((c|0)==(h|0))e=0;else{if(!d){r=f[c+44>>2]|0;if((f[r+32>>2]|0)==(0-((f[r+24>>2]|0)+(f[r+28>>2]|0))|0)){e=0;break}}d=a+68|0;q=f[d>>2]|0;r=(q|0)==0;if(!r){Npb(q);c=f[s>>2]|0}i=f[c+44>>2]|0;e=f[s+4>>2]|0;if(e|0)Npb(e);f[g>>2]=c;c=f[d>>2]|0;f[d>>2]=e;if(c|0)Ppb(c);o=a+44|0;a:do if((f[o>>2]|0)!=(i|0)){f[o>>2]=i;k=f[h+44>>2]|0;j=k+108|0;k=k+112|0;e=f[k>>2]|0;c=f[j>>2]|0;if((e|0)!=(c|0)){l=i+108|0;m=i+112|0;h=i+116|0;g=0;do{while(1){d=f[c+(g<<2)>>2]|0;if((f[d+4>>2]|0)!=(a|0))break;f[n>>2]=d;c=f[m>>2]|0;e=c-(f[l>>2]|0)>>2;if((f[h>>2]|0)>>>0>c>>>0){f[c>>2]=d;f[m>>2]=(f[m>>2]|0)+4}else voa(l,n);f[d+128>>2]=e;zoa(j,g);e=f[k>>2]|0;c=f[j>>2]|0;if(g>>>0>=e-c>>2>>>0)break a}g=g+1|0}while(g>>>0<e-c>>2>>>0)}}while(0);e=f[s>>2]|0;c=f[e+36>>2]|0;e=f[e+40>>2]|0;if(e|0)Npb(e);f[a+36>>2]=c;n=a+40|0;c=f[n>>2]|0;f[n>>2]=e;if(c|0)Ppb(c);e=f[s>>2]|0;c=f[e+4>>2]|0;e=f[e+8>>2]|0;if(e|0)Npb(e);f[a+4>>2]=c;n=a+8|0;c=f[n>>2]|0;f[n>>2]=e;if(c|0)Ppb(c);e=f[s>>2]|0;c=f[e+12>>2]|0;e=f[e+16>>2]|0;if(e|0)Npb(e);f[a+12>>2]=c;n=a+16|0;c=f[n>>2]|0;f[n>>2]=e;if(c|0)Ppb(c);e=f[s>>2]|0;c=f[e+20>>2]|0;e=f[e+24>>2]|0;if(e|0)Npb(e);f[a+20>>2]=c;a=a+24|0;c=f[a>>2]|0;f[a>>2]=e;if(c|0)Ppb(c);c=f[o>>2]|0;e=f[c+108>>2]|0;d=f[c+112>>2]|0;if((e|0)!=(d|0)){c=e;do{a=f[c>>2]|0;Voa(a,0,0);Woa(a,0,0);c=c+4|0}while((c|0)!=(d|0));c=f[o>>2]|0}do if(b[c+144>>0]&2){d=kxa(f[p>>2]|0)|0;e=f[o>>2]|0;c=f[e+108>>2]|0;e=f[e+112>>2]|0;if((c|0)==(e|0))break;do{wja(d,f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0))}while(0);if(r)e=1;else{Ppb(q);e=1}}}while(0);c=f[s+4>>2]|0;if(c|0)Ppb(c);s=e;u=t;return s|0}function yra(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;p=v+8|0;k=v;m=a+64|0;n=f[m>>2]|0;if(!(f[n+28>>2]|0))if((f[n+32>>2]|0)==-1){t=0;u=v;return t|0}l=a+68|0;s=f[l>>2]|0;t=(s|0)==0;if(!t)Npb(s);if(c){ira(k,a);c=f[k>>2]|0;d=k+4|0;e=f[d>>2]|0;g=e;if(!e){o=d;e=g}else h=8}else{j=Wpb(216)|0;f[j+4>>2]=0;f[j+8>>2]=0;f[j>>2]=29108;c=j+12|0;e=j+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[j+44>>2]=-1;f[j+48>>2]=0;f[j+52>>2]=0;e=j+56|0;f[e>>2]=0;f[c>>2]=29064;g=j+60|0;d=j+108|0;h=g;i=h+36|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;Lqa(j+124|0);d=j+204|0;h=j+128|0;i=h+76|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[d>>0]=b[d>>0]&-16|2;f[j+208>>2]=0;f[j+212>>2]=0;f[e>>2]=g;f[k>>2]=c;d=k+4|0;f[d>>2]=j;Npb(j);Ppb(j);g=j;e=j;h=8}if((h|0)==8){Npb(e);o=d;e=g}f[m>>2]=c;d=f[l>>2]|0;f[l>>2]=e;if(d){Ppb(d);c=f[m>>2]|0}c=f[c+44>>2]|0;f[a+44>>2]=c;j=f[n+44>>2]|0;i=j+108|0;j=j+112|0;d=f[j>>2]|0;e=f[i>>2]|0;a:do if((d|0)!=(e|0)){k=c+108|0;l=c+112|0;h=c+116|0;g=0;c=e;do{while(1){e=f[c+(g<<2)>>2]|0;if((f[e+4>>2]|0)!=(a|0))break;f[p>>2]=e;c=f[l>>2]|0;d=c-(f[k>>2]|0)>>2;if((f[h>>2]|0)>>>0>c>>>0){f[c>>2]=e;f[l>>2]=(f[l>>2]|0)+4}else voa(k,p);f[e+128>>2]=d;zoa(i,g);d=f[j>>2]|0;c=f[i>>2]|0;if(g>>>0>=d-c>>2>>>0)break a}g=g+1|0}while(g>>>0<d-c>>2>>>0)}while(0);h=a+52|0;i=f[h>>2]|0;j=a+56|0;c=f[j>>2]|0;g=i;if((c|0)!=(i|0)){c=c+(~((c+-4-g|0)>>>2)<<2)|0;f[j>>2]=c}e=a+60|0;d=c-g|0;c=d>>2;if((f[e>>2]|0)-g>>2>>>0>c>>>0){do if(!c){q=0;r=0}else if(c>>>0>1073741823)ud();else{r=Wpb(d)|0;q=r;break}while(0);c=q+(c<<2)|0;if((d|0)>0)Irb(r|0,i|0,d|0)|0;f[h>>2]=q;f[j>>2]=c;f[e>>2]=c;if(i|0)Zpb(i)}c=f[o>>2]|0;if(c|0)Ppb(c);if(t){t=1;u=v;return t|0}Ppb(s);t=1;u=v;return t|0}function zra(a){a=a|0;var b=0;b=f[a>>2]|0;a=(b&4096|0)==0?3:6;return (b>>>14&1)+((b&8192|0)==0?a:a+2|0)|0}function Ara(a){a=a|0;var b=0;f[a+48>>2]=0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Bra(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)Npb(d);f[a+12>>2]=c;c=a+16|0;b=f[c>>2]|0;f[c>>2]=d;if(!b)return;Ppb(b);return}function Cra(a,b){a=a|0;b=b|0;f[a+20>>2]=b;return}function Dra(a,b,c){a=a|0;b=b|0;c=c|0;f[a+24+((b&255)<<2)>>2]=c;return}function Era(a,b,c){a=a|0;b=b|0;c=c|0;f[a+36+((b&255)<<2)>>2]=c;return}function Fra(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=f[a>>2]|0;n=a+4|0;e=f[n>>2]|0;if((e|0)!=(h|0)){g=e;while(1){e=g+-28|0;f[n>>2]=e;g=f[g+-24>>2]|0;if(g){Ppb(g);e=f[n>>2]|0}if((e|0)==(h|0))break;else g=e}}j=a+48|0;m=f[j>>2]|0;e=m>>>12&1;Gra(a,((m&8192|0)==0?e+1|0:e|2)+(m>>>14&1)|0);m=f[j>>2]|0;e=(m&4096|0)==0?3:6;m=((m&8192|0)==0?e:e+2|0)+(m>>>14&1)<<2;e=f[n>>2]|0;k=a+8|0;if(e>>>0<(f[k>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;g=(f[n>>2]|0)+28|0;f[n>>2]=g}else{wqa(a);g=f[n>>2]|0}e=f[c>>2]|0;l=c+4|0;h=f[l>>2]|0;if(h|0)Npb(h);f[g+-28>>2]=e;i=g+-24|0;e=f[i>>2]|0;f[i>>2]=h;if(e|0)Ppb(e);f[g+-20>>2]=d;f[g+-12>>2]=5126;f[g+-8>>2]=m;b[g+-4>>0]=1;b[g+-3>>0]=3;f[g+-16>>2]=0;e=f[j>>2]|0;if(!(e&4096))i=3;else{e=f[n>>2]|0;if(e>>>0<(f[k>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;g=(f[n>>2]|0)+28|0;f[n>>2]=g}else{wqa(a);g=f[n>>2]|0}e=f[c>>2]|0;h=f[l>>2]|0;if(h|0)Npb(h);f[g+-28>>2]=e;i=g+-24|0;e=f[i>>2]|0;f[i>>2]=h;if(e|0)Ppb(e);f[g+-20>>2]=d+12;f[g+-12>>2]=5126;f[g+-8>>2]=m;b[g+-4>>0]=1;b[g+-3>>0]=3;f[g+-16>>2]=1;i=6;e=f[j>>2]|0}if(e&8192){e=f[n>>2]|0;if(e>>>0<(f[k>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;g=(f[n>>2]|0)+28|0;f[n>>2]=g}else{wqa(a);g=f[n>>2]|0}e=f[c>>2]|0;h=f[l>>2]|0;if(h|0)Npb(h);f[g+-28>>2]=e;o=g+-24|0;e=f[o>>2]|0;f[o>>2]=h;if(e|0)Ppb(e);f[g+-20>>2]=(i<<2)+d;f[g+-12>>2]=5126;f[g+-8>>2]=m;b[g+-4>>0]=1;b[g+-3>>0]=2;f[g+-16>>2]=4;i=i+2|0;e=f[j>>2]|0}if(!(e&16384))return;e=f[n>>2]|0;if(e>>>0<(f[k>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;h=(f[n>>2]|0)+28|0;f[n>>2]=h}else{wqa(a);h=f[n>>2]|0}e=f[c>>2]|0;g=f[l>>2]|0;if(g|0)Npb(g);f[h+-28>>2]=e;o=h+-24|0;e=f[o>>2]|0;f[o>>2]=g;if(e|0)Ppb(e);f[h+-20>>2]=(i<<2)+d;f[h+-8>>2]=m;b[h+-4>>0]=1;f[h+-16>>2]=3;b[h+-3>>0]=4;f[h+-12>>2]=5121;return}function Gra(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[a>>2]|0;c=e;if((((f[l>>2]|0)-e|0)/28|0)>>>0>=b>>>0)return;m=a+4|0;if(b>>>0>153391689)ud();h=f[m>>2]|0;j=Wpb(b*28|0)|0;i=j+(((h-e|0)/28|0)*28|0)|0;k=i;j=j+(b*28|0)|0;e=h;if((e|0)==(c|0))g=k;else{g=k;b=i;do{h=e;e=e+-28|0;f[b+-28>>2]=f[e>>2];i=h+-24|0;f[b+-24>>2]=f[i>>2];f[e>>2]=0;f[i>>2]=0;i=b+-20|0;h=h+-20|0;f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];d[i+16>>1]=d[h+16>>1]|0;b=g+-28|0;g=b}while((e|0)!=(c|0));h=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=g;f[m>>2]=k;f[l>>2]=j;b=h;if((c|0)!=(b|0))do{e=f[c+-24>>2]|0;c=c+-28|0;if(e|0)Ppb(e)}while((c|0)!=(b|0));if(!h)return;Zpb(h);return}function Hra(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=Wpb(216)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=29108;g=d+12|0;h=d+16|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;f[h+24>>2]=0;f[d+44>>2]=-1;f[d+48>>2]=0;f[d+52>>2]=0;h=d+56|0;f[h>>2]=0;f[g>>2]=29064;e=d+60|0;c=d+108|0;i=e;j=i+36|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;Lqa(d+124|0);c=d+204|0;i=d+128|0;j=i+76|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b[c>>0]=b[c>>0]&-16|2;f[d+208>>2]=0;f[d+212>>2]=0;f[h>>2]=e;f[a>>2]=g;f[a+4>>2]=d;Npb(d);Ppb(d);return}function Ira(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=f[b>>2]|0;if(!c){f[a>>2]=0;f[a+4>>2]=0;return}g=Wpb(68)|0;f[g+4>>2]=0;f[g+8>>2]=0;f[g>>2]=29224;h=g+12|0;e=g+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[g+44>>2]=-1;f[g+48>>2]=0;f[g+52>>2]=0;e=g+56|0;f[e>>2]=0;f[h>>2]=29136;d=g+60|0;f[d>>2]=c;b=f[b+4>>2]|0;f[g+64>>2]=b;if(b){Npb(b);c=f[d>>2]|0}d=Ng[f[(f[c>>2]|0)+32>>2]&511](c)|0;f[e>>2]=d;f[a>>2]=h;f[a+4>>2]=g;Npb(g);Ppb(g);return}function Jra(a){a=a|0;var b=0,c=0;f[a>>2]=29224;b=a+12|0;f[b>>2]=29136;c=f[a+64>>2]|0;if(c|0)Ppb(c);f[b>>2]=29020;b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(!b){Hpb(a);return}Ppb(b);Hpb(a);return}function Kra(a){a=a|0;var b=0,c=0;f[a>>2]=29224;b=a+12|0;f[b>>2]=29136;c=f[a+64>>2]|0;if(c|0)Ppb(c);f[b>>2]=29020;b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(!b){Hpb(a);Zpb(a);return}Ppb(b);Hpb(a);Zpb(a);return}function Lra(a){a=a|0;a=a+12|0;fh[f[f[a>>2]>>2]&2047](a);return}function Mra(a){a=a|0;Zpb(a);return}function Nra(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;if(f[d>>2]|0){e=f[c>>2]|0;g=c+4|0;h=f[g>>2]|0;if((e|0)!=(h|0)){i=Wpb(84)|0;f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=29252;j=i+12|0;k=i+16|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;f[k+24>>2]=0;f[i+44>>2]=-1;f[i+48>>2]=0;f[i+52>>2]=0;k=i+56|0;f[k>>2]=0;f[j>>2]=29180;f[i+60>>2]=b;f[i+64>>2]=e;f[i+68>>2]=h;e=c+8|0;f[i+72>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;e=i+76|0;b=f[d>>2]|0;f[e>>2]=b;c=f[d+4>>2]|0;f[i+80>>2]=c;if(c){Npb(c);b=f[e>>2]|0}f[k>>2]=f[b+44>>2];f[a>>2]=j;f[a+4>>2]=i;Npb(i);Ppb(i);return}}f[a>>2]=0;f[a+4>>2]=0;return}function Ora(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=29252;e=a+12|0;f[e>>2]=29180;b=f[a+80>>2]|0;if(b|0)Ppb(b);b=f[a+64>>2]|0;if(b|0){c=a+68|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}f[e>>2]=29020;b=f[a+52>>2]|0;if(b|0)Ppb(b);b=f[a+36>>2]|0;if(b|0)Ppb(b);b=f[a+28>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(!b){Hpb(a);return}Ppb(b);Hpb(a);return}function Pra(a){a=a|0;Ora(a);Zpb(a);return}function Qra(a){a=a|0;a=a+12|0;fh[f[f[a>>2]>>2]&2047](a);return}function Rra(a){a=a|0;Zpb(a);return}function Sra(a,b){a=a|0;b=b|0;var c=0;Pg[f[(f[a>>2]|0)+24>>2]&255](a,0)|0;Tra(a,b,1)|0;b=f[a+44>>2]|0;a=f[b+108>>2]|0;b=f[b+112>>2]|0;if((a|0)==(b|0))return;do{c=f[a>>2]|0;Voa(c,0,0);Woa(c,0,0);a=a+4|0}while((a|0)!=(b|0));return}function Tra(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)if(!(f[a+28>>2]|0)){a=0;return a|0}b=Ura(f[a+44>>2]|0,b,c)|0;if(!(b&c)){a=b;return a|0}f[a+36>>2]=0;c=a+40|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+4>>2]=0;c=a+8|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+12>>2]=0;c=a+16|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ppb(b);f[a+20>>2]=0;a=a+24|0;b=f[a>>2]|0;f[a>>2]=0;if(!b){a=1;return a|0}Ppb(b);a=1;return a|0}function Ura(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+108|0;a:do if(d)g=a+112|0;else{e=f[j>>2]|0;g=a+112|0;i=f[g>>2]|0;if((e|0)!=(i|0)){while(1){h=f[e>>2]|0;if(f[h+196>>2]&131072|0)if(!(f[h+116>>2]|0)){e=0;break}e=e+4|0;if((e|0)==(i|0))break a}return e|0}}while(0);i=kxa(c)|0;e=f[j>>2]|0;h=f[g>>2]|0;if((e|0)!=(h|0))do{g=f[e>>2]|0;if(!(f[g+196>>2]&131072))qja(i,g);e=e+4|0}while((e|0)!=(h|0));j=a+52|0;k=f[j>>2]|0;l=a+56|0;e=f[l>>2]|0;i=k;if((e|0)!=(k|0)){e=e+(~(((e+-24-i|0)>>>0)/24|0)*24|0)|0;f[l>>2]=e}c=a+60|0;g=e-i|0;h=(g|0)/24|0;if((((f[c>>2]|0)-i|0)/24|0)>>>0>h>>>0){do if(!g)m=0;else if(h>>>0>178956970)ud();else{m=Wpb(g)|0;break}while(0);g=m+(h*24|0)|0;h=g;if((e|0)==(k|0))e=h;else{do{m=g;g=g+-24|0;i=e;e=e+-24|0;f[g>>2]=f[e>>2];f[m+-20>>2]=f[i+-20>>2];f[m+-16>>2]=f[i+-16>>2];f[m+-12>>2]=f[i+-12>>2];f[m+-8>>2]=f[i+-8>>2];f[m+-4>>2]=f[i+-4>>2]}while((e|0)!=(k|0));e=g}f[j>>2]=e;f[l>>2]=h;f[c>>2]=h;if(k|0)Zpb(k)}m=a+144|0;b[m>>0]=b[m>>0]&-5;j=a+68|0;k=f[j>>2]|0;l=a+72|0;e=f[l>>2]|0;g=k;if((e|0)!=(k|0)){e=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0)|0;f[l>>2]=e}c=a+76|0;i=e-g|0;e=(i|0)/12|0;if((((f[c>>2]|0)-g|0)/12|0)>>>0>e>>>0){if(!i){e=0+(e*12|0)|0;g=e}else{if(e>>>0>357913941)ud();h=(Wpb(i)|0)+(e*12|0)|0;e=h;h=h+(((i|0)/-12|0)*12|0)|0;g=h;if((i|0)>0)Irb(h|0,k|0,i|0)|0}f[j>>2]=g;f[l>>2]=e;f[c>>2]=e;if(k|0)Zpb(k)}j=a+80|0;k=f[j>>2]|0;l=a+84|0;e=f[l>>2]|0;g=k;if((e|0)!=(k|0)){e=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0)|0;f[l>>2]=e}c=a+88|0;i=e-g|0;e=(i|0)/12|0;if((((f[c>>2]|0)-g|0)/12|0)>>>0>e>>>0){if(!i){e=0+(e*12|0)|0;g=e}else{if(e>>>0>357913941)ud();h=(Wpb(i)|0)+(e*12|0)|0;e=h;h=h+(((i|0)/-12|0)*12|0)|0;g=h;if((i|0)>0)Irb(h|0,k|0,i|0)|0}f[j>>2]=g;f[l>>2]=e;f[c>>2]=e;if(k|0)Zpb(k)}j=a+92|0;k=f[j>>2]|0;l=a+96|0;e=f[l>>2]|0;g=k;if((e|0)!=(k|0)){e=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0)|0;f[l>>2]=e}c=a+100|0;i=e-g|0;e=(i|0)/12|0;if((((f[c>>2]|0)-g|0)/12|0)>>>0>e>>>0){if(!i){e=0+(e*12|0)|0;g=e}else{if(e>>>0>357913941)ud();h=(Wpb(i)|0)+(e*12|0)|0;e=h;h=h+(((i|0)/-12|0)*12|0)|0;g=h;if((i|0)>0)Irb(h|0,k|0,i|0)|0}f[j>>2]=g;f[l>>2]=e;f[c>>2]=e;if(k|0)Zpb(k)}Nqa(a+64|0);b[m>>0]=b[m>>0]|2;f[a+104>>2]=0;i=f[a>>2]|0;h=a+4|0;e=f[h>>2]|0;if((e|0)!=(i|0))do{g=e+-28|0;f[h>>2]=g;e=f[e+-24>>2]|0;if(!e)e=g;else{Ppb(e);e=f[h>>2]|0}}while((e|0)!=(i|0));f[a+12>>2]=0;l=a+16|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0)Ppb(e);l=a+20|0;f[a+48>>2]=0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;if(!d){d=1;return d|0}b[m>>0]=b[m>>0]&-10|8;d=a+120|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;d=1;return d|0}function Vra(a,b,c){a=a|0;b=b|0;c=c|0;f[a+128>>2]=b;return}function Wra(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d&1;h=a+144|0;if(!((b[h>>0]&2)!=0|d^1)){e=kxa(c)|0;c=f[a+108>>2]|0;a=f[a+112>>2]|0;if((c|0)!=(a|0))do{d=f[c>>2]|0;if(!(f[d+196>>2]&131072))pja(e,d);c=c+4|0}while((c|0)!=(a|0))}b[h>>0]=b[h>>0]&-3|g<<1&255;return}function Xra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0,g=0.0,h=0.0;h=+n[b>>2]*.5+ +n[c>>2]*.5;n[a+120>>2]=h;f=b+4|0;g=+n[f>>2]*.5+ +n[c+4>>2]*.5;n[a+124>>2]=g;d=b+8|0;e=+n[d>>2]*.5+ +n[c+8>>2]*.5;n[a+128>>2]=e;n[a+132>>2]=h-+n[b>>2];n[a+136>>2]=g-+n[f>>2];n[a+140>>2]=e-+n[d>>2];return}function Yra(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+108>>2]|0;a=f[a+112>>2]|0;if((e|0)==(a|0)){c=0;return c|0}if(d){do{d=f[e>>2]|0;Voa(d,b,c);Woa(d,0,0);e=e+4|0}while((e|0)!=(a|0));e=1;return e|0}else{do{Voa(f[e>>2]|0,b,c);e=e+4|0}while((e|0)!=(a|0));e=1;return e|0}return 0}function Zra(a){a=a|0;switch(a|0){case 2:case 3:{a=5;break}case 0:{a=10;break}case 4:{a=3;break}case 6:{a=4;break}case 8:{a=1;break}case 7:{a=7;break}case 1:{a=8;break}default:a=6}return a|0}function _ra(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;e=Wpb(2496)|0;f[e>>2]=a;c=e+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;n[e+32>>2]=1.0;c=e+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[e+52>>2]=1.0;c=e+56|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[e+80>>2]=1065353216;f[e+84>>2]=1065353216;f[e+88>>2]=1065353216;c=e+92|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;f[e+124>>2]=1065353216;f[e+128>>2]=1065353216;f[e+132>>2]=1065353216;c=e+184|0;g=e+136|0;h=g+48|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[c>>2]=1.0;c=e+188|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[e+204>>2]=1.0;c=e+208|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[e+224>>2]=1.0;c=e+228|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[e+244>>2]=1.0;f[e+248>>2]=1;f[e+252>>2]=1;f[e+256>>2]=1;f[e+260>>2]=1;f[e+264>>2]=1;c=e+364|0;g=e+268|0;h=g+96|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[c>>2]=1.0;c=e+368|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[e+392>>2]=1065353216;f[e+396>>2]=1065353216;f[e+400>>2]=1065353216;f[e+404>>2]=0;f[e+408>>2]=0;f[e+412>>2]=0;b[e+416>>0]=2;c=e+420|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;n[e+448>>2]=1.0;n[e+452>>2]=0.0;f[e+456>>2]=0;f[e+460>>2]=0;xha(e+464|0,a);c=e+1776|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;n[e+1800>>2]=1.0;jga(e+1808|0);f[a>>2]=e;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;soa(d);$ra(e,0,0,0,d,2)|0;c=f[d+4>>2]|0;if(!c){u=i;return}Ppb(c);u=i;return}function $ra(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;h=x;f[h>>2]=c;w=asa(a+36|0,h)|0;if(f[w>>2]|0){a=0;u=x;return a|0}s=Wpb(144)|0;f[s+4>>2]=0;f[s+8>>2]=0;f[s>>2]=29280;v=s+12|0;Hla(v,b,f[h>>2]|0,d,e,g);f[w>>2]=v;v=w+4|0;c=f[v>>2]|0;f[v>>2]=s;if(c|0)Ppb(c);k=a+56|0;l=a+60|0;do if((((f[l>>2]|0)-(f[k>>2]|0)|0)/20|0)>>>0<=b>>>0){e=b+1|0;bsa(k,e);c=f[l>>2]|0;g=f[k>>2]|0;h=(c-g|0)/20|0;if(e>>>0>h>>>0){csa(k,e-h|0);break}if(e>>>0<h>>>0){g=g+(e*20|0)|0;if((g|0)!=(c|0))do{e=c+-20|0;f[l>>2]=e;c=f[c+-12>>2]|0;if(c|0)do{s=c;c=f[c>>2]|0;Zpb(s)}while((c|0)!=0);c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c);c=f[l>>2]|0}while((c|0)!=(g|0))}}while(0);r=f[k>>2]|0;s=r+(b*20|0)|0;k=f[w>>2]|0;l=k;q=X(l,1540483477)|0;q=(X(q>>>24^q,1540483477)|0)^1866966612;q=X(q>>>13^q,1540483477)|0;q=q>>>15^q;m=r+(b*20|0)+4|0;o=f[m>>2]|0;p=(o|0)==0;a:do if(p){c=0;t=30}else{h=o+-1|0;g=(h&o|0)==0;if(g)c=q&h;else if(q>>>0<o>>>0)c=q;else c=(q>>>0)%(o>>>0)|0;e=f[(f[s>>2]|0)+(c<<2)>>2]|0;if(!e)t=30;else{if(g)while(1){e=f[e>>2]|0;if(!e){t=30;break a}g=f[e+4>>2]|0;if(!((g|0)==(q|0)|(g&h|0)==(c|0))){t=30;break a}if((f[e+8>>2]|0)==(k|0))break a}do{e=f[e>>2]|0;if(!e){t=30;break a}g=f[e+4>>2]|0;if((g|0)!=(q|0)){if(g>>>0>=o>>>0)g=(g>>>0)%(o>>>0)|0;if((g|0)!=(c|0)){t=30;break a}}}while((f[e+8>>2]|0)!=(k|0))}}while(0);if((t|0)==30){k=Wpb(12)|0;f[k+8>>2]=l;f[k+4>>2]=q;f[k>>2]=0;h=r+(b*20|0)+12|0;i=+(((f[h>>2]|0)+1|0)>>>0);j=+n[r+(b*20|0)+16>>2];do if(p|j*+(o>>>0)<i){c=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;e=~~+W(+(i/j))>>>0;dsa(s,c>>>0<e>>>0?e:c);c=f[m>>2]|0;e=c+-1|0;if(!(e&c)){g=c;c=e&q;break}if(q>>>0<c>>>0){g=c;c=q}else{g=c;c=(q>>>0)%(c>>>0)|0}}else g=o;while(0);e=(f[s>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){c=r+(b*20|0)+8|0;f[k>>2]=f[c>>2];f[c>>2]=k;f[e>>2]=c;c=f[k>>2]|0;if(c|0){c=f[c+4>>2]|0;e=g+-1|0;if(!(e&g))c=c&e;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;c=(f[s>>2]|0)+(c<<2)|0;t=43}}else{f[k>>2]=f[c>>2];t=43}if((t|0)==43)f[c>>2]=k;f[h>>2]=(f[h>>2]|0)+1}h=esa(a,d)|0;g=h+12|0;c=f[g>>2]|0;if((c|0)==(f[h+16>>2]|0))fsa(h+8|0,w);else{f[c>>2]=f[w>>2];e=f[v>>2]|0;f[c+4>>2]=e;if(e){Npb(e);c=f[g>>2]|0}f[g>>2]=c+8}e=f[w>>2]|0;c=f[h+68>>2]|0;if(c|0)do{gsa(0,e,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);c=f[h+168>>2]|0;if(c|0)do{hsa(0,e,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);c=f[h+4>>2]|0;if(c|0){Ila(e,c);isa(a+68|0,e);tja(a+464|0,e)}c=f[h+28>>2]|0;if(!c){a=1;u=x;return a|0}if(!d){do{jsa(a,w,f[c+16>>2]|0,0);c=f[c>>2]|0}while((c|0)!=0);c=1;u=x;return c|0}else{do{d=c;jsa(a,w,f[d+16>>2]|0,d+24|0);c=f[c>>2]|0}while((c|0)!=0);c=1;u=x;return c|0}return 0}function asa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Tsa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function bsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=f[a>>2]|0;j=a+4|0;g=f[j>>2]|0;d=i;c=g;h=a+8|0;e=f[h>>2]|0;if((i|0)==(g|0)&(e|0)==(d|0)){Msa(a,b);return}i=(c-d|0)/20|0;if(((e-d|0)/20|0)>>>0<b>>>0){d=e;c=g;while(1){if(c>>>0<d>>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[c+16>>2]=1.0;f[j>>2]=(f[j>>2]|0)+20}else Nsa(a);c=f[h>>2]|0;d=f[a>>2]|0;if(((c-d|0)/20|0)>>>0>=b>>>0)break;d=c;c=f[j>>2]|0}c=f[j>>2]|0}e=(c-d|0)/20|0;if(i>>>0>e>>>0){csa(a,i-e|0);return}if(i>>>0>=e>>>0)return;e=d+(i*20|0)|0;if((e|0)==(c|0))return;do{d=c+-20|0;f[j>>2]=d;c=f[c+-12>>2]|0;if(c|0)do{i=c;c=f[c>>2]|0;Zpb(i)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c);c=f[j>>2]|0}while((c|0)!=(e|0));return}function csa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;p=a+8|0;g=f[p>>2]|0;q=a+4|0;c=f[q>>2]|0;if(((g-c|0)/20|0)>>>0>=b>>>0){do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[c+16>>2]=1.0;c=(f[q>>2]|0)+20|0;f[q>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/20|0;c=e+b|0;if(c>>>0>214748364)fob(a);m=(g-d|0)/20|0;o=m<<1;c=m>>>0<107374182?(o>>>0<c>>>0?c:o):214748364;do if(!c)h=0;else if(c>>>0>214748364)ud();else{h=Wpb(c*20|0)|0;break}while(0);g=h+(e*20|0)|0;e=g;d=h+(c*20|0)|0;o=e;c=g;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[c+16>>2]=1.0;c=o+20|0;o=c;b=b+-1|0}while((b|0)!=0);m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=e;e=m;b=m}else{l=e;b=g;do{s=c;c=c+-20|0;h=f[c>>2]|0;f[c>>2]=0;i=s+-16|0;g=f[i>>2]|0;f[i>>2]=0;f[b+-20>>2]=h;f[b+-16>>2]=g;i=b+-12|0;j=s+-12|0;e=f[j>>2]|0;f[i>>2]=e;k=s+-8|0;r=f[k>>2]|0;f[b+-8>>2]=r;f[b+-4>>2]=f[s+-4>>2];if(r|0){b=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))b=b&e;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;f[h+(b<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}b=l+-20|0;l=b}while((c|0)!=(m|0));c=l;e=f[a>>2]|0;b=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[p>>2]=d;d=e;if((b|0)!=(d|0))do{c=f[b+-12>>2]|0;b=b+-20|0;if(c|0)do{s=c;c=f[c>>2]|0;Zpb(s)}while((c|0)!=0);c=f[b>>2]|0;f[b>>2]=0;if(c|0)Zpb(c)}while((b|0)!=(d|0));if(!e)return;Zpb(e);return}function dsa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Lsa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Lsa(a,b);return}function esa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;p=a+16|0;m=a+20|0;l=f[m>>2]|0;a:do if(!l){c=0;i=p;d=0;h=1}else{k=l+-1|0;j=(k&l|0)==0;if(j)h=k&b;else if(l>>>0>b>>>0)h=b;else h=(b>>>0)%(l>>>0)|0;i=f[p>>2]|0;c=f[i+(h<<2)>>2]|0;b:do if(c|0){c=f[c>>2]|0;if(c|0){if(j){while(1){q=f[c+4>>2]|0;d=(q|0)==(b|0);if(!(d|(q&k|0)==(h|0)))break b;if(d)if((f[c+8>>2]|0)==(b|0))break;c=f[c>>2]|0;if(!c)break b}q=c+12|0;return q|0}while(1){d=f[c+4>>2]|0;if((d|0)==(b|0)){if((f[c+8>>2]|0)==(b|0))break}else{if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)!=(h|0))break b}c=f[c>>2]|0;if(!c)break b}q=c+12|0;return q|0}}while(0);if(j)h=k&b;else if(l>>>0>b>>>0)h=b;else h=(b>>>0)%(l>>>0)|0;c=f[i+(h<<2)>>2]|0;if(!c){c=h;i=p;d=l;h=0}else{if(j){do{c=f[c>>2]|0;if(!c){c=h;i=p;d=l;h=0;break a}q=f[c+4>>2]|0;if(!((q|0)==(b|0)|(q&k|0)==(h|0))){c=h;i=p;d=l;h=0;break a}}while((f[c+8>>2]|0)!=(b|0));q=c+12|0;return q|0}do{c=f[c>>2]|0;if(!c){c=h;i=p;d=l;h=0;break a}d=f[c+4>>2]|0;if((d|0)!=(b|0)){if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)!=(h|0)){c=h;i=p;d=l;h=0;break a}}}while((f[c+8>>2]|0)!=(b|0));q=c+12|0;return q|0}}while(0);j=Wpb(232)|0;f[j+8>>2]=b;f[j+12>>2]=b;k=j+16|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;f[k+24>>2]=0;f[k+28>>2]=0;n[j+48>>2]=1.0;k=j+52|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+68>>2]=1.0;k=j+72|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+88>>2]=1.0;k=j+92|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+108>>2]=1.0;k=j+112|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+128>>2]=1.0;k=j+132|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+148>>2]=1.0;k=j+152|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+168>>2]=1.0;k=j+172|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+188>>2]=1.0;k=j+192|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+208>>2]=1.0;k=j+212|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[j+228>>2]=1.0;f[j+4>>2]=b;f[j>>2]=0;k=a+28|0;e=+(((f[k>>2]|0)+1|0)>>>0);g=+n[a+32>>2];do if(h|g*+(d>>>0)<e){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;d=~~+W(+(e/g))>>>0;Jsa(i,c>>>0<d>>>0?d:c);c=f[m>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&b;break}if(c>>>0>b>>>0){h=c;c=b}else{h=c;c=(b>>>0)%(c>>>0)|0}}else h=d;while(0);d=(f[p>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+24|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[p>>2]|0)+(c<<2)|0;o=48}}else{f[j>>2]=f[c>>2];o=48}if((o|0)==48)f[c>>2]=j;f[k>>2]=(f[k>>2]|0)+1;q=j;q=q+12|0;return q|0}function fsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+4|0;c=f[m>>2]|0;d=f[a>>2]|0;i=c-d>>3;e=i+1|0;j=d;if(e>>>0>536870911)fob(a);l=a+8|0;k=(f[l>>2]|0)-d|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<e>>>0?e:g):536870911;do if(!g)h=0;else if(g>>>0>536870911)ud();else{h=Wpb(g<<3)|0;break}while(0);d=h+(i<<3)|0;e=d;k=h+(g<<3)|0;f[d>>2]=f[b>>2];g=f[b+4>>2]|0;f[h+(i<<3)+4>>2]=g;if(!g)g=j;else{Npb(g);c=f[m>>2]|0;g=f[a>>2]|0}b=d+8|0;if((c|0)!=(g|0)){do{j=c;c=c+-8|0;f[d+-8>>2]=f[c>>2];j=j+-4|0;f[d+-4>>2]=f[j>>2];f[c>>2]=0;f[j>>2]=0;d=e+-8|0;e=d}while((c|0)!=(g|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=b;f[l>>2]=k;e=g;if((c|0)!=(e|0))do{d=f[c+-4>>2]|0;c=c+-8|0;if(d|0)Ppb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function gsa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+96|0;g=d+80|0;a=d+8|0;h=d;f[a>>2]=f[b+12>>2];f[a+4>>2]=c;e=a+8|0;bda(e,a)|0;roa(g,e);e=f[c+116>>2]|0;f[h>>2]=f[b+4>>2];c=h+4|0;f[c>>2]=e;e=f[h+4>>2]|0;a=(f[g>>2]|0)+112|0;f[a>>2]=f[h>>2];f[a+4>>2]=e;c=lsa(b+88|0,c)|0;b=f[g>>2]|0;a=g+4|0;e=f[a>>2]|0;f[g>>2]=0;f[a>>2]=0;f[c>>2]=b;c=c+4|0;b=f[c>>2]|0;f[c>>2]=e;if(b|0)Ppb(b);a=f[a>>2]|0;if(!a){u=d;return}Ppb(a);u=d;return}function hsa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+16|0;e=i+8|0;g=i;H1a(h);f[e>>2]=b;f[e+4>>2]=h;a=f[c+24>>2]|0;d=f[c+28>>2]|0;if((a|0)!=(d|0))do{Hsa(e,a);a=a+36|0}while((a|0)!=(d|0));a=f[c>>2]|0;d=f[c+4>>2]|0;if((a|0)!=(d|0))do{Hsa(e,a);a=a+36|0}while((a|0)!=(d|0));a=f[c+12>>2]|0;d=f[c+16>>2]|0;if((a|0)!=(d|0))do{Hsa(e,a);a=a+36|0}while((a|0)!=(d|0));c=f[c+40>>2]|0;f[g>>2]=f[b+4>>2];a=g+4|0;f[a>>2]=c;c=f[g+4>>2]|0;d=(f[h>>2]|0)+36|0;f[d>>2]=f[g>>2];f[d+4>>2]=c;a=msa(b+108|0,a)|0;b=f[h>>2]|0;d=h+4|0;c=f[d>>2]|0;f[h>>2]=0;f[d>>2]=0;f[a>>2]=b;h=a+4|0;a=f[h>>2]|0;f[h>>2]=c;if(a|0)Ppb(a);a=f[d>>2]|0;if(!a){u=i;return}Ppb(a);u=i;return}function isa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+32|0;j=o+24|0;m=o;Tla(m,c);k=a+4|0;d=f[k>>2]|0;i=f[a>>2]|0;a:do if((i|0)==(d|0))l=5;else{h=0;while(1){d=d+-4|0;g=f[d>>2]|0;if(vsa(g,m)|0)break;h=h+1|0;if(!((i|0)!=(d|0)&h>>>0<32)){l=5;break a}}if(!g)l=5}while(0);if((l|0)==5){i=Wpb(52)|0;d=i+49|0;g=i;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));b[d>>0]=1;f[j>>2]=i;d=f[k>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=i;d=d+4|0;f[k>>2]=d}else{wsa(a,j);d=f[k>>2]|0}g=f[d+-4>>2]|0;f[g+40>>2]=0;f[g>>2]=f[m>>2];f[g+4>>2]=f[m+4>>2];f[g+8>>2]=f[m+8>>2];f[g+12>>2]=f[m+12>>2];f[g+16>>2]=f[m+16>>2];f[g+20>>2]=f[m+20>>2]}e=+n[m>>2];if(e<+n[g>>2]){d=g;l=11}else{d=g+12|0;if(e>+n[d>>2])l=11}if((l|0)==11)n[d>>2]=e;e=+n[m+4>>2];h=g+4|0;if(e<+n[h>>2]){d=g;l=14}else if(e>+n[g+16>>2]){d=g+12|0;l=14}if((l|0)==14)n[d+4>>2]=e;e=+n[m+8>>2];i=g+8|0;if(e<+n[i>>2]){d=g;l=17}else if(e>+n[g+20>>2]){d=g+12|0;l=17}if((l|0)==17)n[d+8>>2]=e;e=+n[m+12>>2];if(e<+n[g>>2]){d=g;l=20}else{d=g+12|0;if(e>+n[d>>2])l=20}if((l|0)==20)n[d>>2]=e;e=+n[m+16>>2];if(e<+n[h>>2]){d=g;l=23}else if(e>+n[g+16>>2]){d=g+12|0;l=23}if((l|0)==23)n[d+4>>2]=e;e=+n[m+20>>2];if(e<+n[i>>2])d=g;else if(e>+n[g+20>>2])d=g+12|0;else{l=a+12|0;f[l>>2]=1065353216;l=a+16|0;f[l>>2]=1065353216;l=a+20|0;f[l>>2]=1065353216;l=a+24|0;f[l>>2]=0;l=a+28|0;f[l>>2]=0;a=a+32|0;f[a>>2]=0;xsa(g,m,c);u=o;return}n[d+8>>2]=e;l=a+12|0;f[l>>2]=1065353216;l=a+16|0;f[l>>2]=1065353216;l=a+20|0;f[l>>2]=1065353216;l=a+24|0;f[l>>2]=0;l=a+28|0;f[l>>2]=0;a=a+32|0;f[a>>2]=0;xsa(g,m,c);u=o;return}function jsa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0;z=u;u=u+48|0;t=z+32|0;r=z+24|0;x=z+20|0;v=z;y=f[c>>2]|0;l=f[y+4>>2]|0;p=f[d+120>>2]|0;f[x>>2]=p;w=y+48|0;q=y+68|0;m=y+72|0;j=f[m>>2]|0;a:do if(!j)s=41;else{i=j+-1|0;h=(i&j|0)==0;if(h)k=i&p;else if(p>>>0<j>>>0)k=p;else k=(p>>>0)%(j>>>0)|0;g=f[(f[q>>2]|0)+(k<<2)>>2]|0;if(!g)s=41;else{g=f[g>>2]|0;if(!g)s=41;else{b:do if(h)while(1){o=f[g+4>>2]|0;h=(o|0)==(p|0);if(!(h|(o&i|0)==(k|0))){s=41;break a}if(h)if((f[g+8>>2]|0)==(p|0))break b;g=f[g>>2]|0;if(!g){s=41;break a}}else while(1){h=f[g+4>>2]|0;if((h|0)==(p|0)){if((f[g+8>>2]|0)==(p|0))break b}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0)){s=41;break a}}g=f[g>>2]|0;if(!g){s=41;break a}}while(0);l=f[g+12>>2]|0;g=f[g+16>>2]|0;o=g;if(g){Npb(g);j=f[m>>2]|0}c:do if(j|0){i=j+-1|0;h=(i&j|0)==0;if(h)k=i&p;else if(p>>>0<j>>>0)k=p;else k=(p>>>0)%(j>>>0)|0;g=f[(f[q>>2]|0)+(k<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){d:do if(h)while(1){m=f[g+4>>2]|0;h=(m|0)==(p|0);if(!(h|(m&i|0)==(k|0)))break c;if(h)if((f[g+8>>2]|0)==(p|0))break d;g=f[g>>2]|0;if(!g)break c}else while(1){h=f[g+4>>2]|0;if((h|0)==(p|0)){if((f[g+8>>2]|0)==(p|0))break d}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0))break c}g=f[g>>2]|0;if(!g)break c}while(0);f[r>>2]=g;f[t>>2]=f[r>>2];ksa(q,t)|0}}}while(0)}}}while(0);if((s|0)==41){Boa(t,f[a>>2]|0);s=f[t>>2]|0;o=f[t+4>>2]|0;r=s;f[r+116>>2]=l;f[r+120>>2]=p;l=r+196|0;f[l>>2]=f[l>>2]&-131073;l=s}k=(e|0)==0;g=d+72|0;if(!k)g=lsa(y+88|0,(f[g>>2]|0)+116|0)|0;r=l;if(!(f[d+116>>2]|0))jpa(r);Noa(r,d+4|0);Yoa(r,0,g);h=r+196|0;if(!(f[r+36>>2]|0))Qoa(r,0,d+36|0);if(!(f[h>>2]&268435456))Dpa(r,0,d);if(!(f[r+44>>2]|0))Qoa(r,1,d+44|0);if(!(f[h>>2]&536870912))Dpa(r,1,d);if(!(f[r+52>>2]|0))Qoa(r,2,d+52|0);if(!(f[h>>2]&1073741824))Dpa(r,2,d);osa(a,d,r,y);mpa(r,((b[d+192>>0]|b[r+192>>0])&255)>>>3&7);if(!(f[h>>2]&2))g=(f[d+196>>2]&2|0)!=0;else g=1;Joa(r,g);if(!(f[h>>2]&4))g=(f[d+196>>2]&4|0)!=0;else g=1;Koa(r,g);if(!(f[h>>2]&8))g=(f[d+196>>2]&8|0)!=0;else g=1;_oa(r,g);if(!(f[h>>2]&16))g=(f[d+196>>2]&16|0)!=0;else g=1;$oa(r,g);if(!(f[h>>2]&32))g=(f[d+196>>2]&32|0)!=0;else g=1;apa(r,g);if(!(f[h>>2]&64))g=(f[d+196>>2]&64|0)!=0;else g=1;cpa(r,g);if(!(f[h>>2]&8192))g=(f[d+196>>2]&8192|0)!=0;else g=1;dpa(r,g);if(!(f[h>>2]&16384))g=(f[d+196>>2]&16384|0)!=0;else g=1;epa(r,g);if(!(f[h>>2]&32768))g=(f[d+196>>2]&32768|0)!=0;else g=1;fpa(r,g);if(!(f[h>>2]&65536))g=(f[d+196>>2]&65536|0)!=0;else g=1;gpa(r,g);g=f[h>>2]|0;do if(!(g&4096)){if(!(f[d+196>>2]&4096))break;f[t>>2]=f[(f[d+108>>2]|0)+40>>2];dqa(r,msa(y+108|0,t)|0);g=f[h>>2]|0}while(0);do if(!(g&33554432)){if(!(f[d+196>>2]&33554432))break;h=d+104|0;g=f[h>>2]|0;j=b[g+292>>0]&1;if(!(j<<24>>24))g=g+228|0;else{i=f[y+12>>2]|0;if(b[i+120>>0]&4){joa(i);g=f[h>>2]|0}s=i+76|0;q=g+228|0;f[v>>2]=s;f[v+4>>2]=q;t=v+8|0;C=+n[q>>2];B=+n[g+232>>2];A=+n[g+236>>2];n[t>>2]=+n[s>>2]*C+ +n[i+88>>2]*B+ +n[i+100>>2]*A;n[v+12>>2]=+n[i+80>>2]*C+ +n[i+92>>2]*B+ +n[i+104>>2]*A;n[v+16>>2]=+n[i+84>>2]*C+ +n[i+96>>2]*B+ +n[i+108>>2]*A;g=t}jqa(r,j,g,+lqa(d))}while(0);g=nsa(w,x)|0;p=o;q=(o|0)==0;if(!q)Npb(p);f[g>>2]=l;x=g+4|0;g=f[x>>2]|0;f[x>>2]=o;if(g|0)Ppb(g);e:do if(!k){g=Mla(y)|0;o=e;m=f[o>>2]|0;o=f[o+4>>2]|0;j=m&15;i=Erb(m|0,o|0,4)|0;if((j|0)!=15){h=f[g+12>>2]|0;if(j>>>0>=(((f[g+16>>2]|0)-h|0)/72|0)>>>0)break;k=i&15;i=Erb(m|0,o|0,8)|0;do if((k|0)==15)g=h+(j*72|0)|0;else{g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=Erb(m|0,o|0,12)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=Erb(m|0,o|0,16)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=Erb(m|0,o|0,20)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=Erb(m|0,o|0,24)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=Erb(m|0,o|0,28)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=o&15;i=Erb(m|0,o|0,36)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=Erb(m|0,o|0,40)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=Erb(m|0,o|0,44)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=Erb(m|0,o|0,48)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=Erb(m|0,o|0,52)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;l=i&15;i=Erb(m|0,o|0,56)|0;if((l|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(l>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=g;k=i&15;h=Erb(m|0,o|0,60)|0;if((k|0)==15){g=j+(l*72|0)|0;break}g=f[j+(l*72|0)+12>>2]|0;if(k>>>0>=(((f[j+(l*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;i=g;g=h&15;if((g|0)==15){g=i+(k*72|0)|0;break}h=f[i+(k*72|0)+12>>2]|0;if(g>>>0<(((f[i+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)g=h+(g*72|0)|0;else break e}while(0);if(!g)break}Y0a(g,r,c,(f[a+8>>2]|0)>>>0<524289)}while(0);Goa(r);xNa(f[(f[a+4>>2]|0)+228>>2]|0,r,0,0);if(q){u=z;return}Ppb(p);u=z;return}function ksa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;h=f[a+4>>2]|0;b=f[k+4>>2]|0;i=h+-1|0;e=(i&h|0)==0;if(e)g=i&b;else if(b>>>0<h>>>0)g=b;else g=(b>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)==(a+8|0))d=13;else{b=f[j+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;d=21}else d=13}do if((d|0)==13){if(l|0){b=f[l+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=22;break}}f[c>>2]=0;c=f[k>>2]|0;d=21}while(0);if((d|0)==21){b=c;if(c)d=22}if((d|0)==22){c=f[c+4>>2]|0;if(e)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;b=f[k+16>>2]|0;if(b|0)Ppb(b);Zpb(k);return l|0}function lsa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;tsa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function msa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;rsa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function nsa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;psa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function osa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;if(!(b[(f[a+4>>2]|0)+217>>0]|0))a=0;else a=(f[d+196>>2]&16777216|0)==0;h=e+128|0;if(a|(b[h>>0]|0)!=2)e=0;else e=Sla(e,f[d+120>>2]|0)|0;g=d+193|0;c=c+192|0;if(a){do if(!(b[g>>0]&1))if(!(b[h>>0]|0)){lpa(d,1,0,1)|0;break}else{lpa(d,1,0,0)|0;break}while(0);do if(!(b[g>>0]&2))if(!(b[h>>0]|0)){lpa(d,2,0,1)|0;break}else{lpa(d,2,0,0)|0;break}while(0);if(b[g>>0]&4)return;if(!(b[h>>0]|0)){lpa(d,4,0,1)|0;return}else{lpa(d,4,0,0)|0;return}}a=(b[g>>0]&1)==0;if(!e){a:do if(a)switch(b[h>>0]|0){case 0:{lpa(d,1,0,1)|0;break a}case 1:{lpa(d,1,1,1)|0;break a}default:{lpa(d,1,(b[c>>0]&1)!=0,0)|0;break a}}while(0);b:do if(!(b[g>>0]&2))switch(b[h>>0]|0){case 0:{lpa(d,2,0,1)|0;break b}case 1:{lpa(d,2,1,1)|0;break b}default:{lpa(d,2,(b[c>>0]&2)!=0,0)|0;break b}}while(0);if(b[g>>0]&4)return;switch(b[h>>0]|0){case 0:{lpa(d,4,0,1)|0;return}case 1:{lpa(d,4,1,1)|0;return}default:{lpa(d,4,(b[c>>0]&4)!=0,0)|0;return}}}c:do if(a)switch(b[h>>0]|0){case 0:{lpa(d,1,0,1)|0;break c}case 1:{lpa(d,1,1,1)|0;break c}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&1)!=0;else a=(a&1|0)!=0;lpa(d,1,a,0)|0;break c}}while(0);d:do if(!(b[g>>0]&2))switch(b[h>>0]|0){case 0:{lpa(d,2,0,1)|0;break d}case 1:{lpa(d,2,1,1)|0;break d}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&2)!=0;else a=(a&2|0)!=0;lpa(d,2,a,0)|0;break d}}while(0);if(b[g>>0]&4)return;switch(b[h>>0]|0){case 0:{lpa(d,4,0,1)|0;return}case 1:{lpa(d,4,1,1)|0;return}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&4)!=0;else a=(a&4|0)!=0;lpa(d,4,a,0)|0;return}}}function psa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){qsa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;qsa(a,b);return}function qsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function rsa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){ssa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;ssa(a,b);return}function ssa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function tsa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){usa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;usa(a,b);return}function usa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function vsa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0;q=u;u=u+32|0;p=q;r=f[a>>2]|0;f[p>>2]=r;w=f[a+4>>2]|0;k=p+4|0;f[k>>2]=w;t=f[a+8>>2]|0;o=p+8|0;f[o>>2]=t;c=p+12|0;e=f[a+12>>2]|0;f[c>>2]=e;v=f[a+16>>2]|0;j=p+16|0;f[j>>2]=v;m=p+20|0;f[m>>2]=f[a+20>>2];g=+n[b>>2];r=g<(f[s>>2]=r,+n[s>>2]);h=(f[s>>2]=w,+n[s>>2]);i=(f[s>>2]=v,+n[s>>2]);d=(f[s>>2]=t,+n[s>>2]);if(r){e=p;l=3}else if(g>(f[s>>2]=e,+n[s>>2])){e=c;l=3}if((l|0)==3)n[e>>2]=g;g=+n[b+4>>2];if(g<h){e=p;l=6}else if(g>i){e=c;l=6}if((l|0)==6){n[e+4>>2]=g;d=+n[o>>2]}g=+n[b+8>>2];if(g<d){e=p;l=9}else if(g>+n[m>>2]){e=c;l=9}if((l|0)==9)n[e+8>>2]=g;d=+n[b+12>>2];if(d<+n[p>>2]){e=p;l=12}else if(d>+n[c>>2]){e=c;l=12}if((l|0)==12)n[e>>2]=d;d=+n[b+16>>2];if(d<+n[k>>2]){e=p;l=15}else if(d>+n[j>>2]){e=c;l=15}if((l|0)==15)n[e+4>>2]=d;d=+n[b+20>>2];if(d<+n[o>>2])c=p;else if(!(d>+n[m>>2])){w=Gsa(p,a)|0;u=q;return w|0}n[c+8>>2]=d;w=Gsa(p,a)|0;u=q;return w|0}function wsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;p=r;q=a+4|0;l=f[q>>2]|0;m=f[a>>2]|0;e=l-m>>2;c=e+1|0;n=m;d=l;if(c>>>0>1073741823)fob(a);o=a+8|0;i=f[o>>2]|0;k=i-m|0;g=k>>1;g=k>>2>>>0<536870911?(g>>>0<c>>>0?c:g):1073741823;f[p+12>>2]=0;f[p+16>>2]=a+8;do if(!g)h=0;else if(g>>>0>1073741823)ud();else{h=Wpb(g<<2)|0;break}while(0);f[p>>2]=h;c=h+(e<<2)|0;j=p+8|0;k=p+4|0;f[k>>2]=c;g=h+(g<<2)|0;h=p+12|0;f[h>>2]=g;f[c>>2]=f[b>>2];e=c+4|0;f[j>>2]=e;if((d|0)==(n|0)){d=c;b=h;n=m;h=l;l=g;m=i;i=d;f[a>>2]=i;f[k>>2]=n;f[q>>2]=e;f[j>>2]=h;f[o>>2]=l;f[b>>2]=m;f[p>>2]=n;Fsa(p);u=r;return}do{d=d+-4|0;m=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=m;c=(f[k>>2]|0)+-4|0;f[k>>2]=c}while((d|0)!=(n|0));e=c;m=h;i=j;n=f[a>>2]|0;g=f[j>>2]|0;b=f[q>>2]|0;j=f[h>>2]|0;l=f[o>>2]|0;h=e;f[a>>2]=h;f[k>>2]=n;f[q>>2]=g;f[i>>2]=b;f[o>>2]=j;f[m>>2]=l;f[p>>2]=n;Fsa(p);u=r;return}function xsa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0;F=u;u=u+48|0;i=F;j=a+36|0;if(!(f[j>>2]|0)){e=a+24|0;g=a+28|0;h=f[g>>2]|0;if(h-(f[e>>2]|0)>>2>>>0>127){e=Wpb(104)|0;g=e+49|0;h=e;i=h+104|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[g>>0]=1;i=e+76|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;b[e+101>>0]=1;f[j>>2]=e;f[e+40>>2]=a;f[e+92>>2]=a;ysa(a);xsa(a,c,d);u=F;return}f[i>>2]=d;if((f[a+32>>2]|0)>>>0>h>>>0){f[h>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else zsa(e,i);Vla(d,a);u=F;return}hWa(i,a,b[a+48>>0]|0,+n[a+44>>2]);e=f[j>>2]|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[e+12>>2]=f[i+12>>2];f[e+16>>2]=f[i+16>>2];f[e+20>>2]=f[i+20>>2];J=f[i+24>>2]|0;f[e+52>>2]=J;I=f[i+28>>2]|0;f[e+56>>2]=I;H=f[i+32>>2]|0;f[e+60>>2]=H;G=f[i+36>>2]|0;f[e+64>>2]=G;h=f[i+40>>2]|0;f[e+68>>2]=h;j=f[i+44>>2]|0;f[e+72>>2]=j;r=+n[c>>2];t=+n[c+4>>2];v=+n[c+8>>2];w=+n[c+12>>2];x=+n[c+16>>2];y=+n[c+20>>2];k=+n[e>>2];z=(f[s>>2]=J,+n[s>>2]);A=(f[s>>2]=I,+n[s>>2]);B=(f[s>>2]=H,+n[s>>2]);C=(f[s>>2]=G,+n[s>>2]);D=(f[s>>2]=h,+n[s>>2]);E=(f[s>>2]=j,+n[s>>2]);if(!(r>=k))g=15;else{l=+n[e+4>>2];if(!(t>=l))g=15;else{m=+n[e+8>>2];if(!(v>=m))g=15;else{o=+n[e+12>>2];if(!(r<=o))g=15;else{p=+n[e+16>>2];if(!(t<=p))g=15;else{q=+n[e+20>>2];if(!(v<=q)|!(w>=k)|!(x>=l))g=15;else if(!(y<=q&((!(x<=p)|(!(w<=o)|!(y>=m)))^1)))g=15}}}}}do if((g|0)==15){e=e+52|0;if(!(!(r>=z)|!(t>=A)|!(v>=B)|!(r<=C)|!(t<=D)))if(!(!(v<=E)|!(w>=z)|!(x>=A)))if(y<=E&((!(x<=D)|(!(w<=C)|!(y>=B)))^1))break;f[i>>2]=d;g=a+28|0;e=f[g>>2]|0;if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else zsa(a+24|0,i);Vla(d,a);u=F;return}while(0);xsa(e,c,d);u=F;return}function ysa(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;e=u;u=u+64|0;c=e+48|0;p=e;Asa(c,a);gWa(p,a,0,.5);o=Bsa(p,c)|0;gWa(p,a,0,.3330000042915344);q=Bsa(p,c)|0;d=(q|0)<(o|0);o=d?q:o;gWa(p,a,0,.6660000085830688);q=Bsa(p,c)|0;h=(q|0)<(o|0);o=h?q:o;gWa(p,a,1,.5);q=Bsa(p,c)|0;i=(q|0)<(o|0);o=i?q:o;gWa(p,a,1,.3330000042915344);q=Bsa(p,c)|0;j=(q|0)<(o|0);o=j?q:o;gWa(p,a,1,.6660000085830688);q=Bsa(p,c)|0;k=(q|0)<(o|0);o=k?q:o;gWa(p,a,2,.5);q=Bsa(p,c)|0;l=(q|0)<(o|0);o=l?q:o;gWa(p,a,2,.3330000042915344);q=Bsa(p,c)|0;m=(q|0)<(o|0);gWa(p,a,2,.6660000085830688);o=(Bsa(p,c)|0)<((m?q:o)|0);q=o|(m|l)?2:(k|(j|i))&1;r=q&255;f[p>>2]=f[a+(r<<2)>>2];f[p+4>>2]=f[a+12+(r<<2)>>2];b[a+48>>0]=q;g=+AWa(p,o?.6660000085830688:m?.3330000042915344:l?.5:k?.6660000085830688:j?.3330000042915344:i?.5:h?.6660000085830688:d?.3330000042915344:.5);n[a+44>>2]=g;a=f[c+12>>2]|0;if(a|0)Csa(a,c);d=f[c>>2]|0;if(!d){u=e;return}a=c+4|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d);u=e;return}function zsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function Asa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+32|0;p=q;if(!(b[209528]|0))rrb(209528)|0;Esa(a,215189);m=c+24|0;n=c+28|0;l=f[n>>2]|0;c=f[m>>2]|0;e=l-c>>2;o=a+8|0;i=f[a>>2]|0;g=i;if((((f[o>>2]|0)-i|0)/24|0)>>>0<e>>>0){j=a+4|0;if(e>>>0>178956970)ud();r=f[j>>2]|0;h=Wpb(e*24|0)|0;d=h+(((r-i|0)/24|0)*24|0)|0;k=d;h=h+(e*24|0)|0;e=r;if((e|0)==(g|0))d=k;else do{r=d;d=d+-24|0;s=e;e=e+-24|0;f[d>>2]=f[e>>2];f[r+-20>>2]=f[s+-20>>2];f[r+-16>>2]=f[s+-16>>2];f[r+-12>>2]=f[s+-12>>2];f[r+-8>>2]=f[s+-8>>2];f[r+-4>>2]=f[s+-4>>2]}while((e|0)!=(g|0));f[a>>2]=d;f[j>>2]=k;f[o>>2]=h;if(!i)e=l;else{Zpb(i);c=f[m>>2]|0;e=f[n>>2]|0}}else e=l;if((c|0)==(e|0)){u=q;return}g=a+4|0;h=p+4|0;i=p+8|0;j=p+12|0;k=p+16|0;l=p+20|0;do{Tla(p,f[c>>2]|0);d=f[g>>2]|0;if(d>>>0<(f[o>>2]|0)>>>0){f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d>>2]=f[p>>2];f[d+4>>2]=f[h>>2];f[d+8>>2]=f[i>>2];s=d+12|0;f[s>>2]=f[j>>2];f[s+4>>2]=f[j+4>>2];f[s+8>>2]=f[j+8>>2];f[s>>2]=f[j>>2];f[d+16>>2]=f[k>>2];f[d+20>>2]=f[l>>2];f[g>>2]=(f[g>>2]|0)+24}else KA(a,p);c=c+4|0}while((c|0)!=(e|0));u=q;return}function Bsa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0;B=u;u=u+16|0;A=B;c=A;f[c>>2]=0;f[c+4>>2]=0;c=f[b>>2]|0;z=f[b+4>>2]|0;if((c|0)==(z|0)){z=0;k=0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}m=+n[a>>2];o=+n[a+24>>2];p=+n[a+28>>2];q=+n[a+32>>2];r=+n[a+36>>2];s=+n[a+40>>2];t=+n[a+44>>2];v=+n[a+4>>2];w=+n[a+8>>2];x=+n[a+12>>2];y=+n[a+16>>2];l=+n[a+20>>2];do{g=+n[c>>2];b=c+4|0;a=c+8|0;h=c+12|0;j=c+16|0;k=c+20|0;if(!(g>=m))i=12;else{d=+n[b>>2];if(!(d>=v))i=12;else{e=+n[a>>2];if(!(e>=w)|!(g<=x)|!(d<=y)|!(e<=l))i=12;else{d=+n[h>>2];if(!(d>=m))i=12;else{e=+n[j>>2];if(!(e>=v))i=12;else{C=+n[k>>2];if(C<=l&((!(e<=y)|(!(d<=x)|!(C>=w)))^1)){b=0;i=11}else i=12}}}}}if((i|0)==12){i=0;if(g>=o){d=+n[b>>2];if(d>=p){C=+n[a>>2];if(!(!(C>=q)|!(g<=r)|!(d<=s)|!(C<=t))){e=+n[h>>2];if(e>=o){d=+n[j>>2];if(d>=p){C=+n[k>>2];if(C<=t&((!(d<=s)|(!(e<=r)|!(C>=q)))^1)){b=1;i=11}}}}}}}if((i|0)==11){k=A+(b<<2)|0;f[k>>2]=(f[k>>2]|0)+1}c=c+24|0}while((c|0)!=(z|0));z=f[A+4>>2]|0;k=f[A>>2]|0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}function Csa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~(((d+-24-a|0)>>>0)/24|0)*24|0);if(!(b[209704]|0))if(rrb(209704)|0){f[52756]=0;f[52757]=0;f[52758]=0}a=f[52757]|0;if(a>>>0<(f[52758]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[52757]=a+12;return}else{Dsa(211024,c);return}}function Dsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-24-b|0)>>>0)/24|0)*24|0);Zpb(b)}}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function Esa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209704]|0))if(rrb(209704)|0){f[52756]=0;f[52757]=0;f[52758]=0}e=f[52757]|0;if((f[52756]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[52757]|0;j=h+-12|0;while(1){e=h+-12|0;f[52757]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~(((h+-24-i|0)>>>0)/24|0)*24|0);Zpb(i);e=f[52757]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function Fsa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){hja(b);Zpb(b)}b=f[e+24>>2]|0;if(b|0){c=e+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}Zpb(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Zpb(b);return}function Gsa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+n[a+12>>2]-+n[a>>2];g=+n[a+16>>2]-+n[a+4>>2];e=+n[a+20>>2]-+n[a+8>>2];c=h*g*e;f=+n[b+12>>2]-+n[b>>2];if(c>0.0){if(f*(+n[b+16>>2]-+n[b+4>>2])*(+n[b+20>>2]-+n[b+8>>2])>=c*.75){b=1;return b|0}}else if(!(h==0.0^f==0.0)){d=+n[b+20>>2]-+n[b+8>>2];c=+n[b+16>>2]-+n[b+4>>2];if(!(e==0.0^d==0.0|g==0.0^c==0.0)){h=h>0.0?h:1.0;h=g>0.0?h*g:h;g=f>0.0?f:1.0;g=c>0.0?g*c:g;if((d>0.0?g*d:g)>=(e>0.0?h*e:h)*.75){b=1;return b|0}}}b=0;return b|0}function Hsa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l;Isa(k,c);c=f[k+12>>2]|0;a:do if(c|0)if((b[k+33>>0]|0)!=1){d=f[a>>2]|0;i=f[c+116>>2]|0;h=f[d+92>>2]|0;if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)j=g&i;else if(i>>>0<h>>>0)j=i;else j=(i>>>0)%(h>>>0)|0;c=f[(f[d+88>>2]|0)+(j<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(e)while(1){h=f[c+4>>2]|0;d=(i|0)==(h|0);if(!(d|(h&g|0)==(j|0)))break a;if(d)if((f[c+8>>2]|0)==(i|0))break b;c=f[c>>2]|0;if(!c)break a}else while(1){d=f[c+4>>2]|0;if((i|0)==(d|0)){if((f[c+8>>2]|0)==(i|0))break b}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(j|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);y1a(k,c+12|0)}}}}while(0);N1a(f[f[a+4>>2]>>2]|0,k);c=f[k+24>>2]|0;if(c|0)Ppb(c);c=f[k+16>>2]|0;if(c|0)Ppb(c);c=f[k>>2]|0;if(!c){u=l;return}g=k+4|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{e=d+-8|0;f[g>>2]=e;d=f[d+-4>>2]|0;if(!d)d=e;else{Ppb(d);d=f[g>>2]|0}}while((d|0)!=(c|0));c=f[k>>2]|0}Zpb(c);u=l;return}function Isa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0;f[a>>2]=0;i=a+4|0;f[i>>2]=0;f[a+8>>2]=0;h=b+4|0;c=(f[h>>2]|0)-(f[b>>2]|0)|0;g=c>>3;if(g|0){if(g>>>0>536870911)fob(a);e=Wpb(c)|0;f[i>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(g<<3);c=f[b>>2]|0;h=f[h>>2]|0;if((c|0)!=(h|0))do{f[e>>2]=f[c>>2];g=f[c+4>>2]|0;f[e+4>>2]=g;if(g|0)Npb(g);c=c+8|0;e=(f[i>>2]|0)+8|0;f[i>>2]=e}while((c|0)!=(h|0))}f[a+12>>2]=f[b+12>>2];c=f[b+16>>2]|0;f[a+16>>2]=c;if(c|0)Npb(c);f[a+20>>2]=f[b+20>>2];c=f[b+24>>2]|0;f[a+24>>2]=c;if(!c){a=a+28|0;b=b+28|0;f[a>>2]=f[b>>2];d[a+4>>1]=d[b+4>>1]|0;return}Npb(c);a=a+28|0;b=b+28|0;f[a>>2]=f[b>>2];d[a+4>>1]=d[b+4>>1]|0;return}function Jsa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Ksa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Ksa(a,b);return}function Ksa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Lsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Msa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+8|0;c=f[a>>2]|0;d=c;if((((f[o>>2]|0)-c|0)/20|0)>>>0>=b>>>0)return;p=a+4|0;if(b>>>0>214748364)ud();e=f[p>>2]|0;m=Wpb(b*20|0)|0;g=m+(((e-c|0)/20|0)*20|0)|0;n=g;m=m+(b*20|0)|0;c=e;if((c|0)==(d|0))c=n;else{l=n;do{r=c;c=c+-20|0;q=f[c>>2]|0;f[c>>2]=0;i=r+-16|0;h=f[i>>2]|0;f[i>>2]=0;f[g+-20>>2]=q;f[g+-16>>2]=h;i=g+-12|0;j=r+-12|0;b=f[j>>2]|0;f[i>>2]=b;k=r+-8|0;e=f[k>>2]|0;f[g+-8>>2]=e;f[g+-4>>2]=f[r+-4>>2];g=q;if(e|0){b=f[b+4>>2]|0;e=h+-1|0;if(!(e&h))b=b&e;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;f[g+(b<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}g=l+-20|0;l=g}while((c|0)!=(d|0));c=l;e=f[a>>2]|0;d=f[p>>2]|0}f[a>>2]=c;f[p>>2]=n;f[o>>2]=m;b=e;if((d|0)!=(b|0))do{c=f[d+-12>>2]|0;d=d+-20|0;if(c|0)do{r=c;c=f[c>>2]|0;Zpb(r)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c)}while((d|0)!=(b|0));if(!e)return;Zpb(e);return}function Nsa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;p=a+4|0;j=f[p>>2]|0;b=f[a>>2]|0;g=(j-b|0)/20|0;d=g+1|0;c=b;i=j;if(d>>>0>214748364)fob(a);q=a+8|0;m=((f[q>>2]|0)-b|0)/20|0;o=m<<1;d=m>>>0<107374182?(o>>>0<d>>>0?d:o):214748364;do if(!d)e=0;else if(d>>>0>214748364)ud();else{e=Wpb(d*20|0)|0;break}while(0);h=e+(g*20|0)|0;b=h;o=e+(d*20|0)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[e+(g*20|0)+16>>2]=1.0;m=h+20|0;if((i|0)==(c|0))e=j;else{d=h;do{s=i;i=i+-20|0;h=f[i>>2]|0;f[i>>2]=0;j=s+-16|0;g=f[j>>2]|0;f[j>>2]=0;f[d+-20>>2]=h;f[d+-16>>2]=g;j=d+-12|0;k=s+-12|0;e=f[k>>2]|0;f[j>>2]=e;l=s+-8|0;r=f[l>>2]|0;f[d+-8>>2]=r;f[d+-4>>2]=f[s+-4>>2];if(r|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=j;f[k>>2]=0;f[l>>2]=0}d=b+-20|0;b=d}while((i|0)!=(c|0));e=f[a>>2]|0;c=f[p>>2]|0}f[a>>2]=b;f[p>>2]=m;f[q>>2]=o;d=e;if((c|0)!=(d|0))do{b=f[c+-12>>2]|0;c=c+-20|0;if(b|0)do{s=b;b=f[b>>2]|0;Zpb(s)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(b|0)Zpb(b)}while((c|0)!=(d|0));if(!e)return;Zpb(e);return}function Osa(a){a=a|0;f[a>>2]=29280;Ssa(a+12|0);Hpb(a);return}function Psa(a){a=a|0;f[a>>2]=29280;Ssa(a+12|0);Hpb(a);Zpb(a);return}function Qsa(a){a=a|0;Ssa(a+12|0);return}function Rsa(a){a=a|0;Zpb(a);return}function Ssa(a){a=a|0;var b=0,c=0,d=0;b=f[a+116>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);d=a+108|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[a+96>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[a+76>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[a+56>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[a+36>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=a+28|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);d=a+20|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){Jla(b);Zpb(b)}b=f[a+16>>2]|0;if(!b)return;Ppb(b);return}function Tsa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Usa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Usa(a,b);return}function Usa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Vsa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+1792>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+1784|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);oha(a+464|0);b=f[a+440>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+432|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+380>>2]|0;if(b|0){c=a+384|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}g=a+368|0;b=f[g>>2]|0;if(b|0){h=a+372|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-16-e|0)>>>4)<<4);Zpb(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}b=f[a+356>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);h=a+348|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+336>>2]|0;if(b|0){c=a+340|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+324>>2]|0;if(b|0){c=a+328|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+312>>2]|0;if(b|0){c=a+316|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+300>>2]|0;if(b|0){c=a+304|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+288>>2]|0;if(b|0){c=a+292|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+276>>2]|0;if(b|0){c=a+280|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+236>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+228|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+216>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+208|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+196>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+188|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+176>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Zpb(h)}while((b|0)!=0);h=a+168|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+156>>2]|0;if(b|0){c=a+160|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}Wsa(a+112|0);Xsa(a+68|0);e=a+56|0;b=f[e>>2]|0;if(b|0){g=a+60|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-20|0;f[g>>2]=d;c=f[c+-12>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;Zpb(h)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)Zpb(c);c=f[g>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b)}b=f[a+44>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);h=a+36|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)Zpb(b);b=f[a+24>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;Ysa(h+12|0);Zpb(h)}while((b|0)!=0);a=a+16|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Zpb(b);return}function Wsa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){ija(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function Xsa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){hja(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function Ysa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+208>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+200|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+188>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+180|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+168>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+160|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+148>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+140|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+128>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+120|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+108>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+100|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+88>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+80|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+68>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+60|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+48>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+40|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[a+28>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);g=a+20|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);e=a+8|0;b=f[e>>2]|0;if(b|0){g=a+12|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-8|0;f[g>>2]=d;c=f[c+-4>>2]|0;if(!c)c=d;else{Ppb(c);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b)}a=a+4|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Jla(b);Zpb(b);return}function Zsa(a){a=a|0;var b=0,c=0;b=Wpb(32)|0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=29308;c=b+12|0;_ra(c,0);f[a>>2]=c;f[a+4>>2]=b;return}function _sa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=29308;b=f[a+12>>2]|0;if(b|0){Vsa(b);Zpb(b)}d=a+16|0;b=f[d>>2]|0;if(!b){Hpb(a);return}e=a+20|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b);Hpb(a);return}function $sa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=29308;b=f[a+12>>2]|0;if(b|0){Vsa(b);Zpb(b)}d=a+16|0;b=f[d>>2]|0;if(!b){Hpb(a);Zpb(a);return}e=a+20|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b);Hpb(a);Zpb(a);return}function ata(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+12>>2]|0;if(b|0){Vsa(b);Zpb(b)}d=a+16|0;b=f[d>>2]|0;if(!b)return;c=a+20|0;a=f[c>>2]|0;if((a|0)!=(b|0)){do{e=a+-32|0;f[c>>2]=e;a=f[a+-16>>2]|0;if((e|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[c>>2]|0}while((a|0)!=(b|0));b=f[d>>2]|0}Zpb(b);return}function bta(a){a=a|0;Zpb(a);return}function cta(a){a=a|0;dta(f[a>>2]|0);return}function dta(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;wha(a+464|0)|0;g=a+156|0;j=f[g>>2]|0;k=a+160|0;d=f[k>>2]|0;e=j;b=d+(~((d+-4-e|0)>>>2)<<2)|0;if((d|0)==(j|0))b=j;else f[k>>2]=b;d=a+164|0;c=b-e|0;b=c>>2;if((f[d>>2]|0)-e>>2>>>0>b>>>0){do if(!b){h=0;i=0}else if(b>>>0>1073741823)ud();else{i=Wpb(c)|0;h=i;break}while(0);b=h+(b<<2)|0;if((c|0)>0)Irb(i|0,j|0,c|0)|0;f[g>>2]=h;f[k>>2]=b;f[d>>2]=b;if(j|0)Zpb(j)}eta(a+112|0);fta(a+68|0);g=a+48|0;if(f[g>>2]|0){e=a+44|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[e>>2]=0;c=f[a+40>>2]|0;if(c|0){d=a+36|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}d=f[a+56>>2]|0;e=a+60|0;b=f[e>>2]|0;if((b|0)!=(d|0))do{c=b+-20|0;f[e>>2]=c;b=f[b+-12>>2]|0;if(b|0)do{k=b;b=f[b>>2]|0;Zpb(k)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(b|0)Zpb(b);b=f[e>>2]|0}while((b|0)!=(d|0));e=a+28|0;if(!(f[e>>2]|0))return;c=a+24|0;b=f[c>>2]|0;if(b|0)do{k=b;b=f[b>>2]|0;Ysa(k+12|0);Zpb(k)}while((b|0)!=0);f[c>>2]=0;d=f[a+20>>2]|0;if(d|0){c=a+16|0;b=0;do{f[(f[c>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[e>>2]=0;return}function eta(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;k=r+24|0;j=r+20|0;i=r+16|0;l=r+12|0;m=r+8|0;n=r+28|0;o=r+4|0;p=r;h=f[a>>2]|0;q=a+4|0;c=f[q>>2]|0;if((c|0)!=(h|0))do{e=c+-4|0;f[q>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){ija(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}c=f[q>>2]|0}while((c|0)!=(h|0));f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;d=a+40|0;if(!(b[d>>0]|0)){u=r;return}b[d>>0]=0;f[l>>2]=f[a>>2];f[m>>2]=c;f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];b[k>>0]=b[n>>0]|0;n=$ia(i,j,k)|0;f[o>>2]=n;f[p>>2]=f[q>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];aja(a,j,k)|0;u=r;return}function fta(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;k=r+24|0;j=r+20|0;i=r+16|0;l=r+12|0;m=r+8|0;n=r+28|0;o=r+4|0;p=r;h=f[a>>2]|0;q=a+4|0;c=f[q>>2]|0;if((c|0)!=(h|0))do{e=c+-4|0;f[q>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){hja(c);Zpb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}Zpb(g)}c=f[q>>2]|0}while((c|0)!=(h|0));f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;d=a+40|0;if(!(b[d>>0]|0)){u=r;return}b[d>>0]=0;f[l>>2]=f[a>>2];f[m>>2]=c;f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];b[k>>0]=b[n>>0]|0;n=bja(i,j,k)|0;f[o>>2]=n;f[p>>2]=f[q>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];cja(a,j,k)|0;u=r;return}function gta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+32|0;e=c+12|0;d=c;npa(b,e,d);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[d>>2];f[a+16>>2]=f[d+4>>2];f[a+20>>2]=f[d+8>>2];u=c;return}function hta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;ita(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function ita(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){jta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;jta(a,b);return}function jta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function kta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;lta(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function lta(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){mta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;mta(a,b);return}function mta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function nta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=lsa((esa(a,f[c>>2]|0)|0)+60|0,c+4|0)|0;if(f[e>>2]|0){b=0;return b|0}i=c;g=f[i+4>>2]|0;d=(f[b>>2]|0)+112|0;f[d>>2]=f[i>>2];f[d+4>>2]=g;d=f[b>>2]|0;g=f[b+4>>2]|0;if(g|0)Npb(g);f[e>>2]=d;i=e+4|0;d=f[i>>2]|0;f[i>>2]=g;if(d|0)Ppb(d);h=f[c>>2]|0;g=f[a+20>>2]|0;if(!g){b=1;return b|0}c=g+-1|0;e=(c&g|0)==0;if(e)i=c&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;d=f[(f[a+16>>2]|0)+(i<<2)>>2]|0;if(!d){b=1;return b|0}d=f[d>>2]|0;if(!d){b=1;return b|0}a:do if(e){while(1){a=f[d+4>>2]|0;e=(a|0)==(h|0);if(!(e|(a&c|0)==(i|0))){d=1;e=26;break}if(e)if((f[d+8>>2]|0)==(h|0)){j=d;break a}d=f[d>>2]|0;if(!d){d=1;e=26;break}}if((e|0)==26)return d|0}else{while(1){e=f[d+4>>2]|0;if((e|0)==(h|0)){if((f[d+8>>2]|0)==(h|0)){j=d;break a}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){d=1;e=26;break}}d=f[d>>2]|0;if(!d){d=1;e=26;break}}if((e|0)==26)return d|0}while(0);d=f[j+20>>2]|0;e=f[j+24>>2]|0;if((d|0)==(e|0)){b=1;return b|0}do{gsa(0,f[d>>2]|0,f[b>>2]|0);d=d+8|0}while((d|0)!=(e|0));d=1;return d|0}function ota(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;pta(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function pta(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){qta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;qta(a,b);return}function qta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function rta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;sta(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function sta(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){tta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;tta(a,b);return}function tta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function uta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;vta(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function vta(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){wta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;wta(a,b);return}function wta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function xta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=msa((esa(a,f[c>>2]|0)|0)+160|0,c+4|0)|0;if(f[h>>2]|0){b=0;return b|0}d=f[b>>2]|0;e=f[b+4>>2]|0;if(e|0)Npb(e);f[h>>2]=d;i=h+4|0;g=f[i>>2]|0;f[i>>2]=e;if(g){Ppb(g);d=f[h>>2]|0}g=c;i=f[g+4>>2]|0;h=d+36|0;f[h>>2]=f[g>>2];f[h+4>>2]=i;c=f[c>>2]|0;h=f[a+20>>2]|0;if(!h){b=1;return b|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;d=f[(f[a+16>>2]|0)+(i<<2)>>2]|0;if(!d){b=1;return b|0}d=f[d>>2]|0;if(!d){b=1;return b|0}a:do if(e){while(1){a=f[d+4>>2]|0;e=(a|0)==(c|0);if(!(e|(a&g|0)==(i|0))){d=1;e=27;break}if(e)if((f[d+8>>2]|0)==(c|0)){j=d;break a}d=f[d>>2]|0;if(!d){d=1;e=27;break}}if((e|0)==27)return d|0}else{while(1){e=f[d+4>>2]|0;if((e|0)==(c|0)){if((f[d+8>>2]|0)==(c|0)){j=d;break a}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){d=1;e=27;break}}d=f[d>>2]|0;if(!d){d=1;e=27;break}}if((e|0)==27)return d|0}while(0);d=f[j+20>>2]|0;e=f[j+24>>2]|0;if((d|0)==(e|0)){b=1;return b|0}do{hsa(0,f[d>>2]|0,f[b>>2]|0);d=d+8|0}while((d|0)!=(e|0));d=1;return d|0}function yta(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=f[b>>2]|0;if(!(f[e+4>>2]|0)){d=0;return d|0}if(!(f[e+72>>2]|0)){d=0;return d|0}if(!(f[e+36>>2]|0)){d=0;return d|0}if(!(f[e+44>>2]|0)){d=0;return d|0}if(!(f[e+52>>2]|0)){d=0;return d|0}h=zta((esa(a,f[c>>2]|0)|0)+20|0,c+4|0)|0;if(f[h>>2]|0){d=0;return d|0}e=f[b>>2]|0;g=f[b+4>>2]|0;if(g|0)Npb(g);f[h>>2]=e;j=h+4|0;e=f[j>>2]|0;f[j>>2]=g;if(e|0)Ppb(e);if(!d){e=0;g=0}else{g=d;e=f[g>>2]|0;g=f[g+4>>2]|0}h=h+8|0;f[h>>2]=e;f[h+4>>2]=g;h=c;j=f[h+4>>2]|0;i=(f[b>>2]|0)+116|0;f[i>>2]=f[h>>2];f[i+4>>2]=j;i=f[c>>2]|0;c=f[a+20>>2]|0;if(!c){d=1;return d|0}h=c+-1|0;g=(h&c|0)==0;if(g)j=h&i;else if(i>>>0<c>>>0)j=i;else j=(i>>>0)%(c>>>0)|0;e=f[(f[a+16>>2]|0)+(j<<2)>>2]|0;if(!e){d=1;return d|0}e=f[e>>2]|0;if(!e){d=1;return d|0}a:do if(g){while(1){c=f[e+4>>2]|0;g=(c|0)==(i|0);if(!(g|(c&h|0)==(j|0))){e=1;g=33;break}if(g)if((f[e+8>>2]|0)==(i|0)){k=e;break a}e=f[e>>2]|0;if(!e){e=1;g=33;break}}if((g|0)==33)return e|0}else{while(1){g=f[e+4>>2]|0;if((g|0)==(i|0)){if((f[e+8>>2]|0)==(i|0)){k=e;break a}}else{if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(j|0)){e=1;g=33;break}}e=f[e>>2]|0;if(!e){e=1;g=33;break}}if((g|0)==33)return e|0}while(0);e=f[k+20>>2]|0;g=f[k+24>>2]|0;if((e|0)==(g|0)){d=1;return d|0}do{jsa(a,e,f[b>>2]|0,d);e=e+8|0}while((e|0)!=(g|0));e=1;return e|0}function zta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}}while(0);h=Wpb(32)|0;f[h+8>>2]=m;l=h+16|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Ata(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+16|0;return a|0}function Ata(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Bta(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Bta(a,b);return}function Bta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Cta(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0.0,s=0;q=u;u=u+16|0;o=q;p=a+416|0;c=b[p>>0]|0;if(!(c&2)){u=q;return}a:do if(c&1){if(f[a+444>>2]|0){c=f[a+440>>2]|0;if(!c)break;g=a+452|0;i=a+420|0;k=a+424|0;l=o+4|0;a=a+428|0;e=o+8|0;while(1){d=f[c+8>>2]|0;if(f[d+4>>2]|0)if(!(f[d+196>>2]&32)){m=d+200|0;if((j[m>>1]|0|(h[m+2>>0]|0)<<16)&65536|0)ppa(d);r=+n[g>>2];n[o>>2]=r*(+n[d+168>>2]-+n[i>>2]);n[l>>2]=r*(+n[d+172>>2]-+n[k>>2]);n[e>>2]=r*(+n[d+176>>2]-+n[a>>2]);bpa(d,o)}c=f[c>>2]|0;if(!c)break a}}c=f[a+44>>2]|0;b:do if(!c){d=0;c=0}else{d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c){d=0;c=0;break b}d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0)}while(0);i=a+452|0;k=a+420|0;l=a+424|0;m=o+4|0;e=a+428|0;g=o+8|0;if(c|0)c:while(1){do{a=f[d+12>>2]|0;if(!(f[a+196>>2]&32)){s=a+200|0;if((j[s>>1]|0|(h[s+2>>0]|0)<<16)&65536|0)ppa(a);r=+n[i>>2];n[o>>2]=r*(+n[a+168>>2]-+n[k>>2]);n[m>>2]=r*(+n[a+172>>2]-+n[l>>2]);n[g>>2]=r*(+n[a+176>>2]-+n[e>>2]);bpa(a,o)}d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue c}}}while(0);b[p>>0]=b[p>>0]&-3;u=q;return}function Dta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=f[b+40>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&c;else if(g>>>0>c>>>0)h=c;else h=(c>>>0)%(g>>>0)|0;b=f[(f[b+36>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(g|0)==(c|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(c|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((d|0)==(c|0)){if((f[b+8>>2]|0)==(c|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Eta(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;l=0;q=u;u=u+1328|0;k=f[c+232>>2]|0;p=f[c+228>>2]|0;if(d|0){g=f[(a+40|0)>>2]|0;if(!g){a=0;u=q;return a|0}if(!((g+-1|0)&g))h=(g+-1|0)&d;else if(g>>>0>d>>>0)h=d;else h=(d>>>0)%(g>>>0)|0;c=f[(f[(a+36|0)>>2]|0)+(h<<2)>>2]|0;if(!c){a=0;u=q;return a|0}c=f[c>>2]|0;if(!c){a=0;u=q;return a|0}a:do if(!((g+-1|0)&g)){while(1){e=f[c+4>>2]|0;if(!((e|0)==(d|0)|(e&(g+-1|0)|0)==(h|0))){j=0;l=192;break}if((e|0)==(d|0))if((f[c+8>>2]|0)==(d|0)){o=c;break a}c=f[c>>2]|0;if(!c){j=0;l=192;break}}if((l|0)==192){u=q;return j|0}}else{while(1){e=f[c+4>>2]|0;if((e|0)==(d|0)){if((f[c+8>>2]|0)==(d|0)){o=c;break a}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(h|0)){j=0;l=192;break}}c=f[c>>2]|0;if(!c){j=0;l=192;break}}if((l|0)==192){u=q;return j|0}}while(0);d=o+12|0;k=esa(a,f[(f[d>>2]|0)+8>>2]|0)|0;e=f[k+8>>2]|0;c=f[(k+12|0)>>2]|0;b:do if((e|0)==(c|0)){i=e;l=142}else{g=f[d>>2]|0;do{if((f[e>>2]|0)==(g|0)){i=e;l=142;break b}e=e+8|0}while((e|0)!=(c|0))}while(0);if((l|0)==142)if((i|0)!=(c|0)){e=i+8|0;if((e|0)!=(c|0)){h=i;j=i;while(1){g=f[e>>2]|0;if((g|0)!=(f[d>>2]|0)){j=j+12|0;r=f[j>>2]|0;f[e>>2]=0;f[j>>2]=0;f[i>>2]=g;j=i+4|0;g=f[j>>2]|0;f[j>>2]=r;if(g|0)Ppb(g);i=h+8|0;h=i}g=e+8|0;if((g|0)==(c|0))break;else{j=e;e=g}}c=f[(k+12|0)>>2]|0}if((c|0)!=(i|0))do{e=c+-8|0;f[(k+12|0)>>2]=e;c=f[c+-4>>2]|0;if(!c)c=e;else{Ppb(c);c=f[(k+12|0)>>2]|0}}while((c|0)!=(i|0))}Gta(a,f[d>>2]|0);e=Hta(f[d>>2]|0)|0;do if(e|0)if(!(f[e+40>>2]|0)){c=(f[e+36>>2]|0)==0;if((f[e+24>>2]|0)==(f[e+28>>2]|0))if(c){b[a+108>>0]=1;l=160}else l=161;else if(c)l=160;else l=161;if((l|0)==160){b[a+109>>0]=1;break}else if((l|0)==161){b[a+110>>0]=1;break}}while(0);h=f[d>>2]|0;g=f[h>>2]|0;c=f[a+56>>2]|0;f[q>>2]=h;Ita(c+(g*20|0)|0,q)|0;g=f[(a+40|0)>>2]|0;c=f[o+4>>2]|0;h=((g+-1|0)&g|0)==0;if(h)i=(g+-1|0)&c;else if(c>>>0<g>>>0)i=c;else i=(c>>>0)%(g>>>0)|0;e=(f[(a+36|0)>>2]|0)+(i<<2)|0;j=f[e>>2]|0;while(1){c=f[j>>2]|0;if((c|0)==(o|0))break;else j=c}if((j|0)==(a+44|0))l=175;else{c=f[j+4>>2]|0;if(h)c=c&(g+-1|0);else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)==(i|0))m=o;else l=175}do if((l|0)==175){c=f[o>>2]|0;if(c|0){c=f[c+4>>2]|0;if(h)c=c&(g+-1|0);else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)==(i|0)){m=o;break}}f[e>>2]=0;m=o}while(0);c=f[m>>2]|0;if(c){e=f[c+4>>2]|0;if(h)e=e&(g+-1|0);else if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){f[(f[(a+36|0)>>2]|0)+(e<<2)>>2]=j;c=f[o>>2]|0}}f[j>>2]=c;f[m>>2]=0;f[(a+48|0)>>2]=(f[(a+48|0)>>2]|0)+-1;c=f[o+16>>2]|0;if(c|0)Ppb(c);Zpb(o);uja(a+464|0);ANa(p);r=1;u=q;return r|0}f[q>>2]=0;h=Fta(a+36|0,q)|0;c=f[h>>2]|0;e=f[c+56>>2]|0;if(e){do{g=f[e+12>>2]|0;c=f[g+4>>2]|0;g=f[g+8>>2]|0;if(g)Npb(g);if(c|0)sFa(k,c+28|0,7,0);if(g)Ppb(g);e=f[e>>2]|0}while((e|0)!=0);c=f[h>>2]|0}Gta(a,c);r=f[h>>2]|0;f[q+32>>2]=a;f[q+280>>2]=j;f[q+352>>2]=h;f[q+440>>2]=r;f[q+1072>>2]=k;f[q+1112>>2]=p;f[q+1272>>2]=0;f[q+1276>>2]=0;Rta(q);G=f[q+1272>>2]|0;D=f[q+1276>>2]|0;H=+n[q+1276>>2];f[q+1272>>2]=0;f[q+1276>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function Fta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Tsa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function Gta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=b+96|0;c=f[g>>2]|0;if(c|0)do{h=(f[c+12>>2]|0)+112|0;f[h>>2]=0;f[h+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=b+100|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[b+92>>2]|0;if(d|0){e=b+88|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}g=b+116|0;c=f[g>>2]|0;if(c|0)do{h=(f[c+12>>2]|0)+36|0;f[h>>2]=0;f[h+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=b+120|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[b+112>>2]|0;if(d|0){e=b+108|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}c=f[b+56>>2]|0;if(c|0)do{Kta(a,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);c=f[b+76>>2]|0;if(!c)return;do{Kta(a,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);return}function Hta(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=Ula(a)|0;if(!c){k=0;return k|0}k=c+24|0;e=f[k>>2]|0;j=c+28|0;d=f[j>>2]|0;a:do if((e|0)==(d|0)){h=e;g=5}else do{if((f[e>>2]|0)==(a|0)){h=e;g=5;break a}e=e+4|0}while((e|0)!=(d|0));while(0);if((g|0)==5)if((h|0)!=(d|0)){e=h+4|0;if((e|0)==(d|0))e=h;else{i=e;e=h;while(1){g=f[i>>2]|0;if((g|0)==(a|0))g=h;else{f[h>>2]=g;g=h+4|0;e=g}i=i+4|0;if((i|0)==(d|0))break;else h=g}d=f[j>>2]|0}if((d|0)!=(e|0)){d=d+(~((d+-4-e|0)>>>2)<<2)|0;f[j>>2]=d}}b:do if((f[k>>2]|0)==(d|0))while(1){if(f[c+36>>2]|0)break b;e=f[c+40>>2]|0;if(!e)break b;c=e+36|0;d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))if((f[d+76>>2]|0)==(f[d+80>>2]|0))if(!(f[d+88>>2]|0)){f[c>>2]=0;hja(d);Zpb(d)}if((f[e+24>>2]|0)==(f[e+28>>2]|0))c=e;else{c=e;break}}while(0);b[c+49>>0]=0;k=c;return k|0}function Ita(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Jta(a,b)|0;if(!l){a=0;return a|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0<i>>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;Zpb(l);a=1;return a|0}function Jta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;e=X(h,1540483477)|0;e=(X(e>>>24^e,1540483477)|0)^1866966612;e=X(e>>>13^e,1540483477)|0;e=e>>>15^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=e&d;else if(e>>>0<g>>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function Kta(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;i=u;u=u+16|0;g=i;e=c+200|0;if((j[e>>1]|0|(h[e+2>>0]|0)<<16)&7864320|0)Hoa(c,0)|0;a:do switch(b[c+203>>0]&3){case 2:{e=Lta(c)|0;if(e|0)if(!(f[e+40>>2]|0)){d=(f[e+36>>2]|0)==0;if((f[e+24>>2]|0)==(f[e+28>>2]|0))if(d){b[a+152>>0]=1;d=10}else d=11;else if(d)d=10;else d=11;if((d|0)==10){b[a+153>>0]=1;break a}else if((d|0)==11){b[a+154>>0]=1;break a}}break}case 0:{Mta(a+156|0,f[c+124>>2]|0);break}default:{}}while(0);Joa(c,0);Koa(c,0);Moa(c);qja(a+464|0,c);f[g>>2]=c;rja(a+432|0,g)|0;Nta(a+228|0,c+116|0)|0;u=i;return}function Lta(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=f[a+124>>2]|0;if(!c){k=0;return k|0}k=c+24|0;e=f[k>>2]|0;j=c+28|0;d=f[j>>2]|0;a:do if((e|0)==(d|0)){h=e;g=5}else do{if((f[e>>2]|0)==(a|0)){h=e;g=5;break a}e=e+4|0}while((e|0)!=(d|0));while(0);if((g|0)==5)if((h|0)!=(d|0)){e=h+4|0;if((e|0)==(d|0))e=h;else{i=e;e=h;while(1){g=f[i>>2]|0;if((g|0)==(a|0))g=h;else{f[h>>2]=g;g=h+4|0;e=g}i=i+4|0;if((i|0)==(d|0))break;else h=g}d=f[j>>2]|0}if((d|0)!=(e|0)){d=d+(~((d+-4-e|0)>>>2)<<2)|0;f[j>>2]=d}}b:do if((f[k>>2]|0)==(d|0))while(1){if(f[c+36>>2]|0)break b;e=f[c+40>>2]|0;if(!e)break b;c=e+36|0;d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))if((f[d+76>>2]|0)==(f[d+80>>2]|0))if(!(f[d+88>>2]|0)){f[c>>2]=0;ija(d);Zpb(d)}if((f[e+24>>2]|0)==(f[e+28>>2]|0))c=e;else{c=e;break}}while(0);b[c+49>>0]=0;k=c;return k|0}function Mta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=a+4|0;d=f[g>>2]|0;e=f[a>>2]|0;c=d-e>>2;if(c>>>0<=b>>>0)return;if((b+1|0)>>>0<c>>>0){f[(f[d+-4>>2]|0)+124>>2]=b;c=(f[g>>2]|0)+-4|0;e=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=b;e=f[a>>2]|0;b=f[g>>2]|0;c=e}else{b=d;c=e}b=b+-4|0;f[g>>2]=b;if((c|0)!=(b|0))return;d=a+8|0;c=b-e|0;b=c>>2;if((f[d>>2]|0)-e>>2>>>0<=b>>>0)return;do if(!b){h=0;i=0}else if(b>>>0>1073741823)ud();else{i=Wpb(c)|0;h=i;break}while(0);b=h+(b<<2)|0;if((c|0)>0)Irb(i|0,e|0,c|0)|0;f[a>>2]=h;f[g>>2]=b;f[d>>2]=b;if(!e)return;Zpb(e);return}function Nta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Ota(a,b)|0;if(!l){a=0;return a|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0<i>>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;Zpb(l);a=1;return a|0}function Ota(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function Pta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;n=v+8|0;o=v+16|0;m=v;p=a+20|0;g=f[p>>2]|0;if(!g){a=0;u=v;return a|0}e=g+-1|0;d=(e&g|0)==0;if(d)h=e&b;else if(g>>>0>b>>>0)h=b;else h=(b>>>0)%(g>>>0)|0;s=a+16|0;c=f[(f[s>>2]|0)+(h<<2)>>2]|0;if(!c){a=0;u=v;return a|0}c=f[c>>2]|0;if(!c){a=0;u=v;return a|0}a:do if(d){while(1){l=f[c+4>>2]|0;d=(l|0)==(b|0);if(!(d|(l&e|0)==(h|0))){c=0;q=154;break}if(d)if((f[c+8>>2]|0)==(b|0)){t=c;break a}c=f[c>>2]|0;if(!c){c=0;q=154;break}}if((q|0)==154){u=v;return c|0}}else{while(1){d=f[c+4>>2]|0;if((d|0)==(b|0)){if((f[c+8>>2]|0)==(b|0)){t=c;break a}}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0)){c=0;q=154;break}}c=f[c>>2]|0;if(!c){c=0;q=154;break}}if((q|0)==154){u=v;return c|0}}while(0);if((b|0)==0?1:(f[t+20>>2]|0)!=(f[t+24>>2]|0)){a=0;u=v;return a|0}l=t+52|0;k=t+60|0;c=f[k>>2]|0;if(c|0){i=n+4|0;j=m+4|0;do{g=c;e=g+12|0;h=f[e>>2]|0;g=g+16|0;b=f[g>>2]|0;if(!b){f[e>>2]=0;f[g>>2]=0}else{Opb(b);d=f[g>>2]|0;f[e>>2]=0;f[g>>2]=0;if(d|0)Ppb(d);f[n>>2]=0;e=Rpb(b)|0;f[i>>2]=e;if(e|0){f[n>>2]=h;if(h|0){Qta(m,a,n);d=f[j>>2]|0;if(d|0)Ppb(d)}Ppb(e)}Qpb(b)}c=f[c>>2]|0}while((c|0)!=0)}g=t+64|0;if(f[g>>2]|0){c=f[k>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[k>>2]=0;d=f[t+56>>2]|0;if(d|0){c=0;do{f[(f[l>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}b=t+72|0;g=t+80|0;c=f[g>>2]|0;if(c|0)do{m=(f[c+12>>2]|0)+112|0;f[m>>2]=0;f[m+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=t+84|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+76>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}b=t+92|0;f[n>>2]=0;f[n+4>>2]=-1;h=t+100|0;c=f[h>>2]|0;if(c|0)do{ula(f[c+12>>2]|0,n,o);c=f[c>>2]|0}while((c|0)!=0);g=t+104|0;if(f[g>>2]|0){c=f[h>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[h>>2]=0;d=f[t+96>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}b=t+112|0;g=t+120|0;c=f[g>>2]|0;if(c|0)do{m=(f[c+12>>2]|0)+176|0;f[m>>2]=0;f[m+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=t+124|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+116>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}b=t+132|0;f[n>>2]=0;f[n+4>>2]=-1;h=t+140|0;c=f[h>>2]|0;if(c|0)do{UMa(f[c+12>>2]|0,n,o);c=f[c>>2]|0}while((c|0)!=0);g=t+144|0;if(f[g>>2]|0){c=f[h>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[h>>2]=0;d=f[t+136>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[g>>2]=0}b=t+152|0;g=t+160|0;c=f[g>>2]|0;if(c|0)do{o=(f[c+12>>2]|0)+24|0;f[o>>2]=0;f[o+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=t+164|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+156>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}b=t+172|0;g=t+180|0;c=f[g>>2]|0;if(c|0)do{o=(f[c+12>>2]|0)+36|0;f[o>>2]=0;f[o+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=t+184|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+176>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}h=t+192|0;b=t+204|0;if(f[b>>2]|0){g=t+200|0;c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+196>>2]|0;if(d|0){c=0;do{f[(f[h>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[b>>2]=0}h=t+212|0;b=t+224|0;if(f[b>>2]|0){g=t+220|0;c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((c|0)!=0);f[g>>2]=0;d=f[t+216>>2]|0;if(d|0){c=0;do{f[(f[h>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[b>>2]=0}e=f[p>>2]|0;c=f[t+4>>2]|0;g=e+-1|0;h=(g&e|0)==0;do if(h)b=g&c;else{if(c>>>0<e>>>0){b=c;break}b=(c>>>0)%(e>>>0)|0}while(0);d=(f[s>>2]|0)+(b<<2)|0;i=f[d>>2]|0;while(1){c=f[i>>2]|0;if((c|0)==(t|0))break;else i=c}do if((i|0)==(a+24|0))q=128;else{c=f[i+4>>2]|0;do if(h)c=c&g;else{if(c>>>0<e>>>0)break;c=(c>>>0)%(e>>>0)|0}while(0);if((c|0)!=(b|0)){q=128;break}r=t}while(0);do if((q|0)==128){c=f[t>>2]|0;if(c|0){c=f[c+4>>2]|0;do if(h)c=c&g;else{if(c>>>0<e>>>0)break;c=(c>>>0)%(e>>>0)|0}while(0);if((c|0)==(b|0)){r=t;break}}f[d>>2]=0;r=t}while(0);d=f[r>>2]|0;c=d;do if(d){d=f[d+4>>2]|0;do if(h)d=d&g;else{if(d>>>0<e>>>0)break;d=(d>>>0)%(e>>>0)|0}while(0);if((d|0)==(b|0))break;f[(f[s>>2]|0)+(d<<2)>>2]=i;c=f[t>>2]|0}while(0);f[i>>2]=c;f[r>>2]=0;a=a+28|0;f[a>>2]=(f[a>>2]|0)+-1;Ysa(t+12|0);Zpb(t);a=1;u=v;return a|0}function Qta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;j=(f[(f[c>>2]|0)+44>>2]|0)+64|0;i=(Qqa(j)|0)<<2;j=i+148+((Rqa(j)|0)<<1)|0;i=b+292|0;d=f[i>>2]|0;do if((f[b+288>>2]|0)==(d|0)){i=b+260|0;h=f[i>>2]|0;f[g>>2]=0;e=g+4|0;f[e>>2]=h;e=rta((esa(b,0)|0)+40|0,e)|0;if(f[e>>2]|0)break;h=g;g=f[h+4>>2]|0;d=(f[c>>2]|0)+28|0;f[d>>2]=f[h>>2];f[d+4>>2]=g;d=f[c>>2]|0;g=c+4|0;h=f[g>>2]|0;if(h|0)Npb(h);f[e>>2]=d;e=e+4|0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)Ppb(d);f[i>>2]=(f[i>>2]|0)+1;d=b+456|0;f[d>>2]=(f[d>>2]|0)+j;f[a>>2]=f[c>>2];d=f[g>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=k;return}else{h=f[d+-4>>2]|0;f[g>>2]=0;e=g+4|0;f[e>>2]=h;e=rta((esa(b,0)|0)+40|0,e)|0;if(f[e>>2]|0)break;h=g;g=f[h+4>>2]|0;d=(f[c>>2]|0)+28|0;f[d>>2]=f[h>>2];f[d+4>>2]=g;d=f[c>>2]|0;g=c+4|0;h=f[g>>2]|0;if(h|0)Npb(h);f[e>>2]=d;e=e+4|0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)Ppb(d);f[i>>2]=(f[i>>2]|0)+-4;d=b+456|0;f[d>>2]=(f[d>>2]|0)+j;f[a>>2]=f[c>>2];d=f[g>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=k;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=k;return}function Rta(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=f[a+32>>2]|0;e=f[a+352>>2]|0;g=f[a+440>>2]|0;j=f[a+1072>>2]|0;k=f[a+1112>>2]|0;a:{if(f[(g+60|0)>>2]|0){b=f[(g+56|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(g+56|0)>>2]=0;c=f[g+52>>2]|0;if(c|0){b=0;do{f[(f[(g+48|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(g+60|0)>>2]=0;g=f[e>>2]|0}h=g+80|0;if(f[h>>2]|0){e=g+76|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[e>>2]=0;d=f[g+72>>2]|0;if(d|0){c=g+68|0;b=0;do{f[(f[c>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[h>>2]=0}e=esa(i,0)|0;if(f[(e+32|0)>>2]|0){b=f[(e+28|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+28|0)>>2]=0;c=f[e+24>>2]|0;if(c|0){b=0;do{f[(f[(e+20|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+32|0)>>2]=0}if(f[(e+52|0)>>2]|0){b=f[(e+48|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+48|0)>>2]=0;c=f[e+44>>2]|0;if(c|0){b=0;do{f[(f[(e+40|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+52|0)>>2]=0}if(f[(e+72|0)>>2]|0){b=f[(e+68|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+68|0)>>2]=0;c=f[e+64>>2]|0;if(c|0){b=0;do{f[(f[(e+60|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+72|0)>>2]=0}if(f[(e+92|0)>>2]|0){b=f[(e+88|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+88|0)>>2]=0;c=f[e+84>>2]|0;if(c|0){b=0;do{f[(f[(e+80|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+92|0)>>2]=0}if(f[(e+112|0)>>2]|0){b=f[(e+108|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+108|0)>>2]=0;c=f[e+104>>2]|0;if(c|0){b=0;do{f[(f[(e+100|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+112|0)>>2]=0}if(f[(e+132|0)>>2]|0){b=f[(e+128|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+128|0)>>2]=0;c=f[e+124>>2]|0;if(c|0){b=0;do{f[(f[(e+120|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+132|0)>>2]=0}if(f[(e+152|0)>>2]|0){b=f[(e+148|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+148|0)>>2]=0;c=f[e+144>>2]|0;if(c|0){b=0;do{f[(f[(e+140|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+152|0)>>2]=0}if(f[(e+172|0)>>2]|0){b=f[(e+168|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+168|0)>>2]=0;c=f[e+164>>2]|0;if(c|0){b=0;do{f[(f[(e+160|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+172|0)>>2]=0}if(f[(e+192|0)>>2]|0){b=f[(e+188|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+188|0)>>2]=0;c=f[e+184>>2]|0;if(c|0){b=0;do{f[(f[(e+180|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+192|0)>>2]=0}if(f[(e+212|0)>>2]|0){b=f[(e+208|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);f[(e+208|0)>>2]=0;c=f[e+204>>2]|0;if(c|0){b=0;do{f[(f[(e+200|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+212|0)>>2]=0}f[i+456>>2]=0;nh[f[(f[j>>2]|0)+28>>2]&1023](j,0);ANa(k);b=1;u=a;f[a+1272>>2]=6;f[a+1276>>2]=b|0;break a}f[a+280>>2]=b}
function Q8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;y=u;u=u+48|0;w=y+32|0;t=y+20|0;v=y;r=_2()|0;s=f[r+220>>2]|0;o=kxa(s)|0;f[w>>2]=0;x=w+4|0;f[x>>2]=0;f[w+8>>2]=0;c=f[b>>2]|0;p=b+4|0;q=f[p>>2]|0;e=c+(q<<3)|0;if(!q)h=10;else{g=w+8|0;do{do if(f[c>>2]|0){d=f[x>>2]|0;if((d|0)==(f[g>>2]|0)){xB(w,c);break}else{m=c;n=f[m+4>>2]|0;q=d;f[q>>2]=f[m>>2];f[q+4>>2]=n;f[x>>2]=(f[x>>2]|0)+8;break}}while(0);c=c+8|0}while((c|0)!=(e|0));if((f[w>>2]|0)==(f[x>>2]|0))h=10;else{v=f[a+4>>2]|0;nh[f[(f[v>>2]|0)+12>>2]&1023](v,w)}}if((h|0)==10){f[t>>2]=0;q=t+4|0;f[q>>2]=0;f[t+8>>2]=0;c=f[b>>2]|0;n=f[p>>2]|0;l=c+(n<<3)|0;if(!n){j=0;i=1;e=t+8|0;d=0}else{m=a+8|0;n=v+4|0;e=t+8|0;k=0;d=1;do{iwa(v,s,c);ioa(f[v>>2]|0,m);if(d)d=(toa(f[v>>2]|0)|0)^1;else d=0;j=f[v>>2]|0;g=f[j+64>>2]|0;j=f[j+68>>2]|0;k=k|(g|0)!=(j|0);if((g|0)!=(j|0))do{h=f[g>>2]|0;vja(o,h);h=h+116|0;i=f[q>>2]|0;if(i>>>0<(f[e>>2]|0)>>>0){z=h;h=f[z+4>>2]|0;f[i>>2]=f[z>>2];f[i+4>>2]=h;f[q>>2]=(f[q>>2]|0)+8}else D8(t,h);g=g+4|0}while((g|0)!=(j|0));g=f[n>>2]|0;if(g|0)Ppb(g);c=c+8|0}while((c|0)!=(l|0));j=k;i=d;d=f[p>>2]|0;c=f[b>>2]|0}h=f[r+232>>2]|0;zGa(h,d,c);c=f[t>>2]|0;d=f[q>>2]|0;f[v>>2]=(c|0)==(d|0)?0:c;f[v+4>>2]=d-c>>3;g=v+12|0;f[v+8>>2]=c;f[g>>2]=d;f[v+16>>2]=f[e>>2];f[e>>2]=0;f[q>>2]=0;f[t>>2]=0;mFa(h,v);d=v+8|0;c=f[d>>2]|0;if((c|0)==(f[g>>2]|0)){e=f[v>>2]|0;if(e){_pb(e);c=f[d>>2]|0}}if(c|0){d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}if(!i)uYa(oxa(s)|0,h);c=f[r+228>>2]|0;do if(j)if(i){YNa(c);break}else{ZNa(c);break}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,v);c=f[t>>2]|0;if(c|0){d=f[q>>2]|0;if((d|0)!=(c|0))f[q>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}c=f[w>>2]|0;if(!c){u=y;return}d=f[x>>2]|0;if((d|0)!=(c|0))f[x>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=y;return}function R8(){return 15}function S8(a){a=a|0;var b=0,c=0,d=0,e=0;if(a>>>0>15)return;b=_2()|0;c=f[b+220>>2]|0;d=f[b+228>>2]|0;e=wOa(d,a,1)|0;if(e|0)if((f[e>>2]|0)!=(f[e+4>>2]|0)){e=oxa(c)|0;uYa(e,f[b+232>>2]|0)}if(!(yOa(d,a)|0))return;ANa(d);return}function T8(a,b){a=a|0;b=b|0;var c=0;if(a>>>0>15)return;c=(_2()|0)+228|0;c=f[c>>2]|0;a=wOa(c,a,1)|0;if(!a)return;wSa(a,b);YNa(c);return}function U8(a,b,c,d,e,g,h,i,j,k){a=a|0;b=b|0;c=+c;d=d|0;e=+e;g=g|0;h=+h;i=i|0;j=+j;k=k|0;var l=0;if(a>>>0>15)return;l=(_2()|0)+228|0;l=f[l>>2]|0;a=wOa(l,a,1)|0;if(!a)return;xSa(a,b,c,d,e,g,h,i,j,k);YNa(l);return}function V8(a,b){a=a|0;b=b|0;var c=0;if(a>>>0>15)return;c=(_2()|0)+228|0;c=f[c>>2]|0;a=wOa(c,a,1)|0;if(!a)return;vSa(a,b);YNa(c);return}function W8(){return 2}function X8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25720;H3(d,b,c,0);return}function Y8(a){a=a|0;var b=0;f[a>>2]=25752;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Z8(a){a=a|0;var b=0,c=0;f[a>>2]=25752;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function _8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0;t=u;u=u+48|0;o=t+32|0;p=t+24|0;q=t;r=(_2()|0)+220|0;r=f[r>>2]|0;f[o>>2]=0;s=o+4|0;f[s>>2]=0;f[o+8>>2]=0;c=f[b+4>>2]|0;m=o+8|0;if(c|0){if(c>>>0>178956970)ud();d=Wpb(c*24|0)|0;e=d;f[o>>2]=e;f[s>>2]=e;f[m>>2]=d+(c*24|0);d=f[b>>2]|0;e=d+(c<<3)|0;g=q+4|0;h=q+8|0;i=q+12|0;j=q+16|0;k=q+20|0;l=p+4|0;do{mwa(p,r,d);b=f[p>>2]|0;if(!b){f[q>>2]=1065353216;f[g>>2]=1065353216;f[h>>2]=1065353216;f[i>>2]=0;f[j>>2]=0;f[k>>2]=0;b=f[s>>2]|0;if(b>>>0<(f[m>>2]|0)>>>0){f[b>>2]=f[q>>2];f[b+4>>2]=f[q+4>>2];f[b+8>>2]=f[q+8>>2];f[b>>2]=1065353216;f[b+4>>2]=f[g>>2];f[b+8>>2]=f[h>>2];c=b+12|0;f[c>>2]=f[i>>2];f[c+4>>2]=f[i+4>>2];f[c+8>>2]=f[i+8>>2];f[c>>2]=f[i>>2];f[b+16>>2]=f[j>>2];f[b+20>>2]=f[k>>2];f[s>>2]=(f[s>>2]|0)+24}else c9(o,q)}else{c=f[b+4>>2]|0;b=f[s>>2]|0;if(b>>>0<(f[m>>2]|0)>>>0){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;b=b+24|0;f[s>>2]=b}else{b9(o);b=f[s>>2]|0}y=f[c+44>>2]|0;x=y+120|0;c=y+132|0;B=y+124|0;A=y+136|0;v=+n[B>>2]-+n[A>>2];z=y+128|0;y=y+140|0;w=+n[z>>2]-+n[y>>2];n[b+-24>>2]=+n[x>>2]-+n[c>>2];n[b+-20>>2]=v;n[b+-16>>2]=w;w=+n[B>>2]+ +n[A>>2];v=+n[z>>2]+ +n[y>>2];n[b+-12>>2]=+n[x>>2]+ +n[c>>2];n[b+-8>>2]=w;n[b+-4>>2]=v}b=f[l>>2]|0;if(b|0)Ppb(b);d=d+8|0}while((d|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,o);b=f[o>>2]|0;if(!b){u=t;return}c=f[s>>2]|0;if((c|0)!=(b|0))f[s>>2]=c+(~(((c+-24-b|0)>>>0)/24|0)*24|0);Zpb(b);u=t;return}function $8(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function a9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function b9(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+4|0;h=f[j>>2]|0;l=f[a>>2]|0;d=(h-l|0)/24|0;b=d+1|0;i=l;if(b>>>0>178956970)fob(a);k=a+8|0;g=((f[k>>2]|0)-l|0)/24|0;c=g<<1;c=g>>>0<89478485?(c>>>0<b>>>0?b:c):178956970;do if(!c)e=0;else if(c>>>0>178956970)ud();else{e=Wpb(c*24|0)|0;break}while(0);b=e+(d*24|0)|0;e=e+(c*24|0)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;g=b+24|0;if((h|0)!=(i|0)){d=h;while(1){c=b+-24|0;h=d;d=d+-24|0;f[c>>2]=f[d>>2];f[b+-20>>2]=f[h+-20>>2];f[b+-16>>2]=f[h+-16>>2];f[b+-12>>2]=f[h+-12>>2];f[b+-8>>2]=f[h+-8>>2];f[b+-4>>2]=f[h+-4>>2];if((d|0)==(i|0)){b=c;break}else b=c}}f[a>>2]=b;f[j>>2]=g;f[k>>2]=e;if(!l)return;Zpb(l);return}function c9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/24|0;c=h+1|0;j=m;if(c>>>0>178956970)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/24|0;d=i<<1;d=i>>>0<89478485?(d>>>0<c>>>0?c:d):178956970;do if(!d)g=0;else if(d>>>0>178956970)ud();else{g=Wpb(d*24|0)|0;break}while(0);c=g+(h*24|0)|0;i=g+(d*24|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c>>2]=f[b>>2];f[g+(h*24|0)+4>>2]=f[b+4>>2];f[g+(h*24|0)+8>>2]=f[b+8>>2];d=g+(h*24|0)+12|0;n=b+12|0;f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d>>2]=f[n>>2];f[g+(h*24|0)+16>>2]=f[b+16>>2];f[g+(h*24|0)+20>>2]=f[b+20>>2];b=c+24|0;if((e|0)!=(j|0))while(1){d=c+-24|0;n=e;e=e+-24|0;f[d>>2]=f[e>>2];f[c+-20>>2]=f[n+-20>>2];f[c+-16>>2]=f[n+-16>>2];f[c+-12>>2]=f[n+-12>>2];f[c+-8>>2]=f[n+-8>>2];f[c+-4>>2]=f[n+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function d9(a){a=a|0;wf()}function e9(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;o=r+8|0;g=r+4|0;q=r;p=_2()|0;h=f[p+220>>2]|0;f[o>>2]=1065353216;i=o+4|0;f[i>>2]=1065353216;j=o+8|0;f[j>>2]=1065353216;k=o+12|0;f[k>>2]=0;l=o+16|0;f[l>>2]=0;m=o+20|0;f[m>>2]=0;n=b+4|0;e=f[n>>2]|0;do if(!e)xka(h,c,d,o);else{f[g>>2]=e;yka(h,f[b>>2]|0,g,c,d,o);e=f[g>>2]|0;if(e|0){h=f[n>>2]|0;f[n>>2]=h-(h-e<<3>>3);break}q=f[a>>2]|0;nh[f[(f[q>>2]|0)+8>>2]&1023](q,o);u=r;return}while(0);e=f[p+232>>2]|0;p=Wpb(32)|0;n=f[a>>2]|0;f[a>>2]=0;f[p+4>>2]=n;f[p>>2]=25784;f[p+8>>2]=f[o>>2];f[p+12>>2]=f[i>>2];f[p+16>>2]=f[j>>2];f[p+20>>2]=f[k>>2];f[p+24>>2]=f[l>>2];f[p+28>>2]=f[m>>2];f[q>>2]=p;DFa(e,q,b,c,d);e=f[q>>2]|0;f[q>>2]=0;if(!e){u=r;return}fh[f[(f[e>>2]|0)+4>>2]&2047](e);u=r;return}function f9(a){a=a|0;var b=0;f[a>>2]=25816;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function g9(a){a=a|0;var b=0,c=0;f[a>>2]=25816;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function h9(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;k9(c,b);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,c);return}function i9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function j9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function k9(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0;c=+n[a>>2];e=+n[a+12>>2];if(!(c<=e)){f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];f[a+16>>2]=f[b+16>>2];f[a+20>>2]=f[b+20>>2];return}g=+n[b>>2];j=b+12|0;if(!(g<=+n[j>>2]))return;if(g<c){d=a;k=5}else if(g>e){d=a+12|0;k=5}if((k|0)==5)n[d>>2]=g;c=+n[b+4>>2];h=a+4|0;if(c<+n[h>>2]){d=a;k=8}else if(c>+n[a+16>>2]){d=a+12|0;k=8}if((k|0)==8)n[d+4>>2]=c;c=+n[b+8>>2];i=a+8|0;if(c<+n[i>>2]){d=a;k=11}else if(c>+n[a+20>>2]){d=a+12|0;k=11}if((k|0)==11)n[d+8>>2]=c;c=+n[j>>2];if(c<+n[a>>2]){d=a;k=14}else{d=a+12|0;if(c>+n[d>>2])k=14}if((k|0)==14)n[d>>2]=c;c=+n[b+16>>2];if(c<+n[h>>2]){d=a;k=17}else if(c>+n[a+16>>2]){d=a+12|0;k=17}if((k|0)==17)n[d+4>>2]=c;c=+n[b+20>>2];if(!(c<+n[i>>2]))if(c>+n[a+20>>2])a=a+12|0;else return;n[a+8>>2]=c;return}function l9(a){a=a|0;wf()}function m9(a,b){a=a|0;b=b|0;var c=0,d=0;c=Wpb(8)|0;d=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=d;f[c>>2]=25848;H3(c,0,b,0);return}function n9(a){a=a|0;var b=0;f[a>>2]=25880;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function o9(a){a=a|0;var b=0,c=0;f[a>>2]=25880;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function p9(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=u;u=u+64|0;y=E+32|0;z=E+24|0;A=E;C=_2()|0;B=f[C+220>>2]|0;C=f[C+228>>2]|0;f[y>>2]=1065353216;s=y+4|0;f[s>>2]=1065353216;t=y+8|0;f[t>>2]=1065353216;v=y+12|0;f[v>>2]=0;w=y+16|0;f[w>>2]=0;x=y+20|0;f[x>>2]=0;c=f[b>>2]|0;r=f[b+4>>2]|0;i=c+(r<<3)|0;if(!r){D=a+4|0;D=f[D>>2]|0;C=f[D>>2]|0;C=C+8|0;C=f[C>>2]|0;nh[C&1023](D,y);u=E;return}j=z+4|0;k=y+12|0;l=A+4|0;m=A+8|0;o=A+12|0;p=A+16|0;q=A+20|0;r=A+12|0;do{mwa(z,B,c);if(f[z>>2]|0){b=ENa(C)|0;BWa(A,B,b,f[z>>2]|0,0);d=+n[y>>2];e=+n[k>>2];do if(!(d<=e)){f[y>>2]=f[A>>2];f[s>>2]=f[l>>2];f[t>>2]=f[m>>2];f[v>>2]=f[o>>2];f[w>>2]=f[p>>2];f[x>>2]=f[q>>2]}else{g=+n[A>>2];h=+n[r>>2];if(g<=h){if(g<d){b=y;D=9}else if(g>e){b=v;D=9}if((D|0)==9){D=0;n[b>>2]=g}d=+n[l>>2];if(d<+n[s>>2]){b=y;D=12}else if(d>+n[w>>2]){b=v;D=12}if((D|0)==12){D=0;n[b+4>>2]=d}d=+n[m>>2];if(d<+n[t>>2]){b=y;D=15}else if(d>+n[x>>2]){b=v;D=15}if((D|0)==15){D=0;n[b+8>>2]=d}if(h<+n[y>>2]){b=y;D=18}else if(h>+n[v>>2]){b=v;D=18}if((D|0)==18){D=0;n[b>>2]=h}d=+n[p>>2];if(d<+n[s>>2]){b=y;D=21}else if(d>+n[w>>2]){b=v;D=21}if((D|0)==21){D=0;n[b+4>>2]=d}d=+n[q>>2];if(d<+n[t>>2])b=y;else if(d>+n[x>>2])b=v;else break;n[b+8>>2]=d}}while(0)}b=f[j>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(i|0));D=a+4|0;D=f[D>>2]|0;C=f[D>>2]|0;C=C+8|0;C=f[C>>2]|0;nh[C&1023](D,y);u=E;return}function q9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function r9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function s9(a){a=a|0;wf()}function t9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25912;H3(d,b,c,0);return}function u9(a){a=a|0;var b=0;f[a>>2]=25944;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function v9(a){a=a|0;var b=0,c=0;f[a>>2]=25944;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function w9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+32|0;i=n+16|0;j=n+8|0;k=n;l=(_2()|0)+220|0;l=f[l>>2]|0;f[i>>2]=0;m=i+4|0;f[m>>2]=0;f[i+8>>2]=0;c=f[b>>2]|0;h=f[b+4>>2]|0;d=c+(h<<3)|0;if(h|0){e=k+4|0;g=i+8|0;h=j+4|0;do{mwa(j,l,c);b=f[j>>2]|0;if(!b){f[k>>2]=0;f[e>>2]=-1}else{p=(f[b+4>>2]|0)+28|0;o=f[p+4>>2]|0;b=k;f[b>>2]=f[p>>2];f[b+4>>2]=o}b=f[m>>2]|0;if(b>>>0<(f[g>>2]|0)>>>0){q=k;o=f[q+4>>2]|0;p=b;f[p>>2]=f[q>>2];f[p+4>>2]=o;f[m>>2]=(f[m>>2]|0)+8}else z9(i,k);b=f[h>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(d|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}c=f[m>>2]|0;if((c|0)!=(b|0))f[m>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=n;return}function x9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function y9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function z9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function A9(a){a=a|0;wf()}function B9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=25976;H3(d,b,c,0);return}function C9(a){a=a|0;var b=0;f[a>>2]=26008;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function D9(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function E9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&1|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function F9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function G9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function H9(a){a=a|0;wf()}function I9(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;n=_2()|0;m=f[n+220>>2]|0;n=f[n+228>>2]|0;a=f[b>>2]|0;k=f[b+4>>2]|0;i=a+(k<<3)|0;if(k|0){k=l+4|0;b=1;while(1){xwa(l,m,a);g=f[l>>2]|0;if(!(f[g+4>>2]|0))e=b;else{e=g+200|0;e=b&((j[e>>1]|0|(h[e+2>>0]|0)<<16)&7864320|0)!=0}Loa(g,c,d);b=f[k>>2]|0;if(b|0)Ppb(b);a=a+8|0;if((a|0)==(i|0))break;else b=e}if(!e){XNa(n);u=o;return}}YNa(n);u=o;return}function J9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;k=_2()|0;i=f[k+220>>2]|0;k=f[k+228>>2]|0;c=f[b>>2]|0;e=f[b+4>>2]|0;d=c+(e<<3)|0;if(e|0){e=g+4|0;a=1;do{wwa(g,i,c);b=f[g>>2]|0;if(b){if(f[b+4>>2]|0){m=b+200|0;a=a&((j[m>>1]|0|(h[m+2>>0]|0)<<16)&7864320|0)!=0}Moa(b)}b=f[e>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(d|0));if(!a){XNa(k);u=l;return}}YNa(k);u=l;return}function K9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;f[d>>2]=26040;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;H3(d,b,c,0);return}function L9(a){a=a|0;var b=0;f[a>>2]=26040;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function M9(a){a=a|0;var b=0,c=0;f[a>>2]=26040;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function N9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;x=u;u=u+48|0;w=x+8|0;r=x;t=x+44|0;s=_2()|0;v=f[s+220>>2]|0;c=w;d=c+36|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));d=f[b>>2]|0;q=b+4|0;p=f[q>>2]|0;g=d+(p<<3)|0;if(!p){d=w;i=w+4|0;p=5}else{i=w+16|0;k=w+20|0;l=w+12|0;m=w+28|0;n=w+32|0;o=w+24|0;c=w+4|0;p=w+8|0;do{a:do switch(Yva(v,d)|0){case 2:{e=f[i>>2]|0;if(e>>>0<(f[k>>2]|0)>>>0){z=d;y=f[z+4>>2]|0;f[e>>2]=f[z>>2];f[e+4>>2]=y;f[i>>2]=(f[i>>2]|0)+8;break a}else{D8(l,d);break a}}case 3:{e=f[m>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){A=d;y=f[A+4>>2]|0;z=e;f[z>>2]=f[A>>2];f[z+4>>2]=y;f[m>>2]=(f[m>>2]|0)+8;break a}else{D8(o,d);break a}}case 1:{e=f[c>>2]|0;if(e>>>0<(f[p>>2]|0)>>>0){y=d;z=f[y+4>>2]|0;A=e;f[A>>2]=f[y>>2];f[A+4>>2]=z;f[c>>2]=(f[c>>2]|0)+8;break a}else{D8(w,d);break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[w>>2]|0)==(f[c>>2]|0)){d=w;i=c;p=5}else{d=w;p=18}}if((p|0)==5)if((f[w+12>>2]|0)==(f[w+16>>2]|0)){c=w+24|0;if((f[c>>2]|0)==(f[w+28>>2]|0)){e=f[q>>2]|0;do if(e|0){o=f[s+232>>2]|0;A=f[b>>2]|0;g=A+(e<<3)|0;k=r+4|0;n=1;e=A;do{wwa(r,v,e);l=f[r>>2]|0;m=f[k>>2]|0;if(m|0)Ppb(m);A=l+200|0;n=n&((j[A>>1]|0|(h[A+2>>0]|0)<<16)&7864320|0)!=0;sFa(o,(f[l+4>>2]|0)+28|0,7,0);bwa(v,e)|0;e=e+8|0}while((e|0)!=(g|0));e=f[s+228>>2]|0;if(n){YNa(e);break}else{uYa(oxa(v)|0,o);ANa(e);break}}while(0);g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,t);g=d}else{c=i;p=18}}else{c=i;p=18}if((p|0)==18){g=f[a+4>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,w);g=d;i=c;c=w+24|0}c=f[c>>2]|0;if(c|0){d=w+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}e=f[w+12>>2]|0;if(e|0){c=w+16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e)}c=f[g>>2]|0;if(!c){u=x;return}d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=x;return}function O9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;g=u;u=u+48|0;d=g;e=d+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;e=d+4|0;c=b+4|0;j=f[c>>2]|0;h=b+8|0;i=f[h>>2]|0;f[d>>2]=f[b>>2];f[e>>2]=j;f[d+8>>2]=i;f[h>>2]=0;f[c>>2]=0;f[b>>2]=0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,d);a=f[d+24>>2]|0;if(a|0){b=d+28|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}a=f[d+12>>2]|0;if(a|0){b=d+16|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}a=f[d>>2]|0;if(!a){u=g;return}b=f[e>>2]|0;if((b|0)!=(a|0))f[e>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a);u=g;return}function P9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Q9(a,c,e,g,h,i,j,k){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;s=u;u=u+64|0;q=s+32|0;p=s+20|0;r=s;x=g;y=f[x>>2]|0;x=f[x+4>>2]|0;g=h;w=f[g>>2]|0;g=f[g+4>>2]|0;m=i;h=f[m>>2]|0;m=f[m+4>>2]|0;n=p+4|0;l=Wpb(24)|0;f[p>>2]=l;t=l+24|0;o=p+8|0;f[o>>2]=t;v=l;f[v>>2]=y;f[v+4>>2]=x;v=l+8|0;f[v>>2]=w;f[v+4>>2]=g;v=l+16|0;f[v>>2]=h;f[v+4>>2]=m;v=l+24|0;f[n>>2]=v;m=Wpb(56)|0;h=f[a>>2]|0;f[a>>2]=0;f[m+4>>2]=h;a=m+24|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[m+44>>2]=3;b[m+48>>0]=0;f[m>>2]=26072;d[m+50>>1]=j;f[m+52>>2]=k;a=Wpb(8)|0;f[a>>2]=26088;f[a+4>>2]=m;S6(a,c);a=Wpb(8)|0;f[a>>2]=26120;f[a+4>>2]=m;h=Wpb(8)|0;f[h>>2]=26152;f[h+4>>2]=a;a=Wpb(8)|0;g=f[e+4>>2]|0;i=a;f[i>>2]=f[e>>2];f[i+4>>2]=g;i=a+8|0;f[q>>2]=a;f[q+4>>2]=1;g=q+12|0;f[q+8>>2]=a;f[g>>2]=i;f[q+16>>2]=i;r8(h,q);h=f[q+8>>2]|0;i=f[g>>2]|0;a=(h|0)==(i|0);e=v;j=t;if(a){c=f[q>>2]|0;if(c|0)_pb(c)}if(h|0){if(!a)f[g>>2]=i+(~((i+-8-h|0)>>>3)<<3);Zpb(h)}y=Wpb(8)|0;f[y>>2]=26184;f[y+4>>2]=m;f[r>>2]=l;f[r+4>>2]=3;a=r+12|0;f[r+8>>2]=f[p>>2];f[a>>2]=e;f[r+16>>2]=j;f[o>>2]=0;f[n>>2]=0;f[p>>2]=0;g=(_2()|0)+232|0;g=f[g>>2]|0;f[q>>2]=y;fGa(g,q,r);g=f[q>>2]|0;f[q>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);i=r+8|0;g=f[i>>2]|0;if((g|0)==(f[a>>2]|0)){h=f[r>>2]|0;if(h){_pb(h);g=f[i>>2]|0}}if(!g){u=s;return}h=f[a>>2]|0;if((h|0)!=(g|0))f[a>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g);u=s;return}function R9(a){a=a|0;return}function S9(a){a=a|0;Zpb(a);return}function T9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=a+4|0;d=f[h>>2]|0;f[d+24>>2]=f[b>>2];f[d+28>>2]=f[b+4>>2];i=b+8|0;g=d+32|0;a=f[g>>2]|0;e=d+36|0;if(!a)a=d+40|0;else{c=f[e>>2]|0;if((c|0)!=(a|0))f[e>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);a=d+40|0;f[a>>2]=0;f[e>>2]=0;f[g>>2]=0}f[g>>2]=f[i>>2];g=b+12|0;f[e>>2]=f[g>>2];e=b+16|0;f[a>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[i>>2]=0;f[b>>2]=0;W9(f[h>>2]|0);return}function U9(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+32|0;e=h;g=f[a+4>>2]|0;a=g+48|0;if(!(b[a>>0]|0)){b[a>>0]=1;a=f[g+4>>2]|0;i=f[(f[a>>2]|0)+12>>2]|0;d=e+8|0;b[e>>0]=2;j=c+4|0;m=f[j>>2]|0;k=c+8|0;l=f[k>>2]|0;f[e+4>>2]=f[c>>2];f[d>>2]=m;f[e+12>>2]=l;f[k>>2]=0;f[j>>2]=0;f[c>>2]=0;nh[i&1023](a,e);a=f[e+4>>2]|0;if(a|0){c=f[d>>2]|0;if((c|0)!=(a|0))f[d>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}}l=g+44|0;m=(f[l>>2]|0)+-1|0;f[l>>2]=m;if(m|0){u=h;return}fh[f[(f[g>>2]|0)+4>>2]&2047](g);u=h;return}function V9(a,c){a=a|0;c=c|0;var d=0;a=f[a+4>>2]|0;d=a+48|0;if(!(b[d>>0]|0)){b[d>>0]=1;d=f[a+4>>2]|0;nh[f[(f[d>>2]|0)+16>>2]&1023](d,c)}d=a+44|0;c=(f[d>>2]|0)+-1|0;f[d>>2]=c;if(c|0)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function W9(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;t=u;u=u+128|0;s=t+112|0;r=t+80|0;q=t+48|0;o=t+32|0;n=t;m=a+44|0;p=(f[m>>2]|0)+-1|0;f[m>>2]=p;if(p|0){u=t;return}if(!(b[a+48>>0]|0)){k=a+8|0;c=a+16|0;l=_2()|0;m=f[l+220>>2]|0;lwa(s,m,k);if(!(f[s>>2]|0)){q=f[a+4>>2]|0;p=f[(f[q>>2]|0)+12>>2]|0;c=r+4|0;f[c>>2]=0;g=r+8|0;f[g>>2]=0;f[r+12>>2]=0;b[r>>0]=1;m=k;n=f[m+4>>2]|0;o=r+16|0;f[o>>2]=f[m>>2];f[o+4>>2]=n;nh[p&1023](q,r);c=f[c>>2]|0;if(c|0){e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}else{iwa(r,m,c);if(!(f[r>>2]|0)){o=f[a+4>>2]|0;n=f[(f[o>>2]|0)+12>>2]|0;p=q+4|0;f[p>>2]=0;g=q+8|0;f[g>>2]=0;f[q+12>>2]=0;b[q>>0]=2;l=c;m=f[l+4>>2]|0;c=q+24|0;f[c>>2]=f[l>>2];f[c+4>>2]=m;nh[n&1023](o,q);c=f[p>>2]|0;if(c|0){e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}else{g=a+24|0;kwa(q,m,f[g>>2]|0);h=q+8|0;kwa(h,m,(f[g>>2]|0)+8|0);i=q+16|0;kwa(i,m,(f[g>>2]|0)+16|0);f[o>>2]=0;p=o+4|0;f[p>>2]=0;f[o+8>>2]=0;j=o+8|0;if(!(f[q>>2]|0))dB(o,f[g>>2]|0);do if(!(f[q+8>>2]|0)){c=(f[g>>2]|0)+8|0;e=f[p>>2]|0;if((e|0)==(f[j>>2]|0)){dB(o,c);break}else{v=c;c=f[v+4>>2]|0;f[e>>2]=f[v>>2];f[e+4>>2]=c;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);do if(!(f[q+16>>2]|0)){c=(f[g>>2]|0)+16|0;e=f[p>>2]|0;if((e|0)==(f[j>>2]|0)){dB(o,c);break}else{g=f[c+4>>2]|0;v=e;f[v>>2]=f[c>>2];f[v+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);e=f[o>>2]|0;c=f[p>>2]|0;if((e|0)==(c|0)){Jja(n,m,s,r,q,h,i,7);v=n+8|0;g=f[v>>2]|0;c=n+12|0;h=f[c>>2]|0;f[v>>2]=0;f[c>>2]=0;c=f[n+4>>2]|0;if(c|0)Ppb(c);if(!g){v=f[a+4>>2]|0;m=f[(f[v>>2]|0)+8>>2]|0;f[n>>2]=0;f[n+4>>2]=-1;nh[m&1023](v,n)}else{e=f[l+232>>2]|0;sFa(e,k,7,1);v=d[a+50>>1]|0;c=v&65535;do if(v<<16>>16){if(c&4|0)Joa(g,1);if(c&1|0)$oa(g,1);if(c&2|0)_oa(g,1);if(c&8|0)apa(g,1);if(c&16|0)cpa(g,1);if(c&32|0)dpa(g,1);if(c&64|0)epa(g,1);if(c&128|0)gpa(g,1);if(c&256|0)fpa(g,1);if(c&512|0){lpa(g,1,0,1)|0;lpa(g,2,0,1)|0;lpa(g,4,0,1)|0}if(c&1024|0)ipa(g,1);if(c&2048|0)Koa(g,1);if(!(c&4096))break;mpa(g,7)}while(0);c=f[a+52>>2]|0;if(!c)uYa(oxa(m)|0,e);else Hoa(g,c)|0;YNa(f[l+228>>2]|0);v=f[a+4>>2]|0;m=f[(f[v>>2]|0)+8>>2]|0;j=g+116|0;k=f[j+4>>2]|0;l=n;f[l>>2]=f[j>>2];f[l+4>>2]=k;nh[m&1023](v,n)}if(h|0)Ppb(h)}else{v=f[a+4>>2]|0;m=f[(f[v>>2]|0)+12>>2]|0;g=n+8|0;b[n>>0]=2;l=f[j>>2]|0;f[n+4>>2]=e;f[g>>2]=c;f[n+12>>2]=l;f[j>>2]=0;f[p>>2]=0;f[o>>2]=0;nh[m&1023](v,n);c=f[n+4>>2]|0;if(c|0){e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}c=f[o>>2]|0;if(c|0){e=f[p>>2]|0;if((e|0)!=(c|0))f[p>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}c=f[q+20>>2]|0;if(c|0)Ppb(c);c=f[q+12>>2]|0;if(c|0)Ppb(c);c=f[q+4>>2]|0;if(c|0)Ppb(c)}c=f[r+4>>2]|0;if(c|0)Ppb(c)}c=f[s+4>>2]|0;if(c|0)Ppb(c)}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=t;return}function X9(a){a=a|0;var b=0;f[a>>2]=26152;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Y9(a){a=a|0;var b=0,c=0;f[a>>2]=26152;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Z9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+8>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function _9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function $9(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;Zpb(a);return}function caa(a,b){a=a|0;b=b|0;var c=0,d=0;a=a+4|0;d=b;c=f[d+4>>2]|0;b=(f[a>>2]|0)+16|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;W9(f[a>>2]|0);return}function daa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=u;u=u+32|0;e=h;g=f[a+4>>2]|0;a=g+48|0;if(!(b[a>>0]|0)){b[a>>0]=1;i=f[g+4>>2]|0;j=f[(f[i>>2]|0)+12>>2]|0;a=e+4|0;f[a>>2]=0;d=e+8|0;f[d>>2]=0;f[e+12>>2]=0;b[e>>0]=2;l=c;k=f[l+4>>2]|0;c=e+24|0;f[c>>2]=f[l>>2];f[c+4>>2]=k;nh[j&1023](i,e);a=f[a>>2]|0;if(a|0){c=f[d>>2]|0;if((c|0)!=(a|0))f[d>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}}k=g+44|0;l=(f[k>>2]|0)+-1|0;f[k>>2]=l;if(l|0){u=h;return}fh[f[(f[g>>2]|0)+4>>2]&2047](g);u=h;return}function eaa(a,c){a=a|0;c=c|0;var d=0;a=f[a+4>>2]|0;d=a+48|0;if(!(b[d>>0]|0)){b[d>>0]=1;d=f[a+4>>2]|0;nh[f[(f[d>>2]|0)+16>>2]&1023](d,c)}d=a+44|0;c=(f[d>>2]|0)+-1|0;f[d>>2]=c;if(c|0)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function faa(a){a=a|0;return 0}function gaa(a){a=a|0;return}function haa(a){a=a|0;Zpb(a);return}function iaa(a,b){a=a|0;b=b|0;var c=0,d=0;a=a+4|0;d=b;c=f[d+4>>2]|0;b=(f[a>>2]|0)+8|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;W9(f[a>>2]|0);return}function jaa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=u;u=u+32|0;e=h;g=f[a+4>>2]|0;a=g+48|0;if(!(b[a>>0]|0)){b[a>>0]=1;i=f[g+4>>2]|0;j=f[(f[i>>2]|0)+12>>2]|0;a=e+4|0;f[a>>2]=0;d=e+8|0;f[d>>2]=0;f[e+12>>2]=0;b[e>>0]=1;l=c;k=f[l+4>>2]|0;c=e+16|0;f[c>>2]=f[l>>2];f[c+4>>2]=k;nh[j&1023](i,e);a=f[a>>2]|0;if(a|0){c=f[d>>2]|0;if((c|0)!=(a|0))f[d>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a)}}k=g+44|0;l=(f[k>>2]|0)+-1|0;f[k>>2]=l;if(l|0){u=h;return}fh[f[(f[g>>2]|0)+4>>2]&2047](g);u=h;return}function kaa(a,c){a=a|0;c=c|0;var d=0;a=f[a+4>>2]|0;d=a+48|0;if(!(b[d>>0]|0)){b[d>>0]=1;d=f[a+4>>2]|0;nh[f[(f[d>>2]|0)+16>>2]&1023](d,c)}d=a+44|0;c=(f[d>>2]|0)+-1|0;f[d>>2]=c;if(c|0)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function laa(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26216;b=a+32|0;c=f[b>>2]|0;e=a+36|0;if((c|0)==(f[e>>2]|0)){d=f[a+24>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function maa(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26216;b=a+32|0;c=f[b>>2]|0;e=a+36|0;if((c|0)==(f[e>>2]|0)){d=f[a+24>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function naa(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26216;b=a+32|0;c=f[b>>2]|0;e=a+36|0;if((c|0)==(f[e>>2]|0)){d=f[a+24>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function oaa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=u;u=u+16|0;j=i;k=f[a>>2]|0;f[a>>2]=0;f[j>>2]=k;Q9(j,b,c,d,e,g,h,0);a=f[j>>2]|0;f[j>>2]=0;if(!a){u=i;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=i;return}function paa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=u;u=u+16|0;i=h;j=f[a>>2]|0;f[a>>2]=0;f[i>>2]=j;Q9(i,b,c,d,e,g,0,0);a=f[i>>2]|0;f[i>>2]=0;if(!a){u=h;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=h;return}function qaa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+16|0;p=w;q=_2()|0;s=q+232|0;t=f[s>>2]|0;v=c+4|0;a:do if(!(f[v>>2]|0)){e=f[c>>2]|0;g=e;a=0}else{r=f[q+220>>2]|0;m=kxa(r)|0;i=f[c>>2]|0;o=f[v>>2]|0;n=i+(o<<3)|0;if(!o){g=i;e=i;a=0}else{o=p+4|0;if(!(b[q+217>>0]|0)){e=1;a=0;do{xwa(p,r,i);l=f[p>>2]|0;g=f[o>>2]|0;if(g|0)Ppb(g);x=l+200|0;e=e&((j[x>>1]|h[x+2>>0]<<16)&7864320|0)!=0;x=lpa(l,1,d,1)|0;g=lpa(l,2,d,1)|0;k=lpa(l,4,d,1)|0;if(x){yja(m,l);g=1}else g=g|k;a=a|g;i=i+8|0}while((i|0)!=(n|0))}else{e=1;a=0;do{xwa(p,r,i);l=f[p>>2]|0;g=f[o>>2]|0;if(g|0)Ppb(g);if(!(f[l+196>>2]&16777216)){x=i;f[x>>2]=0;f[x+4>>2]=-1}else{x=l+200|0;e=e&((j[x>>1]|h[x+2>>0]<<16)&7864320|0)!=0;x=lpa(l,1,d,1)|0;g=lpa(l,2,d,1)|0;k=lpa(l,4,d,1)|0;if(x){yja(m,l);g=1}else g=g|k;a=a|g}i=i+8|0}while((i|0)!=(n|0))}do if(a){a=f[q+228>>2]|0;if(e){YNa(a);break}else{x=oxa(r)|0;uYa(x,f[s>>2]|0);ANa(a);break}}while(0);a=f[v>>2]|0;i=f[c>>2]|0;k=i+(a<<3)|0;b:do if(!a){e=i;a=0}else{e=i;while(1){if((f[e>>2]|0)==0?(f[e+4>>2]|0)==-1:0)break b;e=e+8|0;if((e|0)==(k|0)){g=k;e=i;break a}}}while(0);if((e|0)==(k|0)){g=k;e=i}else{a=e;g=e;c:while(1){do{e=a;a=a+8|0;if((a|0)==(k|0))break c}while((f[a>>2]|0)==0?(f[e+12>>2]|0)==-1:0);r=a;s=f[r+4>>2]|0;x=g;f[x>>2]=f[r>>2];f[x+4>>2]=s;g=g+8|0}e=f[c>>2]|0;a=f[v>>2]|0}}}while(0);x=a-(e+(a<<3)-g>>3)|0;f[v>>2]=x;if(!x){u=w;return}gFa(t,c,7,d);u=w;return}function raa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;o=v;p=_2()|0;r=p+232|0;s=f[r>>2]|0;t=c+4|0;a:do if(!(f[t>>2]|0)){e=f[c>>2]|0;g=e;a=0}else{q=f[p+220>>2]|0;l=kxa(q)|0;i=f[c>>2]|0;n=f[t>>2]|0;m=i+(n<<3)|0;if(!n){g=i;e=i;a=0}else{n=o+4|0;if(!(b[p+217>>0]|0)){e=1;a=0;do{xwa(o,q,i);k=f[o>>2]|0;g=f[n>>2]|0;if(g|0)Ppb(g);g=k+200|0;e=e&((j[g>>1]|h[g+2>>0]<<16)&7864320|0)!=0;g=lpa(k,1,d,1)|0;if(g)yja(l,k);a=a|g;i=i+8|0}while((i|0)!=(m|0))}else{e=1;a=0;do{xwa(o,q,i);k=f[o>>2]|0;g=f[n>>2]|0;if(g|0)Ppb(g);if(!(f[k+196>>2]&16777216)){k=i;f[k>>2]=0;f[k+4>>2]=-1}else{g=k+200|0;e=e&((j[g>>1]|h[g+2>>0]<<16)&7864320|0)!=0;g=lpa(k,1,d,1)|0;if(g)yja(l,k);a=a|g}i=i+8|0}while((i|0)!=(m|0))}do if(a){a=f[p+228>>2]|0;if(e){YNa(a);break}else{q=oxa(q)|0;uYa(q,f[r>>2]|0);ANa(a);break}}while(0);a=f[t>>2]|0;i=f[c>>2]|0;k=i+(a<<3)|0;b:do if(!a){e=i;a=0}else{e=i;while(1){if((f[e>>2]|0)==0?(f[e+4>>2]|0)==-1:0)break b;e=e+8|0;if((e|0)==(k|0)){g=k;e=i;break a}}}while(0);if((e|0)==(k|0)){g=k;e=i}else{a=e;g=e;c:while(1){do{e=a;a=a+8|0;if((a|0)==(k|0))break c}while((f[a>>2]|0)==0?(f[e+12>>2]|0)==-1:0);p=a;q=f[p+4>>2]|0;r=g;f[r>>2]=f[p>>2];f[r+4>>2]=q;g=g+8|0}e=f[c>>2]|0;a=f[t>>2]|0}}}while(0);r=a-(e+(a<<3)-g>>3)|0;f[t>>2]=r;if(!r){u=v;return}gFa(s,c,1,d);u=v;return}function saa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;n=t;o=_2()|0;q=o+232|0;r=f[q>>2]|0;s=c+4|0;a:do if(!(f[s>>2]|0)){e=f[c>>2]|0;g=e;a=0}else{p=f[o+220>>2]|0;kxa(p)|0;i=f[c>>2]|0;m=f[s>>2]|0;l=i+(m<<3)|0;if(!m){g=i;e=i;a=0}else{m=n+4|0;if(!(b[o+217>>0]|0)){e=1;a=0;do{xwa(n,p,i);k=f[n>>2]|0;g=f[m>>2]|0;if(g|0)Ppb(g);g=k+200|0;e=e&((j[g>>1]|h[g+2>>0]<<16)&7864320|0)!=0;a=a|(lpa(k,2,d,1)|0);i=i+8|0}while((i|0)!=(l|0))}else{e=1;a=0;k=i;do{xwa(n,p,k);g=f[n>>2]|0;i=f[m>>2]|0;if(i|0)Ppb(i);if(!(f[g+196>>2]&16777216)){i=k;f[i>>2]=0;f[i+4>>2]=-1}else{i=g+200|0;e=e&((j[i>>1]|h[i+2>>0]<<16)&7864320|0)!=0;a=a|(lpa(g,2,d,1)|0)}k=k+8|0}while((k|0)!=(l|0))}do if(a){a=f[o+228>>2]|0;if(e){YNa(a);break}else{p=oxa(p)|0;uYa(p,f[q>>2]|0);ANa(a);break}}while(0);a=f[s>>2]|0;i=f[c>>2]|0;k=i+(a<<3)|0;b:do if(!a){e=i;a=0}else{e=i;while(1){if((f[e>>2]|0)==0?(f[e+4>>2]|0)==-1:0)break b;e=e+8|0;if((e|0)==(k|0)){g=k;e=i;break a}}}while(0);if((e|0)==(k|0)){g=k;e=i}else{a=e;g=e;c:while(1){do{e=a;a=a+8|0;if((a|0)==(k|0))break c}while((f[a>>2]|0)==0?(f[e+12>>2]|0)==-1:0);o=a;p=f[o+4>>2]|0;q=g;f[q>>2]=f[o>>2];f[q+4>>2]=p;g=g+8|0}e=f[c>>2]|0;a=f[s>>2]|0}}}while(0);q=a-(e+(a<<3)-g>>3)|0;f[s>>2]=q;if(!q){u=t;return}gFa(r,c,2,d);u=t;return}function taa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;n=t;o=_2()|0;q=o+232|0;r=f[q>>2]|0;s=c+4|0;a:do if(!(f[s>>2]|0)){e=f[c>>2]|0;g=e;a=0}else{p=f[o+220>>2]|0;kxa(p)|0;i=f[c>>2]|0;m=f[s>>2]|0;l=i+(m<<3)|0;if(!m){g=i;e=i;a=0}else{m=n+4|0;if(!(b[o+217>>0]|0)){e=1;a=0;do{xwa(n,p,i);k=f[n>>2]|0;g=f[m>>2]|0;if(g|0)Ppb(g);g=k+200|0;e=e&((j[g>>1]|h[g+2>>0]<<16)&7864320|0)!=0;a=a|(lpa(k,4,d,1)|0);i=i+8|0}while((i|0)!=(l|0))}else{e=1;a=0;k=i;do{xwa(n,p,k);g=f[n>>2]|0;i=f[m>>2]|0;if(i|0)Ppb(i);if(!(f[g+196>>2]&16777216)){i=k;f[i>>2]=0;f[i+4>>2]=-1}else{i=g+200|0;e=e&((j[i>>1]|h[i+2>>0]<<16)&7864320|0)!=0;a=a|(lpa(g,4,d,1)|0)}k=k+8|0}while((k|0)!=(l|0))}do if(a){a=f[o+228>>2]|0;if(e){YNa(a);break}else{p=oxa(p)|0;uYa(p,f[q>>2]|0);ANa(a);break}}while(0);a=f[s>>2]|0;i=f[c>>2]|0;k=i+(a<<3)|0;b:do if(!a){e=i;a=0}else{e=i;while(1){if((f[e>>2]|0)==0?(f[e+4>>2]|0)==-1:0)break b;e=e+8|0;if((e|0)==(k|0)){g=k;e=i;break a}}}while(0);if((e|0)==(k|0)){g=k;e=i}else{a=e;g=e;c:while(1){do{e=a;a=a+8|0;if((a|0)==(k|0))break c}while((f[a>>2]|0)==0?(f[e+12>>2]|0)==-1:0);o=a;p=f[o+4>>2]|0;q=g;f[q>>2]=f[o>>2];f[q+4>>2]=p;g=g+8|0}e=f[c>>2]|0;a=f[s>>2]|0}}}while(0);q=a-(e+(a<<3)-g>>3)|0;f[s>>2]=q;if(!q){u=t;return}gFa(r,c,4,d);u=t;return}function uaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26232;H3(d,b,c,0);return}function vaa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function waa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+8|0;k=o;l=(_2()|0)+220|0;l=f[l>>2]|0;f[j>>2]=0;m=j+4|0;f[m>>2]=0;n=j+8|0;f[n>>2]=0;i=c+4|0;ry(j,f[i>>2]|0);c=f[c>>2]|0;i=f[i>>2]|0;h=c+(i<<3)|0;a:do if(i|0){i=k+4|0;while(1){mwa(k,l,c);d=f[k>>2]|0;if(!d)g=0;else g=(b[d+192>>0]&1)!=0;d=f[m>>2]|0;e=f[n>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0)break;e=e<<6;p=d+32&-32;ry(j,d>>>0<1073741823?(e>>>0<p>>>0?p:e):2147483647);d=f[m>>2]|0}f[m>>2]=d+1;e=(f[j>>2]|0)+(d>>>5<<2)|0;d=1<<(d&31);if(g)d=f[e>>2]|d;else d=f[e>>2]&~d;f[e>>2]=d;d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(h|0))break a}fob(j)}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,j);c=f[j>>2]|0;if(!c){u=o;return}Zpb(c);u=o;return}function xaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26264;H3(d,b,c,0);return}function yaa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function zaa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+8|0;k=o;l=(_2()|0)+220|0;l=f[l>>2]|0;f[j>>2]=0;m=j+4|0;f[m>>2]=0;n=j+8|0;f[n>>2]=0;i=c+4|0;ry(j,f[i>>2]|0);c=f[c>>2]|0;i=f[i>>2]|0;h=c+(i<<3)|0;a:do if(i|0){i=k+4|0;while(1){mwa(k,l,c);d=f[k>>2]|0;if(!d)g=0;else g=(b[d+192>>0]&2)!=0;d=f[m>>2]|0;e=f[n>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0)break;e=e<<6;p=d+32&-32;ry(j,d>>>0<1073741823?(e>>>0<p>>>0?p:e):2147483647);d=f[m>>2]|0}f[m>>2]=d+1;e=(f[j>>2]|0)+(d>>>5<<2)|0;d=1<<(d&31);if(g)d=f[e>>2]|d;else d=f[e>>2]&~d;f[e>>2]=d;d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(h|0))break a}fob(j)}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,j);c=f[j>>2]|0;if(!c){u=o;return}Zpb(c);u=o;return}function Aaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26296;H3(d,b,c,0);return}function Baa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Caa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+8|0;k=o;l=(_2()|0)+220|0;l=f[l>>2]|0;f[j>>2]=0;m=j+4|0;f[m>>2]=0;n=j+8|0;f[n>>2]=0;i=c+4|0;ry(j,f[i>>2]|0);c=f[c>>2]|0;i=f[i>>2]|0;h=c+(i<<3)|0;a:do if(i|0){i=k+4|0;while(1){mwa(k,l,c);d=f[k>>2]|0;if(!d)g=0;else g=(b[d+192>>0]&4)!=0;d=f[m>>2]|0;e=f[n>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0)break;e=e<<6;p=d+32&-32;ry(j,d>>>0<1073741823?(e>>>0<p>>>0?p:e):2147483647);d=f[m>>2]|0}f[m>>2]=d+1;e=(f[j>>2]|0)+(d>>>5<<2)|0;d=1<<(d&31);if(g)d=f[e>>2]|d;else d=f[e>>2]&~d;f[e>>2]=d;d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(h|0))break a}fob(j)}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,j);c=f[j>>2]|0;if(!c){u=o;return}Zpb(c);u=o;return}function Daa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[k+228>>2]|0;else{g=i+4|0;d=1;do{xwa(i,l,b);a=f[i>>2]|0;if(a){n=a+200|0;d=d&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;Koa(a,c)}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(e|0));a=f[k+228>>2]|0;if(!d){XNa(a);u=m;return}}YNa(a);u=m;return}function Eaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26328;H3(d,b,c,0);return}function Faa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Gaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&4|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function Haa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n;a=b+4|0;if(!(f[a>>2]|0)){u=n;return}l=_2()|0;m=f[l+220>>2]|0;i=kxa(m)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[l+228>>2]|0;else{g=k+4|0;a=1;while(1){xwa(k,m,b);d=f[k>>2]|0;if(!d)d=a;else{o=d+200|0;a=a&((j[o>>1]|0|(h[o+2>>0]|0)<<16)&7864320|0)!=0;if((f[d+196>>2]&2|0)!=0^c){Joa(d,c);xja(i,d);d=a}else d=a}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0;if((b|0)==(e|0))break;else a=d}a=f[l+228>>2]|0;if(!d){ANa(a);u=n;return}}YNa(a);u=n;return}function Iaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26360;H3(d,b,c,0);return}function Jaa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Kaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&2|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function Laa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(g|0){g=i+4|0;a=1;do{xwa(i,l,b);d=f[i>>2]|0;if(d){n=d+200|0;a=a&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;$oa(d,c)}d=f[g>>2]|0;if(d|0)Ppb(d);b=b+8|0}while((b|0)!=(e|0));if(!a){n=oxa(l)|0;uYa(n,f[k+232>>2]|0);ANa(f[k+228>>2]|0);u=m;return}}YNa(f[k+228>>2]|0);u=m;return}function Maa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26392;H3(d,b,c,0);return}function Naa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&16|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function Paa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(g|0){g=i+4|0;a=1;do{xwa(i,l,b);d=f[i>>2]|0;if(d){n=d+200|0;a=a&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;_oa(d,c)}d=f[g>>2]|0;if(d|0)Ppb(d);b=b+8|0}while((b|0)!=(e|0));if(!a){n=oxa(l)|0;uYa(n,f[k+232>>2]|0);ANa(f[k+228>>2]|0);u=m;return}}YNa(f[k+228>>2]|0);u=m;return}function Qaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26424;H3(d,b,c,0);return}function Raa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Saa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&8|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;t=v+12|0;q=v;p=(_2()|0)+232|0;p=f[p>>2]|0;g=f[b>>2]|0;s=b+4|0;e=f[s>>2]|0;i=g+(e<<3)|0;f[q>>2]=0;r=q+4|0;f[r>>2]=0;f[q+8>>2]=0;a=e<<3;d=a>>3;if(!d){k=q+8|0;g=0;e=0;i=0;d=0;a=0}else{if(d>>>0>536870911)fob(q);m=Wpb(a)|0;f[r>>2]=m;f[q>>2]=m;a=m+(d<<3)|0;o=q+8|0;f[o>>2]=a;n=m;if(!e){k=o;g=m;e=m;i=n;d=n}else{a=g;d=m;e=m;while(1){g=a;k=f[g+4>>2]|0;l=d;f[l>>2]=f[g>>2];f[l+4>>2]=k;a=a+8|0;l=e+8|0;f[r>>2]=l;if((a|0)==(i|0))break;else{d=l;e=l}}k=o;g=m;e=l;i=n;d=l;a=f[o>>2]|0}}f[t>>2]=(g|0)==(e|0)?0:g;f[t+4>>2]=e-g>>3;g=t+12|0;f[t+8>>2]=i;f[g>>2]=d;f[t+16>>2]=a;f[k>>2]=0;f[r>>2]=0;f[q>>2]=0;gFa(p,t,16,c);d=t+8|0;a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){e=f[t>>2]|0;if(e){_pb(e);a=f[d>>2]|0}}if(a|0){d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a)}a=f[q>>2]|0;if(a|0){d=f[r>>2]|0;if((d|0)!=(a|0))f[r>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a)}if(!(f[s>>2]|0)){u=v;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;d=f[b>>2]|0;s=f[s>>2]|0;g=d+(s<<3)|0;if(s|0){i=t+4|0;a=1;do{xwa(t,l,d);e=f[t>>2]|0;if(e){s=e+200|0;a=a&((j[s>>1]|0|(h[s+2>>0]|0)<<16)&7864320|0)!=0;apa(e,c)}e=f[i>>2]|0;if(e|0)Ppb(e);d=d+8|0}while((d|0)!=(g|0));if(!a){c=oxa(l)|0;uYa(c,f[k+232>>2]|0);ANa(f[k+228>>2]|0);u=v;return}}YNa(f[k+228>>2]|0);u=v;return}function Uaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26456;H3(d,b,c,0);return}function Vaa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Waa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&32|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;t=v+12|0;q=v;p=(_2()|0)+232|0;p=f[p>>2]|0;g=f[b>>2]|0;s=b+4|0;e=f[s>>2]|0;i=g+(e<<3)|0;f[q>>2]=0;r=q+4|0;f[r>>2]=0;f[q+8>>2]=0;a=e<<3;d=a>>3;if(!d){k=q+8|0;g=0;e=0;i=0;d=0;a=0}else{if(d>>>0>536870911)fob(q);m=Wpb(a)|0;f[r>>2]=m;f[q>>2]=m;a=m+(d<<3)|0;o=q+8|0;f[o>>2]=a;n=m;if(!e){k=o;g=m;e=m;i=n;d=n}else{a=g;d=m;e=m;while(1){g=a;k=f[g+4>>2]|0;l=d;f[l>>2]=f[g>>2];f[l+4>>2]=k;a=a+8|0;l=e+8|0;f[r>>2]=l;if((a|0)==(i|0))break;else{d=l;e=l}}k=o;g=m;e=l;i=n;d=l;a=f[o>>2]|0}}f[t>>2]=(g|0)==(e|0)?0:g;f[t+4>>2]=e-g>>3;g=t+12|0;f[t+8>>2]=i;f[g>>2]=d;f[t+16>>2]=a;f[k>>2]=0;f[r>>2]=0;f[q>>2]=0;gFa(p,t,32,c);d=t+8|0;a=f[d>>2]|0;if((a|0)==(f[g>>2]|0)){e=f[t>>2]|0;if(e){_pb(e);a=f[d>>2]|0}}if(a|0){d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a)}a=f[q>>2]|0;if(a|0){d=f[r>>2]|0;if((d|0)!=(a|0))f[r>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a)}if(!(f[s>>2]|0)){u=v;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;d=f[b>>2]|0;s=f[s>>2]|0;g=d+(s<<3)|0;if(!s){u=v;return}i=t+4|0;a=1;do{xwa(t,l,d);e=f[t>>2]|0;if(e){s=e+200|0;a=a&((j[s>>1]|0|(h[s+2>>0]|0)<<16)&7864320|0)!=0;cpa(e,c)}e=f[i>>2]|0;if(e|0)Ppb(e);d=d+8|0}while((d|0)!=(g|0));if(a){u=v;return}c=oxa(l)|0;uYa(c,f[k+232>>2]|0);u=v;return}function Yaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26488;H3(d,b,c,0);return}function Zaa(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function _aa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&64|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function $aa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[k+228>>2]|0;else{g=i+4|0;d=1;do{xwa(i,l,b);a=f[i>>2]|0;if(a){n=a+200|0;d=d&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;dpa(a,c)}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(e|0));a=f[k+228>>2]|0;if(!d){XNa(a);u=m;return}}YNa(a);u=m;return}function aba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26520;H3(d,b,c,0);return}function bba(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function cba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&8192|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function dba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[k+228>>2]|0;else{g=i+4|0;d=1;do{xwa(i,l,b);a=f[i>>2]|0;if(a){n=a+200|0;d=d&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;epa(a,c)}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(e|0));a=f[k+228>>2]|0;if(!d){WNa(a);u=m;return}}YNa(a);u=m;return}function eba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26552;H3(d,b,c,0);return}function fba(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function gba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&16384|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function hba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[k+228>>2]|0;else{g=i+4|0;d=1;do{xwa(i,l,b);a=f[i>>2]|0;if(a){n=a+200|0;d=d&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;fpa(a,c)}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(e|0));a=f[k+228>>2]|0;if(!d){ANa(a);u=m;return}}YNa(a);u=m;return}function iba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26584;H3(d,b,c,0);return}function jba(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function kba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&32768|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function lba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;a=b+4|0;if(!(f[a>>2]|0)){u=i;return}h=(_2()|0)+220|0;h=f[h>>2]|0;kxa(h)|0;b=f[b>>2]|0;e=f[a>>2]|0;d=b+(e<<3)|0;if(!e){u=i;return}e=g+4|0;do{xwa(g,h,b);a=f[g>>2]|0;if(a|0)gpa(a,c);a=f[e>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(d|0));u=i;return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26616;H3(d,b,c,0);return}function nba(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function oba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=b+4|0;ry(i,f[h>>2]|0);b=f[b>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){mwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&65536|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function pba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+32|0;r=t+12|0;s=t;m=_2()|0;n=f[m+220>>2]|0;q=f[m+232>>2]|0;a=f[b>>2]|0;o=b+4|0;l=f[o>>2]|0;i=a+(l<<3)|0;if(!l){a=f[m+228>>2]|0;p=10}else{k=c?7:0;l=r+4|0;d=1;while(1){xwa(r,n,a);e=f[r>>2]|0;if(!(f[e+4>>2]|0))g=d;else{g=e+200|0;g=d&((j[g>>1]|0|(h[g+2>>0]|0)<<16)&7864320|0)!=0}mpa(e,k);d=f[l>>2]|0;if(d|0)Ppb(d);a=a+8|0;if((a|0)==(i|0))break;else d=g}a=f[m+228>>2]|0;if(g)p=10;else{uYa(oxa(n)|0,q);ANa(a)}}if((p|0)==10)YNa(a);g=f[b>>2]|0;e=f[o>>2]|0;i=g+(e<<3)|0;f[s>>2]=0;o=s+4|0;f[o>>2]=0;f[s+8>>2]=0;a=e<<3;d=a>>3;if(!d){k=s+8|0;g=0;e=0;i=0;d=0;a=0}else{if(d>>>0>536870911)fob(s);m=Wpb(a)|0;f[o>>2]=m;f[s>>2]=m;a=m+(d<<3)|0;b=s+8|0;f[b>>2]=a;n=m;if(!e){k=b;g=m;e=m;i=n;d=n}else{a=g;d=m;e=m;while(1){k=a;p=f[k+4>>2]|0;l=d;f[l>>2]=f[k>>2];f[l+4>>2]=p;a=a+8|0;l=e+8|0;f[o>>2]=l;if((a|0)==(i|0))break;else{d=l;e=l}}k=b;g=m;e=l;i=n;d=l;a=f[b>>2]|0}}f[r>>2]=(g|0)==(e|0)?0:g;f[r+4>>2]=e-g>>3;g=r+12|0;f[r+8>>2]=i;f[g>>2]=d;f[r+16>>2]=a;f[k>>2]=0;f[o>>2]=0;f[s>>2]=0;gFa(q,r,8,c);e=r+8|0;a=f[e>>2]|0;if((a|0)==(f[g>>2]|0)){d=f[r>>2]|0;if(d){_pb(d);a=f[e>>2]|0}}if(a|0){d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a)}a=f[s>>2]|0;if(!a){u=t;return}d=f[o>>2]|0;if((d|0)!=(a|0))f[o>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a);u=t;return}function qba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=26648;H3(d,b,c,0);return}function rba(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function sba(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+8|0;k=o;l=(_2()|0)+220|0;l=f[l>>2]|0;f[j>>2]=0;m=j+4|0;f[m>>2]=0;n=j+8|0;f[n>>2]=0;i=c+4|0;ry(j,f[i>>2]|0);c=f[c>>2]|0;i=f[i>>2]|0;h=c+(i<<3)|0;a:do if(i|0){i=k+4|0;while(1){mwa(k,l,c);d=f[k>>2]|0;if(!d)g=0;else g=(b[d+192>>0]&56)!=0;d=f[m>>2]|0;e=f[n>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0)break;e=e<<6;p=d+32&-32;ry(j,d>>>0<1073741823?(e>>>0<p>>>0?p:e):2147483647);d=f[m>>2]|0}f[m>>2]=d+1;e=(f[j>>2]|0)+(d>>>5<<2)|0;d=1<<(d&31);if(g)d=f[e>>2]|d;else d=f[e>>2]&~d;f[e>>2]=d;d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(h|0))break a}fob(j)}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,j);c=f[j>>2]|0;if(!c){u=o;return}Zpb(c);u=o;return}function tba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;l=o;m=_2()|0;n=f[m+220>>2]|0;a=f[b>>2]|0;k=f[b+4>>2]|0;g=a+(k<<3)|0;if(!k){u=o;return}i=l+4|0;k=(c&1)<<7;d=0;b=1;e=a;do{xwa(l,n,e);a=f[l>>2]|0;if(a){p=a+200|0;b=b&((j[p>>1]|0|(h[p+2>>0]|0)<<16)&7864320|0)!=0;p=a+196|0;a=f[p>>2]|0;f[p>>2]=k|a&33553791|a&-33554432|512;d=d|(a&128|0)!=0}a=f[i>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(g|0));if(b){u=o;return}a=f[m+228>>2]|0;if(d^1|c){VNa(a);u=o;return}else{WNa(a);u=o;return}}function uba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+8|0;j=n;k=(_2()|0)+220|0;k=f[k>>2]|0;f[i>>2]=0;l=i+4|0;f[l>>2]=0;m=i+8|0;f[m>>2]=0;h=c+4|0;ry(i,f[h>>2]|0);b=f[c>>2]|0;h=f[h>>2]|0;g=b+(h<<3)|0;a:do if(h|0){h=j+4|0;while(1){wwa(j,k,b);c=f[j>>2]|0;if(!c)e=0;else e=(f[c+196>>2]&128|0)!=0;c=f[l>>2]|0;d=f[m>>2]|0;if((c|0)==(d<<5|0)){if((c+1|0)<0)break;d=d<<6;o=c+32&-32;ry(i,c>>>0<1073741823?(d>>>0<o>>>0?o:d):2147483647);c=f[l>>2]|0}f[l>>2]=c+1;d=(f[i>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(e)c=f[d>>2]|c;else c=f[d>>2]&~c;f[d>>2]=c;c=f[h>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(g|0))break a}fob(i)}while(0);b=f[a>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,i);b=f[i>>2]|0;if(!b){u=n;return}Zpb(b);u=n;return}function vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;if(d>>>0<3){e=Wpb(12)|0;h=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=h;f[e>>2]=26680;f[e+8>>2]=d;H3(e,b,c,0);u=g;return}a=f[a>>2]|0;h=f[(f[a>>2]|0)+12>>2]|0;f[e>>2]=0;c=e+4|0;f[c>>2]=0;f[e+8>>2]=0;nh[h&1023](a,e);a=f[e>>2]|0;if(a|0){b=f[c>>2]|0;if((b|0)!=(a|0))f[c>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}u=g;return}function wba(a){a=a|0;var b=0;f[a>>2]=26712;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function xba(a){a=a|0;var b=0,c=0;f[a>>2]=26712;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function yba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+32|0;l=r+16|0;m=r+8|0;n=r;o=(_2()|0)+220|0;o=f[o>>2]|0;f[l>>2]=0;q=l+4|0;f[q>>2]=0;f[l+8>>2]=0;c=f[b>>2]|0;k=f[b+4>>2]|0;e=c+(k<<3)|0;if(k|0){g=n+4|0;h=l+8|0;i=m+4|0;j=n+4|0;k=a+8|0;do{mwa(m,o,c);b=f[m>>2]|0;if(!b){b=0;p=16}else{s=f[k>>2]|0;d=f[b+72+(s<<3)>>2]|0;b=f[b+72+(s<<3)+4>>2]|0;if(!b)b=0;else Npb(b);if(!d)p=16;else{d=f[d+116>>2]|0;f[n>>2]=f[c>>2];f[j>>2]=d;d=f[q>>2]|0;if(d>>>0<(f[h>>2]|0)>>>0){v=n;t=f[v+4>>2]|0;s=d;f[s>>2]=f[v>>2];f[s+4>>2]=t;f[q>>2]=(f[q>>2]|0)+8}else Bba(l,n)}}if((p|0)==16){p=0;f[n>>2]=0;f[g>>2]=-1;d=f[q>>2]|0;if(d>>>0<(f[h>>2]|0)>>>0){s=n;t=f[s+4>>2]|0;v=d;f[v>>2]=f[s>>2];f[v+4>>2]=t;f[q>>2]=(f[q>>2]|0)+8}else Bba(l,n)}if(b|0)Ppb(b);b=f[i>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(e|0))}b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,l);b=f[l>>2]|0;if(!b){u=r;return}c=f[q>>2]|0;if((c|0)!=(b|0))f[q>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);u=r;return}function zba(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function Aba(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Bba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function Cba(a){a=a|0;wf()}function Dba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=u;u=u+32|0;b=g;if(d>>>0>=3){e=f[a>>2]|0;nh[f[(f[e>>2]|0)+8>>2]&1023](e,b);u=g;return}h=Wpb(32)|0;i=f[a>>2]|0;f[a>>2]=0;f[h+4>>2]=i;f[h>>2]=26744;f[h+8>>2]=f[c>>2];f[h+12>>2]=f[c+4>>2];a=c+8|0;f[h+16>>2]=f[a>>2];i=c+12|0;f[h+20>>2]=f[i>>2];j=c+16|0;f[h+24>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[a>>2]=0;f[c>>2]=0;f[h+28>>2]=d;c=Wpb(8)|0;f[c>>2]=26152;f[c+4>>2]=h;h=Wpb(8)|0;a=f[e+4>>2]|0;d=h;f[d>>2]=f[e>>2];f[d+4>>2]=a;d=h+8|0;f[b>>2]=h;f[b+4>>2]=1;a=b+12|0;f[b+8>>2]=h;f[a>>2]=d;f[b+16>>2]=d;r8(c,b);c=f[b+8>>2]|0;d=f[a>>2]|0;e=(c|0)==(d|0);if(e){b=f[b>>2]|0;if(b|0)_pb(b)}if(c|0){if(!e)f[a>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}u=g;return}function Eba(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26744;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}f[a>>2]=26808;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function Fba(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26744;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}f[a>>2]=26808;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Gba(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+32|0;s=t+24|0;r=t;p=_2()|0;q=f[p+220>>2]|0;iwa(s,q,c);if(!(f[s>>2]|0)){a=f[a+4>>2]|0;p=f[(f[a>>2]|0)+12>>2]|0;q=r+4|0;f[q>>2]=0;e=r+8|0;f[e>>2]=0;f[r+12>>2]=0;b[r>>0]=1;n=c;o=f[n+4>>2]|0;c=r+16|0;f[c>>2]=f[n>>2];f[c+4>>2]=o;nh[p&1023](a,r);c=f[q>>2]|0;if(c|0){d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}else{o=a+8|0;n=a+12|0;do if(f[n>>2]|0){i=kxa(q)|0;c=f[o>>2]|0;m=f[n>>2]|0;k=c+(m<<3)|0;if(!m){yGa(f[p+232>>2]|0,0,c);break}l=r+4|0;m=a+28|0;d=1;e=1;while(1){mwa(r,q,c);g=f[r>>2]|0;if(!g)g=d;else{if(d){d=g+200|0;d=((j[d>>1]|0|(h[d+2>>0]|0)<<16)&7864320|0)!=0}else d=0;if(e)e=(b[g+192>>0]&7)==0;else e=0;Yoa(g,f[m>>2]|0,s);vja(i,g);g=d}d=f[l>>2]|0;if(d|0)Ppb(d);c=c+8|0;if((c|0)==(k|0))break;else d=g}d=f[p+232>>2]|0;yGa(d,f[n>>2]|0,f[o>>2]|0);if(!e){c=f[p+228>>2]|0;if(g){YNa(c);break}else{uYa(oxa(q)|0,d);ZNa(c);break}}}while(0);q=Wpb(4)|0;f[q>>2]=26776;H3(q,0,o,0);q=f[a+4>>2]|0;nh[f[(f[q>>2]|0)+8>>2]&1023](q,r)}c=f[s+4>>2]|0;if(!c){u=t;return}Ppb(c);u=t;return}function Hba(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+32|0;g=e;h=f[a+4>>2]|0;i=f[(f[h>>2]|0)+12>>2]|0;a=g+4|0;f[a>>2]=0;d=g+8|0;f[d>>2]=0;f[g+12>>2]=0;b[g>>0]=1;k=c;j=f[k+4>>2]|0;c=g+16|0;f[c>>2]=f[k>>2];f[c+4>>2]=j;nh[i&1023](h,g);a=f[a>>2]|0;if(!a){u=e;return}c=f[d>>2]|0;if((c|0)!=(a|0))f[d>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=e;return}function Iba(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Jba(a){a=a|0;return}function Kba(a){a=a|0;Zpb(a);return}function Lba(a,b){a=a|0;b=b|0;a=(_2()|0)+232|0;mFa(f[a>>2]|0,b);return}function Mba(a,b){a=a|0;b=b|0;return}function Nba(a,b){a=a|0;b=b|0;return}function Oba(a){a=a|0;return 1}function Pba(a){a=a|0;var b=0;f[a>>2]=26808;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Qba(a){a=a|0;wf()}function Rba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;m=s+8|0;n=s;if(d>>>0>=3){c=f[a>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,m);u=s;return}o=c+4|0;if(f[o>>2]|0){p=_2()|0;q=f[p+220>>2]|0;g=kxa(q)|0;f[m>>2]=0;r=m+4|0;f[r>>2]=0;b=f[c>>2]|0;l=f[o>>2]|0;k=b+(l<<3)|0;if(!l){i=1;g=0}else{l=n+4|0;i=1;do{wwa(n,q,b);e=f[n>>2]|0;if(e){t=e+200|0;i=i&((j[t>>1]|0|(h[t+2>>0]|0)<<16)&7864320|0)!=0;Yoa(e,d,m);vja(g,e)}e=f[l>>2]|0;if(e|0)Ppb(e);b=b+8|0}while((b|0)!=(k|0));g=f[o>>2]|0;b=f[c>>2]|0}e=f[p+232>>2]|0;yGa(e,g,b);b=f[p+228>>2]|0;if(i)YNa(b);else{uYa(oxa(q)|0,e);ZNa(b)}b=f[r>>2]|0;if(b|0)Ppb(b)}t=Wpb(8)|0;r=f[a>>2]|0;f[a>>2]=0;f[t+4>>2]=r;f[t>>2]=26840;H3(t,0,c,0);u=s;return}function Sba(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Tba(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=(_2()|0)+232|0;mFa(f[d>>2]|0,b);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,c);u=c;return}function Uba(a,b){a=a|0;b=b|0;return}function Vba(a,b){a=a|0;b=b|0;return}function Wba(a){a=a|0;return 1}function Xba(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;g=Wpb(32)|0;e=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=e;f[g>>2]=26872;f[g+8>>2]=f[c>>2];f[g+12>>2]=f[c+4>>2];e=c+8|0;f[g+16>>2]=f[e>>2];a=c+12|0;f[g+20>>2]=f[a>>2];j=c+16|0;f[g+24>>2]=f[j>>2];f[j>>2]=0;f[a>>2]=0;f[e>>2]=0;f[c>>2]=0;b[g+28>>0]=0;e=Wpb(8)|0;f[e>>2]=26904;f[e+4>>2]=g;g=Wpb(8)|0;a=d;c=f[a+4>>2]|0;d=g;f[d>>2]=f[a>>2];f[d+4>>2]=c;d=g+8|0;f[h>>2]=g;f[h+4>>2]=1;c=h+12|0;f[h+8>>2]=g;f[c>>2]=d;f[h+16>>2]=d;H3(e,0,h,1);d=f[h+8>>2]|0;e=f[c>>2]|0;g=(d|0)==(e|0);if(g){a=f[h>>2]|0;if(a|0)_pb(a)}if(!d){u=i;return}if(!g)f[c>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=i;return}function Yba(a){a=a|0;var b=0;f[a>>2]=26904;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Zba(a){a=a|0;var b=0,c=0;f[a>>2]=26904;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function _ba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+8>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function $ba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function aca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function bca(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26872;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=26936;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function cca(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26872;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=26936;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function dca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+64|0;d=i+32|0;e=i+24|0;g=i;j=(_2()|0)+220|0;mwa(e,f[j>>2]|0,c);c=f[e>>2]|0;if(!c)h=4;else if(!(b[(f[(f[c+4>>2]|0)+44>>2]|0)+144>>0]&2))h=4;else{fka(g,c,b[a+28>>0]|0,f[a+8>>2]|0,f[a+12>>2]|0);k=f[g>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=k;k=g+4|0;j=f[k>>2]|0;c=d+4|0;f[k>>2]=f[c>>2];f[c>>2]=j;c=g+8|0;j=f[c>>2]|0;k=d+8|0;f[c>>2]=f[k>>2];f[k>>2]=j;k=d+12|0;j=g+12|0;c=f[j>>2]|0;f[j>>2]=f[k>>2];f[k>>2]=c;k=g+16|0;c=f[k>>2]|0;j=d+16|0;f[k>>2]=f[j>>2];f[j>>2]=c;f[d+20>>2]=f[g+20>>2]}if((h|0)==4){f[d>>2]=1065353216;f[d+4>>2]=1065353216;f[d+8>>2]=1065353216;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0}c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,d);c=f[e+4>>2]|0;if(!c){u=i;return}Ppb(c);u=i;return}function eca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function fca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function gca(a){a=a|0;var b=0;f[a>>2]=26936;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function hca(a){a=a|0;wf()}function ica(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;g=Wpb(32)|0;e=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=e;f[g>>2]=26872;f[g+8>>2]=f[c>>2];f[g+12>>2]=f[c+4>>2];e=c+8|0;f[g+16>>2]=f[e>>2];a=c+12|0;f[g+20>>2]=f[a>>2];j=c+16|0;f[g+24>>2]=f[j>>2];f[j>>2]=0;f[a>>2]=0;f[e>>2]=0;f[c>>2]=0;b[g+28>>0]=1;e=Wpb(8)|0;f[e>>2]=26904;f[e+4>>2]=g;g=Wpb(8)|0;a=d;c=f[a+4>>2]|0;d=g;f[d>>2]=f[a>>2];f[d+4>>2]=c;d=g+8|0;f[h>>2]=g;f[h+4>>2]=1;c=h+12|0;f[h+8>>2]=g;f[c>>2]=d;f[h+16>>2]=d;H3(e,0,h,1);d=f[h+8>>2]|0;e=f[c>>2]|0;g=(d|0)==(e|0);if(g){a=f[h>>2]|0;if(a|0)_pb(a)}if(!d){u=i;return}if(!g)f[c>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=i;return}function jca(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;g=Wpb(32)|0;e=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=e;f[g>>2]=26872;f[g+8>>2]=f[c>>2];f[g+12>>2]=f[c+4>>2];e=c+8|0;f[g+16>>2]=f[e>>2];a=c+12|0;f[g+20>>2]=f[a>>2];j=c+16|0;f[g+24>>2]=f[j>>2];f[j>>2]=0;f[a>>2]=0;f[e>>2]=0;f[c>>2]=0;b[g+28>>0]=2;e=Wpb(8)|0;f[e>>2]=26904;f[e+4>>2]=g;g=Wpb(8)|0;a=d;c=f[a+4>>2]|0;d=g;f[d>>2]=f[a>>2];f[d+4>>2]=c;d=g+8|0;f[h>>2]=g;f[h+4>>2]=1;c=h+12|0;f[h+8>>2]=g;f[c>>2]=d;f[h+16>>2]=d;H3(e,0,h,1);d=f[h+8>>2]|0;e=f[c>>2]|0;g=(d|0)==(e|0);if(g){a=f[h>>2]|0;if(a|0)_pb(a)}if(!d){u=i;return}if(!g)f[c>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=i;return}function kca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;e=Wpb(28)|0;d=f[a>>2]|0;f[a>>2]=0;f[e+4>>2]=d;f[e>>2]=26968;f[e+8>>2]=f[b>>2];f[e+12>>2]=f[b+4>>2];d=b+8|0;f[e+16>>2]=f[d>>2];a=b+12|0;f[e+20>>2]=f[a>>2];i=b+16|0;f[e+24>>2]=f[i>>2];f[i>>2]=0;f[a>>2]=0;f[d>>2]=0;f[b>>2]=0;d=Wpb(8)|0;f[d>>2]=26904;f[d+4>>2]=e;e=Wpb(8)|0;a=c;b=f[a+4>>2]|0;c=e;f[c>>2]=f[a>>2];f[c+4>>2]=b;c=e+8|0;f[g>>2]=e;f[g+4>>2]=1;b=g+12|0;f[g+8>>2]=e;f[b>>2]=c;f[g+16>>2]=c;H3(d,0,g,1);c=f[g+8>>2]|0;d=f[b>>2]|0;e=(c|0)==(d|0);if(e){a=f[g>>2]|0;if(a|0)_pb(a)}if(!c){u=h;return}if(!e)f[b>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=h;return}function lca(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26968;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=27e3;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function mca(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=26968;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c)}f[a>>2]=27e3;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function nca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+16|0;g=i;e=(_2()|0)+220|0;mwa(h,f[e>>2]|0,c);c=f[h>>2]|0;do if(!c){c=f[a+4>>2]|0;a=f[(f[c>>2]|0)+8>>2]|0;f[g>>2]=0;e=g+4|0;f[e>>2]=0;f[g+8>>2]=0;nh[a&1023](c,g);c=f[g>>2]|0;if(c|0){d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}}else{c=f[c+4>>2]|0;d=f[a+4>>2]|0;e=f[(f[d>>2]|0)+8>>2]|0;if(!(b[(f[c+44>>2]|0)+144>>0]&2)){f[g>>2]=0;a=g+4|0;f[a>>2]=0;f[g+8>>2]=0;nh[e&1023](d,g);c=f[g>>2]|0;if(c|0){d=f[a>>2]|0;if((d|0)!=(c|0))f[a>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}break}else{gka(g,c,f[a+8>>2]|0,f[a+12>>2]|0);nh[e&1023](d,g);e=f[g>>2]|0;if(e|0){c=g+4|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e)}break}}while(0);c=f[h+4>>2]|0;if(!c){u=i;return}Ppb(c);u=i;return}function oca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function pca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function qca(a){a=a|0;var b=0;f[a>>2]=27e3;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function rca(a){a=a|0;wf()}function sca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;g=h;i=b;j=f[i>>2]|0;i=f[i+4>>2]|0;b=c;e=f[b>>2]|0;b=f[b+4>>2]|0;d=Wpb(16)|0;c=d;f[c>>2]=j;f[c+4>>2]=i;c=d+8|0;f[c>>2]=e;f[c+4>>2]=b;c=Wpb(8)|0;b=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=b;f[c>>2]=27032;f[g>>2]=d;f[g+4>>2]=2;b=g+12|0;f[g+8>>2]=d;f[b>>2]=d+16;f[g+16>>2]=d+16;H3(c,0,g,1);c=f[g+8>>2]|0;d=f[b>>2]|0;e=(c|0)==(d|0);if(e){a=f[g>>2]|0;if(a|0)_pb(a)}if(!c){u=h;return}if(!e)f[b>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=h;return}function tca(a){a=a|0;var b=0;f[a>>2]=27064;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function uca(a){a=a|0;var b=0,c=0;f[a>>2]=27064;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function vca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+80|0;j=k+64|0;h=k+56|0;i=k;e=(_2()|0)+220|0;e=f[e>>2]|0;mwa(j,e,f[c>>2]|0);mwa(h,e,(f[c>>2]|0)+8|0);c=f[j>>2]|0;if(!c)g=6;else{d=f[h>>2]|0;if(!d)g=6;else if(!(b[(f[(f[c+4>>2]|0)+44>>2]|0)+144>>0]&2))g=6;else if(!(b[(f[(f[d+4>>2]|0)+44>>2]|0)+144>>0]&2))g=6;else{a=f[a+4>>2]|0;l=f[(f[a>>2]|0)+8>>2]|0;Qja(i,e,c,d);nh[l&1023](a,i)}}if((g|0)==6){c=f[a+4>>2]|0;d=f[(f[c>>2]|0)+8>>2]|0;a=i+48|0;e=i;g=e+48|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));p[a>>3]=C;nh[d&1023](c,i)}c=f[h+4>>2]|0;if(c|0)Ppb(c);c=f[j+4>>2]|0;if(!c){u=k;return}Ppb(c);u=k;return}function wca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function xca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function yca(a){a=a|0;wf()}function zca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=u;u=u+32|0;g=h;k=b;l=f[k>>2]|0;k=f[k+4>>2]|0;b=d;j=f[b>>2]|0;b=f[b+4>>2]|0;i=Wpb(16)|0;d=i;f[d>>2]=l;f[d+4>>2]=k;d=i+8|0;f[d>>2]=j;f[d+4>>2]=b;d=Wpb(16)|0;b=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=b;f[d>>2]=27096;f[d+8>>2]=c;f[d+12>>2]=e;f[g>>2]=i;f[g+4>>2]=2;b=g+12|0;f[g+8>>2]=i;f[b>>2]=i+16;f[g+16>>2]=i+16;H3(d,0,g,1);c=f[g+8>>2]|0;d=f[b>>2]|0;e=(c|0)==(d|0);if(e){a=f[g>>2]|0;if(a|0)_pb(a)}if(!c){u=h;return}if(!e)f[b>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=h;return}function Aca(a){a=a|0;var b=0,c=0;f[a>>2]=27064;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Bca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+80|0;j=k+64|0;h=k+56|0;i=k;e=(_2()|0)+220|0;e=f[e>>2]|0;mwa(j,e,f[c>>2]|0);mwa(h,e,(f[c>>2]|0)+8|0);c=f[j>>2]|0;if(!c)g=6;else{d=f[h>>2]|0;if(!d)g=6;else if(!(b[(f[(f[c+4>>2]|0)+44>>2]|0)+144>>0]&2))g=6;else if(!(b[(f[(f[d+4>>2]|0)+44>>2]|0)+144>>0]&2))g=6;else{l=f[a+4>>2]|0;m=f[(f[l>>2]|0)+8>>2]|0;aka(i,e,c,f[a+8>>2]|0,d,f[a+12>>2]|0);nh[m&1023](l,i)}}if((g|0)==6){c=f[a+4>>2]|0;d=f[(f[c>>2]|0)+8>>2]|0;a=i+48|0;e=i;g=e+48|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));p[a>>3]=C;nh[d&1023](c,i)}c=f[h+4>>2]|0;if(c|0)Ppb(c);c=f[j+4>>2]|0;if(!c){u=k;return}Ppb(c);u=k;return}function Cca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Dca(134,a,b,c,d);return}function Dca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;h=u;u=u+32|0;g=h;i=Wpb(64)|0;j=f[b>>2]|0;f[b>>2]=0;f[i+4>>2]=j;f[i>>2]=27128;f[i+8>>2]=a;f[i+12>>2]=d;p[i+16>>3]=+p[e>>3];p[i+24>>3]=+p[e+8>>3];p[i+32>>3]=+p[e+16>>3];p[i+40>>3]=+p[e+24>>3];p[i+48>>3]=+p[e+32>>3];p[i+56>>3]=+p[e+40>>3];d=Wpb(8)|0;f[d>>2]=26904;f[d+4>>2]=i;e=Wpb(8)|0;a=c;b=f[a+4>>2]|0;c=e;f[c>>2]=f[a>>2];f[c+4>>2]=b;c=e+8|0;f[g>>2]=e;f[g+4>>2]=1;b=g+12|0;f[g+8>>2]=e;f[b>>2]=c;f[g+16>>2]=c;H3(d,0,g,1);c=f[g+8>>2]|0;d=f[b>>2]|0;e=(c|0)==(d|0);if(e){a=f[g>>2]|0;if(a|0)_pb(a)}if(!c){u=h;return}if(!e)f[b>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=h;return}function Eca(a){a=a|0;var b=0;f[a>>2]=27160;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Fca(a){a=a|0;var b=0,c=0;f[a>>2]=27160;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Gca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+112|0;h=j+104|0;i=j+48|0;d=j;e=(_2()|0)+220|0;e=f[e>>2]|0;mwa(h,e,c);c=f[h>>2]|0;if(!c)g=4;else if(!(b[(f[(f[c+4>>2]|0)+44>>2]|0)+144>>0]&2))g=4;else{k=f[a+4>>2]|0;l=f[(f[k>>2]|0)+8>>2]|0;n=f[a+8>>2]|0;m=f[a+12>>2]|0;p[d>>3]=+p[a+16>>3];p[d+8>>3]=+p[a+24>>3];p[d+16>>3]=+p[a+32>>3];p[d+24>>3]=+p[a+40>>3];p[d+32>>3]=+p[a+48>>3];p[d+40>>3]=+p[a+56>>3];Kh[n&255](i,e,c,m,d);nh[l&1023](k,i)}if((g|0)==4){c=f[a+4>>2]|0;a=f[(f[c>>2]|0)+8>>2]|0;d=i+48|0;e=i;g=e+48|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));p[d>>3]=C;nh[a&1023](c,i)}c=f[h+4>>2]|0;if(!c){u=j;return}Ppb(c);u=j;return}function Hca(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function Ica(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Jca(a){a=a|0;wf()}function Kca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Dca(135,a,b,c,d);return}function Lca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=27192;H3(d,b,c,0);return}function Mca(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Nca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;s=v+8|0;o=v;r=_2()|0;t=f[r+220>>2]|0;p=kxa(t)|0;d=f[c>>2]|0;q=c+4|0;n=f[q>>2]|0;l=d+(n<<3)|0;if(!n){k=1;i=1;g=0}else{m=s+4|0;n=o+4|0;k=1;i=1;do{mwa(s,t,d);g=f[s>>2]|0;if(g){if(k){k=g+200|0;k=((j[k>>1]|0|(h[k+2>>0]|0)<<16)&7864320|0)!=0}else k=0;if(i)i=(b[g+192>>0]&7)==0;else i=0;f[o>>2]=0;f[n>>2]=0;Yoa(g,2,o);e=f[n>>2]|0;if(e|0)Ppb(e);vja(p,g)}e=f[m>>2]|0;if(e|0)Ppb(e);d=d+8|0}while((d|0)!=(l|0));g=f[q>>2]|0;d=f[c>>2]|0}e=f[r+232>>2]|0;yGa(e,g,d);mFa(e,c);if(i){t=a+4|0;t=f[t>>2]|0;a=f[t>>2]|0;a=a+8|0;a=f[a>>2]|0;nh[a&1023](t,s);u=v;return}d=f[r+228>>2]|0;if(k){YNa(d);t=a+4|0;t=f[t>>2]|0;a=f[t>>2]|0;a=a+8|0;a=f[a>>2]|0;nh[a&1023](t,s);u=v;return}else{uYa(oxa(t)|0,e);ZNa(d);t=a+4|0;t=f[t>>2]|0;a=f[t>>2]|0;a=a+8|0;a=f[a>>2]|0;nh[a&1023](t,s);u=v;return}}function Oca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=27224;H3(d,b,c,0);return}function Pca(a){a=a|0;var b=0,c=0;f[a>>2]=26712;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Qca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=u;u=u+32|0;n=q+16|0;j=q+8|0;k=q;o=_2()|0;l=f[o+220>>2]|0;o=f[o+232>>2]|0;f[n>>2]=0;p=n+4|0;f[p>>2]=0;f[n+8>>2]=0;c=f[b>>2]|0;m=b+4|0;i=f[m>>2]|0;e=c+(i<<3)|0;if(!i){c=0;d=0}else{g=k+4|0;h=n+8|0;i=j+4|0;do{mwa(j,l,c);d=f[j>>2]|0;if(!d){f[k>>2]=0;f[g>>2]=-1;d=f[p>>2]|0;if(d>>>0<(f[h>>2]|0)>>>0){s=k;r=f[s+4>>2]|0;f[d>>2]=f[s>>2];f[d+4>>2]=r;f[p>>2]=(f[p>>2]|0)+8}else P3(n,k)}else{Jpa(k,d,l);d=f[p>>2]|0;if((d|0)==(f[h>>2]|0))xB(n,k);else{t=k;r=f[t+4>>2]|0;s=d;f[s>>2]=f[t>>2];f[s+4>>2]=r;f[p>>2]=(f[p>>2]|0)+8}}d=f[i>>2]|0;if(d|0)Ppb(d);c=c+8|0}while((c|0)!=(e|0));c=f[n>>2]|0;d=f[p>>2]|0}zGa(o,d-c>>3,c);yGa(o,f[m>>2]|0,f[b>>2]|0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,n);c=f[n>>2]|0;if(!c){u=q;return}d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);u=q;return}function Rca(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;r=t+8|0;n=t;q=_2()|0;s=f[q+220>>2]|0;o=kxa(s)|0;roa(r,e);hxa(s,r);e=f[d>>2]|0;p=d+4|0;m=f[p>>2]|0;l=e+(m<<3)|0;if(!m){g=1;c=1}else{m=n+4|0;g=1;c=1;do{xwa(n,s,e);k=f[n>>2]|0;i=f[m>>2]|0;if(i|0)Ppb(i);if(g){g=k+200|0;g=((j[g>>1]|0|(h[g+2>>0]|0)<<16)&7864320|0)!=0}else g=0;if(c)c=(b[k+192>>0]&7)==0;else c=0;Yoa(k,2,r);vja(o,k);e=e+8|0}while((e|0)!=(l|0))}e=f[q+232>>2]|0;zGa(e,1,(f[r>>2]|0)+112|0);yGa(e,f[p>>2]|0,f[d>>2]|0);do if(!c){c=f[q+228>>2]|0;if(g){YNa(c);break}else{uYa(oxa(s)|0,e);ZNa(c);break}}while(0);c=Wpb(8)|0;s=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=s;f[c>>2]=27256;H3(c,0,d,0);c=f[r+4>>2]|0;if(!c){u=t;return}Ppb(c);u=t;return}function Sca(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Tca(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=(_2()|0)+232|0;mFa(f[d>>2]|0,b);b=f[a+4>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,c);u=c;return}function Uca(a,b){a=a|0;b=b|0;return}function Vca(a,b){a=a|0;b=b|0;return}function Wca(a){a=a|0;return 1}function Xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;g=f[c>>2]|0;m=c+4|0;Yca(g,g+(f[m>>2]<<3)|0,n);g=f[c>>2]|0;e=f[m>>2]|0;l=g+(e<<3)|0;a:do switch(e|0){case 0:{h=g;k=6;break}case 1:{h=l;e=1;break}default:{h=g;i=g+8|0;j=f[g>>2]|0;while(1){o=j;j=f[i>>2]|0;if((o|0)==(j|0))if((f[h+4>>2]|0)==(f[h+12>>2]|0)){k=6;break a}h=i+8|0;if((h|0)==(l|0)){h=l;break}else{o=i;i=h;h=o}}}}while(0);if((k|0)==6)if((h|0)==(l|0))h=l;else{e=h+8|0;b:while(1){i=h+4|0;do{g=e;e=e+8|0;if((e|0)==(l|0))break b;if((f[h>>2]|0)!=(f[e>>2]|0))break}while((f[i>>2]|0)==(f[g+12>>2]|0));o=h+8|0;i=e;j=f[i+4>>2]|0;k=o;f[k>>2]=f[i>>2];f[k+4>>2]=j;h=o}h=h+8|0;g=f[c>>2]|0;e=f[m>>2]|0}f[m>>2]=e-(g+(e<<3)-h>>3);o=Wpb(72)|0;m=f[a>>2]|0;f[a>>2]=0;f[o+4>>2]=m;f[o>>2]=27288;f[o+8>>2]=f[d>>2];f[o+12>>2]=f[d+4>>2];f[o+16>>2]=f[d+8>>2];f[o+20>>2]=f[d+12>>2];f[o+24>>2]=f[d+16>>2];f[o+28>>2]=f[d+20>>2];f[o+32>>2]=f[d+24>>2];f[o+36>>2]=f[d+28>>2];f[o+40>>2]=f[d+32>>2];f[o+44>>2]=f[d+36>>2];f[o+48>>2]=f[d+40>>2];f[o+52>>2]=f[d+44>>2];f[o+56>>2]=f[d+48>>2];f[o+60>>2]=f[d+52>>2];f[o+64>>2]=f[d+56>>2];f[o+68>>2]=f[d+60>>2];H3(o,b,c,0);u=n;return}function Yca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=hda(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0<d>>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0<g>>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0<k>>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0<k>>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0<e>>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0<g>>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0<e>>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0<j>>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0<j>>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=jda(a,i,c)|0;e=i+8|0;if(jda(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}Yca(a,i,c);a=i+8|0}if((q|0)==105){q=0;Yca(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0<b>>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0<e>>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){gda(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){hda(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){ida(a,b,c);return}else if((q|0)==107)return}function Zca(a){a=a|0;var b=0,c=0;f[a>>2]=24728;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function _ca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ga=u;u=u+192|0;fa=ga+160|0;ea=ga+152|0;_=ga+144|0;R=ga+80|0;X=ga;Y=ga+72|0;ba=_2()|0;ca=f[ba+220>>2]|0;Z=kxa(ca)|0;$ca(fa,f[52693]|0);da=f[ba+232>>2]|0;d=f[c>>2]|0;$=c+4|0;W=f[$>>2]|0;l=d+(W<<3)|0;if(!W){e=1;g=1;aa=4}else{m=ea+4|0;n=a+8|0;o=X+4|0;p=X+8|0;q=X+12|0;r=R+4|0;s=X+16|0;t=R+8|0;v=X+20|0;w=R+12|0;x=X+24|0;y=R+16|0;z=X+28|0;A=R+20|0;B=X+32|0;C=R+24|0;D=X+36|0;E=R+28|0;F=X+40|0;G=R+32|0;H=X+44|0;I=R+36|0;J=X+48|0;K=R+40|0;L=X+52|0;M=R+44|0;N=X+56|0;O=R+48|0;P=X+60|0;Q=R+52|0;S=X+64|0;T=R+56|0;U=X+68|0;V=R+60|0;W=Y+4|0;e=1;g=1;do{mwa(ea,ca,d);i=f[ea>>2]|0;if(i){if(e){e=i+200|0;e=((j[e>>1]|0|(h[e+2>>0]|0)<<16)&7864320|0)!=0}else e=0;if(g)g=(b[i+192>>0]&7)==0;else g=0;f[_>>2]=f[i+96>>2];k=ada(fa,_)|0;if(!(f[k>>2]|0)){ha=f[_>>2]|0;f[X>>2]=n;f[o>>2]=ha;bda(p,X)|0;f[R>>2]=f[p>>2];f[r>>2]=f[q>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];f[y>>2]=f[x>>2];f[A>>2]=f[z>>2];f[C>>2]=f[B>>2];f[E>>2]=f[D>>2];f[G>>2]=f[F>>2];f[I>>2]=f[H>>2];f[K>>2]=f[J>>2];f[M>>2]=f[L>>2];f[O>>2]=f[N>>2];f[Q>>2]=f[P>>2];f[T>>2]=f[S>>2];f[V>>2]=f[U>>2];roa(Y,R);ha=f[Y>>2]|0;ia=f[W>>2]|0;f[Y>>2]=0;f[W>>2]=0;f[k>>2]=ha;ha=k+4|0;i=f[ha>>2]|0;f[ha>>2]=ia;if(i|0)Ppb(i);i=f[W>>2]|0;if(i|0)Ppb(i);hxa(ca,k);zGa(da,1,(f[k>>2]|0)+112|0)}}i=f[m>>2]|0;if(i|0)Ppb(i);d=d+8|0}while((d|0)!=(l|0));d=f[c>>2]|0;ia=f[$>>2]|0;k=d+(ia<<3)|0;if(!ia)aa=4;else{l=ea+4|0;do{mwa(ea,ca,d);i=f[ea>>2]|0;if(i|0){f[_>>2]=f[i+96>>2];Yoa(i,2,ada(fa,_)|0);vja(Z,i)}i=f[l>>2]|0;if(i|0)Ppb(i);d=d+8|0}while((d|0)!=(k|0));n=e;m=fa;e=f[$>>2]|0;d=f[c>>2]|0}}if((aa|0)==4){n=e;m=fa;e=0}yGa(da,e,d);mFa(da,c);l=fa+12|0;if(f[l>>2]|0){k=fa+8|0;d=f[k>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;i=f[e+16>>2]|0;if(i|0)Ppb(i);Zpb(e)}while((d|0)!=0);f[k>>2]=0;e=f[fa+4>>2]|0;if(e|0){d=0;do{f[(f[fa>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[l>>2]=0}do if(!g){d=f[ba+228>>2]|0;if(n){YNa(d);break}else{uYa(oxa(ca)|0,da);ZNa(d);break}}while(0);d=f[a+4>>2]|0;nh[f[(f[d>>2]|0)+8>>2]&1023](d,ea);d=f[fa+20>>2]|0;if(d|0)cda(d,m);d=f[fa+8>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;g=f[e+16>>2]|0;if(g|0)Ppb(g);Zpb(e)}while((d|0)!=0);d=f[fa>>2]|0;f[fa>>2]=0;if(!d){u=ga;return}Zpb(d);u=ga;return}function $ca(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p;if(!(b[209536]|0))if(rrb(209536)|0){f[52694]=0;f[52695]=0;f[52696]=0}d=f[52695]|0;if((f[52694]|0)==(d|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=c;u=p;return}k=d+-20|0;h=f[k>>2]|0;f[k>>2]=0;k=d+-16|0;g=f[k>>2]|0;f[k>>2]=0;f[o>>2]=h;k=o+4|0;f[k>>2]=g;m=o+8|0;i=d+-12|0;e=f[i>>2]|0;f[m>>2]=e;j=d+-8|0;n=o+12|0;q=f[j>>2]|0;f[n>>2]=q;l=o+16|0;f[l>>2]=f[d+-4>>2];if(q|0){d=f[e+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;f[h+(d<<2)>>2]=m;f[i>>2]=0;f[j>>2]=0}d=f[52695]|0;h=d+-20|0;do{i=d+-20|0;f[52695]=i;d=f[d+-12>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;g=f[e+16>>2]|0;if(g|0)Ppb(g);Zpb(e)}while((d|0)!=0);d=f[i>>2]|0;f[i>>2]=0;if(d|0)Zpb(d);d=f[52695]|0}while((d|0)!=(h|0));g=f[o>>2]|0;f[o>>2]=0;h=f[k>>2]|0;f[k>>2]=0;f[a>>2]=g;f[a+4>>2]=h;i=a+8|0;e=f[m>>2]|0;f[i>>2]=e;q=f[n>>2]|0;f[a+12>>2]=q;f[a+16>>2]=f[l>>2];d=e;if(!q){f[a+20>>2]=c;if(e|0)do{e=d;d=f[d>>2]|0;g=f[e+16>>2]|0;if(g|0)Ppb(g);Zpb(e)}while((d|0)!=0)}else{d=f[d+4>>2]|0;e=h+-1|0;if(!(e&h))d=d&e;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;f[g+(d<<2)>>2]=i;f[m>>2]=0;f[n>>2]=0;f[a+20>>2]=c}d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);u=p;return}function ada(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;j=f[b>>2]|0;o=X(j,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;o=o>>>15^o;k=a+4|0;l=f[k>>2]|0;m=(l|0)==0;h=j;a:do if(m)b=0;else{g=l+-1|0;c=(g&l|0)==0;if(c)i=o&g;else if(o>>>0<l>>>0)i=o;else i=(o>>>0)%(l>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b)b=i;else{if(c){do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if(!((c|0)==(o|0)|(c&g|0)==(i|0))){b=i;break a}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=i;break a}c=f[b+4>>2]|0;if((c|0)!=(o|0)){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(i|0)){b=i;break a}}}while((f[b+8>>2]|0)!=(h|0));a=b+12|0;return a|0}}while(0);i=Wpb(20)|0;f[i+8>>2]=j;f[i+12>>2]=0;f[i+16>>2]=0;f[i+4>>2]=o;f[i>>2]=0;h=a+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(m|e*+(l>>>0)<d){b=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;c=~~+W(+(d/e))>>>0;eda(a,b>>>0<c>>>0?c:b);b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&o;break}if(o>>>0<b>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=l;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[i>>2]=f[b>>2];f[b>>2]=i;f[c>>2]=b;b=f[i>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;p=30}}else{f[i>>2]=f[b>>2];p=30}if((p|0)==30)f[b>>2]=i;f[h>>2]=(f[h>>2]|0)+1;a=i;a=a+12|0;return a|0}function bda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[b>>2]|0;d=b+4|0;c=f[d>>2]|0;n[a>>2]=+n[e>>2]*+n[c>>2]+ +n[e+16>>2]*+n[c+4>>2]+ +n[e+32>>2]*+n[c+8>>2]+ +n[e+48>>2]*+n[c+12>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+4>>2]=+n[c+4>>2]*+n[e>>2]+ +n[c+20>>2]*+n[e+4>>2]+ +n[c+36>>2]*+n[e+8>>2]+ +n[c+52>>2]*+n[e+12>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+8>>2]=+n[e+8>>2]*+n[c>>2]+ +n[e+24>>2]*+n[c+4>>2]+ +n[e+40>>2]*+n[c+8>>2]+ +n[e+56>>2]*+n[c+12>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+12>>2]=+n[c+12>>2]*+n[e>>2]+ +n[c+28>>2]*+n[e+4>>2]+ +n[c+44>>2]*+n[e+8>>2]+ +n[c+60>>2]*+n[e+12>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+16>>2]=+n[e>>2]*+n[c+16>>2]+ +n[e+16>>2]*+n[c+20>>2]+ +n[e+32>>2]*+n[c+24>>2]+ +n[e+48>>2]*+n[c+28>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+20>>2]=+n[c+4>>2]*+n[e+16>>2]+ +n[c+20>>2]*+n[e+20>>2]+ +n[c+36>>2]*+n[e+24>>2]+ +n[c+52>>2]*+n[e+28>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+24>>2]=+n[e+8>>2]*+n[c+16>>2]+ +n[e+24>>2]*+n[c+20>>2]+ +n[e+40>>2]*+n[c+24>>2]+ +n[e+56>>2]*+n[c+28>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+28>>2]=+n[c+12>>2]*+n[e+16>>2]+ +n[c+28>>2]*+n[e+20>>2]+ +n[c+44>>2]*+n[e+24>>2]+ +n[c+60>>2]*+n[e+28>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+32>>2]=+n[e>>2]*+n[c+32>>2]+ +n[e+16>>2]*+n[c+36>>2]+ +n[e+32>>2]*+n[c+40>>2]+ +n[e+48>>2]*+n[c+44>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+36>>2]=+n[c+4>>2]*+n[e+32>>2]+ +n[c+20>>2]*+n[e+36>>2]+ +n[c+36>>2]*+n[e+40>>2]+ +n[c+52>>2]*+n[e+44>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+40>>2]=+n[e+8>>2]*+n[c+32>>2]+ +n[e+24>>2]*+n[c+36>>2]+ +n[e+40>>2]*+n[c+40>>2]+ +n[e+56>>2]*+n[c+44>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+44>>2]=+n[c+12>>2]*+n[e+32>>2]+ +n[c+28>>2]*+n[e+36>>2]+ +n[c+44>>2]*+n[e+40>>2]+ +n[c+60>>2]*+n[e+44>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+48>>2]=+n[e>>2]*+n[c+48>>2]+ +n[e+16>>2]*+n[c+52>>2]+ +n[e+32>>2]*+n[c+56>>2]+ +n[e+48>>2]*+n[c+60>>2];c=f[b>>2]|0;e=f[d>>2]|0;n[a+52>>2]=+n[c+4>>2]*+n[e+48>>2]+ +n[c+20>>2]*+n[e+52>>2]+ +n[c+36>>2]*+n[e+56>>2]+ +n[c+52>>2]*+n[e+60>>2];e=f[b>>2]|0;c=f[d>>2]|0;n[a+56>>2]=+n[e+8>>2]*+n[c+48>>2]+ +n[e+24>>2]*+n[c+52>>2]+ +n[e+40>>2]*+n[c+56>>2]+ +n[e+56>>2]*+n[c+60>>2];c=f[b>>2]|0;b=f[d>>2]|0;n[a+60>>2]=+n[c+12>>2]*+n[b+48>>2]+ +n[c+28>>2]*+n[b+52>>2]+ +n[c+44>>2]*+n[b+56>>2]+ +n[c+60>>2]*+n[b+60>>2];return a|0}function cda(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=c+4|0;d=f[i>>2]|0;if(!d)return;j=c+12|0;if(f[j>>2]|0){g=c+8|0;a=f[g>>2]|0;if(!a){f[g>>2]=0;h=9}else{do{d=a;a=f[a>>2]|0;e=f[d+16>>2]|0;if(e|0)Ppb(e);Zpb(d)}while((a|0)!=0);a=f[i>>2]|0;f[g>>2]=0;if(a|0){d=a;h=9}}if((h|0)==9){a=0;do{f[(f[c>>2]|0)+(a<<2)>>2]=0;a=a+1|0}while((a|0)!=(d|0))}f[j>>2]=0}if(!(b[209536]|0))if(rrb(209536)|0){f[52694]=0;f[52695]=0;f[52696]=0}a=f[52695]|0;if(a>>>0>=(f[52696]|0)>>>0){dda(210776,c);return}e=f[c>>2]|0;f[c>>2]=0;g=f[i>>2]|0;f[i>>2]=0;f[a>>2]=e;f[a+4>>2]=g;h=a+8|0;i=c+8|0;d=f[i>>2]|0;f[h>>2]=d;k=f[j>>2]|0;f[a+12>>2]=k;f[a+16>>2]=f[c+16>>2];if(k|0){a=f[d+4>>2]|0;d=g+-1|0;if(!(d&g))a=a&d;else if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;f[e+(a<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}f[52695]=(f[52695]|0)+20;return}function dda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;c=f[a>>2]|0;h=((f[q>>2]|0)-c|0)/20|0;d=h+1|0;if(d>>>0>214748364)fob(a);r=a+8|0;p=((f[r>>2]|0)-c|0)/20|0;c=p<<1;c=p>>>0<107374182?(c>>>0<d>>>0?d:c):214748364;do if(!c)e=0;else if(c>>>0>214748364)ud();else{e=Wpb(c*20|0)|0;break}while(0);n=e+(h*20|0)|0;l=n;p=e+(c*20|0)|0;m=f[b>>2]|0;f[b>>2]=0;i=b+4|0;g=f[i>>2]|0;f[i>>2]=0;f[n>>2]=m;f[e+(h*20|0)+4>>2]=g;i=e+(h*20|0)+8|0;j=b+8|0;c=f[j>>2]|0;f[i>>2]=c;k=b+12|0;o=f[k>>2]|0;f[e+(h*20|0)+12>>2]=o;f[e+(h*20|0)+16>>2]=f[b+16>>2];b=m;if(o|0){c=f[c+4>>2]|0;d=g+-1|0;if(!(d&g))c=c&d;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;f[b+(c<<2)>>2]=i;f[j>>2]=0;f[k>>2]=0}o=n+20|0;m=f[a>>2]|0;c=f[q>>2]|0;if((c|0)==(m|0)){c=l;h=m;e=m}else{k=l;d=n;do{l=c;c=c+-20|0;g=f[c>>2]|0;f[c>>2]=0;h=l+-16|0;e=f[h>>2]|0;f[h>>2]=0;f[d+-20>>2]=g;f[d+-16>>2]=e;h=d+-12|0;i=l+-12|0;b=f[i>>2]|0;f[h>>2]=b;j=l+-8|0;n=f[j>>2]|0;f[d+-8>>2]=n;f[d+-4>>2]=f[l+-4>>2];if(n|0){d=f[b+4>>2]|0;b=e+-1|0;if(!(b&e))d=d&b;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;f[g+(d<<2)>>2]=h;f[i>>2]=0;f[j>>2]=0}d=k+-20|0;k=d}while((c|0)!=(m|0));c=k;h=f[a>>2]|0;e=f[q>>2]|0}f[a>>2]=c;f[q>>2]=o;f[r>>2]=p;g=h;if((e|0)!=(g|0))do{c=f[e+-12>>2]|0;e=e+-20|0;if(c|0)do{d=c;c=f[c>>2]|0;b=f[d+16>>2]|0;if(b|0)Ppb(b);Zpb(d)}while((c|0)!=0);c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c)}while((e|0)!=(g|0));if(!h)return;Zpb(h);return}function eda(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){fda(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;fda(a,b);return}function fda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function gda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0<e>>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0<h>>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function hda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=gda(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function ida(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0<h>>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0<c>>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0<c>>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0<e>>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0<h>>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function jda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0<c>>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0<e>>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{gda(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{hda(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0<i>>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0<c>>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0<c>>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0<g>>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0<i>>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function kda(a,c,d,e,g,h,i,j,k,l,m){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0;o=u;u=u+32|0;p=o+20|0;n=o;c=Wpb(116)|0;l=Dja(i,j,k,l,m)|0;k=f[a>>2]|0;f[a>>2]=0;f[c+4>>2]=k;f[c>>2]=27320;f[c+8>>2]=f[d>>2];f[c+12>>2]=f[d+4>>2];k=d+8|0;f[c+16>>2]=f[k>>2];j=d+12|0;f[c+20>>2]=f[j>>2];i=d+16|0;f[c+24>>2]=f[i>>2];f[i>>2]=0;f[j>>2]=0;f[k>>2]=0;f[d>>2]=0;f[c+28>>2]=f[h>>2];f[c+32>>2]=f[h+4>>2];f[c+36>>2]=f[h+8>>2];f[c+40>>2]=f[h+12>>2];f[c+44>>2]=f[h+16>>2];f[c+48>>2]=f[h+20>>2];f[c+52>>2]=f[h+24>>2];f[c+56>>2]=f[h+28>>2];f[c+60>>2]=f[h+32>>2];f[c+64>>2]=f[h+36>>2];f[c+68>>2]=f[h+40>>2];f[c+72>>2]=f[h+44>>2];f[c+76>>2]=f[h+48>>2];f[c+80>>2]=f[h+52>>2];f[c+84>>2]=f[h+56>>2];f[c+88>>2]=f[h+60>>2];Cja(c+92|0,l);b[c+112>>0]=e;l=Wpb(8)|0;f[l>>2]=27352;f[l+4>>2]=c;k=Wpb(8)|0;j=g;d=f[j+4>>2]|0;c=k;f[c>>2]=f[j>>2];f[c+4>>2]=d;c=k+8|0;f[n>>2]=k;f[n+4>>2]=1;d=n+12|0;f[n+8>>2]=k;f[d>>2]=c;f[n+16>>2]=c;c=(_2()|0)+232|0;c=f[c>>2]|0;f[p>>2]=l;kGa(c,p,n,1);c=f[p>>2]|0;f[p>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);m=n+8|0;c=f[m>>2]|0;if((c|0)==(f[d>>2]|0)){a=f[n>>2]|0;if(a){_pb(a);c=f[m>>2]|0}}if(!c){u=o;return}a=f[d>>2]|0;if((a|0)!=(c|0))f[d>>2]=a+(~((a+-8-c|0)>>>3)<<3);Zpb(c);u=o;return}function lda(a){a=a|0;var b=0;f[a>>2]=27352;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function mda(a){a=a|0;var b=0,c=0;f[a>>2]=27352;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function nda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+8>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function oda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function pda(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function qda(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=27320;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}f[a>>2]=27428;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b)return;fh[f[(f[b>>2]|0)+4>>2]&2047](b);return}function rda(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=27320;b=a+16|0;c=f[b>>2]|0;e=a+20|0;if((c|0)==(f[e>>2]|0)){d=f[a+8>>2]|0;if(d){_pb(d);c=f[b>>2]|0}}if(c|0){b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c)}f[a>>2]=27428;e=a+4|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function sda(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=u;u=u+80|0;B=E+64|0;A=E;D=E+56|0;x=E+32|0;C=E+24|0;y=_2()|0;z=f[y+220>>2]|0;hwa(D,z,c);v8a(x);g=a+92|0;Eja(g,x);Fla(C,f[D>>2]|0,x);if(!(f[C>>2]|0)){b[B>>0]=1;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,B)}else{c=f[a+8>>2]|0;x=f[a+12>>2]|0;i=c+(x<<3)|0;if(!x)d=1;else{k=B+4|0;l=a+112|0;m=a+28|0;n=a+44|0;o=A+8|0;p=a+76|0;q=A+16|0;r=a+32|0;s=A+4|0;t=a+48|0;v=A+12|0;w=a+80|0;x=A+20|0;d=1;do{xwa(B,z,c);e=f[B>>2]|0;if(e){if(f[e+4>>2]|0){F=e+200|0;d=d&((j[F>>1]|0|(h[F+2>>0]|0)<<16)&7864320|0)!=0}mqa(e,b[l>>0]|0,C)|0;F=b[l>>0]|0;f[A>>2]=f[m>>2];f[o>>2]=f[n>>2];f[q>>2]=f[p>>2];f[s>>2]=f[r>>2];f[v>>2]=f[t>>2];f[x>>2]=f[w>>2];oqa(e,F,A)|0;Fja(g,e,b[l>>0]|0)|0}e=f[k>>2]|0;if(e|0)Ppb(e);c=c+8|0}while((c|0)!=(i|0))}do if((lxa(z)|0)>0){e=A+16|0;f[A>>2]=27384;f[A+4>>2]=y;b[A+8>>0]=d&1;f[e>>2]=A;b[B>>0]=1;c=z+8|0;d=f[c>>2]|0;if(d>>>0<(f[z+12>>2]|0)>>>0){f[d+16>>2]=d;F=f[e>>2]|0;nh[f[(f[F>>2]|0)+12>>2]&1023](F,d);F=f[c>>2]|0;b[d+24>>0]=1;f[c>>2]=F+32}else x$(z+4|0,A,B);c=f[e>>2]|0;if((A|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c)}else{c=f[y+228>>2]|0;if(d){YNa(c);break}else{ANa(c);break}}while(0);F=f[a+4>>2]|0;nh[f[(f[F>>2]|0)+8>>2]&1023](F,B)}c=f[C+4>>2]|0;if(c|0)Ppb(c);c=f[D+4>>2]|0;if(!c){u=E;return}Ppb(c);u=E;return}function tda(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d;b[e>>0]=0;h=c;g=f[h+4>>2]|0;c=e+4|0;f[c>>2]=f[h>>2];f[c+4>>2]=g;c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+12>>2]&1023](c,e);u=d;return}function uda(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function vda(a){a=a|0;Zpb(a);return}function wda(a){a=a|0;var b=0,c=0,d=0;b=Wpb(12)|0;f[b>>2]=27384;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function xda(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=27384;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function yda(a){a=a|0;return}function zda(a){a=a|0;Zpb(a);return}function Ada(a){a=a|0;var c=0;c=f[(f[a+4>>2]|0)+228>>2]|0;if(!(b[a+8>>0]|0)){ANa(c);return}else{YNa(c);return}}function Bda(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==137870?a+4|0:0)|0}function Cda(a){a=a|0;return 9840}function Dda(a){a=a|0;var b=0;f[a>>2]=27428;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Eda(a){a=a|0;wf()}function Fda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;m=_2()|0;n=f[m+220>>2]|0;a=f[b>>2]|0;k=f[b+4>>2]|0;i=a+(k<<3)|0;if(!k){u=o;return}k=l+4|0;b=1;e=0;g=a;do{wwa(l,n,g);d=f[l>>2]|0;if(d){if(!(f[d+4>>2]|0))a=b;else{a=d+200|0;a=b&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}e=e|(nqa(d,c)|0);e=e|(pqa(f[l>>2]|0,c)|0);e=e|(rqa(f[l>>2]|0,c)|0);b=a}a=f[k>>2]|0;if(a|0)Ppb(a);g=g+8|0}while((g|0)!=(i|0));if(!e){u=o;return}a=f[m+228>>2]|0;if(b){YNa(a);u=o;return}else{ANa(a);u=o;return}}function Gda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;l=o;m=(_2()|0)+220|0;m=f[m>>2]|0;f[a>>2]=0;n=a+4|0;f[n>>2]=0;k=a+8|0;f[k>>2]=0;j=c+4|0;ry(a,f[j>>2]|0);b=f[c>>2]|0;j=f[j>>2]|0;i=b+(j<<3)|0;if(!j){u=o;return}j=l+4|0;while(1){wwa(l,m,b);c=f[l>>2]|0;if(!c)h=0;else h=Qpa(c,d,e)|0;c=f[n>>2]|0;g=f[k>>2]|0;if((c|0)==(g<<5|0)){if((c+1|0)<0){b=7;break}g=g<<6;p=c+32&-32;ry(a,c>>>0<1073741823?(g>>>0<p>>>0?p:g):2147483647);c=f[n>>2]|0}f[n>>2]=c+1;g=(f[a>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(h)c=f[g>>2]|c;else c=f[g>>2]&~c;f[g>>2]=c;c=f[j>>2]|0;if(c|0)Ppb(c);b=b+8|0;if((b|0)==(i|0)){b=15;break}}if((b|0)==7)fob(a);else if((b|0)==15){u=o;return}}function Hda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;m=p;n=_2()|0;o=f[n+220>>2]|0;i=f[b>>2]|0;l=f[b+4>>2]|0;k=i+(l<<3)|0;if(!l){u=p;return}l=m+4|0;a=1;do{xwa(m,o,i);b=f[m>>2]|0;if(b){q=b+200|0;a=a&((j[q>>1]|0|(h[q+2>>0]|0)<<16)&7864320|0)!=0;Kpa(b,c,d,e,g)}b=f[l>>2]|0;if(b|0)Ppb(b);i=i+8|0}while((i|0)!=(k|0));if(a){u=p;return}a=f[n+228>>2]|0;if(g){VNa(a);u=p;return}else{WNa(a);u=p;return}}function Ida(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;n=_2()|0;o=f[n+220>>2]|0;a=f[b>>2]|0;l=f[b+4>>2]|0;i=a+(l<<3)|0;if(!l){u=p;return}k=m+4|0;l=1<<(c&255);d=0;b=1;g=a;do{wwa(m,o,g);a=f[m>>2]|0;if(a){e=a+200|0;e=j[e>>1]|0|(h[e+2>>0]|0)<<16;if(l&(e&7)){Rpa(a,c);d=1;b=b&(e&7864320|0)!=0}}a=f[k>>2]|0;if(a|0)Ppb(a);g=g+8|0}while((g|0)!=(i|0));if(b|d^1){u=p;return}WNa(f[n+228>>2]|0);u=p;return}function Jda(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;a=f[b>>2]|0;g=f[b+4>>2]|0;i=a+(g<<3)|0;if(!g){u=n;return}g=k+4|0;c=0;b=1;e=a;do{wwa(k,m,e);a=f[k>>2]|0;if(a){d=a+200|0;d=j[d>>1]|0|(h[d+2>>0]|0)<<16;if(d&7){Spa(a);c=1;b=b&(d&7864320|0)!=0}}a=f[g>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(i|0));if(b|c^1){u=n;return}WNa(f[l+228>>2]|0);u=n;return}function Kda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;o=_2()|0;n=f[o+220>>2]|0;d=f[b>>2]|0;l=f[b+4>>2]|0;k=d+(l<<3)|0;do if(l|0){l=m+4|0;g=0;i=1;do{mwa(m,n,d);e=f[m>>2]|0;if(e){e=f[e+4>>2]|0;if(Qg[f[(f[e>>2]|0)+20>>2]&127](e,c,0)|0){e=(f[m>>2]|0)+200|0;g=1;i=i&((j[e>>1]|0|(h[e+2>>0]|0)<<16)&7864320|0)!=0}}e=f[l>>2]|0;if(e|0)Ppb(e);d=d+8|0}while((d|0)!=(k|0));if(g){d=f[o+228>>2]|0;if(i){YNa(d);break}else{ANa(d);break}}}while(0);bFa(f[o+232>>2]|0,a,b,c);u=p;return}function Lda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;e=f[b>>2]|0;i=f[b+4>>2]|0;g=e+(i<<3)|0;if(!i){a=0;d=1}else{i=k+4|0;a=0;d=1;do{xwa(k,m,e);b=f[k>>2]|0;if(f[b+4>>2]|0){o=b+200|0;d=d&((j[o>>1]|0|(h[o+2>>0]|0)<<16)&7864320|0)!=0}a=a|(Hoa(b,c)|0);b=f[i>>2]|0;if(b|0)Ppb(b);e=e+8|0}while((e|0)!=(g|0))}b=(c|0)!=0;if(b|d^1){o=oxa(m)|0;uYa(o,f[l+232>>2]|0)}if(!a){u=n;return}a=f[l+228>>2]|0;if(b&d){YNa(a);u=n;return}else{ANa(a);u=n;return}}function Mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;n=_2()|0;o=f[n+220>>2]|0;e=f[b>>2]|0;l=f[b+4>>2]|0;k=e+(l<<3)|0;if(!l){u=p;return}l=m+4|0;a=0;b=1;do{xwa(m,o,e);g=f[m>>2]|0;i=f[l>>2]|0;if(i|0)Ppb(i);if(eqa(g,c,d)|0){i=g+200|0;a=1;b=b&((j[i>>1]|0|(h[i+2>>0]|0)<<16)&7864320|0)!=0}e=e+8|0}while((e|0)!=(k|0));if(!a){u=p;return}a=f[n+228>>2]|0;if(b){YNa(a);u=p;return}else{ANa(a);u=p;return}}function Nda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;a=f[b>>2]|0;i=f[b+4>>2]|0;g=a+(i<<3)|0;if(!i){u=n;return}i=k+4|0;b=0;d=1;e=a;do{wwa(k,m,e);a=f[k>>2]|0;if(a)if(fqa(a,c)|0){a=(f[k>>2]|0)+200|0;b=1;d=d&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}a=f[i>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(g|0));if(!b){u=n;return}a=f[l+228>>2]|0;if(d){YNa(a);u=n;return}else{ANa(a);u=n;return}}function Oda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+16|0;l=q+8|0;m=q;o=(_2()|0)+220|0;o=f[o>>2]|0;f[a>>2]=0;p=a+4|0;f[p>>2]=0;f[a+8>>2]=0;b=f[c+4>>2]|0;k=a+8|0;if(!b){u=q;return}if(b>>>0>1073741823)ud();i=Wpb(b<<2)|0;f[a>>2]=i;f[p>>2]=i;f[k>>2]=i+(b<<2);c=f[c>>2]|0;i=c+(b<<3)|0;j=l+4|0;d=d&255;g=1<<d;do{wwa(l,o,c);b=f[l>>2]|0;if(!b){n[m>>2]=-1.0;b=f[p>>2]|0;if(b>>>0<(f[k>>2]|0)>>>0){f[b>>2]=-1082130432;f[p>>2]=b+4}else Oy(a,m)}else{if(!(g&((h[b+203>>0]|0)>>>2&7)))e=-1.0;else e=+n[b+180+(d<<2)>>2];n[m>>2]=e;b=f[p>>2]|0;if(b>>>0<(f[k>>2]|0)>>>0){n[b>>2]=e;f[p>>2]=b+4}else Oy(a,m)}b=f[j>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(i|0));u=q;return}function Pda(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Wpb(12)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=27460;b[g+8>>0]=e;H3(g,c,d,0);return}function Qda(a){a=a|0;var b=0;f[a>>2]=27492;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Rda(a){a=a|0;var b=0,c=0;f[a>>2]=27492;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Sda(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+32|0;k=q+12|0;l=q+8|0;m=q;o=(_2()|0)+220|0;o=f[o>>2]|0;f[k>>2]=0;p=k+4|0;f[p>>2]=0;f[k+8>>2]=0;d=f[c+4>>2]|0;j=k+8|0;if(d|0){if(d>>>0>1073741823)ud();g=Wpb(d<<2)|0;f[k>>2]=g;f[p>>2]=g;f[j>>2]=g+(d<<2);c=f[c>>2]|0;g=c+(d<<3)|0;h=a+8|0;i=m+4|0;d=c;do{mwa(m,o,d);e=+gqa(f[m>>2]|0,b[h>>0]|0);n[l>>2]=e;c=f[p>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){n[c>>2]=e;f[p>>2]=c+4}else Oy(k,l);c=f[i>>2]|0;if(c|0)Ppb(c);d=d+8|0}while((d|0)!=(g|0))}c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,k);c=f[k>>2]|0;if(!c){u=q;return}d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);u=q;return}function Tda(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function Uda(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Vda(a){a=a|0;wf()}function Wda(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Wpb(12)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=27524;b[g+8>>0]=e;H3(g,c,d,0);return}function Xda(a){a=a|0;var b=0,c=0;f[a>>2]=26008;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Yda(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;k=p+8|0;l=p;m=(_2()|0)+220|0;m=f[m>>2]|0;f[k>>2]=0;n=k+4|0;f[n>>2]=0;o=k+8|0;f[o>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(j|0){i=l+4|0;j=a+8|0;while(1){mwa(l,m,d);c=f[l>>2]|0;e=f[i>>2]|0;if(e|0)Ppb(e);g=!(+gqa(c,b[j>>0]|0)<1.0);c=f[n>>2]|0;e=f[o>>2]|0;if((c|0)==(e<<5|0)){if((c+1|0)<0)break;e=e<<6;q=c+32&-32;ry(k,c>>>0<1073741823?(e>>>0<q>>>0?q:e):2147483647);c=f[n>>2]|0}f[n>>2]=c+1;e=(f[k>>2]|0)+(c>>>5<<2)|0;c=1<<(c&31);if(g)c=f[e>>2]&~c;else c=f[e>>2]|c;f[e>>2]=c;d=d+8|0;if((d|0)==(h|0))break a}fob(k)}while(0);c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,k);c=f[k>>2]|0;if(!c){u=p;return}Zpb(c);u=p;return}function Zda(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=u;u=u+32|0;i=h+20|0;g=h;j=Wpb(12)|0;k=f[a>>2]|0;f[a>>2]=0;f[j+4>>2]=k;f[j>>2]=27556;b[j+8>>0]=c;b[j+9>>0]=d;d=Wpb(8)|0;f[d>>2]=27588;f[d+4>>2]=j;c=Wpb(8)|0;j=e;e=f[j+4>>2]|0;a=c;f[a>>2]=f[j>>2];f[a+4>>2]=e;a=c+8|0;f[g>>2]=c;f[g+4>>2]=1;e=g+12|0;f[g+8>>2]=c;f[e>>2]=a;f[g+16>>2]=a;a=(_2()|0)+232|0;a=f[a>>2]|0;f[i>>2]=d;fGa(a,i,g);a=f[i>>2]|0;f[i>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);d=g+8|0;a=f[d>>2]|0;if((a|0)==(f[e>>2]|0)){c=f[g>>2]|0;if(c){_pb(c);a=f[d>>2]|0}}if(!a){u=h;return}c=f[e>>2]|0;if((c|0)!=(a|0))f[e>>2]=c+(~((c+-8-a|0)>>>3)<<3);Zpb(a);u=h;return}function _da(a){a=a|0;var b=0;f[a>>2]=27588;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function $da(a){a=a|0;var b=0,c=0;f[a>>2]=27588;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function aea(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+8>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function bea(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;d=c;a=f[a+4>>2]|0;e=f[(f[a>>2]|0)+12>>2]|0;h=f[b>>2]|0;g=f[h+4>>2]|0;b=d;f[b>>2]=f[h>>2];f[b+4>>2]=g;nh[e&1023](a,d);u=c;return}function cea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function dea(a){a=a|0;var b=0;f[a>>2]=27620;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function eea(a){a=a|0;var b=0,c=0;f[a>>2]=27620;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function fea(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;k=_2()|0;g=f[k+220>>2]|0;k=f[k+228>>2]|0;h=b[a+8>>0]|0;d=b[a+9>>0]|0;e=f[k+236+((h&255)*24|0)+((d&255)<<3)>>2]|0;if(!e)i=4;else if((f[e+176>>2]|0)==(f[c>>2]|0)){if((f[e+180>>2]|0)!=(f[c+4>>2]|0))i=4}else i=4;if((i|0)==4){kwa(j,g,c);JOa(k,h,d,j);c=f[j+4>>2]|0;if(c|0)Ppb(c);if((b[k+226>>0]|0)==3)ANa(k)}k=f[a+4>>2]|0;nh[f[(f[k>>2]|0)+8>>2]&1023](k,j);u=l;return}function gea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function hea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function iea(a){a=a|0;wf()}function jea(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;e=(_2()|0)+228|0;e=f[e>>2]|0;if(!(f[e+236+((a&255)*24|0)+((c&255)<<3)>>2]|0)){u=g;return}f[d>>2]=0;h=d+4|0;f[h>>2]=0;JOa(e,a,c,d);a=f[h>>2]|0;if(a|0)Ppb(a);if((b[e+226>>0]|0)!=3){u=g;return}ANa(e);u=g;return}function kea(a,c){a=a|0;c=+c;var d=0;d=(_2()|0)+228|0;d=f[d>>2]|0;if(!(+n[d+284+((a&255)<<2)>>2]!=c))return;KOa(d,a,c);if((b[d+226>>0]|0)!=3)return;ANa(d);return}function lea(a){a=a|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if((b[c+296>>0]|0)==a<<24>>24)return;LOa(c,a);if((b[c+226>>0]|0)!=3)return;XNa(c);return}function mea(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;l=o;n=_2()|0;m=f[n+220>>2]|0;e=f[c>>2]|0;k=f[c+4>>2]|0;i=e+(k<<3)|0;if(!k){c=0;a=1}else{k=l+4|0;c=0;a=1;g=e;do{xwa(l,m,g);e=f[l>>2]|0;if(e){p=e+200|0;a=a&((j[p>>1]|h[p+2>>0]<<16)&7864320|0)!=0;if((f[e+196>>2]&2097152|0)!=0^d){hpa(e,d);c=1}}e=f[k>>2]|0;if(e|0)Ppb(e);g=g+8|0}while((g|0)!=(i|0))}g=f[n+228>>2]|0;if(a|((b[g+226>>0]|0)!=3|c^1)){u=o;return}if(!d){ANa(g);u=o;return}c=f[g+236>>2]|0;if(c|0){e=c+187|0;a=b[e>>0]|0;if(a&2){foa(c);a=b[e>>0]|0}if(!(a&4)){c=f[g+244>>2]|0;if(c|0){e=c+187|0;a=b[e>>0]|0;if(a&2){foa(c);a=b[e>>0]|0}if(!(a&4)){c=f[g+252>>2]|0;if(c|0){e=c+187|0;a=b[e>>0]|0;if(a&2){foa(c);a=b[e>>0]|0}if(!(a&4)){VNa(g);DNa(g,1);u=o;return}}}}}}ANa(g);u=o;return}function nea(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;i=m;a=b+4|0;if(!(f[a>>2]|0)){u=m;return}k=_2()|0;l=f[k+220>>2]|0;kxa(l)|0;b=f[b>>2]|0;g=f[a>>2]|0;e=b+(g<<3)|0;if(!g)a=f[k+228>>2]|0;else{g=i+4|0;d=1;do{xwa(i,l,b);a=f[i>>2]|0;if(a){n=a+200|0;d=d&((j[n>>1]|0|(h[n+2>>0]|0)<<16)&7864320|0)!=0;ipa(a,c)}a=f[g>>2]|0;if(a|0)Ppb(a);b=b+8|0}while((b|0)!=(e|0));a=f[k+228>>2]|0;if(!d){XNa(a);u=m;return}}YNa(a);u=m;return}function oea(a,c){a=+a;c=c|0;var d=0,e=0,g=0.0;e=(_2()|0)+228|0;e=f[e>>2]|0;g=+p[e+304>>3];d=b[e+312>>0]|0;if(g==a?d<<24>>24==c<<24>>24:0)return;if(g<a?1:d<<24>>24!=c<<24>>24){d=f[e+72>>2]|0;fh[f[(f[d>>2]|0)+68>>2]&2047](d)}jOa(e,a,c);ZNa(e);return}function pea(a){a=a|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if((b[c+313>>0]|0)==a<<24>>24)return;kOa(c,a);ANa(c);return}function qea(){var a=0;a=(_2()|0)+228|0;return +(+p[(f[a>>2]|0)+304>>3])}function rea(){var a=0;a=(_2()|0)+228|0;return b[(f[a>>2]|0)+312>>0]|0}function sea(){var a=0;a=(_2()|0)+228|0;return b[(f[a>>2]|0)+313>>0]|0}function tea(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!((qPa(b)|0)^a))return;pPa(b,a);YNa(b);return}function uea(){var a=0;a=(_2()|0)+228|0;return qPa(f[a>>2]|0)|0}function vea(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;rPa(b,a);if(!(qPa(b)|0))return;YNa(b);return}function wea(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;tPa(b,a);if(!(qPa(b)|0))return;YNa(b);return}function xea(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;vPa(b,a);if(!(qPa(b)|0))return;YNa(b);return}function yea(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;xPa(b,a);if(!(qPa(b)|0))return;YNa(b);return}function zea(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;zPa(b,a);if(!(qPa(b)|0))return;YNa(b);return}function Aea(){var a=0;a=(_2()|0)+228|0;return sPa(f[a>>2]|0)|0}function Bea(){var a=0;a=(_2()|0)+228|0;return +(+uPa(f[a>>2]|0))}function Cea(){var a=0;a=(_2()|0)+228|0;return +(+wPa(f[a>>2]|0))}function Dea(){var a=0;a=(_2()|0)+228|0;return +(+yPa(f[a>>2]|0))}function Eea(){var a=0;a=(_2()|0)+228|0;return +(+APa(f[a>>2]|0))}function Fea(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=(f[b>>2]|0)+230|0;a=(j[b>>1]|j[b+2>>1]<<16)&-32769|(a&1)<<15;d[b>>1]=a;d[b+2>>1]=a>>>16;return}function Gea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;l=o;m=_2()|0;n=f[m+220>>2]|0;a=f[b>>2]|0;k=f[b+4>>2]|0;i=a+(k<<3)|0;if(!k)a=f[m+228>>2]|0;else{k=l+4|0;b=1;g=a;do{xwa(l,n,g);a=f[l>>2]|0;if(a){p=a+200|0;b=b&((j[p>>1]|0|(h[p+2>>0]|0)<<16)&7864320|0)!=0;jqa(a,c,d,e)}a=f[k>>2]|0;if(a|0)Ppb(a);g=g+8|0}while((g|0)!=(i|0));a=f[m+228>>2]|0;if(!b){p=oxa(n)|0;uYa(p,f[m+232>>2]|0);ANa(a);u=o;return}}YNa(a);u=o;return}function Hea(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;i=_2()|0;k=f[i+220>>2]|0;a=f[b>>2]|0;d=f[b+4>>2]|0;e=a+(d<<3)|0;if(!d)a=f[i+228>>2]|0;else{d=g+4|0;b=1;c=a;do{wwa(g,k,c);a=f[g>>2]|0;if(a){m=a+200|0;b=b&((j[m>>1]|0|(h[m+2>>0]|0)<<16)&7864320|0)!=0;kqa(a)}a=f[d>>2]|0;if(a|0)Ppb(a);c=c+8|0}while((c|0)!=(e|0));a=f[i+228>>2]|0;if(!b){m=oxa(k)|0;uYa(m,f[i+232>>2]|0);ANa(a);u=l;return}}YNa(a);u=l;return}function Iea(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Wpb(8)|0;e=f[a>>2]|0;f[a>>2]=0;f[d+4>>2]=e;f[d>>2]=27652;H3(d,b,c,0);return}function Jea(a){a=a|0;var b=0;f[a>>2]=27684;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Kea(a){a=a|0;var b=0,c=0;f[a>>2]=27684;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Lea(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0;y=u;u=u+48|0;r=y+32|0;s=y+24|0;t=y;v=(_2()|0)+220|0;v=f[v>>2]|0;f[r>>2]=0;x=r+4|0;f[x>>2]=0;f[r+8>>2]=0;d=f[c+4>>2]|0;q=r+8|0;if(d|0){if(d>>>0>214748364)ud();e=Wpb(d*20|0)|0;g=e;f[r>>2]=g;f[x>>2]=g;f[q>>2]=e+(d*20|0);c=f[c>>2]|0;e=c+(d<<3)|0;g=t+4|0;h=t+8|0;i=t+12|0;j=t+16|0;k=s+4|0;l=t+4|0;m=t+8|0;o=t+12|0;p=t+16|0;d=c;do{mwa(s,v,d);c=f[s>>2]|0;if(!c)w=16;else if(!(f[c+196>>2]&33554432))w=16;else{A=f[c+104>>2]|0;f[t>>2]=f[A+228>>2];f[l>>2]=f[A+232>>2];f[m>>2]=f[A+236>>2];z=+lqa(c);n[o>>2]=z;b[p>>0]=b[(f[(f[s>>2]|0)+104>>2]|0)+292>>0]&1;c=f[x>>2]|0;if(c>>>0<(f[q>>2]|0)>>>0){f[c>>2]=f[t>>2];f[c+4>>2]=f[t+4>>2];f[c+8>>2]=f[t+8>>2];f[c>>2]=f[t>>2];f[c+4>>2]=f[l>>2];f[c+8>>2]=f[m>>2];A=c+12|0;f[A>>2]=f[o>>2];b[A+4>>0]=b[o+4>>0]|0;f[x>>2]=(f[x>>2]|0)+20}else Oea(r,t)}if((w|0)==16){w=0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[t+12>>2]=0;b[j>>0]=1;c=f[x>>2]|0;if(c>>>0<(f[q>>2]|0)>>>0){f[c>>2]=f[t>>2];f[c+4>>2]=f[t+4>>2];f[c+8>>2]=f[t+8>>2];f[c>>2]=0;f[c+4>>2]=f[g>>2];f[c+8>>2]=f[h>>2];A=c+12|0;f[A>>2]=f[i>>2];b[A+4>>0]=b[i+4>>0]|0;f[x>>2]=(f[x>>2]|0)+20}else Oea(r,t)}c=f[k>>2]|0;if(c|0)Ppb(c);d=d+8|0}while((d|0)!=(e|0))}c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,r);c=f[r>>2]|0;if(!c){u=y;return}d=f[x>>2]|0;if((d|0)!=(c|0))f[x>>2]=d+(~(((d+-20-c|0)>>>0)/20|0)*20|0);Zpb(c);u=y;return}function Mea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function Nea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Oea(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;d=f[o>>2]|0;e=f[a>>2]|0;j=(d-e|0)/20|0;h=j+1|0;m=e;g=d;if(h>>>0>214748364)fob(a);n=a+8|0;k=((f[n>>2]|0)-e|0)/20|0;l=k<<1;h=k>>>0<107374182?(l>>>0<h>>>0?h:l):214748364;do if(!h)i=0;else if(h>>>0>214748364)ud();else{i=Wpb(h*20|0)|0;break}while(0);k=i+(j*20|0)|0;e=k;l=i+(h*20|0)|0;f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];f[k>>2]=f[c>>2];f[i+(j*20|0)+4>>2]=f[c+4>>2];f[i+(j*20|0)+8>>2]=f[c+8>>2];h=i+(j*20|0)+12|0;j=c+12|0;f[h>>2]=f[j>>2];b[h+4>>0]=b[j+4>>0]|0;h=k+20|0;if((g|0)!=(m|0)){d=k;do{j=g;g=g+-20|0;f[d+-20>>2]=f[g>>2];f[d+-16>>2]=f[j+-16>>2];f[d+-12>>2]=f[j+-12>>2];k=d+-8|0;j=j+-8|0;f[k>>2]=f[j>>2];b[k+4>>0]=b[j+4>>0]|0;d=e+-20|0;e=d}while((g|0)!=(m|0));d=f[a>>2]|0}f[a>>2]=e;f[o>>2]=h;f[n>>2]=l;if(!d)return;Zpb(d);return}function Pea(a){a=a|0;wf()}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;n=_2()|0;o=f[n+220>>2]|0;e=f[b>>2]|0;l=f[b+4>>2]|0;k=e+(l<<3)|0;if(!l){u=p;return}l=m+4|0;a=0;b=1;do{xwa(m,o,e);g=f[m>>2]|0;i=f[l>>2]|0;if(i|0)Ppb(i);if(hqa(g,c,d)|0){i=g+200|0;a=1;b=b&((j[i>>1]|0|(h[i+2>>0]|0)<<16)&7864320|0)!=0}e=e+8|0}while((e|0)!=(k|0));if(!a){u=p;return}a=f[n+228>>2]|0;if(b){YNa(a);u=p;return}else{XNa(a);u=p;return}}function Rea(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;a=f[b>>2]|0;i=f[b+4>>2]|0;g=a+(i<<3)|0;if(!i){u=n;return}i=k+4|0;b=0;d=1;e=a;do{wwa(k,m,e);a=f[k>>2]|0;if(a)if(iqa(a,c)|0){a=(f[k>>2]|0)+200|0;b=1;d=d&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}a=f[i>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(g|0));if(!b){u=n;return}a=f[l+228>>2]|0;if(d){YNa(a);u=n;return}else{XNa(a);u=n;return}}function Sea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+48|0;m=s+24|0;o=s+16|0;p=s;q=(_2()|0)+220|0;q=f[q>>2]|0;f[m>>2]=0;r=m+4|0;f[r>>2]=0;f[m+8>>2]=0;b=f[c+4>>2]|0;l=m+8|0;if(b|0){if(b>>>0>357913941)ud();e=Wpb(b*12|0)|0;g=e;f[m>>2]=g;f[r>>2]=g;f[l>>2]=e+(b*12|0);c=f[c>>2]|0;e=c+(b<<3)|0;g=p+4|0;h=p+8|0;i=o+4|0;j=p+4|0;k=p+8|0;d=d&255;do{wwa(o,q,c);b=f[o>>2]|0;if(!b){n[p>>2]=-1.0;n[g>>2]=-1.0;n[h>>2]=-1.0;b=f[r>>2]|0;if(b>>>0<(f[l>>2]|0)>>>0){f[b>>2]=f[p>>2];f[b+4>>2]=f[p+4>>2];f[b+8>>2]=f[p+8>>2];f[r>>2]=(f[r>>2]|0)+12}else GC(m,p)}else{if(!(f[b+196>>2]&8388608)){n[p>>2]=-1.0;n[j>>2]=-1.0;n[k>>2]=-1.0}else{b=(f[b+104>>2]|0)+256+(d*12|0)|0;f[p>>2]=f[b>>2];f[p+4>>2]=f[b+4>>2];f[p+8>>2]=f[b+8>>2]}b=f[r>>2]|0;if(b>>>0<(f[l>>2]|0)>>>0){f[b>>2]=f[p>>2];f[b+4>>2]=f[p+4>>2];f[b+8>>2]=f[p+8>>2];f[r>>2]=(f[r>>2]|0)+12}else GC(m,p)}b=f[i>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(e|0))}b=f[a>>2]|0;nh[f[(f[b>>2]|0)+8>>2]&1023](b,m);b=f[m>>2]|0;if(!b){u=s;return}c=f[r>>2]|0;if((c|0)!=(b|0))f[r>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);u=s;return}function Tea(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Wpb(12)|0;h=f[a>>2]|0;f[a>>2]=0;f[g+4>>2]=h;f[g>>2]=27716;b[g+8>>0]=e;H3(g,c,d,0);return}function Uea(a){a=a|0;var b=0;f[a>>2]=27748;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function Vea(a){a=a|0;var b=0,c=0;f[a>>2]=27748;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function Wea(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+48|0;s=A+32|0;t=A+24|0;v=A+12|0;w=A;x=(_2()|0)+220|0;x=f[x>>2]|0;f[s>>2]=0;z=s+4|0;f[z>>2]=0;f[s+8>>2]=0;d=f[c+4>>2]|0;r=s+8|0;if(d|0){if(d>>>0>357913941)ud();i=Wpb(d*12|0)|0;j=i;f[s>>2]=j;f[z>>2]=j;f[r>>2]=i+(d*12|0);i=f[c>>2]|0;j=i+(d<<3)|0;k=a+8|0;l=v+4|0;m=v+8|0;o=w+4|0;p=w+8|0;q=t+4|0;do{mwa(t,x,i);d=f[t>>2]|0;do if(!(f[d+196>>2]&8388608)){n[v>>2]=-1.0;n[l>>2]=-1.0;n[m>>2]=-1.0;y=16}else{g=(f[d+104>>2]|0)+256+((h[k>>0]|0)*12|0)|0;f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];if(!(+n[v>>2]>=0.0))y=16;else{c=f[z>>2]|0;if((c|0)==(f[r>>2]|0)){Zea(s,v);break}else{f[c>>2]=f[v>>2];f[c+4>>2]=f[v+4>>2];f[c+8>>2]=f[v+8>>2];f[z>>2]=(f[z>>2]|0)+12;break}}}while(0);if((y|0)==16){y=0;e=b[k>>0]|0;g=d+12+((e&255)<<3)|0;c=f[g>>2]|0;if(!c){spa(d,e);c=f[g>>2]|0}f[w>>2]=f[c+128>>2];f[o>>2]=f[c+132>>2];f[p>>2]=f[c+136>>2];c=f[z>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[c>>2]=f[w>>2];f[c+4>>2]=f[w+4>>2];f[c+8>>2]=f[w+8>>2];f[z>>2]=(f[z>>2]|0)+12}else GC(s,w)}c=f[q>>2]|0;if(c|0)Ppb(c);i=i+8|0}while((i|0)!=(j|0))}c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,s);c=f[s>>2]|0;if(!c){u=A;return}d=f[z>>2]|0;if((d|0)!=(c|0))f[z>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);u=A;return}function Xea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+12>>2]&1023](a,b);return}function Yea(a,b){a=a|0;b=b|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+16>>2]&1023](a,b);return}function Zea(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function _ea(a){a=a|0;wf()}function $ea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;o=r;p=_2()|0;q=f[p+220>>2]|0;i=f[b>>2]|0;n=f[b+4>>2]|0;m=i+(n<<3)|0;if(!n){u=r;return}n=o+4|0;a=0;b=1;do{xwa(o,q,i);k=f[o>>2]|0;l=f[n>>2]|0;if(l|0)Ppb(l);if(Upa(k,c,d,e,g)|0){l=k+200|0;a=1;b=b&((j[l>>1]|0|(h[l+2>>0]|0)<<16)&7864320|0)!=0}i=i+8|0}while((i|0)!=(m|0));if(!a){u=r;return}a=f[p+228>>2]|0;if(b){YNa(a);u=r;return}else{XNa(a);u=r;return}}function afa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;n=_2()|0;o=f[n+220>>2]|0;a=f[b>>2]|0;l=f[b+4>>2]|0;k=a+(l<<3)|0;if(!l){u=p;return}l=m+4|0;b=0;g=1;i=a;do{wwa(m,o,i);a=f[m>>2]|0;if(a)if(Ypa(a,c,d,e)|0){a=(f[m>>2]|0)+200|0;b=1;g=g&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}a=f[l>>2]|0;if(a|0)Ppb(a);i=i+8|0}while((i|0)!=(k|0));if(!b){u=p;return}a=f[n+228>>2]|0;if(g){YNa(a);u=p;return}else{XNa(a);u=p;return}}function bfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;a=f[b>>2]|0;i=f[b+4>>2]|0;g=a+(i<<3)|0;if(!i){u=n;return}i=k+4|0;b=0;d=1;e=a;do{wwa(k,m,e);a=f[k>>2]|0;if(a)if(aqa(a,c)|0){a=(f[k>>2]|0)+200|0;b=1;d=d&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}a=f[i>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(g|0));if(!b){u=n;return}a=f[l+228>>2]|0;if(d){YNa(a);u=n;return}else{XNa(a);u=n;return}}function cfa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+32|0;m=q+16|0;o=q;p=(_2()|0)+220|0;p=f[p>>2]|0;f[a>>2]=0;k=a+4|0;f[k>>2]=0;f[a+8>>2]=0;b=f[c+4>>2]|0;l=a+8|0;if(!b){u=q;return}if(b>>>0>357913941)ud();g=Wpb(b*12|0)|0;h=g;f[a>>2]=h;f[k>>2]=h;f[l>>2]=g+(b*12|0);c=f[c>>2]|0;g=c+(b<<3)|0;h=o+4|0;i=o+8|0;j=m+4|0;do{wwa(m,p,c);b=f[m>>2]|0;if(!b){n[o>>2]=-1.0;n[h>>2]=-1.0;n[i>>2]=-1.0;b=f[k>>2]|0;if(b>>>0<(f[l>>2]|0)>>>0){f[b>>2]=f[o>>2];f[b+4>>2]=f[o+4>>2];f[b+8>>2]=f[o+8>>2];f[k>>2]=(f[k>>2]|0)+12}else GC(a,o)}else{_pa(o,b,d,e);b=f[k>>2]|0;if(b>>>0<(f[l>>2]|0)>>>0){f[b>>2]=f[o>>2];f[b+4>>2]=f[o+4>>2];f[b+8>>2]=f[o+8>>2];f[k>>2]=(f[k>>2]|0)+12}else GC(a,o)}b=f[j>>2]|0;if(b|0)Ppb(b);c=c+8|0}while((c|0)!=(g|0));u=q;return}function dfa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=Wpb(16)|0;i=f[a>>2]|0;f[a>>2]=0;f[h+4>>2]=i;f[h>>2]=27780;b[h+8>>0]=e;f[h+12>>2]=g;H3(h,c,d,0);return}function efa(a){a=a|0;var b=0,c=0;f[a>>2]=27748;c=a+4|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(a);return}function ffa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;k=p+20|0;l=p+8|0;m=p;n=(_2()|0)+220|0;n=f[n>>2]|0;f[k>>2]=0;o=k+4|0;f[o>>2]=0;f[k+8>>2]=0;d=f[c+4>>2]|0;j=k+8|0;if(d|0){if(d>>>0>357913941)ud();e=Wpb(d*12|0)|0;g=e;f[k>>2]=g;f[o>>2]=g;f[j>>2]=e+(d*12|0);c=f[c>>2]|0;e=c+(d<<3)|0;g=a+8|0;h=a+12|0;i=m+4|0;d=c;do{mwa(m,n,d);$pa(l,f[m>>2]|0,b[g>>0]|0,f[h>>2]|0);c=f[o>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];f[o>>2]=(f[o>>2]|0)+12}else GC(k,l);c=f[i>>2]|0;if(c|0)Ppb(c);d=d+8|0}while((d|0)!=(e|0))}c=f[a+4>>2]|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,k);c=f[k>>2]|0;if(!c){u=p;return}d=f[o>>2]|0;if((d|0)!=(c|0))f[o>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);u=p;return}function gfa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=+e;g=g|0;var i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=u;u=u+32|0;x=C+16|0;y=C;z=_2()|0;A=f[z+220>>2]|0;a=f[c>>2]|0;w=f[c+4>>2]|0;q=a+(w<<3)|0;if(!w){u=C;return}r=x+4|0;s=d+4|0;t=y+4|0;v=y+8|0;w=y+8|0;c=1;l=0;o=a;while(1){xwa(x,A,o);k=f[x>>2]|0;if(!k){n=l;p=c}else{if(!(f[k+4>>2]|0))m=c;else{m=k+200|0;m=c&((j[m>>1]|0|(h[m+2>>0]|0)<<16)&7864320|0)!=0}a=f[d>>2]|0;c=f[s>>2]|0;i=a+c|0;f[y>>2]=0;f[t>>2]=0;f[v>>2]=0;if(c|0){if((c|0)<0){B=9;break}p=Wpb(c)|0;f[t>>2]=p;f[y>>2]=p;f[w>>2]=p+c;c=p;do{b[c>>0]=b[a>>0]|0;a=a+1|0;c=(f[t>>2]|0)+1|0;f[t>>2]=c}while((a|0)!=(i|0))}a=l|(sqa(k,y,e,g)|0);c=f[y>>2]|0;if(c|0){if((f[t>>2]|0)!=(c|0))f[t>>2]=c;Zpb(c)}n=a;p=m}a=f[r>>2]|0;if(a|0)Ppb(a);o=o+8|0;if((o|0)==(q|0))break;else{c=p;l=n}}if((B|0)==9)fob(y);if(!n){u=C;return}a=f[z+228>>2]|0;if(p){YNa(a);u=C;return}else{XNa(a);u=C;return}}function hfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=_2()|0;m=f[l+220>>2]|0;a=f[b>>2]|0;g=f[b+4>>2]|0;i=a+(g<<3)|0;if(!g){u=n;return}g=k+4|0;b=1;d=0;e=a;do{wwa(k,m,e);c=f[k>>2]|0;if(c){if(!(f[c+4>>2]|0))a=b;else{a=c+200|0;a=b&((j[a>>1]|0|(h[a+2>>0]|0)<<16)&7864320|0)!=0}d=d|(tqa(c)|0);b=a}a=f[g>>2]|0;if(a|0)Ppb(a);e=e+8|0}while((e|0)!=(i|0));if(!d){u=n;return}a=f[l+228>>2]|0;if(b){YNa(a);u=n;return}else{XNa(a);u=n;return}}function ifa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j+24|0;i=j;c=f[a>>2]|0;f[a>>2]=0;a=c;h=Wpb(16)|0;f[h+4>>2]=0;f[h+8>>2]=0;f[h>>2]=27812;f[h+12>>2]=a;e=(_2()|0)+220|0;e=f[e>>2]|0;Npb(h);if((lxa(e)|0)<=0){nh[f[(f[c>>2]|0)+8>>2]&1023](c,g);Ppb(h);Ppb(h);u=j;return}d=i+16|0;f[i>>2]=27840;f[i+4>>2]=a;f[i+8>>2]=h;f[d>>2]=i;b[g>>0]=1;a=e+8|0;c=f[a>>2]|0;if(c>>>0<(f[e+12>>2]|0)>>>0){f[c+16>>2]=c;g=f[d>>2]|0;nh[f[(f[g>>2]|0)+12>>2]&1023](g,c);g=f[a>>2]|0;b[c+24>>0]=1;f[a>>2]=g+32}else x$(e+4|0,i,g);a=f[d>>2]|0;if((i|0)==(a|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)fh[f[(f[a>>2]|0)+20>>2]&2047](a);Ppb(h);u=j;return}function jfa(a){a=a|0;f[a>>2]=27840;a=f[a+8>>2]|0;if(!a)return;Ppb(a);return}function kfa(a){a=a|0;var b=0;f[a>>2]=27840;b=f[a+8>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function lfa(a){a=a|0;var b=0;b=Wpb(12)|0;f[b>>2]=27840;f[b+4>>2]=f[a+4>>2];a=f[a+8>>2]|0;f[b+8>>2]=a;if(!a)return b|0;Npb(a);return b|0}function mfa(a,b){a=a|0;b=b|0;f[b>>2]=27840;f[b+4>>2]=f[a+4>>2];a=f[a+8>>2]|0;f[b+8>>2]=a;if(!a)return;Npb(a);return}function nfa(a){a=a|0;a=f[a+8>>2]|0;if(!a)return;Ppb(a);return}function ofa(a){a=a|0;var b=0;b=f[a+8>>2]|0;if(!b){Zpb(a);return}Ppb(b);Zpb(a);return}function pfa(a){a=a|0;var b=0;b=u;u=u+16|0;a=f[a+4>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,b);u=b;return}function qfa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==142398?a+4|0:0)|0}function rfa(a){a=a|0;return 10200}function sfa(a){a=a|0;Hpb(a);Zpb(a);return}function tfa(a){a=a|0;a=f[a+12>>2]|0;if(!a)return;fh[f[(f[a>>2]|0)+4>>2]&2047](a);return}function ufa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==142715?a+12|0:0)|0}function vfa(a){a=a|0;Zpb(a);return}function wfa(a){a=a|0;var b=0,c=0;b=(_2()|0)+228|0;b=f[b>>2]|0;c=mOa(b)|0;if(+n[c>>2]==+n[a>>2])if(+n[c+4>>2]==+n[a+4>>2])if(!(+n[c+8>>2]!=+n[a+8>>2]))return;nOa(b,a);XNa(b);return}function xfa(){var a=0;a=(_2()|0)+228|0;a=f[a>>2]|0;if(!(oOa(a)|0))return;ANa(a);return}function yfa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0.0,q=0.0;l=u;u=u+32|0;h=l;i=(_2()|0)+228|0;i=f[i>>2]|0;f[h>>2]=1058256454;j=h+4|0;f[j>>2]=1058256454;k=h+8|0;f[k>>2]=1058256454;n[h+12>>2]=1.0;n[h+16>>2]=1.0;n[h+20>>2]=1.0;b[h+24>>0]=a;b[h+25>>0]=c;if(!(a<<24>>24)){q=+n[d>>2];p=+n[d+4>>2];o=+n[d+8>>2];m=+L(+(q*q+(p*p+o*o)));c=(n[s>>2]=q/m,f[s>>2]|0);g=(n[s>>2]=p/m,f[s>>2]|0);a=(n[s>>2]=o/m,f[s>>2]|0)}else{c=f[d>>2]|0;g=f[d+4>>2]|0;a=f[d+8>>2]|0}f[h>>2]=c;f[j>>2]=g;f[k>>2]=a;k=h+12|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];pOa(i,h);ANa(i);u=l;return}function zfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(BPa(b,a)|0))return;YNa(b);return}function Afa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(CPa(b,a)|0))return;YNa(b);return}function Bfa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(DPa(b,a)|0))return;YNa(b);return}function Cfa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(EPa(b,a)|0))return;YNa(b);return}function Dfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(FPa(b,a)|0))return;YNa(b);return}function Efa(a,b){a=a|0;b=+b;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if(!(GPa(c,a,b)|0))return;YNa(c);return}function Ffa(a,b){a=a|0;b=b|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if(!(HPa(c,a,b)|0))return;YNa(c);return}function Gfa(a,b,c){a=a|0;b=+b;c=c|0;var d=0;d=(_2()|0)+228|0;d=f[d>>2]|0;if(!(IPa(d,a,b,c)|0))return;YNa(d);return}function Hfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;h=i+20|0;g=i;d=a+4|0;if(!(f[d>>2]|0)){u=i;return}e=b+4|0;if(!(f[e>>2]|0)){u=i;return}c=(_2()|0)+228|0;c=f[c>>2]|0;a=f[a>>2]|0;Ifa(h,a,a+(f[d>>2]<<3)|0);d=f[b>>2]|0;Ifa(g,d,d+(f[e>>2]<<3)|0);if(JPa(c,h,g)|0)ANa(c);a=f[g+8>>2]|0;if(a|0)do{e=a;a=f[a>>2]|0;Zpb(e)}while((a|0)!=0);a=f[g>>2]|0;f[g>>2]=0;if(a|0)Zpb(a);a=f[h+8>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;Zpb(g)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Zpb(a);u=i;return}function Ifa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[s>>2]=1.0;if((b|0)==(c|0))return;t=a+4|0;u=a+12|0;v=a+8|0;d=0;e=0;do{o=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(o<<6)+(o>>>2)^o;p=(d|0)==0;a:do if(p){i=0;r=22}else{l=d+-1|0;k=(l&d|0)==0;if(k)i=q&l;else if(q>>>0<d>>>0)i=q;else i=(q>>>0)%(d>>>0)|0;j=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!j)r=22;else{j=f[j>>2]|0;if(!j)r=22;else{if(k)while(1){k=f[j+4>>2]|0;if(!((k|0)==(q|0)|(k&l|0)==(i|0))){r=22;break a}if((f[j+8>>2]|0)==(o|0))if((f[j+12>>2]|0)==(m|0))break a;j=f[j>>2]|0;if(!j){r=22;break a}}while(1){k=f[j+4>>2]|0;if((k|0)!=(q|0)){if(k>>>0>=d>>>0)k=(k>>>0)%(d>>>0)|0;if((k|0)!=(i|0)){r=22;break a}}if((f[j+8>>2]|0)==(o|0))if((f[j+12>>2]|0)==(m|0))break a;j=f[j>>2]|0;if(!j){r=22;break}}}}}while(0);if((r|0)==22){r=0;k=Wpb(16)|0;l=b;m=f[l+4>>2]|0;o=k+8|0;f[o>>2]=f[l>>2];f[o+4>>2]=m;f[k+4>>2]=q;f[k>>2]=0;g=+((e+1|0)>>>0);h=+n[s>>2];do if(p|h*+(d>>>0)<g){d=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;e=~~+W(+(g/h))>>>0;Jfa(a,d>>>0<e>>>0?e:d);d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&q;break}if(q>>>0<d>>>0){j=d;d=q}else{j=d;d=(q>>>0)%(d>>>0)|0}}else{j=d;d=i}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[k>>2]=f[v>>2];f[v>>2]=k;f[e>>2]=v;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(!(e&j))d=d&e;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=35}}else{f[k>>2]=f[d>>2];r=35}if((r|0)==35){r=0;f[d>>2]=k}e=(f[u>>2]|0)+1|0;f[u>>2]=e;d=j}b=b+8|0}while((b|0)!=(c|0));return}function Jfa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Kfa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Kfa(a,b);return}function Kfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function Lfa(){var a=0;a=(_2()|0)+228|0;a=f[a>>2]|0;if(!(MPa(a)|0))return;ANa(a);return}function Mfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(_2()|0)+228|0;d=f[d>>2]|0;NPa(d,a,b,c);if(!(CNa(d)|0))return;XNa(d);return}function Nfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(OPa(b,a)|0))return;YNa(b);return}function Ofa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(PPa(b,a)|0))return;YNa(b);return}function Pfa(a,b){a=a|0;b=b|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if(!(QPa(c,a,b)|0))return;YNa(c);return}function Qfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(SPa(b,a)|0))return;YNa(b);return}function Rfa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(TPa(b,a)|0))return;YNa(b);return}function Sfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(RPa(b,a)|0))return;YNa(b);return}function Tfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(UPa(b,a)|0))return;YNa(b);return}function Ufa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(VPa(b,a)|0))return;YNa(b);return}function Vfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;XPa(f[b>>2]|0,a)|0;return}function Wfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(WPa(b,a)|0))return;YNa(b);return}function Xfa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(YPa(b,a)|0))return;YNa(b);return}function Yfa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(ZPa(b,a)|0))return;YNa(b);return}function Zfa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(_Pa(b,a)|0))return;YNa(b);return}function _fa(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!($Pa(b,a)|0))return;YNa(b);return}function $fa(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(aQa(b,a)|0))return;if(a){XNa(b);return}else{YNa(b);return}}function aga(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(bQa(b,a)|0))return;YNa(b);return}function bga(a){a=+a;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(kQa(b,a)|0))return;YNa(b);return}function cga(a){a=a|0;var b=0;b=(_2()|0)+228|0;b=f[b>>2]|0;if(!(lQa(b,a)|0))return;YNa(b);return}function dga(a,b){a=+a;b=b|0;var c=0;c=(_2()|0)+228|0;c=f[c>>2]|0;if(!(mQa(c,a,b)|0))return;YNa(c);return}function ega(a,b,c){a=+a;b=+b;c=c|0;var d=0;d=(_2()|0)+228|0;d=f[d>>2]|0;if(!(nQa(d,a,b,c)|0))return;XNa(d);return}function fga(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=+i;j=+j;var k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,s=0,t=0,u=0.0,v=0.0;b[a>>0]=c;n=+p[d>>3];p[a+32>>3]=n;o=+p[d+8>>3];p[a+40>>3]=o;q=+p[d+16>>3];p[a+48>>3]=q;k=+p[e>>3];p[a+56>>3]=k;l=+p[e+8>>3];p[a+64>>3]=l;m=+p[e+16>>3];p[a+72>>3]=m;p[a+80>>3]=1.0;r=a+88|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=0;f[r+20>>2]=0;f[r+24>>2]=0;f[r+28>>2]=0;p[a+120>>3]=1.0;r=a+128|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=0;f[r+20>>2]=0;f[r+24>>2]=0;f[r+28>>2]=0;p[a+160>>3]=1.0;r=a+168|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=0;f[r+20>>2]=0;f[r+24>>2]=0;f[r+28>>2]=0;p[a+200>>3]=1.0;r=a+224|0;p[r>>3]=.01;p[a+248>>3]=1.0;s=a+256|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+288>>3]=1.0;s=a+296|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+328>>3]=1.0;s=a+336|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+368>>3]=1.0;p[a+376>>3]=1.0;s=a+384|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+416>>3]=1.0;s=a+424|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+456>>3]=1.0;s=a+464|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+496>>3]=1.0;f[a+668>>2]=1;f[a+672>>2]=1;s=a+680|0;t=b[s>>0]&-32;b[s>>0]=t;k=n-k;l=o-l;m=q-m;q=+L(+(k*k+(l*l+m*m)));c=q<1.0e-20;if(c){k=0.0;l=0.0;n=1.0}else{k=k/q;l=l/q;n=m/q}o=+p[g>>3];m=+p[g+8>>3];v=+p[g+16>>3];u=k*o+(l*m+n*v);o=o-k*u;m=m-l*u;k=v-n*u;l=+L(+(o*o+(m*m+k*k)));if(l>1.0e-20){p[a+8>>3]=o/l;p[a+16>>3]=m/l;p[a+24>>3]=k/l;b[s>>0]=t}e=a+208|0;p[e>>3]=1.0;g=a+216|0;p[g>>3]=1.0;k=c?1.0:1.0/q;d=a+232|0;p[d>>3]=k;c=a+240|0;p[c>>3]=k;b[s>>0]=t;if(!(h<=0.0)){u=+K(+h);p[e>>3]=u;v=+K(+(!(i<=0.0)?i:h));p[g>>3]=v;p[d>>3]=u*k;p[c>>3]=v*k;b[s>>0]=t}k=!(j<=0.0)?j:.01;if(k==.01)return;p[r>>3]=k;b[s>>0]=t;return}function gga(a,c){a=a|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0;d=+p[a+32>>3]-+p[a+56>>3];e=+p[a+40>>3]-+p[a+64>>3];g=+p[a+48>>3]-+p[a+72>>3];h=+L(+(d*d+(e*e+g*g)));if(h<1.0e-20){f=0.0;e=0.0;d=1.0}else{f=d/h;e=e/h;d=g/h}g=+p[c>>3];j=+p[c+8>>3];i=+p[c+16>>3];h=f*g+(e*j+d*i);g=g-f*h;f=j-e*h;d=i-d*h;e=+L(+(g*g+(f*f+d*d)));if(!(e>1.0e-20))return;p[a+8>>3]=g/e;p[a+16>>3]=f/e;p[a+24>>3]=d/e;a=a+680|0;b[a>>0]=b[a>>0]&-30;return}function hga(a,c,d){a=a|0;c=+c;d=+d;var e=0.0,f=0.0,g=0.0;if(c<=0.0)return;e=+K(+c);p[a+208>>3]=e;d=+K(+(!(d<=0.0)?d:c));p[a+216>>3]=d;g=+p[a+32>>3]-+p[a+56>>3];f=+p[a+40>>3]-+p[a+64>>3];c=+p[a+48>>3]-+p[a+72>>3];c=+L(+(g*g+(f*f+c*c)));c=c<1.0e-20?1.0:1.0/c;p[a+232>>3]=e*c;p[a+240>>3]=c*d;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function iga(a,c){a=a|0;c=+c;var d=0;c=!(c<=0.0)?c:.01;d=a+224|0;if(+p[d>>3]==c)return;p[d>>3]=c;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function jga(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+80|0;e=b+48|0;d=b+24|0;c=b;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;p[e+16>>3]=5.0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;p[c>>3]=0.0;p[c+8>>3]=1.0;p[c+16>>3]=0.0;fga(a,1,e,d,c,2.0,2.0,.01);u=b;return}function kga(a,c){a=a|0;c=c|0;if((b[a>>0]|0)!=(b[c>>0]|0)){c=0;return c|0}if(!(+p[a+8>>3]==+p[c+8>>3])){c=0;return c|0}if(!(+p[a+16>>3]==+p[c+16>>3])){c=0;return c|0}if(!(+p[a+24>>3]==+p[c+24>>3])){c=0;return c|0}if(!(+p[a+32>>3]==+p[c+32>>3])){c=0;return c|0}if(!(+p[a+40>>3]==+p[c+40>>3])){c=0;return c|0}if(!(+p[a+48>>3]==+p[c+48>>3])){c=0;return c|0}if(!(+p[a+56>>3]==+p[c+56>>3])){c=0;return c|0}if(!(+p[a+64>>3]==+p[c+64>>3])){c=0;return c|0}if(!(+p[a+72>>3]==+p[c+72>>3])){c=0;return c|0}if(!(+p[a+208>>3]==+p[c+208>>3])){c=0;return c|0}if(!(+p[a+216>>3]==+p[c+216>>3])){c=0;return c|0}c=+p[a+224>>3]==+p[c+224>>3];return c|0}function lga(a,c){a=a|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;q=a+680|0;s=b[q>>0]|0;t=s&-30;b[q>>0]=t;d=+p[a+32>>3]-+p[a+56>>3];e=+p[a+40>>3]-+p[a+64>>3];f=+p[a+48>>3]-+p[a+72>>3];r=+L(+(d*d+(e*e+f*f)));do if(r>1.0e-20){m=d/r;n=e/r;o=f/r;j=+p[c+8>>3];k=+p[c+16>>3];l=o*j-n*k;d=+p[c>>3];e=m*k-o*d;f=n*d-m*j;g=+L(+(l*l+(e*e+f*f)));if(g>.0001){D=l/g;A=e/g;e=f/g;f=m*d+(n*j+o*k);w=g*D;y=g*A;C=g*e;d=1.0-f;j=D*d;k=d*A;B=A*j;z=e*j;v=e*k;c=a+8|0;x=+p[c>>3];h=a+16|0;g=+p[h>>3];i=a+24|0;l=+p[i>>3];j=(f+D*j)*x+(B-C)*g+(y+z)*l;k=(C+B)*x+(f+A*k)*g+(v-w)*l;l=(z-y)*x+(w+v)*g+(f+e*(d*e))*l;u=r<1.0e-20;d=u?0.0:m;e=u?0.0:n;g=u?1.0:o;f=j*d+(k*e+l*g);d=j-d*f;e=k-e*f;f=l-g*f;g=+L(+(d*d+(e*e+f*f)));if(!(g>1.0e-20))break;p[c>>3]=d/g;p[h>>3]=e/g;p[i>>3]=f/g;b[q>>0]=t;break}else{c=a+8|0;g=+p[c>>3];h=a+16|0;f=+p[h>>3];i=a+24|0;e=+p[i>>3];d=m*g+(n*f+o*e);g=g-m*d;f=f-n*d;d=e-o*d;e=+L(+(g*g+(f*f+d*d)));if(!(e>1.0e-20))break;p[c>>3]=g/e;p[h>>3]=f/e;p[i>>3]=d/e;b[q>>0]=t;break}}while(0);if(b[a>>0]|0)return;b[q>>0]=s&-32;p[a+208>>3]=r*+p[a+232>>3];p[a+216>>3]=r*+p[a+240>>3];return}function mga(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0;m=u;u=u+32|0;i=m;j=a+32|0;d=+p[j>>3];k=+p[b>>3];l=a+40|0;if(d==k){c=+p[l>>3];if(c==+p[b+8>>3])if(+p[a+48>>3]==+p[b+16>>3]){u=m;return}}else c=+p[l>>3];g=d-+p[a+56>>3];c=c-+p[a+64>>3];h=a+48|0;d=+p[h>>3]-+p[a+72>>3];e=+L(+(g*g+(c*c+d*d)));if(e<1.0e-20){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;c=1.0}else{p[i>>3]=g/e;p[i+8>>3]=c/e;c=d/e}p[i+16>>3]=c;p[j>>3]=k;p[l>>3]=+p[b+8>>3];p[h>>3]=+p[b+16>>3];lga(a,i);u=m;return}function nga(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0;m=u;u=u+32|0;i=m;j=a+56|0;d=+p[j>>3];k=+p[b>>3];l=a+64|0;if(d==k){c=+p[l>>3];if(c==+p[b+8>>3])if(+p[a+72>>3]==+p[b+16>>3]){u=m;return}}else c=+p[l>>3];g=+p[a+32>>3]-d;c=+p[a+40>>3]-c;h=a+72|0;d=+p[a+48>>3]-+p[h>>3];e=+L(+(g*g+(c*c+d*d)));if(e<1.0e-20){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;c=1.0}else{p[i>>3]=g/e;p[i+8>>3]=c/e;c=d/e}p[i+16>>3]=c;p[j>>3]=k;p[l>>3]=+p[b+8>>3];p[h>>3]=+p[b+16>>3];lga(a,i);u=m;return}function oga(a,c){a=a|0;c=c|0;if((b[a>>0]|0)==c<<24>>24)return;b[a>>0]=c;c=a+680|0;b[c>>0]=b[c>>0]&-15;return}function pga(a,c){a=a|0;c=+c;var d=0.0,e=0.0,f=0.0;if(c<=0.0)return;d=+K(+c);p[a+208>>3]=d;p[a+216>>3]=d;f=+p[a+32>>3]-+p[a+56>>3];e=+p[a+40>>3]-+p[a+64>>3];c=+p[a+48>>3]-+p[a+72>>3];c=+L(+(f*f+(e*e+c*c)));c=d*(c<1.0e-20?1.0:1.0/c);p[a+232>>3]=c;p[a+240>>3]=c;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function qga(a,c,d){a=a|0;c=+c;d=+d;var e=0.0,f=0.0;if(c==0.0)return;c=+K(+c);c=+P(+((c<179.0?c:179.0)*.017453292519943295*.5))*2.0;p[a+232>>3]=c;p[a+240>>3]=c;f=+p[a+32>>3]-+p[a+56>>3];e=+p[a+40>>3]-+p[a+64>>3];d=+p[a+48>>3]-+p[a+72>>3];d=+L(+(f*f+(e*e+d*d)));d=c*(d<1.0e-20?1.0:d);p[a+208>>3]=d;p[a+216>>3]=d;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function rga(a,c){a=a|0;c=+c;var d=0.0,e=0.0,f=0.0;if(c==0.0)return;d=+K(+c);d=+P(+((d<179.0?d:179.0)*.017453292519943295*.5))*2.0;p[a+232>>3]=d;p[a+240>>3]=d;f=+p[a+32>>3]-+p[a+56>>3];e=+p[a+40>>3]-+p[a+64>>3];c=+p[a+48>>3]-+p[a+72>>3];c=+L(+(f*f+(e*e+c*c)));c=d*(c<1.0e-20?1.0:c);p[a+208>>3]=c;p[a+216>>3]=c;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function sga(a){a=a|0;return +(+p[a+224>>3])}function tga(a,c,d,e){a=a|0;c=+c;d=+d;e=+e;var f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0.0,r=0.0,s=0,t=0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0.0,A=0,B=0;w=a+32|0;x=a+56|0;y=+p[w>>3];z=+p[x>>3];f=y-z;A=a+40|0;o=a+64|0;q=+p[A>>3];r=+p[o>>3];g=q-r;s=a+48|0;t=a+72|0;u=+p[s>>3];v=+p[t>>3];h=u-v;i=+L(+(f*f+(g*g+h*h)));if(i<1.0e-20){n=0.0;m=0.0;i=1.0}else{n=f/i;m=g/i;i=h/i}j=+p[a+16>>3];k=+p[a+24>>3];l=+p[a+8>>3];B=e!=0.0;g=B?0.0-n*e:0.0;h=B?0.0-m*e:0.0;f=B?0.0-i*e:0.0;if(d!=0.0){g=g+l*d;h=h+j*d;f=f+k*d}B=c!=0.0;e=B?(i*j-m*k)*c+g:g;d=B?(n*k-i*l)*c+h:h;c=B?(m*l-n*j)*c+f:f;p[w>>3]=e+y;p[A>>3]=d+q;p[s>>3]=c+u;p[x>>3]=e+z;p[o>>3]=d+r;p[t>>3]=c+v;B=a+680|0;b[B>>0]=b[B>>0]&-30;return}function uga(a,c,d){a=a|0;c=+c;d=+d;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,q=0.0,r=0,s=0.0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;r=a+32|0;s=+p[a+56>>3];e=+p[r>>3]-s;t=a+40|0;n=+p[a+64>>3];f=+p[t>>3]-n;o=a+48|0;q=+p[a+72>>3];g=+p[o>>3]-q;h=+L(+(e*e+(f*f+g*g)));if(h<1.0e-20){m=1.0;i=0.0;f=0.0;e=1.0}else{m=h;i=e/h;f=f/h;e=g/h}if(c!=0.0){w=+p[a+8>>3];A=+p[a+16>>3];D=+p[a+24>>3];u=+O(+c);B=w*u;z=A*u;u=D*u;x=+N(+c);g=1.0-x;v=w*g;h=A*g;c=A*v;y=D*v;C=D*h;g=e*(x+D*(D*g))+(i*(y-z)+f*(B+C));h=e*(C-B)+(i*(u+c)+f*(x+A*h));e=e*(z+y)+(i*(x+w*v)+f*(c-u))}else{g=e;h=f;e=i}if(!(d!=0.0)){B=e;C=h;D=g;B=m*B;B=s+B;p[r>>3]=B;C=m*C;C=n+C;p[t>>3]=C;D=m*D;D=q+D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}j=a+16|0;C=+p[j>>3];k=a+24|0;D=+p[k>>3];c=C*g-D*h;l=a+8|0;v=+p[l>>3];D=D*e-g*v;C=h*v-C*e;v=+O(+-d);B=c*v;A=v*D;v=v*C;x=+N(+d);y=1.0-x;i=c*y;d=D*y;w=D*i;z=C*i;f=C*d;i=g*(A+z)+(e*(x+c*i)+h*(w-v));d=g*(f-B)+(e*(v+w)+h*(x+D*d));e=g*(x+C*(C*y))+(e*(z-A)+h*(B+f));f=C*d-D*e;g=c*e-C*i;c=D*i-c*d;h=i*f+(d*g+e*c);f=f-i*h;g=g-d*h;h=c-e*h;c=+L(+(f*f+(g*g+h*h)));if(!(c>1.0e-20)){B=i;C=d;D=e;B=m*B;B=s+B;p[r>>3]=B;C=m*C;C=n+C;p[t>>3]=C;D=m*D;D=q+D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}p[l>>3]=f/c;p[j>>3]=g/c;p[k>>3]=h/c;l=a+680|0;b[l>>0]=b[l>>0]&-30;B=i;C=d;D=e;B=m*B;B=s+B;p[r>>3]=B;C=m*C;C=n+C;p[t>>3]=C;D=m*D;D=q+D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}function vga(a,c,d){a=a|0;c=c|0;d=+d;var e=0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0.0,I=0.0;r=a+56|0;v=+p[r>>3];l=a+64|0;q=+p[l>>3];e=a+72|0;k=+p[e>>3];A=a+32|0;E=+p[A>>3]-v;p[A>>3]=E;y=a+40|0;D=+p[y>>3]-q;p[y>>3]=D;w=a+48|0;C=+p[w>>3]-k;p[w>>3]=C;i=v-v;p[r>>3]=i;g=q-q;p[l>>3]=g;f=k-k;p[e>>3]=f;H=+p[c>>3];x=+p[c+8>>3];h=+p[c+16>>3];B=+L(+(H*H+(x*x+h*h)));H=H/B;x=x/B;B=h/B;h=+O(+d);I=h*H;j=h*x;h=h*B;z=+N(+d);d=1.0-z;u=H*d;n=x*d;o=x*u;t=o-h;o=h+o;h=B*u;s=j+h;j=h-j;h=B*n;m=h-I;h=I+h;u=z+H*u;n=z+x*n;d=z+B*(B*d);B=C*s+(E*u+D*t);z=C*m+(E*o+D*n);x=C*d+(E*j+D*h);G=a+8|0;E=E+ +p[G>>3];F=a+16|0;D=D+ +p[F>>3];c=a+24|0;C=C+ +p[c>>3];p[G>>3]=u*E+t*D+s*C-B;p[F>>3]=o*E+n*D+m*C-z;p[c>>3]=j*E+h*D+d*C-x;p[A>>3]=v+B;p[y>>3]=q+z;p[w>>3]=k+x;p[r>>3]=v+(u*i+t*g+s*f);p[l>>3]=q+(o*i+n*g+m*f);p[e>>3]=k+(j*i+h*g+d*f);c=a+680|0;b[c>>0]=b[c>>0]&-30;return}function wga(a,c,d,e){a=a|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0.0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,B=0.0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0;q=a+32|0;y=+p[q>>3]-+p[c>>3];p[q>>3]=y;n=a+40|0;i=c+8|0;w=+p[n>>3]-+p[i>>3];p[n>>3]=w;l=a+48|0;g=c+16|0;u=+p[l>>3]-+p[g>>3];p[l>>3]=u;j=a+56|0;J=+p[j>>3]-+p[c>>3];p[j>>3]=J;h=a+64|0;I=+p[h>>3]-+p[i>>3];p[h>>3]=I;f=a+72|0;H=+p[f>>3]-+p[g>>3];p[f>>3]=H;D=a+8|0;F=+p[D>>3];z=a+16|0;r=+p[z>>3];s=a+24|0;t=+p[s>>3];C=H-u;B=I-w;E=r*C-t*B;m=J-y;C=t*m-F*C;m=F*B-r*m;B=+L(+(E*E+(C*C+m*m)));x=d*.5;A=+N(+x);x=+O(+x);F=F*x;r=r*x;x=t*x;t=e*.5;v=+N(+t);t=+O(+t);E=E/B*t;C=C/B*t;t=m/B*t;B=A*v-F*E-r*C-x*t;m=r*t+(F*v+A*E)-x*C;o=x*E+(r*v+A*C)-F*t;E=F*C+(x*v+A*t)-r*E;r=m*2.0;t=o*2.0;A=E*2.0;v=B*r;x=B*t;B=B*A;r=m*r;C=m*t;m=m*A;t=o*t;o=o*A;A=E*A;E=1.0-(t+A);F=C-B;G=m+x;B=C+B;A=1.0-(r+A);C=o-v;x=m-x;v=o+v;t=1.0-(r+t);r=u*G+(w*F+y*E);o=u*C+(y*B+w*A);m=y*x+w*v+u*t;k=H*G+(I*F+J*E);d=H*C+(J*B+I*A);e=J*x+I*v+H*t;y=y+ +p[D>>3];w=w+ +p[z>>3];u=u+ +p[s>>3];p[q>>3]=r;p[n>>3]=o;p[l>>3]=m;p[j>>3]=k;p[h>>3]=d;p[f>>3]=e;p[D>>3]=u*G+(w*F+y*E)-r;p[z>>3]=u*C+(y*B+w*A)-o;p[s>>3]=y*x+w*v+u*t-m;p[q>>3]=r+ +p[c>>3];p[n>>3]=o+ +p[i>>3];p[l>>3]=m+ +p[g>>3];p[j>>3]=k+ +p[c>>3];p[h>>3]=d+ +p[i>>3];p[f>>3]=e+ +p[g>>3];c=a+680|0;b[c>>0]=b[c>>0]&-30;return}function xga(a,c,d){a=a|0;c=+c;d=+d;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,q=0.0,r=0,s=0.0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;r=a+56|0;s=+p[a+32>>3];e=s-+p[r>>3];t=a+64|0;n=+p[a+40>>3];f=n-+p[t>>3];o=a+72|0;q=+p[a+48>>3];g=q-+p[o>>3];h=+L(+(e*e+(f*f+g*g)));if(h<1.0e-20){m=1.0;i=0.0;f=0.0;e=1.0}else{m=h;i=e/h;f=f/h;e=g/h}if(c!=0.0){w=+p[a+8>>3];A=+p[a+16>>3];D=+p[a+24>>3];u=+O(+-c);B=w*u;z=A*u;u=D*u;x=+N(+c);g=1.0-x;v=w*g;h=A*g;c=A*v;y=D*v;C=D*h;g=e*(x+D*(D*g))+(i*(y-z)+f*(B+C));h=e*(C-B)+(i*(u+c)+f*(x+A*h));e=e*(z+y)+(i*(x+w*v)+f*(c-u))}else{g=e;h=f;e=i}if(!(d!=0.0)){B=e;C=h;D=g;B=m*B;B=s-B;p[r>>3]=B;C=m*C;C=n-C;p[t>>3]=C;D=m*D;D=q-D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}j=a+16|0;C=+p[j>>3];k=a+24|0;D=+p[k>>3];c=C*g-D*h;l=a+8|0;v=+p[l>>3];D=D*e-g*v;C=h*v-C*e;v=+O(+d);B=c*v;A=v*D;v=v*C;x=+N(+d);y=1.0-x;i=c*y;d=D*y;w=D*i;z=C*i;f=C*d;i=g*(A+z)+(e*(x+c*i)+h*(w-v));d=g*(f-B)+(e*(v+w)+h*(x+D*d));e=g*(x+C*(C*y))+(e*(z-A)+h*(B+f));f=C*d-D*e;g=c*e-C*i;c=D*i-c*d;h=i*f+(d*g+e*c);f=f-i*h;g=g-d*h;h=c-e*h;c=+L(+(f*f+(g*g+h*h)));if(!(c>1.0e-20)){B=i;C=d;D=e;B=m*B;B=s-B;p[r>>3]=B;C=m*C;C=n-C;p[t>>3]=C;D=m*D;D=q-D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}p[l>>3]=f/c;p[j>>3]=g/c;p[k>>3]=h/c;l=a+680|0;b[l>>0]=b[l>>0]&-30;B=i;C=d;D=e;B=m*B;B=s-B;p[r>>3]=B;C=m*C;C=n-C;p[t>>3]=C;D=m*D;D=q-D;p[o>>3]=D;t=a+680|0;r=b[t>>0]|0;r=r&-30;b[t>>0]=r;return}function yga(a,c){a=a|0;c=+c;var d=0,e=0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;if(c==0.0)return;f=+p[a+32>>3]-+p[a+56>>3];g=+p[a+40>>3]-+p[a+64>>3];h=+p[a+48>>3]-+p[a+72>>3];i=+L(+(f*f+(g*g+h*h)));if(i<1.0e-20){j=0.0;g=0.0;f=1.0}else{j=f/i;g=g/i;f=h/i}v=+O(+c);m=j*v;n=g*v;v=f*v;s=+N(+c);r=1.0-s;i=j*r;h=g*r;u=g*i;o=f*i;l=f*h;d=a+8|0;q=+p[d>>3];e=a+16|0;c=+p[e>>3];k=a+24|0;t=+p[k>>3];i=t*(n+o)+(q*(s+j*i)+c*(u-v));h=t*(l-m)+(q*(v+u)+c*(s+g*h));l=t*(s+f*(f*r))+(q*(o-n)+c*(m+l));c=j*i+(g*h+f*l);i=i-j*c;h=h-g*c;f=l-f*c;g=+L(+(i*i+(h*h+f*f)));if(g>1.0e-20){p[d>>3]=i/g;p[e>>3]=h/g;p[k>>3]=f/g;d=a+680|0;e=b[d>>0]&-30;b[d>>0]=e}else{e=a+680|0;d=e;e=b[e>>0]|0}b[d>>0]=e&-30;return}function zga(a,c){a=a|0;c=+c;var d=0,e=0,f=0.0,g=0.0,h=0.0,i=0.0;if(c<=0.0)return;f=1.0/c;d=a+208|0;c=f*+p[d>>3];e=a+216|0;f=f*+p[e>>3];if(c<=0.0)return;g=+K(+c);p[d>>3]=g;c=+K(+(!(f<=0.0)?f:c));p[e>>3]=c;i=+p[a+32>>3]-+p[a+56>>3];h=+p[a+40>>3]-+p[a+64>>3];f=+p[a+48>>3]-+p[a+72>>3];f=+L(+(i*i+(h*h+f*f)));f=f<1.0e-20?1.0:1.0/f;p[a+232>>3]=g*f;p[a+240>>3]=c*f;a=a+680|0;b[a>>0]=b[a>>0]&-15;return}function Aga(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0,r=0,s=0,t=0.0,v=0,w=0;v=u;u=u+528|0;o=v+400|0;q=v+272|0;r=v+136|0;s=v;t=+p[b+32>>3];c=t-+p[b+56>>3];m=+p[b+40>>3];e=m-+p[b+64>>3];n=+p[b+48>>3];g=n-+p[b+72>>3];d=+L(+(c*c+(e*e+g*g)));if(d<1.0e-20){p[a>>3]=1.0;s=a+8|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+40>>3]=1.0;s=a+48|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+80>>3]=1.0;s=a+88|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+120>>3]=1.0;u=v;return}d=1.0/d;l=c*d;k=e*d;c=g*d;d=+p[b+16>>3];e=+p[b+24>>3];g=c*d-k*e;h=+p[b+8>>3];i=l*e-c*h;j=k*h-l*d;if(g==0.0)if(!(i!=0.0|j!=0.0)){p[a>>3]=1.0;s=a+8|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+40>>3]=1.0;s=a+48|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+80>>3]=1.0;s=a+88|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[s+16>>2]=0;f[s+20>>2]=0;f[s+24>>2]=0;f[s+28>>2]=0;p[a+120>>3]=1.0;u=v;return}p[o>>3]=g;p[o+32>>3]=i;p[o+64>>3]=j;p[o+96>>3]=0.0;p[o+8>>3]=h;p[o+40>>3]=d;p[o+72>>3]=e;p[o+104>>3]=0.0;p[o+16>>3]=l;p[o+48>>3]=k;p[o+80>>3]=c;p[o+112>>3]=0.0;p[o+24>>3]=0.0;p[o+56>>3]=0.0;p[o+88>>3]=0.0;p[o+120>>3]=1.0;p[q>>3]=1.0;w=q+8|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[w+12>>2]=0;p[q+32>>3]=0.0;p[q+40>>3]=1.0;p[q+48>>3]=0.0;w=q+64|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[w+12>>2]=0;p[q+80>>3]=1.0;p[q+96>>3]=-t;p[q+104>>3]=-m;p[q+112>>3]=-n;p[q+24>>3]=0.0;p[q+56>>3]=0.0;p[q+88>>3]=0.0;p[q+120>>3]=1.0;f[r>>2]=o;f[r+4>>2]=q;q=r+8|0;Bga(q,r)|0;f[s>>2]=q;f[s+4>>2]=b+80;r=s+8|0;Bga(r,s)|0;p[a>>3]=+p[r>>3];p[a+8>>3]=+p[s+16>>3];p[a+16>>3]=+p[s+24>>3];p[a+24>>3]=+p[s+32>>3];p[a+32>>3]=+p[s+40>>3];p[a+40>>3]=+p[s+48>>3];p[a+48>>3]=+p[s+56>>3];p[a+56>>3]=+p[s+64>>3];p[a+64>>3]=+p[s+72>>3];p[a+72>>3]=+p[s+80>>3];p[a+80>>3]=+p[s+88>>3];p[a+88>>3]=+p[s+96>>3];p[a+96>>3]=+p[s+104>>3];p[a+104>>3]=+p[s+112>>3];p[a+112>>3]=+p[s+120>>3];p[a+120>>3]=+p[s+128>>3];u=v;return}function Bga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[b>>2]|0;d=b+4|0;c=f[d>>2]|0;p[a>>3]=+p[e>>3]*+p[c>>3]+ +p[e+32>>3]*+p[c+8>>3]+ +p[e+64>>3]*+p[c+16>>3]+ +p[e+96>>3]*+p[c+24>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+8>>3]=+p[c+8>>3]*+p[e>>3]+ +p[c+40>>3]*+p[e+8>>3]+ +p[c+72>>3]*+p[e+16>>3]+ +p[c+104>>3]*+p[e+24>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+16>>3]=+p[e+16>>3]*+p[c>>3]+ +p[e+48>>3]*+p[c+8>>3]+ +p[e+80>>3]*+p[c+16>>3]+ +p[e+112>>3]*+p[c+24>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+24>>3]=+p[c+24>>3]*+p[e>>3]+ +p[c+56>>3]*+p[e+8>>3]+ +p[c+88>>3]*+p[e+16>>3]+ +p[c+120>>3]*+p[e+24>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+32>>3]=+p[e>>3]*+p[c+32>>3]+ +p[e+32>>3]*+p[c+40>>3]+ +p[e+64>>3]*+p[c+48>>3]+ +p[e+96>>3]*+p[c+56>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+40>>3]=+p[c+8>>3]*+p[e+32>>3]+ +p[c+40>>3]*+p[e+40>>3]+ +p[c+72>>3]*+p[e+48>>3]+ +p[c+104>>3]*+p[e+56>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+48>>3]=+p[e+16>>3]*+p[c+32>>3]+ +p[e+48>>3]*+p[c+40>>3]+ +p[e+80>>3]*+p[c+48>>3]+ +p[e+112>>3]*+p[c+56>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+56>>3]=+p[c+24>>3]*+p[e+32>>3]+ +p[c+56>>3]*+p[e+40>>3]+ +p[c+88>>3]*+p[e+48>>3]+ +p[c+120>>3]*+p[e+56>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+64>>3]=+p[e>>3]*+p[c+64>>3]+ +p[e+32>>3]*+p[c+72>>3]+ +p[e+64>>3]*+p[c+80>>3]+ +p[e+96>>3]*+p[c+88>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+72>>3]=+p[c+8>>3]*+p[e+64>>3]+ +p[c+40>>3]*+p[e+72>>3]+ +p[c+72>>3]*+p[e+80>>3]+ +p[c+104>>3]*+p[e+88>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+80>>3]=+p[e+16>>3]*+p[c+64>>3]+ +p[e+48>>3]*+p[c+72>>3]+ +p[e+80>>3]*+p[c+80>>3]+ +p[e+112>>3]*+p[c+88>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+88>>3]=+p[c+24>>3]*+p[e+64>>3]+ +p[c+56>>3]*+p[e+72>>3]+ +p[c+88>>3]*+p[e+80>>3]+ +p[c+120>>3]*+p[e+88>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+96>>3]=+p[e>>3]*+p[c+96>>3]+ +p[e+32>>3]*+p[c+104>>3]+ +p[e+64>>3]*+p[c+112>>3]+ +p[e+96>>3]*+p[c+120>>3];c=f[b>>2]|0;e=f[d>>2]|0;p[a+104>>3]=+p[c+8>>3]*+p[e+96>>3]+ +p[c+40>>3]*+p[e+104>>3]+ +p[c+72>>3]*+p[e+112>>3]+ +p[c+104>>3]*+p[e+120>>3];e=f[b>>2]|0;c=f[d>>2]|0;p[a+112>>3]=+p[e+16>>3]*+p[c+96>>3]+ +p[e+48>>3]*+p[c+104>>3]+ +p[e+80>>3]*+p[c+112>>3]+ +p[e+112>>3]*+p[c+120>>3];c=f[b>>2]|0;b=f[d>>2]|0;p[a+120>>3]=+p[c+24>>3]*+p[b+96>>3]+ +p[c+56>>3]*+p[b+104>>3]+ +p[c+88>>3]*+p[b+112>>3]+ +p[c+120>>3]*+p[b+120>>3];return a|0}function Cga(a,c){a=a|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0.0,m=0.0,n=0,o=0,q=0,r=0;r=u;u=u+16|0;k=r+8|0;n=r;l=+p[c+32>>3]-+p[c+56>>3];m=+p[c+40>>3]-+p[c+64>>3];d=+p[c+48>>3]-+p[c+72>>3];d=+L(+(l*l+(m*m+d*d)));if(d<1.0e-20){p[a>>3]=1.0;q=a+8|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+40>>3]=1.0;q=a+48|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+80>>3]=1.0;q=a+88|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+120>>3]=1.0;u=r;return}g=1.0/d;h=+p[c+208>>3];if(!(h<=0.0)){i=+p[c+216>>3];if(!(i<=0.0)){p[k>>3]=1.0;p[n>>3]=1.0;o=b[c>>0]|0;if(o<<24>>24==2){e=-g;g=+p[c+224>>3];d=2.0/i;h=2.0/h;q=13}else{d=+(f[c+672>>2]|0)/+(f[c+668>>2]|0);e=i/h;if(!(d<=e)){j=n;d=e/d}else{j=k;d=d/e}p[j>>3]=d;h=+p[k>>3]*2.0/h;d=+p[n>>3]*2.0/i;e=-g;g=+p[c+224>>3];if(!(o<<24>>24)){m=e;l=e;g=g*-2.0;i=0.0;e=h}else q=13}if((q|0)==13){m=g*e;l=0.0;g=0.0-g;i=1.0;e=h}o=a+8|0;c=a+48|0;q=a+96|0;p[a>>3]=e;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;f[o+28>>2]=0;p[a+40>>3]=d;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[a+80>>3]=m;p[a+88>>3]=l;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;p[a+112>>3]=g;p[a+120>>3]=i;u=r;return}}p[a>>3]=1.0;q=a+8|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+40>>3]=1.0;q=a+48|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+80>>3]=1.0;q=a+88|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;f[q+24>>2]=0;f[q+28>>2]=0;p[a+120>>3]=1.0;u=r;return}function Dga(a){a=a|0;var c=0,d=0,e=0,f=0,g=0.0,h=0;e=u;u=u+128|0;c=e;d=a+680|0;if(b[d>>0]&1){d=0;u=e;return d|0}Aga(c,a);g=+p[c>>3];f=a+248|0;p[c>>3]=+p[f>>3];p[f>>3]=g;f=c+8|0;g=+p[f>>3];h=a+256|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+16|0;g=+p[h>>3];f=a+264|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+24|0;g=+p[f>>3];h=a+272|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+32|0;g=+p[h>>3];f=a+280|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+40|0;g=+p[f>>3];h=a+288|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+48|0;g=+p[h>>3];f=a+296|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+56|0;g=+p[f>>3];h=a+304|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+64|0;g=+p[h>>3];f=a+312|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+72|0;g=+p[f>>3];h=a+320|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+80|0;g=+p[h>>3];f=a+328|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+88|0;g=+p[f>>3];h=a+336|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+96|0;g=+p[h>>3];f=a+344|0;p[h>>3]=+p[f>>3];p[f>>3]=g;f=c+104|0;g=+p[f>>3];h=a+352|0;p[f>>3]=+p[h>>3];p[h>>3]=g;h=c+112|0;g=+p[h>>3];f=a+360|0;p[h>>3]=+p[f>>3];p[f>>3]=g;p[a+368>>3]=+p[c+120>>3];b[d>>0]=b[d>>0]&-6|1;d=1;u=e;return d|0}function Ega(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0.0;k=u;u=u+128|0;h=k;i=a+680|0;j=b[i>>0]|0;e=b[a>>0]|0;if(!(j&2)){f[a+668>>2]=c;f[a+672>>2]=d;if(e<<24>>24!=2)g=7}else{if(e<<24>>24==2){j=0;u=k;return j|0}e=a+668|0;if((f[e>>2]|0)==(c|0))if((f[a+672>>2]|0)==(d|0)){j=0;u=k;return j|0}f[e>>2]=c;f[a+672>>2]=d;g=7}if((g|0)==7)b[i>>0]=j&-15;Cga(h,a);l=+p[h>>3];j=a+376|0;p[h>>3]=+p[j>>3];p[j>>3]=l;j=h+8|0;l=+p[j>>3];d=a+384|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+16|0;l=+p[d>>3];j=a+392|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+24|0;l=+p[j>>3];d=a+400|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+32|0;l=+p[d>>3];j=a+408|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+40|0;l=+p[j>>3];d=a+416|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+48|0;l=+p[d>>3];j=a+424|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+56|0;l=+p[j>>3];d=a+432|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+64|0;l=+p[d>>3];j=a+440|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+72|0;l=+p[j>>3];d=a+448|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+80|0;l=+p[d>>3];j=a+456|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+88|0;l=+p[j>>3];d=a+464|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+96|0;l=+p[d>>3];j=a+472|0;p[d>>3]=+p[j>>3];p[j>>3]=l;j=h+104|0;l=+p[j>>3];d=a+480|0;p[j>>3]=+p[d>>3];p[d>>3]=l;d=h+112|0;l=+p[d>>3];j=a+488|0;p[d>>3]=+p[j>>3];p[j>>3]=l;p[a+496>>3]=+p[h+120>>3];b[i>>0]=b[i>>0]|2;j=1;u=k;return j|0}function Fga(a){a=a|0;Dga(a)|0;return a+248|0}function Gga(a){a=a|0;var b=0,c=0;b=u;u=u+32|0;c=b;r$(c);Ega(a,f[c>>2]|0,f[c+4>>2]|0)|0;u=b;return a+376|0}function Hga(a,b,c){a=a|0;b=b|0;c=c|0;Ega(a,b,c)|0;return a+376|0}function Iga(a){a=a|0;var b=0,c=0;b=u;u=u+32|0;c=b;r$(c);a=Jga(a,f[c>>2]|0,f[c+4>>2]|0)|0;u=b;return a|0}function Jga(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+272|0;e=i+136|0;g=i;h=a+680|0;if(b[h>>0]&4)if(!(Ega(a,c,d)|0))if(!(Dga(a)|0)){h=a+504|0;u=i;return h|0}Ega(a,c,d)|0;Dga(a)|0;f[g>>2]=a+376;f[g+4>>2]=a+248;Bga(e,g)|0;p[a+504>>3]=+p[e>>3];p[a+512>>3]=+p[e+8>>3];p[a+520>>3]=+p[e+16>>3];p[a+528>>3]=+p[e+24>>3];p[a+536>>3]=+p[e+32>>3];p[a+544>>3]=+p[e+40>>3];p[a+552>>3]=+p[e+48>>3];p[a+560>>3]=+p[e+56>>3];p[a+568>>3]=+p[e+64>>3];p[a+576>>3]=+p[e+72>>3];p[a+584>>3]=+p[e+80>>3];p[a+592>>3]=+p[e+88>>3];p[a+600>>3]=+p[e+96>>3];p[a+608>>3]=+p[e+104>>3];p[a+616>>3]=+p[e+112>>3];p[a+624>>3]=+p[e+120>>3];b[h>>0]=b[h>>0]|4;h=a+504|0;u=i;return h|0}function Kga(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0;d=u;u=u+160|0;i=d+24|0;m=d;r$(m);Lga(Jga(b,f[m>>2]|0,f[m+4>>2]|0)|0,i);f[i+128>>2]=c;l=+p[c>>3];k=+p[c+8>>3];j=+p[c+16>>3];h=l*+p[i+8>>3]+k*+p[i+40>>3]+j*+p[i+72>>3]+ +p[i+104>>3];g=l*+p[i+16>>3]+k*+p[i+48>>3]+j*+p[i+80>>3]+ +p[i+112>>3];e=1.0/(l*+p[i+24>>3]+k*+p[i+56>>3]+j*+p[i+88>>3]+ +p[i+120>>3]);p[a>>3]=(+p[i>>3]*l+ +p[i+32>>3]*k+ +p[i+64>>3]*j+ +p[i+96>>3])*e;p[a+8>>3]=h*e;p[a+16>>3]=g*e;u=d;return}function Lga(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=a+40|0;G=a+80|0;n=+p[G>>3];h=a+120|0;g=+p[h>>3];J=a+112|0;B=+p[J>>3];o=a+88|0;x=+p[o>>3];E=a+48|0;f=a+104|0;C=+p[f>>3];F=a+72|0;d=+p[F>>3];i=a+56|0;p[b>>3]=+p[i>>3]*(B*d-n*C)+(+p[H>>3]*(n*g-B*x)+ +p[E>>3]*(x*C-g*d));d=+p[J>>3];y=a+24|0;g=+p[y>>3];z=a+16|0;C=+p[z>>3];x=+p[h>>3];A=a+8|0;B=+p[A>>3];n=+p[f>>3];w=b+8|0;p[w>>3]=-(+p[o>>3]*(C*n-d*B)+(+p[F>>3]*(d*g-C*x)+ +p[G>>3]*(x*B-g*n)));n=+p[z>>3];g=+p[i>>3];B=+p[E>>3];x=+p[y>>3];C=+p[H>>3];d=+p[A>>3];v=b+16|0;p[v>>3]=+p[h>>3]*(B*d-n*C)+(+p[f>>3]*(n*g-B*x)+ +p[J>>3]*(x*C-g*d));d=+p[E>>3];g=+p[o>>3];C=+p[G>>3];x=+p[i>>3];B=+p[F>>3];n=+p[H>>3];u=b+24|0;p[u>>3]=-(+p[y>>3]*(C*n-d*B)+(+p[A>>3]*(d*g-C*x)+ +p[z>>3]*(x*B-g*n)));D=a+64|0;n=+p[D>>3];g=+p[f>>3];I=a+96|0;B=+p[I>>3];x=+p[F>>3];c=a+32|0;C=+p[h>>3];d=+p[o>>3];m=b+64|0;p[m>>3]=+p[H>>3]*(B*d-n*C)+(+p[i>>3]*(n*g-B*x)+ +p[c>>3]*(x*C-g*d));d=+p[I>>3];g=+p[A>>3];C=+p[a>>3];x=+p[f>>3];B=+p[y>>3];n=+p[h>>3];l=b+72|0;p[l>>3]=-(+p[F>>3]*(C*n-d*B)+(+p[o>>3]*(d*g-C*x)+ +p[D>>3]*(x*B-g*n)));n=+p[a>>3];g=+p[H>>3];B=+p[c>>3];x=+p[A>>3];C=+p[i>>3];d=+p[y>>3];k=b+80|0;p[k>>3]=+p[f>>3]*(B*d-n*C)+(+p[h>>3]*(n*g-B*x)+ +p[I>>3]*(x*C-g*d));d=+p[c>>3];g=+p[F>>3];C=+p[D>>3];x=+p[H>>3];B=+p[o>>3];n=+p[i>>3];j=b+88|0;p[j>>3]=-(+p[A>>3]*(C*n-d*B)+(+p[y>>3]*(d*g-C*x)+ +p[a>>3]*(x*B-g*n)));n=+p[o>>3];g=+p[I>>3];B=+p[h>>3];x=+p[D>>3];C=+p[J>>3];d=+p[G>>3];s=b+32|0;p[s>>3]=-(+p[c>>3]*(B*d-n*C)+(+p[E>>3]*(n*g-B*x)+ +p[i>>3]*(x*C-g*d)));d=+p[h>>3];g=+p[a>>3];C=+p[y>>3];x=+p[I>>3];B=+p[z>>3];n=+p[J>>3];r=b+40|0;p[r>>3]=+p[D>>3]*(C*n-d*B)+(+p[G>>3]*(d*g-C*x)+ +p[o>>3]*(x*B-g*n));n=+p[y>>3];g=+p[c>>3];B=+p[i>>3];x=+p[a>>3];C=+p[E>>3];d=+p[z>>3];q=b+48|0;p[q>>3]=-(+p[I>>3]*(B*d-n*C)+(+p[J>>3]*(n*g-B*x)+ +p[h>>3]*(x*C-g*d)));d=+p[i>>3];g=+p[D>>3];C=+p[o>>3];x=+p[c>>3];B=+p[G>>3];n=+p[E>>3];o=b+56|0;p[o>>3]=+p[a>>3]*(C*n-d*B)+(+p[z>>3]*(d*g-C*x)+ +p[y>>3]*(x*B-g*n));n=+p[F>>3];g=+p[J>>3];B=+p[f>>3];x=+p[G>>3];C=+p[I>>3];d=+p[D>>3];d=-(+p[E>>3]*(B*d-n*C)+(+p[c>>3]*(n*g-B*x)+ +p[H>>3]*(x*C-g*d)));i=b+96|0;p[i>>3]=d;g=+p[f>>3];C=+p[z>>3];x=+p[A>>3];B=+p[J>>3];n=+p[a>>3];t=+p[I>>3];h=b+104|0;p[h>>3]=+p[G>>3]*(x*t-g*n)+(+p[D>>3]*(g*C-x*B)+ +p[F>>3]*(B*n-C*t));t=+p[A>>3];C=+p[E>>3];n=+p[H>>3];B=+p[z>>3];x=+p[c>>3];g=+p[a>>3];g=-(+p[J>>3]*(n*g-t*x)+(+p[I>>3]*(t*C-n*B)+ +p[f>>3]*(B*x-C*g)));f=b+112|0;p[f>>3]=g;C=+p[H>>3];x=+p[G>>3];B=+p[F>>3];n=+p[E>>3];t=+p[D>>3];e=+p[c>>3];e=+p[z>>3]*(B*e-C*t)+(+p[a>>3]*(C*x-B*n)+ +p[A>>3]*(n*t-x*e));c=b+120|0;p[c>>3]=e;x=+p[b>>3];t=+p[s>>3];n=+p[m>>3];d=+p[a>>3]*x+ +p[A>>3]*t+(+p[z>>3]*n+ +p[y>>3]*d);p[b>>3]=x/d;p[w>>3]=+p[w>>3]/d;p[v>>3]=+p[v>>3]/d;p[u>>3]=+p[u>>3]/d;p[s>>3]=t/d;p[r>>3]=+p[r>>3]/d;p[q>>3]=+p[q>>3]/d;p[o>>3]=+p[o>>3]/d;p[m>>3]=n/d;p[l>>3]=+p[l>>3]/d;p[k>>3]=+p[k>>3]/d;p[j>>3]=+p[j>>3]/d;p[i>>3]=+p[i>>3]/d;p[h>>3]=+p[h>>3]/d;p[f>>3]=g/d;p[c>>3]=e/d;return}function Mga(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;r$(d);Nga(a,b,f[d>>2]|0,f[d+4>>2]|0);u=c;return}function Nga(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0,i=0,j=0,k=0.0,l=0.0;h=a+668|0;i=a+672|0;if((f[h>>2]|0)==(d|0)){if((f[i>>2]|0)!=(e|0))j=3}else j=3;if((j|0)==3){f[h>>2]=d;f[i>>2]=e;if((b[a>>0]|0)!=2){j=a+680|0;b[j>>0]=b[j>>0]&-15}}i=a+680|0;if(!(b[i>>0]&8)){Ega(a,d,e)|0;k=+p[a+376>>3];l=+p[a+384>>3];g=+p[a+392>>3];g=+L(+(k*k+(l*l+g*g)));h=b[a>>0]|0;if(h<<24>>24!=2){k=+(e|0)/+(d|0);l=+p[a+216>>3]/+p[a+208>>3];if(k<=l)g=g*(l/k)}l=1.0/g;n[a+676>>2]=l;b[i>>0]=b[i>>0]|8;g=l;i=(n[s>>2]=l,f[s>>2]|0)}else{i=f[a+676>>2]|0;g=(f[s>>2]=i,+n[s>>2]);h=b[a>>0]|0}if(!(h<<24>>24)){e=Jga(a,d,e)|0;g=(+n[c+48>>2]*+p[e+24>>3]+ +n[c+52>>2]*+p[e+56>>3]+(+n[c+56>>2]*+p[e+88>>3]+ +n[c+60>>2]*+p[e+120>>3]))*(f[s>>2]=i,+n[s>>2])}n[c>>2]=g*+n[c>>2];e=c+4|0;n[e>>2]=g*+n[e>>2];e=c+8|0;n[e>>2]=g*+n[e>>2];e=c+16|0;n[e>>2]=g*+n[e>>2];e=c+20|0;n[e>>2]=g*+n[e>>2];e=c+24|0;n[e>>2]=g*+n[e>>2];e=c+32|0;n[e>>2]=g*+n[e>>2];e=c+36|0;n[e>>2]=g*+n[e>>2];c=c+40|0;n[c>>2]=g*+n[c>>2];return}function Oga(a){a=a|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0.0,q=0.0,r=0.0;c=a+680|0;if(b[c>>0]&16)return;Dga(a)|0;h=+p[a+248>>3];f=+p[a+256>>3];m=+p[a+264>>3];e=+p[a+280>>3];g=+p[a+288>>3];l=+p[a+296>>3];j=+p[a+312>>3];i=+p[a+320>>3];o=+p[a+328>>3];r=g*o-l*i;q=l*j-e*o;k=e*i-g*j;d=1.0/(h*r+(m*k+f*q));n[a+632>>2]=r*d;n[a+636>>2]=(m*i-f*o)*d;n[a+640>>2]=(f*l-m*g)*d;n[a+644>>2]=q*d;n[a+648>>2]=(h*o-m*j)*d;n[a+652>>2]=(m*e-h*l)*d;n[a+656>>2]=k*d;n[a+660>>2]=(f*j-h*i)*d;n[a+664>>2]=(h*g-f*e)*d;b[c>>0]=b[c>>0]|16;return}function Pga(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0;Oga(a);q=+n[a+632>>2];A=+n[b>>2];p=+n[a+644>>2];B=b+4|0;z=+n[B>>2];o=+n[a+656>>2];x=b+8|0;y=+n[x>>2];l=+n[a+636>>2];k=+n[a+648>>2];j=+n[a+660>>2];h=+n[a+640>>2];f=+n[a+652>>2];d=+n[a+664>>2];w=b+16|0;u=+n[w>>2];v=b+20|0;t=+n[v>>2];r=b+24|0;s=+n[r>>2];m=b+32|0;g=+n[m>>2];i=b+36|0;e=+n[i>>2];a=b+40|0;c=+n[a>>2];n[b>>2]=q*A+p*z+o*y;n[B>>2]=A*l+z*k+y*j;n[x>>2]=A*h+z*f+y*d;n[w>>2]=q*u+p*t+o*s;n[v>>2]=l*u+k*t+j*s;n[r>>2]=h*u+f*t+d*s;n[m>>2]=q*g+p*e+o*c;n[i>>2]=l*g+k*e+j*c;n[a>>2]=h*g+f*e+d*c;return}function Qga(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0;Oga(a);q=+n[a+632>>2];A=+n[b>>2];p=+n[a+644>>2];B=b+4|0;z=+n[B>>2];o=+n[a+656>>2];x=b+8|0;y=+n[x>>2];l=+n[a+636>>2];k=+n[a+648>>2];j=+n[a+660>>2];h=+n[a+640>>2];f=+n[a+652>>2];d=+n[a+664>>2];w=b+12|0;u=+n[w>>2];v=b+16|0;t=+n[v>>2];r=b+20|0;s=+n[r>>2];m=b+24|0;g=+n[m>>2];i=b+28|0;e=+n[i>>2];a=b+32|0;c=+n[a>>2];n[b>>2]=q*A+p*z+o*y;n[B>>2]=A*l+z*k+y*j;n[x>>2]=A*h+z*f+y*d;n[w>>2]=q*u+p*t+o*s;n[v>>2]=l*u+k*t+j*s;n[r>>2]=h*u+f*t+d*s;n[m>>2]=q*g+p*e+o*c;n[i>>2]=l*g+k*e+j*c;n[a>>2]=h*g+f*e+d*c;return}function Rga(a,b,c){a=a|0;b=+b;c=+c;b=b*.5;c=c*.5;p[a>>3]=b;p[a+32>>3]=0.0;p[a+64>>3]=0.0;p[a+96>>3]=b;p[a+8>>3]=0.0;p[a+40>>3]=c;p[a+72>>3]=0.0;p[a+104>>3]=c;p[a+16>>3]=0.0;p[a+48>>3]=0.0;p[a+80>>3]=.5;p[a+112>>3]=.5;p[a+24>>3]=0.0;p[a+56>>3]=0.0;p[a+88>>3]=0.0;p[a+120>>3]=1.0;return}function Sga(a,c){a=a|0;c=c|0;p[a+80>>3]=+p[c>>3];p[a+88>>3]=+p[c+8>>3];p[a+96>>3]=+p[c+16>>3];p[a+104>>3]=+p[c+24>>3];p[a+112>>3]=+p[c+32>>3];p[a+120>>3]=+p[c+40>>3];p[a+128>>3]=+p[c+48>>3];p[a+136>>3]=+p[c+56>>3];p[a+144>>3]=+p[c+64>>3];p[a+152>>3]=+p[c+72>>3];p[a+160>>3]=+p[c+80>>3];p[a+168>>3]=+p[c+88>>3];p[a+176>>3]=+p[c+96>>3];p[a+184>>3]=+p[c+104>>3];p[a+192>>3]=+p[c+112>>3];p[a+200>>3]=+p[c+120>>3];c=a+680|0;b[c>>0]=b[c>>0]&-30;return}function Tga(){if(!(b[209544]|0))rrb(209544)|0;f[52697]=215190;if(!(b[209552]|0))rrb(209552)|0;f[52698]=215191;if(b[209528]|0){f[52699]=215189;return}if(!(rrb(209528)|0)){f[52699]=215189;return}f[52699]=215189;return}
function OIa(a){a=a|0;var c=0;f[a>>2]=31144;c=a+32|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);Teb(a);Zpb(a);return}function PIa(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;i=c+44|0;j=f[i>>2]|0;m=c+24|0;n=f[m>>2]|0;k=n;if(j>>>0<n>>>0){f[i>>2]=n;l=k}else l=j;i=h&24;a:do if(!i){j=-1;i=-1}else if((g|0)==1&(i|0)==24){j=-1;i=-1}else{b:do switch(g|0){case 0:{i=0;j=0;break}case 1:if(!(h&8)){j=k-(f[c+20>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}else{j=(f[c+12>>2]|0)-(f[c+8>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}case 2:{i=c+32|0;if((b[i+11>>0]|0)<0)i=f[i>>2]|0;j=l-i|0;i=j;j=((j|0)<0)<<31>>31;break}default:{j=-1;i=-1;break a}}while(0);j=vrb(i|0,j|0,d|0,e|0)|0;i=I;if((i|0)<0){j=-1;i=-1}else{k=c+32|0;if((b[k+11>>0]|0)<0)k=f[k>>2]|0;e=l-k|0;d=((e|0)<0)<<31>>31;if((i|0)>(d|0)|(i|0)==(d|0)&j>>>0>e>>>0){j=-1;i=-1}else{k=h&8;if(!((j|0)==0&(i|0)==0)){if(k|0)if(!(f[c+12>>2]|0)){j=-1;i=-1;break}if((h&16|0)!=0&(n|0)==0){j=-1;i=-1;break}}if(k|0){f[c+12>>2]=(f[c+8>>2]|0)+j;f[c+16>>2]=l}if(h&16)f[m>>2]=(f[c+20>>2]|0)+j}}}while(0);n=a;f[n>>2]=0;f[n+4>>2]=0;a=a+8|0;f[a>>2]=j;f[a+4>>2]=i;return}function QIa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=c+8|0;Sh[f[(f[b>>2]|0)+16>>2]&63](a,b,f[c>>2]|0,f[c+4>>2]|0,0,d);return}function RIa(a){a=a|0;var b=0,c=0,d=0;b=a+44|0;d=f[b>>2]|0;c=f[a+24>>2]|0;if(d>>>0<c>>>0){f[b>>2]=c;d=c}if(!(f[a+48>>2]&8)){a=-1;return a|0}b=a+16|0;c=f[b>>2]|0;if(c>>>0<d>>>0){f[b>>2]=d;c=d}b=f[a+12>>2]|0;if(b>>>0>=c>>>0){a=-1;return a|0}a=h[b>>0]|0;return a|0}function SIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+44|0;d=f[e>>2]|0;g=f[a+24>>2]|0;if(d>>>0<g>>>0){f[e>>2]=g;d=g}h=a+12|0;e=f[h>>2]|0;if((f[a+8>>2]|0)>>>0>=e>>>0){c=-1;return c|0}if((c|0)==-1){f[h>>2]=e+-1;f[a+16>>2]=d;c=0;return c|0}if(!(f[a+48>>2]&16)){g=c&255;e=e+-1|0;if((b[e>>0]|0)!=g<<24>>24){c=-1;return c|0}}else{g=c&255;e=e+-1|0}f[h>>2]=e;f[a+16>>2]=d;b[e>>0]=g;return c|0}function TIa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;o=t;if((c|0)==-1){s=0;u=t;return s|0}p=a+12|0;q=a+8|0;r=(f[p>>2]|0)-(f[q>>2]|0)|0;s=a+24|0;k=f[s>>2]|0;m=a+28|0;d=f[m>>2]|0;if((k|0)==(d|0)){j=a+48|0;if(!(f[j>>2]&16)){s=-1;u=t;return s|0}h=a+20|0;i=f[h>>2]|0;n=a+44|0;l=(f[n>>2]|0)-i|0;g=a+32|0;qqb(g,0);d=g+11|0;if((b[d>>0]|0)<0)e=(f[a+40>>2]&2147483647)+-1|0;else e=10;lqb(g,e,0);d=b[d>>0]|0;if(d<<24>>24<0){e=f[g>>2]|0;d=f[a+36>>2]|0}else{e=g;d=d&255}d=e+d|0;f[h>>2]=e;f[m>>2]=d;k=e+(k-i)|0;f[s>>2]=k;e=e+l|0;f[n>>2]=e;l=n;g=n;i=d}else{e=a+44|0;l=e;j=a+48|0;g=e;e=f[e>>2]|0;i=d}h=k+1|0;f[o>>2]=h;e=f[(h>>>0<e>>>0?g:o)>>2]|0;f[l>>2]=e;if(f[j>>2]&8|0){d=a+32|0;if((b[d+11>>0]|0)<0)d=f[d>>2]|0;f[q>>2]=d;f[p>>2]=d+r;f[a+16>>2]=e}if((k|0)==(i|0)){s=Pg[f[(f[a>>2]|0)+52>>2]&255](a,c&255)|0;u=t;return s|0}else{f[s>>2]=h;b[k>>0]=c;s=c&255;u=t;return s|0}return 0}function UIa(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=31108;c=a+56|0;f[c>>2]=31128;d=a+4|0;f[d>>2]=31144;e=a+36|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Pfb(a,31204);Oeb(c);return}function VIa(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=31108;c=a+56|0;f[c>>2]=31128;d=a+4|0;f[d>>2]=31144;e=a+36|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Pfb(a,31204);Oeb(c);Zpb(a);return}function WIa(a){a=a|0;var c=0,d=0,e=0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[a>>2]=31108;c=a+56|0;f[c>>2]=31128;d=a+4|0;f[d>>2]=31144;e=a+36|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Pfb(a,31204);Oeb(c);return}function XIa(a){a=a|0;var c=0,d=0,e=0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[a>>2]=31108;c=a+56|0;f[c>>2]=31128;d=a+4|0;f[d>>2]=31144;e=a+36|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Teb(d);Pfb(a,31204);Oeb(c);Zpb(a);return}function YIa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;g=(f[e>>2]|0)+24|0;f[e>>2]=g}else{ZIa(a);g=f[e>>2]|0}e=g+-24|0;i=g+-12|0;a=f[c>>2]|0;a:do if((a|0)==(d|0))h=d;else while(1){h=(Edb(b[a>>0]|0)|0)<<24;if(!((h|0)==1593835520|(h+-1610612737|0)>>>0<452984831)){h=a;break a}f[c>>2]=a+1;qqb(e,b[a>>0]|0);a=f[c>>2]|0;if((a|0)==(d|0)){h=d;break}}while(0);a=b[e+11>>0]|0;if(a<<24>>24<0)a=f[g+-20>>2]|0;else a=a&255;if((a|0)==0|(h|0)==(d|0)){c=0;return c|0}a=h+1|0;f[c>>2]=a;if((b[h>>0]|0)!=61){c=0;return c|0}e=_Ia(a,d,i)|0;f[c>>2]=e;if((e|0)==0|(e|0)==(d|0)){c=0;return c|0}a=b[e>>0]|0;if(a<<24>>24==32){f[c>>2]=e+1;c=1;return c|0}else{c=a<<24>>24==62;return c|0}return 0}function ZIa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;k=f[l>>2]|0;d=f[a>>2]|0;i=(k-d|0)/24|0;e=i+1|0;c=d;g=k;if(e>>>0>178956970)fob(a);m=a+8|0;d=((f[m>>2]|0)-d|0)/24|0;h=d<<1;h=d>>>0<89478485?(h>>>0<e>>>0?e:h):178956970;do if(!h)j=0;else if(h>>>0>178956970)ud();else{j=Wpb(h*24|0)|0;break}while(0);d=j+(i*24|0)|0;e=d;h=j+(h*24|0)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;i=d+24|0;if((g|0)==(c|0))g=k;else{do{j=d+-24|0;k=g;g=g+-24|0;f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;j=d+-12|0;k=k+-12|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;d=e+-24|0;e=d}while((g|0)!=(c|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=e;f[l>>2]=i;f[m>>2]=h;e=g;if((c|0)!=(e|0))do{d=c+-12|0;c=c+-24|0;if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function _Ia(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=d+11|0;if((b[e>>0]|0)<0){b[f[d>>2]>>0]=0;f[d+4>>2]=0}else{b[d>>0]=0;b[e>>0]=0}if((a|0)==(c|0)){d=0;return d|0}e=a+1|0;i=b[a>>0]|0;switch(i<<24>>24){case 39:case 34:break;default:{d=0;return d|0}}if((e|0)==(c|0)){d=0;return d|0}a:while(1){a=b[e>>0]|0;b:do if(a<<24>>24==92){a=e+1|0;if((a|0)==(c|0)){e=0;a=29;break a}switch(b[a>>0]|0){case 34:{qqb(d,34);e=a;break b}case 8:{qqb(d,8);e=a;break b}case 12:{qqb(d,12);e=a;break b}case 10:{qqb(d,10);e=a;break b}case 13:{qqb(d,13);e=a;break b}case 9:{qqb(d,9);e=a;break b}case 92:{qqb(d,92);e=a;break b}case 117:{a=e+2|0;if((a|0)==(c|0)){e=0;a=29;break a}h=b[a>>0]|0;a=h<<24>>24;if((h+-48&255)<10)a=a+65488&65535;else{a=Idb(a)|0;if(((a<<24)+-1073741825|0)>>>0>=117440511){e=0;a=29;break a}a=(a&255)+65461|0}if((a&65504)>>>0>=32){e=0;a=29;break a}qqb(d,a&255);g=e+3|0;if((g|0)==(c|0)){e=0;a=29;break a}j=b[g>>0]|0;a=a<<4;h=a&1048560;g=j<<24>>24;if((j+-48&255)<10)a=(g+65488&65535)+(a&65520)|0;else{a=Idb(g)|0;if(((a<<24)+-1073741825|0)>>>0>=117440511){e=0;a=29;break a}a=h+65461+(a&255)|0}if((a&65504)>>>0>=32){e=0;a=29;break a}qqb(d,a&255);g=e+4|0;if((g|0)==(c|0)){e=0;a=29;break a}j=b[g>>0]|0;a=a<<4;h=a&1048560;g=j<<24>>24;if((j+-48&255)<10)a=(g+65488&65535)+(a&65520)|0;else{a=Idb(g)|0;if(((a<<24)+-1073741825|0)>>>0>=117440511){e=0;a=29;break a}a=h+65461+(a&255)|0}if((a&65504)>>>0>=32){e=0;a=29;break a}qqb(d,a&255);e=e+5|0;if((e|0)==(c|0)){e=0;a=29;break a}j=b[e>>0]|0;a=a<<4;h=a&1048560;g=j<<24>>24;if((j+-48&255)<10)a=(g+65488&65535)+(a&65520)|0;else{a=Idb(g)|0;if(((a<<24)+-1073741825|0)>>>0>=117440511){e=0;a=29;break a}a=h+65461+(a&255)|0}if((a&65504)>>>0>=32){e=0;a=29;break a}qqb(d,a&255);break b}default:{e=0;a=29;break a}}}else{if(a<<24>>24==i<<24>>24){a=9;break a}if(a<<24>>24<32){e=0;a=29;break a}qqb(d,a)}while(0);e=e+1|0;if((e|0)==(c|0)){e=0;a=29;break}}if((a|0)==9){j=e+1|0;return j|0}else if((a|0)==29)return e|0;return 0}function $Ia(a){a=a|0;Zpb(a);return}function aJa(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=31224;f[b+4>>2]=f[a+4>>2];return b|0}function bJa(a,b){a=a|0;b=b|0;f[b>>2]=31224;f[b+4>>2]=f[a+4>>2];return}function cJa(a){a=a|0;return}function dJa(a){a=a|0;Zpb(a);return}function eJa(a){a=a|0;ANa(f[(f[a+4>>2]|0)+228>>2]|0);return}function fJa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==146019?a+4|0:0)|0}function gJa(a){a=a|0;return 11024}function hJa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a+144>>2]|0;if(b|0){c=a+148|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-64-b|0)>>>6)<<6);Zpb(b)}b=f[a+128>>2]|0;if(b|0)do{i=b;b=f[b>>2]|0;Zpb(i)}while((b|0)!=0);i=a+120|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)Zpb(b);b=f[a+108>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0)Ppb(d);Zpb(c)}while((b|0)!=0);i=a+100|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)Zpb(b);b=f[a+88>>2]|0;if(b|0)do{i=b;b=f[b>>2]|0;Zpb(i)}while((b|0)!=0);i=a+80|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)Zpb(b);b=f[a+68>>2]|0;if(b|0)do{i=b;b=f[b>>2]|0;g=i+16|0;c=f[g>>2]|0;if(c|0){h=i+20|0;d=f[h>>2]|0;if((d|0)!=(c|0)){do{e=d+-16|0;f[h>>2]=e;d=f[d+-12>>2]|0;if(!d)d=e;else{Ppb(d);d=f[h>>2]|0}}while((d|0)!=(c|0));c=f[g>>2]|0}Zpb(c)}Zpb(i)}while((b|0)!=0);i=a+60|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)Zpb(b);b=f[a+44>>2]|0;if(b|0)Ppb(b);b=f[a+20>>2]|0;if(b|0)Ppb(b);b=f[a+8>>2]|0;if(!b)return;Ppb(b);return}function iJa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function jJa(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=30880;c=Wpb(160)|0;f[c>>2]=b;f[c+4>>2]=f[b+220>>2];b=f[b+224>>2]|0;f[c+8>>2]=b;if(b|0)Npb(b);kSa(c+12|0,34962,4194304,262144);kSa(c+36|0,34963,4194304,262144);b=c+60|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[c+76>>2]=1.0;b=c+80|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[c+96>>2]=1.0;b=c+100|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[c+116>>2]=1.0;b=c+120|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[c+136>>2]=1.0;f[c+144>>2]=0;f[c+148>>2]=0;f[c+152>>2]=0;UHa(c);f[a+4>>2]=c;return}function kJa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;a=i+8|0;h=i;f[a>>2]=c;f[a+4>>2]=d;Vva(h,f[b+220>>2]|0,a,e,g);if(f[h>>2]|0){g=f[b+232>>2]|0;wh[f[(f[g>>2]|0)+16>>2]&127](g,a,0)}a=f[h+4>>2]|0;if(!a){u=i;return}Ppb(a);u=i;return}function lJa(a){a=a|0;var c=0,d=0,e=0,g=0;f[a>>2]=31268;c=f[a+2948>>2]|0;if(c|0)do{e=c;c=f[c>>2]|0;d=f[e+28>>2]|0;if(d|0)do{g=d;d=f[d>>2]|0;Zpb(g)}while((d|0)!=0);g=e+20|0;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Zpb(d);Zpb(e)}while((c|0)!=0);g=a+2940|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Zpb(c);c=f[a+2648>>2]|0;if(c|0){d=a+2652|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-64-c|0)>>>6)<<6);Zpb(c)}c=f[a+2636>>2]|0;if(c|0){d=a+2640|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}g=a+2632|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=a+100|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+88|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+40|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+12|0;if((b[c+11>>0]|0)>=0)return;Zpb(f[c>>2]|0);return}function mJa(a){a=a|0;lJa(a);Zpb(a);return}function nJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0,J=0,K=0.0,M=0.0;D=u;u=u+1136|0;C=D+1080|0;d=D+1072|0;z=D+48|0;o=D+1112|0;q=D;A=Leb()|0;B=I;d2a(o);m=ENa(uva(c)|0)|0;x=Iga(m)|0;p[a+2664>>3]=+p[x>>3];p[a+2672>>3]=+p[x+8>>3];p[a+2680>>3]=+p[x+16>>3];p[a+2688>>3]=+p[x+24>>3];p[a+2696>>3]=+p[x+32>>3];p[a+2704>>3]=+p[x+40>>3];p[a+2712>>3]=+p[x+48>>3];p[a+2720>>3]=+p[x+56>>3];p[a+2728>>3]=+p[x+64>>3];p[a+2736>>3]=+p[x+72>>3];p[a+2744>>3]=+p[x+80>>3];p[a+2752>>3]=+p[x+88>>3];p[a+2760>>3]=+p[x+96>>3];p[a+2768>>3]=+p[x+104>>3];p[a+2776>>3]=+p[x+112>>3];p[a+2784>>3]=+p[x+120>>3];E=+p[m+32>>3];x=a+2792|0;p[x>>3]=E;g=+p[m+40>>3];y=a+2800|0;p[y>>3]=g;i=+p[m+48>>3];r=a+2808|0;p[r>>3]=i;G=+p[m+56>>3];s=a+2816|0;p[s>>3]=G;F=+p[m+64>>3];t=a+2824|0;p[t>>3]=F;j=+p[m+72>>3];v=a+2832|0;p[v>>3]=j;E=G-E;g=F-g;i=j-i;j=+L(+(E*E+(g*g+i*i)));p[a+2880>>3]=E/j;p[a+2888>>3]=g/j;p[a+2896>>3]=i/j;w=a+2848|0;b[w>>0]=b[m>>0]|0;n[a+2840>>2]=+n[o+8>>2]-+n[o>>2];n[a+2844>>2]=+n[o+12>>2]-+n[o+4>>2];if(zka(c,q)|0){e=q;k=q+32|0;l=q+8|0;m=q+40|0;o=q+16|0;d=q+24|0}else{p[q>>3]=-1.0;l=q+8|0;p[l>>3]=-1.0;o=q+16|0;p[o>>3]=-1.0;H=q+24|0;p[H>>3]=1.0;k=q+32|0;p[k>>3]=1.0;m=q+40|0;p[m>>3]=1.0;pdb(z,1024,148913,d)|0;e=FIa(212344,z,cdb(z)|0)|0;_fb(d,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);J=Chb(d,213216)|0;J=Pg[f[(f[J>>2]|0)+28>>2]&255](J,10)|0;Dhb(d);rgb(e,J)|0;dgb(e)|0;e=q;d=H}F=+p[d>>3]-+p[e>>3];p[z>>3]=F;J=z+8|0;g=+p[k>>3]-+p[l>>3];p[J>>3]=g;G=+p[m>>3]-+p[o>>3];p[z+16>>3]=G;g=F<g?+p[J>>3]:+p[z>>3];g=g<G?G:g;p[a+2904>>3]=g;switch(b[w>>0]|0){case 1:{F=g*1.0e10;K=+p[s>>3];i=+p[x>>3]-K;E=+p[t>>3];G=+p[y>>3]-E;M=+p[v>>3];j=+p[r>>3]-M;g=+L(+(i*i+(G*G+j*j)));j=M+F*(j/g);i=K+F*(i/g);g=E+F*(G/g);break}case 0:{j=+p[r>>3];i=+p[x>>3];g=+p[y>>3];break}default:{J=mgb(FIa(212344,148952,40)|0,h[w>>0]|0)|0;_fb(z,J+(f[(f[J>>2]|0)+-12>>2]|0)|0);H=Chb(z,213216)|0;H=Pg[f[(f[H>>2]|0)+28>>2]&255](H,10)|0;Dhb(z);rgb(J,H)|0;dgb(J)|0;j=+p[r>>3];i=+p[x>>3];g=+p[y>>3]}}p[a+2856>>3]=i;p[a+2864>>3]=g;p[a+2872>>3]=j;RKa(a,c);d=Leb()|0;e=I;if(!(b[a+121>>0]|0)){u=D;return}y=wrb(d|0,e|0,A|0,B|0)|0;y=zrb(y|0,I|0,1e6,0)|0;c=f[a+2928>>2]|0;A=f[a+2932>>2]|0;B=f[a+2920>>2]|0;H=f[a+2924>>2]|0;J=f[a+2936>>2]|0;a=C;f[a>>2]=y;f[a+4>>2]=I;f[C+8>>2]=c;f[C+12>>2]=A;f[C+16>>2]=B;f[C+20>>2]=H;f[C+24>>2]=J;pdb(z,1024,148993,C)|0;J=FIa(212344,z,cdb(z)|0)|0;_fb(C,J+(f[(f[J>>2]|0)+-12>>2]|0)|0);H=Chb(C,213216)|0;H=Pg[f[(f[H>>2]|0)+28>>2]&255](H,10)|0;Dhb(C);rgb(J,H)|0;dgb(J)|0;u=D;return}function oJa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;d=Leb()|0;c=a+2912|0;f[c>>2]=d;f[c+4>>2]=I;c=a+8|0;d=Wpb(148)|0;f[d>>2]=c;g=d+4|0;h=d+60|0;i=d+8|0;f[g>>2]=10948;f[h>>2]=10968;Yfb(h,i);f[d+132>>2]=0;f[d+136>>2]=-1;f[g>>2]=31108;f[h>>2]=31128;agb(i);f[i>>2]=31144;h=d+40|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[d+56>>2]=16;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;DIa(i,e);if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);i=Wpb(272)|0;f[e>>2]=d;rJa(i,e,a+2664|0,a+2636|0,a+2648|0,a+2940|0,c);h=f[e>>2]|0;f[e>>2]=0;if(h|0){c=h+4|0;f[c>>2]=31108;d=h+60|0;f[d>>2]=31128;e=h+8|0;f[e>>2]=31144;g=h+40|0;if((b[g+11>>0]|0)<0)Zpb(f[g>>2]|0);Teb(e);Pfb(c,31204);Oeb(d);Zpb(h)}c=a+2632|0;d=f[c>>2]|0;f[c>>2]=i;if(!d){a=f[i>>2]|0;a=a+8|0;a=f[a>>2]|0;fh[a&2047](i);u=j;return}fh[f[(f[d>>2]|0)+4>>2]&2047](d);i=f[c>>2]|0;a=f[i>>2]|0;a=a+8|0;a=f[a>>2]|0;fh[a&2047](i);u=j;return}function pJa(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;e=Leb()|0;e=vrb(e|0,I|0,1e9,0)|0;d=c;f[d>>2]=e;f[d+4>>2]=I;a=f[a+2632>>2]|0;a=Pg[f[(f[a>>2]|0)+12>>2]&255](a,c)|0;u=b;return a|0}function qJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+1040|0;e=g;d=g+8|0;h=c+2632|0;i=f[h>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](a,i);a=f[h>>2]|0;f[h>>2]=0;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);if(!(b[c+121>>0]|0)){u=g;return}h=Leb()|0;i=c+2912|0;i=wrb(h|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=zrb(i|0,I|0,1e6,0)|0;p[e>>3]=(+(i>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(d,1024,146339,e)|0;i=FIa(212344,d,cdb(d)|0)|0;_fb(e,i+(f[(f[i>>2]|0)+-12>>2]|0)|0);h=Chb(e,213216)|0;h=Pg[f[(f[h>>2]|0)+28>>2]&255](h,10)|0;Dhb(e);rgb(i,h)|0;dgb(i)|0;u=g;return}function rJa(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;f[a>>2]=31300;f[a+4>>2]=i;f[a+8>>2]=d;m=f[c>>2]|0;f[c>>2]=0;f[a+12>>2]=m;m=a+16|0;f[m>>2]=1e3;f[m+4>>2]=0;m=Leb()|0;m=vrb(m|0,I|0,1e9,0)|0;j=a+24|0;f[j>>2]=m;f[j+4>>2]=I;j=Leb()|0;m=a+32|0;f[m>>2]=j;f[m+4>>2]=I;m=a+40|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;b[m+12>>0]=0;m=f[h>>2]|0;f[h>>2]=0;j=h+4|0;i=f[j>>2]|0;f[j>>2]=0;f[a+56>>2]=m;f[a+60>>2]=i;j=a+64|0;k=h+8|0;c=f[k>>2]|0;f[j>>2]=c;l=h+12|0;d=f[l>>2]|0;f[a+68>>2]=d;f[a+72>>2]=f[h+16>>2];h=m;if(d|0){c=f[c+4>>2]|0;d=i+-1|0;if(!(d&i))c=c&d;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;f[h+(c<<2)>>2]=j;f[k>>2]=0;f[l>>2]=0}i=a+80|0;c=a+164|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;i=a+104|0;h=i+60|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(h|0));n[c>>2]=1.0;c=a+212|0;f[c>>2]=0;d=a+216|0;f[d>>2]=0;f[a+220>>2]=0;i=a+168|0;h=i+40|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(h|0));f[c>>2]=f[e>>2];i=e+4|0;f[d>>2]=f[i>>2];h=e+8|0;f[a+220>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[e>>2]=0;i=a+224|0;f[i>>2]=0;h=a+228|0;f[h>>2]=0;f[a+232>>2]=0;f[i>>2]=f[g>>2];i=g+4|0;f[h>>2]=f[i>>2];h=g+8|0;f[a+232>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[g>>2]=0;i=a+236|0;h=i+36|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(h|0));return}function sJa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f[a>>2]=31300;c=f[a+260>>2]|0;if(c|0){d=a+264|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}c=f[a+248>>2]|0;if(c|0){d=a+252|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=f[a+236>>2]|0;if(c|0){d=a+240|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-24-c|0)>>>0)/24|0)*24|0);Zpb(c)}c=f[a+224>>2]|0;if(c|0){d=a+228|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-64-c|0)>>>6)<<6);Zpb(c)}c=f[a+212>>2]|0;if(c|0){d=a+216|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}h=a+196|0;c=f[h>>2]|0;if(c|0){i=a+200|0;d=f[i>>2]|0;if((d|0)!=(c|0)){do{e=d+-12|0;f[i>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[i>>2]|0}}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}k=a+184|0;c=f[k>>2]|0;if(c|0){l=a+188|0;d=f[l>>2]|0;if((d|0)!=(c|0)){e=d;while(1){j=e+-12|0;f[l>>2]=j;d=f[j>>2]|0;if(!d)d=j;else{i=e+-8|0;e=f[i>>2]|0;if((e|0)!=(d|0)){do{g=e+-12|0;f[i>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~((g+-8-h|0)>>>3)<<3);Zpb(h);e=f[i>>2]|0}}while((e|0)!=(d|0));d=f[j>>2]|0}Zpb(d);d=f[l>>2]|0}if((d|0)==(c|0))break;else e=d}c=f[k>>2]|0}Zpb(c)}o=a+148|0;SJa(o,f[a+156>>2]|0);c=f[o>>2]|0;f[o>>2]=0;if(c|0)Zpb(c);o=a+136|0;c=f[o>>2]|0;f[o>>2]=0;if(c|0){d=f[c>>2]|0;f[c>>2]=0;if(d|0){KJa(d);Zpb(d)}Zpb(c)}n=a+96|0;o=f[n>>2]|0;f[n>>2]=0;if(o|0){m=o+4|0;c=f[m>>2]|0;l=o+16|0;d=f[l>>2]|0;g=c+(d>>>9<<2)|0;n=o+8|0;e=f[n>>2]|0;h=e;i=c;if((e|0)==(c|0)){j=0;k=o+20|0;d=0}else{k=o+20|0;j=(f[k>>2]|0)+d|0;j=(f[c+(j>>>9<<2)>>2]|0)+((j&511)<<3)|0;d=(f[g>>2]|0)+((d&511)<<3)|0}a:while(1){do{if((j|0)==(d|0))break a;d=d+8|0}while((d-(f[g>>2]|0)|0)!=4096);d=g+4|0;g=d;d=f[d>>2]|0}f[k>>2]=0;d=h-i>>2;if(d>>>0>2)do{Zpb(f[c>>2]|0);c=(f[m>>2]|0)+4|0;f[m>>2]=c;e=f[n>>2]|0;d=e-c>>2}while(d>>>0>2);switch(d|0){case 1:{d=256;p=64;break}case 2:{d=512;p=64;break}default:{}}if((p|0)==64)f[l>>2]=d;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[m>>2]|0;d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[o>>2]|0;if(c|0)Zpb(c);Zpb(o)}p=a+92|0;h=f[p>>2]|0;f[p>>2]=0;if(h|0){c=f[h+24>>2]|0;if(c|0){d=h+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}CJa(h);d=h+4|0;c=f[d>>2]|0;g=h+8|0;e=f[g>>2]|0;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[d>>2]|0;d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[h>>2]|0;if(c|0)Zpb(c);Zpb(h)}p=a+88|0;c=f[p>>2]|0;f[p>>2]=0;if(c|0){NLa(c);Zpb(c)}c=f[a+64>>2]|0;if(c|0)do{e=c;c=f[c>>2]|0;d=f[e+28>>2]|0;if(d|0)do{p=d;d=f[d>>2]|0;Zpb(p)}while((d|0)!=0);p=e+20|0;d=f[p>>2]|0;f[p>>2]=0;if(d|0)Zpb(d);Zpb(e)}while((c|0)!=0);p=a+56|0;c=f[p>>2]|0;f[p>>2]=0;if(c|0)Zpb(c);a=a+12|0;c=f[a>>2]|0;f[a>>2]=0;if(!c)return;d=c+4|0;f[d>>2]=31108;e=c+60|0;f[e>>2]=31128;g=c+8|0;f[g>>2]=31144;h=c+40|0;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);Teb(g);Pfb(d,31204);Oeb(e);Zpb(c);return}function tJa(a){a=a|0;sJa(a);Zpb(a);return}function uJa(a){a=a|0;b[a+52>>0]=0;f[a+44>>2]=787;f[a+48>>2]=0;return}function vJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+44|0;g=a+48|0;h=a+52|0;do{d=f[e>>2]|0;k=f[g>>2]|0;i=a+(k>>1)|0;if(k&1)d=f[(f[i>>2]|0)+d>>2]|0;nh[d&1023](i,c);if(b[h>>0]|0){d=1;j=8;break}i=Leb()|0;l=I;k=c;d=f[k+4>>2]|0}while((l|0)<(d|0)|((l|0)==(d|0)?i>>>0<(f[k>>2]|0)>>>0:0));if((j|0)==8)return d|0;l=(b[h>>0]|0)!=0;return l|0}function wJa(a,b){a=a|0;b=b|0;EIa(a,(f[b+12>>2]|0)+8|0);return}function xJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0;x=u;u=u+1072|0;t=x+44|0;w=x+8|0;d=x;v=x+48|0;r=x+24|0;s=a+4|0;c=f[s>>2]|0;if(!(b[c+16>>0]|0)){if(!(b[c+112>>0]|0)){w=a+44|0;f[w>>2]=788;a=a+48|0;f[a>>2]=0;u=x;return}pdb(v,1024,146382,d)|0;w=FIa(212344,v,cdb(v)|0)|0;_fb(t,w+(f[(f[w>>2]|0)+-12>>2]|0)|0);v=Chb(t,213216)|0;v=Pg[f[(f[v>>2]|0)+28>>2]&255](v,10)|0;Dhb(t);rgb(w,v)|0;dgb(w)|0;w=a+44|0;f[w>>2]=788;a=a+48|0;f[a>>2]=0;u=x;return}o=Leb()|0;q=a+32|0;d=q;f[d>>2]=o;f[d+4>>2]=I;y=+p[(f[a+8>>2]|0)+240>>3]*1.0e-08;p[a+80>>3]=y<1.0e-06?y:1.0e-06;d=f[a+64>>2]|0;if(!d)g=0;else{l=a+228|0;m=a+232|0;o=a+224|0;c=0;do{e=d;k=e+8|0;e=f[e+28>>2]|0;if(e)do{g=e;if(zJa(a,g+64|0)|0){h=g+8|0;i=g+32|0;j=f[l>>2]|0;if(j>>>0<(f[m>>2]|0)>>>0){p[j>>3]=+p[h>>3];p[j+8>>3]=+p[g+16>>3];p[j+16>>3]=+p[g+24>>3];p[j+24>>3]=+p[i>>3];p[j+32>>3]=+p[g+40>>3];p[j+40>>3]=+p[g+48>>3];j=j+48|0;f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[l>>2]=(f[l>>2]|0)+64}else AJa(o,h,i,k);c=c+1|0}e=f[e>>2]|0}while((e|0)!=0);d=f[d>>2]|0}while((d|0)!=0);g=c}f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;n[r+16>>2]=1.0;b[t>>0]=b[v>>0]|0;yJa(a+56|0,r,t);c=f[r+8>>2]|0;if(c|0)do{e=c;c=f[c>>2]|0;d=f[e+28>>2]|0;if(d|0)do{o=d;d=f[d>>2]|0;Zpb(o)}while((d|0)!=0);o=e+20|0;d=f[o>>2]|0;f[o>>2]=0;if(d|0)Zpb(d);Zpb(e)}while((c|0)!=0);c=f[r>>2]|0;f[r>>2]=0;if(c|0)Zpb(c);s=f[s>>2]|0;c=Leb()|0;d=I;if(!(b[s+112>>0]|0)){w=a+44|0;f[w>>2]=788;a=a+48|0;f[a>>2]=0;u=x;return}s=q;s=wrb(c|0,d|0,f[s>>2]|0,f[s+4>>2]|0)|0;s=zrb(s|0,I|0,1e6,0)|0;f[w>>2]=g;p[w+8>>3]=(+(s>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(v,1024,146408,w)|0;w=FIa(212344,v,cdb(v)|0)|0;_fb(t,w+(f[(f[w>>2]|0)+-12>>2]|0)|0);v=Chb(t,213216)|0;v=Pg[f[(f[v>>2]|0)+28>>2]&255](v,10)|0;Dhb(t);rgb(w,v)|0;dgb(w)|0;w=a+44|0;f[w>>2]=788;a=a+48|0;f[a>>2]=0;u=x;return}function yJa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+12|0;if(f[h>>2]|0){g=a+8|0;c=f[g>>2]|0;if(c|0)do{e=c;c=f[c>>2]|0;d=f[e+28>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);i=e+20|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0)Zpb(d);Zpb(e)}while((c|0)!=0);f[g>>2]=0;d=f[a+4>>2]|0;if(d|0){c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}i=f[b>>2]|0;f[b>>2]=0;c=f[a>>2]|0;f[a>>2]=i;if(c|0)Zpb(c);i=b+4|0;d=a+4|0;f[d>>2]=f[i>>2];f[i>>2]=0;i=b+12|0;e=f[i>>2]|0;f[h>>2]=e;f[a+16>>2]=f[b+16>>2];g=b+8|0;c=f[g>>2]|0;h=a+8|0;f[h>>2]=c;if(!e)return;c=f[c+4>>2]|0;d=f[d>>2]|0;e=d+-1|0;if(!(e&d))c=e&c;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=h;f[g>>2]=0;f[i>>2]=0;return}function zJa(a,c){a=a|0;c=c|0;var d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0;if((f[c+144>>2]|0)==1){a=1;return a|0}q=+p[c+32>>3];k=+p[c+8>>3];t=q-k;s=+p[c+40>>3];i=+p[c+64>>3]-s;d=+p[c+16>>3];s=s-d;q=+p[c+56>>3]-q;g=t*i-s*q;l=+p[c+24>>3];j=+p[c+48>>3]-l;h=+p[c>>3];l=l-h;i=s*j-i*l;j=q*l-t*j;t=+p[c+104>>3];l=+p[c+80>>3];q=t-l;s=+p[c+112>>3];r=+p[c+136>>3]-s;n=+p[c+88>>3];s=s-n;t=+p[c+128>>3]-t;o=+p[c+96>>3];u=+p[c+120>>3]-o;m=+p[c+72>>3];o=o-m;c=f[a+8>>2]|0;if((b[c+184>>0]|0)==1){n=+p[c+216>>3];h=+p[c+224>>3];d=+p[c+232>>3];i=g*n+(i*h+j*d);g=n}else{w=+p[c+192>>3];x=+p[c+200>>3];v=+p[c+208>>3];i=g*(h-w)+(i*(k-x)+j*(d-v));h=l-x;g=m-w;d=n-v}d=(q*r-s*t)*g+((t*o-q*u)*d+(s*u-r*o)*h);if(!(i>=0.0)){x=+K(+(0.0-i));e=x<+p[a+80>>3]&1}else e=1;if(!(d>=0.0)){x=+K(+(0.0-d));c=x<+p[a+80>>3]&1}else c=1;a=(e|0)!=(c|0);return a|0}function AJa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;q=a+4|0;e=f[q>>2]|0;g=f[a>>2]|0;k=e-g>>6;i=k+1|0;n=g;h=e;if(i>>>0>67108863)fob(a);o=a+8|0;l=(f[o>>2]|0)-g|0;m=l>>5;i=l>>6>>>0<33554431?(m>>>0<i>>>0?i:m):67108863;do if(!i)j=0;else if(i>>>0>67108863)ud();else{j=Wpb(i<<6)|0;break}while(0);l=j+(k<<6)|0;g=l;m=j+(i<<6)|0;p[l>>3]=+p[b>>3];p[j+(k<<6)+8>>3]=+p[b+8>>3];p[j+(k<<6)+16>>3]=+p[b+16>>3];p[j+(k<<6)+24>>3]=+p[c>>3];p[j+(k<<6)+32>>3]=+p[c+8>>3];p[j+(k<<6)+40>>3]=+p[c+16>>3];i=j+(k<<6)+48|0;f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];f[i+8>>2]=f[d+8>>2];i=l+64|0;if((h|0)!=(n|0)){e=l;do{k=h;h=h+-64|0;p[e+-64>>3]=+p[h>>3];p[e+-56>>3]=+p[k+-56>>3];p[e+-48>>3]=+p[k+-48>>3];p[e+-40>>3]=+p[k+-40>>3];p[e+-32>>3]=+p[k+-32>>3];p[e+-24>>3]=+p[k+-24>>3];l=e+-16|0;k=k+-16|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];e=g+-64|0;g=e}while((h|0)!=(n|0));e=f[a>>2]|0}f[a>>2]=g;f[q>>2]=i;f[o>>2]=m;if(!e)return;Zpb(e);return}function BJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+1040|0;h=i;e=i+8|0;d=Leb()|0;g=a+32|0;f[g>>2]=d;f[g+4>>2]=I;g=a+4|0;MLa(e,f[g>>2]|0,f[a+8>>2]|0);d=a+88|0;j=f[e>>2]|0;f[e>>2]=0;c=f[d>>2]|0;f[d>>2]=j;if(!c)f[e>>2]=0;else{NLa(c);Zpb(c);c=f[e>>2]|0;f[e>>2]=0;if(c|0){NLa(c);Zpb(c)}}if(b[(f[g>>2]|0)+112>>0]|0){p[h>>3]=+p[(f[d>>2]|0)+32>>3];pdb(e,1024,146459,h)|0;j=FIa(212344,e,cdb(e)|0)|0;_fb(h,j+(f[(f[j>>2]|0)+-12>>2]|0)|0);g=Chb(h,213216)|0;g=Pg[f[(f[g>>2]|0)+28>>2]&255](g,10)|0;Dhb(h);rgb(j,g)|0;dgb(j)|0}j=a+212|0;g=Wpb(136)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=f[j>>2];h=a+216|0;f[g+28>>2]=f[h>>2];e=a+220|0;f[g+32>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=0;f[j>>2]=0;f[g+36>>2]=0;f[g+112>>2]=0;f[g+116>>2]=0;f[g+120>>2]=0;b[g+128>>0]=0;j=a+92|0;h=f[j>>2]|0;f[j>>2]=g;if(!h){h=Leb()|0;e=I;g=a+16|0;j=g;j=f[j>>2]|0;g=g+4|0;g=f[g>>2]|0;g=Brb(j|0,g|0,1e6,0)|0;j=I;e=vrb(g|0,j|0,h|0,e|0)|0;h=I;j=a+24|0;g=j;f[g>>2]=e;j=j+4|0;f[j>>2]=h;j=a+44|0;f[j>>2]=789;j=a+48|0;f[j>>2]=0;u=i;return}c=f[h+24>>2]|0;if(c|0){d=h+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}CJa(h);d=h+4|0;c=f[d>>2]|0;g=h+8|0;e=f[g>>2]|0;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[d>>2]|0;d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[h>>2]|0;if(c|0)Zpb(c);Zpb(h);h=Leb()|0;e=I;g=a+16|0;j=g;j=f[j>>2]|0;g=g+4|0;g=f[g>>2]|0;g=Brb(j|0,g|0,1e6,0)|0;j=I;e=vrb(g|0,j|0,h|0,e|0)|0;h=I;j=a+24|0;g=j;f[g>>2]=e;j=j+4|0;f[j>>2]=h;j=a+44|0;f[j>>2]=789;j=a+48|0;f[j>>2]=0;u=i;return}function CJa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+4|0;b=f[i>>2]|0;k=a+16|0;c=f[k>>2]|0;d=b+(c>>>8<<2)|0;j=a+8|0;if((f[j>>2]|0)==(b|0)){h=0;g=a+20|0;b=0}else{g=a+20|0;h=c+(f[g>>2]|0)|0;h=(f[b+(h>>>8<<2)>>2]|0)+((h&255)<<4)|0;b=(f[d>>2]|0)+((c&255)<<4)|0}e=d;a:while(1){do{if((h|0)==(b|0))break a;a=f[b+4>>2]|0;if(a|0){c=b+8|0;d=f[c>>2]|0;if((d|0)!=(a|0))f[c>>2]=d+(~(((d+-88-a|0)>>>0)/88|0)*88|0);Zpb(a)}b=b+16|0}while((b-(f[e>>2]|0)|0)!=4096);b=e+4|0;e=b;b=f[b>>2]|0}f[g>>2]=0;a=f[i>>2]|0;b=(f[j>>2]|0)-a>>2;if(b>>>0>2)do{Zpb(f[a>>2]|0);a=(f[i>>2]|0)+4|0;f[i>>2]=a;b=(f[j>>2]|0)-a>>2}while(b>>>0>2);switch(b|0){case 1:{b=128;break}case 2:{b=256;break}default:return}f[k>>2]=b;return}function DJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+1088|0;i=n+48|0;k=n+40|0;h=n+16|0;e=n;m=n+64|0;j=a+88|0;l=a+92|0;o=PLa(f[j>>2]|0,f[l>>2]|0,c)|0;g=a+4|0;d=f[g>>2]|0;c=(b[d+112>>0]|0)!=0;if(!o){if(!c){u=n;return}d=Leb()|0;e=I;c=a+24|0;o=c;l=f[o+4>>2]|0;if(!((l|0)<(e|0)|((l|0)==(e|0)?(f[o>>2]|0)>>>0<d>>>0:0))){u=n;return}o=a+16|0;o=Brb(f[o>>2]|0,f[o+4>>2]|0,1e6,0)|0;o=vrb(o|0,I|0,d|0,e|0)|0;a=c;f[a>>2]=o;f[a+4>>2]=I;a=f[j>>2]|0;o=f[a+24>>2]|0;a=f[a+8>>2]|0;f[i>>2]=a;f[i+4>>2]=o;p[i+8>>3]=+(a>>>0)/+(o>>>0)*100.0;pdb(m,1024,146494,i)|0;o=FIa(212344,m,cdb(m)|0)|0;_fb(i,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);a=Chb(i,213216)|0;a=Pg[f[(f[a>>2]|0)+28>>2]&255](a,10)|0;Dhb(i);rgb(o,a)|0;dgb(o)|0;u=n;return}if(c){o=f[j>>2]|0;d=f[o+24>>2]|0;o=f[o+8>>2]|0;f[e>>2]=o;f[e+4>>2]=d;p[e+8>>3]=+(o>>>0)/+(d>>>0)*100.0;pdb(m,1024,146494,e)|0;d=FIa(212344,m,cdb(m)|0)|0;_fb(e,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);o=Chb(e,213216)|0;o=Pg[f[(f[o>>2]|0)+28>>2]&255](o,10)|0;Dhb(e);rgb(d,o)|0;dgb(d)|0;d=f[g>>2]|0}c=f[j>>2]|0;if(b[d+113>>0]|0){i=f[c+8>>2]|0;j=f[c+12>>2]|0;o=f[c+16>>2]|0;d=f[c+20>>2]|0;f[h>>2]=f[c+4>>2];f[h+4>>2]=i;f[h+8>>2]=j;f[h+12>>2]=o;f[h+16>>2]=d;pdb(m,1024,146547,h)|0;d=FIa(212344,m,cdb(m)|0)|0;_fb(h,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);o=Chb(h,213216)|0;o=Pg[f[(f[o>>2]|0)+28>>2]&255](o,10)|0;Dhb(h);rgb(d,o)|0;dgb(d)|0;d=f[g>>2]|0}c=Leb()|0;if(b[d+112>>0]|0){o=a+32|0;o=wrb(c|0,I|0,f[o>>2]|0,f[o+4>>2]|0)|0;o=zrb(o|0,I|0,1e6,0)|0;p[k>>3]=(+(o>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(m,1024,146624,k)|0;o=FIa(212344,m,cdb(m)|0)|0;_fb(k,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);m=Chb(k,213216)|0;m=Pg[f[(f[m>>2]|0)+28>>2]&255](m,10)|0;Dhb(k);rgb(o,m)|0;dgb(o)|0}h=f[l>>2]|0;f[l>>2]=0;if(h|0){c=f[h+24>>2]|0;if(c|0){d=h+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~(((e+-88-c|0)>>>0)/88|0)*88|0);Zpb(c)}CJa(h);d=h+4|0;c=f[d>>2]|0;g=h+8|0;e=f[g>>2]|0;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[d>>2]|0;d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[h>>2]|0;if(c|0)Zpb(c);Zpb(h)}f[a+44>>2]=790;f[a+48>>2]=0;u=n;return}function EJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+1040|0;e=h+1024|0;g=h;d=a+4|0;c=f[d>>2]|0;if(b[c+112>>0]|0){pdb(g,1024,146652,e)|0;c=FIa(212344,g,cdb(g)|0)|0;_fb(e,c+(f[(f[c>>2]|0)+-12>>2]|0)|0);i=Chb(e,213216)|0;i=Pg[f[(f[i>>2]|0)+28>>2]&255](i,10)|0;Dhb(e);rgb(c,i)|0;dgb(c)|0;c=f[d>>2]|0}e=f[a+12>>2]|0;i=(f[a+8>>2]|0)+176|0;p[g>>3]=-32767.0;p[g+8>>3]=-32767.0;p[g+16>>3]=65534.0;p[g+24>>3]=65534.0;FJa(e,i,g,c+4|0);f[a+44>>2]=791;f[a+48>>2]=0;u=h;return}function FJa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;k=l;f[a+140>>2]=f[c>>2];j=c+4|0;f[a+144>>2]=f[j>>2];g=+n[c>>2];h=+n[j>>2];j=a+4|0;if(b[f[a>>2]>>0]|0){i=FIa(j,148459,54)|0;b[k>>0]=10;FIa(i,k,1)|0}a=FIa(FIa(qgb(FIa(FIa(qgb(FIa(FIa(FIa(FIa(FIa(FIa(FIa(j,148514,4)|0,148519,14)|0,148534,19)|0,148554,35)|0,148590,43)|0,148634,45)|0,148680,8)|0,g)|0,147310,1)|0,148689,9)|0,h)|0,147310,1)|0,148699,10)|0;a=FIa(mgb(a,~~+p[d>>3])|0,147289,1)|0;c=d+8|0;a=FIa(mgb(a,~~+p[c>>3])|0,147289,1)|0;a=FIa(mgb(a,~~+p[d+16>>3])|0,147289,1)|0;a=FIa(FIa(FIa(FIa(mgb(a,~~+p[d+24>>3])|0,147310,1)|0,148710,27)|0,148738,37)|0,147375,1)|0;b[k>>0]=10;FIa(a,k,1)|0;a=e+11|0;m=b[a>>0]|0;i=e+4|0;if(!((m<<24>>24<0?f[i>>2]|0:m&255)|0)){u=l;return}j=FIa(FIa(j,148776,5)|0,148782,4)|0;j=FIa(FIa(mgb(j,~~+p[d>>3])|0,147310,1)|0,148787,4)|0;j=FIa(FIa(FIa(mgb(j,~~+p[c>>3])|0,147310,1)|0,148792,27)|0,147407,7)|0;m=b[a>>0]|0;d=m<<24>>24<0;m=FIa(FIa(FIa(j,d?f[e>>2]|0:e,d?f[i>>2]|0:m&255)|0,147310,1)|0,148820,2)|0;b[k>>0]=10;FIa(m,k,1)|0;u=l;return}function GJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+1040|0;d=r;c=r+8|0;if(b[(f[a+4>>2]|0)+112>>0]|0){pdb(c,1024,146663,d)|0;q=FIa(212344,c,cdb(c)|0)|0;_fb(d,q+(f[(f[q>>2]|0)+-12>>2]|0)|0);n=Chb(d,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(d);rgb(q,n)|0;dgb(q)|0}p[a+104>>3]=1797693134862315708145274.0e284;p[a+112>>3]=-1797693134862315708145274.0e284;m=a+120|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;m=Wpb(64)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;f[m+24>>2]=0;q=m+32|0;n=a+96|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;b[q+24>>0]=0;q=f[n>>2]|0;f[n>>2]=m;if(!q){q=a+44|0;f[q>>2]=792;a=a+48|0;f[a>>2]=0;u=r;return}m=q+4|0;c=f[m>>2]|0;l=q+16|0;d=f[l>>2]|0;g=c+(d>>>9<<2)|0;n=q+8|0;e=f[n>>2]|0;h=e;i=c;if((e|0)==(c|0)){j=0;k=q+20|0;d=0}else{k=q+20|0;j=(f[k>>2]|0)+d|0;j=(f[c+(j>>>9<<2)>>2]|0)+((j&511)<<3)|0;d=(f[g>>2]|0)+((d&511)<<3)|0}a:while(1){do{if((j|0)==(d|0))break a;d=d+8|0}while((d-(f[g>>2]|0)|0)!=4096);d=g+4|0;g=d;d=f[d>>2]|0}f[k>>2]=0;d=h-i>>2;if(d>>>0>2)do{Zpb(f[c>>2]|0);c=(f[m>>2]|0)+4|0;f[m>>2]=c;e=f[n>>2]|0;d=e-c>>2}while(d>>>0>2);switch(d|0){case 1:{d=256;o=17;break}case 2:{d=512;o=17;break}default:{}}if((o|0)==17)f[l>>2]=d;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[m>>2]|0;d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[q>>2]|0;if(c|0)Zpb(c);Zpb(q);q=a+44|0;f[q>>2]=792;a=a+48|0;f[a>>2]=0;u=r;return}function HJa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0.0,v=0.0;s=u;u=u+32|0;r=s;q=r+16|0;f[r>>2]=31328;f[r+4>>2]=a;f[q>>2]=r;c=a+96|0;if(IJa(f[a+88>>2]|0,f[c>>2]|0,r,b)|0){v=+p[a+104>>3];t=(+p[a+112>>3]-v)*.5;p[a+128>>3]=-(v+t);p[a+120>>3]=32767.0/t;o=f[c>>2]|0;f[c>>2]=0;if(o|0){l=o+4|0;b=f[l>>2]|0;k=o+16|0;c=f[k>>2]|0;e=b+(c>>>9<<2)|0;n=o+8|0;d=f[n>>2]|0;g=d;h=b;if((d|0)==(b|0)){i=0;j=o+20|0;c=0}else{j=o+20|0;i=(f[j>>2]|0)+c|0;i=(f[b+(i>>>9<<2)>>2]|0)+((i&511)<<3)|0;c=(f[e>>2]|0)+((c&511)<<3)|0}a:while(1){do{if((i|0)==(c|0))break a;c=c+8|0}while((c-(f[e>>2]|0)|0)!=4096);c=e+4|0;e=c;c=f[c>>2]|0}f[j>>2]=0;c=g-h>>2;if(c>>>0>2)do{Zpb(f[b>>2]|0);b=(f[l>>2]|0)+4|0;f[l>>2]=b;d=f[n>>2]|0;c=d-b>>2}while(c>>>0>2);switch(c|0){case 1:{c=256;m=16;break}case 2:{c=512;m=16;break}default:{}}if((m|0)==16)f[k>>2]=c;if((b|0)!=(d|0)){do{Zpb(f[b>>2]|0);b=b+4|0}while((b|0)!=(d|0));b=f[l>>2]|0;c=f[n>>2]|0;if((c|0)!=(b|0))f[n>>2]=c+(~((c+-4-b|0)>>>2)<<2)}b=f[o>>2]|0;if(b|0)Zpb(b);Zpb(o)}f[a+44>>2]=793;f[a+48>>2]=0}b=f[q>>2]|0;if((r|0)==(b|0)){fh[f[(f[b>>2]|0)+16>>2]&2047](b);u=s;return}if(!b){u=s;return}fh[f[(f[b>>2]|0)+20>>2]&2047](b);u=s;return}function IJa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0;s=c+56|0;if(b[s>>0]|0){t=1;return t|0}t=c+24|0;g=f[t>>2]|0;if(!g){g=f[a>>2]|0;f[t>>2]=g;if(!g){b[s>>0]=1;t=1;return t|0}}o=c+32|0;q=c+40|0;r=c+48|0;j=d+16|0;k=c+20|0;l=c+16|0;m=c+4|0;n=c+8|0;a:while(1){b:do if(!(+p[g+24>>3]+(+p[g>>3]*+p[o>>3]+(+p[g+8>>3]*+p[q>>3]+ +p[g+16>>3]*+p[r>>3]))<0.0)){if(f[g+44>>2]|0){d=f[m>>2]|0;i=(f[n>>2]|0)-d|0;a=f[l>>2]|0;h=f[k>>2]|0;if((((i|0)==0?0:(i<<7)+-1|0)|0)==(h+a|0)){EKa(c);a=f[l>>2]|0;h=f[k>>2]|0;d=f[m>>2]|0}h=h+a|0;i=h&511;h=f[d+(h>>>9<<2)>>2]|0;f[h+(i<<3)>>2]=g;f[h+(i<<3)+4>>2]=1;f[k>>2]=(f[k>>2]|0)+1;g=(f[t>>2]|0)+44|0;i=39;break}a=f[j>>2]|0;if(!a){i=12;break a}nh[f[(f[a>>2]|0)+24>>2]&1023](a,g);g=f[(f[t>>2]|0)+48>>2]|0;if(g|0){f[t>>2]=g;break}g=f[k>>2]|0;if(!g){i=16;break a}while(1){a=g+-1+(f[l>>2]|0)|0;g=f[(f[m>>2]|0)+(a>>>9<<2)>>2]|0;a=a&511;d=g+(a<<3)|0;h=f[j>>2]|0;if(!h){i=18;break a}nh[f[(f[h>>2]|0)+24>>2]&1023](h,f[d>>2]|0);d=f[d>>2]|0;g=f[((f[g+(a<<3)+4>>2]|0)==1?d+48|0:d+44|0)>>2]|0;f[t>>2]=g;d=f[k>>2]|0;f[k>>2]=d+-1;a=f[n>>2]|0;h=a-(f[m>>2]|0)|0;if((1-d-(f[l>>2]|0)+((h|0)==0?0:(h<<7)+-1|0)|0)>>>0>1023){Zpb(f[a+-4>>2]|0);f[n>>2]=(f[n>>2]|0)+-4;g=f[t>>2]|0}if(g|0)break b;g=f[k>>2]|0;if(!g)break a}}else{if(f[g+48>>2]|0){d=f[m>>2]|0;i=(f[n>>2]|0)-d|0;a=f[l>>2]|0;h=f[k>>2]|0;if((((i|0)==0?0:(i<<7)+-1|0)|0)==(h+a|0)){EKa(c);a=f[l>>2]|0;h=f[k>>2]|0;d=f[m>>2]|0}h=h+a|0;i=h&511;h=f[d+(h>>>9<<2)>>2]|0;f[h+(i<<3)>>2]=g;f[h+(i<<3)+4>>2]=0;f[k>>2]=(f[k>>2]|0)+1;g=(f[t>>2]|0)+48|0;i=39;break}a=f[j>>2]|0;if(!a){i=28;break a}nh[f[(f[a>>2]|0)+24>>2]&1023](a,g);g=f[(f[t>>2]|0)+44>>2]|0;if(g|0){f[t>>2]=g;break}g=f[k>>2]|0;if(!g){i=32;break a}while(1){a=g+-1+(f[l>>2]|0)|0;g=f[(f[m>>2]|0)+(a>>>9<<2)>>2]|0;a=a&511;d=g+(a<<3)|0;h=f[j>>2]|0;if(!h){i=34;break a}nh[f[(f[h>>2]|0)+24>>2]&1023](h,f[d>>2]|0);d=f[d>>2]|0;g=f[((f[g+(a<<3)+4>>2]|0)==1?d+48|0:d+44|0)>>2]|0;f[t>>2]=g;d=f[k>>2]|0;f[k>>2]=d+-1;a=f[n>>2]|0;h=a-(f[m>>2]|0)|0;if((1-d-(f[l>>2]|0)+((h|0)==0?0:(h<<7)+-1|0)|0)>>>0>1023){Zpb(f[a+-4>>2]|0);f[n>>2]=(f[n>>2]|0)+-4;g=f[t>>2]|0}if(g|0)break b;g=f[k>>2]|0;if(!g)break a}}while(0);if((i|0)==39){i=0;h=f[g>>2]|0;f[t>>2]=h;if(!h)break}d=Leb()|0;u=I;h=e;a=f[h+4>>2]|0;g=f[t>>2]|0;if(!((u|0)<(a|0)|((u|0)==(a|0)?d>>>0<(f[h>>2]|0)>>>0:0))){i=41;break}}if((i|0)==12)ud();else if((i|0)==16)f[t>>2]=0;else if((i|0)==18)ud();else if((i|0)==28)ud();else if((i|0)==32)f[t>>2]=0;else if((i|0)==34)ud();else if((i|0)==41)if(g|0){u=0;return u|0}b[s>>0]=1;u=1;return u|0}function JJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=u;u=u+1040|0;e=r;c=r+8|0;d=a+4|0;if(b[(f[d>>2]|0)+112>>0]|0){f[e>>2]=f[(f[a+88>>2]|0)+8>>2];pdb(c,1024,146686,e)|0;o=FIa(212344,c,cdb(c)|0)|0;_fb(e,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);n=Chb(e,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(e);rgb(o,n)|0;dgb(o)|0}e=Leb()|0;c=a+32|0;f[c>>2]=e;f[c+4>>2]=I;d=f[d>>2]|0;c=Wpb(88)|0;f[c>>2]=0;f[c+4>>2]=-32767;f[c+8>>2]=-32767;f[c+12>>2]=32767;f[c+16>>2]=32767;f[c+20>>2]=200;f[c+24>>2]=0;f[c+28>>2]=0;f[c+32>>2]=-1;e=c+36|0;g=e+48|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[c+84>>2]=d;d=a+136|0;e=f[d>>2]|0;f[d>>2]=c;if(e){c=f[e>>2]|0;f[e>>2]=0;if(c|0){KJa(c);Zpb(c)}Zpb(e);c=f[d>>2]|0}sMa(c,15);n=f[a+8>>2]|0;m=Wpb(64)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;f[m+24>>2]=0;p[m+32>>3]=+p[n+192>>3];p[m+40>>3]=+p[n+200>>3];p[m+48>>3]=+p[n+208>>3];b[m+56>>0]=0;n=a+96|0;o=f[n>>2]|0;f[n>>2]=m;if(!o){o=a+140|0;f[o>>2]=0;o=a+144|0;f[o>>2]=0;o=Leb()|0;m=I;n=a+16|0;q=n;q=f[q>>2]|0;n=n+4|0;n=f[n>>2]|0;n=Brb(q|0,n|0,1e6,0)|0;q=I;m=vrb(n|0,q|0,o|0,m|0)|0;o=I;q=a+24|0;n=q;f[n>>2]=m;q=q+4|0;f[q>>2]=o;q=a+44|0;f[q>>2]=794;a=a+48|0;f[a>>2]=0;u=r;return}m=o+4|0;c=f[m>>2]|0;l=o+16|0;d=f[l>>2]|0;g=c+(d>>>9<<2)|0;n=o+8|0;e=f[n>>2]|0;j=e;k=c;if((e|0)==(c|0)){d=0;h=0;i=o+20|0}else{i=o+20|0;h=(f[i>>2]|0)+d|0;d=(f[g>>2]|0)+((d&511)<<3)|0;h=(f[c+(h>>>9<<2)>>2]|0)+((h&511)<<3)|0}a:while(1){do{if((h|0)==(d|0))break a;d=d+8|0}while((d-(f[g>>2]|0)|0)!=4096);d=g+4|0;g=d;d=f[d>>2]|0}f[i>>2]=0;d=j-k>>2;if(d>>>0>2)do{Zpb(f[c>>2]|0);c=(f[m>>2]|0)+4|0;f[m>>2]=c;e=f[n>>2]|0;d=e-c>>2}while(d>>>0>2);switch(d|0){case 1:{d=256;q=21;break}case 2:{d=512;q=21;break}default:{}}if((q|0)==21)f[l>>2]=d;if((c|0)!=(e|0)){do{Zpb(f[c>>2]|0);c=c+4|0}while((c|0)!=(e|0));c=f[m>>2]|0;d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2)}c=f[o>>2]|0;if(c|0)Zpb(c);Zpb(o);o=a+140|0;f[o>>2]=0;o=a+144|0;f[o>>2]=0;o=Leb()|0;m=I;n=a+16|0;q=n;q=f[q>>2]|0;n=n+4|0;n=f[n>>2]|0;n=Brb(q|0,n|0,1e6,0)|0;q=I;m=vrb(n|0,q|0,o|0,m|0)|0;o=I;q=a+24|0;n=q;f[n>>2]=m;q=q+4|0;f[q>>2]=o;q=a+44|0;f[q>>2]=794;a=a+48|0;f[a>>2]=0;u=r;return}function KJa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=a+40|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){KJa(b);Zpb(b)}h=a+36|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){KJa(b);Zpb(b)}g=a+28|0;h=f[g>>2]|0;f[g>>2]=0;if(h|0){b=f[h>>2]|0;if(b|0){g=h+4|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[g>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~(((d+-24-e|0)>>>0)/24|0)*24|0);Zpb(e);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[h>>2]|0}Zpb(b)}Zpb(h)}g=a+24|0;h=f[g>>2]|0;f[g>>2]=0;if(h|0){b=f[h>>2]|0;if(b|0){g=h+4|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[g>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[h>>2]|0}Zpb(b)}Zpb(h)}h=a+20|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}Zpb(b)}a=a+16|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;c=f[b>>2]|0;if(c|0){d=b+4|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-32-c|0)>>>5)<<5);Zpb(c)}Zpb(b);return}function LJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+2112|0;j=m+1056|0;e=m+1048|0;d=m+24|0;h=m+1080|0;i=m+1072|0;l=m;f[i>>2]=a;k=l+16|0;f[l>>2]=31372;f[l+4>>2]=a;f[l+8>>2]=i;f[k>>2]=l;i=a+88|0;n=IJa(f[i>>2]|0,f[a+96>>2]|0,l,c)|0;g=a+4|0;c=(b[(f[g>>2]|0)+112>>0]|0)!=0;if(n){if(c){j=f[(f[i>>2]|0)+8>>2]|0;n=f[a+140>>2]|0;f[d>>2]=n;f[d+4>>2]=j;p[d+8>>3]=+(n>>>0)/+(j>>>0)*100.0;pdb(h,1024,146728,d)|0;j=FIa(212344,h,cdb(h)|0)|0;_fb(d,j+(f[(f[j>>2]|0)+-12>>2]|0)|0);n=Chb(d,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(d);rgb(j,n)|0;dgb(j)|0;j=Leb()|0;n=a+32|0;n=wrb(j|0,I|0,f[n>>2]|0,f[n+4>>2]|0)|0;n=zrb(n|0,I|0,1e6,0)|0;p[e>>3]=(+(n>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(d,1024,146784,e)|0;n=FIa(212344,d,cdb(d)|0)|0;_fb(e,n+(f[(f[n>>2]|0)+-12>>2]|0)|0);j=Chb(e,213216)|0;j=Pg[f[(f[j>>2]|0)+28>>2]&255](j,10)|0;Dhb(e);rgb(n,j)|0;dgb(n)|0}c=f[i>>2]|0;f[i>>2]=0;if(c|0){NLa(c);Zpb(c)}f[a+44>>2]=795;f[a+48>>2]=0}else if(c){d=Leb()|0;e=I;c=a+24|0;n=c;o=f[n+4>>2]|0;if((o|0)<(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0<d>>>0:0)){o=a+16|0;o=Brb(f[o>>2]|0,f[o+4>>2]|0,1e6,0)|0;o=vrb(o|0,I|0,d|0,e|0)|0;f[c>>2]=o;f[c+4>>2]=I;c=f[(f[i>>2]|0)+8>>2]|0;if(b[(f[g>>2]|0)+112>>0]|0){o=f[a+140>>2]|0;f[j>>2]=o;f[j+4>>2]=c;p[j+8>>3]=+(o>>>0)/+(c>>>0)*100.0;pdb(h,1024,146728,j)|0;o=FIa(212344,h,cdb(h)|0)|0;_fb(j,o+(f[(f[o>>2]|0)+-12>>2]|0)|0);n=Chb(j,213216)|0;n=Pg[f[(f[n>>2]|0)+28>>2]&255](n,10)|0;Dhb(j);rgb(o,n)|0;dgb(o)|0}}}c=f[k>>2]|0;if((l|0)==(c|0)){fh[f[(f[c>>2]|0)+16>>2]&2047](c);u=m;return}if(!c){u=m;return}fh[f[(f[c>>2]|0)+20>>2]&2047](c);u=m;return}function MJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+1040|0;i=j+8|0;h=j;d=j+16|0;e=a+4|0;g=f[e>>2]|0;do if(b[g+112>>0]|0){c=f[a+160>>2]|0;if(!(b[g+64>>0]|0)){f[i>>2]=c;pdb(d,1024,146863,i)|0;h=FIa(212344,d,cdb(d)|0)|0;_fb(i,h+(f[(f[h>>2]|0)+-12>>2]|0)|0);g=Chb(i,213216)|0;g=Pg[f[(f[g>>2]|0)+28>>2]&255](g,10)|0;Dhb(i);rgb(h,g)|0;dgb(h)|0;break}else{f[h>>2]=c;pdb(d,1024,146817,h)|0;i=FIa(212344,d,cdb(d)|0)|0;_fb(h,i+(f[(f[i>>2]|0)+-12>>2]|0)|0);g=Chb(h,213216)|0;g=Pg[f[(f[g>>2]|0)+28>>2]&255](g,10)|0;Dhb(h);rgb(i,g)|0;dgb(i)|0;break}}while(0);h=Leb()|0;i=a+32|0;f[i>>2]=h;f[i+4>>2]=I;i=f[e>>2]|0;NJa(f[a+12>>2]|0,+p[i+72>>3],i+80|0,i+92|0);f[a+168>>2]=f[a+156>>2];i=Leb()|0;h=I;g=a+16|0;g=Brb(f[g>>2]|0,f[g+4>>2]|0,1e6,0)|0;h=vrb(g|0,I|0,i|0,h|0)|0;i=a+24|0;f[i>>2]=h;f[i+4>>2]=I;f[a+44>>2]=796;f[a+48>>2]=0;u=j;return}function NJa(a,c,d,e){a=a|0;c=+c;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;a=a+4|0;FIa(a,147291,2)|0;g=e+11|0;k=b[g>>0]|0;h=e+4|0;if((k<<24>>24<0?f[h>>2]|0:k&255)|0){l=FIa(a,147407,7)|0;k=b[g>>0]|0;g=k<<24>>24<0;FIa(FIa(l,g?f[e>>2]|0:e,g?f[h>>2]|0:k&255)|0,147310,1)|0}e=FIa(FIa(qgb(FIa(a,147294,15)|0,c)|0,147310,1)|0,147312,9)|0;l=b[d+11>>0]|0;k=l<<24>>24<0;l=FIa(FIa(FIa(FIa(e,k?f[d>>2]|0:d,k?f[d+4>>2]|0:l&255)|0,147310,1)|0,147452,40)|0,147375,1)|0;b[i>>0]=10;FIa(l,i,1)|0;u=j;return}function OJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0;L=u;u=u+1296|0;H=L+24|0;G=L+16|0;F=L;K=L+264|0;B=L+248|0;C=L+188|0;D=L+40|0;E=a+168|0;J=a+148|0;d=f[E>>2]|0;do if(!d)if(!(b[(f[a+4>>2]|0)+112>>0]|0))d=43;else d=44;else{k=a+172|0;l=a+4|0;m=B+4|0;o=B+8|0;q=B+12|0;r=a+12|0;s=K+11|0;t=B+4|0;v=B+8|0;w=C+48|0;x=C+52|0;y=C+56|0;z=D+76|0;A=D+76|0;while(1){f[k>>2]=(f[k>>2]|0)+1;i=d+20|0;e=f[l>>2]|0;j=e+92|0;g=b[j+11>>0]|0;if(g<<24>>24<0)e=f[e+96>>2]|0;else e=g&255;if(!e){j=d+16|0;O=+(h[j+1>>0]|0)*.003921568859368563;N=+(h[j+2>>0]|0)*.003921568859368563;M=+(h[j+3>>0]|0)*.003921568859368563;n[B>>2]=+(h[j>>0]|0)*.003921568859368563;n[m>>2]=O;n[o>>2]=N;n[q>>2]=M;e2a(K,B)}else cqb(K,j);if(!(b[(f[l>>2]|0)+64>>0]|0)){e=f[i>>2]|0;g=f[d+24>>2]|0;if((e|0)!=(g|0)){d=e;do{QJa(f[r>>2]|0,d,K);d=d+12|0}while((d|0)!=(g|0))}}else{f[B>>2]=0;f[t>>2]=0;f[v>>2]=0;L_a(C);f[C>>2]=31416;f[w>>2]=0;f[x>>2]=0;f[y>>2]=0;N_a(D,0);e=f[i>>2]|0;g=f[d+24>>2]|0;if((e|0)!=(g|0)){d=e;do{M_a(z,d,0,1)|0;d=d+12|0}while((d|0)!=(g|0))}O_a(D,1,B,1,1)|0;S_a(B,1);Y_a(B,1.415);PJa(D,32500);EZa(z);N_a(D,0);d=f[B>>2]|0;e=f[t>>2]|0;if((d|0)!=(e|0)){do{GZa(A,d,0,1)|0;d=d+12|0}while((d|0)!=(e|0));i=f[B>>2]|0;d=f[t>>2]|0;if((d|0)!=(i|0))do{e=d+-12|0;f[t>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[t>>2]|0}}while((d|0)!=(i|0))}O_a(D,1,B,1,1)|0;S_a(B,1);PJa(D,32500);EZa(A);if((f[B>>2]|0)!=(f[t>>2]|0))QJa(f[r>>2]|0,B,K);RJa(C);d=f[B>>2]|0;if(d|0){e=f[t>>2]|0;if((e|0)!=(d|0)){g=e;while(1){e=g+-12|0;f[t>>2]=e;i=f[e>>2]|0;if(i){e=g+-8|0;g=f[e>>2]|0;if((g|0)!=(i|0))f[e>>2]=g+(~((g+-8-i|0)>>>3)<<3);Zpb(i);e=f[t>>2]|0}if((e|0)==(d|0))break;else g=e}d=f[B>>2]|0}Zpb(d)}}e=f[f[E>>2]>>2]|0;f[E>>2]=e;e=(e|0)==0;if(e)d=1;else{d=Leb()|0;i=I;j=c;g=f[j+4>>2]|0;d=(g|0)<(i|0)|((g|0)==(i|0)?(f[j>>2]|0)>>>0<d>>>0:0)}if((b[s>>0]|0)<0)Zpb(f[K>>2]|0);if(d)break;d=f[E>>2]|0}d=(b[(f[l>>2]|0)+112>>0]|0)!=0;if(e)if(d){d=44;break}else{d=43;break}if(!d){u=L;return}e=Leb()|0;g=I;d=a+24|0;J=d;G=f[J+4>>2]|0;if(!((G|0)<(g|0)|((G|0)==(g|0)?(f[J>>2]|0)>>>0<e>>>0:0))){u=L;return}G=a+16|0;G=Brb(f[G>>2]|0,f[G+4>>2]|0,1e6,0)|0;G=vrb(G|0,I|0,e|0,g|0)|0;J=d;f[J>>2]=G;f[J+4>>2]=I;J=f[a+160>>2]|0;a=f[a+172>>2]|0;f[H>>2]=a;f[H+4>>2]=J;p[H+8>>3]=+(a>>>0)/+(J>>>0)*100.0;pdb(K,1024,146899,H)|0;K=FIa(212344,K,cdb(K)|0)|0;_fb(H,K+(f[(f[K>>2]|0)+-12>>2]|0)|0);a=Chb(H,213216)|0;a=Pg[f[(f[a>>2]|0)+28>>2]&255](a,10)|0;Dhb(H);rgb(K,a)|0;dgb(K)|0;u=L;return}while(0);if((d|0)==43)g=a+160|0;else if((d|0)==44){g=a+160|0;H=f[g>>2]|0;E=f[a+172>>2]|0;f[F>>2]=E;f[F+4>>2]=H;p[F+8>>3]=+(E>>>0)/+(H>>>0)*100.0;pdb(K,1024,146899,F)|0;H=FIa(212344,K,cdb(K)|0)|0;_fb(F,H+(f[(f[H>>2]|0)+-12>>2]|0)|0);E=Chb(F,213216)|0;E=Pg[f[(f[E>>2]|0)+28>>2]&255](E,10)|0;Dhb(F);rgb(H,E)|0;dgb(H)|0;F=Leb()|0;H=a+32|0;H=wrb(F|0,I|0,f[H>>2]|0,f[H+4>>2]|0)|0;H=zrb(H|0,I|0,1e6,0)|0;p[G>>3]=(+(H>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(K,1024,146963,G)|0;H=FIa(212344,K,cdb(K)|0)|0;_fb(G,H+(f[(f[H>>2]|0)+-12>>2]|0)|0);F=Chb(G,213216)|0;F=Pg[f[(f[F>>2]|0)+28>>2]&255](F,10)|0;Dhb(G);rgb(H,F)|0;dgb(H)|0}if(f[g>>2]|0){e=a+156|0;SJa(J,f[e>>2]|0);f[e>>2]=0;e=f[a+152>>2]|0;if(e|0){d=0;do{f[(f[J>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[g>>2]=0}J=FIa((f[a+12>>2]|0)+4|0,146997,4)|0;b[K>>0]=10;FIa(J,K,1)|0;f[a+44>>2]=797;f[a+48>>2]=0;u=L;return}function PJa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=f[b>>2]|0;f[a>>2]=d;f[a+(f[d+-12>>2]|0)>>2]=f[b+4>>2];d=a+44|0;c=a+52|0;if(f[c>>2]|0){b=f[a+48>>2]|0;e=(f[d>>2]|0)+4|0;g=f[b>>2]|0;f[g+4>>2]=f[e>>2];f[f[e>>2]>>2]=g;f[c>>2]=0;if((b|0)!=(d|0))do{g=b;b=f[b+4>>2]|0;Zpb(g)}while((b|0)!=(d|0))}b=f[a+28>>2]|0;if(b|0){c=a+32|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);return}function QJa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;h=a+4|0;FIa(h,147401,5)|0;a=d+11|0;g=b[a>>0]|0;e=d+4|0;if((g<<24>>24<0?f[e>>2]|0:g&255)|0){k=FIa(h,147407,7)|0;g=b[a>>0]|0;a=g<<24>>24<0;FIa(FIa(k,a?f[d>>2]|0:d,a?f[e>>2]|0:g&255)|0,147310,1)|0}FIa(h,147415,4)|0;a=f[c>>2]|0;g=f[c+4>>2]|0;if((a|0)==(g|0)){k=FIa(h,147283,3)|0;b[i>>0]=10;FIa(k,i,1)|0;u=j;return}do{e=f[a>>2]|0;c=f[a+4>>2]|0;if((e|0)!=(c|0)){d=0;do{if(!(d<<24>>24)){FIa(h,147424,3)|0;d=1}else FIa(h,147287,1)|0;k=FIa(mgb(h,f[e>>2]|0)|0,147289,1)|0;mgb(k,0-(f[e+4>>2]|0)|0)|0;e=e+8|0}while((e|0)!=(c|0))}FIa(h,147420,3)|0;a=a+12|0}while((a|0)!=(g|0));k=FIa(h,147283,3)|0;b[i>>0]=10;FIa(k,i,1)|0;u=j;return}function RJa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=31416;K_a(a);b=f[a+48>>2]|0;if(b|0){c=a+52|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}f[a>>2]=31432;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function SJa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!b)return;do{l=b;b=f[b>>2]|0;j=l+20|0;a=f[j>>2]|0;if(a|0){k=l+24|0;c=f[k>>2]|0;if((c|0)!=(a|0)){d=c;while(1){c=d+-12|0;f[k>>2]=c;i=f[c>>2]|0;if(i){h=d+-8|0;d=f[h>>2]|0;if((d|0)==(i|0))c=i;else{do{e=d+-12|0;f[h>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[h>>2]|0}}while((d|0)!=(i|0));c=f[c>>2]|0}Zpb(c);c=f[k>>2]|0}if((c|0)==(a|0))break;else d=c}a=f[j>>2]|0}Zpb(a)}Zpb(l)}while((b|0)!=0);return}function TJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+1040|0;c=h+8|0;g=h;d=h+16|0;e=f[a+4>>2]|0;if(!(b[e+17>>0]|0))if(!(b[e+112>>0]|0))c=799;else{pdb(d,1024,147041,c)|0;g=FIa(212344,d,cdb(d)|0)|0;_fb(c,g+(f[(f[g>>2]|0)+-12>>2]|0)|0);e=Chb(c,213216)|0;e=Pg[f[(f[e>>2]|0)+28>>2]&255](e,10)|0;Dhb(c);rgb(g,e)|0;dgb(g)|0;c=799}else{c=a+224|0;if(b[e+112>>0]|0){f[g>>2]=(f[a+228>>2]|0)-(f[c>>2]|0)>>6;pdb(d,1024,147002,g)|0;e=FIa(212344,d,cdb(d)|0)|0;_fb(g,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);d=Chb(g,213216)|0;d=Pg[f[(f[d>>2]|0)+28>>2]&255](d,10)|0;Dhb(g);rgb(e,d)|0;dgb(e)|0}e=Leb()|0;g=a+32|0;f[g>>2]=e;f[g+4>>2]=I;f[a+208>>2]=f[c>>2];c=798}f[a+44>>2]=c;f[a+48>>2]=0;e=Leb()|0;g=I;d=a+16|0;d=Brb(f[d>>2]|0,f[d+4>>2]|0,1e6,0)|0;g=vrb(d|0,I|0,e|0,g|0)|0;a=a+24|0;f[a>>2]=g;f[a+4>>2]=I;u=h;return}function UJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0,fa=0;H=u;u=u+1152|0;C=H+1112|0;z=H+1104|0;y=H+1088|0;A=H+64|0;w=H+1140|0;E=H+1128|0;x=H;f[w>>2]=a;f[E>>2]=0;G=E+4|0;f[G>>2]=0;f[E+8>>2]=0;B=a+224|0;F=a+228|0;g=a+208|0;d=f[g>>2]|0;do if((d|0)==(f[F>>2]|0))D=11;else{h=a+8|0;i=A+8|0;j=A+16|0;k=A+24|0;l=A+32|0;m=A+40|0;n=A+48|0;o=x+8|0;q=x+16|0;r=x+24|0;s=x+32|0;t=x+40|0;v=x+48|0;while(1){e=f[h>>2]|0;da=+p[d>>3];ca=+p[d+8>>3];ba=+p[d+16>>3];Q=+p[d+24>>3];p[k>>3]=Q;O=+p[d+32>>3];M=+p[d+40>>3];d=d+48|0;f[n>>2]=f[d>>2];f[n+4>>2]=f[d+4>>2];f[n+8>>2]=f[d+8>>2];Y=+p[e>>3];X=+p[e+32>>3];W=+p[e+64>>3];U=+p[e+8>>3];T=+p[e+40>>3];S=+p[e+72>>3];P=+p[e+16>>3];N=+p[e+48>>3];L=+p[e+80>>3];$=+p[e+24>>3];_=+p[e+56>>3];Z=+p[e+88>>3];V=+p[e+96>>3];R=+p[e+104>>3];K=+p[e+112>>3];J=+p[e+120>>3];aa=1.0/(da*$+ca*_+ba*Z+J);p[A>>3]=(da*Y+ca*X+ba*W+V)*aa;p[i>>3]=(da*U+ca*T+ba*S+R)*aa;p[j>>3]=(da*P+ca*N+ba*L+K)*aa;J=1.0/(Q*$+O*_+M*Z+J);p[k>>3]=(Q*Y+O*X+M*W+V)*J;p[l>>3]=(Q*U+O*T+M*S+R)*J;p[m>>3]=(Q*P+O*N+M*L+K)*J;if(!(b2a(A,E)|0)){e=f[E>>2]|0;p[x>>3]=+p[e>>3];p[o>>3]=+p[e+8>>3];p[q>>3]=+p[e+16>>3];p[r>>3]=+p[e+24>>3];p[s>>3]=+p[e+32>>3];p[t>>3]=+p[e+40>>3];f[v>>2]=f[n>>2];f[v+4>>2]=f[n+4>>2];f[v+8>>2]=f[n+8>>2];WJa(w,x)}d=f[E>>2]|0;e=f[G>>2]|0;if((e|0)!=(d|0))f[G>>2]=e+(~(((e+-24-d|0)>>>0)/24|0)*24|0);e=(f[g>>2]|0)+64|0;f[g>>2]=e;if((e|0)==(f[F>>2]|0)){D=10;break}e=Leb()|0;ea=I;d=c;fa=f[d+4>>2]|0;if((fa|0)<(ea|0)|((fa|0)==(ea|0)?(f[d>>2]|0)>>>0<e>>>0:0))break;d=f[g>>2]|0}if((D|0)==10){D=11;break}e=Leb()|0;c=I;d=a+24|0;fa=d;ea=f[fa+4>>2]|0;if((ea|0)<(c|0)|((ea|0)==(c|0)?(f[fa>>2]|0)>>>0<e>>>0:0)){ea=a+16|0;ea=Brb(f[ea>>2]|0,f[ea+4>>2]|0,1e6,0)|0;ea=vrb(ea|0,I|0,e|0,c|0)|0;fa=d;f[fa>>2]=ea;f[fa+4>>2]=I;fa=(f[F>>2]|0)-(f[B>>2]|0)>>6;ea=f[a+176>>2]|0;f[C>>2]=ea;f[C+4>>2]=fa;p[C+8>>3]=+(ea>>>0)/+(fa>>>0)*100.0;pdb(A,1024,147099,C)|0;fa=FIa(212344,A,cdb(A)|0)|0;_fb(C,fa+(f[(f[fa>>2]|0)+-12>>2]|0)|0);ea=Chb(C,213216)|0;ea=Pg[f[(f[ea>>2]|0)+28>>2]&255](ea,10)|0;Dhb(C);rgb(fa,ea)|0;dgb(fa)|0}}while(0);if((D|0)==11){if(b[(f[a+4>>2]|0)+112>>0]|0){ea=(f[F>>2]|0)-(f[B>>2]|0)>>6;fa=f[a+176>>2]|0;f[y>>2]=fa;f[y+4>>2]=ea;p[y+8>>3]=+(fa>>>0)/+(ea>>>0)*100.0;pdb(A,1024,147099,y)|0;ea=FIa(212344,A,cdb(A)|0)|0;_fb(y,ea+(f[(f[ea>>2]|0)+-12>>2]|0)|0);fa=Chb(y,213216)|0;fa=Pg[f[(f[fa>>2]|0)+28>>2]&255](fa,10)|0;Dhb(y);rgb(ea,fa)|0;dgb(ea)|0;ea=Leb()|0;fa=a+32|0;fa=wrb(ea|0,I|0,f[fa>>2]|0,f[fa+4>>2]|0)|0;fa=zrb(fa|0,I|0,1e6,0)|0;p[z>>3]=(+(fa>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(A,1024,147152,z)|0;fa=FIa(212344,A,cdb(A)|0)|0;_fb(z,fa+(f[(f[fa>>2]|0)+-12>>2]|0)|0);ea=Chb(z,213216)|0;ea=Pg[f[(f[ea>>2]|0)+28>>2]&255](ea,10)|0;Dhb(z);rgb(fa,ea)|0;dgb(fa)|0}d=f[B>>2]|0;e=f[F>>2]|0;if((e|0)!=(d|0))f[F>>2]=e+(~((e+-64-d|0)>>>6)<<6);f[a+44>>2]=800;f[a+48>>2]=0}d=f[E>>2]|0;if(!d){u=H;return}e=f[G>>2]|0;if((e|0)!=(d|0))f[G>>2]=e+(~(((e+-24-d|0)>>>0)/24|0)*24|0);Zpb(d);u=H;return}function VJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+1040|0;d=e;c=e+8|0;if(b[(f[a+4>>2]|0)+112>>0]|0){pdb(c,1024,147077,d)|0;g=FIa(212344,c,cdb(c)|0)|0;_fb(d,g+(f[(f[g>>2]|0)+-12>>2]|0)|0);h=Chb(d,213216)|0;h=Pg[f[(f[h>>2]|0)+28>>2]&255](h,10)|0;Dhb(d);rgb(g,h)|0;dgb(g)|0}h=FIa((f[a+12>>2]|0)+4|0,147092,6)|0;b[c>>0]=10;FIa(h,c,1)|0;b[a+52>>0]=1;u=e;return}function WJa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+12|0;g=i;c=f[a>>2]|0;e=c+176|0;f[e>>2]=(f[e>>2]|0)+1;$Ja(h,b,+p[c+128>>3],+p[c+120>>3]);f[g>>2]=0;e=g+4|0;f[e>>2]=0;f[g+8>>2]=0;do if(xMa(f[c+136>>2]|0,h,g)|0){d=c+180|0;f[d>>2]=(f[d>>2]|0)+1}else{a=c+188|0;b=f[a>>2]|0;if((b|0)==(f[c+192>>2]|0)){bKa(c+184|0,g);break}else{aKa(b,g);f[a>>2]=(f[a>>2]|0)+12;break}}while(0);a=f[g>>2]|0;if(a|0){b=f[e>>2]|0;if((b|0)!=(a|0)){do{c=b+-12|0;f[e>>2]=c;d=f[c>>2]|0;if(!d)b=c;else{b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);b=f[e>>2]|0}}while((b|0)!=(a|0));a=f[g>>2]|0}Zpb(a)}c=f[h>>2]|0;if(!c){u=i;return}a=h+4|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);u=i;return}function XJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+1040|0;m=n+8|0;c=n;l=n+16|0;j=a+4|0;if(b[(f[j>>2]|0)+112>>0]|0){pdb(l,1024,147186,c)|0;k=FIa(212344,l,cdb(l)|0)|0;_fb(c,k+(f[(f[k>>2]|0)+-12>>2]|0)|0);i=Chb(c,213216)|0;i=Pg[f[(f[i>>2]|0)+28>>2]&255](i,10)|0;Dhb(c);rgb(k,i)|0;dgb(k)|0}d=Leb()|0;k=a+32|0;i=k;f[i>>2]=d;f[i+4>>2]=I;j2a(l,a+184|0);i=a+196|0;d=f[i>>2]|0;if(!d){c=a+200|0;d=a+204|0}else{c=a+200|0;e=f[c>>2]|0;if((e|0)!=(d|0)){do{g=e+-12|0;f[c>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~((g+-8-h|0)>>>3)<<3);Zpb(h);e=f[c>>2]|0}}while((e|0)!=(d|0));d=f[i>>2]|0}Zpb(d);d=a+204|0;f[d>>2]=0;f[c>>2]=0;f[i>>2]=0}f[i>>2]=f[l>>2];f[c>>2]=f[l+4>>2];f[d>>2]=f[l+8>>2];j=f[j>>2]|0;c=Leb()|0;d=I;if(!(b[j+112>>0]|0)){m=a+44|0;f[m>>2]=801;a=a+48|0;f[a>>2]=0;u=n;return}k=wrb(c|0,d|0,f[k>>2]|0,f[k+4>>2]|0)|0;k=zrb(k|0,I|0,1e6,0)|0;p[m>>3]=(+(k>>>0)+4294967296.0*+(I|0))/1.0e3;pdb(l,1024,147207,m)|0;l=FIa(212344,l,cdb(l)|0)|0;_fb(m,l+(f[(f[l>>2]|0)+-12>>2]|0)|0);k=Chb(m,213216)|0;k=Pg[f[(f[k>>2]|0)+28>>2]&255](k,10)|0;Dhb(m);rgb(l,k)|0;dgb(l)|0;m=a+44|0;f[m>>2]=801;a=a+48|0;f[a>>2]=0;u=n;return}function YJa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+1040|0;e=h;g=h+8|0;d=a+4|0;c=f[d>>2]|0;if(b[c+112>>0]|0){pdb(g,1024,147246,e)|0;c=FIa(212344,g,cdb(g)|0)|0;_fb(e,c+(f[(f[c>>2]|0)+-12>>2]|0)|0);i=Chb(e,213216)|0;i=Pg[f[(f[i>>2]|0)+28>>2]&255](i,10)|0;Dhb(e);rgb(c,i)|0;dgb(c)|0;c=f[d>>2]|0}i=a+12|0;ZJa(f[i>>2]|0,+p[c+24>>3],c+32|0);_Ja(f[i>>2]|0,a+196|0);i=FIa((f[i>>2]|0)+4|0,146997,4)|0;b[g>>0]=10;FIa(i,g,1)|0;f[a+44>>2]=799;f[a+48>>2]=0;u=h;return}function ZJa(a,c,d){a=a|0;c=+c;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e;i=FIa(FIa(qgb(FIa(FIa(a+4|0,147291,2)|0,147294,15)|0,c)|0,147310,1)|0,147312,9)|0;a=b[d+11>>0]|0;h=a<<24>>24<0;d=FIa(FIa(FIa(FIa(i,h?f[d>>2]|0:d,h?f[d+4>>2]|0:a&255)|0,147310,1)|0,147322,52)|0,147375,1)|0;b[g>>0]=10;FIa(d,g,1)|0;u=e;return}function _Ja(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;d=f[c>>2]|0;h=f[c+4>>2]|0;if((d|0)==(h|0)){u=j;return}g=a+4|0;do{FIa(g,147264,18)|0;c=f[d>>2]|0;e=f[d+4>>2]|0;if((c|0)!=(e|0)){a=0;do{if(!(a<<24>>24))a=1;else FIa(g,147287,1)|0;k=FIa(mgb(g,f[c>>2]|0)|0,147289,1)|0;mgb(k,0-(f[c+4>>2]|0)|0)|0;c=c+8|0}while((c|0)!=(e|0))}k=FIa(g,147283,3)|0;b[i>>0]=10;FIa(k,i,1)|0;d=d+12|0}while((d|0)!=(h|0));u=j;return}function $Ja(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+16|0;g=i;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;l=heb(+p[b>>3]*32767.0)|0;j=heb(+p[b+8>>3]*32767.0)|0;e=heb((+p[b+16>>3]+c)*d)|0;e=(e|0)<32767?e:32767;f[g>>2]=l;f[g+4>>2]=j;f[g+8>>2]=(e|0)>-32767?e:-32767;cKa(a,g);e=f[h>>2]|0;j=f[a+8>>2]|0;l=heb(+p[b+24>>3]*32767.0)|0;k=heb(+p[b+32>>3]*32767.0)|0;b=heb((+p[b+40>>3]+c)*d)|0;b=(b|0)<32767?b:32767;f[g>>2]=l;f[g+4>>2]=k;f[g+8>>2]=(b|0)>-32767?b:-32767;if(e>>>0<j>>>0){f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[h>>2]=(f[h>>2]|0)+12;u=i;return}else{cKa(a,g);u=i;return}}function aKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=0;j=a+4|0;f[j>>2]=0;f[a+8>>2]=0;e=b+4|0;c=(f[e>>2]|0)-(f[b>>2]|0)|0;d=(c|0)/12|0;if(!c)return;if(d>>>0>357913941)fob(a);g=Wpb(c)|0;f[j>>2]=g;f[a>>2]=g;f[a+8>>2]=g+(d*12|0);c=f[b>>2]|0;i=f[e>>2]|0;if((c|0)==(i|0))return;else h=c;while(1){f[g>>2]=0;e=g+4|0;f[e>>2]=0;f[g+8>>2]=0;b=h+4|0;c=(f[b>>2]|0)-(f[h>>2]|0)|0;a=c>>3;if(a|0){if(a>>>0>536870911){c=7;break}d=Wpb(c)|0;f[e>>2]=d;f[g>>2]=d;f[g+8>>2]=d+(a<<3);a=f[h>>2]|0;c=(f[b>>2]|0)-a|0;if((c|0)>0){Irb(d|0,a|0,c|0)|0;f[e>>2]=d+(c>>>3<<3)}}h=h+12|0;c=(f[j>>2]|0)+12|0;f[j>>2]=c;if((h|0)==(i|0)){c=11;break}else g=c}if((c|0)==7)fob(g);else if((c|0)==11)return}function bKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+4|0;c=f[a>>2]|0;e=((f[i>>2]|0)-c|0)/12|0;d=e+1|0;if(d>>>0>357913941)fob(a);j=a+8|0;k=((f[j>>2]|0)-c|0)/12|0;c=k<<1;c=k>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(e*12|0)|0;e=d;h=g+(c*12|0)|0;aKa(d,b);b=d+12|0;g=f[a>>2]|0;c=f[i>>2]|0;if((c|0)==(g|0)){c=e;k=g;d=g}else{do{k=d+-12|0;l=c;c=c+-12|0;f[k>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[k>>2]=f[c>>2];k=l+-8|0;f[m>>2]=f[k>>2];l=l+-4|0;f[d+-4>>2]=f[l>>2];f[l>>2]=0;f[k>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(g|0));c=e;k=f[a>>2]|0;d=f[i>>2]|0}f[a>>2]=c;f[i>>2]=b;f[j>>2]=h;a=k;if((d|0)!=(a|0)){h=d;do{d=h;h=h+-12|0;c=f[h>>2]|0;if(c|0){b=d+-8|0;d=f[b>>2]|0;if((d|0)!=(c|0)){do{e=d+-12|0;f[b>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[b>>2]|0}}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}}while((h|0)!=(a|0))}if(!k)return;Zpb(k);return}function cKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function dKa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=31432;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);return}function eKa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=31432;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+4>>2]|0;if(!b){Zpb(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b);Zpb(a);return}function fKa(a){a=a|0;RJa(a);Zpb(a);return}function gKa(a){a=a|0;return}function hKa(a){a=a|0;Zpb(a);return}function iKa(a){a=a|0;var b=0,c=0,d=0;b=Wpb(12)|0;f[b>>2]=31372;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function jKa(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=31372;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function kKa(a){a=a|0;return}function lKa(a){a=a|0;Zpb(a);return}function mKa(a,b){a=a|0;b=b|0;pKa(a+4|0,b);return}function nKa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==147493?a+4|0:0)|0}function oKa(a){a=a|0;return 11152}function pKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+96|0;C=F;i=f[a>>2]|0;D=i+260|0;c=f[D>>2]|0;E=i+264|0;d=f[E>>2]|0;g=c;if((d|0)==(c|0))e=c;else{e=d+(~(((d+-88-g|0)>>>0)/88|0)*88|0)|0;f[E>>2]=e;d=e}h=f[b+32>>2]|0;B=f[b+36>>2]|0;if((h|0)!=(B|0)){m=i+8|0;n=i+236|0;o=i+248|0;q=i+268|0;r=C+8|0;s=C+16|0;t=C+24|0;v=C+32|0;w=C+40|0;x=C+48|0;y=C+56|0;z=C+64|0;A=C+72|0;l=i+240|0;do{qKa(C,h,f[m>>2]|0);do if(a2a(C,n,o)|0){e=f[l>>2]|0;k=f[n>>2]|0;c=k;if((e|0)==(k|0))d=e;else{k=0;do{d=c+(k*24|0)|0;e=k+1|0;g=c+(e*24|0)|0;b=k+2|0;i=c+(b*24|0)|0;j=f[E>>2]|0;if(j>>>0<(f[q>>2]|0)>>>0){p[j>>3]=+p[d>>3];p[j+8>>3]=+p[c+(k*24|0)+8>>3];p[j+16>>3]=+p[c+(k*24|0)+16>>3];p[j+24>>3]=+p[g>>3];p[j+32>>3]=+p[c+(e*24|0)+8>>3];p[j+40>>3]=+p[c+(e*24|0)+16>>3];p[j+48>>3]=+p[i>>3];p[j+56>>3]=+p[c+(b*24|0)+8>>3];p[j+64>>3]=+p[c+(b*24|0)+16>>3];j=j+72|0;f[j>>2]=f[A>>2];f[j+4>>2]=f[A+4>>2];f[j+8>>2]=f[A+8>>2];f[E>>2]=(f[E>>2]|0)+88}else rKa(D,d,g,i,A);k=k+3|0;d=f[l>>2]|0;e=f[n>>2]|0;c=e}while(k>>>0<((d-e|0)/24|0)>>>0)}if((c|0)!=(d|0))f[l>>2]=d+(~(((d+-24-e|0)>>>0)/24|0)*24|0)}else{c=f[E>>2]|0;if((c|0)==(f[q>>2]|0)){sKa(D,C);break}else{p[c>>3]=+p[C>>3];p[c+8>>3]=+p[r>>3];p[c+16>>3]=+p[s>>3];p[c+24>>3]=+p[t>>3];p[c+32>>3]=+p[v>>3];p[c+40>>3]=+p[w>>3];p[c+48>>3]=+p[x>>3];p[c+56>>3]=+p[y>>3];p[c+64>>3]=+p[z>>3];k=c+72|0;f[k>>2]=f[A>>2];f[k+4>>2]=f[A+4>>2];f[k+8>>2]=f[A+8>>2];f[E>>2]=(f[E>>2]|0)+88;break}}while(0);h=h+88|0}while((h|0)!=(B|0));d=f[E>>2]|0;g=f[D>>2]|0;c=g;e=d}if(((d-g|0)/88|0)>>>0>1){tKa(c,e,C);c=f[D>>2]|0;e=f[E>>2]|0}if((c|0)==(e|0)){u=F;return}d=a+4|0;do{uKa(f[d>>2]|0,c);c=c+88|0}while((c|0)!=(e|0));u=F;return}function qKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0.0,J=0.0,K=0.0,L=0;K=+p[b>>3];J=+p[b+8>>3];I=+p[b+16>>3];F=+p[b+24>>3];H=a+24|0;p[H>>3]=F;i=+p[b+32>>3];G=a+32|0;p[G>>3]=i;k=+p[b+40>>3];E=a+40|0;p[E>>3]=k;D=b+48|0;t=a+48|0;p[t>>3]=+p[D>>3];C=b+56|0;n=a+56|0;p[n>>3]=+p[C>>3];B=b+64|0;d=a+64|0;p[d>>3]=+p[B>>3];L=a+72|0;b=b+72|0;f[L>>2]=f[b>>2];f[L+4>>2]=f[b+4>>2];f[L+8>>2]=f[b+8>>2];x=+p[c>>3];w=+p[c+32>>3];v=+p[c+64>>3];s=+p[c+8>>3];r=+p[c+40>>3];q=+p[c+72>>3];l=+p[c+16>>3];j=+p[c+48>>3];h=+p[c+80>>3];A=+p[c+24>>3];z=+p[c+56>>3];y=+p[c+88>>3];u=+p[c+96>>3];o=+p[c+104>>3];g=+p[c+112>>3];e=+p[c+120>>3];m=1.0/(K*A+J*z+I*y+e);p[a>>3]=(x*K+w*J+v*I+u)*m;p[a+8>>3]=(K*s+J*r+I*q+o)*m;p[a+16>>3]=(K*l+J*j+I*h+g)*m;m=1.0/(F*A+i*z+k*y+e);p[H>>3]=(x*F+w*i+v*k+u)*m;p[G>>3]=(F*s+i*r+k*q+o)*m;p[E>>3]=(F*l+i*j+k*h+g)*m;m=+p[D>>3];k=+p[C>>3];i=+p[B>>3];e=1.0/(m*A+k*z+i*y+e);p[t>>3]=(x*m+w*k+v*i+u)*e;p[n>>3]=(m*s+k*r+i*q+o)*e;p[d>>3]=(m*l+k*j+i*h+g)*e;return}function rKa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;g=f[r>>2]|0;j=f[a>>2]|0;l=(g-j|0)/88|0;h=l+1|0;o=j;i=g;if(h>>>0>48806446)fob(a);q=a+8|0;n=((f[q>>2]|0)-j|0)/88|0;j=n<<1;j=n>>>0<24403223?(j>>>0<h>>>0?h:j):48806446;do if(!j)k=0;else if(j>>>0>48806446)ud();else{k=Wpb(j*88|0)|0;break}while(0);m=k+(l*88|0)|0;h=m;n=k+(j*88|0)|0;p[m>>3]=+p[b>>3];p[k+(l*88|0)+8>>3]=+p[b+8>>3];p[k+(l*88|0)+16>>3]=+p[b+16>>3];p[k+(l*88|0)+24>>3]=+p[c>>3];p[k+(l*88|0)+32>>3]=+p[c+8>>3];p[k+(l*88|0)+40>>3]=+p[c+16>>3];p[k+(l*88|0)+48>>3]=+p[d>>3];p[k+(l*88|0)+56>>3]=+p[d+8>>3];p[k+(l*88|0)+64>>3]=+p[d+16>>3];j=k+(l*88|0)+72|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];j=m+88|0;if((i|0)!=(o|0)){g=m;do{l=i;i=i+-88|0;p[g+-88>>3]=+p[i>>3];p[g+-80>>3]=+p[l+-80>>3];p[g+-72>>3]=+p[l+-72>>3];p[g+-64>>3]=+p[l+-64>>3];p[g+-56>>3]=+p[l+-56>>3];p[g+-48>>3]=+p[l+-48>>3];p[g+-40>>3]=+p[l+-40>>3];p[g+-32>>3]=+p[l+-32>>3];p[g+-24>>3]=+p[l+-24>>3];m=g+-16|0;l=l+-16|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];g=h+-88|0;h=g}while((i|0)!=(o|0));g=f[a>>2]|0}f[a>>2]=h;f[r>>2]=j;f[q>>2]=n;if(!g)return;Zpb(g);return}function sKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;c=f[n>>2]|0;d=f[a>>2]|0;i=(c-d|0)/88|0;g=i+1|0;l=d;e=c;if(g>>>0>48806446)fob(a);m=a+8|0;j=((f[m>>2]|0)-d|0)/88|0;k=j<<1;g=j>>>0<24403223?(k>>>0<g>>>0?g:k):48806446;do if(!g)h=0;else if(g>>>0>48806446)ud();else{h=Wpb(g*88|0)|0;break}while(0);j=h+(i*88|0)|0;d=j;k=h+(g*88|0)|0;p[j>>3]=+p[b>>3];p[h+(i*88|0)+8>>3]=+p[b+8>>3];p[h+(i*88|0)+16>>3]=+p[b+16>>3];p[h+(i*88|0)+24>>3]=+p[b+24>>3];p[h+(i*88|0)+32>>3]=+p[b+32>>3];p[h+(i*88|0)+40>>3]=+p[b+40>>3];p[h+(i*88|0)+48>>3]=+p[b+48>>3];p[h+(i*88|0)+56>>3]=+p[b+56>>3];p[h+(i*88|0)+64>>3]=+p[b+64>>3];g=h+(i*88|0)+72|0;i=b+72|0;f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];g=j+88|0;if((e|0)!=(l|0)){c=j;do{i=e;e=e+-88|0;p[c+-88>>3]=+p[e>>3];p[c+-80>>3]=+p[i+-80>>3];p[c+-72>>3]=+p[i+-72>>3];p[c+-64>>3]=+p[i+-64>>3];p[c+-56>>3]=+p[i+-56>>3];p[c+-48>>3]=+p[i+-48>>3];p[c+-40>>3]=+p[i+-40>>3];p[c+-32>>3]=+p[i+-32>>3];p[c+-24>>3]=+p[i+-24>>3];j=c+-16|0;i=i+-16|0;f[j>>2]=f[i>>2];f[j+4>>2]=f[i+4>>2];f[j+8>>2]=f[i+8>>2];c=d+-88|0;d=c}while((e|0)!=(l|0));c=f[a>>2]|0}f[a>>2]=d;f[n>>2]=g;f[m>>2]=k;if(!c)return;Zpb(c);return}function tKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0.0,I=0.0,J=0.0,K=0.0,L=0;w=0;x=u;u=u+2096|0;a:while(1){k=b;l=b+-88|0;m=b+-80|0;o=b+-72|0;q=b+-64|0;r=b+-56|0;s=b+-48|0;g=b+-40|0;h=b+-32|0;i=b+-24|0;j=b+-16|0;d=a;while(1){e=d;f[x+48>>2]=c;f[x+56>>2]=d;f[x+104>>2]=b;f[x+112>>2]=e;f[x+232>>2]=t;f[x+680>>2]=g;f[x+728>>2]=h;f[x+816>>2]=i;f[x+880>>2]=j;f[x+1672>>2]=v;f[x+1720>>2]=k;f[x+1768>>2]=l;f[x+1784>>2]=m;f[x+1808>>2]=o;f[x+1848>>2]=q;f[x+1920>>2]=r;f[x+1976>>2]=s;f[x+2016>>2]=w;f[x+2024>>2]=0;f[x+2028>>2]=0;lMa(x);d=f[x+56>>2]|0;e=f[x+112>>2]|0;t=f[x+232>>2]|0;v=f[x+1672>>2]|0;w=f[x+2016>>2]|0;G=f[x+2024>>2]|0;D=f[x+2028>>2]|0;H=+n[x+2028>>2];f[x+2024>>2]=0;f[x+2028>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break a}if((G|0)==3)continue}if((w|0)==44){w=0;tKa(t+88|0,b,c);a=e;b=t;continue}else if((w|0)==45){w=0;if(v){w=46;break}else{a=e;b=t;continue}}}if((w|0)==5){y=+$1a(l);if(!(y<+$1a(e))){u=x;return}L=e+8|0;a=e+16|0;J=+p[e>>3];I=+p[L>>3];F=+p[a>>3];b=e+24|0;d=e+32|0;k=e+40|0;E=+p[b>>3];C=+p[d>>3];B=+p[k>>3];t=e+48|0;c=e+56|0;v=e+64|0;A=+p[t>>3];z=+p[c>>3];y=+p[v>>3];w=e+72|0;f[x>>2]=f[w>>2];f[x+4>>2]=f[w+4>>2];f[x+8>>2]=f[w+8>>2];K=+p[l>>3];p[l>>3]=J;p[e>>3]=K;K=+p[m>>3];p[m>>3]=+p[L>>3];p[L>>3]=K;K=+p[o>>3];p[o>>3]=+p[a>>3];p[a>>3]=K;K=+p[q>>3];p[q>>3]=+p[b>>3];p[b>>3]=K;K=+p[r>>3];p[r>>3]=+p[d>>3];p[d>>3]=K;K=+p[s>>3];p[s>>3]=+p[k>>3];p[k>>3]=K;K=+p[g>>3];p[g>>3]=+p[t>>3];p[t>>3]=K;p[c>>3]=+p[h>>3];p[v>>3]=+p[i>>3];f[w>>2]=f[j>>2];f[w+4>>2]=f[j+4>>2];f[w+8>>2]=f[j+8>>2];p[l>>3]=J;p[m>>3]=I;p[o>>3]=F;p[q>>3]=E;p[r>>3]=C;p[s>>3]=B;p[g>>3]=A;p[h>>3]=z;p[i>>3]=y;f[j>>2]=f[x>>2];f[j+4>>2]=f[x+4>>2];f[j+8>>2]=f[x+8>>2];u=x;return}else if((w|0)==7){zKa(e,e+88|0,l,c)|0;u=x;return}else if((w|0)==8){AKa(e,e+88|0,e+176|0,l,c)|0;u=x;return}else if((w|0)==9){BKa(e,e+88|0,e+176|0,e+264|0,l,c)|0;u=x;return}else if((w|0)==11){CKa(e,b,c);u=x;return}else if((w|0)==46){u=x;return}}function uKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;h=i+24|0;g=i+12|0;c=i;a=f[a>>2]|0;e=a+140|0;f[e>>2]=(f[e>>2]|0)+1;vKa(h,b,+p[a+128>>3],+p[a+120>>3]);f[g>>2]=0;e=g+4|0;f[e>>2]=0;f[g+8>>2]=0;if(uMa(f[a+136>>2]|0,h,g)|0){d=a+144|0;f[d>>2]=(f[d>>2]|0)+1}else{b=b+72|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];a=wKa(a+148|0,c)|0;b=a+4|0;c=f[b>>2]|0;if((c|0)==(f[a+8>>2]|0))bKa(a,g);else{aKa(c,g);f[b>>2]=(f[b>>2]|0)+12}}a=f[g>>2]|0;if(a|0){b=f[e>>2]|0;if((b|0)!=(a|0)){do{c=b+-12|0;f[e>>2]=c;d=f[c>>2]|0;if(!d)b=c;else{b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d);b=f[e>>2]|0}}while((b|0)!=(a|0));a=f[g>>2]|0}Zpb(a)}c=f[h>>2]|0;if(!c){u=i;return}a=h+4|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~(((b+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);u=i;return}function vKa(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+16|0;h=j;f[a>>2]=0;i=a+4|0;f[i>>2]=0;f[a+8>>2]=0;k=heb(+p[b>>3]*32767.0)|0;e=heb(+p[b+8>>3]*32767.0)|0;g=heb((+p[b+16>>3]+c)*d)|0;g=(g|0)<32767?g:32767;f[h>>2]=k;f[h+4>>2]=e;f[h+8>>2]=(g|0)>-32767?g:-32767;g=a+8|0;cKa(a,h);e=f[i>>2]|0;k=f[g>>2]|0;n=heb(+p[b+24>>3]*32767.0)|0;m=heb(+p[b+32>>3]*32767.0)|0;l=heb((+p[b+40>>3]+c)*d)|0;l=(l|0)<32767?l:32767;f[h>>2]=n;f[h+4>>2]=m;f[h+8>>2]=(l|0)>-32767?l:-32767;if(e>>>0<k>>>0){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];e=(f[i>>2]|0)+12|0;f[i>>2]=e}else{cKa(a,h);e=f[i>>2]|0}l=heb(+p[b+48>>3]*32767.0)|0;m=heb(+p[b+56>>3]*32767.0)|0;n=heb((+p[b+64>>3]+c)*d)|0;n=(n|0)<32767?n:32767;f[h>>2]=l;f[h+4>>2]=m;f[h+8>>2]=(n|0)>-32767?n:-32767;if(e>>>0<(f[g>>2]|0)>>>0){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[i>>2]=(f[i>>2]|0)+12;u=j;return}else{cKa(a,h);u=j;return}}function wKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0<h>>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=Wpb(32)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];f[j+20>>2]=0;f[j+24>>2]=0;f[j+28>>2]=0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;xKa(a,c>>>0<d>>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0<c>>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function xKa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){yKa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;yKa(a,b);return}function yKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();o=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function zKa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,s=0,t=0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0,B=0.0,C=0,D=0.0,E=0,F=0.0,G=0,H=0.0,I=0.0,J=0.0;o=u;u=u+16|0;n=o;q=+$1a(b);m=q<+$1a(a);q=+$1a(c);d=q<+$1a(b);if(!m){if(!d){c=0;u=o;return c|0}l=b+8|0;m=b+16|0;I=+p[b>>3];H=+p[l>>3];F=+p[m>>3];d=b+24|0;e=b+32|0;g=b+40|0;D=+p[d>>3];B=+p[e>>3];z=+p[g>>3];h=b+48|0;i=b+56|0;j=b+64|0;x=+p[h>>3];v=+p[i>>3];q=+p[j>>3];k=b+72|0;f[n>>2]=f[k>>2];f[n+4>>2]=f[k+4>>2];f[n+8>>2]=f[k+8>>2];J=+p[c>>3];p[c>>3]=I;p[b>>3]=J;G=c+8|0;J=+p[G>>3];p[G>>3]=+p[l>>3];p[l>>3]=J;E=c+16|0;J=+p[E>>3];p[E>>3]=+p[m>>3];p[m>>3]=J;C=c+24|0;J=+p[C>>3];p[C>>3]=+p[d>>3];p[d>>3]=J;A=c+32|0;J=+p[A>>3];p[A>>3]=+p[e>>3];p[e>>3]=J;y=c+40|0;J=+p[y>>3];p[y>>3]=+p[g>>3];p[g>>3]=J;w=c+48|0;J=+p[w>>3];p[w>>3]=+p[h>>3];p[h>>3]=J;t=c+56|0;p[i>>3]=+p[t>>3];s=c+64|0;p[j>>3]=+p[s>>3];r=c+72|0;f[k>>2]=f[r>>2];f[k+4>>2]=f[r+4>>2];f[k+8>>2]=f[r+8>>2];p[c>>3]=I;p[G>>3]=H;p[E>>3]=F;p[C>>3]=D;p[A>>3]=B;p[y>>3]=z;p[w>>3]=x;p[t>>3]=v;p[s>>3]=q;f[r>>2]=f[n>>2];f[r+4>>2]=f[n+4>>2];f[r+8>>2]=f[n+8>>2];q=+$1a(b);if(!(q<+$1a(a))){G=1;u=o;return G|0}r=a+8|0;s=a+16|0;v=+p[a>>3];x=+p[r>>3];z=+p[s>>3];t=a+24|0;w=a+32|0;y=a+40|0;B=+p[t>>3];D=+p[w>>3];F=+p[y>>3];A=a+48|0;C=a+56|0;E=a+64|0;H=+p[A>>3];I=+p[C>>3];J=+p[E>>3];G=a+72|0;f[n>>2]=f[G>>2];f[n+4>>2]=f[G+4>>2];f[n+8>>2]=f[G+8>>2];q=+p[b>>3];p[b>>3]=v;p[a>>3]=q;q=+p[l>>3];p[l>>3]=+p[r>>3];p[r>>3]=q;q=+p[m>>3];p[m>>3]=+p[s>>3];p[s>>3]=q;q=+p[d>>3];p[d>>3]=+p[t>>3];p[t>>3]=q;q=+p[e>>3];p[e>>3]=+p[w>>3];p[w>>3]=q;q=+p[g>>3];p[g>>3]=+p[y>>3];p[y>>3]=q;q=+p[h>>3];p[h>>3]=+p[A>>3];p[A>>3]=q;p[C>>3]=+p[i>>3];p[E>>3]=+p[j>>3];f[G>>2]=f[k>>2];f[G+4>>2]=f[k+4>>2];f[G+8>>2]=f[k+8>>2];p[b>>3]=v;p[l>>3]=x;p[m>>3]=z;p[d>>3]=B;p[e>>3]=D;p[g>>3]=F;p[h>>3]=H;p[i>>3]=I;p[j>>3]=J;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];G=2;u=o;return G|0}if(d){s=a+8|0;t=a+16|0;v=+p[a>>3];x=+p[s>>3];z=+p[t>>3];w=a+24|0;y=a+32|0;A=a+40|0;B=+p[w>>3];D=+p[y>>3];F=+p[A>>3];C=a+48|0;E=a+56|0;G=a+64|0;H=+p[C>>3];I=+p[E>>3];J=+p[G>>3];b=a+72|0;f[n>>2]=f[b>>2];f[n+4>>2]=f[b+4>>2];f[n+8>>2]=f[b+8>>2];q=+p[c>>3];p[c>>3]=v;p[a>>3]=q;r=c+8|0;q=+p[r>>3];p[r>>3]=+p[s>>3];p[s>>3]=q;s=c+16|0;q=+p[s>>3];p[s>>3]=+p[t>>3];p[t>>3]=q;t=c+24|0;q=+p[t>>3];p[t>>3]=+p[w>>3];p[w>>3]=q;w=c+32|0;q=+p[w>>3];p[w>>3]=+p[y>>3];p[y>>3]=q;y=c+40|0;q=+p[y>>3];p[y>>3]=+p[A>>3];p[A>>3]=q;A=c+48|0;q=+p[A>>3];p[A>>3]=+p[C>>3];p[C>>3]=q;C=c+56|0;p[E>>3]=+p[C>>3];E=c+64|0;p[G>>3]=+p[E>>3];G=c+72|0;f[b>>2]=f[G>>2];f[b+4>>2]=f[G+4>>2];f[b+8>>2]=f[G+8>>2];p[c>>3]=v;p[r>>3]=x;p[s>>3]=z;p[t>>3]=B;p[w>>3]=D;p[y>>3]=F;p[A>>3]=H;p[C>>3]=I;p[E>>3]=J;f[G>>2]=f[n>>2];f[G+4>>2]=f[n+4>>2];f[G+8>>2]=f[n+8>>2];G=1;u=o;return G|0}e=a+8|0;g=a+16|0;v=+p[a>>3];x=+p[e>>3];z=+p[g>>3];h=a+24|0;i=a+32|0;j=a+40|0;B=+p[h>>3];D=+p[i>>3];F=+p[j>>3];k=a+48|0;l=a+56|0;m=a+64|0;H=+p[k>>3];I=+p[l>>3];J=+p[m>>3];G=a+72|0;f[n>>2]=f[G>>2];f[n+4>>2]=f[G+4>>2];f[n+8>>2]=f[G+8>>2];q=+p[b>>3];p[b>>3]=v;p[a>>3]=q;d=b+8|0;q=+p[d>>3];p[d>>3]=+p[e>>3];p[e>>3]=q;e=b+16|0;q=+p[e>>3];p[e>>3]=+p[g>>3];p[g>>3]=q;g=b+24|0;q=+p[g>>3];p[g>>3]=+p[h>>3];p[h>>3]=q;h=b+32|0;q=+p[h>>3];p[h>>3]=+p[i>>3];p[i>>3]=q;i=b+40|0;q=+p[i>>3];p[i>>3]=+p[j>>3];p[j>>3]=q;j=b+48|0;q=+p[j>>3];p[j>>3]=+p[k>>3];p[k>>3]=q;k=b+56|0;p[l>>3]=+p[k>>3];l=b+64|0;p[m>>3]=+p[l>>3];m=b+72|0;f[G>>2]=f[m>>2];f[G+4>>2]=f[m+4>>2];f[G+8>>2]=f[m+8>>2];p[b>>3]=v;p[d>>3]=x;p[e>>3]=z;p[g>>3]=B;p[h>>3]=D;p[i>>3]=F;p[j>>3]=H;p[k>>3]=I;p[l>>3]=J;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];J=+$1a(c);if(!(J<+$1a(b))){G=1;u=o;return G|0}v=+p[b>>3];x=+p[d>>3];z=+p[e>>3];B=+p[g>>3];D=+p[h>>3];F=+p[i>>3];H=+p[j>>3];I=+p[k>>3];J=+p[l>>3];f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];q=+p[c>>3];p[c>>3]=v;p[b>>3]=q;r=c+8|0;q=+p[r>>3];p[r>>3]=+p[d>>3];p[d>>3]=q;s=c+16|0;q=+p[s>>3];p[s>>3]=+p[e>>3];p[e>>3]=q;t=c+24|0;q=+p[t>>3];p[t>>3]=+p[g>>3];p[g>>3]=q;w=c+32|0;q=+p[w>>3];p[w>>3]=+p[h>>3];p[h>>3]=q;y=c+40|0;q=+p[y>>3];p[y>>3]=+p[i>>3];p[i>>3]=q;A=c+48|0;q=+p[A>>3];p[A>>3]=+p[j>>3];p[j>>3]=q;C=c+56|0;p[k>>3]=+p[C>>3];E=c+64|0;p[l>>3]=+p[E>>3];G=c+72|0;f[m>>2]=f[G>>2];f[m+4>>2]=f[G+4>>2];f[m+8>>2]=f[G+8>>2];p[c>>3]=v;p[r>>3]=x;p[s>>3]=z;p[t>>3]=B;p[w>>3]=D;p[y>>3]=F;p[A>>3]=H;p[C>>3]=I;p[E>>3]=J;f[G>>2]=f[n>>2];f[G+4>>2]=f[n+4>>2];f[G+8>>2]=f[n+8>>2];G=2;u=o;return G|0}function AKa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0.0,K=0.0,L=0.0;A=u;u=u+16|0;z=A;y=zKa(a,b,c,e)|0;B=+$1a(d);if(!(B<+$1a(c))){c=y;u=A;return c|0}w=c+8|0;x=c+16|0;K=+p[c>>3];J=+p[w>>3];H=+p[x>>3];n=c+24|0;o=c+32|0;q=c+40|0;G=+p[n>>3];F=+p[o>>3];E=+p[q>>3];r=c+48|0;s=c+56|0;t=c+64|0;D=+p[r>>3];C=+p[s>>3];B=+p[t>>3];v=c+72|0;f[z>>2]=f[v>>2];f[z+4>>2]=f[v+4>>2];f[z+8>>2]=f[v+8>>2];L=+p[d>>3];p[d>>3]=K;p[c>>3]=L;I=d+8|0;L=+p[I>>3];p[I>>3]=+p[w>>3];p[w>>3]=L;e=d+16|0;L=+p[e>>3];p[e>>3]=+p[x>>3];p[x>>3]=L;g=d+24|0;L=+p[g>>3];p[g>>3]=+p[n>>3];p[n>>3]=L;h=d+32|0;L=+p[h>>3];p[h>>3]=+p[o>>3];p[o>>3]=L;i=d+40|0;L=+p[i>>3];p[i>>3]=+p[q>>3];p[q>>3]=L;j=d+48|0;L=+p[j>>3];p[j>>3]=+p[r>>3];p[r>>3]=L;k=d+56|0;p[s>>3]=+p[k>>3];l=d+64|0;p[t>>3]=+p[l>>3];m=d+72|0;f[v>>2]=f[m>>2];f[v+4>>2]=f[m+4>>2];f[v+8>>2]=f[m+8>>2];p[d>>3]=K;p[I>>3]=J;p[e>>3]=H;p[g>>3]=G;p[h>>3]=F;p[i>>3]=E;p[j>>3]=D;p[k>>3]=C;p[l>>3]=B;f[m>>2]=f[z>>2];f[m+4>>2]=f[z+4>>2];f[m+8>>2]=f[z+8>>2];B=+$1a(c);if(!(B<+$1a(b))){I=y+1|0;u=A;return I|0}l=b+8|0;m=b+16|0;C=+p[b>>3];D=+p[l>>3];E=+p[m>>3];e=b+24|0;d=b+32|0;g=b+40|0;F=+p[e>>3];G=+p[d>>3];H=+p[g>>3];h=b+48|0;i=b+56|0;j=b+64|0;J=+p[h>>3];K=+p[i>>3];L=+p[j>>3];k=b+72|0;f[z>>2]=f[k>>2];f[z+4>>2]=f[k+4>>2];f[z+8>>2]=f[k+8>>2];B=+p[c>>3];p[c>>3]=C;p[b>>3]=B;B=+p[w>>3];p[w>>3]=+p[l>>3];p[l>>3]=B;B=+p[x>>3];p[x>>3]=+p[m>>3];p[m>>3]=B;B=+p[n>>3];p[n>>3]=+p[e>>3];p[e>>3]=B;B=+p[o>>3];p[o>>3]=+p[d>>3];p[d>>3]=B;B=+p[q>>3];p[q>>3]=+p[g>>3];p[g>>3]=B;B=+p[r>>3];p[r>>3]=+p[h>>3];p[h>>3]=B;p[i>>3]=+p[s>>3];p[j>>3]=+p[t>>3];f[k>>2]=f[v>>2];f[k+4>>2]=f[v+4>>2];f[k+8>>2]=f[v+8>>2];p[c>>3]=C;p[w>>3]=D;p[x>>3]=E;p[n>>3]=F;p[o>>3]=G;p[q>>3]=H;p[r>>3]=J;p[s>>3]=K;p[t>>3]=L;f[v>>2]=f[z>>2];f[v+4>>2]=f[z+4>>2];f[v+8>>2]=f[z+8>>2];L=+$1a(b);if(!(L<+$1a(a))){I=y+2|0;u=A;return I|0}q=a+8|0;r=a+16|0;C=+p[a>>3];D=+p[q>>3];E=+p[r>>3];s=a+24|0;t=a+32|0;v=a+40|0;F=+p[s>>3];G=+p[t>>3];H=+p[v>>3];w=a+48|0;x=a+56|0;c=a+64|0;J=+p[w>>3];K=+p[x>>3];L=+p[c>>3];I=a+72|0;f[z>>2]=f[I>>2];f[z+4>>2]=f[I+4>>2];f[z+8>>2]=f[I+8>>2];B=+p[b>>3];p[b>>3]=C;p[a>>3]=B;B=+p[l>>3];p[l>>3]=+p[q>>3];p[q>>3]=B;B=+p[m>>3];p[m>>3]=+p[r>>3];p[r>>3]=B;B=+p[e>>3];p[e>>3]=+p[s>>3];p[s>>3]=B;B=+p[d>>3];p[d>>3]=+p[t>>3];p[t>>3]=B;B=+p[g>>3];p[g>>3]=+p[v>>3];p[v>>3]=B;B=+p[h>>3];p[h>>3]=+p[w>>3];p[w>>3]=B;p[x>>3]=+p[i>>3];p[c>>3]=+p[j>>3];f[I>>2]=f[k>>2];f[I+4>>2]=f[k+4>>2];f[I+8>>2]=f[k+8>>2];p[b>>3]=C;p[l>>3]=D;p[m>>3]=E;p[e>>3]=F;p[d>>3]=G;p[g>>3]=H;p[h>>3]=J;p[i>>3]=K;p[j>>3]=L;f[k>>2]=f[z>>2];f[k+4>>2]=f[z+4>>2];f[k+8>>2]=f[z+8>>2];I=y+3|0;u=A;return I|0}function BKa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0;C=u;u=u+16|0;B=C;A=AKa(a,b,c,d,g)|0;D=+$1a(e);if(!(D<+$1a(d))){c=A;u=C;return c|0}n=d+8|0;o=d+16|0;L=+p[d>>3];K=+p[n>>3];J=+p[o>>3];g=d+24|0;h=d+32|0;i=d+40|0;I=+p[g>>3];H=+p[h>>3];G=+p[i>>3];j=d+48|0;k=d+56|0;l=d+64|0;F=+p[j>>3];E=+p[k>>3];D=+p[l>>3];m=d+72|0;f[B>>2]=f[m>>2];f[B+4>>2]=f[m+4>>2];f[B+8>>2]=f[m+8>>2];M=+p[e>>3];p[e>>3]=L;p[d>>3]=M;q=e+8|0;M=+p[q>>3];p[q>>3]=+p[n>>3];p[n>>3]=M;r=e+16|0;M=+p[r>>3];p[r>>3]=+p[o>>3];p[o>>3]=M;s=e+24|0;M=+p[s>>3];p[s>>3]=+p[g>>3];p[g>>3]=M;t=e+32|0;M=+p[t>>3];p[t>>3]=+p[h>>3];p[h>>3]=M;v=e+40|0;M=+p[v>>3];p[v>>3]=+p[i>>3];p[i>>3]=M;w=e+48|0;M=+p[w>>3];p[w>>3]=+p[j>>3];p[j>>3]=M;x=e+56|0;p[k>>3]=+p[x>>3];y=e+64|0;p[l>>3]=+p[y>>3];z=e+72|0;f[m>>2]=f[z>>2];f[m+4>>2]=f[z+4>>2];f[m+8>>2]=f[z+8>>2];p[e>>3]=L;p[q>>3]=K;p[r>>3]=J;p[s>>3]=I;p[t>>3]=H;p[v>>3]=G;p[w>>3]=F;p[x>>3]=E;p[y>>3]=D;f[z>>2]=f[B>>2];f[z+4>>2]=f[B+4>>2];f[z+8>>2]=f[B+8>>2];D=+$1a(d);if(!(D<+$1a(c))){c=A+1|0;u=C;return c|0}y=c+8|0;z=c+16|0;E=+p[c>>3];F=+p[y>>3];G=+p[z>>3];q=c+24|0;r=c+32|0;s=c+40|0;H=+p[q>>3];I=+p[r>>3];J=+p[s>>3];t=c+48|0;v=c+56|0;w=c+64|0;K=+p[t>>3];L=+p[v>>3];M=+p[w>>3];x=c+72|0;f[B>>2]=f[x>>2];f[B+4>>2]=f[x+4>>2];f[B+8>>2]=f[x+8>>2];D=+p[d>>3];p[d>>3]=E;p[c>>3]=D;D=+p[n>>3];p[n>>3]=+p[y>>3];p[y>>3]=D;D=+p[o>>3];p[o>>3]=+p[z>>3];p[z>>3]=D;D=+p[g>>3];p[g>>3]=+p[q>>3];p[q>>3]=D;D=+p[h>>3];p[h>>3]=+p[r>>3];p[r>>3]=D;D=+p[i>>3];p[i>>3]=+p[s>>3];p[s>>3]=D;D=+p[j>>3];p[j>>3]=+p[t>>3];p[t>>3]=D;p[v>>3]=+p[k>>3];p[w>>3]=+p[l>>3];f[x>>2]=f[m>>2];f[x+4>>2]=f[m+4>>2];f[x+8>>2]=f[m+8>>2];p[d>>3]=E;p[n>>3]=F;p[o>>3]=G;p[g>>3]=H;p[h>>3]=I;p[i>>3]=J;p[j>>3]=K;p[k>>3]=L;p[l>>3]=M;f[m>>2]=f[B>>2];f[m+4>>2]=f[B+4>>2];f[m+8>>2]=f[B+8>>2];M=+$1a(c);if(!(M<+$1a(b))){c=A+2|0;u=C;return c|0}m=b+8|0;n=b+16|0;E=+p[b>>3];F=+p[m>>3];G=+p[n>>3];g=b+24|0;e=b+32|0;h=b+40|0;H=+p[g>>3];I=+p[e>>3];J=+p[h>>3];i=b+48|0;j=b+56|0;k=b+64|0;K=+p[i>>3];L=+p[j>>3];M=+p[k>>3];l=b+72|0;f[B>>2]=f[l>>2];f[B+4>>2]=f[l+4>>2];f[B+8>>2]=f[l+8>>2];D=+p[c>>3];p[c>>3]=E;p[b>>3]=D;D=+p[y>>3];p[y>>3]=+p[m>>3];p[m>>3]=D;D=+p[z>>3];p[z>>3]=+p[n>>3];p[n>>3]=D;D=+p[q>>3];p[q>>3]=+p[g>>3];p[g>>3]=D;D=+p[r>>3];p[r>>3]=+p[e>>3];p[e>>3]=D;D=+p[s>>3];p[s>>3]=+p[h>>3];p[h>>3]=D;D=+p[t>>3];p[t>>3]=+p[i>>3];p[i>>3]=D;p[j>>3]=+p[v>>3];p[k>>3]=+p[w>>3];f[l>>2]=f[x>>2];f[l+4>>2]=f[x+4>>2];f[l+8>>2]=f[x+8>>2];p[c>>3]=E;p[y>>3]=F;p[z>>3]=G;p[q>>3]=H;p[r>>3]=I;p[s>>3]=J;p[t>>3]=K;p[v>>3]=L;p[w>>3]=M;f[x>>2]=f[B>>2];f[x+4>>2]=f[B+4>>2];f[x+8>>2]=f[B+8>>2];M=+$1a(b);if(!(M<+$1a(a))){c=A+3|0;u=C;return c|0}r=a+8|0;s=a+16|0;E=+p[a>>3];F=+p[r>>3];G=+p[s>>3];t=a+24|0;v=a+32|0;w=a+40|0;H=+p[t>>3];I=+p[v>>3];J=+p[w>>3];x=a+48|0;y=a+56|0;z=a+64|0;K=+p[x>>3];L=+p[y>>3];M=+p[z>>3];c=a+72|0;f[B>>2]=f[c>>2];f[B+4>>2]=f[c+4>>2];f[B+8>>2]=f[c+8>>2];D=+p[b>>3];p[b>>3]=E;p[a>>3]=D;D=+p[m>>3];p[m>>3]=+p[r>>3];p[r>>3]=D;D=+p[n>>3];p[n>>3]=+p[s>>3];p[s>>3]=D;D=+p[g>>3];p[g>>3]=+p[t>>3];p[t>>3]=D;D=+p[e>>3];p[e>>3]=+p[v>>3];p[v>>3]=D;D=+p[h>>3];p[h>>3]=+p[w>>3];p[w>>3]=D;D=+p[i>>3];p[i>>3]=+p[x>>3];p[x>>3]=D;p[y>>3]=+p[j>>3];p[z>>3]=+p[k>>3];f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];p[b>>3]=E;p[m>>3]=F;p[n>>3]=G;p[g>>3]=H;p[e>>3]=I;p[h>>3]=J;p[i>>3]=K;p[j>>3]=L;p[k>>3]=M;f[l>>2]=f[B>>2];f[l+4>>2]=f[B+4>>2];f[l+8>>2]=f[B+8>>2];c=A+4|0;u=C;return c|0}function CKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;E=u;u=u+96|0;D=E;d=a+176|0;zKa(a,a+88|0,d,c)|0;c=a+264|0;if((c|0)==(b|0)){u=E;return}B=D+8|0;C=D+16|0;r=D+24|0;s=D+32|0;t=D+40|0;v=D+48|0;w=D+56|0;x=D+64|0;y=D+72|0;z=D+24|0;A=D+48|0;q=c;c=d;while(1){e=+$1a(q);if(e<+$1a(c)){f[D>>2]=f[q>>2];f[D+4>>2]=f[q+4>>2];f[D+8>>2]=f[q+8>>2];f[D+12>>2]=f[q+12>>2];f[D+16>>2]=f[q+16>>2];f[D+20>>2]=f[q+20>>2];e=+p[q>>3];p[D>>3]=e;p[B>>3]=+p[q+8>>3];p[C>>3]=+p[q+16>>3];d=q+24|0;f[r>>2]=f[d>>2];f[r+4>>2]=f[d+4>>2];f[r+8>>2]=f[d+8>>2];f[r+12>>2]=f[d+12>>2];f[r+16>>2]=f[d+16>>2];f[r+20>>2]=f[d+20>>2];p[r>>3]=+p[d>>3];p[s>>3]=+p[q+32>>3];p[t>>3]=+p[q+40>>3];d=q+48|0;f[v>>2]=f[d>>2];f[v+4>>2]=f[d+4>>2];f[v+8>>2]=f[d+8>>2];f[v+12>>2]=f[d+12>>2];f[v+16>>2]=f[d+16>>2];f[v+20>>2]=f[d+20>>2];p[v>>3]=+p[d>>3];p[w>>3]=+p[q+56>>3];p[x>>3]=+p[q+64>>3];d=q+72|0;f[y>>2]=f[d>>2];f[y+4>>2]=f[d+4>>2];f[y+8>>2]=f[d+8>>2];d=q;while(1){F=+p[c>>3];p[c>>3]=e;p[d>>3]=F;h=c+8|0;e=+p[h>>3];i=d+8|0;p[h>>3]=+p[i>>3];p[i>>3]=e;i=c+16|0;e=+p[i>>3];j=d+16|0;p[i>>3]=+p[j>>3];p[j>>3]=e;j=c+24|0;e=+p[j>>3];k=d+24|0;p[j>>3]=+p[k>>3];p[k>>3]=e;k=c+32|0;e=+p[k>>3];l=d+32|0;p[k>>3]=+p[l>>3];p[l>>3]=e;l=c+40|0;e=+p[l>>3];m=d+40|0;p[l>>3]=+p[m>>3];p[m>>3]=e;m=c+48|0;e=+p[m>>3];n=d+48|0;p[m>>3]=+p[n>>3];p[n>>3]=e;n=c+56|0;e=+p[n>>3];o=d+56|0;p[n>>3]=+p[o>>3];p[o>>3]=e;o=c+64|0;e=+p[o>>3];g=d+64|0;p[o>>3]=+p[g>>3];p[g>>3]=e;g=d+72|0;d=c+72|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];if((c|0)==(a|0))break;g=c+-88|0;F=+$1a(D);if(!(F<+$1a(g)))break;e=+p[c>>3];d=c;c=g}F=+p[D>>3];p[D>>3]=+p[c>>3];p[c>>3]=F;F=+p[B>>3];p[B>>3]=+p[h>>3];p[h>>3]=F;F=+p[C>>3];p[C>>3]=+p[i>>3];p[i>>3]=F;F=+p[z>>3];p[z>>3]=+p[j>>3];p[j>>3]=F;F=+p[s>>3];p[s>>3]=+p[k>>3];p[k>>3]=F;F=+p[t>>3];p[t>>3]=+p[l>>3];p[l>>3]=F;F=+p[A>>3];p[A>>3]=+p[m>>3];p[m>>3]=F;F=+p[w>>3];p[w>>3]=+p[n>>3];p[n>>3]=F;F=+p[x>>3];p[x>>3]=+p[o>>3];p[o>>3]=F;f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2]}c=q+88|0;if((c|0)==(b|0))break;else{o=q;q=c;c=o}}u=E;return}function DKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0;F=u;u=u+96|0;E=F;switch((b-a|0)/88|0|0){case 2:{c=b+-88|0;if(!(+$1a(c)<+$1a(a))){b=1;u=F;return b|0}y=a+8|0;z=a+16|0;N=+p[a>>3];M=+p[y>>3];L=+p[z>>3];A=a+24|0;B=a+32|0;C=a+40|0;K=+p[A>>3];J=+p[B>>3];I=+p[C>>3];D=a+48|0;t=a+56|0;v=a+64|0;H=+p[D>>3];G=+p[t>>3];e=+p[v>>3];w=a+72|0;f[E>>2]=f[w>>2];f[E+4>>2]=f[w+4>>2];f[E+8>>2]=f[w+8>>2];O=+p[c>>3];p[c>>3]=N;p[a>>3]=O;x=b+-80|0;O=+p[x>>3];p[x>>3]=+p[y>>3];p[y>>3]=O;y=b+-72|0;O=+p[y>>3];p[y>>3]=+p[z>>3];p[z>>3]=O;z=b+-64|0;O=+p[z>>3];p[z>>3]=+p[A>>3];p[A>>3]=O;A=b+-56|0;O=+p[A>>3];p[A>>3]=+p[B>>3];p[B>>3]=O;B=b+-48|0;O=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=O;C=b+-40|0;O=+p[C>>3];p[C>>3]=+p[D>>3];p[D>>3]=O;D=b+-32|0;p[t>>3]=+p[D>>3];a=b+-24|0;p[v>>3]=+p[a>>3];b=b+-16|0;f[w>>2]=f[b>>2];f[w+4>>2]=f[b+4>>2];f[w+8>>2]=f[b+8>>2];p[c>>3]=N;p[x>>3]=M;p[y>>3]=L;p[z>>3]=K;p[A>>3]=J;p[B>>3]=I;p[C>>3]=H;p[D>>3]=G;p[a>>3]=e;f[b>>2]=f[E>>2];f[b+4>>2]=f[E+4>>2];f[b+8>>2]=f[E+8>>2];b=1;u=F;return b|0}case 3:{zKa(a,a+88|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 4:{AKa(a,a+88|0,a+176|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 5:{BKa(a,a+88|0,a+176|0,a+264|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 1:case 0:{b=1;u=F;return b|0}default:{d=a+176|0;zKa(a,a+88|0,d,c)|0;c=a+264|0;a:do if((c|0)==(b|0)){d=1;c=0}else{s=E+8|0;t=E+16|0;v=E+24|0;w=E+32|0;x=E+40|0;y=E+48|0;z=E+56|0;A=E+64|0;B=E+72|0;C=E+24|0;D=E+48|0;r=c;c=0;while(1){O=+$1a(r);if(O<+$1a(d)){f[E>>2]=f[r>>2];f[E+4>>2]=f[r+4>>2];f[E+8>>2]=f[r+8>>2];f[E+12>>2]=f[r+12>>2];f[E+16>>2]=f[r+16>>2];f[E+20>>2]=f[r+20>>2];e=+p[r>>3];p[E>>3]=e;p[s>>3]=+p[r+8>>3];p[t>>3]=+p[r+16>>3];g=r+24|0;f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];f[v+12>>2]=f[g+12>>2];f[v+16>>2]=f[g+16>>2];f[v+20>>2]=f[g+20>>2];p[v>>3]=+p[g>>3];p[w>>3]=+p[r+32>>3];p[x>>3]=+p[r+40>>3];g=r+48|0;f[y>>2]=f[g>>2];f[y+4>>2]=f[g+4>>2];f[y+8>>2]=f[g+8>>2];f[y+12>>2]=f[g+12>>2];f[y+16>>2]=f[g+16>>2];f[y+20>>2]=f[g+20>>2];p[y>>3]=+p[g>>3];p[z>>3]=+p[r+56>>3];p[A>>3]=+p[r+64>>3];g=r+72|0;f[B>>2]=f[g>>2];f[B+4>>2]=f[g+4>>2];f[B+8>>2]=f[g+8>>2];g=r;while(1){O=+p[d>>3];p[d>>3]=e;p[g>>3]=O;n=d+8|0;O=+p[n>>3];o=g+8|0;p[n>>3]=+p[o>>3];p[o>>3]=O;o=d+16|0;O=+p[o>>3];q=g+16|0;p[o>>3]=+p[q>>3];p[q>>3]=O;q=d+24|0;O=+p[q>>3];i=g+24|0;p[q>>3]=+p[i>>3];p[i>>3]=O;i=d+32|0;O=+p[i>>3];j=g+32|0;p[i>>3]=+p[j>>3];p[j>>3]=O;j=d+40|0;O=+p[j>>3];k=g+40|0;p[j>>3]=+p[k>>3];p[k>>3]=O;k=d+48|0;O=+p[k>>3];l=g+48|0;p[k>>3]=+p[l>>3];p[l>>3]=O;l=d+56|0;O=+p[l>>3];m=g+56|0;p[l>>3]=+p[m>>3];p[m>>3]=O;m=d+64|0;O=+p[m>>3];h=g+64|0;p[m>>3]=+p[h>>3];p[h>>3]=O;h=g+72|0;g=d+72|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];if((d|0)==(a|0))break;h=d+-88|0;O=+$1a(E);if(!(O<+$1a(h)))break;e=+p[d>>3];g=d;d=h}O=+p[E>>3];p[E>>3]=+p[d>>3];p[d>>3]=O;O=+p[s>>3];p[s>>3]=+p[n>>3];p[n>>3]=O;O=+p[t>>3];p[t>>3]=+p[o>>3];p[o>>3]=O;O=+p[C>>3];p[C>>3]=+p[q>>3];p[q>>3]=O;O=+p[w>>3];p[w>>3]=+p[i>>3];p[i>>3]=O;O=+p[x>>3];p[x>>3]=+p[j>>3];p[j>>3]=O;O=+p[D>>3];p[D>>3]=+p[k>>3];p[k>>3]=O;O=+p[z>>3];p[z>>3]=+p[l>>3];p[l>>3]=O;O=+p[A>>3];p[A>>3]=+p[m>>3];p[m>>3]=O;f[g>>2]=f[B>>2];f[g+4>>2]=f[B+4>>2];f[g+8>>2]=f[B+8>>2];c=c+1|0;if((c|0)==8){d=0;c=(r+88|0)==(b|0);break a}}d=r+88|0;if((d|0)==(b|0)){d=1;c=0;break}else{q=r;r=d;d=q}}}while(0);b=c|d;u=F;return b|0}}return 0}function EKa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>511){f[b>>2]=c+-512;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{Jrb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();g=Wpb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){Zpb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0<d>>>0){if((c|0)!=(b|0)){o=Wpb(4096)|0;f[l>>2]=o;FKa(a,l);u=p;return}j=Wpb(4096)|0;f[l>>2]=j;GKa(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{Jrb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();e=Wpb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){Zpb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)ud();q=e>>2;e=Wpb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=Wpb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();else{q=Wpb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);Zpb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;HKa(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)Zpb(g);u=p;return}function FKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{Jrb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)ud();g=Wpb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){Zpb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function GKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function HKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function IKa(a){a=a|0;Zpb(a);return}function JKa(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=31328;f[b+4>>2]=f[a+4>>2];return b|0}function KKa(a,b){a=a|0;b=b|0;f[b>>2]=31328;f[b+4>>2]=f[a+4>>2];return}function LKa(a){a=a|0;return}function MKa(a){a=a|0;Zpb(a);return}function NKa(a,b){a=a|0;b=b|0;QKa(a+4|0,b);return}function OKa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==148e3?a+4|0:0)|0}function PKa(a){a=a|0;return 11184}function QKa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0,P=0.0,Q=0,R=0,S=0;M=u;u=u+128|0;K=M+32|0;L=M;a=f[a>>2]|0;c=f[b+32>>2]|0;J=f[b+36>>2]|0;if((c|0)==(J|0)){u=M;return}y=a+8|0;z=a+236|0;A=a+248|0;B=a+104|0;C=L+8|0;D=K+16|0;E=L+16|0;F=K+40|0;G=L+24|0;H=K+64|0;I=a+112|0;j=a+240|0;k=L+8|0;l=L+16|0;m=L+24|0;n=L+8|0;o=L+16|0;q=L+24|0;r=L+16|0;s=L+24|0;t=L+16|0;v=L+24|0;w=L+16|0;x=L+24|0;do{qKa(K,c,f[y>>2]|0);if(a2a(K,z,A)|0){a=f[j>>2]|0;g=f[z>>2]|0;h=g;i=a;if((a|0)!=(g|0)){b=(a-g|0)/24|0;d=+p[B>>3];p[L>>3]=d;R=h+16|0;O=+p[R>>3];p[k>>3]=O;Q=h+40|0;e=+p[Q>>3];p[l>>3]=e;a=h+64|0;P=+p[a>>3];p[m>>3]=P;d=O<d?+p[k>>3]:+p[L>>3];d=e<d?+p[r>>3]:d;d=P<d?+p[s>>3]:d;p[B>>3]=d;P=+p[I>>3];p[L>>3]=P;e=+p[R>>3];p[n>>3]=e;O=+p[Q>>3];p[o>>3]=O;N=+p[a>>3];p[q>>3]=N;e=P<e?e:+p[L>>3];e=e<O?+p[t>>3]:e;e=e<N?+p[v>>3]:e;p[I>>3]=e;if(b>>>0>3){a=3;do{R=h+(a*24|0)|0;p[L>>3]=d;S=h+(a*24|0)+16|0;P=+p[S>>3];p[k>>3]=P;Q=R+24+16|0;O=+p[Q>>3];p[l>>3]=O;R=R+48+16|0;N=+p[R>>3];p[m>>3]=N;P=P<d?+p[k>>3]:+p[L>>3];P=O<P?+p[r>>3]:P;d=N<P?+p[s>>3]:P;p[B>>3]=d;p[L>>3]=e;P=+p[S>>3];p[n>>3]=P;N=+p[Q>>3];p[o>>3]=N;O=+p[R>>3];p[q>>3]=O;P=e<P?P:+p[L>>3];P=P<N?+p[t>>3]:P;e=P<O?+p[v>>3]:P;p[I>>3]=e;a=a+3|0}while(a>>>0<b>>>0);a=g}else a=g}if((i|0)!=(h|0))f[j>>2]=i+(~(((i+-24-a|0)>>>0)/24|0)*24|0)}else{P=+p[B>>3];p[L>>3]=P;e=+p[D>>3];p[C>>3]=e;N=+p[F>>3];p[E>>3]=N;O=+p[H>>3];p[G>>3]=O;P=e<P?e:+p[L>>3];P=N<P?+p[w>>3]:P;p[B>>3]=O<P?+p[x>>3]:P;P=+p[I>>3];P=P<e?e:P;P=P<N?N:P;p[I>>3]=P<O?O:P}c=c+88|0}while((c|0)!=(J|0));u=M;return}function RKa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;x=u;u=u+416|0;w=x+80|0;d=x+376|0;s=x+368|0;m=x+392|0;o=x+352|0;t=x+132|0;v=x;l=x+120|0;e=x+104|0;q=x+116|0;d2a(d);i=+n[d+8>>2];z=i-+n[d>>2];n[s>>2]=z;j=+n[d+12>>2];y=j-+n[d+4>>2];r=s+4|0;n[r>>2]=y;if(!(!(z<=1.0)&!(y<=1.0))){u=x;return}b[m>>0]=0;b[m+1>>0]=1;Q=m+2|0;P=m+8|0;b[Q>>0]=0;b[Q+1>>0]=0;b[Q+2>>0]=0;b[Q+3>>0]=0;b[Q+4>>0]=0;b[Q+5>>0]=0;Q=m+12|0;b[P>>0]=1;b[P+1>>0]=1;b[P+2>>0]=1;b[P+3>>0]=1;b[Q>>0]=0;b[Q+1>>0]=0;b[Q+2>>0]=0;b[Q+3>>0]=0;n[w>>2]=i+-1.0;n[w+4>>2]=j+-1.0;QXa(t,c,d,w,s,o);f[v>>2]=f[t>>2];Q=v+4|0;f[Q>>2]=f[t+4>>2];P=v+8|0;f[P>>2]=f[t+8>>2];O=v+12|0;n[O>>2]=-+n[t+12>>2];N=v+16|0;f[N>>2]=f[t+16>>2];M=v+20|0;f[M>>2]=f[t+20>>2];L=v+24|0;f[L>>2]=f[t+24>>2];K=v+28|0;n[K>>2]=-+n[t+28>>2];J=v+32|0;f[J>>2]=f[t+32>>2];I=v+36|0;f[I>>2]=f[t+36>>2];H=v+40|0;f[H>>2]=f[t+40>>2];G=v+44|0;n[G>>2]=-+n[t+44>>2];F=v+48|0;f[F>>2]=f[t+48>>2];E=v+52|0;f[E>>2]=f[t+52>>2];D=v+56|0;f[D>>2]=f[t+56>>2];C=v+60|0;n[C>>2]=-+n[t+60>>2];B=v+64|0;f[B>>2]=f[t+64>>2];A=v+68|0;f[A>>2]=f[t+68>>2];d=v+72|0;f[d>>2]=f[t+72>>2];g=v+76|0;n[g>>2]=-+n[t+76>>2];f[l>>2]=0;k=l+4|0;f[k>>2]=0;f[l+8>>2]=0;SKa(l,5);h=f[l>>2]|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[Q>>2];f[h+8>>2]=f[P>>2];f[h+12>>2]=f[O>>2];f[h+44>>2]=f[N>>2];f[h+48>>2]=f[M>>2];f[h+52>>2]=f[L>>2];f[h+56>>2]=f[K>>2];f[h+88>>2]=f[J>>2];f[h+92>>2]=f[I>>2];f[h+96>>2]=f[H>>2];f[h+100>>2]=f[G>>2];f[h+132>>2]=f[F>>2];f[h+136>>2]=f[E>>2];f[h+140>>2]=f[D>>2];f[h+144>>2]=f[C>>2];f[h+176>>2]=f[B>>2];f[h+180>>2]=f[A>>2];f[h+184>>2]=f[d>>2];f[h+188>>2]=f[g>>2];TKa(l);UKa(e,l);h=Wpb(56)|0;p[w>>3]=+n[o>>2];p[w+8>>3]=+n[o+4>>2];p[w+16>>3]=+n[o+8>>2];xZa(h,e,w);g=f[e>>2]|0;if(g|0){d=e+4|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~(((e+-88-g|0)>>>0)/88|0)*88|0);Zpb(g)}g=$Xa(m,c,5,v,o)|0;d=f[l>>2]|0;if(d|0){e=f[k>>2]|0;if((e|0)!=(d|0))f[k>>2]=e+(~(((e+-44-d|0)>>>0)/44|0)*44|0);Zpb(d)}VKa(w,0,c,g);XWa(o,c,0,0,0);f[q>>2]=h;DYa(t,m,c,o,q);d=f[q>>2]|0;f[q>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);p[v>>3]=+n[s>>2];p[v+8>>3]=+n[r>>2];WKa(a,c,t,v,w);CYa(t);d=f[w>>2]|0;if(d|0){h=w+4|0;e=f[h>>2]|0;if((e|0)!=(d|0)){do{g=e+-8|0;f[h>>2]=g;e=f[e+-4>>2]|0;if(!e)e=g;else{Ppb(e);e=f[h>>2]|0}}while((e|0)!=(d|0));d=f[w>>2]|0}Zpb(d)}u=x;return}function SKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/44|0)>>>0>=b>>>0){do{d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=(f[k>>2]|0)+44|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/44|0;c=e+b|0;if(c>>>0>97612893)fob(a);g=(g-d|0)/44|0;i=g<<1;c=g>>>0<48806446?(i>>>0<c>>>0?c:i):97612893;do if(!c)h=0;else if(c>>>0>97612893)ud();else{h=Wpb(c*44|0)|0;break}while(0);i=h+(e*44|0)|0;g=i;e=h+(c*44|0)|0;c=i;h=g;do{d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=h+44|0;h=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(c|0))b=g;else{b=i;do{i=b;b=b+-44|0;g=d;d=d+-44|0;f[b>>2]=f[d>>2];f[i+-40>>2]=f[g+-40>>2];f[i+-36>>2]=f[g+-36>>2];f[i+-32>>2]=f[g+-32>>2];f[i+-28>>2]=f[g+-28>>2];f[i+-24>>2]=f[g+-24>>2];f[i+-20>>2]=f[g+-20>>2];f[i+-16>>2]=f[g+-16>>2];f[i+-12>>2]=f[g+-12>>2];f[i+-8>>2]=f[g+-8>>2];f[i+-4>>2]=f[g+-4>>2]}while((d|0)!=(c|0));c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=h;f[j>>2]=e;if(!c)return;Zpb(c);return}function TKa(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0;d=f[a>>2]|0;b=(f[a+4>>2]|0)-d|0;c=(b|0)/44|0;b=(b|0)==0;if(b)return;else a=0;do{j=d+(a*44|0)+12|0;n[j>>2]=-+n[j>>2];h=+n[d+(a*44|0)>>2];g=+K(+h);n[d+(a*44|0)+16>>2]=g;g=+n[d+(a*44|0)+4>>2];e=+K(+g);n[d+(a*44|0)+20>>2]=e;e=+n[d+(a*44|0)+8>>2];i=+K(+e);n[d+(a*44|0)+24>>2]=i;n[d+(a*44|0)+28>>2]=h>=0.0?1.0:-1.0;n[d+(a*44|0)+32>>2]=g>=0.0?1.0:-1.0;n[d+(a*44|0)+36>>2]=e>=0.0?1.0:-1.0;a=a+1|0}while(a>>>0<c>>>0);if(b)return;else a=0;do{g=+n[d+(a*44|0)>>2];h=+n[d+(a*44|0)+4>>2];i=+n[d+(a*44|0)+8>>2];i=g*g+(h*h+i*i);n[d+(a*44|0)+40>>2]=i==0.0?0.0:1.0/i;a=a+1|0}while(a>>>0<c>>>0);return}function UKa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0;q=u;u=u+32|0;d=q+12|0;l=q;c=f[b>>2]|0;k=(f[b+4>>2]|0)-c|0;m=(k|0)/44|0;f[d>>2]=0;o=d+4|0;f[o>>2]=0;f[d+8>>2]=0;k=(k|0)==0;if(k){j=0;e=0;i=0}else{if(m>>>0>268435455)fob(d);g=Wpb(m<<4)|0;f[d>>2]=g;e=g+(m<<4)|0;f[d+8>>2]=e;f[o>>2]=e;b=0;do{f[g+(b<<4)>>2]=f[c+(b*44|0)>>2];f[g+(b<<4)+4>>2]=f[c+(b*44|0)+4>>2];f[g+(b<<4)+8>>2]=f[c+(b*44|0)+8>>2];n[g+(b<<4)+12>>2]=-+n[c+(b*44|0)+12>>2];b=b+1|0}while(b>>>0<m>>>0);j=g;i=g}f[l>>2]=0;d=l+4|0;f[d>>2]=0;f[l+8>>2]=0;if(k){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;HLa(a)}else{if(m>>>0>134217727)fob(l);g=Wpb(m<<5)|0;f[l>>2]=g;h=g+(m<<5)|0;f[l+8>>2]=h;f[d>>2]=h;b=0;do{t=+n[j+(b<<4)+4>>2];s=+n[j+(b<<4)+8>>2];r=+n[j+(b<<4)+12>>2];p[g+(b<<5)>>3]=+n[j+(b<<4)>>2];p[g+(b<<5)+8>>3]=t;p[g+(b<<5)+16>>3]=s;p[g+(b<<5)+24>>3]=r;b=b+1|0}while(b>>>0<m>>>0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if(!k){GLa(a,m);c=f[a>>2]|0;b=0;do{p[c+(b*88|0)>>3]=+p[g+(b<<5)>>3];p[c+(b*88|0)+8>>3]=+p[g+(b<<5)+8>>3];p[c+(b*88|0)+16>>3]=+p[g+(b<<5)+16>>3];p[c+(b*88|0)+24>>3]=+p[g+(b<<5)+24>>3];b=b+1|0}while((b|0)!=(m|0))}HLa(a);if((h|0)!=(g|0))f[d>>2]=h+(~((h+-32-g|0)>>>5)<<5);Zpb(g)}if(!j){u=q;return}if((e|0)!=(j|0))f[o>>2]=e+(~((e+-16-j|0)>>>4)<<4);Zpb(i);u=q;return}function VKa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;j=o+8|0;k=o;f[a>>2]=0;l=a+4|0;f[l>>2]=0;f[a+8>>2]=0;jYa(c,d);m=j+4|0;n=j+8|0;b=Wpb(8192)|0;f[j>>2]=b;f[m>>2]=b;f[n>>2]=b+8192;nYa(c,d,1024,j);b=f[j>>2]|0;e=f[m>>2]|0;if((b|0)!=(e|0)){h=a+8|0;i=k+4|0;g=e;do{if((b|0)!=(g|0)){do{mwa(k,c,b);e=f[l>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=f[k>>2];f[e+4>>2]=f[i>>2];f[k>>2]=0;f[i>>2]=0;f[l>>2]=e+8}else{FLa(a,k);e=f[i>>2]|0;if(e|0)Ppb(e)}b=b+8|0}while((b|0)!=(g|0));e=f[j>>2]|0;g=f[m>>2]|0;b=e;if((g|0)!=(e|0))f[m>>2]=g+(~((g+-8-e|0)>>>3)<<3)}nYa(c,d,(f[n>>2]|0)-b>>3,j);b=f[j>>2]|0;g=f[m>>2]|0}while((b|0)!=(g|0))}if(!b){kYa(c,d);u=o;return}Zpb(b);kYa(c,d);u=o;return}function WKa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;F=u;u=u+608|0;C=F+216|0;y=F+184|0;z=F+600|0;n=F+584|0;E=F+160|0;D=F+88|0;B=F+64|0;t=F+24|0;v=F;w=ENa(uva(c)|0)|0;jXa(C,w,e,0);p[y>>3]=-+p[C+8>>3];q=y+8|0;p[q>>3]=-+p[C+16>>3];r=y+16|0;p[r>>3]=-+p[C+24>>3];s=y+24|0;p[s>>3]=-+p[C+32>>3];C=Iga(w)|0;f[n>>2]=a;f[n+4>>2]=y;f[n+8>>2]=C;f[n+12>>2]=z;C=E+16|0;x=Wpb(20)|0;f[x>>2]=31448;f[x+4>>2]=a;f[x+8>>2]=z;f[x+12>>2]=y;f[x+16>>2]=n;f[C>>2]=x;x=D+16|0;f[D>>2]=31492;f[D+4>>2]=F+112;f[D+8>>2]=y;f[D+12>>2]=a;f[x>>2]=D;n=B+16|0;f[B>>2]=31536;f[n>>2]=B;o=cXa(c)|0;e=f[g>>2]|0;i=f[g+4>>2]|0;if((e|0)!=(i|0)){j=t+8|0;k=t+16|0;l=t+24|0;m=z+4|0;h=e;do{PWa(t,c,w,f[h>>2]|0,0);G=+p[s>>3]+(+p[y>>3]*+p[t>>3]+(+p[q>>3]*+p[j>>3]+ +p[r>>3]*+p[k>>3]));b[m>>0]=(G<0.0?1:G*G<+p[l>>3])&1;e=f[h>>2]|0;a=f[(f[(f[e+4>>2]|0)+44>>2]|0)+48>>2]|0;if(!(a&4)){f[z>>2]=o;if(a&1){e=dXa(o)|0;f[z>>2]=e;e=f[h>>2]|0}a=f[e+96>>2]|0;g=a+120|0;e=b[g>>0]|0;if(e&8){koa(a);e=b[g>>0]|0}if(e&1){e=dXa(f[z>>2]|0)|0;A=23}}else{e=0;A=23}if((A|0)==23){A=0;f[z>>2]=e}BZa(d,f[h>>2]|0,t,v,E,D,B)|0;h=h+8|0}while((h|0)!=(i|0))}e=f[n>>2]|0;if((B|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[x>>2]|0;if((D|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[C>>2]|0;if((E|0)==(e|0)){fh[f[(f[e>>2]|0)+16>>2]&2047](e);u=F;return}if(!e){u=F;return}fh[f[(f[e>>2]|0)+20>>2]&2047](e);u=F;return}function XKa(a){a=a|0;return}function YKa(a){a=a|0;Zpb(a);return}function ZKa(a){a=a|0;a=Wpb(8)|0;f[a>>2]=31536;return a|0}function _Ka(a,b){a=a|0;b=b|0;f[b>>2]=31536;return}function $Ka(a){a=a|0;return}function aLa(a){a=a|0;Zpb(a);return}function bLa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function cLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==149102?a+4|0:0)|0}function dLa(a){a=a|0;return 11216}function eLa(a){a=a|0;return}function fLa(a){a=a|0;Zpb(a);return}function gLa(a){a=a|0;var b=0,c=0;b=Wpb(16)|0;c=a+4|0;f[b>>2]=31492;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];return b|0}function hLa(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=31492;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return}function iLa(a){a=a|0;return}function jLa(a){a=a|0;Zpb(a);return}function kLa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,q=0.0,r=0.0,s=0.0,t=0;o=u;u=u+48|0;k=o+16|0;m=o;g=f[b>>2]|0;j=f[d>>2]|0;l=f[a+12>>2]|0;e=g+24|0;h=+p[g>>3];b=g+8|0;d=g+32|0;if(h==+p[e>>3])if(+p[b>>3]==+p[d>>3])if(+p[g+16>>3]==+p[g+40>>3]){u=o;return}i=a+4|0;t=f[i>>2]|0;p[t>>3]=h;p[t+8>>3]=+p[b>>3];p[t+16>>3]=+p[g+16>>3];b=f[i>>2]|0;p[b+24>>3]=+p[e>>3];p[b+32>>3]=+p[d>>3];p[b+40>>3]=+p[g+40>>3];b=f[a+8>>2]|0;g=f[i>>2]|0;r=+p[b>>3];q=+p[b+8>>3];h=+p[b+16>>3];s=+p[b+24>>3];d=g+24|0;e=s+(r*+p[g>>3]+(q*+p[g+8>>3]+h*+p[g+16>>3]))>=0.0;if(e^s+(r*+p[d>>3]+(q*+p[g+32>>3]+h*+p[g+40>>3]))>=0.0){bia(k,b,g,d);t=(e^1)&1;s=+p[k>>3];e=g+(t*24|0)|0;p[k>>3]=+p[e>>3];p[e>>3]=s;e=k+8|0;s=+p[e>>3];a=g+(t*24|0)+8|0;p[e>>3]=+p[a>>3];p[a>>3]=s;p[g+(t*24|0)+16>>3]=+p[k+16>>3];g=f[i>>2]|0}else if(e){t=l+2936|0;f[t>>2]=(f[t>>2]|0)+1;u=o;return}e=g+24|0;f2a(k,c,j);t=ieb(+n[k>>2]*255.0)|0;j=ieb(+n[k+4>>2]*255.0)|0;d=ieb(+n[k+8>>2]*255.0)|0;b=~~+Prb(+(+n[k+12>>2]*255.0))&255;i=c+116|0;c=f[i+4>>2]|0;k=m;f[k>>2]=f[i>>2];f[k+4>>2]=c;f[m+8>>2]=j<<8&65280|t&255|d<<16&16711680|(b&255)<<24;b=l+2652|0;d=f[b>>2]|0;if(d>>>0<(f[l+2656>>2]|0)>>>0){p[d>>3]=+p[g>>3];p[d+8>>3]=+p[g+8>>3];p[d+16>>3]=+p[g+16>>3];p[d+24>>3]=+p[e>>3];p[d+32>>3]=+p[g+32>>3];p[d+40>>3]=+p[g+40>>3];t=d+48|0;f[t>>2]=f[m>>2];f[t+4>>2]=f[m+4>>2];f[t+8>>2]=f[m+8>>2];f[b>>2]=(f[b>>2]|0)+64}else nLa(l+2648|0,g,e,m);t=l+2932|0;f[t>>2]=(f[t>>2]|0)+1;u=o;return}function lLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==149692?a+4|0:0)|0}function mLa(a){a=a|0;return 11248}function nLa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;q=a+4|0;e=f[q>>2]|0;g=f[a>>2]|0;k=e-g>>6;i=k+1|0;n=g;h=e;if(i>>>0>67108863)fob(a);o=a+8|0;l=(f[o>>2]|0)-g|0;m=l>>5;i=l>>6>>>0<33554431?(m>>>0<i>>>0?i:m):67108863;do if(!i)j=0;else if(i>>>0>67108863)ud();else{j=Wpb(i<<6)|0;break}while(0);l=j+(k<<6)|0;g=l;m=j+(i<<6)|0;p[l>>3]=+p[b>>3];p[j+(k<<6)+8>>3]=+p[b+8>>3];p[j+(k<<6)+16>>3]=+p[b+16>>3];p[j+(k<<6)+24>>3]=+p[c>>3];p[j+(k<<6)+32>>3]=+p[c+8>>3];p[j+(k<<6)+40>>3]=+p[c+16>>3];i=j+(k<<6)+48|0;f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];f[i+8>>2]=f[d+8>>2];i=l+64|0;if((h|0)!=(n|0)){e=l;do{k=h;h=h+-64|0;p[e+-64>>3]=+p[h>>3];p[e+-56>>3]=+p[k+-56>>3];p[e+-48>>3]=+p[k+-48>>3];p[e+-40>>3]=+p[k+-40>>3];p[e+-32>>3]=+p[k+-32>>3];p[e+-24>>3]=+p[k+-24>>3];l=e+-16|0;k=k+-16|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];e=g+-64|0;g=e}while((h|0)!=(n|0));e=f[a>>2]|0}f[a>>2]=g;f[q>>2]=i;f[o>>2]=m;if(!e)return;Zpb(e);return}function oLa(a){a=a|0;Zpb(a);return}function pLa(a){a=a|0;var b=0,c=0;b=Wpb(20)|0;c=a+4|0;f[b>>2]=31448;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];return b|0}function qLa(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=31448;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];return}function rLa(a){a=a|0;return}function sLa(a){a=a|0;Zpb(a);return}function tLa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0;o=u;u=u+160|0;l=o+16|0;m=o;j=f[c>>2]|0;c=f[e>>2]|0;e=f[a+4>>2]|0;i=+p[j>>3];h=+p[j+24>>3];if(i==h)if(+p[j+8>>3]==+p[j+32>>3]){if(!(+p[j+16>>3]==+p[j+40>>3]))k=4}else k=4;else k=4;do if((k|0)==4){g=+p[j+48>>3];if(i==g)if(+p[j+8>>3]==+p[j+56>>3])if(+p[j+16>>3]==+p[j+64>>3])break;if(h==g)if(+p[j+32>>3]==+p[j+56>>3])if(+p[j+40>>3]==+p[j+64>>3])break;f2a(l,d,c);c=ieb(+n[l>>2]*255.0)|0;q=ieb(+n[l+4>>2]*255.0)|0;e=ieb(+n[l+8>>2]*255.0)|0;k=~~+Prb(+(+n[l+12>>2]*255.0))&255;s=d+116|0;r=f[s+4>>2]|0;d=m;f[d>>2]=f[s>>2];f[d+4>>2]=r;f[m+8>>2]=q<<8&65280|c&255|e<<16&16711680|(k&255)<<24;if(!(b[(f[a+8>>2]|0)+4>>0]|0))wLa(f[a+16>>2]|0,j,m);else{e=$ha(f[a+12>>2]|0,j,l)|0;if(e|0){c=a+16|0;wLa(f[c>>2]|0,l,m);if(e>>>0>3)wLa(f[c>>2]|0,l+72|0,m)}}u=o;return}while(0);s=e+2924|0;f[s>>2]=(f[s>>2]|0)+1;u=o;return}function uLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==150282?a+4|0:0)|0}function vLa(a){a=a|0;return 11280}function wLa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=u;u=u+208|0;C=J+144|0;e=J+120|0;g=J+96|0;i=J+72|0;v=J+48|0;z=J+24|0;A=J;I=f[a>>2]|0;if(b[I+24>>0]|0){B=xLa(I+2940|0,d)|0;j=+p[c>>3];p[e>>3]=j;D=c+8|0;k=+p[D>>3];p[e+8>>3]=k;E=c+16|0;q=+p[E>>3];p[e+16>>3]=q;F=c+24|0;t=+p[F>>3];p[g>>3]=t;G=c+32|0;s=+p[G>>3];p[g+8>>3]=s;H=c+40|0;r=+p[H>>3];p[g+16>>3]=r;if(j!=t){l=t;m=j}else{y=k!=s?1:2;l=+p[g+(y<<3)>>3];m=+p[e+(y<<3)>>3]}if(m<l){e=yLa(e,g)|0;m=r;n=s;o=t;l=q}else{e=yLa(g,e)|0;m=q;n=k;o=j;l=r;k=s;j=t}p[C>>3]=j;p[C+8>>3]=k;p[C+16>>3]=l;p[C+24>>3]=o;p[C+32>>3]=n;p[C+40>>3]=m;f[C+48>>2]=e;e=zLa(B,C)|0;w=c+48|0;x=c+56|0;y=c+64|0;g=e+144|0;h=f[g>>2]|0;if((h|0)!=2){t=+p[y>>3];s=+p[x>>3];r=+p[w>>3];q=+p[H>>3];o=+p[G>>3];n=+p[F>>3];m=+p[E>>3];l=+p[D>>3];k=+p[c>>3];f[g>>2]=h+1;p[e+(h*72|0)>>3]=k;p[e+(h*72|0)+8>>3]=l;p[e+(h*72|0)+16>>3]=m;p[e+(h*72|0)+24>>3]=n;p[e+(h*72|0)+32>>3]=o;p[e+(h*72|0)+40>>3]=q;p[e+(h*72|0)+48>>3]=r;p[e+(h*72|0)+56>>3]=s;p[e+(h*72|0)+64>>3]=t}j=+p[F>>3];p[i>>3]=j;k=+p[G>>3];p[i+8>>3]=k;q=+p[H>>3];p[i+16>>3]=q;t=+p[w>>3];p[v>>3]=t;s=+p[x>>3];p[v+8>>3]=s;r=+p[y>>3];p[v+16>>3]=r;if(j!=t){l=t;m=j}else{h=k!=s?1:2;l=+p[v+(h<<3)>>3];m=+p[i+(h<<3)>>3]}if(m<l){e=yLa(i,v)|0;m=r;n=s;o=t;l=q}else{e=yLa(v,i)|0;m=q;n=k;o=j;l=r;k=s;j=t}p[C>>3]=j;p[C+8>>3]=k;p[C+16>>3]=l;p[C+24>>3]=o;p[C+32>>3]=n;p[C+40>>3]=m;f[C+48>>2]=e;e=zLa(B,C)|0;g=e+144|0;h=f[g>>2]|0;if((h|0)!=2){t=+p[y>>3];s=+p[x>>3];r=+p[w>>3];q=+p[H>>3];o=+p[G>>3];n=+p[F>>3];m=+p[E>>3];l=+p[D>>3];k=+p[c>>3];f[g>>2]=h+1;p[e+(h*72|0)>>3]=k;p[e+(h*72|0)+8>>3]=l;p[e+(h*72|0)+16>>3]=m;p[e+(h*72|0)+24>>3]=n;p[e+(h*72|0)+32>>3]=o;p[e+(h*72|0)+40>>3]=q;p[e+(h*72|0)+48>>3]=r;p[e+(h*72|0)+56>>3]=s;p[e+(h*72|0)+64>>3]=t}j=+p[w>>3];p[z>>3]=j;k=+p[x>>3];p[z+8>>3]=k;q=+p[y>>3];p[z+16>>3]=q;t=+p[c>>3];p[A>>3]=t;s=+p[D>>3];p[A+8>>3]=s;r=+p[E>>3];p[A+16>>3]=r;if(j!=t){l=t;m=j}else{v=k!=s?1:2;l=+p[A+(v<<3)>>3];m=+p[z+(v<<3)>>3]}if(m<l){e=yLa(z,A)|0;m=r;n=s;o=t;l=q}else{e=yLa(A,z)|0;m=q;n=k;o=j;l=r;k=s;j=t}p[C>>3]=j;p[C+8>>3]=k;p[C+16>>3]=l;p[C+24>>3]=o;p[C+32>>3]=n;p[C+40>>3]=m;f[C+48>>2]=e;e=zLa(B,C)|0;g=e+144|0;h=f[g>>2]|0;if((h|0)!=2){t=+p[y>>3];s=+p[x>>3];r=+p[w>>3];q=+p[H>>3];o=+p[G>>3];n=+p[F>>3];m=+p[E>>3];l=+p[D>>3];k=+p[c>>3];f[g>>2]=h+1;p[e+(h*72|0)>>3]=k;p[e+(h*72|0)+8>>3]=l;p[e+(h*72|0)+16>>3]=m;p[e+(h*72|0)+24>>3]=n;p[e+(h*72|0)+32>>3]=o;p[e+(h*72|0)+40>>3]=q;p[e+(h*72|0)+48>>3]=r;p[e+(h*72|0)+56>>3]=s;p[e+(h*72|0)+64>>3]=t}}if(eXa(f[a+4>>2]|0,c,f[a+8>>2]|0,f[f[a+12>>2]>>2]|0,0)|0){d=I+2920|0;I=f[d>>2]|0;I=I+1|0;f[d>>2]=I;u=J;return}e=c+24|0;g=c+48|0;h=I+2640|0;i=f[h>>2]|0;if(i>>>0<(f[I+2644>>2]|0)>>>0){p[i>>3]=+p[c>>3];p[i+8>>3]=+p[c+8>>3];p[i+16>>3]=+p[c+16>>3];p[i+24>>3]=+p[e>>3];p[i+32>>3]=+p[c+32>>3];p[i+40>>3]=+p[c+40>>3];p[i+48>>3]=+p[g>>3];p[i+56>>3]=+p[c+56>>3];p[i+64>>3]=+p[c+64>>3];c=i+72|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[h>>2]=(f[h>>2]|0)+88}else ALa(I+2636|0,c,e,g,d);d=I+2928|0;I=f[d>>2]|0;I=I+1|0;f[d>>2]=I;u=J;return}function xLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0<h>>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=Wpb(40)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];i=j+20|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[j+36>>2]=1.0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;DLa(a,c>>>0<d>>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0<c>>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function yLa(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0;c=+p[a>>3];if(c==0.0)e=0;else{p[s>>3]=c;d=X(f[s>>2]|0,1540483477)|0;e=X(f[s+4>>2]|0,1540483477)|0;e=(X((X(d>>>24^d,1540483477)|0)^-561034072,1540483477)|0)^(X(e>>>24^e,1540483477)|0);e=X(e>>>13^e,1540483477)|0;e=e>>>15^e}c=+p[a+8>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[a+16>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[b>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[b+8>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}d=(e>>>2)+(e<<6)+d^e;c=+p[b+16>>3];if(c==0.0){g=-1640531527;b=d<<6;a=d>>>2;b=a+b|0;g=b+g|0;g=g^d;return g|0}p[s>>3]=c;b=X(f[s>>2]|0,1540483477)|0;g=X(f[s+4>>2]|0,1540483477)|0;g=(X((X(b>>>24^b,1540483477)|0)^-561034072,1540483477)|0)^(X(g>>>24^g,1540483477)|0);g=X(g>>>13^g,1540483477)|0;g=(g>>>15^g)+-1640531527|0;b=d<<6;a=d>>>2;b=a+b|0;g=b+g|0;g=g^d;return g|0}function zLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0;t=f[b+48>>2]|0;r=a+4|0;h=f[r>>2]|0;s=(h|0)==0;a:do if(s)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)q=i&t;else if(t>>>0<h>>>0)q=t;else q=(t>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(q<<2)>>2]|0;if(!c)c=q;else{c=f[c>>2]|0;if(!c)c=q;else{j=b+8|0;k=b+16|0;l=b+24|0;m=b+32|0;o=b+40|0;if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(t|0)|(d&i|0)==(q|0))){c=q;break a}if((f[c+56>>2]|0)==(t|0))if(+p[c+8>>3]==+p[b>>3])if(+p[c+16>>3]==+p[j>>3])if(+p[c+24>>3]==+p[k>>3])if(+p[c+32>>3]==+p[l>>3])if(+p[c+40>>3]==+p[m>>3])if(+p[c+48>>3]==+p[o>>3])break;c=f[c>>2]|0;if(!c){c=q;break a}}a=c+64|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(t|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(q|0)){c=q;break a}}if((f[c+56>>2]|0)==(t|0))if(+p[c+8>>3]==+p[b>>3])if(+p[c+16>>3]==+p[j>>3])if(+p[c+24>>3]==+p[k>>3])if(+p[c+32>>3]==+p[l>>3])if(+p[c+40>>3]==+p[m>>3])if(+p[c+48>>3]==+p[o>>3])break;c=f[c>>2]|0;if(!c){c=q;break a}}a=c+64|0;return a|0}}}while(0);j=Wpb(216)|0;p[j+8>>3]=+p[b>>3];p[j+16>>3]=+p[b+8>>3];p[j+24>>3]=+p[b+16>>3];p[j+32>>3]=+p[b+24>>3];p[j+40>>3]=+p[b+32>>3];p[j+48>>3]=+p[b+40>>3];f[j+56>>2]=t;Krb(j+64|0,0,152)|0;f[j+4>>2]=t;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(s|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;BLa(a,c>>>0<d>>>0?d:c);c=f[r>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&t;break}if(t>>>0<c>>>0){h=c;c=t}else{h=c;c=(t>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;u=43}}else{f[j>>2]=f[c>>2];u=43}if((u|0)==43)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+64|0;return a|0}function ALa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;g=f[r>>2]|0;j=f[a>>2]|0;l=(g-j|0)/88|0;h=l+1|0;o=j;i=g;if(h>>>0>48806446)fob(a);q=a+8|0;n=((f[q>>2]|0)-j|0)/88|0;j=n<<1;j=n>>>0<24403223?(j>>>0<h>>>0?h:j):48806446;do if(!j)k=0;else if(j>>>0>48806446)ud();else{k=Wpb(j*88|0)|0;break}while(0);m=k+(l*88|0)|0;h=m;n=k+(j*88|0)|0;p[m>>3]=+p[b>>3];p[k+(l*88|0)+8>>3]=+p[b+8>>3];p[k+(l*88|0)+16>>3]=+p[b+16>>3];p[k+(l*88|0)+24>>3]=+p[c>>3];p[k+(l*88|0)+32>>3]=+p[c+8>>3];p[k+(l*88|0)+40>>3]=+p[c+16>>3];p[k+(l*88|0)+48>>3]=+p[d>>3];p[k+(l*88|0)+56>>3]=+p[d+8>>3];p[k+(l*88|0)+64>>3]=+p[d+16>>3];j=k+(l*88|0)+72|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];j=m+88|0;if((i|0)!=(o|0)){g=m;do{l=i;i=i+-88|0;p[g+-88>>3]=+p[i>>3];p[g+-80>>3]=+p[l+-80>>3];p[g+-72>>3]=+p[l+-72>>3];p[g+-64>>3]=+p[l+-64>>3];p[g+-56>>3]=+p[l+-56>>3];p[g+-48>>3]=+p[l+-48>>3];p[g+-40>>3]=+p[l+-40>>3];p[g+-32>>3]=+p[l+-32>>3];p[g+-24>>3]=+p[l+-24>>3];m=g+-16|0;l=l+-16|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];g=h+-88|0;h=g}while((i|0)!=(o|0));g=f[a>>2]|0}f[a>>2]=h;f[r>>2]=j;f[q>>2]=n;if(!g)return;Zpb(g);return}function BLa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){CLa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;CLa(a,b);return}function CLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();t=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=t;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;s=b+-1|0;t=(s&b|0)==0;if(t)c=c&s;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){r=d;b:while(1){c:do if(t){d=e;while(1){q=f[d+4>>2]&s;if((q|0)==(c|0))break c;e=(f[a>>2]|0)+(q<<2)|0;if(!(f[e>>2]|0)){c=q;break b}k=d+16|0;l=d+24|0;m=d+32|0;n=d+40|0;o=d+48|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+56>>2]|0;j=d+8|0;e=d;while(1){if((i|0)!=(f[h+56>>2]|0))break d;if(!(+p[j>>3]==+p[h+8>>3]))break d;if(!(+p[k>>3]==+p[h+16>>3]))break d;if(!(+p[l>>3]==+p[h+24>>3]))break d;if(!(+p[m>>3]==+p[h+32>>3]))break d;if(!(+p[n>>3]==+p[h+40>>3]))break d;if(!(+p[o>>3]==+p[h+48>>3]))break d;e=f[h>>2]|0;if(!e){e=h;break}else{u=h;h=e;e=u}}}while(0);f[r>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(q<<2)>>2]>>2];f[f[(f[a>>2]|0)+(q<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=49;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)q=e;else q=(e>>>0)%(b>>>0)|0;if((q|0)==(c|0))break c;e=(f[a>>2]|0)+(q<<2)|0;if(!(f[e>>2]|0)){c=q;break b}k=d+16|0;l=d+24|0;m=d+32|0;n=d+40|0;o=d+48|0;h=f[d>>2]|0;e:do if(!h)e=d;else{i=f[d+56>>2]|0;j=d+8|0;e=d;while(1){if((i|0)!=(f[h+56>>2]|0))break e;if(!(+p[j>>3]==+p[h+8>>3]))break e;if(!(+p[k>>3]==+p[h+16>>3]))break e;if(!(+p[l>>3]==+p[h+24>>3]))break e;if(!(+p[m>>3]==+p[h+32>>3]))break e;if(!(+p[n>>3]==+p[h+40>>3]))break e;if(!(+p[o>>3]==+p[h+48>>3]))break e;e=f[h>>2]|0;if(!e){e=h;break}else{u=h;h=e;e=u}}}while(0);f[r>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(q<<2)>>2]>>2];f[f[(f[a>>2]|0)+(q<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=49;break a}}}while(0);e=f[d>>2]|0;if(!e){c=49;break a}else{g=d;r=d}}f[e>>2]=r;e=f[d>>2]|0;if(!e){c=49;break}else g=d}if((c|0)==49)return}function DLa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){ELa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;ELa(a,b);return}function ELa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();o=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function FLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;e=f[n>>2]|0;g=f[a>>2]|0;j=e-g>>3;c=j+1|0;k=g;if(c>>>0>536870911)fob(a);m=a+8|0;l=(f[m>>2]|0)-g|0;h=l>>2;h=l>>3>>>0<268435455?(h>>>0<c>>>0?c:h):536870911;do if(!h)i=0;else if(h>>>0>536870911)ud();else{i=Wpb(h<<3)|0;break}while(0);d=i+(j<<3)|0;c=d;l=i+(h<<3)|0;f[d>>2]=f[b>>2];h=b+4|0;f[i+(j<<3)+4>>2]=f[h>>2];f[b>>2]=0;f[h>>2]=0;h=d+8|0;if((e|0)!=(k|0)){do{j=e;e=e+-8|0;f[d+-8>>2]=f[e>>2];j=j+-4|0;f[d+-4>>2]=f[j>>2];f[e>>2]=0;f[j>>2]=0;d=c+-8|0;c=d}while((e|0)!=(k|0));g=f[a>>2]|0}f[a>>2]=c;c=f[n>>2]|0;f[n>>2]=h;f[m>>2]=l;e=g;if((c|0)!=(e|0))do{d=f[c+-4>>2]|0;c=c+-8|0;if(d|0)Ppb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function GLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/88|0)>>>0>=b>>>0){do{d=c+88|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=(f[k>>2]|0)+88|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/88|0;c=e+b|0;if(c>>>0>48806446)fob(a);g=(g-d|0)/88|0;i=g<<1;c=g>>>0<24403223?(i>>>0<c>>>0?c:i):48806446;do if(!c)h=0;else if(c>>>0>48806446)ud();else{h=Wpb(c*88|0)|0;break}while(0);i=h+(e*88|0)|0;g=i;e=h+(c*88|0)|0;c=i;h=g;do{d=c+88|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=h+88|0;h=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(c|0))b=g;else{b=i;do{i=d;d=d+-88|0;p[b+-88>>3]=+p[d>>3];p[b+-80>>3]=+p[i+-80>>3];p[b+-72>>3]=+p[i+-72>>3];p[b+-64>>3]=+p[i+-64>>3];p[b+-56>>3]=+p[i+-56>>3];p[b+-48>>3]=+p[i+-48>>3];p[b+-40>>3]=+p[i+-40>>3];p[b+-32>>3]=+p[i+-32>>3];p[b+-24>>3]=+p[i+-24>>3];p[b+-16>>3]=+p[i+-16>>3];p[b+-8>>3]=+p[i+-8>>3];b=b+-88|0}while((d|0)!=(c|0));c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=h;f[j>>2]=e;if(!c)return;Zpb(c);return}function HLa(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0;d=f[a>>2]|0;b=(f[a+4>>2]|0)-d|0;c=(b|0)/88|0;b=(b|0)==0;if(b)return;else a=0;do{j=d+(a*88|0)+24|0;p[j>>3]=-+p[j>>3];h=+p[d+(a*88|0)>>3];g=+K(+h);p[d+(a*88|0)+32>>3]=g;g=+p[d+(a*88|0)+8>>3];e=+K(+g);p[d+(a*88|0)+40>>3]=e;e=+p[d+(a*88|0)+16>>3];i=+K(+e);p[d+(a*88|0)+48>>3]=i;p[d+(a*88|0)+56>>3]=h>=0.0?1.0:-1.0;p[d+(a*88|0)+64>>3]=g>=0.0?1.0:-1.0;p[d+(a*88|0)+72>>3]=e>=0.0?1.0:-1.0;a=a+1|0}while(a>>>0<c>>>0);if(b)return;else a=0;do{g=+p[d+(a*88|0)>>3];h=+p[d+(a*88|0)+8>>3];i=+p[d+(a*88|0)+16>>3];i=g*g+(h*h+i*i);p[d+(a*88|0)+80>>3]=i==0.0?0.0:1.0/i;a=a+1|0}while(a>>>0<c>>>0);return}function ILa(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0;s=u;u=u+2624|0;i=s;b[i>>0]=b[c>>0]|0;q=i+4|0;cqb(q,c+4|0);l=i+16|0;r=c+16|0;f[l>>2]=f[r>>2];f[l+4>>2]=f[r+4>>2];f[l+8>>2]=f[r+8>>2];f[l+12>>2]=f[r+12>>2];r=i+32|0;cqb(r,c+32|0);g=i+48|0;m=c+48|0;f[g>>2]=f[m>>2];f[g+4>>2]=f[m+4>>2];f[g+8>>2]=f[m+8>>2];f[g+12>>2]=f[m+12>>2];f[g+16>>2]=f[m+16>>2];f[g+20>>2]=f[m+20>>2];f[g+24>>2]=f[m+24>>2];f[g+28>>2]=f[m+28>>2];m=i+80|0;cqb(m,c+80|0);o=i+92|0;cqb(o,c+92|0);h=i+104|0;c=c+104|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];d[h+8>>1]=d[c+8>>1]|0;f[i+120>>2]=5489;c=1;e=5489;do{e=(X(e>>>30^e,1812433253)|0)+c|0;f[i+120+(c<<2)>>2]=e;c=c+1|0}while((c|0)!=624);f[i+2616>>2]=0;j=Wpb(2960)|0;f[j>>2]=31268;b[j+8>>0]=b[i>>0]|0;k=j+12|0;f[k>>2]=f[q>>2];f[k+4>>2]=f[q+4>>2];f[k+8>>2]=f[q+8>>2];f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;k=j+24|0;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];e=j+40|0;f[e>>2]=f[r>>2];f[e+4>>2]=f[r+4>>2];f[e+8>>2]=f[r+8>>2];f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;e=j+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[e+16>>2]=f[g+16>>2];f[e+20>>2]=f[g+20>>2];f[e+24>>2]=f[g+24>>2];f[e+28>>2]=f[g+28>>2];e=j+88|0;f[e>>2]=f[m>>2];f[e+4>>2]=f[m+4>>2];f[e+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=j+100|0;f[e>>2]=f[o>>2];f[e+4>>2]=f[o+4>>2];f[e+8>>2]=f[o+8>>2];f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;e=j+112|0;f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];d[e+8>>1]=d[h+8>>1]|0;Irb(j+128|0,i+120|0,2500)|0;e=j+2632|0;p[j+2904>>3]=0.0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;e=Leb()|0;c=j+2912|0;f[c>>2]=e;f[c+4>>2]=I;c=j+2956|0;e=j+2920|0;g=e+36|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[c>>2]=1.0;if(!(b[j+25>>0]|0))b[k>>0]=0;f[a>>2]=j;if((b[o+11>>0]|0)<0)Zpb(f[o>>2]|0);if((b[m+11>>0]|0)<0)Zpb(f[m>>2]|0);if((b[r+11>>0]|0)<0)Zpb(f[r>>2]|0);if((b[q+11>>0]|0)>=0){u=s;return}Zpb(f[q>>2]|0);u=s;return}function JLa(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0,o=0.0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0.0,y=0.0,z=0,A=0.0,B=0.0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0;C=u;u=u+16|0;v=C;B=+p[c>>3];m=+p[c+8>>3];A=+p[c+16>>3];l=+p[c+24>>3];y=l+(B*+p[d>>3]+(m*+p[d+8>>3]+A*+p[d+16>>3]));g=+K(+y)<f;h=!(y>0.0)&1;c=g?2:h;b[v>>0]=c;y=l+(B*+p[d+24>>3]+(m*+p[d+32>>3]+A*+p[d+40>>3]));i=+K(+y)<f;j=i?2:!(y>0.0)&1;b[v+1>>0]=j;y=l+(B*+p[d+48>>3]+(m*+p[d+56>>3]+A*+p[d+64>>3]));z=+K(+y)<f;k=z?2:!(y>0.0)&1;b[v+2>>0]=k;switch((i?(g?2:1):g&1)+(z&1)&7){case 3:{d=0;z=0;e=2;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 2:{if(!g){d=0;z=0;e=h;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}d=0;z=0;e=b[v+(i?2:1)>>0]|0;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 1:{k=g?0:i?1:2;g=((k+1|0)>>>0)%3|0;c=((k+2|0)>>>0)%3|0;z=b[v+g>>0]|0;if(z<<24>>24==(b[v+c>>0]|0)){d=0;w=0;e=z;b[a>>0]=e;e=a+1|0;b[e>>0]=w;e=a+2|0;b[e>>0]=d;u=C;return}s=d+(c*24|0)|0;t=d+(g*24|0)|0;D=+p[t>>3];o=+p[s>>3]-D;v=d+(c*24|0)+8|0;w=d+(g*24|0)+8|0;q=+p[w>>3];r=+p[v>>3]-q;n=d+(c*24|0)+16|0;j=d+(g*24|0)+16|0;x=+p[j>>3];f=+p[n>>3]-x;y=+L(+(o*o+(r*r+f*f)));o=o/y;r=r/y;y=f/y;f=-(l+(D*B+(q*m+x*A)))/(o*B+(r*m+y*A));l=D+o*f;m=q+r*f;f=x+y*f;h=d+(k*24|0)|0;p[e>>3]=+p[h>>3];i=d+(k*24|0)+8|0;p[e+8>>3]=+p[i>>3];c=d+(k*24|0)+16|0;p[e+16>>3]=+p[c>>3];g=e+24|0;if(!(z<<24>>24)){p[g>>3]=+p[t>>3];p[e+32>>3]=+p[w>>3];p[e+40>>3]=+p[j>>3];p[e+48>>3]=l;p[e+56>>3]=m;p[e+64>>3]=f;p[e+72>>3]=+p[h>>3];p[e+80>>3]=+p[i>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=l;p[e+104>>3]=m;p[e+112>>3]=f;p[e+120>>3]=+p[s>>3];p[e+128>>3]=+p[v>>3];f=+p[n>>3]}else{p[g>>3]=l;p[e+32>>3]=m;p[e+40>>3]=f;p[e+48>>3]=+p[s>>3];p[e+56>>3]=+p[v>>3];p[e+64>>3]=+p[n>>3];p[e+72>>3]=+p[h>>3];p[e+80>>3]=+p[i>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=+p[t>>3];p[e+104>>3]=+p[w>>3];p[e+112>>3]=+p[j>>3];p[e+120>>3]=l;p[e+128>>3]=m}p[e+136>>3]=f;d=6;z=3;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 0:{i=c<<24>>24==0;h=j<<24>>24==0;c=k<<24>>24==0;g=i^h;if(!(c^i|g)){d=0;z=0;e=(i^1)&1;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}z=g?(c^h)&1:2;s=((z+1|0)>>>0)%3|0;c=((z+2|0)>>>0)%3|0;i=d+(s*24|0)|0;j=d+(z*24|0)|0;x=+p[i>>3];y=+p[j>>3];o=x-y;k=d+(s*24|0)+8|0;n=d+(z*24|0)+8|0;F=+p[n>>3];q=+p[k>>3]-F;s=d+(s*24|0)+16|0;t=d+(z*24|0)+16|0;E=+p[t>>3];G=+p[s>>3]-E;f=+L(+(o*o+(q*q+G*G)));o=o/f;q=q/f;f=G/f;G=-(l+(y*B+(F*m+E*A)));r=G/(o*B+(q*m+f*A));o=y+o*r;q=F+q*r;r=E+f*r;g=d+(c*24|0)|0;f=+p[g>>3]-y;h=d+(c*24|0)+8|0;l=+p[h>>3]-F;c=d+(c*24|0)+16|0;H=+p[c>>3]-E;D=+L(+(f*f+(l*l+H*H)));f=f/D;l=l/D;D=H/D;m=G/(B*f+(m*l+A*D));f=y+f*m;l=F+l*m;m=E+D*m;if(!(b[v+z>>0]|0)){p[e>>3]=y;p[e+8>>3]=+p[n>>3];p[e+16>>3]=+p[t>>3];p[e+24>>3]=o;p[e+32>>3]=q;p[e+40>>3]=r;p[e+48>>3]=f;p[e+56>>3]=l;p[e+64>>3]=m;p[e+72>>3]=+p[i>>3];p[e+80>>3]=+p[k>>3];p[e+88>>3]=+p[s>>3];p[e+96>>3]=+p[g>>3];p[e+104>>3]=+p[h>>3];p[e+112>>3]=+p[c>>3];p[e+120>>3]=o;p[e+128>>3]=q;p[e+136>>3]=r;p[e+144>>3]=+p[g>>3];p[e+152>>3]=+p[h>>3];p[e+160>>3]=+p[c>>3];p[e+168>>3]=f;p[e+176>>3]=l;p[e+184>>3]=m;p[e+192>>3]=o;p[e+200>>3]=q;p[e+208>>3]=r;d=9;z=3;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}else{p[e>>3]=x;p[e+8>>3]=+p[k>>3];p[e+16>>3]=+p[s>>3];p[e+24>>3]=+p[g>>3];p[e+32>>3]=+p[h>>3];p[e+40>>3]=+p[c>>3];p[e+48>>3]=o;p[e+56>>3]=q;p[e+64>>3]=r;p[e+72>>3]=+p[g>>3];p[e+80>>3]=+p[h>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=f;p[e+104>>3]=l;p[e+112>>3]=m;p[e+120>>3]=o;p[e+128>>3]=q;p[e+136>>3]=r;p[e+144>>3]=+p[j>>3];p[e+152>>3]=+p[n>>3];p[e+160>>3]=+p[t>>3];p[e+168>>3]=o;p[e+176>>3]=q;p[e+184>>3]=r;p[e+192>>3]=f;p[e+200>>3]=l;p[e+208>>3]=m;d=9;z=6;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}}default:{d=0;z=0;e=4;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}}}function KLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0<c>>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)ud();else{i=Wpb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;Zpb(j);return}function LLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0;e=u;u=u+16|0;c=e;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;i=f[b>>2]|0;g=heb(+p[i>>3])|0;i=jeb(+p[i+8>>3])|0;f[c>>2]=g;f[c+4>>2]=i;KLa(a,c);i=f[b>>2]|0;j=+p[i+32>>3];b=f[d>>2]|0;g=f[a+8>>2]|0;i=heb(+p[i+24>>3])|0;h=jeb(j)|0;f[c>>2]=i;f[c+4>>2]=h;if((b|0)==(g|0)){KLa(a,c);u=e;return}else{g=c;h=f[g+4>>2]|0;i=b;f[i>>2]=f[g>>2];f[i+4>>2]=h;f[d>>2]=(f[d>>2]|0)+8;u=e;return}}function MLa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+p[c+240>>3]*1.0e-06*+p[b+104>>3];c=Wpb(256)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=b+120;p[c+32>>3]=d;f[a>>2]=c;return}function NLa(a){a=a|0;OLa(a);return}function OLa(a){a=a|0;var b=0,c=0,d=0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;OLa(d+48|0);OLa(d+44|0);a=f[d+32>>2]|0;if(a|0){b=d+36|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~(((c+-88-a|0)>>>0)/88|0)*88|0);Zpb(a)}Zpb(d);return}function PLa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0.0;h=0;m=u;u=u+1072|0;if(b[(c+128|0)>>0]|0){l=1;u=m;return l|0}f[(m+40|0)>>2]=0;l=(m+40|0)+4|0;f[l>>2]=0;f[(m+40|0)+8>>2]=0;f[(m+28|0)>>2]=0;k=(m+28|0)+4|0;f[k>>2]=0;f[(m+28|0)+8>>2]=0;f[(m+16|0)>>2]=0;i=(m+16|0)+4|0;f[i>>2]=0;f[(m+16|0)+8>>2]=0;f[(m+8|0)>>2]=a;f[(m+8|0)+4>>2]=m+40|0;do if(!(f[(c+36|0)>>2]|0)){if((f[(c+24|0)>>2]|0)==(f[(c+28|0)>>2]|0)){b[(c+128|0)>>0]=1;j=1;break}QLa(m,m+8|0,c+24|0);h=f[m>>2]|0;f[m>>2]=0;e=f[a>>2]|0;f[a>>2]=h;if(e|0){OLa(e+48|0);OLa(e+44|0);g=f[e+32>>2]|0;if(g|0){h=f[(e+36|0)>>2]|0;if((h|0)!=(g|0))f[(e+36|0)>>2]=h+(~(((h+-88-g|0)>>>0)/88|0)*88|0);Zpb(g)}Zpb(e)}OLa(m);f[a+24>>2]=((f[(c+28|0)>>2]|0)-(f[(c+24|0)>>2]|0)|0)/88|0;f[(c+36|0)>>2]=f[a>>2];g=(m+40|0)+8|0;h=13}else{RLa(m+40|0,c+40|0);g=(m+40|0)+8|0;h=13}while(0);do if((h|0)==13){e=(m+16|0)+8|0;a:while(1){o=f[(c+24|0)>>2]|0;j=f[(c+28|0)>>2]|0;f[m+80>>2]=a;f[m+88>>2]=c;f[m+96>>2]=d;f[m+144>>2]=g;f[m+168>>2]=l;f[m+176>>2]=k;f[m+200>>2]=i;f[m+872>>2]=e;f[m+880>>2]=o;f[m+888>>2]=j;f[m+976>>2]=h;f[m+1008>>2]=0;f[m+1012>>2]=0;mMa(m);h=f[m+976>>2]|0;G=f[m+1008>>2]|0;D=f[m+1012>>2]|0;H=+n[m+1012>>2];f[m+1008>>2]=0;f[m+1012>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 3:break a}}if((h|0)==69){e=f[(c+24|0)>>2]|0;g=f[(c+28|0)>>2]|0;if((g|0)!=(e|0))f[(c+28|0)>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);f[(c+36|0)>>2]=0}else if((h|0)==90)if(f[(c+36|0)>>2]|0){j=f[(m+40|0)>>2]|0;q=+p[j>>3];p[j>>3]=+p[(c+40|0)>>3];p[(c+40|0)>>3]=q;q=+p[(j+8|0)>>3];p[(j+8|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=q;q=+p[(j+16|0)>>3];p[(j+16|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=q;q=+p[(j+24|0)>>3];p[(j+24|0)>>3]=+p[(c+64|0)>>3];p[(c+64|0)>>3]=q;q=+p[(j+32|0)>>3];p[(j+32|0)>>3]=+p[(c+72|0)>>3];p[(c+72|0)>>3]=q;q=+p[(j+40|0)>>3];p[(j+40|0)>>3]=+p[(c+80|0)>>3];p[(c+80|0)>>3]=q;q=+p[(j+48|0)>>3];p[(j+48|0)>>3]=+p[(c+88|0)>>3];p[(c+88|0)>>3]=q;q=+p[(j+56|0)>>3];p[(j+56|0)>>3]=+p[(c+96|0)>>3];p[(c+96|0)>>3]=q;q=+p[(j+64|0)>>3];p[(j+64|0)>>3]=+p[(c+104|0)>>3];p[(c+104|0)>>3]=q;f[(c+112|0)>>2]=f[(j+72|0)>>2];f[(c+112|0)+4>>2]=f[(j+72|0)+4>>2];f[(c+112|0)+8>>2]=f[(j+72|0)+8>>2];j=0;break}b[(c+128|0)>>0]=1;f[(c+36|0)>>2]=0;j=1}while(0);e=f[(m+16|0)>>2]|0;if(e|0){g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);Zpb(e)}e=f[(m+28|0)>>2]|0;if(e|0){g=f[k>>2]|0;if((g|0)!=(e|0))f[k>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);Zpb(e)}e=f[(m+40|0)>>2]|0;if(e|0){g=f[l>>2]|0;if((g|0)!=(e|0))f[l>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);Zpb(e)}o=j;u=m;return o|0}function QLa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0,B=0.0,C=0,D=0,E=0,F=0.0;m=u;u=u+32|0;j=m;k=f[b>>2]|0;l=XLa(c,f[k+28>>2]|0,+p[k+32>>3])|0;i=b+4|0;b=f[i>>2]|0;d=f[c>>2]|0;e=d+(l*88|0)|0;g=b+4|0;h=f[g>>2]|0;if((h|0)==(f[b+8>>2]|0))sKa(b,e);else{p[h>>3]=+p[e>>3];p[h+8>>3]=+p[d+(l*88|0)+8>>3];p[h+16>>3]=+p[d+(l*88|0)+16>>3];p[h+24>>3]=+p[d+(l*88|0)+24>>3];p[h+32>>3]=+p[d+(l*88|0)+32>>3];p[h+40>>3]=+p[d+(l*88|0)+40>>3];p[h+48>>3]=+p[d+(l*88|0)+48>>3];p[h+56>>3]=+p[d+(l*88|0)+56>>3];p[h+64>>3]=+p[d+(l*88|0)+64>>3];h=h+72|0;e=d+(l*88|0)+72|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[g>>2]=(f[g>>2]|0)+88}C=f[c>>2]|0;c=c+4|0;D=f[c>>2]|0;y=C+(l*88|0)|0;w=C+(l*88|0)+8|0;t=C+(l*88|0)+16|0;B=+p[y>>3];z=+p[w>>3];x=+p[t>>3];b=C+(l*88|0)+24|0;d=C+(l*88|0)+32|0;e=C+(l*88|0)+40|0;v=+p[b>>3];s=+p[d>>3];r=+p[e>>3];g=C+(l*88|0)+48|0;h=C+(l*88|0)+56|0;E=C+(l*88|0)+64|0;q=+p[g>>3];o=+p[h>>3];n=+p[E>>3];C=C+(l*88|0)+72|0;f[j>>2]=f[C>>2];f[j+4>>2]=f[C+4>>2];f[j+8>>2]=f[C+8>>2];A=D+-88|0;F=+p[A>>3];p[A>>3]=B;p[y>>3]=F;y=D+-80|0;F=+p[y>>3];p[y>>3]=+p[w>>3];p[w>>3]=F;w=D+-72|0;F=+p[w>>3];p[w>>3]=+p[t>>3];p[t>>3]=F;t=D+-64|0;F=+p[t>>3];p[t>>3]=+p[b>>3];p[b>>3]=F;b=D+-56|0;F=+p[b>>3];p[b>>3]=+p[d>>3];p[d>>3]=F;d=D+-48|0;F=+p[d>>3];p[d>>3]=+p[e>>3];p[e>>3]=F;e=D+-40|0;p[g>>3]=+p[e>>3];g=D+-32|0;p[h>>3]=+p[g>>3];h=D+-24|0;p[E>>3]=+p[h>>3];l=D+-16|0;f[C>>2]=f[l>>2];f[C+4>>2]=f[l+4>>2];f[C+8>>2]=f[l+8>>2];p[A>>3]=B;p[y>>3]=z;p[w>>3]=x;p[t>>3]=v;p[b>>3]=s;p[d>>3]=r;p[e>>3]=q;p[g>>3]=o;p[h>>3]=n;f[l>>2]=f[j>>2];f[l+4>>2]=f[j+4>>2];f[l+8>>2]=f[j+8>>2];f[c>>2]=(f[c>>2]|0)+-88;l=f[f[i>>2]>>2]|0;YLa(j,l,l+24|0,l+48|0);l=k+4|0;f[l>>2]=(f[l>>2]|0)+1;l=Wpb(56)|0;p[l>>3]=+p[j>>3];p[l+8>>3]=+p[j+8>>3];p[l+16>>3]=+p[j+16>>3];p[l+24>>3]=+p[j+24>>3];k=l+32|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[a>>2]=l;u=m;return}function RLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;c=f[n>>2]|0;d=f[a>>2]|0;i=(c-d|0)/88|0;g=i+1|0;l=d;e=c;if(g>>>0>48806446)fob(a);m=a+8|0;j=((f[m>>2]|0)-d|0)/88|0;k=j<<1;g=j>>>0<24403223?(k>>>0<g>>>0?g:k):48806446;do if(!g)h=0;else if(g>>>0>48806446)ud();else{h=Wpb(g*88|0)|0;break}while(0);j=h+(i*88|0)|0;d=j;k=h+(g*88|0)|0;f[j>>2]=f[b>>2];f[j+4>>2]=f[b+4>>2];f[j+8>>2]=f[b+8>>2];f[j+12>>2]=f[b+12>>2];f[j+16>>2]=f[b+16>>2];f[j+20>>2]=f[b+20>>2];p[j>>3]=+p[b>>3];p[h+(i*88|0)+8>>3]=+p[b+8>>3];p[h+(i*88|0)+16>>3]=+p[b+16>>3];g=h+(i*88|0)+24|0;o=b+24|0;f[g>>2]=f[o>>2];f[g+4>>2]=f[o+4>>2];f[g+8>>2]=f[o+8>>2];f[g+12>>2]=f[o+12>>2];f[g+16>>2]=f[o+16>>2];f[g+20>>2]=f[o+20>>2];p[g>>3]=+p[o>>3];p[h+(i*88|0)+32>>3]=+p[b+32>>3];p[h+(i*88|0)+40>>3]=+p[b+40>>3];g=h+(i*88|0)+48|0;o=b+48|0;f[g>>2]=f[o>>2];f[g+4>>2]=f[o+4>>2];f[g+8>>2]=f[o+8>>2];f[g+12>>2]=f[o+12>>2];f[g+16>>2]=f[o+16>>2];f[g+20>>2]=f[o+20>>2];p[g>>3]=+p[o>>3];p[h+(i*88|0)+56>>3]=+p[b+56>>3];p[h+(i*88|0)+64>>3]=+p[b+64>>3];g=h+(i*88|0)+72|0;i=b+72|0;f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];g=j+88|0;if((e|0)!=(l|0)){c=j;do{j=e;e=e+-88|0;p[c+-88>>3]=+p[e>>3];p[c+-80>>3]=+p[j+-80>>3];p[c+-72>>3]=+p[j+-72>>3];p[c+-64>>3]=+p[j+-64>>3];p[c+-56>>3]=+p[j+-56>>3];p[c+-48>>3]=+p[j+-48>>3];p[c+-40>>3]=+p[j+-40>>3];p[c+-32>>3]=+p[j+-32>>3];p[c+-24>>3]=+p[j+-24>>3];o=c+-16|0;j=j+-16|0;f[o>>2]=f[j>>2];f[o+4>>2]=f[j+4>>2];f[o+8>>2]=f[j+8>>2];c=d+-88|0;d=c}while((e|0)!=(l|0));c=f[a>>2]|0}f[a>>2]=d;f[n>>2]=g;f[m>>2]=k;if(!c)return;Zpb(c);return}function SLa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;g=f[r>>2]|0;j=f[a>>2]|0;l=(g-j|0)/88|0;h=l+1|0;o=j;i=g;if(h>>>0>48806446)fob(a);q=a+8|0;n=((f[q>>2]|0)-j|0)/88|0;j=n<<1;j=n>>>0<24403223?(j>>>0<h>>>0?h:j):48806446;do if(!j)k=0;else if(j>>>0>48806446)ud();else{k=Wpb(j*88|0)|0;break}while(0);m=k+(l*88|0)|0;h=m;n=k+(j*88|0)|0;p[m>>3]=+p[b>>3];p[k+(l*88|0)+8>>3]=+p[b+8>>3];p[k+(l*88|0)+16>>3]=+p[b+16>>3];p[k+(l*88|0)+24>>3]=+p[c>>3];p[k+(l*88|0)+32>>3]=+p[c+8>>3];p[k+(l*88|0)+40>>3]=+p[c+16>>3];p[k+(l*88|0)+48>>3]=+p[d>>3];p[k+(l*88|0)+56>>3]=+p[d+8>>3];p[k+(l*88|0)+64>>3]=+p[d+16>>3];j=k+(l*88|0)+72|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];j=m+88|0;if((i|0)!=(o|0)){g=m;do{l=i;i=i+-88|0;p[g+-88>>3]=+p[i>>3];p[g+-80>>3]=+p[l+-80>>3];p[g+-72>>3]=+p[l+-72>>3];p[g+-64>>3]=+p[l+-64>>3];p[g+-56>>3]=+p[l+-56>>3];p[g+-48>>3]=+p[l+-48>>3];p[g+-40>>3]=+p[l+-40>>3];p[g+-32>>3]=+p[l+-32>>3];p[g+-24>>3]=+p[l+-24>>3];m=g+-16|0;l=l+-16|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];g=h+-88|0;h=g}while((i|0)!=(o|0));g=f[a>>2]|0}f[a>>2]=h;f[r>>2]=j;f[q>>2]=n;if(!g)return;Zpb(g);return}function TLa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>255){f[b>>2]=c+-256;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{Jrb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();g=Wpb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){Zpb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0<d>>>0){if((c|0)!=(b|0)){o=Wpb(4096)|0;f[l>>2]=o;ULa(a,l);u=p;return}j=Wpb(4096)|0;f[l>>2]=j;VLa(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{Jrb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();e=Wpb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){Zpb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)ud();q=e>>2;e=Wpb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=Wpb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();else{q=Wpb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);Zpb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;WLa(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)Zpb(g);u=p;return}function ULa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{Jrb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)ud();g=Wpb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){Zpb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function VLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function WLa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function XLa(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;o=r;p=r+32|0;q=(f[a+4>>2]|0)-(f[a>>2]|0)|0;j=(q|0)/88|0;if((q|0)==88){q=0;u=r;return q|0}n=j>>>0<50?j:50;f[p>>2]=0;q=p+4|0;f[q>>2]=0;f[p+8>>2]=0;e=p+8|0;a:do if(!n){f[o>>2]=0;h=1}else{g=Wpb(n<<2)|0;h=g+(n<<2)|0;f[p>>2]=g;f[q>>2]=g;f[e>>2]=h;f[o>>2]=0;d=0;while(1){if(g>>>0<h>>>0){f[g>>2]=d;f[q>>2]=g+4}else hMa(p,o);d=(f[o>>2]|0)+1|0;f[o>>2]=d;if(d>>>0>=n>>>0){h=0;break a}g=f[q>>2]|0;h=f[e>>2]|0}}while(0);if(j>>>0>50){e=o+4|0;d=n;do{f[o>>2]=0;f[e>>2]=d;g=jMa(o,b,o)|0;if(g>>>0<n>>>0)f[(f[p>>2]|0)+(g<<2)>>2]=d;d=d+1|0}while(d>>>0<j>>>0)}d=f[p>>2]|0;e=f[d>>2]|0;b:do if(h)g=e;else{g=e;k=-1;m=0;l=0.0;d=e;while(1){h=f[a>>2]|0;YLa(o,h+(d*88|0)|0,h+(d*88|0)+24|0,h+(d*88|0)+48|0);d=0;h=0;b=0;e=0;while(1){c:do if((m|0)==(b|0))j=d;else switch((iMa(o,(f[a>>2]|0)+((f[(f[p>>2]|0)+(b<<2)>>2]|0)*88|0)|0,c)|0)<<24>>24){case 2:{j=d;h=h+1|0;break c}case 1:{j=d+1|0;break c}case 0:{j=d;h=h+1|0;break c}case 3:{j=d;e=e+1|0;break c}default:{j=d;break c}}while(0);b=b+1|0;if(b>>>0>=n>>>0)break;else d=j}if(e>>>0>k>>>0){e=k;i=l}else{if(!h)i=0.0;else{d=h>>>0<j>>>0;if(!j)i=0.0;else i=+((d?h:j)>>>0)/+((d?j:h)>>>0)}if(!(i>=l)){e=k;i=l}else{d=f[p>>2]|0;g=f[d+(m<<2)>>2]|0;if((e|0)==0&i>.95)break}}h=m+1|0;d=f[p>>2]|0;if(h>>>0>=n>>>0)break b;k=e;m=h;l=i;d=f[d+(h<<2)>>2]|0}}while(0);if(d|0){e=f[q>>2]|0;if((e|0)!=(d|0))f[q>>2]=e+(~((e+-4-d|0)>>>2)<<2);Zpb(d)}q=g;u=r;return q|0}function YLa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0.0,r=0.0,s=0,t=0.0,v=0,w=0,x=0.0,y=0.0,z=0;z=u;u=u+512|0;v=z+464|0;w=z;x=+p[c>>3];y=+p[e>>3]-x;o=c+8|0;q=+p[o>>3];r=+p[e+8>>3]-q;s=c+16|0;t=+p[s>>3];l=+p[e+16>>3]-t;m=+p[d>>3]-x;n=+p[d+8>>3]-q;g=+p[d+16>>3]-t;h=r*g-l*n;i=l*m-y*g;j=y*n-r*m;p[a>>3]=h;e=a+8|0;p[e>>3]=i;d=a+16|0;p[d>>3]=j;k=+L(+(h*h+(j*j+i*i)));if(!(k<=+L(+(y*y+(r*r+l*l)))*+L(+(m*m+(n*n+g*g)))*2.220446049250313e-16)){m=h/k;p[a>>3]=m;n=i/k;p[e>>3]=n;y=j/k;p[d>>3]=y;r=t;x=x*m;t=q*n;y=r*y;y=t+y;y=x+y;y=-y;w=a+24|0;p[w>>3]=y;u=z;return}else{p[v>>3]=y;p[v+16>>3]=r;p[v+32>>3]=l;p[v+8>>3]=m;p[v+24>>3]=n;p[v+40>>3]=g;b[w+152>>0]=0;b[w+153>>0]=0;b[w+154>>0]=0;f[w+160>>2]=0;f[w+168>>2]=-1;f[w+172>>2]=-1;b[w+304>>0]=0;b[w+305>>0]=0;ZLa(w,v,16)|0;x=+p[w+80>>3];p[a>>3]=x;t=+p[w+88>>3];p[e>>3]=t;y=+p[w+96>>3];p[d>>3]=y;n=+p[c>>3];q=+p[o>>3];r=+p[s>>3];x=n*x;t=q*t;y=r*y;y=t+y;y=x+y;y=-y;w=a+24|0;p[w>>3]=y;u=z;return}}function ZLa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,L=0,M=0.0,N=0.0;L=u;u=u+32|0;B=L+16|0;C=L;g=a+153|0;e=a+168|0;if(!(b[g>>0]|0))J=5;else if((f[e>>2]|0)==2)if((f[a+172>>2]|0)==3){if((f[a+160>>2]|0)!=(d|0))J=5}else J=5;else J=5;if((J|0)==5){f[e>>2]=2;f[a+172>>2]=3;b[a+152>>0]=0;b[g>>0]=1;f[a+160>>2]=d;b[a+155>>0]=d>>>2&1;b[a+156>>0]=d>>>3&1;b[a+157>>0]=d>>>4&1;b[a+158>>0]=d>>>5&1;f[a+176>>2]=2}h=+p[c>>3];I=+K(+h);H=c+8|0;j=+K(+(+p[H>>3]));y=c+16|0;i=+K(+(+p[y>>3]));j=j<i?i:j;I=I<j?j:I;G=c+24|0;j=+K(+(+p[G>>3]));F=c+32|0;i=+K(+(+p[F>>3]));E=c+40|0;M=+K(+(+p[E>>3]));i=i<M?M:i;j=j<i?i:j;I=I<j?j:I;I=I==0.0?1.0:I;D=a+416|0;p[D>>3]=h/I;p[a+424>>3]=+p[H>>3]/I;p[a+432>>3]=+p[y>>3]/I;p[a+440>>3]=+p[G>>3]/I;p[a+448>>3]=+p[F>>3]/I;p[a+456>>3]=+p[E>>3]/I;_La(a+192|0,a,D)|0;D=a+155|0;E=a+156|0;F=a+157|0;G=a+158|0;y=a+120|0;h=+K(+(+p[a+120>>3]));j=+K(+(+p[a+144>>3]));H=a+176|0;z=B+8|0;A=C+8|0;h=h<j?j:h;e=1;c=1;a:while(1){d=f[H>>2]|0;while(1){if((e|0)<(d|0))break;if(!(c&1)){e=1;c=1}else break a}if((e|0)>0){m=a+120+(e<<3)|0;n=e<<1;o=a+120+(n<<3)|0;r=e*3|0;q=a+120+(r<<3)|0;r=a+32+(r<<3)|0;s=r+8|0;t=r+16|0;v=o+8|0;w=a+(n<<3)|0;x=w+8|0;l=m+16|0;k=0;do{i=h*4.440892098500626e-16;i=i>1.0e-323?i:1.0e-323;g=k<<1;if(+K(+(+p[a+120+(g+e<<3)>>3]))>i)J=17;else if(+K(+(+p[a+120+(k+n<<3)>>3]))>i)J=17;if((J|0)==17){J=0;$La(y,e,k,B,C);c=a+120+(k<<3)|0;i=+p[B>>3];j=+p[z>>3];d=i==1.0&j==0.0;if(!d){M=+p[m>>3];N=+p[c>>3];p[m>>3]=i*M+j*N;p[c>>3]=i*N-j*M;c=c+16|0;M=+p[l>>3];N=+p[c>>3];p[l>>3]=i*M+j*N;p[c>>3]=i*N-j*M}if(!(b[D>>0]|0)){if(b[E>>0]|0)J=21}else J=21;if((J|0)==21){J=0;c=a+(g<<3)|0;if(!d){N=+p[w>>3];M=+p[c>>3];p[w>>3]=i*N+j*M;p[c>>3]=i*M-j*N;d=c+8|0;N=+p[x>>3];M=+p[d>>3];p[x>>3]=i*N+j*M;p[d>>3]=i*M-j*N}}c=a+120+(g<<3)|0;N=+p[A>>3];i=-N;j=+p[C>>3];g=N==-0.0&j==1.0;if(!g){N=+p[o>>3];M=+p[c>>3];p[o>>3]=j*N+M*i;p[c>>3]=j*M-N*i;d=c+8|0;N=+p[v>>3];M=+p[d>>3];p[v>>3]=j*N+M*i;p[d>>3]=j*M-N*i}if(!(b[F>>0]|0))if(!(b[G>>0]|0))c=k*3|0;else J=28;else J=28;if((J|0)==28){J=0;c=k*3|0;d=a+32+(c<<3)|0;if(!g){N=+p[r>>3];M=+p[d>>3];p[r>>3]=j*N+M*i;p[d>>3]=j*M-N*i;g=d+8|0;N=+p[s>>3];M=+p[g>>3];p[s>>3]=j*N+M*i;p[g>>3]=j*M-N*i;g=d+16|0;N=+p[t>>3];M=+p[g>>3];p[t>>3]=j*N+M*i;p[g>>3]=j*M-N*i}}N=+K(+(+p[q>>3]));M=+K(+(+p[a+120+(c<<3)>>3]));N=N<M?M:N;h=h<N?N:h;c=0}k=k+1|0}while((k|0)!=(e|0))}e=e+1|0}if((d|0)>0)d=0;else{f[a+164>>2]=d;J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}do{e=a+120+(d*3<<3)|0;h=+p[e>>3];i=+K(+h);p[a+104+(d<<3)>>3]=i;if(!(b[D>>0]|0))c=(b[E>>0]|0)!=0;else c=1;if(h!=0.0&c){N=+p[e>>3]/i;C=a+(d<<1<<3)|0;p[C>>3]=N*+p[C>>3];C=C+8|0;p[C>>3]=N*+p[C>>3]}d=d+1|0;e=f[H>>2]|0}while((d|0)<(e|0));m=a+164|0;f[m>>2]=e;if((e|0)>0){l=0;c=e}else{J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}while(1){g=c-l|0;k=a+104+(2-g<<3)|0;i=+p[k>>3];if((g|0)>1){d=1;e=0;h=i;j=i;while(1){i=+p[k+(d<<3)>>3];c=i>j;h=c?i:h;e=c?d:e;d=d+1|0;if((d|0)==(g|0))break;else j=c?i:j}}else{e=0;h=i}if(h==0.0)break;do if(e|0){e=e+l|0;B=a+104+(l<<3)|0;C=a+104+(e<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;if(!(b[D>>0]|0)){if(b[E>>0]|0)J=45}else J=45;if((J|0)==45){J=0;B=a+(e<<1<<3)|0;C=a+(l<<1<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;B=B+8|0;N=+p[B>>3];C=C+8|0;p[B>>3]=+p[C>>3];p[C>>3]=N}if(!(b[F>>0]|0))if(!(b[G>>0]|0))break;B=a+32+(e*3<<3)|0;C=a+32+(l*3<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;z=B+8|0;N=+p[z>>3];A=C+8|0;p[z>>3]=+p[A>>3];p[A>>3]=N;B=B+16|0;N=+p[B>>3];C=C+16|0;p[B>>3]=+p[C>>3];p[C>>3]=N}while(0);e=l+1|0;c=f[H>>2]|0;if((c|0)<=(e|0)){J=50;break}else l=e}if((J|0)==50){J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}f[m>>2]=l;J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}function _La(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;h=u;u=u+48|0;e=h+20|0;g=h;i=a+144|0;p[i>>3]=+p[d>>3];p[a+152>>3]=+p[d+16>>3];p[a+160>>3]=+p[d+32>>3];p[a+168>>3]=+p[d+8>>3];p[a+176>>3]=+p[d+24>>3];p[a+184>>3]=+p[d+40>>3];aMa(a,i)|0;p[c+120>>3]=+p[a>>3];p[c+128>>3]=+p[a+24>>3];p[c+136>>3]=0.0;p[c+144>>3]=+p[a+32>>3];if(!(b[c+157>>0]|0)){if(b[c+158>>0]|0){n=c+32|0;p[n>>3]=1.0;q=c+40|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;p[c+64>>3]=1.0;o=c+72|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;p[c+96>>3]=1.0;o=e+4|0;m=e+12|0;l=e+16|0;k=g+4|0;j=g+12|0;d=g+16|0;i=a+192|0;f[e>>2]=q;f[o>>2]=2;f[m>>2]=n;f[l>>2]=3;f[g>>2]=a+40;f[k>>2]=1;f[j>>2]=a;f[d>>2]=3;cMa(e,g,a+56|0,i);f[e>>2]=c+32;f[o>>2]=3;f[m>>2]=n;f[l>>2]=3;f[g>>2]=a+8;f[k>>2]=2;f[j>>2]=a;f[d>>2]=3;cMa(e,g,a+48|0,i)}}else{f[e>>2]=a;f[e+4>>2]=a+48;b[e+8>>0]=0;f[e+12>>2]=2;f[e+16>>2]=0;bMa(e,c+32|0,a+192|0)}if(!(b[c+155>>0]|0))if(!(b[c+156>>0]|0)){u=h;return 1};f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[c+(f[a+64>>2]<<3)>>3]=1.0;p[c+((f[a+68>>2]|0)+2<<3)>>3]=1.0;u=h;return 1}function $La(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;m=+p[a+(b*3<<3)>>3];k=+p[a+((c<<1)+b<<3)>>3];l=+p[a+((b<<1)+c<<3)>>3];g=+p[a+(c*3<<3)>>3];j=l-k;f=(g+m)/j;if(j==0.0){i=1.0;j=0.0}else{j=+L(+(f*f+1.0));i=f/j;j=1.0/j}if(i==1.0&j==0.0){h=k;f=m}else{h=i*k+j*g;g=i*g-j*k;f=i*m+j*l}if(h==0.0){g=1.0;f=0.0}else{m=+K(+h);l=(f-g)/(m*2.0);f=+L(+(l*l+1.0));f=1.0/(l+(l>0.0?f:-f));l=1.0/+L(+(f*f+1.0));g=l;f=l*(+K(+f)*(h/m*(f>0.0?-1.0:1.0)))}p[e+8>>3]=f;p[e>>3]=g;m=-f;p[d>>3]=i*g-j*m;p[d+8>>3]=i*m+j*g;return}function aMa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0,o=0,q=0,r=0,s=0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,M=0.0;J=u;u=u+64|0;H=J+32|0;I=J;M=+p[c>>3];p[a>>3]=M;i=+p[c+8>>3];p[a+8>>3]=i;h=+p[c+16>>3];p[a+16>>3]=h;k=+p[c+24>>3];p[a+24>>3]=k;l=+p[c+32>>3];p[a+32>>3]=l;t=+p[c+40>>3];p[a+40>>3]=t;h=M*M+(i*i+h*h);p[a+96>>3]=h;t=k*k+(l*l+t*t);p[a+104>>3]=t;t=(h<t?t:h)*4.930380657631324e-32/3.0;v=a+136|0;f[v>>2]=2;w=a+128|0;p[w>>3]=0.0;x=a;y=H+4|0;z=H+8|0;A=H+12|0;B=H+16|0;C=I+4|0;D=I+12|0;E=I+20|0;F=I+28|0;s=0;n=0;while(1){r=2-s|0;m=a+96+(s<<3)|0;G=(r|0)>1;if(G){e=1;c=0;while(1){i=+p[m+(e<<3)>>3];d=i>h;c=d?e:c;e=e+1|0;if((e|0)==(r|0))break;else h=d?i:h}}else c=0;g=c+s|0;j=a+(g*3<<3)|0;q=3-s|0;e=j+(s<<3)|0;h=+p[e>>3];d=1;h=h*h;do{M=+p[e+(d<<3)>>3];h=h+M*M;d=d+1|0}while((d|0)!=(q|0));d=a+96+(g<<3)|0;p[d>>3]=h;if((f[v>>2]|0)==2)if(h<t*+(q|0))f[v>>2]=s;f[a+72+(s<<2)>>2]=g;o=a+(s*3<<3)|0;if(c){M=+p[o>>3];p[o>>3]=+p[j>>3];p[j>>3]=M;e=o+8|0;M=+p[e>>3];g=j+8|0;p[e>>3]=+p[g>>3];p[g>>3]=M;g=o+16|0;M=+p[g>>3];j=j+16|0;p[g>>3]=+p[j>>3];p[j>>3]=M;M=+p[m>>3];p[m>>3]=+p[d>>3];p[d>>3]=M;n=n+1|0}d=o+(s<<3)|0;j=a+48+(s<<3)|0;g=q+-1|0;e=d+8|0;l=+p[e>>3];h=l*l;if((q|0)>2){c=1;do{M=+p[e+(c<<3)>>3];h=h+M*M;c=c+1|0}while((c|0)!=(g|0));i=h}else i=h;h=+p[d>>3];if(!(i<=2.2250738585072014e-308)){k=+L(+(i+h*h));k=!(h>=0.0)?k:-k;i=h-k;p[e>>3]=l/i;if((g|0)!=1){c=1;do{p[e+(c<<3)>>3]=+p[e+(c<<3)>>3]/i;c=c+1|0}while((c|0)!=(g|0))}p[j>>3]=(k-h)/k;h=k}else{p[j>>3]=0.0;Krb(e|0,0,g<<3|0)|0}p[a+(s<<2<<3)>>3]=h;h=+K(+h);if(h>+p[w>>3])p[w>>3]=h;d=r+-1|0;r=3-r|0;e=r*3|0;f[H>>2]=a+(e+s<<3);f[y>>2]=q;f[z>>2]=d;f[A>>2]=a;f[B>>2]=3;f[I>>2]=o+(4-q<<3);f[C>>2]=g;f[D>>2]=o;c=E;f[c>>2]=x;f[c+4>>2]=3;f[F>>2]=3;c=s+1|0;gMa(H,I,j,a+80+(c<<3)|0);e=a+(s<<3)+(e<<3)|0;g=a+96+(r<<3)|0;if(G){M=+p[e>>3];p[g>>3]=+p[g>>3]-M*M;if((d|0)!=1){c=1;d=25;break}}if((c|0)==2){d=2;break}s=c;h=+p[a+96+(c<<3)>>3]}if((d|0)==2){H=a+64|0;f[H>>2]=0;G=a+68|0;f[G>>2]=1;I=a+64+(f[a+72>>2]<<2)|0;f[H>>2]=f[I>>2];f[I>>2]=0;I=a+64+(f[a+76>>2]<<2)|0;H=f[G>>2]|0;f[G>>2]=f[I>>2];f[I>>2]=H;f[a+140>>2]=(n<<1&2^2)+-1;b[a+112>>0]=1;u=J;return a|0}else if((d|0)==25)while(1){d=g+(c<<3)|0;M=+p[e+(c*3<<3)>>3];p[d>>3]=+p[d>>3]-M*M;c=c+1|0;d=25}return 0}function bMa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=u;u=u+48|0;C=E+20|0;D=E;e=f[a+12>>2]|0;p[c>>3]=1.0;B=c+8|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=0;f[B+20>>2]=0;p[c+32>>3]=1.0;B=c+40|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=0;f[B+20>>2]=0;p[c+64>>3]=1.0;if((e|0)<=0){u=E;return}j=a+16|0;k=a+8|0;l=C+4|0;m=C+8|0;n=C+12|0;o=C+16|0;q=D+4|0;r=D+12|0;s=D+16|0;t=a+4|0;v=C+4|0;w=C+8|0;x=C+12|0;y=C+16|0;z=D+4|0;A=D+12|0;B=D+16|0;do{g=e;e=e+-1|0;h=f[j>>2]|0;i=4-g-h|0;if(!(b[k>>0]|0)){f[C>>2]=c+(3-i<<2<<3);f[l>>2]=i;f[m>>2]=i;f[n>>2]=c;f[o>>2]=3;h=h+g|0;i=f[a>>2]|0;f[D>>2]=i+(h+(e*3|0)<<3);f[q>>2]=3-h;f[r>>2]=i;f[s>>2]=3;fMa(C,D,(f[t>>2]|0)+(e<<3)|0,d)}else{f[C>>2]=c+(3-i<<2<<3);f[v>>2]=i;f[w>>2]=i;f[x>>2]=c;f[y>>2]=3;h=h+g|0;i=f[a>>2]|0;f[D>>2]=i+(h+(e*3|0)<<3);f[z>>2]=3-h;f[A>>2]=i;f[B>>2]=3;eMa(C,D,(f[t>>2]|0)+(e<<3)|0,d)}}while((g|0)>1);u=E;return}function cMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0;n=u;u=u+96|0;e=n+80|0;g=n;i=f[a+4>>2]|0;if((i|0)==1){h=1.0-+p[c>>3];l=f[a>>2]|0;p[l>>3]=h*+p[l>>3];m=f[a+16>>2]|0;k=l+(m<<3)|0;p[k>>3]=h*+p[k>>3];m=l+(m<<1<<3)|0;p[m>>3]=h*+p[m>>3];u=n;return}f[e>>2]=d;m=i+-1|0;l=(f[a>>2]|0)+8|0;j=a;s=f[j>>2]|0;j=f[j+4>>2]|0;o=a+12|0;k=o;r=f[k>>2]|0;k=f[k+4>>2]|0;x=b;w=f[x+4>>2]|0;t=b+12|0;v=f[t>>2]|0;t=f[t+4>>2]|0;d=g;f[d>>2]=f[x>>2];f[d+4>>2]=w;d=g+12|0;f[d>>2]=v;f[d+4>>2]=t;f[g+20>>2]=l;f[g+24>>2]=m;d=g+32|0;f[d>>2]=s;f[d+4>>2]=j;d=g+44|0;f[d>>2]=r;f[d+4>>2]=k;f[g+52>>2]=k;dMa(e,g)|0;d=f[a>>2]|0;r=f[o+4>>2]|0;a=f[e>>2]|0;q=+p[a>>3]+ +p[d>>3];p[a>>3]=q;g=a+8|0;p[g>>3]=+p[g>>3]+ +p[d+(r<<3)>>3];j=a+16|0;e=Frb(r|0,0,1)|0;p[j>>3]=+p[j>>3]+ +p[d+(e<<3)>>3];h=+p[c>>3];e=f[o+4>>2]|0;p[d>>3]=+p[d>>3]-h*q;o=d+(e<<3)|0;p[o>>3]=+p[o>>3]-h*+p[g>>3];e=Frb(e|0,0,1)|0;e=d+(e<<3)|0;p[e>>3]=+p[e>>3]-h*+p[j>>3];h=+p[c>>3];if((i|0)>1){e=f[b>>2]|0;p[l>>3]=+p[l>>3]-h*+p[e>>3]*+p[a>>3];if((m|0)==1)d=0;else{d=1;do{x=l+(d<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[a>>3];d=d+1|0}while((d|0)!=(m|0));d=0}do{x=l+(d+k<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[g>>3];d=d+1|0}while((d|0)!=(m|0));a=Frb(k|0,0,1)|0;d=0;do{x=l+(d+a<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[j>>3];d=d+1|0}while((d|0)!=(m|0))}u=n;return}function dMa(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[b>>2]|0;e=f[b+20>>2]|0;g=f[b+52>>2]|0;i=f[b+24>>2]|0;h=f[a>>2]|0;if(!i){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;return a|0}c=+p[j>>3]*+p[e>>3];if((i|0)>1)b=1;else{p[h>>3]=c;p[h+8>>3]=+p[j>>3]*+p[e+(g<<3)>>3];p[h+16>>3]=+p[j>>3]*+p[e+(g<<1<<3)>>3];return a|0}do{c=c+ +p[j+(b<<3)>>3]*+p[e+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h>>3]=c;d=e+(g<<3)|0;b=1;c=+p[j>>3]*+p[d>>3];do{c=c+ +p[j+(b<<3)>>3]*+p[d+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h+8>>3]=c;d=e+(g<<1<<3)|0;b=1;c=+p[j>>3]*+p[d>>3];do{c=c+ +p[j+(b<<3)>>3]*+p[d+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h+16>>3]=c;return a|0}function eMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+272|0;v=w+136|0;m=w;o=f[a+8>>2]|0;if((o|0)==1){h=1.0-+p[c>>3];i=f[a+4>>2]|0;if((i|0)<=0){u=w;return}g=f[a>>2]|0;e=0;do{v=g+(e<<3)|0;p[v>>3]=h*+p[v>>3];e=e+1|0}while((e|0)!=(i|0));u=w;return}l=a+4|0;q=f[l>>2]|0;r=o+-1|0;e=f[a>>2]|0;s=f[a+16>>2]|0;t=e+(s<<3)|0;k=f[b>>2]|0;j=f[b+4>>2]|0;n=(q|0)>0;g=(j|0)>1;do if(n){if(!j){Krb(d|0,0,q<<3|0)|0;e=f[a>>2]|0}else{if(g){g=0;do{a=t+(g<<3)|0;i=1;h=+p[a>>3]*+p[k>>3];do{x=a+((X(i,s)|0)<<3)|0;h=h+ +p[x>>3]*+p[k+(i<<3)>>3];i=i+1|0}while((i|0)!=(j|0));p[d+(g<<3)>>3]=h;g=g+1|0}while((g|0)!=(q|0))}else{g=0;do{p[d+(g<<3)>>3]=+p[t+(g<<3)>>3]*+p[k>>3];g=g+1|0}while((g|0)!=(q|0))}if(!n)break}p[d>>3]=+p[d>>3]+ +p[e>>3];if((q|0)!=1){g=1;do{x=d+(g<<3)|0;p[x>>3]=+p[x>>3]+ +p[e+(g<<3)>>3];g=g+1|0}while((g|0)!=(q|0))}}while(0);h=+p[c>>3];g=f[l>>2]|0;if((g|0)>0){p[e>>3]=+p[e>>3]-h*+p[d>>3];if((g|0)!=1){i=1;do{x=e+(i<<3)|0;p[x>>3]=+p[x>>3]-h*+p[d+(i<<3)>>3];i=i+1|0}while((i|0)!=(g|0))}}h=+p[c>>3];k=b;j=f[k>>2]|0;k=f[k+4>>2]|0;a=b+12|0;i=f[a>>2]|0;a=f[a+4>>2]|0;g=m+24|0;f[g>>2]=q;if(n){e=0;do{p[m+(e<<3)>>3]=h*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(q|0));e=f[g>>2]|0}else e=q;x=m+32|0;f[x>>2]=j;f[x+4>>2]=k;x=m+44|0;f[x>>2]=i;f[x+4>>2]=a;f[m+128>>2]=0;f[m+132>>2]=0;f[v+24>>2]=e;if((e|0)>0)Irb(v|0,m|0,e<<3|0)|0;x=v+32|0;f[x>>2]=j;f[x+4>>2]=k;x=v+44|0;f[x>>2]=i;f[x+4>>2]=a;f[v+128>>2]=0;f[v+132>>2]=0;if(n&(o|0)>1){e=0;do{i=j+(e<<3)|0;a=X(e,s)|0;g=0;do{x=t+(g+a<<3)|0;p[x>>3]=+p[x>>3]-+p[v+(g<<3)>>3]*+p[i>>3];g=g+1|0}while((g|0)!=(q|0));e=e+1|0}while((e|0)!=(r|0))}u=w;return}function fMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+256|0;w=x+128|0;o=x;q=f[a+4>>2]|0;if((q|0)==1){g=1.0-+p[c>>3];h=f[a+8>>2]|0;if((h|0)<=0){u=x;return}i=f[a>>2]|0;e=f[a+16>>2]|0;a=0;do{w=i+((X(a,e)|0)<<3)|0;p[w>>3]=g*+p[w>>3];a=a+1|0}while((a|0)!=(h|0));u=x;return}k=a+8|0;s=f[k>>2]|0;n=d;t=q+-1|0;l=f[a>>2]|0;v=l+8|0;j=a+16|0;r=f[j>>2]|0;m=(s|0)>0;i=f[b>>2]|0;if(m){if((q|0)>2){a=0;do{h=v+((X(a,r)|0)<<3)|0;e=1;g=+p[i>>3]*+p[h>>3];do{g=g+ +p[i+(e<<3)>>3]*+p[h+(e<<3)>>3];e=e+1|0}while((e|0)!=(t|0));p[d+(a<<3)>>3]=g;a=a+1|0}while((a|0)!=(s|0))}else{a=0;do{h=v+((X(a,r)|0)<<3)|0;p[d+(a<<3)>>3]=+p[i>>3]*+p[h>>3];a=a+1|0}while((a|0)!=(s|0))}a=f[j>>2]|0;if(m){p[d>>3]=+p[d>>3]+ +p[l>>3];if((s|0)!=1){e=1;do{i=d+(e<<3)|0;h=l+((X(e,a)|0)<<3)|0;p[i>>3]=+p[i>>3]+ +p[h>>3];e=e+1|0}while((e|0)!=(s|0))}}}g=+p[c>>3];h=f[k>>2]|0;a=f[j>>2]|0;if((h|0)>0){p[l>>3]=+p[l>>3]-g*+p[d>>3];if((h|0)!=1){e=1;do{k=l+((X(e,a)|0)<<3)|0;p[k>>3]=+p[k>>3]-g*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(h|0))}}g=+p[c>>3];i=f[b>>2]|0;a=f[b+4>>2]|0;h=o+24|0;f[h>>2]=a;if((a|0)>0){e=0;do{p[o+(e<<3)>>3]=g*+p[i+(e<<3)>>3];e=e+1|0}while((e|0)!=(a|0));a=f[h>>2]|0}f[o+32>>2]=n;f[o+40>>2]=s;f[o+120>>2]=0;f[o+124>>2]=0;f[w+24>>2]=a;if((a|0)>0)Irb(w|0,o|0,a<<3|0)|0;f[w+32>>2]=n;f[w+40>>2]=s;f[w+120>>2]=0;f[w+124>>2]=0;if(m&(q|0)>1){a=0;do{h=d+(a<<3)|0;i=X(a,r)|0;e=0;do{q=v+(e+i<<3)|0;p[q>>3]=+p[q>>3]-+p[w+(e<<3)>>3]*+p[h>>3];e=e+1|0}while((e|0)!=(t|0));a=a+1|0}while((a|0)!=(s|0))}u=x;return}function gMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+208|0;w=x+104|0;o=x;q=f[a+4>>2]|0;if((q|0)==1){g=1.0-+p[c>>3];h=f[a+8>>2]|0;if((h|0)<=0){u=x;return}i=f[a>>2]|0;e=f[a+16>>2]|0;a=0;do{w=i+((X(a,e)|0)<<3)|0;p[w>>3]=g*+p[w>>3];a=a+1|0}while((a|0)!=(h|0));u=x;return}k=a+8|0;s=f[k>>2]|0;n=d;t=q+-1|0;l=f[a>>2]|0;v=l+8|0;j=a+16|0;r=f[j>>2]|0;m=(s|0)>0;i=f[b>>2]|0;if(m){if((q|0)>2){a=0;do{h=v+((X(a,r)|0)<<3)|0;e=1;g=+p[i>>3]*+p[h>>3];do{g=g+ +p[i+(e<<3)>>3]*+p[h+(e<<3)>>3];e=e+1|0}while((e|0)!=(t|0));p[d+(a<<3)>>3]=g;a=a+1|0}while((a|0)!=(s|0))}else{a=0;do{h=v+((X(a,r)|0)<<3)|0;p[d+(a<<3)>>3]=+p[i>>3]*+p[h>>3];a=a+1|0}while((a|0)!=(s|0))}a=f[j>>2]|0;if(m){p[d>>3]=+p[d>>3]+ +p[l>>3];if((s|0)!=1){e=1;do{i=d+(e<<3)|0;h=l+((X(e,a)|0)<<3)|0;p[i>>3]=+p[i>>3]+ +p[h>>3];e=e+1|0}while((e|0)!=(s|0))}}}g=+p[c>>3];h=f[k>>2]|0;a=f[j>>2]|0;if((h|0)>0){p[l>>3]=+p[l>>3]-g*+p[d>>3];if((h|0)!=1){e=1;do{k=l+((X(e,a)|0)<<3)|0;p[k>>3]=+p[k>>3]-g*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(h|0))}}g=+p[c>>3];i=f[b>>2]|0;a=f[b+4>>2]|0;h=o+24|0;f[h>>2]=a;if((a|0)>0){e=0;do{p[o+(e<<3)>>3]=g*+p[i+(e<<3)>>3];e=e+1|0}while((e|0)!=(a|0));a=f[h>>2]|0}f[o+32>>2]=n;f[o+40>>2]=s;f[o+96>>2]=0;f[o+100>>2]=0;f[w+24>>2]=a;if((a|0)>0)Irb(w|0,o|0,a<<3|0)|0;f[w+32>>2]=n;f[w+40>>2]=s;f[w+96>>2]=0;f[w+100>>2]=0;if(m&(q|0)>1){a=0;do{h=d+(a<<3)|0;i=X(a,r)|0;e=0;do{q=v+(e+i<<3)|0;p[q>>3]=+p[q>>3]-+p[w+(e<<3)>>3]*+p[h>>3];e=e+1|0}while((e|0)!=(t|0));a=a+1|0}while((a|0)!=(s|0))}u=x;return}function hMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function iMa(a,c,d){a=a|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0;j=u;u=u+16|0;i=j;q=+p[a>>3];o=+p[a+8>>3];l=+p[a+16>>3];r=+p[a+24>>3];n=r+(q*+p[c>>3]+(o*+p[c+8>>3]+l*+p[c+16>>3]));m=r+(q*+p[c+24>>3]+(o*+p[c+32>>3]+l*+p[c+40>>3]));l=r+(q*+p[c+48>>3]+(o*+p[c+56>>3]+l*+p[c+64>>3]));f=+K(+n)<d;g=!(n>0.0)&1;e=f?2:g;b[i>>0]=e;h=+K(+m)<d;c=h?2:!(m>0.0)&1;b[i+1>>0]=c;k=+K(+l)<d;a=k?2:!(l>0.0)&1;b[i+2>>0]=a;switch((h?(f?2:1):f&1)+(k&1)&7){case 2:{if(!f){k=g;u=j;return k|0}k=b[i+(h?2:1)>>0]|0;u=j;return k|0}case 1:{h=f?0:h?1:2;k=b[i+(((h+1|0)>>>0)%3|0)>>0]|0;k=k<<24>>24==(b[i+(((h+2|0)>>>0)%3|0)>>0]|0)?k:3;u=j;return k|0}case 0:{k=e<<24>>24==0;k=a<<24>>24==0^k|k^c<<24>>24==0?3:(k^1)&1;u=j;return k|0}case 3:{k=2;u=j;return k|0}default:{k=4;u=j;return k|0}}return 0}function jMa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;a=f[c>>2]|0;g=(f[c+4>>2]|0)-a|0;h=g+1|0;if(!g){c=a;return c|0}if(!h){h=b+2496|0;d=f[h>>2]|0;g=((d+1|0)>>>0)%624|0;c=b+(d<<2)|0;e=f[b+(g<<2)>>2]|0;f[c>>2]=0-(e&1)&-1727483681^f[b+((((d+397|0)>>>0)%624|0)<<2)>>2]^(e&2147483646|f[c>>2]&-2147483648)>>>1;c=f[b+(f[h>>2]<<2)>>2]|0;c=c>>>11^c;f[h>>2]=g;c=c<<7&-1658038656^c;c=c<<15&-272236544^c;c=c>>>18^c;return c|0}d=32-(_(h|0)|0)|0;d=d+(((-1>>>(33-d|0)&h|0)==0)<<31>>31)|0;a=(d>>>5)+((d&31|0)!=0&1)|0;a=a>>>0>d>>>0?0:-1>>>(32-((d>>>0)/(a>>>0)|0)|0);d=b+2496|0;e=f[d>>2]|0;do{j=e;e=((e+1|0)>>>0)%624|0;g=b+(j<<2)|0;i=f[b+(e<<2)>>2]|0;f[g>>2]=0-(i&1)&-1727483681^f[b+((((j+397|0)>>>0)%624|0)<<2)>>2]^(i&2147483646|f[g>>2]&-2147483648)>>>1;g=f[b+(f[d>>2]<<2)>>2]|0;g=g>>>11^g;f[d>>2]=e;g=g<<7&-1658038656^g;g=g<<15&-272236544^g;g=(g>>>18^g)&a}while(g>>>0>=h>>>0);j=(f[c>>2]|0)+g|0;return j|0}function kMa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;e=l;c=f[b>>2]|0;g=c;if(((f[b+4>>2]|0)-c|0)!=12){k=0;u=l;return k|0}b=f[a>>2]|0;if(((f[a+4>>2]|0)-b|0)!=32){k=0;u=l;return k|0}d=g+4|0;if(((f[d>>2]|0)-(f[c>>2]|0)|0)!=32){k=0;u=l;return k|0}k=Wpb(32)|0;i=k+32|0;j=b;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];f[k+16>>2]=f[j+16>>2];f[k+20>>2]=f[j+20>>2];f[k+24>>2]=f[j+24>>2];f[k+28>>2]=f[j+28>>2];f[e>>2]=0;j=e+4|0;f[j>>2]=0;f[e+8>>2]=0;b=(f[d>>2]|0)-(f[c>>2]|0)|0;a=b>>3;if(!a){d=0;e=0;b=0;a=0;c=0}else{if(a>>>0>536870911)fob(e);h=Wpb(b)|0;f[j>>2]=h;f[e>>2]=h;f[e+8>>2]=h+(a<<3);a=f[g>>2]|0;b=(f[d>>2]|0)-a|0;c=h;if((b|0)>0){g=h+(b>>>3<<3)|0;Irb(h|0,a|0,b|0)|0;f[j>>2]=g;d=h;e=g;b=c;a=g;c=h}else{d=h;e=h;b=c;a=c;c=h}}nMa(k,i);nMa(d,e);if((a-b|0)==32)if((f[k>>2]|0)==(f[b>>2]|0))if((f[k+4>>2]|0)==(f[b+4>>2]|0))if((f[k+8>>2]|0)==(f[b+8>>2]|0))if((f[k+12>>2]|0)==(f[b+12>>2]|0))if((f[k+16>>2]|0)==(f[b+16>>2]|0))if((f[k+20>>2]|0)==(f[b+20>>2]|0))if((f[k+24>>2]|0)==(f[b+24>>2]|0))b=(f[k+28>>2]|0)==(f[b+28>>2]|0)?1:0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;if(d|0){if((e|0)!=(d|0))f[j>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(c)}Zpb(k);k=b;u=l;return k|0}function lMa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0,N=0.0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;z=f[a+48>>2]|0;w=f[a+56>>2]|0;x=f[a+104>>2]|0;y=f[a+112>>2]|0;c=f[a+232>>2]|0;k=f[a+680>>2]|0;l=f[a+728>>2]|0;m=f[a+816>>2]|0;n=f[a+880>>2]|0;A=f[a+1672>>2]|0;B=f[a+1720>>2]|0;o=f[a+1768>>2]|0;q=f[a+1784>>2]|0;r=f[a+1808>>2]|0;t=f[a+1848>>2]|0;u=f[a+1920>>2]|0;v=f[a+1976>>2]|0;C=f[a+2016>>2]|0;a:{b:while(1){i=y;switch((B-i|0|0)/88|0|0){case 2:{C=5;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}case 3:{C=7;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}case 4:{C=8;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}case 5:{C=9;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}case 1:case 0:{C=46;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}default:{}}if((B-i|0|0)<616){C=11;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}h=y+((((B-i|0)>>>0)/176|0)*88|0)|0;if((B-i|0|0)>87912)e=BKa(y,y+((((B-i|0)>>>0)/352|0)*88|0)|0,h,h+((((B-i|0)>>>0)/352|0)*88|0)|0,o,z)|0;else e=zKa(y,h,o,z)|0;D=+$1a(y);if(D<+$1a(h)){d=o;b=e;break}else j=o;while(1){s=j+-88|0;if((y|0)==(s|0))break;D=+$1a(s);if(D<+$1a(h)){C=29;break b}else j=s}e=y+88|0;D=+$1a(y);if(!(D<+$1a(o))){if((e|0)==(o|0)){C=46;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}while(1){D=+$1a(y);if(D<+$1a(e))break;e=e+88|0;if((e|0)==(o|0)){C=46;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}}S=e+8|0;R=e+16|0;L=+p[e>>3];K=+p[S>>3];J=+p[R>>3];Q=e+24|0;P=e+32|0;O=e+40|0;I=+p[Q>>3];H=+p[P>>3];G=+p[O>>3];M=e+48|0;g=e+56|0;h=e+64|0;F=+p[M>>3];E=+p[g>>3];D=+p[h>>3];i=e+72|0;f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];N=+p[o>>3];p[o>>3]=L;p[e>>3]=N;N=+p[q>>3];p[q>>3]=+p[S>>3];p[S>>3]=N;N=+p[r>>3];p[r>>3]=+p[R>>3];p[R>>3]=N;N=+p[t>>3];p[t>>3]=+p[Q>>3];p[Q>>3]=N;N=+p[u>>3];p[u>>3]=+p[P>>3];p[P>>3]=N;N=+p[v>>3];p[v>>3]=+p[O>>3];p[O>>3]=N;N=+p[k>>3];p[k>>3]=+p[M>>3];p[M>>3]=N;p[g>>3]=+p[l>>3];p[h>>3]=+p[m>>3];f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];p[o>>3]=L;p[q>>3]=K;p[r>>3]=J;p[t>>3]=I;p[u>>3]=H;p[v>>3]=G;p[k>>3]=F;p[l>>3]=E;p[m>>3]=D;f[n>>2]=f[a>>2];f[n+4>>2]=f[a+4>>2];f[n+8>>2]=f[a+8>>2];e=e+88|0}if((e|0)==(o|0)){C=46;f[a+2024>>2]=2;f[a+2028>>2]=11;break a}else g=o;while(1){while(1){N=+$1a(y);i=e+88|0;if(N<+$1a(e))break;else e=i}while(1){h=g+-88|0;N=+$1a(y);if(N<+$1a(h))g=h;else break}if(e>>>0>=h>>>0){y=e;continue b}M=e+8|0;O=e+16|0;E=+p[e>>3];F=+p[M>>3];G=+p[O>>3];P=e+24|0;Q=e+32|0;R=e+40|0;H=+p[P>>3];I=+p[Q>>3];J=+p[R>>3];S=e+48|0;W=e+56|0;V=e+64|0;K=+p[S>>3];L=+p[W>>3];N=+p[V>>3];U=e+72|0;f[a>>2]=f[U>>2];f[a+4>>2]=f[U+4>>2];f[a+8>>2]=f[U+8>>2];D=+p[h>>3];p[h>>3]=E;p[e>>3]=D;T=g+-80|0;D=+p[T>>3];p[T>>3]=+p[M>>3];p[M>>3]=D;M=g+-72|0;D=+p[M>>3];p[M>>3]=+p[O>>3];p[O>>3]=D;O=g+-64|0;D=+p[O>>3];p[O>>3]=+p[P>>3];p[P>>3]=D;P=g+-56|0;D=+p[P>>3];p[P>>3]=+p[Q>>3];p[Q>>3]=D;Q=g+-48|0;D=+p[Q>>3];p[Q>>3]=+p[R>>3];p[R>>3]=D;R=g+-40|0;D=+p[R>>3];p[R>>3]=+p[S>>3];p[S>>3]=D;S=g+-32|0;p[W>>3]=+p[S>>3];e=g+-24|0;p[V>>3]=+p[e>>3];g=g+-16|0;f[U>>2]=f[g>>2];f[U+4>>2]=f[g+4>>2];f[U+8>>2]=f[g+8>>2];p[h>>3]=E;p[T>>3]=F;p[M>>3]=G;p[O>>3]=H;p[P>>3]=I;p[Q>>3]=J;p[R>>3]=K;p[S>>3]=L;p[e>>3]=N;f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];f[g+8>>2]=f[a+8>>2];g=h;e=i}}if((C|0)==29){C=0;R=y+8|0;S=y+16|0;E=+p[y>>3];F=+p[R>>3];G=+p[S>>3];T=y+24|0;U=y+32|0;V=y+40|0;H=+p[T>>3];I=+p[U>>3];J=+p[V>>3];W=y+48|0;b=y+56|0;d=y+64|0;K=+p[W>>3];L=+p[b>>3];N=+p[d>>3];P=y+72|0;f[a>>2]=f[P>>2];f[a+4>>2]=f[P+4>>2];f[a+8>>2]=f[P+8>>2];D=+p[s>>3];p[s>>3]=E;p[y>>3]=D;Q=j+-80|0;D=+p[Q>>3];p[Q>>3]=+p[R>>3];p[R>>3]=D;R=j+-72|0;D=+p[R>>3];p[R>>3]=+p[S>>3];p[S>>3]=D;S=j+-64|0;D=+p[S>>3];p[S>>3]=+p[T>>3];p[T>>3]=D;T=j+-56|0;D=+p[T>>3];p[T>>3]=+p[U>>3];p[U>>3]=D;U=j+-48|0;D=+p[U>>3];p[U>>3]=+p[V>>3];p[V>>3]=D;V=j+-40|0;D=+p[V>>3];p[V>>3]=+p[W>>3];p[W>>3]=D;W=j+-32|0;p[b>>3]=+p[W>>3];b=j+-24|0;p[d>>3]=+p[b>>3];d=j+-16|0;f[P>>2]=f[d>>2];f[P+4>>2]=f[d+4>>2];f[P+8>>2]=f[d+8>>2];p[s>>3]=E;p[Q>>3]=F;p[R>>3]=G;p[S>>3]=H;p[T>>3]=I;p[U>>3]=J;p[V>>3]=K;p[W>>3]=L;p[b>>3]=N;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];d=s;b=e+1|0}c=y+88|0;c:do if(c>>>0<d>>>0)while(1){while(1){N=+$1a(c);g=c+88|0;if(N<+$1a(h))c=g;else break}while(1){e=d+-88|0;N=+$1a(e);if(N<+$1a(h))break;else d=e}if(c>>>0>e>>>0){d=h;break c}Q=c+8|0;R=c+16|0;E=+p[c>>3];F=+p[Q>>3];G=+p[R>>3];S=c+24|0;T=c+32|0;U=c+40|0;H=+p[S>>3];I=+p[T>>3];J=+p[U>>3];V=c+48|0;W=c+56|0;M=c+64|0;K=+p[V>>3];L=+p[W>>3];N=+p[M>>3];O=c+72|0;f[a>>2]=f[O>>2];f[a+4>>2]=f[O+4>>2];f[a+8>>2]=f[O+8>>2];D=+p[e>>3];p[e>>3]=E;p[c>>3]=D;P=d+-80|0;D=+p[P>>3];p[P>>3]=+p[Q>>3];p[Q>>3]=D;Q=d+-72|0;D=+p[Q>>3];p[Q>>3]=+p[R>>3];p[R>>3]=D;R=d+-64|0;D=+p[R>>3];p[R>>3]=+p[S>>3];p[S>>3]=D;S=d+-56|0;D=+p[S>>3];p[S>>3]=+p[T>>3];p[T>>3]=D;T=d+-48|0;D=+p[T>>3];p[T>>3]=+p[U>>3];p[U>>3]=D;U=d+-40|0;D=+p[U>>3];p[U>>3]=+p[V>>3];p[V>>3]=D;V=d+-32|0;p[W>>3]=+p[V>>3];W=d+-24|0;p[M>>3]=+p[W>>3];d=d+-16|0;f[O>>2]=f[d>>2];f[O+4>>2]=f[d+4>>2];f[O+8>>2]=f[d+8>>2];p[e>>3]=E;p[P>>3]=F;p[Q>>3]=G;p[R>>3]=H;p[S>>3]=I;p[T>>3]=J;p[U>>3]=K;p[V>>3]=L;p[W>>3]=N;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];h=(h|0)==(c|0)?e:h;d=e;c=g;b=b+1|0}else d=h;while(0);if((c|0)!=(d|0)){N=+$1a(d);if(N<+$1a(c)){P=c+8|0;Q=c+16|0;E=+p[c>>3];F=+p[P>>3];G=+p[Q>>3];R=c+24|0;S=c+32|0;T=c+40|0;H=+p[R>>3];I=+p[S>>3];J=+p[T>>3];U=c+48|0;V=c+56|0;W=c+64|0;K=+p[U>>3];L=+p[V>>3];N=+p[W>>3];M=c+72|0;f[a>>2]=f[M>>2];f[a+4>>2]=f[M+4>>2];f[a+8>>2]=f[M+8>>2];D=+p[d>>3];p[d>>3]=E;p[c>>3]=D;O=d+8|0;D=+p[O>>3];p[O>>3]=+p[P>>3];p[P>>3]=D;P=d+16|0;D=+p[P>>3];p[P>>3]=+p[Q>>3];p[Q>>3]=D;Q=d+24|0;D=+p[Q>>3];p[Q>>3]=+p[R>>3];p[R>>3]=D;R=d+32|0;D=+p[R>>3];p[R>>3]=+p[S>>3];p[S>>3]=D;S=d+40|0;D=+p[S>>3];p[S>>3]=+p[T>>3];p[T>>3]=D;T=d+48|0;D=+p[T>>3];p[T>>3]=+p[U>>3];p[U>>3]=D;U=d+56|0;p[V>>3]=+p[U>>3];V=d+64|0;p[W>>3]=+p[V>>3];W=d+72|0;f[M>>2]=f[W>>2];f[M+4>>2]=f[W+4>>2];f[M+8>>2]=f[W+8>>2];p[d>>3]=E;p[O>>3]=F;p[P>>3]=G;p[Q>>3]=H;p[R>>3]=I;p[S>>3]=J;p[T>>3]=K;p[U>>3]=L;p[V>>3]=N;f[W>>2]=f[a>>2];f[W+4>>2]=f[a+4>>2];f[W+8>>2]=f[a+8>>2];b=b+1|0}}if(!b){A=DKa(y,c,z)|0;b=c+88|0;if(DKa(b,x,z)|0){C=45;f[a+2024>>2]=1;break a}if(A){w=b;f[a+2024>>2]=3;break a}}W=c;if(((W-i|0)/88|0|0)>=((B-W|0)/88|0|0)){C=44;f[a+2024>>2]=1;break a}tKa(y,c,z);w=c+88|0}f[a+56>>2]=w;f[a+112>>2]=y;f[a+232>>2]=c;f[a+1672>>2]=A;f[a+2016>>2]=C}function mMa(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=f[a+80>>2]|0;v=f[a+88>>2]|0;w=f[a+96>>2]|0;q=f[a+144>>2]|0;r=f[a+168>>2]|0;u=f[a+176>>2]|0;s=f[a+200>>2]|0;t=f[a+872>>2]|0;c=f[a+880>>2]|0;n=f[a+888>>2]|0;x=f[a+976>>2]|0;a:{b:do if((c|0)!=(n|0))while(1){JLa(a,f[(v+36|0)>>2]|0,c,o+40|0,+p[(o+32|0)>>3]);c:{d=1;e=b[a>>0]|0;if(d)switch(e|0){case 0:{d=f[u>>2]|0;if((d|0)==(f[((a+28|0)+8|0)>>2]|0)){sKa(a+28|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[u>>2]=d+88;break c}}case 1:{d=f[s>>2]|0;if((d|0)==(f[t>>2]|0)){sKa(a+16|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[s>>2]=d+88;break c}}case 2:{f[(o+16|0)>>2]=(f[(o+16|0)>>2]|0)+1;d=f[r>>2]|0;if((d|0)==(f[q>>2]|0)){sKa(a+40|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[r>>2]=d+88;break c}}default:d=1}if(d)switch(e|0){case 3:{f[(o+12|0)>>2]=(f[(o+12|0)>>2]|0)+1;d=b[(a+2|0)>>0]|0;f[(o+24|0)>>2]=(f[(o+24|0)>>2]|0)+-1+(((d&255)/3|0)&255);if(d<<24>>24){m=c+72|0;l=0;do{e=(l|0)<(h[(a+1|0)>>0]|0)?a+28|0:a+16|0;g=o+40+(l*24|0)|0;i=l+1|0;j=l+2|0;k=f[(e+4|0)>>2]|0;if(k>>>0<(f[e+8>>2]|0)>>>0){p[k>>3]=+p[g>>3];p[k+8>>3]=+p[o+40+(l*24|0)+8>>3];p[k+16>>3]=+p[o+40+(l*24|0)+16>>3];p[k+24>>3]=+p[(o+40+(i*24|0)|0)>>3];p[k+32>>3]=+p[o+40+(i*24|0)+8>>3];p[k+40>>3]=+p[o+40+(i*24|0)+16>>3];p[k+48>>3]=+p[(o+40+(j*24|0)|0)>>3];p[k+56>>3]=+p[o+40+(j*24|0)+8>>3];p[k+64>>3]=+p[o+40+(j*24|0)+16>>3];f[(k+72|0)>>2]=f[m>>2];f[(k+72|0)+4>>2]=f[m+4>>2];f[(k+72|0)+8>>2]=f[m+8>>2];f[(e+4|0)>>2]=(f[(e+4|0)>>2]|0)+88}else{SLa(e,g,o+40+(i*24|0)|0,o+40+(j*24|0)|0,m);d=b[(a+2|0)>>0]|0}l=l+3|0}while((l|0)<(d&255|0))}break}case 4:{f[(o+20|0)>>2]=(f[(o+20|0)>>2]|0)+1;break}default:{}}}c=c+88|0;if((c|0)==(n|0))break b}while(0);c=f[r>>2]|0;g=f[(a+40|0)>>2]|0;f[(o+8|0)>>2]=((c-g|0)/88|0)+(f[(o+8|0)>>2]|0);i=f[(v+36|0)>>2]|0;d=f[(i+32|0)>>2]|0;if(!d){e=i+40|0;d=g}else{c=f[(i+36|0)>>2]|0;if((c|0)!=(d|0))f[(i+36|0)>>2]=c+(~(((c+-88-d|0)>>>0)/88|0)*88|0);Zpb(d);f[(i+40|0)>>2]=0;f[(i+36|0)>>2]=0;f[(i+32|0)>>2]=0;e=i+40|0;d=f[(a+40|0)>>2]|0;c=f[r>>2]|0}f[(i+32|0)>>2]=d;f[(i+36|0)>>2]=c;f[e>>2]=f[q>>2];f[q>>2]=0;f[r>>2]=0;f[(a+40|0)>>2]=0;l=f[(a+16|0)>>2]|0;m=f[s>>2]|0;do{k=1;if(k){k=0;if((f[(a+28|0)>>2]|0)==(f[u>>2]|0)){if((l|0)!=(m|0)){QLa(a,a+8|0,a+16|0);u=(f[(v+36|0)>>2]|0)+48|0;r=f[a>>2]|0;f[a>>2]=0;c=f[u>>2]|0;f[u>>2]=r;if(c|0){OLa(c+48|0);OLa(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);Zpb(d)}Zpb(c)}OLa(a);f[(v+36|0)>>2]=f[(f[(v+36|0)>>2]|0)+48>>2];c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);Zpb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(a+16|0)>>2];f[(v+28|0)>>2]=f[s>>2];f[(v+32|0)>>2]=f[t>>2];f[t>>2]=0;f[s>>2]=0;f[(a+16|0)>>2]=0;break}c=f[(v+20|0)>>2]|0;if(!c){x=69;f[a+1008>>2]=2;f[a+1012>>2]=3;break a}g=c+-1+(f[(v+16|0)>>2]|0)|0;i=f[(f[(v+4|0)>>2]|0)+(g>>>8<<2)>>2]|0;c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);Zpb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(i+((g&255)<<4)+4|0)>>2];f[(v+28|0)>>2]=f[(i+((g&255)<<4)+8|0)>>2];f[(v+32|0)>>2]=f[(i+((g&255)<<4)+12|0)>>2];f[(i+((g&255)<<4)+12|0)>>2]=0;f[(i+((g&255)<<4)+8|0)>>2]=0;f[(i+((g&255)<<4)+4|0)>>2]=0;QLa(a,a+8|0,v+24|0);r=(f[(i+((g&255)<<4)|0)>>2]|0)+48|0;q=f[a>>2]|0;f[a>>2]=0;c=f[r>>2]|0;f[r>>2]=q;if(c|0){OLa(c+48|0);OLa(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);Zpb(d)}Zpb(c)}OLa(a);f[(v+36|0)>>2]=f[(f[(i+((g&255)<<4)|0)>>2]|0)+48>>2];g=f[(v+20|0)>>2]|0;d=f[(v+16|0)>>2]|0;e=f[(v+4|0)>>2]|0;i=f[e+((g+-1+d|0)>>>8<<2)>>2]|0;j=f[i+(((g+-1+d|0)&255)<<4)+4>>2]|0;if(j){c=f[(i+(((g+-1+d|0)&255)<<4)+8|0)>>2]|0;if((c|0)!=(j|0))f[(i+(((g+-1+d|0)&255)<<4)+8|0)>>2]=c+(~(((c+-88-j|0)>>>0)/88|0)*88|0);Zpb(j);g=f[(v+20|0)>>2]|0;e=f[(v+4|0)>>2]|0;d=f[(v+16|0)>>2]|0}f[(v+20|0)>>2]=g+-1;c=f[(v+8|0)>>2]|0;r=c-e|0;if((1-d-g+((r|0)==0?0:(r<<6)+-1|0)|0)>>>0>511){Zpb(f[c+-4>>2]|0);f[(v+8|0)>>2]=(f[(v+8|0)>>2]|0)+-4}}else k=1}if(k)if(1){if((l|0)!=(m|0)){i=f[(v+36|0)>>2]|0;j=f[t>>2]|0;f[t>>2]=0;f[s>>2]=0;f[(a+16|0)>>2]=0;g=f[(v+8|0)>>2]|0;e=f[(v+4|0)>>2]|0;c=f[(v+16|0)>>2]|0;d=f[(v+20|0)>>2]|0;if((((g-e|0|0)==0?0:((g-e|0)<<6)+-1|0)|0)==(d+c|0)){TLa(v);c=f[(v+16|0)>>2]|0;d=f[(v+20|0)>>2]|0;g=f[(v+8|0)>>2]|0;e=f[(v+4|0)>>2]|0}c=d+c|0;if((g|0)==(e|0))c=0;else c=(f[e+(c>>>8<<2)>>2]|0)+((c&255)<<4)|0;f[c>>2]=i;f[c+4>>2]=l;f[c+8>>2]=m;f[c+12>>2]=j;f[(v+20|0)>>2]=d+1}QLa(a,a+8|0,a+28|0);t=(f[(v+36|0)>>2]|0)+44|0;s=f[a>>2]|0;f[a>>2]=0;c=f[t>>2]|0;f[t>>2]=s;if(c|0){OLa(c+48|0);OLa(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);Zpb(d)}Zpb(c)}OLa(a);f[(v+36|0)>>2]=f[(f[(v+36|0)>>2]|0)+44>>2];c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);Zpb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(a+28|0)>>2];f[(v+28|0)>>2]=f[u>>2];f[(v+32|0)>>2]=f[((a+28|0)+8|0)>>2];f[((a+28|0)+8|0)>>2]=0;f[u>>2]=0;f[(a+28|0)>>2]=0}}while(0);v=Leb()|0;t=I;u=f[w+4>>2]|0;if(!((t|0)<(u|0)|((t|0)==(u|0)?v>>>0<(f[w>>2]|0)>>>0:0))){x=90;f[a+1008>>2]=1;break a}}f[a+976>>2]=x}
function Sta(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;r=t+28|0;s=t+8|0;q=t;l=a+240|0;if(f[l>>2]|0){j=a+236|0;i=f[j>>2]|0;if(i|0)do{p=i;i=f[i>>2]|0;Zpb(p)}while((i|0)!=0);f[j>>2]=0;j=f[a+232>>2]|0;if(j|0){k=a+228|0;i=0;do{f[(f[k>>2]|0)+(i<<2)>>2]=0;i=i+1|0}while((i|0)!=(j|0))}f[l>>2]=0}f[r>>2]=0;p=r+4|0;f[p>>2]=0;f[r+8>>2]=0;m=a+36|0;i=f[a+44>>2]|0;if(!i){i=0;j=0}else{l=r+8|0;do{j=f[i+8>>2]|0;f[s>>2]=j;do if(j|0){k=f[p>>2]|0;if((k|0)==(f[l>>2]|0)){BD(r,s);break}else{f[k>>2]=j;f[p>>2]=k+4;break}}while(0);i=f[i>>2]|0}while((i|0)!=0);i=f[r>>2]|0;j=f[p>>2]|0;if((i|0)==(j|0))i=j;else{do{Eta(a,b,f[i>>2]|0)|0;i=i+4|0}while((i|0)!=(j|0));i=f[r>>2]|0;j=f[p>>2]|0;if((j|0)!=(i|0)){j=j+(~((j+-4-i|0)>>>2)<<2)|0;f[p>>2]=j}}}k=f[a+24>>2]|0;if(k){l=r+8|0;do{i=f[k+8>>2]|0;f[s>>2]=i;do if(i|0){j=f[p>>2]|0;if((j|0)==(f[l>>2]|0)){BD(r,s);break}else{f[j>>2]=i;f[p>>2]=j+4;break}}while(0);k=f[k>>2]|0}while((k|0)!=0);i=f[r>>2]|0;j=f[p>>2]|0}if((i|0)!=(j|0)){do{Pta(a,f[i>>2]|0)|0;i=i+4|0}while((i|0)!=(j|0));i=f[r>>2]|0;j=f[p>>2]|0;if((j|0)!=(i|0))f[p>>2]=j+(~((j+-4-i|0)>>>2)<<2)}Tta(s,d,d+(c<<2)|0);f[q>>2]=0;i=Fta(m,q)|0;i=f[(f[i>>2]|0)+56>>2]|0;if(i|0){d=s+4|0;n=r+8|0;do{c=f[i+8>>2]|0;f[q>>2]=c;b=f[d>>2]|0;a:do if(!b)o=53;else{l=b+-1|0;k=(l&b|0)==0;if(k)m=l&c;else if(c>>>0<b>>>0)m=c;else m=(c>>>0)%(b>>>0)|0;j=f[(f[s>>2]|0)+(m<<2)>>2]|0;if(!j)o=53;else{j=f[j>>2]|0;if(!j)o=53;else{if(k)while(1){b=f[j+4>>2]|0;k=(c|0)==(b|0);if(!(k|(b&l|0)==(m|0))){o=53;break a}if(k)if((f[j+8>>2]|0)==(c|0))break a;j=f[j>>2]|0;if(!j){o=53;break a}}while(1){k=f[j+4>>2]|0;if((c|0)==(k|0)){if((f[j+8>>2]|0)==(c|0))break a}else{if(k>>>0>=b>>>0)k=(k>>>0)%(b>>>0)|0;if((k|0)!=(m|0)){o=53;break a}}j=f[j>>2]|0;if(!j){o=53;break}}}}}while(0);do if((o|0)==53){o=0;j=f[p>>2]|0;if((j|0)==(f[n>>2]|0)){BD(r,q);break}else{f[j>>2]=c;f[p>>2]=j+4;break}}while(0);i=f[i>>2]|0}while((i|0)!=0)}i=f[r>>2]|0;j=f[p>>2]|0;if((i|0)!=(j|0)){k=q+4|0;do{n=f[i>>2]|0;f[q>>2]=0;f[k>>2]=n;Uta(a,q)|0;i=i+4|0}while((i|0)!=(j|0));i=f[r>>2]|0;j=f[p>>2]|0;if((j|0)!=(i|0))f[p>>2]=j+(~((j+-4-i|0)>>>2)<<2)}i=f[s+8>>2]|0;if(i|0)do{n=i;i=f[i>>2]|0;Zpb(n)}while((i|0)!=0);i=f[s>>2]|0;f[s>>2]=0;if(i|0)Zpb(i);Tta(s,g,g+(e<<2)|0);i=(esa(a,0)|0)+48|0;i=f[i>>2]|0;if(i|0){d=s+4|0;n=r+8|0;do{j=i;g=f[(f[j+12>>2]|0)+44>>2]|0;if((f[g+112>>2]|0)==(f[g+108>>2]|0)){c=f[j+8>>2]|0;f[q>>2]=c;b=f[d>>2]|0;b:do if(!b)o=87;else{l=b+-1|0;k=(l&b|0)==0;if(k)m=l&c;else if(c>>>0<b>>>0)m=c;else m=(c>>>0)%(b>>>0)|0;j=f[(f[s>>2]|0)+(m<<2)>>2]|0;if(!j)o=87;else{j=f[j>>2]|0;if(!j)o=87;else{if(k)while(1){g=f[j+4>>2]|0;k=(c|0)==(g|0);if(!(k|(g&l|0)==(m|0))){o=87;break b}if(k)if((f[j+8>>2]|0)==(c|0))break b;j=f[j>>2]|0;if(!j){o=87;break b}}while(1){k=f[j+4>>2]|0;if((c|0)==(k|0)){if((f[j+8>>2]|0)==(c|0))break b}else{if(k>>>0>=b>>>0)k=(k>>>0)%(b>>>0)|0;if((k|0)!=(m|0)){o=87;break b}}j=f[j>>2]|0;if(!j){o=87;break}}}}}while(0);do if((o|0)==87){o=0;j=f[p>>2]|0;if((j|0)==(f[n>>2]|0)){BD(r,q);break}else{f[j>>2]=c;f[p>>2]=j+4;break}}while(0)}i=f[i>>2]|0}while((i|0)!=0)}i=f[r>>2]|0;j=f[p>>2]|0;if((i|0)!=(j|0)){k=q+4|0;do{o=f[i>>2]|0;f[q>>2]=0;f[k>>2]=o;Vta(a,q)|0;i=i+4|0}while((i|0)!=(j|0));i=f[r>>2]|0;j=f[p>>2]|0;if((j|0)!=(i|0))f[p>>2]=j+(~((j+-4-i|0)>>>2)<<2)}i=f[s+8>>2]|0;if(i|0)do{q=i;i=f[i>>2]|0;Zpb(q)}while((i|0)!=0);i=f[s>>2]|0;f[s>>2]=0;if(i|0)Zpb(i);if(!h)f[a+12>>2]=0;zNa(f[(f[a+4>>2]|0)+228>>2]|0);i=f[r>>2]|0;if(!i){u=t;return}j=f[p>>2]|0;if((j|0)!=(i|0))f[p>>2]=j+(~((j+-4-i|0)>>>2)<<2);Zpb(i);u=t;return}function Tta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;q=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[q>>2]=1.0;if((b|0)==(c|0))return;r=a+4|0;s=a+12|0;t=a+8|0;e=0;m=0;while(1){o=f[b>>2]|0;l=(m|0)==0;a:do if(l){d=0;p=19}else{k=m+-1|0;h=(k&m|0)==0;if(h)d=o&k;else if(o>>>0<m>>>0)d=o;else d=(o>>>0)%(m>>>0)|0;g=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!g)p=19;else{if(h)while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if(!((h|0)==(o|0)|(h&k|0)==(d|0))){p=19;break a}if((f[g+8>>2]|0)==(o|0)){d=m;break a}}while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if((h|0)!=(o|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(d|0)){p=19;break a}}if((f[g+8>>2]|0)==(o|0)){d=m;break}}}}while(0);if((p|0)==19){p=0;h=Wpb(12)|0;f[h+8>>2]=o;f[h+4>>2]=o;f[h>>2]=0;i=+((e+1|0)>>>0);j=+n[q>>2];do if(l|j*+(m>>>0)<i){d=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;Hia(a,d>>>0<e>>>0?e:d);d=f[r>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&o;break}if(o>>>0<d>>>0){g=d;d=o}else{g=d;d=(o>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[h>>2]=f[t>>2];f[t>>2]=h;f[e>>2]=t;d=f[h>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;p=32}}else{f[h>>2]=f[d>>2];p=32}if((p|0)==32){p=0;f[d>>2]=h}e=(f[s>>2]|0)+1|0;f[s>>2]=e;d=g}b=b+4|0;if((b|0)==(c|0))break;else m=d}return}function Uta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l+4|0;k=l;c=Xta(a,b)|0;if(c|0){k=c;u=l;return k|0}yNa(f[(f[a+4>>2]|0)+228>>2]|0);g=asa(a+36|0,b)|0;g=f[g>>2]|0;h=g+48|0;i=b+4|0;e=f[i>>2]|0;c=f[g+52>>2]|0;d=c+-1|0;if(!(d&c)){c=f[(f[h>>2]|0)+((d&e)<<2)>>2]|0;while(1){c=f[c>>2]|0;if((f[c+4>>2]|0)!=(e|0))continue;if((f[c+8>>2]|0)==(e|0)){e=c;break}}}else{if(e>>>0<c>>>0)c=e;else c=(e>>>0)%(c>>>0)|0;c=f[(f[h>>2]|0)+(c<<2)>>2]|0;while(1){c=f[c>>2]|0;if((f[c+4>>2]|0)!=(e|0))continue;if((f[c+8>>2]|0)==(e|0)){e=c;break}}}Kta(a,f[e+12>>2]|0);if(!(f[b>>2]|0))Yta((esa(a,f[g+8>>2]|0)|0)+20|0,i)|0;c=a+304|0;d=f[c>>2]|0;if((d|0)==(f[a+308>>2]|0))BD(a+300|0,i);else{f[d>>2]=f[i>>2];f[c>>2]=d+4}f[k>>2]=e;f[j>>2]=f[k>>2];ksa(h,j)|0;k=0;u=l;return k|0}function Vta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=Wta(a,b)|0;if(c|0){n=c;return n|0}n=esa(a,f[b>>2]|0)|0;m=n+40|0;i=b+4|0;h=f[i>>2]|0;j=n+44|0;e=f[j>>2]|0;a:do if(!e)k=0;else{d=e+-1|0;b=(d&e|0)==0;if(b)g=d&h;else if(h>>>0<e>>>0)g=h;else g=(h>>>0)%(e>>>0)|0;c=f[(f[m>>2]|0)+(g<<2)>>2]|0;if(!c)k=0;else{c=f[c>>2]|0;if(!c)k=0;else{if(b)while(1){k=f[c+4>>2]|0;b=(k|0)==(h|0);if(!(b|(k&d|0)==(g|0))){k=0;break a}if(b)if((f[c+8>>2]|0)==(h|0)){k=c;break a}c=f[c>>2]|0;if(!c){k=0;break a}}while(1){b=f[c+4>>2]|0;if((b|0)==(h|0)){if((f[c+8>>2]|0)==(h|0)){k=c;break a}}else{if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0;if((b|0)!=(g|0)){k=0;break a}}c=f[c>>2]|0;if(!c){k=0;break}}}}}while(0);b=(f[(f[k+12>>2]|0)+44>>2]|0)+64|0;h=Qqa(b)|0;b=Rqa(b)|0;c=a+456|0;b=(X(h,-4)|0)+-148+(X(b,-2)|0)+(f[c>>2]|0)|0;f[c>>2]=b;c=a+292|0;b=f[c>>2]|0;if((b|0)==(f[a+296>>2]|0))BD(a+288|0,i);else{f[b>>2]=f[i>>2];f[c>>2]=b+4}e=f[j>>2]|0;c=f[k+4>>2]|0;g=e+-1|0;h=(g&e|0)==0;if(h)i=g&c;else if(c>>>0<e>>>0)i=c;else i=(c>>>0)%(e>>>0)|0;b=(f[m>>2]|0)+(i<<2)|0;j=f[b>>2]|0;while(1){c=f[j>>2]|0;if((c|0)==(k|0))break;else j=c}if((j|0)==(n+48|0))l=36;else{c=f[j+4>>2]|0;if(h)c=c&g;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0))d=k;else l=36}do if((l|0)==36){c=f[k>>2]|0;if(c|0){c=f[c+4>>2]|0;if(h)c=c&g;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0)){d=k;break}}f[b>>2]=0;d=k}while(0);b=f[d>>2]|0;c=b;if(b){b=f[b+4>>2]|0;if(h)b=b&g;else if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0;if((b|0)!=(i|0)){f[(f[m>>2]|0)+(b<<2)>>2]=j;c=f[k>>2]|0}}f[j>>2]=c;f[d>>2]=0;n=n+52|0;f[n>>2]=(f[n>>2]|0)+-1;if(!k){n=0;return n|0}c=f[k+16>>2]|0;if(c|0)Ppb(c);Zpb(k);n=0;return n|0}function Wta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=f[b>>2]|0;i=f[b+4>>2]|0;e=f[a+20>>2]|0;if(!e){k=1;return k|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&j;else if(e>>>0>j>>>0)g=j;else g=(j>>>0)%(e>>>0)|0;b=f[(f[a+16>>2]|0)+(g<<2)>>2]|0;if(!b){k=1;return k|0}b=f[b>>2]|0;if(!b){k=1;return k|0}a:do if(c){while(1){e=f[b+4>>2]|0;a=(e|0)==(j|0);if(!(a|(e&d|0)==(g|0))){b=1;a=39;break}if(a)if((f[b+8>>2]|0)==(j|0)){h=b;break a}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(j|0)){if((f[b+8>>2]|0)==(j|0)){h=b;break a}}else{if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(g|0)){b=1;a=39;break}}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}while(0);b=h+52|0;d=f[h+56>>2]|0;if(!d){k=1;return k|0}c=d+-1|0;a=(c&d|0)==0;if(a)e=c&i;else if(d>>>0>i>>>0)e=i;else e=(i>>>0)%(d>>>0)|0;b=f[(f[b>>2]|0)+(e<<2)>>2]|0;if(!b){k=1;return k|0}b=f[b>>2]|0;if(!b){k=1;return k|0}b:do if(a){while(1){h=f[b+4>>2]|0;a=(h|0)==(i|0);if(!(a|(h&c|0)==(e|0))){b=1;a=39;break}if(a)if((f[b+8>>2]|0)==(i|0)){k=b;break b}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(i|0)){if((f[b+8>>2]|0)==(i|0)){k=b;break b}}else{if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;if((a|0)!=(e|0)){b=1;a=39;break}}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}while(0);if(j|0){k=3;return k|0}k=f[(f[k+12>>2]|0)+44>>2]|0;k=(f[k+112>>2]|0)!=(f[k+108>>2]|0)?2:0;return k|0}function Xta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;j=f[b+4>>2]|0;e=f[a+40>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&h;else if(e>>>0>h>>>0)g=h;else g=(h>>>0)%(e>>>0)|0;b=f[(f[a+36>>2]|0)+(g<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}a:do if(c){while(1){e=f[b+4>>2]|0;a=(e|0)==(h|0);if(!(a|(e&d|0)==(g|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(h|0)){i=b;break a}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(h|0)){if((f[b+8>>2]|0)==(h|0)){i=b;break a}}else{if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(g|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);g=f[i+12>>2]|0;d=f[g+52>>2]|0;if(!d){j=1;return j|0}c=d+-1|0;a=(c&d|0)==0;if(a)e=c&j;else if(d>>>0>j>>>0)e=j;else e=(j>>>0)%(d>>>0)|0;b=f[(f[g+48>>2]|0)+(e<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}b:do if(a){while(1){i=f[b+4>>2]|0;a=(i|0)==(j|0);if(!(a|(i&c|0)==(e|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(j|0))break b;b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(j|0)){if((f[b+8>>2]|0)==(j|0))break b}else{if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;if((a|0)!=(e|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);j=(f[g+8>>2]|0)==0?0:3;return j|0}function Yta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+20>>2]|0;if(b|0)Ppb(b);Zpb(m);n=1;return n|0}function Zta(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;cua(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function _ta(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=29336;b=f[a+12>>2]|0;if(!b){Hpb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);return}function $ta(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=29336;b=f[a+12>>2]|0;if(!b){Hpb(a);Zpb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);Hpb(a);Zpb(a);return}function aua(a){a=a|0;var b=0,c=0;c=f[a+12>>2]|0;if(!c)return;a=a+16|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Zpb(c);return}function bua(a){a=a|0;Zpb(a);return}function cua(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){dua(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;dua(a,b);return}function dua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function eua(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;m=n;k=fua((esa(c,f[d>>2]|0)|0)+200|0,d+4|0)|0;if(f[k>>2]|0){f[a>>2]=0;f[a+4>>2]=0;u=n;return}j=Wpb(20)|0;h=e+g|0;f[m>>2]=0;l=m+4|0;f[l>>2]=0;f[m+8>>2]=0;if(!g){g=m+8|0;h=0;e=0;c=0}else{if((g|0)<0)fob(m);o=Wpb(g)|0;f[l>>2]=o;f[m>>2]=o;i=m+8|0;f[i>>2]=o+g;c=e;e=o;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[l>>2]|0)+1|0;f[l>>2]=e}while((c|0)!=(h|0));g=i;h=f[m>>2]|0;c=f[i>>2]|0}i=d;d=f[i+4>>2]|0;o=j;f[o>>2]=f[i>>2];f[o+4>>2]=d;f[j+8>>2]=h;f[j+12>>2]=e;f[j+16>>2]=c;f[g>>2]=0;f[l>>2]=0;f[m>>2]=0;e=j;o=Wpb(16)|0;f[o+4>>2]=0;f[o+8>>2]=0;f[o>>2]=29364;f[o+12>>2]=e;f[k>>2]=e;e=k+4|0;c=f[e>>2]|0;f[e>>2]=o;if(c|0)Ppb(c);c=f[m>>2]|0;if(c|0){if((f[l>>2]|0)!=(c|0))f[l>>2]=c;Zpb(c)}f[a>>2]=f[k>>2];c=f[e>>2]|0;f[a+4>>2]=c;if(!c){u=n;return}Npb(c);u=n;return}function fua(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;kua(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function gua(a){a=a|0;Hpb(a);Zpb(a);return}function hua(a){a=a|0;var b=0,c=0;a=f[a+12>>2]|0;if(!a)return;b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Zpb(b)}Zpb(a);return}function iua(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==144222?a+12|0:0)|0}function jua(a){a=a|0;Zpb(a);return}function kua(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){lua(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;lua(a,b);return}function lua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function mua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+8|0;h=j;i=b+280|0;d=f[i>>2]|0;do if((f[b+276>>2]|0)==(d|0)){i=b+248|0;d=f[i>>2]|0;f[h>>2]=0;g=h+4|0;f[g>>2]=d;g=hta((esa(b,0)|0)+80|0,g)|0;if(f[g>>2]|0)break;ula(f[c>>2]|0,h,e);d=f[c>>2]|0;b=c+4|0;e=f[b>>2]|0;if(e|0)Npb(e);f[g>>2]=d;h=g+4|0;d=f[h>>2]|0;f[h>>2]=e;if(d|0)Ppb(d);f[i>>2]=(f[i>>2]|0)+1;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=j;return}else{d=f[d+-4>>2]|0;f[h>>2]=0;g=h+4|0;f[g>>2]=d;g=hta((esa(b,0)|0)+80|0,g)|0;if(f[g>>2]|0)break;ula(f[c>>2]|0,h,e);d=f[c>>2]|0;b=c+4|0;e=f[b>>2]|0;if(e|0)Npb(e);f[g>>2]=d;h=g+4|0;d=f[h>>2]|0;f[h>>2]=e;if(d|0)Ppb(d);f[i>>2]=(f[i>>2]|0)+-4;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=j;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=j;return}function nua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+160|0;g=k+144|0;h=k+80|0;i=k+8|0;j=k;f[g>>2]=-1;e=b+316|0;d=f[e>>2]|0;if((f[b+312>>2]|0)==(d|0)){d=b+252|0;e=f[d>>2]|0;f[h>>2]=0;f[h+4>>2]=e;if(nta(b,c,h)|0){e=f[d>>2]|0;f[d>>2]=e+1;f[g>>2]=e}}else{d=f[d+-4>>2]|0;f[h>>2]=0;f[h+4>>2]=d;if(nta(b,c,h)|0){d=(f[e>>2]|0)+-4|0;f[g>>2]=f[d>>2];f[e>>2]=d}}if((f[g>>2]|0)==-1){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=k;return}f[h>>2]=0;d=Fta(b+36|0,h)|0;d=f[d>>2]|0;b=f[c>>2]|0;f[i>>2]=f[d+12>>2];f[i+4>>2]=b;b=i+8|0;bda(b,i)|0;f[h>>2]=f[b>>2];f[h+4>>2]=f[i+12>>2];f[h+8>>2]=f[i+16>>2];f[h+12>>2]=f[i+20>>2];f[h+16>>2]=f[i+24>>2];f[h+20>>2]=f[i+28>>2];f[h+24>>2]=f[i+32>>2];f[h+28>>2]=f[i+36>>2];f[h+32>>2]=f[i+40>>2];f[h+36>>2]=f[i+44>>2];f[h+40>>2]=f[i+48>>2];f[h+44>>2]=f[i+52>>2];f[h+48>>2]=f[i+56>>2];f[h+52>>2]=f[i+60>>2];f[h+56>>2]=f[i+64>>2];f[h+60>>2]=f[i+68>>2];roa(j,h);b=f[g>>2]|0;e=(f[j>>2]|0)+112|0;f[e>>2]=0;f[e+4>>2]=b;d=lsa(d+88|0,g)|0;e=f[j>>2]|0;g=j+4|0;b=f[g>>2]|0;if(b|0)Npb(b);f[d>>2]=e;i=d+4|0;d=f[i>>2]|0;f[i>>2]=b;if(d|0)Ppb(d);f[a>>2]=f[c>>2];d=f[c+4>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);f[a+8>>2]=f[j>>2];d=f[g>>2]|0;f[a+12>>2]=d;if(d|0){Npb(d);d=f[g>>2]|0;if(d|0)Ppb(d)}u=k;return}function oua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;h=b+328|0;d=f[h>>2]|0;do if((f[b+324>>2]|0)==(d|0)){h=b+256|0;d=f[h>>2]|0;f[e>>2]=0;g=e+4|0;f[g>>2]=d;b=ota((esa(b,0)|0)+100|0,g)|0;if(f[b>>2]|0)break;g=e;e=f[g+4>>2]|0;d=(f[c>>2]|0)+176|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;d=f[c>>2]|0;e=c+4|0;g=f[e>>2]|0;if(g|0)Npb(g);f[b>>2]=d;b=b+4|0;d=f[b>>2]|0;f[b>>2]=g;if(d|0)Ppb(d);f[h>>2]=(f[h>>2]|0)+1;f[a>>2]=f[c>>2];d=f[e>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=i;return}else{d=f[d+-4>>2]|0;f[e>>2]=0;g=e+4|0;f[g>>2]=d;b=ota((esa(b,0)|0)+100|0,g)|0;if(f[b>>2]|0)break;g=e;e=f[g+4>>2]|0;d=(f[c>>2]|0)+176|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;d=f[c>>2]|0;e=c+4|0;g=f[e>>2]|0;if(g|0)Npb(g);f[b>>2]=d;b=b+4|0;d=f[b>>2]|0;f[b>>2]=g;if(d|0)Ppb(d);f[h>>2]=(f[h>>2]|0)+-4;f[a>>2]=f[c>>2];d=f[e>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);u=i;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=i;return}function pua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i+8|0;h=i;d=b+304|0;e=f[d>>2]|0;if((f[b+300>>2]|0)==(e|0)){d=b+264|0;e=f[d>>2]|0;f[g>>2]=0;f[g+4>>2]=e;if(yta(b,c,g,0)|0){e=f[d>>2]|0;f[d>>2]=e+1;d=e}else d=-1}else{e=f[e+-4>>2]|0;f[g>>2]=0;f[g+4>>2]=e;if(yta(b,c,g,0)|0){j=(f[d>>2]|0)+-4|0;e=f[j>>2]|0;f[d>>2]=j;d=e}else d=-1}if((d|0)==-1){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=i;return}f[g>>2]=0;f[g+4>>2]=d;qua(h,b,g);pja(b+464|0,f[h>>2]|0);f[a>>2]=f[c>>2];d=f[c+4>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);f[a+8>>2]=f[h>>2];f[a+12>>2]=f[h+4>>2];u=i;return}function qua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+40>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+36>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+52>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+48>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function rua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=f[b>>2]|0;i=f[b+4>>2]|0;e=f[a+20>>2]|0;if(!e){a=1;return a|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&j;else if(e>>>0>j>>>0)g=j;else g=(j>>>0)%(e>>>0)|0;b=f[(f[a+16>>2]|0)+(g<<2)>>2]|0;if(!b){a=1;return a|0}b=f[b>>2]|0;if(!b){a=1;return a|0}a:do if(c){while(1){e=f[b+4>>2]|0;c=(e|0)==(j|0);if(!(c|(e&d|0)==(g|0))){b=1;c=41;break}if(c)if((f[b+8>>2]|0)==(j|0)){h=b;break a}b=f[b>>2]|0;if(!b){b=1;c=41;break}}if((c|0)==41)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(j|0)){if((f[b+8>>2]|0)==(j|0)){h=b;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){b=1;c=41;break}}b=f[b>>2]|0;if(!b){b=1;c=41;break}}if((c|0)==41)return b|0}while(0);b=h+112|0;e=f[h+116>>2]|0;if(!e){a=1;return a|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&i;else if(e>>>0>i>>>0)g=i;else g=(i>>>0)%(e>>>0)|0;b=f[(f[b>>2]|0)+(g<<2)>>2]|0;if(!b){a=1;return a|0}b=f[b>>2]|0;if(!b){a=1;return a|0}b:do if(c){while(1){h=f[b+4>>2]|0;c=(h|0)==(i|0);if(!(c|(h&d|0)==(g|0))){b=1;c=41;break}if(c)if((f[b+8>>2]|0)==(i|0)){k=b;break b}b=f[b>>2]|0;if(!b){b=1;c=41;break}}if((c|0)==41)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(i|0)){if((f[b+8>>2]|0)==(i|0)){k=b;break b}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){b=1;c=41;break}}b=f[b>>2]|0;if(!b){b=1;c=41;break}}if((c|0)==41)return b|0}while(0);if(j|0){a=3;return a|0}b=k+12|0;if(!(mja(a+464|0,b)|0))if(!(GNa(f[(f[a+4>>2]|0)+228>>2]|0,b)|0)){a=0;return a|0}a=2;return a|0}function sua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[b>>2]|0;i=f[b+4>>2]|0;e=f[a+20>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&j;else if(e>>>0>j>>>0)g=j;else g=(j>>>0)%(e>>>0)|0;b=f[(f[a+16>>2]|0)+(g<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}a:do if(c){while(1){e=f[b+4>>2]|0;a=(e|0)==(j|0);if(!(a|(e&d|0)==(g|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(j|0)){h=b;break a}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(j|0)){if((f[b+8>>2]|0)==(j|0)){h=b;break a}}else{if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(g|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);b=h+212|0;d=f[h+216>>2]|0;if(!d){j=1;return j|0}c=d+-1|0;a=(c&d|0)==0;if(a)e=c&i;else if(d>>>0>i>>>0)e=i;else e=(i>>>0)%(d>>>0)|0;b=f[(f[b>>2]|0)+(e<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}b:do if(a){while(1){h=f[b+4>>2]|0;a=(h|0)==(i|0);if(!(a|(h&c|0)==(e|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(i|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;if((a|0)!=(e|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);j=(j|0)==0?0:3;return j|0}function tua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;j=f[b+4>>2]|0;e=f[a+40>>2]|0;if(!e){k=1;return k|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&h;else if(e>>>0>h>>>0)g=h;else g=(h>>>0)%(e>>>0)|0;b=f[(f[a+36>>2]|0)+(g<<2)>>2]|0;if(!b){k=1;return k|0}b=f[b>>2]|0;if(!b){k=1;return k|0}a:do if(c){while(1){e=f[b+4>>2]|0;a=(e|0)==(h|0);if(!(a|(e&d|0)==(g|0))){b=1;a=39;break}if(a)if((f[b+8>>2]|0)==(h|0)){i=b;break a}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(h|0)){if((f[b+8>>2]|0)==(h|0)){i=b;break a}}else{if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(g|0)){b=1;a=39;break}}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}while(0);g=f[i+12>>2]|0;d=f[g+92>>2]|0;if(!d){k=1;return k|0}c=d+-1|0;a=(c&d|0)==0;if(a)e=c&j;else if(d>>>0>j>>>0)e=j;else e=(j>>>0)%(d>>>0)|0;b=f[(f[g+88>>2]|0)+(e<<2)>>2]|0;if(!b){k=1;return k|0}b=f[b>>2]|0;if(!b){k=1;return k|0}b:do if(a){while(1){i=f[b+4>>2]|0;a=(i|0)==(j|0);if(!(a|(i&c|0)==(e|0))){b=1;a=39;break}if(a)if((f[b+8>>2]|0)==(j|0)){k=b;break b}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(j|0)){if((f[b+8>>2]|0)==(j|0)){k=b;break b}}else{if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;if((a|0)!=(e|0)){b=1;a=39;break}}b=f[b>>2]|0;if(!b){b=1;a=39;break}}if((a|0)==39)return b|0}while(0);if(f[g+8>>2]|0){k=3;return k|0}k=f[k+12>>2]|0;k=(f[k+64>>2]|0)!=(f[k+68>>2]|0)?2:0;return k|0}function uua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[b>>2]|0;i=f[b+4>>2]|0;e=f[a+20>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&j;else if(e>>>0>j>>>0)g=j;else g=(j>>>0)%(e>>>0)|0;b=f[(f[a+16>>2]|0)+(g<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}a:do if(c){while(1){e=f[b+4>>2]|0;a=(e|0)==(j|0);if(!(a|(e&d|0)==(g|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(j|0)){h=b;break a}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(j|0)){if((f[b+8>>2]|0)==(j|0)){h=b;break a}}else{if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(g|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);b=h+92|0;d=f[h+96>>2]|0;if(!d){j=1;return j|0}c=d+-1|0;a=(c&d|0)==0;if(a)e=c&i;else if(d>>>0>i>>>0)e=i;else e=(i>>>0)%(d>>>0)|0;b=f[(f[b>>2]|0)+(e<<2)>>2]|0;if(!b){j=1;return j|0}b=f[b>>2]|0;if(!b){j=1;return j|0}b:do if(a){while(1){h=f[b+4>>2]|0;a=(h|0)==(i|0);if(!(a|(h&c|0)==(e|0))){b=1;a=38;break}if(a)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}else{while(1){a=f[b+4>>2]|0;if((a|0)==(i|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(a>>>0>=d>>>0)a=(a>>>0)%(d>>>0)|0;if((a|0)!=(e|0)){b=1;a=38;break}}b=f[b>>2]|0;if(!b){b=1;a=38;break}}if((a|0)==38)return b|0}while(0);j=(j|0)==0?0:3;return j|0}function vua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+16>>2]|0;if(b|0)Ppb(b);Zpb(m);n=1;return n|0}function wua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c=rua(a,b)|0;if(c|0){m=c;return m|0}e=b+4|0;c=a+328|0;d=f[c>>2]|0;if((d|0)==(f[a+332>>2]|0))BD(a+324|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=d+4}m=esa(a,f[b>>2]|0)|0;l=m+100|0;g=f[e>>2]|0;i=m+104|0;e=f[i>>2]|0;a:do if(!e)j=0;else{b=e+-1|0;d=(b&e|0)==0;if(d)h=b&g;else if(g>>>0<e>>>0)h=g;else h=(g>>>0)%(e>>>0)|0;c=f[(f[l>>2]|0)+(h<<2)>>2]|0;if(!c)j=0;else{c=f[c>>2]|0;if(!c)j=0;else{if(d)while(1){j=f[c+4>>2]|0;d=(j|0)==(g|0);if(!(d|(j&b|0)==(h|0))){j=0;break a}if(d)if((f[c+8>>2]|0)==(g|0)){j=c;break a}c=f[c>>2]|0;if(!c){j=0;break a}}while(1){d=f[c+4>>2]|0;if((d|0)==(g|0)){if((f[c+8>>2]|0)==(g|0)){j=c;break a}}else{if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(h|0)){j=0;break a}}c=f[c>>2]|0;if(!c){j=0;break}}}}}while(0);HNa(f[(f[a+4>>2]|0)+228>>2]|0,f[j+12>>2]|0);e=f[i>>2]|0;c=f[j+4>>2]|0;g=e+-1|0;h=(g&e|0)==0;if(h)i=g&c;else if(c>>>0<e>>>0)i=c;else i=(c>>>0)%(e>>>0)|0;d=(f[l>>2]|0)+(i<<2)|0;a=f[d>>2]|0;while(1){c=f[a>>2]|0;if((c|0)==(j|0))break;else a=c}if((a|0)==(m+108|0))k=36;else{c=f[a+4>>2]|0;if(h)c=c&g;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0))b=j;else k=36}do if((k|0)==36){c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;if(h)c=c&g;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(i|0)){b=j;break}}f[d>>2]=0;b=j}while(0);d=f[b>>2]|0;c=d;if(d){d=f[d+4>>2]|0;if(h)d=d&g;else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(i|0)){f[(f[l>>2]|0)+(d<<2)>>2]=a;c=f[j>>2]|0}}f[a>>2]=c;f[b>>2]=0;m=m+112|0;f[m>>2]=(f[m>>2]|0)+-1;if(!j){m=0;return m|0}c=f[j+16>>2]|0;if(c|0)Ppb(c);Zpb(j);m=0;return m|0}function xua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0<j>>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+16>>2]|0;if(b|0)Ppb(b);Zpb(m);n=1;return n|0}function yua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+52|0;c=f[c+4>>2]|0;h=f[b+56>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function zua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+92|0;c=f[c+4>>2]|0;h=f[b+96>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Aua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+72|0;c=f[c+4>>2]|0;h=f[b+76>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Bua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+112|0;c=f[c+4>>2]|0;h=f[b+116>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Cua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+212|0;c=f[c+4>>2]|0;h=f[b+216>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Dua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=f[b+352>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&c;else if(g>>>0>c>>>0)h=c;else h=(c>>>0)%(g>>>0)|0;b=f[(f[b+348>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(g|0)==(c|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(c|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((d|0)==(c|0)){if((f[b+8>>2]|0)==(c|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Eua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+40>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+36>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+92>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+88>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Fua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+32|0;c=f[c+4>>2]|0;h=f[b+36>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+16>>2];d=f[b+20>>2]|0;f[a+4>>2]=d;if(d|0)Npb(d);i=b+24|0;c=f[i+4>>2]|0;a=a+8|0;f[a>>2]=f[i>>2];f[a+4>>2]=c;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Gua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+40>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+36>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+72>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+68>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Hua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n;g=f[c>>2]|0;d=f[b+40>>2]|0;e=d+-1|0;if(!(e&d)){d=f[(f[b+36>>2]|0)+((e&g)<<2)>>2]|0;while(1){d=f[d>>2]|0;if((f[d+4>>2]|0)!=(g|0))continue;if((f[d+8>>2]|0)==(g|0))break}}else{if(g>>>0<d>>>0)d=g;else d=(g>>>0)%(d>>>0)|0;d=f[(f[b+36>>2]|0)+(d<<2)>>2]|0;while(1){d=f[d>>2]|0;if((f[d+4>>2]|0)!=(g|0))continue;if((f[d+8>>2]|0)==(g|0))break}}i=f[d+12>>2]|0;l=c+4|0;j=f[l>>2]|0;h=f[i+52>>2]|0;a:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)k=g&j;else if(j>>>0<h>>>0)k=j;else k=(j>>>0)%(h>>>0)|0;d=f[(f[i+48>>2]|0)+(k<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){b:do if(e)while(1){h=f[d+4>>2]|0;e=(h|0)==(j|0);if(!(e|(h&g|0)==(k|0)))break a;if(e)if((f[d+8>>2]|0)==(j|0))break b;d=f[d>>2]|0;if(!d)break a}else while(1){e=f[d+4>>2]|0;if((e|0)==(j|0)){if((f[d+8>>2]|0)==(j|0))break b}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(k|0))break a}d=f[d>>2]|0;if(!d)break a}while(0);f[a>>2]=f[d+12>>2];d=f[d+16>>2]|0;f[a+4>>2]=d;if(!d){u=n;return}Npb(d);u=n;return}}}while(0);h=nsa(i+68|0,l)|0;d=f[h>>2]|0;if(!d){Boa(m,f[b>>2]|0);e=f[m>>2]|0;g=m+4|0;b=f[g>>2]|0;f[m>>2]=0;f[g>>2]=0;f[h>>2]=e;e=h+4|0;d=f[e>>2]|0;f[e>>2]=b;if(d|0)Ppb(d);d=f[g>>2]|0;if(d|0)Ppb(d);d=f[h>>2]|0;f[d+116>>2]=f[c>>2];f[d+120>>2]=f[l>>2];d=d+196|0;f[d>>2]=f[d>>2]&-131073;d=f[h>>2]|0}else e=h+4|0;f[a>>2]=d;d=f[e>>2]|0;f[a+4>>2]=d;if(!d){u=n;return}Npb(d);u=n;return}function Iua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+192|0;c=f[c+4>>2]|0;h=f[b+196>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Jua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+132|0;c=f[c+4>>2]|0;h=f[b+136>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Kua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+152|0;c=f[c+4>>2]|0;h=f[b+156>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Lua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+40>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+36>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+112>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0<g>>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+108>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Mua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+20>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0<g>>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+16>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+172|0;c=f[c+4>>2]|0;h=f[b+176>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0<h>>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;Npb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function Nua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=esa(a,b)|0;g=d+4|0;if(f[g>>2]|0){g=0;return g|0}h=f[c>>2]|0;f[c>>2]=0;e=d+4|0;b=f[e>>2]|0;f[e>>2]=h;if(b|0){Jla(b);Zpb(b)}b=f[d+8>>2]|0;d=f[d+12>>2]|0;if((b|0)==(d|0)){h=1;return h|0}e=a+68|0;c=a+464|0;do{h=f[b>>2]|0;Ila(h,f[g>>2]|0);isa(e,h);tja(c,h);b=b+8|0}while((b|0)!=(d|0));b=1;return b|0}function Oua(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;j=t+36|0;k=t+24|0;s=t;npa(c,j,k);f[s>>2]=f[j>>2];m=s+4|0;f[m>>2]=f[j+4>>2];o=s+8|0;f[o>>2]=f[j+8>>2];l=s+12|0;f[l>>2]=f[k>>2];p=s+16|0;f[p>>2]=f[k+4>>2];q=s+20|0;f[q>>2]=f[k+8>>2];k=a+4|0;d=f[k>>2]|0;i=f[a>>2]|0;a:do if((i|0)==(d|0))r=5;else{h=0;while(1){d=d+-4|0;g=f[d>>2]|0;if(Pua(g,s)|0)break;h=h+1|0;if(!((i|0)!=(d|0)&h>>>0<32)){r=5;break a}}if(!g)r=5}while(0);if((r|0)==5){i=Wpb(52)|0;d=i+49|0;g=i;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));b[d>>0]=1;f[j>>2]=i;d=f[k>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=i;d=d+4|0;f[k>>2]=d}else{Qua(a,j);d=f[k>>2]|0}g=f[d+-4>>2]|0;f[g+40>>2]=0;f[g>>2]=f[s>>2];f[g+4>>2]=f[m>>2];f[g+8>>2]=f[o>>2];f[g+12>>2]=f[l>>2];f[g+16>>2]=f[p>>2];f[g+20>>2]=f[q>>2]}e=+n[s>>2];if(e<+n[g>>2]){d=g;r=11}else{d=g+12|0;if(e>+n[d>>2])r=11}if((r|0)==11)n[d>>2]=e;e=+n[m>>2];i=g+4|0;if(e<+n[i>>2]){d=g;r=14}else if(e>+n[g+16>>2]){d=g+12|0;r=14}if((r|0)==14)n[d+4>>2]=e;e=+n[o>>2];h=g+8|0;if(e<+n[h>>2]){d=g;r=17}else if(e>+n[g+20>>2]){d=g+12|0;r=17}if((r|0)==17)n[d+8>>2]=e;e=+n[s+12>>2];if(e<+n[g>>2]){d=g;r=20}else{d=g+12|0;if(e>+n[d>>2])r=20}if((r|0)==20)n[d>>2]=e;e=+n[p>>2];if(e<+n[i>>2]){d=g;r=23}else if(e>+n[g+16>>2]){d=g+12|0;r=23}if((r|0)==23)n[d+4>>2]=e;e=+n[q>>2];if(e<+n[h>>2])d=g;else if(e>+n[g+20>>2])d=g+12|0;else{r=a+12|0;f[r>>2]=1065353216;r=a+16|0;f[r>>2]=1065353216;r=a+20|0;f[r>>2]=1065353216;r=a+24|0;f[r>>2]=0;r=a+28|0;f[r>>2]=0;a=a+32|0;f[a>>2]=0;Rua(g,s,c);u=t;return}n[d+8>>2]=e;r=a+12|0;f[r>>2]=1065353216;r=a+16|0;f[r>>2]=1065353216;r=a+20|0;f[r>>2]=1065353216;r=a+24|0;f[r>>2]=0;r=a+28|0;f[r>>2]=0;a=a+32|0;f[a>>2]=0;Rua(g,s,c);u=t;return}function Pua(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0;q=u;u=u+32|0;p=q;r=f[a>>2]|0;f[p>>2]=r;w=f[a+4>>2]|0;k=p+4|0;f[k>>2]=w;t=f[a+8>>2]|0;o=p+8|0;f[o>>2]=t;c=p+12|0;e=f[a+12>>2]|0;f[c>>2]=e;v=f[a+16>>2]|0;j=p+16|0;f[j>>2]=v;m=p+20|0;f[m>>2]=f[a+20>>2];g=+n[b>>2];r=g<(f[s>>2]=r,+n[s>>2]);h=(f[s>>2]=w,+n[s>>2]);i=(f[s>>2]=v,+n[s>>2]);d=(f[s>>2]=t,+n[s>>2]);if(r){e=p;l=3}else if(g>(f[s>>2]=e,+n[s>>2])){e=c;l=3}if((l|0)==3)n[e>>2]=g;g=+n[b+4>>2];if(g<h){e=p;l=6}else if(g>i){e=c;l=6}if((l|0)==6){n[e+4>>2]=g;d=+n[o>>2]}g=+n[b+8>>2];if(g<d){e=p;l=9}else if(g>+n[m>>2]){e=c;l=9}if((l|0)==9)n[e+8>>2]=g;d=+n[b+12>>2];if(d<+n[p>>2]){e=p;l=12}else if(d>+n[c>>2]){e=c;l=12}if((l|0)==12)n[e>>2]=d;d=+n[b+16>>2];if(d<+n[k>>2]){e=p;l=15}else if(d>+n[j>>2]){e=c;l=15}if((l|0)==15)n[e+4>>2]=d;d=+n[b+20>>2];if(d<+n[o>>2])c=p;else if(!(d>+n[m>>2])){w=Xua(p,a)|0;u=q;return w|0}n[c+8>>2]=d;w=Xua(p,a)|0;u=q;return w|0}function Qua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;p=r;q=a+4|0;l=f[q>>2]|0;m=f[a>>2]|0;e=l-m>>2;c=e+1|0;n=m;d=l;if(c>>>0>1073741823)fob(a);o=a+8|0;i=f[o>>2]|0;k=i-m|0;g=k>>1;g=k>>2>>>0<536870911?(g>>>0<c>>>0?c:g):1073741823;f[p+12>>2]=0;f[p+16>>2]=a+8;do if(!g)h=0;else if(g>>>0>1073741823)ud();else{h=Wpb(g<<2)|0;break}while(0);f[p>>2]=h;c=h+(e<<2)|0;j=p+8|0;k=p+4|0;f[k>>2]=c;g=h+(g<<2)|0;h=p+12|0;f[h>>2]=g;f[c>>2]=f[b>>2];e=c+4|0;f[j>>2]=e;if((d|0)==(n|0)){d=c;b=h;n=m;h=l;l=g;m=i;i=d;f[a>>2]=i;f[k>>2]=n;f[q>>2]=e;f[j>>2]=h;f[o>>2]=l;f[b>>2]=m;f[p>>2]=n;Wua(p);u=r;return}do{d=d+-4|0;m=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=m;c=(f[k>>2]|0)+-4|0;f[k>>2]=c}while((d|0)!=(n|0));e=c;m=h;i=j;n=f[a>>2]|0;g=f[j>>2]|0;b=f[q>>2]|0;j=f[h>>2]|0;l=f[o>>2]|0;h=e;f[a>>2]=h;f[k>>2]=n;f[q>>2]=g;f[i>>2]=b;f[o>>2]=j;f[m>>2]=l;f[p>>2]=n;Wua(p);u=r;return}function Rua(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0;F=u;u=u+48|0;i=F;j=a+36|0;if(!(f[j>>2]|0)){e=a+24|0;g=a+28|0;h=f[g>>2]|0;if(h-(f[e>>2]|0)>>2>>>0>127){e=Wpb(104)|0;g=e+49|0;h=e;i=h+104|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[g>>0]=1;i=e+76|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;b[e+101>>0]=1;f[j>>2]=e;f[e+40>>2]=a;f[e+92>>2]=a;Sua(a);Rua(a,c,d);u=F;return}f[i>>2]=d;if((f[a+32>>2]|0)>>>0>h>>>0){f[h>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else Tua(e,i);f[d+124>>2]=a;u=F;return}hWa(i,a,b[a+48>>0]|0,+n[a+44>>2]);e=f[j>>2]|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[e+12>>2]=f[i+12>>2];f[e+16>>2]=f[i+16>>2];f[e+20>>2]=f[i+20>>2];J=f[i+24>>2]|0;f[e+52>>2]=J;I=f[i+28>>2]|0;f[e+56>>2]=I;H=f[i+32>>2]|0;f[e+60>>2]=H;G=f[i+36>>2]|0;f[e+64>>2]=G;h=f[i+40>>2]|0;f[e+68>>2]=h;j=f[i+44>>2]|0;f[e+72>>2]=j;r=+n[c>>2];t=+n[c+4>>2];v=+n[c+8>>2];w=+n[c+12>>2];x=+n[c+16>>2];y=+n[c+20>>2];l=+n[e>>2];z=(f[s>>2]=J,+n[s>>2]);A=(f[s>>2]=I,+n[s>>2]);B=(f[s>>2]=H,+n[s>>2]);C=(f[s>>2]=G,+n[s>>2]);D=(f[s>>2]=h,+n[s>>2]);E=(f[s>>2]=j,+n[s>>2]);if(!(r>=l))g=15;else{m=+n[e+4>>2];if(!(t>=m))g=15;else{o=+n[e+8>>2];if(!(v>=o))g=15;else{p=+n[e+12>>2];if(!(r<=p))g=15;else{q=+n[e+16>>2];if(!(t<=q))g=15;else{k=+n[e+20>>2];if(!(v<=k)|!(w>=l)|!(x>=m))g=15;else if(!(y<=k&((!(x<=q)|(!(w<=p)|!(y>=o)))^1)))g=15}}}}}do if((g|0)==15){e=e+52|0;if(!(!(r>=z)|!(t>=A)|!(v>=B)|!(r<=C)|!(t<=D)))if(!(!(v<=E)|!(w>=z)|!(x>=A)))if(y<=E&((!(x<=D)|(!(w<=C)|!(y>=B)))^1))break;f[i>>2]=d;g=a+28|0;e=f[g>>2]|0;if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else Tua(a+24|0,i);f[d+124>>2]=a;u=F;return}while(0);Rua(e,c,d);u=F;return}function Sua(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;e=u;u=u+64|0;c=e+48|0;p=e;Uua(c,a);gWa(p,a,0,.5);o=Vua(p,c)|0;gWa(p,a,0,.3330000042915344);q=Vua(p,c)|0;d=(q|0)<(o|0);o=d?q:o;gWa(p,a,0,.6660000085830688);q=Vua(p,c)|0;h=(q|0)<(o|0);o=h?q:o;gWa(p,a,1,.5);q=Vua(p,c)|0;i=(q|0)<(o|0);o=i?q:o;gWa(p,a,1,.3330000042915344);q=Vua(p,c)|0;j=(q|0)<(o|0);o=j?q:o;gWa(p,a,1,.6660000085830688);q=Vua(p,c)|0;k=(q|0)<(o|0);o=k?q:o;gWa(p,a,2,.5);q=Vua(p,c)|0;l=(q|0)<(o|0);o=l?q:o;gWa(p,a,2,.3330000042915344);q=Vua(p,c)|0;m=(q|0)<(o|0);gWa(p,a,2,.6660000085830688);o=(Vua(p,c)|0)<((m?q:o)|0);q=o|(m|l)?2:(k|(j|i))&1;r=q&255;f[p>>2]=f[a+(r<<2)>>2];f[p+4>>2]=f[a+12+(r<<2)>>2];b[a+48>>0]=q;g=+AWa(p,o?.6660000085830688:m?.3330000042915344:l?.5:k?.6660000085830688:j?.3330000042915344:i?.5:h?.6660000085830688:d?.3330000042915344:.5);n[a+44>>2]=g;a=f[c+12>>2]|0;if(a|0)Csa(a,c);d=f[c>>2]|0;if(!d){u=e;return}a=c+4|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);Zpb(d);u=e;return}function Tua(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function Uua(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+48|0;s=w+36|0;t=w+24|0;v=w;if(!(b[209528]|0))rrb(209528)|0;Esa(a,215189);n=c+24|0;l=c+28|0;m=f[l>>2]|0;i=f[n>>2]|0;d=m-i>>2;r=a+8|0;h=f[a>>2]|0;e=h;if((((f[r>>2]|0)-h|0)/24|0)>>>0<d>>>0){j=a+4|0;if(d>>>0>178956970)ud();q=f[j>>2]|0;g=Wpb(d*24|0)|0;c=g+(((q-h|0)/24|0)*24|0)|0;k=c;g=g+(d*24|0)|0;d=q;if((d|0)==(e|0))c=k;else do{q=c;c=c+-24|0;p=d;d=d+-24|0;f[c>>2]=f[d>>2];f[q+-20>>2]=f[p+-20>>2];f[q+-16>>2]=f[p+-16>>2];f[q+-12>>2]=f[p+-12>>2];f[q+-8>>2]=f[p+-8>>2];f[q+-4>>2]=f[p+-4>>2]}while((d|0)!=(e|0));f[a>>2]=c;f[j>>2]=k;f[r>>2]=g;if(!h){c=i;g=m}else{Zpb(h);c=f[n>>2]|0;g=f[l>>2]|0}}else{c=i;g=m}if((c|0)==(g|0)){u=w;return}h=s+4|0;i=v+4|0;j=s+8|0;k=v+8|0;l=v+12|0;m=t+4|0;n=v+16|0;o=t+8|0;p=v+20|0;q=a+4|0;do{npa(f[c>>2]|0,s,t);d=f[s>>2]|0;f[v>>2]=d;f[i>>2]=f[h>>2];f[k>>2]=f[j>>2];f[l>>2]=f[t>>2];f[n>>2]=f[m>>2];f[p>>2]=f[o>>2];e=f[q>>2]|0;if(e>>>0<(f[r>>2]|0)>>>0){f[e>>2]=f[v>>2];f[e+4>>2]=f[v+4>>2];f[e+8>>2]=f[v+8>>2];f[e>>2]=d;f[e+4>>2]=f[i>>2];f[e+8>>2]=f[k>>2];d=e+12|0;f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d>>2]=f[l>>2];f[e+16>>2]=f[n>>2];f[e+20>>2]=f[p>>2];f[q>>2]=(f[q>>2]|0)+24}else KA(a,v);c=c+4|0}while((c|0)!=(g|0));u=w;return}function Vua(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0;B=u;u=u+16|0;A=B;c=A;f[c>>2]=0;f[c+4>>2]=0;c=f[b>>2]|0;z=f[b+4>>2]|0;if((c|0)==(z|0)){z=0;k=0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}m=+n[a>>2];o=+n[a+24>>2];p=+n[a+28>>2];q=+n[a+32>>2];r=+n[a+36>>2];s=+n[a+40>>2];t=+n[a+44>>2];v=+n[a+4>>2];w=+n[a+8>>2];x=+n[a+12>>2];y=+n[a+16>>2];l=+n[a+20>>2];do{g=+n[c>>2];b=c+4|0;a=c+8|0;h=c+12|0;j=c+16|0;k=c+20|0;if(!(g>=m))i=12;else{d=+n[b>>2];if(!(d>=v))i=12;else{e=+n[a>>2];if(!(e>=w)|!(g<=x)|!(d<=y)|!(e<=l))i=12;else{d=+n[h>>2];if(!(d>=m))i=12;else{e=+n[j>>2];if(!(e>=v))i=12;else{C=+n[k>>2];if(C<=l&((!(e<=y)|(!(d<=x)|!(C>=w)))^1)){b=0;i=11}else i=12}}}}}if((i|0)==12){i=0;if(g>=o){d=+n[b>>2];if(d>=p){C=+n[a>>2];if(!(!(C>=q)|!(g<=r)|!(d<=s)|!(C<=t))){e=+n[h>>2];if(e>=o){d=+n[j>>2];if(d>=p){C=+n[k>>2];if(C<=t&((!(d<=s)|(!(e<=r)|!(C>=q)))^1)){b=1;i=11}}}}}}}if((i|0)==11){k=A+(b<<2)|0;f[k>>2]=(f[k>>2]|0)+1}c=c+24|0}while((c|0)!=(z|0));z=f[A+4>>2]|0;k=f[A>>2]|0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}function Wua(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){ija(b);Zpb(b)}b=f[e+24>>2]|0;if(b|0){c=e+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}Zpb(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Zpb(b);return}function Xua(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+n[a+12>>2]-+n[a>>2];g=+n[a+16>>2]-+n[a+4>>2];e=+n[a+20>>2]-+n[a+8>>2];c=h*g*e;f=+n[b+12>>2]-+n[b>>2];if(c>0.0){if(f*(+n[b+16>>2]-+n[b+4>>2])*(+n[b+20>>2]-+n[b+8>>2])>=c*.75){b=1;return b|0}}else if(!(h==0.0^f==0.0)){d=+n[b+20>>2]-+n[b+8>>2];c=+n[b+16>>2]-+n[b+4>>2];if(!(e==0.0^d==0.0|g==0.0^c==0.0)){h=h>0.0?h:1.0;h=g>0.0?h*g:h;g=f>0.0?f:1.0;g=c>0.0?g*c:g;if((d>0.0?g*d:g)>=(e>0.0?h*e:h)*.75){b=1;return b|0}}}b=0;return b|0}function Yua(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+24|0;d=l+20|0;c=l+16|0;g=l+12|0;h=l+8|0;i=l+4|0;j=l;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];k=a+4|0;f[h>>2]=f[k>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[l+28>>0]|0;h=$ia(c,d,e)|0;f[i>>2]=h;f[j>>2]=f[k>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];aja(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0)){cva(a);u=l;return}b[c>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;d=f[a+4>>2]|0;if((c|0)==(d|0)){cva(a);u=l;return}e=a+42|0;do{if(!(Dka(f[c>>2]|0)|0))b[e>>0]=1;c=c+4|0}while((c|0)!=(d|0));cva(a);u=l;return}function Zua(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+24|0;d=l+20|0;c=l+16|0;g=l+12|0;h=l+8|0;i=l+4|0;j=l;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];k=a+4|0;f[h>>2]=f[k>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[l+28>>0]|0;h=bja(c,d,e)|0;f[i>>2]=h;f[j>>2]=f[k>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];cja(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0)){_ua(a);u=l;return}b[c>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;d=f[a+4>>2]|0;if((c|0)==(d|0)){_ua(a);u=l;return}e=a+42|0;do{if(!(Cka(f[c>>2]|0)|0))b[e>>0]=1;c=c+4|0}while((c|0)!=(d|0));_ua(a);u=l;return}function _ua(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;j=q+40|0;i=q+36|0;h=q+28|0;p=q+8|0;k=q+32|0;l=q+24|0;m=q+20|0;n=q+4|0;o=q;c=a+42|0;if(!(b[c>>0]|0)){u=q;return}if(f[a+36>>2]|0){b[a+43>>0]=1;u=q;return}b[c>>0]=0;b[a+43>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;g=a+4|0;d=f[g>>2]|0;if((c|0)==(d|0)){u=q;return}else e=0;do{e=e+((b[(f[c>>2]|0)+49>>0]^1)&255)|0;c=c+4|0}while((c|0)!=(d|0));if(!e){u=q;return}f[p>>2]=0;d=p+4|0;f[d>>2]=0;c=p+8|0;f[c>>2]=0;f[j+12>>2]=0;f[j+16>>2]=c;if(e>>>0>1073741823)ud();c=Wpb(e<<2)|0;r=c;f[p>>2]=r;f[j+4>>2]=0;f[d>>2]=r;f[j+8>>2]=0;f[p+8>>2]=c+(e<<2);f[j+12>>2]=0;f[j>>2]=0;Fsa(j);c=f[g>>2]|0;f[k>>2]=f[a>>2];f[l>>2]=c;f[m>>2]=p;f[h>>2]=f[k>>2];f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];c=$ua(h,i,j)|0;f[n>>2]=c;f[o>>2]=f[g>>2];f[i>>2]=f[n>>2];f[j>>2]=f[o>>2];cja(a,i,j)|0;c=f[p>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{ava(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));Xsa(p);u=q;return}function $ua(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;l=f[c>>2]|0;g=e;a:do if((l|0)!=(g|0)){h=e;while(1){k=f[g>>2]|0;if(!(b[k+49>>0]|0))break;e=g+4|0;if((e|0)==(l|0))break a;else{h=e;g=e}}e=f[d>>2]|0;i=e+4|0;j=f[i>>2]|0;if(j>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[j>>2]=k;f[i>>2]=(f[i>>2]|0)+4;e=f[c>>2]|0}else{bva(e,g);h=g;e=l}f[a>>2]=h;if((h|0)==(e|0)){d=e;return d|0}g=h+4|0;if((g|0)==(e|0)){d=h;return d|0}do{l=f[g>>2]|0;j=l;do if(!(b[l+49>>0]|0)){e=f[d>>2]|0;h=e+4|0;i=f[h>>2]|0;if(i>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[i>>2]=j;f[h>>2]=(f[h>>2]|0)+4;break}else{bva(e,g);break}}else{l=f[a>>2]|0;f[g>>2]=0;k=f[l>>2]|0;f[l>>2]=j;if(k|0){l=k+36|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0){hja(e);Zpb(e)}e=f[k+24>>2]|0;if(e|0){h=k+28|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);Zpb(e)}Zpb(k)}f[a>>2]=(f[a>>2]|0)+4}while(0);g=g+4|0}while((g|0)!=(f[c>>2]|0));d=f[a>>2]|0;return d|0}while(0);f[a>>2]=l;d=l;return d|0}function ava(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+48|0;g=h;d=f[c+24>>2]|0;e=f[c+28>>2]|0;if((d|0)!=(e|0))do{isa(a,f[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c+36|0;if(!(f[d>>2]|0)){u=h;return}hWa(g,c,b[c+48>>0]|0,+n[c+44>>2]);c=f[d>>2]|0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[c+12>>2]=f[g+12>>2];f[c+16>>2]=f[g+16>>2];f[c+20>>2]=f[g+20>>2];f[c+52>>2]=f[g+24>>2];f[c+56>>2]=f[g+28>>2];f[c+60>>2]=f[g+32>>2];f[c+64>>2]=f[g+36>>2];f[c+68>>2]=f[g+40>>2];f[c+72>>2]=f[g+44>>2];ava(a,c);ava(a,c+52|0);u=h;return}function bva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+32|0;l=n;m=a+4|0;c=f[a>>2]|0;e=(f[m>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;j=i>>1;d=i>>2>>>0<536870911?(j>>>0<d>>>0?d:j):1073741823;f[l+12>>2]=0;f[l+16>>2]=a+8;do if(!d)g=0;else if(d>>>0>1073741823)ud();else{g=Wpb(d<<2)|0;break}while(0);f[l>>2]=g;c=g+(e<<2)|0;i=l+8|0;j=l+4|0;f[j>>2]=c;g=g+(d<<2)|0;h=l+12|0;f[h>>2]=g;e=f[b>>2]|0;f[b>>2]=0;f[c>>2]=e;e=c+4|0;f[i>>2]=e;b=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(b|0)){p=c;c=i;i=b;o=e;e=d;b=g;g=p;f[a>>2]=g;f[j>>2]=i;f[m>>2]=o;f[c>>2]=e;m=f[k>>2]|0;f[k>>2]=b;f[h>>2]=m;f[l>>2]=i;Fsa(l);u=n;return}do{d=d+-4|0;p=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=p;c=(f[j>>2]|0)+-4|0;f[j>>2]=c}while((d|0)!=(b|0));d=c;o=h;b=i;p=f[a>>2]|0;e=f[i>>2]|0;g=f[m>>2]|0;i=f[h>>2]|0;h=d;f[a>>2]=h;f[j>>2]=p;f[m>>2]=e;f[b>>2]=g;m=f[k>>2]|0;f[k>>2]=i;f[o>>2]=m;f[l>>2]=p;Fsa(l);u=n;return}function cva(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;j=q+40|0;i=q+36|0;h=q+28|0;p=q+8|0;k=q+32|0;l=q+24|0;m=q+20|0;n=q+4|0;o=q;c=a+42|0;if(!(b[c>>0]|0)){u=q;return}if(f[a+36>>2]|0){b[a+43>>0]=1;u=q;return}b[c>>0]=0;b[a+43>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;g=a+4|0;d=f[g>>2]|0;if((c|0)==(d|0)){u=q;return}else e=0;do{e=e+((b[(f[c>>2]|0)+49>>0]^1)&255)|0;c=c+4|0}while((c|0)!=(d|0));if(!e){u=q;return}f[p>>2]=0;d=p+4|0;f[d>>2]=0;c=p+8|0;f[c>>2]=0;f[j+12>>2]=0;f[j+16>>2]=c;if(e>>>0>1073741823)ud();c=Wpb(e<<2)|0;r=c;f[p>>2]=r;f[j+4>>2]=0;f[d>>2]=r;f[j+8>>2]=0;f[p+8>>2]=c+(e<<2);f[j+12>>2]=0;f[j>>2]=0;Wua(j);c=f[g>>2]|0;f[k>>2]=f[a>>2];f[l>>2]=c;f[m>>2]=p;f[h>>2]=f[k>>2];f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];c=dva(h,i,j)|0;f[n>>2]=c;f[o>>2]=f[g>>2];f[i>>2]=f[n>>2];f[j>>2]=f[o>>2];aja(a,i,j)|0;c=f[p>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{eva(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));Wsa(p);u=q;return}function dva(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;l=f[c>>2]|0;g=e;a:do if((l|0)!=(g|0)){h=e;while(1){k=f[g>>2]|0;if(!(b[k+49>>0]|0))break;e=g+4|0;if((e|0)==(l|0))break a;else{h=e;g=e}}e=f[d>>2]|0;i=e+4|0;j=f[i>>2]|0;if(j>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[j>>2]=k;f[i>>2]=(f[i>>2]|0)+4;e=f[c>>2]|0}else{fva(e,g);h=g;e=l}f[a>>2]=h;if((h|0)==(e|0)){d=e;return d|0}g=h+4|0;if((g|0)==(e|0)){d=h;return d|0}do{l=f[g>>2]|0;j=l;do if(!(b[l+49>>0]|0)){e=f[d>>2]|0;h=e+4|0;i=f[h>>2]|0;if(i>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[i>>2]=j;f[h>>2]=(f[h>>2]|0)+4;break}else{fva(e,g);break}}else{l=f[a>>2]|0;f[g>>2]=0;k=f[l>>2]|0;f[l>>2]=j;if(k|0){l=k+36|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0){ija(e);Zpb(e)}e=f[k+24>>2]|0;if(e|0){h=k+28|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);Zpb(e)}Zpb(k)}f[a>>2]=(f[a>>2]|0)+4}while(0);g=g+4|0}while((g|0)!=(f[c>>2]|0));d=f[a>>2]|0;return d|0}while(0);f[a>>2]=l;d=l;return d|0}function eva(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+48|0;g=h;d=f[c+24>>2]|0;e=f[c+28>>2]|0;if((d|0)!=(e|0))do{Oua(a,f[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c+36|0;if(!(f[d>>2]|0)){u=h;return}hWa(g,c,b[c+48>>0]|0,+n[c+44>>2]);c=f[d>>2]|0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[c+12>>2]=f[g+12>>2];f[c+16>>2]=f[g+16>>2];f[c+20>>2]=f[g+20>>2];f[c+52>>2]=f[g+24>>2];f[c+56>>2]=f[g+28>>2];f[c+60>>2]=f[g+32>>2];f[c+64>>2]=f[g+36>>2];f[c+68>>2]=f[g+40>>2];f[c+72>>2]=f[g+44>>2];eva(a,c);eva(a,c+52|0);u=h;return}function fva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+32|0;l=n;m=a+4|0;c=f[a>>2]|0;e=(f[m>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;j=i>>1;d=i>>2>>>0<536870911?(j>>>0<d>>>0?d:j):1073741823;f[l+12>>2]=0;f[l+16>>2]=a+8;do if(!d)g=0;else if(d>>>0>1073741823)ud();else{g=Wpb(d<<2)|0;break}while(0);f[l>>2]=g;c=g+(e<<2)|0;i=l+8|0;j=l+4|0;f[j>>2]=c;g=g+(d<<2)|0;h=l+12|0;f[h>>2]=g;e=f[b>>2]|0;f[b>>2]=0;f[c>>2]=e;e=c+4|0;f[i>>2]=e;b=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(b|0)){p=c;c=i;i=b;o=e;e=d;b=g;g=p;f[a>>2]=g;f[j>>2]=i;f[m>>2]=o;f[c>>2]=e;m=f[k>>2]|0;f[k>>2]=b;f[h>>2]=m;f[l>>2]=i;Wua(l);u=n;return}do{d=d+-4|0;p=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=p;c=(f[j>>2]|0)+-4|0;f[j>>2]=c}while((d|0)!=(b|0));d=c;o=h;b=i;p=f[a>>2]|0;e=f[i>>2]|0;g=f[m>>2]|0;i=f[h>>2]|0;h=d;f[a>>2]=h;f[j>>2]=p;f[m>>2]=e;f[b>>2]=g;m=f[k>>2]|0;f[k>>2]=i;f[o>>2]=m;f[l>>2]=p;Wua(l);u=n;return}function gva(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;g=l;c=f[a>>2]|0;k=a+4|0;h=f[k>>2]|0;if((c|0)==(h|0)){u=l;return}i=g+16|0;do{e=c+16|0;d=f[e>>2]|0;if(d|0){fh[f[(f[d>>2]|0)+24>>2]&2047](d);if(b[c+24>>0]|0){f[i>>2]=0;d=f[e>>2]|0;if((c|0)==(d|0))fh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)fh[f[(f[d>>2]|0)+20>>2]&2047](d);f[e>>2]=0;d=f[i>>2]|0;do if(!d){f[e>>2]=0;j=15}else if((g|0)==(d|0)){f[e>>2]=c;j=f[i>>2]|0;nh[f[(f[j>>2]|0)+12>>2]&1023](j,c);j=15;break}else{f[e>>2]=d;f[i>>2]=0;d=0;e=0;break}while(0);if((j|0)==15){j=0;e=f[i>>2]|0;d=e}if((g|0)==(d|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e)}}c=c+32|0}while((c|0)!=(h|0));c=f[k>>2]|0;if((f[a>>2]|0)==(c|0)){u=l;return}while(1){if(!(f[c+-16>>2]|0)){d=c;e=0;g=0}else{j=30;break}c=c+-32|0;while(1){j=d+-32|0;f[k>>2]=j;if((j|0)==(e|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g);d=f[k>>2]|0;if((d|0)==(c|0))break;g=f[d+-16>>2]|0;e=g}if((f[a>>2]|0)==(c|0)){j=30;break}}if((j|0)==30){u=l;return}}function hva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;e=a+368|0;g=a+372|0;h=f[g>>2]|0;c=h;if(((h-(f[e>>2]|0)|0)/12|0)>>>0>=6){i=-1;u=j;return i|0}d=b+4|0;if((f[d>>2]|0)-(f[b>>2]|0)>>4>>>0>=5){i=-1;u=j;return i|0}if((f[a+376>>2]|0)>>>0>c>>>0){f[c>>2]=0;e=c+4|0;f[e>>2]=0;f[c+8>>2]=0;f[h>>2]=f[b>>2];f[e>>2]=f[d>>2];h=b+8|0;f[c+8>>2]=f[h>>2];f[h>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=(f[g>>2]|0)+12}else qz(e,b);eOa(f[(f[a+4>>2]|0)+228>>2]|0);c=a+268|0;b=f[c>>2]|0;f[c>>2]=b+1;f[i>>2]=b;c=a+384|0;d=f[c>>2]|0;if((d|0)==(f[a+388>>2]|0))BD(a+380|0,i);else{f[d>>2]=b;f[c>>2]=d+4}i=f[i>>2]|0;u=j;return i|0}function iva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=a+380|0;n=a+384|0;e=f[k>>2]|0;d=(f[n>>2]|0)-e>>2;if(!d){n=0;return n|0}else c=0;while(1){if((f[e+(c<<2)>>2]|0)==(b|0))break;c=c+1|0;if(c>>>0>=d>>>0){c=0;j=24;break}}if((j|0)==24)return c|0;l=a+368|0;d=(f[l>>2]|0)+(c*12|0)|0;b=d+12|0;m=a+372|0;i=f[m>>2]|0;if((b|0)==(i|0)){g=d;j=12}else{do{e=f[d>>2]|0;h=d+4|0;if(!e)e=d+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-16-e|0)>>>4)<<4);Zpb(e);e=d+8|0;f[e>>2]=0;f[h>>2]=0;f[d>>2]=0}f[d>>2]=f[b>>2];g=b+4|0;f[h>>2]=f[g>>2];h=b+8|0;f[e>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[b>>2]=0;b=b+12|0;d=d+12|0}while((b|0)!=(i|0));b=f[m>>2]|0;if((b|0)!=(d|0)){g=d;j=12}}if((j|0)==12){d=b;while(1){b=d+-12|0;f[m>>2]=b;e=f[b>>2]|0;if(e){b=d+-8|0;d=f[b>>2]|0;if((d|0)!=(e|0))f[b>>2]=d+(~((d+-16-e|0)>>>4)<<4);Zpb(e);b=f[m>>2]|0}if((b|0)==(g|0))break;else d=b}}e=(f[k>>2]|0)+(c<<2)|0;c=e+4|0;b=f[n>>2]|0;d=b-c|0;g=d>>2;if(g){Jrb(e|0,c|0,d|0)|0;b=f[n>>2]|0}c=e+(g<<2)|0;if((b|0)!=(c|0))f[n>>2]=b+(~((b+-4-c|0)>>>2)<<2);if((f[l>>2]|0)!=(f[m>>2]|0)){n=1;return n|0}eOa(f[(f[a+4>>2]|0)+228>>2]|0);n=1;return n|0}function jva(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;B=D;C=a+416|0;g=b[C>>0]|0;if(g&1){kva(a);g=b[C>>0]|0}g=g|3;b[C>>0]=g;f[a+420>>2]=f[e>>2];f[a+424>>2]=f[e+4>>2];f[a+428>>2]=f[e+8>>2];if(d){r=B+4|0;s=a+432|0;t=a+436|0;v=a+444|0;w=a+448|0;x=a+440|0;y=a+464|0;q=0;do{Hua(B,a,c+(q<<3)|0);z=f[B>>2]|0;g=f[r>>2]|0;if(g|0)Ppb(g);l=z;kpa(z,1);p=X(l,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;m=f[t>>2]|0;o=(m|0)==0;a:do if(o){g=0;A=26}else{k=m+-1|0;h=(k&m|0)==0;if(h)g=k&p;else if(p>>>0<m>>>0)g=p;else g=(p>>>0)%(m>>>0)|0;e=f[(f[s>>2]|0)+(g<<2)>>2]|0;if(!e)A=26;else{if(h)while(1){e=f[e>>2]|0;if(!e){A=26;break a}h=f[e+4>>2]|0;if(!((h|0)==(p|0)|(h&k|0)==(g|0))){A=26;break a}if((f[e+8>>2]|0)==(z|0))break a}do{e=f[e>>2]|0;if(!e){A=26;break a}h=f[e+4>>2]|0;if((h|0)!=(p|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(g|0)){A=26;break a}}}while((f[e+8>>2]|0)!=(z|0))}}while(0);if((A|0)==26){A=0;k=Wpb(12)|0;f[k+8>>2]=l;f[k+4>>2]=p;f[k>>2]=0;i=+(((f[v>>2]|0)+1|0)>>>0);j=+n[w>>2];do if(o|j*+(m>>>0)<i){g=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;Via(s,g>>>0<e>>>0?e:g);g=f[t>>2]|0;e=g+-1|0;if(!(e&g)){h=g;g=e&p;break}if(p>>>0<g>>>0){h=g;g=p}else{h=g;g=(p>>>0)%(g>>>0)|0}}else h=m;while(0);e=(f[s>>2]|0)+(g<<2)|0;g=f[e>>2]|0;if(!g){f[k>>2]=f[x>>2];f[x>>2]=k;f[e>>2]=x;g=f[k>>2]|0;if(g|0){g=f[g+4>>2]|0;e=h+-1|0;if(!(e&h))g=g&e;else if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;g=(f[s>>2]|0)+(g<<2)|0;A=39}}else{f[k>>2]=f[g>>2];A=39}if((A|0)==39){A=0;f[g>>2]=k}f[v>>2]=(f[v>>2]|0)+1}vja(y,z);q=q+1|0}while((q|0)!=(d|0));g=b[C>>0]|0}if(!(g&1)){u=D;return}if(f[a+444>>2]|0){u=D;return}zja(a+464|0);u=D;return}function kva(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;i=a+416|0;if(!(b[i>>0]&1)){u=k;return}j=a+444|0;if(!(f[j>>2]|0)){c=f[a+44>>2]|0;a:do if(c|0){d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0);e=h+4|0;g=h+8|0;b:while(1){do{l=f[d+12>>2]|0;f[h>>2]=0;f[e>>2]=0;f[g>>2]=0;bpa(l,h);d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue b}}}while(0);zja(a+464|0)}else{c=f[a+440>>2]|0;if(c|0){d=a+464|0;do{l=c+8|0;kpa(f[l>>2]|0,0);vja(d,f[l>>2]|0);c=f[c>>2]|0}while((c|0)!=0)}}b[i>>0]=b[i>>0]&-4|2;if(!(f[j>>2]|0)){u=k;return}d=a+440|0;c=f[d>>2]|0;if(c|0)do{l=c;c=f[c>>2]|0;Zpb(l)}while((c|0)!=0);f[d>>2]=0;e=f[a+436>>2]|0;if(e|0){d=a+432|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[j>>2]=0;u=k;return}function lva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=f[b+20>>2]|0;a:do if(!g)b=0;else{h=g+-1|0;c=(h&g|0)==0;b=f[f[b+16>>2]>>2]|0;if(!b)b=0;else{b=f[b>>2]|0;if(!b)b=0;else{if(c)while(1){g=f[b+4>>2]|0;c=(g|0)==0;if(!(c|(g&h|0)==0)){b=0;break a}if(c)if(!(f[b+8>>2]|0))break a;b=f[b>>2]|0;if(!b){b=0;break a}}while(1){c=f[b+4>>2]|0;if(!c){if(!(f[b+8>>2]|0))break a}else{if(c>>>0<g>>>0){b=0;break a}if((c>>>0)%(g>>>0)|0|0){b=0;break a}}b=f[b>>2]|0;if(!b){b=0;break}}}}}while(0);f[a>>2]=0;g=a+4|0;f[g>>2]=0;f[a+8>>2]=0;c=f[b+44>>2]|0;h=a+8|0;do if(!c){d=0;e=0}else if(c>>>0>1073741823)ud();else{e=Wpb(c<<2)|0;d=e+(c<<2)|0;f[a>>2]=e;f[g>>2]=e;f[h>>2]=d;break}while(0);b=f[b+40>>2]|0;if(!b)return;while(1){c=b+8|0;if((e|0)==(d|0))BD(a,c);else{f[e>>2]=f[c>>2];f[g>>2]=e+4}b=f[b>>2]|0;if(!b)break;e=f[g>>2]|0;d=f[h>>2]|0}return}function mva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;e=g+16|0;d=g;roa(e,f[c>>2]|0);nua(d,b,e);b=f[d+8>>2]|0;if(!b){f[a>>2]=f[c>>2];b=f[c+4>>2]|0;f[a+4>>2]=b;if(b|0)Npb(b)}else{f[a>>2]=b;b=f[d+12>>2]|0;f[a+4>>2]=b;if(b|0)Npb(b)}b=f[d+12>>2]|0;if(b|0)Ppb(b);b=f[d+4>>2]|0;if(b|0)Ppb(b);b=f[e+4>>2]|0;if(!b){u=g;return}Ppb(b);u=g;return}function nva(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0<i>>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=Wpb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)<g){d=i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;ova(a,d>>>0<e>>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0<d>>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function ova(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){pva(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;pva(a,b);return}function pva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function qva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(e|0)==(c|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((e|0)==(b|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function rva(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;e=f[a+56>>2]|0;if((((f[a+60>>2]|0)-e|0)/20|0)>>>0>c>>>0)c=e+(c*20|0)|0;else if(!(b[209712]|0))if(!(rrb(209712)|0))c=211036;else{f[52759]=0;f[52760]=0;f[52761]=0;f[52762]=0;n[52763]=1.0;c=211036}else c=211036;e=f[c+8>>2]|0;if(!e){d=0;return d|0}else c=0;do{o=f[e+8>>2]|0;b[o+128>>0]=d;g=esa(a,f[o+8>>2]|0)|0;h=f[o+56>>2]|0;a:do if(h){p=g+24|0;m=g+20|0;while(1){l=f[h+12>>2]|0;b:do switch(d<<24>>24){case 0:{i=lpa(l,1,0,1)|0|(lpa(l,2,0,1)|0);g=0;j=27;break}case 1:{i=lpa(l,1,1,1)|0|(lpa(l,2,1,1)|0);g=1;j=27;break}case 2:{k=f[l+120>>2]|0;j=Sla(o,k)|0;if(j|0){g=f[j>>2]|0;if((g|0)!=-1){i=lpa(l,1,(g&1|0)!=0,1)|0;i=i|(lpa(l,2,(f[j>>2]&2|0)!=0,1)|0);g=(f[j>>2]&4|0)!=0;j=27;break b}}g=f[p>>2]|0;i=g+-1|0;if(!(i&g)){g=f[(f[m>>2]|0)+((i&k)<<2)>>2]|0;while(1){g=f[g>>2]|0;if((k|0)!=(f[g+4>>2]|0))continue;if((f[g+8>>2]|0)==(k|0))break}}else{if(k>>>0<g>>>0)g=k;else g=(k>>>0)%(g>>>0)|0;g=f[(f[m>>2]|0)+(g<<2)>>2]|0;while(1){g=f[g>>2]|0;if((k|0)!=(f[g+4>>2]|0))continue;if((f[g+8>>2]|0)==(k|0))break}}g=(f[g+16>>2]|0)+192|0;i=lpa(l,1,(b[g>>0]&1)!=0,1)|0;i=i|(lpa(l,2,(b[g>>0]&2)!=0,1)|0);g=(b[g>>0]&4)!=0;j=27;break}default:g=0}while(0);if((j|0)==27){j=0;g=i|(lpa(l,4,g,1)|0)}c=c|g;h=f[h>>2]|0;if(!h)break a}}while(0);e=f[e>>2]|0}while((e|0)!=0);return c|0}function sva(a,b){a=a|0;b=b|0;f[(f[a>>2]|0)+4>>2]=b;return}function tva(a){a=a|0;return f[(f[a>>2]|0)+4>>2]|0}function uva(a){a=a|0;return f[(f[(f[a>>2]|0)+4>>2]|0)+228>>2]|0}function vva(a){a=a|0;return f[(f[a>>2]|0)+12>>2]|0}function wva(a,b){a=a|0;b=b|0;f[(f[a>>2]|0)+12>>2]=b;return}function xva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;a=f[a>>2]|0;a=esa(a,f[a+12>>2]|0)|0;e=f[a+64>>2]|0;a:do if(!e)a=0;else{d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(e>>>0>b>>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a+60>>2]|0)+(g<<2)>>2]|0;if(!a)a=0;else{a=f[a>>2]|0;if(!a)a=0;else{if(c)while(1){e=f[a+4>>2]|0;c=(e|0)==(b|0);if(!(c|(e&d|0)==(g|0))){a=0;break a}if(c)if((f[a+8>>2]|0)==(b|0))break a;a=f[a>>2]|0;if(!a){a=0;break a}}while(1){c=f[a+4>>2]|0;if((c|0)==(b|0)){if((f[a+8>>2]|0)==(b|0))break a}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=0;break a}}a=f[a>>2]|0;if(!a){a=0;break}}}}}while(0);return a+12|0}function yva(a){a=a|0;return (f[a>>2]|0)+68|0}function zva(a){a=a|0;return (f[a>>2]|0)+36|0}function Ava(a,c){a=a|0;c=c|0;var d=0;d=f[a>>2]|0;a=f[d+56>>2]|0;if((((f[d+60>>2]|0)-a|0)/20|0)>>>0>c>>>0){d=a+(c*20|0)|0;return d|0}if(b[209712]|0){d=211036;return d|0}if(!(rrb(209712)|0)){d=211036;return d|0};f[52759]=0;f[52760]=0;f[52761]=0;f[52762]=0;n[52763]=1.0;d=211036;return d|0}function Bva(a,b,c){a=a|0;b=b|0;c=c|0;Dta(a,f[b>>2]|0,c);return}function Cva(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return $ra(f[a>>2]|0,b,c,d,e,g)|0}function Dva(a,b,c){a=a|0;b=b|0;c=c|0;return Eta(f[a>>2]|0,b,c)|0}function Eva(a,b){a=a|0;b=b|0;return Pta(f[a>>2]|0,b)|0}function Fva(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;Sta(f[a>>2]|0,b,c,d,e,g,h);return}function Gva(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;osa(f[a>>2]|0,b,c,d);return}function Hva(a,b,c){a=a|0;b=b|0;c=c|0;mua(a,f[b>>2]|0,c);return}function Iva(a,b,c){a=a|0;b=b|0;c=c|0;nua(a,f[b>>2]|0,c);return}function Jva(a,b,c){a=a|0;b=b|0;c=c|0;oua(a,f[b>>2]|0,c);return}function Kva(a,b,c){a=a|0;b=b|0;c=c|0;Qta(a,f[b>>2]|0,c);return}function Lva(a,b,c){a=a|0;b=b|0;c=c|0;pua(a,f[b>>2]|0,c);return}function Mva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=hta((esa(f[a>>2]|0,f[c>>2]|0)|0)+80|0,c+4|0)|0;if(f[d>>2]|0){d=0;u=e;return d|0}ula(f[b>>2]|0,c,e);a=f[b>>2]|0;c=f[b+4>>2]|0;if(c|0)Npb(c);f[d>>2]=a;d=d+4|0;a=f[d>>2]|0;f[d>>2]=c;if(!a){d=1;u=e;return d|0}Ppb(a);d=1;u=e;return d|0}function Nva(a,b,c){a=a|0;b=b|0;c=c|0;return nta(f[a>>2]|0,b,c)|0}function Ova(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ota((esa(f[a>>2]|0,f[c>>2]|0)|0)+100|0,c+4|0)|0;if(f[d>>2]|0){d=0;return d|0}e=c;c=f[e+4>>2]|0;a=(f[b>>2]|0)+176|0;f[a>>2]=f[e>>2];f[a+4>>2]=c;a=f[b>>2]|0;c=f[b+4>>2]|0;if(c|0)Npb(c);f[d>>2]=a;e=d+4|0;a=f[e>>2]|0;f[e>>2]=c;if(!a){e=1;return e|0}Ppb(a);e=1;return e|0}function Pva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=rta((esa(f[a>>2]|0,f[c>>2]|0)|0)+40|0,c+4|0)|0;if(f[d>>2]|0){d=0;return d|0}e=c;c=f[e+4>>2]|0;a=(f[b>>2]|0)+28|0;f[a>>2]=f[e>>2];f[a+4>>2]=c;a=f[b>>2]|0;c=f[b+4>>2]|0;if(c|0)Npb(c);f[d>>2]=a;e=d+4|0;a=f[e>>2]|0;f[e>>2]=c;if(!a){e=1;return e|0}Ppb(a);e=1;return e|0}function Qva(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return yta(f[a>>2]|0,b,c,d)|0}function Rva(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;a=Zta((esa(f[a>>2]|0,f[b>>2]|0)|0)+180|0,b+4|0)|0;if(f[a>>2]|0){d=0;return d|0}e=Wpb(36)|0;f[e+4>>2]=0;f[e+8>>2]=0;f[e>>2]=29336;g=e+12|0;Kka(g,b,c,d);f[a>>2]=g;d=a+4|0;a=f[d>>2]|0;f[d>>2]=e;if(!a){g=1;return g|0}Ppb(a);g=1;return g|0}function Sva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=kta((esa(f[a>>2]|0,f[c>>2]|0)|0)+120|0,c+4|0)|0;if(f[d>>2]|0){d=0;u=e;return d|0}UMa(f[b>>2]|0,c,e);a=f[b>>2]|0;c=f[b+4>>2]|0;if(c|0)Npb(c);f[d>>2]=a;d=d+4|0;a=f[d>>2]|0;f[d>>2]=c;if(!a){d=1;u=e;return d|0}Ppb(a);d=1;u=e;return d|0}function Tva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=uta((esa(f[a>>2]|0,f[c>>2]|0)|0)+140|0,c+4|0)|0;if(f[d>>2]|0){d=0;return d|0}e=c;c=f[e+4>>2]|0;a=(f[b>>2]|0)+24|0;f[a>>2]=f[e>>2];f[a+4>>2]=c;a=f[b>>2]|0;c=f[b+4>>2]|0;if(c|0)Npb(c);f[d>>2]=a;e=d+4|0;a=f[e>>2]|0;f[e>>2]=c;if(!a){e=1;return e|0}Ppb(a);e=1;return e|0}function Uva(a,b,c){a=a|0;b=b|0;c=c|0;return xta(f[a>>2]|0,b,c)|0}function Vva(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;eua(a,f[b>>2]|0,c,d,e);return}function Wva(a,b){a=a|0;b=b|0;a=f[a>>2]|0;if(mja(a+464|0,b)|0){b=1;return b|0}b=GNa(f[(f[a+4>>2]|0)+228>>2]|0,b)|0;return b|0}function Xva(a,b){a=a|0;b=b|0;return Wta(f[a>>2]|0,b)|0}function Yva(a,b){a=a|0;b=b|0;return Xta(f[a>>2]|0,b)|0}function Zva(a,b){a=a|0;b=b|0;return tua(f[a>>2]|0,b)|0}function _va(a,b){a=a|0;b=b|0;return rua(f[a>>2]|0,b)|0}function $va(a,b){a=a|0;b=b|0;return uua(f[a>>2]|0,b)|0}function awa(a,b){a=a|0;b=b|0;return Vta(f[a>>2]|0,b)|0}function bwa(a,b){a=a|0;b=b|0;return Uta(f[a>>2]|0,b)|0}function cwa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[a>>2]|0;a=tua(e,b)|0;if(a|0){b=a;return b|0}a=b+4|0;c=e+316|0;d=f[c>>2]|0;if((d|0)==(f[e+320>>2]|0))BD(e+312|0,a);else{f[d>>2]=f[a>>2];f[c>>2]=d+4}b=asa(e+36|0,b)|0;vua((f[b>>2]|0)+88|0,a)|0;b=0;return b|0}function dwa(a,b){a=a|0;b=b|0;return wua(f[a>>2]|0,b)|0}function ewa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[a>>2]|0;a=uua(e,b)|0;if(a|0){b=a;return b|0}a=b+4|0;c=e+280|0;d=f[c>>2]|0;if((d|0)==(f[e+284>>2]|0))BD(e+276|0,a);else{f[d>>2]=f[a>>2];f[c>>2]=d+4}xua((esa(e,f[b>>2]|0)|0)+80|0,a)|0;b=0;return b|0}function fwa(a,b){a=a|0;b=b|0;var c=0,d=0;a=f[a>>2]|0;c=sua(a,b)|0;if(c|0){d=c;return d|0}d=esa(a,f[b>>2]|0)|0;b=f[b+4>>2]|0;a=f[d+204>>2]|0;c=a+-1|0;if(!(c&a)){a=f[(f[d+200>>2]|0)+((c&b)<<2)>>2]|0;while(1){a=f[a>>2]|0;if((f[a+4>>2]|0)!=(b|0))continue;if((f[a+8>>2]|0)==(b|0))break}}else{if(b>>>0<a>>>0)a=b;else a=(b>>>0)%(a>>>0)|0;a=f[(f[d+200>>2]|0)+(a<<2)>>2]|0;while(1){a=f[a>>2]|0;if((f[a+4>>2]|0)!=(b|0))continue;if((f[a+8>>2]|0)==(b|0))break}}c=f[a+12>>2]|0;a=f[c+8>>2]|0;c=c+12|0;if((f[c>>2]|0)==(a|0)){d=0;return d|0}f[c>>2]=a;d=0;return d|0}function gwa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;c=f[a>>2]|0;yua(d,c,b);a=f[d>>2]|0;if(!a)b=0;else b=Tra(a,f[c>>2]|0,0)|0;a=f[d+4>>2]|0;if(!a){u=e;return b|0}Ppb(a);u=e;return b|0}function hwa(a,b,c){a=a|0;b=b|0;c=c|0;zua(a,f[b>>2]|0,c);return}function iwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[b>>2]|0;switch(f[c>>2]|0){case 0:case -1:{Dua(a,d,f[c+4>>2]|0);if(f[a>>2]|0)return;b=f[a+4>>2]|0;if(b|0)Ppb(b);break}default:{}}Eua(a,d,c);return}function jwa(a,b,c){a=a|0;b=b|0;c=c|0;Aua(a,f[b>>2]|0,c);return}function kwa(a,b,c){a=a|0;b=b|0;c=c|0;Bua(a,f[b>>2]|0,c);return}function lwa(a,b,c){a=a|0;b=b|0;c=c|0;yua(a,f[b>>2]|0,c);return}function mwa(a,b,c){a=a|0;b=b|0;c=c|0;qua(a,f[b>>2]|0,c);return}function nwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Fua(d,f[b>>2]|0,c);b=f[d>>2]|0;do if(!b){f[a>>2]=0;f[a+4>>2]=0;b=d+4|0}else{f[a>>2]=b;b=d+4|0;c=f[b>>2]|0;f[a+4>>2]=c;if(!c){u=e;return}else{Npb(c);break}}while(0);b=f[b>>2]|0;if(!b){u=e;return}Ppb(b);u=e;return}function owa(a,b,c){a=a|0;b=b|0;c=c|0;Iua(a,f[b>>2]|0,c);return}function pwa(a,b,c){a=a|0;b=b|0;c=c|0;Cua(a,f[b>>2]|0,c);return}function qwa(a,b,c){a=a|0;b=b|0;c=c|0;Jua(a,f[b>>2]|0,c);return}function rwa(a,b,c){a=a|0;b=b|0;c=c|0;Kua(a,f[b>>2]|0,c);return}function swa(a,b,c){a=a|0;b=b|0;c=c|0;Lua(a,f[b>>2]|0,c);return}function twa(a,b,c){a=a|0;b=b|0;c=c|0;Mua(a,f[b>>2]|0,c);return}function uwa(a){a=a|0;return (f[a>>2]|0)+36|0}function vwa(a){a=a|0;return (f[a>>2]|0)+36|0}function wwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;e=g;b=f[b>>2]|0;qua(e,b,c);d=f[e>>2]|0;if(d|0){f[a>>2]=d;c=e+4|0;f[a+4>>2]=f[c>>2];f[e>>2]=0;f[c>>2]=0;u=g;return}Gua(a,b,c);b=f[e+4>>2]|0;if(!b){u=g;return}Ppb(b);u=g;return}function xwa(a,b,c){a=a|0;b=b|0;c=c|0;Hua(a,f[b>>2]|0,c);return}function ywa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;a=f[a>>2]|0;g=f[c>>2]|0;f[c>>2]=0;f[e>>2]=g;a=Nua(a,b,e)|0;b=f[e>>2]|0;f[e>>2]=0;if(!b){u=d;return a|0}Jla(b);Zpb(b);u=d;return a|0}function zwa(a){a=a|0;return f[(f[a>>2]|0)+456>>2]|0}function Awa(a){a=a|0;return (f[(f[a>>2]|0)+456>>2]|0)>>>10|0}function Bwa(a,b){a=a|0;b=b|0;f[(f[a>>2]|0)+456>>2]=b;return}function Cwa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;a=f[(f[a>>2]|0)+44>>2]|0;if(!a){c=0;d=0;I=c;return d|0}b=f[(f[a+12>>2]|0)+56>>2]|0;a:do if(!b){while(1){a=f[a>>2]|0;if(!a){b=0;a=0;break}b=f[(f[a+12>>2]|0)+56>>2]|0;if(b){c=0;d=0;break a}}I=b;return a|0}else{c=0;d=0}while(0);b:while(1){do{e=f[(f[(f[b+12>>2]|0)+4>>2]|0)+44>>2]|0;g=vrb(c|0,d|0,(f[e+24>>2]|0)!=0|0,0)|0;g=vrb(g|0,I|0,(f[e+28>>2]|0)!=0|0,0)|0;c=vrb(g|0,I|0,(f[e+32>>2]|0)!=0|0,0)|0;d=I;b=f[b>>2]|0}while((b|0)!=0);while(1){a=f[a>>2]|0;if(!a){b=d;a=c;break b}b=f[(f[a+12>>2]|0)+56>>2]|0;if(b)continue b}}I=b;return a|0}function Dwa(a){a=a|0;var b=0,c=0,d=0;a=f[(f[a>>2]|0)+44>>2]|0;if(!a){c=0;d=0;I=c;return d|0}b=f[(f[a+12>>2]|0)+56>>2]|0;a:do if(!b){while(1){a=f[a>>2]|0;if(!a){a=0;b=0;break}b=f[(f[a+12>>2]|0)+56>>2]|0;if(b){c=0;d=0;break a}}I=a;return b|0}else{c=0;d=0}while(0);b:while(1){do{c=vrb(c|0,d|0,f[(f[(f[(f[b+12>>2]|0)+4>>2]|0)+44>>2]|0)+24>>2]|0,0)|0;d=I;b=f[b>>2]|0}while((b|0)!=0);while(1){a=f[a>>2]|0;if(!a)break b;b=f[(f[a+12>>2]|0)+56>>2]|0;if(b)continue b}}d=Crb(c|0,d|0,3,0)|0;c=I;I=c;return d|0}function Ewa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=f[a>>2]|0;d=f[g+368>>2]|0;e=g+372|0;a=f[e>>2]|0;if((d|0)==(a|0)){g=0;return g|0}else b=a;while(1){a=b+-12|0;f[e>>2]=a;c=f[a>>2]|0;if(c){a=b+-8|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-16-c|0)>>>4)<<4);Zpb(c);a=f[e>>2]|0}if((a|0)==(d|0))break;else b=a}a=f[g+380>>2]|0;b=g+384|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);eOa(f[(f[g+4>>2]|0)+228>>2]|0);g=1;return g|0}function Fwa(a,b){a=a|0;b=b|0;return hva(f[a>>2]|0,b)|0}function Gwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=f[a>>2]|0;k=c+4|0;a=f[k>>2]|0;d=f[c>>2]|0;if(a-d>>4>>>0>4){c=0;return c|0}h=f[i+380>>2]|0;g=(f[i+384>>2]|0)-h>>2;if(!g){c=0;return c|0}else e=0;while(1){if((f[h+(e<<2)>>2]|0)==(b|0))break;e=e+1|0;if(e>>>0>=g>>>0){a=0;j=11;break}}if((j|0)==11)return a|0;g=f[i+368>>2]|0;b=g+(e*12|0)|0;h=f[b>>2]|0;i=g+(e*12|0)+4|0;if(!h)e=g+(e*12|0)+8|0;else{a=f[i>>2]|0;if((a|0)!=(h|0))f[i>>2]=a+(~((a+-16-h|0)>>>4)<<4);Zpb(h);e=g+(e*12|0)+8|0;f[e>>2]=0;f[i>>2]=0;f[b>>2]=0;d=f[c>>2]|0;a=f[k>>2]|0}f[b>>2]=d;f[i>>2]=a;j=c+8|0;f[e>>2]=f[j>>2];f[j>>2]=0;f[k>>2]=0;f[c>>2]=0;c=1;return c|0}function Hwa(a,b){a=a|0;b=b|0;return iva(f[a>>2]|0,b)|0}function Iwa(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;c=f[d+380>>2]|0;d=(f[d+384>>2]|0)-c>>2;a:do if(!d)a=-1;else{a=0;while(1){if((f[c+(a<<2)>>2]|0)==(b|0))break a;a=a+1|0;if(a>>>0>=d>>>0){a=-1;break}}}while(0);return (a|0)!=-1|0}function Jwa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=f[a>>2]|0;d=f[e+380>>2]|0;g=(f[e+384>>2]|0)-d>>2;a:do if(g|0){a=0;while(1){if((f[d+(a<<2)>>2]|0)==(c|0))break;a=a+1|0;if(a>>>0>=g>>>0)break a}c=(f[e+368>>2]|0)+(a*12|0)|0;return c|0}while(0);if(b[209720]|0){c=211056;return c|0}if(!(rrb(209720)|0)){c=211056;return c|0}f[52764]=0;f[52765]=0;f[52766]=0;c=211056;return c|0}function Kwa(a){a=a|0;return (f[a>>2]|0)+368|0}function Lwa(a,b,c){a=a|0;b=b|0;c=c|0;a=f[a>>2]|0;f[a+392>>2]=f[b>>2];f[a+396>>2]=f[b+4>>2];f[a+400>>2]=f[b+8>>2];f[a+404>>2]=f[c>>2];f[a+408>>2]=f[c+4>>2];f[a+412>>2]=f[c+8>>2];return}function Mwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0;a=f[a>>2]|0;g=+n[a+392>>2];h=a+404|0;if(g>+n[h>>2]){c=0;return c|0}i=a+396|0;d=a+408|0;if(+n[i>>2]>+n[d>>2]){c=0;return c|0}e=a+400|0;a=a+412|0;if(+n[e>>2]>+n[a>>2]){c=0;return c|0}n[b>>2]=g;f[b+4>>2]=f[i>>2];f[b+8>>2]=f[e>>2];f[c>>2]=f[h>>2];f[c+4>>2]=f[d>>2];f[c+8>>2]=f[a>>2];c=1;return c|0}function Nwa(a,b){a=a|0;b=b|0;f[(f[a>>2]|0)+8>>2]=b;return}function Owa(a){a=a|0;return (f[a>>2]|0)+168|0}function Pwa(a){a=a|0;return (f[a>>2]|0)+188|0}function Qwa(a){a=a|0;return (f[a>>2]|0)+208|0}function Rwa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;i=f[a>>2]|0;f[g>>2]=b;a=i+156|0;c=i+160|0;d=f[c>>2]|0;e=d-(f[a>>2]|0)>>2;if((f[i+164>>2]|0)>>>0>d>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4;u=h;return e|0}else{voa(a,g);u=h;return e|0}return 0}function Swa(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;a=c+156|0;if((f[c+160>>2]|0)-(f[a>>2]|0)>>2>>>0<b>>>0)return;Mta(a,b);return}function Twa(a){a=a|0;return (f[a>>2]|0)+156|0}function Uwa(a){a=a|0;return (f[a>>2]|0)+112|0}function Vwa(a,b){a=a|0;b=b|0;Oua((f[a>>2]|0)+112|0,b);return}function Wwa(a,c){a=a|0;c=c|0;var d=0;d=f[a>>2]|0;c=Lta(c)|0;if(!c)return;if(f[c+40>>2]|0)return;a=(f[c+36>>2]|0)==0;if((f[c+24>>2]|0)==(f[c+28>>2]|0))if(a){b[d+152>>0]=1;a=7}else a=8;else if(a)a=7;else a=8;if((a|0)==7){b[d+153>>0]=1;return}else if((a|0)==8){b[d+154>>0]=1;return}}function Xwa(a){a=a|0;a=f[a>>2]|0;Yua(a+112|0);Zua(a+68|0);return}function Ywa(a){a=a|0;var b=0;a=f[a>>2]|0;b=a+148|0;f[b>>2]=(f[b>>2]|0)+1;a=a+104|0;f[a>>2]=(f[a>>2]|0)+1;return}function Zwa(a){a=a|0;var c=0,d=0,e=0;e=f[a>>2]|0;a=e+112|0;c=e+148|0;d=f[c>>2]|0;if(d|0){d=d+-1|0;f[c>>2]=d;if(!d)if(b[e+155>>0]|0)Yua(a)}a=e+104|0;c=f[a>>2]|0;if(!c)return;d=c+-1|0;f[a>>2]=d;if(d|0)return;if(!(b[e+111>>0]|0))return;Zua(e+68|0);return}function _wa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;a=f[a>>2]|0;e=f[a+20>>2]|0;if(!e){h=0;return h|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(e>>>0>b>>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a+16>>2]|0)+(g<<2)>>2]|0;if(!a){h=0;return h|0}a=f[a>>2]|0;if(!a){h=0;return h|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(e|0)==(b|0);if(!(c|(e&d|0)==(g|0))){a=0;c=20;break}if(c)if((f[a+8>>2]|0)==(b|0)){h=a;break a}a=f[a>>2]|0;if(!a){a=0;c=20;break}}if((c|0)==20)return a|0}else{while(1){c=f[a+4>>2]|0;if((c|0)==(b|0)){if((f[a+8>>2]|0)==(b|0)){h=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=0;c=20;break}}a=f[a>>2]|0;if(!a){a=0;c=20;break}}if((c|0)==20)return a|0}while(0);h=h+12|0;return h|0}function $wa(a,b){a=a|0;b=b|0;lva(a,f[b>>2]|0);return}function axa(a){a=a|0;kva(f[a>>2]|0);return}function bxa(a,c){a=a|0;c=+c;var d=0,e=0;e=f[a>>2]|0;n[e+452>>2]=c;a=e+416|0;d=b[a>>0]|0;if(!(d&1))return;b[a>>0]=d|2;if(!(f[e+444>>2]|0)){zja(e+464|0);return}a=f[e+440>>2]|0;if(!a)return;d=e+464|0;do{vja(d,f[a+8>>2]|0);a=f[a>>2]|0}while((a|0)!=0);return}function cxa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0;d=u;u=u+16|0;c=d;a=f[a>>2]|0;if(f[b+196>>2]&32|0){u=d;return}e=b+200|0;if((j[e>>1]|0|(h[e+2>>0]|0)<<16)&65536|0)ppa(b);g=+n[a+452>>2];n[c>>2]=g*(+n[b+168>>2]-+n[a+420>>2]);n[c+4>>2]=g*(+n[b+172>>2]-+n[a+424>>2]);n[c+8>>2]=g*(+n[b+176>>2]-+n[a+428>>2]);bpa(b,c);u=d;return}function dxa(a){a=a|0;Cta(f[a>>2]|0);return}function exa(a){a=a|0;return (b[(f[a>>2]|0)+416>>0]&1)!=0|0}function fxa(a){a=a|0;a=f[a>>2]|0;if(!(b[a+416>>0]&1)){a=0;return a|0}a=(f[a+444>>2]|0)==0;return a|0}function gxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;jva(f[a>>2]|0,b,c,d);return}function hxa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;a=f[a>>2]|0;c=a+316|0;d=f[c>>2]|0;if((f[a+312>>2]|0)==(d|0)){c=a+252|0;d=f[c>>2]|0;f[c>>2]=d+1;f[e>>2]=d}else{d=d+-4|0;f[e>>2]=f[d>>2];f[c>>2]=d}a=lsa(a+348|0,e)|0;c=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)Npb(d);f[a>>2]=c;c=a+4|0;a=f[c>>2]|0;f[c>>2]=d;if(!a){d=f[e>>2]|0;e=f[b>>2]|0;e=e+112|0;b=e;f[b>>2]=-1;e=e+4|0;f[e>>2]=d;u=g;return}Ppb(a);d=f[e>>2]|0;e=f[b>>2]|0;e=e+112|0;b=e;f[b>>2]=-1;e=e+4|0;f[e>>2]=d;u=g;return}function ixa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[a>>2]|0;e=f[b>>2]|0;BGa(f[(f[d+4>>2]|0)+232>>2]|0,1,e+112|0);e=e+116|0;vua(d+348|0,e)|0;a=d+316|0;c=f[a>>2]|0;if((c|0)==(f[d+320>>2]|0)){BD(d+312|0,e);b=f[b>>2]|0;b=b+112|0;e=b;f[e>>2]=0;b=b+4|0;f[b>>2]=-1;return}else{f[c>>2]=f[e>>2];f[a>>2]=c+4;b=f[b>>2]|0;b=b+112|0;e=b;f[e>>2]=0;b=b+4|0;f[b>>2]=-1;return}}function jxa(a,b,c){a=a|0;b=b|0;c=c|0;mva(a,f[b>>2]|0,c);return}function kxa(a){a=a|0;return (f[a>>2]|0)+464|0}function lxa(a){a=a|0;return f[(f[a>>2]|0)+460>>2]|0}function mxa(a,b){a=a|0;b=b|0;var c=0;a=f[a>>2]|0;if(!b)return;c=a+460|0;b=(f[c>>2]|0)+b|0;f[c>>2]=b;if((b|0)>=1)return;f[c>>2]=0;gva((f[a>>2]|0)+4|0);return}function nxa(a){a=a|0;return (f[(f[a>>2]|0)+8>>2]|0)>>>0<524289|0}function oxa(a){a=a|0;return (f[a>>2]|0)+1776|0}function pxa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;a=f[a>>2]|0;Hua(e,a,c);e=f[e+4>>2]|0;if(e|0)Ppb(e);c=nva(a+228|0,c)|0;b[c>>0]=b[c>>0]|1<<(d&255)&255;u=g;return}function qxa(a,c,d){a=a|0;c=c|0;d=d|0;a=qva((f[a>>2]|0)+228|0,c)|0;if(!a){d=0;return d|0}d=(b[a+16>>0]&d)<<24>>24!=0;return d|0}function rxa(a,b,c){a=a|0;b=b|0;c=c|0;return rva(f[a>>2]|0,b,c)|0}function sxa(a){a=a|0;DCa(a);Zpb(a);return}function txa(a){a=a|0;return}function uxa(a){a=a|0;return 0}function vxa(a){a=a|0;return 0}function wxa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;f[a>>2]=29392;e=Wpb(16)|0;xDa(e,a);f[e>>2]=29428;f[d>>2]=e;HCa(a,d,b);b=f[d>>2]|0;f[d>>2]=0;if(!b){f[a>>2]=29392;u=c;return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);f[a>>2]=29392;u=c;return}function xxa(a){a=a|0;OCa(a);Zpb(a);return}function yxa(a){a=a|0;return 0}function zxa(a){a=a|0;return}function Axa(a,b){a=a|0;b=b|0;return}function Bxa(a){a=a|0;return 1}function Cxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Dxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Exa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return}function Fxa(a){a=a|0;return}function Gxa(a,b){a=a|0;b=b|0;return}function Hxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Ixa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Jxa(a,b){a=a|0;b=b|0;return}function Kxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Lxa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function Mxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Nxa(a){a=a|0;return}function Oxa(a,b){a=a|0;b=+b;return}function Pxa(a,b){a=a|0;b=b|0;return}function Qxa(a,b){a=a|0;b=+b;return}function Rxa(a,b){a=a|0;b=b|0;return}function Sxa(a,b){a=a|0;b=b|0;return}function Txa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return}function Uxa(a,b,c){a=a|0;b=b|0;c=c|0;return}function Vxa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function Wxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Xxa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function Yxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Zxa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function _xa(a,b,c){a=a|0;b=b|0;c=c|0;return}function $xa(a,b,c){a=a|0;b=b|0;c=c|0;return}function aya(a,b,c){a=a|0;b=b|0;c=c|0;return}function bya(a,b,c){a=a|0;b=b|0;c=c|0;return}function cya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function dya(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return}function eya(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return}function fya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function gya(a,b,c){a=a|0;b=b|0;c=c|0;return}function hya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function iya(a,b,c){a=a|0;b=b|0;c=c|0;return}function jya(a){a=a|0;return}function kya(a,b){a=a|0;b=b|0;return}function lya(a,b){a=a|0;b=b|0;return}function mya(a,b){a=a|0;b=b|0;return}function nya(a){a=a|0;var b=0,c=0;f[a>>2]=29628;c=a+240|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){H0a(b);Zpb(b)}c=a+236|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){DCa(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);DCa(a);return}function oya(a){a=a|0;var b=0,c=0;f[a>>2]=29628;c=a+240|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){H0a(b);Zpb(b)}c=a+236|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){DCa(a);Zpb(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);DCa(a);Zpb(a);return}function pya(a){a=a|0;return}function qya(a){a=a|0;return V0a(f[a+240>>2]|0)|0}function rya(a){a=a|0;return U0a(f[a+240>>2]|0)|0}function sya(a){a=a|0;return 0}function tya(a){a=a|0;var b=0,c=0;f[a>>2]=29664;c=a+12|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){$Ga(a);return}fh[f[(f[b>>2]|0)+4>>2]&2047](b);$Ga(a);return}function uya(a){a=a|0;var b=0,c=0;f[a>>2]=29664;c=a+12|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);$Ga(a);Zpb(a);return}function vya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){bHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+8>>2]&255](g,b,c,d,e);return}}function wya(a,b){a=a|0;b=b|0;var c=0;c=f[a+12>>2]|0;if(!c)cHa(a,b);else nh[f[(f[c>>2]|0)+12>>2]&1023](c,b);if(b|0)return;a=f[(f[a+8>>2]|0)+232>>2]|0;b=a+28|0;switch(f[b>>2]|0){case 0:{f[b>>2]=1;rza(a);return}case 1:{f[b>>2]=2;JEa(a,7);JEa(a,2);JEa(a,3);sza(a);return}default:return}}function xya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+12>>2]|0;if(!d){dHa(a,b,c);return}else{wh[f[(f[d>>2]|0)+16>>2]&127](d,b,c);return}}function yya(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+256|0;l=x+120|0;m=x+48|0;s=x+128|0;t=x+56|0;v=x+24|0;k=x;p[l>>3]=h;p[m>>3]=i;o=f[(f[a+8>>2]|0)+232>>2]|0;if(b[o+176>>0]|0){nza(t,o,0);p[s>>3]=+n[t>>2];p[s+8>>3]=+n[t+4>>2];p[s+16>>3]=+n[t+8>>2];p[s+24>>3]=+n[t+12>>2];p[s+32>>3]=+n[t+16>>2];p[s+40>>3]=+n[t+20>>2];p[s+48>>3]=+n[t+24>>2];p[s+56>>3]=+n[t+28>>2];p[s+64>>3]=+n[t+32>>2];p[s+72>>3]=+n[t+36>>2];p[s+80>>3]=+n[t+40>>2];p[s+88>>3]=+n[t+44>>2];p[s+96>>3]=+n[t+48>>2];p[s+104>>3]=+n[t+52>>2];p[s+112>>3]=+n[t+56>>2];p[s+120>>3]=+n[t+60>>2];p[t>>3]=+p[d>>3];p[t+8>>3]=+p[d+8>>3];p[t+16>>3]=+p[d+16>>3];p[v>>3]=+p[e>>3];p[v+8>>3]=+p[e+8>>3];p[v+16>>3]=+p[e+16>>3];p[k>>3]=+p[g>>3];p[k+8>>3]=+p[g+8>>3];p[k+16>>3]=+p[g+16>>3];pza(t,v,k,l,m,s);d=f[a+12>>2]|0;if(!d)eHa(a,c,t,v,k,+p[l>>3],+p[m>>3],j);else Nh[f[(f[d>>2]|0)+20>>2]&3](d,c,t,v,k,+p[l>>3],+p[m>>3],j);u=x;return}q=s+4|0;f[q>>2]=f[d>>2];f[q+4>>2]=f[d+4>>2];f[q+8>>2]=f[d+8>>2];f[q+12>>2]=f[d+12>>2];f[q+16>>2]=f[d+16>>2];f[q+20>>2]=f[d+20>>2];f[t>>2]=f[e>>2];f[t+4>>2]=f[e+4>>2];f[t+8>>2]=f[e+8>>2];f[t+12>>2]=f[e+12>>2];f[t+16>>2]=f[e+16>>2];f[t+20>>2]=f[e+20>>2];f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];f[v+12>>2]=f[g+12>>2];f[v+16>>2]=f[g+16>>2];f[v+20>>2]=f[g+20>>2];q=o+276|0;r=o+280|0;d=f[r>>2]|0;l=o+284|0;o=f[l>>2]|0;e=o;if((d|0)==(o|0)){m=f[q>>2]|0;k=d-m|0;a=(k|0)/104|0;d=a+1|0;if(d>>>0>41297762)fob(q);o=(e-m|0)/104|0;e=o<<1;e=o>>>0<20648881?(e>>>0<d>>>0?d:e):41297762;do if(!e)w=0;else if(e>>>0>41297762)ud();else{w=Wpb(e*104|0)|0;break}while(0);g=w+(a*104|0)|0;f[g>>2]=c;d=w+(a*104|0)+4|0;f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];f[d+16>>2]=f[s+16>>2];f[d+20>>2]=f[s+20>>2];f[d+24>>2]=f[s+24>>2];d=w+(a*104|0)+32|0;f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];f[d+16>>2]=f[t+16>>2];f[d+20>>2]=f[t+20>>2];d=w+(a*104|0)+56|0;f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];f[d+16>>2]=f[v+16>>2];f[d+20>>2]=f[v+20>>2];p[w+(a*104|0)+80>>3]=h;p[w+(a*104|0)+88>>3]=i;f[w+(a*104|0)+96>>2]=j;d=g+(((k|0)/-104|0)*104|0)|0;if((k|0)>0)Irb(d|0,m|0,k|0)|0;f[q>>2]=d;f[r>>2]=g+104;f[l>>2]=w+(e*104|0);if(m|0)Zpb(m)}else{f[d>>2]=c;w=d+4|0;f[w>>2]=f[s>>2];f[w+4>>2]=f[s+4>>2];f[w+8>>2]=f[s+8>>2];f[w+12>>2]=f[s+12>>2];f[w+16>>2]=f[s+16>>2];f[w+20>>2]=f[s+20>>2];f[w+24>>2]=f[s+24>>2];w=d+32|0;f[w>>2]=f[t>>2];f[w+4>>2]=f[t+4>>2];f[w+8>>2]=f[t+8>>2];f[w+12>>2]=f[t+12>>2];f[w+16>>2]=f[t+16>>2];f[w+20>>2]=f[t+20>>2];w=d+56|0;f[w>>2]=f[v>>2];f[w+4>>2]=f[v+4>>2];f[w+8>>2]=f[v+8>>2];f[w+12>>2]=f[v+12>>2];f[w+16>>2]=f[v+16>>2];f[w+20>>2]=f[v+20>>2];p[d+80>>3]=h;p[d+88>>3]=i;f[d+96>>2]=j;f[r>>2]=(f[r>>2]|0)+104}u=x;return}function zya(a,c,d,e,g,h,i){a=a|0;c=+c;d=+d;e=+e;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+32|0;v=x;q=f[(f[a+8>>2]|0)+232>>2]|0;if(b[q+176>>0]|0){j=f[a+12>>2]|0;if(!j){fHa(a,c,d,e,g,h,i);u=x;return}else{jh[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g,h,i);u=x;return}}m=g+(h<<2)|0;f[v>>2]=0;w=v+4|0;f[w>>2]=0;f[v+8>>2]=0;o=g;j=h<<2;a=j>>2;if(!a){g=0;m=0;p=0}else{if(a>>>0>1073741823)fob(v);k=Wpb(j)|0;f[w>>2]=k;f[v>>2]=k;p=k+(a<<2)|0;f[v+8>>2]=p;l=k;if(!h){g=l;m=l}else{h=m+-4|0;j=g;a=k;while(1){f[a>>2]=f[j>>2];j=j+4|0;if((j|0)==(m|0))break;else a=a+4|0}m=k+(((h-o|0)>>>2)+1<<2)|0;f[w>>2]=m;g=l}}l=v+12|0;n[l>>2]=c;n[v+16>>2]=d;n[v+20>>2]=e;f[v+24>>2]=i;r=q+288|0;s=q+292|0;j=f[s>>2]|0;i=q+296|0;q=f[i>>2]|0;a=q;if(j>>>0<q>>>0){f[j>>2]=0;t=j+4|0;f[t>>2]=0;f[j+8>>2]=0;f[j>>2]=f[v>>2];f[t>>2]=f[w>>2];t=v+8|0;f[j+8>>2]=f[t>>2];f[t>>2]=0;f[w>>2]=0;f[v>>2]=0;t=j+12|0;f[t>>2]=f[l>>2];f[t+4>>2]=f[l+4>>2];f[t+8>>2]=f[l+8>>2];f[t+12>>2]=f[l+12>>2];f[s>>2]=(f[s>>2]|0)+28}else{h=f[r>>2]|0;k=(j-h|0)/28|0;j=k+1|0;if(j>>>0>153391689)fob(r);q=(a-h|0)/28|0;a=q<<1;a=q>>>0<76695844?(a>>>0<j>>>0?j:a):153391689;do if(!a)t=0;else if(a>>>0>153391689)ud();else{t=Wpb(a*28|0)|0;break}while(0);h=t+(k*28|0)|0;j=h;o=t+(a*28|0)|0;f[t+(k*28|0)+8>>2]=0;f[h>>2]=g;f[t+(k*28|0)+4>>2]=m;f[t+(k*28|0)+8>>2]=p;f[v+8>>2]=0;f[w>>2]=0;f[v>>2]=0;k=t+(k*28|0)+12|0;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];l=h+28|0;k=f[r>>2]|0;a=f[s>>2]|0;if((a|0)==(k|0)){m=k;h=k}else{do{t=h+-28|0;q=a;a=a+-28|0;f[t>>2]=0;g=h+-24|0;f[g>>2]=0;f[h+-20>>2]=0;f[t>>2]=f[a>>2];t=q+-24|0;f[g>>2]=f[t>>2];g=q+-20|0;f[h+-20>>2]=f[g>>2];f[g>>2]=0;f[t>>2]=0;f[a>>2]=0;t=h+-16|0;q=q+-16|0;f[t>>2]=f[q>>2];f[t+4>>2]=f[q+4>>2];f[t+8>>2]=f[q+8>>2];f[t+12>>2]=f[q+12>>2];h=j+-28|0;j=h}while((a|0)!=(k|0));m=f[r>>2]|0;h=f[s>>2]|0}f[r>>2]=j;f[s>>2]=l;f[i>>2]=o;l=m;if((h|0)!=(l|0))do{j=h;h=h+-28|0;k=f[h>>2]|0;if(k|0){j=j+-24|0;a=f[j>>2]|0;if((a|0)!=(k|0))f[j>>2]=a+(~((a+-4-k|0)>>>2)<<2);Zpb(k)}}while((h|0)!=(l|0));if(m|0)Zpb(m)}j=f[v>>2]|0;if(j|0){a=f[w>>2]|0;if((a|0)!=(j|0))f[w>>2]=a+(~((a+-4-j|0)>>>2)<<2);Zpb(j)}u=x;return}function Aya(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;m=q+16|0;n=q;i=f[(f[a+8>>2]|0)+232>>2]|0;if(b[i+176>>0]|0){h=f[a+12>>2]|0;if(!h){gHa(a,c,d,e,g);u=q;return}else{Kh[f[(f[h>>2]|0)+28>>2]&255](h,c,d,e,g);u=q;return}};f[m>>2]=f[d>>2];f[m+4>>2]=f[d+4>>2];f[m+8>>2]=f[d+8>>2];f[n>>2]=f[e>>2];f[n+4>>2]=f[e+4>>2];f[n+8>>2]=f[e+8>>2];k=i+300|0;l=i+304|0;h=f[l>>2]|0;i=i+308|0;j=f[i>>2]|0;a=j;if((h|0)==(j|0)){j=f[k>>2]|0;d=h-j|0;e=d>>5;h=e+1|0;if(h>>>0>134217727)fob(k);r=a-j|0;a=r>>4;h=r>>5>>>0<67108863?(a>>>0<h>>>0?h:a):134217727;do if(!h){o=0;p=0}else if(h>>>0>134217727)ud();else{p=Wpb(h<<5)|0;o=p;break}while(0);a=o+(e<<5)|0;f[a>>2]=c;r=o+(e<<5)+4|0;f[r>>2]=f[m>>2];f[r+4>>2]=f[m+4>>2];f[r+8>>2]=f[m+8>>2];r=o+(e<<5)+16|0;f[r>>2]=f[n>>2];f[r+4>>2]=f[n+4>>2];f[r+8>>2]=f[n+8>>2];f[o+(e<<5)+28>>2]=g;if((d|0)>0)Irb(p|0,j|0,d|0)|0;f[k>>2]=o;f[l>>2]=a+32;f[i>>2]=o+(h<<5);if(j|0)Zpb(j)}else{f[h>>2]=c;r=h+4|0;f[r>>2]=f[m>>2];f[r+4>>2]=f[m+4>>2];f[r+8>>2]=f[m+8>>2];r=h+16|0;f[r>>2]=f[n>>2];f[r+4>>2]=f[n+4>>2];f[r+8>>2]=f[n+8>>2];f[h+28>>2]=g;f[l>>2]=(f[l>>2]|0)+32}u=q;return}function Bya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){hHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+32>>2]&255](g,b,c,d,e);return}}function Cya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!b)b=f[(f[(f[a+8>>2]|0)+232>>2]|0)+168>>2]|0;e=f[a+12>>2]|0;if(!e){iHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+36>>2]&255](e,b,c,d);return}}function Dya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){jHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+40>>2]&255](g,b,c,d,e);return}}function Eya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){kHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+44>>2]&255](g,b,c,d,e);return}}function Fya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){lHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+48>>2]&255](e,b,c,d);return}}function Gya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){mHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+52>>2]&255](e,b,c,d);return}}function Hya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){nHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+56>>2]&255](g,b,c,d,e);return}}function Iya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){oHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+60>>2]&255](g,b,c,d,e);return}}function Jya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){pHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+64>>2]&255](g,b,c,d,e);return}}function Kya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){qHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+68>>2]&255](g,b,c,d,e);return}}function Lya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){rHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+72>>2]&255](g,b,c,d,e);return}}function Mya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+12>>2]|0;if(!d){sHa(a,b,c);return}else{wh[f[(f[d>>2]|0)+76>>2]&127](d,b,c);return}}function Nya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){tHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+80>>2]&255](g,b,c,d,e);return}}function Oya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){uHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+84>>2]&255](g,b,c,d,e);return}}function Pya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){vHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+88>>2]&255](e,b,c,d);return}}function Qya(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;i=f[a+12>>2]|0;if(!i){wHa(a,b,c,d,e,g,h);return}else{Wh[f[(f[i>>2]|0)+92>>2]&63](i,b,c,d,e,g,h);return}}function Rya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){xHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+96>>2]&255](e,b,c,d);return}}function Sya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){yHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+100>>2]&255](e,b,c,d);return}}function Tya(a,b,c,d,e,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=+g;h=+h;i=i|0;j=j|0;k=k|0;l=l|0;var m=0;m=f[a+12>>2]|0;if(!m){zHa(a,b,c,d,e,g,h,i,j,k,l);return}else{Gh[f[(f[m>>2]|0)+104>>2]&3](m,b,c,d,e,g,h,i,j,k,l);return}}function Uya(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0;r=f[a+12>>2]|0;if(!r){AHa(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q);return}else{di[f[(f[r>>2]|0)+108>>2]&7](r,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q);return}}function Vya(a,b,c,d,e,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;r=w;s=f[(f[a+8>>2]|0)+232>>2]|0;q=f[s+376>>2]|0;a:do if(q|0){p=q+-1|0;o=(p&q|0)==0;if(o)t=p&b;else if(q>>>0>b>>>0)t=b;else t=(b>>>0)%(q>>>0)|0;n=f[(f[s+372>>2]|0)+(t<<2)>>2]|0;if(n|0){n=f[n>>2]|0;if(n|0){b:do if(o)while(1){q=f[n+4>>2]|0;o=(q|0)==(b|0);if(!(o|(q&p|0)==(t|0)))break a;if(o)if((f[n+8>>2]|0)==(b|0))break b;n=f[n>>2]|0;if(!n)break a}else while(1){o=f[n+4>>2]|0;if((o|0)==(b|0)){if((f[n+8>>2]|0)==(b|0))break b}else{if(o>>>0>=q>>>0)o=(o>>>0)%(q>>>0)|0;if((o|0)!=(t|0))break a}n=f[n>>2]|0;if(!n)break a}while(0);f[r>>2]=b;a=lza(s+372|0,r)|0;s=a+8|0;t=a+12|0;n=f[t>>2]|0;a=a+16|0;b=f[a>>2]|0;o=b;if((n|0)==(b|0)){b=f[s>>2]|0;r=n-b|0;q=(r|0)/40|0;n=q+1|0;if(n>>>0>107374182)fob(s);p=(o-b|0)/40|0;o=p<<1;o=p>>>0<53687091?(o>>>0<n>>>0?n:o):107374182;do if(!o)v=0;else if(o>>>0>107374182)ud();else{v=Wpb(o*40|0)|0;break}while(0);p=v+(q*40|0)|0;f[p>>2]=c;f[v+(q*40|0)+4>>2]=d;f[v+(q*40|0)+8>>2]=e;f[v+(q*40|0)+12>>2]=g;f[v+(q*40|0)+16>>2]=h;f[v+(q*40|0)+20>>2]=i;f[v+(q*40|0)+24>>2]=j;f[v+(q*40|0)+28>>2]=k;f[v+(q*40|0)+32>>2]=l;f[v+(q*40|0)+36>>2]=m;n=p+(((r|0)/-40|0)*40|0)|0;if((r|0)>0)Irb(n|0,b|0,r|0)|0;f[s>>2]=n;f[t>>2]=p+40;f[a>>2]=v+(o*40|0);if(b|0)Zpb(b)}else{f[n>>2]=c;f[n+4>>2]=d;f[n+8>>2]=e;f[n+12>>2]=g;f[n+16>>2]=h;f[n+20>>2]=i;f[n+24>>2]=j;f[n+28>>2]=k;f[n+32>>2]=l;f[n+36>>2]=m;f[t>>2]=(f[t>>2]|0)+40}u=w;return}}}while(0);n=f[a+12>>2]|0;if(!n){BHa(a,b,c,d,e,g,h,i,j,k,l,m);u=w;return}else{$h[f[(f[n>>2]|0)+112>>2]&7](n,b,c,d,e,g,h,i,j,k,l,m);u=w;return}}function Wya(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;g=+g;h=+h;i=i|0;var j=0;j=f[a+12>>2]|0;if(!j){CHa(a,b,c,d,e,g,h,i);return}else{zh[f[(f[j>>2]|0)+116>>2]&3](j,b,c,d,e,g,h,i);return}}function Xya(a,b,c,d,e,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0;o=f[a+12>>2]|0;if(!o){DHa(a,b,c,d,e,g,h,i,j,k,l,m,n);return}else{ai[f[(f[o>>2]|0)+120>>2]&7](o,b,c,d,e,g,h,i,j,k,l,m,n);return}}function Yya(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;h=f[a+12>>2]|0;if(!h){EHa(a,b,c,d,e,g);return}else{Sh[f[(f[h>>2]|0)+124>>2]&63](h,b,c,d,e,g);return}}function Zya(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0;r=f[a+12>>2]|0;if(!r){FHa(a,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q);return}else{di[f[(f[r>>2]|0)+128>>2]&7](r,b,c,d,e,g,h,i,j,k,l,m,n,o,p,q);return}}function _ya(a,b,c,d,e,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0;o=f[a+12>>2]|0;if(!o){GHa(a,b,c,d,e,g,h,i,j,k,l,m,n);return}else{ai[f[(f[o>>2]|0)+132>>2]&7](o,b,c,d,e,g,h,i,j,k,l,m,n);return}}function $ya(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){HHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+136>>2]&255](g,b,c,d,e);return}}function aza(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){g=IHa(a,b,c,d,e)|0;return g|0}else{g=Ug[f[(f[g>>2]|0)+140>>2]&31](g,b,c,d,e)|0;return g|0}return 0}function bza(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;kza(f[(f[a+8>>2]|0)+232>>2]|0,a,c,d,e);return}function cza(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0;k=f[a+12>>2]|0;if(!k){KHa(a,b,c,d,e,g,h,i,j);return}else{Yh[f[(f[k>>2]|0)+148>>2]&7](k,b,c,d,e,g,h,i,j);return}}function dza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+12>>2]|0;if(!e){LHa(a,b,c,d);return}else{Eh[f[(f[e>>2]|0)+152>>2]&255](e,b,c,d);return}}function eza(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+12>>2]|0;if(!d){MHa(a,b,c);return}else{wh[f[(f[d>>2]|0)+156>>2]&127](d,b,c);return}}function fza(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+12>>2]|0;if(!d){NHa(a,b,c);return}else{wh[f[(f[d>>2]|0)+160>>2]&127](d,b,c);return}}function gza(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+12>>2]|0;if(!g){OHa(a,b,c,d,e);return}else{Kh[f[(f[g>>2]|0)+164>>2]&255](g,b,c,d,e);return}}function hza(a,b){a=a|0;b=b|0;var c=0;c=f[a+12>>2]|0;if(!c){PHa(a,b);return}else{nh[f[(f[c>>2]|0)+168>>2]&1023](c,b);return}}function iza(a,b){a=a|0;b=b|0;var c=0;c=f[a+12>>2]|0;if(!c){QHa(a,b);return}else{nh[f[(f[c>>2]|0)+172>>2]&1023](c,b);return}}function jza(a){a=a|0;return 0}function kza(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;q=v;f[q>>2]=c;g=a+172|0;if((f[g>>2]|0)==-1)f[g>>2]=d;h=f[a+8>>2]|0;Y$a(Ng[f[(f[h>>2]|0)+16>>2]&511](h)|0,b,c,d);h=lza(a+372|0,q)|0;b=h;f[b>>2]=d;f[b+4>>2]=e;e=h+8|0;b=f[e>>2]|0;g=h+12|0;if(!b)b=h+16|0;else{c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~(((c+-40-b|0)>>>0)/40|0)*40|0);Zpb(b);b=h+16|0;f[b>>2]=0;f[g>>2]=0;f[e>>2]=0}f[e>>2]=0;f[g>>2]=0;f[b>>2]=0;o=a+312|0;h=a+316|0;k=f[h>>2]|0;l=(k|0)==0;a:do if(l)b=0;else{e=k+-1|0;g=(e&k|0)==0;if(g)b=e&d;else if(k>>>0>d>>>0)b=d;else b=(d>>>0)%(k>>>0)|0;c=f[(f[o>>2]|0)+(b<<2)>>2]|0;if(c){if(g)do{c=f[c>>2]|0;if(!c)break a;g=f[c+4>>2]|0;if(!((g|0)==(d|0)|(g&e|0)==(b|0)))break a}while((f[c+8>>2]|0)!=(d|0));else do{c=f[c>>2]|0;if(!c)break a;g=f[c+4>>2]|0;if((g|0)!=(d|0)){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0;if((g|0)!=(b|0))break a}}while((f[c+8>>2]|0)!=(d|0));e=f[a+356>>2]|0;if(!e){u=v;return}g=e+-1|0;c=(g&e|0)==0;if(c)h=g&d;else if(e>>>0>d>>>0)h=d;else h=(d>>>0)%(e>>>0)|0;b=f[(f[a+352>>2]|0)+(h<<2)>>2]|0;if(!b){u=v;return}b=f[b>>2]|0;if(!b){u=v;return}b:do if(c){while(1){t=f[b+4>>2]|0;c=(t|0)==(d|0);if(!(c|(t&g|0)==(h|0))){s=91;break}if(c)if((f[b+8>>2]|0)==(d|0)){m=b;break b}b=f[b>>2]|0;if(!b){s=91;break}}if((s|0)==91){u=v;return}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(d|0)){m=b;break b}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(h|0)){s=91;break}}b=f[b>>2]|0;if(!b){s=91;break}}if((s|0)==91){u=v;return}}while(0);mza(a,f[q>>2]|0,+p[m+16>>3]);u=v;return}}while(0);e=Wpb(12)|0;f[e+8>>2]=d;f[e+4>>2]=d;f[e>>2]=0;m=a+324|0;i=+(((f[m>>2]|0)+1|0)>>>0);j=+n[a+328>>2];do if(l|j*+(k>>>0)<i){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(i/j))>>>0;Hia(o,b>>>0<c>>>0?c:b);b=f[h>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&d;break}if(b>>>0>d>>>0){g=b;b=d}else{g=b;b=(d>>>0)%(b>>>0)|0}}else g=k;while(0);c=(f[o>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+320|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;r=(f[o>>2]|0)+(b<<2)|0;s=37}}else{f[e>>2]=f[b>>2];r=b;s=37}if((s|0)==37)f[r>>2]=e;f[m>>2]=(f[m>>2]|0)+1;q=a+332|0;o=(d<<6)+-1640531526+(d>>>2)^d;h=a+336|0;k=f[h>>2]|0;l=(k|0)==0;c:do if(l)b=0;else{e=k+-1|0;g=(e&k|0)==0;if(g)b=e&o;else if(o>>>0<k>>>0)b=o;else b=(o>>>0)%(k>>>0)|0;c=f[(f[q>>2]|0)+(b<<2)>>2]|0;if(c){c=f[c>>2]|0;if(c){if(g){while(1){r=f[c+4>>2]|0;if(!((r|0)==(o|0)|(r&e|0)==(b|0)))break c;if((f[c+8>>2]|0)==(d|0))if((f[c+12>>2]|0)==1)break;c=f[c>>2]|0;if(!c)break c}u=v;return}while(1){g=f[c+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0;if((g|0)!=(b|0))break c}if((f[c+8>>2]|0)==(d|0))if((f[c+12>>2]|0)==1)break;c=f[c>>2]|0;if(!c)break c}u=v;return}}}while(0);m=Wpb(16)|0;e=m+8|0;f[e>>2]=d;f[e+4>>2]=1;f[m+4>>2]=o;f[m>>2]=0;e=a+344|0;i=+(((f[e>>2]|0)+1|0)>>>0);j=+n[a+348>>2];do if(l|j*+(k>>>0)<i){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(i/j))>>>0;Tka(q,b>>>0<c>>>0?c:b);b=f[h>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&o;break}if(o>>>0<b>>>0){g=b;b=o}else{g=b;b=(o>>>0)%(b>>>0)|0}}else g=k;while(0);b=(f[q>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){a=a+340|0;f[m>>2]=f[a>>2];f[a>>2]=m;f[b>>2]=a;b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;t=(f[q>>2]|0)+(b<<2)|0;s=70}}else{f[m>>2]=f[c>>2];t=c;s=70}if((s|0)==70)f[t>>2]=m;f[e>>2]=(f[e>>2]|0)+1;u=v;return}function lza(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;k=a+4|0;j=f[k>>2]|0;i=(j|0)==0;a:do if(i)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(j>>>0>m>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(32)|0;f[h+8>>2]=m;l=h+12|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);c=a+16|0;e=+n[c>>2];do if(i|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;i=~~+W(+(d/e))>>>0;b=b>>>0<i>>>0?i:b;if((b|0)==1){b=2;g=j}else if(!(b+-1&b))g=j;else{b=Meb(b)|0;g=f[k>>2]|0}if(b>>>0>g>>>0)oza(a,b);else if(b>>>0<g>>>0){c=~~+W(+(+((f[l>>2]|0)>>>0)/+n[c>>2]))>>>0;if(g>>>0>2&(g+-1&g|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0<g>>>0)oza(a,b)}b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(b>>>0>m>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=41}}else{f[h>>2]=f[b>>2];o=41}if((o|0)==41)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function mza(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=0;k=u;u=u+1984|0;h=f[(a+376|0)>>2]|0;if(!h){u=k;return}if(!((h+-1|0)&h))g=(h+-1|0)&b;else if(h>>>0>b>>>0)g=b;else g=(b>>>0)%(h>>>0)|0;d=f[(f[(a+372|0)>>2]|0)+(g<<2)>>2]|0;if(!d){u=k;return}d=f[d>>2]|0;if(!d){u=k;return}a:do if(!((h+-1|0)&h)){while(1){e=f[d+4>>2]|0;if(!((e|0)==(b|0)|(e&(h+-1|0)|0)==(g|0))){j=164;break}if((e|0)==(b|0))if((f[d+8>>2]|0)==(b|0)){i=d;break a}d=f[d>>2]|0;if(!d){j=164;break}}if((j|0)==164){u=k;return}}else{while(1){e=f[d+4>>2]|0;if((e|0)==(b|0)){if((f[d+8>>2]|0)==(b|0)){i=d;break a}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(g|0)){j=164;break}}d=f[d>>2]|0;if(!d){j=164;break}}if((j|0)==164){u=k;return}}while(0);e=f[a+8>>2]|0;d=f[e+236>>2]|0;e=xva(f[e+220>>2]|0,f[i+16>>2]|0)|0;e=f[e>>2]|0;g=i+12|0;h=1;if(h){h=0;if((f[g>>2]|0)==(f[(a+172|0)>>2]|0)){nza(k+200|0,a,e);l=f[(k+200|0)>>2]|0;f[(k+200|0)>>2]=f[(k+136|0)>>2];f[(k+136|0)>>2]=l;l=f[((k+200|0)+4|0)>>2]|0;f[((k+200|0)+4|0)>>2]=f[((k+136|0)+4|0)>>2];f[((k+136|0)+4|0)>>2]=l;l=f[((k+200|0)+8|0)>>2]|0;f[((k+200|0)+8|0)>>2]=f[((k+136|0)+8|0)>>2];f[((k+136|0)+8|0)>>2]=l;l=f[((k+200|0)+12|0)>>2]|0;f[((k+200|0)+12|0)>>2]=f[((k+136|0)+12|0)>>2];f[((k+136|0)+12|0)>>2]=l;l=f[((k+200|0)+16|0)>>2]|0;f[((k+200|0)+16|0)>>2]=f[((k+136|0)+16|0)>>2];f[((k+136|0)+16|0)>>2]=l;l=f[((k+200|0)+20|0)>>2]|0;f[((k+200|0)+20|0)>>2]=f[((k+136|0)+20|0)>>2];f[((k+136|0)+20|0)>>2]=l;l=f[((k+200|0)+24|0)>>2]|0;f[((k+200|0)+24|0)>>2]=f[((k+136|0)+24|0)>>2];f[((k+136|0)+24|0)>>2]=l;l=f[((k+200|0)+28|0)>>2]|0;f[((k+200|0)+28|0)>>2]=f[((k+136|0)+28|0)>>2];f[((k+136|0)+28|0)>>2]=l;l=f[((k+200|0)+32|0)>>2]|0;f[((k+200|0)+32|0)>>2]=f[((k+136|0)+32|0)>>2];f[((k+136|0)+32|0)>>2]=l;l=f[((k+200|0)+36|0)>>2]|0;f[((k+200|0)+36|0)>>2]=f[((k+136|0)+36|0)>>2];f[((k+136|0)+36|0)>>2]=l;l=f[((k+200|0)+40|0)>>2]|0;f[((k+200|0)+40|0)>>2]=f[((k+136|0)+40|0)>>2];f[((k+136|0)+40|0)>>2]=l;l=f[((k+200|0)+44|0)>>2]|0;f[((k+200|0)+44|0)>>2]=f[((k+136|0)+44|0)>>2];f[((k+136|0)+44|0)>>2]=l;l=f[((k+200|0)+48|0)>>2]|0;f[((k+200|0)+48|0)>>2]=f[((k+136|0)+48|0)>>2];f[((k+136|0)+48|0)>>2]=l;l=f[((k+200|0)+52|0)>>2]|0;f[((k+200|0)+52|0)>>2]=f[((k+136|0)+52|0)>>2];f[((k+136|0)+52|0)>>2]=l;l=f[((k+200|0)+56|0)>>2]|0;f[((k+200|0)+56|0)>>2]=f[((k+136|0)+56|0)>>2];f[((k+136|0)+56|0)>>2]=l;f[(k+136|0)+60>>2]=f[(k+200|0)+60>>2]}else h=1}f[k+288>>2]=a;f[k+296>>2]=b;n[k+304>>2]=c;f[k+544>>2]=i;f[k+1320>>2]=d;f[k+1448>>2]=e;f[k+1472>>2]=g;f[k+1872>>2]=j;f[k+1880>>2]=h;f[k+1888>>2]=0;f[k+1892>>2]=0;hAa(k);G=f[k+1888>>2]|0;D=f[k+1892>>2]|0;H=+n[k+1892>>2];f[k+1888>>2]=0;f[k+1892>>2]=0;if((G|0)==5)return}function nza(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0,q=0,r=0;r=u;u=u+208|0;m=r+136|0;o=r+64|0;q=r;if(!(b[c+260>>0]|0)){n[a>>2]=1.0;k=a+4|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+20>>2]=1.0;k=a+24|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+40>>2]=1.0;k=a+44|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[a+60>>2]=1.0}else{f[a>>2]=f[c+196>>2];f[a+4>>2]=f[c+200>>2];f[a+8>>2]=f[c+204>>2];f[a+12>>2]=f[c+208>>2];f[a+16>>2]=f[c+212>>2];f[a+20>>2]=f[c+216>>2];f[a+24>>2]=f[c+220>>2];f[a+28>>2]=f[c+224>>2];f[a+32>>2]=f[c+228>>2];f[a+36>>2]=f[c+232>>2];f[a+40>>2]=f[c+236>>2];f[a+44>>2]=f[c+240>>2];f[a+48>>2]=f[c+244>>2];f[a+52>>2]=f[c+248>>2];f[a+56>>2]=f[c+252>>2];f[a+60>>2]=f[c+256>>2]}if(d|0){f[o>>2]=a;f[o+4>>2]=d;bda(m,o)|0;f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[a+16>>2]=f[m+16>>2];f[a+20>>2]=f[m+20>>2];f[a+24>>2]=f[m+24>>2];f[a+28>>2]=f[m+28>>2];f[a+32>>2]=f[m+32>>2];f[a+36>>2]=f[m+36>>2];f[a+40>>2]=f[m+40>>2];f[a+44>>2]=f[m+44>>2];f[a+48>>2]=f[m+48>>2];f[a+52>>2]=f[m+52>>2];f[a+56>>2]=f[m+56>>2];f[a+60>>2]=f[m+60>>2]}l=+p[c+184>>3];j=f[c+172>>2]|0;i=f[c+356>>2]|0;a:do if(!i)e=1.0;else{h=i+-1|0;g=(h&i|0)==0;if(g)k=h&j;else if(j>>>0<i>>>0)k=j;else k=(j>>>0)%(i>>>0)|0;d=f[(f[c+352>>2]|0)+(k<<2)>>2]|0;if(!d)e=1.0;else{d=f[d>>2]|0;if(!d)e=1.0;else{b:do if(g)while(1){i=f[d+4>>2]|0;c=(j|0)==(i|0);if(!(c|(i&h|0)==(k|0))){e=1.0;break a}if(c)if((f[d+8>>2]|0)==(j|0))break b;d=f[d>>2]|0;if(!d){e=1.0;break a}}else while(1){c=f[d+4>>2]|0;if((j|0)==(c|0)){if((f[d+8>>2]|0)==(j|0))break b}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(k|0)){e=1.0;break a}}d=f[d>>2]|0;if(!d){e=1.0;break a}}while(0);e=+p[d+16>>3];if(e==0.0)e=l}}}while(0);d=l==0.0|e==0.0;e=e/l;if(!((d?1.0:e)!=1.0)){u=r;return}l=d?1.0:e;k=q+4|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;k=q+24|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;k=q+44|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[q>>2]=l;n[q+20>>2]=l;n[q+40>>2]=l;n[q+60>>2]=1.0;f[o>>2]=a;f[o+4>>2]=q;bda(m,o)|0;f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[a+16>>2]=f[m+16>>2];f[a+20>>2]=f[m+20>>2];f[a+24>>2]=f[m+24>>2];f[a+28>>2]=f[m+28>>2];f[a+32>>2]=f[m+32>>2];f[a+36>>2]=f[m+36>>2];f[a+40>>2]=f[m+40>>2];f[a+44>>2]=f[m+44>>2];f[a+48>>2]=f[m+48>>2];f[a+52>>2]=f[m+52>>2];f[a+56>>2]=f[m+56>>2];f[a+60>>2]=f[m+60>>2];u=r;return}function oza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function pza(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,q=0.0,r=0,s=0.0,t=0,v=0.0,w=0.0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0;g=u;u=u+16|0;h=g;p[h>>3]=1.0e-12;if(qza(f,h)|0){u=g;return}l=+p[d>>3];O=+K(+l);j=+p[e>>3];E=+K(+j);S=+p[c>>3];n=c+8|0;i=+p[n>>3];h=c+16|0;Q=+p[h>>3];m=+L(+(S*S+(i*i+Q*Q)));S=E*(S/m);i=E*(i/m);m=E*(Q/m);Q=+p[b>>3];E=+p[a>>3]-Q;F=a+8|0;t=b+8|0;R=+p[t>>3];C=+p[F>>3]-R;x=a+16|0;r=b+16|0;s=+p[r>>3];A=+p[x>>3]-s;o=i*A-m*C;q=m*E-S*A;P=S*C-i*E;k=+L(+(o*o+(P*P+q*q)));o=Q+O*(o/k);q=R+O*(q/k);k=s+O*(P/k);S=Q+S;i=i+R;m=m+s;E=Q+E;C=R+C;A=s+A;P=+p[f>>3];O=+p[f+32>>3];N=+p[f+64>>3];J=+p[f+8>>3];I=+p[f+40>>3];H=+p[f+72>>3];D=+p[f+16>>3];B=+p[f+48>>3];z=+p[f+80>>3];M=+p[f+96>>3];w=Q*P+R*O+s*N+M;G=+p[f+104>>3];v=Q*J+R*I+s*H+G;y=+p[f+112>>3];s=Q*D+R*B+s*z+y;R=N*k+(P*o+O*q)+M-w;Q=J*o+q*I+k*H+G-v;k=o*D+q*B+k*z+y-s;q=S*P+i*O+m*N+M-w;o=S*J+i*I+m*H+G-v;m=S*D+i*B+m*z+y-s;i=+L(+(q*q+(o*o+m*m)));k=+L(+(R*R+(Q*Q+k*k)));p[a>>3]=w+(E*P+C*O+A*N+M-w);p[F>>3]=v+(E*J+C*I+A*H+G-v);p[x>>3]=s+(E*D+C*B+A*z+y-s);p[b>>3]=w;p[t>>3]=v;p[r>>3]=s;p[c>>3]=q/i;p[n>>3]=o/i;p[h>>3]=m/i;p[d>>3]=l<0.0?-k:k;p[e>>3]=j<0.0?-i:i;u=g;return}function qza(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+p[b>>3];d=+p[a>>3];e=+K(+(d+-1.0));d=+K(+d);if(!(e<=(d>1.0?1.0:d)*c)){a=0;return a|0}if(!(+K(+(+p[a+8>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+16>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+24>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+32>>3]))<=c)){a=0;return a|0}e=+p[a+40>>3];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}if(!(+K(+(+p[a+48>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+56>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+64>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+72>>3]))<=c)){a=0;return a|0}e=+p[a+80>>3];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}if(!(+K(+(+p[a+88>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+96>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+104>>3]))<=c)){a=0;return a|0}if(!(+K(+(+p[a+112>>3]))<=c)){a=0;return a|0}e=+p[a+120>>3];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}a=1;return a|0}function rza(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;g=a+344|0;b=f[g>>2]|0;if(!b)if(!(f[a+384>>2]|0)){JEa(a,8);JEa(a,1);JEa(a,0);JEa(a,4);JEa(a,6);KEa(a);sza(a);u=k;return}e=a+340|0;c=f[e>>2]|0;if(c){d=a+352|0;b=c;do{i=yza(d,b+8|0)|0;p[i>>3]=0.0;b=f[b>>2]|0}while((b|0)!=0);b=f[g>>2]|0}if(b|0){b=f[e>>2]|0;if(b|0)do{i=b;b=f[b>>2]|0;Zpb(i)}while((b|0)!=0);f[e>>2]=0;c=f[a+336>>2]|0;if(c|0){d=a+332|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}xza(a);f[j>>2]=0;i=j+4|0;f[i>>2]=0;f[j+8>>2]=0;b=f[a+380>>2]|0;if(b|0){h=j+8|0;e=0;g=0;while(1){d=b;c=d+8|0;d=d+12|0;if(e>>>0<g>>>0){g=f[d>>2]|0;f[e>>2]=f[c>>2];f[e+4>>2]=g;f[i>>2]=e+8}else zza(j,c,d);b=f[b>>2]|0;if(!b)break;e=f[i>>2]|0;g=f[h>>2]|0}c=f[j>>2]|0;b=f[i>>2]|0;if((c|0)!=(b|0)){d=a+352|0;do{h=yza(d,c+4|0)|0;mza(a,f[c>>2]|0,+p[h>>3]);c=c+8|0}while((c|0)!=(b|0));b=f[j>>2]|0}if(b|0){c=f[i>>2]|0;if((c|0)!=(b|0))f[i>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}JEa(a,8);JEa(a,1);JEa(a,0);JEa(a,4);JEa(a,6);KEa(a);sza(a);u=k;return}function sza(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+96|0;w=x+64|0;t=x+36|0;q=x+8|0;r=x+4|0;s=x;h=x+60|0;m=x+56|0;n=x+52|0;o=x+48|0;p=x+32|0;v=a+8|0;j=f[v>>2]|0;switch(f[a+28>>2]|0){case 1:{h=a+52|0;i=a+56|0;if((f[h>>2]|0)!=(f[i>>2]|0)){e=f[j+220>>2]|0;c=f[j+236>>2]|0;f[w>>2]=1065353216;f[w+4>>2]=1065353216;f[w+8>>2]=1065353216;d=w+12|0;f[d>>2]=0;f[w+16>>2]=0;f[w+20>>2]=0;wka(e,1,0,w);e=f[a+172>>2]|0;g=f[c+12>>2]|0;if(!g)SHa(c,e,w,d,0,1);else Sh[f[(f[g>>2]|0)+180>>2]&63](g,e,w,d,0,1)}d=a+48|0;c=f[d>>2]|0;if(c|0)if(!(b[a+64>>0]|0)){nh[f[(f[c>>2]|0)+8>>2]&1023](c,h);c=f[d>>2]|0;f[d>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[h>>2]|0;if(!c)c=a+60|0;else{d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);c=a+60|0;f[c>>2]=0;f[i>>2]=0;f[h>>2]=0}f[h>>2]=0;f[i>>2]=0;f[c>>2]=0}tza(j+200|0,f[a+168>>2]|0);p=a+100|0;c=f[p>>2]|0;o=a+104|0;i=f[o>>2]|0;if((c|0)!=(i|0)){j=q+4|0;k=q+8|0;l=q+12|0;m=q+16|0;n=q+20|0;do{h=(b[c+20>>0]|0)!=0;d=(b[c+21>>0]|0)!=0;e=f[c+24>>2]|0;g=f[(f[v>>2]|0)+220>>2]|0;y=f[c+4>>2]|0;f[t>>2]=y;f[q>>2]=1065353216;f[j>>2]=1065353216;f[k>>2]=1065353216;f[l>>2]=0;f[m>>2]=0;f[n>>2]=0;if(!y)wka(g,h,d,q);else yka(g,f[c>>2]|0,t,h,d,q);f[r>>2]=e;f[w>>2]=f[r>>2];ZGa(a,w,q);f[s>>2]=e;f[w>>2]=f[s>>2];DGa(a,w,16);c=c+28|0}while((c|0)!=(i|0));c=f[p>>2]|0}if(!c)c=a+108|0;else{d=f[o>>2]|0;if((d|0)!=(c|0)){do{e=d+-28|0;f[o>>2]=e;g=d+-20|0;h=f[g>>2]|0;i=d+-16|0;if((h|0)==(f[i>>2]|0)){d=f[e>>2]|0;if(!d)d=h;else{_pb(d);d=f[g>>2]|0}}else d=h;if(d|0){e=f[i>>2]|0;if((e|0)!=(d|0))f[i>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d)}d=f[o>>2]|0}while((d|0)!=(c|0));c=f[p>>2]|0}Zpb(c);c=a+108|0;f[c>>2]=0;f[o>>2]=0;f[p>>2]=0}f[p>>2]=0;f[o>>2]=0;f[c>>2]=0;u=x;return}case 2:{l=f[j+220>>2]|0;g=a+136|0;d=a+144|0;c=f[d>>2]|0;if(c|0)do{y=c;Eh[f[(f[a>>2]|0)+116>>2]&255](a,f[y+8>>2]|0,f[y+12>>2]|0,f[y+16>>2]|0);c=f[c>>2]|0}while((c|0)!=0);e=a+148|0;if(f[e>>2]|0){c=f[d>>2]|0;if(c|0)do{y=c;c=f[c>>2]|0;Zpb(y)}while((c|0)!=0);f[d>>2]=0;d=f[a+140>>2]|0;if(d|0){c=0;do{f[(f[g>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[e>>2]=0}c=f[g>>2]|0;f[g>>2]=0;if(c|0)Zpb(c);f[a+140>>2]=0;f[e>>2]=0;f[a+152>>2]=1065353216;f[a+144>>2]=0;g=a+68|0;d=a+76|0;c=f[d>>2]|0;if(c|0)do{y=c;uza(a,l,y+12|0,f[y+8>>2]|0);c=f[c>>2]|0}while((c|0)!=0);e=a+80|0;if(f[e>>2]|0){c=f[d>>2]|0;if(c|0)do{y=c;c=f[c>>2]|0;Zpb(y)}while((c|0)!=0);f[d>>2]=0;d=f[a+72>>2]|0;if(d|0){c=0;do{f[(f[g>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[e>>2]=0}c=f[g>>2]|0;f[g>>2]=0;if(c|0)Zpb(c);f[a+72>>2]=0;f[e>>2]=0;f[a+84>>2]=1065353216;f[a+76>>2]=0;e=a+88|0;c=f[e>>2]|0;g=a+92|0;d=f[g>>2]|0;if((c|0)!=(d|0)){do{f[h>>2]=f[c>>2];y=f[c+4>>2]|0;f[w>>2]=f[h>>2];DGa(a,w,y);c=c+8|0}while((c|0)!=(d|0));c=f[e>>2]|0}if(!c)c=a+96|0;else{d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);c=a+96|0;f[c>>2]=0;f[g>>2]=0;f[e>>2]=0}f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;j=a+156|0;c=f[j>>2]|0;k=a+160|0;g=f[k>>2]|0;if((c|0)!=(g|0)){h=t+4|0;i=t+8|0;do{d=c+4|0;if(iYa(l,f[d>>2]|0)|0){f[t>>2]=0;f[h>>2]=0;f[i>>2]=0;nYa(l,f[d>>2]|0,f[c+8>>2]|0,t);f[m>>2]=f[c>>2];y=f[t>>2]|0;d=(f[h>>2]|0)-y>>3;f[w>>2]=f[m>>2];TGa(a,w,y,d);f[n>>2]=f[c>>2];f[w>>2]=f[n>>2];DGa(a,w,11);d=f[t>>2]|0;if(d|0){e=f[h>>2]|0;if((e|0)!=(d|0))f[h>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d)}}c=c+12|0}while((c|0)!=(g|0));c=f[j>>2]|0}if(!c)c=a+164|0;else{d=f[k>>2]|0;if((d|0)!=(c|0))f[k>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);c=a+164|0;f[c>>2]=0;f[k>>2]=0;f[j>>2]=0}f[j>>2]=0;f[k>>2]=0;f[c>>2]=0;i=a+112|0;c=f[i>>2]|0;j=a+116|0;h=f[j>>2]|0;if((c|0)!=(h|0)){do{g=f[c>>2]|0;d=(zva(f[(f[v>>2]|0)+220>>2]|0)|0)+8|0;d=f[d>>2]|0;a:do if(d|0){while(1){e=f[d+12>>2]|0;if(!(Lla(e)|0))break;d=f[d>>2]|0;if(!d)break a}s=f[v>>2]|0;y=f[s+228>>2]|0;Dva(f[s+220>>2]|0,s,f[e+4>>2]|0)|0;ANa(y)}while(0);f[t>>2]=g;f[w>>2]=f[t>>2];DGa(a,w,14);c=c+4|0}while((c|0)!=(h|0));c=f[i>>2]|0}if(!c)c=a+120|0;else{d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);c=a+120|0;f[c>>2]=0;f[j>>2]=0;f[i>>2]=0}f[i>>2]=0;f[j>>2]=0;f[c>>2]=0;e=a+124|0;c=f[e>>2]|0;g=a+128|0;d=f[g>>2]|0;if((c|0)!=(d|0)){do{f[o>>2]=f[c>>2];f[w>>2]=f[o>>2];DGa(a,w,17);c=c+4|0}while((c|0)!=(d|0));c=f[e>>2]|0}if(!c)c=a+132|0;else{d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);c=a+132|0;f[c>>2]=0;f[g>>2]=0;f[e>>2]=0}f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;h=a+32|0;c=f[h>>2]|0;i=a+36|0;e=f[i>>2]|0;if((c|0)!=(e|0)){g=a+44|0;do{d=f[c>>2]|0;if(b[g>>0]|0){b[g>>0]=0;rFa(a,1)}y=f[(f[a>>2]|0)+52>>2]|0;f[p>>2]=d;f[w>>2]=f[p>>2];nh[y&1023](a,w);c=c+4|0}while((c|0)!=(e|0));c=f[h>>2]|0}if(!c)c=a+40|0;else{d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c);c=a+40|0;f[c>>2]=0;f[i>>2]=0;f[h>>2]=0}f[h>>2]=0;f[i>>2]=0;f[c>>2]=0;d=a+48|0;c=f[d>>2]|0;if(!c)e=a+52|0;else{e=a+52|0;nh[f[(f[c>>2]|0)+8>>2]&1023](c,e);c=f[d>>2]|0;f[d>>2]=0;if(c)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}c=a+52|0;d=f[c>>2]|0;h=a+56|0;if(!d)c=a+60|0;else{g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d);y=a+60|0;f[y>>2]=0;f[h>>2]=0;f[c>>2]=0;c=y}f[e>>2]=0;f[h>>2]=0;f[c>>2]=0;c=a+44|0;if(!(b[c>>0]|0)){u=x;return}b[c>>0]=0;rFa(a,0);u=x;return}default:{u=x;return}}}function tza(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;h=m;d=f[a>>2]|0;l=a+4|0;i=f[l>>2]|0;if((d|0)==(i|0)){u=m;return}j=h+16|0;do{g=d+16|0;e=f[g>>2]|0;if(e|0){f[h>>2]=c;nh[f[(f[e>>2]|0)+24>>2]&1023](e,h);if(b[d+24>>0]|0){f[j>>2]=0;e=f[g>>2]|0;if((d|0)==(e|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);f[g>>2]=0;e=f[j>>2]|0;do if(!e){f[g>>2]=0;k=15}else if((h|0)==(e|0)){f[g>>2]=d;k=f[j>>2]|0;nh[f[(f[k>>2]|0)+12>>2]&1023](k,d);k=15;break}else{f[g>>2]=e;f[j>>2]=0;e=0;g=0;break}while(0);if((k|0)==15){k=0;g=f[j>>2]|0;e=g}if((h|0)==(e|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g)}}d=d+32|0}while((d|0)!=(i|0));d=f[l>>2]|0;if((f[a>>2]|0)==(d|0)){u=m;return}while(1){if(!(f[d+-16>>2]|0)){e=d;g=0;c=0}else{k=30;break}d=d+-32|0;while(1){k=e+-32|0;f[l>>2]=k;if((k|0)==(g|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);e=f[l>>2]|0;if((e|0)==(d|0))break;c=f[e+-16>>2]|0;g=c}if((f[a>>2]|0)==(d|0)){k=30;break}}if((k|0)==30){u=m;return}}function uza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;e=l+32|0;g=l+24|0;h=l+16|0;i=l+8|0;j=l;switch(d|0){case 0:{owa(j,b,c);b=(f[j>>2]|0)!=0;e=f[j+4>>2]|0;if(!e)k=14;else{Ppb(e);if(b){u=l;return}}break}case 2:{if(vza(b,c)|0){u=l;return}break}case 4:{kwa(e,b,c);b=(f[e>>2]|0)!=0;e=f[e+4>>2]|0;if(!e)k=14;else{Ppb(e);if(b){u=l;return}}break}case 6:{if(wza(b,c)|0){u=l;return}break}case 8:{pwa(g,b,c);b=(f[g>>2]|0)!=0;e=f[g+4>>2]|0;if(!e)k=14;else{Ppb(e);if(b){u=l;return}}break}case 7:{lwa(h,b,c);b=(f[h>>2]|0)!=0;e=f[h+4>>2]|0;if(!e)k=14;else{Ppb(e);if(b){u=l;return}}break}case 1:{hwa(i,b,c);b=(f[i>>2]|0)!=0;e=f[i+4>>2]|0;if(!e)k=14;else{Ppb(e);if(b){u=l;return}}break}default:{}}if((k|0)==14)if(b){u=l;return}d=Zra(d)|0;k=(zEa(a,c,d)|0)<<24>>24==2;IGa(a,c,d,k?1:2);u=l;return}function vza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;a=_wa(a,f[b>>2]|0)|0;if(!a){g=0;return g|0}g=f[b+4>>2]|0;d=f[a+24>>2]|0;a:do if(!d)a=0;else{c=d+-1|0;b=(c&d|0)==0;if(b)e=c&g;else if(g>>>0<d>>>0)e=g;else e=(g>>>0)%(d>>>0)|0;a=f[(f[a+20>>2]|0)+(e<<2)>>2]|0;if(!a)a=0;else{a=f[a>>2]|0;if(!a)a=0;else{if(b)while(1){d=f[a+4>>2]|0;b=(g|0)==(d|0);if(!(b|(d&c|0)==(e|0))){a=0;break a}if(b)if((f[a+8>>2]|0)==(g|0))break a;a=f[a>>2]|0;if(!a){a=0;break a}}while(1){b=f[a+4>>2]|0;if((g|0)==(b|0)){if((f[a+8>>2]|0)==(g|0))break a}else{if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;if((b|0)!=(e|0)){a=0;break a}}a=f[a>>2]|0;if(!a){a=0;break}}}}}while(0);g=(a|0)!=0;return g|0}function wza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;a=_wa(a,f[b>>2]|0)|0;if(!a){g=0;return g|0}g=f[b+4>>2]|0;d=f[a+64>>2]|0;a:do if(!d)a=0;else{c=d+-1|0;b=(c&d|0)==0;if(b)e=c&g;else if(g>>>0<d>>>0)e=g;else e=(g>>>0)%(d>>>0)|0;a=f[(f[a+60>>2]|0)+(e<<2)>>2]|0;if(!a)a=0;else{a=f[a>>2]|0;if(!a)a=0;else{if(b)while(1){d=f[a+4>>2]|0;b=(g|0)==(d|0);if(!(b|(d&c|0)==(e|0))){a=0;break a}if(b)if((f[a+8>>2]|0)==(g|0))break a;a=f[a>>2]|0;if(!a){a=0;break a}}while(1){b=f[a+4>>2]|0;if((g|0)==(b|0)){if((f[a+8>>2]|0)==(g|0))break a}else{if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;if((b|0)!=(e|0)){a=0;break a}}a=f[a>>2]|0;if(!a){a=0;break}}}}}while(0);g=(a|0)!=0;return g|0}function xza(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=f[(f[a+8>>2]|0)+236>>2]|0;c=a+276|0;b=f[c>>2]|0;e=a+280|0;d=f[e>>2]|0;if((b|0)!=(d|0)){do{Nh[f[(f[h>>2]|0)+20>>2]&3](h,f[b>>2]|0,b+8|0,b+32|0,b+56|0,+p[b+80>>3],+p[b+88>>3],f[b+96>>2]|0);b=b+104|0}while((b|0)!=(d|0));b=f[c>>2]|0;c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~(((c+-104-b|0)>>>0)/104|0)*104|0)}c=a+288|0;b=f[c>>2]|0;g=a+292|0;d=f[g>>2]|0;if((b|0)!=(d|0)){do{e=f[b>>2]|0;jh[f[(f[h>>2]|0)+24>>2]&3](h,+n[b+12>>2],+n[b+16>>2],+n[b+20>>2],e,(f[b+4>>2]|0)-e>>2,f[b+24>>2]|0);b=b+28|0}while((b|0)!=(d|0));e=f[c>>2]|0;b=f[g>>2]|0;if((b|0)!=(e|0))do{c=b+-28|0;f[g>>2]=c;d=f[c>>2]|0;if(!d)b=c;else{b=b+-24|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d);b=f[g>>2]|0}}while((b|0)!=(e|0))}d=a+300|0;b=f[d>>2]|0;e=a+304|0;c=f[e>>2]|0;if((b|0)==(c|0))return;do{Kh[f[(f[h>>2]|0)+28>>2]&255](h,f[b>>2]|0,b+4|0,b+16|0,f[b+28>>2]|0);b=b+32|0}while((b|0)!=(c|0));b=f[d>>2]|0;c=f[e>>2]|0;if((c|0)==(b|0))return;f[e>>2]=c+(~((c+-32-b|0)>>>5)<<5);return}function yza(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}}while(0);h=Wpb(24)|0;f[h+8>>2]=m;p[h+16>>3]=0.0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;Aza(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+16|0;return a|0}function zza(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)ud();else{j=Wpb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;n=f[c>>2]|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=n;if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;Zpb(k);return}function Aza(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Bza(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;Bza(a,b);return}function Bza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function Cza(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=29860;b=f[a+408>>2]|0;if((a+392|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);b=f[a+380>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0){e=c+24|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~(((g+-40-d|0)>>>0)/40|0)*40|0);Zpb(d)}Zpb(c)}while((b|0)!=0);j=a+372|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+360>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);j=a+352|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+340>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);j=a+332|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+320>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);j=a+312|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+300>>2]|0;if(b|0){c=a+304|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-32-b|0)>>>5)<<5);Zpb(b)}g=a+288|0;b=f[g>>2]|0;if(b|0){h=a+292|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-24|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}b=f[a+276>>2]|0;if(b|0){c=a+280|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-104-b|0)>>>0)/104|0)*104|0);Zpb(b)}h=a+264|0;b=f[h>>2]|0;if(b|0){g=a+268|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-20|0;f[g>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Zpb(e);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[h>>2]|0}Zpb(b)}b=f[a+156>>2]|0;if(b|0){c=a+160|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+144>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);j=a+136|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+124>>2]|0;if(b|0){c=a+128|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+112>>2]|0;if(b|0){c=a+116|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}i=a+100|0;b=f[i>>2]|0;if(b|0){j=a+104|0;c=f[j>>2]|0;if((c|0)!=(b|0)){do{d=c+-28|0;f[j>>2]=d;e=c+-20|0;g=f[e>>2]|0;h=c+-16|0;do if((g|0)==(f[h>>2]|0)){c=f[d>>2]|0;if(!c){c=g;break}_pb(c);c=f[e>>2]|0}else c=g;while(0);if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[j>>2]|0}while((c|0)!=(b|0));b=f[i>>2]|0}Zpb(b)}b=f[a+88>>2]|0;if(b|0){c=a+92|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+76>>2]|0;if(b|0)do{j=b;b=f[b>>2]|0;Zpb(j)}while((b|0)!=0);j=a+68|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)Zpb(b);b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}j=a+48|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[a+32>>2]|0;if(!b){j=a+16|0;MAa(j);OCa(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);j=a+16|0;MAa(j);OCa(a);return}function Dza(a){a=a|0;Cza(a);Zpb(a);return}function Eza(a){a=a|0;var b=0,c=0;c=a+48|0;b=f[c>>2]|0;if(b|0){nh[f[(f[b>>2]|0)+16>>2]&1023](b,1);b=f[c>>2]|0;f[c>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}QCa(a);return}function Fza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=a+56|0;d=f[c>>2]|0;if((d|0)==(f[a+60>>2]|0)){xB(a+52|0,b);RCa(a,b);return}else{g=b;e=f[g+4>>2]|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[c>>2]=(f[c>>2]|0)+8;RCa(a,b);return}}function Gza(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+80|0;y=A+40|0;r=A;s=A+8|0;SCa(a,c,d);x=a+332|0;z=a+344|0;if(!(f[z>>2]|0)){u=A;return}q=Uka(x,c)|0;if(!q){u=A;return}t=a+336|0;l=f[t>>2]|0;e=f[q+4>>2]|0;m=l+-1|0;o=(m&l|0)==0;if(o)e=m&e;else if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;j=(f[x>>2]|0)+(e<<2)|0;p=f[j>>2]|0;while(1){g=f[p>>2]|0;if((g|0)==(q|0))break;else p=g}v=a+340|0;if((p|0)==(v|0))w=16;else{g=f[p+4>>2]|0;if(o)g=g&m;else if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)==(e|0))k=q;else w=16}do if((w|0)==16){g=f[q>>2]|0;if(g|0){g=f[g+4>>2]|0;if(o)g=g&m;else if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)==(e|0)){k=q;break}}f[j>>2]=0;k=q}while(0);g=f[k>>2]|0;j=g;if(!g)e=j;else{g=f[g+4>>2]|0;if(o)g=g&m;else if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)==(e|0))e=j;else{f[(f[x>>2]|0)+(g<<2)>>2]=p;e=f[q>>2]|0}}f[p>>2]=e;f[k>>2]=0;f[z>>2]=(f[z>>2]|0)+-1;Zpb(q);if(d<<24>>24){GAa(a,f[c>>2]|0,0);u=A;return}g=c+4|0;do if((f[g>>2]|0)==1){pwa(r,f[(f[a+8>>2]|0)+220>>2]|0,c);f$a(y,(f[r>>2]|0)+8|0);e=f[r+4>>2]|0;if(e|0)Ppb(e);d=s+4|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;e=s+20|0;f[e>>2]=0;if(!(w$a(y,s)|0)){if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);e=y+12|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);break}m=f[c>>2]|0;l=f[e>>2]|0;q=l+-1640531527+(m<<6)+(m>>>2)^m;o=f[t>>2]|0;p=(o|0)==0;a:do if(p){e=0;w=55}else{k=o+-1|0;j=(k&o|0)==0;if(j)e=q&k;else if(q>>>0<o>>>0)e=q;else e=(q>>>0)%(o>>>0)|0;g=f[(f[x>>2]|0)+(e<<2)>>2]|0;if(!g)w=55;else{g=f[g>>2]|0;if(!g)w=55;else{if(j)while(1){c=f[g+4>>2]|0;if(!((c|0)==(q|0)|(c&k|0)==(e|0))){w=55;break a}if((f[g+8>>2]|0)==(m|0))if((f[g+12>>2]|0)==(l|0))break a;g=f[g>>2]|0;if(!g){w=55;break a}}while(1){j=f[g+4>>2]|0;if((j|0)!=(q|0)){if(j>>>0>=o>>>0)j=(j>>>0)%(o>>>0)|0;if((j|0)!=(e|0)){w=55;break a}}if((f[g+8>>2]|0)==(m|0))if((f[g+12>>2]|0)==(l|0))break a;g=f[g>>2]|0;if(!g){w=55;break}}}}}while(0);if((w|0)==55){k=Wpb(16)|0;c=k+8|0;f[c>>2]=m;f[c+4>>2]=l;f[k+4>>2]=q;f[k>>2]=0;i=+(((f[z>>2]|0)+1|0)>>>0);h=+n[a+348>>2];do if(p|h*+(o>>>0)<i){e=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;g=~~+W(+(i/h))>>>0;Tka(x,e>>>0<g>>>0?g:e);e=f[t>>2]|0;g=e+-1|0;if(!(g&e)){j=e;e=g&q;break}if(q>>>0<e>>>0){j=e;e=q}else{j=e;e=(q>>>0)%(e>>>0)|0}}else j=o;while(0);g=(f[x>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[k>>2]=f[v>>2];f[v>>2]=k;f[g>>2]=v;e=f[k>>2]|0;if(e|0){e=f[e+4>>2]|0;g=j+-1|0;if(!(g&j))e=e&g;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;e=(f[x>>2]|0)+(e<<2)|0;w=68}}else{f[k>>2]=f[e>>2];w=68}if((w|0)==68)f[e>>2]=k;f[z>>2]=(f[z>>2]|0)+1}if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);e=y+12|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);u=A;return}while(0);GAa(a,f[c>>2]|0,g);u=A;return}function Hza(a){a=a|0;return 1}function Iza(a){a=a|0;return}function Jza(a){a=a|0;return 1}function Kza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Lza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=u;u=u+16|0;c=e+4|0;d=e;if((f[a+28>>2]|0)==2){f[d>>2]=f[b>>2];f[c>>2]=f[d>>2];DGa(a,c,17);u=e;return}d=a+128|0;c=f[d>>2]|0;if((c|0)==(f[a+132>>2]|0)){FAa(a+124|0,b);u=e;return}else{f[c>>2]=f[b>>2];f[d>>2]=c+4;u=e;return}}function Mza(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return}function Nza(a){a=a|0;var c=0;c=a+44|0;b[c>>0]=1;if((f[a+28>>2]|0)!=2)return;b[c>>0]=0;rFa(a,0);return}function Oza(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;d=k+4|0;e=k;do if((f[a+28>>2]|0)==2){j=f[(f[a+8>>2]|0)+232>>2]|0;f[e>>2]=f[c>>2];f[d>>2]=f[e>>2];DGa(j,d,18)}else{d=a+36|0;e=f[d>>2]|0;if((e|0)==(f[a+40>>2]|0)){FAa(a+32|0,c);break}else{f[e>>2]=f[c>>2];f[d>>2]=e+4;break}}while(0);f[a+172>>2]=-1;b[a+176>>0]=0;g=f[a+264>>2]|0;h=a+268|0;d=f[h>>2]|0;if((d|0)!=(g|0))do{e=d+-20|0;f[h>>2]=e;c=f[e>>2]|0;if(!c)d=e;else{d=d+-16|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c);d=f[h>>2]|0}}while((d|0)!=(g|0));d=f[a+276>>2]|0;e=a+280|0;c=f[e>>2]|0;if((c|0)!=(d|0))f[e>>2]=c+(~(((c+-104-d|0)>>>0)/104|0)*104|0);g=f[a+288>>2]|0;h=a+292|0;d=f[h>>2]|0;if((d|0)!=(g|0))do{e=d+-28|0;f[h>>2]=e;c=f[e>>2]|0;if(!c)d=e;else{d=d+-24|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c);d=f[h>>2]|0}}while((d|0)!=(g|0));d=f[a+300>>2]|0;e=a+304|0;c=f[e>>2]|0;if((c|0)!=(d|0))f[e>>2]=c+(~((c+-32-d|0)>>>5)<<5);g=a+324|0;if(f[g>>2]|0){e=a+320|0;d=f[e>>2]|0;if(d|0)do{j=d;d=f[d>>2]|0;Zpb(j)}while((d|0)!=0);f[e>>2]=0;e=f[a+316>>2]|0;if(e|0){c=a+312|0;d=0;do{f[(f[c>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[g>>2]=0}g=a+344|0;if(f[g>>2]|0){e=a+340|0;d=f[e>>2]|0;if(d|0)do{j=d;d=f[d>>2]|0;Zpb(j)}while((d|0)!=0);f[e>>2]=0;e=f[a+336>>2]|0;if(e|0){c=a+332|0;d=0;do{f[(f[c>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[g>>2]=0}g=a+364|0;if(f[g>>2]|0){e=a+360|0;d=f[e>>2]|0;if(d|0)do{j=d;d=f[d>>2]|0;Zpb(j)}while((d|0)!=0);f[e>>2]=0;e=f[a+356>>2]|0;if(e|0){c=a+352|0;d=0;do{f[(f[c>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[g>>2]=0}j=a+384|0;if(!(f[j>>2]|0)){u=k;return}i=a+380|0;d=f[i>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;c=f[e+20>>2]|0;if(c|0){g=e+24|0;h=f[g>>2]|0;if((h|0)!=(c|0))f[g>>2]=h+(~(((h+-40-c|0)>>>0)/40|0)*40|0);Zpb(c)}Zpb(e)}while((d|0)!=0);f[i>>2]=0;c=f[a+376>>2]|0;if(c|0){e=a+372|0;d=0;do{f[(f[e>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0))}f[j>>2]=0;u=k;return}function Pza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Qza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Rza(a,b){a=a|0;b=b|0;return}function Sza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Tza(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function Uza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Vza(a){a=a|0;return}function Wza(a,b){a=a|0;b=+b;return}function Xza(a,b){a=a|0;b=b|0;return}function Yza(a,b){a=a|0;b=+b;return}function Zza(a,b){a=a|0;b=b|0;return}function _za(a,b){a=a|0;b=b|0;return}function $za(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;g=u;u=u+16|0;d=g+4|0;c=g;f[c>>2]=f[b>>2];f[d>>2]=f[c>>2];DGa(a,d,12);u=g;return}function aAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m+12|0;k=m;g=m+8|0;i=m+4|0;l=a+8|0;d=(zva(f[(f[l>>2]|0)+220>>2]|0)|0)+8|0;d=f[d>>2]|0;a:do if(d|0){while(1){e=f[d+12>>2]|0;if(!(Lla(e)|0))break;d=f[d>>2]|0;if(!d)break a}h=f[e+4>>2]|0;d=f[c>>2]|0;c=f[c+4>>2]|0;g=d+(c<<2)|0;if(c|0){e=0;do{c=(f[d>>2]|0)==(h|0);e=e|c;d=d+4|0}while(!(c|(d|0)==(g|0)));if(e){if((f[a+28>>2]|0)!=2){d=a+116|0;e=f[d>>2]|0;if((e|0)==(f[a+120>>2]|0)){FAa(a+112|0,b);u=m;return}else{f[e>>2]=f[b>>2];f[d>>2]=e+4;u=m;return}}g=f[b>>2]|0;d=(zva(f[(f[l>>2]|0)+220>>2]|0)|0)+8|0;d=f[d>>2]|0;b:do if(d|0){while(1){e=f[d+12>>2]|0;if(!(Lla(e)|0))break;d=f[d>>2]|0;if(!d)break b}b=f[l>>2]|0;l=f[b+228>>2]|0;Dva(f[b+220>>2]|0,b,f[e+4>>2]|0)|0;ANa(l)}while(0);f[k>>2]=g;f[j>>2]=f[k>>2];DGa(a,j,14);u=m;return}}f[i>>2]=f[b>>2];f[j>>2]=f[i>>2];DGa(a,j,14);u=m;return}while(0);f[g>>2]=f[b>>2];f[j>>2]=f[g>>2];DGa(a,j,14);u=m;return}function bAa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;i=r+36|0;j=r+32|0;k=r+8|0;l=r+4|0;m=r;p=e&1;n=g&1;if((f[a+28>>2]|0)>=1){c=f[c>>2]|0;h=f[(f[a+8>>2]|0)+220>>2]|0;q=f[d+4>>2]|0;f[j>>2]=q;f[k>>2]=1065353216;f[k+4>>2]=1065353216;f[k+8>>2]=1065353216;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;if(!q)wka(h,e,g,k);else yka(h,f[d>>2]|0,j,e,g,k);f[l>>2]=c;f[i>>2]=f[l>>2];ZGa(a,i,k);f[m>>2]=c;f[i>>2]=f[m>>2];DGa(a,i,16);u=r;return}q=a+100|0;g=f[c>>2]|0;m=a+104|0;c=f[m>>2]|0;l=a+108|0;h=f[l>>2]|0;if(c>>>0<h>>>0){f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];o=c+8|0;q=d+8|0;f[o>>2]=0;a=c+12|0;f[a>>2]=0;f[c+16>>2]=0;f[o>>2]=f[q>>2];o=d+12|0;f[a>>2]=f[o>>2];a=d+16|0;f[c+16>>2]=f[a>>2];f[a>>2]=0;f[o>>2]=0;f[q>>2]=0;f[d>>2]=0;b[c+20>>0]=p;b[c+21>>0]=n;f[c+24>>2]=g;f[m>>2]=(f[m>>2]|0)+28;u=r;return}i=f[q>>2]|0;e=(c-i|0)/28|0;c=e+1|0;if(c>>>0>153391689)fob(q);a=(h-i|0)/28|0;h=a<<1;h=a>>>0<76695844?(h>>>0<c>>>0?c:h):153391689;do if(!h)o=0;else if(h>>>0>153391689)ud();else{o=Wpb(h*28|0)|0;break}while(0);i=o+(e*28|0)|0;c=i;j=o+(h*28|0)|0;f[i>>2]=f[d>>2];f[o+(e*28|0)+4>>2]=f[d+4>>2];h=d+8|0;f[o+(e*28|0)+16>>2]=0;f[o+(e*28|0)+8>>2]=f[h>>2];a=d+12|0;f[o+(e*28|0)+12>>2]=f[a>>2];k=d+16|0;f[o+(e*28|0)+16>>2]=f[k>>2];f[k>>2]=0;f[a>>2]=0;f[h>>2]=0;f[d>>2]=0;b[o+(e*28|0)+20>>0]=p;b[o+(e*28|0)+21>>0]=n;f[o+(e*28|0)+24>>2]=g;g=i+28|0;e=f[q>>2]|0;h=f[m>>2]|0;if((h|0)==(e|0)){k=e;h=e}else{do{d=h;h=h+-28|0;f[i+-28>>2]=f[h>>2];f[i+-24>>2]=f[d+-24>>2];o=i+-20|0;p=d+-20|0;f[o>>2]=0;n=i+-16|0;f[n>>2]=0;f[i+-12>>2]=0;f[o>>2]=f[p>>2];o=d+-16|0;f[n>>2]=f[o>>2];n=d+-12|0;f[i+-12>>2]=f[n>>2];f[n>>2]=0;f[o>>2]=0;f[p>>2]=0;f[h>>2]=0;b[i+-8>>0]=b[d+-8>>0]|0;b[i+-7>>0]=b[d+-7>>0]|0;f[i+-4>>2]=f[d+-4>>2];i=c+-28|0;c=i}while((h|0)!=(e|0));k=f[q>>2]|0;h=f[m>>2]|0}f[q>>2]=c;f[m>>2]=g;f[l>>2]=j;j=k;if((h|0)!=(j|0)){e=h;do{h=e+-20|0;c=f[h>>2]|0;g=e+-16|0;e=e+-28|0;if((c|0)==(f[g>>2]|0)){i=f[e>>2]|0;if(i){_pb(i);c=f[h>>2]|0}}if(c|0){h=f[g>>2]|0;if((h|0)!=(c|0))f[g>>2]=h+(~((h+-8-c|0)>>>3)<<3);Zpb(c)}}while((e|0)!=(j|0))}if(!k){u=r;return}Zpb(k);u=r;return}function cAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;g=t+8|0;h=t+4|0;i=t;if((f[a+28>>2]|0)>=2){e=f[a+408>>2]|0;if(!e){AAa(a,b,c,d);u=t;return}else{f[g>>2]=b;f[h>>2]=c;f[i>>2]=d;Eh[f[(f[e>>2]|0)+24>>2]&255](e,g,h,i);u=t;return}}r=a+136|0;q=c+-1640531527+(b<<6)+(b>>>2)^b;q=d+-1640531527+(q<<6)+(q>>>2)^q;l=a+140|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(o)e=0;else{i=m+-1|0;h=(i&m|0)==0;if(h)e=i&q;else if(q>>>0<m>>>0)e=q;else e=(q>>>0)%(m>>>0)|0;g=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(g){g=f[g>>2]|0;if(g){if(h){while(1){p=f[g+4>>2]|0;if(!((p|0)==(q|0)|(p&i|0)==(e|0)))break a;if((f[g+8>>2]|0)==(b|0))if((f[g+12>>2]|0)==(c|0))if((f[g+16>>2]|0)==(d|0))break;g=f[g>>2]|0;if(!g)break a}u=t;return}while(1){h=f[g+4>>2]|0;if((h|0)!=(q|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(e|0))break a}if((f[g+8>>2]|0)==(b|0))if((f[g+12>>2]|0)==(c|0))if((f[g+16>>2]|0)==(d|0))break;g=f[g>>2]|0;if(!g)break a}u=t;return}}}while(0);p=Wpb(20)|0;f[p+8>>2]=b;f[p+12>>2]=c;f[p+16>>2]=d;f[p+4>>2]=q;f[p>>2]=0;i=a+148|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[a+152>>2];do if(o|k*+(m>>>0)<j){e=m<<1|(m>>>0<3|(m+-1&m|0)!=0)&1;g=~~+W(+(j/k))>>>0;zAa(r,e>>>0<g>>>0?g:e);e=f[l>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&q;break}if(q>>>0<e>>>0){h=e;e=q}else{h=e;e=(q>>>0)%(e>>>0)|0}}else h=m;while(0);g=(f[r>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=a+144|0;f[p>>2]=f[e>>2];f[e>>2]=p;f[g>>2]=e;e=f[p>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[r>>2]|0)+(e<<2)|0;s=36}}else{f[p>>2]=f[e>>2];s=36}if((s|0)==36)f[e>>2]=p;f[i>>2]=(f[i>>2]|0)+1;u=t;return}function dAa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i+4|0;h=i;if((f[a+28>>2]|0)!=2){u=i;return}b=f[b>>2]|0;d=f[c>>2]|0;e=f[c+4>>2]|0;if((d|0)!=(e|0))do{j=Zra(3)|0;c=(zEa(a,d,j)|0)<<24>>24==2;IGa(a,d,j,c?1:2);d=d+8|0}while((d|0)!=(e|0));f[h>>2]=b;f[g>>2]=f[h>>2];DGa(a,g,3);u=i;return}function eAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;h=z;if((f[a+28>>2]|0)==2){g=f[b>>2]|0;e=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;c=f[c+4>>2]|0;if((d|0)!=(c|0))do{if(!(vza(e,d)|0)){x=Zra(2)|0;b=(zEa(a,d,x)|0)<<24>>24==2;IGa(a,d,x,b?1:2)}d=d+8|0}while((d|0)!=(c|0));f[h>>2]=g;f[y>>2]=f[h>>2];DGa(a,y,2);u=z;return}f[y>>2]=2;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;m=k+-1640531399|0;o=m^2;o=l+-1640531527+(m>>>2)+(o<<6)^o;m=(d|0)==0;a:do if(m){c=0;x=34}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=34;else{e=f[e>>2]|0;if(!e)x=34;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=34;break a}if((f[e+8>>2]|0)==2)if((f[e+12>>2]|0)==(k|0))if((f[e+16>>2]|0)==(l|0))break a;e=f[e>>2]|0;if(!e){x=34;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=34;break a}}if((f[e+8>>2]|0)==2)if((f[e+12>>2]|0)==(k|0))if((f[e+16>>2]|0)==(l|0))break a;e=f[e>>2]|0;if(!e){x=34;break}}}}}while(0);if((x|0)==34){x=0;g=Wpb(20)|0;f[g+8>>2]=2;h=g+12|0;f[h>>2]=k;f[h+4>>2]=l;f[g+4>>2]=o;f[g>>2]=0;i=+(((f[t>>2]|0)+1|0)>>>0);j=+n[v>>2];do if(m|j*+(d>>>0)<i){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;m=~~+W(+(i/j))>>>0;c=c>>>0<m>>>0?m:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=58}}else{f[g>>2]=f[c>>2];x=58}if((x|0)==58){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=2;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function fAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+8|0;k=z;if((f[a+28>>2]|0)==2){j=f[b>>2]|0;i=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;g=f[c+4>>2]|0;if((d|0)!=(g|0)){h=y+4|0;do{owa(y,i,d);c=(f[y>>2]|0)!=0;e=f[h>>2]|0;if(!e){if(!c)x=8}else{Ppb(e);if(!c)x=8}if((x|0)==8){x=0;w=Zra(0)|0;b=(zEa(a,d,w)|0)<<24>>24==2;IGa(a,d,w,b?1:2)}d=d+8|0}while((d|0)!=(g|0))}f[k>>2]=j;f[y>>2]=f[k>>2];DGa(a,y,0);u=z;return}f[y>>2]=0;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{j=p;i=f[j>>2]|0;j=f[j+4>>2]|0;o=i+-1640531527|0;o=j+-1640531527+(o<<6)+(o>>>2)^o;k=(d|0)==0;a:do if(k){c=0;x=38}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=38;else{e=f[e>>2]|0;if(!e)x=38;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=38;break a}if(!(f[e+8>>2]|0))if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=38;break a}}if(!(f[e+8>>2]|0))if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break}}}}}while(0);if((x|0)==38){x=0;g=Wpb(20)|0;f[g+8>>2]=0;h=g+12|0;f[h>>2]=i;f[h+4>>2]=j;f[g+4>>2]=o;f[g>>2]=0;l=+(((f[t>>2]|0)+1|0)>>>0);m=+n[v>>2];do if(k|m*+(d>>>0)<l){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;k=~~+W(+(l/m))>>>0;c=c>>>0<k>>>0?k:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=62}}else{f[g>>2]=f[c>>2];x=62}if((x|0)==62){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=0;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function gAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+8|0;k=z;if((f[a+28>>2]|0)==2){j=f[b>>2]|0;i=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;g=f[c+4>>2]|0;if((d|0)!=(g|0)){h=y+4|0;do{kwa(y,i,d);c=(f[y>>2]|0)!=0;e=f[h>>2]|0;if(!e){if(!c)x=8}else{Ppb(e);if(!c)x=8}if((x|0)==8){x=0;w=Zra(4)|0;b=(zEa(a,d,w)|0)<<24>>24==2;IGa(a,d,w,b?1:2)}d=d+8|0}while((d|0)!=(g|0))}f[k>>2]=j;f[y>>2]=f[k>>2];DGa(a,y,4);u=z;return}f[y>>2]=4;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{j=p;i=f[j>>2]|0;j=f[j+4>>2]|0;o=i+-1640531270^4;o=j+-1640531527+(o<<6)+(o>>>2)^o;k=(d|0)==0;a:do if(k){c=0;x=38}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=38;else{e=f[e>>2]|0;if(!e)x=38;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=38;break a}if((f[e+8>>2]|0)==4)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=38;break a}}if((f[e+8>>2]|0)==4)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break}}}}}while(0);if((x|0)==38){x=0;g=Wpb(20)|0;f[g+8>>2]=4;h=g+12|0;f[h>>2]=i;f[h+4>>2]=j;f[g+4>>2]=o;f[g>>2]=0;l=+(((f[t>>2]|0)+1|0)>>>0);m=+n[v>>2];do if(k|m*+(d>>>0)<l){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;k=~~+W(+(l/m))>>>0;c=c>>>0<k>>>0?k:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=62}}else{f[g>>2]=f[c>>2];x=62}if((x|0)==62){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=4;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function hAa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=f[a+288>>2]|0;z=f[a+296>>2]|0;w=+n[a+304>>2];D=f[a+544>>2]|0;F=f[a+1320>>2]|0;e=f[a+1448>>2]|0;l=f[a+1472>>2]|0;H=f[a+1880>>2]|0;a:{if(H){H=0;if(1){nza(a+200|0,G,0);h=f[(a+200|0)>>2]|0;f[(a+200|0)>>2]=f[(a+136|0)>>2];f[(a+136|0)>>2]=h;h=f[((a+200|0)+4|0)>>2]|0;f[((a+200|0)+4|0)>>2]=f[((a+136|0)+4|0)>>2];f[((a+136|0)+4|0)>>2]=h;h=f[((a+200|0)+8|0)>>2]|0;f[((a+200|0)+8|0)>>2]=f[((a+136|0)+8|0)>>2];f[((a+136|0)+8|0)>>2]=h;h=f[((a+200|0)+12|0)>>2]|0;f[((a+200|0)+12|0)>>2]=f[((a+136|0)+12|0)>>2];f[((a+136|0)+12|0)>>2]=h;h=f[((a+200|0)+16|0)>>2]|0;f[((a+200|0)+16|0)>>2]=f[((a+136|0)+16|0)>>2];f[((a+136|0)+16|0)>>2]=h;h=f[((a+200|0)+20|0)>>2]|0;f[((a+200|0)+20|0)>>2]=f[((a+136|0)+20|0)>>2];f[((a+136|0)+20|0)>>2]=h;h=f[((a+200|0)+24|0)>>2]|0;f[((a+200|0)+24|0)>>2]=f[((a+136|0)+24|0)>>2];f[((a+136|0)+24|0)>>2]=h;h=f[((a+200|0)+28|0)>>2]|0;f[((a+200|0)+28|0)>>2]=f[((a+136|0)+28|0)>>2];f[((a+136|0)+28|0)>>2]=h;h=f[((a+200|0)+32|0)>>2]|0;f[((a+200|0)+32|0)>>2]=f[((a+136|0)+32|0)>>2];f[((a+136|0)+32|0)>>2]=h;h=f[((a+200|0)+36|0)>>2]|0;f[((a+200|0)+36|0)>>2]=f[((a+136|0)+36|0)>>2];f[((a+136|0)+36|0)>>2]=h;h=f[((a+200|0)+40|0)>>2]|0;f[((a+200|0)+40|0)>>2]=f[((a+136|0)+40|0)>>2];f[((a+136|0)+40|0)>>2]=h;h=f[((a+200|0)+44|0)>>2]|0;f[((a+200|0)+44|0)>>2]=f[((a+136|0)+44|0)>>2];f[((a+136|0)+44|0)>>2]=h;h=f[((a+200|0)+48|0)>>2]|0;f[((a+200|0)+48|0)>>2]=f[((a+136|0)+48|0)>>2];f[((a+136|0)+48|0)>>2]=h;h=f[((a+200|0)+52|0)>>2]|0;f[((a+200|0)+52|0)>>2]=f[((a+136|0)+52|0)>>2];f[((a+136|0)+52|0)>>2]=h;h=f[((a+200|0)+56|0)>>2]|0;f[((a+200|0)+56|0)>>2]=f[((a+136|0)+56|0)>>2];f[((a+136|0)+56|0)>>2]=h;f[((a+136|0)+60|0)>>2]=f[(a+200|0)+60>>2];f[(a+64|0)>>2]=a+136|0;f[(a+64|0)+4>>2]=e;bda(a+200|0,a+64|0)|0;f[(a+136|0)>>2]=f[(a+200|0)>>2];f[((a+136|0)+4|0)>>2]=f[(a+200|0)+4>>2];f[((a+136|0)+8|0)>>2]=f[(a+200|0)+8>>2];f[((a+136|0)+12|0)>>2]=f[(a+200|0)+12>>2];f[((a+136|0)+16|0)>>2]=f[(a+200|0)+16>>2];f[((a+136|0)+20|0)>>2]=f[(a+200|0)+20>>2];f[((a+136|0)+24|0)>>2]=f[(a+200|0)+24>>2];f[((a+136|0)+28|0)>>2]=f[(a+200|0)+28>>2];f[((a+136|0)+32|0)>>2]=f[(a+200|0)+32>>2];f[((a+136|0)+36|0)>>2]=f[(a+200|0)+36>>2];f[((a+136|0)+40|0)>>2]=f[(a+200|0)+40>>2];f[((a+136|0)+44|0)>>2]=f[(a+200|0)+44>>2];f[((a+136|0)+48|0)>>2]=f[(a+200|0)+48>>2];f[((a+136|0)+52|0)>>2]=f[(a+200|0)+52>>2];f[((a+136|0)+56|0)>>2]=f[(a+200|0)+56>>2];f[((a+136|0)+60|0)>>2]=f[(a+200|0)+60>>2];h=f[(G+172|0)>>2]|0;i=f[G+356>>2]|0;b:do if(!i)j=1.0;else{if(!((i+-1|0)&i))k=(i+-1|0)&h;else if(h>>>0<i>>>0)k=h;else k=(h>>>0)%(i>>>0)|0;e=f[(f[G+352>>2]|0)+(k<<2)>>2]|0;if(!e)j=1.0;else{e=f[e>>2]|0;if(!e)j=1.0;else{c:do if(!((i+-1|0)&i))while(1){g=f[e+4>>2]|0;if(!((h|0)==(g|0)|(g&(i+-1|0)|0)==(k|0))){j=1.0;break b}if((h|0)==(g|0))if((f[e+8>>2]|0)==(h|0))break c;e=f[e>>2]|0;if(!e){j=1.0;break b}}else while(1){g=f[e+4>>2]|0;if((h|0)==(g|0)){if((f[e+8>>2]|0)==(h|0))break c}else{if(g>>>0>=i>>>0)g=(g>>>0)%(i>>>0)|0;if((g|0)!=(k|0)){j=1.0;break b}}e=f[e>>2]|0;if(!e){j=1.0;break b}}while(0);j=+p[e+16>>3];if(j==0.0)j=+p[G+184>>3]}}}while(0);e=w==0.0|j==0.0;j=w/j;if((e?1.0:j)!=1.0){w=e?1.0:j;f[(a+4|0)>>2]=0;f[(a+4|0)+4>>2]=0;f[(a+4|0)+8>>2]=0;f[(a+4|0)+12>>2]=0;f[(a+24|0)>>2]=0;f[(a+24|0)+4>>2]=0;f[(a+24|0)+8>>2]=0;f[(a+24|0)+12>>2]=0;f[(a+44|0)>>2]=0;f[(a+44|0)+4>>2]=0;f[(a+44|0)+8>>2]=0;f[(a+44|0)+12>>2]=0;n[a>>2]=w;n[a+20>>2]=w;n[a+40>>2]=w;n[a+60>>2]=1.0;f[(a+64|0)>>2]=a+136|0;f[(a+64|0)+4>>2]=a;bda(a+200|0,a+64|0)|0;f[(a+136|0)>>2]=f[(a+200|0)>>2];f[((a+136|0)+4|0)>>2]=f[(a+200|0)+4>>2];f[((a+136|0)+8|0)>>2]=f[(a+200|0)+8>>2];f[((a+136|0)+12|0)>>2]=f[(a+200|0)+12>>2];f[((a+136|0)+16|0)>>2]=f[(a+200|0)+16>>2];f[((a+136|0)+20|0)>>2]=f[(a+200|0)+20>>2];f[((a+136|0)+24|0)>>2]=f[(a+200|0)+24>>2];f[((a+136|0)+28|0)>>2]=f[(a+200|0)+28>>2];f[((a+136|0)+32|0)>>2]=f[(a+200|0)+32>>2];f[((a+136|0)+36|0)>>2]=f[(a+200|0)+36>>2];f[((a+136|0)+40|0)>>2]=f[(a+200|0)+40>>2];f[((a+136|0)+44|0)>>2]=f[(a+200|0)+44>>2];f[((a+136|0)+48|0)>>2]=f[(a+200|0)+48>>2];f[((a+136|0)+52|0)>>2]=f[(a+200|0)+52>>2];f[((a+136|0)+56|0)>>2]=f[(a+200|0)+56>>2];f[((a+136|0)+60|0)>>2]=f[(a+200|0)+60>>2]}}else H=1}roa(a+200|0,a+136|0);i=f[G+168>>2]|0;e=f[l>>2]|0;g=b[G+192>>0]|0;h=f[(F+12|0)>>2]|0;if(!h)RHa(F,i,z,e,a+200|0,g);else Sh[f[(f[h>>2]|0)+176>>2]&63](h,i,z,e,a+200|0,g);x=D+20|0;e=f[x>>2]|0;y=D+24|0;v=f[y>>2]|0;if((e|0)!=(v|0))do{g=f[e>>2]|0;h=f[e+4>>2]|0;i=f[e+8>>2]|0;k=f[e+12>>2]|0;l=f[e+16>>2]|0;m=f[e+20>>2]|0;o=f[e+24>>2]|0;q=f[e+28>>2]|0;r=f[e+32>>2]|0;s=f[e+36>>2]|0;t=f[(F+12|0)>>2]|0;if(!t)BHa(F,z,g,h,i,k,l,m,o,q,r,s);else $h[f[(f[t>>2]|0)+112>>2]&7](t,z,g,h,i,k,l,m,o,q,r,s);e=e+40|0}while((e|0)!=(v|0));k=f[D>>2]|0;m=f[(G+376|0)>>2]|0;e=f[D+4>>2]|0;o=((m+-1|0)&m|0)==0;if(o)e=(m+-1|0)&e;else if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;i=(f[(G+372|0)>>2]|0)+(e<<2)|0;l=f[i>>2]|0;while(1){g=f[l>>2]|0;if((g|0)==(D|0))break;else l=g}if((l|0)==(G+380|0))v=60;else{g=f[l+4>>2]|0;if(o)g=g&(m+-1|0);else if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)==(e|0)){A=k;v=68}else v=60}do if((v|0)==60){if(k|0){g=f[k+4>>2]|0;if(o)h=g&(m+-1|0);else if(g>>>0<m>>>0)h=g;else h=(g>>>0)%(m>>>0)|0;if((h|0)==(e|0)){c=g;C=k;v=70;break}}f[i>>2]=0;A=f[D>>2]|0;v=68}while(0);if((v|0)==68){g=A;if(!A)B=g;else{c=f[A+4>>2]|0;C=g;v=70}}if((v|0)==70){if(o)c=c&(m+-1|0);else if(c>>>0>=m>>>0)c=(c>>>0)%(m>>>0)|0;if((c|0)==(e|0))B=C;else{f[(f[(G+372|0)>>2]|0)+(c<<2)>>2]=l;B=f[D>>2]|0}}f[l>>2]=B;f[D>>2]=0;f[(G+384|0)>>2]=(f[(G+384|0)>>2]|0)+-1;c=f[x>>2]|0;if(c|0){e=f[y>>2]|0;if((e|0)!=(c|0))f[y>>2]=e+(~(((e+-40-c|0)>>>0)/40|0)*40|0);Zpb(c)}Zpb(D);e=f[G+264>>2]|0;c=f[(G+268|0)>>2]|0;if((e|0)!=(c|0)){d:while(1){r=f[e>>2]|0;m=f[e+4>>2]|0;if((r|0)==(m|0)){E=r;v=107;break}o=f[(G+376|0)>>2]|0;if(!o){E=m;v=107;break}q=f[(G+372|0)>>2]|0;e:do if(!((o+-1|0)&o)){i=r;while(1){k=f[i>>2]|0;g=f[q+((k&(o+-1|0))<<2)>>2]|0;f:do if(g|0){g=f[g>>2]|0;if(!g)break;do{h=f[g+4>>2]|0;if(!((h|0)==(k|0)|(h&(o+-1|0)|0)==(k&(o+-1|0)|0)))break f;if((h|0)==(k|0))if((f[g+8>>2]|0)==(k|0))break e;g=f[g>>2]|0}while((g|0)!=0)}while(0);i=i+4|0;if((i|0)==(m|0)){E=m;v=107;break d}}}else{i=r;while(1){k=f[i>>2]|0;if(o>>>0>k>>>0)l=k;else l=(k>>>0)%(o>>>0)|0;g=f[q+(l<<2)>>2]|0;g:do if(g|0){g=f[g>>2]|0;if(!g)break;do{h=f[g+4>>2]|0;if((h|0)==(k|0)){if((f[g+8>>2]|0)==(k|0))break e}else{if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;if((h|0)!=(l|0))break g}g=f[g>>2]|0}while((g|0)!=0)}while(0);i=i+4|0;if((i|0)==(m|0)){E=m;v=107;break d}}}while(0);g=e+20|0;if((g|0)==(c|0)){d=c;break}else e=g}h:do if((v|0)==107){i=f[e+12>>2]|0;d=E-r>>2;g=f[e+16>>2]|0;h=f[(F+12|0)>>2]|0;if(!h)rHa(F,i,d,r,g);else Kh[f[(f[h>>2]|0)+72>>2]&255](h,i,d,r,g);d=e;if((e|0)!=(c|0)){g=e+20|0;if((g|0)!=(c|0))while(1){t=g;i:while(1){s=f[t>>2]|0;r=e+24|0;g=f[r>>2]|0;j:do if((s|0)==(g|0))g=s;else{o=f[(G+376|0)>>2]|0;if(!o)break;q=f[(G+372|0)>>2]|0;if(!((o+-1|0)&o)){k=s;while(1){l=f[k>>2]|0;h=f[q+((l&(o+-1|0))<<2)>>2]|0;k:do if(h|0){h=f[h>>2]|0;if(!h)break;do{i=f[h+4>>2]|0;if(!((i|0)==(l|0)|(i&(o+-1|0)|0)==(l&(o+-1|0)|0)))break k;if((i|0)==(l|0))if((f[h+8>>2]|0)==(l|0))break i;h=f[h>>2]|0}while((h|0)!=0)}while(0);k=k+4|0;if((k|0)==(g|0))break j}}else k=s;do{l=f[k>>2]|0;if(o>>>0>l>>>0)m=l;else m=(l>>>0)%(o>>>0)|0;h=f[q+(m<<2)>>2]|0;l:do if(h|0){h=f[h>>2]|0;if(!h)break;do{i=f[h+4>>2]|0;if((i|0)==(l|0)){if((f[h+8>>2]|0)==(l|0))break i}else{if(i>>>0>=o>>>0)i=(i>>>0)%(o>>>0)|0;if((i|0)!=(m|0))break l}h=f[h>>2]|0}while((h|0)!=0)}while(0);k=k+4|0}while((k|0)!=(g|0))}while(0);i=f[e+32>>2]|0;h=g-s>>2;e=f[e+36>>2]|0;g=f[(F+12|0)>>2]|0;if(!g)rHa(F,i,h,s,e);else Kh[f[(f[g>>2]|0)+72>>2]&255](g,i,h,s,e);e=t+20|0;if((e|0)==(c|0))break h;else{E=t;t=e;e=E}}k=d;h=f[k>>2]|0;if(!h){i=k+8|0;h=s}else{g=f[(k+4|0)>>2]|0;if((g|0)!=(h|0))f[(k+4|0)>>2]=g+(~((g+-4-h|0)>>>2)<<2);Zpb(h);f[(k+8|0)>>2]=0;f[(k+4|0)>>2]=0;f[k>>2]=0;i=k+8|0;h=f[t>>2]|0;g=f[r>>2]|0}f[d>>2]=h;f[(k+4|0)>>2]=g;E=e+28|0;f[i>>2]=f[E>>2];f[E>>2]=0;f[r>>2]=0;f[t>>2]=0;E=e+32|0;g=f[E+4>>2]|0;f[(k+12|0)>>2]=f[E>>2];f[(k+12|0)+4>>2]=g;g=t+20|0;if((g|0)==(c|0)){d=k+20|0;break}else{d=k+20|0;e=t}}}}while(0);if((c|0)!=(d|0)){i=f[(G+268|0)>>2]|0;if((i|0)!=(c|0)){do{e=f[d>>2]|0;h=d+4|0;if(!e)e=d+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e);e=d+8|0;f[e>>2]=0;f[h>>2]=0;f[d>>2]=0}f[d>>2]=f[c>>2];D=c+4|0;f[h>>2]=f[D>>2];E=c+8|0;f[e>>2]=f[E>>2];f[E>>2]=0;f[D>>2]=0;f[c>>2]=0;D=c+12|0;E=f[D+4>>2]|0;F=d+12|0;f[F>>2]=f[D>>2];f[F+4>>2]=E;c=c+20|0;d=d+20|0}while((c|0)!=(i|0));c=f[(G+268|0)>>2]|0}if((c|0)!=(d|0))do{e=c+-20|0;f[(G+268|0)>>2]=e;g=f[e>>2]|0;if(!g)c=e;else{c=c+-16|0;e=f[c>>2]|0;if((e|0)!=(g|0))f[c>>2]=e+(~((e+-4-g|0)>>>2)<<2);Zpb(g);c=f[(G+268|0)>>2]|0}}while((c|0)!=(d|0))}}c=f[(a+200|0)+4>>2]|0;if(c|0)Ppb(c);u=a;f[a+1888>>2]=5;break a}f[a+1872>>2]=v;f[a+1880>>2]=H}
function iAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;h=z;if((f[a+28>>2]|0)==2){g=f[b>>2]|0;e=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;c=f[c+4>>2]|0;if((d|0)!=(c|0))do{if(!(wza(e,d)|0)){x=Zra(6)|0;b=(zEa(a,d,x)|0)<<24>>24==2;IGa(a,d,x,b?1:2)}d=d+8|0}while((d|0)!=(c|0));f[h>>2]=g;f[y>>2]=f[h>>2];DGa(a,y,6);u=z;return}f[y>>2]=6;d=f[c>>2]|0;r=f[c+4>>2]|0;if((d|0)!=(r|0)){s=a+68|0;t=a+72|0;v=a+80|0;w=a+84|0;x=a+76|0;p=d;d=f[t>>2]|0;do{l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;o=k+-1640531142^6;o=l+-1640531527+(o<<6)+(o>>>2)^o;m=(d|0)==0;a:do if(m){c=0;q=34}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[s>>2]|0)+(c<<2)>>2]|0;if(!e)q=34;else{e=f[e>>2]|0;if(!e)q=34;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){q=34;break a}if((f[e+8>>2]|0)==6)if((f[e+12>>2]|0)==(k|0))if((f[e+16>>2]|0)==(l|0))break a;e=f[e>>2]|0;if(!e){q=34;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){q=34;break a}}if((f[e+8>>2]|0)==6)if((f[e+12>>2]|0)==(k|0))if((f[e+16>>2]|0)==(l|0))break a;e=f[e>>2]|0;if(!e){q=34;break}}}}}while(0);if((q|0)==34){q=0;g=Wpb(20)|0;f[g+8>>2]=6;h=g+12|0;f[h>>2]=k;f[h+4>>2]=l;f[g+4>>2]=o;f[g>>2]=0;i=+(((f[v>>2]|0)+1|0)>>>0);j=+n[w>>2];do if(m|j*+(d>>>0)<i){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;m=~~+W(+(i/j))>>>0;c=c>>>0<m>>>0?m:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[t>>2]|0}if(c>>>0>d>>>0)yAa(s,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[v>>2]|0)>>>0)/+n[w>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(s,c)}c=f[t>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[s>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[x>>2];f[x>>2]=g;f[e>>2]=x;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[s>>2]|0)+(c<<2)|0;q=58}}else{f[g>>2]=f[c>>2];q=58}if((q|0)==58){q=0;f[c>>2]=g}f[v>>2]=(f[v>>2]|0)+1}p=p+8|0}while((p|0)!=(r|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=6;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function jAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+8|0;k=z;if((f[a+28>>2]|0)==2){j=f[b>>2]|0;i=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;g=f[c+4>>2]|0;if((d|0)!=(g|0)){h=y+4|0;do{pwa(y,i,d);c=(f[y>>2]|0)!=0;e=f[h>>2]|0;if(!e){if(!c)x=8}else{Ppb(e);if(!c)x=8}if((x|0)==8){x=0;w=Zra(8)|0;b=(zEa(a,d,w)|0)<<24>>24==2;IGa(a,d,w,b?1:2)}d=d+8|0}while((d|0)!=(g|0))}f[k>>2]=j;f[y>>2]=f[k>>2];DGa(a,y,8);u=z;return}f[y>>2]=8;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{j=p;i=f[j>>2]|0;j=f[j+4>>2]|0;o=i+-1640531013^8;o=j+-1640531527+(o<<6)+(o>>>2)^o;k=(d|0)==0;a:do if(k){c=0;x=38}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=38;else{e=f[e>>2]|0;if(!e)x=38;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=38;break a}if((f[e+8>>2]|0)==8)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=38;break a}}if((f[e+8>>2]|0)==8)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break}}}}}while(0);if((x|0)==38){x=0;g=Wpb(20)|0;f[g+8>>2]=8;h=g+12|0;f[h>>2]=i;f[h+4>>2]=j;f[g+4>>2]=o;f[g>>2]=0;l=+(((f[t>>2]|0)+1|0)>>>0);m=+n[v>>2];do if(k|m*+(d>>>0)<l){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;k=~~+W(+(l/m))>>>0;c=c>>>0<k>>>0?k:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=62}}else{f[g>>2]=f[c>>2];x=62}if((x|0)==62){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=8;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function kAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+8|0;k=z;if((f[a+28>>2]|0)==2){j=f[b>>2]|0;i=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;g=f[c+4>>2]|0;if((d|0)!=(g|0)){h=y+4|0;do{lwa(y,i,d);c=(f[y>>2]|0)!=0;e=f[h>>2]|0;if(!e){if(!c)x=8}else{Ppb(e);if(!c)x=8}if((x|0)==8){x=0;w=Zra(7)|0;b=(zEa(a,d,w)|0)<<24>>24==2;IGa(a,d,w,b?1:2)}d=d+8|0}while((d|0)!=(g|0))}f[k>>2]=j;f[y>>2]=f[k>>2];DGa(a,y,7);u=z;return}f[y>>2]=7;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{j=p;i=f[j>>2]|0;j=f[j+4>>2]|0;o=i+-1640531078^7;o=j+-1640531527+(o<<6)+(o>>>2)^o;k=(d|0)==0;a:do if(k){c=0;x=38}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=38;else{e=f[e>>2]|0;if(!e)x=38;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=38;break a}if((f[e+8>>2]|0)==7)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=38;break a}}if((f[e+8>>2]|0)==7)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break}}}}}while(0);if((x|0)==38){x=0;g=Wpb(20)|0;f[g+8>>2]=7;h=g+12|0;f[h>>2]=i;f[h+4>>2]=j;f[g+4>>2]=o;f[g>>2]=0;l=+(((f[t>>2]|0)+1|0)>>>0);m=+n[v>>2];do if(k|m*+(d>>>0)<l){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;k=~~+W(+(l/m))>>>0;c=c>>>0<k>>>0?k:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=62}}else{f[g>>2]=f[c>>2];x=62}if((x|0)==62){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=7;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function lAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+16|0;y=z+8|0;k=z;if((f[a+28>>2]|0)==2){j=f[b>>2]|0;i=f[(f[a+8>>2]|0)+220>>2]|0;d=f[c>>2]|0;g=f[c+4>>2]|0;if((d|0)!=(g|0)){h=y+4|0;do{hwa(y,i,d);c=(f[y>>2]|0)!=0;e=f[h>>2]|0;if(!e){if(!c)x=8}else{Ppb(e);if(!c)x=8}if((x|0)==8){x=0;w=Zra(1)|0;b=(zEa(a,d,w)|0)<<24>>24==2;IGa(a,d,w,b?1:2)}d=d+8|0}while((d|0)!=(g|0))}f[k>>2]=j;f[y>>2]=f[k>>2];DGa(a,y,1);u=z;return}f[y>>2]=1;d=f[c>>2]|0;q=f[c+4>>2]|0;if((d|0)!=(q|0)){r=a+68|0;s=a+72|0;t=a+80|0;v=a+84|0;w=a+76|0;p=d;d=f[s>>2]|0;do{j=p;i=f[j>>2]|0;j=f[j+4>>2]|0;k=i+-1640531463|0;o=k^1;o=j+-1640531527+(k>>>2)+(o<<6)^o;k=(d|0)==0;a:do if(k){c=0;x=38}else{h=d+-1|0;g=(h&d|0)==0;if(g)c=o&h;else if(o>>>0<d>>>0)c=o;else c=(o>>>0)%(d>>>0)|0;e=f[(f[r>>2]|0)+(c<<2)>>2]|0;if(!e)x=38;else{e=f[e>>2]|0;if(!e)x=38;else{if(g)while(1){g=f[e+4>>2]|0;if(!((g|0)==(o|0)|(g&h|0)==(c|0))){x=38;break a}if((f[e+8>>2]|0)==1)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break a}}while(1){g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0;if((g|0)!=(c|0)){x=38;break a}}if((f[e+8>>2]|0)==1)if((f[e+12>>2]|0)==(i|0))if((f[e+16>>2]|0)==(j|0))break a;e=f[e>>2]|0;if(!e){x=38;break}}}}}while(0);if((x|0)==38){x=0;g=Wpb(20)|0;f[g+8>>2]=1;h=g+12|0;f[h>>2]=i;f[h+4>>2]=j;f[g+4>>2]=o;f[g>>2]=0;l=+(((f[t>>2]|0)+1|0)>>>0);m=+n[v>>2];do if(k|m*+(d>>>0)<l){c=d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;k=~~+W(+(l/m))>>>0;c=c>>>0<k>>>0?k:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;d=f[s>>2]|0}if(c>>>0>d>>>0)yAa(r,c);else if(c>>>0<d>>>0){e=~~+W(+(+((f[t>>2]|0)>>>0)/+n[v>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)e=1<<32-(_(e+-1|0)|0);else e=Meb(e)|0;c=c>>>0<e>>>0?e:c;if(c>>>0<d>>>0)yAa(r,c)}c=f[s>>2]|0;e=c+-1|0;if(!(e&c)){d=c;c=e&o;break}if(o>>>0<c>>>0){d=c;c=o}else{d=c;c=(o>>>0)%(c>>>0)|0}}while(0);e=(f[r>>2]|0)+(c<<2)|0;c=f[e>>2]|0;if(!c){f[g>>2]=f[w>>2];f[w>>2]=g;f[e>>2]=w;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;e=d+-1|0;if(!(e&d))c=c&e;else if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;c=(f[r>>2]|0)+(c<<2)|0;x=62}}else{f[g>>2]=f[c>>2];x=62}if((x|0)==62){x=0;f[c>>2]=g}f[t>>2]=(f[t>>2]|0)+1}p=p+8|0}while((p|0)!=(q|0))}d=a+92|0;c=f[d>>2]|0;if(c>>>0<(f[a+96>>2]|0)>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=1;f[d>>2]=c+8}else xAa(a+88|0,b,y);u=z;return}function mAa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;h=u;u=u+16|0;g=h+4|0;e=h;f[e>>2]=f[b>>2];f[g>>2]=f[e>>2];DGa(a,g,13);u=h;return}function nAa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=u;u=u+16|0;e=g+4|0;d=g;f[d>>2]=f[b>>2];f[e>>2]=f[d>>2];DGa(a,e,13);u=g;return}function oAa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=u;u=u+16|0;d=e+4|0;c=e;f[c>>2]=f[b>>2];f[d>>2]=f[c>>2];DGa(a,d,13);u=e;return}function pAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b>>2];f[d>>2]=f[e>>2];DGa(a,d,15);u=c;return}function qAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+8|0;e=i+4|0;g=i;if((f[a+28>>2]|0)==2){d=f[b>>2]|0;f[e>>2]=d;f[h>>2]=f[e>>2];TGa(a,h,0,0);f[g>>2]=d;f[h>>2]=f[g>>2];DGa(a,h,11);u=i;return}f[h>>2]=f[b>>2];f[h+4>>2]=c;f[h+8>>2]=d;b=a+160|0;c=f[b>>2]|0;if(c>>>0<(f[a+164>>2]|0)>>>0){f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[b>>2]=(f[b>>2]|0)+12}else wAa(a+156|0,h);u=i;return}function rAa(a,c,d){a=a|0;c=c|0;d=d|0;b[a+192>>0]=d;return}function sAa(a){a=a|0;return}function tAa(a,b){a=a|0;b=b|0;return}function uAa(a,b){a=a|0;b=b|0;return}function vAa(a,b){a=a|0;b=b|0;return}function wAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function xAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)ud();else{j=Wpb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=f[c>>2];if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;Zpb(k);return}function yAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();o=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function zAa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){EAa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;EAa(a,b);return}function AAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;C=F+52|0;A=F+40|0;D=F+28|0;B=F+8|0;x=F+4|0;y=F;f[C>>2]=b;z=(c&2|0)!=0;f[A>>2]=C;f[A+4>>2]=F+57;f[A+8>>2]=F+56;q=f[(f[a+8>>2]|0)+220>>2]|0;f[D>>2]=0;E=D+4|0;f[E>>2]=0;f[D+8>>2]=0;do if(!(c&1)){r=B+16|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;n[r>>2]=1.0;b=(Ava(q,d)|0)+8|0;b=f[b>>2]|0;if(b|0){s=B+4|0;t=B+12|0;v=B+8|0;w=D+8|0;do{o=f[(f[b+8>>2]|0)+8>>2]|0;f[x>>2]=o;l=f[s>>2]|0;m=(l|0)==0;a:do if(m){e=0;p=29}else{i=l+-1|0;h=(i&l|0)==0;if(h)e=i&o;else if(o>>>0<l>>>0)e=o;else e=(o>>>0)%(l>>>0)|0;g=f[(f[B>>2]|0)+(e<<2)>>2]|0;if(!g)p=29;else{if(h)while(1){g=f[g>>2]|0;if(!g){p=29;break a}h=f[g+4>>2]|0;if(!((h|0)==(o|0)|(h&i|0)==(e|0))){p=29;break a}if((f[g+8>>2]|0)==(o|0))break a}do{g=f[g>>2]|0;if(!g){p=29;break a}h=f[g+4>>2]|0;if((h|0)!=(o|0)){if(h>>>0>=l>>>0)h=(h>>>0)%(l>>>0)|0;if((h|0)!=(e|0)){p=29;break a}}}while((f[g+8>>2]|0)!=(o|0))}}while(0);if((p|0)==29){p=0;i=Wpb(12)|0;f[i+8>>2]=o;f[i+4>>2]=o;f[i>>2]=0;j=+(((f[t>>2]|0)+1|0)>>>0);k=+n[r>>2];do if(m|k*+(l>>>0)<j){e=l<<1|(l>>>0<3|(l+-1&l|0)!=0)&1;g=~~+W(+(j/k))>>>0;Hia(B,e>>>0<g>>>0?g:e);e=f[s>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&o;break}if(o>>>0<e>>>0){h=e;e=o}else{h=e;e=(o>>>0)%(e>>>0)|0}}else h=l;while(0);g=(f[B>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[i>>2]=f[v>>2];f[v>>2]=i;f[g>>2]=v;e=f[i>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[B>>2]|0)+(e<<2)|0;p=42}}else{f[i>>2]=f[e>>2];p=42}if((p|0)==42){p=0;f[e>>2]=i}o=(f[t>>2]|0)+1|0;f[t>>2]=o;if(o>>>0>1){f[y>>2]=-1;e=f[E>>2]|0;if(e>>>0<(f[w>>2]|0)>>>0){f[e>>2]=-1;f[E>>2]=e+4}else y3(D,y)}e=f[E>>2]|0;if((e|0)==(f[w>>2]|0))BD(D,x);else{f[e>>2]=f[x>>2];f[E>>2]=e+4}BAa(A,_wa(q,f[x>>2]|0)|0,D)}b=f[b>>2]|0}while((b|0)!=0)}if(z){b=f[B+12>>2]|0;e=f[E>>2]|0;g=f[D>>2]|0;if(!b)i=0;else i=(X(b,-2)|0|1)+(e-g>>2)|0;b=g;h=e;switch(e-g>>2|0){case 0:{dia(D,1);b=f[D>>2]|0;break}case 1:break;default:{e=g+4|0;if((e|0)!=(h|0))f[E>>2]=h+(~((h+-4-e|0)>>>2)<<2)}}f[b>>2]=i}b=f[B+8>>2]|0;if(b|0)do{A=b;b=f[b>>2]|0;Zpb(A)}while((b|0)!=0);b=f[B>>2]|0;f[B>>2]=0;if(b|0)Zpb(b);p=65}else{b=_wa(q,d)|0;if(!b){SGa(a,f[C>>2]|0,c,d,0,0,0);break}BAa(A,b,D);if(z){e=f[E>>2]|0;b=f[D>>2]|0;h=e-b>>2;switch(h|0){case 0:{dia(D,1);b=f[D>>2]|0;break}case 1:break;default:{g=b+4|0;if((g|0)!=(e|0))f[E>>2]=e+(~((e+-4-g|0)>>>2)<<2)}}f[b>>2]=h;p=65}else p=65}while(0);if((p|0)==65){B=f[D>>2]|0;SGa(a,f[C>>2]|0,c,d,B,(f[E>>2]|0)-B>>2,1)}b=f[D>>2]|0;if(!b){u=F;return}e=f[E>>2]|0;if((e|0)!=(b|0))f[E>>2]=e+(~((e+-4-b|0)>>>2)<<2);Zpb(b);u=F;return}function BAa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;switch(f[f[a>>2]>>2]|0){case 1:{CAa(c,f[b+212>>2]|0);a=f[b+208>>2]|0;if(!a)return;g=c+4|0;e=c+8|0;do{b=a+8|0;d=f[g>>2]|0;if((d|0)==(f[e>>2]|0))BD(c,b);else{f[d>>2]=f[b>>2];f[g>>2]=d+4}a=f[a>>2]|0}while((a|0)!=0);return}case 5:{CAa(c,f[b+32>>2]|0);a=f[b+28>>2]|0;if(!a)return;e=c+4|0;g=c+8|0;do{b=a;d=f[(f[(f[b+16>>2]|0)+4>>2]|0)+44>>2]|0;do if((f[d+32>>2]|0)!=(0-((f[d+24>>2]|0)+(f[d+28>>2]|0))|0)){b=b+8|0;d=f[e>>2]|0;if((d|0)==(f[g>>2]|0)){BD(c,b);break}else{f[d>>2]=f[b>>2];f[e>>2]=d+4;break}}while(0);a=f[a>>2]|0}while((a|0)!=0);return}default:return}}function CAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[a>>2]|0;j=a+4|0;d=f[j>>2]|0;g=h;c=d;i=a+8|0;e=f[i>>2]|0;if((h|0)==(d|0)&(e|0)==(g|0)){if(!b)return;if(b>>>0>1073741823)ud();c=c-g|0;d=Wpb(b<<2)|0;if((c|0)>0)Irb(d|0,h|0,c|0)|0;f[a>>2]=d;f[j>>2]=d+(c>>2<<2);f[i>>2]=d+(b<<2);if(!h)return;Zpb(h);return}h=c-g>>2;if(e-g>>2>>>0<b>>>0){c=e;while(1){if(d>>>0<c>>>0){f[d>>2]=0;f[j>>2]=d+4}else{DAa(a);g=f[a>>2]|0;c=f[i>>2]|0}if(c-g>>2>>>0>=b>>>0)break;d=f[j>>2]|0}c=f[j>>2]|0}d=c-g>>2;e=c;if(h>>>0>d>>>0){dia(a,h-d|0);return}if(h>>>0>=d>>>0)return;c=g+(h<<2)|0;if((c|0)==(e|0))return;f[j>>2]=e+(~((e+-4-c|0)>>>2)<<2);return}function DAa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+4|0;i=f[a>>2]|0;j=(f[e>>2]|0)-i|0;d=j>>2;b=d+1|0;if(b>>>0>1073741823)fob(a);k=a+8|0;l=(f[k>>2]|0)-i|0;c=l>>1;c=l>>2>>>0<536870911?(c>>>0<b>>>0?b:c):1073741823;do if(!c){g=0;h=0}else if(c>>>0>1073741823)ud();else{h=Wpb(c<<2)|0;g=h;break}while(0);b=g+(d<<2)|0;f[b>>2]=0;if((j|0)>0)Irb(h|0,i|0,j|0)|0;f[a>>2]=g;f[e>>2]=b+4;f[k>>2]=g+(c<<2);if(!i)return;Zpb(i);return}function EAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();o=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function FAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)fob(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0<c>>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)ud();else{i=Wpb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)Irb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;Zpb(j);return}function GAa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0;m=u;u=u+48|0;h=m+20|0;g=m+12|0;k=m;l=m+24|0;i=m+16|0;f[h>>2]=c;f[g>>2]=d;c=f[(f[a+8>>2]|0)+220>>2]|0;f[k>>2]=g;f[k+4>>2]=h;f[k+8>>2]=c;j=+HAa(k);c=yza(a+352|0,h)|0;p[c>>3]=j;c=a+176|0;if((f[h>>2]|0)==(f[a+172>>2]|0)){b[c>>0]=1;xza(a)}if(!(b[c>>0]|0)){u=m;return}f[l>>2]=0;k=l+4|0;f[k>>2]=0;f[l+8>>2]=0;c=f[a+380>>2]|0;if(c|0){g=l+8|0;do{e=c;d=f[e+8>>2]|0;f[i>>2]=d;do if((f[e+12>>2]|0)==(f[h>>2]|0)){e=f[k>>2]|0;if((e|0)==(f[g>>2]|0)){BD(l,i);break}else{f[e>>2]=d;f[k>>2]=e+4;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);d=f[l>>2]|0;c=f[k>>2]|0;if((d|0)!=(c|0)){do{mza(a,f[d>>2]|0,j);d=d+4|0}while((d|0)!=(c|0));c=f[l>>2]|0}if(c|0){d=f[k>>2]|0;if((d|0)!=(c|0))f[k>>2]=d+(~((d+-4-c|0)>>>2)<<2);Zpb(c)}}u=m;return}function HAa(a){a=a|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+368|0;d=j+352|0;h=j+312|0;e=j+304|0;i=j;g=f[f[a>>2]>>2]|0;if(!g){c=0.0;u=j;return +c}g=f[g>>2]|0;f[d>>2]=f[f[a+4>>2]>>2];f[d+4>>2]=g;pwa(e,f[a+8>>2]|0,d);f$a(h,(f[e>>2]|0)+8|0);a=f[e+4>>2]|0;if(a|0)Ppb(a);a=i+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[i+84>>2]=0;a=i+92|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[i+108>>2]=0;a=i+116|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[i+128>>2]=-1;f[i+132>>2]=-1;a=i+136|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;n[i+164>>2]=1.0;a=i+256|0;d=i+300|0;e=i+172|0;g=e+76|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=a;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[d>>2]=1.0;a=I$a(h,i)|0;c=a?+p[i+248>>3]:0.0;IAa(i);a=h+12|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);u=j;return +c}function IAa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a+292>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);Zpb(d)}while((c|0)!=0);j=a+284|0;c=f[j>>2]|0;f[j>>2]=0;if(c|0)Zpb(c);JAa(a+272|0);g=a+260|0;c=f[g>>2]|0;if(c|0){h=a+264|0;d=f[h>>2]|0;if((d|0)!=(c|0)){do{e=d+-16|0;f[h>>2]=e;d=d+-12|0;if((b[d+11>>0]|0)<0){Zpb(f[d>>2]|0);d=f[h>>2]|0}else d=e}while((d|0)!=(c|0));c=f[g>>2]|0}Zpb(c)}j=a+256|0;c=f[j>>2]|0;f[j>>2]=0;if(c|0)Zpb(c);i=a+236|0;c=f[i>>2]|0;if(c|0){j=a+240|0;d=f[j>>2]|0;if((d|0)!=(c|0)){do{f[j>>2]=d+-224;e=f[d+-12>>2]|0;if(e|0){g=d+-8|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~(((h+-12-e|0)>>>0)/12|0)*12|0);Zpb(e)}KAa(d+-204|0);d=d+-220|0;if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);d=f[j>>2]|0}while((d|0)!=(c|0));c=f[i>>2]|0}Zpb(c)}e=a+224|0;c=f[e>>2]|0;if(c|0){g=a+228|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{j=d+-96|0;f[g>>2]=j;LAa(j);d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Zpb(c)}e=a+212|0;c=f[e>>2]|0;if(c|0){g=a+216|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{j=d+-180|0;f[g>>2]=j;KAa(j);d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Zpb(c)}c=f[a+172>>2]|0;if(!c){KAa(a);return}d=a+176|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c);KAa(a);return}function JAa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=f[a>>2]|0;if(!c)return;i=a+4|0;d=f[i>>2]|0;if((d|0)!=(c|0)){do{f[i>>2]=d+-52;h=f[d+-12>>2]|0;if(h|0){e=d+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~((g+-4-h|0)>>>2)<<2);Zpb(h)}e=f[d+-28>>2]|0;if(e|0){g=d+-24|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);Zpb(e)}d=d+-48|0;if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);d=f[i>>2]|0}while((d|0)!=(c|0));c=f[a>>2]|0}Zpb(c);return}function KAa(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+156>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0){g=d+20|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Zpb(e)}Zpb(d)}while((c|0)!=0);g=a+148|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Zpb(c);c=a+136|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+116|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+92|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+8|0;if((b[c+11>>0]|0)>=0)return;Zpb(f[c>>2]|0);return}function LAa(a){a=a|0;var c=0,d=0,e=0;c=f[a+80>>2]|0;if(c|0){d=a+84|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-32-c|0)>>>5)<<5);Zpb(c)}c=f[a+68>>2]|0;if(c|0)do{e=c;c=f[c>>2]|0;Zpb(e)}while((c|0)!=0);e=a+60|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c);c=f[a+48>>2]|0;if(c|0){d=a+52|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}c=f[a+36>>2]|0;if(c|0){d=a+40|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}e=a+32|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){KAa(c);Zpb(c)}c=f[a+20>>2]|0;if(c|0){d=a+24|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Zpb(c)}e=a+16|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Zpb(c);c=a+4|0;if((b[c+11>>0]|0)>=0)return;Zpb(f[c>>2]|0);return}function MAa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a>>2]|0;if(!c)return;j=a+4|0;d=f[j>>2]|0;if((d|0)!=(c|0)){do{h=d+-4|0;f[j>>2]=h;i=f[h>>2]|0;f[h>>2]=0;if(i|0){NAa((f[i+4>>2]|0)+44|0,i+88|0);h=i+20|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);g=i+8|0;d=f[g>>2]|0;if(d|0){h=i+12|0;e=f[h>>2]|0;if((e|0)!=(d|0)){do{e=e+-80|0;f[h>>2]=e;if((b[e+11>>0]|0)<0){Zpb(f[e>>2]|0);e=f[h>>2]|0}}while((e|0)!=(d|0));d=f[g>>2]|0}Zpb(d)}d=f[i>>2]|0;f[i>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(i)}d=f[j>>2]|0}while((d|0)!=(c|0));c=f[a>>2]|0}Zpb(c);return}function NAa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j;c=f[b>>2]|0;i=a+4|0;e=f[a>>2]|0;b=e;if(c>>>0>=(f[i>>2]|0)-e>>5>>>0){u=j;return}d=g+16|0;f[d>>2]=0;e=b+(c<<5)|0;c=b+(c<<5)+16|0;b=f[c>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);f[c>>2]=0;b=f[d>>2]|0;do if(!b){f[c>>2]=0;h=11}else if((g|0)==(b|0)){f[c>>2]=e;h=f[d>>2]|0;nh[f[(f[h>>2]|0)+12>>2]&1023](h,e);h=11;break}else{f[c>>2]=b;f[d>>2]=0;b=0;c=0;break}while(0);if((h|0)==11){c=f[d>>2]|0;b=c}if((g|0)==(b|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);b=f[i>>2]|0;if((f[a>>2]|0)==(b|0)){u=j;return}while(1){if(!(f[b+-16>>2]|0)){c=b;d=0;e=0}else{h=25;break}b=b+-32|0;while(1){h=c+-32|0;f[i>>2]=h;if((h|0)==(d|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);c=f[i>>2]|0;if((c|0)==(b|0))break;e=f[c+-16>>2]|0;d=e}if((f[a>>2]|0)==(b|0)){h=25;break}}if((h|0)==25){u=j;return}}function OAa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;f[a>>2]=29628;e=Wpb(416)|0;xDa(e,a);f[e>>2]=29860;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=2;g=e+32|0;d=e+48|0;h=e+68|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;b[g+12>>0]=0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;b[d+16>>0]=0;n[e+84>>2]=1.0;d=e+152|0;g=e+88|0;h=g+64|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[d>>2]=1.0;d=e+156|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[e+172>>2]=-1;b[e+176>>0]=0;p[e+184>>3]=0.0;b[e+192>>0]=2;b[e+260>>0]=0;d=e+328|0;g=e+264|0;h=g+64|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));n[d>>2]=1.0;d=e+332|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[e+348>>2]=1.0;d=e+352|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[e+368>>2]=1.0;d=e+372|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[e+388>>2]=1.0;f[e+408>>2]=0;f[i>>2]=e;ICa(a,i,c);d=f[i>>2]|0;f[i>>2]=0;if(!d){f[a>>2]=29628;i=a+236|0;h=Wpb(16)|0;jJa(h,a);f[h>>2]=29664;g=h+8|0;f[g>>2]=a;g=h+12|0;f[g>>2]=0;g=h;f[i>>2]=g;i=a+240|0;a=Wpb(4)|0;G0a(a,h,0);f[i>>2]=a;u=j;return}fh[f[(f[d>>2]|0)+4>>2]&2047](d);f[a>>2]=29628;i=a+236|0;h=Wpb(16)|0;jJa(h,a);f[h>>2]=29664;g=h+8|0;f[g>>2]=a;g=h+12|0;f[g>>2]=0;g=h;f[i>>2]=g;i=a+240|0;a=Wpb(4)|0;G0a(a,h,0);f[i>>2]=a;u=j;return}function PAa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;d=Jdb(d,197826)|0;f[c+4>>2]=d;if(d|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}c=Tbb()|0;c=Gcb(f[c>>2]|0)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=cdb(c)|0;if(d>>>0>4294967279)aqb(a);if(d>>>0<11){b[a+11>>0]=d;if(d)e=7}else{g=d+16&-16;e=Wpb(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e;e=7}if((e|0)==7)Irb(a|0,c|0,d|0)|0;b[a+d>>0]=0;return}function QAa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;K=u;u=u+96|0;F=K;G=K+80|0;I=a+16|0;c=f[I>>2]|0;J=a+20|0;if((c|0)==(f[J>>2]|0)){u=K;return}z=f[c>>2]|0;A=+n$();B=z+4|0;C=z+96|0;D=z+8|0;E=z+12|0;j=F+12|0;k=F+64|0;m=F+11|0;o=G+11|0;q=G+4|0;r=F+72|0;s=z+24|0;t=z+28|0;v=F+16|0;w=z+20|0;x=z+92|0;y=z+80|0;do{d=f[B>>2]|0;i=d+240|0;c=b[C>>0]|0;if(c&1){if(c&2){R0a(f[i>>2]|0,f[x>>2]|0,0);c=b[C>>0]&-3;b[C>>0]=c}g=f[d+232>>2]|0;L=f[w>>2]|0;f[w>>2]=0;d=f[x>>2]|0;l=+p[y>>3];f[g+28>>2]=0;h=g+48|0;e=f[h>>2]|0;f[h>>2]=L;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);f[g+168>>2]=d;b[g+192>>0]=(c&255)>>>1&2^2;f[g+172>>2]=-1;b[g+176>>0]=0;p[g+184>>3]=l;b[g+64>>0]=(c&255)>>>3&1;c=f[s>>2]|0;L=(c|0)!=0;d=g+260|0;b[d>>0]=L&1;if(L){L=g+196|0;f[L>>2]=f[c>>2];f[g+212>>2]=f[c+12>>2];f[g+228>>2]=f[c+24>>2];f[g+244>>2]=f[c+36>>2];f[g+200>>2]=f[c+4>>2];f[g+216>>2]=f[c+16>>2];f[g+232>>2]=f[c+28>>2];f[g+248>>2]=f[c+40>>2];f[g+204>>2]=f[c+8>>2];f[g+220>>2]=f[c+20>>2];f[g+236>>2]=f[c+32>>2];f[g+252>>2]=f[c+44>>2];f[g+208>>2]=0;f[g+224>>2]=0;f[g+240>>2]=0;f[g+256>>2]=1065353216;n[F>>2]=9.999999747378752e-06;L=((RAa(L,F)|0)^1)&1;b[d>>0]=L}b[C>>0]=b[C>>0]&-2}g=J0a(f[i>>2]|0)|0;h=g+4|0;e=f[h>>2]|0;c=f[g>>2]|0;d=e-c|0;if(d>>>0<16384){SAa(g,16384-d|0);c=f[g>>2]|0}else if((d|0)!=16384){d=c+16384|0;if((d|0)!=(e|0))f[h>>2]=d}d=f[z>>2]|0;d=Qg[f[(f[d>>2]|0)+8>>2]&127](d,c,16384)|0;e=f[h>>2]|0;c=f[g>>2]|0;if(d>>>0<(e-c|0)>>>0){c=c+d|0;if((c|0)!=(e|0))f[h>>2]=c}K0a(f[i>>2]|0,g)|0;if(b[C>>0]&16){H=40;break}if(!d){T0a(f[i>>2]|0);e=f[E>>2]|0;if((f[D>>2]|0)==(e|0)){H=40;break}cqb(F,e+-80|0);c=f[e+-68>>2]|0;if(!c)c=0;else{g=v;d=g+48|0;do{f[g>>2]=f[c>>2];g=g+4|0;c=c+4|0}while((g|0)<(d|0));c=v}f[j>>2]=c;c=e+-16|0;f[k>>2]=f[c>>2];f[k+4>>2]=f[c+4>>2];f[k+8>>2]=f[c+8>>2];b[k+12>>0]=b[c+12>>0]|0;c=f[E>>2]|0;d=c+-80|0;do{c=c+-80|0;f[E>>2]=c;if((b[c+11>>0]|0)<0){Zpb(f[c>>2]|0);c=f[E>>2]|0}}while((c|0)!=(d|0));L=Wpb(8)|0;f[L>>2]=30060;f[L+4>>2]=0;PAa(G,L,(b[m>>0]|0)<0?f[F>>2]|0:F);c=f[z>>2]|0;f[z>>2]=L;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b[o>>0]|0;if(!((c<<24>>24<0?f[q>>2]|0:c&255)|0)){R0a(f[i>>2]|0,f[r>>2]|0,0);b[C>>0]=b[C>>0]|1;c=f[j>>2]|0;if(!c)c=0;else{g=t;d=g+48|0;do{f[g>>2]=f[c>>2];g=g+4|0;c=c+4|0}while((g|0)<(d|0));c=t}f[s>>2]=c;d=0;c=b[o>>0]|0}else d=1;if(c<<24>>24<0)Zpb(f[G>>2]|0);if((b[m>>0]|0)<0)Zpb(f[F>>2]|0);if(d|0){H=40;break}}}while(+n$()-A<16.0);if((H|0)==40){L=f[I>>2]|0;h=f[L>>2]|0;f[L>>2]=0;if(h|0){NAa((f[h+4>>2]|0)+44|0,h+88|0);L=h+20|0;c=f[L>>2]|0;f[L>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=h+8|0;c=f[e>>2]|0;if(c|0){g=h+12|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{d=d+-80|0;f[g>>2]=d;if((b[d+11>>0]|0)<0){Zpb(f[d>>2]|0);d=f[g>>2]|0}}while((d|0)!=(c|0));c=f[e>>2]|0}Zpb(c)}c=f[h>>2]|0;f[h>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);Zpb(h)}d=f[I>>2]|0;c=d+4|0;k=f[J>>2]|0;if((c|0)==(k|0))H=69;else{do{L=f[c>>2]|0;f[c>>2]=0;j=f[d>>2]|0;f[d>>2]=L;if(j|0){NAa((f[j+4>>2]|0)+44|0,j+88|0);L=j+20|0;e=f[L>>2]|0;f[L>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);h=j+8|0;e=f[h>>2]|0;if(e|0){i=j+12|0;g=f[i>>2]|0;if((g|0)!=(e|0)){do{g=g+-80|0;f[i>>2]=g;if((b[g+11>>0]|0)<0){Zpb(f[g>>2]|0);g=f[i>>2]|0}}while((g|0)!=(e|0));e=f[h>>2]|0}Zpb(e)}e=f[j>>2]|0;f[j>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);Zpb(j)}c=c+4|0;d=d+4|0}while((c|0)!=(k|0));c=f[J>>2]|0;if((c|0)!=(d|0))H=69}if((H|0)==69)do{L=c+-4|0;f[J>>2]=L;i=f[L>>2]|0;f[L>>2]=0;if(i|0){NAa((f[i+4>>2]|0)+44|0,i+88|0);L=i+20|0;c=f[L>>2]|0;f[L>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);g=i+8|0;c=f[g>>2]|0;if(c|0){h=i+12|0;e=f[h>>2]|0;if((e|0)!=(c|0)){do{e=e+-80|0;f[h>>2]=e;if((b[e+11>>0]|0)<0){Zpb(f[e>>2]|0);e=f[h>>2]|0}}while((e|0)!=(c|0));c=f[g>>2]|0}Zpb(c)}c=f[i>>2]|0;f[i>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);Zpb(i)}c=f[J>>2]|0}while((c|0)!=(d|0));L=a+28|0;f[L>>2]=1;sza(a);f[L>>2]=2;sza(a);gva((f[a+8>>2]|0)+104|0)}if((f[I>>2]|0)==(f[J>>2]|0)){u=K;return}o$(783,a,-1);u=K;return}function RAa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+n[b>>2];d=+n[a>>2];e=+K(+(d+-1.0));d=+K(+d);if(!(e<=(d>1.0?1.0:d)*c)){a=0;return a|0}if(!(+K(+(+n[a+4>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+8>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+12>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+16>>2]))<=c)){a=0;return a|0}e=+n[a+20>>2];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}if(!(+K(+(+n[a+24>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+28>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+32>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+36>>2]))<=c)){a=0;return a|0}e=+n[a+40>>2];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}if(!(+K(+(+n[a+44>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+48>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+52>>2]))<=c)){a=0;return a|0}if(!(+K(+(+n[a+56>>2]))<=c)){a=0;return a|0}e=+n[a+60>>2];d=+K(+(e+-1.0));e=+K(+e);if(!(d<=(e>1.0?1.0:e)*c)){a=0;return a|0}a=1;return a|0}function SAa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((g-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;h=d-e|0;d=h+c|0;if((d|0)<0)fob(a);g=g-e|0;i=g<<1;d=g>>>0<1073741823?(i>>>0<d>>>0?d:i):2147483647;if(!d)e=0;else e=Wpb(d)|0;i=e+h|0;h=e+d|0;g=i;d=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);c=f[a>>2]|0;e=(f[k>>2]|0)-c|0;d=i+(0-e)|0;if((e|0)>0)Irb(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g;f[j>>2]=h;if(!c)return;Zpb(c);return}function TAa(a,b){a=a|0;b=b|0;if(!a)return;QAa(b);return}function UAa(a){a=a|0;Zpb(a);return}function VAa(a){a=a|0;var b=0;b=Wpb(8)|0;f[b>>2]=30080;f[b+4>>2]=f[a+4>>2];return b|0}function WAa(a,b){a=a|0;b=b|0;f[b>>2]=30080;f[b+4>>2]=f[a+4>>2];return}function XAa(a){a=a|0;return}function YAa(a){a=a|0;Zpb(a);return}function ZAa(a,c){a=a|0;c=c|0;c=(f[a+4>>2]|0)+96|0;b[c>>0]=b[c>>0]|16;return}function _Aa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==144533?a+4|0:0)|0}function $Aa(a){a=a|0;return 10712}function aBa(a){a=a|0;f[a>>2]=30060;a=f[a+4>>2]|0;if(!a)return;Pdb(a)|0;return}function bBa(a){a=a|0;var b=0;f[a>>2]=30060;b=f[a+4>>2]|0;if(!b){Zpb(a);return}Pdb(b)|0;Zpb(a);return}function cBa(a,b,c){a=a|0;b=b|0;c=c|0;return zeb(b,1,c,f[a+4>>2]|0)|0}function dBa(a,b,c,d,e,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;l=u;u=u+16|0;k=l+4|0;m=l;a=f[a+232>>2]|0;n=f[b>>2]|0;f[b>>2]=0;f[k>>2]=n;b=f[d>>2]|0;f[d>>2]=0;f[m>>2]=b;eBa(a,k,c,m,e,g,h,i,j);a=f[m>>2]|0;f[m>>2]=0;if(a|0)_pb(a);a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=l;return}function eBa(a,c,d,e,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=+i;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+32|0;o=x+24|0;q=x;l=f[e>>2]|0;if(!((g|0)!=0&(l|0)!=0)){u=x;return}n=Wpb(20)|0;f[n>>2]=30124;w=n+4|0;f[n+16>>2]=0;f[e>>2]=0;v=Wpb(16)|0;f[v+8>>2]=l;f[v+12>>2]=g;f[v+4>>2]=w;f[v>>2]=w;f[n+8>>2]=v;f[w>>2]=v;f[n+12>>2]=1;w=f[a+8>>2]|0;v=a+16|0;m=Wpb(104)|0;f[m>>2]=n;f[m+4>>2]=w;n=m+8|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[n+12>>2]=0;f[n+16>>2]=0;p[m+80>>3]=1.0;f[m+92>>2]=0;b[m+96>>0]=0;n=w+44|0;r=m;g=q+16|0;f[q>>2]=30080;f[q+4>>2]=r;f[g>>2]=q;b[o>>0]=0;l=w+48|0;e=f[l>>2]|0;if(e>>>0<(f[w+52>>2]|0)>>>0){f[e+16>>2]=e;w=f[g>>2]|0;nh[f[(f[w>>2]|0)+12>>2]&1023](w,e);w=f[l>>2]|0;b[e+24>>0]=0;e=w+32|0;f[l>>2]=e}else{y$(n,q,o);e=f[l>>2]|0}l=f[g>>2]|0;f[m+88>>2]=(e-(f[n>>2]|0)>>5)+-1;if((q|0)==(l|0))fh[f[(f[l>>2]|0)+16>>2]&2047](l);else if(l|0)fh[f[(f[l>>2]|0)+20>>2]&2047](l);w=a+20|0;l=f[w>>2]|0;s=a+24|0;q=f[s>>2]|0;e=q;if(l>>>0<q>>>0){f[l>>2]=r;f[w>>2]=l+4}else{o=f[v>>2]|0;n=l-o>>2;g=n+1|0;q=o;if(g>>>0>1073741823)fob(v);e=e-o|0;m=e>>1;m=e>>2>>>0<536870911?(m>>>0<g>>>0?g:m):1073741823;do if(!m)t=0;else if(m>>>0>1073741823)ud();else{t=Wpb(m<<2)|0;break}while(0);e=t+(n<<2)|0;g=e;n=t+(m<<2)|0;f[e>>2]=r;m=e+4|0;if((l|0)==(q|0))r=o;else{do{l=l+-4|0;t=f[l>>2]|0;f[l>>2]=0;f[e+-4>>2]=t;e=g+-4|0;g=e}while((l|0)!=(q|0));r=f[v>>2]|0;l=f[w>>2]|0}f[v>>2]=g;f[w>>2]=m;f[s>>2]=n;q=r;if((l|0)!=(q|0)){n=l;do{n=n+-4|0;o=f[n>>2]|0;f[n>>2]=0;if(o|0){NAa((f[o+4>>2]|0)+44|0,o+88|0);v=o+20|0;l=f[v>>2]|0;f[v>>2]=0;if(l|0)fh[f[(f[l>>2]|0)+4>>2]&2047](l);g=o+8|0;l=f[g>>2]|0;if(l|0){m=o+12|0;e=f[m>>2]|0;if((e|0)!=(l|0)){do{e=e+-80|0;f[m>>2]=e;if((b[e+11>>0]|0)<0){Zpb(f[e>>2]|0);e=f[m>>2]|0}}while((e|0)!=(l|0));l=f[g>>2]|0}Zpb(l)}l=f[o>>2]|0;f[o>>2]=0;if(l|0)fh[f[(f[l>>2]|0)+4>>2]&2047](l);Zpb(o)}}while((n|0)!=(q|0))}if(r|0)Zpb(r)}o=f[(f[w>>2]|0)+-4>>2]|0;w=f[c>>2]|0;f[c>>2]=0;n=j&1;m=k&1;k=o+20|0;l=f[k>>2]|0;f[k>>2]=w;if(l|0)fh[f[(f[l>>2]|0)+4>>2]&2047](l);f[o+92>>2]=d;if(!h)l=0;else{l=o+28|0;g=l;e=g+48|0;do{f[g>>2]=f[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(e|0))}f[o+24>>2]=l;p[o+80>>3]=i;d=o+96|0;b[d>>0]=n<<2&255|m<<3&255|b[d>>0]&-32|3;o$(784,a,-1);u=x;return}function fBa(a,b){a=a|0;b=b|0;if(!a)return;QAa(b);return}function gBa(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=30124;d=a+4|0;b=a+12|0;if(!(f[b>>2]|0))return;a=f[a+8>>2]|0;c=(f[d>>2]|0)+4|0;e=f[a>>2]|0;f[e+4>>2]=f[c>>2];f[f[c>>2]>>2]=e;f[b>>2]=0;if((a|0)==(d|0))return;do{b=a;a=f[a+4>>2]|0;e=b+8|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)_pb(c);Zpb(b)}while((a|0)!=(d|0));return}function hBa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=30124;e=a+4|0;b=a+12|0;if(!(f[b>>2]|0)){Zpb(a);return}c=f[a+8>>2]|0;d=(f[e>>2]|0)+4|0;g=f[c>>2]|0;f[g+4>>2]=f[d>>2];f[f[d>>2]>>2]=g;f[b>>2]=0;if((c|0)==(e|0)){Zpb(a);return}do{b=c;c=f[c+4>>2]|0;g=b+8|0;d=f[g>>2]|0;f[g>>2]=0;if(d|0)_pb(d);Zpb(b)}while((c|0)!=(e|0));Zpb(a);return}function iBa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+12|0;if(!(f[i>>2]|0)){l=0;return l|0}j=a+8|0;k=a+16|0;d=0;h=f[k>>2]|0;while(1){e=f[j>>2]|0;g=(f[e+12>>2]|0)-h|0;if((c-d|0)>>>0<g>>>0)break;Irb(b|0,(f[e+8>>2]|0)+h|0,g|0)|0;d=g+d|0;e=f[j>>2]|0;h=e+4|0;g=f[e>>2]|0;f[g+4>>2]=f[h>>2];f[f[h>>2]>>2]=g;f[i>>2]=(f[i>>2]|0)+-1;h=e+8|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)_pb(g);Zpb(e);f[k>>2]=0;if(!(f[i>>2]|0)){l=9;break}else h=0}if((l|0)==9)return d|0;if(d>>>0>=c>>>0){l=d;return l|0}k=c-d|0;l=a+16|0;Irb(b|0,(f[(f[a+8>>2]|0)+8>>2]|0)+(f[l>>2]|0)|0,k|0)|0;f[l>>2]=(f[l>>2]|0)+k;l=c;return l|0}function jBa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a+232>>2]|0;d=a+240|0;R0a(f[d>>2]|0,0,0);e=c+28|0;f[e>>2]=0;h=c+48|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);f[c+168>>2]=0;b[c+192>>0]=2;f[c+172>>2]=-1;b[c+176>>0]=0;p[c+184>>3]=1.0;b[c+64>>0]=0;b[c+260>>0]=0;P0a(f[d>>2]|0);gva(a+20|0);gva(a+104|0);f[e>>2]=1;sza(c);f[e>>2]=2;sza(c);return}function kBa(a){a=a|0;var b=0,c=0;f[a>>2]=30144;c=a+236|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){DCa(a);return}qBa(b);Zpb(b);DCa(a);return}function lBa(a){a=a|0;var b=0,c=0;f[a>>2]=30144;c=a+236|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){qBa(b);Zpb(b)}DCa(a);Zpb(a);return}function mBa(a){a=a|0;return}function nBa(a){a=a|0;return V0a(f[(f[f[a+236>>2]>>2]|0)+8>>2]|0)|0}function oBa(a){a=a|0;var c=0,d=0,e=0;c=a+236|0;d=f[c>>2]|0;e=d+41|0;if(b[e>>0]|0)return 1;b[e>>0]=1;pBa((f[a+228>>2]|0)+36|0,d+44|0);e=f[a+232>>2]|0;fh[f[(f[e>>2]|0)+8>>2]&2047](e);j9a((f[f[c>>2]>>2]|0)+56|0);return 1}function pBa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j;c=f[b>>2]|0;i=a+4|0;e=f[a>>2]|0;b=e;if(c>>>0>=(f[i>>2]|0)-e>>5>>>0){u=j;return}d=g+16|0;f[d>>2]=0;e=b+(c<<5)|0;c=b+(c<<5)+16|0;b=f[c>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);f[c>>2]=0;b=f[d>>2]|0;do if(!b){f[c>>2]=0;h=11}else if((g|0)==(b|0)){f[c>>2]=e;h=f[d>>2]|0;nh[f[(f[h>>2]|0)+12>>2]&1023](h,e);h=11;break}else{f[c>>2]=b;f[d>>2]=0;b=0;c=0;break}while(0);if((h|0)==11){c=f[d>>2]|0;b=c}if((g|0)==(b|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);b=f[i>>2]|0;if((f[a>>2]|0)==(b|0)){u=j;return}while(1){if(!(f[b+-16>>2]|0)){c=b;d=0;e=0}else{h=25;break}b=b+-32|0;while(1){h=c+-32|0;f[i>>2]=h;if((h|0)==(d|0))fh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)fh[f[(f[e>>2]|0)+20>>2]&2047](e);c=f[i>>2]|0;if((c|0)==(b|0))break;e=f[c+-16>>2]|0;d=e}if((f[a>>2]|0)==(b|0)){h=25;break}}if((h|0)==25){u=j;return}}function qBa(a){a=a|0;var c=0,d=0;c=a+28|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+16|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+4|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e9a(d+56|0);f[d+12>>2]=30180;c=d+44|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=d+32|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);a=d+8|0;c=f[a>>2]|0;f[a>>2]=0;if(c|0){H0a(c);Zpb(c)}a=d+4|0;c=f[a>>2]|0;f[a>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);Zpb(d);return}function rBa(a){a=a|0;var c=0;f[a>>2]=30180;c=a+32|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);a=a+20|0;if((b[a+11>>0]|0)>=0)return;Zpb(f[a>>2]|0);return}function sBa(a){a=a|0;var c=0;f[a>>2]=30180;c=a+32|0;if((b[c+11>>0]|0)<0)Zpb(f[c>>2]|0);c=a+20|0;if((b[c+11>>0]|0)>=0){Zpb(a);return}Zpb(f[c>>2]|0);Zpb(a);return}function tBa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0;m=u;u=u+32|0;g=m;l=a+4|0;f[l>>2]=0;switch(e|0){case 0:{f[a+8>>2]=1;f[l>>2]=0;LCa(f[a+12>>2]|0);r$(g);n=+(f[g+4>>2]|0);o=+(f[g>>2]|0);r9a(a,0,n/o,o,n);f[l>>2]=1;u=m;return}case 2:{j=a+16|0;k=J0a(f[j>>2]|0)|0;h=k+4|0;i=f[h>>2]|0;e=f[k>>2]|0;g=i-e|0;if(g>>>0<d>>>0){SAa(k,d-g|0);e=f[k>>2]|0}else if(g>>>0>d>>>0){g=e+d|0;if((g|0)!=(i|0))f[h>>2]=g}Irb(e|0,c|0,d|0)|0;K0a(f[j>>2]|0,k)|0;f[l>>2]=(f[l>>2]|0)+d;tza((f[a+12>>2]|0)+128|0,d);u=m;return}case 3:{l=a+12|0;d=f[l>>2]|0;c=f[d+236>>2]|0;b[c+41>>0]=1;pBa((f[d+228>>2]|0)+36|0,c+44|0);d=f[d+232>>2]|0;fh[f[(f[d>>2]|0)+8>>2]&2047](d);l=f[l>>2]|0;fh[f[(f[l>>2]|0)+12>>2]&2047](l);u=m;return}default:{u=m;return}}}function uBa(a,b){a=a|0;b=b|0;cqb(a,b+32|0);return}function vBa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0;n=u;u=u+128|0;l=n+24|0;d=n;a=a+236|0;if(!(b[(f[a>>2]|0)+40>>0]|0)){u=n;return}i=+p[c+208>>3];j=+p[c+216>>3];r$(d);k=+(f[d+4>>2]|0);g=+(f[d>>2]|0);h=k/g;switch(b[c>>0]|0){case 0:{e=0.0;m=5;break}case 1:{e=1.0;m=5;break}case 2:{e=2.0;m=5;break}default:{}}if((m|0)==5)p[l>>3]=e;p[l+8>>3]=+p[c+32>>3];p[l+16>>3]=+p[c+40>>3];p[l+24>>3]=+p[c+48>>3];p[l+32>>3]=+p[c+56>>3];p[l+40>>3]=+p[c+64>>3];p[l+48>>3]=+p[c+72>>3];p[l+56>>3]=+p[c+8>>3];p[l+64>>3]=+p[c+16>>3];p[l+72>>3]=+p[c+24>>3];p[l+80>>3]=i;p[l+88>>3]=j;r9a((f[f[a>>2]>>2]|0)+12|0,l,h,g,k);u=n;return}function wBa(a){a=a|0;Zpb(a);return}function xBa(a){a=a|0;var b=0,c=0;b=Wpb(16)|0;c=a+4|0;f[b>>2]=30404;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];return b|0}function yBa(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=30404;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return}function zBa(a){a=a|0;return}function ABa(a){a=a|0;Zpb(a);return}function BBa(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+4>>2]|0;d=f[a+8>>2]|0;a=(f[a+12>>2]|0)+(d>>1)|0;if(!(d&1)){d=c;nh[d&1023](a,b);return}else{d=f[(f[a>>2]|0)+c>>2]|0;nh[d&1023](a,b);return}}function CBa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==145087?a+4|0:0)|0}function DBa(a){a=a|0;return 10816}function EBa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=30204;b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+20>>2]|0;if(!b){OCa(a);return}c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);OCa(a);return}function FBa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=30204;b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+20>>2]|0;if(!b){OCa(a);Zpb(a);return}c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b);OCa(a);Zpb(a);return}function GBa(a){a=a|0;a=f[a+16>>2]|0;p9a(a,a+20|0,a+32|0);return}function HBa(a,b){a=a|0;b=b|0;P9a(f[a+16>>2]|0,b);return}function IBa(a){a=a|0;return 0}function JBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aab(f[a+16>>2]|0,f[b>>2]|0,f[b+4>>2]|0,c,d);return}function KBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bab(f[a+16>>2]|0,f[c>>2]|0,f[c+4>>2]|0,d,f[b>>2]|0);return}function LBa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;q9a(f[a+16>>2]|0,b,c,d,e);return}function MBa(a){a=a|0;_9a(f[a+16>>2]|0);return}function NBa(a,b){a=a|0;b=b|0;$9a(f[a+16>>2]|0,f[b>>2]|0);return}function OBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[c>>2]|0;e=f[a+16>>2]|0;a=(f[c+4>>2]|0)-g>>3;if(!(b<<24>>24)){t9a(e,a,g,d);return}else{w9a(e,a,g,d,b<<24>>24==2);return}}function PBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[c>>2]|0;e=f[a+16>>2]|0;a=(f[c+4>>2]|0)-g>>3;if(!(b<<24>>24)){v9a(e,a,g,d);return}else{x9a(e,a,g,d,b<<24>>24==2);return}}function QBa(a,b){a=a|0;b=b|0;y9a(f[a+16>>2]|0,b);return}function RBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S9a(f[a+16>>2]|0,b,c,d);return}function SBa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!b)return;T9a(f[a+16>>2]|0,b,c,d,e);return}function TBa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;V9a(f[a+16>>2]|0,b,c,d);return}function UBa(a){a=a|0;W9a(f[a+16>>2]|0);return}function VBa(a,b){a=a|0;b=+b;X9a(f[a+16>>2]|0,b);return}function WBa(a,b){a=a|0;b=b|0;Y9a(f[a+16>>2]|0,b);return}function XBa(a,b){a=a|0;b=+b;Z9a(f[a+16>>2]|0,b);return}function YBa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0;F=u;u=u+80|0;D=F+56|0;x=F+48|0;y=F+36|0;z=F+24|0;A=F+12|0;B=F;t=f[(f[a+8>>2]|0)+220>>2]|0;f[D>>2]=0;E=D+4|0;f[E>>2]=0;f[D+8>>2]=0;C=b+4|0;d=f[C>>2]|0;e=f[b>>2]|0;g=d-e>>2;v=D+8|0;i=e;w=d;do if(!g)c=0;else if(g>>>0>357913941)ud();else{c=Wpb(g*12|0)|0;s=c;f[D>>2]=s;f[E>>2]=s;f[v>>2]=c+(g*12|0);break}while(0);if((i|0)!=(w|0)){e=y+4|0;g=y+4|0;j=x+4|0;k=z+4|0;l=y+4|0;m=A+4|0;o=z+8|0;p=y+8|0;q=A+8|0;r=B+4|0;s=B+8|0;do{mwa(x,t,i);c=f[x>>2]|0;if(!c){f[e>>2]=0;d=f[E>>2]|0;c=f[v>>2]|0;if(d>>>0<c>>>0){f[d>>2]=0;f[d+4>>2]=f[e>>2];f[d+8>>2]=f[e>>2];d=d+12|0;f[E>>2]=d}else{xCa(D,y);c=f[v>>2]|0;d=f[E>>2]|0}f[g>>2]=0;if(d>>>0<c>>>0){f[d>>2]=0;f[d+4>>2]=f[g>>2];f[d+8>>2]=f[g>>2];f[E>>2]=d+12}else xCa(D,y)}else{npa(c,y,z);K=+n[y>>2];h=(+n[z>>2]-K)*.5;n[A>>2]=h;J=+n[l>>2];I=(+n[k>>2]-J)*.5;n[m>>2]=I;H=+n[p>>2];G=(+n[o>>2]-H)*.5;n[q>>2]=G;h=K+h;n[B>>2]=h;n[r>>2]=J+I;n[s>>2]=H+G;d=f[E>>2]|0;c=f[v>>2]|0;if(d>>>0<c>>>0){n[d>>2]=h;f[d+4>>2]=f[r>>2];f[d+8>>2]=f[s>>2];d=d+12|0;f[E>>2]=d}else{wCa(D,B);d=f[E>>2]|0;c=f[v>>2]|0}if(d>>>0<c>>>0){f[d>>2]=f[A>>2];f[d+4>>2]=f[m>>2];f[d+8>>2]=f[q>>2];f[E>>2]=d+12}else wCa(D,A)}c=f[j>>2]|0;if(c|0)Ppb(c);i=i+8|0}while((i|0)!=(w|0));e=f[b>>2]|0;d=f[C>>2]|0;c=f[D>>2]|0}A9a(f[a+16>>2]|0,d-e>>3,e,c);c=f[D>>2]|0;if(!c){u=F;return}d=f[E>>2]|0;if((d|0)!=(c|0))f[E>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c);u=F;return}function ZBa(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;C9a(f[a+16>>2]|0,(f[b+4>>2]|0)-c>>3,c);return}function _Ba(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;N9a(f[a+16>>2]|0,c,d,e,g,f[b>>2]|0);return}function $Ba(a,b,c){a=a|0;b=b|0;c=c|0;M9a(f[a+16>>2]|0,f[c+4>>2]|0,f[c>>2]|0,f[b>>2]|0);return}function aCa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aFa(a);z9a(f[a+16>>2]|0,f[c+4>>2]|0,f[c>>2]|0,d,e,f[b>>2]|0);return}function bCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cab(f[a+16>>2]|0,(c&1|0)!=0,(c&2|0)!=0,d,b);return}function cCa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[c>>2]|0;dab(f[a+16>>2]|0,d?31:32,(f[c+4>>2]|0)-g>>3,g,e,f[b>>2]|0);return}function dCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[c>>2]|0;dab(f[a+16>>2]|0,d?29:30,(f[c+4>>2]|0)-e>>3,e,0,f[b>>2]|0);return}function eCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[c>>2]|0;dab(f[a+16>>2]|0,24,(f[c+4>>2]|0)-e>>3,e,d,f[b>>2]|0);return}function fCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c>>2]|0;dab(f[a+16>>2]|0,25,(f[c+4>>2]|0)-d>>3,d,0,f[b>>2]|0);return}function gCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c>>2]|0;dab(f[a+16>>2]|0,26,(f[c+4>>2]|0)-d>>3,d,0,f[b>>2]|0);return}function hCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c>>2]|0;dab(f[a+16>>2]|0,21,(f[c+4>>2]|0)-d>>3,d,0,f[b>>2]|0);return}function iCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c>>2]|0;dab(f[a+16>>2]|0,22,(f[c+4>>2]|0)-d>>3,d,0,f[b>>2]|0);return}function jCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[c>>2]|0;dab(f[a+16>>2]|0,23,(f[c+4>>2]|0)-e>>3,e,d,f[b>>2]|0);return}function kCa(a,c,d,e,g,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;p=r;aFa(a);o=h[e>>0]|0;o=(b[e+1>>0]|0)==0?o:o|2;o=(b[e+8>>0]|0)==0?o:o|4;o=(b[e+9>>0]|0)==0?o:o|8;o=(b[e+10>>0]|0)==0?o:o|16;o=(b[e+11>>0]|0)==0?o:o|32;o=(b[e+12>>0]|0)==0?o:o|64;o=(b[e+2>>0]|0)==0?o:o|128;o=(b[e+3>>0]|0)==0?o:o|256;o=(b[e+4>>0]|0)==0?o:o|512;o=(b[e+5>>0]|0)==0?o:o|1024;o=(b[e+6>>0]|0)==0?o:o|2048;o=(b[e+7>>0]|0)==0?o:o|4096;f[p>>2]=0;q=p+4|0;f[q>>2]=0;f[p+8>>2]=0;e=g<<2;n=p+8|0;do if(!e){k=0;l=0;m=0}else if(e>>>0>1073741823)ud();else{m=Wpb(g<<4)|0;l=m+(e<<2)|0;f[p>>2]=m;f[q>>2]=m;f[n>>2]=l;k=m;break}while(0);if(g){k=0;while(1){e=i+(k<<4)|0;if((m|0)==(l|0)){N4(p,e);m=f[q>>2]|0;l=f[n>>2]|0}else{f[m>>2]=f[e>>2];m=m+4|0;f[q>>2]=m}e=i+(k<<4)+4|0;if((m|0)==(l|0)){N4(p,e);m=f[q>>2]|0;l=f[n>>2]|0}else{f[m>>2]=f[e>>2];m=m+4|0;f[q>>2]=m}e=i+(k<<4)+8|0;if((m|0)==(l|0)){N4(p,e);m=f[q>>2]|0;l=f[n>>2]|0}else{f[m>>2]=f[e>>2];m=m+4|0;f[q>>2]=m}e=i+(k<<4)+12|0;if((m|0)==(l|0))N4(p,e);else{f[m>>2]=f[e>>2];f[q>>2]=m+4}k=k+1|0;if((k|0)==(g|0))break;m=f[q>>2]|0;l=f[n>>2]|0}k=f[p>>2]|0}D9a(f[a+16>>2]|0,f[c>>2]|0,d,o,g,k,j);k=f[p>>2]|0;if(!k){u=r;return}e=f[q>>2]|0;if((e|0)!=(k|0))f[q>>2]=e+(~((e+-4-k|0)>>>2)<<2);Zpb(k);u=r;return}function lCa(a,c,d,e,g,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0;j=u;u=u+80|0;k=j;aFa(a);l=h[e>>0]|0;l=(b[e+1>>0]|0)==0?l:l|2;l=(b[e+8>>0]|0)==0?l:l|4;l=(b[e+9>>0]|0)==0?l:l|8;l=(b[e+10>>0]|0)==0?l:l|16;l=(b[e+11>>0]|0)==0?l:l|32;l=(b[e+12>>0]|0)==0?l:l|64;l=(b[e+2>>0]|0)==0?l:l|128;l=(b[e+3>>0]|0)==0?l:l|256;l=(b[e+4>>0]|0)==0?l:l|512;l=(b[e+5>>0]|0)==0?l:l|1024;l=(b[e+6>>0]|0)==0?l:l|2048;e=b[e+7>>0]|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];f[k+16>>2]=f[i+16>>2];f[k+20>>2]=f[i+20>>2];f[k+24>>2]=f[i+24>>2];f[k+28>>2]=f[i+28>>2];f[k+32>>2]=f[i+32>>2];f[k+36>>2]=f[i+36>>2];f[k+40>>2]=f[i+40>>2];f[k+44>>2]=f[i+44>>2];f[k+48>>2]=f[i+48>>2];f[k+52>>2]=f[i+52>>2];f[k+56>>2]=f[i+56>>2];f[k+60>>2]=f[i+60>>2];f[k+64>>2]=f[i+64>>2];f[k+68>>2]=f[i+68>>2];f[k+72>>2]=f[i+72>>2];f[k+76>>2]=f[i+76>>2];E9a(f[a+16>>2]|0,f[c>>2]|0,d,e<<24>>24==0?l:l|4096,g,g+12|0,k);u=j;return}function mCa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0.0,j=0,k=0;aFa(a);k=h[e>>0]|0;k=(b[e+1>>0]|0)==0?k:k|2;k=(b[e+8>>0]|0)==0?k:k|4;k=(b[e+9>>0]|0)==0?k:k|8;k=(b[e+10>>0]|0)==0?k:k|16;k=(b[e+11>>0]|0)==0?k:k|32;k=(b[e+12>>0]|0)==0?k:k|64;k=(b[e+2>>0]|0)==0?k:k|128;k=(b[e+3>>0]|0)==0?k:k|256;k=(b[e+4>>0]|0)==0?k:k|512;k=(b[e+5>>0]|0)==0?k:k|1024;k=(b[e+6>>0]|0)==0?k:k|2048;k=(b[e+7>>0]|0)==0?k:k|4096;j=f[a+16>>2]|0;e=f[c>>2]|0;a=g+16|0;i=+n[a>>2];if(!(i==-1.0)){F9a(j,e,d,k,g,i);return}i=+L(+(+n[g+12>>2]));n[a>>2]=i;F9a(j,e,d,k,g,i);return}function nCa(a,b,c){a=a|0;b=b|0;c=c|0;G9a(f[a+16>>2]|0,f[b>>2]|0,c);return}function oCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aFa(a);H9a(f[a+16>>2]|0,f[b>>2]|0,c,d);return}function pCa(a,b,c){a=a|0;b=b|0;c=c|0;Q9a(f[a+16>>2]|0,b,c);return}function qCa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0;r=u;u=u+784|0;k=r+768|0;q=r;l=Kwa(f[(f[a+8>>2]|0)+220>>2]|0)|0;c=f[l>>2]|0;l=f[l+4>>2]|0;m=l;o=c;if((c|0)==(l|0)){l=a+16|0;l=f[l>>2]|0;o=m-o|0;o=(o|0)/12|0;U9a(l,o,k,q);u=r;return}else{j=k;b=q}do{i=f[c+4>>2]|0;d=f[c>>2]|0;f[j>>2]=i-d>>4;j=j+4|0;g=d;if((g|0)!=(i|0)){h=(i+-16+(0-d)|0)>>>4<<2;e=b;d=g;while(1){p[e>>3]=+n[d>>2];p[e+8>>3]=+n[d+4>>2];p[e+16>>3]=+n[d+8>>2];p[e+24>>3]=+n[d+12>>2];d=d+16|0;if((d|0)==(i|0))break;else e=e+32|0}b=b+32+(h<<3)|0}c=c+12|0}while((c|0)!=(l|0));l=a+16|0;l=f[l>>2]|0;o=m-o|0;o=(o|0)/12|0;U9a(l,o,k,q);u=r;return}function rCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;q=w+8|0;r=w;t=a+20|0;v=a+32|0;s=f[(f[a+8>>2]|0)+220>>2]|0;b=f[b+8>>2]|0;if(!b)d=a+24|0;else{l=q+4|0;d=a+24|0;m=a+28|0;n=a+36|0;o=a+40|0;p=r+4|0;do{k=b;c=k+8|0;wwa(q,s,c);if(f[q>>2]|0){e=f[d>>2]|0;g=f[m>>2]|0;if((e|0)==(g|0)){BD(t,c);i=f[d>>2]|0;e=f[m>>2]|0}else{f[e>>2]=f[c>>2];i=e+4|0;f[d>>2]=i;e=g}c=k+12|0;if((i|0)==(e|0))BD(t,c);else{f[i>>2]=f[c>>2];f[d>>2]=i+4}c=f[q>>2]|0;e=c+200|0;e=j[e>>1]|0|(h[e+2>>0]|0)<<16;if(!(e&393216)){c=0;e=-1}else{e=(f[c+72+(((e&16777215)>>>17&3)<<3)>>2]|0)+112|0;c=f[e>>2]|0;e=f[e+4>>2]|0}k=r;f[k>>2]=c;f[k+4>>2]=e;if((c|0)==-1){f[r>>2]=0;c=0}e=f[n>>2]|0;g=f[o>>2]|0;if((e|0)==(g|0)){BD(v,r);e=f[n>>2]|0;c=f[o>>2]|0}else{f[e>>2]=c;e=e+4|0;f[n>>2]=e;c=g}if((e|0)==(c|0))BD(v,p);else{f[e>>2]=f[p>>2];f[n>>2]=e+4}}c=f[l>>2]|0;if(c|0)Ppb(c);b=f[b>>2]|0}while((b|0)!=0)}b=f[t>>2]|0;I9a(f[a+16>>2]|0,(f[d>>2]|0)-b>>2>>>1,b,f[v>>2]|0);b=f[t>>2]|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);d=f[v>>2]|0;b=a+36|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=w;return}f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);u=w;return}function sCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+96|0;x=G+80|0;z=G+32|0;A=G+24|0;B=G+16|0;C=G+8|0;D=G;E=a+20|0;F=a+44|0;y=f[(f[a+8>>2]|0)+220>>2]|0;b=f[b+8>>2]|0;if(!b)d=a+24|0;else{g=B+4|0;h=C+4|0;d=a+24|0;i=a+28|0;j=z+4|0;k=z+8|0;l=z+12|0;m=z+16|0;n=z+20|0;o=z+24|0;p=z+28|0;q=z+32|0;r=z+36|0;s=z+40|0;t=z+44|0;v=a+48|0;w=z+48|0;do{c=f[b+8>>2]|0;f[A>>2]=c;f[B>>2]=0;f[g>>2]=c;iwa(C,y,B);c=f[C>>2]|0;if(c|0){e=f[d>>2]|0;if((e|0)==(f[i>>2]|0)){BD(E,A);c=f[C>>2]|0}else{f[e>>2]=f[A>>2];f[d>>2]=e+4}f[z>>2]=f[c>>2];f[j>>2]=f[c+4>>2];f[k>>2]=f[c+8>>2];f[l>>2]=f[c+16>>2];f[m>>2]=f[c+20>>2];f[n>>2]=f[c+24>>2];f[o>>2]=f[c+32>>2];f[p>>2]=f[c+36>>2];f[q>>2]=f[c+40>>2];f[r>>2]=f[c+48>>2];f[s>>2]=f[c+52>>2];f[t>>2]=f[c+56>>2];f[D>>2]=f[v>>2];f[x>>2]=f[D>>2];vCa(F,x,z,w)|0}c=f[h>>2]|0;if(c|0)Ppb(c);b=f[b>>2]|0}while((b|0)!=0)}b=f[E>>2]|0;J9a(f[a+16>>2]|0,(f[d>>2]|0)-b>>2,b,f[F>>2]|0);b=f[E>>2]|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);d=f[F>>2]|0;b=a+48|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=G;return}f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);u=G;return}function tCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=u;u=u+32|0;g=d+20|0;h=d+16|0;i=d+12|0;l=d+8|0;k=d+4|0;j=d;e=a+20|0;c=a+24|0;f[l>>2]=f[c>>2];f[k>>2]=f[b+8>>2];f[j>>2]=0;f[i>>2]=f[l>>2];f[h>>2]=f[k>>2];f[g>>2]=f[j>>2];uCa(e,i,h,g)|0;b=f[e>>2]|0;L9a(f[a+16>>2]|0,(f[c>>2]|0)-b>>2,b);a=f[e>>2]|0;b=f[c>>2]|0;if((b|0)==(a|0)){u=d;return}f[c>>2]=b+(~((b+-4-a|0)>>>2)<<2);u=d;return}function uCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=f[a>>2]|0;k=q;m=(f[b>>2]|0)-k|0;b=q+(m>>2<<2)|0;e=f[c>>2]|0;t=f[d>>2]|0;j=t;g=e;if((e|0)==(t|0)){u=b;return u|0}i=0;d=e;while(1){p=i+1|0;d=f[d>>2]|0;if((t|0)==(d|0))break;else i=p}if((i|0)<=-1){u=b;return u|0}o=a+8|0;h=f[o>>2]|0;u=a+4|0;s=f[u>>2]|0;l=s;if((i|0)>=(h-l>>2|0)){d=(l-k>>2)+p|0;if(d>>>0>1073741823)fob(a);i=h-k|0;g=i>>1;g=i>>2>>>0<536870911?(g>>>0<d>>>0?d:g):1073741823;i=b;d=m>>2;do if(!g){n=0;r=0}else if(g>>>0>1073741823)ud();else{r=Wpb(g<<2)|0;n=r;break}while(0);k=r+(d<<2)|0;j=r+(g<<2)|0;g=k;h=e;while(1){f[g>>2]=f[e+8>>2];e=g+4|0;d=f[h>>2]|0;if((t|0)==(d|0))break;else{g=e;h=d;e=d}}if((m|0)>0)Irb(n|0,q|0,m|0)|0;d=l-i|0;if((d|0)>0){Irb(e|0,b|0,d|0)|0;e=e+(d>>>2<<2)|0;b=f[a>>2]|0}else b=q;f[a>>2]=r;f[u>>2]=e;f[o>>2]=j;if(!b){u=k;return u|0}Zpb(b);u=k;return u|0}m=b;h=l-m|0;d=h>>2;if((i|0)<(d|0)){g=j;d=s}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((t|0)==(g|0))d=s;else{h=g;d=s;do{f[d>>2]=f[h+8>>2];h=f[h>>2]|0;d=d+4|0;f[u>>2]=d}while((t|0)!=(h|0))}if(!i){u=b;return u|0}}k=d-(b+(p<<2))|0;l=k>>2;h=b+(l<<2)|0;if(h>>>0<s>>>0){j=(s+(0-l<<2)+~m|0)>>>2;i=d;while(1){f[i>>2]=f[h>>2];h=h+4|0;if(h>>>0>=s>>>0)break;else i=i+4|0}f[u>>2]=d+(j+1<<2)}if(l){Jrb(d+(0-l<<2)|0,b|0,k|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){u=b;return u|0}d=b;h=e;while(1){f[d>>2]=f[h+8>>2];e=f[e>>2]|0;if((g|0)==(e|0))break;else{d=d+4|0;h=e}}return b|0}function vCa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=c;r=f[a>>2]|0;p=r;l=(f[b>>2]|0)-p|0;m=l>>2;u=r+(m<<2)|0;h=d;v=h-t|0;i=v>>2;if((v|0)<=0){v=u;return v|0}o=a+8|0;e=f[o>>2]|0;v=a+4|0;q=f[v>>2]|0;k=q;if((i|0)<=(e-k>>2|0)){g=k-u|0;b=g>>2;if((i|0)>(b|0)){e=c+(b<<2)|0;b=h-e|0;if((b|0)>0){Irb(q|0,e|0,b|0)|0;b=(f[v>>2]|0)+(b>>>2<<2)|0;f[v>>2]=b}else b=q;if((g|0)>0){d=e;j=b}else{v=u;return v|0}}else j=q;h=j-(u+(i<<2))|0;i=h>>2;b=u+(i<<2)|0;if(b>>>0<q>>>0){g=((q+(0-i-m<<2)+~p|0)>>>2)+1|0;e=j;while(1){f[e>>2]=f[b>>2];b=b+4|0;if(b>>>0>=q>>>0)break;else e=e+4|0}f[v>>2]=j+(g<<2)}if(i|0)Jrb(j+(0-i<<2)|0,u|0,h|0)|0;b=d-t|0;if(!b){v=u;return v|0}Jrb(u|0,c|0,b|0)|0;v=u;return v|0}b=(k-p>>2)+i|0;if(b>>>0>1073741823)fob(a);e=e-p|0;h=e>>1;b=e>>2>>>0<536870911?(h>>>0<b>>>0?b:h):1073741823;h=u;e=l>>2;do if(!b){s=0;n=0}else if(b>>>0>1073741823)ud();else{n=Wpb(b<<2)|0;s=n;break}while(0);j=s+(e<<2)|0;i=s+(b<<2)|0;if((c|0)==(d|0))b=j;else{g=e+((d+-4-t|0)>>>2)+1|0;b=c;e=j;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(d|0))break;else e=e+4|0}b=s+(g<<2)|0}if((l|0)>0)Irb(n|0,r|0,l|0)|0;e=k-h|0;if((e|0)>0){Irb(b|0,u|0,e|0)|0;b=b+(e>>>2<<2)|0}f[a>>2]=s;f[v>>2]=b;f[o>>2]=i;if(!r){v=j;return v|0}Zpb(r);v=j;return v|0}function wCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;f[c>>2]=f[b>>2];f[g+(h*12|0)+4>>2]=f[b+4>>2];f[g+(h*12|0)+8>>2]=f[b+8>>2];b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function xCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;b=f[b+4>>2]|0;f[c>>2]=b;f[g+(h*12|0)+4>>2]=b;f[g+(h*12|0)+8>>2]=b;b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function yCa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k+28|0;j=k;e=k+24|0;f[a>>2]=30144;g=Wpb(56)|0;xDa(g,a);f[g>>2]=30204;d=g;g=g+16|0;h=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e>>2]=d;ICa(a,e,c);c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);f[a>>2]=30144;c=a+236|0;d=Wpb(48)|0;b[d+41>>0]=0;g=d;h=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[c>>2]=d;h=f[a+228>>2]|0;e=h+36|0;g=j+16|0;f[j>>2]=30404;f[j+4>>2]=785;f[j+8>>2]=0;f[j+12>>2]=a;f[g>>2]=j;b[i>>0]=0;c=h+40|0;d=f[c>>2]|0;if(d>>>0<(f[h+44>>2]|0)>>>0){f[d+16>>2]=d;i=f[g>>2]|0;nh[f[(f[i>>2]|0)+12>>2]&1023](i,d);i=f[c>>2]|0;b[d+24>>0]=0;i=i+32|0;f[c>>2]=i;c=i}else{w$(e,j,i);c=f[c>>2]|0}d=a+236|0;f[(f[d>>2]|0)+44>>2]=(c-(f[e>>2]|0)>>5)+-1;c=f[g>>2]|0;if((j|0)==(c|0)){fh[f[(f[c>>2]|0)+16>>2]&2047](c);j=f[d>>2]|0;j=j+40|0;b[j>>0]=0;u=k;return}if(!c){j=f[d>>2]|0;j=j+40|0;b[j>>0]=0;u=k;return}fh[f[(f[c>>2]|0)+20>>2]&2047](c);j=f[d>>2]|0;j=j+40|0;b[j>>0]=0;u=k;return}function zCa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=f[c+236>>2]|0;m=Wpb(68)|0;f[m>>2]=c;i=m+4|0;f[i>>2]=0;j=m+8|0;f[j>>2]=0;k=m+12|0;k9a(k);f[k>>2]=30180;h=m+32|0;n=m+36|0;f[n>>2]=0;f[n+4>>2]=0;b[m+43>>0]=3;b[h>>0]=b[145517]|0;b[h+1>>0]=b[145518]|0;b[h+2>>0]=b[145519]|0;b[m+35>>0]=0;h=m+44|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g9a(m+56|0);h=f[m>>2]|0;n=Wpb(12)|0;jJa(n,h);f[n>>2]=30448;f[n+8>>2]=h;h=f[i>>2]|0;f[i>>2]=n;if(h|0)fh[f[(f[h>>2]|0)+4>>2]&2047](h);n=f[j>>2]|0;h=n;if(!n){h=Wpb(4)|0;G0a(h,f[i>>2]|0,0);i=f[j>>2]|0;f[j>>2]=h;if(i){H0a(i);Zpb(i);h=f[j>>2]|0}}b[m+64>>0]=0;f[m+28>>2]=h;f[m+24>>2]=c;f[(f[c+232>>2]|0)+16>>2]=k;i=f[l>>2]|0;f[l>>2]=m;if(!i){ACa(a,c,d,e,g);return}e9a(i+56|0);f[i+12>>2]=30180;h=i+44|0;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);h=i+32|0;if((b[h+11>>0]|0)<0)Zpb(f[h>>2]|0);n=i+8|0;h=f[n>>2]|0;f[n>>2]=0;if(h|0){H0a(h);Zpb(h)}n=i+4|0;h=f[n>>2]|0;f[n>>2]=0;if(h|0)fh[f[(f[h>>2]|0)+4>>2]&2047](h);Zpb(i);ACa(a,c,d,e,g);return}function ACa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=c+236|0;kqb((f[i>>2]|0)+4|0,e)|0;kqb((f[i>>2]|0)+16|0,d)|0;kqb((f[i>>2]|0)+28|0,g)|0;c=f[f[i>>2]>>2]|0;kqb(c+32|0,d)|0;kqb(c+44|0,g)|0;h=h9a(c+56|0,e,c+12|0)|0;b[c+64>>0]=h&1;if(h){d=0;h=0;c=0}else{d=Wpb(32)|0;c=d;e=145521;g=c+16|0;do{b[c>>0]=b[e>>0]|0;c=c+1|0;e=e+1|0}while((c|0)<(g|0));b[d+16>>0]=0;h=16;c=-2147483616}g=c>>>24;if(!(((g&255)<<24>>24<0?h:g)|0)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0}else{i=f[i>>2]|0;g=f[i>>2]|0;f[i>>2]=0;if(g|0){e9a(g+56|0);f[g+12>>2]=30180;e=g+44|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);e=g+32|0;if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);i=g+8|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){H0a(e);Zpb(e)}i=g+4|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);Zpb(g)}f[a>>2]=d;f[a+4>>2]=h;f[a+8>>2]=c;d=0;c=0}if((c>>>24&255)<<24>>24>=0)return;Zpb(d);return}function BCa(a){a=a|0;$Ga(a);Zpb(a);return}function CCa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;b[(f[(f[a+8>>2]|0)+236>>2]|0)+40>>0]=1;return IHa(a,c,d,e,g)|0}function DCa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=30644;b=f[a+220>>2]|0;if(b|0)cta(b);e=a+232|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);e=a+228|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){bNa(b);Zpb(b)}b=f[a+224>>2]|0;if(b|0)Ppb(b);d=a+200|0;b=f[d>>2]|0;if(b|0){e=a+204|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+188|0;b=f[d>>2]|0;if(b|0){e=a+192|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+176|0;b=f[d>>2]|0;if(b|0){e=a+180|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+164|0;b=f[d>>2]|0;if(b|0){e=a+168|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+152|0;b=f[d>>2]|0;if(b|0){e=a+156|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+140|0;b=f[d>>2]|0;if(b|0){e=a+144|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+128|0;b=f[d>>2]|0;if(b|0){e=a+132|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+116|0;b=f[d>>2]|0;if(b|0){e=a+120|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+104|0;b=f[d>>2]|0;if(b|0){e=a+108|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+92|0;b=f[d>>2]|0;if(b|0){e=a+96|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+80|0;b=f[d>>2]|0;if(b|0){e=a+84|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+68|0;b=f[d>>2]|0;if(b|0){e=a+72|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+56|0;b=f[d>>2]|0;if(b|0){e=a+60|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+44|0;b=f[d>>2]|0;if(b|0){e=a+48|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+32|0;b=f[d>>2]|0;if(b|0){e=a+36|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}d=a+20|0;b=f[d>>2]|0;if(b|0){e=a+24|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Zpb(b)}e=a+4|0;b=f[e>>2]|0;if(!b)return;d=a+8|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[d>>2]=g;c=f[c+-16>>2]|0;do if((g|0)==(c|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else{if(!c)break;fh[f[(f[c>>2]|0)+20>>2]&2047](c)}while(0);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Zpb(b);return}function ECa(a){a=a|0;wf()}function FCa(a){a=a|0;b[a+216>>0]=1;return}function GCa(a){a=a|0;return -1}function HCa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;f[a>>2]=30644;e=a+4|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b[e+12>>0]=0;Krb(a+20|0,0,192)|0;f[a+212>>2]=d;b[a+216>>0]=0;b[a+217>>0]=0;d=a+220|0;Zsa(d);e=Wpb(392)|0;$Ma(e,d);f[a+228>>2]=e;e=f[c>>2]|0;f[c>>2]=0;f[a+232>>2]=e;sva(f[d>>2]|0,a);return}function ICa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;f[a>>2]=30644;g=a+4|0;e=d+4|0;f[g>>2]=0;i=a+8|0;f[i>>2]=0;f[a+12>>2]=0;f[g>>2]=f[e>>2];g=d+8|0;f[i>>2]=f[g>>2];i=d+12|0;f[a+12>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;b[a+16>>0]=b[d+16>>0]|0;e=a+20|0;g=d+20|0;f[e>>2]=0;i=a+24|0;f[i>>2]=0;f[a+28>>2]=0;f[e>>2]=f[g>>2];e=d+24|0;f[i>>2]=f[e>>2];i=d+28|0;f[a+28>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+32|0;e=d+32|0;f[g>>2]=0;i=a+36|0;f[i>>2]=0;f[a+40>>2]=0;f[g>>2]=f[e>>2];g=d+36|0;f[i>>2]=f[g>>2];i=d+40|0;f[a+40>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+44|0;g=d+44|0;f[e>>2]=0;i=a+48|0;f[i>>2]=0;f[a+52>>2]=0;f[e>>2]=f[g>>2];e=d+48|0;f[i>>2]=f[e>>2];i=d+52|0;f[a+52>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+56|0;e=d+56|0;f[g>>2]=0;i=a+60|0;f[i>>2]=0;f[a+64>>2]=0;f[g>>2]=f[e>>2];g=d+60|0;f[i>>2]=f[g>>2];i=d+64|0;f[a+64>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+68|0;g=d+68|0;f[e>>2]=0;i=a+72|0;f[i>>2]=0;f[a+76>>2]=0;f[e>>2]=f[g>>2];e=d+72|0;f[i>>2]=f[e>>2];i=d+76|0;f[a+76>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+80|0;e=d+80|0;f[g>>2]=0;i=a+84|0;f[i>>2]=0;f[a+88>>2]=0;f[g>>2]=f[e>>2];g=d+84|0;f[i>>2]=f[g>>2];i=d+88|0;f[a+88>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+92|0;g=d+92|0;f[e>>2]=0;i=a+96|0;f[i>>2]=0;f[a+100>>2]=0;f[e>>2]=f[g>>2];e=d+96|0;f[i>>2]=f[e>>2];i=d+100|0;f[a+100>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+104|0;e=d+104|0;f[g>>2]=0;i=a+108|0;f[i>>2]=0;f[a+112>>2]=0;f[g>>2]=f[e>>2];g=d+108|0;f[i>>2]=f[g>>2];i=d+112|0;f[a+112>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+116|0;g=d+116|0;f[e>>2]=0;i=a+120|0;f[i>>2]=0;f[a+124>>2]=0;f[e>>2]=f[g>>2];e=d+120|0;f[i>>2]=f[e>>2];i=d+124|0;f[a+124>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+128|0;e=d+128|0;f[g>>2]=0;i=a+132|0;f[i>>2]=0;f[a+136>>2]=0;f[g>>2]=f[e>>2];g=d+132|0;f[i>>2]=f[g>>2];i=d+136|0;f[a+136>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+140|0;g=d+140|0;f[e>>2]=0;i=a+144|0;f[i>>2]=0;f[a+148>>2]=0;f[e>>2]=f[g>>2];e=d+144|0;f[i>>2]=f[e>>2];i=d+148|0;f[a+148>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+152|0;e=d+152|0;f[g>>2]=0;i=a+156|0;f[i>>2]=0;f[a+160>>2]=0;f[g>>2]=f[e>>2];g=d+156|0;f[i>>2]=f[g>>2];i=d+160|0;f[a+160>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+164|0;g=d+164|0;f[e>>2]=0;i=a+168|0;f[i>>2]=0;f[a+172>>2]=0;f[e>>2]=f[g>>2];e=d+168|0;f[i>>2]=f[e>>2];i=d+172|0;f[a+172>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+176|0;e=d+176|0;f[g>>2]=0;i=a+180|0;f[i>>2]=0;f[a+184>>2]=0;f[g>>2]=f[e>>2];g=d+180|0;f[i>>2]=f[g>>2];i=d+184|0;f[a+184>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;e=a+188|0;g=d+188|0;f[e>>2]=0;i=a+192|0;f[i>>2]=0;f[a+196>>2]=0;f[e>>2]=f[g>>2];e=d+192|0;f[i>>2]=f[e>>2];i=d+196|0;f[a+196>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[g>>2]=0;g=a+200|0;e=d+200|0;f[g>>2]=0;i=a+204|0;f[i>>2]=0;f[a+208>>2]=0;f[g>>2]=f[e>>2];g=d+204|0;f[i>>2]=f[g>>2];i=d+208|0;f[a+208>>2]=f[i>>2];f[i>>2]=0;f[g>>2]=0;f[e>>2]=0;f[a+212>>2]=f[d+212>>2];b[a+216>>0]=b[d+216>>0]|0;b[a+217>>0]=0;e=a+220|0;g=d+220|0;f[e>>2]=f[g>>2];i=d+224|0;h=f[i>>2]|0;f[a+224>>2]=h;if(h|0)Npb(h);j=d+228|0;h=f[j>>2]|0;f[j>>2]=0;f[a+228>>2]=h;h=a+232|0;j=f[c>>2]|0;f[c>>2]=0;f[h>>2]=j;sva(f[e>>2]|0,a);zDa(f[h>>2]|0,f[d+232>>2]|0);f[g>>2]=0;a=f[i>>2]|0;f[i>>2]=0;if(!a)return;Ppb(a);return}function JCa(a){a=a|0;if(b[a+216>>0]|0){a=0;return a|0}HEa(f[a+232>>2]|0);a=1;return a|0}function KCa(a){a=a|0;b[a+216>>0]=0;if(!(Ng[f[(f[a>>2]|0)+24>>2]&511](a)|0))return;ah[f[a+212>>2]&63]();return}function LCa(a){a=a|0;BDa(f[a+232>>2]|0);return}function MCa(a,b){a=a|0;b=b|0;CDa(f[a+232>>2]|0,b);return}function NCa(a,b){a=a|0;b=b|0;IEa(f[a+232>>2]|0,b);return}function OCa(a){a=a|0;var b=0;f[a>>2]=30680;b=a+4|0;XCa(f[b>>2]|0,a);a=f[b>>2]|0;if(!a)return;uDa(a);Zpb(a);return}function PCa(a){a=a|0;wf()}function QCa(a){a=a|0;XCa(f[a+4>>2]|0,a);return}function RCa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;e=zva(f[(f[a+8>>2]|0)+220>>2]|0)|0;g=f[c>>2]|0;c=f[e+4>>2]|0;d=c+-1|0;if(!(d&c)){c=f[(f[e>>2]|0)+((d&g)<<2)>>2]|0;while(1){c=f[c>>2]|0;if((g|0)!=(f[c+4>>2]|0))continue;if((f[c+8>>2]|0)==(g|0))break}}else{if(g>>>0<c>>>0)c=g;else c=(g>>>0)%(c>>>0)|0;c=f[(f[e>>2]|0)+(c<<2)>>2]|0;while(1){c=f[c>>2]|0;if((g|0)!=(f[c+4>>2]|0))continue;if((f[c+8>>2]|0)==(g|0))break}}f[h>>2]=f[(f[c+12>>2]|0)+8>>2];h=VCa((f[a+4>>2]|0)+860|0,h)|0;b[h>>0]=1;u=i;return}function SCa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=f[a+4>>2]|0;j=f[c>>2]|0;i=f[a+864>>2]|0;if(!i)return;g=i+-1|0;e=(g&i|0)==0;if(e)k=g&j;else if(i>>>0>j>>>0)k=j;else k=(j>>>0)%(i>>>0)|0;a=f[(f[a+860>>2]|0)+(k<<2)>>2]|0;if(!a)return;a=f[a>>2]|0;if(!a)return;a:do if(e){while(1){l=f[a+4>>2]|0;e=(l|0)==(j|0);if(!(e|(l&g|0)==(k|0))){m=69;break}if(e)if((f[a+8>>2]|0)==(j|0)){o=a;break a}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){o=a;break a}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(k|0)){m=69;break}}a=f[a>>2]|0;if(!a){m=69;break}}if((m|0)==69)return}while(0);l=o+116|0;if((h[o+12>>0]|0)>1)return;switch(d<<24>>24){case 0:{e=f[c+4>>2]|0;j=f[o+120>>2]|0;if(!j)return;k=j+-1|0;c=(k&j|0)==0;if(c)g=k&e;else if(j>>>0>e>>>0)g=e;else g=(e>>>0)%(j>>>0)|0;i=f[l>>2]|0;d=f[i+(g<<2)>>2]|0;if(!d)return;d=f[d>>2]|0;if(!d)return;b:do if(c){while(1){q=f[d+4>>2]|0;a=(q|0)==(e|0);if(!(a|(q&k|0)==(g|0))){m=69;break}if(a)if((f[d+8>>2]|0)==(e|0)){p=d;break b}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}else{while(1){a=f[d+4>>2]|0;if((a|0)==(e|0)){if((f[d+8>>2]|0)==(e|0)){p=d;break b}}else{if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(g|0)){m=69;break}}d=f[d>>2]|0;if(!d){m=69;break}}if((m|0)==69)return}while(0);if(c)e=k&e;else if(j>>>0<=e>>>0)e=(e>>>0)%(j>>>0)|0;a=i+(e<<2)|0;g=f[a>>2]|0;while(1){d=f[g>>2]|0;if((d|0)==(p|0))break;else g=d}if((g|0)==(o+124|0))m=52;else{d=f[g+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0))n=p;else m=52}do if((m|0)==52){d=f[p>>2]|0;if(d|0){d=f[d+4>>2]|0;if(c)d=d&k;else if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)==(e|0)){n=p;break}}f[a>>2]=0;n=p}while(0);a=f[n>>2]|0;d=a;if(a){a=f[a+4>>2]|0;if(c)a=a&k;else if(a>>>0>=j>>>0)a=(a>>>0)%(j>>>0)|0;if((a|0)!=(e|0)){f[(f[l>>2]|0)+(a<<2)>>2]=g;d=f[p>>2]|0}}f[g>>2]=d;f[n>>2]=0;q=o+128|0;f[q>>2]=(f[q>>2]|0)+-1;Zpb(p);return}case 2:case 1:break;default:d=2}q=TCa(l,c+4|0)|0;b[q>>0]=d;return}function TCa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=Wpb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)<e){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0<j>>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=Meb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)UCa(a,c);else if(c>>>0<h>>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=Meb(d)|0;c=c>>>0<d>>>0?d:c;if(c>>>0<h>>>0)UCa(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function UCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function VCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;k=a+4|0;j=f[k>>2]|0;i=(j|0)==0;a:do if(i)b=0;else{d=j+-1|0;c=(d&j|0)==0;if(c)h=d&m;else if(j>>>0>m>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&d|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(176)|0;f[h+8>>2]=m;l=h+12|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=0;n[h+32>>2]=1.0;l=h+36|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+52>>2]=1.0;l=h+56|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+72>>2]=1.0;l=h+76|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+92>>2]=1.0;l=h+96|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+112>>2]=1.0;l=h+116|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+132>>2]=1.0;l=h+136|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+152>>2]=1.0;l=h+156|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+172>>2]=1.0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;e=+(((f[l>>2]|0)+1|0)>>>0);c=a+16|0;g=+n[c>>2];do if(i|g*+(j>>>0)<e){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;i=~~+W(+(e/g))>>>0;b=b>>>0<i>>>0?i:b;if((b|0)==1){b=2;d=j}else if(!(b+-1&b))d=j;else{b=Meb(b)|0;d=f[k>>2]|0}if(b>>>0>d>>>0)WCa(a,b);else if(b>>>0<d>>>0){c=~~+W(+(+((f[l>>2]|0)>>>0)/+n[c>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0<d>>>0)WCa(a,b)}b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&m;break}if(b>>>0>m>>>0){d=b;b=m}else{d=b;b=(m>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=41}}else{f[h>>2]=f[b>>2];o=41}if((o|0)==41)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function WCa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function XCa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;YCa(a,c,a+900|0);f[a+540>>2]=0;b[a+544>>0]=0;n[a+548>>2]=1.0;b[a+552>>0]=0;b[a+553>>0]=0;b[a+554>>0]=0;h=f[a+568>>2]|0;i=a+572|0;d=f[i>>2]|0;if((d|0)!=(h|0))do{e=d+-20|0;f[i>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-16|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[i>>2]|0}}while((d|0)!=(h|0));h=f[a+556>>2]|0;i=a+560|0;d=f[i>>2]|0;if((d|0)!=(h|0))do{e=d+-16|0;f[i>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-12|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[i>>2]|0}}while((d|0)!=(h|0));h=a+592|0;if(f[h>>2]|0){e=a+588|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+584>>2]|0;if(e|0){g=a+580|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}b[a+600>>0]=0;h=a+616|0;if(f[h>>2]|0){e=a+612|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+608>>2]|0;if(e|0){g=a+604|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+636|0;if(f[h>>2]|0){e=a+632|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+628>>2]|0;if(e|0){g=a+624|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+656|0;if(f[h>>2]|0){e=a+652|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+648>>2]|0;if(e|0){g=a+644|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}d=f[a+664>>2]|0;e=a+668|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-8-d|0)>>>3)<<3);h=a+700|0;if(f[h>>2]|0){e=a+696|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+692>>2]|0;if(e|0){g=a+688|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+720|0;if(f[h>>2]|0){e=a+716|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+712>>2]|0;if(e|0){g=a+708|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+740|0;if(f[h>>2]|0){e=a+736|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+732>>2]|0;if(e|0){g=a+728|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+760|0;if(f[h>>2]|0){e=a+756|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+752>>2]|0;if(e|0){g=a+748|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+780|0;if(f[h>>2]|0){e=a+776|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+772>>2]|0;if(e|0){g=a+768|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+800|0;if(f[h>>2]|0){e=a+796|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+792>>2]|0;if(e|0){g=a+788|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+820|0;if(f[h>>2]|0){e=a+816|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+812>>2]|0;if(e|0){g=a+808|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}h=a+840|0;if(f[h>>2]|0){e=a+836|0;d=f[e>>2]|0;if(d|0)do{i=d;d=f[d>>2]|0;Zpb(i)}while((d|0)!=0);f[e>>2]=0;e=f[a+832>>2]|0;if(e|0){g=a+828|0;d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}e=a+848|0;d=f[e>>2]|0;if(d|0){nh[f[(f[d>>2]|0)+16>>2]&1023](d,1);d=f[e>>2]|0;f[e>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}c=c+4|0;d=f[(f[c>>2]|0)+852>>2]|0;if(!d){u=k;return}e=f[(f[d>>2]|0)+12>>2]|0;g=Wpb(32)|0;f[j>>2]=g;f[j+8>>2]=-2147483616;f[j+4>>2]=20;h=g;i=145594;a=h+20|0;do{b[h>>0]=b[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(a|0));b[g+20>>0]=0;nh[e&1023](d,j);if((b[j+11>>0]|0)<0)Zpb(f[j>>2]|0);j=(f[c>>2]|0)+852|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);j=(f[c>>2]|0)+856|0;d=f[j>>2]|0;f[j>>2]=0;if(!d){u=k;return}fh[f[(f[d>>2]|0)+4>>2]&2047](d);u=k;return}function YCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+1600|0;k=0;if(!(f[a+12>>2]|0)){if((f[a+20>>2]|0)!=(f[a+24>>2]|0))k=3}else k=3;if((k|0)==3){d=f[a+8>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,10);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}i=f[e+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+20>>2]|0;e=f[a+24>>2]|0;if((d|0)!=(e|0))do{j=f[d+24>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,1);d=d+28|0}while((d|0)!=(e|0));_Ca(a)}$Ca(b,a+128|0);$Ca(b,a+160|0);if(!(f[a+44>>2]|0)){if((f[a+52>>2]|0)!=(f[a+56>>2]|0))k=16}else k=16;if((k|0)==16){d=f[a+40>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,8);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}i=f[e+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+52>>2]|0;e=f[a+56>>2]|0;if((d|0)!=(e|0))do{j=f[d+24>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,1);d=d+28|0}while((d|0)!=(e|0));aDa(a+32|0)}bDa(b,a+64|0);bDa(b,a+96|0);if(!(f[a+204>>2]|0)){if((f[a+212>>2]|0)!=(f[a+216>>2]|0))k=29}else k=29;if((k|0)==29){d=f[a+200>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,3);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}i=f[e+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+212>>2]|0;e=f[a+216>>2]|0;if((d|0)!=(e|0))do{j=f[d+24>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,1);d=d+28|0}while((d|0)!=(e|0));cDa(a+192|0)}if(!(f[a+236>>2]|0)){if((f[a+244>>2]|0)!=(f[a+248>>2]|0))k=42}else k=42;if((k|0)==42){d=f[a+232>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,4);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}i=f[e+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+244>>2]|0;e=f[a+248>>2]|0;if((d|0)!=(e|0))do{j=f[d+24>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,1);d=d+28|0}while((d|0)!=(e|0));dDa(a+224|0)}if(!(f[a+268>>2]|0)){if((f[a+276>>2]|0)!=(f[a+280>>2]|0))k=55}else k=55;if((k|0)==55){d=f[a+264>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,7);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}i=f[e+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+276>>2]|0;e=f[a+280>>2]|0;if((d|0)!=(e|0))do{j=f[d+24>>2]|0;nh[f[(f[j>>2]|0)+16>>2]&1023](j,1);d=d+28|0}while((d|0)!=(e|0));eDa(a+256|0)}if(!(f[a+300>>2]|0)){if((f[a+308>>2]|0)!=(f[a+312>>2]|0))k=68}else k=68;if((k|0)==68){d=f[a+296>>2]|0;if(d|0)do{j=d;e=f[j+12>>2]|0;j=f[j+16>>2]|0;if((e|0)!=(j|0))do{h=f[e>>2]|0;i=f[e+4>>2]|0;if(i|0){g=h;do{if(f[g>>2]|0)ZCa(b,g,1);g=g+8|0}while((g|0)!=(h+(i<<3)|0|0))}k=f[e+24>>2]|0;nh[f[(f[k>>2]|0)+16>>2]&1023](k,1);e=e+28|0}while((e|0)!=(j|0));d=f[d>>2]|0}while((d|0)!=0);d=f[a+308>>2]|0;e=f[a+312>>2]|0;if((d|0)!=(e|0))do{b=f[d+24>>2]|0;nh[f[(f[b>>2]|0)+16>>2]&1023](b,1);d=d+28|0}while((d|0)!=(e|0));fDa(a+288|0)}d=f[(a+348|0)>>2]|0;if(d|0)do{b=f[d+12>>2]|0;nh[f[(f[b>>2]|0)+16>>2]&1023](b,1);d=f[d>>2]|0}while((d|0)!=0);if(f[(a+352|0)>>2]|0){d=f[(a+348|0)>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;g=f[(e+12|0)>>2]|0;f[(e+12|0)>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);Zpb(e)}while((d|0)!=0);f[(a+348|0)>>2]=0;e=f[a+344>>2]|0;if(e|0){d=0;do{f[(f[(a+340|0)>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[(a+352|0)>>2]=0}b=f[(a+328|0)>>2]|0;f[l+16>>2]=a;f[l+32>>2]=c;f[l+712>>2]=b;f[l+1536>>2]=0;f[l+1540>>2]=0;ODa(l);G=f[l+1536>>2]|0;D=f[l+1540>>2]|0;H=+n[l+1540>>2];f[l+1536>>2]=0;f[l+1540>>2]=0;if((G|0)==5){u=l;return}u=l}function ZCa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0;q=u;u=u+1392|0;l=0;a=f[a+4>>2]|0;e=f[b>>2]|0;i=f[a+864>>2]|0;if(!i){u=q;return}if(!((i+-1|0)&i))g=(i+-1|0)&e;else if(i>>>0>e>>>0)g=e;else g=(e>>>0)%(i>>>0)|0;a=f[(f[a+860>>2]|0)+(g<<2)>>2]|0;if(!a){u=q;return}a=f[a>>2]|0;if(!a){u=q;return}a:do if(!((i+-1|0)&i)){while(1){d=f[a+4>>2]|0;if(!((d|0)==(e|0)|(d&(i+-1|0)|0)==(g|0))){l=262;break}if((d|0)==(e|0))if((f[a+8>>2]|0)==(e|0)){p=a;break a}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}else{while(1){d=f[a+4>>2]|0;if((d|0)==(e|0)){if((f[a+8>>2]|0)==(e|0)){p=a;break a}}else{if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(g|0)){l=262;break}}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}while(0);if((h[p+12>>0]|0)>1){u=q;return}k=f[b+4>>2]|0;d=1;a=c|0;if(d)switch(a|0){case 5:{i=p+16|0;e=f[p+20>>2]|0;if(!e){u=q;return}if(!((e+-1|0)&e))g=(e+-1|0)&k;else if(e>>>0>k>>>0)g=k;else g=(k>>>0)%(e>>>0)|0;a=f[(f[i>>2]|0)+(g<<2)>>2]|0;if(!a){u=q;return}a=f[a>>2]|0;if(!a){u=q;return}b:do if(!((e+-1|0)&e)){while(1){d=f[a+4>>2]|0;if(!((d|0)==(k|0)|(d&(e+-1|0)|0)==(g|0))){l=262;break}if((d|0)==(k|0))if((f[a+8>>2]|0)==(k|0)){j=a;break b}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}else{while(1){d=f[a+4>>2]|0;if((d|0)==(k|0)){if((f[a+8>>2]|0)==(k|0)){j=a;break b}}else{if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(g|0)){l=262;break}}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}while(0);tDa(i,j)|0;u=q;return}default:d=1}if(d)switch(a|0){case 3:{j=p+76|0;b=f[p+80>>2]|0;if(!b){u=q;return}c=((b+-1|0)&b|0)==0;if(c)e=(b+-1|0)&k;else if(b>>>0>k>>>0)e=k;else e=(k>>>0)%(b>>>0)|0;g=f[j>>2]|0;a=f[g+(e<<2)>>2]|0;if(!a){u=q;return}a=f[a>>2]|0;if(!a){u=q;return}c:do if(c){while(1){d=f[a+4>>2]|0;if(!((d|0)==(k|0)|(d&(b+-1|0)|0)==(e|0))){l=262;break}if((d|0)==(k|0))if((f[a+8>>2]|0)==(k|0)){o=a;break c}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}else{while(1){d=f[a+4>>2]|0;if((d|0)==(k|0)){if((f[a+8>>2]|0)==(k|0)){o=a;break c}}else{if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0;if((d|0)!=(e|0)){l=262;break}}a=f[a>>2]|0;if(!a){l=262;break}}if((l|0)==262){u=q;return}}while(0);if(c)i=(b+-1|0)&k;else if(b>>>0>k>>>0)i=k;else i=(k>>>0)%(b>>>0)|0;d=g+(i<<2)|0;e=f[d>>2]|0;while(1){a=f[e>>2]|0;if((a|0)==(o|0))break;else e=a}if((e|0)==(p+84|0))l=71;else{a=f[e+4>>2]|0;if(c)a=a&(b+-1|0);else if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0;if((a|0)==(i|0))m=o;else l=71}do if((l|0)==71){a=f[o>>2]|0;if(a|0){a=f[a+4>>2]|0;if(c)a=a&(b+-1|0);else if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0;if((a|0)==(i|0)){m=o;break}}f[d>>2]=0;m=o}while(0);a=f[m>>2]|0;if(a){d=f[a+4>>2]|0;if(c)d=d&(b+-1|0);else if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0;if((d|0)!=(i|0)){f[(f[j>>2]|0)+(d<<2)>>2]=e;a=f[o>>2]|0}}f[e>>2]=a;f[m>>2]=0;p=p+88|0;f[p>>2]=(f[p>>2]|0)+-1;Zpb(o);u=q;return}default:d=1}f[q+296>>2]=p;f[q+1152>>2]=k;f[q+1304>>2]=l;f[q+1312>>2]=d;f[q+1320>>2]=a;f[q+1328>>2]=0;f[q+1332>>2]=0;PDa(q);G=f[q+1328>>2]|0;D=f[q+1332>>2]|0;H=+n[q+1332>>2];f[q+1328>>2]=0;f[q+1332>>2]=0;if((G|0)==5){u=q;return}u=q}function _Ca(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function $Ca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;if(!(f[b+12>>2]|0))if((f[b+20>>2]|0)==(f[b+24>>2]|0))return;c=f[b+8>>2]|0;if(c|0)do{h=c;d=f[h+12>>2]|0;h=f[h+16>>2]|0;if((d|0)!=(h|0))do{e=f[d>>2]|0;i=f[d+4>>2]|0;g=e+(i<<3)|0;if(i|0)do{if(f[e>>2]|0)ZCa(a,e,10);e=e+8|0}while((e|0)!=(g|0));i=f[d+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);d=d+28|0}while((d|0)!=(h|0));c=f[c>>2]|0}while((c|0)!=0);c=f[b+20>>2]|0;d=f[b+24>>2]|0;if((c|0)!=(d|0))do{i=f[c+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);c=c+28|0}while((c|0)!=(d|0));qDa(b);return}function aDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;pDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function bDa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;if(!(f[b+12>>2]|0))if((f[b+20>>2]|0)==(f[b+24>>2]|0))return;c=f[b+8>>2]|0;if(c|0)do{h=c;d=f[h+12>>2]|0;h=f[h+16>>2]|0;if((d|0)!=(h|0))do{e=f[d>>2]|0;i=f[d+4>>2]|0;g=e+(i<<3)|0;if(i|0)do{if(f[e>>2]|0)ZCa(a,e,5);e=e+8|0}while((e|0)!=(g|0));i=f[d+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);d=d+28|0}while((d|0)!=(h|0));c=f[c>>2]|0}while((c|0)!=0);c=f[b+20>>2]|0;d=f[b+24>>2]|0;if((c|0)!=(d|0))do{i=f[c+24>>2]|0;nh[f[(f[i>>2]|0)+16>>2]&1023](i,1);c=c+28|0}while((c|0)!=(d|0));nDa(b);return}function cDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;mDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function dDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;lDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function eDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;kDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function fDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;jDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function gDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if(!a)return;do{g=a;a=f[a>>2]|0;c=g+44|0;b=f[c>>2]|0;e=g+48|0;if((b|0)==(f[e>>2]|0)){d=f[g+36>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}c=g+24|0;b=f[c>>2]|0;e=g+28|0;if((b|0)==(f[e>>2]|0)){d=f[g+16>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b)}e=g+12|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);Zpb(g)}while((a|0)!=0);return}function hDa(a,b){a=a|0;b=b|0;if(!b)return;else{hDa(a,f[b>>2]|0);hDa(a,f[b+4>>2]|0);Zpb(b);return}}function iDa(a,b){a=a|0;b=b|0;if(!b)return;else{iDa(a,f[b>>2]|0);iDa(a,f[b+4>>2]|0);Zpb(b);return}}function jDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function kDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function lDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function mDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function nDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;oDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function oDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function pDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function qDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;rDa(h+12|0);Zpb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{_pb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function rDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function sDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function tDa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=f[b>>2]|0;h=f[a+4>>2]|0;c=f[b+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)g=i&c;else if(c>>>0<h>>>0)g=c;else g=(c>>>0)%(h>>>0)|0;d=(f[a>>2]|0)+(g<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(b|0))break;else k=c}if((k|0)==(a+8|0))e=13;else{c=f[k+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;e=21}else e=13}do if((e|0)==13){if(l|0){c=f[l+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;c=l;e=22;break}}f[d>>2]=0;d=f[b>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(g|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[b>>2]|0}}f[k>>2]=c;f[b>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!b)return l|0;Zpb(b);return l|0}function uDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+1424|0;b=f[a+932>>2]|0;if(b|0){c=f[(a+936|0)>>2]|0;if((c|0)!=(b|0))f[(a+936|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+920>>2]|0;if(b|0){c=f[(a+924|0)>>2]|0;if((c|0)!=(b|0))f[(a+924|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}vDa(f[a+888>>2]|0);b=f[(a+880|0)>>2]|0;f[(a+880|0)>>2]=0;if(b|0)Zpb(b);wDa(f[a+868>>2]|0);b=f[(a+860|0)>>2]|0;f[(a+860|0)>>2]=0;if(b|0)Zpb(b);b=f[(a+856|0)>>2]|0;f[(a+856|0)>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+852|0)>>2]|0;f[(a+852|0)>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+848|0)>>2]|0;f[(a+848|0)>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[a+836>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+828|0)>>2]|0;f[(a+828|0)>>2]=0;if(b|0)Zpb(b);b=f[a+816>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+808|0)>>2]|0;f[(a+808|0)>>2]=0;if(b|0)Zpb(b);b=f[a+796>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+788|0)>>2]|0;f[(a+788|0)>>2]=0;if(b|0)Zpb(b);b=f[a+776>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+768|0)>>2]|0;f[(a+768|0)>>2]=0;if(b|0)Zpb(b);b=f[a+756>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+748|0)>>2]|0;f[(a+748|0)>>2]=0;if(b|0)Zpb(b);b=f[a+736>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+728|0)>>2]|0;f[(a+728|0)>>2]=0;if(b|0)Zpb(b);b=f[a+716>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+708|0)>>2]|0;f[(a+708|0)>>2]=0;if(b|0)Zpb(b);b=f[a+696>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+688|0)>>2]|0;f[(a+688|0)>>2]=0;if(b|0)Zpb(b);b=f[a+664>>2]|0;if(b|0){c=f[(a+668|0)>>2]|0;if((c|0)!=(b|0))f[(a+668|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[a+652>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+644|0)>>2]|0;f[(a+644|0)>>2]=0;if(b|0)Zpb(b);b=f[a+632>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+624|0)>>2]|0;f[(a+624|0)>>2]=0;if(b|0)Zpb(b);b=f[a+612>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+604|0)>>2]|0;f[(a+604|0)>>2]=0;if(b|0)Zpb(b);b=f[a+588>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+580|0)>>2]|0;f[(a+580|0)>>2]=0;if(b|0)Zpb(b);b=f[(a+568|0)>>2]|0;if(b|0){c=f[(a+572|0)>>2]|0;if((c|0)!=(b|0)){do{d=c+-20|0;f[(a+572|0)>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e);c=f[(a+572|0)>>2]|0}}while((c|0)!=(b|0));b=f[(a+568|0)>>2]|0}Zpb(b)}b=f[(a+556|0)>>2]|0;if(b|0){c=f[(a+560|0)>>2]|0;if((c|0)!=(b|0)){do{d=c+-16|0;f[(a+560|0)>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e);c=f[(a+560|0)>>2]|0}}while((c|0)!=(b|0));b=f[(a+556|0)>>2]|0}Zpb(b)}hDa(a+528|0,f[a+532>>2]|0);b=f[a+516>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);b=f[(a+508|0)>>2]|0;f[(a+508|0)>>2]=0;if(b|0)Zpb(b);iDa(a+492|0,f[a+496>>2]|0);e=f[a+480>>2]|0;f[g+16>>2]=a;f[g+568>>2]=e;f[g+1376>>2]=0;f[g+1380>>2]=0;QDa(g);G=f[g+1376>>2]|0;D=f[g+1380>>2]|0;H=+n[g+1380>>2];f[g+1376>>2]=0;f[g+1380>>2]=0;if((G|0)==5){u=g;return}u=g}function vDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if(!a)return;do{e=a;a=f[a>>2]|0;b=f[e+40>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;c=f[d+20>>2]|0;if(c|0)do{g=c;c=f[c>>2]|0;Zpb(g)}while((c|0)!=0);g=d+12|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Zpb(c);Zpb(d)}while((b|0)!=0);g=e+32|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);b=f[e+20>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;Zpb(g)}while((b|0)!=0);g=e+12|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)Zpb(b);Zpb(e)}while((a|0)!=0);return}function wDa(a){a=a|0;var b=0,c=0,d=0;if(!a)return;do{c=a;a=f[a>>2]|0;b=f[c+164>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+156|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+144>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+136|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+124>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+116|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+104>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+96|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+84>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+76|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+64>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+56|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+44>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);b=f[c+24>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Zpb(d)}while((b|0)!=0);d=c+16|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Zpb(b);Zpb(c)}while((a|0)!=0);return}function xDa(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=30680;c=Wpb(944)|0;yDa(c,a);f[a+4>>2]=c;f[a+8>>2]=b;f[a+12>>2]=0;return}function yDa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[a+16>>2]=1.0;d=a+20|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+48>>2]=1.0;d=a+52|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+80>>2]=1.0;d=a+84|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+112>>2]=1.0;d=a+116|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+144>>2]=1.0;d=a+148|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+176>>2]=1.0;d=a+180|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+208>>2]=1.0;d=a+212|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+240>>2]=1.0;d=a+244|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+272>>2]=1.0;d=a+276|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+304>>2]=1.0;d=a+308|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+336>>2]=1.0;d=a+340|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+356>>2]=1.0;d=a+360|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+376>>2]=1.0;d=a+380|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+396>>2]=1.0;d=a+400|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+416>>2]=1.0;d=a+420|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+436>>2]=1.0;d=a+440|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;n[a+468>>2]=1.0;d=a+472|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[a+488>>2]=1.0;f[a+496>>2]=0;f[a+500>>2]=0;f[a+492>>2]=a+496;d=a+504|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;n[a+524>>2]=1.0;f[a+532>>2]=0;f[a+536>>2]=0;f[a+528>>2]=a+532;f[a+540>>2]=0;b[a+544>>0]=0;n[a+548>>2]=1.0;b[a+552>>0]=0;b[a+553>>0]=0;b[a+554>>0]=0;d=a+596|0;e=a+556|0;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[d>>2]=1.0;g=a+604|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+620>>2]=1.0;g=a+624|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+640>>2]=1.0;g=a+644|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+660>>2]=1.0;f[a+664>>2]=0;f[a+668>>2]=0;f[a+672>>2]=0;g=a+688|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+704>>2]=1.0;g=a+708|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+724>>2]=1.0;g=a+728|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+744>>2]=1.0;g=a+748|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+764>>2]=1.0;g=a+768|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+784>>2]=1.0;g=a+788|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+804>>2]=1.0;g=a+808|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+824>>2]=1.0;g=a+828|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+844>>2]=1.0;g=a+848|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[a+876>>2]=1.0;g=a+880|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[a+896>>2]=1.0;f[a+900>>2]=0;f[a+904>>2]=-1;f[a+908>>2]=0;f[a+912>>2]=-1;f[a+916>>2]=c;g=a+920|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;return}function zDa(a,b){a=a|0;b=b|0;var c=0;a=a+12|0;c=f[a>>2]|0;b=f[b+12>>2]|0;f[a>>2]=(c|0)<(b|0)?b:c;return}function ADa(a){a=a|0;return (f[a+12>>2]|0)==2|0}function BDa(a){a=a|0;var b=0,c=0,d=0;f[a+12>>2]=1;fh[f[(f[a>>2]|0)+24>>2]&2047](a);b=a+4|0;c=f[b>>2]|0;d=c+664|0;if((f[d>>2]|0)==(f[c+668>>2]|0))return;Fh[f[(f[a>>2]|0)+44>>2]&3](a,d,f[c+676>>2]|0,f[c+680>>2]|0,+n[c+684>>2]);b=f[b>>2]|0;a=f[b+664>>2]|0;b=b+668|0;c=f[b>>2]|0;if((c|0)==(a|0))return;f[b>>2]=c+(~((c+-8-a|0)>>>3)<<3);return}function CDa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;f[d>>2]=c;g=a+12|0;f[g>>2]=2;h=a+8|0;wva(f[(f[h>>2]|0)+220>>2]|0,c);e=a+4|0;c=VCa((f[e>>2]|0)+860|0,d)|0;b[c>>0]=1;c=f[h>>2]|0;d=c+16|0;if(!(b[d>>0]|0)){b[d>>0]=1;gva(c+4|0)}if((f[g>>2]|0)!=2){u=i;return}DDa(f[e>>2]|0,a,f[(f[h>>2]|0)+220>>2]|0);if((f[g>>2]|0)!=2){u=i;return}EDa(f[e>>2]|0,0);u=i;return}function DDa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+3776|0;e=0;d=f[(a+536|0)>>2]|0;if(!d){u=g;return}f[g+16>>2]=a;f[g+24>>2]=b;f[g+32>>2]=c;f[g+2312>>2]=d;f[g+3568>>2]=e;f[g+3624>>2]=0;f[g+3628>>2]=0;TDa(g);G=f[g+3624>>2]|0;D=f[g+3628>>2]|0;H=+n[g+3628>>2];f[g+3624>>2]=0;f[g+3628>>2]=0;if((G|0)==5){u=g;return}u=g}function EDa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+32|0;q=w;p=w+20|0;o=w+16|0;r=w+12|0;s=w+8|0;t=w+4|0;FDa(a);d=a+554|0;if(b[d>>0]|0){v=f[a+916>>2]|0;nh[f[(f[v>>2]|0)+64>>2]&1023](v,(b[a+553>>0]|0)!=0);b[d>>0]=0}l=a+556|0;d=f[l>>2]|0;v=a+560|0;m=f[v>>2]|0;if((d|0)!=(m|0)){n=a+916|0;while(1){g=d+16|0;e=g;a:do if((g|0)!=(m|0)){i=d+13|0;j=d+12|0;k=d+4|0;h=d;while(1){if((b[i>>0]|0)!=(b[h+29>>0]|0))break;if((b[j>>0]|0)!=(b[h+28>>0]|0))break;f[r>>2]=f[k>>2];f[s>>2]=f[g>>2];f[t>>2]=f[h+20>>2];f[o>>2]=f[r>>2];f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];GDa(d,o,p,q)|0;h=g+16|0;e=h;if((h|0)==(m|0))break a;else{x=g;g=h;h=x}}Yca(f[d>>2]|0,f[k>>2]|0,q);x=f[n>>2]|0;Eh[f[(f[x>>2]|0)+60>>2]&255](x,b[i>>0]|0,d,(b[j>>0]|0)!=0)}while(0);if((m|0)==(e|0))break;else d=e}Yca(f[d>>2]|0,f[d+4>>2]|0,q);h=f[n>>2]|0;Eh[f[(f[h>>2]|0)+60>>2]&255](h,b[d+13>>0]|0,d,(b[d+12>>0]|0)!=0);h=f[l>>2]|0;d=f[v>>2]|0;if((d|0)!=(h|0))do{e=d+-16|0;f[v>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-12|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g);d=f[v>>2]|0}}while((d|0)!=(h|0))}if(f[a+740>>2]|0)HDa(a);if(f[a+720>>2]|0)IDa(a);if(f[a+700>>2]|0)JDa(a);if(f[a+760>>2]|0)KDa(a);if(f[a+780>>2]|0)LDa(a);if(f[a+800>>2]|0)MDa(a);if(f[a+820>>2]|0)NDa(a);if(f[a+840>>2]|0)UDa(a);if(!c){u=w;return}d=a+600|0;if(b[d>>0]|0){x=f[a+916>>2]|0;fh[f[(f[x>>2]|0)+176>>2]&2047](x);b[d>>0]=0}g=a+624|0;h=a+636|0;if(f[h>>2]|0){x=f[a+916>>2]|0;nh[f[(f[x>>2]|0)+180>>2]&1023](x,g);if(f[h>>2]|0){e=a+632|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;Zpb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+628>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}}g=a+580|0;h=a+592|0;if(f[h>>2]|0){x=f[a+916>>2]|0;nh[f[(f[x>>2]|0)+188>>2]&1023](x,g);if(f[h>>2]|0){e=a+588|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;Zpb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+584>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}}g=a+644|0;h=a+656|0;if(!(f[h>>2]|0)){u=w;return}x=f[a+916>>2]|0;nh[f[(f[x>>2]|0)+184>>2]&1023](x,g);if(!(f[h>>2]|0)){u=w;return}e=a+652|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;Zpb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+648>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0;u=w;return}function FDa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;r=w;q=w+20|0;p=w+16|0;s=w+12|0;t=w+8|0;v=w+4|0;i=a+616|0;g=f[i>>2]|0;if(g|0){j=a+932|0;h=a+940|0;c=f[j>>2]|0;k=a+936|0;if((f[h>>2]|0)-c>>3>>>0<g>>>0){if(g>>>0>536870911)ud();d=(f[k>>2]|0)-c|0;e=Wpb(g<<3)|0;if((d|0)>0)Irb(e|0,c|0,d|0)|0;f[j>>2]=e;f[k>>2]=e+(d>>3<<3);f[h>>2]=e+(g<<3);if(c|0)Zpb(c)}f[s>>2]=f[k>>2];d=a+612|0;f[t>>2]=f[d>>2];f[v>>2]=0;f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];nEa(j,p,q,r)|0;if(f[i>>2]|0){c=f[d>>2]|0;if(c|0)do{o=c;c=f[c>>2]|0;Zpb(o)}while((c|0)!=0);f[d>>2]=0;d=f[a+608>>2]|0;if(d|0){e=a+604|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[i>>2]=0}Yca(f[j>>2]|0,f[k>>2]|0,r);c=f[a+916>>2]|0;nh[f[(f[c>>2]|0)+96>>2]&1023](c,j);c=f[j>>2]|0;d=f[k>>2]|0;if((d|0)!=(c|0))f[k>>2]=d+(~((d+-8-c|0)>>>3)<<3)}c=a+544|0;if(b[c>>0]|0){o=f[a+916>>2]|0;nh[f[(f[o>>2]|0)+88>>2]&1023](o,f[a+540>>2]|0);b[c>>0]=0}c=a+552|0;if(b[c>>0]|0){o=f[a+916>>2]|0;gh[f[(f[o>>2]|0)+92>>2]&63](o,+n[a+548>>2]);b[c>>0]=0}l=a+568|0;c=f[l>>2]|0;o=a+572|0;m=f[o>>2]|0;if((c|0)==(m|0)){u=w;return}a=a+916|0;while(1){e=c+20|0;d=e;a:do if((e|0)!=(m|0)){i=c+16|0;j=c+12|0;k=c+4|0;g=c;h=e;while(1){if((b[i>>0]|0)!=(b[g+36>>0]|0))break;if((f[j>>2]|0)!=(f[g+32>>2]|0))break;f[s>>2]=f[k>>2];f[t>>2]=f[h>>2];f[v>>2]=f[g+24>>2];f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];GDa(c,p,q,r)|0;e=h+20|0;d=e;if((e|0)==(m|0))break a;else{g=h;h=e}}Yca(f[c>>2]|0,f[k>>2]|0,r);k=f[a>>2]|0;Eh[f[(f[k>>2]|0)+56>>2]&255](k,b[i>>0]|0,c,f[j>>2]|0)}while(0);if((m|0)==(d|0))break;else c=d}Yca(f[c>>2]|0,f[c+4>>2]|0,r);g=f[a>>2]|0;Eh[f[(f[g>>2]|0)+56>>2]&255](g,b[c+16>>0]|0,c,f[c+12>>2]|0);g=f[l>>2]|0;c=f[o>>2]|0;if((c|0)!=(g|0))do{d=c+-20|0;f[o>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);Zpb(e);c=f[o>>2]|0}}while((c|0)!=(g|0));u=w;return}function GDa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=f[a>>2]|0;g=l;h=(f[b>>2]|0)-g|0;r=l+(h>>3<<3)|0;e=f[c>>2]|0;j=f[d>>2]|0;q=j-e|0;i=q>>3;m=e;o=j;if((q|0)<=0)return r|0;p=a+8|0;d=f[p>>2]|0;q=a+4|0;n=f[q>>2]|0;b=n;if((i|0)<=(d-b>>3|0)){h=b-r|0;b=h>>3;if((i|0)>(b|0)){d=m+(b<<3)|0;g=d;if((d|0)==(o|0))b=n;else{b=n;do{p=d;a=f[p+4>>2]|0;f[b>>2]=f[p>>2];f[b+4>>2]=a;d=d+8|0;b=(f[q>>2]|0)+8|0;f[q>>2]=b}while((d|0)!=(o|0))}if((h|0)>0)j=g;else return r|0}else b=n;h=b-(r+(i<<3))|0;i=h>>3;d=r+(i<<3)|0;if(d>>>0<n>>>0){g=b;do{o=d;p=f[o+4>>2]|0;a=g;f[a>>2]=f[o>>2];f[a+4>>2]=p;d=d+8|0;g=(f[q>>2]|0)+8|0;f[q>>2]=g}while(d>>>0<n>>>0)}if(i){Jrb(b+(0-i<<3)|0,r|0,h|0)|0;e=f[c>>2]|0}b=j-e|0;if(!b)return r|0;Jrb(r|0,e|0,b|0)|0;return r|0}b=(b-g>>3)+i|0;if(b>>>0>536870911)fob(a);i=d-g|0;d=i>>2;d=i>>3>>>0<268435455?(d>>>0<b>>>0?b:d):536870911;i=r;b=h>>3;do if(!d)k=0;else if(d>>>0>536870911)ud();else{k=Wpb(d<<3)|0;break}while(0);j=k+(b<<3)|0;e=j;h=k+(d<<3)|0;if((o|0)==(m|0))b=l;else{d=j;b=m;do{m=b;n=f[m+4>>2]|0;c=d;f[c>>2]=f[m>>2];f[c+4>>2]=n;d=e+8|0;e=d;b=b+8|0}while((b|0)!=(o|0));b=f[a>>2]|0}d=i-b|0;g=j+(0-(d>>3)<<3)|0;if((d|0)>0)Irb(g|0,b|0,d|0)|0;d=(f[q>>2]|0)-i|0;if((d|0)>0){Irb(e|0,r|0,d|0)|0;e=e+(d>>>3<<3)|0;b=f[a>>2]|0}f[a>>2]=g;f[q>>2]=e;f[p>>2]=h;if(!b){r=j;return r|0}Zpb(b);r=j;return r|0}function HDa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;N=u;u=u+16|0;H=N;I=N+4|0;K=a+920|0;M=a+740|0;e=f[M>>2]|0;L=a+928|0;g=f[K>>2]|0;J=a+924|0;if((f[L>>2]|0)-g>>3>>>0<e>>>0){if(e>>>0>536870911)ud();c=(f[J>>2]|0)-g|0;d=Wpb(e<<3)|0;if((c|0)>0)Irb(d|0,g|0,c|0)|0;f[K>>2]=d;f[J>>2]=d+(c>>3<<3);f[L>>2]=d+(e<<3);if(g|0)Zpb(g)}G=a+736|0;z=a+900|0;A=a+4|0;B=a+12|0;C=a+16|0;D=a+8|0;x=a+20|0;y=a+24|0;E=a+916|0;w=145644;a:while(1){g=b[w>>0]|0;v=g<<24>>24!=0;c=f[G>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==g<<24>>24){d=d+8|0;e=f[J>>2]|0;if((e|0)==(f[L>>2]|0)){dB(K,d);break}else{r=d;s=f[r+4>>2]|0;t=e;f[t>>2]=f[r>>2];f[t+4>>2]=s;f[J>>2]=(f[J>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);c=f[K>>2]|0;d=f[J>>2]|0;if((c|0)!=(d|0)){Xka(c,d,H);t=(f[z>>2]|0)+1|0;f[z>>2]=t;j=f[A>>2]|0;k=(j|0)==0;b:do if(k){c=0;F=40}else{g=j+-1|0;e=(g&j|0)==0;if(e)c=g&t;else if(j>>>0>t>>>0)c=t;else c=(t>>>0)%(j>>>0)|0;d=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!d)F=40;else{if(e)while(1){d=f[d>>2]|0;if(!d){F=40;break b}s=f[d+4>>2]|0;if(!((s|0)==(t|0)|(s&g|0)==(c|0))){F=40;break b}if((f[d+8>>2]|0)==(t|0))break b}do{d=f[d>>2]|0;if(!d){F=40;break b}e=f[d+4>>2]|0;if((e|0)!=(t|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(c|0)){F=40;break b}}}while((f[d+8>>2]|0)!=(t|0))}}while(0);if((F|0)==40){F=0;g=Wpb(24)|0;f[g+8>>2]=t;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=t;f[g>>2]=0;h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(k|i*+(j>>>0)<h){c=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(h/i))>>>0;lEa(a,c>>>0<d>>>0?d:c);c=f[A>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&t;break}if(c>>>0>t>>>0){e=c;c=t}else{e=c;c=(t>>>0)%(c>>>0)|0}}else e=j;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){f[g>>2]=f[D>>2];f[D>>2]=g;f[d>>2]=D;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;F=53}}else{f[g>>2]=f[c>>2];F=53}if((F|0)==53){F=0;f[c>>2]=g}f[B>>2]=(f[B>>2]|0)+1;d=g}r=d+12|0;c=f[x>>2]|0;q=f[y>>2]|0;if((c|0)!=(q|0)){s=d+16|0;p=d+20|0;do{d=f[s>>2]|0;o=f[p>>2]|0;e=o;if(d>>>0<o>>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];o=d+8|0;m=c+8|0;f[o>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[o>>2]=f[m>>2];o=c+12|0;f[l>>2]=f[o>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[o>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;o=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=o;f[s>>2]=(f[s>>2]|0)+28}else{g=f[r>>2]|0;j=(d-g|0)/28|0;d=j+1|0;if(d>>>0>153391689){F=71;break a}m=(e-g|0)/28|0;o=m<<1;d=m>>>0<76695844?(o>>>0<d>>>0?d:o):153391689;if(!d)e=0;else{if(d>>>0>153391689){F=74;break a}e=Wpb(d*28|0)|0}k=e+(j*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(j*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(j*28|0)+16>>2]=0;f[e+(j*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(j*28|0)+12>>2]=f[l>>2];o=c+16|0;f[e+(j*28|0)+16>>2]=f[o>>2];f[o>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(j*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(j*28|0)+24>>2]=l;l=k+28|0;j=f[r>>2]|0;d=f[s>>2]|0;if((d|0)==(j|0)){d=g;o=j;e=j}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];O=e+-20|0;o=k+-20|0;f[O>>2]=0;P=e+-16|0;f[P>>2]=0;f[e+-12>>2]=0;f[O>>2]=f[o>>2];O=k+-16|0;f[P>>2]=f[O>>2];P=k+-12|0;f[e+-12>>2]=f[P>>2];f[P>>2]=0;f[O>>2]=0;f[o>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;o=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=o;e=g+-28|0;g=e}while((d|0)!=(j|0));d=g;o=f[r>>2]|0;e=f[s>>2]|0}f[r>>2]=d;f[s>>2]=l;f[p>>2]=m;l=o;if((e|0)!=(l|0))do{P=e+-4|0;d=f[P>>2]|0;f[P>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;do if((d|0)==(f[k>>2]|0)){j=f[e>>2]|0;if(!j)break;_pb(j);d=f[g>>2]|0}while(0);if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d)}}while((e|0)!=(l|0));if(o|0)Zpb(o)}c=c+28|0}while((c|0)!=(q|0));k=f[x>>2]|0;c=f[y>>2]|0;if((c|0)!=(k|0))do{e=c+-28|0;f[y>>2]=e;P=c+-4|0;d=f[P>>2]|0;f[P>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;g=f[d>>2]|0;j=c+-16|0;if((g|0)==(f[j>>2]|0)){c=f[e>>2]|0;if(!c)c=g;else{_pb(c);c=f[d>>2]|0}}else c=g;if(c|0){d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[y>>2]|0}while((c|0)!=(k|0))}c=f[E>>2]|0;d=f[(f[c>>2]|0)+128>>2]|0;f[I>>2]=t;f[H>>2]=f[I>>2];Eh[d&255](c,H,K,v);c=f[K>>2]|0;d=f[J>>2]|0;if((d|0)!=(c|0))f[J>>2]=d+(~((d+-8-c|0)>>>3)<<3)}w=w+1|0;if((w|0)==145646){F=9;break}}if((F|0)==9){if(!(f[M>>2]|0)){u=N;return}c=f[G>>2]|0;if(c|0)do{P=c;c=f[c>>2]|0;Zpb(P)}while((c|0)!=0);f[G>>2]=0;e=f[a+732>>2]|0;if(e|0){d=a+728|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[M>>2]=0;u=N;return}else if((F|0)==71)fob(r);else if((F|0)==74)ud()}function IDa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;t=u;u=u+16|0;n=t;o=t+4|0;q=a+920|0;s=a+720|0;e=f[s>>2]|0;r=a+928|0;g=f[q>>2]|0;p=a+924|0;if((f[r>>2]|0)-g>>3>>>0<e>>>0){if(e>>>0>536870911)ud();c=(f[p>>2]|0)-g|0;d=Wpb(e<<3)|0;if((c|0)>0)Irb(d|0,g|0,c|0)|0;f[q>>2]=d;f[p>>2]=d+(c>>3<<3);f[r>>2]=d+(e<<3);if(g|0)Zpb(g)}m=a+716|0;i=a+900|0;j=a+128|0;k=a+916|0;l=a+160|0;h=145642;do{g=b[h>>0]|0;c=f[m>>2]|0;d=(c|0)==0;if(!(g<<24>>24)){if(!d){e=c;do{c=e;do if(!(b[c+16>>0]|0))if((b[c+17>>0]|0)==1){c=c+8|0;d=f[p>>2]|0;if((d|0)==(f[r>>2]|0)){dB(q,c);break}else{v=c;c=f[v+4>>2]|0;g=d;f[g>>2]=f[v>>2];f[g+4>>2]=c;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);e=f[e>>2]|0}while((e|0)!=0)}d=f[q>>2]|0;c=f[p>>2]|0;if((d|0)==(c|0)){c=d;e=d}else{Xka(d,c,n);v=(f[i>>2]|0)+1|0;f[i>>2]=v;iEa(v,l);d=f[k>>2]|0;c=f[(f[d>>2]|0)+120>>2]|0;f[o>>2]=v;f[n>>2]=f[o>>2];Kh[c&255](d,n,q,0,1);d=f[q>>2]|0;c=f[p>>2]|0;if((c|0)==(d|0)){c=d;e=d}else{c=c+(~((c+-8-d|0)>>>3)<<3)|0;f[p>>2]=c;e=d}}d=f[m>>2]|0;if(!d)d=e;else{do{c=d;do if(!(b[c+16>>0]|0))if(!(b[c+17>>0]|0)){c=c+8|0;e=f[p>>2]|0;if((e|0)==(f[r>>2]|0)){dB(q,c);break}else{g=f[c+4>>2]|0;v=e;f[v>>2]=f[c>>2];f[v+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);d=f[d>>2]|0}while((d|0)!=0);d=f[q>>2]|0;c=f[p>>2]|0}if((d|0)!=(c|0)){Xka(d,c,n);v=(f[i>>2]|0)+1|0;f[i>>2]=v;iEa(v,l);c=f[k>>2]|0;d=f[(f[c>>2]|0)+120>>2]|0;f[o>>2]=v;f[n>>2]=f[o>>2];Kh[d&255](c,n,q,0,0);c=f[q>>2]|0;d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-8-c|0)>>>3)<<3)}}else{if(!d)do{d=c;do if((b[d+16>>0]|0)==g<<24>>24)if((b[d+17>>0]|0)==1){d=d+8|0;e=f[p>>2]|0;if((e|0)==(f[r>>2]|0)){dB(q,d);break}else{w=d;d=f[w+4>>2]|0;v=e;f[v>>2]=f[w>>2];f[v+4>>2]=d;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);d=f[q>>2]|0;c=f[p>>2]|0;if((d|0)==(c|0))c=d;else{Xka(d,c,n);w=(f[i>>2]|0)+1|0;f[i>>2]=w;iEa(w,j);d=f[k>>2]|0;c=f[(f[d>>2]|0)+120>>2]|0;f[o>>2]=w;f[n>>2]=f[o>>2];Kh[c&255](d,n,q,1,1);d=f[q>>2]|0;c=f[p>>2]|0;if((c|0)==(d|0))c=d;else{c=c+(~((c+-8-d|0)>>>3)<<3)|0;f[p>>2]=c}}e=f[m>>2]|0;if(e){do{c=e;do if((b[c+16>>0]|0)==g<<24>>24)if(!(b[c+17>>0]|0)){c=c+8|0;d=f[p>>2]|0;if((d|0)==(f[r>>2]|0)){dB(q,c);break}else{v=f[c+4>>2]|0;w=d;f[w>>2]=f[c>>2];f[w+4>>2]=v;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);e=f[e>>2]|0}while((e|0)!=0);d=f[q>>2]|0;c=f[p>>2]|0}if((d|0)!=(c|0)){Xka(d,c,n);w=(f[i>>2]|0)+1|0;f[i>>2]=w;iEa(w,j);c=f[k>>2]|0;d=f[(f[c>>2]|0)+120>>2]|0;f[o>>2]=w;f[n>>2]=f[o>>2];Kh[d&255](c,n,q,1,0);c=f[q>>2]|0;d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-8-c|0)>>>3)<<3)}}h=h+1|0}while((h|0)!=145644);if(!(f[s>>2]|0)){u=t;return}c=f[m>>2]|0;if(c|0)do{w=c;c=f[c>>2]|0;Zpb(w)}while((c|0)!=0);f[m>>2]=0;e=f[a+712>>2]|0;if(e|0){d=a+708|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[s>>2]=0;u=t;return}function JDa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+16|0;l=r;m=r+4|0;n=a+920|0;q=a+700|0;e=f[q>>2]|0;k=a+928|0;g=f[n>>2]|0;p=a+924|0;if((f[k>>2]|0)-g>>3>>>0<e>>>0){if(e>>>0>536870911)ud();c=(f[p>>2]|0)-g|0;d=Wpb(e<<3)|0;if((c|0)>0)Irb(d|0,g|0,c|0)|0;f[n>>2]=d;f[p>>2]=d+(c>>3<<3);f[k>>2]=d+(e<<3);if(g|0)Zpb(g)}o=a+696|0;h=a+900|0;g=a+64|0;i=a+916|0;j=a+96|0;c=f[o>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==1){d=d+8|0;e=f[p>>2]|0;if((e|0)==(f[k>>2]|0)){dB(n,d);break}else{s=d;d=f[s+4>>2]|0;f[e>>2]=f[s>>2];f[e+4>>2]=d;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);d=f[n>>2]|0;c=f[p>>2]|0;if((d|0)==(c|0))c=d;else{Xka(d,c,l);s=(f[h>>2]|0)+1|0;f[h>>2]=s;fEa(s,g);d=f[i>>2]|0;c=f[(f[d>>2]|0)+124>>2]|0;f[m>>2]=s;f[l>>2]=f[m>>2];Eh[c&255](d,l,n,1);d=f[n>>2]|0;c=f[p>>2]|0;if((c|0)==(d|0))c=d;else{c=c+(~((c+-8-d|0)>>>3)<<3)|0;f[p>>2]=c}}e=f[o>>2]|0;if(e){do{c=e;do if(!(b[c+16>>0]|0)){c=c+8|0;d=f[p>>2]|0;if((d|0)==(f[k>>2]|0)){dB(n,c);break}else{g=f[c+4>>2]|0;s=d;f[s>>2]=f[c>>2];f[s+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);e=f[e>>2]|0}while((e|0)!=0);d=f[n>>2]|0;c=f[p>>2]|0}if((d|0)!=(c|0)){Xka(d,c,l);s=(f[h>>2]|0)+1|0;f[h>>2]=s;fEa(s,j);c=f[i>>2]|0;d=f[(f[c>>2]|0)+124>>2]|0;f[m>>2]=s;f[l>>2]=f[m>>2];Eh[d&255](c,l,n,0);c=f[n>>2]|0;d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-8-c|0)>>>3)<<3)}if(!(f[q>>2]|0)){u=r;return}c=f[o>>2]|0;if(c|0)do{s=c;c=f[c>>2]|0;Zpb(s)}while((c|0)!=0);f[o>>2]=0;e=f[a+692>>2]|0;if(e|0){d=a+688|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[q>>2]=0;u=r;return}function KDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=u;u=u+16|0;v=z+4|0;w=z;x=a+920|0;XDa(x,a+748|0);m=a+900|0;y=(f[m>>2]|0)+1|0;f[m>>2]=y;m=a+192|0;j=a+196|0;k=f[j>>2]|0;g=(k|0)==0;a:do if(g){b=0;o=17}else{e=k+-1|0;d=(e&k|0)==0;if(d)b=e&y;else if(k>>>0>y>>>0)b=y;else b=(y>>>0)%(k>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)o=17;else{if(d)while(1){c=f[c>>2]|0;if(!c){o=17;break a}t=f[c+4>>2]|0;if(!((t|0)==(y|0)|(t&e|0)==(b|0))){o=17;break a}if((f[c+8>>2]|0)==(y|0))break a}do{c=f[c>>2]|0;if(!c){o=17;break a}d=f[c+4>>2]|0;if((d|0)!=(y|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(b|0)){o=17;break a}}}while((f[c+8>>2]|0)!=(y|0))}}while(0);if((o|0)==17){e=Wpb(24)|0;f[e+8>>2]=y;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=y;f[e>>2]=0;l=a+204|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+208>>2];do if(g|i*+(k>>>0)<h){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(h/i))>>>0;dEa(m,b>>>0<c>>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&y;break}if(b>>>0>y>>>0){d=b;b=y}else{d=b;b=(y>>>0)%(b>>>0)|0}}else d=k;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+200|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;o=30}}else{f[e>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+212|0;b=f[r>>2]|0;t=a+216|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0<m>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){o=48;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0<c>>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){o=51;break}d=Wpb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];A=d+-20|0;m=j+-20|0;f[A>>2]=0;B=d+-16|0;f[B>>2]=0;f[d+-12>>2]=0;f[A>>2]=f[m>>2];A=j+-16|0;f[B>>2]=f[A>>2];B=j+-12|0;f[d+-12>>2]=f[B>>2];f[B>>2]=0;f[A>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{B=d+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){_pb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}while((d|0)!=(k|0));if(m|0)Zpb(m)}b=b+28|0;if((b|0)==(p|0)){o=34;break}}if((o|0)==34){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;B=b+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((o|0)==48)fob(s);else if((o|0)==51)ud()}while(0);d=f[a+916>>2]|0;b=f[(f[d>>2]|0)+132>>2]|0;f[w>>2]=y;f[v>>2]=f[w>>2];wh[b&127](d,v,x);d=f[x>>2]|0;b=a+924|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=z;return}f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);u=z;return}function LDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=u;u=u+16|0;v=z+4|0;w=z;x=a+920|0;XDa(x,a+768|0);m=a+900|0;y=(f[m>>2]|0)+1|0;f[m>>2]=y;m=a+224|0;j=a+228|0;k=f[j>>2]|0;g=(k|0)==0;a:do if(g){b=0;o=17}else{e=k+-1|0;d=(e&k|0)==0;if(d)b=e&y;else if(k>>>0>y>>>0)b=y;else b=(y>>>0)%(k>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)o=17;else{if(d)while(1){c=f[c>>2]|0;if(!c){o=17;break a}t=f[c+4>>2]|0;if(!((t|0)==(y|0)|(t&e|0)==(b|0))){o=17;break a}if((f[c+8>>2]|0)==(y|0))break a}do{c=f[c>>2]|0;if(!c){o=17;break a}d=f[c+4>>2]|0;if((d|0)!=(y|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(b|0)){o=17;break a}}}while((f[c+8>>2]|0)!=(y|0))}}while(0);if((o|0)==17){e=Wpb(24)|0;f[e+8>>2]=y;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=y;f[e>>2]=0;l=a+236|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+240>>2];do if(g|i*+(k>>>0)<h){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(h/i))>>>0;bEa(m,b>>>0<c>>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&y;break}if(b>>>0>y>>>0){d=b;b=y}else{d=b;b=(y>>>0)%(b>>>0)|0}}else d=k;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+232|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;o=30}}else{f[e>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+244|0;b=f[r>>2]|0;t=a+248|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0<m>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){o=48;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0<c>>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){o=51;break}d=Wpb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];A=d+-20|0;m=j+-20|0;f[A>>2]=0;B=d+-16|0;f[B>>2]=0;f[d+-12>>2]=0;f[A>>2]=f[m>>2];A=j+-16|0;f[B>>2]=f[A>>2];B=j+-12|0;f[d+-12>>2]=f[B>>2];f[B>>2]=0;f[A>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{B=d+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){_pb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}while((d|0)!=(k|0));if(m|0)Zpb(m)}b=b+28|0;if((b|0)==(p|0)){o=34;break}}if((o|0)==34){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;B=b+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((o|0)==48)fob(s);else if((o|0)==51)ud()}while(0);d=f[a+916>>2]|0;b=f[(f[d>>2]|0)+136>>2]|0;f[w>>2]=y;f[v>>2]=f[w>>2];wh[b&127](d,v,x);d=f[x>>2]|0;b=a+924|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=z;return}f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);u=z;return}function MDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=u;u=u+16|0;v=z+4|0;w=z;x=a+920|0;XDa(x,a+788|0);m=a+900|0;y=(f[m>>2]|0)+1|0;f[m>>2]=y;m=a+288|0;j=a+292|0;k=f[j>>2]|0;g=(k|0)==0;a:do if(g){b=0;o=17}else{e=k+-1|0;d=(e&k|0)==0;if(d)b=e&y;else if(k>>>0>y>>>0)b=y;else b=(y>>>0)%(k>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)o=17;else{if(d)while(1){c=f[c>>2]|0;if(!c){o=17;break a}t=f[c+4>>2]|0;if(!((t|0)==(y|0)|(t&e|0)==(b|0))){o=17;break a}if((f[c+8>>2]|0)==(y|0))break a}do{c=f[c>>2]|0;if(!c){o=17;break a}d=f[c+4>>2]|0;if((d|0)!=(y|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(b|0)){o=17;break a}}}while((f[c+8>>2]|0)!=(y|0))}}while(0);if((o|0)==17){e=Wpb(24)|0;f[e+8>>2]=y;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=y;f[e>>2]=0;l=a+300|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+304>>2];do if(g|i*+(k>>>0)<h){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(h/i))>>>0;$Da(m,b>>>0<c>>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&y;break}if(b>>>0>y>>>0){d=b;b=y}else{d=b;b=(y>>>0)%(b>>>0)|0}}else d=k;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+296|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;o=30}}else{f[e>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+308|0;b=f[r>>2]|0;t=a+312|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0<m>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){o=48;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0<c>>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){o=51;break}d=Wpb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];A=d+-20|0;m=j+-20|0;f[A>>2]=0;B=d+-16|0;f[B>>2]=0;f[d+-12>>2]=0;f[A>>2]=f[m>>2];A=j+-16|0;f[B>>2]=f[A>>2];B=j+-12|0;f[d+-12>>2]=f[B>>2];f[B>>2]=0;f[A>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{B=d+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){_pb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}while((d|0)!=(k|0));if(m|0)Zpb(m)}b=b+28|0;if((b|0)==(p|0)){o=34;break}}if((o|0)==34){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;B=b+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((o|0)==48)fob(s);else if((o|0)==51)ud()}while(0);d=f[a+916>>2]|0;b=f[(f[d>>2]|0)+140>>2]|0;f[w>>2]=y;f[v>>2]=f[w>>2];wh[b&127](d,v,x);d=f[x>>2]|0;b=a+924|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=z;return}f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);u=z;return}function NDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=u;u=u+16|0;v=z+4|0;w=z;x=a+920|0;XDa(x,a+808|0);m=a+900|0;y=(f[m>>2]|0)+1|0;f[m>>2]=y;m=a+256|0;j=a+260|0;k=f[j>>2]|0;g=(k|0)==0;a:do if(g){b=0;o=17}else{e=k+-1|0;d=(e&k|0)==0;if(d)b=e&y;else if(k>>>0>y>>>0)b=y;else b=(y>>>0)%(k>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)o=17;else{if(d)while(1){c=f[c>>2]|0;if(!c){o=17;break a}t=f[c+4>>2]|0;if(!((t|0)==(y|0)|(t&e|0)==(b|0))){o=17;break a}if((f[c+8>>2]|0)==(y|0))break a}do{c=f[c>>2]|0;if(!c){o=17;break a}d=f[c+4>>2]|0;if((d|0)!=(y|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(b|0)){o=17;break a}}}while((f[c+8>>2]|0)!=(y|0))}}while(0);if((o|0)==17){e=Wpb(24)|0;f[e+8>>2]=y;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=y;f[e>>2]=0;l=a+268|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+272>>2];do if(g|i*+(k>>>0)<h){b=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;c=~~+W(+(h/i))>>>0;YDa(m,b>>>0<c>>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&y;break}if(b>>>0>y>>>0){d=b;b=y}else{d=b;b=(y>>>0)%(b>>>0)|0}}else d=k;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+264|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;o=30}}else{f[e>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+276|0;b=f[r>>2]|0;t=a+280|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0<m>>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){o=48;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0<c>>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){o=51;break}d=Wpb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];A=d+-20|0;m=j+-20|0;f[A>>2]=0;B=d+-16|0;f[B>>2]=0;f[d+-12>>2]=0;f[A>>2]=f[m>>2];A=j+-16|0;f[B>>2]=f[A>>2];B=j+-12|0;f[d+-12>>2]=f[B>>2];f[B>>2]=0;f[A>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{B=d+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){_pb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);Zpb(c)}}while((d|0)!=(k|0));if(m|0)Zpb(m)}b=b+28|0;if((b|0)==(p|0)){o=34;break}}if((o|0)==34){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;B=b+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((o|0)==48)fob(s);else if((o|0)==51)ud()}while(0);d=f[a+916>>2]|0;b=f[(f[d>>2]|0)+144>>2]|0;f[w>>2]=y;f[v>>2]=f[w>>2];wh[b&127](d,v,x);d=f[x>>2]|0;b=a+924|0;c=f[b>>2]|0;if((c|0)==(d|0)){u=z;return}f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);u=z;return}function ODa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=f[a+16>>2]|0;i=f[a+32>>2]|0;b=f[a+712>>2]|0;a:{if(b|0)do{g=f[b+12>>2]|0;nh[f[(f[g>>2]|0)+16>>2]&1023](g,1);b=f[b>>2]|0}while((b|0)!=0);if(f[(h+332|0)>>2]|0){b=f[(h+328|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(c)}while((b|0)!=0);f[(h+328|0)>>2]=0;c=f[h+324>>2]|0;if(c|0){b=0;do{f[(f[(h+320|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+332|0)>>2]=0}b=f[(h+368|0)>>2]|0;if(b|0)do{g=f[b+12>>2]|0;nh[f[(f[g>>2]|0)+16>>2]&1023](g,1);b=f[b>>2]|0}while((b|0)!=0);if(f[(h+372|0)>>2]|0){b=f[(h+368|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(c)}while((b|0)!=0);f[(h+368|0)>>2]=0;c=f[h+364>>2]|0;if(c|0){b=0;do{f[(f[(h+360|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+372|0)>>2]=0}b=f[(h+388|0)>>2]|0;if(b|0)do{g=f[b+12>>2]|0;nh[f[(f[g>>2]|0)+16>>2]&1023](g,1);b=f[b>>2]|0}while((b|0)!=0);if(f[(h+392|0)>>2]|0){gDa(f[(h+388|0)>>2]|0);f[(h+388|0)>>2]=0;c=f[h+384>>2]|0;if(c|0){b=0;do{f[(f[(h+380|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+392|0)>>2]=0}b=f[(h+408|0)>>2]|0;if(b|0)do{d=b;c=f[d+20>>2]|0;d=f[d+24>>2]|0;if((c|0)!=(d|0))do{g=f[c>>2]|0;nh[f[(f[g>>2]|0)+16>>2]&1023](g,1);c=c+4|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);if(f[(h+412|0)>>2]|0){b=f[(h+408|0)>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[(e+20|0)>>2]|0;if(c|0){d=f[(e+24|0)>>2]|0;if((d|0)!=(c|0)){do{g=d+-4|0;f[(e+24|0)>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[(e+24|0)>>2]|0}while((d|0)!=(c|0));c=f[(e+20|0)>>2]|0}Zpb(c)}Zpb(e)}while((b|0)!=0);f[(h+408|0)>>2]=0;c=f[h+404>>2]|0;if(c|0){b=0;do{f[(f[(h+400|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+412|0)>>2]=0}b=f[(h+428|0)>>2]|0;if(b|0)do{c=f[b+20>>2]|0;if(c|0)do{g=f[c+12>>2]|0;nh[f[(f[g>>2]|0)+16>>2]&1023](g,1);c=f[c>>2]|0}while((c|0)!=0);b=f[b>>2]|0}while((b|0)!=0);if(f[(h+432|0)>>2]|0){b=f[(h+428|0)>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;c=f[(g+32|0)>>2]|0;f[(g+32|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[g+20>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[(d+12|0)>>2]|0;f[(d+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);Zpb(d)}while((c|0)!=0);c=f[(g+12|0)>>2]|0;f[(g+12|0)>>2]=0;if(c|0)Zpb(c);Zpb(g)}while((b|0)!=0);f[(h+428|0)>>2]=0;c=f[h+424>>2]|0;if(c|0){b=0;do{f[(f[(h+420|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+432|0)>>2]=0}b=f[h+440>>2]|0;c=f[(h+444|0)>>2]|0;if((c|0)!=(b|0))f[(h+444|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);if(f[(h+464|0)>>2]|0){b=f[(h+460|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=f[(c+16|0)>>2]|0;if((e|0)!=(d|0))f[(c+16|0)>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d)}Zpb(c)}while((b|0)!=0);f[(h+460|0)>>2]=0;c=f[h+456>>2]|0;if(c|0){b=0;do{f[(f[(h+452|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+464|0)>>2]=0}if(f[(h+484|0)>>2]|0){b=f[(h+480|0)>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;Zpb(g)}while((b|0)!=0);f[(h+480|0)>>2]=0;c=f[h+476>>2]|0;if(c|0){b=0;do{f[(f[(h+472|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+484|0)>>2]=0}if(!(f[(h+520|0)>>2]|0)){g=h+528|0;c=h+532|0;e=f[c>>2]|0;hDa(g,e);e=h+536|0;f[e>>2]=0;f[g>>2]=c;f[c>>2]=0;c=h+492|0;g=h+496|0;e=f[g>>2]|0;iDa(c,e);e=h+500|0;f[e>>2]=0;f[c>>2]=g;f[g>>2]=0;g=f[i>>2]|0;c=g+1|0;e=i+4|0;d=f[e>>2]|0;d=d+-1|0;f[e>>2]=d;e=i+8|0;f[e>>2]=c;e=i+12|0;f[e>>2]=d;g=g+2|0;f[i>>2]=g;i=h+504|0;f[i>>2]=g;f[a+1536>>2]=5;break a}b=f[(h+516|0)>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;Zpb(g)}while((b|0)!=0);f[(h+516|0)>>2]=0;c=f[h+512>>2]|0;if(c|0){b=0;do{f[(f[(h+508|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(h+520|0)>>2]=0;g=h+528|0;c=h+532|0;e=f[c>>2]|0;hDa(g,e);e=h+536|0;f[e>>2]=0;f[g>>2]=c;f[c>>2]=0;c=h+492|0;g=h+496|0;e=f[g>>2]|0;iDa(c,e);e=h+500|0;f[e>>2]=0;f[c>>2]=g;f[g>>2]=0;g=f[i>>2]|0;c=g+1|0;e=i+4|0;d=f[e>>2]|0;d=d+-1|0;f[e>>2]=d;e=i+8|0;f[e>>2]=c;e=i+12|0;f[e>>2]=d;g=g+2|0;f[i>>2]=g;i=h+504|0;f[i>>2]=g;f[a+1536>>2]=5;break a}}function PDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=f[a+296>>2]|0;q=f[a+1152>>2]|0;s=f[a+1304>>2]|0;t=f[a+1312>>2]|0;b=f[a+1320>>2]|0;a:{if(t){t=0;switch(b|0){case 4:{j=r+96|0;h=f[r+100>>2]|0;if(!h){f[a+1328>>2]=5;break a}i=((h+-1|0)&h|0)==0;if(i)d=(h+-1|0)&q;else if(h>>>0>q>>>0)d=q;else d=(q>>>0)%(h>>>0)|0;e=f[j>>2]|0;b=f[e+(d<<2)>>2]|0;if(!b){f[a+1328>>2]=5;break a}b=f[b>>2]|0;if(!b){f[a+1328>>2]=5;break a}b:do if(i){while(1){c=f[b+4>>2]|0;if(!((c|0)==(q|0)|(c&(h+-1|0)|0)==(d|0))){s=262;break}if((c|0)==(q|0))if((f[b+8>>2]|0)==(q|0)){n=b;break b}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){n=b;break b}}else{if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(d|0)){s=262;break}}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}while(0);if(i)g=(h+-1|0)&q;else if(h>>>0>q>>>0)g=q;else g=(q>>>0)%(h>>>0)|0;c=e+(g<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(n|0))break;else d=b}if((d|0)==(r+104|0))s=117;else{b=f[d+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0))l=n;else s=117}do if((s|0)==117){b=f[n>>2]|0;if(b|0){b=f[b+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){l=n;break}}f[c>>2]=0;l=n}while(0);b=f[l>>2]|0;if(b){c=f[b+4>>2]|0;if(i)c=c&(h+-1|0);else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[j>>2]|0)+(c<<2)>>2]=d;b=f[n>>2]|0}}f[d>>2]=b;f[l>>2]=0;r=r+108|0;f[r>>2]=(f[r>>2]|0)+-1;Zpb(n);f[a+1328>>2]=5;break a}default:t=1}}if(t){t=0;switch(b|0){case 1:{j=r+116|0;h=f[r+120>>2]|0;if(!h){f[a+1328>>2]=5;break a}i=((h+-1|0)&h|0)==0;if(i)d=(h+-1|0)&q;else if(h>>>0>q>>>0)d=q;else d=(q>>>0)%(h>>>0)|0;e=f[j>>2]|0;b=f[e+(d<<2)>>2]|0;if(!b){f[a+1328>>2]=5;break a}b=f[b>>2]|0;if(!b){f[a+1328>>2]=5;break a}c:do if(i){while(1){c=f[b+4>>2]|0;if(!((c|0)==(q|0)|(c&(h+-1|0)|0)==(d|0))){s=262;break}if((c|0)==(q|0))if((f[b+8>>2]|0)==(q|0)){p=b;break c}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){p=b;break c}}else{if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(d|0)){s=262;break}}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}while(0);if(i)g=(h+-1|0)&q;else if(h>>>0>q>>>0)g=q;else g=(q>>>0)%(h>>>0)|0;c=e+(g<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(p|0))break;else d=b}if((d|0)==(r+124|0))s=163;else{b=f[d+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0))k=p;else s=163}do if((s|0)==163){b=f[p>>2]|0;if(b|0){b=f[b+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){k=p;break}}f[c>>2]=0;k=p}while(0);b=f[k>>2]|0;if(b){c=f[b+4>>2]|0;if(i)c=c&(h+-1|0);else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[j>>2]|0)+(c<<2)>>2]=d;b=f[p>>2]|0}}f[d>>2]=b;f[k>>2]=0;r=r+128|0;f[r>>2]=(f[r>>2]|0)+-1;Zpb(p);f[a+1328>>2]=5;break a}default:t=1}}if(t){t=0;switch(b|0){case 7:{j=r+136|0;h=f[r+140>>2]|0;if(!h){f[a+1328>>2]=5;break a}i=((h+-1|0)&h|0)==0;if(i)d=(h+-1|0)&q;else if(h>>>0>q>>>0)d=q;else d=(q>>>0)%(h>>>0)|0;e=f[j>>2]|0;b=f[e+(d<<2)>>2]|0;if(!b){f[a+1328>>2]=5;break a}b=f[b>>2]|0;if(!b){f[a+1328>>2]=5;break a}d:do if(i){while(1){c=f[b+4>>2]|0;if(!((c|0)==(q|0)|(c&(h+-1|0)|0)==(d|0))){s=262;break}if((c|0)==(q|0))if((f[b+8>>2]|0)==(q|0)){o=b;break d}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){o=b;break d}}else{if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(d|0)){s=262;break}}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}while(0);if(i)g=(h+-1|0)&q;else if(h>>>0>q>>>0)g=q;else g=(q>>>0)%(h>>>0)|0;c=e+(g<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(o|0))break;else d=b}if((d|0)==(r+144|0))s=209;else{b=f[d+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0))m=o;else s=209}do if((s|0)==209){b=f[o>>2]|0;if(b|0){b=f[b+4>>2]|0;if(i)b=b&(h+-1|0);else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){m=o;break}}f[c>>2]=0;m=o}while(0);b=f[m>>2]|0;if(b){c=f[b+4>>2]|0;if(i)c=c&(h+-1|0);else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[j>>2]|0)+(c<<2)>>2]=d;b=f[o>>2]|0}}f[d>>2]=b;f[m>>2]=0;r=r+148|0;f[r>>2]=(f[r>>2]|0)+-1;Zpb(o);f[a+1328>>2]=5;break a}default:t=1}}if(t){t=0;switch(b|0){case 8:{g=r+156|0;d=f[r+160>>2]|0;if(!d){f[a+1328>>2]=5;break a}if(!((d+-1|0)&d))e=(d+-1|0)&q;else if(d>>>0>q>>>0)e=q;else e=(q>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(!b){f[a+1328>>2]=5;break a}b=f[b>>2]|0;if(!b){f[a+1328>>2]=5;break a}e:do if(!((d+-1|0)&d)){while(1){c=f[b+4>>2]|0;if(!((c|0)==(q|0)|(c&(d+-1|0)|0)==(e|0))){s=262;break}if((c|0)==(q|0))if((f[b+8>>2]|0)==(q|0)){i=b;break e}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){i=b;break e}}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0)){s=262;break}}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}while(0);tDa(g,i)|0;f[a+1328>>2]=5;break a}case 10:{g=r+56|0;d=f[r+60>>2]|0;if(!d){f[a+1328>>2]=5;break a}if(!((d+-1|0)&d))e=(d+-1|0)&q;else if(d>>>0>q>>>0)e=q;else e=(q>>>0)%(d>>>0)|0;b=f[(f[g>>2]|0)+(e<<2)>>2]|0;if(!b){f[a+1328>>2]=5;break a}b=f[b>>2]|0;if(!b){f[a+1328>>2]=5;break a}f:do if(!((d+-1|0)&d)){while(1){c=f[b+4>>2]|0;if(!((c|0)==(q|0)|(c&(d+-1|0)|0)==(e|0))){s=262;break}if((c|0)==(q|0))if((f[b+8>>2]|0)==(q|0)){h=b;break f}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(q|0)){if((f[b+8>>2]|0)==(q|0)){h=b;break f}}else{if(c>>>0>=d>>>0)c=(c>>>0)%(d>>>0)|0;if((c|0)!=(e|0)){s=262;break}}b=f[b>>2]|0;if(!b){s=262;break}}if((s|0)==262){f[a+1328>>2]=5;break a}}while(0);tDa(g,h)|0;f[a+1328>>2]=5;break a}default:{f[a+1328>>2]=5;break a}}}}f[a+1304>>2]=s;f[a+1312>>2]=t}function QDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=f[a+16>>2]|0;b=f[a+568>>2]|0;a:{if(b|0)do{g=b;b=f[b>>2]|0;Zpb(g)}while((b|0)!=0);b=f[(h+472|0)>>2]|0;f[(h+472|0)>>2]=0;if(b|0)Zpb(b);b=f[h+460>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=f[(c+16|0)>>2]|0;if((e|0)!=(d|0))f[(c+16|0)>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d)}Zpb(c)}while((b|0)!=0);b=f[(h+452|0)>>2]|0;f[(h+452|0)>>2]=0;if(b|0)Zpb(b);b=f[h+440>>2]|0;if(b|0){c=f[(h+444|0)>>2]|0;if((c|0)!=(b|0))f[(h+444|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[h+428>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;c=f[(g+32|0)>>2]|0;f[(g+32|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[g+20>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[(d+12|0)>>2]|0;f[(d+12|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);Zpb(d)}while((c|0)!=0);c=f[(g+12|0)>>2]|0;f[(g+12|0)>>2]=0;if(c|0)Zpb(c);Zpb(g)}while((b|0)!=0);b=f[(h+420|0)>>2]|0;f[(h+420|0)>>2]=0;if(b|0)Zpb(b);b=f[h+408>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[(e+20|0)>>2]|0;if(c|0){d=f[(e+24|0)>>2]|0;if((d|0)!=(c|0)){do{g=d+-4|0;f[(e+24|0)>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[(e+24|0)>>2]|0}while((d|0)!=(c|0));c=f[(e+20|0)>>2]|0}Zpb(c)}Zpb(e)}while((b|0)!=0);b=f[(h+400|0)>>2]|0;f[(h+400|0)>>2]=0;if(b|0)Zpb(b);gDa(f[h+388>>2]|0);b=f[(h+380|0)>>2]|0;f[(h+380|0)>>2]=0;if(b|0)Zpb(b);b=f[h+368>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(c)}while((b|0)!=0);b=f[(h+360|0)>>2]|0;f[(h+360|0)>>2]=0;if(b|0)Zpb(b);b=f[h+348>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(c)}while((b|0)!=0);b=f[(h+340|0)>>2]|0;f[(h+340|0)>>2]=0;if(b|0)Zpb(b);b=f[h+328>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);Zpb(c)}while((b|0)!=0);b=f[(h+320|0)>>2]|0;f[(h+320|0)>>2]=0;if(b|0)Zpb(b);jDa(h+308|0);b=f[h+296>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;jDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+288|0)>>2]|0;f[(h+288|0)>>2]=0;if(b|0)Zpb(b);kDa(h+276|0);b=f[h+264>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;kDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+256|0)>>2]|0;f[(h+256|0)>>2]=0;if(b|0)Zpb(b);lDa(h+244|0);b=f[h+232>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;lDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+224|0)>>2]|0;f[(h+224|0)>>2]=0;if(b|0)Zpb(b);mDa(h+212|0);b=f[h+200>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;mDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+192|0)>>2]|0;f[(h+192|0)>>2]=0;if(b|0)Zpb(b);rDa(h+180|0);b=f[h+168>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;rDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+160|0)>>2]|0;f[(h+160|0)>>2]=0;if(b|0)Zpb(b);rDa(h+148|0);b=f[h+136>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;rDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+128|0)>>2]|0;f[(h+128|0)>>2]=0;if(b|0)Zpb(b);oDa(h+116|0);b=f[h+104>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;oDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+96|0)>>2]|0;f[(h+96|0)>>2]=0;if(b|0)Zpb(b);oDa(h+84|0);b=f[h+72>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;oDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+64|0)>>2]|0;f[(h+64|0)>>2]=0;if(b|0)Zpb(b);pDa(h+52|0);b=f[h+40>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;pDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[(h+32|0)>>2]|0;f[(h+32|0)>>2]=0;if(b|0)Zpb(b);sDa(h+20|0);b=f[h+8>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;sDa(g+12|0);Zpb(g)}while((b|0)!=0);b=f[h>>2]|0;f[h>>2]=0;if(!b){f[a+1376>>2]=5;break a}Zpb(b);f[a+1376>>2]=5;break a}}function RDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;O=f[a+16>>2]|0;d=f[a+496>>2]|0;n=f[a+504>>2]|0;N=f[a+816>>2]|0;b=f[a+2880>>2]|0;l=f[a+2888>>2]|0;m=f[a+3392>>2]|0;o=f[a+3400>>2]|0;g=f[a+3568>>2]|0;P=f[a+3576>>2]|0;a:{if(P){P=0;if((g|0)==357){e=f[b>>2]|0;b=e+(d*28|0)|0;k=f[l>>2]|0;if((k|0)!=(b|0)){do{f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];i=b+8|0;j=e+8|0;d=f[j>>2]|0;h=e+12|0;if(!d)d=e+16|0;else{g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d);d=e+16|0;f[d>>2]=0;f[h>>2]=0;f[j>>2]=0}f[j>>2]=f[i>>2];j=b+12|0;f[h>>2]=f[j>>2];h=b+16|0;f[d>>2]=f[h>>2];f[h>>2]=0;f[j>>2]=0;f[i>>2]=0;f[b>>2]=0;f[e+20>>2]=f[b+20>>2];d=b+24|0;j=e+24|0;i=f[d>>2]|0;f[d>>2]=0;d=f[j>>2]|0;f[j>>2]=i;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);b=b+28|0;e=e+28|0}while((b|0)!=(k|0));b=f[l>>2]|0}if((b|0)==(e|0))g=378;else{do{g=b+-28|0;f[l>>2]=g;k=b+-4|0;d=f[k>>2]|0;f[k>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=b+-20|0;h=f[d>>2]|0;i=b+-16|0;if((h|0)==(f[i>>2]|0)){b=f[g>>2]|0;if(!b)b=h;else{_pb(b);b=f[d>>2]|0}}else b=h;if(b|0){d=f[i>>2]|0;if((d|0)!=(b|0))f[i>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[l>>2]|0}while((b|0)!=(e|0));g=378}}else P=1}if(P){P=0;if((g|0)==447){d=f[m>>2]|0;b=d+(n*28|0)|0;k=f[o>>2]|0;if((k|0)==(b|0))j=d;else{j=d;do{f[j>>2]=f[b>>2];f[j+4>>2]=f[b+4>>2];h=b+8|0;i=j+8|0;d=f[i>>2]|0;g=j+12|0;if(!d)d=j+16|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);d=j+16|0;f[d>>2]=0;f[g>>2]=0;f[i>>2]=0}f[i>>2]=f[h>>2];n=b+12|0;f[g>>2]=f[n>>2];m=b+16|0;f[d>>2]=f[m>>2];f[m>>2]=0;f[n>>2]=0;f[h>>2]=0;f[b>>2]=0;f[j+20>>2]=f[b+20>>2];d=b+24|0;n=j+24|0;m=f[d>>2]|0;f[d>>2]=0;d=f[n>>2]|0;f[n>>2]=m;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);b=b+28|0;j=j+28|0}while((b|0)!=(k|0));b=f[o>>2]|0}if((b|0)==(j|0))g=468;else{do{g=b+-28|0;f[o>>2]=g;n=b+-4|0;d=f[n>>2]|0;f[n>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=b+-20|0;e=f[d>>2]|0;h=b+-16|0;if((e|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(!b)b=e;else{_pb(b);b=f[d>>2]|0}}else b=e;if(b|0){d=f[h>>2]|0;if((d|0)!=(b|0))f[h>>2]=d+(~((d+-8-b|0)>>>3)<<3);Zpb(b)}b=f[o>>2]|0}while((b|0)!=(j|0));g=468}}else if((g|0)==518)if(1){f[a+3608>>2]=5;break a}else P=1}b=1;if(b)if((g|0)==56){b=f[(O+532|0)>>2]|0;do if(!b){D=O+532|0;I=O+532|0}else{d=O+532|0;b:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=61;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>4){g=61;break}if((c|0)==4){g=66;break b}}z=b+4|0;c=f[z>>2]|0;if(!c){g=65;break b}else{t=z;p=c}}while(0);if((g|0)==61){g=0;c=f[b>>2]|0;if(!c){g=62;break}else{t=b;p=c}}d=t;b=p}if((g|0)==62){D=b;I=b;break}else if((g|0)==65){D=b;I=z;break}else if((g|0)==66){D=b;I=d;break}}while(0);if(f[I>>2]|0){f[a+3608>>2]=5;break a}b=Wpb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=4;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=D;f[I>>2]=b;c=f[f[(O+528|0)>>2]>>2]|0;if(c){f[(O+528|0)>>2]=c;b=f[I>>2]|0}tEa(f[(O+532|0)>>2]|0,b);f[(O+536|0)>>2]=(f[(O+536|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==146){b=f[(O+532|0)>>2]|0;do if(!b){E=O+532|0;J=O+532|0}else{d=O+532|0;c:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=151;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>6){g=151;break}if((c|0)==6){g=156;break c}}A=b+4|0;c=f[A>>2]|0;if(!c){g=155;break c}else{u=A;q=c}}while(0);if((g|0)==151){g=0;c=f[b>>2]|0;if(!c){g=152;break}else{u=b;q=c}}d=u;b=q}if((g|0)==152){E=b;J=b;break}else if((g|0)==155){E=b;J=A;break}else if((g|0)==156){E=b;J=d;break}}while(0);if(f[J>>2]|0){f[a+3608>>2]=5;break a}b=Wpb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=6;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=E;f[J>>2]=b;c=f[f[(O+528|0)>>2]>>2]|0;if(c){f[(O+528|0)>>2]=c;b=f[J>>2]|0}tEa(f[(O+532|0)>>2]|0,b);f[(O+536|0)>>2]=(f[(O+536|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else b=1;if(b){b=0;if((g|0)==288){b=f[(O+532|0)>>2]|0;do if(!b){F=O+532|0;K=O+532|0}else{d=O+532|0;d:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=293;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>7){g=293;break}if((c|0)==7){g=298;break d}}B=b+4|0;c=f[B>>2]|0;if(!c){g=297;break d}else{v=B;r=c}}while(0);if((g|0)==293){g=0;c=f[b>>2]|0;if(!c){g=294;break}else{v=b;r=c}}d=v;b=r}if((g|0)==294){F=b;K=b;break}else if((g|0)==297){F=b;K=B;break}else if((g|0)==298){F=b;K=d;break}}while(0);if(f[K>>2]|0){f[a+3608>>2]=5;break a}b=Wpb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=7;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=F;f[K>>2]=b;c=f[f[(O+528|0)>>2]>>2]|0;if(c){f[(O+528|0)>>2]=c;b=f[K>>2]|0}tEa(f[(O+532|0)>>2]|0,b);f[(O+536|0)>>2]=(f[(O+536|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==378){b=f[(O+532|0)>>2]|0;do if(!b){G=O+532|0;L=O+532|0}else{d=O+532|0;e:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=383;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>1){g=383;break}if((c|0)==1){g=388;break e}}C=b+4|0;c=f[C>>2]|0;if(!c){g=387;break e}else{w=C;s=c}}while(0);if((g|0)==383){g=0;c=f[b>>2]|0;if(!c){g=384;break}else{w=b;s=c}}d=w;b=s}if((g|0)==384){G=b;L=b;break}else if((g|0)==387){G=b;L=C;break}else if((g|0)==388){G=b;L=d;break}}while(0);if(f[L>>2]|0){f[a+3608>>2]=5;break a}b=Wpb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=1;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=G;f[L>>2]=b;c=f[f[(O+528|0)>>2]>>2]|0;if(c){f[(O+528|0)>>2]=c;b=f[L>>2]|0}tEa(f[(O+532|0)>>2]|0,b);f[(O+536|0)>>2]=(f[(O+536|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==468)b=1}if(b)if(1){b=f[(O+532|0)>>2]|0;do if(!b){H=O+532|0;M=O+532|0}else{e=O+532|0;f:while(1){d=f[b+16>>2]|0;do if(d>>>0>N>>>0)g=473;else{if(d>>>0>=N>>>0){d=f[b+20>>2]|0;if((d|0)>0){g=473;break}if((d|0)>=0){g=478;break f}}y=b+4|0;c=f[y>>2]|0;if(!c){g=477;break f}else x=y}while(0);if((g|0)==473){g=0;c=f[b>>2]|0;if(!c){g=474;break}else x=b}e=x;b=c}if((g|0)==474){H=b;M=b;break}else if((g|0)==477){H=b;M=y;break}else if((g|0)==478){H=b;M=e;break}}while(0);if(f[M>>2]|0){f[a+3608>>2]=5;break a}b=Wpb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=H;f[M>>2]=b;c=f[f[(O+528|0)>>2]>>2]|0;if(c){f[(O+528|0)>>2]=c;b=f[M>>2]|0}tEa(f[(O+532|0)>>2]|0,b);f[(O+536|0)>>2]=(f[(O+536|0)>>2]|0)+1;f[a+3608>>2]=5;break a}}f[a+3568>>2]=g;f[a+3576>>2]=P}function SDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;K=f[a+16>>2]|0;B=f[a+24>>2]|0;C=f[a+32>>2]|0;G=f[a+488>>2]|0;H=f[a+496>>2]|0;I=f[a+504>>2]|0;J=f[a+816>>2]|0;D=f[a+2312>>2]|0;M=f[a+2368>>2]|0;N=f[a+2376>>2]|0;O=f[a+2880>>2]|0;P=f[a+2888>>2]|0;Q=f[a+3392>>2]|0;R=f[a+3400>>2]|0;x=f[a+3568>>2]|0;S=f[a+3592>>2]|0;T=f[a+3600>>2]|0;a:{if(S){S=0;switch(T|0){case 8:{j=f[(K+292|0)>>2]|0;b:do if(j|0){if(!((j+-1|0)&j))i=(j+-1|0)&J;else if(j>>>0>J>>>0)i=J;else i=(J>>>0)%(j>>>0)|0;g=f[(f[(K+288|0)>>2]|0)+(i<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){c:do if(!((j+-1|0)&j))while(1){h=f[g+4>>2]|0;if(!((h|0)==(J|0)|(h&(j+-1|0)|0)==(i|0)))break b;if((h|0)==(J|0))if((f[g+8>>2]|0)==(J|0))break c;g=f[g>>2]|0;if(!g)break b}else while(1){h=f[g+4>>2]|0;if((h|0)==(J|0)){if((f[g+8>>2]|0)==(J|0))break c}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(i|0))break b}g=f[g>>2]|0;if(!g)break b}while(0);q=g+12|0;h=f[q>>2]|0;i=(f[g+16>>2]|0)-h|0;if(!i){o=j;h=J}else{vEa(B,C,h);if(((i|0)/28|0)>>>0>1){h=1;do{vEa(B,C,(f[q>>2]|0)+(h*28|0)|0);h=h+1|0}while((h|0)!=((i|0)/28|0|0))}o=f[(K+292|0)>>2]|0;h=f[g+4>>2]|0}l=f[g>>2]|0;n=o+-1|0;p=(n&o|0)==0;if(p)h=n&h;else if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;k=(f[(K+288|0)>>2]|0)+(h<<2)|0;m=f[k>>2]|0;while(1){i=f[m>>2]|0;if((i|0)==(g|0))break;else m=i}if((m|0)==(K+296|0|0))x=229;else{i=f[m+4>>2]|0;if(p)i=i&n;else if(i>>>0>=o>>>0)i=(i>>>0)%(o>>>0)|0;if((i|0)==(h|0)){r=l;x=237}else x=229}do if((x|0)==229){if(l|0){i=f[l+4>>2]|0;if(p)j=i&n;else if(i>>>0<o>>>0)j=i;else j=(i>>>0)%(o>>>0)|0;if((j|0)==(h|0)){t=l;e=i;x=239;break}}f[k>>2]=0;r=f[g>>2]|0;x=237}while(0);if((x|0)==237){x=0;i=r;if(!r)s=i;else{t=i;e=f[r+4>>2]|0;x=239}}if((x|0)==239){x=0;if(p)e=e&n;else if(e>>>0>=o>>>0)e=(e>>>0)%(o>>>0)|0;if((e|0)==(h|0))s=t;else{f[(f[(K+288|0)>>2]|0)+(e<<2)>>2]=m;s=f[g>>2]|0}}f[m>>2]=s;f[g>>2]=0;f[(K+300|0)>>2]=(f[(K+300|0)>>2]|0)+-1;jDa(q);Zpb(g)}}}while(0);qEa(K,J);break}default:S=1}}if(S){S=0;switch(T|0){case 7:{i=f[(K+260|0)>>2]|0;d:do if(i|0){if(!((i+-1|0)&i))h=(i+-1|0)&J;else if(i>>>0>J>>>0)h=J;else h=(J>>>0)%(i>>>0)|0;e=f[(f[(K+256|0)>>2]|0)+(h<<2)>>2]|0;if(e|0){e=f[e>>2]|0;if(e|0){e:do if(!((i+-1|0)&i))while(1){g=f[e+4>>2]|0;if(!((g|0)==(J|0)|(g&(i+-1|0)|0)==(h|0)))break d;if((g|0)==(J|0))if((f[e+8>>2]|0)==(J|0))break e;e=f[e>>2]|0;if(!e)break d}else while(1){g=f[e+4>>2]|0;if((g|0)==(J|0)){if((f[e+8>>2]|0)==(J|0))break e}else{if(g>>>0>=i>>>0)g=(g>>>0)%(i>>>0)|0;if((g|0)!=(h|0))break d}e=f[e>>2]|0;if(!e)break d}while(0);M=e+12|0;N=e+16|0;g=f[M>>2]|0;h=(f[N>>2]|0)-g|0;if(!h){n=i;g=J}else{if(wEa(B,C,g)|0)G=0;else{x=288;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}while(1){G=G+1|0;if(G>>>0>=((h|0)/28|0)>>>0)break;if(!(wEa(B,C,(f[M>>2]|0)+(G*28|0)|0)|0)){x=267;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}}n=f[(K+260|0)>>2]|0;g=f[e+4>>2]|0}k=f[e>>2]|0;m=n+-1|0;o=(m&n|0)==0;if(o)g=m&g;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;j=(f[(K+256|0)>>2]|0)+(g<<2)|0;l=f[j>>2]|0;while(1){h=f[l>>2]|0;if((h|0)==(e|0))break;else l=h}if((l|0)==(K+264|0|0))x=319;else{h=f[l+4>>2]|0;if(o)h=h&m;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)==(g|0)){u=k;x=327}else x=319}do if((x|0)==319){if(k|0){h=f[k+4>>2]|0;if(o)i=h&m;else if(h>>>0<n>>>0)i=h;else i=(h>>>0)%(n>>>0)|0;if((i|0)==(g|0)){w=k;d=h;x=329;break}}f[j>>2]=0;u=f[e>>2]|0;x=327}while(0);if((x|0)==327){x=0;h=u;if(!u)v=h;else{w=h;d=f[u+4>>2]|0;x=329}}if((x|0)==329){x=0;if(o)d=d&m;else if(d>>>0>=n>>>0)d=(d>>>0)%(n>>>0)|0;if((d|0)==(g|0))v=w;else{f[(f[(K+256|0)>>2]|0)+(d<<2)>>2]=l;v=f[e>>2]|0}}f[l>>2]=v;f[e>>2]=0;f[(K+268|0)>>2]=(f[(K+268|0)>>2]|0)+-1;kDa(M);Zpb(e)}}}while(0);qEa(K,J);break}default:S=1}}if(S){S=0;switch(T|0){case 1:{h=f[(K+36|0)>>2]|0;f:do if(h|0){if(!((h+-1|0)&h))g=(h+-1|0)&J;else if(h>>>0>J>>>0)g=J;else g=(J>>>0)%(h>>>0)|0;d=f[(f[(K+32|0)>>2]|0)+(g<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){g:do if(!((h+-1|0)&h))while(1){e=f[d+4>>2]|0;if(!((e|0)==(J|0)|(e&(h+-1|0)|0)==(g|0)))break f;if((e|0)==(J|0))if((f[d+8>>2]|0)==(J|0))break g;d=f[d>>2]|0;if(!d)break f}else while(1){e=f[d+4>>2]|0;if((e|0)==(J|0)){if((f[d+8>>2]|0)==(J|0))break g}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(g|0))break f}d=f[d>>2]|0;if(!d)break f}while(0);O=d+12|0;P=d+16|0;e=f[O>>2]|0;g=(f[P>>2]|0)-e|0;if(!g){m=h;e=J}else{if(xEa(B,C,e)|0)H=0;else{x=378;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}while(1){H=H+1|0;if(H>>>0>=((g|0)/28|0)>>>0)break;if(!(xEa(B,C,(f[O>>2]|0)+(H*28|0)|0)|0)){x=357;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}}m=f[(K+36|0)>>2]|0;e=f[d+4>>2]|0}j=f[d>>2]|0;l=m+-1|0;n=(l&m|0)==0;if(n)e=l&e;else if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;i=(f[(K+32|0)>>2]|0)+(e<<2)|0;k=f[i>>2]|0;while(1){g=f[k>>2]|0;if((g|0)==(d|0))break;else k=g}if((k|0)==(K+40|0|0))x=409;else{g=f[k+4>>2]|0;if(n)g=g&l;else if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)==(e|0)){y=j;x=417}else x=409}do if((x|0)==409){if(j|0){g=f[j+4>>2]|0;if(n)h=g&l;else if(g>>>0<m>>>0)h=g;else h=(g>>>0)%(m>>>0)|0;if((h|0)==(e|0)){A=j;c=g;x=419;break}}f[i>>2]=0;y=f[d>>2]|0;x=417}while(0);if((x|0)==417){x=0;g=y;if(!y)z=g;else{A=g;c=f[y+4>>2]|0;x=419}}if((x|0)==419){x=0;if(n)c=c&l;else if(c>>>0>=m>>>0)c=(c>>>0)%(m>>>0)|0;if((c|0)==(e|0))z=A;else{f[(f[(K+32|0)>>2]|0)+(c<<2)>>2]=k;z=f[d>>2]|0}}f[k>>2]=z;f[d>>2]=0;f[(K+44|0)>>2]=(f[(K+44|0)>>2]|0)+-1;pDa(O);Zpb(d)}}}while(0);qEa(K,J);break}default:S=1}}if(S){S=0;switch(T|0){case 0:{k=f[(K+4|0)>>2]|0;h:do if(k|0){if(!((k+-1|0)&k))e=(k+-1|0)&J;else if(k>>>0>J>>>0)e=J;else e=(J>>>0)%(k>>>0)|0;c=f[(f[K>>2]|0)+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){i:do if(!((k+-1|0)&k))while(1){d=f[c+4>>2]|0;if(!((d|0)==(J|0)|(d&(k+-1|0)|0)==(e|0)))break h;if((d|0)==(J|0))if((f[c+8>>2]|0)==(J|0)){m=c;break i}c=f[c>>2]|0;if(!c)break h}else while(1){d=f[c+4>>2]|0;if((d|0)==(J|0)){if((f[c+8>>2]|0)==(J|0)){m=c;break i}}else{if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(e|0))break h}c=f[c>>2]|0;if(!c)break h}while(0);Q=m+12|0;R=m+16|0;c=f[Q>>2]|0;d=(f[R>>2]|0)-c|0;if(!d)c=J;else{if(yEa(B,C,c)|0)I=0;else{x=468;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}while(1){I=I+1|0;if(I>>>0>=((d|0)/28|0)>>>0)break;if(!(yEa(B,C,(f[Q>>2]|0)+(I*28|0)|0)|0)){x=447;f[a+3616>>2]=2;f[a+3620>>2]=14;break a}}k=f[(K+4|0)>>2]|0;c=f[m+4>>2]|0}h=f[m>>2]|0;j=k+-1|0;l=(j&k|0)==0;if(l)c=j&c;else if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;g=(f[K>>2]|0)+(c<<2)|0;i=f[g>>2]|0;while(1){d=f[i>>2]|0;if((d|0)==(m|0))break;else i=d}if((i|0)==(K+8|0|0))x=499;else{d=f[i+4>>2]|0;if(l)d=d&j;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)==(c|0)){E=h;x=507}else x=499}do if((x|0)==499){if(h|0){d=f[h+4>>2]|0;if(l)e=d&j;else if(d>>>0<k>>>0)e=d;else e=(d>>>0)%(k>>>0)|0;if((e|0)==(c|0)){b=d;L=h;x=509;break}}f[g>>2]=0;E=f[m>>2]|0;x=507}while(0);if((x|0)==507){x=0;d=E;if(!E)F=d;else{b=f[E+4>>2]|0;L=d;x=509}}if((x|0)==509){x=0;if(l)b=b&j;else if(b>>>0>=k>>>0)b=(b>>>0)%(k>>>0)|0;if((b|0)==(c|0))F=L;else{f[(f[K>>2]|0)+(b<<2)>>2]=i;F=f[m>>2]|0}}f[i>>2]=F;f[m>>2]=0;f[(K+12|0)>>2]=(f[(K+12|0)>>2]|0)+-1;sDa(Q);Zpb(m)}}}while(0);qEa(K,J);break}default:S=1}}if(S){S=0;switch(T|0){default:{}}}D=f[(K+536|0)>>2]|0;if(!D){x=518;f[a+3616>>2]=1;break a}}f[a+488>>2]=G;f[a+496>>2]=H;f[a+504>>2]=I;f[a+2312>>2]=D;f[a+2368>>2]=M;f[a+2376>>2]=N;f[a+2880>>2]=O;f[a+2888>>2]=P;f[a+3392>>2]=Q;f[a+3400>>2]=R;f[a+3568>>2]=x;f[a+3592>>2]=S}function TDa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f[a+16>>2]|0;s=f[a+24>>2]|0;v=f[a+32>>2]|0;P=f[a+2312>>2]|0;m=f[a+3568>>2]|0;a:{b:while(1){d=f[(O+528|0)>>2]|0;N=f[d+16>>2]|0;e=f[d+20>>2]|0;b=f[d+4>>2]|0;if(!b){b=f[(d+8|0)>>2]|0;if((f[b>>2]|0)!=(d|0)){c=d+8|0;do{p=f[c>>2]|0;c=p+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(p|0))}}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}f[(O+528|0)>>2]=b;f[(O+536|0)>>2]=P+-1;oEa(f[(O+532|0)>>2]|0,d);Zpb(d);p=1;o=e|0;if(p){p=0;switch(o|0){case 3:{if(!(pEa(O,s,v,N,O+160|0)|0)){m=518;break b}if(!(pEa(O,s,v,N,O+128|0)|0)){m=518;break b}qEa(O,N);break}case 2:{if(!(rEa(O,s,v,N,O+96|0)|0)){m=518;break b}if(!(rEa(O,s,v,N,O+64|0)|0)){m=518;break b}qEa(O,N);break}default:p=1}}if(p){p=0;switch(o|0){case 4:{e=f[(O+196|0)>>2]|0;c:do if(e|0){if(!((e+-1|0)&e))d=(e+-1|0)&N;else if(e>>>0>N>>>0)d=N;else d=(N>>>0)%(e>>>0)|0;b=f[(f[(O+192|0)>>2]|0)+(d<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(!((e+-1|0)&e))while(1){c=f[b+4>>2]|0;if(!((c|0)==(N|0)|(c&(e+-1|0)|0)==(d|0)))break c;if((c|0)==(N|0))if((f[b+8>>2]|0)==(N|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){c=f[b+4>>2]|0;if((c|0)==(N|0)){if((f[b+8>>2]|0)==(N|0))break d}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(d|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);A=b+12|0;E=b+16|0;c=f[A>>2]|0;d=(f[E>>2]|0)-c|0;if(!d)c=N;else{if(sEa(s,v,c)|0)B=0;else{m=56;break b}while(1){B=B+1|0;if(B>>>0>=((d|0)/28|0)>>>0)break;if(!(sEa(s,v,(f[A>>2]|0)+(B*28|0)|0)|0)){m=35;break b}}e=f[(O+196|0)>>2]|0;c=f[b+4>>2]|0}h=f[b>>2]|0;j=e+-1|0;k=(j&e|0)==0;if(k)l=j&c;else if(c>>>0<e>>>0)l=c;else l=(c>>>0)%(e>>>0)|0;g=(f[(O+192|0)>>2]|0)+(l<<2)|0;i=f[g>>2]|0;while(1){c=f[i>>2]|0;if((c|0)==(b|0))break;else i=c}if((i|0)==(O+200|0|0))m=87;else{c=f[i+4>>2]|0;if(k)c=c&j;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(l|0)){w=h;m=95}else m=87}do if((m|0)==87){if(h|0){c=f[h+4>>2]|0;if(k)d=c&j;else if(c>>>0<e>>>0)d=c;else d=(c>>>0)%(e>>>0)|0;if((d|0)==(l|0)){t=h;x=c;m=97;break}}f[g>>2]=0;w=f[b>>2]|0;m=95}while(0);if((m|0)==95){m=0;c=w;if(!w)q=c;else{t=c;x=f[w+4>>2]|0;m=97}}if((m|0)==97){m=0;if(k)c=x&j;else if(x>>>0<e>>>0)c=x;else c=(x>>>0)%(e>>>0)|0;if((c|0)==(l|0))q=t;else{f[(f[(O+192|0)>>2]|0)+(c<<2)>>2]=i;q=f[b>>2]|0}}f[i>>2]=q;f[b>>2]=0;f[(O+204|0)>>2]=(f[(O+204|0)>>2]|0)+-1;mDa(A);Zpb(b)}}}while(0);qEa(O,N);break}default:p=1}}if(p){p=0;switch(o|0){case 6:{e=f[(O+228|0)>>2]|0;e:do if(e|0){if(!((e+-1|0)&e))d=(e+-1|0)&N;else if(e>>>0>N>>>0)d=N;else d=(N>>>0)%(e>>>0)|0;b=f[(f[(O+224|0)>>2]|0)+(d<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){f:do if(!((e+-1|0)&e))while(1){c=f[b+4>>2]|0;if(!((c|0)==(N|0)|(c&(e+-1|0)|0)==(d|0)))break e;if((c|0)==(N|0))if((f[b+8>>2]|0)==(N|0))break f;b=f[b>>2]|0;if(!b)break e}else while(1){c=f[b+4>>2]|0;if((c|0)==(N|0)){if((f[b+8>>2]|0)==(N|0))break f}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(d|0))break e}b=f[b>>2]|0;if(!b)break e}while(0);C=b+12|0;I=b+16|0;c=f[C>>2]|0;d=(f[I>>2]|0)-c|0;if(!d)c=N;else{if(uEa(s,v,c)|0)F=0;else{m=146;break b}while(1){F=F+1|0;if(F>>>0>=((d|0)/28|0)>>>0)break;if(!(uEa(s,v,(f[C>>2]|0)+(F*28|0)|0)|0)){m=125;break b}}e=f[(O+228|0)>>2]|0;c=f[b+4>>2]|0}h=f[b>>2]|0;j=e+-1|0;k=(j&e|0)==0;if(k)l=j&c;else if(c>>>0<e>>>0)l=c;else l=(c>>>0)%(e>>>0)|0;g=(f[(O+224|0)>>2]|0)+(l<<2)|0;i=f[g>>2]|0;while(1){c=f[i>>2]|0;if((c|0)==(b|0))break;else i=c}if((i|0)==(O+232|0|0))m=177;else{c=f[i+4>>2]|0;if(k)c=c&j;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(l|0)){y=h;m=185}else m=177}do if((m|0)==177){if(h|0){c=f[h+4>>2]|0;if(k)d=c&j;else if(c>>>0<e>>>0)d=c;else d=(c>>>0)%(e>>>0)|0;if((d|0)==(l|0)){u=h;z=c;m=187;break}}f[g>>2]=0;y=f[b>>2]|0;m=185}while(0);if((m|0)==185){m=0;c=y;if(!y)r=c;else{u=c;z=f[y+4>>2]|0;m=187}}if((m|0)==187){m=0;if(k)c=z&j;else if(z>>>0<e>>>0)c=z;else c=(z>>>0)%(e>>>0)|0;if((c|0)==(l|0))r=u;else{f[(f[(O+224|0)>>2]|0)+(c<<2)>>2]=i;r=f[b>>2]|0}}f[i>>2]=r;f[b>>2]=0;f[(O+236|0)>>2]=(f[(O+236|0)>>2]|0)+-1;lDa(C);Zpb(b)}}}while(0);qEa(O,N);break}default:p=1}}f[a+16>>2]=O;f[a+24>>2]=s;f[a+32>>2]=v;f[a+488>>2]=K;f[a+496>>2]=L;f[a+504>>2]=M;f[a+816>>2]=N;f[a+2312>>2]=P;f[a+2368>>2]=J;f[a+2376>>2]=Q;f[a+2880>>2]=R;f[a+2888>>2]=S;f[a+3392>>2]=T;f[a+3400>>2]=U;f[a+3568>>2]=m;f[a+3592>>2]=p;f[a+3600>>2]=o;f[a+3616>>2]=0;f[a+3620>>2]=0;SDa(a);K=f[a+488>>2]|0;L=f[a+496>>2]|0;M=f[a+504>>2]|0;P=f[a+2312>>2]|0;J=f[a+2368>>2]|0;Q=f[a+2376>>2]|0;R=f[a+2880>>2]|0;S=f[a+2888>>2]|0;T=f[a+3392>>2]|0;U=f[a+3400>>2]|0;m=f[a+3568>>2]|0;G=f[a+3616>>2]|0;D=f[a+3620>>2]|0;H=+n[a+3620>>2];f[a+3616>>2]=0;f[a+3620>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 14:break b}}k=1;if(k){k=0;if((m|0)==35){c=f[A>>2]|0;b=c+(B*28|0)|0;j=f[E>>2]|0;if((j|0)==(b|0))i=c;else{i=c;do{f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];g=b+8|0;h=i+8|0;c=f[h>>2]|0;e=i+12|0;if(!c)c=i+16|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);c=i+16|0;f[c>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];B=b+12|0;f[e>>2]=f[B>>2];A=b+16|0;f[c>>2]=f[A>>2];f[A>>2]=0;f[B>>2]=0;f[g>>2]=0;f[b>>2]=0;c=b+24|0;B=i+24|0;A=f[c>>2]|0;f[c>>2]=0;c=f[B>>2]|0;f[B>>2]=A;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);b=b+28|0;i=i+28|0}while((b|0)!=(j|0));b=f[E>>2]|0}if((b|0)==(i|0))m=56;else{do{d=b+-28|0;f[E>>2]=d;B=b+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[E>>2]|0}while((b|0)!=(i|0));m=56}}else k=1}if(k){k=0;if((m|0)==125){c=f[C>>2]|0;b=c+(F*28|0)|0;j=f[I>>2]|0;if((j|0)==(b|0))i=c;else{i=c;do{f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];g=b+8|0;h=i+8|0;c=f[h>>2]|0;e=i+12|0;if(!c)c=i+16|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);c=i+16|0;f[c>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];F=b+12|0;f[e>>2]=f[F>>2];E=b+16|0;f[c>>2]=f[E>>2];f[E>>2]=0;f[F>>2]=0;f[g>>2]=0;f[b>>2]=0;c=b+24|0;F=i+24|0;E=f[c>>2]|0;f[c>>2]=0;c=f[F>>2]|0;f[F>>2]=E;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);b=b+28|0;i=i+28|0}while((b|0)!=(j|0));b=f[I>>2]|0}if((b|0)==(i|0))m=146;else{do{d=b+-28|0;f[I>>2]=d;F=b+-4|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[I>>2]|0}while((b|0)!=(i|0));m=146}}else k=1}if(k){k=0;if((m|0)==267){c=f[J>>2]|0;b=c+(K*28|0)|0;j=f[Q>>2]|0;if((j|0)==(b|0))i=c;else{i=c;do{f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];g=b+8|0;h=i+8|0;c=f[h>>2]|0;e=i+12|0;if(!c)c=i+16|0;else{d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c);c=i+16|0;f[c>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];K=b+12|0;f[e>>2]=f[K>>2];J=b+16|0;f[c>>2]=f[J>>2];f[J>>2]=0;f[K>>2]=0;f[g>>2]=0;f[b>>2]=0;c=b+24|0;K=i+24|0;J=f[c>>2]|0;f[c>>2]=0;c=f[K>>2]|0;f[K>>2]=J;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);b=b+28|0;i=i+28|0}while((b|0)!=(j|0));b=f[Q>>2]|0}if((b|0)==(i|0))m=288;else{do{d=b+-28|0;f[Q>>2]=d;K=b+-4|0;c=f[K>>2]|0;f[K>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{_pb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[Q>>2]|0}while((b|0)!=(i|0));m=288}}else k=1}f[a+16>>2]=O;f[a+496>>2]=L;f[a+504>>2]=M;f[a+816>>2]=N;f[a+2880>>2]=R;f[a+2888>>2]=S;f[a+3392>>2]=T;f[a+3400>>2]=U;f[a+3568>>2]=m;f[a+3576>>2]=k;f[a+3608>>2]=0;f[a+3612>>2]=0;RDa(a);m=f[a+3568>>2]|0;G=f[a+3608>>2]|0;D=f[a+3612>>2]|0;H=+n[a+3612>>2];f[a+3608>>2]=0;f[a+3612>>2]=0;if((G|0)==5){f[a+3624>>2]=5;break a}}f[a+2312>>2]=P;f[a+3568>>2]=m}
function w0a(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;c=v;s=a+80|0;f[c>>2]=d;c=_$a(s,c)|0;if(c|0){t=c;t=t+16|0;f[t>>2]=e;u=v;return}l=f[a>>2]|0;f[a>>2]=l+-1;m=Erb(d|0,0,16)|0;m=Brb(d^61^m|0,I|0,9,0)|0;r=I;o=Erb(m|0,r|0,4)|0;r=Brb(o^m|0,I^r|0,668265261,0)|0;m=I;m=Erb(r|0,m|0,15)|0;r=m^r;m=a+84|0;o=f[m>>2]|0;p=(o|0)==0;a:do if(p)c=0;else{h=o+-1|0;g=(h&o|0)==0;if(g)k=h&r;else if(o>>>0>r>>>0)k=r;else k=(r>>>0)%(o>>>0)|0;c=f[(f[s>>2]|0)+(k<<2)>>2]|0;if(!c)c=k;else{if(g){do{c=f[c>>2]|0;if(!c){c=k;break a}q=f[c+4>>2]|0;if(!((q|0)==(r|0)|(q&h|0)==(k|0))){c=k;break a}}while((f[c+8>>2]|0)!=(d|0));t=c+16|0;f[t>>2]=e;u=v;return}do{c=f[c>>2]|0;if(!c){c=k;break a}g=f[c+4>>2]|0;if((g|0)!=(r|0)){if(g>>>0>=o>>>0)g=(g>>>0)%(o>>>0)|0;if((g|0)!=(k|0)){c=k;break a}}}while((f[c+8>>2]|0)!=(d|0));t=c+16|0;f[t>>2]=e;u=v;return}}while(0);q=Wpb(64)|0;f[q+8>>2]=d;f[q+12>>2]=l;k=q+16|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;n[q+36>>2]=1.0;k=q+40|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[q+56>>2]=1.0;b[q+60>>0]=0;f[q+4>>2]=r;f[q>>2]=0;k=a+92|0;i=+(((f[k>>2]|0)+1|0)>>>0);j=+n[a+96>>2];do if(p|j*+(o>>>0)<i){c=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;g=~~+W(+(i/j))>>>0;$$a(s,c>>>0<g>>>0?g:c);c=f[m>>2]|0;g=c+-1|0;if(!(g&c)){h=c;c=g&r;break}if(c>>>0>r>>>0){h=c;c=r}else{h=c;c=(r>>>0)%(c>>>0)|0}}else h=o;while(0);g=(f[s>>2]|0)+(c<<2)|0;c=f[g>>2]|0;if(!c){c=a+88|0;f[q>>2]=f[c>>2];f[c>>2]=q;f[g>>2]=c;c=f[q>>2]|0;if(c|0){c=f[c+4>>2]|0;g=h+-1|0;if(!(g&h))c=c&g;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[s>>2]|0)+(c<<2)|0;t=31}}else{f[q>>2]=f[c>>2];t=31}if((t|0)==31)f[c>>2]=q;f[k>>2]=(f[k>>2]|0)+1;t=q;t=t+16|0;f[t>>2]=e;u=v;return}function x0a(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;e=m;if(d[a+164>>1]&16){wh[f[(f[c>>2]|0)+76>>2]&127](c,b+8|0,f[b+4>>2]|0);u=m;return}f[e>>2]=0;g=e+4|0;f[g>>2]=0;f[e+8>>2]=0;l=a+124|0;c=f[l>>2]|0;if(c>>>0<(f[a+128>>2]|0)>>>0){f[c>>2]=0;k=c+4|0;f[k>>2]=0;f[c+8>>2]=0;f[c>>2]=f[e>>2];f[k>>2]=f[g>>2];k=e+8|0;f[c+8>>2]=f[k>>2];f[k>>2]=0;f[g>>2]=0;f[e>>2]=0;f[l>>2]=(f[l>>2]|0)+12}else{y0a(a+120|0,e);c=f[e>>2]|0;if(c|0){if((f[g>>2]|0)!=(c|0))f[g>>2]=c;Zpb(c)}}a=f[l>>2]|0;e=a+-12|0;i=b+4|0;c=f[i>>2]|0;j=a+-8|0;k=f[j>>2]|0;h=f[e>>2]|0;g=k-h|0;if(c>>>0>g>>>0){SAa(e,c-g|0);a=f[l>>2]|0;c=f[i>>2]|0}else if(c>>>0<g>>>0){e=h+c|0;if((e|0)!=(k|0))f[j>>2]=e}Irb(f[a+-12>>2]|0,b+8|0,c|0)|0;u=m;return}function y0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0<d>>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)ud();else{g=Wpb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;h=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;g=b;d=b}else{do{l=d+-12|0;g=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=g+-8|0;f[m>>2]=f[l>>2];g=g+-4|0;f[d+-4>>2]=f[g>>2];f[g>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;g=f[a>>2]|0;d=f[j>>2]|0}f[a>>2]=c;f[j>>2]=h;f[k>>2]=i;b=g;if((d|0)!=(b|0))do{c=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){c=c+-8|0;if((f[c>>2]|0)!=(e|0))f[c>>2]=e;Zpb(e)}}while((d|0)!=(b|0));if(!g)return;Zpb(g);return}function z0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){A0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;A0a(a,b);return}function A0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function B0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+8|0;g=f[m>>2]|0;n=a+4|0;c=f[n>>2]|0;if(((g-c|0)/56|0)>>>0>=b>>>0){do{f[c+40>>2]=0;f[c+44>>2]=0;f[c+48>>2]=0;c=(f[n>>2]|0)+56|0;f[n>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/56|0;c=e+b|0;if(c>>>0>76695844)fob(a);k=(g-d|0)/56|0;l=k<<1;c=k>>>0<38347922?(l>>>0<c>>>0?c:l):76695844;do if(!c)h=0;else if(c>>>0>76695844)ud();else{h=Wpb(c*56|0)|0;break}while(0);g=h+(e*56|0)|0;e=h+(c*56|0)|0;c=b;d=g;while(1){f[d+40>>2]=0;f[d+44>>2]=0;f[d+48>>2]=0;c=c+-1|0;if(!c)break;else d=d+56|0}d=g;l=g+(b*56|0)|0;k=f[a>>2]|0;c=f[n>>2]|0;if((c|0)==(k|0)){b=d;g=k;c=k}else{b=d;do{d=c;c=c+-56|0;h=g+-56|0;i=c;j=h+40|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));i=g+-16|0;j=d+-16|0;f[i>>2]=0;h=g+-12|0;f[h>>2]=0;f[g+-8>>2]=0;f[i>>2]=f[j>>2];i=d+-12|0;f[h>>2]=f[i>>2];h=d+-8|0;f[g+-8>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[j>>2]=0;g=b+-56|0;b=g}while((c|0)!=(k|0));g=f[a>>2]|0;c=f[n>>2]|0}f[a>>2]=b;f[n>>2]=l;f[m>>2]=e;e=g;if((c|0)!=(e|0))do{b=c+-16|0;c=c+-56|0;d=f[b>>2]|0;if(d|0){n0a(b,d);Zpb(f[b>>2]|0)}}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function C0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;g=Erb(h|0,0,16)|0;g=Brb(h^61^g|0,I|0,9,0)|0;e=I;i=Erb(g|0,e|0,4)|0;e=Brb(i^g|0,I^e|0,668265261,0)|0;g=I;g=Erb(e|0,g|0,15)|0;e=g^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=d&e;else if(g>>>0>e>>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function D0a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;f=a+4|0;m=b+12|0;h=a+8|0;l=b+24|0;n[c>>2]=+n[a>>2]*+n[b>>2]+ +n[f>>2]*+n[m>>2]+ +n[h>>2]*+n[l>>2];k=b+4|0;j=b+16|0;i=b+28|0;n[c+4>>2]=+n[a>>2]*+n[k>>2]+ +n[f>>2]*+n[j>>2]+ +n[h>>2]*+n[i>>2];g=b+8|0;e=b+20|0;d=b+32|0;n[c+8>>2]=+n[a>>2]*+n[g>>2]+ +n[f>>2]*+n[e>>2]+ +n[h>>2]*+n[d>>2];h=a+12|0;f=a+16|0;o=a+20|0;n[c+12>>2]=+n[h>>2]*+n[b>>2]+ +n[f>>2]*+n[m>>2]+ +n[o>>2]*+n[l>>2];n[c+16>>2]=+n[h>>2]*+n[k>>2]+ +n[f>>2]*+n[j>>2]+ +n[o>>2]*+n[i>>2];n[c+20>>2]=+n[h>>2]*+n[g>>2]+ +n[f>>2]*+n[e>>2]+ +n[o>>2]*+n[d>>2];o=a+24|0;f=a+28|0;h=a+32|0;n[c+24>>2]=+n[o>>2]*+n[b>>2]+ +n[f>>2]*+n[m>>2]+ +n[h>>2]*+n[l>>2];n[c+28>>2]=+n[o>>2]*+n[k>>2]+ +n[f>>2]*+n[j>>2]+ +n[h>>2]*+n[i>>2];n[c+32>>2]=+n[o>>2]*+n[g>>2]+ +n[f>>2]*+n[e>>2]+ +n[h>>2]*+n[d>>2];h=a+36|0;f=a+40|0;a=a+44|0;n[c+36>>2]=+n[b+36>>2]+(+n[h>>2]*+n[b>>2]+ +n[f>>2]*+n[m>>2]+ +n[a>>2]*+n[l>>2]);n[c+40>>2]=+n[b+40>>2]+(+n[h>>2]*+n[k>>2]+ +n[f>>2]*+n[j>>2]+ +n[a>>2]*+n[i>>2]);n[c+44>>2]=+n[b+44>>2]+(+n[h>>2]*+n[g>>2]+ +n[f>>2]*+n[e>>2]+ +n[a>>2]*+n[d>>2]);return}function E0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){F0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;F0a(a,b);return}function F0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function G0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=Wpb(92)|0;h=d&1;f[i>>2]=c;d=i+80|0;f[i+84>>2]=0;c=i+88|0;e=i+4|0;g=e+72|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));b[c>>0]=h;f[d>>2]=-1;f[a>>2]=i;return}function H0a(a){a=a|0;var b=0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;I0a(b);Zpb(b);return}function I0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=a+68|0;c=f[b>>2]|0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Zpb(d)}Zpb(c);f[b>>2]=0}n=a+4|0;b=f[n>>2]|0;p=a+8|0;g=f[p>>2]|0;if((b|0)!=(g|0)){do{c=f[b>>2]|0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Zpb(d)}Zpb(c)}b=b+4|0}while((b|0)!=(g|0));b=f[n>>2]|0;c=f[p>>2]|0;if((c|0)!=(b|0))f[p>>2]=c+(~((c+-4-b|0)>>>2)<<2)}m=a+36|0;if(f[m>>2]|0){k=a+40|0;Tpb(k);i=a+20|0;c=f[i>>2]|0;l=a+32|0;b=f[l>>2]|0;d=c+(b>>>10<<2)|0;j=a+24|0;if((f[j>>2]|0)==(c|0)){b=0;h=0}else{h=b+(f[m>>2]|0)|0;b=(f[d>>2]|0)+((b&1023)<<2)|0;h=(f[c+(h>>>10<<2)>>2]|0)+((h&1023)<<2)|0}a:while(1){do{if((h|0)==(b|0))break a;c=f[b>>2]|0;if(c|0){e=f[c>>2]|0;if(e|0){g=c+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Zpb(e)}Zpb(c)}b=b+4|0}while((b-(f[d>>2]|0)|0)!=4096);b=d+4|0;d=b;b=f[b>>2]|0}c=f[i>>2]|0;b=f[l>>2]|0;d=c+(b>>>10<<2)|0;e=f[j>>2]|0;g=e;h=c;if((e|0)==(c|0)){b=0;e=0}else{e=(f[m>>2]|0)+b|0;b=(f[d>>2]|0)+((b&1023)<<2)|0;e=(f[c+(e>>>10<<2)>>2]|0)+((e&1023)<<2)|0}b:while(1){do{if((e|0)==(b|0))break b;b=b+4|0}while((b-(f[d>>2]|0)|0)!=4096);b=d+4|0;d=b;b=f[b>>2]|0}f[m>>2]=0;b=g-h>>2;if(b>>>0>2)do{Zpb(f[c>>2]|0);c=(f[i>>2]|0)+4|0;f[i>>2]=c;b=(f[j>>2]|0)-c>>2}while(b>>>0>2);switch(b|0){case 1:{b=512;o=34;break}case 2:{b=1024;o=34;break}default:{}}if((o|0)==34)f[l>>2]=b;Upb(k)}l=a+84|0;b=f[l>>2]|0;f[l>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);Spb(a+40|0);k=a+20|0;b=f[k>>2]|0;j=a+32|0;c=f[j>>2]|0;e=b+(c>>>10<<2)|0;l=a+24|0;d=f[l>>2]|0;g=d;h=b;if((d|0)==(b|0)){i=0;c=0}else{i=(f[m>>2]|0)+c|0;i=(f[b+(i>>>10<<2)>>2]|0)+((i&1023)<<2)|0;c=(f[e>>2]|0)+((c&1023)<<2)|0}c:while(1){do{if((i|0)==(c|0))break c;c=c+4|0}while((c-(f[e>>2]|0)|0)!=4096);c=e+4|0;e=c;c=f[c>>2]|0}f[m>>2]=0;c=g-h>>2;if(c>>>0>2)do{Zpb(f[b>>2]|0);b=(f[k>>2]|0)+4|0;f[k>>2]=b;d=f[l>>2]|0;c=d-b>>2}while(c>>>0>2);switch(c|0){case 1:{c=512;o=58;break}case 2:{c=1024;o=58;break}default:{}}if((o|0)==58)f[j>>2]=c;if((b|0)!=(d|0)){do{Zpb(f[b>>2]|0);b=b+4|0}while((b|0)!=(d|0));b=f[k>>2]|0;c=f[l>>2]|0;if((c|0)!=(b|0))f[l>>2]=c+(~((c+-4-b|0)>>>2)<<2)}b=f[a+16>>2]|0;if(b|0)Zpb(b);b=f[n>>2]|0;if(!b)return;c=f[p>>2]|0;if((c|0)!=(b|0))f[p>>2]=c+(~((c+-4-b|0)>>>2)<<2);Zpb(b);return}function J0a(a){a=a|0;var b=0,c=0;c=f[a>>2]|0;a=c+8|0;b=f[a>>2]|0;if((f[c+4>>2]|0)==(b|0)){c=Wpb(12)|0;b=Wpb(16384)|0;a=b;f[c>>2]=a;f[c+4>>2]=a;f[c+8>>2]=b+16384;return c|0}else{b=b+-4|0;c=f[b>>2]|0;f[a>>2]=b;return c|0}return 0}function K0a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=f[a>>2]|0;if(!(b[h+88>>0]|0)){c=d0a(h,c)|0;return c|0}k=h+40|0;Tpb(k);i=h+20|0;a=f[i>>2]|0;l=(f[h+24>>2]|0)-a|0;e=h+32|0;g=f[e>>2]|0;j=h+36|0;d=f[j>>2]|0;if((((l|0)==0?0:(l<<8)+-1|0)|0)==(d+g|0)){L0a(h+16|0);g=f[e>>2]|0;d=f[j>>2]|0;a=f[i>>2]|0}l=d+g|0;f[(f[a+(l>>>10<<2)>>2]|0)+((l&1023)<<2)>>2]=c;f[j>>2]=d+1;Upb(k);l=0;return l|0}function L0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>1023){f[b>>2]=c+-1024;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{Jrb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();g=Wpb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){Zpb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0<d>>>0){if((c|0)!=(b|0)){o=Wpb(4096)|0;f[l>>2]=o;M0a(a,l);u=p;return}j=Wpb(4096)|0;f[l>>2]=j;N0a(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{Jrb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();e=Wpb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){Zpb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)ud();q=e>>2;e=Wpb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=Wpb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();else{q=Wpb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);Zpb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;O0a(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)Zpb(g);u=p;return}function M0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{Jrb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)ud();g=Wpb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){Zpb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function N0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function O0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function P0a(a){a=a|0;Q0a(f[a>>2]|0);return}function Q0a(a){a=a|0;var b=0,c=0,e=0,g=0;b=a+84|0;c=f[b>>2]|0;if(!c){c=Wpb(8)|0;f[c>>2]=33452;e=Wpb(168)|0;f[e>>2]=536870910;f[e+4>>2]=1;f[e+8>>2]=268435457;f[e+12>>2]=-2;f[e+16>>2]=-1;f[e+20>>2]=-1;f[e+24>>2]=-1;g=e+80|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+96>>2]=1.0;g=e+100|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+116>>2]=1.0;f[e+120>>2]=0;f[e+124>>2]=0;f[e+128>>2]=0;f[e+156>>2]=0;f[e+160>>2]=-1;d[e+164>>1]=0;n[e+132>>2]=3402823466385288598117041.0e14;n[e+136>>2]=3402823466385288598117041.0e14;n[e+140>>2]=3402823466385288598117041.0e14;n[e+144>>2]=-3402823466385288598117041.0e14;n[e+148>>2]=-3402823466385288598117041.0e14;n[e+152>>2]=-3402823466385288598117041.0e14;f[c+4>>2]=e;f[b>>2]=c}e=f[a>>2]|0;c=f[c+4>>2]|0;a=c+164|0;b=d[a>>1]|0;if(b&64)return;if(!(b&1)){Kh[f[(f[e>>2]|0)+8>>2]&255](e,67,67,f[c+12>>2]|0,0);b=d[a>>1]|1;d[a>>1]=b}if(!(b&256)){d[a>>1]=b|256;Eh[f[(f[e>>2]|0)+36>>2]&255](e,f[c+76>>2]|0,192751,27)}nh[f[(f[e>>2]|0)+12>>2]&1023](e,0);d[a>>1]=d[a>>1]|64;return}function R0a(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0;a=(f[a>>2]|0)+84|0;e=f[a>>2]|0;if(e|0){e=e+4|0;e=f[e>>2]|0;S0a(e,b,c);return}e=Wpb(8)|0;f[e>>2]=33452;g=Wpb(168)|0;f[g>>2]=536870910;f[g+4>>2]=1;f[g+8>>2]=268435457;f[g+12>>2]=-2;f[g+16>>2]=-1;f[g+20>>2]=-1;f[g+24>>2]=-1;h=g+80|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[g+96>>2]=1.0;h=g+100|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;n[g+116>>2]=1.0;f[g+120>>2]=0;f[g+124>>2]=0;f[g+128>>2]=0;f[g+156>>2]=0;f[g+160>>2]=-1;d[g+164>>1]=0;n[g+132>>2]=3402823466385288598117041.0e14;n[g+136>>2]=3402823466385288598117041.0e14;n[g+140>>2]=3402823466385288598117041.0e14;n[g+144>>2]=-3402823466385288598117041.0e14;n[g+148>>2]=-3402823466385288598117041.0e14;n[g+152>>2]=-3402823466385288598117041.0e14;f[e+4>>2]=g;f[a>>2]=e;e=e+4|0;e=f[e>>2]|0;S0a(e,b,c);return}function S0a(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,g=0,h=0,i=0,j=0;h=a+80|0;i=a+92|0;if(f[i>>2]|0){g=a+88|0;X$a(h,f[g>>2]|0);f[g>>2]=0;g=f[a+84>>2]|0;if(g|0){e=0;do{f[(f[h>>2]|0)+(e<<2)>>2]=0;e=e+1|0}while((e|0)!=(g|0))}f[i>>2]=0}i=a+112|0;if(f[i>>2]|0){g=a+108|0;e=f[g>>2]|0;if(e|0)do{j=e;e=f[e>>2]|0;Zpb(j)}while((e|0)!=0);f[g>>2]=0;g=f[a+104>>2]|0;if(g|0){h=a+100|0;e=0;do{f[(f[h>>2]|0)+(e<<2)>>2]=0;e=e+1|0}while((e|0)!=(g|0))}f[i>>2]=0}i=f[a+120>>2]|0;j=a+124|0;e=f[j>>2]|0;if((e|0)!=(i|0))do{g=e+-12|0;f[j>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;if((f[e>>2]|0)!=(h|0))f[e>>2]=h;Zpb(h);e=f[j>>2]|0}}while((e|0)!=(i|0));h=a+164|0;i=d[h>>1]&-409;d[h>>1]=i;f[a+160>>2]=-1;if(!c){c=a+76|0;f[c>>2]=b;c=f[a>>2]|0;b=c+-1|0;f[a>>2]=b;b=a+16|0;f[b>>2]=c;return}if(!(idb(33508,c,48)|0)){c=a+76|0;f[c>>2]=b;c=f[a>>2]|0;b=c+-1|0;f[a>>2]=b;b=a+16|0;f[b>>2]=c;return}j=a+28|0;e=c;g=j+48|0;do{f[j>>2]=f[e>>2];j=j+4|0;e=e+4|0}while((j|0)<(g|0));d[h>>1]=i|8;c=a+76|0;f[c>>2]=b;c=f[a>>2]|0;b=c+-1|0;f[a>>2]=b;b=a+16|0;f[b>>2]=c;return}function T0a(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+16|0;c=d;b=f[a>>2]|0;a=b+40|0;Tpb(a);b=b+36|0;e=(f[b>>2]|0)==0;Upb(a);if(e){u=d;return}do{e=c;f[e>>2]=1e6;f[e+4>>2]=0;Kqb(c);Tpb(a);e=(f[b>>2]|0)==0;Upb(a)}while(!e);u=d;return}function U0a(a){a=a|0;var b=0,c=0,e=0;a=(f[a>>2]|0)+84|0;b=f[a>>2]|0;if(b|0){a=b;a=a+4|0;a=f[a>>2]|0;a=a+8|0;b=f[a>>2]|0;c=b+1|0;f[a>>2]=c;return b|0}b=Wpb(8)|0;f[b>>2]=33452;c=Wpb(168)|0;f[c>>2]=536870910;f[c+4>>2]=1;f[c+8>>2]=268435457;f[c+12>>2]=-2;f[c+16>>2]=-1;f[c+20>>2]=-1;f[c+24>>2]=-1;e=c+80|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[c+96>>2]=1.0;e=c+100|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[c+116>>2]=1.0;f[c+120>>2]=0;f[c+124>>2]=0;f[c+128>>2]=0;f[c+156>>2]=0;f[c+160>>2]=-1;d[c+164>>1]=0;n[c+132>>2]=3402823466385288598117041.0e14;n[c+136>>2]=3402823466385288598117041.0e14;n[c+140>>2]=3402823466385288598117041.0e14;n[c+144>>2]=-3402823466385288598117041.0e14;n[c+148>>2]=-3402823466385288598117041.0e14;n[c+152>>2]=-3402823466385288598117041.0e14;f[b+4>>2]=c;f[a>>2]=b;b=b+4|0;b=f[b>>2]|0;b=b+8|0;c=f[b>>2]|0;a=c+1|0;f[b>>2]=a;return c|0}function V0a(a){a=a|0;return f[(f[a>>2]|0)+84>>2]|0}function W0a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0.0,j=0.0,k=0,l=0;l=c;k=f[l+4>>2]|0;c=a;f[c>>2]=f[l>>2];f[c+4>>2]=k;f[a+8>>2]=b;c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;c=Wpb(40)|0;f[a+24>>2]=c;f[a+32>>2]=c+40;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b=c+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+28>>2]=c+40;f[a+36>>2]=0;f[a+40>>2]=g;j=+n[d>>2]*.5+ +n[e>>2]*.5;n[a+44>>2]=j;c=d+4|0;i=+n[c>>2]*.5+ +n[e+4>>2]*.5;n[a+48>>2]=i;g=d+8|0;h=+n[g>>2]*.5+ +n[e+8>>2]*.5;n[a+52>>2]=h;j=j-+n[d>>2];n[a+56>>2]=j;i=i-+n[c>>2];n[a+60>>2]=i;h=h-+n[g>>2];n[a+64>>2]=h;n[a+68>>2]=j*j+(i*i+h*h);return}function X0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;c=f[e+4>>2]|0;d=a;f[d>>2]=f[e>>2];f[d+4>>2]=c;f[a+8>>2]=f[b+8>>2];d=a+12|0;c=b+12|0;f[d>>2]=0;e=a+16|0;f[e>>2]=0;f[a+20>>2]=0;f[d>>2]=f[c>>2];d=b+16|0;f[e>>2]=f[d>>2];e=b+20|0;f[a+20>>2]=f[e>>2];f[e>>2]=0;f[d>>2]=0;f[c>>2]=0;c=a+24|0;d=b+24|0;f[c>>2]=0;e=a+28|0;f[e>>2]=0;f[a+32>>2]=0;f[c>>2]=f[d>>2];c=b+28|0;f[e>>2]=f[c>>2];e=b+32|0;f[a+32>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[d>>2]=0;d=b+36|0;c=f[d>>2]|0;f[d>>2]=0;f[a+36>>2]=c;f[a+40>>2]=f[b+40>>2];f[a+44>>2]=f[b+44>>2];f[a+48>>2]=f[b+48>>2];f[a+52>>2]=f[b+52>>2];f[a+56>>2]=f[b+56>>2];f[a+60>>2]=f[b+60>>2];f[a+64>>2]=f[b+64>>2];f[a+68>>2]=f[b+68>>2];return}function Y0a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0.0,l=0,m=0,o=0.0,p=0,q=0,r=0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+96|0;C=D+64|0;r=D+68|0;q=D;f[C>>2]=c;Zoa(c,a,r);p=f[c+4>>2]|0;B=a+40|0;do if(f[B>>2]|0){if(!e)if(b[(f[p+44>>2]|0)+144>>0]&1)break;if(!(t1a()|0)){l=p+44|0;m=f[l>>2]|0;c=f[m+48>>2]|0;y=r+16|0;f[y>>2]=c;g=(f[m+28>>2]|0)==0;do if(!(f[m+24>>2]|0)){h=(f[m+32>>2]|0)==0;if(!g){if(!h){A=20;break}c=c|2097152;f[y>>2]=c;A=20;break}if(!h){c=c|4194304;f[y>>2]=c;A=20;break}c=f[a+24>>2]|0;g=c+8|0;h=f[g>>2]|0;if((h|0)==(f[c+12>>2]|0)){EQa(c+4|0,C);break}else{f[h>>2]=f[C>>2];f[g>>2]=(f[g>>2]|0)+4;break}}else if(g)if(!(f[m+32>>2]|0)){c=c|1048576;f[y>>2]=c;A=20}else A=20;else A=20;while(0);do if((A|0)==20){if(Rqa(m+64|0)|0)if(!(f[(f[l>>2]|0)+48>>2]&131072))if(!(Ng[f[(f[p>>2]|0)+8>>2]&511](p)|0)){z=(f[l>>2]|0)+144|0;b[z>>0]=b[z>>0]|1;Roa(q,f[C>>2]|0);t=+n[q>>2];v=+n[q+20>>2];w=+n[q+40>>2];x=+n[q+36>>2];i=+n[q+24>>2];j=+n[q+16>>2];k=+n[q+4>>2];o=+n[q+8>>2];s=+n[q+32>>2];if(s*(i*k-v*o)+(t*(v*w-x*i)-j*(w*k-x*o))<0.0){c=c|262144;f[y>>2]=c}t=t*t+(k*k+o*o);o=j*j+(v*v+i*i);i=s*s+(x*x+w*w);j=(t+0.0+o+i)*.3333333432674408;k=j*9.999999747378752e-05;if(+K(+(t-j))>k)A=33;else if(+K(+(o-j))>k)A=33;else if(+K(+(i-j))>k)A=33;if((A|0)==33)f[y>>2]=c|524288;g=f[C>>2]|0;f[r>>2]=f[g+36>>2];f[r+4>>2]=f[g+44>>2];f[r+8>>2]=f[g+52>>2];f[r+12>>2]=f[g+108>>2];g=a+36|0;c=f[g>>2]|0;if(!c){c=Wpb(20)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;n[c+16>>2]=1.0;f[g>>2]=c}r=_0a(c,r)|0;z=WUa()|0;z=z>>>((f[y>>2]|0)>>>19&1);q=a+24|0;if(!(f[r>>2]|0)){c=a+28|0;g=f[c>>2]|0;f[r>>2]=(g-(f[q>>2]|0)|0)/20|0;if((f[a+32>>2]|0)>>>0>g>>>0){y=g;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;f[y+12>>2]=0;y=(f[c>>2]|0)+20|0;f[c>>2]=y;c=y}else{$0a(q);c=f[c>>2]|0}l=c+-16|0;m=c+-8|0;p=f[l>>2]|0;if((f[m>>2]|0)-p>>2>>>0<z>>>0){c=c+-12|0;if(z>>>0>1073741823)ud();g=(f[c>>2]|0)-p|0;h=Wpb(z<<2)|0;if((g|0)>0)Irb(h|0,p|0,g|0)|0;f[l>>2]=h;f[c>>2]=h+(g>>2<<2);f[m>>2]=h+(z<<2);if(p|0)Zpb(p)}}h=f[r>>2]|0;g=f[a+24>>2]|0;y=f[(f[(f[(f[C>>2]|0)+4>>2]|0)+44>>2]|0)+104>>2]|0;if((f[g+(h*20|0)+8>>2]|0)-(f[g+(h*20|0)+4>>2]|0)>>2>>>0<z>>>0){c=r+4|0;if(((f[c>>2]|0)+y|0)>>>0>65536)A=50;else h=g+(h*20|0)|0}else{c=r+4|0;A=50}do if((A|0)==50){a1a(a,d,h);g=a+28|0;h=f[g>>2]|0;f[r>>2]=(h-(f[q>>2]|0)|0)/20|0;f[c>>2]=0;if((f[a+32>>2]|0)>>>0>h>>>0){A=h;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[A+12>>2]=0;A=(f[g>>2]|0)+20|0;f[g>>2]=A;g=A}else{$0a(q);g=f[g>>2]|0}h=g+-20|0;p=g+-16|0;q=g+-8|0;r=f[p>>2]|0;if((f[q>>2]|0)-r>>2>>>0<z>>>0){g=g+-12|0;if(z>>>0>1073741823)ud();l=(f[g>>2]|0)-r|0;m=Wpb(z<<2)|0;if((l|0)>0)Irb(m|0,r|0,l|0)|0;f[p>>2]=m;f[g>>2]=m+(l>>2<<2);f[q>>2]=m+(z<<2);if(!r)break;Zpb(r)}}while(0);f[c>>2]=(f[c>>2]|0)+y;c=h+8|0;g=f[c>>2]|0;if((g|0)==(f[h+12>>2]|0))EQa(h+4|0,C);else{f[g>>2]=f[C>>2];f[c>>2]=(f[c>>2]|0)+4}C=(f[B>>2]|0)+-1|0;f[B>>2]=C;if(C|0)break;Z0a(a,d,e);break}c=f[a+24>>2]|0;g=c+28|0;h=f[g>>2]|0;if((h|0)==(f[c+32>>2]|0))EQa(c+24|0,C);else{f[h>>2]=f[C>>2];f[g>>2]=(f[g>>2]|0)+4}C=(f[B>>2]|0)+-1|0;f[B>>2]=C;if(!C)Z0a(a,d,e)}while(0);u=D;return}}while(0);c=f[a+24>>2]|0;g=c+28|0;h=f[g>>2]|0;if((h|0)==(f[c+32>>2]|0)){EQa(c+24|0,C);u=D;return}else{f[h>>2]=f[C>>2];f[g>>2]=(f[g>>2]|0)+4;u=D;return}}function Z0a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+24|0;g=f[l>>2]|0;h=g+4|0;m=f[h>>2]|0;i=g+8|0;k=f[i>>2]|0;d=m;e=k;if((m|0)!=(k|0)){f[h>>2]=0;f[i>>2]=0;h=g+12|0;k=f[h>>2]|0;f[h>>2]=0;h=e-d>>2;a:do if(h){g=0;do{while(1){i=m+(g<<2)|0;j=f[i>>2]|0;n=f[(f[j+4>>2]|0)+44>>2]|0;if((f[n+32>>2]|0)!=(0-((f[n+24>>2]|0)+(f[n+28>>2]|0))|0))break;g=g+1|0;if(g>>>0>=h>>>0)break a}Y0a(a,j,b,c);e=e+-4|0;h=f[i>>2]|0;f[i>>2]=f[e>>2];f[e>>2]=h;h=e-d>>2}while(g>>>0<h>>>0)}while(0);if((m|0)!=(e|0)){m=f[l>>2]|0;l=m+4|0;n=f[l>>2]|0;f[l>>2]=d;f[m+8>>2]=e;f[m+12>>2]=k;d=n}if(d|0)Zpb(d)}if(f[a+40>>2]|0)return;g=a+36|0;e=f[g>>2]|0;if(!e)return;d=f[e+8>>2]|0;if(!d)f[g>>2]=0;else{do{a1a(a,b,f[d+28>>2]|0);d=f[d>>2]|0}while((d|0)!=0);d=f[g>>2]|0;f[g>>2]=0;if(!d)return;else e=d}d=f[e+8>>2]|0;if(d|0)do{n=d;d=f[d>>2]|0;Zpb(n)}while((d|0)!=0);d=f[e>>2]|0;f[e>>2]=0;if(d|0)Zpb(d);Zpb(e);return}function _0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;k=f[b>>2]|0;s=X(k,1540483477)|0;s=(X(s>>>24^s,1540483477)|0)^1866966612;s=X(s>>>13^s,1540483477)|0;s=s>>>15^s;l=f[b+4>>2]|0;m=X(l,1540483477)|0;m=(X(m>>>24^m,1540483477)|0)^1866966612;m=X(m>>>13^m,1540483477)|0;s=(s<<6)+-1640531527+(s>>>2)+(m>>>15^m)^s;m=f[b+8>>2]|0;o=X(m,1540483477)|0;o=(X(o>>>24^o,1540483477)|0)^1866966612;o=X(o>>>13^o,1540483477)|0;s=(o>>>15^o)+-1640531527+(s<<6)+(s>>>2)^s;o=f[b+12>>2]|0;j=X(o,1540483477)|0;j=(X(j>>>24^j,1540483477)|0)^1866966612;j=X(j>>>13^j,1540483477)|0;s=(j>>>15^j)+-1640531527+(s<<6)+(s>>>2)^s;j=f[b+16>>2]|0;s=j+-1640531527+(s<<6)+(s>>>2)^s;q=a+4|0;h=f[q>>2]|0;r=(h|0)==0;a:do if(r)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)p=s&i;else if(s>>>0<h>>>0)p=s;else p=(s>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(p<<2)>>2]|0;if(!c)c=p;else{c=f[c>>2]|0;if(!c)c=p;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(s|0)|(d&i|0)==(p|0))){c=p;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(l|0))if((f[c+16>>2]|0)==(m|0))if((f[c+20>>2]|0)==(o|0))if((f[c+24>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=p;break a}}a=c+28|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(s|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(p|0)){c=p;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(l|0))if((f[c+16>>2]|0)==(m|0))if((f[c+20>>2]|0)==(o|0))if((f[c+24>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=p;break a}}a=c+28|0;return a|0}}}while(0);j=Wpb(36)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];f[i+12>>2]=f[b+12>>2];f[i+16>>2]=f[b+16>>2];f[j+28>>2]=0;f[j+32>>2]=0;f[j+4>>2]=s;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(r|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;k1a(a,c>>>0<d>>>0?d:c);c=f[q>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&s;break}if(s>>>0<c>>>0){h=c;c=s}else{h=c;c=(s>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;t=39}}else{f[j>>2]=f[c>>2];t=39}if((t|0)==39)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+28|0;return a|0}function $0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=a+4|0;j=f[k>>2]|0;c=f[a>>2]|0;h=(j-c|0)/20|0;d=h+1|0;b=c;e=j;if(d>>>0>214748364)fob(a);l=a+8|0;c=((f[l>>2]|0)-c|0)/20|0;g=c<<1;g=c>>>0<107374182?(g>>>0<d>>>0?d:g):214748364;do if(!g)i=0;else if(g>>>0>214748364)ud();else{i=Wpb(g*20|0)|0;break}while(0);c=i+(h*20|0)|0;d=c;g=i+(g*20|0)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;h=c+20|0;if((e|0)==(b|0))e=j;else{do{j=e;e=e+-20|0;m=f[e>>2]|0;f[e>>2]=0;f[c+-20>>2]=m;m=c+-16|0;i=j+-16|0;f[m>>2]=0;n=c+-12|0;f[n>>2]=0;f[c+-8>>2]=0;f[m>>2]=f[i>>2];m=j+-12|0;f[n>>2]=f[m>>2];n=j+-8|0;f[c+-8>>2]=f[n>>2];f[n>>2]=0;f[m>>2]=0;f[i>>2]=0;f[c+-4>>2]=f[j+-4>>2];c=d+-20|0;d=c}while((e|0)!=(b|0));e=f[a>>2]|0;b=f[k>>2]|0}f[a>>2]=d;f[k>>2]=h;f[l>>2]=g;c=e;if((b|0)!=(c|0))do{b=b+-20|0;Kla(b)}while((b|0)!=(c|0));if(!e)return;Zpb(e);return}function a1a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}j=f[c>>2]|0;i=f[c+4>>2]|0;if(i|0)Opb(i);h=f[52797]|0;g=f[52796]|0;k=h-g|0;c=f[52799]|0;e=f[52800]|0;if((((k|0)==0?0:(k<<6)+-1|0)|0)==(e+c|0)){b1a(211180);c=f[52799]|0;e=f[52800]|0;h=f[52797]|0;g=f[52796]|0}c=e+c|0;if((h|0)==(g|0))c=0;else c=(f[g+(c>>>8<<2)>>2]|0)+((c&255)<<4)|0;f[c>>2]=j;f[c+4>>2]=i;f[c+8>>2]=a;f[c+12>>2]=d;f[52800]=(f[52800]|0)+1;if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}if((f[52800]|0)!=1)return;o$(805,0,4);return}function b1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>255){f[b>>2]=c+-256;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{Jrb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();g=Wpb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){Zpb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0<d>>>0){if((c|0)!=(b|0)){o=Wpb(4096)|0;f[l>>2]=o;h1a(a,l);u=p;return}j=Wpb(4096)|0;f[l>>2]=j;i1a(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{Jrb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();e=Wpb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){Zpb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)ud();q=e>>2;e=Wpb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=Wpb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)ud();else{q=Wpb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);Zpb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;j1a(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)Zpb(g);u=p;return}function c1a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0;if(!a)return;e=+n$();do{if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}if(!(f[52800]|0))break;if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}c=f[52799]|0;a=f[(f[52796]|0)+(c>>>8<<2)>>2]|0;c=c&255;g=f[a+(c<<4)+4>>2]|0;h=(g|0)==0;if(!h)Opb(g);i=f[a+(c<<4)+8>>2]|0;d=f[a+(c<<4)+12>>2]|0;if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}a=f[52799]|0;c=f[(f[(f[52796]|0)+(a>>>8<<2)>>2]|0)+((a&255)<<4)+4>>2]|0;if(c){Qpb(c);a=f[52799]|0}f[52800]=(f[52800]|0)+-1;c=a+1|0;f[52799]=c;if(c>>>0>511){Zpb(f[f[52796]>>2]|0);f[52796]=(f[52796]|0)+4;f[52799]=(f[52799]|0)+-256}if(!h){if((f[g+4>>2]|0)!=-1)d1a(i,d);Qpb(g)}}while(+n$()-e<20.0);if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}if(f[52800]|0){o$(805,0,4);return}if(!(b[209784]|0))if(rrb(209784)|0){f[52795]=0;f[52796]=0;f[52797]=0;f[52798]=0;f[52799]=0;f[52800]=0}e1a(211180);return}function d1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0.0,k=0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0;A=u;u=u+1776|0;z=f[(a+24|0)>>2]|0;if((((f[a+28>>2]|0)-z|0)/20|0)>>>0<=b>>>0){u=A;return}c=f[(z+(b*20|0)+4|0)>>2]|0;g=f[(z+(b*20|0)+8|0)>>2]|0;a:do if((c|0)==(g|0)){e=c;y=5}else while(1){x=f[(f[(f[c>>2]|0)+4>>2]|0)+44>>2]|0;if((f[x+32>>2]|0)==(0-((f[x+24>>2]|0)+(f[x+28>>2]|0))|0)){e=c;y=5;break a}c=c+4|0;if((c|0)==(g|0)){d=g;k=g;o=g;break}}while(0);if((y|0)==5){d=e;if((e|0)==(g|0)){k=g;o=g}else{c=d;b:while(1){do{e=c+4|0;c=e;if((e|0)==(g|0))break b;e=f[e>>2]|0;x=f[(f[e+4>>2]|0)+44>>2]|0}while((f[x+32>>2]|0)==(0-((f[x+24>>2]|0)+(f[x+28>>2]|0))|0));f[d>>2]=e;d=d+4|0}o=f[(z+(b*20|0)+8|0)>>2]|0;k=o}}m=d;if((o|0)==(m|0))c=o;else{k=d;g=m;while(1){c=f[(a+24|0)>>2]|0;e=f[(c+8|0)>>2]|0;if((e|0)==(f[c+12>>2]|0))EQa(c+4|0,g);else{f[e>>2]=f[k>>2];f[(c+8|0)>>2]=(f[(c+8|0)>>2]|0)+4}c=g+4|0;if((o|0)==(c|0))break;else{k=c;g=c}}k=f[(z+(b*20|0)+8|0)>>2]|0;c=k}g=f[(z+(b*20|0)+4|0)>>2]|0;g=g+(d-g>>2<<2)|0;if((c|0)==(m|0)){g=z+(b*20|0)+8|0;c=k}else{c=g+(c-d>>2<<2)|0;e=k-c|0;if(!(e>>2)){c=k;d=k}else{Jrb(g|0,c|0,e|0)|0;d=f[(z+(b*20|0)+8|0)>>2]|0;c=d}if((d|0)==(g+(e>>2<<2)|0|0))g=z+(b*20|0)+8|0;else{c=d+(~((d+-4-(g+(e>>2<<2)|0)|0)>>>2)<<2)|0;f[(z+(b*20|0)+8|0)>>2]=c;g=z+(b*20|0)+8|0}}e=f[(z+(b*20|0)+4|0)>>2]|0;c=c-e|0;if((f[(z+(b*20|0)+12|0)>>2]|0)-e>>2>>>0>c>>2>>>0){do if(!(c>>2)){p=0;q=0}else if(c>>2>>>0>1073741823)ud();else{q=Wpb(c)|0;p=q;break}while(0);d=p+(c>>2<<2)|0;if((c|0)>0)Irb(q|0,e|0,c|0)|0;f[(z+(b*20|0)+4|0)>>2]=p;f[g>>2]=d;f[(z+(b*20|0)+12|0)>>2]=d;if(e|0)Zpb(e)}if(f[(z+(b*20|0)|0)>>2]|0){u=A;return}if((f[g>>2]|0)-(f[(z+(b*20|0)+4|0)>>2]|0)>>2>>>0<2){u=A;return}x=Wpb(64)|0;Ara(x);f[(x+52|0)>>2]=0;f[(x+56|0)>>2]=0;f[(x+60|0)>>2]=0;f[(z+(b*20|0)+16|0)>>2]=0;c=f[g>>2]|0;d=f[(z+(b*20|0)+4|0)>>2]|0;do if(!(c-d>>2)){s=d;r=c}else if(c-d>>2>>>0>357913941)ud();else{s=Wpb((c-d>>2)*12|0)|0;f[(x+52|0)>>2]=s;f[(x+56|0)>>2]=s;f[(x+60|0)>>2]=s+((c-d>>2)*12|0);s=f[(z+(b*20|0)+4|0)>>2]|0;r=f[g>>2]|0;break}while(0);w=r-s>>2;c:do if(!w){t=0;g=0;d=0;e=0;c=0;k=0;m=0;o=0}else{r=0;t=0;d=0;e=0;i=0.0;v=0;c=0;g=s;k=0;m=0;o=0;while(1){s=f[g+(v<<2)>>2]|0;a=(f[s+4>>2]|0)+44|0;q=f[a>>2]|0;p=f[q+104>>2]|0;q=Rqa(q+64|0)|0;g=f[a>>2]|0;B=f[g+24>>2]|0;f[(A+60|0)>>2]=B;k=k+B|0;B=f[g+28>>2]|0;f[((A+60|0)+4|0)>>2]=B;m=m+B|0;g=f[g+32>>2]|0;f[((A+60|0)+8|0)>>2]=g;o=o+g|0;g=f[(x+56|0)>>2]|0;if((g|0)==(f[(x+60|0)>>2]|0))f1a(x+52|0,A+60|0);else{f[g>>2]=f[(A+60|0)>>2];f[g+4>>2]=f[(A+60|0)+4>>2];f[g+8>>2]=f[(A+60|0)+8>>2];f[(x+56|0)>>2]=(f[(x+56|0)>>2]|0)+12}r=p+r|0;a=(Qqa((f[a>>2]|0)+64|0)|0)+t|0;d=q+d|0;e=p>>>0<e>>>0?e:p;c=q>>>0>c>>>0?q:c;if((j[(s+200|0)>>1]|0|(h[(s+200|0)+2>>0]|0)<<16)&32768|0)qpa(s);l=+n[(s+152|0)>>2];if(l>i){if(!((j[(s+200|0)>>1]|0|(h[(s+200|0)+2>>0]|0)<<16)&32768))i=l;else{qpa(s);i=+n[(s+152|0)>>2]}f[(z+(b*20|0)+16|0)>>2]=v}g=v+1|0;if((g|0)==(w|0)){t=r;g=a;break c}t=a;v=g;g=f[(z+(b*20|0)+4|0)>>2]|0}}while(0);s=d<<1;p=c<<1;r=x6a()|0;r=r?4:1;a=X(r,e)|0;a=Xpb(a>>>0<p>>>0?p:a)|0;p=f[52834]|0;q=f[52835]|0;f[(A+60|0)>>2]=0;f[((A+60|0)+4|0)>>2]=0;f[(A+56|0)>>2]=0;lSa(hSa()|0,g<<2,A+60|0,A+56|0,64);c=f[(A+60|0)>>2]|0;if(!c)c=0;else c=f[c>>2]|0;I7a(211248,c)|0;c=f[(z+(b*20|0)+4|0)>>2]|0;e=f[(z+(b*20|0)+8|0)>>2]|0;if((c|0)!=(e|0)){d=f[(A+56|0)>>2]|0;do{B=(f[(f[(f[c>>2]|0)+4>>2]|0)+44>>2]|0)+64|0;Vqa(B,d,A+60|0)|0;d=((Qqa(B)|0)<<2)+d|0;c=c+4|0}while((c|0)!=(e|0))}f[(A+48|0)>>2]=0;d=(A+48|0)+4|0;f[d>>2]=0;f[(A+40|0)>>2]=0;if(q1a()|0)y=58;else if(r1a()|0)y=58;else lSa(hSa()|0,X(r,t)|0,A+48|0,A+40|0,64);if((y|0)==58){D5a(A+32|0,34962);c=f[(A+32|0)>>2]|0;B=f[((A+32|0)+4|0)>>2]|0;f[(A+32|0)>>2]=0;f[((A+32|0)+4|0)>>2]=0;f[(A+48|0)>>2]=c;c=f[d>>2]|0;f[d>>2]=B;if(c|0){Ppb(c);c=f[((A+32|0)+4|0)>>2]|0;if(c|0)Ppb(c)}I5a(f[(A+48|0)>>2]|0,X(r,t)|0,0,35044)}B=f[(A+48|0)>>2]|0;f[A+104>>2]=b;f[A+528>>2]=z;f[A+568>>2]=x;f[A+616>>2]=s;f[A+640>>2]=r;f[A+656>>2]=a;f[A+664>>2]=p;f[A+672>>2]=q;f[A+904>>2]=d;f[A+944>>2]=B;f[A+1e3>>2]=k;f[A+1016>>2]=m;f[A+1264>>2]=o;f[A+1704>>2]=0;f[A+1708>>2]=0;i3a(A);G=f[A+1704>>2]|0;D=f[A+1708>>2]|0;H=+n[A+1708>>2];f[A+1704>>2]=0;f[A+1708>>2]=0;if((G|0)==5)return}function e1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=a+20|0;g=f[e>>2]|0;if(!g){d=a+8|0;b=f[d>>2]|0;e=a+4|0;if((b|0)!=(f[e>>2]|0)){do{Zpb(f[b+-4>>2]|0);b=(f[d>>2]|0)+-4|0;f[d>>2]=b;c=b}while((f[e>>2]|0)!=(c|0));b=c}f[a+16>>2]=0;h=b;g=b}else{b=a+16|0;d=f[b>>2]|0;c=a+4|0;if(d>>>0>255){Zpb(f[f[c>>2]>>2]|0);h=(f[c>>2]|0)+4|0;f[c>>2]=h;d=(f[b>>2]|0)+-256|0;f[b>>2]=d;i=c;c=f[e>>2]|0}else{i=c;h=f[c>>2]|0;c=g}b=a+8|0;g=f[b>>2]|0;m=g-h|0;if((((m|0)==0?0:(m<<6)+-1|0)-(c+d)|0)>>>0>255){Zpb(f[g+-4>>2]|0);g=(f[b>>2]|0)+-4|0;f[b>>2]=g;d=b;e=i;h=f[i>>2]|0}else{d=b;e=i}}m=a+12|0;l=f[a>>2]|0;c=g-h|0;i=c>>2;j=h;k=g;b=l;if((f[m>>2]|0)-l>>2>>>0<=i>>>0)return;do if(!i)n=0;else if(i>>>0>1073741823)ud();else{n=Wpb(c)|0;break}while(0);l=n;i=n+(i<<2)|0;if((j|0)==(k|0))c=h;else{g=n;c=l;b=j;while(1){f[g>>2]=f[b>>2];c=c+4|0;b=b+4|0;if((b|0)==(k|0))break;else g=c}c=f[e>>2]|0;g=f[d>>2]|0;b=f[a>>2]|0}f[a>>2]=l;f[e>>2]=l;f[d>>2]=n+(g-c>>2<<2);f[m>>2]=i;if(!b)return;Zpb(b);return}function f1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4|0;i=f[a>>2]|0;j=(f[g>>2]|0)-i|0;d=(j|0)/12|0;c=d+1|0;if(c>>>0>357913941)fob(a);k=a+8|0;l=((f[k>>2]|0)-i|0)/12|0;e=l<<1;e=l>>>0<178956970?(e>>>0<c>>>0?c:e):357913941;do if(!e)h=0;else if(e>>>0>357913941)ud();else{h=Wpb(e*12|0)|0;break}while(0);d=h+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((j|0)/-12|0)*12|0)|0;if((j|0)>0)Irb(c|0,i|0,j|0)|0;f[a>>2]=c;f[g>>2]=d+12;f[k>>2]=h+(e*12|0);if(!i)return;Zpb(i);return}function g1a(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;g=f[n>>2]|0;c=f[a>>2]|0;k=(g-c|0)/28|0;e=k+1|0;i=c;if(e>>>0>153391689)fob(a);m=a+8|0;l=((f[m>>2]|0)-c|0)/28|0;h=l<<1;h=l>>>0<76695844?(h>>>0<e>>>0?e:h):153391689;do if(!h)j=0;else if(h>>>0>153391689)ud();else{j=Wpb(h*28|0)|0;break}while(0);c=j+(k*28|0)|0;e=c;l=j+(h*28|0)|0;f[c>>2]=f[b>>2];h=f[b+4>>2]|0;f[j+(k*28|0)+4>>2]=h;if(!h)h=i;else{Npb(h);g=f[n>>2]|0;h=f[a>>2]|0}i=j+(k*28|0)+8|0;k=b+8|0;f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];f[i+12>>2]=f[k+12>>2];d[i+16>>1]=d[k+16>>1]|0;i=c+28|0;if((g|0)==(h|0)){h=g;c=g}else{do{j=g;g=g+-28|0;f[c+-28>>2]=f[g>>2];k=j+-24|0;f[c+-24>>2]=f[k>>2];f[g>>2]=0;f[k>>2]=0;k=c+-20|0;j=j+-20|0;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];d[k+16>>1]=d[j+16>>1]|0;c=e+-28|0;e=c}while((g|0)!=(h|0));h=f[a>>2]|0;c=f[n>>2]|0}f[a>>2]=e;f[n>>2]=i;f[m>>2]=l;g=h;if((c|0)!=(g|0))do{e=f[c+-24>>2]|0;c=c+-28|0;if(e|0)Ppb(e)}while((c|0)!=(g|0));if(!h)return;Zpb(h);return}function h1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{Jrb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)ud();g=Wpb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){Zpb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function i1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function j1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0<k>>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){Jrb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)ud();i=Wpb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){Zpb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function k1a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){l1a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;l1a(a,b);return}function l1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();q=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=q;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;p=b+-1|0;q=(p&b|0)==0;if(q)c=c&p;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){o=d;b:while(1){c:do if(q){d=e;while(1){n=f[d+4>>2]&p;if((n|0)==(c|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){c=n;break b}j=d+12|0;k=d+16|0;l=d+20|0;m=d+24|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;if((f[l>>2]|0)!=(f[h+20>>2]|0))break d;if((f[m>>2]|0)!=(f[h+24>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{r=h;h=e;e=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=45;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)n=e;else n=(e>>>0)%(b>>>0)|0;if((n|0)==(c|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){c=n;break b}i=d+12|0;j=d+16|0;k=d+20|0;l=d+24|0;h=f[d>>2]|0;e:do if(!h)e=d;else{m=f[d+8>>2]|0;e=d;while(1){if((m|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;if((f[k>>2]|0)!=(f[h+20>>2]|0))break e;if((f[l>>2]|0)!=(f[h+24>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{r=h;h=e;e=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=45;break a}}}while(0);e=f[d>>2]|0;if(!e){c=45;break a}else{g=d;o=d}}f[e>>2]=o;e=f[d>>2]|0;if(!e){c=45;break}else g=d}if((c|0)==45)return}function m1a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;d=u;u=u+48|0;p=d+36|0;o=d+24|0;s=d+12|0;e=d;g=f[c+12>>2]|0;k=+n[b+44>>2];h=+n[b+56>>2];n[s>>2]=k-h;l=+n[b+48>>2];i=+n[b+60>>2];n[s+4>>2]=l-i;m=+n[b+52>>2];j=+n[b+64>>2];n[s+8>>2]=m-j;n[e>>2]=k+h;n[e+4>>2]=l+i;n[e+8>>2]=m+j;opa(s,e,g,p,o);e=Wpb(72)|0;s=f[b+8>>2]|0;q=f[b+40>>2]|0;v=b;t=f[v+4>>2]|0;r=e;f[r>>2]=f[v>>2];f[r+4>>2]=t;f[e+8>>2]=s;s=e+12|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;s=Wpb(40)|0;f[e+24>>2]=s;r=s+40|0;f[e+32>>2]=r;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;s=s+20|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[e+28>>2]=r;f[e+36>>2]=0;f[e+40>>2]=q;j=+n[p>>2];m=j*.5+ +n[o>>2]*.5;n[e+44>>2]=m;i=+n[p+4>>2];l=i*.5+ +n[o+4>>2]*.5;n[e+48>>2]=l;h=+n[p+8>>2];k=h*.5+ +n[o+8>>2]*.5;n[e+52>>2]=k;j=m-j;n[e+56>>2]=j;i=l-i;n[e+60>>2]=i;h=k-h;n[e+64>>2]=h;n[e+68>>2]=j*j+(i*i+h*h);f[a>>2]=e;n1a(b,c,g,e);u=d;return}function n1a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0,J=0;A=u;u=u+48|0;v=A+36|0;w=A+24|0;x=A+12|0;y=A;z=d+12|0;e=a+12|0;p=a+16|0;WHa(z,((f[p>>2]|0)-(f[e>>2]|0)|0)/72|0);e=f[e>>2]|0;p=f[p>>2]|0;if((e|0)==(p|0)){u=A;return}q=x+4|0;r=x+8|0;s=y+4|0;t=y+8|0;m=a+8|0;o=d+16|0;h=d+20|0;i=v+4|0;j=w+4|0;k=v+8|0;l=w+8|0;do{G=+n[e+44>>2];F=+n[e+56>>2];n[x>>2]=G-F;E=+n[e+48>>2];D=+n[e+60>>2];n[q>>2]=E-D;C=+n[e+52>>2];B=+n[e+64>>2];n[r>>2]=C-B;n[y>>2]=G+F;n[s>>2]=E+D;n[t>>2]=C+B;opa(x,y,c,v,w);a=f[m>>2]|0;d=e+40|0;g=f[o>>2]|0;if(g>>>0<(f[h>>2]|0)>>>0){d=f[d>>2]|0;J=e;I=f[J+4>>2]|0;H=g;f[H>>2]=f[J>>2];f[H+4>>2]=I;f[g+8>>2]=a;H=g+12|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;H=Wpb(40)|0;f[g+24>>2]=H;a=H+40|0;f[g+32>>2]=a;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;f[H+12>>2]=0;H=H+20|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;f[H+12>>2]=0;f[g+28>>2]=a;f[g+36>>2]=0;f[g+40>>2]=d;E=+n[v>>2];B=E*.5+ +n[w>>2]*.5;n[g+44>>2]=B;F=+n[i>>2];C=F*.5+ +n[j>>2]*.5;n[g+48>>2]=C;G=+n[k>>2];D=G*.5+ +n[l>>2]*.5;n[g+52>>2]=D;E=B-E;n[g+56>>2]=E;F=C-F;n[g+60>>2]=F;G=D-G;n[g+64>>2]=G;n[g+68>>2]=E*E+(F*F+G*G);a=(f[o>>2]|0)+72|0;f[o>>2]=a}else{o1a(z,a,e,v,w,d);a=f[o>>2]|0}n1a(e,b,c,a+-72|0);e=e+72|0}while((e|0)!=(p|0));u=A;return}function o1a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0;o=u;u=u+32|0;m=o;i=f[a>>2]|0;j=((f[a+4>>2]|0)-i|0)/72|0;h=j+1|0;if(h>>>0>59652323)fob(a);i=((f[a+8>>2]|0)-i|0)/72|0;l=i<<1;h=i>>>0<29826161?(l>>>0<h>>>0?h:l):59652323;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!h)k=0;else if(h>>>0>59652323)ud();else{k=Wpb(h*72|0)|0;break}while(0);f[m>>2]=k;p=k+(j*72|0)|0;l=m+8|0;i=m+4|0;f[i>>2]=p;f[m+12>>2]=k+(h*72|0);h=f[g>>2]|0;x=c;g=f[x+4>>2]|0;c=p;f[c>>2]=f[x>>2];f[c+4>>2]=g;f[k+(j*72|0)+8>>2]=b;c=k+(j*72|0)+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;c=Wpb(40)|0;f[k+(j*72|0)+24>>2]=c;g=c+40|0;f[k+(j*72|0)+32>>2]=g;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;c=c+20|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[k+(j*72|0)+28>>2]=g;f[k+(j*72|0)+36>>2]=0;f[k+(j*72|0)+40>>2]=h;s=+n[d>>2];w=s*.5+ +n[e>>2]*.5;n[k+(j*72|0)+44>>2]=w;r=+n[d+4>>2];v=r*.5+ +n[e+4>>2]*.5;n[k+(j*72|0)+48>>2]=v;q=+n[d+8>>2];t=q*.5+ +n[e+8>>2]*.5;n[k+(j*72|0)+52>>2]=t;s=w-s;n[k+(j*72|0)+56>>2]=s;r=v-r;n[k+(j*72|0)+60>>2]=r;q=t-q;n[k+(j*72|0)+64>>2]=q;n[k+(j*72|0)+68>>2]=s*s+(r*r+q*q);f[l>>2]=p+72;p1a(a,m);i=f[i>>2]|0;h=f[l>>2]|0;if((h|0)!=(i|0))do{x=h+-72|0;f[l>>2]=x;Jla(x);h=f[l>>2]|0}while((h|0)!=(i|0));h=f[m>>2]|0;if(!h){u=o;return}Zpb(h);u=o;return}function p1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;g=a+4|0;c=f[g>>2]|0;h=b+4|0;if((c|0)==(e|0)){d=h;c=a;h=f[h>>2]|0;f[c>>2]=h;f[d>>2]=e;e=b+8|0;h=f[g>>2]|0;c=f[e>>2]|0;f[g>>2]=c;f[e>>2]=h;e=a+8|0;h=b+12|0;g=f[e>>2]|0;a=f[h>>2]|0;f[e>>2]=a;f[h>>2]=g;h=f[d>>2]|0;f[b>>2]=h;return}d=f[h>>2]|0;do{i=c;c=c+-72|0;l=c;j=f[l+4>>2]|0;k=d+-72|0;f[k>>2]=f[l>>2];f[k+4>>2]=j;f[d+-64>>2]=f[i+-64>>2];k=d+-60|0;j=i+-60|0;f[k>>2]=0;l=d+-56|0;f[l>>2]=0;f[d+-52>>2]=0;f[k>>2]=f[j>>2];k=i+-56|0;f[l>>2]=f[k>>2];l=i+-52|0;f[d+-52>>2]=f[l>>2];f[l>>2]=0;f[k>>2]=0;f[j>>2]=0;j=d+-48|0;k=i+-48|0;f[j>>2]=0;l=d+-44|0;f[l>>2]=0;f[d+-40>>2]=0;f[j>>2]=f[k>>2];j=i+-44|0;f[l>>2]=f[j>>2];l=i+-40|0;f[d+-40>>2]=f[l>>2];f[l>>2]=0;f[j>>2]=0;f[k>>2]=0;k=i+-36|0;j=f[k>>2]|0;f[k>>2]=0;f[d+-36>>2]=j;f[d+-32>>2]=f[i+-32>>2];f[d+-28>>2]=f[i+-28>>2];f[d+-24>>2]=f[i+-24>>2];f[d+-20>>2]=f[i+-20>>2];f[d+-16>>2]=f[i+-16>>2];f[d+-12>>2]=f[i+-12>>2];f[d+-8>>2]=f[i+-8>>2];f[d+-4>>2]=f[i+-4>>2];d=(f[h>>2]|0)+-72|0;f[h>>2]=d}while((c|0)!=(e|0));l=h;k=a;j=d;i=f[a>>2]|0;f[k>>2]=j;f[l>>2]=i;i=b+8|0;k=f[g>>2]|0;j=f[i>>2]|0;f[g>>2]=j;f[i>>2]=k;i=a+8|0;k=b+12|0;j=f[i>>2]|0;h=f[k>>2]|0;f[i>>2]=h;f[k>>2]=j;l=f[l>>2]|0;f[b>>2]=l;return}function q1a(){var a=0,c=0,d=0;if(!(b[209792]|0))if(rrb(209792)|0){a=fd(192811)|0;if((a|0)==1)c=0;else{d=nd(192818)|0;c=id(a|0,d|0)|0;ed(d|0);ed(c|0);c=(c|0)==3&1}ed(a|0);b[215193]=c}return (b[215193]|0)!=0|0}function r1a(){var a=0,c=0,d=0;if(!(b[209800]|0))if(rrb(209800)|0){a=fd(192811)|0;if((a|0)==1)c=0;else{d=nd(192825)|0;c=id(a|0,d|0)|0;ed(d|0);ed(c|0);c=(c|0)==3&1}ed(a|0);b[215194]=c}return (b[215194]|0)!=0|0}function s1a(){var a=0,c=0,d=0;if(!(b[209808]|0))if(rrb(209808)|0){a=fd(192811)|0;if((a|0)==1)c=0;else{d=nd(192830)|0;c=id(a|0,d|0)|0;ed(d|0);ed(c|0);c=(c|0)==3&1}ed(a|0);b[215195]=c}return (b[215195]|0)!=0|0}function t1a(){var a=0,c=0,d=0;if(!(b[209816]|0))if(rrb(209816)|0){a=fd(192811)|0;if((a|0)==1)c=0;else{d=nd(192838)|0;c=id(a|0,d|0)|0;ed(d|0);ed(c|0);c=(c|0)==3&1}ed(a|0);b[215196]=c}return (b[215196]|0)!=0|0}function u1a(){var a=0,c=0,d=0;if(!(b[209824]|0))if(rrb(209824)|0){a=fd(192811)|0;if((a|0)==1)c=0;else{d=nd(192845)|0;c=id(a|0,d|0)|0;ed(d|0);ed(c|0);c=(c|0)==3&1}ed(a|0);b[215197]=c}return (b[215197]|0)!=0|0}function v1a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0;n=u;u=u+16|0;d=n+12|0;k=n;if(!(b[209832]|0))if(rrb(209832)|0){m=fd(192811)|0;if((m|0)==1)d=-1;else{h=nd(192851)|0;j=id(m|0,h|0)|0;ed(h|0);o=+bd(j|0,5288,d|0);h=f[d>>2]|0;i=~~o>>>0;g=i+4|0;i=f[i>>2]|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;if(i>>>0>4294967279)aqb(k);if(i>>>0<11){d=k+11|0;b[d>>0]=i;if(!i)e=k;else{e=k;l=9}}else{d=i+16&-16;e=Wpb(d)|0;f[k>>2]=e;f[k+8>>2]=d|-2147483648;f[k+4>>2]=i;d=k+11|0;l=9}if((l|0)==9)Irb(e|0,g|0,i|0)|0;b[e+i>>0]=0;qd(h|0);ed(j|0);if((b[d>>0]|0)<0){l=f[k>>2]|0;d=adb(l)|0;Zpb(l)}else d=adb(k)|0}ed(m|0);f[52801]=d}d=f[52801]|0;if((a|0)>0&(d|0)<(a|0)){u=n;return 0}else{u=n;return (c|0)<1|(d|0)<(c|0)|0}return 0}function w1a(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;d[a+32>>1]=0;return}function x1a(a,c){a=a|0;c=c|0;b[a+32>>0]=c;return}function y1a(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)Npb(d);f[a+12>>2]=c;c=a+16|0;b=f[c>>2]|0;f[c>>2]=d;if(!b)return;Ppb(b);return}function z1a(a,c){a=a|0;c=c|0;if(c<<24>>24==2)return;b[a+33>>0]=c;return}function A1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[b>>2]|0;if(!d)return;e=a+4|0;c=f[e>>2]|0;if((c|0)==(f[a+8>>2]|0))B1a(a,b);else{f[c>>2]=d;b=f[b+4>>2]|0;f[c+4>>2]=b;if(b){Npb(b);c=f[e>>2]|0}f[e>>2]=c+8}f[a+20>>2]=0;e=a+24|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ppb(c);f[a+28>>2]=0;return}function B1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+4|0;c=f[m>>2]|0;d=f[a>>2]|0;i=c-d>>3;e=i+1|0;j=d;if(e>>>0>536870911)fob(a);l=a+8|0;k=(f[l>>2]|0)-d|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<e>>>0?e:g):536870911;do if(!g)h=0;else if(g>>>0>536870911)ud();else{h=Wpb(g<<3)|0;break}while(0);d=h+(i<<3)|0;e=d;k=h+(g<<3)|0;f[d>>2]=f[b>>2];g=f[b+4>>2]|0;f[h+(i<<3)+4>>2]=g;if(!g)g=j;else{Npb(g);c=f[m>>2]|0;g=f[a>>2]|0}b=d+8|0;if((c|0)!=(g|0)){do{j=c;c=c+-8|0;f[d+-8>>2]=f[c>>2];j=j+-4|0;f[d+-4>>2]=f[j>>2];f[c>>2]=0;f[j>>2]=0;d=e+-8|0;e=d}while((c|0)!=(g|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=b;f[l>>2]=k;e=g;if((c|0)!=(e|0))do{d=f[c+-4>>2]|0;c=c+-8|0;if(d|0)Ppb(d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function C1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=o;m=a+4|0;l=f[m>>2]|0;n=f[a>>2]|0;b=n;j=l;if((l-n|0)==8){g=f[b>>2]|0;c=g+40|0;d=f[c>>2]|0;e=g+44|0;b=f[e>>2]|0;if((d|0)==(b|0)){D1a(g);d=f[c>>2]|0;b=f[e>>2]|0;e=f[f[a>>2]>>2]|0}else e=g;f[a+28>>2]=(b-d|0)/12|0;b=e+32|0;c=f[b>>2]|0;if(!c){E1a(e);c=f[b>>2]|0}d=f[e+36>>2]|0;if(d|0)Npb(d);f[a+20>>2]=c;a=a+24|0;b=f[a>>2]|0;f[a>>2]=d;if(!b){u=o;return}Ppb(b);u=o;return}l=a+28|0;f[l>>2]=0;if((b|0)==(j|0)){u=o;return}else c=0;do{e=f[b>>2]|0;g=e+40|0;h=f[g>>2]|0;i=e+44|0;d=f[i>>2]|0;if((h|0)==(d|0)){D1a(e);h=f[g>>2]|0;d=f[i>>2]|0;c=f[l>>2]|0}c=((d-h|0)/12|0)+c|0;f[l>>2]=c;b=b+8|0}while((b|0)!=(j|0));if(!c){u=o;return}D5a(k,34962);n=a+20|0;b=f[k>>2]|0;c=k+4|0;j=f[c>>2]|0;f[k>>2]=0;f[c>>2]=0;f[n>>2]=b;k=a+24|0;b=f[k>>2]|0;f[k>>2]=j;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}k=f[52834]|0;I7a(211248,f[f[n>>2]>>2]|0)|0;I5a(f[n>>2]|0,(f[l>>2]|0)*12|0,0,35044);b=f[a>>2]|0;j=f[m>>2]|0;if((b|0)!=(j|0)){i=0;while(1){e=f[b>>2]|0;g=e+40|0;d=f[g>>2]|0;h=e+44|0;c=f[h>>2]|0;if((d|0)==(c|0)){D1a(e);d=f[g>>2]|0;c=f[h>>2]|0}g=c-d|0;if((g|0)>0){h=f[n>>2]|0;d=f[b>>2]|0;e=d+40|0;c=f[e>>2]|0;if((c|0)==(f[d+44>>2]|0)){D1a(d);c=f[e>>2]|0}J5a(h,i,g,c)}b=b+8|0;if((b|0)==(j|0))break;else i=g+i|0}}I7a(211248,k)|0;u=o;return}function D1a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0;O=u;u=u+64|0;M=O+48|0;H=O+36|0;I=O;F=a+4|0;if((f[a>>2]|0)==(f[F>>2]|0)){u=O;return}c=f[a+12>>2]|0;h=f[a+16>>2]|0;if((c|0)==(h|0)){u=O;return}G=a+52|0;if(b[G>>0]&1){u=O;return}f[M>>2]=0;N=M+4|0;f[N>>2]=0;f[M+8>>2]=0;f[H>>2]=0;i=M+8|0;e=0;g=0;while(1){d=f[c>>2]|0;f[I>>2]=d;if((e|0)==(g|0))BD(M,I);else{f[e>>2]=d;f[N>>2]=e+4}if(f[I>>2]|0){d=0;do{e=f[N>>2]|0;if((e|0)==(f[i>>2]|0))BD(M,H);else{f[e>>2]=f[H>>2];f[N>>2]=e+4}d=d+1|0;f[H>>2]=(f[H>>2]|0)+1}while(d>>>0<(f[I>>2]|0)>>>0)}c=c+4|0;if((c|0)==(h|0))break;e=f[N>>2]|0;g=f[i>>2]|0}d=f[M>>2]|0;r=f[d>>2]|0;E=(f[N>>2]|0)-d>>2;s=I+24|0;t=I+12|0;v=I+28|0;w=I+16|0;x=I+32|0;y=I+20|0;z=I+4|0;A=I+8|0;B=H+4|0;C=H+8|0;D=I+12|0;c=0;g=0;e=1;a:while(1){b:do if(g>>>0<r>>>0){j=I+(c*12|0)|0;k=I+(c*12|0)+4|0;q=I+(c*12|0)+8|0;if(!c){if(e>>>0>=E>>>0){J=37;break a}h=f[d+(e<<2)>>2]|0;P=f[a>>2]|0;i=P;if(h>>>0>=(((f[F>>2]|0)-P|0)/12|0)>>>0){J=37;break a}f[j>>2]=f[i+(h*12|0)>>2];f[k>>2]=f[i+(h*12|0)+4>>2];f[q>>2]=f[i+(h*12|0)+8>>2]}else{c:while(1){if(e>>>0>=E>>>0){J=37;break a}h=f[d+(e<<2)>>2]|0;P=f[a>>2]|0;i=P;if(h>>>0>=(((f[F>>2]|0)-P|0)/12|0)>>>0){J=37;break a}f[j>>2]=f[i+(h*12|0)>>2];f[k>>2]=f[i+(h*12|0)+4>>2];f[q>>2]=f[i+(h*12|0)+8>>2];switch(c|0){case 1:break c;case 2:{o=+n[s>>2];p=+n[t>>2];if(o==p){m=+n[v>>2];l=+n[w>>2];if(m==l)if(+n[x>>2]==+n[y>>2]){J=37;break a}}else{l=+n[w>>2];m=+n[v>>2]}V=p-+n[I>>2];U=l-+n[z>>2];Q=+n[y>>2];T=Q-+n[A>>2];S=o-p;R=m-l;Q=+n[x>>2]-Q;l=U*Q-T*R;m=T*S-V*Q;o=V*R-U*S;n[H>>2]=l;n[B>>2]=m;n[C>>2]=o;p=l*l+(o*o+m*m);if(p/((V*V+(U*U+T*T))*(S*S+(R*R+Q*Q)))>=9.999999747378752e-05){J=32;break a}break}default:{}}g=g+1|0;e=e+1|0;if(g>>>0>=r>>>0){J=35;break b}}if(+n[D>>2]==+n[I>>2])if(+n[w>>2]==+n[z>>2])if(+n[y>>2]==+n[A>>2]){J=37;break a}}c=c+1|0}else J=35;while(0);if((J|0)==35){J=0;c=c+1|0;if(c>>>0>=3){J=37;break}}g=g+1|0;e=e+1|0}if((J|0)==32){V=+L(+p);n[H>>2]=l/V;n[B>>2]=m/V;n[C>>2]=o/V;k=a+40|0;f[I>>2]=k;if(MMa(f[a>>2]|0,d,E,H,3,I)|0){i=a+48|0;j=f[k>>2]|0;h=a+44|0;d=f[h>>2]|0;c=d-j|0;e=(c|0)/12|0;g=j;if((((f[i>>2]|0)-j|0)/12|0)>>>0>e>>>0){do if(!c)K=0;else if(e>>>0>357913941)ud();else{K=Wpb(c)|0;break}while(0);c=K+(e*12|0)|0;e=c;if((d|0)==(g|0))c=e;else do{P=c;c=c+-12|0;K=d;d=d+-12|0;f[c>>2]=f[d>>2];f[P+-8>>2]=f[K+-8>>2];f[P+-4>>2]=f[K+-4>>2]}while((d|0)!=(g|0));f[k>>2]=c;f[h>>2]=e;f[i>>2]=e;if(j|0)Zpb(j)}}else{b[G>>0]=b[G>>0]|1;c=f[k>>2]|0;f[k>>2]=0;f[a+44>>2]=0;f[a+48>>2]=0;if(c|0)Zpb(c)}d=f[M>>2]|0}else if((J|0)==37)b[G>>0]=b[G>>0]|1;if(d|0){c=f[N>>2]|0;if((c|0)!=(d|0))f[N>>2]=c+(~((c+-4-d|0)>>>2)<<2);Zpb(d)}u=O;return}function E1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;b=h;d=a+40|0;e=a+44|0;if((f[d>>2]|0)==(f[e>>2]|0))D1a(a);D5a(b,34962);g=a+32|0;j=f[b>>2]|0;c=b+4|0;i=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[g>>2]=j;b=a+36|0;a=f[b>>2]|0;f[b>>2]=i;if(a|0){Ppb(a);a=f[c>>2]|0;if(a|0)Ppb(a)}j=f[d>>2]|0;I5a(f[g>>2]|0,(f[e>>2]|0)-j|0,j,35044);u=h;return}function F1a(a,b,c,d,e,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;b=f[a>>2]|0;g=b+4|0;h=f[g>>2]|0;l=f[b+8>>2]|0;if((h|0)==(l|0)){G1a(b,c);b=f[a>>2]|0;g=f[b+4>>2]|0;l=f[b+8>>2]|0}else{f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];c=h+12|0;f[g>>2]=c;g=c}if((g|0)==(l|0)){G1a(b,d);b=f[a>>2]|0;g=f[b+4>>2]|0;l=f[b+8>>2]|0}else{f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];g=g+12|0;f[b+4>>2]=g}if((g|0)==(l|0)){G1a(b,e);return}else{f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[b+4>>2]=g+12;return}}function G1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;f[c>>2]=f[b>>2];f[g+(h*12|0)+4>>2]=f[b+4>>2];f[g+(h*12|0)+8>>2]=f[b+8>>2];b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function H1a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=Wpb(84)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=33564;d=c+12|0;e=c+52|0;g=d;h=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e>>2]=-1;h=c+56|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;b[c+80>>0]=-1;f[a>>2]=d;f[a+4>>2]=c;return}function I1a(a){a=a|0;var b=0;f[a>>2]=33564;b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+60>>2]|0;if(b|0)Ppb(b);M1a(a+36|0);M1a(a+24|0);M1a(a+12|0);Hpb(a);return}function J1a(a){a=a|0;var b=0;f[a>>2]=33564;b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+60>>2]|0;if(b|0)Ppb(b);M1a(a+36|0);M1a(a+24|0);M1a(a+12|0);Hpb(a);Zpb(a);return}function K1a(a){a=a|0;var b=0;b=f[a+68>>2]|0;if(b|0)Ppb(b);b=f[a+60>>2]|0;if(b|0)Ppb(b);M1a(a+36|0);M1a(a+24|0);M1a(a+12|0);return}function L1a(a){a=a|0;Zpb(a);return}function M1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){d=c;do{h=d+-36|0;f[i>>2]=h;c=f[d+-12>>2]|0;if(c|0)Ppb(c);c=f[d+-20>>2]|0;if(c|0)Ppb(c);c=f[h>>2]|0;if(c|0){g=d+-32|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{e=d+-8|0;f[g>>2]=e;d=f[d+-4>>2]|0;if(!d)d=e;else{Ppb(d);d=f[g>>2]|0}}while((d|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}d=f[i>>2]|0}while((d|0)!=(b|0));b=f[a>>2]|0}Zpb(b);return}function N1a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;a:do switch(b[c+32>>0]|0){case 1:{d=b[c+33>>0]|0;e=d&255;g=a+(e*12|0)+4|0;h=f[g>>2]|0;if(h>>>0<(f[a+(e*12|0)+8>>2]|0)>>>0){f[h>>2]=0;i=h+4|0;f[i>>2]=0;f[h+8>>2]=0;f[h>>2]=f[c>>2];e=c+4|0;f[i>>2]=f[e>>2];i=c+8|0;f[h+8>>2]=f[i>>2];f[i>>2]=0;f[e>>2]=0;f[c>>2]=0;e=c+12|0;f[h+12>>2]=f[e>>2];i=c+16|0;f[h+16>>2]=f[i>>2];f[e>>2]=0;f[i>>2]=0;i=c+20|0;f[h+20>>2]=f[i>>2];e=c+24|0;f[h+24>>2]=f[e>>2];f[i>>2]=0;f[e>>2]=0;f[h+28>>2]=f[c+28>>2];b[h+32>>0]=1;b[h+33>>0]=d;f[g>>2]=(f[g>>2]|0)+36;break a}else{O1a(a+(e*12|0)|0,c);break a}}case 0:{d=a+28|0;e=f[d>>2]|0;if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=0;h=e+4|0;f[h>>2]=0;f[e+8>>2]=0;f[e>>2]=f[c>>2];i=c+4|0;f[h>>2]=f[i>>2];h=c+8|0;f[e+8>>2]=f[h>>2];f[h>>2]=0;f[i>>2]=0;f[c>>2]=0;i=c+12|0;f[e+12>>2]=f[i>>2];h=c+16|0;f[e+16>>2]=f[h>>2];f[i>>2]=0;f[h>>2]=0;h=c+20|0;f[e+20>>2]=f[h>>2];i=c+24|0;f[e+24>>2]=f[i>>2];f[h>>2]=0;f[i>>2]=0;f[e+28>>2]=f[c+28>>2];b[e+32>>0]=0;b[e+33>>0]=b[c+33>>0]|0;f[d>>2]=(f[d>>2]|0)+36;break a}else{O1a(a+24|0,c);break a}}default:{}}while(0);e=a+68|0;if(b[e>>0]&1)return;f[a+44>>2]=0;i=a+48|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0)Ppb(d);f[a+60>>2]=0;f[a+52>>2]=0;i=a+56|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0)Ppb(d);f[a+64>>2]=0;b[e>>0]=b[e>>0]|1;return}function O1a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;m=o;n=a+4|0;d=f[a>>2]|0;h=((f[n>>2]|0)-d|0)/36|0;e=h+1|0;if(e>>>0>119304647)fob(a);l=a+8|0;k=((f[l>>2]|0)-d|0)/36|0;d=k<<1;d=k>>>0<59652323?(d>>>0<e>>>0?e:d):119304647;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(!d)g=0;else if(d>>>0>119304647)ud();else{g=Wpb(d*36|0)|0;break}while(0);f[m>>2]=g;e=g+(h*36|0)|0;j=m+8|0;k=m+4|0;f[k>>2]=e;p=g+(d*36|0)|0;i=m+12|0;f[i>>2]=p;f[g+(h*36|0)+8>>2]=0;f[e>>2]=f[c>>2];d=c+4|0;f[g+(h*36|0)+4>>2]=f[d>>2];q=c+8|0;f[g+(h*36|0)+8>>2]=f[q>>2];f[q>>2]=0;f[d>>2]=0;f[c>>2]=0;d=c+12|0;f[g+(h*36|0)+12>>2]=f[d>>2];q=c+16|0;f[g+(h*36|0)+16>>2]=f[q>>2];f[d>>2]=0;f[q>>2]=0;q=c+20|0;f[g+(h*36|0)+20>>2]=f[q>>2];d=c+24|0;f[g+(h*36|0)+24>>2]=f[d>>2];f[q>>2]=0;f[d>>2]=0;f[g+(h*36|0)+28>>2]=f[c+28>>2];b[g+(h*36|0)+32>>0]=b[c+32>>0]|0;b[g+(h*36|0)+33>>0]=b[c+33>>0]|0;g=e+36|0;f[j>>2]=g;c=f[a>>2]|0;d=f[n>>2]|0;h=p;if((d|0)==(c|0)){q=c;p=d;c=e;f[a>>2]=c;f[k>>2]=q;f[n>>2]=g;f[j>>2]=p;p=f[l>>2]|0;f[l>>2]=h;f[i>>2]=p;f[m>>2]=q;P1a(m);u=o;return}do{e=e+-36|0;d=d+-36|0;Isa(e,d)}while((d|0)!=(c|0));f[k>>2]=e;c=e;q=f[a>>2]|0;p=f[n>>2]|0;f[a>>2]=c;f[k>>2]=q;f[n>>2]=g;f[j>>2]=p;p=f[l>>2]|0;f[l>>2]=h;f[i>>2]=p;f[m>>2]=q;P1a(m);u=o;return}function P1a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=f[a+4>>2]|0;i=a+8|0;b=f[i>>2]|0;if((b|0)!=(h|0)){c=b;do{g=c+-36|0;f[i>>2]=g;b=f[c+-12>>2]|0;if(b|0)Ppb(b);b=f[c+-20>>2]|0;if(b|0)Ppb(b);b=f[g>>2]|0;if(b|0){e=c+-32|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{d=c+-8|0;f[e>>2]=d;c=f[c+-4>>2]|0;if(!c)c=d;else{Ppb(c);c=f[e>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Zpb(b)}c=f[i>>2]|0}while((c|0)!=(h|0))}b=f[a>>2]|0;if(!b)return;Zpb(b);return}function Q1a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0;W=u;u=u+48|0;K=W+32|0;N=W+24|0;O=W;P=K+4|0;Q=K+8|0;R=N+4|0;S=K+8|0;T=O+4|0;U=O+8|0;L=O+12|0;M=O+16|0;J=0;a:while(1){m=a+(J*12|0)|0;p=a+(J*12|0)+4|0;if((((f[p>>2]|0)-(f[m>>2]|0)|0)/36|0)>>>0>=2){f[K>>2]=0;f[P>>2]=0;f[Q>>2]=0;D5a(N,34962);I=f[52834]|0;I7a(211248,f[f[N>>2]>>2]|0)|0;c=f[m>>2]|0;o=f[p>>2]|0;if((c|0)!=(o|0)){d=0;while(1){e=f[c>>2]|0;l=f[c+4>>2]|0;if((e|0)==(l|0))H=d;else{do{i=f[e>>2]|0;j=i+40|0;h=f[j>>2]|0;k=i+44|0;g=f[k>>2]|0;if((h|0)==(g|0)){D1a(i);h=f[j>>2]|0;g=f[k>>2]|0}d=((g-h|0)/12|0)+d|0;e=e+8|0}while((e|0)!=(l|0));H=d}c=c+36|0;if((c|0)==(o|0))break;else d=H}if(H|0){I5a(f[N>>2]|0,H*12|0,0,35044);d=f[m>>2]|0;G=f[p>>2]|0;if((d|0)!=(G|0)){c=0;do{e=d+12|0;g=f[e>>2]|0;if(!g)V=20;else{n[O>>2]=9.999999747378752e-06;if(RAa(g,O)|0)V=20;else{C=f[e>>2]|0;e=f[d>>2]|0;D=f[d+4>>2]|0;if((e|0)!=(D|0)){E=C+16|0;F=C+32|0;m=C+4|0;o=C+20|0;p=C+36|0;r=C+8|0;s=C+24|0;t=C+40|0;v=C+12|0;w=C+28|0;x=C+44|0;y=C+48|0;z=C+52|0;A=C+56|0;B=C+60|0;do{k=f[K>>2]|0;g=f[P>>2]|0;l=k;if((g|0)!=(k|0))f[P>>2]=g+(~(((g+-12-l|0)>>>0)/12|0)*12|0);h=f[e>>2]|0;i=h+40|0;j=f[i>>2]|0;k=h+44|0;g=f[k>>2]|0;if((j|0)==(g|0)){D1a(h);j=f[i>>2]|0;g=f[k>>2]|0;l=f[K>>2]|0}g=g-j|0;h=(g|0)/12|0;j=l;do if((((f[S>>2]|0)-l|0)/12|0)>>>0<h>>>0){if(h>>>0>357913941){V=37;break a}X=f[P>>2]|0;i=Wpb(g)|0;g=i+(((X-l|0)/12|0)*12|0)|0;k=g;i=i+(h*12|0)|0;h=X;if((h|0)==(j|0))g=k;else do{X=g;g=g+-12|0;Y=h;h=h+-12|0;f[g>>2]=f[h>>2];f[X+-8>>2]=f[Y+-8>>2];f[X+-4>>2]=f[Y+-4>>2]}while((h|0)!=(j|0));f[K>>2]=g;f[P>>2]=k;f[S>>2]=i;if(!l)break;Zpb(l)}while(0);h=f[e>>2]|0;i=h+40|0;g=f[i>>2]|0;j=h+44|0;k=f[j>>2]|0;if((g|0)==(k|0)){D1a(h);g=f[i>>2]|0;i=f[j>>2]|0}else i=k;if((g|0)!=(i|0))do{ba=+n[g>>2];aa=+n[g+4>>2];q=+n[g+8>>2];$=ba*+n[m>>2]+aa*+n[o>>2]+q*+n[p>>2];_=ba*+n[r>>2]+aa*+n[s>>2]+q*+n[t>>2];Z=ba*+n[v>>2]+aa*+n[w>>2]+q*+n[x>>2];q=+n[C>>2]*ba+ +n[E>>2]*aa+ +n[F>>2]*q+ +n[y>>2];n[O>>2]=q;n[T>>2]=$+ +n[z>>2];n[U>>2]=_+ +n[A>>2];n[L>>2]=Z+ +n[B>>2];f[M>>2]=0;h=f[P>>2]|0;if(h>>>0<(f[S>>2]|0)>>>0){n[h>>2]=q;f[h+4>>2]=f[T>>2];f[h+8>>2]=f[U>>2];f[P>>2]=h+12}else R1a(K,O);g=g+12|0}while((g|0)!=(i|0));X=f[K>>2]|0;Y=(f[P>>2]|0)-X|0;J5a(f[N>>2]|0,c,Y,X);c=Y+c|0;e=e+8|0}while((e|0)!=(D|0))}}}if((V|0)==20){V=0;e=f[d>>2]|0;m=f[d+4>>2]|0;if((e|0)!=(m|0))do{j=f[e>>2]|0;g=j+40|0;h=f[g>>2]|0;i=j+44|0;k=f[i>>2]|0;if((h|0)==(k|0)){D1a(j);l=f[e>>2]|0;h=f[g>>2]|0;g=f[i>>2]|0;j=l;l=f[l+44>>2]|0}else{g=k;l=k}i=g-h|0;k=f[N>>2]|0;h=j+40|0;g=f[h>>2]|0;if((g|0)==(l|0)){D1a(j);g=f[h>>2]|0}J5a(k,c,i,g);c=i+c|0;e=e+8|0}while((e|0)!=(m|0))}d=d+36|0}while((d|0)!=(G|0))}c=f[N>>2]|0;d=f[R>>2]|0;if(d|0)Npb(d);f[a+44+(J<<3)>>2]=c;Y=a+44+(J<<3)+4|0;c=f[Y>>2]|0;f[Y>>2]=d;if(c|0)Ppb(c);f[a+60+(J<<2)>>2]=H}}I7a(211248,I)|0;c=f[R>>2]|0;if(c|0)Ppb(c);c=f[K>>2]|0;if(c|0){d=f[P>>2]|0;if((d|0)!=(c|0))f[P>>2]=d+(~(((d+-12-c|0)>>>0)/12|0)*12|0);Zpb(c)}}J=J+1|0;if(J>>>0>=2){V=2;break}}if((V|0)==2){Y=a+68|0;b[Y>>0]=b[Y>>0]&-2;u=W;return}else if((V|0)==37)ud()}function R1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;m=f[a>>2]|0;h=(e-m|0)/12|0;c=h+1|0;j=m;if(c>>>0>357913941)fob(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/12|0;d=i<<1;d=i>>>0<178956970?(d>>>0<c>>>0?c:d):357913941;do if(!d)g=0;else if(d>>>0>357913941)ud();else{g=Wpb(d*12|0)|0;break}while(0);c=g+(h*12|0)|0;i=g+(d*12|0)|0;d=f[b+16>>2]|0;f[c>>2]=f[b+(d<<2)>>2];f[g+(h*12|0)+4>>2]=f[b+(d+1<<2)>>2];f[g+(h*12|0)+8>>2]=f[b+(d+2<<2)>>2];b=c+12|0;if((e|0)!=(j|0))while(1){d=c+-12|0;h=e;e=e+-12|0;f[d>>2]=f[e>>2];f[c+-8>>2]=f[h+-8>>2];f[c+-4>>2]=f[h+-4>>2];if((e|0)==(j|0)){c=d;break}else c=d}f[a>>2]=c;f[l>>2]=b;f[k>>2]=i;if(!m)return;Zpb(m);return}function S1a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=Wpb(68)|0;f[e+4>>2]=0;f[e+8>>2]=0;f[e>>2]=33592;g=e+12|0;f[g>>2]=f[c>>2];h=c+4|0;f[e+16>>2]=f[h>>2];i=c+8|0;f[e+20>>2]=f[i>>2];f[i>>2]=0;f[h>>2]=0;f[c>>2]=0;f[e+24>>2]=f[d>>2];c=d+4|0;f[e+28>>2]=f[c>>2];h=d+8|0;f[e+32>>2]=f[h>>2];f[h>>2]=0;f[c>>2]=0;f[d>>2]=0;f[e+36>>2]=0;f[e+40>>2]=-1;d=e+44|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;b[d+20>>0]=0;f[a>>2]=g;f[a+4>>2]=e;return}function T1a(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=33592;b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+48>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}b=f[a+12>>2]|0;if(!b){Hpb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b);Hpb(a);return}function U1a(a){a=a|0;T1a(a);Zpb(a);return}function V1a(a){a=a|0;var b=0,c=0,d=0;b=f[a+52>>2]|0;if(b|0){c=a+56|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-12-b|0)>>>0)/12|0)*12|0);Zpb(b)}b=f[a+48>>2]|0;if(b|0)Ppb(b);b=f[a+24>>2]|0;if(b|0){c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Zpb(b)}d=f[a+12>>2]|0;if(!d)return;b=a+16|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);Zpb(d);return}function W1a(a){a=a|0;Zpb(a);return}function X1a(){var a=0,b=0;b=Wpb(128)|0;f[52802]=b;a=b+128|0;f[52804]=a;p[b>>3]=-1.0;p[b+8>>3]=-0.0;p[b+16>>3]=0.0;p[b+24>>3]=-1.0;p[b+32>>3]=1.0;p[b+40>>3]=-0.0;p[b+48>>3]=0.0;p[b+56>>3]=-1.0;p[b+64>>3]=0.0;p[b+72>>3]=-1.0;p[b+80>>3]=0.0;p[b+88>>3]=-1.0;p[b+96>>3]=0.0;p[b+104>>3]=1.0;p[b+112>>3]=0.0;p[b+120>>3]=-1.0;f[52803]=a;p[26230]=-1.0;p[26231]=-1.0;p[26232]=1.0;p[26233]=1.0;return}function Y1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=f[b>>2]|0;h=f[b+4>>2]|0;if((c|0)==(h|0)){e=-2147483648;d=2147483647;c=-2147483648;b=2147483647}else{e=-2147483648;d=2147483647;g=-2147483648;b=2147483647;do{i=f[c>>2]|0;d=(d|0)>(i|0)?i:d;e=(e|0)<(i|0)?i:e;i=f[c+4>>2]|0;b=(b|0)>(i|0)?i:b;g=(g|0)<(i|0)?i:g;c=c+12|0}while((c|0)!=(h|0));c=g}f[a>>2]=d;f[a+4>>2]=b;f[a+8>>2]=e;f[a+12>>2]=c;return}function Z1a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0,i=0.0;if(!c){g=-1797693134862315708145274.0e284;f=1797693134862315708145274.0e284;e=-1797693134862315708145274.0e284;d=1797693134862315708145274.0e284}else{h=0;g=-1797693134862315708145274.0e284;f=1797693134862315708145274.0e284;e=-1797693134862315708145274.0e284;d=1797693134862315708145274.0e284;do{i=+p[b+(h*24|0)>>3];f=f>i?i:f;g=g<i?i:g;i=+p[b+(h*24|0)+8>>3];d=d>i?i:d;e=e<i?i:e;h=h+1|0}while((h|0)!=(c|0))}p[a>>3]=f;p[a+8>>3]=d;p[a+16>>3]=g;p[a+24>>3]=e;return}function _1a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;c=l+24|0;d=l+16|0;g=l+8|0;i=l;f[a>>2]=0;j=a+4|0;f[j>>2]=0;f[a+8>>2]=0;k=b+4|0;h=f[k>>2]|0;f[c>>2]=f[b>>2];f[c+4>>2]=h;h=a+8|0;KLa(a,c);c=f[j>>2]|0;m=f[h>>2]|0;e=b+12|0;n=f[e>>2]|0;f[d>>2]=f[b>>2];f[d+4>>2]=n;if((c|0)==(m|0)){KLa(a,d);c=f[j>>2]|0}else{m=d;n=f[m+4>>2]|0;f[c>>2]=f[m>>2];f[c+4>>2]=n;c=(f[j>>2]|0)+8|0;f[j>>2]=c}d=b+8|0;n=f[e>>2]|0;f[g>>2]=f[d>>2];f[g+4>>2]=n;if((c|0)==(f[h>>2]|0)){KLa(a,g);c=f[j>>2]|0}else{m=g;n=f[m+4>>2]|0;f[c>>2]=f[m>>2];f[c+4>>2]=n;c=(f[j>>2]|0)+8|0;f[j>>2]=c}n=f[k>>2]|0;f[i>>2]=f[d>>2];f[i+4>>2]=n;if((c|0)==(f[h>>2]|0)){KLa(a,i);u=l;return}else{k=i;m=f[k+4>>2]|0;n=c;f[n>>2]=f[k>>2];f[n+4>>2]=m;f[j>>2]=(f[j>>2]|0)+8;u=l;return}}function $1a(a){a=a|0;return +((+p[a+16>>3]+ +p[a+40>>3]+ +p[a+64>>3])*.3333333333333333)}function a2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+176|0;s=w+160|0;t=w;g=w+156|0;o=w+152|0;r=w+148|0;v=w+144|0;i=+p[a>>3];h=i<1797693134862315708145274.0e284?i:1797693134862315708145274.0e284;i=i>-1797693134862315708145274.0e284?i:-1797693134862315708145274.0e284;j=+p[a+8>>3];k=j<1797693134862315708145274.0e284?j:1797693134862315708145274.0e284;j=j>-1797693134862315708145274.0e284?j:-1797693134862315708145274.0e284;l=+p[a+24>>3];h=h>l?l:h;i=i<l?l:i;l=+p[a+32>>3];k=k>l?l:k;j=j<l?l:j;l=+p[a+48>>3];h=h>l?l:h;i=i<l?l:i;l=+p[a+56>>3];k=k>l?l:k;j=j<l?l:j;l=+p[26230];if(h>=l){m=+p[26231];if(k>=m){n=+p[26232];if(h<=n){h=+p[26233];if(!(!(i>=l)|!(k<=h)))if(j>=m&i<=n&j<=h){v=0;u=w;return v|0}}}}d=f[c>>2]|0;q=c+4|0;e=f[q>>2]|0;if((e|0)!=(d|0))f[q>>2]=e+(~(((e+-24-d|0)>>>0)/24|0)*24|0);d=$ha(f[52802]|0,a,t)|0;f[g>>2]=f[q>>2];f[s>>2]=f[g>>2];Xha(c,s,t,t+(d*24|0)|0)|0;d=f[q>>2]|0;g=f[c>>2]|0;e=g;if((d|0)!=(g|0)){g=b+4|0;a=0;do{d=$ha((f[52802]|0)+32|0,e+(a*24|0)|0,t)|0;f[o>>2]=f[g>>2];f[s>>2]=f[o>>2];Xha(b,s,t,t+(d*24|0)|0)|0;a=a+3|0;d=f[q>>2]|0;x=f[c>>2]|0;e=x}while(a>>>0<((d-x|0)/24|0)>>>0)}if((e|0)!=(d|0))f[q>>2]=d+(~(((d+-24-e|0)>>>0)/24|0)*24|0);g=b+4|0;d=f[g>>2]|0;x=f[b>>2]|0;e=x;if((d|0)!=(x|0)){a=0;d=e;while(1){d=$ha((f[52802]|0)+64|0,d+(a*24|0)|0,t)|0;f[r>>2]=f[q>>2];f[s>>2]=f[r>>2];Xha(c,s,t,t+(d*24|0)|0)|0;a=a+3|0;d=f[g>>2]|0;x=f[b>>2]|0;e=x;if(a>>>0>=((d-x|0)/24|0)>>>0)break;else d=e}}if((e|0)!=(d|0))f[g>>2]=d+(~(((d+-24-e|0)>>>0)/24|0)*24|0);d=f[c>>2]|0;if((f[q>>2]|0)!=(d|0)){e=0;do{x=$ha((f[52802]|0)+96|0,d+(e*24|0)|0,t)|0;f[v>>2]=f[g>>2];f[s>>2]=f[v>>2];Xha(b,s,t,t+(x*24|0)|0)|0;e=e+3|0;d=f[c>>2]|0}while(e>>>0<(((f[q>>2]|0)-d|0)/24|0)>>>0)}x=1;u=w;return x|0}function b2a(a,b){a=a|0;b=b|0;return c2a(a,211208,209840,b)|0}function c2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0,w=0;w=u;u=u+32|0;v=w;j=+p[a>>3];q=j<1797693134862315708145274.0e284?j:1797693134862315708145274.0e284;r=j>-1797693134862315708145274.0e284?j:-1797693134862315708145274.0e284;h=a+8|0;s=+p[h>>3];t=s<1797693134862315708145274.0e284?s:1797693134862315708145274.0e284;s=s>-1797693134862315708145274.0e284?s:-1797693134862315708145274.0e284;o=+p[a+24>>3];q=q>o?o:q;r=r<o?o:r;k=a+32|0;o=+p[k>>3];t=t>o?o:t;s=s<o?o:s;l=d+4|0;e=f[l>>2]|0;i=d+8|0;g=f[i>>2]|0;if((e|0)==(g|0)){WYa(d,a);h=f[l>>2]|0;g=f[i>>2]|0}else{p[e>>3]=j;p[e+8>>3]=+p[h>>3];p[e+16>>3]=+p[a+16>>3];h=e+24|0;f[l>>2]=h}e=a+24|0;if((h|0)==(g|0))WYa(d,e);else{p[h>>3]=+p[e>>3];p[h+8>>3]=+p[k>>3];p[h+16>>3]=+p[a+40>>3];f[l>>2]=h+24}m=+p[c>>3];if(q>=m){n=+p[c+8>>3];if(t>=n){o=+p[c+16>>3];if(q<=o){j=+p[c+24>>3];if(!(!(r>=m)|!(t<=j)))if(s>=n&r<=o&s<=j){v=0;u=w;return v|0}}}}e=f[b>>2]|0;a=f[b+4>>2]|0;if((e|0)==(a|0)){v=0;u=w;return v|0}k=v+8|0;l=v+16|0;while(1){g=f[d>>2]|0;r=+p[e>>3];s=+p[e+8>>3];t=+p[e+16>>3];q=+p[e+24>>3];h=g+24|0;i=q+(r*+p[g>>3]+(s*+p[g+8>>3]+t*+p[g+16>>3]))>=0.0;if(i^q+(r*+p[h>>3]+(s*+p[g+32>>3]+t*+p[g+40>>3]))>=0.0){bia(v,e,g,h);b=(i^1)&1;t=+p[v>>3];c=g+(b*24|0)|0;p[v>>3]=+p[c>>3];p[c>>3]=t;t=+p[k>>3];c=g+(b*24|0)+8|0;p[k>>3]=+p[c>>3];p[c>>3]=t;p[g+(b*24|0)+16>>3]=+p[l>>3]}else if(i){e=1;g=18;break}e=e+32|0;if((e|0)==(a|0)){e=0;g=18;break}}if((g|0)==18){u=w;return e|0}return 0}function d2a(a){a=a|0;var b=0,c=0.0,d=0.0,e=0;b=u;u=u+32|0;e=b;r$(e);d=+(f[e>>2]|0);c=+(f[e+4>>2]|0);f[a>>2]=0;f[a+4>>2]=0;n[a+8>>2]=d;n[a+12>>2]=c;u=b;return}function e2a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+160|0;d=j+136|0;g=j;h=g+4|0;f[g>>2]=10948;i=g+56|0;f[i>>2]=10968;Yfb(g+56|0,h);f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=31108;f[g+56>>2]=31128;agb(h);f[h>>2]=31144;e=g+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[g+52>>2]=16;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;DIa(h,d);if((b[d+11>>0]|0)<0)Zpb(f[d>>2]|0);f[g+(f[(f[g>>2]|0)+-12>>2]|0)+76>>2]=48;d=g+(f[(f[g>>2]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-75|8;d=FIa(g,193006,1)|0;f[d+(f[(f[d>>2]|0)+-12>>2]|0)+12>>2]=2;d=ogb(d,ieb(+n[c>>2]*255.0)|0)|0;f[d+(f[(f[d>>2]|0)+-12>>2]|0)+12>>2]=2;d=ogb(d,ieb(+n[c+4>>2]*255.0)|0)|0;f[d+(f[(f[d>>2]|0)+-12>>2]|0)+12>>2]=2;ogb(d,ieb(+n[c+8>>2]*255.0)|0)|0;c=ieb(+n[c+12>>2]*255.0)|0;if((c|0)<255){f[g+(f[(f[g>>2]|0)+-12>>2]|0)+12>>2]=2;ogb(g,c)|0}EIa(a,h);f[g>>2]=31108;f[i>>2]=31128;f[h>>2]=31144;if((b[e+11>>0]|0)>=0){Teb(h);Pfb(g,31204);Oeb(i);u=j;return}Zpb(f[e>>2]|0);Teb(h);Pfb(g,31204);Oeb(i);u=j;return}function f2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;if(!b){n[a>>2]=1.0;n[a+4>>2]=0.0;n[a+8>>2]=1.0;d=a+12|0;n[d>>2]=1.0;u=e;return}else{$pa(d,b,0,c);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];d=a+12|0;n[d>>2]=1.0;u=e;return}}function g2a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;i=k;f[a>>2]=0;j=a+4|0;f[j>>2]=0;f[a+8>>2]=0;c=f[b>>2]|0;g=f[b+4>>2]|0;if((c|0)==(g|0)){u=k;return}h=i+4|0;e=a+8|0;b=c;c=0;d=0;while(1){l=f[b+4>>2]|0;f[i>>2]=f[b>>2];f[h>>2]=l;if((c|0)==(d|0))KLa(a,i);else{m=i;d=f[m+4>>2]|0;l=c;f[l>>2]=f[m>>2];f[l+4>>2]=d;f[j>>2]=(f[j>>2]|0)+8}b=b+12|0;if((b|0)==(g|0))break;c=f[j>>2]|0;d=f[e>>2]|0}u=k;return}function h2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,t=0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0.0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0;B=u;u=u+144|0;y=B;f[d>>2]=0;z=a+16|0;U=+p[z>>3];A=+p[a>>3];w=U-A;t=a+24|0;r=a+8|0;G=+p[t>>3];v=+p[r>>3];J=G-v;I=+L(+(w*w+J*J));w=w/I;x=J/I;I=-J/I;J=A*I+v*w;k=b+16|0;P=+p[k>>3];q=+p[b>>3];g=P-q;j=b+24|0;S=+p[j>>3];l=b+8|0;h=+p[l>>3];O=S-h;Q=+L(+(g*g+O*O));O=O/Q;M=O*.5;F=q+M;D=-g/Q*.5;R=h+D;D=S+D-R;M=P+M-F;H=+L(+(M*M+D*D));D=-D/H;H=M/H;F=R*H+F*D;R=A*D+v*H-F;M=+p[b+32>>3];K=+p[b+40>>3];p[y>>3]=-R/(w*D+x*H);p[y+8>>3]=-(I*q+w*h-J)/(I*(g/Q)+w*O);p[y+16>>3]=Q;e=y+24|0;p[e>>3]=D*M+H*K-F;C=y+32|0;p[C>>3]=R;n=y+40|0;p[n>>3]=U*D+H*G-F;F=M-P;G=K-S;H=+L(+(F*F+G*G));G=G/H;D=G*.5;U=P+D;R=-F/H*.5;Q=S+R;R=K+R-Q;D=M+D-U;O=+L(+(D*D+R*R));R=-R/O;O=D/O;U=Q*O+U*R;Q=+p[a>>3];D=+p[r>>3];g=Q*R+D*O-U;h=+p[z>>3];q=+p[t>>3];i=h*R+O*q-U;N=+p[b>>3];T=+p[l>>3];E=R*N+O*T-U;p[y+48>>3]=-(A*R+v*O-U)/(w*R+x*O);p[y+56>>3]=-(I*P+w*S-J)/(I*(F/H)+w*G);p[y+64>>3]=H;p[y+72>>3]=E;p[y+80>>3]=g;p[y+88>>3]=i;H=N-M;G=T-K;F=+L(+(H*H+G*G));G=G/F;S=G*.5;P=M+S;O=-H/F*.5;R=K+O;O=T+O-R;S=N+S-P;N=+L(+(S*S+O*O));O=-O/N;N=S/N;P=R*N+P*O;D=Q*O+D*N-P;q=h*O+N*q-P;h=O*+p[k>>3]+N*+p[j>>3]-P;p[y+96>>3]=-(A*O+v*N-P)/(w*O+x*N);p[y+104>>3]=-(I*M+w*K-J)/(I*(H/F)+w*G);p[y+112>>3]=F;p[y+120>>3]=h;p[y+128>>3]=D;p[y+136>>3]=q;e=(f[e+4>>2]|0)<0;p[s>>3]=E;j=f[s+4>>2]|0;p[s>>3]=D;b=f[s+4>>2]|0;p[s>>3]=h;k=f[s+4>>2]|0;p[s>>3]=i;l=f[s+4>>2]|0;p[s>>3]=q;m=f[s+4>>2]|0;if((f[C+4>>2]|0)<0^e)b=0;else{p[s>>3]=g;if((f[s+4>>2]|0)<0^(j|0)<0)b=0;else b=((b|0)<0^(k|0)<0^1)&1}if((f[n+4>>2]|0)<0^e)o=6;else if((l|0)<0^(j|0)<0)o=6;else{e=(m|0)<0^(k|0)<0;b=b<<24>>24==0;if(b|e)k=e;else{C=1;u=B;return C|0}}if((o|0)==6){b=b<<24>>24==0;k=1}U=+p[z>>3]-+p[a>>3];q=+p[t>>3]-+p[r>>3];q=+L(+(U*U+q*q));if(b){b=0;e=0;j=0;do{h=+p[y+(j*48|0)>>3];do if(!(!(h>=0.0)|!(h<=q))){g=+p[y+(j*48|0)+8>>3];if(g>=0.0)if(g<=+p[y+(j*48|0)+16>>3]){i=A+w*h;g=v+x*h;e=(f[y+(j*48|0)+24+4>>2]|0)<0;if(e^(f[y+(j*48|0)+32+4>>2]|0)<0){e=b+1|0;p[c+(b<<4)>>3]=+p[a>>3];p[c+(b<<4)+8>>3]=+p[r>>3];p[c+(e<<4)>>3]=i;p[c+(e<<4)+8>>3]=g;e=1;b=b+2|0;break}if(k)if(e^(f[y+(j*48|0)+40+4>>2]|0)<0){e=b+1|0;p[c+(b<<4)>>3]=i;p[c+(b<<4)+8>>3]=g;p[c+(e<<4)>>3]=+p[z>>3];p[c+(e<<4)+8>>3]=+p[t>>3];e=1;b=b+2|0}else e=1;else e=1}}while(0);j=j+1|0}while((b|0)!=4&j>>>0<3)}else{b=0;e=0;j=0;do{i=+p[y+(j*48|0)>>3];if(!(!(i>=0.0)|!(i<=q))){g=+p[y+(j*48|0)+8>>3];if(g>=0.0)if(g<=+p[y+(j*48|0)+16>>3]){h=A+w*i;g=v+x*i;if(k)if((f[y+(j*48|0)+24+4>>2]|0)<0^(f[y+(j*48|0)+40+4>>2]|0)<0){e=b+1|0;p[c+(b<<4)>>3]=h;p[c+(b<<4)+8>>3]=g;p[c+(e<<4)>>3]=+p[z>>3];p[c+(e<<4)+8>>3]=+p[t>>3];e=1;b=b+2|0}else e=1;else e=1}}j=j+1|0}while((b|0)!=4&j>>>0<3)}f[d>>2]=b>>>1;C=e;u=B;return C|0}function i2a(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=+i;j=+j;var k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,M=0,N=0,O=0.0,P=0.0,Q=0;N=u;u=u+608|0;M=N+544|0;J=N+80|0;G=N+48|0;H=N;f[h>>2]=0;if(!(+p[c+16>>3]>=+p[e>>3])){h=0;u=N;return h|0}if(!(+p[c>>3]<=+p[e+16>>3])){h=0;u=N;return h|0}if(!(+p[c+24>>3]>=+p[e+8>>3])){h=0;u=N;return h|0}if(!(+p[c+8>>3]<=+p[e+24>>3])){h=0;u=N;return h|0}r=a+32|0;C=a+8|0;w=+p[r>>3];z=+p[C>>3];o=w-z;l=+p[a+64>>3];x=+p[a+16>>3];n=l-x;q=+p[a+40>>3];P=q-x;D=a+56|0;k=+p[D>>3];O=k-z;m=o*n-P*O;E=a+48|0;v=+p[E>>3];y=+p[a>>3];B=v-y;F=a+24|0;t=+p[F>>3];A=t-y;n=P*B-n*A;B=O*A-o*B;o=+L(+(m*m+(n*n+B*B)));m=m/o*j;y=y+m;n=n/o*j;z=z+n;o=B/o*j;x=x+o;j=v+m-y;k=k+n-z;l=l+o-x;m=t+m-y;n=w+n-z;o=q+o-x;q=k*o-l*n;w=m*l-j*o;t=j*n-m*k;v=+L(+(q*q+(t*t+w*w)));if(!(v<=+L(+(j*j+(k*k+l*l)))*+L(+(m*m+(n*n+o*o)))*2.220446049250313e-16)){B=q/v;A=t/v;v=w/v}else{p[M>>3]=j;p[M+16>>3]=k;p[M+32>>3]=l;p[M+8>>3]=m;p[M+24>>3]=n;p[M+40>>3]=o;b[J+152>>0]=0;b[J+153>>0]=0;b[J+154>>0]=0;f[J+160>>2]=0;f[J+168>>2]=-1;f[J+172>>2]=-1;b[J+304>>0]=0;b[J+305>>0]=0;ZLa(J,M,16)|0;B=+p[J+80>>3];A=+p[J+96>>3];v=+p[J+88>>3]}l=y*B+(x*A+z*v);if(+K(+(0.0-v))<1.0e-12)if(+K(+(0.0-A))<1.0e-12){h=0;u=N;return h|0}q=+p[d>>3];t=+p[d+8>>3];j=+p[d+24>>3];k=+p[d+32>>3];w=+p[d+16>>3]-i;x=+p[d+40>>3]-i;o=B*q+(v*t+A*w)-l;p[s>>3]=o;e=Erb(f[s>>2]|0,f[s+4>>2]|0,63)|0;Q=I;p[s>>3]=B*j+(v*k+A*x)-l;c=Erb(f[s>>2]|0,f[s+4>>2]|0,63)|0;d=(e|0)==0;if((c|e|0)==0&(I|Q|0)==0){Q=0;u=N;return Q|0}l=j-q;m=k-t;P=x-w;n=+L(+(l*l+(m*m+P*P)));l=l/n;m=m/n;n=P/n;if((e|0)==(c|0)){c=0;A=q;z=t;y=w}else{P=-o/(B*l+(v*m+A*n));i=q+l*P;O=t+m*P;P=w+n*P;p[g>>3]=d?q:i;p[g+8>>3]=d?t:O;p[g+16>>3]=d?w:P;p[g+24>>3]=d?i:j;p[g+32>>3]=d?O:k;p[g+40>>3]=d?P:x;c=2;A=d?i:q;z=d?O:t;y=d?P:w;j=d?j:i;k=d?k:O;x=d?x:P}p[G>>3]=A;p[G+8>>3]=z;p[G+16>>3]=j;p[G+24>>3]=k;p[H>>3]=+p[a>>3];p[H+8>>3]=+p[C>>3];p[H+16>>3]=+p[F>>3];p[H+24>>3]=+p[r>>3];p[H+32>>3]=+p[E>>3];p[H+40>>3]=+p[D>>3];if(h2a(G,H,M,J)|0){e=f[J>>2]|0;if(e&2147483647){w=j-A;t=k-z;v=t*t+w*w;d=e<<1;q=x-y;r=c+((d>>>0>2?d:2)+-1&-2)|0;e=0;while(1){n=+p[M+(e<<4)>>3];o=+p[M+(e<<4)+8>>3];j=(w*(n-A)+t*(o-z))/v;if(j<0.0|+K(+j)<1.0e-10)k=y;else if(j>1.0)k=x;else if(+K(+(j+-1.0))<1.0e-10)k=x;else k=y+q*j;Q=e|1;l=+p[M+(Q<<4)>>3];m=+p[M+(Q<<4)+8>>3];j=(w*(l-A)+t*(m-z))/v;if(j<0.0|+K(+j)<1.0e-10)j=y;else if(j>1.0)j=x;else if(+K(+(j+-1.0))<1.0e-10)j=x;else j=y+q*j;Q=c|1;p[g+(c*24|0)>>3]=n;p[g+(c*24|0)+8>>3]=o;p[g+(c*24|0)+16>>3]=k;p[g+(Q*24|0)>>3]=l;p[g+(Q*24|0)+8>>3]=m;p[g+(Q*24|0)+16>>3]=j;e=e+2|0;if(e>>>0>=d>>>0)break;else c=c+2|0}c=r+2|0}f[h>>2]=c>>>1;c=1}else{Q=c|1;p[g+(c*24|0)>>3]=A;p[g+(c*24|0)+8>>3]=z;p[g+(c*24|0)+16>>3]=y;p[g+(Q*24|0)>>3]=j;p[g+(Q*24|0)+8>>3]=k;p[g+(Q*24|0)+16>>3]=x;c=0}Q=c;u=N;return Q|0}function j2a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0;w=0;E=u;u=u+1664|0;A=(E+44|0)+4|0;f[A>>2]=0;B=(E+44|0)+8|0;f[B>>2]=0;C=(E+44|0)+4|0;f[(E+44|0)>>2]=C;d=f[b>>2]|0;p=f[b+4>>2]|0;do if((d|0)==(p|0)){v=C;t=C;z=E+44|0}else{a:while(1){b=f[d>>2]|0;o=f[d+4>>2]|0;if((b|0)!=(o|0))do{e=f[b>>2]|0;l=f[e>>2]|0;m=f[e+4>>2]|0;f[E>>2]=l;f[E+4>>2]=m;f[(E+8|0)>>2]=0;f[(E+12|0)>>2]=0;f[(E+16|0)>>2]=0;g=(f[b+4>>2]|0)-e|0;if(!(g>>3)){j=0;k=0;g=0}else{if(g>>3>>>0>536870911){w=11;break a}h=Wpb(g)|0;f[(E+12|0)>>2]=h;f[(E+8|0)>>2]=h;f[(E+16|0)>>2]=h+(g>>3<<3)|0;if((g|0)>0){Irb(h|0,e|0,g|0)|0;f[(E+12|0)>>2]=h+(g>>>3<<3)|0;j=h;k=h+(g>>>3<<3)|0;g=h+(g>>3<<3)|0}else{j=h;k=h;g=h+(g>>3<<3)|0}}e=Wpb(36)|0;f[(e+16|0)>>2]=l;f[(e+16|0)+4>>2]=m;f[e+24>>2]=j;f[e+28>>2]=k;f[e+32>>2]=g;f[(E+16|0)>>2]=0;f[(E+12|0)>>2]=0;f[(E+8|0)>>2]=0;g=f[C>>2]|0;do if(!g){q=C;r=C}else{while(1){w=f[g+16>>2]|0;if((w|0)==(l|0)?(f[g+20>>2]|0)>(m|0):(w|0)>(l|0)){h=f[g>>2]|0;if(!h){w=17;break}else g=h}else{s=g+4|0;h=f[s>>2]|0;if(!h){w=20;break}else g=h}}if((w|0)==17){q=g;r=g;break}else if((w|0)==20){q=g;r=s;break}}while(0);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=q;f[r>>2]=e;g=f[f[(E+44|0)>>2]>>2]|0;if(g){f[(E+44|0)>>2]=g;e=f[r>>2]|0}tEa(f[A>>2]|0,e);f[B>>2]=(f[B>>2]|0)+1;e=f[(E+8|0)>>2]|0;if(e|0){g=f[(E+12|0)>>2]|0;if((g|0)!=(e|0))f[(E+12|0)>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}b=b+12|0}while((b|0)!=(o|0));d=d+12|0;if((d|0)==(p|0)){w=4;break}}if((w|0)==4){t=f[(E+44|0)>>2]|0;v=t;z=E+44|0;break}else if((w|0)==11)fob(E+8|0)}while(0);do{b=1;if(b){b=0;if((C|0)==(v|0))i=t;else b=1}if(b)if(1){o=(E+28|0)+4|0;k=v;b:while(1){l=k;m=f[(l+28|0)>>2]|0;h=f[m+-8>>2]|0;j=f[m+-4>>2]|0;d=f[C>>2]|0;c:do if(!d){y=C;w=45}else{b=C;d:while(1){g=d;while(1){d=f[g+16>>2]|0;e=f[g+20>>2]|0;if((d|0)==(h|0)?(e|0)>(j|0):(d|0)>(h|0))break;if(!((d|0)==(h|0)?(e|0)<(j|0):(d|0)<(h|0)))break d;d=f[g+4>>2]|0;if(!d){y=b;w=45;break c}else g=d}d=f[g>>2]|0;if(!d){y=g;w=45;break c}else b=g}d=f[g>>2]|0;e:do if(!d)c=g;else{c=g;while(1){e=d;while(1){x=f[e+16>>2]|0;if(!((x|0)==(h|0)?(f[e+20>>2]|0)<(j|0):(x|0)<(h|0)))break;d=f[e+4>>2]|0;if(!d)break e;else e=d}d=f[e>>2]|0;if(!d){c=e;break}else c=e}}while(0);e=f[g+4>>2]|0;f:do if(e)while(1){d=e;while(1){x=f[d+16>>2]|0;if((x|0)==(h|0)?(f[d+20>>2]|0)>(j|0):(x|0)>(h|0))break;d=f[d+4>>2]|0;if(!d)break f}e=f[d>>2]|0;if(!e){b=d;break}else b=d}while(0);x=b}while(0);if((w|0)==45){w=0;x=y;c=x}t=c;v=x;f[E+464>>2]=z;f[E+488>>2]=c;f[E+544>>2]=k;f[E+576>>2]=l;f[E+584>>2]=m;f[E+672>>2]=t;f[E+680>>2]=v;f[E+896>>2]=o;f[E+1456>>2]=A;f[E+1496>>2]=B;f[E+1536>>2]=C;f[E+1576>>2]=w;f[E+1600>>2]=0;f[E+1604>>2]=0;j3a(E);k=f[E+544>>2]|0;w=f[E+1576>>2]|0;G=f[E+1600>>2]|0;D=f[E+1604>>2]|0;H=+n[E+1604>>2];f[E+1600>>2]=0;f[E+1604>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 4:break b}}if((w|0)==55)fob(E+28|0);else if((w|0)==82)fob(E+8|0);else if((w|0)==123){i=f[(E+44|0)>>2]|0;break}}}while(0);f[a>>2]=0;f[(a+4|0)>>2]=0;f[a+8>>2]=0;if((i|0)==(C|0)){C=f[C>>2]|0;l2a(E+44|0,C);u=E;return}d=0;b=0;j=0;while(1){c=i+24|0;if((d|0)==(b|0))AMa(a,c);else{f[d>>2]=0;g=d+4|0;f[g>>2]=0;f[d+8>>2]=0;e=i+28|0;b=(f[e>>2]|0)-(f[c>>2]|0)|0;if(b>>3|0){if(b>>3>>>0>536870911){w=130;break}h=Wpb(b)|0;f[g>>2]=h;f[d>>2]=h;f[d+8>>2]=h+(b>>3<<3);c=f[c>>2]|0;b=(f[e>>2]|0)-c|0;if((b|0)>0){Irb(h|0,c|0,b|0)|0;f[g>>2]=h+(b>>>3<<3)}}f[(a+4|0)>>2]=(f[(a+4|0)>>2]|0)+12}b=f[i+4>>2]|0;if(!b){c=i+8|0;b=f[c>>2]|0;if((f[b>>2]|0)!=(i|0))do{B=f[c>>2]|0;c=B+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(B|0))}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}if((b|0)==(C|0)){w=126;break}j=f[(a+4|0)>>2]|0;i=b;d=j;b=f[(a+8|0)>>2]|0}if((w|0)==126){C=f[C>>2]|0;l2a(E+44|0,C);u=E;return}else if((w|0)==130)fob(j)}function k2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=f[a>>2]|0;i=m;j=(f[b>>2]|0)-i|0;b=m+(j>>3<<3)|0;o=f[c>>2]|0;g=f[d>>2]|0;q=g-o|0;k=q>>3;d=o;o=g;if((q|0)<=0){q=b;return q|0}p=a+8|0;h=f[p>>2]|0;q=a+4|0;n=f[q>>2]|0;e=n;if((k|0)<=(h-e>>3|0)){i=e-b|0;e=i>>3;if((k|0)>(e|0)){h=d+(e<<3)|0;g=h;if((h|0)==(o|0))e=n;else{e=n;do{p=h;a=f[p+4>>2]|0;f[e>>2]=f[p>>2];f[e+4>>2]=a;h=h+8|0;e=(f[q>>2]|0)+8|0;f[q>>2]=e}while((h|0)!=(o|0))}if((i|0)<=0){q=b;return q|0}}else e=n;j=e-(b+(k<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0<n>>>0){i=e;do{o=h;p=f[o+4>>2]|0;a=i;f[a>>2]=f[o>>2];f[a+4>>2]=p;h=h+8|0;i=(f[q>>2]|0)+8|0;f[q>>2]=i}while(h>>>0<n>>>0)}if(k){Jrb(e+(0-k<<3)|0,b|0,j|0)|0;d=f[c>>2]|0}if((d|0)==(g|0)){q=b;return q|0}else e=b;while(1){c=d;a=f[c+4>>2]|0;q=e;f[q>>2]=f[c>>2];f[q+4>>2]=a;d=d+8|0;if((d|0)==(g|0))break;else e=e+8|0}return b|0}e=(e-i>>3)+k|0;if(e>>>0>536870911)fob(a);k=h-i|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<e>>>0?e:g):536870911;k=b;e=j>>3;do if(!g)l=0;else if(g>>>0>536870911)ud();else{l=Wpb(g<<3)|0;break}while(0);j=l+(e<<3)|0;e=j;i=l+(g<<3)|0;if((o|0)==(d|0)){d=e;g=m}else{g=j;do{m=d;n=f[m+4>>2]|0;c=g;f[c>>2]=f[m>>2];f[c+4>>2]=n;g=e+8|0;e=g;d=d+8|0}while((d|0)!=(o|0));d=e;g=f[a>>2]|0}e=k-g|0;h=j+(0-(e>>3)<<3)|0;if((e|0)>0)Irb(h|0,g|0,e|0)|0;e=(f[q>>2]|0)-k|0;if((e|0)>0){Irb(d|0,b|0,e|0)|0;d=d+(e>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[q>>2]=d;f[p>>2]=i;if(!b){q=j;return q|0}Zpb(b);q=j;return q|0}function l2a(a,b){a=a|0;b=b|0;var c=0,d=0;if(!b)return;l2a(a,f[b>>2]|0);l2a(a,f[b+4>>2]|0);c=f[b+24>>2]|0;if(c|0){d=b+28|0;a=f[d>>2]|0;if((a|0)!=(c|0))f[d>>2]=a+(~((a+-8-c|0)>>>3)<<3);Zpb(c)}Zpb(b);return}function m2a(a){a=a|0;var c=0,d=0,e=0;c=a+48|0;d=a;e=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));n[c>>2]=.20000000298023224;e=a+64|0;b[e>>0]=b[e>>0]|1;return}function n2a(a){a=a|0;return (f[a+24>>2]|0)==(f[a+28>>2]|0)|0}function o2a(a,b){a=a|0;b=b|0;a=a+36|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];return}function p2a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(c|0){e=a+64|0;if(!d)return;q2a(a+24|0,d,d+((c<<1)*12|0)|0);b[e>>0]=b[e>>0]|1;return}j=a+24|0;k=f[j>>2]|0;l=a+28|0;e=f[l>>2]|0;g=k;if((e|0)==(k|0))c=e;else{c=e+(~(((e+-12-g|0)>>>0)/12|0)*12|0)|0;f[l>>2]=c}i=a+32|0;e=c-g|0;d=(e|0)/12|0;if((((f[i>>2]|0)-g|0)/12|0)>>>0>d>>>0){do if(!e)h=0;else if(d>>>0>357913941)ud();else{h=Wpb(e)|0;break}while(0);e=h+(d*12|0)|0;d=e;if((c|0)==(k|0))e=d;else do{h=e;e=e+-12|0;g=c;c=c+-12|0;f[e>>2]=f[c>>2];f[h+-8>>2]=f[g+-8>>2];f[h+-4>>2]=f[g+-4>>2]}while((c|0)!=(k|0));f[j>>2]=e;f[l>>2]=d;f[i>>2]=d;if(k|0)Zpb(k)}f[a+8>>2]=0;l=a+12|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0)Ppb(e);f[a+16>>2]=0;a=a+20|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;Ppb(e);return}function q2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=(c-b|0)/12|0;k=a+8|0;d=f[k>>2]|0;i=f[a>>2]|0;e=i;if(j>>>0>((d-i|0)/12|0)>>>0){h=i;if(i){d=a+4|0;g=f[d>>2]|0;if((g|0)!=(e|0))f[d>>2]=g+(~(((g+-12-i|0)>>>0)/12|0)*12|0);Zpb(h);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(j>>>0>357913941)fob(a);i=(d|0)/12|0;e=i<<1;e=i>>>0<178956970?(e>>>0<j>>>0?j:e):357913941;if(e>>>0>357913941)fob(a);d=Wpb(e*12|0)|0;g=a+4|0;f[g>>2]=d;f[a>>2]=d;f[k>>2]=d+(e*12|0);if((b|0)==(c|0))return;do{f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];b=b+12|0;d=d+12|0}while((b|0)!=(c|0));f[g>>2]=d;return}else{a=a+4|0;k=f[a>>2]|0;d=(k-i|0)/12|0;h=j>>>0>d>>>0;d=b+(d*12|0)|0;g=h?d:c;i=k;if((g|0)==(b|0))b=e;else{do{f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];b=b+12|0;e=e+12|0}while((b|0)!=(g|0));b=e}if(!h){if((b|0)==(i|0))return;f[a>>2]=i+(~(((i+-12-b|0)>>>0)/12|0)*12|0);return}if((g|0)==(c|0))return;b=f[a>>2]|0;do{f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];d=d+12|0;b=b+12|0}while((d|0)!=(c|0));f[a>>2]=b;return}}function r2a(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;q=u;u=u+16|0;k=q;p=a+64|0;if(!(b[p>>0]&1)){u=q;return}h=a+24|0;g=f[h>>2]|0;j=a+28|0;i=f[j>>2]|0;c=i;e=g;if((g|0)==(i|0)){u=q;return}l=c-e|0;m=(l|0)/12|0;n=Xpb(l>>>0>1073741823?-1:l<<2)|0;o=Xpb(l>>>0>2147483647?-1:l<<1)|0;if(l){e=n;c=g;while(1){f[e>>2]=f[c>>2];t=c+4|0;f[e+4>>2]=f[t>>2];g=c+8|0;f[e+8>>2]=f[g>>2];s=c+12|0;f[e+12>>2]=f[s>>2];f[e+16>>2]=f[t>>2];f[e+20>>2]=f[g>>2];f[e+24>>2]=f[c>>2];r=c+16|0;f[e+28>>2]=f[r>>2];f[e+32>>2]=f[g>>2];f[e+36>>2]=f[s>>2];f[e+40>>2]=f[r>>2];f[e+44>>2]=f[g>>2];f[e+48>>2]=f[c>>2];f[e+52>>2]=f[t>>2];g=c+20|0;f[e+56>>2]=f[g>>2];f[e+60>>2]=f[s>>2];f[e+64>>2]=f[t>>2];f[e+68>>2]=f[g>>2];f[e+72>>2]=f[c>>2];f[e+76>>2]=f[r>>2];f[e+80>>2]=f[g>>2];f[e+84>>2]=f[s>>2];f[e+88>>2]=f[r>>2];f[e+92>>2]=f[g>>2];c=c+24|0;if((c|0)==(i|0))break;else e=e+96|0}e=f[h>>2]|0;c=f[j>>2]|0}h=((c-e|0)/12|0)>>>1;if(h|0){c=0;e=0;g=o;while(1){i=e&65535;d[g>>1]=e;w=i+1&65535;d[g+2>>1]=w;d[g+4>>1]=w;j=i+5&65535;d[g+6>>1]=j;d[g+8>>1]=j;s=i+4&65535;d[g+10>>1]=s;d[g+12>>1]=s;d[g+14>>1]=e;x=i+2&65535;d[g+16>>1]=x;v=i+3&65535;d[g+18>>1]=v;d[g+20>>1]=v;r=i+7&65535;d[g+22>>1]=r;d[g+24>>1]=r;t=i+6&65535;d[g+26>>1]=t;d[g+28>>1]=t;d[g+30>>1]=x;d[g+32>>1]=e;d[g+34>>1]=x;d[g+36>>1]=w;d[g+38>>1]=v;d[g+40>>1]=j;d[g+42>>1]=r;d[g+44>>1]=s;d[g+46>>1]=t;c=c+1|0;if((c|0)==(h|0))break;else{e=i+8&65535;g=g+48|0}}}h=a+8|0;if(!(f[h>>2]|0)){D5a(k,34962);x=f[k>>2]|0;c=k+4|0;w=f[c>>2]|0;f[k>>2]=0;f[c>>2]=0;f[h>>2]=x;x=a+12|0;e=f[x>>2]|0;f[x>>2]=w;if(e|0){Ppb(e);c=f[c>>2]|0;if(c|0)Ppb(c)}}g=a+16|0;if(!(f[g>>2]|0)){D5a(k,34963);x=f[k>>2]|0;e=k+4|0;w=f[e>>2]|0;f[k>>2]=0;f[e>>2]=0;f[g>>2]=x;x=a+20|0;c=f[x>>2]|0;f[x>>2]=w;if(c|0){Ppb(c);c=f[e>>2]|0;if(c|0)Ppb(c)}}I5a(f[h>>2]|0,m*48|0,n,35048);I5a(f[g>>2]|0,l<<1,o,35048);b[p>>0]=b[p>>0]&-2;_pb(o);_pb(n);u=q;return}function s2a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;b=g+24|0;e=g;if(f[a>>2]|0){u=g;return}d=e+16|0;f[e>>2]=31848;f[e+4>>2]=113;f[d>>2]=e;o7a(b,193008,193042,e,1);h=f[b>>2]|0;c=b+4|0;i=f[c>>2]|0;f[b>>2]=0;f[c>>2]=0;f[a>>2]=h;h=a+4|0;b=f[h>>2]|0;f[h>>2]=i;if(b|0){Ppb(b);b=f[c>>2]|0;if(b|0)Ppb(b)}b=f[d>>2]|0;if((e|0)==(b|0))fh[f[(f[b>>2]|0)+16>>2]&2047](b);else if(b|0)fh[f[(f[b>>2]|0)+20>>2]&2047](b);i=t7a(f[a>>2]|0,193076)|0;f[a+52>>2]=i;i=u7a(f[a>>2]|0,193085)|0;f[a+56>>2]=i;i=u7a(f[a>>2]|0,193110)|0;f[a+60>>2]=i;u=g;return}function t2a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,v=0.0;r=u;u=u+16|0;p=r;q=a+48|0;if(+n[q>>2]<=0.0){u=r;return}r2a(a);e=a+8|0;if(!(f[e>>2]|0)){u=r;return}s2a(a);o=f[52834]|0;I7a(211248,f[f[e>>2]>>2]|0)|0;k=f[52835]|0;J7a(211248,f[f[a+16>>2]>>2]|0)|0;l=f[52836]|0;N7a(211248,f[f[a>>2]>>2]|0)|0;m=b[211526]|0;r8a(211248,d)|0;e=b[211372]|0;W7a(211248,0)|0;d=b[211524]|0;g=f[52853]|0;h=f[52855]|0;i=f[52854]|0;j=f[52856]|0;if(+n[q>>2]<1.0){$7a(211248,1,771)|0;p8a(211248,1)|0}lf(f[a+56>>2]|0,1,0,c|0);c=f[a+60>>2]|0;s=+n[q>>2];v=s*+n[a+40>>2];t=s*+n[a+44>>2];n[p>>2]=+n[a+36>>2]*s;n[p+4>>2]=v;n[p+8>>2]=t;n[p+12>>2]=s;jf(c|0,1,p|0);q=a+52|0;qf(f[q>>2]|0,3,5126,0,0,0);q=f[q>>2]|0;qe(q|0);ne(1,(f[a+28>>2]|0)-(f[a+24>>2]|0)|0,5123,0);je(q|0);_7a(211248,g,h,i,j)|0;p8a(211248,d<<24>>24!=0)|0;W7a(211248,e<<24>>24!=0)|0;r8a(211248,m<<24>>24!=0)|0;N7a(211248,l)|0;J7a(211248,k)|0;I7a(211248,o)|0;u=r;return}function u2a(a){a=a|0;var c=0,d=0;c=Wpb(208)|0;f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=33620;d=c+12|0;f[c+196>>2]=0;f[c+200>>2]=0;b[c+204>>0]=0;Krb(d|0,-1,184)|0;f[a>>2]=d;f[a+4>>2]=c;return}function v2a(a){a=a|0;var b=0;f[a>>2]=33620;b=f[a+200>>2]|0;if(b|0)Ppb(b);Hpb(a);return}function w2a(a){a=a|0;var b=0;f[a>>2]=33620;b=f[a+200>>2]|0;if(b|0)Ppb(b);Hpb(a);Zpb(a);return}function x2a(a){a=a|0;a=f[a+200>>2]|0;if(!a)return;Ppb(a);return}function y2a(a){a=a|0;Zpb(a);return}function z2a(a,c,d){a=a|0;c=+c;d=d|0;p[a>>3]=c;f[a+8>>2]=d;b[a+12>>0]=0;return}function A2a(a,c,d){a=a|0;c=+c;d=d|0;p[a>>3]=c;f[a+8>>2]=d;b[a+12>>0]=1;return}function B2a(a,b){a=a|0;b=b|0;return +p[a>>3]<+p[b>>3]|0}function C2a(a,b,c){a=a|0;b=+b;c=+c;var d=0.0;d=+W(+c);p[a+400>>3]=d;D2a(a,d-b,d-c);return}function D2a(a,b,c){a=a|0;b=+b;c=+c;var d=0.0;if(c==0.0)if(b<2.2250738585072014e-308){b=2.2250738585072014e-308;c=2.2250738585072014e-308}else c=2.2250738585072014e-308;d=+U(+((+V(+b)-+V(+c))/31.0));p[a+16>>3]=c;c=d*(d*(d*c));p[a+40>>3]=c;c=d*c;p[a+64>>3]=c;c=d*c;p[a+88>>3]=c;c=d*c;p[a+112>>3]=c;c=d*c;p[a+136>>3]=c;c=d*c;p[a+160>>3]=c;c=d*c;p[a+184>>3]=c;c=d*c;p[a+208>>3]=c;c=d*c;p[a+232>>3]=c;c=d*c;p[a+256>>3]=c;c=d*c;p[a+280>>3]=c;c=d*c;p[a+304>>3]=c;c=d*c;p[a+328>>3]=c;p[a+352>>3]=d*c;p[a+376>>3]=b;return}function E2a(a){a=a|0;return (f[a>>2]|0)==0|0}function F2a(a){a=a|0;G2a(a);return}function G2a(a){a=a|0;var b=0,c=0,d=0;b=f[a+24>>2]|0;c=a+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+48>>2]|0;c=a+52|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+72>>2]|0;c=a+76|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+96>>2]|0;c=a+100|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+120>>2]|0;c=a+124|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+144>>2]|0;c=a+148|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+168>>2]|0;c=a+172|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+192>>2]|0;c=a+196|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+216>>2]|0;c=a+220|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+240>>2]|0;c=a+244|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+264>>2]|0;c=a+268|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+288>>2]|0;c=a+292|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+312>>2]|0;c=a+316|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+336>>2]|0;c=a+340|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+360>>2]|0;c=a+364|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);b=f[a+384>>2]|0;c=a+388|0;d=f[c>>2]|0;if((d|0)==(b|0)){d=a+4|0;f[d>>2]=0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;return}f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);d=a+4|0;f[d>>2]=0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;return}function H2a(a,b){a=a|0;b=b|0;I2a(a,b);return}function I2a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;v=w;f[c>>2]=(f[c>>2]|0)+-1;t=c+4|0;d=f[t>>2]|0;a:do if(d|0){g=f[c+16+(d*24|0)+8>>2]|0;e=f[c+16+(d*24|0)+12>>2]|0;if((g|0)==(e|0)){do{d=d+-1|0;f[t>>2]=d;if(!d)break a;g=f[c+16+(d*24|0)+8>>2]|0;e=f[c+16+(d*24|0)+12>>2]|0}while((g|0)==(e|0));h=e-g|0;r=h>>4;if((h|0)>16){s=(r+-2|0)/2|0;if((h|0)>=32){q=s;while(1){l=g+(q<<4)|0;d=q<<4;if((s|0)>=(d>>4|0)){d=d>>3|1;e=g+(d<<4)|0;i=e;h=d+1|0;if((h|0)<(r|0)){j=e+16|0;if(+p[e>>3]<+p[j>>3]){d=h;e=j}else e=i}else e=i;o=+p[l>>3];if(!(+p[e>>3]<o)){n=g+(q<<4)+8|0;m=f[n>>2]|0;n=f[n+4>>2]|0;while(1){k=l;l=e;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];b[k+12>>0]=b[l+12>>0]|0;if((s|0)<(d|0))break;d=d<<1|1;i=g+(d<<4)|0;h=i;j=d+1|0;if((j|0)<(r|0)){k=i+16|0;if(+p[i>>3]<+p[k>>3]){d=j;h=k}}if(+p[h>>3]<o)break;else e=h}l=e;p[l>>3]=o;l=l+8|0;f[l>>2]=m;b[l+4>>0]=n}}if((q|0)>0)q=q+-1|0;else break}g=f[t>>2]|0;d=g;e=f[c+16+(g*24|0)+12>>2]|0;g=f[c+16+(g*24|0)+8>>2]|0}}}s=c+16+(d*24|0)+12|0;i=e-g|0;d=i>>4;if((i|0)>16){r=e+-16|0;f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];f[v+12>>2]=f[g+12>>2];f[g>>2]=f[r>>2];f[g+4>>2]=f[r+4>>2];f[g+8>>2]=f[r+8>>2];b[g+12>>0]=b[r+12>>0]|0;f[r>>2]=f[v>>2];f[r+4>>2]=f[v+4>>2];f[r+8>>2]=f[v+8>>2];b[r+12>>0]=b[v+12>>0]|0;r=d+-1|0;if((d|0)!=2){q=(d+-3|0)/2|0;d=g+16|0;h=d;if((i|0)>48){e=g+32|0;if(+p[d>>3]<+p[e>>3])d=2;else{d=1;e=h}}else{d=1;e=h}o=+p[g>>3];if(!(+p[e>>3]<o)){n=g+8|0;m=f[n>>2]|0;n=f[n+4>>2]|0;l=g;while(1){v=l;l=e;f[v>>2]=f[l>>2];f[v+4>>2]=f[l+4>>2];f[v+8>>2]=f[l+8>>2];b[v+12>>0]=b[l+12>>0]|0;if((q|0)<(d|0))break;d=d<<1|1;i=g+(d<<4)|0;h=i;j=d+1|0;if((j|0)<(r|0)){k=i+16|0;if(+p[i>>3]<+p[k>>3]){d=j;h=k}}if(+p[h>>3]<o)break;else e=h}v=e;p[v>>3]=o;v=v+8|0;f[v>>2]=m;b[v+4>>0]=n}}}v=(f[s>>2]|0)+-16|0;f[a>>2]=f[v>>2];f[a+4>>2]=f[v+4>>2];f[a+8>>2]=f[v+8>>2];f[a+12>>2]=f[v+12>>2];f[s>>2]=v;u=w;return}while(0);h=c+8|0;t=f[h>>2]|0;i=f[c+24>>2]|0;d=i+(t<<4)|0;f[v>>2]=f[d>>2];f[v+4>>2]=f[d+4>>2];f[v+8>>2]=f[d+8>>2];f[v+12>>2]=f[d+12>>2];t=t+1|0;f[h>>2]=t;d=c+28|0;c=f[d>>2]|0;e=i;g=c;if((t|0)==(c-e>>4|0)){f[h>>2]=0;if((i|0)!=(g|0))f[d>>2]=g+(~((g+-16-e|0)>>>4)<<4)};f[a>>2]=f[v>>2];f[a+4>>2]=f[v+4>>2];f[a+8>>2]=f[v+8>>2];f[a+12>>2]=f[v+12>>2];u=w;return}function J2a(a,b){a=a|0;b=b|0;return +(+p[a+400>>3]-+p[b>>3])}function K2a(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=33648;Zwa(f[a+8>>2]|0);b=f[a+472>>2]|0;if(b|0){c=a+476|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-16-b|0)>>>4)<<4);Zpb(b)}xXa(a+80|0);return}function L2a(a){a=a|0;wf()}function M2a(){f[52805]=0;f[52806]=0;f[52807]=0;return}function N2a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,o=0.0;f[a>>2]=33648;b[a+4>>0]=b[c>>0]|0;j=a+8|0;f[j>>2]=d;c=a+12|0;f[c>>2]=e;i=a+16|0;f[i>>2]=0;d=a+20|0;f[d>>2]=0;h=a+24|0;f[h>>2]=0;f[a+28>>2]=g;b[a+57>>0]=0;b[a+58>>0]=0;f[a+64>>2]=0;f[a+68>>2]=0;f[a+72>>2]=0;f[a+88>>2]=0;f[a+92>>2]=0;f[a+96>>2]=0;f[a+112>>2]=0;f[a+116>>2]=0;f[a+120>>2]=0;f[a+136>>2]=0;f[a+140>>2]=0;f[a+144>>2]=0;f[a+160>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;f[a+184>>2]=0;f[a+188>>2]=0;f[a+192>>2]=0;f[a+208>>2]=0;f[a+212>>2]=0;f[a+216>>2]=0;f[a+232>>2]=0;f[a+236>>2]=0;f[a+240>>2]=0;f[a+256>>2]=0;f[a+260>>2]=0;f[a+264>>2]=0;f[a+280>>2]=0;f[a+284>>2]=0;f[a+288>>2]=0;f[a+304>>2]=0;f[a+308>>2]=0;f[a+312>>2]=0;f[a+328>>2]=0;f[a+332>>2]=0;f[a+336>>2]=0;f[a+352>>2]=0;f[a+356>>2]=0;f[a+360>>2]=0;f[a+376>>2]=0;f[a+380>>2]=0;f[a+384>>2]=0;f[a+400>>2]=0;f[a+404>>2]=0;f[a+408>>2]=0;f[a+424>>2]=0;f[a+428>>2]=0;f[a+432>>2]=0;f[a+448>>2]=0;f[a+452>>2]=0;f[a+456>>2]=0;p[a+80>>3]=2.2250738585072014e-308;p[a+104>>3]=8.938889586303288e-249;p[a+128>>3]=6.5957363400673356e-229;p[a+152>>3]=4.8667944097154903e-209;p[a+176>>3]=3.5910604374152623e-189;p[a+200>>3]=2.6497349136888998e-169;p[a+224>>3]=1.9551592726396706e-149;p[a+248>>3]=1.4426529090289578e-129;p[a+272>>3]=1.0644899600019857e-109;p[a+296>>3]=7.85454954447594e-90;p[a+320>>3]=5.795634610448756e-70;p[a+344>>3]=4.2764235361472415e-50;p[a+368>>3]=3.1554436208838314e-30;p[a+392>>3]=2.3283064365385257e-10;p[a+416>>3]=17179869183.998657;p[a+440>>3]=1797693134862315708145274.0e284;g=a+472|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;b[g+16>>0]=0;Ywa(f[j>>2]|0);c=f[c>>2]|0;if(!c){j=a+32|0;f[j>>2]=0;j=a+40|0;p[j>>3]=-1.0;return}o=+p[e+32>>3]-+p[c+56>>3];m=+p[e+40>>3]-+p[c+64>>3];l=+p[e+48>>3]-+p[c+72>>3];k=+L(+(o*o+(m*m+l*l)));n[i>>2]=o/k;n[d>>2]=m/k;n[h>>2]=l/k;j=a+32|0;f[j>>2]=0;j=a+40|0;p[j>>3]=-1.0;return}function O2a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;h=n+20|0;g=n+16|0;e=n+12|0;i=n+8|0;k=n+4|0;l=n;m=Owa(f[a+8>>2]|0)|0;if(!(b[a+4>>0]|0)){b[a+56>>0]=0;c=0}else{d=(f[m+12>>2]|0)!=0;j=a+56|0;c=d&1;b[j>>0]=c;if(d){c=f[52805]|0;o=f[52806]|0;d=o+(~((o+-4-c|0)>>>2)<<2)|0;if((o|0)!=(c|0)){f[52806]=d;c=d}f[i>>2]=c;f[k>>2]=f[m+8>>2];f[l>>2]=0;f[e>>2]=f[i>>2];f[g>>2]=f[k>>2];f[h>>2]=f[l>>2];P2a(211220,e,g,h)|0;Q2a(f[52805]|0,f[52806]|0);f[a+60>>2]=f[52805];c=b[j>>0]|0}}f[a+32>>2]=0;p[a+40>>3]=-1.0;f[a+48>>2]=4;if(!(c<<24>>24)){S2a(a);u=n;return}else{R2a(a,0);u=n;return}}function P2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=f[a>>2]|0;j=n;k=(f[b>>2]|0)-j|0;b=n+(k>>2<<2)|0;n=f[c>>2]|0;q=f[d>>2]|0;i=q;g=n;if((n|0)==(q|0)){r=b;return r|0}h=0;d=n;while(1){l=h+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else h=l}if((h|0)<=-1){r=b;return r|0}p=a+8|0;e=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((h|0)<(e-d>>2|0)){e=d-b|0;d=e>>2;if((h|0)<(d|0)){g=i;d=o}else{h=(e|0)>0;if(h)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{e=g;d=o;do{f[d>>2]=f[e+8>>2];e=f[e>>2]|0;d=(f[r>>2]|0)+4|0;f[r>>2]=d}while((q|0)!=(e|0))}if(!h){r=b;return r|0}}i=d-(b+(l<<2))|0;j=i>>2;e=b+(j<<2)|0;if(e>>>0<o>>>0){h=d;do{f[h>>2]=f[e>>2];e=e+4|0;h=(f[r>>2]|0)+4|0;f[r>>2]=h}while(e>>>0<o>>>0)}if(j|0)Jrb(d+(0-j<<2)|0,b|0,i|0)|0;d=f[c>>2]|0;if((g|0)==(d|0)){r=b;return r|0}else e=b;while(1){f[e>>2]=f[d+8>>2];d=f[d>>2]|0;if((g|0)==(d|0))break;else e=e+4|0}return b|0}d=(d-j>>2)+l|0;if(d>>>0>1073741823)fob(a);l=e-j|0;e=l>>1;e=l>>2>>>0<536870911?(e>>>0<d>>>0?d:e):1073741823;l=b;d=k>>2;do if(!e)m=0;else if(e>>>0>1073741823)ud();else{m=Wpb(e<<2)|0;break}while(0);k=m+(d<<2)|0;j=m+(e<<2)|0;g=k;d=k;h=n;e=n;while(1){f[g>>2]=f[e+8>>2];i=d+4|0;d=i;e=f[h>>2]|0;if((q|0)==(e|0))break;else{g=i;h=e}}g=f[a>>2]|0;e=l-g|0;h=k+(0-(e>>2)<<2)|0;if((e|0)>0)Irb(h|0,g|0,e|0)|0;e=(f[r>>2]|0)-l|0;if((e|0)>0){Irb(i|0,b|0,e|0)|0;d=i+(e>>>2<<2)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=d;f[p>>2]=j;if(!b){r=k;return r|0}Zpb(b);r=k;return r|0}function Q2a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0;a:while(1){p=b;r=b+-4|0;q=b+-8|0;while(1){b:while(1){o=a;c=p-o|0;d=c>>2;switch(d|0){case 2:{s=5;break a}case 3:{s=9;break a}case 4:{s=10;break a}case 5:{s=11;break a}case 1:case 0:{s=84;break a}default:{}}if((c|0)<124){s=13;break a}l=a+(((d|0)/2|0)<<2)|0;if((c|0)>3996){c=(d|0)/4|0;c=s3a(a,a+(c<<2)|0,l,l+(c<<2)|0,r)|0}else c=q3a(a,l,r)|0;j=f[a>>2]|0;d=f[l>>2]|0;m=+n[j+144>>2];m=!(m<=4.827976454180316e-07)?m:0.0;g=+n[d+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;if(m<g){d=r;break}if(!(m>g)){t=+n[j+148>>2];e=+n[d+148>>2];if((!(t>=.9999995231628418)?t:1.0)<(!(e>=.9999995231628418)?e:1.0)){d=r;break}}if((a|0)!=(q|0)){i=d+148|0;d=q;do{h=f[d>>2]|0;e=+n[h+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;if(e<g){s=59;break b}if(!(e>g)){e=+n[h+148>>2];t=+n[i>>2];if((!(e>=.9999995231628418)?e:1.0)<(!(t>=.9999995231628418)?t:1.0)){s=59;break b}}d=d+-4|0}while((a|0)!=(d|0))}c=a+4|0;d=f[r>>2]|0;e=+n[d+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;i=d;do if(!(m<e)){if(!(m>e)){g=+n[j+148>>2];t=+n[d+148>>2];if((!(g>=.9999995231628418)?g:1.0)<(!(t>=.9999995231628418)?t:1.0))break}if((c|0)==(r|0)){s=84;break a}h=j+148|0;while(1){d=f[c>>2]|0;e=+n[d+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;if(m<e)break;if(!(m>e)){g=+n[h>>2];t=+n[d+148>>2];if((!(g>=.9999995231628418)?g:1.0)<(!(t>=.9999995231628418)?t:1.0))break}c=c+4|0;if((c|0)==(r|0)){s=84;break a}}f[c>>2]=i;f[r>>2]=d;c=c+4|0}while(0);if((c|0)==(r|0)){s=84;break a}else d=r;while(1){j=f[a>>2]|0;h=f[c>>2]|0;g=+n[j+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;e=+n[h+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;c:do if(!(g<e)){i=j+148|0;do{if(!(g>e)){m=+n[i>>2];t=+n[h+148>>2];if((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0))break c}c=c+4|0;h=f[c>>2]|0;e=+n[h+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0}while(!(g<e))}while(0);i=j+148|0;while(1){d=d+-4|0;h=f[d>>2]|0;e=+n[h+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;if(g<e)continue;if(g>e)break;m=+n[i>>2];t=+n[h+148>>2];if(!((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0)))break}if(c>>>0>=d>>>0){a=c;continue b}o=f[c>>2]|0;f[c>>2]=h;f[d>>2]=o;c=c+4|0}}if((s|0)==59){s=0;f[a>>2]=h;f[d>>2]=j;c=c+1|0}h=a+4|0;d:do if(h>>>0<d>>>0)while(1){k=f[l>>2]|0;g=+n[k+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;k=k+148|0;while(1){i=f[h>>2]|0;e=+n[i+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;if(!(e<g)){if(e>g)break;m=+n[i+148>>2];t=+n[k>>2];if(!((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0)))break}h=h+4|0}d=d+-4|0;j=f[d>>2]|0;e=+n[j+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;e:do if(!(e<g))do{if(!(e>g)){m=+n[j+148>>2];t=+n[k>>2];if((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0))break e}d=d+-4|0;j=f[d>>2]|0;e=+n[j+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0}while(!(e<g));while(0);if(h>>>0>d>>>0)break d;f[h>>2]=f[d>>2];f[d>>2]=i;l=(l|0)==(h|0)?d:l;h=h+4|0;c=c+1|0}while(0);do if((h|0)!=(l|0)){d=f[l>>2]|0;i=f[h>>2]|0;e=+n[d+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;g=+n[i+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;j=i;k=d;if(!(e<g)){if(e>g)break;m=+n[d+148>>2];t=+n[i+148>>2];if(!((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0)))break}f[h>>2]=k;f[l>>2]=j;c=c+1|0}while(0);if(!c){c=t3a(a,h)|0;d=h+4|0;if(t3a(d,b)|0){s=83;break}if(c){a=d;continue}}l=h;if((l-o|0)>=(p-l|0)){s=82;break}Q2a(a,h);a=h+4|0}if((s|0)==82){s=0;Q2a(h+4|0,b);b=h;continue}else if((s|0)==83){s=0;if(c){s=84;break}else{b=h;continue}}}if((s|0)==5){d=f[r>>2]|0;h=f[a>>2]|0;e=+n[d+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;g=+n[h+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;b=h;c=d;if(!(e<g)){if(e>g)return;m=+n[d+148>>2];t=+n[h+148>>2];if(!((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0)))return}f[a>>2]=c;f[r>>2]=b;return}else if((s|0)==9){q3a(a,a+4|0,r)|0;return}else if((s|0)==10){r3a(a,a+4|0,a+8|0,r)|0;return}else if((s|0)==11){s3a(a,a+4|0,a+8|0,a+12|0,r)|0;return}else if((s|0)==13){d=a+8|0;q3a(a,a+4|0,d)|0;c=a+12|0;if((c|0)==(b|0))return;while(1){h=f[c>>2]|0;i=f[d>>2]|0;g=+n[h+144>>2];g=!(g<=4.827976454180316e-07)?g:0.0;e=+n[i+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;l=h;j=i;if(g<e){h=h+148|0;s=18}else if(!(g>e)){h=h+148|0;m=+n[h>>2];t=+n[i+148>>2];if((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0))s=18}if((s|0)==18){s=0;f[c>>2]=j;f:do if((d|0)!=(a|0))while(1){i=d+-4|0;j=f[i>>2]|0;e=+n[j+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;k=j;if(!(g<e)){if(g>e)break f;m=+n[h>>2];t=+n[j+148>>2];if(!((!(m>=.9999995231628418)?m:1.0)<(!(t>=.9999995231628418)?t:1.0)))break f}f[d>>2]=k;if((i|0)==(a|0)){d=i;break}else d=i}while(0);f[d>>2]=l}d=c+4|0;if((d|0)==(b|0))break;else{r=c;c=d;d=r}}return}else if((s|0)==84)return}function R2a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,o=0,q=0.0,r=0.0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0;X=u;u=u+48|0;y=X;F=X+40|0;N=a+8|0;O=(uva(f[N>>2]|0)|0)+112|0;P=+p[O>>3];P=!(P<=4.827976454180316e-07)?P:0.0;O=(n[s>>2]=P,f[s>>2]|0);d=(uva(f[N>>2]|0)|0)+120|0;Q=+p[d>>3];Q=!(Q>=.9999995231628418)?Q:1.0;d=(n[s>>2]=Q,f[s>>2]|0);x=f[52806]|0;R=a+58|0;z=a+472|0;A=a+476|0;B=a+60|0;S=a+57|0;w=a+60|0;T=a+488|0;C=a+472|0;U=a+484|0;D=a+12|0;E=a+28|0;G=y+8|0;H=y+16|0;I=y+24|0;J=a+480|0;V=a+32|0;K=a+32|0;L=a+40|0;M=a+48|0;while(1){if(b[R>>0]|0)if(!(b[S>>0]|0)){e3a(a);if(f[V>>2]|0){W=60;break}b[S>>0]=1}h=f[z>>2]|0;g=f[A>>2]|0;if((h|0)==(g|0)){g=f[B>>2]|0;if((g|0)!=(x|0)){v=f[g>>2]|0;e=+n[v+144>>2];e=!(e<=4.827976454180316e-07)?e:0.0;j=+n[v+148>>2];j=!(j>=.9999995231628418)?j:1.0;if(!((b[S>>0]|0)!=0|e<P))if(P<e|!(j<Q)){if(c)if(P==e)g=Q!=j;else g=1;else g=0;if(!(b[R>>0]|0)){if(!g){f[U>>2]=0;b[R>>0]=1;b[T>>0]=0;W=16}}else W=16;if((W|0)==16){W=0;e3a(a);if(f[V>>2]|0){W=60;break}}b[S>>0]=1}if(c)if(P!=e|Q!=j){W=60;break}g=f[w>>2]|0;v=g;while(1){h=v+4|0;f[B>>2]=h;if((h|0)==(x|0))break;t=f[h>>2]|0;q=+n[t+144>>2];r=+n[t+148>>2];if((!(q<=4.827976454180316e-07)?q:0.0)!=e|(!(r>=.9999995231628418)?r:1.0)!=j)break;else v=h}b[T>>0]=0;if((g|0)!=(h|0))while(1){t=f[g>>2]|0;do if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,t)|0){h=t+196|0;if(!(f[h>>2]&64)){i=f[(f[t+4>>2]|0)+44>>2]|0;if((f[i+32>>2]|0)!=(0-((f[i+24>>2]|0)+(f[i+28>>2]|0))|0))if(Qqa(i+64|0)|0){PWa(y,f[N>>2]|0,f[D>>2]|0,t,0);a:do if(!(f[h>>2]&2)){o=f[E>>2]|0;i=f[o>>2]|0;o=f[o+4>>2]|0;if((i|0)==(o|0))W=37;else{e=+p[y>>3];j=+p[G>>3];q=+p[H>>3];r=+p[I>>3];h=0;do{k=f[i>>2]|0;m=f[i+4>>2]|0;if((k|0)==(m|0))h=(h|0)>0?h:0;else{l=2;do{Z=+p[k+24>>3]+(e*+p[k>>3]+(j*+p[k+8>>3]+q*+p[k+16>>3]));Y=!(Z*Z>=r)?1:Z<0.0?0:2;l=(Y|0)<(l|0)?Y:l;k=k+32|0}while((k|0)!=(m|0));if((l|0)==2)break a;else h=(h|0)<(l|0)?l:h}i=i+12|0}while((i|0)!=(o|0));if((h|0)!=2)W=37}}else W=37;while(0);if((W|0)==37){W=0;e=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,y);if(e>=0.0){p[y>>3]=e;f[F>>2]=t;h=f[A>>2]|0;if(h>>>0<(f[J>>2]|0)>>>0){p[h>>3]=e;f[h+8>>2]=t;f[A>>2]=h+16}else T2a(z,y,F);break}}}}}while(0);if((g|0)==(v|0))break;else g=g+4|0}f3a(f[C>>2]|0,f[A>>2]|0);f[U>>2]=3;b[T>>0]=1;h=f[z>>2]|0;g=f[A>>2]|0;W=45}}else W=45;if((W|0)==45){W=0;if((h|0)!=(g|0)){f[K>>2]=f[g+-8>>2];p[L>>3]=+p[g+-16>>3];f[M>>2]=f[U>>2];f[A>>2]=g+-16;if(f[V>>2]|0){W=60;break}}}if((f[w>>2]|0)==(x|0)){W=48;break}}if((W|0)==48){if(!(b[S>>0]|0)){g=f[52806]|0;if((f[52805]|0)==(g|0))g=O;else{d=f[g+-4>>2]|0;e=+n[d+144>>2];g=!(e<=4.827976454180316e-07)?(n[s>>2]=e,f[s>>2]|0):0;e=+n[d+148>>2];d=!(e>=.9999995231628418)?(n[s>>2]=e,f[s>>2]|0):1065353216}if(c)if(P==(f[s>>2]=g,+n[s>>2]))d=Q!=(f[s>>2]=d,+n[s>>2]);else d=1;else d=0;if(!(b[R>>0]|0)){if(!d){f[U>>2]=0;b[R>>0]=1;b[T>>0]=0;W=57}}else W=57;if((W|0)==57){e3a(a);if(f[V>>2]|0){u=X;return}}b[S>>0]=1}f[U>>2]=4;u=X;return}else if((W|0)==60){u=X;return}}function S2a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0;x=0;y=u;u=u+1792|0;if(!(b[(a+488|0)>>0]|0))if(fxa(f[(a+8|0)>>2]|0)|0){c=(uwa(f[(a+8|0)>>2]|0)|0)+8|0;c=f[c>>2]|0;a:do if(!c){d=0;c=0}else{d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c){d=0;c=0;break a}d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0)}while(0);b:do if(c|0)c:while(1){do{r=f[d+12>>2]|0;do if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[(r+196|0)>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(y+16|0,f[(a+8|0)>>2]|0,f[(a+12|0)>>2]|0,r,0);d:do if(!(f[(r+196|0)>>2]&2)){l=f[(a+28|0)>>2]|0;h=f[l>>2]|0;l=f[l+4>>2]|0;if((h|0)==(l|0))x=22;else{g=+p[(y+16|0)>>3];m=+p[((y+16|0)+8|0)>>3];o=+p[((y+16|0)+16|0)>>3];q=+p[((y+16|0)+24|0)>>3];e=0;do{i=f[h>>2]|0;k=f[h+4>>2]|0;if((i|0)==(k|0))e=(e|0)>0?e:0;else{j=2;do{z=+p[i+24>>3]+(g*+p[i>>3]+(m*+p[i+8>>3]+o*+p[i+16>>3]));w=!(z*z>=q)?1:z<0.0?0:2;j=(w|0)<(j|0)?w:j;i=i+32|0}while((i|0)!=(k|0));if((j|0)==2)break d;else e=(e|0)<(j|0)?j:e}h=h+12|0}while((h|0)!=(l|0));if((e|0)!=2)x=22}}else x=22;while(0);if((x|0)==22){x=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,y+16|0);if(g>=0.0){p[(y+16|0)>>3]=g;f[y>>2]=r;e=f[(a+476|0)>>2]|0;if(e>>>0<(f[(a+480|0)>>2]|0)>>>0){p[e>>3]=g;f[e+8>>2]=r;f[(a+476|0)>>2]=e+16}else T2a(a+472|0,y+16|0,y);break}}}}while(0);d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break b;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue c}}while(0);U2a(f[a+472>>2]|0,f[(a+476|0)>>2]|0);f[a+484>>2]=3;b[(a+488|0)>>0]=1}c=f[(a+484|0)>>2]|0;if((c|0)==3){c=f[(a+476|0)>>2]|0;if((f[a+472>>2]|0)==(c|0))c=f[a+32>>2]|0;else{x=f[c+-8>>2]|0;f[a+32>>2]=x;p[a+40>>3]=+p[c+-16>>3];f[a+48>>2]=3;f[(a+476|0)>>2]=c+-16;c=x}if(c|0){u=y;return}b[(a+488|0)>>0]=0;f[(a+484|0)>>2]=4;u=y;return}w=f[(a+12|0)>>2]|0?a+16|0:0;e:{d=1;c=c|0;if(d)switch(c|0){case 0:{f[(y+56|0)>>2]=y+80|0;if(!(b[(a+488|0)>>0]|0)){if(!(Pg[f[(f[a>>2]|0)+8>>2]&255](a,a+64|0)|0)){f[(a+484|0)>>2]=4;u=y;return}c=yva(f[(a+8|0)>>2]|0)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(y+72|0)>>2]=f[c>>2];f[(y+68|0)>>2]=f[(c+4|0)>>2];f[(y+76|0)>>2]=f[(y+72|0)>>2];f[y>>2]=f[(y+68|0)>>2];b[(y+16|0)>>0]=b[(y+81|0)>>0]|0;d=bja(y+76|0,y,y+16|0)|0;f[(y+64|0)>>2]=d;f[(y+60|0)>>2]=f[(c+4|0)>>2];f[y>>2]=f[(y+64|0)>>2];f[(y+16|0)>>2]=f[(y+60|0)>>2];cja(c,y,y+16|0)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{V2a(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));c=Uwa(f[(a+8|0)>>2]|0)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(y+72|0)>>2]=f[c>>2];f[(y+68|0)>>2]=f[(c+4|0)>>2];f[(y+76|0)>>2]=f[(y+72|0)>>2];f[y>>2]=f[(y+68|0)>>2];b[(y+16|0)>>0]=b[(y+81|0)>>0]|0;d=$ia(y+76|0,y,y+16|0)|0;f[(y+64|0)>>2]=d;f[(y+60|0)>>2]=f[(c+4|0)>>2];f[y>>2]=f[(y+64|0)>>2];f[(y+16|0)>>2]=f[(y+60|0)>>2];aja(c,y,y+16|0)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{W2a(a,f[c>>2]|0,y+56|0);c=c+4|0}while((c|0)!=(d|0));b[(a+488|0)>>0]=1}f:do if(!(E2a(a+64|0)|0)){g:while(1){H2a(y,a+64|0);switch(b[(y+12|0)>>0]|0){case 0:break g;case 1:{e=f[(y+8|0)>>2]|0;c=f[e+12>>2]|0;d=f[e+16>>2]|0;if((c|0)!=(d|0))do{Y2a(a,c);c=c+72|0}while((c|0)!=(d|0));v=f[(a+12|0)>>2]|0?a+16|0:0;c=f[e+24>>2]|0;t=f[e+28>>2]|0;if((c|0)!=(t|0))do{d=f[c+4>>2]|0;s=f[c+8>>2]|0;if((d|0)!=(s|0))do{r=f[d>>2]|0;h:do if((f[(r+196|0)>>2]&2|0)==0?(b[r+203>>0]&3)==1:0)if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[(r+196|0)>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(y+16|0,f[(a+8|0)>>2]|0,f[(a+12|0)>>2]|0,r,0);i:do if(!(f[(r+196|0)>>2]&2)){l=f[(a+28|0)>>2]|0;h=f[l>>2]|0;l=f[l+4>>2]|0;if((h|0)==(l|0)){x=75;break}g=+p[(y+16|0)>>3];m=+p[((y+16|0)+8|0)>>3];o=+p[((y+16|0)+16|0)>>3];q=+p[((y+16|0)+24|0)>>3];e=0;do{i=f[h>>2]|0;k=f[h+4>>2]|0;if((i|0)==(k|0))e=(e|0)>0?e:0;else{j=2;do{z=+p[i+24>>3]+(g*+p[i>>3]+(m*+p[i+8>>3]+o*+p[i+16>>3]));A=!(z*z>=q)?1:z<0.0?0:2;j=(A|0)<(j|0)?A:j;i=i+32|0}while((i|0)!=(k|0));if((j|0)==2)break i;else e=(e|0)<(j|0)?j:e}h=h+12|0}while((h|0)!=(l|0));if((e|0)!=2)x=75}else x=75;while(0);do if((x|0)==75){x=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,y+16|0);if(!(g>=0.0))break;do if(v){if(!(f[(r+196|0)>>2]&33554432))break;A=f[r+104>>2]|0;if(+n[v>>2]*+n[A+240>>2]+(+n[(v+4|0)>>2]*+n[A+244>>2]+ +n[(v+8|0)>>2]*+n[A+248>>2])<+n[A+252>>2])break h}while(0);X2a(a+64|0,+p[(a+464|0)>>3]-g,r);break h}while(0)}}while(0);d=d+4|0}while((d|0)!=(s|0));c=c+20|0}while((c|0)!=(t|0));break}default:{}}if(E2a(a+64|0)|0)break f}f[a+32>>2]=f[y+8>>2];z=+J2a(a+64|0,y);p[a+40>>3]=z;f[a+48>>2]=f[(a+484|0)>>2]}while(0);if(!(f[a+32>>2]|0)){b[(a+488|0)>>0]=0;f[(a+484|0)>>2]=1;x=88;break e}u=y;return}default:d=1}if(d)switch(c|0){case 1:{if(!(b[(a+488|0)>>0]|0))x=88;else x=113;break}case 2:{if(!(b[(a+488|0)>>0]|0))x=149;break}default:{u=y;return}}}f[y+112>>2]=a;f[y+672>>2]=w;f[y+1680>>2]=x;f[y+1704>>2]=0;f[y+1708>>2]=0;k3a(y);G=f[y+1704>>2]|0;D=f[y+1708>>2]|0;H=+n[y+1708>>2];f[y+1704>>2]=0;f[y+1708>>2]=0;if((G|0)==5)return}function T2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>4;d=m+1|0;if(d>>>0>268435455)fob(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>3;d=n>>4>>>0<134217727?(e>>>0<d>>>0?d:e):268435455;do if(!d){h=0;j=0}else if(d>>>0>268435455)ud();else{j=Wpb(d<<4)|0;h=j;break}while(0);e=h+(m<<4)|0;p[e>>3]=+p[b>>3];f[h+(m<<4)+8>>2]=f[c>>2];if((l|0)>0)Irb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+16;f[g>>2]=h+(d<<4);if(!k)return;Zpb(k);return}function U2a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){q=b;r=b+-16|0;t=b+-8|0;while(1){b:while(1){o=a;c=q-o|0;g=c>>4;switch(g|0){case 2:{s=5;break a}case 3:{s=7;break a}case 4:{s=15;break a}case 5:{s=16;break a}case 1:case 0:{s=84;break a}default:{}}if((c|0)<112){s=22;break a}m=(g|0)/2|0;l=a+(m<<4)|0;do if((c|0)>15984){k=(g|0)/4|0;n=a+(k<<4)|0;h=l+(k<<4)|0;c=c3a(a,n,l,h)|0;d=+p[r>>3];e=+p[h>>3];if(!(d>e)){g=l;break}p[h>>3]=d;p[r>>3]=e;j=h+8|0;g=f[j>>2]|0;f[j>>2]=f[t>>2];f[t>>2]=g;g=c+1|0;d=+p[h>>3];e=+p[l>>3];if(d>e){p[l>>3]=d;p[h>>3]=e;h=a+(m<<4)+8|0;g=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=g;g=c+2|0;d=+p[l>>3];e=+p[n>>3];if(d>e){p[n>>3]=d;p[l>>3]=e;g=a+(k<<4)+8|0;m=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=m;d=+p[n>>3];e=+p[a>>3];if(d>e){p[a>>3]=d;p[n>>3]=e;m=a+8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;c=c+4|0;g=l}else{c=c+3|0;g=l}}else{c=g;g=l}}else{c=g;g=l}}else{d=+p[l>>3];i=+p[a>>3];e=+p[r>>3];c=e>d;if(!(d>i)){if(!c){c=0;g=l;break}p[l>>3]=e;p[r>>3]=d;c=a+(m<<4)+8|0;n=f[c>>2]|0;f[c>>2]=f[t>>2];f[t>>2]=n;d=+p[l>>3];e=+p[a>>3];if(!(d>e)){c=1;g=l;break}p[a>>3]=d;p[l>>3]=e;n=a+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;c=2;g=l;break}if(c){p[a>>3]=e;p[r>>3]=i;g=a+8|0;c=f[g>>2]|0;f[g>>2]=f[t>>2];f[t>>2]=c;c=1;g=l;break}p[a>>3]=d;p[l>>3]=i;n=a+8|0;c=a+(m<<4)+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;d=+p[r>>3];if(d>i){p[l>>3]=d;p[r>>3]=i;f[c>>2]=f[t>>2];f[t>>2]=g;c=2;g=l}else{c=1;g=l}}while(0);i=+p[a>>3];d=+p[g>>3];if(i>d){g=r;break}else h=r;while(1){g=h+-16|0;if((a|0)==(g|0))break;e=+p[g>>3];if(e>d){s=67;break b}else h=g}c=a+16|0;e=+p[r>>3];if(!(i>e)){if((c|0)==(r|0)){s=84;break a}while(1){d=+p[c>>3];if(i>d)break;c=c+16|0;if((c|0)==(r|0)){s=84;break a}}p[c>>3]=e;p[r>>3]=d;n=c+8|0;o=f[n>>2]|0;f[n>>2]=f[t>>2];f[t>>2]=o;c=c+16|0}if((c|0)==(r|0)){s=84;break a}else g=r;while(1){i=+p[a>>3];while(1){e=+p[c>>3];j=c+16|0;if(i>e)break;else c=j}while(1){h=g+-16|0;d=+p[h>>3];if(i>d)g=h;else break}if(c>>>0>=h>>>0){a=c;continue b}p[c>>3]=d;p[h>>3]=e;o=c+8|0;g=g+-8|0;c=f[o>>2]|0;f[o>>2]=f[g>>2];f[g>>2]=c;g=h;c=j}}if((s|0)==67){s=0;p[a>>3]=e;p[g>>3]=i;k=a+8|0;n=h+-8|0;m=f[k>>2]|0;f[k>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}h=a+16|0;c:do if(h>>>0<g>>>0)while(1){i=+p[l>>3];while(1){e=+p[h>>3];k=h+16|0;if(e>i)h=k;else break}while(1){j=g+-16|0;d=+p[j>>3];if(d>i)break;else g=j}if(h>>>0>j>>>0){g=l;break c}p[h>>3]=d;p[j>>3]=e;m=h+8|0;g=g+-8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;l=(l|0)==(h|0)?j:l;g=j;h=k;c=c+1|0}else g=l;while(0);if((h|0)!=(g|0)){d=+p[g>>3];e=+p[h>>3];if(d>e){p[h>>3]=d;p[g>>3]=e;l=h+8|0;n=g+8|0;m=f[l>>2]|0;f[l>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}}if(!c){c=d3a(a,h)|0;g=h+16|0;if(d3a(g,b)|0){s=83;break}if(c){a=g;continue}}n=h;if((n-o|0)>=(q-n|0)){s=82;break}U2a(a,h);a=h+16|0}if((s|0)==82){s=0;U2a(h+16|0,b);b=h;continue}else if((s|0)==83){s=0;if(c){s=84;break}else{b=h;continue}}}if((s|0)==5){e=+p[r>>3];d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[r>>3]=d;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}else if((s|0)==7){g=a+16|0;e=+p[g>>3];i=+p[a>>3];c=b+-16|0;d=+p[c>>3];b=d>e;if(!(e>i)){if(!b)return;p[g>>3]=d;p[c>>3]=e;b=a+24|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;d=+p[g>>3];e=+p[a>>3];if(!(d>e))return;p[a>>3]=d;p[g>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=f[b>>2];f[b>>2]=t;return}if(b){p[a>>3]=d;p[c>>3]=i;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}p[a>>3]=e;p[g>>3]=i;s=a+8|0;a=a+24|0;b=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=b;d=+p[c>>3];if(!(d>i))return;p[g>>3]=d;p[c>>3]=i;f[a>>2]=f[t>>2];f[t>>2]=b;return}else if((s|0)==15){c3a(a,a+16|0,a+32|0,r)|0;return}else if((s|0)==16){j=a+16|0;h=a+32|0;c=a+48|0;c3a(a,j,h,c)|0;b=b+-16|0;d=+p[b>>3];e=+p[c>>3];if(!(d>e))return;p[c>>3]=d;p[b>>3]=e;b=a+56|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;e=+p[c>>3];d=+p[h>>3];if(!(e>d))return;p[h>>3]=e;p[c>>3]=d;c=a+40|0;t=f[c>>2]|0;g=f[b>>2]|0;f[c>>2]=g;f[b>>2]=t;d=+p[j>>3];if(!(e>d))return;p[j>>3]=e;p[h>>3]=d;b=a+24|0;t=f[b>>2]|0;f[b>>2]=g;f[c>>2]=t;d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[j>>3]=d;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[b>>2]=t;return}else if((s|0)==22){j=a+32|0;h=a+16|0;d=+p[h>>3];e=+p[a>>3];i=+p[j>>3];c=i>d;do if(d>e){if(c){p[a>>3]=i;p[j>>3]=e;r=a+8|0;t=a+40|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;d=e;break}p[a>>3]=d;p[h>>3]=e;t=a+8|0;c=a+24|0;g=f[t>>2]|0;f[t>>2]=f[c>>2];f[c>>2]=g;if(i>e){p[h>>3]=i;p[j>>3]=e;t=a+40|0;f[c>>2]=f[t>>2];f[t>>2]=g;d=e}else d=i}else if(c){p[h>>3]=i;p[j>>3]=d;c=a+24|0;t=a+40|0;s=f[c>>2]|0;g=f[t>>2]|0;f[c>>2]=g;f[t>>2]=s;if(i>e){p[a>>3]=i;p[h>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[c>>2]=t}}else d=i;while(0);c=a+48|0;if((c|0)==(b|0))return;else{k=c;c=j}while(1){e=+p[k>>3];if(e>d){j=f[k+8>>2]|0;g=k;while(1){p[g>>3]=d;h=c+8|0;f[g+8>>2]=f[h>>2];if((c|0)==(a|0)){c=a;break}g=c+-16|0;d=+p[g>>3];if(!(e>d))break;else{t=c;c=g;g=t}}p[c>>3]=e;f[h>>2]=j}c=k+16|0;if((c|0)==(b|0))break;d=+p[k>>3];t=k;k=c;c=t}return}else if((s|0)==84)return}function V2a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;g=u;u=u+48|0;d=g;l=+n[c+4>>2];k=+n[c+8>>2];j=+n[c+12>>2];i=+n[c+16>>2];h=+n[c+20>>2];p[d>>3]=+n[c>>2];p[d+8>>3]=l;p[d+16>>3]=k;p[d+24>>3]=j;p[d+32>>3]=i;p[d+40>>3]=h;if((a3a(f[a+28>>2]|0,d)|0)!=2)if(+Lg[f[(f[a>>2]|0)+16>>2]&31](a,d)>=0.0){e=c+36|0;if(f[e>>2]|0){hWa(d,c,b[c+48>>0]|0,+n[c+44>>2]);e=f[e>>2]|0;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];f[e+16>>2]=f[d+16>>2];f[e+20>>2]=f[d+20>>2];f[e+52>>2]=f[d+24>>2];f[e+56>>2]=f[d+28>>2];f[e+60>>2]=f[d+32>>2];f[e+64>>2]=f[d+36>>2];f[e+68>>2]=f[d+40>>2];f[e+72>>2]=f[d+44>>2];V2a(a,e);V2a(a,e+52|0)}b3a(a,c);u=g;return}u=g;return}function W2a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0;I=u;u=u+48|0;G=I;J=+n[c+4>>2];g=+n[c+8>>2];l=+n[c+12>>2];m=+n[c+16>>2];o=+n[c+20>>2];p[G>>3]=+n[c>>2];p[G+8>>3]=J;p[G+16>>3]=g;p[G+24>>3]=l;p[G+32>>3]=m;p[G+40>>3]=o;F=a+28|0;if((a3a(f[F>>2]|0,G)|0)!=2)if(+Lg[f[(f[a>>2]|0)+16>>2]&31](a,G)>=0.0){e=c+36|0;if(f[e>>2]|0){hWa(G,c,b[c+48>>0]|0,+n[c+44>>2]);E=f[e>>2]|0;f[E>>2]=f[G>>2];f[E+4>>2]=f[G+4>>2];f[E+8>>2]=f[G+8>>2];f[E+12>>2]=f[G+12>>2];f[E+16>>2]=f[G+16>>2];f[E+20>>2]=f[G+20>>2];f[E+52>>2]=f[G+24>>2];f[E+56>>2]=f[G+28>>2];f[E+60>>2]=f[G+32>>2];f[E+64>>2]=f[G+36>>2];f[E+68>>2]=f[G+40>>2];f[E+72>>2]=f[G+44>>2];W2a(a,E,d);W2a(a,E+52|0,d)}D=a+12|0;E=f[D>>2]|0?a+16|0:0;d=f[c+24>>2]|0;s=f[c+28>>2]|0;if((d|0)==(s|0)){u=I;return}t=a+8|0;v=G+8|0;w=G+16|0;x=G+24|0;y=(E|0)==0;z=a+64|0;A=a+464|0;B=E+4|0;C=E+8|0;do{r=f[d>>2]|0;q=r+196|0;do if(!(f[q>>2]&2))if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[q>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(G,f[t>>2]|0,f[D>>2]|0,r,0);a:do if(!(f[q>>2]&2)){k=f[F>>2]|0;c=f[k>>2]|0;k=f[k+4>>2]|0;if((c|0)==(k|0))H=22;else{g=+p[G>>3];l=+p[v>>3];m=+p[w>>3];o=+p[x>>3];e=0;do{h=f[c>>2]|0;j=f[c+4>>2]|0;if((h|0)==(j|0))e=(e|0)>0?e:0;else{i=2;do{J=+p[h+24>>3]+(g*+p[h>>3]+(l*+p[h+8>>3]+m*+p[h+16>>3]));K=!(J*J>=o)?1:J<0.0?0:2;i=(K|0)<(i|0)?K:i;h=h+32|0}while((h|0)!=(j|0));if((i|0)==2)break a;else e=(e|0)<(i|0)?i:e}c=c+12|0}while((c|0)!=(k|0));if((e|0)!=2)H=22}}else H=22;while(0);if((H|0)==22){H=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,G);if(g>=0.0){if(!y)if(f[q>>2]&33554432|0){K=f[r+104>>2]|0;if(+n[E>>2]*+n[K+240>>2]+(+n[B>>2]*+n[K+244>>2]+ +n[C>>2]*+n[K+248>>2])<+n[K+252>>2])break}X2a(z,+p[A>>3]-g,r);break}}}}while(0);d=d+4|0}while((d|0)!=(s|0));u=I;return}u=I;return}function X2a(a,c,d){a=a|0;c=+c;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+8|0;g=l;p[g>>3]=c;f[a>>2]=(f[a>>2]|0)+1;if(+p[a+16>>3]>c)h=0;else if(+p[a+40>>3]>c)h=1;else if(+p[a+64>>3]>c)h=2;else if(+p[a+88>>3]>c)h=3;else if(+p[a+112>>3]>c)h=4;else if(+p[a+136>>3]>c)h=5;else if(+p[a+160>>3]>c)h=6;else if(+p[a+184>>3]>c)h=7;else if(+p[a+208>>3]>c)h=8;else if(+p[a+232>>3]>c)h=9;else if(+p[a+256>>3]>c)h=10;else if(+p[a+280>>3]>c)h=11;else if(+p[a+304>>3]>c)h=12;else if(+p[a+328>>3]>c)h=13;else if(+p[a+352>>3]>c)h=14;else h=15;i=a+16+(h*24|0)+8|0;j=a+16+(h*24|0)+12|0;e=f[j>>2]|0;if(e>>>0<(f[a+16+(h*24|0)+16>>2]|0)>>>0){z2a(e,c,d);f[j>>2]=(f[j>>2]|0)+16}else $2a(i,g,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=l;return}if(!((h|0)!=0&(h|0)==(e|0))){u=l;return}h=f[i>>2]|0;e=f[j>>2]|0;a=e-h|0;if((a|0)<=16){u=l;return}d=((a>>>4)+-2|0)/2|0;g=h+(d<<4)|0;a=e+-16|0;if(!(B2a(g,a)|0)){u=l;return};f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[k+12>>2]=f[a+12>>2];e=g;while(1){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];b[a+12>>0]=b[e+12>>0]|0;if(!d)break;d=(d+-1|0)/2|0;a=h+(d<<4)|0;if(!(B2a(a,k)|0))break;else{j=e;e=a;a=j}}f[e>>2]=f[k>>2];f[e+4>>2]=f[k+4>>2];f[e+8>>2]=f[k+8>>2];b[e+12>>0]=b[k+12>>0]|0;u=l;return}function Y2a(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0.0,o=0,q=0,r=0,s=0.0;q=u;u=u+48|0;l=q;RWa(l,b);m=f[a+28>>2]|0;e=f[m>>2]|0;m=f[m+4>>2]|0;a:do if((e|0)==(m|0))o=9;else{n=+p[l>>3];c=+p[l+8>>3];j=+p[l+16>>3];k=+p[l+24>>3];d=0;do{g=f[e>>2]|0;i=f[e+4>>2]|0;if((g|0)==(i|0))d=(d|0)>0?d:0;else{h=2;do{s=+p[g+24>>3]+(n*+p[g>>3]+(c*+p[g+8>>3]+j*+p[g+16>>3]));r=!(s*s>=k)?1:s<0.0?0:2;h=(r|0)<(h|0)?r:h;g=g+32|0}while((g|0)!=(i|0));if((h|0)==2)break a;else d=(d|0)<(h|0)?h:d}e=e+12|0}while((e|0)!=(m|0));if((d|0)!=2)o=9}while(0);if((o|0)==9){c=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,l);if(c>=0.0){Z2a(a+64|0,+p[a+464>>3]-c,b);u=q;return}}u=q;return}function Z2a(a,c,d){a=a|0;c=+c;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+8|0;g=l;p[g>>3]=c;f[a>>2]=(f[a>>2]|0)+1;if(+p[a+16>>3]>c)h=0;else if(+p[a+40>>3]>c)h=1;else if(+p[a+64>>3]>c)h=2;else if(+p[a+88>>3]>c)h=3;else if(+p[a+112>>3]>c)h=4;else if(+p[a+136>>3]>c)h=5;else if(+p[a+160>>3]>c)h=6;else if(+p[a+184>>3]>c)h=7;else if(+p[a+208>>3]>c)h=8;else if(+p[a+232>>3]>c)h=9;else if(+p[a+256>>3]>c)h=10;else if(+p[a+280>>3]>c)h=11;else if(+p[a+304>>3]>c)h=12;else if(+p[a+328>>3]>c)h=13;else if(+p[a+352>>3]>c)h=14;else h=15;i=a+16+(h*24|0)+8|0;j=a+16+(h*24|0)+12|0;e=f[j>>2]|0;if(e>>>0<(f[a+16+(h*24|0)+16>>2]|0)>>>0){A2a(e,c,d);f[j>>2]=(f[j>>2]|0)+16}else _2a(i,g,d);a=a+4|0;e=f[a>>2]|0;if(h>>>0>e>>>0){f[a>>2]=h;u=l;return}if(!((h|0)!=0&(h|0)==(e|0))){u=l;return}h=f[i>>2]|0;e=f[j>>2]|0;a=e-h|0;if((a|0)<=16){u=l;return}d=((a>>>4)+-2|0)/2|0;g=h+(d<<4)|0;a=e+-16|0;if(!(B2a(g,a)|0)){u=l;return};f[k>>2]=f[a>>2];f[k+4>>2]=f[a+4>>2];f[k+8>>2]=f[a+8>>2];f[k+12>>2]=f[a+12>>2];e=g;while(1){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];b[a+12>>0]=b[e+12>>0]|0;if(!d)break;d=(d+-1|0)/2|0;a=h+(d<<4)|0;if(!(B2a(a,k)|0))break;else{j=e;e=a;a=j}}f[e>>2]=f[k>>2];f[e+4>>2]=f[k+4>>2];f[e+8>>2]=f[k+8>>2];b[e+12>>0]=b[k+12>>0]|0;u=l;return}function _2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+4|0;d=f[a>>2]|0;g=(f[l>>2]|0)-d>>4;e=g+1|0;if(e>>>0>268435455)fob(a);j=a+8|0;h=(f[j>>2]|0)-d|0;i=h>>3;i=h>>4>>>0<134217727?(i>>>0<e>>>0?e:i):268435455;do if(!i)k=0;else if(i>>>0>268435455)ud();else{k=Wpb(i<<4)|0;break}while(0);h=k+(g<<4)|0;A2a(h,+p[b>>3],c);d=f[a>>2]|0;e=(f[l>>2]|0)-d|0;g=h+(0-(e>>4)<<4)|0;if((e|0)>0)Irb(g|0,d|0,e|0)|0;f[a>>2]=g;f[l>>2]=h+16;f[j>>2]=k+(i<<4);if(!d)return;Zpb(d);return}function $2a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+4|0;d=f[a>>2]|0;g=(f[l>>2]|0)-d>>4;e=g+1|0;if(e>>>0>268435455)fob(a);j=a+8|0;h=(f[j>>2]|0)-d|0;i=h>>3;i=h>>4>>>0<134217727?(i>>>0<e>>>0?e:i):268435455;do if(!i)k=0;else if(i>>>0>268435455)ud();else{k=Wpb(i<<4)|0;break}while(0);h=k+(g<<4)|0;z2a(h,+p[b>>3],c);d=f[a>>2]|0;e=(f[l>>2]|0)-d|0;g=h+(0-(e>>4)<<4)|0;if((e|0)>0)Irb(g|0,d|0,e|0)|0;f[a>>2]=g;f[l>>2]=h+16;f[j>>2]=k+(i<<4);if(!d)return;Zpb(d);return}function a3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0,Y=0.0;V=u;u=u+192|0;U=V;c=f[a>>2]|0;Q=f[a+4>>2]|0;if((c|0)==(Q|0)){U=0;u=V;return U|0}R=b+24|0;S=b+32|0;T=b+8|0;q=b+40|0;r=b+16|0;s=U+8|0;t=U+16|0;v=U+24|0;w=U+32|0;x=U+40|0;y=U+48|0;z=U+56|0;A=U+64|0;B=U+72|0;C=U+80|0;D=U+88|0;E=U+96|0;F=U+104|0;G=U+112|0;H=U+120|0;I=U+128|0;J=U+136|0;K=U+144|0;L=U+152|0;M=U+160|0;N=U+168|0;O=U+176|0;P=U+184|0;a=0;while(1){d=f[c>>2]|0;o=f[c+4>>2]|0;if((d|0)==(o|0))a=(a|0)>0?a:0;else{n=2;do{g=+p[R>>3];h=+p[b>>3];Y=(g-h)*.5;i=+p[S>>3];j=+p[T>>3];X=(i-j)*.5;k=+p[q>>3];l=+p[r>>3];W=(k-l)*.5;m=+p[d+24>>3]+((h+Y)*+p[d>>3]+((j+X)*+p[d+8>>3]+(l+W)*+p[d+16>>3]));if(!(m*m>=Y*Y+(X*X+W*W))){p[U>>3]=h;p[s>>3]=j;p[t>>3]=l;p[v>>3]=g;p[w>>3]=j;p[x>>3]=l;p[y>>3]=h;p[z>>3]=i;p[A>>3]=l;p[B>>3]=g;p[C>>3]=i;p[D>>3]=l;p[E>>3]=h;p[F>>3]=j;p[G>>3]=k;p[H>>3]=g;p[I>>3]=j;p[J>>3]=k;p[K>>3]=h;p[L>>3]=i;p[M>>3]=k;p[N>>3]=g;p[O>>3]=i;p[P>>3]=k;e=fja(d,U)|0}else e=m<0.0?0:2;n=(e|0)<(n|0)?e:n;d=d+32|0}while((d|0)!=(o|0));if((n|0)==2){a=2;c=11;break}else a=(a|0)<(n|0)?n:a}c=c+12|0;if((c|0)==(Q|0)){c=11;break}}if((c|0)==11){u=V;return a|0}return 0}function b3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0.0;y=u;u=u+48|0;x=y;c=f[b+24>>2]|0;t=f[b+28>>2]|0;if((c|0)==(t|0)){u=y;return}v=a+28|0;w=a+64|0;o=a+464|0;q=x+8|0;r=x+16|0;s=x+24|0;do{n=Nla(f[c>>2]|0)|0;RWa(x,n);j=f[v>>2]|0;e=f[j>>2]|0;j=f[j+4>>2]|0;a:do if((e|0)==(j|0))b=12;else{d=+p[x>>3];k=+p[q>>3];l=+p[r>>3];m=+p[s>>3];b=0;do{g=f[e>>2]|0;i=f[e+4>>2]|0;if((g|0)==(i|0))b=(b|0)>0?b:0;else{h=2;do{A=+p[g+24>>3]+(d*+p[g>>3]+(k*+p[g+8>>3]+l*+p[g+16>>3]));z=!(A*A>=m)?1:A<0.0?0:2;h=(z|0)<(h|0)?z:h;g=g+32|0}while((g|0)!=(i|0));if((h|0)==2){b=13;break a}else b=(b|0)<(h|0)?h:b}e=e+12|0}while((e|0)!=(j|0));if((b|0)==2)b=13;else b=12}while(0);if((b|0)==12){b=0;d=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,x);if(!(d>=0.0))b=13;else Z2a(w,+p[o>>3]-d,n)}c=c+4|0}while((c|0)!=(t|0));u=y;return}function c3a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0.0,j=0,k=0;g=+p[b>>3];i=+p[a>>3];e=+p[c>>3];h=e>g;do if(g>i){if(h){p[a>>3]=e;p[c>>3]=i;h=a+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=1;g=i;break}p[a>>3]=g;p[b>>3]=i;k=a+8|0;h=b+8|0;j=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=j;g=+p[c>>3];if(g>i){p[b>>3]=g;p[c>>3]=i;k=c+8|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=2;g=i}else k=1}else if(h){p[b>>3]=e;p[c>>3]=g;h=b+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;e=+p[b>>3];i=+p[a>>3];if(e>i){p[a>>3]=e;p[b>>3]=i;j=a+8|0;k=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=k;k=2;g=+p[c>>3]}else k=1}else{k=0;g=e}while(0);e=+p[d>>3];if(!(e>g)){b=k;return b|0}p[c>>3]=e;p[d>>3]=g;j=c+8|0;d=d+8|0;h=f[j>>2]|0;f[j>>2]=f[d>>2];f[d>>2]=h;e=+p[c>>3];g=+p[b>>3];if(!(e>g)){b=k+1|0;return b|0}p[b>>3]=e;p[c>>3]=g;h=b+8|0;c=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=c;e=+p[b>>3];g=+p[a>>3];if(!(e>g)){b=k+2|0;return b|0}p[a>>3]=e;p[b>>3]=g;a=a+8|0;b=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=b;b=k+3|0;return b|0}function d3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0.0,j=0,k=0,l=0;switch(b-a>>4|0){case 2:{c=b+-16|0;e=+p[c>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[c>>3]=g;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}case 3:{j=a+16|0;e=+p[j>>3];i=+p[a>>3];h=b+-16|0;g=+p[h>>3];c=g>e;if(!(e>i)){if(!c){a=1;return a|0}p[j>>3]=g;p[h>>3]=e;c=a+24|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;e=+p[j>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[j>>3]=g;b=a+8|0;a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=1;return a|0}if(c){p[a>>3]=g;p[h>>3]=i;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}p[a>>3]=e;p[j>>3]=i;l=a+8|0;c=a+24|0;d=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=d;e=+p[h>>3];if(!(e>i)){a=1;return a|0}p[j>>3]=e;p[h>>3]=i;a=b+-8|0;f[c>>2]=f[a>>2];f[a>>2]=d;a=1;return a|0}case 4:{c3a(a,a+16|0,a+32|0,b+-16|0)|0;a=1;return a|0}case 5:{k=a+16|0;j=a+32|0;d=a+48|0;c3a(a,k,j,d)|0;c=b+-16|0;e=+p[c>>3];g=+p[d>>3];if(!(e>g)){a=1;return a|0}p[d>>3]=e;p[c>>3]=g;c=a+56|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;g=+p[d>>3];e=+p[j>>3];if(!(g>e)){a=1;return a|0}p[j>>3]=g;p[d>>3]=e;d=a+40|0;b=f[d>>2]|0;h=f[c>>2]|0;f[d>>2]=h;f[c>>2]=b;e=+p[k>>3];if(!(g>e)){a=1;return a|0}p[k>>3]=g;p[j>>3]=e;c=a+24|0;b=f[c>>2]|0;f[c>>2]=h;f[d>>2]=b;e=+p[a>>3];if(!(g>e)){a=1;return a|0}p[a>>3]=g;p[k>>3]=e;b=a+8|0;a=f[b>>2]|0;f[b>>2]=h;f[c>>2]=a;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{d=a+32|0;j=a+16|0;e=+p[j>>3];g=+p[a>>3];i=+p[d>>3];c=i>e;do if(e>g){if(c){p[a>>3]=i;p[d>>3]=g;j=a+8|0;l=a+40|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;e=g;break}p[a>>3]=e;p[j>>3]=g;l=a+8|0;c=a+24|0;h=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=h;if(i>g){p[j>>3]=i;p[d>>3]=g;l=a+40|0;f[c>>2]=f[l>>2];f[l>>2]=h;e=g}else e=i}else if(c){p[j>>3]=i;p[d>>3]=e;c=a+24|0;l=a+40|0;k=f[c>>2]|0;h=f[l>>2]|0;f[c>>2]=h;f[l>>2]=k;if(i>g){p[a>>3]=i;p[j>>3]=g;k=a+8|0;l=f[k>>2]|0;f[k>>2]=h;f[c>>2]=l}}else e=i;while(0);c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{l=c;c=0;while(1){g=+p[l>>3];if(g>e){k=f[l+8>>2]|0;h=l;while(1){p[h>>3]=e;j=d+8|0;f[h+8>>2]=f[j>>2];if((d|0)==(a|0))break;h=d+-16|0;e=+p[h>>3];if(!(g>e))break;else{j=d;d=h;h=j}}p[d>>3]=g;f[j>>2]=k;c=c+1|0;if((c|0)==8){d=0;c=(l+16|0)==(b|0);break a}}d=l+16|0;if((d|0)==(b|0)){d=1;c=0;break a}e=+p[l>>3];k=l;l=d;d=k}}while(0);a=c|d;return a|0}}return 0}function e3a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0;x=0;y=u;u=u+1792|0;if(!(b[(a+488|0)>>0]|0))if(fxa(f[(a+8|0)>>2]|0)|0){c=(uwa(f[(a+8|0)>>2]|0)|0)+8|0;c=f[c>>2]|0;a:do if(!c){d=0;c=0}else{d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c){d=0;c=0;break a}d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0)}while(0);b:do if(c|0)c:while(1){do{r=f[d+12>>2]|0;do if(!(f[(r+196|0)>>2]&1))if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[(r+196|0)>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(y+16|0,f[(a+8|0)>>2]|0,f[(a+12|0)>>2]|0,r,0);d:do if(!(f[(r+196|0)>>2]&2)){l=f[(a+28|0)>>2]|0;h=f[l>>2]|0;l=f[l+4>>2]|0;if((h|0)==(l|0))x=23;else{g=+p[(y+16|0)>>3];m=+p[((y+16|0)+8|0)>>3];o=+p[((y+16|0)+16|0)>>3];q=+p[((y+16|0)+24|0)>>3];e=0;do{i=f[h>>2]|0;k=f[h+4>>2]|0;if((i|0)==(k|0))e=(e|0)>0?e:0;else{j=2;do{z=+p[i+24>>3]+(g*+p[i>>3]+(m*+p[i+8>>3]+o*+p[i+16>>3]));w=!(z*z>=q)?1:z<0.0?0:2;j=(w|0)<(j|0)?w:j;i=i+32|0}while((i|0)!=(k|0));if((j|0)==2)break d;else e=(e|0)<(j|0)?j:e}h=h+12|0}while((h|0)!=(l|0));if((e|0)!=2)x=23}}else x=23;while(0);if((x|0)==23){x=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,y+16|0);if(g>=0.0){p[(y+16|0)>>3]=g;f[y>>2]=r;e=f[(a+476|0)>>2]|0;if(e>>>0<(f[(a+480|0)>>2]|0)>>>0){p[e>>3]=g;f[e+8>>2]=r;f[(a+476|0)>>2]=e+16}else T2a(a+472|0,y+16|0,y);break}}}}while(0);d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break b;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue c}}while(0);m3a(f[a+472>>2]|0,f[(a+476|0)>>2]|0);f[a+484>>2]=3;b[(a+488|0)>>0]=1}c=f[(a+484|0)>>2]|0;if((c|0)==3){c=f[(a+476|0)>>2]|0;if((f[a+472>>2]|0)==(c|0))c=f[a+32>>2]|0;else{x=f[c+-8>>2]|0;f[a+32>>2]=x;p[a+40>>3]=+p[c+-16>>3];f[a+48>>2]=3;f[(a+476|0)>>2]=c+-16;c=x}if(c|0){u=y;return}b[(a+488|0)>>0]=0;f[(a+484|0)>>2]=4;u=y;return}w=f[(a+12|0)>>2]|0?a+16|0:0;e:{d=1;c=c|0;if(d)switch(c|0){case 0:{f[(y+56|0)>>2]=y+80|0;if(!(b[(a+488|0)>>0]|0)){if(!(Pg[f[(f[a>>2]|0)+8>>2]&255](a,a+64|0)|0)){f[(a+484|0)>>2]=4;u=y;return}c=yva(f[(a+8|0)>>2]|0)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(y+72|0)>>2]=f[c>>2];f[(y+68|0)>>2]=f[(c+4|0)>>2];f[(y+76|0)>>2]=f[(y+72|0)>>2];f[y>>2]=f[(y+68|0)>>2];b[(y+16|0)>>0]=b[(y+81|0)>>0]|0;d=bja(y+76|0,y,y+16|0)|0;f[(y+64|0)>>2]=d;f[(y+60|0)>>2]=f[(c+4|0)>>2];f[y>>2]=f[(y+64|0)>>2];f[(y+16|0)>>2]=f[(y+60|0)>>2];cja(c,y,y+16|0)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{V2a(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));c=Uwa(f[(a+8|0)>>2]|0)|0;if(!(b[(c+40|0)>>0]|0))d=c+4|0;else{b[(c+40|0)>>0]=0;f[(y+72|0)>>2]=f[c>>2];f[(y+68|0)>>2]=f[(c+4|0)>>2];f[(y+76|0)>>2]=f[(y+72|0)>>2];f[y>>2]=f[(y+68|0)>>2];b[(y+16|0)>>0]=b[(y+81|0)>>0]|0;d=$ia(y+76|0,y,y+16|0)|0;f[(y+64|0)>>2]=d;f[(y+60|0)>>2]=f[(c+4|0)>>2];f[y>>2]=f[(y+64|0)>>2];f[(y+16|0)>>2]=f[(y+60|0)>>2];aja(c,y,y+16|0)|0;d=c+4|0}c=f[c>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{n3a(a,f[c>>2]|0,y+56|0);c=c+4|0}while((c|0)!=(d|0));b[(a+488|0)>>0]=1}f:do if(!(E2a(a+64|0)|0)){g:while(1){H2a(y,a+64|0);switch(b[(y+12|0)>>0]|0){case 0:break g;case 1:{e=f[(y+8|0)>>2]|0;c=f[e+12>>2]|0;d=f[e+16>>2]|0;if((c|0)!=(d|0))do{Y2a(a,c);c=c+72|0}while((c|0)!=(d|0));v=f[(a+12|0)>>2]|0?a+16|0:0;c=f[e+24>>2]|0;t=f[e+28>>2]|0;if((c|0)!=(t|0))do{d=f[c+4>>2]|0;s=f[c+8>>2]|0;if((d|0)!=(s|0))do{r=f[d>>2]|0;h:do if((f[(r+196|0)>>2]&3|0)==0?(b[r+203>>0]&3)==1:0)if(Pg[f[(f[a>>2]|0)+12>>2]&255](a,r)|0)if(!(f[(r+196|0)>>2]&64)){e=f[(f[r+4>>2]|0)+44>>2]|0;if((f[e+32>>2]|0)!=(0-((f[e+24>>2]|0)+(f[e+28>>2]|0))|0))if(Qqa(e+64|0)|0){PWa(y+16|0,f[(a+8|0)>>2]|0,f[(a+12|0)>>2]|0,r,0);i:do if(!(f[(r+196|0)>>2]&2)){l=f[(a+28|0)>>2]|0;h=f[l>>2]|0;l=f[l+4>>2]|0;if((h|0)==(l|0)){x=76;break}g=+p[(y+16|0)>>3];m=+p[((y+16|0)+8|0)>>3];o=+p[((y+16|0)+16|0)>>3];q=+p[((y+16|0)+24|0)>>3];e=0;do{i=f[h>>2]|0;k=f[h+4>>2]|0;if((i|0)==(k|0))e=(e|0)>0?e:0;else{j=2;do{z=+p[i+24>>3]+(g*+p[i>>3]+(m*+p[i+8>>3]+o*+p[i+16>>3]));A=!(z*z>=q)?1:z<0.0?0:2;j=(A|0)<(j|0)?A:j;i=i+32|0}while((i|0)!=(k|0));if((j|0)==2)break i;else e=(e|0)<(j|0)?j:e}h=h+12|0}while((h|0)!=(l|0));if((e|0)!=2)x=76}else x=76;while(0);do if((x|0)==76){x=0;g=+Lg[f[(f[a>>2]|0)+20>>2]&31](a,y+16|0);if(!(g>=0.0))break;do if(v){if(!(f[(r+196|0)>>2]&33554432))break;A=f[r+104>>2]|0;if(+n[v>>2]*+n[A+240>>2]+(+n[(v+4|0)>>2]*+n[A+244>>2]+ +n[(v+8|0)>>2]*+n[A+248>>2])<+n[A+252>>2])break h}while(0);X2a(a+64|0,+p[(a+464|0)>>3]-g,r);break h}while(0)}}while(0);d=d+4|0}while((d|0)!=(s|0));c=c+20|0}while((c|0)!=(t|0));break}default:{}}if(E2a(a+64|0)|0)break f}f[a+32>>2]=f[y+8>>2];z=+J2a(a+64|0,y);p[a+40>>3]=z;f[a+48>>2]=f[(a+484|0)>>2]}while(0);if(!(f[a+32>>2]|0)){b[(a+488|0)>>0]=0;f[(a+484|0)>>2]=1;x=89;break e}u=y;return}default:d=1}if(d)switch(c|0){case 1:{if(!(b[(a+488|0)>>0]|0))x=89;else x=115;break}case 2:{if(!(b[(a+488|0)>>0]|0))x=152;break}default:{u=y;return}}}f[y+112>>2]=a;f[y+672>>2]=w;f[y+1680>>2]=x;f[y+1704>>2]=0;f[y+1708>>2]=0;l3a(y);G=f[y+1704>>2]|0;D=f[y+1708>>2]|0;H=+n[y+1708>>2];f[y+1704>>2]=0;f[y+1708>>2]=0;if((G|0)==5)return}function f3a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){q=b;r=b+-16|0;t=b+-8|0;while(1){b:while(1){o=a;c=q-o|0;g=c>>4;switch(g|0){case 2:{s=5;break a}case 3:{s=7;break a}case 4:{s=15;break a}case 5:{s=16;break a}case 1:case 0:{s=84;break a}default:{}}if((c|0)<112){s=22;break a}m=(g|0)/2|0;l=a+(m<<4)|0;do if((c|0)>15984){k=(g|0)/4|0;n=a+(k<<4)|0;h=l+(k<<4)|0;c=g3a(a,n,l,h)|0;d=+p[r>>3];e=+p[h>>3];if(!(d>e)){g=l;break}p[h>>3]=d;p[r>>3]=e;j=h+8|0;g=f[j>>2]|0;f[j>>2]=f[t>>2];f[t>>2]=g;g=c+1|0;d=+p[h>>3];e=+p[l>>3];if(d>e){p[l>>3]=d;p[h>>3]=e;h=a+(m<<4)+8|0;g=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=g;g=c+2|0;d=+p[l>>3];e=+p[n>>3];if(d>e){p[n>>3]=d;p[l>>3]=e;g=a+(k<<4)+8|0;m=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=m;d=+p[n>>3];e=+p[a>>3];if(d>e){p[a>>3]=d;p[n>>3]=e;m=a+8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;c=c+4|0;g=l}else{c=c+3|0;g=l}}else{c=g;g=l}}else{c=g;g=l}}else{d=+p[l>>3];i=+p[a>>3];e=+p[r>>3];c=e>d;if(!(d>i)){if(!c){c=0;g=l;break}p[l>>3]=e;p[r>>3]=d;c=a+(m<<4)+8|0;n=f[c>>2]|0;f[c>>2]=f[t>>2];f[t>>2]=n;d=+p[l>>3];e=+p[a>>3];if(!(d>e)){c=1;g=l;break}p[a>>3]=d;p[l>>3]=e;n=a+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;c=2;g=l;break}if(c){p[a>>3]=e;p[r>>3]=i;g=a+8|0;c=f[g>>2]|0;f[g>>2]=f[t>>2];f[t>>2]=c;c=1;g=l;break}p[a>>3]=d;p[l>>3]=i;n=a+8|0;c=a+(m<<4)+8|0;g=f[n>>2]|0;f[n>>2]=f[c>>2];f[c>>2]=g;d=+p[r>>3];if(d>i){p[l>>3]=d;p[r>>3]=i;f[c>>2]=f[t>>2];f[t>>2]=g;c=2;g=l}else{c=1;g=l}}while(0);i=+p[a>>3];d=+p[g>>3];if(i>d){g=r;break}else h=r;while(1){g=h+-16|0;if((a|0)==(g|0))break;e=+p[g>>3];if(e>d){s=67;break b}else h=g}c=a+16|0;e=+p[r>>3];if(!(i>e)){if((c|0)==(r|0)){s=84;break a}while(1){d=+p[c>>3];if(i>d)break;c=c+16|0;if((c|0)==(r|0)){s=84;break a}}p[c>>3]=e;p[r>>3]=d;n=c+8|0;o=f[n>>2]|0;f[n>>2]=f[t>>2];f[t>>2]=o;c=c+16|0}if((c|0)==(r|0)){s=84;break a}else g=r;while(1){i=+p[a>>3];while(1){e=+p[c>>3];j=c+16|0;if(i>e)break;else c=j}while(1){h=g+-16|0;d=+p[h>>3];if(i>d)g=h;else break}if(c>>>0>=h>>>0){a=c;continue b}p[c>>3]=d;p[h>>3]=e;o=c+8|0;g=g+-8|0;c=f[o>>2]|0;f[o>>2]=f[g>>2];f[g>>2]=c;g=h;c=j}}if((s|0)==67){s=0;p[a>>3]=e;p[g>>3]=i;k=a+8|0;n=h+-8|0;m=f[k>>2]|0;f[k>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}h=a+16|0;c:do if(h>>>0<g>>>0)while(1){i=+p[l>>3];while(1){e=+p[h>>3];k=h+16|0;if(e>i)h=k;else break}while(1){j=g+-16|0;d=+p[j>>3];if(d>i)break;else g=j}if(h>>>0>j>>>0){g=l;break c}p[h>>3]=d;p[j>>3]=e;m=h+8|0;g=g+-8|0;n=f[m>>2]|0;f[m>>2]=f[g>>2];f[g>>2]=n;l=(l|0)==(h|0)?j:l;g=j;h=k;c=c+1|0}else g=l;while(0);if((h|0)!=(g|0)){d=+p[g>>3];e=+p[h>>3];if(d>e){p[h>>3]=d;p[g>>3]=e;l=h+8|0;n=g+8|0;m=f[l>>2]|0;f[l>>2]=f[n>>2];f[n>>2]=m;c=c+1|0}}if(!c){c=h3a(a,h)|0;g=h+16|0;if(h3a(g,b)|0){s=83;break}if(c){a=g;continue}}n=h;if((n-o|0)>=(q-n|0)){s=82;break}f3a(a,h);a=h+16|0}if((s|0)==82){s=0;f3a(h+16|0,b);b=h;continue}else if((s|0)==83){s=0;if(c){s=84;break}else{b=h;continue}}}if((s|0)==5){e=+p[r>>3];d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[r>>3]=d;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}else if((s|0)==7){g=a+16|0;e=+p[g>>3];i=+p[a>>3];c=b+-16|0;d=+p[c>>3];b=d>e;if(!(e>i)){if(!b)return;p[g>>3]=d;p[c>>3]=e;b=a+24|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;d=+p[g>>3];e=+p[a>>3];if(!(d>e))return;p[a>>3]=d;p[g>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=f[b>>2];f[b>>2]=t;return}if(b){p[a>>3]=d;p[c>>3]=i;r=a+8|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;return}p[a>>3]=e;p[g>>3]=i;s=a+8|0;a=a+24|0;b=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=b;d=+p[c>>3];if(!(d>i))return;p[g>>3]=d;p[c>>3]=i;f[a>>2]=f[t>>2];f[t>>2]=b;return}else if((s|0)==15){g3a(a,a+16|0,a+32|0,r)|0;return}else if((s|0)==16){j=a+16|0;h=a+32|0;c=a+48|0;g3a(a,j,h,c)|0;b=b+-16|0;d=+p[b>>3];e=+p[c>>3];if(!(d>e))return;p[c>>3]=d;p[b>>3]=e;b=a+56|0;s=f[b>>2]|0;f[b>>2]=f[t>>2];f[t>>2]=s;e=+p[c>>3];d=+p[h>>3];if(!(e>d))return;p[h>>3]=e;p[c>>3]=d;c=a+40|0;t=f[c>>2]|0;g=f[b>>2]|0;f[c>>2]=g;f[b>>2]=t;d=+p[j>>3];if(!(e>d))return;p[j>>3]=e;p[h>>3]=d;b=a+24|0;t=f[b>>2]|0;f[b>>2]=g;f[c>>2]=t;d=+p[a>>3];if(!(e>d))return;p[a>>3]=e;p[j>>3]=d;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[b>>2]=t;return}else if((s|0)==22){j=a+32|0;h=a+16|0;d=+p[h>>3];e=+p[a>>3];i=+p[j>>3];c=i>d;do if(d>e){if(c){p[a>>3]=i;p[j>>3]=e;r=a+8|0;t=a+40|0;s=f[r>>2]|0;f[r>>2]=f[t>>2];f[t>>2]=s;d=e;break}p[a>>3]=d;p[h>>3]=e;t=a+8|0;c=a+24|0;g=f[t>>2]|0;f[t>>2]=f[c>>2];f[c>>2]=g;if(i>e){p[h>>3]=i;p[j>>3]=e;t=a+40|0;f[c>>2]=f[t>>2];f[t>>2]=g;d=e}else d=i}else if(c){p[h>>3]=i;p[j>>3]=d;c=a+24|0;t=a+40|0;s=f[c>>2]|0;g=f[t>>2]|0;f[c>>2]=g;f[t>>2]=s;if(i>e){p[a>>3]=i;p[h>>3]=e;s=a+8|0;t=f[s>>2]|0;f[s>>2]=g;f[c>>2]=t}}else d=i;while(0);c=a+48|0;if((c|0)==(b|0))return;else{k=c;c=j}while(1){e=+p[k>>3];if(e>d){j=f[k+8>>2]|0;g=k;while(1){p[g>>3]=d;h=c+8|0;f[g+8>>2]=f[h>>2];if((c|0)==(a|0)){c=a;break}g=c+-16|0;d=+p[g>>3];if(!(e>d))break;else{t=c;c=g;g=t}}p[c>>3]=e;f[h>>2]=j}c=k+16|0;if((c|0)==(b|0))break;d=+p[k>>3];t=k;k=c;c=t}return}else if((s|0)==84)return}function g3a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,g=0.0,h=0,i=0.0,j=0,k=0;g=+p[b>>3];i=+p[a>>3];e=+p[c>>3];h=e>g;do if(g>i){if(h){p[a>>3]=e;p[c>>3]=i;h=a+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=1;g=i;break}p[a>>3]=g;p[b>>3]=i;k=a+8|0;h=b+8|0;j=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=j;g=+p[c>>3];if(g>i){p[b>>3]=g;p[c>>3]=i;k=c+8|0;f[h>>2]=f[k>>2];f[k>>2]=j;k=2;g=i}else k=1}else if(h){p[b>>3]=e;p[c>>3]=g;h=b+8|0;k=c+8|0;j=f[h>>2]|0;f[h>>2]=f[k>>2];f[k>>2]=j;e=+p[b>>3];i=+p[a>>3];if(e>i){p[a>>3]=e;p[b>>3]=i;j=a+8|0;k=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=k;k=2;g=+p[c>>3]}else k=1}else{k=0;g=e}while(0);e=+p[d>>3];if(!(e>g)){b=k;return b|0}p[c>>3]=e;p[d>>3]=g;j=c+8|0;d=d+8|0;h=f[j>>2]|0;f[j>>2]=f[d>>2];f[d>>2]=h;e=+p[c>>3];g=+p[b>>3];if(!(e>g)){b=k+1|0;return b|0}p[b>>3]=e;p[c>>3]=g;h=b+8|0;c=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=c;e=+p[b>>3];g=+p[a>>3];if(!(e>g)){b=k+2|0;return b|0}p[a>>3]=e;p[b>>3]=g;a=a+8|0;b=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=b;b=k+3|0;return b|0}function h3a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0.0,j=0,k=0,l=0;switch(b-a>>4|0){case 2:{c=b+-16|0;e=+p[c>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[c>>3]=g;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}case 3:{j=a+16|0;e=+p[j>>3];i=+p[a>>3];h=b+-16|0;g=+p[h>>3];c=g>e;if(!(e>i)){if(!c){a=1;return a|0}p[j>>3]=g;p[h>>3]=e;c=a+24|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;e=+p[j>>3];g=+p[a>>3];if(!(e>g)){a=1;return a|0}p[a>>3]=e;p[j>>3]=g;b=a+8|0;a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=1;return a|0}if(c){p[a>>3]=g;p[h>>3]=i;l=a+8|0;a=b+-8|0;b=f[l>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=b;a=1;return a|0}p[a>>3]=e;p[j>>3]=i;l=a+8|0;c=a+24|0;d=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=d;e=+p[h>>3];if(!(e>i)){a=1;return a|0}p[j>>3]=e;p[h>>3]=i;a=b+-8|0;f[c>>2]=f[a>>2];f[a>>2]=d;a=1;return a|0}case 4:{g3a(a,a+16|0,a+32|0,b+-16|0)|0;a=1;return a|0}case 5:{k=a+16|0;j=a+32|0;d=a+48|0;g3a(a,k,j,d)|0;c=b+-16|0;e=+p[c>>3];g=+p[d>>3];if(!(e>g)){a=1;return a|0}p[d>>3]=e;p[c>>3]=g;c=a+56|0;b=b+-8|0;l=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=l;g=+p[d>>3];e=+p[j>>3];if(!(g>e)){a=1;return a|0}p[j>>3]=g;p[d>>3]=e;d=a+40|0;b=f[d>>2]|0;h=f[c>>2]|0;f[d>>2]=h;f[c>>2]=b;e=+p[k>>3];if(!(g>e)){a=1;return a|0}p[k>>3]=g;p[j>>3]=e;c=a+24|0;b=f[c>>2]|0;f[c>>2]=h;f[d>>2]=b;e=+p[a>>3];if(!(g>e)){a=1;return a|0}p[a>>3]=g;p[k>>3]=e;b=a+8|0;a=f[b>>2]|0;f[b>>2]=h;f[c>>2]=a;a=1;return a|0}case 1:case 0:{a=1;return a|0}default:{d=a+32|0;j=a+16|0;e=+p[j>>3];g=+p[a>>3];i=+p[d>>3];c=i>e;do if(e>g){if(c){p[a>>3]=i;p[d>>3]=g;j=a+8|0;l=a+40|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;e=g;break}p[a>>3]=e;p[j>>3]=g;l=a+8|0;c=a+24|0;h=f[l>>2]|0;f[l>>2]=f[c>>2];f[c>>2]=h;if(i>g){p[j>>3]=i;p[d>>3]=g;l=a+40|0;f[c>>2]=f[l>>2];f[l>>2]=h;e=g}else e=i}else if(c){p[j>>3]=i;p[d>>3]=e;c=a+24|0;l=a+40|0;k=f[c>>2]|0;h=f[l>>2]|0;f[c>>2]=h;f[l>>2]=k;if(i>g){p[a>>3]=i;p[j>>3]=g;k=a+8|0;l=f[k>>2]|0;f[k>>2]=h;f[c>>2]=l}}else e=i;while(0);c=a+48|0;a:do if((c|0)==(b|0)){d=1;c=0}else{l=c;c=0;while(1){g=+p[l>>3];if(g>e){k=f[l+8>>2]|0;h=l;while(1){p[h>>3]=e;j=d+8|0;f[h+8>>2]=f[j>>2];if((d|0)==(a|0))break;h=d+-16|0;e=+p[h>>3];if(!(g>e))break;else{j=d;d=h;h=j}}p[d>>3]=g;f[j>>2]=k;c=c+1|0;if((c|0)==8){d=0;c=(l+16|0)==(b|0);break a}}d=l+16|0;if((d|0)==(b|0)){d=1;c=0;break a}e=+p[l>>3];k=l;l=d;d=k}}while(0);a=c|d;return a|0}}return 0}function i3a(a){a=a|0;var c=0,e=0,g=0,h=0,i=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;v=f[a+104>>2]|0;w=f[a+528>>2]|0;x=f[a+568>>2]|0;o=f[a+616>>2]|0;p=f[a+640>>2]|0;z=f[a+656>>2]|0;A=f[a+664>>2]|0;B=f[a+672>>2]|0;y=f[a+904>>2]|0;c=f[a+944>>2]|0;r=f[a+1e3>>2]|0;s=f[a+1016>>2]|0;t=f[a+1264>>2]|0;a:{if(!c)c=0;else c=f[c>>2]|0;I7a(211248,c)|0;c=f[(w+(v*20|0)+4|0)>>2]|0;m=f[(w+(v*20|0)+8|0)>>2]|0;if((c|0)!=(m|0)){k=0;l=f[(a+40|0)>>2]|0;while(1){g=f[(f[(f[(f[c>>2]|0)+4>>2]|0)+44>>2]|0)+104>>2]|0;h=X(g,p)|0;if(x6a()|0){i=+(k&255);if((z+(g<<2)|0|0)!=(z|0)){e=z;do{n[e>>2]=i;e=e+4|0}while((e|0)!=(z+(g<<2)|0|0))}}else Krb(z|0,k|0,g|0)|0;J5a(f[(a+48|0)>>2]|0,l,h,z);c=c+4|0;if((c|0)==(m|0))break;else{k=k+1<<24>>24;l=h+l|0}}}f[(a+32|0)>>2]=0;f[((a+32|0)+4|0)>>2]=0;f[(a+28|0)>>2]=0;lSa(iSa()|0,o,a+32|0,a+28|0,64);c=f[(a+32|0)>>2]|0;if(!c)c=0;else c=f[c>>2]|0;J7a(211248,c)|0;g=f[(a+28|0)>>2]|0;h=(r<<1)+g|0;l=(s<<1)+h|0;o=f[(w+(v*20|0)+4|0)>>2]|0;m=(f[(f[o>>2]|0)+4>>2]|0)+44|0;c=f[m>>2]|0;e=f[c+24>>2]|0;if(e){Wqa(c+64|0,0,e<<1,g,a+32|0)|0;q=f[m>>2]|0;c=q;g=(f[q+24>>2]<<1)+g|0}e=f[c+28>>2]|0;if(!e)k=h;else{Wqa(c+64|0,f[((b[c+144>>0]&2)==0?c+40|0:c+24|0)>>2]<<1,e<<1,h,a+32|0)|0;k=f[m>>2]|0;c=k;k=(f[k+28>>2]<<1)+h|0}h=f[c+32>>2]|0;if(!h)c=l;else{if(!(b[c+144>>0]&2))e=f[c+44>>2]|0;else e=(f[c+28>>2]|0)+(f[c+24>>2]|0)|0;Wqa(c+64|0,e<<1,h<<1,l,a+32|0)|0;c=(f[(f[m>>2]|0)+32>>2]<<1)+l|0}q=f[(w+(v*20|0)+8|0)>>2]|0;if((o+4|0|0)!=(q|0)){p=f[(f[(f[(f[o>>2]|0)+4>>2]|0)+44>>2]|0)+104>>2]|0;m=o+4|0;l=c;while(1){h=(f[(f[m>>2]|0)+4>>2]|0)+44|0;Uqa((f[h>>2]|0)+64|0,z)|0;e=z+((Rqa((f[h>>2]|0)+64|0)|0)<<1)|0;if((e|0)!=(z|0)){c=z;do{d[c>>1]=p+(j[c>>1]|0);c=c+2|0}while((c|0)!=(e|0))}c=f[h>>2]|0;e=f[c+24>>2]|0;if(e){J5a(f[(a+32|0)>>2]|0,g,e<<1,z);o=f[h>>2]|0;c=o;g=g+(f[o+24>>2]<<1)|0}e=f[c+28>>2]|0;if(e){J5a(f[(a+32|0)>>2]|0,k,e<<1,z+(f[((b[c+144>>0]&2)==0?c+40|0:c+24|0)>>2]<<1)|0);o=f[h>>2]|0;c=o;k=k+(f[o+28>>2]<<1)|0}e=f[c+32>>2]|0;if(!e)e=l;else{if(!(b[c+144>>0]&2))c=f[c+44>>2]|0;else c=(f[c+28>>2]|0)+(f[c+24>>2]|0)|0;J5a(f[(a+32|0)>>2]|0,l,e<<1,z+(c<<1)|0);e=l+(f[(f[h>>2]|0)+32>>2]<<1)|0}c=m+4|0;if((c|0)==(q|0))break;else{p=(f[(f[(f[(f[m>>2]|0)+4>>2]|0)+44>>2]|0)+104>>2]&65535)+(p&65535)|0;m=c;l=e}}}h=f[(f[(f[f[(w+(v*20|0)+4|0)>>2]>>2]|0)+4>>2]|0)+44>>2]|0;f[x+48>>2]=f[h+48>>2];c=f[h>>2]|0;h=f[h+4>>2]|0;if((c|0)!=(h|0)){k=f[c+8>>2]|0;do{f[a>>2]=f[c>>2];e=f[c+4>>2]|0;f[(a+4|0)>>2]=e;if(e|0)Npb(e);e=c+8|0;f[(a+8|0)>>2]=f[e>>2];f[(a+8|0)+4>>2]=f[e+4>>2];f[(a+8|0)+8>>2]=f[e+8>>2];f[(a+8|0)+12>>2]=f[e+12>>2];d[(a+8|0)+16>>1]=d[e+16>>1]|0;e=f[(a+60|0)>>2]|0;g=f[((a+60|0)+4|0)>>2]|0;if(g|0)Npb(g);f[a>>2]=e;e=f[(a+4|0)>>2]|0;f[(a+4|0)>>2]=g;if(e|0)Ppb(e);f[(a+8|0)>>2]=(f[(a+56|0)>>2]|0)-k+(f[(a+8|0)>>2]|0);e=f[(x+4|0)>>2]|0;if((e|0)==(f[(x+8|0)>>2]|0))g1a(x,a);else{f[e>>2]=f[a>>2];g=f[(a+4|0)>>2]|0;f[e+4>>2]=g;if(g|0)Npb(g);f[(e+8|0)>>2]=f[(a+8|0)>>2];f[(e+8|0)+4>>2]=f[(a+8|0)+4>>2];f[(e+8|0)+8>>2]=f[(a+8|0)+8>>2];f[(e+8|0)+12>>2]=f[(a+8|0)+12>>2];d[(e+8|0)+16>>1]=d[(a+8|0)+16>>1]|0;f[(x+4|0)>>2]=(f[(x+4|0)>>2]|0)+28}e=f[(a+4|0)>>2]|0;if(e|0)Ppb(e);c=c+28|0}while((c|0)!=(h|0))}f[a>>2]=0;f[(a+4|0)>>2]=0;f[a+12>>2]=2;e=x6a()|0;f[a+16>>2]=e?5126:5121;f[a+20>>2]=0;e=f[(a+48|0)>>2]|0;g=f[y>>2]|0;do if(!g){f[a>>2]=e;f[(a+4|0)>>2]=g;c=a}else{Npb(g);c=f[(a+4|0)>>2]|0;f[a>>2]=e;f[(a+4|0)>>2]=g;if(!c){c=a;break}Ppb(c);c=a}while(0);f[(a+8|0)>>2]=f[(a+40|0)>>2];b[a+25>>0]=1;b[a+24>>0]=0;e=f[(x+4|0)>>2]|0;if((e|0)==(f[x+8>>2]|0))g1a(x,a);else{f[e>>2]=f[c>>2];c=f[(a+4|0)>>2]|0;f[e+4>>2]=c;if(c|0)Npb(c);f[(e+8|0)>>2]=f[(a+8|0)>>2];f[(e+8|0)+4>>2]=f[(a+8|0)+4>>2];f[(e+8|0)+8>>2]=f[(a+8|0)+8>>2];f[(e+8|0)+12>>2]=f[(a+8|0)+12>>2];d[(e+8|0)+16>>1]=d[(a+8|0)+16>>1]|0;f[(x+4|0)>>2]=(f[(x+4|0)>>2]|0)+28}c=f[(a+4|0)>>2]|0;if(c|0)Ppb(c);Bra(x,a+32|0);Cra(x,f[(a+28|0)>>2]|0);Dra(x,0,r);Dra(x,1,s);Dra(x,2,t);Era(x,0,0);Era(x,1,r);Era(x,2,s+r|0);h=f[(w+(v*20|0)|0)>>2]|0;f[(w+(v*20|0)|0)>>2]=x;if(h|0){c=f[h+52>>2]|0;if(c|0){e=f[(h+56|0)>>2]|0;if((e|0)!=(c|0))f[(h+56|0)>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);Zpb(c)}c=f[h+16>>2]|0;if(c|0)Ppb(c);c=f[h>>2]|0;if(c|0){e=f[(h+4|0)>>2]|0;if((e|0)!=(c|0)){do{g=e+-28|0;f[(h+4|0)>>2]=g;e=f[e+-24>>2]|0;if(!e)e=g;else{Ppb(e);e=f[(h+4|0)>>2]|0}}while((e|0)!=(c|0));c=f[h>>2]|0}Zpb(c)}Zpb(h)}c=f[((a+32|0)+4|0)>>2]|0;if(c|0)Ppb(c);c=f[y>>2]|0;if(c|0)Ppb(c);c=f[((a+60|0)+4|0)>>2]|0;if(c|0)Ppb(c);J7a(211248,B)|0;I7a(211248,A)|0;_pb(z);u=a;f[a+1704>>2]=5;break a}}function j3a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=f[a+464>>2]|0;d=f[a+488>>2]|0;u=f[a+544>>2]|0;j=f[a+576>>2]|0;h=f[a+584>>2]|0;g=f[a+672>>2]|0;i=f[a+680>>2]|0;s=f[a+896>>2]|0;p=f[a+1456>>2]|0;q=f[a+1496>>2]|0;v=f[a+1536>>2]|0;t=f[a+1576>>2]|0;a:{b:do{e=1;if(e){e=0;if((g|0)==(i|0)){c=u;b=f[c+4>>2]|0;if(!b){b=f[(c+8|0)>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=c+8|0;do{k=f[c>>2]|0;c=k+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(k|0))}else{while(1){c=f[b>>2]|0;if(!c)break;else b=c}break}}else e=1}if(e)if(1){k=d;while(1){e=k;if((e|0)!=(j|0))break;c=k;b=f[c+4>>2]|0;if(!b){b=f[(c+8|0)>>2]|0;if((f[b>>2]|0)!=(c|0)){c=c+8|0;do{d=f[c>>2]|0;c=d+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(d|0))}}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}if((b|0)==(i|0)){t=118;break}else{k=b;g=b}}if((t|0)==118){t=0;c=u;b=f[c+4>>2]|0;if(!b){b=f[(c+8|0)>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=c+8|0;while(1){s=f[c>>2]|0;c=s+8|0;b=f[c>>2]|0;if((f[b>>2]|0)==(s|0))break b}}else{while(1){c=f[b>>2]|0;if(!c)break;else b=c}break}}f[(a+28|0)>>2]=0;f[s>>2]=0;f[((a+28|0)+8|0)>>2]=0;c=h-(f[(j+24|0)>>2]|0)|0;if(!(c>>3))b=0;else{if(c>>3>>>0>536870911){t=55;f[a+1600>>2]=2;f[a+1604>>2]=4;break a}b=Wpb(c)|0;f[s>>2]=b;f[(a+28|0)>>2]=b;f[((a+28|0)+8|0)>>2]=b+(c>>3<<3);d=f[(j+24|0)>>2]|0;c=(f[(j+28|0)>>2]|0)-d|0;if((c|0)>0){Irb(b|0,d|0,c|0)|0;f[s>>2]=b+(c>>>3<<3)|0;b=b+(c>>>3<<3)|0}}f[(a+40|0)>>2]=b;f[(a+24|0)>>2]=(f[e+24>>2]|0)+8;f[(a+20|0)>>2]=f[e+28>>2];f[(a+56|0)>>2]=f[(a+40|0)>>2];f[(a+60|0)>>2]=f[(a+24|0)>>2];f[a>>2]=f[(a+20|0)>>2];k2a(a+28|0,a+56|0,a+60|0,a)|0;b=f[g+4>>2]|0;if(!b){c=g+8|0;b=f[c>>2]|0;if((f[b>>2]|0)!=(k|0))do{j=f[c>>2]|0;c=j+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(j|0))}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}if((f[(a+44|0)>>2]|0)==(g|0))f[o>>2]=b;f[q>>2]=(f[q>>2]|0)+-1;oEa(f[p>>2]|0,k);d=f[g+24>>2]|0;if(d|0){b=g+28|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-8-d|0)>>>3)<<3);Zpb(d)}Zpb(k);d=u;b=f[d+4>>2]|0;if(!b){b=f[(d+8|0)>>2]|0;if((f[b>>2]|0)!=(u|0)){c=d+8|0;do{k=f[c>>2]|0;c=k+8|0;b=f[c>>2]|0}while((f[b>>2]|0)!=(k|0))}}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}if((f[(a+44|0)>>2]|0)==(d|0))f[o>>2]=b;f[q>>2]=(f[q>>2]|0)+-1;oEa(f[p>>2]|0,u);b=f[d+24>>2]|0;if(b|0){c=f[(d+28|0)>>2]|0;if((c|0)!=(b|0))f[(d+28|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}Zpb(u);b=f[(a+28|0)>>2]|0;h=f[b>>2]|0;i=f[b+4>>2]|0;f[a>>2]=h;f[a+4>>2]=i;f[(a+8|0)>>2]=0;f[(a+12|0)>>2]=0;f[(a+16|0)>>2]=0;c=(f[s>>2]|0)-b|0;if(!(c>>3)){e=0;g=0;c=0}else{if(c>>3>>>0>536870911){t=82;f[a+1600>>2]=2;f[a+1604>>2]=4;break a}d=Wpb(c)|0;f[(a+12|0)>>2]=d;f[(a+8|0)>>2]=d;f[(a+16|0)>>2]=d+(c>>3<<3)|0;if((c|0)>0){Irb(d|0,b|0,c|0)|0;f[(a+12|0)>>2]=d+(c>>>3<<3)|0;e=d;g=d+(c>>>3<<3)|0;c=d+(c>>3<<3)|0}else{e=d;g=d;c=d+(c>>3<<3)|0}}b=Wpb(36)|0;f[(b+16|0)>>2]=h;f[(b+16|0)+4>>2]=i;f[b+24>>2]=e;f[b+28>>2]=g;f[b+32>>2]=c;f[(a+16|0)>>2]=0;f[(a+12|0)>>2]=0;f[(a+8|0)>>2]=0;c=f[v>>2]|0;do if(!c){l=v;n=v}else{while(1){t=f[c+16>>2]|0;if((t|0)==(h|0)?(f[c+20>>2]|0)>(i|0):(t|0)>(h|0)){d=f[c>>2]|0;if(!d){t=88;break}else c=d}else{m=c+4|0;d=f[m>>2]|0;if(!d){t=91;break}else c=d}}if((t|0)==88){t=0;l=c;n=c;break}else if((t|0)==91){t=0;l=c;n=m;break}}while(0);f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=l;f[n>>2]=b;c=f[f[(a+44|0)>>2]>>2]|0;if(c){f[o>>2]=c;b=f[n>>2]|0}tEa(f[p>>2]|0,b);f[q>>2]=(f[q>>2]|0)+1;b=f[(a+8|0)>>2]|0;if(b|0){c=f[(a+12|0)>>2]|0;if((c|0)!=(b|0))f[(a+12|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}h=f[(a+28|0)>>2]|0;e=f[h>>2]|0;g=f[h+4>>2]|0;c=f[v>>2]|0;do if(!c)t=105;else{b=v;c:while(1){d=c;while(1){q=f[d+16>>2]|0;if(!((q|0)==(e|0)?(f[d+20>>2]|0)<(g|0):(q|0)<(e|0)))break;c=f[d+4>>2]|0;if(!c)break c;else d=c}c=f[d>>2]|0;if(!c){b=d;break}else b=d}if((b|0)==(v|0)){t=105;break}q=f[b+16>>2]|0;if((q|0)==(e|0)?(f[b+20>>2]|0)>(g|0):(q|0)>(e|0))t=105;else r=b}while(0);if((t|0)==105){t=0;r=v}if(h|0){b=f[s>>2]|0;if((b|0)!=(h|0))f[s>>2]=b+(~((b+-8-h|0)>>>3)<<3);Zpb(h)}b=r}}while(0);if((v|0)==(b|0)){t=123;f[a+1600>>2]=1;break a}else u=b}f[a+544>>2]=u;f[a+1576>>2]=t}function k3a(a){a=a|0;var c=0,d=0,e=0.0,g=0,i=0,k=0,l=0,m=0,o=0.0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=f[a+112>>2]|0;y=f[a+672>>2]|0;A=f[a+1680>>2]|0;a:{if((A|0)==88){c=(Qwa(f[(z+8|0)>>2]|0)|0)+8|0;c=f[c>>2]|0;if(c|0)do{s=f[c+8>>2]|0;do if(b[s+203>>0]&3)if(!((j[(s+200|0)>>1]|h[(s+200|0)+2>>0]<<16)&7864320))if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,s)|0)if(!(f[(s+196|0)>>2]&64)){d=f[(f[s+4>>2]|0)+44>>2]|0;if((f[d+32>>2]|0)!=(0-((f[d+24>>2]|0)+(f[d+28>>2]|0))|0))if(Qqa(d+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,s,0);b:do if(!(f[(s+196|0)>>2]&2)){m=f[(z+28|0)>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;if((g|0)==(m|0))A=106;else{e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];d=0;do{i=f[g>>2]|0;l=f[g+4>>2]|0;if((i|0)==(l|0))d=(d|0)>0?d:0;else{k=2;do{B=+p[i+24>>3]+(e*+p[i>>3]+(o*+p[i+8>>3]+q*+p[i+16>>3]));x=!(B*B>=r)?1:B<0.0?0:2;k=(x|0)<(k|0)?x:k;i=i+32|0}while((i|0)!=(l|0));if((k|0)==2)break b;else d=(d|0)<(k|0)?k:d}g=g+12|0}while((g|0)!=(m|0));if((d|0)!=2)A=106}}else A=106;while(0);if((A|0)==106){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(e>=0.0){if(y)if(f[(s+196|0)>>2]&33554432|0){x=f[s+104>>2]|0;if(+n[y>>2]*+n[x+240>>2]+(+n[(y+4|0)>>2]*+n[x+244>>2]+ +n[(y+8|0)>>2]*+n[x+248>>2])<+n[x+252>>2])break}X2a(z+64|0,+p[(z+464|0)>>3]-e,s);break}}}}while(0);c=f[c>>2]|0}while((c|0)!=0);b[(z+488|0)>>0]=1;A=113}do if((A|0)==113){c:do if(!(E2a(z+64|0)|0)){d:while(1){H2a(a,z+64|0);switch(b[(a+12|0)>>0]|0){case 0:break d;case 1:{g=f[(a+8|0)>>2]|0;c=f[g+12>>2]|0;d=f[g+16>>2]|0;if((c|0)!=(d|0))do{Y2a(z,c);c=c+72|0}while((c|0)!=(d|0));x=f[(z+12|0)>>2]|0?z+16|0:0;c=f[g+24>>2]|0;w=f[g+28>>2]|0;if((c|0)!=(w|0))do{d=f[c+4>>2]|0;v=f[c+8>>2]|0;if((d|0)!=(v|0))do{t=f[d>>2]|0;e:do if((b[t+203>>0]&3)==1)if(!((j[(t+200|0)>>1]|h[(t+200|0)+2>>0]<<16)&7864320))if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,t)|0)if(!(f[(t+196|0)>>2]&64)){g=f[(f[t+4>>2]|0)+44>>2]|0;if((f[g+32>>2]|0)!=(0-((f[g+24>>2]|0)+(f[g+28>>2]|0))|0))if(Qqa(g+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,t,0);f:do if(!(f[(t+196|0)>>2]&2)){s=f[(z+28|0)>>2]|0;i=f[s>>2]|0;s=f[s+4>>2]|0;if((i|0)==(s|0)){A=137;break}e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];g=0;do{k=f[i>>2]|0;m=f[i+4>>2]|0;if((k|0)==(m|0))g=(g|0)>0?g:0;else{l=2;do{B=+p[k+24>>3]+(e*+p[k>>3]+(o*+p[k+8>>3]+q*+p[k+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;l=(C|0)<(l|0)?C:l;k=k+32|0}while((k|0)!=(m|0));if((l|0)==2)break f;else g=(g|0)<(l|0)?l:g}i=i+12|0}while((i|0)!=(s|0));if((g|0)!=2)A=137}else A=137;while(0);do if((A|0)==137){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(!(e>=0.0))break;do if(x){if(!(f[(t+196|0)>>2]&33554432))break;C=f[t+104>>2]|0;if(+n[x>>2]*+n[C+240>>2]+(+n[(x+4|0)>>2]*+n[C+244>>2]+ +n[(x+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break e}while(0);X2a(z+64|0,+p[(z+464|0)>>3]-e,t);break e}while(0)}}while(0);d=d+4|0}while((d|0)!=(v|0));c=c+20|0}while((c|0)!=(w|0));break}default:{}}if(E2a(z+64|0)|0)break c}f[z+32>>2]=f[a+8>>2];B=+J2a(z+64|0,a);p[z+40>>3]=B;f[z+48>>2]=f[(z+484|0)>>2]}while(0);if(!(f[z+32>>2]|0)){b[(z+488|0)>>0]=0;f[(z+484|0)>>2]=2;A=149;break}else{u=a;f[a+1704>>2]=5;break a}}while(0);if((A|0)==149){t=Twa(f[(z+8|0)>>2]|0)|0;c=f[t>>2]|0;t=f[t+4>>2]|0;if((c|0)!=(t|0))do{s=f[c>>2]|0;do if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,s)|0)if(!(f[(s+196|0)>>2]&64)){d=f[(f[s+4>>2]|0)+44>>2]|0;if((f[d+32>>2]|0)!=(0-((f[d+24>>2]|0)+(f[d+28>>2]|0))|0))if(Qqa(d+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,s,0);g:do if(!(f[(s+196|0)>>2]&2)){m=f[(z+28|0)>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;if((g|0)==(m|0))A=165;else{e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];d=0;do{i=f[g>>2]|0;l=f[g+4>>2]|0;if((i|0)==(l|0))d=(d|0)>0?d:0;else{k=2;do{B=+p[i+24>>3]+(e*+p[i>>3]+(o*+p[i+8>>3]+q*+p[i+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;k=(C|0)<(k|0)?C:k;i=i+32|0}while((i|0)!=(l|0));if((k|0)==2)break g;else d=(d|0)<(k|0)?k:d}g=g+12|0}while((g|0)!=(m|0));if((d|0)!=2)A=165}}else A=165;while(0);if((A|0)==165){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(e>=0.0){if(y)if(f[(s+196|0)>>2]&33554432|0){C=f[s+104>>2]|0;if(+n[y>>2]*+n[C+240>>2]+(+n[(y+4|0)>>2]*+n[C+244>>2]+ +n[(y+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break}X2a(z+64|0,+p[(z+464|0)>>3]-e,s);break}}}}while(0);c=c+4|0}while((c|0)!=(t|0));b[(z+488|0)>>0]=1}h:do if(!(E2a(z+64|0)|0)){i:while(1){H2a(a,z+64|0);switch(b[(a+12|0)>>0]|0){case 0:break i;case 1:{g=f[(a+8|0)>>2]|0;c=f[g+12>>2]|0;d=f[g+16>>2]|0;if((c|0)!=(d|0))do{Y2a(z,c);c=c+72|0}while((c|0)!=(d|0));x=f[(z+12|0)>>2]|0?z+16|0:0;c=f[g+24>>2]|0;w=f[g+28>>2]|0;if((c|0)!=(w|0))do{d=f[c+4>>2]|0;v=f[c+8>>2]|0;if((d|0)!=(v|0))do{t=f[d>>2]|0;j:do if((b[t+203>>0]&3)==1)if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,t)|0)if(!(f[(t+196|0)>>2]&64)){g=f[(f[t+4>>2]|0)+44>>2]|0;if((f[g+32>>2]|0)!=(0-((f[g+24>>2]|0)+(f[g+28>>2]|0))|0))if(Qqa(g+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,t,0);k:do if(!(f[(t+196|0)>>2]&2)){s=f[(z+28|0)>>2]|0;i=f[s>>2]|0;s=f[s+4>>2]|0;if((i|0)==(s|0)){A=195;break}e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];g=0;do{k=f[i>>2]|0;m=f[i+4>>2]|0;if((k|0)==(m|0))g=(g|0)>0?g:0;else{l=2;do{B=+p[k+24>>3]+(e*+p[k>>3]+(o*+p[k+8>>3]+q*+p[k+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;l=(C|0)<(l|0)?C:l;k=k+32|0}while((k|0)!=(m|0));if((l|0)==2)break k;else g=(g|0)<(l|0)?l:g}i=i+12|0}while((i|0)!=(s|0));if((g|0)!=2)A=195}else A=195;while(0);do if((A|0)==195){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(!(e>=0.0))break;do if(x){if(!(f[(t+196|0)>>2]&33554432))break;C=f[t+104>>2]|0;if(+n[x>>2]*+n[C+240>>2]+(+n[(x+4|0)>>2]*+n[C+244>>2]+ +n[(x+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break j}while(0);X2a(z+64|0,+p[(z+464|0)>>3]-e,t);break j}while(0)}}while(0);d=d+4|0}while((d|0)!=(v|0));c=c+20|0}while((c|0)!=(w|0));break}default:{}}if(E2a(z+64|0)|0)break h}f[z+32>>2]=f[a+8>>2];B=+J2a(z+64|0,a);p[z+40>>3]=B;f[z+48>>2]=f[(z+484|0)>>2]}while(0);if(f[z+32>>2]|0){u=a;f[a+1704>>2]=5;break a}b[(z+488|0)>>0]=0;f[(z+484|0)>>2]=4;u=a;f[a+1704>>2]=5;break a}f[a+1680>>2]=A}function l3a(a){a=a|0;var c=0,d=0,e=0.0,g=0,i=0,k=0,l=0,m=0,o=0.0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=f[a+112>>2]|0;y=f[a+672>>2]|0;A=f[a+1680>>2]|0;a:{if((A|0)==89){c=(Qwa(f[(z+8|0)>>2]|0)|0)+8|0;c=f[c>>2]|0;if(c|0)do{s=f[c+8>>2]|0;do if(b[s+203>>0]&3)if(!(f[(s+196|0)>>2]&1))if(!((j[(s+200|0)>>1]|h[(s+200|0)+2>>0]<<16)&7864320))if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,s)|0)if(!(f[(s+196|0)>>2]&64)){d=f[(f[s+4>>2]|0)+44>>2]|0;if((f[d+32>>2]|0)!=(0-((f[d+24>>2]|0)+(f[d+28>>2]|0))|0))if(Qqa(d+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,s,0);b:do if(!(f[(s+196|0)>>2]&2)){m=f[(z+28|0)>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;if((g|0)==(m|0))A=108;else{e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];d=0;do{i=f[g>>2]|0;l=f[g+4>>2]|0;if((i|0)==(l|0))d=(d|0)>0?d:0;else{k=2;do{B=+p[i+24>>3]+(e*+p[i>>3]+(o*+p[i+8>>3]+q*+p[i+16>>3]));x=!(B*B>=r)?1:B<0.0?0:2;k=(x|0)<(k|0)?x:k;i=i+32|0}while((i|0)!=(l|0));if((k|0)==2)break b;else d=(d|0)<(k|0)?k:d}g=g+12|0}while((g|0)!=(m|0));if((d|0)!=2)A=108}}else A=108;while(0);if((A|0)==108){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(e>=0.0){if(y)if(f[(s+196|0)>>2]&33554432|0){x=f[s+104>>2]|0;if(+n[y>>2]*+n[x+240>>2]+(+n[(y+4|0)>>2]*+n[x+244>>2]+ +n[(y+8|0)>>2]*+n[x+248>>2])<+n[x+252>>2])break}X2a(z+64|0,+p[(z+464|0)>>3]-e,s);break}}}}while(0);c=f[c>>2]|0}while((c|0)!=0);b[(z+488|0)>>0]=1;A=115}do if((A|0)==115){c:do if(!(E2a(z+64|0)|0)){d:while(1){H2a(a,z+64|0);switch(b[(a+12|0)>>0]|0){case 0:break d;case 1:{g=f[(a+8|0)>>2]|0;c=f[g+12>>2]|0;d=f[g+16>>2]|0;if((c|0)!=(d|0))do{Y2a(z,c);c=c+72|0}while((c|0)!=(d|0));x=f[(z+12|0)>>2]|0?z+16|0:0;c=f[g+24>>2]|0;w=f[g+28>>2]|0;if((c|0)!=(w|0))do{d=f[c+4>>2]|0;v=f[c+8>>2]|0;if((d|0)!=(v|0))do{t=f[d>>2]|0;e:do if((b[t+203>>0]&3)==1)if(!(f[(t+196|0)>>2]&1))if(!((j[(t+200|0)>>1]|h[(t+200|0)+2>>0]<<16)&7864320))if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,t)|0)if(!(f[(t+196|0)>>2]&64)){g=f[(f[t+4>>2]|0)+44>>2]|0;if((f[g+32>>2]|0)!=(0-((f[g+24>>2]|0)+(f[g+28>>2]|0))|0)){if(!(Qqa(g+64|0)|0))break;PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,t,0);f:do if(!(f[(t+196|0)>>2]&2)){s=f[(z+28|0)>>2]|0;i=f[s>>2]|0;s=f[s+4>>2]|0;if((i|0)==(s|0)){A=140;break}e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];g=0;do{k=f[i>>2]|0;m=f[i+4>>2]|0;if((k|0)==(m|0))g=(g|0)>0?g:0;else{l=2;do{B=+p[k+24>>3]+(e*+p[k>>3]+(o*+p[k+8>>3]+q*+p[k+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;l=(C|0)<(l|0)?C:l;k=k+32|0}while((k|0)!=(m|0));if((l|0)==2)break f;else g=(g|0)<(l|0)?l:g}i=i+12|0}while((i|0)!=(s|0));if((g|0)!=2)A=140}else A=140;while(0);do if((A|0)==140){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(!(e>=0.0))break;do if(x){if(!(f[(t+196|0)>>2]&33554432))break;C=f[t+104>>2]|0;if(+n[x>>2]*+n[C+240>>2]+(+n[(x+4|0)>>2]*+n[C+244>>2]+ +n[(x+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break e}while(0);X2a(z+64|0,+p[(z+464|0)>>3]-e,t);break e}while(0)}}while(0);d=d+4|0}while((d|0)!=(v|0));c=c+20|0}while((c|0)!=(w|0));break}default:{}}if(E2a(z+64|0)|0)break c}f[z+32>>2]=f[a+8>>2];B=+J2a(z+64|0,a);p[z+40>>3]=B;f[z+48>>2]=f[(z+484|0)>>2]}while(0);if(!(f[z+32>>2]|0)){b[(z+488|0)>>0]=0;f[(z+484|0)>>2]=2;A=152;break}else{u=a;f[a+1704>>2]=5;break a}}while(0);if((A|0)==152){t=Twa(f[(z+8|0)>>2]|0)|0;c=f[t>>2]|0;t=f[t+4>>2]|0;if((c|0)!=(t|0))do{s=f[c>>2]|0;do if(!(f[(s+196|0)>>2]&1))if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,s)|0)if(!(f[(s+196|0)>>2]&64)){d=f[(f[s+4>>2]|0)+44>>2]|0;if((f[d+32>>2]|0)!=(0-((f[d+24>>2]|0)+(f[d+28>>2]|0))|0))if(Qqa(d+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,s,0);g:do if(!(f[(s+196|0)>>2]&2)){m=f[(z+28|0)>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;if((g|0)==(m|0))A=169;else{e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];d=0;do{i=f[g>>2]|0;l=f[g+4>>2]|0;if((i|0)==(l|0))d=(d|0)>0?d:0;else{k=2;do{B=+p[i+24>>3]+(e*+p[i>>3]+(o*+p[i+8>>3]+q*+p[i+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;k=(C|0)<(k|0)?C:k;i=i+32|0}while((i|0)!=(l|0));if((k|0)==2)break g;else d=(d|0)<(k|0)?k:d}g=g+12|0}while((g|0)!=(m|0));if((d|0)!=2)A=169}}else A=169;while(0);if((A|0)==169){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(e>=0.0){if(y)if(f[(s+196|0)>>2]&33554432|0){C=f[s+104>>2]|0;if(+n[y>>2]*+n[C+240>>2]+(+n[(y+4|0)>>2]*+n[C+244>>2]+ +n[(y+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break}X2a(z+64|0,+p[(z+464|0)>>3]-e,s);break}}}}while(0);c=c+4|0}while((c|0)!=(t|0));b[(z+488|0)>>0]=1}h:do if(!(E2a(z+64|0)|0)){i:while(1){H2a(a,z+64|0);switch(b[(a+12|0)>>0]|0){case 0:break i;case 1:{g=f[(a+8|0)>>2]|0;c=f[g+12>>2]|0;d=f[g+16>>2]|0;if((c|0)!=(d|0))do{Y2a(z,c);c=c+72|0}while((c|0)!=(d|0));x=f[(z+12|0)>>2]|0?z+16|0:0;c=f[g+24>>2]|0;w=f[g+28>>2]|0;if((c|0)!=(w|0))do{d=f[c+4>>2]|0;v=f[c+8>>2]|0;if((d|0)!=(v|0))do{t=f[d>>2]|0;j:do if((f[(t+196|0)>>2]&1|0)==0?(b[t+203>>0]&3)==1:0)if(Pg[f[(f[z>>2]|0)+12>>2]&255](z,t)|0)if(!(f[(t+196|0)>>2]&64)){g=f[(f[t+4>>2]|0)+44>>2]|0;if((f[g+32>>2]|0)!=(0-((f[g+24>>2]|0)+(f[g+28>>2]|0))|0))if(Qqa(g+64|0)|0){PWa(a+16|0,f[(z+8|0)>>2]|0,f[(z+12|0)>>2]|0,t,0);k:do if(!(f[(t+196|0)>>2]&2)){s=f[(z+28|0)>>2]|0;i=f[s>>2]|0;s=f[s+4>>2]|0;if((i|0)==(s|0)){A=199;break}e=+p[(a+16|0)>>3];o=+p[((a+16|0)+8|0)>>3];q=+p[((a+16|0)+16|0)>>3];r=+p[((a+16|0)+24|0)>>3];g=0;do{k=f[i>>2]|0;m=f[i+4>>2]|0;if((k|0)==(m|0))g=(g|0)>0?g:0;else{l=2;do{B=+p[k+24>>3]+(e*+p[k>>3]+(o*+p[k+8>>3]+q*+p[k+16>>3]));C=!(B*B>=r)?1:B<0.0?0:2;l=(C|0)<(l|0)?C:l;k=k+32|0}while((k|0)!=(m|0));if((l|0)==2)break k;else g=(g|0)<(l|0)?l:g}i=i+12|0}while((i|0)!=(s|0));if((g|0)!=2)A=199}else A=199;while(0);do if((A|0)==199){A=0;e=+Lg[f[(f[z>>2]|0)+20>>2]&31](z,a+16|0);if(!(e>=0.0))break;do if(x){if(!(f[(t+196|0)>>2]&33554432))break;C=f[t+104>>2]|0;if(+n[x>>2]*+n[C+240>>2]+(+n[(x+4|0)>>2]*+n[C+244>>2]+ +n[(x+8|0)>>2]*+n[C+248>>2])<+n[C+252>>2])break j}while(0);X2a(z+64|0,+p[(z+464|0)>>3]-e,t);break j}while(0)}}while(0);d=d+4|0}while((d|0)!=(v|0));c=c+20|0}while((c|0)!=(w|0));break}default:{}}if(E2a(z+64|0)|0)break h}f[z+32>>2]=f[a+8>>2];B=+J2a(z+64|0,a);p[z+40>>3]=B;f[z+48>>2]=f[(z+484|0)>>2]}while(0);if(f[z+32>>2]|0){u=a;f[a+1704>>2]=5;break a}b[(z+488|0)>>0]=0;f[(z+484|0)>>2]=4;u=a;f[a+1704>>2]=5;break a}f[a+1680>>2]=A}
function UDa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;O=u;u=u+16|0;I=O;J=O+4|0;L=a+920|0;N=a+840|0;e=f[N>>2]|0;M=a+928|0;g=f[L>>2]|0;K=a+924|0;if((f[M>>2]|0)-g>>3>>>0<e>>>0){if(e>>>0>536870911)ud();c=(f[K>>2]|0)-g|0;d=Wpb(e<<3)|0;if((c|0)>0)Irb(d|0,g|0,c|0)|0;f[L>>2]=d;f[K>>2]=d+(c>>3<<3);f[M>>2]=d+(e<<3);if(g|0)Zpb(g)}H=a+836|0;z=a+900|0;A=a+32|0;B=a+36|0;C=a+44|0;D=a+48|0;E=a+40|0;x=a+52|0;y=a+56|0;F=a+916|0;w=145640;a:while(1){g=b[w>>0]|0;v=g<<24>>24!=0;c=f[H>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==g<<24>>24){d=d+8|0;e=f[K>>2]|0;if((e|0)==(f[M>>2]|0)){dB(L,d);break}else{r=d;s=f[r+4>>2]|0;t=e;f[t>>2]=f[r>>2];f[t+4>>2]=s;f[K>>2]=(f[K>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);c=f[L>>2]|0;d=f[K>>2]|0;if((c|0)!=(d|0)){Xka(c,d,I);t=(f[z>>2]|0)+1|0;f[z>>2]=t;j=f[B>>2]|0;k=(j|0)==0;b:do if(k){c=0;G=40}else{g=j+-1|0;e=(g&j|0)==0;if(e)c=g&t;else if(j>>>0>t>>>0)c=t;else c=(t>>>0)%(j>>>0)|0;d=f[(f[A>>2]|0)+(c<<2)>>2]|0;if(!d)G=40;else{if(e)while(1){d=f[d>>2]|0;if(!d){G=40;break b}s=f[d+4>>2]|0;if(!((s|0)==(t|0)|(s&g|0)==(c|0))){G=40;break b}if((f[d+8>>2]|0)==(t|0))break b}do{d=f[d>>2]|0;if(!d){G=40;break b}e=f[d+4>>2]|0;if((e|0)!=(t|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(c|0)){G=40;break b}}}while((f[d+8>>2]|0)!=(t|0))}}while(0);if((G|0)==40){G=0;g=Wpb(24)|0;f[g+8>>2]=t;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=t;f[g>>2]=0;h=+(((f[C>>2]|0)+1|0)>>>0);i=+n[D>>2];do if(k|i*+(j>>>0)<h){c=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(h/i))>>>0;VDa(A,c>>>0<d>>>0?d:c);c=f[B>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&t;break}if(c>>>0>t>>>0){e=c;c=t}else{e=c;c=(t>>>0)%(c>>>0)|0}}else e=j;while(0);d=(f[A>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){f[g>>2]=f[E>>2];f[E>>2]=g;f[d>>2]=E;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[A>>2]|0)+(c<<2)|0;G=53}}else{f[g>>2]=f[c>>2];G=53}if((G|0)==53){G=0;f[c>>2]=g}f[C>>2]=(f[C>>2]|0)+1;d=g}r=d+12|0;c=f[x>>2]|0;q=f[y>>2]|0;if((c|0)!=(q|0)){s=d+16|0;p=d+20|0;do{d=f[s>>2]|0;o=f[p>>2]|0;e=o;if(d>>>0<o>>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];o=d+8|0;m=c+8|0;f[o>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[o>>2]=f[m>>2];o=c+12|0;f[l>>2]=f[o>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[o>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;o=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=o;f[s>>2]=(f[s>>2]|0)+28}else{g=f[r>>2]|0;j=(d-g|0)/28|0;d=j+1|0;if(d>>>0>153391689){G=71;break a}m=(e-g|0)/28|0;o=m<<1;d=m>>>0<76695844?(o>>>0<d>>>0?d:o):153391689;if(!d)e=0;else{if(d>>>0>153391689){G=74;break a}e=Wpb(d*28|0)|0}k=e+(j*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(j*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(j*28|0)+16>>2]=0;f[e+(j*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(j*28|0)+12>>2]=f[l>>2];o=c+16|0;f[e+(j*28|0)+16>>2]=f[o>>2];f[o>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(j*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(j*28|0)+24>>2]=l;l=k+28|0;j=f[r>>2]|0;d=f[s>>2]|0;if((d|0)==(j|0)){d=g;o=j;e=j}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];P=e+-20|0;o=k+-20|0;f[P>>2]=0;Q=e+-16|0;f[Q>>2]=0;f[e+-12>>2]=0;f[P>>2]=f[o>>2];P=k+-16|0;f[Q>>2]=f[P>>2];Q=k+-12|0;f[e+-12>>2]=f[Q>>2];f[Q>>2]=0;f[P>>2]=0;f[o>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;o=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=o;e=g+-28|0;g=e}while((d|0)!=(j|0));d=g;o=f[r>>2]|0;e=f[s>>2]|0}f[r>>2]=d;f[s>>2]=l;f[p>>2]=m;l=o;if((e|0)!=(l|0))do{Q=e+-4|0;d=f[Q>>2]|0;f[Q>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;do if((d|0)==(f[k>>2]|0)){j=f[e>>2]|0;if(!j)break;_pb(j);d=f[g>>2]|0}while(0);if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d)}}while((e|0)!=(l|0));if(o|0)Zpb(o)}c=c+28|0}while((c|0)!=(q|0));k=f[x>>2]|0;c=f[y>>2]|0;if((c|0)!=(k|0))do{e=c+-28|0;f[y>>2]=e;Q=c+-4|0;d=f[Q>>2]|0;f[Q>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;g=f[d>>2]|0;j=c+-16|0;if((g|0)==(f[j>>2]|0)){c=f[e>>2]|0;if(!c)c=g;else{_pb(c);c=f[d>>2]|0}}else c=g;if(c|0){d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[y>>2]|0}while((c|0)!=(k|0))}c=f[F>>2]|0;d=f[(f[c>>2]|0)+148>>2]|0;f[J>>2]=t;f[I>>2]=f[J>>2];Eh[d&255](c,I,L,v);c=f[L>>2]|0;d=f[K>>2]|0;if((d|0)!=(c|0))f[K>>2]=d+(~((d+-8-c|0)>>>3)<<3)}w=w+1|0;if((w|0)==145642){G=9;break}}if((G|0)==9){if(!(f[N>>2]|0)){u=O;return}c=f[H>>2]|0;if(c|0)do{Q=c;c=f[c>>2]|0;Zpb(Q)}while((c|0)!=0);f[H>>2]=0;e=f[a+832>>2]|0;if(e|0){d=a+828|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[N>>2]=0;u=O;return}else if((G|0)==71)fob(r);else if((G|0)==74)ud()}function VDa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){WDa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;WDa(a,b);return}function WDa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function XDa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;n=q;j=q+20|0;i=q+16|0;k=q+12|0;l=q+8|0;m=q+4|0;p=b+12|0;e=f[p>>2]|0;g=a+8|0;h=f[a>>2]|0;o=a+4|0;if((f[g>>2]|0)-h>>3>>>0<e>>>0){if(e>>>0>536870911)ud();c=(f[o>>2]|0)-h|0;d=Wpb(e<<3)|0;if((c|0)>0)Irb(d|0,h|0,c|0)|0;f[a>>2]=d;f[o>>2]=d+(c>>3<<3);f[g>>2]=d+(e<<3);if(h|0)Zpb(h)}f[k>>2]=f[o>>2];d=b+8|0;f[l>>2]=f[d>>2];f[m>>2]=0;f[i>>2]=f[k>>2];f[j>>2]=f[l>>2];f[n>>2]=f[m>>2];_Da(a,i,j,n)|0;if(!(f[p>>2]|0)){b=f[a>>2]|0;p=f[o>>2]|0;Xka(b,p,n);u=q;return}c=f[d>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);f[d>>2]=0;d=f[b+4>>2]|0;if(d|0){c=0;do{f[(f[b>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[p>>2]=0;b=f[a>>2]|0;p=f[o>>2]|0;Xka(b,p,n);u=q;return}function YDa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){ZDa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;ZDa(a,b);return}function ZDa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function _Da(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0<o>>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0<o>>>0)}if(k){Jrb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)fob(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<d>>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)ud();else{m=Wpb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){Irb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}Zpb(b);r=l;return r|0}return 0}function $Da(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){aEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;aEa(a,b);return}function aEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function bEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){cEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;cEa(a,b);return}function cEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function dEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){eEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;eEa(a,b);return}function eEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function fEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=b+4|0;k=f[h>>2]|0;l=(k|0)==0;a:do if(l){c=0;o=17}else{g=k+-1|0;e=(g&k|0)==0;if(e)c=g&a;else if(k>>>0>a>>>0)c=a;else c=(a>>>0)%(k>>>0)|0;d=f[(f[b>>2]|0)+(c<<2)>>2]|0;if(!d)o=17;else{if(e)while(1){d=f[d>>2]|0;if(!d){o=17;break a}s=f[d+4>>2]|0;if(!((s|0)==(a|0)|(s&g|0)==(c|0))){o=17;break a}if((f[d+8>>2]|0)==(a|0))break a}do{d=f[d>>2]|0;if(!d){o=17;break a}e=f[d+4>>2]|0;if((e|0)!=(a|0)){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)!=(c|0)){o=17;break a}}}while((f[d+8>>2]|0)!=(a|0))}}while(0);if((o|0)==17){g=Wpb(24)|0;f[g+8>>2]=a;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=a;f[g>>2]=0;m=b+12|0;i=+(((f[m>>2]|0)+1|0)>>>0);j=+n[b+16>>2];do if(l|j*+(k>>>0)<i){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;d=~~+W(+(i/j))>>>0;gEa(b,c>>>0<d>>>0?d:c);c=f[h>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&a;break}if(c>>>0>a>>>0){e=c;c=a}else{e=c;c=(a>>>0)%(c>>>0)|0}}else e=k;while(0);d=(f[b>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=b+8|0;f[g>>2]=f[c>>2];f[c>>2]=g;f[d>>2]=c;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[b>>2]|0)+(c<<2)|0;o=30}}else{f[g>>2]=f[c>>2];o=30}if((o|0)==30)f[c>>2]=g;f[m>>2]=(f[m>>2]|0)+1;d=g}r=d+12|0;q=b+20|0;c=f[q>>2]|0;s=b+24|0;b=f[s>>2]|0;if((c|0)==(b|0))return;p=d+16|0;o=d+20|0;while(1){d=f[p>>2]|0;a=f[o>>2]|0;e=a;if(d>>>0<a>>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];a=d+8|0;m=c+8|0;f[a>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[a>>2]=f[m>>2];a=c+12|0;f[l>>2]=f[a>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[a>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;a=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=a;f[p>>2]=(f[p>>2]|0)+28}else{g=f[r>>2]|0;h=(d-g|0)/28|0;d=h+1|0;if(d>>>0>153391689){o=49;break}m=(e-g|0)/28|0;a=m<<1;d=m>>>0<76695844?(a>>>0<d>>>0?d:a):153391689;if(!d)e=0;else{if(d>>>0>153391689){o=52;break}e=Wpb(d*28|0)|0}k=e+(h*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(h*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(h*28|0)+16>>2]=0;f[e+(h*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(h*28|0)+12>>2]=f[l>>2];a=c+16|0;f[e+(h*28|0)+16>>2]=f[a>>2];f[a>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(h*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(h*28|0)+24>>2]=l;l=k+28|0;h=f[r>>2]|0;d=f[p>>2]|0;if((d|0)==(h|0)){d=g;a=h;e=h}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];t=e+-20|0;a=k+-20|0;f[t>>2]=0;u=e+-16|0;f[u>>2]=0;f[e+-12>>2]=0;f[t>>2]=f[a>>2];t=k+-16|0;f[u>>2]=f[t>>2];u=k+-12|0;f[e+-12>>2]=f[u>>2];f[u>>2]=0;f[t>>2]=0;f[a>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;a=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=a;e=g+-28|0;g=e}while((d|0)!=(h|0));d=g;a=f[r>>2]|0;e=f[p>>2]|0}f[r>>2]=d;f[p>>2]=l;f[o>>2]=m;l=a;if((e|0)!=(l|0))do{u=e+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;if((d|0)==(f[k>>2]|0)){h=f[e>>2]|0;if(h){_pb(h);d=f[g>>2]|0}}if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d)}}while((e|0)!=(l|0));if(a|0)Zpb(a)}c=c+28|0;if((c|0)==(b|0)){o=34;break}}if((o|0)==34){k=f[q>>2]|0;c=f[s>>2]|0;if((c|0)==(k|0))return;do{g=c+-28|0;f[s>>2]=g;u=c+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[s>>2]|0}while((c|0)!=(k|0));return}else if((o|0)==49)fob(r);else if((o|0)==52)ud()}function gEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){hEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;hEa(a,b);return}function hEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function iEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=b+4|0;k=f[h>>2]|0;l=(k|0)==0;a:do if(l){c=0;o=17}else{g=k+-1|0;e=(g&k|0)==0;if(e)c=g&a;else if(k>>>0>a>>>0)c=a;else c=(a>>>0)%(k>>>0)|0;d=f[(f[b>>2]|0)+(c<<2)>>2]|0;if(!d)o=17;else{if(e)while(1){d=f[d>>2]|0;if(!d){o=17;break a}s=f[d+4>>2]|0;if(!((s|0)==(a|0)|(s&g|0)==(c|0))){o=17;break a}if((f[d+8>>2]|0)==(a|0))break a}do{d=f[d>>2]|0;if(!d){o=17;break a}e=f[d+4>>2]|0;if((e|0)!=(a|0)){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)!=(c|0)){o=17;break a}}}while((f[d+8>>2]|0)!=(a|0))}}while(0);if((o|0)==17){g=Wpb(24)|0;f[g+8>>2]=a;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=a;f[g>>2]=0;m=b+12|0;i=+(((f[m>>2]|0)+1|0)>>>0);j=+n[b+16>>2];do if(l|j*+(k>>>0)<i){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;d=~~+W(+(i/j))>>>0;jEa(b,c>>>0<d>>>0?d:c);c=f[h>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&a;break}if(c>>>0>a>>>0){e=c;c=a}else{e=c;c=(a>>>0)%(c>>>0)|0}}else e=k;while(0);d=(f[b>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=b+8|0;f[g>>2]=f[c>>2];f[c>>2]=g;f[d>>2]=c;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[b>>2]|0)+(c<<2)|0;o=30}}else{f[g>>2]=f[c>>2];o=30}if((o|0)==30)f[c>>2]=g;f[m>>2]=(f[m>>2]|0)+1;d=g}r=d+12|0;q=b+20|0;c=f[q>>2]|0;s=b+24|0;b=f[s>>2]|0;if((c|0)==(b|0))return;p=d+16|0;o=d+20|0;while(1){d=f[p>>2]|0;a=f[o>>2]|0;e=a;if(d>>>0<a>>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];a=d+8|0;m=c+8|0;f[a>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[a>>2]=f[m>>2];a=c+12|0;f[l>>2]=f[a>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[a>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;a=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=a;f[p>>2]=(f[p>>2]|0)+28}else{g=f[r>>2]|0;h=(d-g|0)/28|0;d=h+1|0;if(d>>>0>153391689){o=49;break}m=(e-g|0)/28|0;a=m<<1;d=m>>>0<76695844?(a>>>0<d>>>0?d:a):153391689;if(!d)e=0;else{if(d>>>0>153391689){o=52;break}e=Wpb(d*28|0)|0}k=e+(h*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(h*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(h*28|0)+16>>2]=0;f[e+(h*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(h*28|0)+12>>2]=f[l>>2];a=c+16|0;f[e+(h*28|0)+16>>2]=f[a>>2];f[a>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(h*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(h*28|0)+24>>2]=l;l=k+28|0;h=f[r>>2]|0;d=f[p>>2]|0;if((d|0)==(h|0)){d=g;a=h;e=h}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];t=e+-20|0;a=k+-20|0;f[t>>2]=0;u=e+-16|0;f[u>>2]=0;f[e+-12>>2]=0;f[t>>2]=f[a>>2];t=k+-16|0;f[u>>2]=f[t>>2];u=k+-12|0;f[e+-12>>2]=f[u>>2];f[u>>2]=0;f[t>>2]=0;f[a>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;a=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=a;e=g+-28|0;g=e}while((d|0)!=(h|0));d=g;a=f[r>>2]|0;e=f[p>>2]|0}f[r>>2]=d;f[p>>2]=l;f[o>>2]=m;l=a;if((e|0)!=(l|0))do{u=e+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;if((d|0)==(f[k>>2]|0)){h=f[e>>2]|0;if(h){_pb(h);d=f[g>>2]|0}}if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);Zpb(d)}}while((e|0)!=(l|0));if(a|0)Zpb(a)}c=c+28|0;if((c|0)==(b|0)){o=34;break}}if((o|0)==34){k=f[q>>2]|0;c=f[s>>2]|0;if((c|0)==(k|0))return;do{g=c+-28|0;f[s>>2]=g;u=c+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{_pb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}c=f[s>>2]|0}while((c|0)!=(k|0));return}else if((o|0)==49)fob(r);else if((o|0)==52)ud()}function jEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){kEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;kEa(a,b);return}function kEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function lEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){mEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;mEa(a,b);return}function mEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function nEa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0<o>>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0<o>>>0)}if(k){Jrb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)fob(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0<d>>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)ud();else{m=Wpb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)Irb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){Irb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}Zpb(b);r=l;return r|0}return 0}function oEa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[c>>2]|0;if(!e){d=c;e=0}else{d=f[c+4>>2]|0;if(!d)d=c;else while(1){e=f[d>>2]|0;if(!e){e=0;break}else d=e}}k=d+4|0;l=f[(e|0?d:k)>>2]|0;m=(l|0)!=0;j=d+8|0;if(m)f[l+8>>2]=f[j>>2];e=f[j>>2]|0;g=f[e>>2]|0;if((g|0)==(d|0)){f[e>>2]=l;if((d|0)==(a|0)){a=l;g=0}else g=f[e+4>>2]|0}else f[e+4>>2]=l;h=d+12|0;i=(b[h>>0]|0)!=0;if((d|0)!=(c|0)){n=c+8|0;e=f[n>>2]|0;f[j>>2]=e;f[((f[f[n>>2]>>2]|0)==(c|0)?e:e+4|0)>>2]=d;e=f[c>>2]|0;f[d>>2]=e;f[e+8>>2]=d;e=f[c+4>>2]|0;f[k>>2]=e;if(e|0)f[e+8>>2]=d;b[h>>0]=b[c+12>>0]|0;a=(a|0)==(c|0)?d:a}if(!(i&(a|0)!=0))return;if(m){b[l+12>>0]=1;return}else j=g;while(1){g=j+8|0;h=f[g>>2]|0;d=j+12|0;e=(b[d>>0]|0)!=0;if((f[h>>2]|0)==(j|0)){if(e)i=j;else{b[d>>0]=1;b[h+12>>0]=0;d=j+4|0;e=f[d>>2]|0;f[h>>2]=e;if(e|0)f[e+8>>2]=h;i=h+8|0;f[g>>2]=f[i>>2];n=f[i>>2]|0;f[((f[n>>2]|0)==(h|0)?n:n+4|0)>>2]=j;f[d>>2]=h;f[i>>2]=j;i=f[h>>2]|0;a=(a|0)==(h|0)?j:a}d=f[i>>2]|0;g=(d|0)==0;if(!g)if(!(b[d+12>>0]|0)){h=49;break}e=f[i+4>>2]|0;if(e|0)if(!(b[e+12>>0]|0)){h=48;break}b[i+12>>0]=0;d=f[i+8>>2]|0;e=d+12|0;if((d|0)==(a|0)|(b[e>>0]|0)==0){h=47;break}}else{if(e)g=j;else{b[d>>0]=1;b[h+12>>0]=0;n=h+4|0;d=f[n>>2]|0;e=f[d>>2]|0;f[n>>2]=e;if(e|0)f[e+8>>2]=h;n=h+8|0;f[d+8>>2]=f[n>>2];g=f[n>>2]|0;f[((f[g>>2]|0)==(h|0)?g:g+4|0)>>2]=d;f[d>>2]=h;f[n>>2]=d;n=f[j>>2]|0;g=f[n+4>>2]|0;a=(a|0)==(n|0)?j:a}e=f[g>>2]|0;if(e|0)if(!(b[e+12>>0]|0)){h=30;break}d=f[g+4>>2]|0;if(d|0)if(!(b[d+12>>0]|0)){a=d;h=31;break}b[g+12>>0]=0;d=f[g+8>>2]|0;if((d|0)==(a|0)){h=29;break}if(!(b[d+12>>0]|0)){a=d;h=29;break}}j=f[d+8>>2]|0;j=f[((f[j>>2]|0)==(d|0)?j+4|0:j)>>2]|0}if((h|0)==29){b[a+12>>0]=1;return}else if((h|0)==30){a=f[g+4>>2]|0;if(!a)h=32;else h=31}else if((h|0)==47){b[e>>0]=1;return}else if((h|0)==48)if(g)h=50;else h=49;if((h|0)==31)if(!(b[a+12>>0]|0)){d=g;h=35}else h=32;else if((h|0)==49)if(!(b[d+12>>0]|0)){a=i;h=53}else h=50;if((h|0)==32){b[e+12>>0]=1;b[g+12>>0]=0;a=e+4|0;d=f[a>>2]|0;f[g>>2]=d;if(d|0)f[d+8>>2]=g;d=g+8|0;f[e+8>>2]=f[d>>2];h=f[d>>2]|0;f[((f[h>>2]|0)==(g|0)?h:h+4|0)>>2]=e;f[a>>2]=g;f[d>>2]=e;d=e;a=g;h=35}else if((h|0)==50){n=i+4|0;a=f[n>>2]|0;b[a+12>>0]=1;b[i+12>>0]=0;d=f[a>>2]|0;f[n>>2]=d;if(d|0)f[d+8>>2]=i;d=i+8|0;f[a+8>>2]=f[d>>2];h=f[d>>2]|0;f[((f[h>>2]|0)==(i|0)?h:h+4|0)>>2]=a;f[a>>2]=i;f[d>>2]=a;d=i;h=53}if((h|0)==35){e=f[d+8>>2]|0;n=e+12|0;b[d+12>>0]=b[n>>0]|0;b[n>>0]=1;b[a+12>>0]=1;n=e+4|0;a=f[n>>2]|0;d=f[a>>2]|0;f[n>>2]=d;if(d|0)f[d+8>>2]=e;n=e+8|0;f[a+8>>2]=f[n>>2];c=f[n>>2]|0;f[((f[c>>2]|0)==(e|0)?c:c+4|0)>>2]=a;f[a>>2]=e;f[n>>2]=a;return}else if((h|0)==53){g=f[a+8>>2]|0;e=g+12|0;b[a+12>>0]=b[e>>0]|0;b[e>>0]=1;b[d+12>>0]=1;a=f[g>>2]|0;d=a+4|0;e=f[d>>2]|0;f[g>>2]=e;if(e|0)f[e+8>>2]=g;n=g+8|0;f[a+8>>2]=f[n>>2];c=f[n>>2]|0;f[((f[c>>2]|0)==(g|0)?c:c+4|0)>>2]=a;f[d>>2]=g;f[n>>2]=a;return}}function pEa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;l=e+4|0;n=f[l>>2]|0;if(!n){x=1;return x|0}j=n+-1|0;i=(j&n|0)==0;if(i)k=j&d;else if(n>>>0>d>>>0)k=d;else k=(d>>>0)%(n>>>0)|0;h=f[(f[e>>2]|0)+(k<<2)>>2]|0;if(!h){x=1;return x|0}h=f[h>>2]|0;if(!h){x=1;return x|0}a:do if(i){while(1){o=f[h+4>>2]|0;i=(o|0)==(d|0);if(!(i|(o&j|0)==(k|0))){h=1;x=70;break}if(i)if((f[h+8>>2]|0)==(d|0)){v=h;break a}h=f[h>>2]|0;if(!h){h=1;x=70;break}}if((x|0)==70)return h|0}else{i=h;while(1){h=f[i+4>>2]|0;if((h|0)==(d|0)){if((f[i+8>>2]|0)==(d|0)){v=i;break a}}else{if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)!=(k|0)){h=1;x=70;break}}i=f[i>>2]|0;if(!i){h=1;x=70;break}}if((x|0)==70)return h|0}while(0);o=v+12|0;h=f[o>>2]|0;k=(f[v+16>>2]|0)-h|0;i=(k|0)/28|0;b:do if(!k)h=d;else{c:do if(EEa(b,c,h)|0){h=0;while(1){h=h+1|0;if(h>>>0>=i>>>0)break;if(!(EEa(b,c,(f[o>>2]|0)+(h*28|0)|0)|0)){g=h;break c}}n=f[l>>2]|0;h=f[v+4>>2]|0;break b}else g=0;while(0);j=f[o>>2]|0;FEa(o,j,j+(g*28|0)|0);j=a+528|0;g=a+532|0;h=f[g>>2]|0;do if(!h){r=g;s=g}else{i=a+532|0;d:while(1){g=f[h+16>>2]|0;do if(g>>>0>d>>>0)x=27;else{if(g>>>0>=d>>>0){g=f[h+20>>2]|0;if((g|0)>3){x=27;break}if((g|0)==3){x=32;break d}}q=h+4|0;g=f[q>>2]|0;if(!g){x=31;break d}else{p=q;m=g}}while(0);if((x|0)==27){x=0;g=f[h>>2]|0;if(!g){x=28;break}else{p=h;m=g}}i=p;h=m}if((x|0)==28){r=h;s=h;break}else if((x|0)==31){r=h;s=q;break}else if((x|0)==32){r=h;s=i;break}}while(0);if(f[s>>2]|0){x=0;return x|0}g=Wpb(24)|0;h=g+16|0;f[h>>2]=d;f[h+4>>2]=3;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=r;f[s>>2]=g;h=f[f[j>>2]>>2]|0;if(h){f[j>>2]=h;g=f[s>>2]|0}tEa(f[a+532>>2]|0,g);x=a+536|0;f[x>>2]=(f[x>>2]|0)+1;x=0;return x|0}while(0);b=f[v>>2]|0;l=n+-1|0;m=(l&n|0)==0;if(m)h=l&h;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;k=(f[e>>2]|0)+(h<<2)|0;c=f[k>>2]|0;while(1){i=f[c>>2]|0;if((i|0)==(v|0))break;else c=i}if((c|0)==(e+8|0))x=53;else{i=f[c+4>>2]|0;if(m)i=i&l;else if(i>>>0>=n>>>0)i=(i>>>0)%(n>>>0)|0;if((i|0)==(h|0)){t=b;x=61}else x=53}do if((x|0)==53){if(b|0){i=f[b+4>>2]|0;if(m)j=i&l;else if(i>>>0<n>>>0)j=i;else j=(i>>>0)%(n>>>0)|0;if((j|0)==(h|0)){g=i;w=b;x=63;break}}f[k>>2]=0;t=f[v>>2]|0;x=61}while(0);if((x|0)==61){i=t;if(!t)u=i;else{g=f[t+4>>2]|0;w=i;x=63}}if((x|0)==63){if(m)g=g&l;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;if((g|0)==(h|0))u=w;else{f[(f[e>>2]|0)+(g<<2)>>2]=c;u=f[v>>2]|0}}f[c>>2]=u;f[v>>2]=0;x=e+12|0;f[x>>2]=(f[x>>2]|0)+-1;rDa(o);Zpb(v);x=1;return x|0}function qEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f[a+504>>2]=b;p=a+512|0;i=f[p>>2]|0;if(!i)return;e=i+-1|0;d=(e&i|0)==0;if(d)g=e&b;else if(i>>>0>b>>>0)g=b;else g=(b>>>0)%(i>>>0)|0;s=a+508|0;c=f[(f[s>>2]|0)+(g<<2)>>2]|0;if(!c)return;c=f[c>>2]|0;if(!c)return;a:do if(d){while(1){j=f[c+4>>2]|0;d=(j|0)==(b|0);if(!(d|(j&e|0)==(g|0))){q=64;break}if(d)if((f[c+8>>2]|0)==(b|0)){t=c;break a}c=f[c>>2]|0;if(!c){q=64;break}}if((q|0)==64)return}else{d=c;while(1){c=f[d+4>>2]|0;if((c|0)==(b|0)){if((f[d+8>>2]|0)==(b|0)){t=d;break a}}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(g|0)){q=64;break}}d=f[d>>2]|0;if(!d){q=64;break}}if((q|0)==64)return}while(0);j=a+528|0;g=b+1|0;h=f[t+12>>2]|0;c=a+532|0;d=f[c>>2]|0;do if(!d){n=c;o=c}else{e=a+532|0;b:while(1){c=f[d+16>>2]|0;do if(g>>>0<c>>>0)q=25;else{if(c>>>0>=g>>>0){c=f[d+20>>2]|0;if((h|0)<(c|0)){q=25;break}if((c|0)>=(h|0)){q=30;break b}}m=d+4|0;c=f[m>>2]|0;if(!c){q=29;break b}else{l=m;k=c}}while(0);if((q|0)==25){q=0;c=f[d>>2]|0;if(!c){q=26;break}else{l=d;k=c}}e=l;d=k}if((q|0)==26){n=d;o=d;break}else if((q|0)==29){n=d;o=m;break}else if((q|0)==30){n=d;o=e;break}}while(0);if(!(f[o>>2]|0)){b=Wpb(24)|0;c=b+16|0;f[c>>2]=g;f[c+4>>2]=h;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=n;f[o>>2]=b;c=f[f[j>>2]>>2]|0;if(c){f[j>>2]=c;b=f[o>>2]|0}tEa(f[a+532>>2]|0,b);i=a+536|0;f[i>>2]=(f[i>>2]|0)+1;i=f[p>>2]|0;b=f[t+4>>2]|0}d=i+-1|0;e=(d&i|0)==0;if(e)g=d&b;else if(b>>>0<i>>>0)g=b;else g=(b>>>0)%(i>>>0)|0;c=(f[s>>2]|0)+(g<<2)|0;h=f[c>>2]|0;while(1){b=f[h>>2]|0;if((b|0)==(t|0))break;else h=b}if((h|0)==(a+516|0))q=49;else{b=f[h+4>>2]|0;if(e)b=b&d;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0))r=t;else q=49}do if((q|0)==49){b=f[t>>2]|0;if(b|0){b=f[b+4>>2]|0;if(e)b=b&d;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0)){r=t;break}}f[c>>2]=0;r=t}while(0);c=f[r>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(e)c=c&d;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(g|0)){f[(f[s>>2]|0)+(c<<2)>>2]=h;b=f[t>>2]|0}}f[h>>2]=b;f[r>>2]=0;a=a+520|0;f[a>>2]=(f[a>>2]|0)+-1;Zpb(t);return}function rEa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;l=e+4|0;n=f[l>>2]|0;if(!n){x=1;return x|0}j=n+-1|0;i=(j&n|0)==0;if(i)k=j&d;else if(n>>>0>d>>>0)k=d;else k=(d>>>0)%(n>>>0)|0;h=f[(f[e>>2]|0)+(k<<2)>>2]|0;if(!h){x=1;return x|0}h=f[h>>2]|0;if(!h){x=1;return x|0}a:do if(i){while(1){o=f[h+4>>2]|0;i=(o|0)==(d|0);if(!(i|(o&j|0)==(k|0))){h=1;x=70;break}if(i)if((f[h+8>>2]|0)==(d|0)){v=h;break a}h=f[h>>2]|0;if(!h){h=1;x=70;break}}if((x|0)==70)return h|0}else{i=h;while(1){h=f[i+4>>2]|0;if((h|0)==(d|0)){if((f[i+8>>2]|0)==(d|0)){v=i;break a}}else{if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)!=(k|0)){h=1;x=70;break}}i=f[i>>2]|0;if(!i){h=1;x=70;break}}if((x|0)==70)return h|0}while(0);o=v+12|0;h=f[o>>2]|0;k=(f[v+16>>2]|0)-h|0;i=(k|0)/28|0;b:do if(!k)h=d;else{c:do if(BEa(b,c,h)|0){h=0;while(1){h=h+1|0;if(h>>>0>=i>>>0)break;if(!(BEa(b,c,(f[o>>2]|0)+(h*28|0)|0)|0)){g=h;break c}}n=f[l>>2]|0;h=f[v+4>>2]|0;break b}else g=0;while(0);j=f[o>>2]|0;CEa(o,j,j+(g*28|0)|0);j=a+528|0;g=a+532|0;h=f[g>>2]|0;do if(!h){r=g;s=g}else{i=a+532|0;d:while(1){g=f[h+16>>2]|0;do if(g>>>0>d>>>0)x=27;else{if(g>>>0>=d>>>0){g=f[h+20>>2]|0;if((g|0)>2){x=27;break}if((g|0)==2){x=32;break d}}q=h+4|0;g=f[q>>2]|0;if(!g){x=31;break d}else{p=q;m=g}}while(0);if((x|0)==27){x=0;g=f[h>>2]|0;if(!g){x=28;break}else{p=h;m=g}}i=p;h=m}if((x|0)==28){r=h;s=h;break}else if((x|0)==31){r=h;s=q;break}else if((x|0)==32){r=h;s=i;break}}while(0);if(f[s>>2]|0){x=0;return x|0}g=Wpb(24)|0;h=g+16|0;f[h>>2]=d;f[h+4>>2]=2;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=r;f[s>>2]=g;h=f[f[j>>2]>>2]|0;if(h){f[j>>2]=h;g=f[s>>2]|0}tEa(f[a+532>>2]|0,g);x=a+536|0;f[x>>2]=(f[x>>2]|0)+1;x=0;return x|0}while(0);b=f[v>>2]|0;l=n+-1|0;m=(l&n|0)==0;if(m)h=l&h;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;k=(f[e>>2]|0)+(h<<2)|0;c=f[k>>2]|0;while(1){i=f[c>>2]|0;if((i|0)==(v|0))break;else c=i}if((c|0)==(e+8|0))x=53;else{i=f[c+4>>2]|0;if(m)i=i&l;else if(i>>>0>=n>>>0)i=(i>>>0)%(n>>>0)|0;if((i|0)==(h|0)){t=b;x=61}else x=53}do if((x|0)==53){if(b|0){i=f[b+4>>2]|0;if(m)j=i&l;else if(i>>>0<n>>>0)j=i;else j=(i>>>0)%(n>>>0)|0;if((j|0)==(h|0)){g=i;w=b;x=63;break}}f[k>>2]=0;t=f[v>>2]|0;x=61}while(0);if((x|0)==61){i=t;if(!t)u=i;else{g=f[t+4>>2]|0;w=i;x=63}}if((x|0)==63){if(m)g=g&l;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;if((g|0)==(h|0))u=w;else{f[(f[e>>2]|0)+(g<<2)>>2]=c;u=f[v>>2]|0}}f[c>>2]=u;f[v>>2]=0;x=e+12|0;f[x>>2]=(f[x>>2]|0)+-1;oDa(o);Zpb(v);x=1;return x|0}function sEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;l=o;f[l>>2]=0;n=l+4|0;f[n>>2]=0;f[l+8>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(!j)m=13;else{i=k+4|0;j=l+8|0;do{kwa(k,b,d);if(!(f[k>>2]|0))e=zEa(a,d,3)|0;else e=1;g=f[i>>2]|0;if(g|0)Ppb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[n>>2]|0;if((e|0)==(f[j>>2]|0)){dB(l,d);break b}else{q=d;p=f[q+4>>2]|0;g=e;f[g>>2]=f[q>>2];f[g+4>>2]=p;f[n>>2]=(f[n>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[l>>2]|0)==(f[n>>2]|0))m=13;else{AEa(c+24|0,l,c);g=1}}while(0);if((m|0)==13){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[l>>2]|0;if(!d){u=o;return g|0}e=f[n>>2]|0;if((e|0)!=(d|0))f[n>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=o;return g|0}function tEa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=(c|0)==(a|0);b[c+12>>0]=j&1;if(j)return;while(1){i=c+8|0;d=f[i>>2]|0;h=d+12|0;if(b[h>>0]|0){g=23;break}j=d+8|0;e=f[j>>2]|0;g=f[e>>2]|0;if((g|0)==(d|0)){g=f[e+4>>2]|0;if(!g){g=7;break}g=g+12|0;if(!(b[g>>0]|0))c=g;else{g=7;break}}else{if(!g){g=16;break}g=g+12|0;if(!(b[g>>0]|0))c=g;else{g=16;break}}b[h>>0]=1;j=(e|0)==(a|0);b[e+12>>0]=j&1;b[c>>0]=1;if(j){g=23;break}else c=e}if((g|0)==7){if((f[d>>2]|0)==(c|0)){c=d;g=e}else{i=d+4|0;g=f[i>>2]|0;c=f[g>>2]|0;f[i>>2]=c;if(!c)c=e;else{f[c+8>>2]=d;c=f[j>>2]|0}f[g+8>>2]=c;c=f[j>>2]|0;f[((f[c>>2]|0)==(d|0)?c:c+4|0)>>2]=g;f[g>>2]=d;f[j>>2]=g;c=g;g=f[g+8>>2]|0}b[c+12>>0]=1;b[g+12>>0]=0;c=f[g>>2]|0;d=c+4|0;e=f[d>>2]|0;f[g>>2]=e;if(e|0)f[e+8>>2]=g;j=g+8|0;f[c+8>>2]=f[j>>2];i=f[j>>2]|0;f[((f[i>>2]|0)==(g|0)?i:i+4|0)>>2]=c;f[d>>2]=g;f[j>>2]=c;return}else if((g|0)==16){if((f[d>>2]|0)==(c|0)){h=c+4|0;g=f[h>>2]|0;f[d>>2]=g;if(g){f[g+8>>2]=d;e=f[j>>2]|0}f[i>>2]=e;e=f[j>>2]|0;f[((f[e>>2]|0)==(d|0)?e:e+4|0)>>2]=c;f[h>>2]=d;f[j>>2]=c;d=c;e=f[c+8>>2]|0}b[d+12>>0]=1;b[e+12>>0]=0;j=e+4|0;c=f[j>>2]|0;d=f[c>>2]|0;f[j>>2]=d;if(d|0)f[d+8>>2]=e;j=e+8|0;f[c+8>>2]=f[j>>2];i=f[j>>2]|0;f[((f[i>>2]|0)==(e|0)?i:i+4|0)>>2]=c;f[c>>2]=e;f[j>>2]=c;return}else if((g|0)==23)return}function uEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;l=o;f[l>>2]=0;n=l+4|0;f[n>>2]=0;f[l+8>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(!j)m=13;else{i=k+4|0;j=l+8|0;do{jwa(k,b,d);if(!(f[k>>2]|0))e=zEa(a,d,4)|0;else e=1;g=f[i>>2]|0;if(g|0)Ppb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[n>>2]|0;if((e|0)==(f[j>>2]|0)){dB(l,d);break b}else{q=d;p=f[q+4>>2]|0;g=e;f[g>>2]=f[q>>2];f[g+4>>2]=p;f[n>>2]=(f[n>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[l>>2]|0)==(f[n>>2]|0))m=13;else{AEa(c+24|0,l,c);g=1}}while(0);if((m|0)==13){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[l>>2]|0;if(!d){u=o;return g|0}e=f[n>>2]|0;if((e|0)!=(d|0))f[n>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=o;return g|0}function vEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+32|0;l=q+24|0;m=q+8|0;n=q;f[m>>2]=0;p=m+4|0;f[p>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;if(!k)o=16;else{i=l+4|0;j=n+4|0;k=m+8|0;do{pwa(l,b,d);if(!(f[l>>2]|0))e=zEa(a,d,1)|0;else e=1;g=f[i>>2]|0;if(g|0)Ppb(g);a:do switch(e<<24>>24){case 0:{Vva(n,b,d,0,0);e=f[j>>2]|0;if(e|0)Ppb(e);wh[f[(f[a>>2]|0)+16>>2]&127](a,d,0);break}case 3:{e=f[p>>2]|0;if((e|0)==(f[k>>2]|0)){dB(m,d);break a}else{s=d;r=f[s+4>>2]|0;g=e;f[g>>2]=f[s>>2];f[g+4>>2]=r;f[p>>2]=(f[p>>2]|0)+8;break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[p>>2]|0))o=16;else AEa(c+24|0,m,c)}if((o|0)==16){s=f[c+24>>2]|0;nh[f[(f[s>>2]|0)+8>>2]&1023](s,c)}d=f[m>>2]|0;if(!d){u=q;return}e=f[p>>2]|0;if((e|0)!=(d|0))f[p>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=q;return}function wEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;l=o;f[l>>2]=0;n=l+4|0;f[n>>2]=0;f[l+8>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(!j)m=13;else{i=k+4|0;j=l+8|0;do{lwa(k,b,d);if(!(f[k>>2]|0))e=zEa(a,d,7)|0;else e=1;g=f[i>>2]|0;if(g|0)Ppb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[n>>2]|0;if((e|0)==(f[j>>2]|0)){dB(l,d);break b}else{q=d;p=f[q+4>>2]|0;g=e;f[g>>2]=f[q>>2];f[g+4>>2]=p;f[n>>2]=(f[n>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[l>>2]|0)==(f[n>>2]|0))m=13;else{AEa(c+24|0,l,c);g=1}}while(0);if((m|0)==13){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[l>>2]|0;if(!d){u=o;return g|0}e=f[n>>2]|0;if((e|0)!=(d|0))f[n>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=o;return g|0}function xEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;l=p+16|0;m=p;f[m>>2]=0;o=m+4|0;f[o>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;a:do if(!k)n=15;else{i=l+4|0;j=m+8|0;k=c+20|0;do{hwa(l,b,d);e=f[l>>2]|0;if(!e)e=zEa(a,d,8)|0;else if(!(f[k>>2]&1))e=((Dla(e)|0)^1)&1;else e=1;g=f[i>>2]|0;if(g|0)Ppb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[o>>2]|0;if((e|0)==(f[j>>2]|0)){dB(m,d);break b}else{r=d;q=f[r+4>>2]|0;g=e;f[g>>2]=f[r>>2];f[g+4>>2]=q;f[o>>2]=(f[o>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[o>>2]|0))n=15;else{AEa(c+24|0,m,c);g=1}}while(0);if((n|0)==15){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[m>>2]|0;if(!d){u=p;return g|0}e=f[o>>2]|0;if((e|0)!=(d|0))f[o>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=p;return g|0}function yEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;l=p+16|0;m=p;f[m>>2]=0;o=m+4|0;f[o>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;a:do if(!k)n=16;else{i=l+4|0;j=m+8|0;k=c+20|0;do{owa(l,b,d);e=f[l>>2]|0;if(!e){e=zEa(a,d,10)|0;n=6}else if(ala(e,b,(f[k>>2]|0)>>>1&1,0)|0){e=f[i>>2]|0;if(e|0)Ppb(e)}else{e=0;n=6}b:do if((n|0)==6){n=0;g=f[i>>2]|0;if(g|0)Ppb(g);switch(e<<24>>24){case 0:{g=0;break a}case 3:break;default:break b}e=f[o>>2]|0;if((e|0)==(f[j>>2]|0)){dB(m,d);break}else{r=d;q=f[r+4>>2]|0;g=e;f[g>>2]=f[r>>2];f[g+4>>2]=q;f[o>>2]=(f[o>>2]|0)+8;break}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[o>>2]|0))n=16;else{AEa(c+24|0,m,c);g=1}}while(0);if((n|0)==16){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[m>>2]|0;if(!d){u=p;return g|0}e=f[o>>2]|0;if((e|0)!=(d|0))f[o>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=p;return g|0}function zEa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=f[a+4>>2]|0;i=f[c>>2]|0;h=f[a+864>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)j=g&i;else if(h>>>0>i>>>0)j=i;else j=(i>>>0)%(h>>>0)|0;a=f[(f[a+860>>2]|0)+(j<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}a:do if(e){while(1){h=f[a+4>>2]|0;e=(h|0)==(i|0);if(!(e|(h&g|0)==(j|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(i|0)){k=a;break a}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(i|0)){if((f[a+8>>2]|0)==(i|0)){k=a;break a}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(j|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=b[k+12>>0]|0;if((a&255)>1){r=a;return r|0}j=f[c+4>>2]|0;switch(d|0){case 5:{a=k+16|0;h=f[k+20>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}b:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){q=a;break b}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){q=a;break b}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=q+8+5|0;break}case 3:{a=k+76|0;h=f[k+80>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}c:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){p=a;break c}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){p=a;break c}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=p+12|0;break}case 4:{a=k+96|0;h=f[k+100>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}d:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){o=a;break d}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){o=a;break d}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=o+12|0;break}case 1:{a=k+116|0;h=f[k+120>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}e:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){n=a;break e}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){n=a;break e}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=n+12|0;break}case 7:{a=k+136|0;h=f[k+140>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}f:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){m=a;break f}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){m=a;break f}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=m+12|0;break}case 8:{a=k+156|0;h=f[k+160>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}g:do if(e){while(1){r=f[a+4>>2]|0;e=(r|0)==(j|0);if(!(e|(r&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){l=a;break g}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){l=a;break g}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=l+8+5|0;break}case 10:{a=k+56|0;h=f[k+60>>2]|0;if(!h){r=0;return r|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&j;else if(h>>>0>j>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;a=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!a){r=0;return r|0}a=f[a>>2]|0;if(!a){r=0;return r|0}h:do if(e){while(1){q=f[a+4>>2]|0;e=(q|0)==(j|0);if(!(e|(q&g|0)==(i|0))){a=0;e=156;break}if(e)if((f[a+8>>2]|0)==(j|0)){r=a;break h}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}else{while(1){e=f[a+4>>2]|0;if((e|0)==(j|0)){if((f[a+8>>2]|0)==(j|0)){r=a;break h}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){a=0;e=156;break}}a=f[a>>2]|0;if(!a){a=0;e=156;break}}if((e|0)==156)return a|0}while(0);a=r+8+5|0;break}default:{r=3;return r|0}}a=b[a>>0]|0;if((a&255)<3)return 197120>>>((a&255)<<3&16777215)&255|0;else{r=3;return r|0}return 0}function AEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;i=o;l=b+4|0;Xka(f[b>>2]|0,f[l>>2]|0,i);d=f[b>>2]|0;e=f[l>>2]|0;a:do if((d|0)==(e|0)){g=d;n=6}else{g=d+8|0;if((g|0)!=(e|0))while(1){if((f[d>>2]|0)==(f[d+8>>2]|0))if((f[d+4>>2]|0)==(f[d+12>>2]|0)){g=d;n=6;break a}d=g+8|0;if((d|0)==(e|0))break;else{m=g;g=d;d=m}}}while(0);if((n|0)==6)if((g|0)!=(e|0)){d=g+16|0;if((d|0)==(e|0))d=g;else{h=d;d=g;g=g+8|0;while(1){if((f[d>>2]|0)==(f[h>>2]|0)){if((f[d+4>>2]|0)!=(f[g+12>>2]|0))n=11}else n=11;if((n|0)==11){n=0;d=d+8|0;j=h;k=f[j+4>>2]|0;m=d;f[m>>2]=f[j>>2];f[m+4>>2]=k}g=h+8|0;if((g|0)==(e|0))break;else{m=h;h=g;g=m}}e=f[l>>2]|0}d=d+8|0;if((e|0)!=(d|0))f[l>>2]=e+(~((e+-8-d|0)>>>3)<<3)}g=f[c>>2]|0;m=c+4|0;Xka(g,g+(f[m>>2]<<3)|0,i);g=f[c>>2]|0;d=f[m>>2]|0;j=g+(d<<3)|0;b:do switch(d|0){case 0:{e=g;n=21;break}case 1:{e=j;d=1;break}default:{e=g;h=g+8|0;i=f[g>>2]|0;while(1){k=i;i=f[h>>2]|0;if((k|0)==(i|0))if((f[e+4>>2]|0)==(f[e+12>>2]|0)){n=21;break b}e=h+8|0;if((e|0)==(j|0)){e=j;break}else{k=h;h=e;e=k}}}}while(0);if((n|0)==21)if((e|0)==(j|0))e=j;else{d=e+8|0;g=e;c:while(1){h=g+4|0;do{e=d;d=d+8|0;if((d|0)==(j|0))break c;if((f[g>>2]|0)!=(f[d>>2]|0))break}while((f[h>>2]|0)==(f[e+12>>2]|0));k=g+8|0;e=d;h=f[e+4>>2]|0;i=k;f[i>>2]=f[e>>2];f[i+4>>2]=h;g=k}e=g+8|0;g=f[c>>2]|0;d=f[m>>2]|0}i=d-(g+(d<<3)-e>>3)|0;f[m>>2]=i;k=g+(i<<3)|0;d=f[b>>2]|0;j=f[l>>2]|0;d:do if((d|0)!=(j|0)&(i|0)!=0){e=g;do{h=f[d>>2]|0;i=d+4|0;while(1){g=f[e>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0)break;if((f[e+4>>2]|0)>>>0>=(f[i>>2]|0)>>>0)break}e=e+8|0;if((e|0)==(k|0))break d}if((g|0)==(h|0))if((f[e+4>>2]|0)==(f[i>>2]|0)){l=e;f[l>>2]=0;f[l+4>>2]=-1}d=d+8|0}while((d|0)!=(j|0)&(e|0)!=(k|0))}while(0);h=f[c>>2]|0;d=f[m>>2]|0;i=h+(d<<3)|0;e:do if(!d){e=h;n=43}else{e=h;while(1){if(!(f[e>>2]|0))if((f[e+4>>2]|0)==-1){n=43;break e}e=e+8|0;if((e|0)==(i|0)){g=i;e=h;break}}}while(0);if((n|0)==43)if((e|0)==(i|0)){g=i;e=h}else{d=e;g=e;f:while(1){do{e=d;d=d+8|0;if((d|0)==(i|0))break f;if(f[d>>2]|0)break}while((f[e+12>>2]|0)==-1);k=d;l=f[k+4>>2]|0;n=g;f[n>>2]=f[k>>2];f[n+4>>2]=l;g=g+8|0}e=f[c>>2]|0;d=f[m>>2]|0}f[m>>2]=d-(e+(d<<3)-g>>3);d=f[a>>2]|0;if(Ng[f[(f[d>>2]|0)+20>>2]&511](d)|0){nh[f[(f[d>>2]|0)+8>>2]&1023](d,c);u=o;return}else{nh[f[(f[d>>2]|0)+12>>2]&1023](d,b);u=o;return}}function BEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;j=m;f[j>>2]=0;l=j+4|0;f[l>>2]=0;f[j+8>>2]=0;d=f[c>>2]|0;h=f[c+4>>2]|0;i=d+(h<<3)|0;a:do if(!h)k=9;else{g=c+20|0;h=j+8|0;do{b:do switch((DEa(a,b,f[g>>2]|0,d)|0)<<24>>24){case 0:{g=0;break a}case 3:{e=f[l>>2]|0;if((e|0)==(f[h>>2]|0)){dB(j,d);break b}else{o=d;n=f[o+4>>2]|0;f[e>>2]=f[o>>2];f[e+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(i|0));if((f[j>>2]|0)==(f[l>>2]|0))k=9;else{AEa(c+24|0,j,c);g=1}}while(0);if((k|0)==9){g=f[c+24>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[j>>2]|0;if(!d){u=m;return g|0}e=f[l>>2]|0;if((e|0)!=(d|0))f[l>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=m;return g|0}function CEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if((b|0)==(c|0))return;j=a+4|0;i=f[j>>2]|0;if((i|0)==(c|0)){g=b;a=c}else{do{f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];h=c+8|0;g=b+8|0;a=f[g>>2]|0;e=b+12|0;if(!a)a=b+16|0;else{d=f[e>>2]|0;if((d|0)!=(a|0))f[e>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a);a=b+16|0;f[a>>2]=0;f[e>>2]=0;f[g>>2]=0}f[g>>2]=f[h>>2];g=c+12|0;f[e>>2]=f[g>>2];e=c+16|0;f[a>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[h>>2]=0;f[c>>2]=0;f[b+20>>2]=f[c+20>>2];a=c+24|0;h=b+24|0;g=f[a>>2]|0;f[a>>2]=0;a=f[h>>2]|0;f[h>>2]=g;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);c=c+28|0;b=b+28|0}while((c|0)!=(i|0));g=b;a=f[j>>2]|0}if((a|0)==(g|0))return;do{c=a+-28|0;f[j>>2]=c;i=a+-4|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=a+-20|0;d=f[b>>2]|0;e=a+-16|0;if((d|0)==(f[e>>2]|0)){a=f[c>>2]|0;if(!a)a=d;else{_pb(a);a=f[b>>2]|0}}else a=d;if(a|0){b=f[e>>2]|0;if((b|0)!=(a|0))f[e>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}a=f[j>>2]|0}while((a|0)!=(g|0));return}function DEa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=(d&1|0)==0;d=_wa(c,f[e>>2]|0)|0;if(!d){e=0;return e|0}j=f[e+4>>2]|0;h=f[d+24>>2]|0;a:do if(h|0){g=h+-1|0;c=(g&h|0)==0;if(c)i=g&j;else if(j>>>0<h>>>0)i=j;else i=(j>>>0)%(h>>>0)|0;d=f[(f[d+20>>2]|0)+(i<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){b:do if(c)while(1){h=f[d+4>>2]|0;c=(j|0)==(h|0);if(!(c|(h&g|0)==(i|0)))break a;if(c)if((f[d+8>>2]|0)==(j|0))break b;d=f[d>>2]|0;if(!d)break a}else while(1){c=f[d+4>>2]|0;if((j|0)==(c|0)){if((f[d+8>>2]|0)==(j|0))break b}else{if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(i|0))break a}d=f[d>>2]|0;if(!d)break a}while(0);d=f[d+16>>2]|0;if(d|0){if(k){e=1;return e|0}d=f[d+4>>2]|0;if(d|0)if(b[(f[d+44>>2]|0)+144>>0]&2){e=1;return e|0}e=0;return e|0}}}}while(0);e=zEa(a,e,5)|0;return e|0}function EEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;j=m;i=c+20|0;f[j>>2]=0;l=j+4|0;f[l>>2]=0;f[j+8>>2]=0;d=f[c>>2]|0;h=f[c+4>>2]|0;g=d+(h<<3)|0;a:do if(!h)k=9;else{h=j+8|0;do{b:do switch((GEa(a,b,i,d)|0)<<24>>24){case 0:{a=0;break a}case 3:{e=f[l>>2]|0;if((e|0)==(f[h>>2]|0)){dB(j,d);break b}else{o=d;n=f[o+4>>2]|0;f[e>>2]=f[o>>2];f[e+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(g|0));if((f[j>>2]|0)==(f[l>>2]|0))k=9;else{AEa(c+24|0,j,c);a=1}}while(0);if((k|0)==9){a=f[c+24>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,c);a=1}d=f[j>>2]|0;if(!d){u=m;return a|0}e=f[l>>2]|0;if((e|0)!=(d|0))f[l>>2]=e+(~((e+-8-d|0)>>>3)<<3);Zpb(d);u=m;return a|0}function FEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if((b|0)==(c|0))return;j=a+4|0;i=f[j>>2]|0;if((i|0)==(c|0)){g=b;a=c}else{do{f[b>>2]=f[c>>2];f[b+4>>2]=f[c+4>>2];h=c+8|0;g=b+8|0;a=f[g>>2]|0;e=b+12|0;if(!a)a=b+16|0;else{d=f[e>>2]|0;if((d|0)!=(a|0))f[e>>2]=d+(~((d+-8-a|0)>>>3)<<3);Zpb(a);a=b+16|0;f[a>>2]=0;f[e>>2]=0;f[g>>2]=0}f[g>>2]=f[h>>2];g=c+12|0;f[e>>2]=f[g>>2];e=c+16|0;f[a>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[h>>2]=0;f[c>>2]=0;f[b+20>>2]=f[c+20>>2];a=c+24|0;h=b+24|0;g=f[a>>2]|0;f[a>>2]=0;a=f[h>>2]|0;f[h>>2]=g;if(a|0)fh[f[(f[a>>2]|0)+4>>2]&2047](a);c=c+28|0;b=b+28|0}while((c|0)!=(i|0));g=b;a=f[j>>2]|0}if((a|0)==(g|0))return;do{c=a+-28|0;f[j>>2]=c;i=a+-4|0;b=f[i>>2]|0;f[i>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=a+-20|0;d=f[b>>2]|0;e=a+-16|0;if((d|0)==(f[e>>2]|0)){a=f[c>>2]|0;if(!a)a=d;else{_pb(a);a=f[b>>2]|0}}else a=d;if(a|0){b=f[e>>2]|0;if((b|0)!=(a|0))f[e>>2]=b+(~((b+-8-a|0)>>>3)<<3);Zpb(a)}a=f[j>>2]|0}while((a|0)!=(g|0));return}function GEa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;owa(h,b,d);e=f[h>>2]|0;if(!e){d=zEa(a,d,10)|0;g=0;i=0}else if(ala(e,b,(f[c>>2]|0)>>>1&1,0)|0){g=f[h>>2]|0;d=h+4|0;i=f[d>>2]|0;f[h>>2]=0;f[d>>2]=0;d=1}else{d=0;g=0;i=0}e=f[h+4>>2]|0;if(e|0)Ppb(e);if(d<<24>>24==1){c=f[c>>2]|0;d=c>>>1&1;if(ala(g,b,d,(c&1|0)!=0)|0){f[h>>2]=0;c=h+4|0;f[c>>2]=0;f[h+8>>2]=0;b=ela(g,b,d,0,h)|0;g=f[h>>2]|0;a:do if(b){e=f[c>>2]|0;if((g|0)==(e|0))d=2;else{d=g;while(1){if((zEa(a,d,5)|0)<<24>>24==3){d=3;break a}d=d+8|0;if((d|0)==(e|0)){d=2;break}}}}else d=1;while(0);if(g|0){e=f[c>>2]|0;if((e|0)!=(g|0))f[c>>2]=e+(~((e+-8-g|0)>>>3)<<3);Zpb(g)}}else d=0}if(!i){u=j;return d|0}Ppb(i);u=j;return d|0}function HEa(a){a=a|0;var b=0,c=0;b=a+12|0;if((f[b>>2]|0)!=2)return;c=a+4|0;DDa(f[c>>2]|0,a,f[(f[a+8>>2]|0)+220>>2]|0);if((f[b>>2]|0)!=2)return;EDa(f[c>>2]|0,0);return}function IEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f[(f[a+8>>2]|0)+220>>2]|0;if(!(Eva(o,b)|0))return;m=f[a+4>>2]|0;i=f[m+864>>2]|0;a:do if(i|0){j=i+-1|0;k=(j&i|0)==0;if(k)e=j&b;else if(i>>>0>b>>>0)e=b;else e=(b>>>0)%(i>>>0)|0;l=m+860|0;g=f[l>>2]|0;c=f[g+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(k)while(1){n=f[c+4>>2]|0;d=(n|0)==(b|0);if(!(d|(n&j|0)==(e|0)))break a;if(d)if((f[c+8>>2]|0)==(b|0)){n=c;break b}c=f[c>>2]|0;if(!c)break a}else while(1){d=f[c+4>>2]|0;if((d|0)==(b|0)){if((f[c+8>>2]|0)==(b|0)){n=c;break b}}else{if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);if(k)b=j&b;else if(i>>>0<=b>>>0)b=(b>>>0)%(i>>>0)|0;d=g+(b<<2)|0;g=f[d>>2]|0;while(1){c=f[g>>2]|0;if((c|0)==(n|0))break;else g=c}if((g|0)==(m+868|0))h=33;else{c=f[g+4>>2]|0;if(k)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)==(b|0))e=n;else h=33}do if((h|0)==33){c=f[n>>2]|0;if(c|0){c=f[c+4>>2]|0;if(k)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)==(b|0)){e=n;break}}f[d>>2]=0;e=n}while(0);d=f[e>>2]|0;c=d;if(d){d=f[d+4>>2]|0;if(k)d=d&j;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(b|0)){f[(f[l>>2]|0)+(d<<2)>>2]=g;c=f[n>>2]|0}}f[g>>2]=c;f[e>>2]=0;c=m+872|0;f[c>>2]=(f[c>>2]|0)+-1;c=f[n+164>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+156|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+144>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+136|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+124>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+116|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+104>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+96|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+84>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+76|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+64>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+56|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+44>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+36|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);c=f[n+24>>2]|0;if(c|0)do{m=c;c=f[c>>2]|0;Zpb(m)}while((c|0)!=0);m=n+16|0;c=f[m>>2]|0;f[m>>2]=0;if(c|0)Zpb(c);Zpb(n)}}}while(0);n=f[(f[a>>2]|0)+28>>2]|0;o=Awa(o)|0;nh[n&1023](a,o);return}function JEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=f[(f[a+8>>2]|0)+220>>2]|0;g=f[a+4>>2]|0;switch(b|0){case 0:{b=f[g+8>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{yEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+20>>2]|0;c=f[g+24>>2]|0;if((b|0)!=(c|0))do{yEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));_Ca(g);return}case 1:{e=g+32|0;b=f[g+40>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{xEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+52>>2]|0;c=f[g+56>>2]|0;if((b|0)!=(c|0))do{xEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));aDa(e);return}case 2:{e=g+64|0;b=f[g+72>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{BEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+84>>2]|0;c=f[g+88>>2]|0;if((b|0)!=(c|0))do{BEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));nDa(e);e=g+96|0;b=f[g+104>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{BEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+116>>2]|0;c=f[g+120>>2]|0;if((b|0)!=(c|0))do{BEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));nDa(e);return}case 3:{e=g+128|0;b=f[g+136>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{EEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+148>>2]|0;c=f[g+152>>2]|0;if((b|0)!=(c|0))do{EEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));qDa(e);e=g+160|0;b=f[g+168>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{EEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+180>>2]|0;c=f[g+184>>2]|0;if((b|0)!=(c|0))do{EEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));qDa(e);return}case 4:{e=g+192|0;b=f[g+200>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{sEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+212>>2]|0;c=f[g+216>>2]|0;if((b|0)!=(c|0))do{sEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));cDa(e);return}case 6:{e=g+224|0;b=f[g+232>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{uEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+244>>2]|0;c=f[g+248>>2]|0;if((b|0)!=(c|0))do{uEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));dDa(e);return}case 7:{e=g+256|0;b=f[g+264>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{wEa(a,h,c)|0;c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+276>>2]|0;c=f[g+280>>2]|0;if((b|0)!=(c|0))do{wEa(a,h,b)|0;b=b+28|0}while((b|0)!=(c|0));eDa(e);return}case 8:{e=g+288|0;b=f[g+296>>2]|0;if(b|0)do{d=b;c=f[d+12>>2]|0;d=f[d+16>>2]|0;if((c|0)!=(d|0))do{vEa(a,h,c);c=c+28|0}while((c|0)!=(d|0));b=f[b>>2]|0}while((b|0)!=0);b=f[g+308>>2]|0;c=f[g+312>>2]|0;if((b|0)!=(c|0))do{vEa(a,h,b);b=b+28|0}while((b|0)!=(c|0));fDa(e);return}default:return}}function KEa(a){a=a|0;var b=0,c=0;c=f[(f[a+8>>2]|0)+220>>2]|0;b=f[a+4>>2]|0;LEa(b,a,c,b+64|0);LEa(b,a,c,b+96|0);MEa(b,a,c,b+128|0);MEa(b,a,c,b+160|0);return}function LEa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a=f[d+8>>2]|0;if(a|0){s=d+4|0;t=d+8|0;u=d+12|0;do{q=a;r=q+12|0;e=f[r>>2]|0;h=q+16|0;g=f[h>>2]|0;if((e|0)!=(g|0))do{if(!(f[e+20>>2]&1))BEa(b,c,e)|0;e=e+28|0}while((e|0)!=(g|0));OEa(r);o=a;p=a;a=f[o>>2]|0;if((f[r>>2]|0)==(f[h>>2]|0)){e=f[q>>2]|0;j=f[s>>2]|0;g=f[q+4>>2]|0;k=j+-1|0;l=(k&j|0)==0;if(l)m=k&g;else if(g>>>0<j>>>0)m=g;else m=(g>>>0)%(j>>>0)|0;i=(f[d>>2]|0)+(m<<2)|0;n=f[i>>2]|0;while(1){g=f[n>>2]|0;if((g|0)==(q|0))break;else n=g}if((n|0)==(t|0))h=20;else{g=f[n+4>>2]|0;if(l)g=g&k;else if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)==(m|0)){g=e;h=28}else h=20}do if((h|0)==20){if(e|0){g=f[e+4>>2]|0;if(l)h=g&k;else if(g>>>0<j>>>0)h=g;else h=(g>>>0)%(j>>>0)|0;if((h|0)==(m|0)){h=30;break}}f[i>>2]=0;g=f[q>>2]|0;h=28}while(0);if((h|0)==28){h=0;e=g;if(g){g=f[g+4>>2]|0;h=30}}if((h|0)==30){if(l)g=g&k;else if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(m|0)){f[(f[d>>2]|0)+(g<<2)>>2]=n;e=f[o>>2]|0}}f[n>>2]=e;f[q>>2]=0;f[u>>2]=(f[u>>2]|0)+-1;oDa(r);Zpb(p)}}while((a|0)!=0)}g=d+20|0;a=f[g>>2]|0;e=f[d+24>>2]|0;if((a|0)==(e|0)){OEa(g);return}do{if(!(f[a+20>>2]&1))BEa(b,c,a)|0;a=a+28|0}while((a|0)!=(e|0));OEa(g);return}function MEa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a=f[d+8>>2]|0;if(a|0){s=d+4|0;t=d+8|0;u=d+12|0;do{q=a;r=q+12|0;e=f[r>>2]|0;h=q+16|0;g=f[h>>2]|0;if((e|0)!=(g|0))do{if(!(f[e+20>>2]&1))EEa(b,c,e)|0;e=e+28|0}while((e|0)!=(g|0));NEa(r);o=a;p=a;a=f[o>>2]|0;if((f[r>>2]|0)==(f[h>>2]|0)){e=f[q>>2]|0;j=f[s>>2]|0;g=f[q+4>>2]|0;k=j+-1|0;l=(k&j|0)==0;if(l)m=k&g;else if(g>>>0<j>>>0)m=g;else m=(g>>>0)%(j>>>0)|0;i=(f[d>>2]|0)+(m<<2)|0;n=f[i>>2]|0;while(1){g=f[n>>2]|0;if((g|0)==(q|0))break;else n=g}if((n|0)==(t|0))h=20;else{g=f[n+4>>2]|0;if(l)g=g&k;else if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)==(m|0)){g=e;h=28}else h=20}do if((h|0)==20){if(e|0){g=f[e+4>>2]|0;if(l)h=g&k;else if(g>>>0<j>>>0)h=g;else h=(g>>>0)%(j>>>0)|0;if((h|0)==(m|0)){h=30;break}}f[i>>2]=0;g=f[q>>2]|0;h=28}while(0);if((h|0)==28){h=0;e=g;if(g){g=f[g+4>>2]|0;h=30}}if((h|0)==30){if(l)g=g&k;else if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(m|0)){f[(f[d>>2]|0)+(g<<2)>>2]=n;e=f[o>>2]|0}}f[n>>2]=e;f[q>>2]=0;f[u>>2]=(f[u>>2]|0)+-1;rDa(r);Zpb(p)}}while((a|0)!=0)}g=d+20|0;a=f[g>>2]|0;e=f[d+24>>2]|0;if((a|0)==(e|0)){NEa(g);return}do{if(!(f[a+20>>2]&1))EEa(b,c,a)|0;a=a+28|0}while((a|0)!=(e|0));NEa(g);return}function NEa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;b=f[a>>2]|0;m=a+4|0;n=f[m>>2]|0;a:do if((b|0)!=(n|0)){do{if(!(f[b+20>>2]&1))break a;b=b+28|0}while((b|0)!=(n|0));m=n;FEa(a,n,m);return}while(0);c=b;if((b|0)==(n|0)){m=c;FEa(a,m,n);return}else b=c;b:while(1){k=b;do{j=k;i=j+28|0;k=i;if((i|0)==(n|0))break b;h=j+48|0}while(!(f[h>>2]&1|0));l=c;f[c>>2]=f[i>>2];f[l+4>>2]=f[j+32>>2];e=j+36|0;g=l+8|0;b=f[g>>2]|0;d=l+12|0;if(!b)b=l+16|0;else{c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b);b=l+16|0;f[b>>2]=0;f[d>>2]=0;f[g>>2]=0}f[g>>2]=f[e>>2];g=j+40|0;f[d>>2]=f[g>>2];d=j+44|0;f[b>>2]=f[d>>2];f[d>>2]=0;f[g>>2]=0;f[e>>2]=0;f[i>>2]=0;f[l+20>>2]=f[h>>2];b=j+52|0;j=l+24|0;i=f[b>>2]|0;f[b>>2]=0;b=f[j>>2]|0;f[j>>2]=i;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=k;c=l+28|0}n=f[m>>2]|0;m=c;FEa(a,m,n);return}function OEa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;b=f[a>>2]|0;m=a+4|0;n=f[m>>2]|0;a:do if((b|0)!=(n|0)){do{if(!(f[b+20>>2]&1))break a;b=b+28|0}while((b|0)!=(n|0));m=n;CEa(a,n,m);return}while(0);c=b;if((b|0)==(n|0)){m=c;CEa(a,m,n);return}else b=c;b:while(1){k=b;do{j=k;i=j+28|0;k=i;if((i|0)==(n|0))break b;d=j+48|0;b=f[d>>2]|0}while(!(b&1|0));l=c;f[c>>2]=f[i>>2];f[l+4>>2]=f[j+32>>2];g=j+36|0;h=l+8|0;c=f[h>>2]|0;e=l+12|0;if(!c)c=l+16|0;else{b=f[e>>2]|0;if((b|0)!=(c|0))f[e>>2]=b+(~((b+-8-c|0)>>>3)<<3);Zpb(c);c=l+16|0;f[c>>2]=0;f[e>>2]=0;f[h>>2]=0;b=f[d>>2]|0}f[h>>2]=f[g>>2];h=j+40|0;f[e>>2]=f[h>>2];e=j+44|0;f[c>>2]=f[e>>2];f[e>>2]=0;f[h>>2]=0;f[g>>2]=0;f[i>>2]=0;f[l+20>>2]=b;b=j+52|0;j=l+24|0;i=f[b>>2]|0;f[b>>2]=0;b=f[j>>2]|0;f[j>>2]=i;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);b=k;c=l+28|0}n=f[m>>2]|0;m=c;CEa(a,m,n);return}function PEa(a,b,c){a=a|0;b=b|0;c=c|0;QEa((f[a+8>>2]|0)+188|0,b,c);return}function QEa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;i=o;j=o+24|0;e=f[a>>2]|0;n=a+4|0;k=f[n>>2]|0;if((e|0)==(k|0)){u=o;return}l=i+16|0;do{h=e+16|0;g=f[h>>2]|0;if(g|0){f[i>>2]=c;f[j>>2]=d;wh[f[(f[g>>2]|0)+24>>2]&127](g,i,j);if(b[e+24>>0]|0){f[l>>2]=0;g=f[h>>2]|0;if((e|0)==(g|0))fh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)fh[f[(f[g>>2]|0)+20>>2]&2047](g);f[h>>2]=0;g=f[l>>2]|0;do if(!g){f[h>>2]=0;m=15}else if((i|0)==(g|0)){f[h>>2]=e;m=f[l>>2]|0;nh[f[(f[m>>2]|0)+12>>2]&1023](m,e);m=15;break}else{f[h>>2]=g;f[l>>2]=0;g=0;h=0;break}while(0);if((m|0)==15){m=0;h=f[l>>2]|0;g=h}if((i|0)==(g|0))fh[f[(f[h>>2]|0)+16>>2]&2047](h);else if(h|0)fh[f[(f[h>>2]|0)+20>>2]&2047](h)}}e=e+32|0}while((e|0)!=(k|0));e=f[n>>2]|0;if((f[a>>2]|0)==(e|0)){u=o;return}while(1){if(!(f[e+-16>>2]|0)){g=e;h=0;c=0}else{m=30;break}e=e+-32|0;while(1){m=g+-32|0;f[n>>2]=m;if((m|0)==(h|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);g=f[n>>2]|0;if((g|0)==(e|0))break;c=f[g+-16>>2]|0;h=c}if((f[a>>2]|0)==(e|0)){m=30;break}}if((m|0)==30){u=o;return}}function REa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n+8|0;k=n+4|0;l=n;f[m>>2]=b;f[k>>2]=c;f[l>>2]=d;i=SEa((f[a+4>>2]|0)+880|0,m)|0;h=f[i+4>>2]|0;a:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)j=g&d;else if(h>>>0>d>>>0)j=d;else j=(d>>>0)%(h>>>0)|0;b=f[(f[i>>2]|0)+(j<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){if(e){while(1){h=f[b+4>>2]|0;e=(h|0)==(d|0);if(!(e|(h&g|0)==(j|0)))break a;if(e)if((f[b+8>>2]|0)==(d|0))break;b=f[b>>2]|0;if(!b)break a}a=a+8|0;a=f[a>>2]|0;a=a+164|0;m=f[m>>2]|0;D3(a,m,c,d);u=n;return}while(1){e=f[b+4>>2]|0;if((e|0)==(d|0)){if((f[b+8>>2]|0)==(d|0))break}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(j|0))break a}b=f[b>>2]|0;if(!b)break a}a=a+8|0;a=f[a>>2]|0;a=a+164|0;m=f[m>>2]|0;D3(a,m,c,d);u=n;return}}}while(0);j=TEa(i,l)|0;f[j>>2]=c;UEa(i+20|0,k)|0;k=f[k>>2]|0;l=f[l>>2]|0;a=a+8|0;a=f[a>>2]|0;a=a+164|0;m=f[m>>2]|0;D3(a,m,k,l);u=n;return}function SEa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;k=a+4|0;j=f[k>>2]|0;i=(j|0)==0;a:do if(i)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(j>>>0>m>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(52)|0;f[h+8>>2]=m;l=h+12|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+28>>2]=1.0;l=h+32|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+48>>2]=1.0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);c=a+16|0;e=+n[c>>2];do if(i|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;i=~~+W(+(d/e))>>>0;b=b>>>0<i>>>0?i:b;if((b|0)==1){b=2;g=j}else if(!(b+-1&b))g=j;else{b=Meb(b)|0;g=f[k>>2]|0}if(b>>>0>g>>>0)ZEa(a,b);else if(b>>>0<g>>>0){c=~~+W(+(+((f[l>>2]|0)>>>0)/+n[c>>2]))>>>0;if(g>>>0>2&(g+-1&g|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0<g>>>0)ZEa(a,b)}b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(b>>>0>m>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=41}}else{f[h>>2]=f[b>>2];o=41}if((o|0)==41)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function TEa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;XEa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function UEa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(32)|0;f[h+8>>2]=m;l=h+12|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[h+28>>2]=1.0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;VEa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function VEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){WEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;WEa(a,b);return}function WEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function XEa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){YEa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;YEa(a,b);return}function YEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function ZEa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function _Ea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=u;u=u+16|0;j=g+8|0;i=g+4|0;h=g;f[j>>2]=b;f[i>>2]=c;f[h>>2]=e;e=TEa(UEa((SEa((f[a+4>>2]|0)+880|0,j)|0)+20|0,i)|0,h)|0;f[e>>2]=d;$Ea((f[a+8>>2]|0)+176|0,f[j>>2]|0,f[i>>2]|0,d,f[h>>2]|0);u=g;return}function $Ea(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+48|0;m=s;n=s+32|0;o=s+28|0;p=s+24|0;h=f[a>>2]|0;r=a+4|0;k=f[r>>2]|0;if((h|0)==(k|0)){u=s;return}l=m+16|0;do{j=h+16|0;i=f[j>>2]|0;if(i|0){f[m>>2]=c;f[n>>2]=d;f[o>>2]=e;f[p>>2]=g;Kh[f[(f[i>>2]|0)+24>>2]&255](i,m,n,o,p);if(b[h+24>>0]|0){f[l>>2]=0;i=f[j>>2]|0;if((h|0)==(i|0))fh[f[(f[i>>2]|0)+16>>2]&2047](i);else if(i|0)fh[f[(f[i>>2]|0)+20>>2]&2047](i);f[j>>2]=0;i=f[l>>2]|0;do if(!i){f[j>>2]=0;q=15}else if((m|0)==(i|0)){f[j>>2]=h;q=f[l>>2]|0;nh[f[(f[q>>2]|0)+12>>2]&1023](q,h);q=15;break}else{f[j>>2]=i;f[l>>2]=0;i=0;j=0;break}while(0);if((q|0)==15){q=0;j=f[l>>2]|0;i=j}if((m|0)==(i|0))fh[f[(f[j>>2]|0)+16>>2]&2047](j);else if(j|0)fh[f[(f[j>>2]|0)+20>>2]&2047](j)}}h=h+32|0}while((h|0)!=(k|0));h=f[r>>2]|0;if((f[a>>2]|0)==(h|0)){u=s;return}while(1){if(!(f[h+-16>>2]|0)){i=h;j=0;c=0}else{q=30;break}h=h+-32|0;while(1){q=i+-32|0;f[r>>2]=q;if((q|0)==(j|0))fh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)fh[f[(f[c>>2]|0)+20>>2]&2047](c);i=f[r>>2]|0;if((i|0)==(h|0))break;c=f[i+-16>>2]|0;j=c}if((f[a>>2]|0)==(h|0)){q=30;break}}if((q|0)==30){u=s;return}}function aFa(a){a=a|0;FDa(f[a+4>>2]|0);return}function bFa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;if((f[a+12>>2]|0)!=2){u=o;return}l=f[a+4>>2]|0;m=l+568|0;cFa(n,f[d>>2]|0,f[d+4>>2]|0);k=l+572|0;a=f[k>>2]|0;l=l+576|0;j=f[l>>2]|0;d=j;if(a>>>0<j>>>0){f[a>>2]=0;l=a+4|0;f[l>>2]=0;f[a+8>>2]=0;f[a>>2]=f[n>>2];m=n+4|0;f[l>>2]=f[m>>2];l=n+8|0;f[a+8>>2]=f[l>>2];f[l>>2]=0;f[m>>2]=0;f[n>>2]=0;f[a+12>>2]=e;b[a+16>>0]=c;f[k>>2]=(f[k>>2]|0)+20;a=n}else{g=f[m>>2]|0;h=(a-g|0)/20|0;a=h+1|0;if(a>>>0>214748364)fob(m);g=(d-g|0)/20|0;j=g<<1;a=g>>>0<107374182?(j>>>0<a>>>0?a:j):214748364;do if(!a)i=0;else if(a>>>0>214748364)ud();else{i=Wpb(a*20|0)|0;break}while(0);d=i+(h*20|0)|0;g=d;j=i+(a*20|0)|0;f[i+(h*20|0)+8>>2]=0;f[d>>2]=f[n>>2];a=n+4|0;f[i+(h*20|0)+4>>2]=f[a>>2];p=n+8|0;f[i+(h*20|0)+8>>2]=f[p>>2];f[p>>2]=0;f[a>>2]=0;f[n>>2]=0;f[i+(h*20|0)+12>>2]=e;b[i+(h*20|0)+16>>0]=c;c=d+20|0;h=f[m>>2]|0;a=f[k>>2]|0;if((a|0)==(h|0)){a=g;e=h;g=h}else{do{i=d+-20|0;p=a;a=a+-20|0;f[i>>2]=0;e=d+-16|0;f[e>>2]=0;f[d+-12>>2]=0;f[i>>2]=f[a>>2];i=p+-16|0;f[e>>2]=f[i>>2];e=p+-12|0;f[d+-12>>2]=f[e>>2];f[e>>2]=0;f[i>>2]=0;f[a>>2]=0;f[d+-8>>2]=f[p+-8>>2];b[d+-4>>0]=b[p+-4>>0]|0;d=g+-20|0;g=d}while((a|0)!=(h|0));a=g;e=f[m>>2]|0;g=f[k>>2]|0}f[m>>2]=a;f[k>>2]=c;f[l>>2]=j;c=e;if((g|0)!=(c|0))do{a=g;g=g+-20|0;h=f[g>>2]|0;if(h|0){a=a+-16|0;d=f[a>>2]|0;if((d|0)!=(h|0))f[a>>2]=d+(~((d+-8-h|0)>>>3)<<3);Zpb(h)}}while((g|0)!=(c|0));if(!e)a=n;else{Zpb(e);a=n}}g=f[a>>2]|0;if(g|0){a=n+4|0;d=f[a>>2]|0;if((d|0)!=(g|0))f[a>>2]=d+(~((d+-8-g|0)>>>3)<<3);Zpb(g)}u=o;return}function cFa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=b+(c<<3)|0;f[a>>2]=0;k=a+4|0;f[k>>2]=0;f[a+8>>2]=0;d=c<<3;e=d>>3;do if(!e){e=0;b=0;d=0;j=11}else{if(e>>>0>536870911)fob(a);d=Wpb(d)|0;f[k>>2]=d;f[a>>2]=d;f[a+8>>2]=d+(e<<3);if(!c){e=d;b=d;j=11}else{h=d;do{c=b;e=f[c+4>>2]|0;i=h;f[i>>2]=f[c>>2];f[i+4>>2]=e;b=b+8|0;i=f[k>>2]|0;h=i+8|0;f[k>>2]=h}while((b|0)!=(g|0));d=h;b=f[a>>2]|0;if((b|0)==(h|0)){e=h;j=11}else{e=b;while(1){if(!(f[e>>2]|0))break;if((e|0)==(i|0)){j=10;break}else e=e+8|0}if((j|0)==10){c=h;e=h;break}c=e;if((e|0)==(h|0))e=h;else{b=c;a:while(1){do{h=b;d=h+8|0;b=d;if((i|0)==(h|0))break a}while(!(f[d>>2]|0));e=d;g=f[e+4>>2]|0;h=c;f[h>>2]=f[e>>2];f[h+4>>2]=g;c=c+8|0}d=f[k>>2]|0;b=f[a>>2]|0;e=d}}}}while(0);if((j|0)==11)c=e;g=b+(c-b>>3<<3)|0;if((e|0)==(c|0))return;b=g+(e-c>>3<<3)|0;c=d-b|0;e=c>>3;if(e){Jrb(g|0,b|0,c|0)|0;d=f[k>>2]|0}b=g+(e<<3)|0;if((d|0)==(b|0))return;f[k>>2]=d+(~((d+-8-b|0)>>>3)<<3);return}function dFa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;h=e&1;if((f[a+12>>2]|0)!=2){u=o;return}l=f[a+4>>2]|0;m=l+556|0;cFa(n,f[d>>2]|0,f[d+4>>2]|0);k=l+560|0;e=f[k>>2]|0;l=l+564|0;j=f[l>>2]|0;a=j;if(e>>>0<j>>>0){f[e>>2]=0;l=e+4|0;f[l>>2]=0;f[e+8>>2]=0;f[e>>2]=f[n>>2];m=n+4|0;f[l>>2]=f[m>>2];l=n+8|0;f[e+8>>2]=f[l>>2];f[l>>2]=0;f[m>>2]=0;f[n>>2]=0;b[e+12>>0]=h;b[e+13>>0]=c;f[k>>2]=(f[k>>2]|0)+16;e=n}else{d=f[m>>2]|0;g=e-d>>4;e=g+1|0;if(e>>>0>268435455)fob(m);d=a-d|0;j=d>>3;e=d>>4>>>0<134217727?(j>>>0<e>>>0?e:j):268435455;do if(!e)i=0;else if(e>>>0>268435455)ud();else{i=Wpb(e<<4)|0;break}while(0);a=i+(g<<4)|0;d=a;j=i+(e<<4)|0;f[i+(g<<4)+8>>2]=0;f[a>>2]=f[n>>2];e=n+4|0;f[i+(g<<4)+4>>2]=f[e>>2];p=n+8|0;f[i+(g<<4)+8>>2]=f[p>>2];f[p>>2]=0;f[e>>2]=0;f[n>>2]=0;b[i+(g<<4)+12>>0]=h;b[i+(g<<4)+13>>0]=c;h=a+16|0;g=f[m>>2]|0;e=f[k>>2]|0;if((e|0)==(g|0)){e=d;c=g;d=g}else{do{i=a+-16|0;p=e;e=e+-16|0;f[i>>2]=0;c=a+-12|0;f[c>>2]=0;f[a+-8>>2]=0;f[i>>2]=f[e>>2];i=p+-12|0;f[c>>2]=f[i>>2];c=p+-8|0;f[a+-8>>2]=f[c>>2];f[c>>2]=0;f[i>>2]=0;f[e>>2]=0;b[a+-4>>0]=b[p+-4>>0]|0;b[a+-3>>0]=b[p+-3>>0]|0;a=d+-16|0;d=a}while((e|0)!=(g|0));e=d;c=f[m>>2]|0;d=f[k>>2]|0}f[m>>2]=e;f[k>>2]=h;f[l>>2]=j;h=c;if((d|0)!=(h|0))do{e=d;d=d+-16|0;g=f[d>>2]|0;if(g|0){e=e+-12|0;a=f[e>>2]|0;if((a|0)!=(g|0))f[e>>2]=a+(~((a+-8-g|0)>>>3)<<3);Zpb(g)}}while((d|0)!=(h|0));if(!c)e=n;else{Zpb(c);e=n}}d=f[e>>2]|0;if(d|0){e=n+4|0;a=f[e>>2]|0;if((a|0)!=(d|0))f[e>>2]=a+(~((a+-8-d|0)>>>3)<<3);Zpb(d)}u=o;return}function eFa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if((f[a+12>>2]|0)!=2)return;i=c&1;g=a+4|0;c=f[g>>2]|0;h=f[c+556>>2]|0;e=c+560|0;a=f[e>>2]|0;if((a|0)!=(h|0)){while(1){c=a+-16|0;f[e>>2]=c;d=f[c>>2]|0;if(d){c=a+-12|0;a=f[c>>2]|0;if((a|0)!=(d|0))f[c>>2]=a+(~((a+-8-d|0)>>>3)<<3);Zpb(d);c=f[e>>2]|0}if((c|0)==(h|0))break;else a=c}c=f[g>>2]|0}b[c+553>>0]=i;b[c+554>>0]=1;return}function fFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[a+12>>2]|0)!=2)return;Eh[f[(f[a>>2]|0)+68>>2]&255](a,b,c,d);return}function gFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;if((f[a+12>>2]|0)!=2)return;h=f[b>>2]|0;k=b+4|0;e=f[k>>2]|0;i=h+(e<<3)|0;a:do if(!e){g=h;j=5}else{g=h;while(1){if(!(f[g>>2]|0)){j=5;break a}g=g+8|0;if((g|0)==(i|0)){g=i;break}}}while(0);if((j|0)==5)if((g|0)==(i|0))g=i;else{e=g;b:while(1){do{e=e+8|0;if((e|0)==(i|0))break b}while(!(f[e>>2]|0));l=e;h=f[l+4>>2]|0;j=g;f[j>>2]=f[l>>2];f[j+4>>2]=h;g=g+8|0}h=f[b>>2]|0;e=f[k>>2]|0}l=e-(h+(e<<3)-g>>3)|0;f[k>>2]=l;Kh[f[(f[a>>2]|0)+72>>2]&255](a,l,h,c,d);return}function hFa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if((f[a+12>>2]|0)!=2)return;g=f[b>>2]|0;j=b+4|0;d=f[j>>2]|0;h=g+(d<<3)|0;a:do if(!d){e=g;i=5}else{e=g;while(1){if(!(f[e>>2]|0)){i=5;break a}e=e+8|0;if((e|0)==(h|0)){e=h;break}}}while(0);if((i|0)==5)if((e|0)==(h|0))e=h;else{d=e;b:while(1){do{d=d+8|0;if((d|0)==(h|0))break b}while(!(f[d>>2]|0));k=d;g=f[k+4>>2]|0;i=e;f[i>>2]=f[k>>2];f[i+4>>2]=g;e=e+8|0}g=f[b>>2]|0;d=f[j>>2]|0}k=d-(g+(d<<3)-e>>3)|0;f[j>>2]=k;Eh[f[(f[a>>2]|0)+76>>2]&255](a,k,g,c);return}function iFa(a){a=a|0;if((f[a+12>>2]|0)!=2)return;fh[f[(f[a>>2]|0)+80>>2]&2047](a);return}function jFa(a,b){a=a|0;b=+b;if((f[a+12>>2]|0)!=2)return;gh[f[(f[a>>2]|0)+84>>2]&63](a,b);return}function kFa(a,c){a=a|0;c=c|0;if((f[a+12>>2]|0)!=2)return;a=f[a+4>>2]|0;f[a+540>>2]=c;b[a+544>>0]=1;return}function lFa(a,c){a=a|0;c=+c;if((f[a+12>>2]|0)!=2)return;a=f[a+4>>2]|0;n[a+548>>2]=c;b[a+552>>0]=1;FDa(a);return}function mFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if((f[a+12>>2]|0)!=2)return;e=f[b>>2]|0;j=b+4|0;c=f[j>>2]|0;g=e+(c<<3)|0;a:do if(!c){d=e;u=5}else{d=e;while(1){if(!(f[d>>2]|0)){u=5;break a}d=d+8|0;if((d|0)==(g|0)){d=g;break}}}while(0);if((u|0)==5)if((d|0)==(g|0))d=g;else{c=d;b:while(1){do{c=c+8|0;if((c|0)==(g|0))break b}while(!(f[c>>2]|0));r=c;s=f[r+4>>2]|0;t=d;f[t>>2]=f[r>>2];f[t+4>>2]=s;d=d+8|0}e=f[b>>2]|0;c=f[j>>2]|0}c=c-(e+(c<<3)-d>>3)|0;f[j>>2]=c;if(!c)return;s=f[a+4>>2]|0;t=s+604|0;o=e+(c<<3)|0;p=s+608|0;q=s+616|0;r=s+620|0;s=s+612|0;c=f[p>>2]|0;do{j=f[e>>2]|0;k=f[e+4>>2]|0;m=k+-1640531527+(j<<6)+(j>>>2)^j;l=(c|0)==0;c:do if(l){d=0;u=32}else{a=c+-1|0;b=(a&c|0)==0;if(b)d=m&a;else if(m>>>0<c>>>0)d=m;else d=(m>>>0)%(c>>>0)|0;g=f[(f[t>>2]|0)+(d<<2)>>2]|0;if(!g)u=32;else{g=f[g>>2]|0;if(!g)u=32;else{if(b)while(1){b=f[g+4>>2]|0;if(!((b|0)==(m|0)|(b&a|0)==(d|0))){u=32;break c}if((f[g+8>>2]|0)==(j|0))if((f[g+12>>2]|0)==(k|0))break c;g=f[g>>2]|0;if(!g){u=32;break c}}while(1){b=f[g+4>>2]|0;if((b|0)!=(m|0)){if(b>>>0>=c>>>0)b=(b>>>0)%(c>>>0)|0;if((b|0)!=(d|0)){u=32;break c}}if((f[g+8>>2]|0)==(j|0))if((f[g+12>>2]|0)==(k|0))break c;g=f[g>>2]|0;if(!g){u=32;break}}}}}while(0);if((u|0)==32){u=0;b=Wpb(16)|0;a=e;j=f[a+4>>2]|0;k=b+8|0;f[k>>2]=f[a>>2];f[k+4>>2]=j;f[b+4>>2]=m;f[b>>2]=0;h=+(((f[q>>2]|0)+1|0)>>>0);i=+n[r>>2];do if(l|i*+(c>>>0)<h){d=c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1;g=~~+W(+(h/i))>>>0;Jfa(t,d>>>0<g>>>0?g:d);d=f[p>>2]|0;g=d+-1|0;if(!(g&d)){c=d;d=g&m;break}if(m>>>0<d>>>0){c=d;d=m}else{c=d;d=(m>>>0)%(d>>>0)|0}}while(0);g=(f[t>>2]|0)+(d<<2)|0;d=f[g>>2]|0;if(!d){f[b>>2]=f[s>>2];f[s>>2]=b;f[g>>2]=s;d=f[b>>2]|0;if(d|0){d=f[d+4>>2]|0;g=c+-1|0;if(!(g&c))d=d&g;else if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0;d=(f[t>>2]|0)+(d<<2)|0;u=45}}else{f[b>>2]=f[d>>2];u=45}if((u|0)==45){u=0;f[d>>2]=b}f[q>>2]=(f[q>>2]|0)+1}e=e+8|0}while((e|0)!=(o|0));return}function nFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;if((f[a+12>>2]|0)!=2){a=f[b>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,g);u=h;return}d=a+4|0;c=f[d>>2]|0;e=f[c+848>>2]|0;if(e){nh[f[(f[e>>2]|0)+12>>2]&1023](e,g);c=f[d>>2]|0}g=c+848|0;e=f[b>>2]|0;f[b>>2]=0;c=f[g>>2]|0;f[g>>2]=e;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);fh[f[(f[a>>2]|0)+48>>2]&2047](a);u=h;return}function oFa(a){a=a|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=a+4|0;c=f[d>>2]|0;if(!(f[c+852>>2]|0)){u=g;return}c=f[c+856>>2]|0;if(!c){u=g;return}if(!(Ng[f[(f[c>>2]|0)+16>>2]&511](c)|0)){o$(786,a,1);u=g;return}a=f[(f[d>>2]|0)+856>>2]|0;nh[f[(f[a>>2]|0)+20>>2]&1023](e,a);a=f[(f[d>>2]|0)+852>>2]|0;nh[f[(f[a>>2]|0)+8>>2]&1023](a,e);a=(f[d>>2]|0)+852|0;c=f[a>>2]|0;f[a>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);d=(f[d>>2]|0)+856|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);if((b[e+11>>0]|0)<0)Zpb(f[e>>2]|0);u=g;return}function pFa(a,b){a=a|0;b=b|0;if(!a)return;oFa(b);return}function qFa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;g=a+4|0;e=(f[g>>2]|0)+852|0;if(f[e>>2]|0){d=f[c>>2]|0;c=f[(f[d>>2]|0)+12>>2]|0;e=Wpb(32)|0;f[i>>2]=e;f[i+8>>2]=-2147483616;f[i+4>>2]=30;a=e;g=145646;h=a+30|0;do{b[a>>0]=b[g>>0]|0;a=a+1|0;g=g+1|0}while((a|0)<(h|0));b[e+30>>0]=0;nh[c&1023](d,i);if((b[i+11>>0]|0)<0)Zpb(f[i>>2]|0);u=j;return}h=f[c>>2]|0;f[c>>2]=0;c=f[e>>2]|0;f[e>>2]=h;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);e=f[(f[a+8>>2]|0)+220>>2]|0;ILa(i,d);h=(f[g>>2]|0)+856|0;d=f[i>>2]|0;f[i>>2]=0;c=f[h>>2]|0;f[h>>2]=d;if(!c)f[i>>2]=0;else{fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[i>>2]|0;f[i>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c)}i=f[(f[g>>2]|0)+856>>2]|0;nh[f[(f[i>>2]|0)+8>>2]&1023](i,e);i=f[(f[g>>2]|0)+856>>2]|0;fh[f[(f[i>>2]|0)+12>>2]&2047](i);o$(786,a,5);u=j;return}function rFa(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=(f[a+4>>2]|0)+848|0;a=f[c>>2]|0;if(!a){u=d;return}if(b)nh[f[(f[a>>2]|0)+16>>2]&1023](a,1);else nh[f[(f[a>>2]|0)+8>>2]&1023](a,d);a=f[c>>2]|0;f[c>>2]=0;if(!a){u=d;return}fh[f[(f[a>>2]|0)+4>>2]&2047](a);u=d;return}function sFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(f[b>>2]|0))return;Eh[f[(f[a>>2]|0)+36>>2]&255](a,b,c,d);return}function tFa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n+4|0;l=n;if(!(f[b>>2]|0)){u=n;return}m=f[a+4>>2]|0;i=m+904|0;k=(f[i>>2]|0)+-1|0;f[i>>2]=k;i=m+492|0;d=m+496|0;e=f[d>>2]|0;do if(!e){h=d;g=d}else{g=m+496|0;while(1){d=f[e+16>>2]|0;if(d>>>0<k>>>0){d=f[e>>2]|0;if(!d){d=7;break}}else{if(d>>>0<=k>>>0){d=11;break}g=e+4|0;d=f[g>>2]|0;if(!d){d=10;break}else e=g}g=e;e=d}if((d|0)==7){h=e;g=e;break}else if((d|0)==10){h=e;break}else if((d|0)==11){h=e;break}}while(0);if(!(f[g>>2]|0)){d=Wpb(20)|0;f[d+16>>2]=k;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=h;f[g>>2]=d;e=f[f[i>>2]>>2]|0;if(e){f[i>>2]=e;d=f[g>>2]|0}tEa(f[m+496>>2]|0,d);m=m+500|0;f[m>>2]=(f[m>>2]|0)+1}m=f[(f[a>>2]|0)+40>>2]|0;f[l>>2]=k;f[j>>2]=f[l>>2];Eh[m&255](a,j,b,c);u=n;return}function uFa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;i=l+8|0;j=l+4|0;k=l;if((f[a+12>>2]|0)!=2){b=f[b>>2]|0;if(!b){u=l;return}nh[f[(f[b>>2]|0)+16>>2]&1023](b,0);u=l;return}h=f[a+4>>2]|0;n=h+904|0;m=(f[n>>2]|0)+-1|0;f[n>>2]=m;f[j>>2]=m;if(f[b>>2]|0){n=vFa(h+320|0,j)|0;m=f[b>>2]|0;f[b>>2]=0;b=f[n>>2]|0;f[n>>2]=m;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b)}n=f[(f[a>>2]|0)+104>>2]|0;f[k>>2]=f[j>>2];f[i>>2]=f[k>>2];Hh[n&7](a,i,c,d,e,g);u=l;return}function vFa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;wFa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function wFa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){xFa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;xFa(a,b);return}function xFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function yFa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;s=w+8|0;t=w+4|0;v=w;if((f[a+12>>2]|0)!=2){d=f[b>>2]|0;if(!d){u=w;return}nh[f[(f[d>>2]|0)+16>>2]&1023](d,0);u=w;return}r=a+4|0;EDa(f[r>>2]|0,1);p=(f[r>>2]|0)+904|0;d=(f[p>>2]|0)+-1|0;f[p>>2]=d;f[t>>2]=d;d=zva(f[(f[a+8>>2]|0)+220>>2]|0)|0;p=f[c>>2]|0;q=c+4|0;n=f[q>>2]|0;m=p+(n<<2)|0;a:do if(!n){e=p;d=0}else{n=d+4|0;j=f[d>>2]|0;i=p;do{k=f[i>>2]|0;h=f[n>>2]|0;b:do if(!h)o=34;else{g=h+-1|0;e=(g&h|0)==0;if(e)l=g&k;else if(k>>>0<h>>>0)l=k;else l=(k>>>0)%(h>>>0)|0;d=f[j+(l<<2)>>2]|0;if(!d)o=34;else{d=f[d>>2]|0;if(!d)o=34;else{if(e)while(1){h=f[d+4>>2]|0;e=(k|0)==(h|0);if(!(e|(h&g|0)==(l|0))){o=34;break b}if(e)if((f[d+8>>2]|0)==(k|0))break b;d=f[d>>2]|0;if(!d){o=34;break b}}while(1){e=f[d+4>>2]|0;if((k|0)==(e|0)){if((f[d+8>>2]|0)==(k|0))break b}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(l|0)){o=34;break b}}d=f[d>>2]|0;if(!d){o=34;break}}}}}while(0);if((o|0)==34){o=0;f[i>>2]=0}i=i+4|0}while((i|0)!=(m|0));d=f[q>>2]|0;h=p+(d<<2)|0;c:do if(!d){e=p;d=0}else{e=p;while(1){if(!(f[e>>2]|0))break c;e=e+4|0;if((e|0)==(h|0)){e=h;break a}}}while(0);if((e|0)==(h|0))e=h;else{d=e;d:while(1){do{d=d+4|0;if((d|0)==(h|0))break d;g=f[d>>2]|0}while(!(g|0));f[e>>2]=g;e=e+4|0}d=f[q>>2]|0}}while(0);p=d-(p+(d<<2)-e>>2)|0;f[q>>2]=p;d=f[b>>2]|0;e=(d|0)!=0;if(!p){if(e)nh[f[(f[d>>2]|0)+8>>2]&1023](d,s)}else{if(e){r=vFa((f[r>>2]|0)+360|0,t)|0;q=f[b>>2]|0;f[b>>2]=0;d=f[r>>2]|0;f[r>>2]=q;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}r=f[(f[a>>2]|0)+108>>2]|0;f[v>>2]=f[t>>2];f[s>>2]=f[v>>2];wh[r&127](a,s,c)}u=w;return}function zFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;t=x+4|0;v=x;q=f[a+4>>2]|0;s=q+904|0;w=(f[s>>2]|0)+-1|0;f[s>>2]=w;s=q+380|0;p=q+384|0;o=f[p>>2]|0;j=(o|0)==0;a:do if(j){e=0;r=17}else{i=o+-1|0;h=(i&o|0)==0;if(h)e=i&w;else if(o>>>0>w>>>0)e=w;else e=(w>>>0)%(o>>>0)|0;g=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!g)r=17;else{if(h)while(1){g=f[g>>2]|0;if(!g){r=17;break a}m=f[g+4>>2]|0;if(!((m|0)==(w|0)|(m&i|0)==(e|0))){r=17;break a}if((f[g+8>>2]|0)==(w|0)){m=g;break a}}while(1){g=f[g>>2]|0;if(!g){r=17;break a}h=f[g+4>>2]|0;if((h|0)!=(w|0)){if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;if((h|0)!=(e|0)){r=17;break a}}if((f[g+8>>2]|0)==(w|0)){m=g;break}}}}while(0);if((r|0)==17){m=Wpb(56)|0;f[m+8>>2]=w;g=m+12|0;h=g+44|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[m+4>>2]=w;f[m>>2]=0;i=q+392|0;k=+(((f[i>>2]|0)+1|0)>>>0);g=q+396|0;l=+n[g>>2];do if(j|l*+(o>>>0)<k){e=o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;j=~~+W(+(k/l))>>>0;e=e>>>0<j>>>0?j:e;if((e|0)==1){e=2;h=o}else if(!(e+-1&e))h=o;else{e=Meb(e)|0;h=f[p>>2]|0}if(e>>>0>h>>>0)AFa(s,e);else if(e>>>0<h>>>0){g=~~+W(+(+((f[i>>2]|0)>>>0)/+n[g>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)g=1<<32-(_(g+-1|0)|0);else g=Meb(g)|0;e=e>>>0<g>>>0?g:e;if(e>>>0<h>>>0)AFa(s,e)}e=f[p>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&w;break}if(e>>>0>w>>>0){h=e;e=w}else{h=e;e=(w>>>0)%(e>>>0)|0}}else h=o;while(0);g=(f[s>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=q+388|0;f[m>>2]=f[e>>2];f[e>>2]=m;f[g>>2]=e;e=f[m>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[s>>2]|0)+(e<<2)|0;r=41}}else{f[m>>2]=f[e>>2];r=41}if((r|0)==41)f[e>>2]=m;f[i>>2]=(f[i>>2]|0)+1}s=m+12|0;r=f[b>>2]|0;f[b>>2]=0;e=f[s>>2]|0;f[s>>2]=r;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);f[m+16>>2]=f[c>>2];f[m+20>>2]=f[c+4>>2];i=c+8|0;j=m+24|0;e=f[j>>2]|0;h=m+28|0;if(!e)e=m+32|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Zpb(e);e=m+32|0;f[e>>2]=0;f[h>>2]=0;f[j>>2]=0}f[j>>2]=f[i>>2];g=c+12|0;f[h>>2]=f[g>>2];h=c+16|0;f[e>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[i>>2]=0;f[c>>2]=0;f[m+36>>2]=f[d>>2];f[m+40>>2]=f[d+4>>2];g=d+8|0;h=m+44|0;i=f[h>>2]|0;e=m+48|0;if(!i){s=m+52|0;c=f[g>>2]|0;f[h>>2]=c;c=d+12|0;b=f[c>>2]|0;f[e>>2]=b;b=d+16|0;r=f[b>>2]|0;f[s>>2]=r;f[b>>2]=0;f[c>>2]=0;f[g>>2]=0;f[d>>2]=0;d=f[a>>2]|0;d=d+52|0;d=f[d>>2]|0;f[v>>2]=w;f[t>>2]=f[v>>2];nh[d&1023](a,t);u=x;return}j=f[e>>2]|0;if((j|0)!=(i|0))f[e>>2]=j+(~((j+-4-i|0)>>>2)<<2);Zpb(i);s=m+52|0;f[s>>2]=0;f[e>>2]=0;f[h>>2]=0;c=f[g>>2]|0;f[h>>2]=c;c=d+12|0;b=f[c>>2]|0;f[e>>2]=b;b=d+16|0;r=f[b>>2]|0;f[s>>2]=r;f[b>>2]=0;f[c>>2]=0;f[g>>2]=0;f[d>>2]=0;d=f[a>>2]|0;d=d+52|0;d=f[d>>2]|0;f[v>>2]=w;f[t>>2]=f[v>>2];nh[d&1023](a,t);u=x;return}function AFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function BFa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;XCa(a,b);YCa(a,b,a+900|0);g=a+520|0;if(f[g>>2]|0){d=a+516|0;b=f[d>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;Zpb(e)}while((b|0)!=0);f[d>>2]=0;d=f[a+512>>2]|0;if(d|0){e=a+508|0;b=0;do{f[(f[e>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[g>>2]=0}e=a+528|0;g=a+532|0;hDa(e,f[g>>2]|0);f[a+536>>2]=0;f[e>>2]=g;f[g>>2]=0;if(c)return;d=a+872|0;if(f[d>>2]|0){e=a+868|0;wDa(f[e>>2]|0);f[e>>2]=0;e=f[a+864>>2]|0;if(e|0){g=a+860|0;b=0;do{f[(f[g>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(e|0))}f[d>>2]=0}e=a+892|0;if(!(f[e>>2]|0))return;g=a+888|0;vDa(f[g>>2]|0);f[g>>2]=0;g=f[a+884>>2]|0;if(g|0){d=a+880|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(g|0))}f[e>>2]=0;return}function CFa(a){a=a|0;b[(f[a+4>>2]|0)+600>>0]=1;return}function DFa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;i=l+8|0;j=l+4|0;k=l;a:do if((f[a+12>>2]|0)!=2){g=f[c>>2]|0;m=f[c+4>>2]|0;h=g+(m<<3)|0;if(m|0){while(1){if(f[g>>2]|0)break;g=g+8|0;if((g|0)==(h|0))break a}m=f[b>>2]|0;nh[f[(f[m>>2]|0)+16>>2]&1023](m,0);u=l;return}}while(0);m=f[a+4>>2]|0;g=m+904|0;h=(f[g>>2]|0)+-1|0;f[g>>2]=h;f[j>>2]=h;m=EFa(m+340|0,j)|0;h=f[b>>2]|0;f[b>>2]=0;g=f[m>>2]|0;f[m>>2]=h;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);m=f[(f[a>>2]|0)+112>>2]|0;f[k>>2]=f[j>>2];f[i>>2]=f[k>>2];Kh[m&255](a,i,c,d,e);u=l;return}function EFa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;FFa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function FFa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){GFa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;GFa(a,b);return}function GFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function HFa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=e&1;w=d&1;d=f[c>>2]|0;u=f[c+4>>2]|0;v=d+(u<<3)|0;if(!u)return;u=a+4|0;t=w<<24>>24==0&(e^1);s=d;do{p=VCa((f[u>>2]|0)+860|0,s)|0;a:do if((h[p>>0]|0)<=1){q=p+24|0;o=f[s+4>>2]|0;m=p+28|0;e=f[m>>2]|0;b:do if(!e){c=0;k=q;e=0;a=1;r=39}else{l=e+-1|0;k=(l&e|0)==0;if(k)a=l&o;else if(e>>>0>o>>>0)a=o;else a=(o>>>0)%(e>>>0)|0;j=f[q>>2]|0;d=f[j+(a<<2)>>2]|0;c:do if(d|0){d=f[d>>2]|0;if(d|0){d:do if(k)while(1){y=f[d+4>>2]|0;c=(y|0)==(o|0);if(!(c|(y&l|0)==(a|0)))break c;if(c)if((f[d+8>>2]|0)==(o|0))break d;d=f[d>>2]|0;if(!d)break c}else while(1){c=f[d+4>>2]|0;if((c|0)==(o|0)){if((f[d+8>>2]|0)==(o|0))break d}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(a|0))break c}d=f[d>>2]|0;if(!d)break c}while(0);d=d+12|0;c=d+1|0;if((b[d+2>>0]|0)!=0|t)break a;a=b[d>>0]|0;e=b[c>>0]|0;if(!(a<<24>>24==0|e<<24>>24==0))break a;if(a<<24>>24==w<<24>>24?e<<24>>24==x<<24>>24:0)break a;b[d>>0]=a|w;b[c>>0]=e|x;break b}}while(0);if(k)c=l&o;else if(e>>>0>o>>>0)c=o;else c=(o>>>0)%(e>>>0)|0;d=f[j+(c<<2)>>2]|0;if(!d){k=q;a=0;r=39}else{if(k)while(1){d=f[d>>2]|0;if(!d){k=q;a=0;r=39;break b}y=f[d+4>>2]|0;if(!((y|0)==(o|0)|(y&l|0)==(c|0))){k=q;a=0;r=39;break b}if((f[d+8>>2]|0)==(o|0)){r=65;break b}}while(1){d=f[d>>2]|0;if(!d){k=q;a=0;r=39;break b}a=f[d+4>>2]|0;if((a|0)!=(o|0)){if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0;if((a|0)!=(c|0)){k=q;a=0;r=39;break b}}if((f[d+8>>2]|0)==(o|0)){r=65;break}}}}while(0);if((r|0)==39){r=0;d=Wpb(16)|0;f[d+8>>2]=o;b[d+12>>0]=0;b[d+13>>0]=0;b[d+14>>0]=0;f[d+4>>2]=o;f[d>>2]=0;l=p+36|0;g=+(((f[l>>2]|0)+1|0)>>>0);j=p+40|0;i=+n[j>>2];do if(a|i*+(e>>>0)<g){c=e<<1|(e>>>0<3|(e+-1&e|0)!=0)&1;y=~~+W(+(g/i))>>>0;c=c>>>0<y>>>0?y:c;if((c|0)==1)c=2;else if(c+-1&c){c=Meb(c)|0;e=f[m>>2]|0}if(c>>>0>e>>>0)IFa(k,c);else if(c>>>0<e>>>0){a=~~+W(+(+((f[l>>2]|0)>>>0)/+n[j>>2]))>>>0;if(e>>>0>2&(e+-1&e|0)==0)a=1<<32-(_(a+-1|0)|0);else a=Meb(a)|0;c=c>>>0<a>>>0?a:c;if(c>>>0<e>>>0)IFa(k,c)}c=f[m>>2]|0;a=c+-1|0;if(!(a&c)){e=c;c=a&o;break}if(c>>>0>o>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}while(0);a=(f[q>>2]|0)+(c<<2)|0;c=f[a>>2]|0;if(!c){c=p+32|0;f[d>>2]=f[c>>2];f[c>>2]=d;f[a>>2]=c;c=f[d>>2]|0;if(c|0){c=f[c+4>>2]|0;a=e+-1|0;if(!(a&e))c=c&a;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[q>>2]|0)+(c<<2)|0;r=63}}else{f[d>>2]=f[c>>2];r=63}if((r|0)==63)f[c>>2]=d;f[l>>2]=(f[l>>2]|0)+1;r=65}if((r|0)==65){r=0;y=d+12|0;b[y>>0]=w;b[y+1>>0]=x;b[y+2>>0]=0}d=JFa((f[u>>2]|0)+708|0,s)|0;if(!d){y=KFa((f[u>>2]|0)+708|0,s)|0;b[y>>0]=w;b[y+1>>0]=x;break}else{y=d+16|0;b[y>>0]=b[y>>0]|w;y=d+8+9|0;b[y>>0]=b[y>>0]|x;break}}while(0);s=s+8|0}while((s|0)!=(v|0));return}function IFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function JFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function KFa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0<i>>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=Wpb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;b[k+17>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)<g){d=i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;LFa(a,d>>>0<e>>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0<d>>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function LFa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){MFa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;MFa(a,b);return}function MFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function NFa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d&1;d=f[c>>2]|0;n=f[c+4>>2]|0;o=d+(n<<3)|0;if(!n)return;m=a+4|0;n=p<<24>>24==0;l=d;do{d=VCa((f[m>>2]|0)+860|0,l)|0;a:do if((h[d>>0]|0)<=1){j=d+4|0;k=l+4|0;i=f[k>>2]|0;e=f[d+8>>2]|0;b:do if(!e)q=23;else{a=e+-1|0;c=(a&e|0)==0;if(c)g=a&i;else if(e>>>0>i>>>0)g=i;else g=(i>>>0)%(e>>>0)|0;d=f[(f[j>>2]|0)+(g<<2)>>2]|0;if(!d)q=23;else{d=f[d>>2]|0;if(!d)q=23;else{c:do if(c)while(1){e=f[d+4>>2]|0;c=(e|0)==(i|0);if(!(c|(e&a|0)==(g|0))){q=23;break b}if(c)if((f[d+8>>2]|0)==(i|0))break c;d=f[d>>2]|0;if(!d){q=23;break b}}else while(1){c=f[d+4>>2]|0;if((c|0)==(i|0)){if((f[d+8>>2]|0)==(i|0))break c}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){q=23;break b}}d=f[d>>2]|0;if(!d){q=23;break b}}while(0);c=d+12|0;if(n|(b[d+8+5>>0]|0)!=0)break a;if(b[c>>0]|0)break a;b[c>>0]=1}}}while(0);if((q|0)==23){q=0;k=OFa(j,k)|0;b[k>>0]=p;b[k+1>>0]=0}d=PFa((f[m>>2]|0)+688|0,l)|0;if(!d){k=QFa((f[m>>2]|0)+688|0,l)|0;b[k>>0]=p;break}else{k=d+16|0;b[k>>0]=b[k>>0]|p;break}}while(0);l=l+8|0}while((l|0)!=(o|0));return}function OFa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=Wpb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;b[i+13>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)<e){c=k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0<j>>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=Meb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)TFa(a,c);else if(c>>>0<h>>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=Meb(d)|0;c=c>>>0<d>>>0?d:c;if(c>>>0<h>>>0)TFa(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function PFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0<g>>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function QFa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0<i>>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=Wpb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)<g){d=i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;RFa(a,d>>>0<e>>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0<d>>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function RFa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){SFa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;SFa(a,b);return}function SFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();n=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function TFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function UFa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d&1;e=f[c>>2]|0;n=f[c+4>>2]|0;o=e+(n<<3)|0;if(!n)return;n=a+4|0;m=d^1;do{c=VCa((f[n>>2]|0)+860|0,e)|0;a:do if((h[c>>0]|0)<=1){k=c+44|0;l=e+4|0;j=f[l>>2]|0;g=f[c+48>>2]|0;b:do if(!g)q=23;else{d=g+-1|0;a=(d&g|0)==0;if(a)i=d&j;else if(g>>>0>j>>>0)i=j;else i=(j>>>0)%(g>>>0)|0;c=f[(f[k>>2]|0)+(i<<2)>>2]|0;if(!c)q=23;else{c=f[c>>2]|0;if(!c)q=23;else{c:do if(a)while(1){g=f[c+4>>2]|0;a=(g|0)==(j|0);if(!(a|(g&d|0)==(i|0))){q=23;break b}if(a)if((f[c+8>>2]|0)==(j|0))break c;c=f[c>>2]|0;if(!c){q=23;break b}}else while(1){a=f[c+4>>2]|0;if((a|0)==(j|0)){if((f[c+8>>2]|0)==(j|0))break c}else{if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;if((a|0)!=(i|0)){q=23;break b}}c=f[c>>2]|0;if(!c){q=23;break b}}while(0);a=c+12|0;if((b[c+8+5>>0]|0)!=0|m)break a;if(b[a>>0]|0)break a;b[a>>0]=1}}}while(0);if((q|0)==23){q=0;l=OFa(k,l)|0;b[l>>0]=p;b[l+1>>0]=0}c=PFa((f[n>>2]|0)+728|0,e)|0;if(!c){l=QFa((f[n>>2]|0)+728|0,e)|0;b[l>>0]=p;break}else{l=c+16|0;b[l>>0]=b[l>>0]|p;break}}while(0);e=e+8|0}while((e|0)!=(o|0));return}function VFa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=d&1;e=f[c>>2]|0;o=f[c+4>>2]|0;p=e+(o<<3)|0;if(!o)return;o=a+4|0;n=d^1;do{c=VCa((f[o>>2]|0)+860|0,e)|0;a:do if((h[c>>0]|0)<=1){l=c+144|0;m=e+4|0;k=f[m>>2]|0;i=f[c+148>>2]|0;b:do if(!i)r=23;else{g=i+-1|0;d=(g&i|0)==0;if(d)j=g&k;else if(i>>>0>k>>>0)j=k;else j=(k>>>0)%(i>>>0)|0;c=f[(f[l>>2]|0)+(j<<2)>>2]|0;if(!c)r=23;else{a=f[c>>2]|0;if(!a)r=23;else{c:do if(d)while(1){i=f[a+4>>2]|0;c=(i|0)==(k|0);if(!(c|(i&g|0)==(j|0))){r=23;break b}if(c)if((f[a+8>>2]|0)==(k|0))break c;a=f[a>>2]|0;if(!a){r=23;break b}}else while(1){c=f[a+4>>2]|0;if((c|0)==(k|0)){if((f[a+8>>2]|0)==(k|0))break c}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(j|0)){r=23;break b}}a=f[a>>2]|0;if(!a){r=23;break b}}while(0);c=a+12|0;if(!((b[a+8+5>>0]|0)==0&n))break a;if(!(b[c>>0]|0))break a}}}while(0);if((r|0)==23){r=0;c=OFa(l,m)|0;b[c>>0]=q;c=c+1|0}b[c>>0]=0;c=PFa((f[o>>2]|0)+828|0,e)|0;if(!c){m=QFa((f[o>>2]|0)+828|0,e)|0;b[m>>0]=q;break}else{m=c+16|0;b[m>>0]=b[m>>0]&q;break}}while(0);e=e+8|0}while((e|0)!=(p|0));return}function WFa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;h=m+28|0;l=m+16|0;i=m+4|0;j=m;k=(d&2|0)==0;a:do if(d&1|0){f[h>>2]=e;switch(e|0){case 0:{g=f[(f[a+8>>2]|0)+220>>2]|0;f[l>>2]=0;e=l+4|0;f[e>>2]=0;f[l+8>>2]=0;if((c|0)==5){$wa(i,g);g=f[l>>2]|0;if(!g)g=l+8|0;else{h=f[e>>2]|0;if((h|0)!=(g|0))f[e>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g);g=l+8|0;f[g>>2]=0;f[e>>2]=0;f[l>>2]=0}a=f[i>>2]|0;f[l>>2]=a;h=f[i+4>>2]|0;f[e>>2]=h;f[g>>2]=f[i+8>>2];g=a}else{g=0;a=0;h=0}if(!k){d=h-a>>2;i=h;switch(d|0){case 0:{dia(l,1);g=f[l>>2]|0;break}case 1:break;default:{h=a+4|0;if((h|0)!=(i|0))f[e>>2]=i+(~((i+-4-h|0)>>>2)<<2)}}f[g>>2]=d}g=f[b>>2]|0;nh[f[(f[g>>2]|0)+8>>2]&1023](g,l);g=f[l>>2]|0;if(g|0){h=f[e>>2]|0;if((h|0)!=(g|0))f[e>>2]=h+(~((h+-4-g|0)>>>2)<<2);Zpb(g)}u=m;return}case -1:{b=f[b>>2]|0;nh[f[(f[b>>2]|0)+12>>2]&1023](b,h);u=m;return}default:break a}}while(0);g=f[b>>2]|0;if((f[a+12>>2]|0)!=2){nh[f[(f[g>>2]|0)+16>>2]&1023](g,0);u=m;return}if(!g){Eh[f[(f[a>>2]|0)+116>>2]&255](a,c,d,e);u=m;return}i=(f[a+4>>2]|0)+400|0;f[h>>2]=c;f[h+4>>2]=d;f[h+8>>2]=e;i=XFa(i,h)|0;g=i+4|0;h=f[g>>2]|0;if(h>>>0<(f[i+8>>2]|0)>>>0){l=f[b>>2]|0;f[b>>2]=0;f[h>>2]=l;b=(f[g>>2]|0)+4|0;f[g>>2]=b;g=b}else{YFa(i,b);g=f[g>>2]|0}if((g-(f[i>>2]|0)|0)!=4){u=m;return}f[j>>2]=0;WFa(a,j,c,d,e);g=f[j>>2]|0;f[j>>2]=0;if(!g){u=m;return}fh[f[(f[g>>2]|0)+4>>2]&2047](g);u=m;return}function XFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0<h>>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=Wpb(32)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];f[j+20>>2]=0;f[j+24>>2]=0;f[j+28>>2]=0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)<e){c=h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;ZFa(a,c>>>0<d>>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0<c>>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function YFa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;c=f[a>>2]|0;e=(f[j>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)fob(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>1;c=i>>2>>>0<536870911?(c>>>0<d>>>0?d:c):1073741823;do if(!c)g=0;else if(c>>>0>1073741823)ud();else{g=Wpb(c<<2)|0;break}while(0);d=g+(e<<2)|0;e=d;i=g+(c<<2)|0;h=f[b>>2]|0;f[b>>2]=0;f[d>>2]=h;h=d+4|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;g=b;c=b}else{do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(b|0));d=e;g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)fh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;Zpb(g);return}function ZFa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){_Fa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;_Fa(a,b);return}function _Fa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();o=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function $Fa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=0;A=u;u=u+64|0;a:do if((f[a+12>>2]|0)!=2){i=f[c>>2]|0;j=f[c+4>>2]|0;if(j|0){h=i;while(1){if(f[h>>2]|0)break;h=h+8|0;if((h|0)==(i+(j<<3)|0|0))break a}z=f[b>>2]|0;nh[f[(f[z>>2]|0)+16>>2]&1023](z,0);u=A;return}}while(0);v=f[b>>2]|0;if(!v){HFa(a,c,d,e);u=A;return}m=f[(f[a+8>>2]|0)+220>>2]|0;t=(e?2:0)|d&1;x=f[a+4>>2]|0;q=d&1|0?x+128|0:x+160|0;f[A>>2]=t;f[b>>2]=0;f[(A+4|0)>>2]=v;f[(A+40|0)>>2]=0;z=(A+40|0)+4|0;f[z>>2]=0;f[(A+40|0)+8>>2]=0;f[(A+28|0)>>2]=0;y=(A+28|0)+4|0;f[y>>2]=0;f[(A+28|0)+8>>2]=0;j=f[c>>2]|0;e=f[(c+4|0)>>2]|0;h=1;if(h){h=0;if(!e)s=22;else h=1}if(h)if(1){i=j;do{b:do switch((GEa(a,m,A,i)|0)<<24>>24){case 0:if(!(f[i>>2]|0)){h=f[z>>2]|0;if((h|0)==(f[((A+40|0)+8|0)>>2]|0)){dB(A+40|0,i);break b}else{d=i;b=f[d+4>>2]|0;f[h>>2]=f[d>>2];f[h+4>>2]=b;f[z>>2]=(f[z>>2]|0)+8;break b}}else{h=f[y>>2]|0;if((h|0)==(f[((A+28|0)+8|0)>>2]|0)){dB(A+28|0,i);break b}else{d=i;b=f[d+4>>2]|0;f[h>>2]=f[d>>2];f[h+4>>2]=b;f[y>>2]=(f[y>>2]|0)+8;break b}}case 3:{h=f[z>>2]|0;if((h|0)==(f[((A+40|0)+8|0)>>2]|0)){dB(A+40|0,i);break b}else{d=i;b=f[d+4>>2]|0;f[h>>2]=f[d>>2];f[h+4>>2]=b;f[z>>2]=(f[z>>2]|0)+8;break b}}default:{}}while(0);i=i+8|0}while((i|0)!=(j+(e<<3)|0|0));h=1;if(h){h=0;if((f[(A+28|0)>>2]|0)==(f[y>>2]|0))s=22;else h=1}if(h)if(1){e=f[(q+24|0)>>2]|0;i=f[(q+28|0)>>2]|0;h=1;if(h){h=0;if(e>>>0<i>>>0){f[e>>2]=f[c>>2];f[e+4>>2]=f[(c+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(c+8|0)>>2];f[(e+12|0)>>2]=f[(c+12|0)>>2];f[e+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[e+20>>2]=t;f[(A+4|0)>>2]=0;f[e+24>>2]=v;f[(q+24|0)>>2]=(f[(q+24|0)>>2]|0)+28}else h=1}if(h)if(1){j=f[(q+20|0)>>2]|0;h=((e-j|0)/28|0)+1|0;if(h>>>0>153391689)fob(q+20|0);h=((i-j|0)/28|0)>>>0<76695844?(((i-j|0)/28|0)<<1>>>0<h>>>0?h:((i-j|0)/28|0)<<1):153391689;do if(!h)o=0;else if(h>>>0>153391689)ud();else{o=Wpb(h*28|0)|0;break}while(0);b=o+(((e-j|0)/28|0)*28|0)|0;d=o+(h*28|0)|0;f[b>>2]=f[c>>2];f[o+(((e-j|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[o+(((e-j|0)/28|0)*28|0)+16>>2]=0;f[o+(((e-j|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[o+(((e-j|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[o+(((e-j|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[o+(((e-j|0)/28|0)*28|0)+20>>2]=t;f[(A+4|0)>>2]=0;f[o+(((e-j|0)/28|0)*28|0)+24>>2]=v;e=f[(q+20|0)>>2]|0;h=f[(q+24|0)>>2]|0;if((h|0)==(e|0)){i=b;m=e;h=e}else{i=b;j=b;do{m=h;h=h+-28|0;f[j+-28>>2]=f[h>>2];f[j+-24>>2]=f[m+-24>>2];B=j+-20|0;f[B>>2]=0;o=j+-16|0;f[o>>2]=0;f[j+-12>>2]=0;f[B>>2]=f[(m+-20|0)>>2];f[o>>2]=f[(m+-16|0)>>2];f[j+-12>>2]=f[(m+-12|0)>>2];f[(m+-12|0)>>2]=0;f[(m+-16|0)>>2]=0;f[(m+-20|0)>>2]=0;f[h>>2]=0;f[j+-8>>2]=f[m+-8>>2];o=f[(m+-4|0)>>2]|0;f[(m+-4|0)>>2]=0;f[j+-4>>2]=o;j=i+-28|0;i=j}while((h|0)!=(e|0));m=f[(q+20|0)>>2]|0;h=f[(q+24|0)>>2]|0}f[(q+20|0)>>2]=i;f[(q+24|0)>>2]=b+28|0;f[(q+28|0)>>2]=d;b=m;if((h|0)!=(b|0)){d=h;do{B=d+-4|0;h=f[B>>2]|0;f[B>>2]=0;if(h|0)fh[f[(f[h>>2]|0)+4>>2]&2047](h);i=d+-20|0;h=f[i>>2]|0;e=d+-16|0;d=d+-28|0;if((h|0)==(f[e>>2]|0)){j=f[d>>2]|0;if(j){_pb(j);h=f[i>>2]|0}}if(h|0){i=f[e>>2]|0;if((i|0)!=(h|0))f[e>>2]=i+(~((i+-8-h|0)>>>3)<<3);Zpb(h)}}while((d|0)!=(b|0))}if(m|0)Zpb(m)}h=f[(q+24|0)>>2]|0;o=f[(A+28|0)>>2]|0;B=f[y>>2]|0;f[(A+8|0)>>2]=(o|0)==(B|0)?0:o;f[(A+8|0)+4>>2]=B-o>>3;f[(A+8|0)+8>>2]=o;f[((A+8|0)+12|0)>>2]=B;f[(A+8|0)+16>>2]=f[((A+28|0)+8|0)>>2];f[((A+28|0)+8|0)>>2]=0;f[y>>2]=0;f[(A+28|0)>>2]=0;h=f[h+-8>>2]|0;f[(A+52|0)>>2]=0;$Fa(a,A+52|0,A+8|0,h&1,(h&2|0)!=0);h=f[(A+52|0)>>2]|0;f[(A+52|0)>>2]=0;if(h|0)fh[f[(f[h>>2]|0)+4>>2]&2047](h);h=f[((A+8|0)+8|0)>>2]|0;if((h|0)==(f[((A+8|0)+12|0)>>2]|0)){i=f[(A+8|0)>>2]|0;if(i){_pb(i);h=f[((A+8|0)+8|0)>>2]|0}}if(h|0){i=f[((A+8|0)+12|0)>>2]|0;if((i|0)!=(h|0))f[((A+8|0)+12|0)>>2]=i+(~((i+-8-h|0)>>>3)<<3);Zpb(h)}}}do if((s|0)==22){if((f[(A+40|0)>>2]|0)!=(f[z>>2]|0)){AEa(A+4|0,A+40|0,c);break}d=f[(x+900|0)>>2]|0;f[(A+52|0)>>2]=d;h=1;if(h){h=0;if((d|0)==(f[x+504>>2]|0))nh[f[(f[v>>2]|0)+8>>2]&1023](v,c);else h=1}if(h)if(1){f[(x+900|0)>>2]=d+1|0;e=f[(q+4|0)>>2]|0;c:do if(!e){g=0;s=41}else{if(!((e+-1|0)&e))j=(e+-1|0)&(d+1|0);else if(e>>>0>(d+1|0)>>>0)j=d+1|0;else j=((d+1|0)>>>0)%(e>>>0)|0;h=f[(f[q>>2]|0)+(j<<2)>>2]|0;if(!h){g=j;s=41}else{if(!((e+-1|0)&e))while(1){h=f[h>>2]|0;if(!h){g=j;s=41;break c}B=f[h+4>>2]|0;if(!((B|0)==(d+1|0|0)|(B&(e+-1|0)|0)==(j|0))){g=j;s=41;break c}if((f[h+8>>2]|0)==(d+1|0|0)){p=h;break c}}while(1){h=f[h>>2]|0;if(!h){g=j;s=41;break c}i=f[h+4>>2]|0;if((i|0)!=(d+1|0|0)){if(i>>>0>=e>>>0)i=(i>>>0)%(e>>>0)|0;if((i|0)!=(j|0)){g=j;s=41;break c}}if((f[h+8>>2]|0)==(d+1|0|0)){p=h;break}}}}while(0);if((s|0)==41){j=Wpb(24)|0;f[j+8>>2]=d+1|0;f[j+12>>2]=0;f[j+16>>2]=0;f[j+20>>2]=0;f[j+4>>2]=d+1|0;f[j>>2]=0;k=+(((f[(q+12|0)>>2]|0)+1|0)>>>0);l=+n[q+16>>2];do if((e|0)==0|l*+(e>>>0)<k){g=~~+W(+(k/l))>>>0;jEa(q,(e<<1|(e>>>0<3|(e+-1&e|0)!=0)&1)>>>0<g>>>0?g:e<<1|(e>>>0<3|(e+-1&e|0)!=0)&1);g=f[(q+4|0)>>2]|0;if(!((g+-1|0)&g)){i=g;g=(g+-1|0)&(d+1|0);break}if(g>>>0>(d+1|0)>>>0){i=g;g=d+1|0}else{i=g;g=((d+1|0)>>>0)%(g>>>0)|0}}else i=e;while(0);g=(f[q>>2]|0)+(g<<2)|0;h=f[g>>2]|0;if(!h){f[j>>2]=f[(q+8|0)>>2];f[(q+8|0)>>2]=j;f[g>>2]=q+8|0;g=f[j>>2]|0;if(g|0){g=f[g+4>>2]|0;h=i+-1|0;if(!(h&i))g=g&h;else if(g>>>0>=i>>>0)g=(g>>>0)%(i>>>0)|0;r=(f[q>>2]|0)+(g<<2)|0;s=54}}else{f[j>>2]=f[h>>2];r=h;s=54}if((s|0)==54)f[r>>2]=j;f[(q+12|0)>>2]=(f[(q+12|0)>>2]|0)+1;p=j}o=p+12|0;a=p+16|0;j=f[a>>2]|0;m=p+20|0;h=f[m>>2]|0;g=1;if(g){g=0;if(j>>>0<h>>>0){f[j>>2]=f[c>>2];f[j+4>>2]=f[(c+4|0)>>2];f[(j+8|0)>>2]=0;f[(j+12|0)>>2]=0;f[j+16>>2]=0;f[(j+8|0)>>2]=f[(c+8|0)>>2];f[(j+12|0)>>2]=f[(c+12|0)>>2];f[j+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[j+20>>2]=t;f[(A+4|0)>>2]=0;f[j+24>>2]=v;f[a>>2]=(f[a>>2]|0)+28}else g=1}if(g)if(1){i=f[o>>2]|0;g=((j-i|0)/28|0)+1|0;if(g>>>0>153391689)fob(o);g=((h-i|0)/28|0)>>>0<76695844?(((h-i|0)/28|0)<<1>>>0<g>>>0?g:((h-i|0)/28|0)<<1):153391689;do if(!g)w=0;else if(g>>>0>153391689)ud();else{w=Wpb(g*28|0)|0;break}while(0);d=w+(((j-i|0)/28|0)*28|0)|0;e=w+(g*28|0)|0;f[d>>2]=f[c>>2];f[w+(((j-i|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[w+(((j-i|0)/28|0)*28|0)+16>>2]=0;f[w+(((j-i|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[w+(((j-i|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[w+(((j-i|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[w+(((j-i|0)/28|0)*28|0)+20>>2]=t;f[(A+4|0)>>2]=0;f[w+(((j-i|0)/28|0)*28|0)+24>>2]=v;j=f[o>>2]|0;g=f[a>>2]|0;if((g|0)==(j|0)){h=d;b=j;g=j}else{h=d;i=d;do{w=g;g=g+-28|0;f[i+-28>>2]=f[g>>2];f[i+-24>>2]=f[w+-24>>2];c=i+-20|0;f[c>>2]=0;B=i+-16|0;f[B>>2]=0;f[i+-12>>2]=0;f[c>>2]=f[(w+-20|0)>>2];f[B>>2]=f[(w+-16|0)>>2];f[i+-12>>2]=f[(w+-12|0)>>2];f[(w+-12|0)>>2]=0;f[(w+-16|0)>>2]=0;f[(w+-20|0)>>2]=0;f[g>>2]=0;f[i+-8>>2]=f[w+-8>>2];B=f[(w+-4|0)>>2]|0;f[(w+-4|0)>>2]=0;f[i+-4>>2]=B;i=h+-28|0;h=i}while((g|0)!=(j|0));b=f[o>>2]|0;g=f[a>>2]|0}f[o>>2]=h;f[a>>2]=d+28|0;f[m>>2]=e;d=b;if((g|0)!=(d|0)){e=g;do{B=e+-4|0;g=f[B>>2]|0;f[B>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);h=e+-20|0;g=f[h>>2]|0;j=e+-16|0;e=e+-28|0;if((g|0)==(f[j>>2]|0)){i=f[e>>2]|0;if(i){_pb(i);g=f[h>>2]|0}}if(g|0){h=f[j>>2]|0;if((h|0)!=(g|0))f[j>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}}while((e|0)!=(d|0))}if(b|0)Zpb(b)}B=aGa(x+508|0,A+52|0)|0;f[B>>2]=3}}while(0);g=f[(A+28|0)>>2]|0;if(g|0){h=f[y>>2]|0;if((h|0)!=(g|0))f[y>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}g=f[(A+40|0)>>2]|0;if(g|0){h=f[z>>2]|0;if((h|0)!=(g|0))f[z>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}g=f[(A+4|0)>>2]|0;f[(A+4|0)>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);u=A;return}function aGa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0<j>>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=Wpb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)<d){b=j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;bGa(a,b>>>0<c>>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0<b>>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function bGa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=Meb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){cGa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Meb(c)|0;b=b>>>0<c>>>0?c:b;if(b>>>0>=d>>>0)return;cGa(a,b);return}function cGa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Zpb(c);f[d>>2]=0;return}if(b>>>0>1073741823)ud();m=Wpb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Zpb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0<b>>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function dGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=0;z=u;u=u+64|0;a:do if((f[a+12>>2]|0)!=2){g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}y=f[b>>2]|0;nh[f[(f[y>>2]|0)+16>>2]&1023](y,0);u=z;return}}while(0);t=f[b>>2]|0;if(!t){NFa(a,c,d);u=z;return}i=f[(f[a+8>>2]|0)+220>>2]|0;w=f[a+4>>2]|0;r=d&1|0?w+64|0:w+96|0;f[b>>2]=0;f[(z+20|0)>>2]=t;f[(z+36|0)>>2]=0;y=(z+36|0)+4|0;f[y>>2]=0;f[(z+36|0)+8>>2]=0;f[(z+24|0)>>2]=0;x=(z+24|0)+4|0;f[x>>2]=0;f[(z+24|0)+8>>2]=0;h=f[c>>2]|0;b=f[(c+4|0)>>2]|0;e=1;if(e){e=0;if(!b)s=22;else e=1}if(e)if(1){g=h;do{b:do switch((DEa(a,i,d,g)|0)<<24>>24){case 0:if(!(f[g>>2]|0)){e=f[y>>2]|0;if((e|0)==(f[((z+36|0)+8|0)>>2]|0)){dB(z+36|0,g);break b}else{A=g;j=f[A+4>>2]|0;f[e>>2]=f[A>>2];f[e+4>>2]=j;f[y>>2]=(f[y>>2]|0)+8;break b}}else{e=f[x>>2]|0;if((e|0)==(f[((z+24|0)+8|0)>>2]|0)){dB(z+24|0,g);break b}else{j=g;A=f[j+4>>2]|0;f[e>>2]=f[j>>2];f[e+4>>2]=A;f[x>>2]=(f[x>>2]|0)+8;break b}}case 3:{e=f[y>>2]|0;if((e|0)==(f[((z+36|0)+8|0)>>2]|0)){dB(z+36|0,g);break b}else{j=g;A=f[j+4>>2]|0;f[e>>2]=f[j>>2];f[e+4>>2]=A;f[y>>2]=(f[y>>2]|0)+8;break b}}default:{}}while(0);g=g+8|0}while((g|0)!=(h+(b<<3)|0|0));e=1;if(e){e=0;if((f[(z+24|0)>>2]|0)==(f[x>>2]|0))s=22;else e=1}if(e)if(1){b=f[(r+24|0)>>2]|0;g=f[(r+28|0)>>2]|0;e=1;if(e){e=0;if(b>>>0<g>>>0){f[b>>2]=f[c>>2];f[b+4>>2]=f[(c+4|0)>>2];f[(b+8|0)>>2]=0;f[(b+12|0)>>2]=0;f[b+16>>2]=0;f[(b+8|0)>>2]=f[(c+8|0)>>2];f[(b+12|0)>>2]=f[(c+12|0)>>2];f[b+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[b+20>>2]=d;f[(z+20|0)>>2]=0;f[b+24>>2]=t;f[(r+24|0)>>2]=(f[(r+24|0)>>2]|0)+28}else e=1}if(e)if(1){h=f[(r+20|0)>>2]|0;e=((b-h|0)/28|0)+1|0;if(e>>>0>153391689)fob(r+20|0);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0<e>>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)m=0;else if(e>>>0>153391689)ud();else{m=Wpb(e*28|0)|0;break}while(0);j=m+(((b-h|0)/28|0)*28|0)|0;i=m+(e*28|0)|0;f[j>>2]=f[c>>2];f[m+(((b-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+16>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+20>>2]=d;f[(z+20|0)>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+24>>2]=t;b=f[(r+20|0)>>2]|0;e=f[(r+24|0)>>2]|0;if((e|0)==(b|0)){g=j;m=b;e=b}else{g=j;h=j;do{m=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[m+-24>>2];B=h+-20|0;f[B>>2]=0;A=h+-16|0;f[A>>2]=0;f[h+-12>>2]=0;f[B>>2]=f[(m+-20|0)>>2];f[A>>2]=f[(m+-16|0)>>2];f[h+-12>>2]=f[(m+-12|0)>>2];f[(m+-12|0)>>2]=0;f[(m+-16|0)>>2]=0;f[(m+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[m+-8>>2];A=f[(m+-4|0)>>2]|0;f[(m+-4|0)>>2]=0;f[h+-4>>2]=A;h=g+-28|0;g=h}while((e|0)!=(b|0));m=f[(r+20|0)>>2]|0;e=f[(r+24|0)>>2]|0}f[(r+20|0)>>2]=g;f[(r+24|0)>>2]=j+28|0;f[(r+28|0)>>2]=i;j=m;if((e|0)!=(j|0)){i=e;do{B=i+-4|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);g=i+-20|0;e=f[g>>2]|0;b=i+-16|0;i=i+-28|0;if((e|0)==(f[b>>2]|0)){h=f[i>>2]|0;if(h){_pb(h);e=f[g>>2]|0}}if(e|0){g=f[b>>2]|0;if((g|0)!=(e|0))f[b>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}}while((i|0)!=(j|0))}if(m|0)Zpb(m)}e=f[(r+24|0)>>2]|0;A=f[(z+24|0)>>2]|0;B=f[x>>2]|0;f[z>>2]=(A|0)==(B|0)?0:A;f[z+4>>2]=B-A>>3;f[z+8>>2]=A;f[(z+12|0)>>2]=B;f[z+16>>2]=f[((z+24|0)+8|0)>>2];f[((z+24|0)+8|0)>>2]=0;f[x>>2]=0;f[(z+24|0)>>2]=0;f[(z+48|0)>>2]=0;dGa(a,z+48|0,z,f[e+-8>>2]|0);e=f[(z+48|0)>>2]|0;f[(z+48|0)>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(z+8|0)>>2]|0;if((e|0)==(f[(z+12|0)>>2]|0)){g=f[z>>2]|0;if(g){_pb(g);e=f[(z+8|0)>>2]|0}}if(e|0){g=f[(z+12|0)>>2]|0;if((g|0)!=(e|0))f[(z+12|0)>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}}}do if((s|0)==22){if((f[(z+36|0)>>2]|0)!=(f[y>>2]|0)){AEa(z+20|0,z+36|0,c);break}i=f[(w+900|0)>>2]|0;f[(z+48|0)>>2]=i;e=1;if(e){e=0;if((i|0)==(f[w+504>>2]|0))nh[f[(f[t>>2]|0)+8>>2]&1023](t,c);else e=1}if(e)if(1){f[(w+900|0)>>2]=i+1|0;h=f[(r+4|0)>>2]|0;c:do if(!h){o=0;s=41}else{if(!((h+-1|0)&h))b=(h+-1|0)&(i+1|0);else if(h>>>0>(i+1|0)>>>0)b=i+1|0;else b=((i+1|0)>>>0)%(h>>>0)|0;e=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!e){o=b;s=41}else{if(!((h+-1|0)&h))while(1){e=f[e>>2]|0;if(!e){o=b;s=41;break c}B=f[e+4>>2]|0;if(!((B|0)==(i+1|0|0)|(B&(h+-1|0)|0)==(b|0))){o=b;s=41;break c}if((f[e+8>>2]|0)==(i+1|0|0)){q=e;break c}}while(1){e=f[e>>2]|0;if(!e){o=b;s=41;break c}g=f[e+4>>2]|0;if((g|0)!=(i+1|0|0)){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(b|0)){o=b;s=41;break c}}if((f[e+8>>2]|0)==(i+1|0|0)){q=e;break}}}}while(0);if((s|0)==41){b=Wpb(24)|0;f[b+8>>2]=i+1|0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+4>>2]=i+1|0;f[b>>2]=0;k=+(((f[(r+12|0)>>2]|0)+1|0)>>>0);l=+n[r+16>>2];do if((h|0)==0|l*+(h>>>0)<k){e=~~+W(+(k/l))>>>0;gEa(r,(h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1)>>>0<e>>>0?e:h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1);e=f[(r+4|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(i+1|0);break}if(e>>>0>(i+1|0)>>>0){h=e;e=i+1|0}else{h=e;e=((i+1|0)>>>0)%(e>>>0)|0}}else e=o;while(0);e=(f[r>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[b>>2]=f[(r+8|0)>>2];f[(r+8|0)>>2]=b;f[e>>2]=r+8|0;e=f[b>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;p=(f[r>>2]|0)+(e<<2)|0;s=54}}else{f[b>>2]=f[g>>2];p=g;s=54}if((s|0)==54)f[p>>2]=b;f[(r+12|0)>>2]=(f[(r+12|0)>>2]|0)+1;q=b}o=q+12|0;p=q+16|0;b=f[p>>2]|0;a=q+20|0;g=f[a>>2]|0;e=1;if(e){e=0;if(b>>>0<g>>>0){f[b>>2]=f[c>>2];f[b+4>>2]=f[(c+4|0)>>2];f[(b+8|0)>>2]=0;f[(b+12|0)>>2]=0;f[b+16>>2]=0;f[(b+8|0)>>2]=f[(c+8|0)>>2];f[(b+12|0)>>2]=f[(c+12|0)>>2];f[b+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[b+20>>2]=d;f[(z+20|0)>>2]=0;f[b+24>>2]=t;f[p>>2]=(f[p>>2]|0)+28}else e=1}if(e)if(1){h=f[o>>2]|0;e=((b-h|0)/28|0)+1|0;if(e>>>0>153391689)fob(o);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0<e>>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)v=0;else if(e>>>0>153391689)ud();else{v=Wpb(e*28|0)|0;break}while(0);j=v+(((b-h|0)/28|0)*28|0)|0;i=v+(e*28|0)|0;f[j>>2]=f[c>>2];f[v+(((b-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+16>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+20>>2]=d;f[(z+20|0)>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+24>>2]=t;b=f[o>>2]|0;e=f[p>>2]|0;if((e|0)==(b|0)){g=j;m=b;e=b}else{g=j;h=j;do{A=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[A+-24>>2];d=h+-20|0;f[d>>2]=0;B=h+-16|0;f[B>>2]=0;f[h+-12>>2]=0;f[d>>2]=f[(A+-20|0)>>2];f[B>>2]=f[(A+-16|0)>>2];f[h+-12>>2]=f[(A+-12|0)>>2];f[(A+-12|0)>>2]=0;f[(A+-16|0)>>2]=0;f[(A+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[A+-8>>2];B=f[(A+-4|0)>>2]|0;f[(A+-4|0)>>2]=0;f[h+-4>>2]=B;h=g+-28|0;g=h}while((e|0)!=(b|0));m=f[o>>2]|0;e=f[p>>2]|0}f[o>>2]=g;f[p>>2]=j+28|0;f[a>>2]=i;j=m;if((e|0)!=(j|0)){i=e;do{B=i+-4|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);g=i+-20|0;e=f[g>>2]|0;b=i+-16|0;i=i+-28|0;if((e|0)==(f[b>>2]|0)){h=f[i>>2]|0;if(h){_pb(h);e=f[g>>2]|0}}if(e|0){g=f[b>>2]|0;if((g|0)!=(e|0))f[b>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}}while((i|0)!=(j|0))}if(m|0)Zpb(m)}B=aGa(w+508|0,z+48|0)|0;f[B>>2]=2}}while(0);e=f[(z+24|0)>>2]|0;if(e|0){g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(z+36|0)>>2]|0;if(e|0){g=f[y>>2]|0;if((g|0)!=(e|0))f[y>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(z+20|0)>>2]|0;f[(z+20|0)>>2]=0;if(!e){u=z;return}fh[f[(f[e>>2]|0)+4>>2]&2047](e);u=z;return}function eGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;r=0;z=u;u=u+64|0;a:do if((f[a+12>>2]|0)!=2){h=f[c>>2]|0;i=f[c+4>>2]|0;if(i|0){g=h;while(1){if(f[g>>2]|0)break;g=g+8|0;if((g|0)==(h+(i<<3)|0|0))break a}y=f[b>>2]|0;nh[f[(f[y>>2]|0)+16>>2]&1023](y,0);u=z;return}}while(0);t=f[b>>2]|0;if(!t){UFa(a,c,d);u=z;return}l=f[(f[a+8>>2]|0)+220>>2]|0;s=d?2:0;w=f[a+4>>2]|0;f[b>>2]=0;f[(z+20|0)>>2]=t;f[(z+36|0)>>2]=0;y=(z+36|0)+4|0;f[y>>2]=0;f[(z+36|0)+8>>2]=0;f[(z+24|0)>>2]=0;x=(z+24|0)+4|0;f[x>>2]=0;f[(z+24|0)+8>>2]=0;i=f[c>>2]|0;d=f[(c+4|0)>>2]|0;g=1;if(g){g=0;if(!d)r=29;else g=1}if(g)if(1){h=i;do{owa(z+48|0,l,h);g=f[(z+48|0)>>2]|0;if(!g){m=zEa(a,h,10)|0;r=13}else if(ala(g,l,s>>>1,0)|0){g=f[((z+48|0)+4|0)>>2]|0;if(g|0)Ppb(g)}else{m=0;r=13}b:do if((r|0)==13){r=0;g=f[((z+48|0)+4|0)>>2]|0;if(g|0)Ppb(g);switch(m<<24>>24){case 0:break;case 3:{g=f[y>>2]|0;if((g|0)==(f[((z+36|0)+8|0)>>2]|0)){dB(z+36|0,h);break b}else{A=h;b=f[A+4>>2]|0;f[g>>2]=f[A>>2];f[g+4>>2]=b;f[y>>2]=(f[y>>2]|0)+8;break b}}default:break b}if(!(f[h>>2]|0)){g=f[y>>2]|0;if((g|0)==(f[((z+36|0)+8|0)>>2]|0)){dB(z+36|0,h);break}else{b=h;A=f[b+4>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=A;f[y>>2]=(f[y>>2]|0)+8;break}}else{g=f[x>>2]|0;if((g|0)==(f[((z+24|0)+8|0)>>2]|0)){dB(z+24|0,h);break}else{b=h;A=f[b+4>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=A;f[x>>2]=(f[x>>2]|0)+8;break}}}while(0);h=h+8|0}while((h|0)!=(i+(d<<3)|0|0));g=1;if(g){g=0;if((f[(z+24|0)>>2]|0)==(f[x>>2]|0))r=29;else g=1}if(g)if(1){d=f[(w+24|0)>>2]|0;h=f[(w+28|0)>>2]|0;g=1;if(g){g=0;if(d>>>0<h>>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[(c+4|0)>>2];f[(d+8|0)>>2]=0;f[(d+12|0)>>2]=0;f[d+16>>2]=0;f[(d+8|0)>>2]=f[(c+8|0)>>2];f[(d+12|0)>>2]=f[(c+12|0)>>2];f[d+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[d+20>>2]=s;f[(z+20|0)>>2]=0;f[d+24>>2]=t;f[(w+24|0)>>2]=(f[(w+24|0)>>2]|0)+28}else g=1}if(g)if(1){i=f[(w+20|0)>>2]|0;g=((d-i|0)/28|0)+1|0;if(g>>>0>153391689)fob(w+20|0);g=((h-i|0)/28|0)>>>0<76695844?(((h-i|0)/28|0)<<1>>>0<g>>>0?g:((h-i|0)/28|0)<<1):153391689;do if(!g)o=0;else if(g>>>0>153391689)ud();else{o=Wpb(g*28|0)|0;break}while(0);l=o+(((d-i|0)/28|0)*28|0)|0;b=o+(g*28|0)|0;f[l>>2]=f[c>>2];f[o+(((d-i|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+16>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+20>>2]=s;f[(z+20|0)>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+24>>2]=t;d=f[(w+20|0)>>2]|0;g=f[(w+24|0)>>2]|0;if((g|0)==(d|0)){h=l;m=d;g=d}else{h=l;i=l;do{o=g;g=g+-28|0;f[i+-28>>2]=f[g>>2];f[i+-24>>2]=f[o+-24>>2];m=i+-20|0;f[m>>2]=0;A=i+-16|0;f[A>>2]=0;f[i+-12>>2]=0;f[m>>2]=f[(o+-20|0)>>2];f[A>>2]=f[(o+-16|0)>>2];f[i+-12>>2]=f[(o+-12|0)>>2];f[(o+-12|0)>>2]=0;f[(o+-16|0)>>2]=0;f[(o+-20|0)>>2]=0;f[g>>2]=0;f[i+-8>>2]=f[o+-8>>2];A=f[(o+-4|0)>>2]|0;f[(o+-4|0)>>2]=0;f[i+-4>>2]=A;i=h+-28|0;h=i}while((g|0)!=(d|0));m=f[(w+20|0)>>2]|0;g=f[(w+24|0)>>2]|0}f[(w+20|0)>>2]=h;f[(w+24|0)>>2]=l+28|0;f[(w+28|0)>>2]=b;l=m;if((g|0)!=(l|0)){b=g;do{A=b+-4|0;g=f[A>>2]|0;f[A>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);h=b+-20|0;g=f[h>>2]|0;d=b+-16|0;b=b+-28|0;if((g|0)==(f[d>>2]|0)){i=f[b>>2]|0;if(i){_pb(i);g=f[h>>2]|0}}if(g|0){h=f[d>>2]|0;if((h|0)!=(g|0))f[d>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}}while((b|0)!=(l|0))}if(m|0)Zpb(m)}g=f[(w+24|0)>>2]|0;o=f[(z+24|0)>>2]|0;A=f[x>>2]|0;f[z>>2]=(o|0)==(A|0)?0:o;f[z+4>>2]=A-o>>3;f[z+8>>2]=o;f[(z+12|0)>>2]=A;f[z+16>>2]=f[((z+24|0)+8|0)>>2];f[((z+24|0)+8|0)>>2]=0;f[x>>2]=0;f[(z+24|0)>>2]=0;g=(f[g+-8>>2]&2|0)!=0;f[(z+48|0)>>2]=0;eGa(a,z+48|0,z,g);g=f[(z+48|0)>>2]|0;f[(z+48|0)>>2]=0;if(g|0)fh[f[(f[g>>2]|0)+4>>2]&2047](g);g=f[(z+8|0)>>2]|0;if((g|0)==(f[(z+12|0)>>2]|0)){h=f[z>>2]|0;if(h){_pb(h);g=f[(z+8|0)>>2]|0}}if(g|0){h=f[(z+12|0)>>2]|0;if((h|0)!=(g|0))f[(z+12|0)>>2]=h+(~((h+-8-g|0)>>>3)<<3);Zpb(g)}}}do if((r|0)==29){if((f[(z+36|0)>>2]|0)!=(f[y>>2]|0)){AEa(z+20|0,z+36|0,c);break}b=f[(w+900|0)>>2]|0;f[(z+48|0)>>2]=b;g=1;if(g){g=0;if((b|0)==(f[w+504>>2]|0))nh[f[(f[t>>2]|0)+8>>2]&1023](t,c);else g=1}if(g)if(1){f[(w+900|0)>>2]=b+1|0;d=f[(w+4|0)>>2]|0;c:do if(!d){e=0;r=48}else{if(!((d+-1|0)&d))i=(d+-1|0)&(b+1|0);else if(d>>>0>(b+1|0)>>>0)i=b+1|0;else i=((b+1|0)>>>0)%(d>>>0)|0;g=f[(f[w>>2]|0)+(i<<2)>>2]|0;if(!g){e=i;r=48}else{if(!((d+-1|0)&d))while(1){g=f[g>>2]|0;if(!g){e=i;r=48;break c}A=f[g+4>>2]|0;if(!((A|0)==(b+1|0|0)|(A&(d+-1|0)|0)==(i|0))){e=i;r=48;break c}if((f[g+8>>2]|0)==(b+1|0|0)){p=g;break c}}while(1){g=f[g>>2]|0;if(!g){e=i;r=48;break c}h=f[g+4>>2]|0;if((h|0)!=(b+1|0|0)){if(h>>>0>=d>>>0)h=(h>>>0)%(d>>>0)|0;if((h|0)!=(i|0)){e=i;r=48;break c}}if((f[g+8>>2]|0)==(b+1|0|0)){p=g;break}}}}while(0);if((r|0)==48){i=Wpb(24)|0;f[i+8>>2]=b+1|0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+4>>2]=b+1|0;f[i>>2]=0;j=+(((f[(w+12|0)>>2]|0)+1|0)>>>0);k=+n[w+16>>2];do if((d|0)==0|k*+(d>>>0)<j){e=~~+W(+(j/k))>>>0;lEa(w,(d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1)>>>0<e>>>0?e:d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1);e=f[(w+4|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(b+1|0);break}if(e>>>0>(b+1|0)>>>0){h=e;e=b+1|0}else{h=e;e=((b+1|0)>>>0)%(e>>>0)|0}}else h=d;while(0);e=(f[w>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[i>>2]=f[(w+8|0)>>2];f[(w+8|0)>>2]=i;f[e>>2]=w+8|0;e=f[i>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;q=(f[w>>2]|0)+(e<<2)|0;r=61}}else{f[i>>2]=f[g>>2];q=g;r=61}if((r|0)==61)f[q>>2]=i;f[(w+12|0)>>2]=(f[(w+12|0)>>2]|0)+1;p=i}o=p+12|0;a=p+16|0;i=f[a>>2]|0;m=p+20|0;g=f[m>>2]|0;e=1;if(e){e=0;if(i>>>0<g>>>0){f[i>>2]=f[c>>2];f[i+4>>2]=f[(c+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(c+8|0)>>2];f[(i+12|0)>>2]=f[(c+12|0)>>2];f[i+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[i+20>>2]=s;f[(z+20|0)>>2]=0;f[i+24>>2]=t;f[a>>2]=(f[a>>2]|0)+28}else e=1}if(e)if(1){h=f[o>>2]|0;e=((i-h|0)/28|0)+1|0;if(e>>>0>153391689)fob(o);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0<e>>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)v=0;else if(e>>>0>153391689)ud();else{v=Wpb(e*28|0)|0;break}while(0);b=v+(((i-h|0)/28|0)*28|0)|0;d=v+(e*28|0)|0;f[b>>2]=f[c>>2];f[v+(((i-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+16>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+20>>2]=s;f[(z+20|0)>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+24>>2]=t;i=f[o>>2]|0;e=f[a>>2]|0;if((e|0)==(i|0)){g=b;l=i;e=i}else{g=b;h=b;do{v=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[v+-24>>2];c=h+-20|0;f[c>>2]=0;A=h+-16|0;f[A>>2]=0;f[h+-12>>2]=0;f[c>>2]=f[(v+-20|0)>>2];f[A>>2]=f[(v+-16|0)>>2];f[h+-12>>2]=f[(v+-12|0)>>2];f[(v+-12|0)>>2]=0;f[(v+-16|0)>>2]=0;f[(v+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[v+-8>>2];A=f[(v+-4|0)>>2]|0;f[(v+-4|0)>>2]=0;f[h+-4>>2]=A;h=g+-28|0;g=h}while((e|0)!=(i|0));l=f[o>>2]|0;e=f[a>>2]|0}f[o>>2]=g;f[a>>2]=b+28|0;f[m>>2]=d;b=l;if((e|0)!=(b|0)){d=e;do{A=d+-4|0;e=f[A>>2]|0;f[A>>2]=0;if(e|0)fh[f[(f[e>>2]|0)+4>>2]&2047](e);g=d+-20|0;e=f[g>>2]|0;i=d+-16|0;d=d+-28|0;if((e|0)==(f[i>>2]|0)){h=f[d>>2]|0;if(h){_pb(h);e=f[g>>2]|0}}if(e|0){g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}}while((d|0)!=(b|0))}if(l|0)Zpb(l)}A=aGa(w+508|0,z+48|0)|0;f[A>>2]=0}}while(0);e=f[(z+24|0)>>2]|0;if(e|0){g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(z+36|0)>>2]|0;if(e|0){g=f[y>>2]|0;if((g|0)!=(e|0))f[y>>2]=g+(~((g+-8-e|0)>>>3)<<3);Zpb(e)}e=f[(z+20|0)>>2]|0;f[(z+20|0)>>2]=0;if(!e){u=z;return}fh[f[(f[e>>2]|0)+4>>2]&2047](e);u=z;return}function fGa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;nh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=VCa(r+860|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+68>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+64|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+752|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<c>>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+748|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=Wpb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+760|0)>>2]|0)+1|0)>>>0);o=+n[(r+764|0)>>2];do if((c|0)==0|o*+(c>>>0)<m){e=~~+W(+(m/o))>>>0;Tka(r+748|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0<e>>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+752|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0<e>>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+748|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+756|0)>>2];f[(r+756|0)>>2]=j;f[e>>2]=r+756|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+748|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+760|0)>>2]=(f[(r+760|0)>>2]|0)+1}p=TCa(d+64|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+220>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;gGa(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function gGa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{kwa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=zEa(m,e,3)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)Ppb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){dB(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){dB(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+216|0)>>2]|0;d=f[(t+220|0)>>2]|0;c=1;if(c){c=0;if(i>>>0<d>>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+216|0)>>2]=(f[(t+216|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+212|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)fob(t+212|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0<c>>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)ud();else{l=Wpb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+212|0)>>2]|0;c=f[(t+216|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+212|0)>>2]|0;c=f[(t+216|0)>>2]|0}f[(t+212|0)>>2]=d;f[(t+216|0)>>2]=k+28|0;f[(t+220|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){_pb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}while((j|0)!=(k|0))}if(l|0)Zpb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;fGa(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)fh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){_pb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);Zpb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){AEa(a+20|0,a+36|0,q);break}j=f[(t+900|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+504>>2]|0))nh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+900|0)>>2]=j+1|0;i=f[(t+196|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+192|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=Wpb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+204|0)>>2]|0)+1|0)>>>0);h=+n[t+208>>2];do if((i|0)==0|h*+(i>>>0)<g){b=~~+W(+(g/h))>>>0;dEa(t+192|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0<b>>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+196|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+192|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+200|0)>>2];f[(t+200|0)>>2]=e;f[b>>2]=t+200|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+192|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+204|0)>>2]=(f[(t+204|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0<c>>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)fob(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0<b>>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)ud();else{s=Wpb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)fh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){_pb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}}while((i|0)!=(j|0))}if(k|0)Zpb(k)}A=aGa(t+508|0,a+48|0)|0;f[A>>2]=4}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);Zpb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}fh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}
function hnb(a,c,e,g,i,j,k,l){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0;f[e>>2]=a;f[j>>2]=g;if(!(l&4))g=c;else{a=f[e>>2]|0;g=c;if((g-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69)if((b[a+2>>0]|0)==-65)f[e>>2]=a+3}r=i;a:while(1){a=f[e>>2]|0;l=a>>>0<c>>>0;if(!l){s=41;break}q=f[j>>2]|0;if(q>>>0>=i>>>0){s=41;break}n=b[a>>0]|0;p=n&255;if(p>>>0>k>>>0){a=2;break}do if(n<<24>>24>-1){d[q>>1]=n&255;l=1}else{if((n&255)<194){a=2;break a}if((n&255)<224){if((g-a|0)<2){a=1;break a}l=h[a+1>>0]|0;if((l&192|0)!=128){a=2;break a}l=l&63|p<<6&1984;if(l>>>0>k>>>0){a=2;break a}d[q>>1]=l;l=2;break}if((n&255)<240){if((g-a|0)<3){a=1;break a}m=b[a+1>>0]|0;l=b[a+2>>0]|0;switch(n<<24>>24){case -32:{if((m&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((m&-32)<<24>>24!=-128){a=2;break a}break}default:if((m&-64)<<24>>24!=-128){a=2;break a}}l=l&255;if((l&192|0)!=128){a=2;break a}l=(m&63)<<6|p<<12|l&63;if((l&65535)>>>0>k>>>0){a=2;break a}d[q>>1]=l;l=3;break}if((n&255)>=245){a=2;break a}if((g-a|0)<4){a=1;break a}m=b[a+1>>0]|0;l=b[a+2>>0]|0;a=b[a+3>>0]|0;switch(n<<24>>24){case -16:{if((m+112&255)>=48){a=2;break a}break}case -12:{if((m&-16)<<24>>24!=-128){a=2;break a}break}default:if((m&-64)<<24>>24!=-128){a=2;break a}}o=l&255;if((o&192|0)!=128){a=2;break a}a=a&255;if((a&192|0)!=128){a=2;break a}if((r-q|0)<4){a=1;break a}n=p&7;l=m&255;m=o<<6;a=a&63;if((l<<12&258048|n<<18|m&4032|a)>>>0>k>>>0){a=2;break a}d[q>>1]=l<<2&60|o>>>4&3|((l>>>4&3|n<<2)<<6)+16320|55296;l=q+2|0;f[j>>2]=l;d[l>>1]=a|m&960|56320;l=4;a=f[e>>2]|0}while(0);f[e>>2]=a+l;f[j>>2]=(f[j>>2]|0)+2}if((s|0)==41)a=l&1;return a|0}function inb(a,c,e,g,h,i,k,l){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;k=k|0;l=l|0;var m=0,n=0;f[e>>2]=a;f[i>>2]=g;if(!(l&2))m=4;else if((h-g|0)<3)a=1;else{f[i>>2]=g+1;b[g>>0]=-17;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=-69;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=-65;m=4}a:do if((m|0)==4){n=c;a=f[e>>2]|0;while(1){if(a>>>0>=c>>>0){a=0;break a}g=d[a>>1]|0;m=g&65535;if(m>>>0>k>>>0){a=2;break a}do if((g&65535)<128){a=f[i>>2]|0;if((h-a|0)<1){a=1;break a}f[i>>2]=a+1;b[a>>0]=g}else{if((g&65535)<2048){a=f[i>>2]|0;if((h-a|0)<2){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>6|192;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((g&65535)<55296){a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>12|224;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>6&63|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((g&65535)>=56320){if((g&65535)<57344){a=2;break a}a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>12|224;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>6&63|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((n-a|0)<4){a=1;break a}a=a+2|0;g=j[a>>1]|0;if((g&64512|0)!=56320){a=2;break a}if((h-(f[i>>2]|0)|0)<4){a=1;break a}l=m&960;if(((l<<10)+65536|m<<10&64512|g&1023)>>>0>k>>>0){a=2;break a}f[e>>2]=a;a=(l>>>6)+1|0;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=a>>>2|240;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>2&15|a<<4&48|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m<<4&48|g>>>6&15|128;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=g&63|128}while(0);a=(f[e>>2]|0)+2|0;f[e>>2]=a}}while(0);return a|0}function jnb(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=41980;d=a+8|0;e=a+12|0;c=0;while(1){b=f[d>>2]|0;if(c>>>0>=(f[e>>2]|0)-b>>2>>>0)break;b=f[b+(c<<2)>>2]|0;if(b|0)Lpb(b)|0;c=c+1|0}eqb(a+144|0);lnb(d);ghb(a);return}function knb(a){a=a|0;jnb(a);Zpb(a);return}function lnb(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a>>2]|0;do if(c|0){d=a+4|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}if((c|0)==(a+16|0)){b[a+128>>0]=0;break}else{Zpb(c);break}}while(0);return}function mnb(a){a=a|0;var c=0;f[a>>2]=42e3;c=f[a+8>>2]|0;if(c|0)if(b[a+12>>0]|0)_pb(c);ghb(a);return}function nnb(a){a=a|0;mnb(a);Zpb(a);return}function onb(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){b=(xnb()|0)+((b&255)<<2)|0;b=f[b>>2]&255}return b|0}function pnb(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1){a=xnb()|0;a=f[a+(b[c>>0]<<2)>>2]&255}b[c>>0]=a;c=c+1|0}return d|0}function qnb(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){b=(wnb()|0)+(b<<24>>24<<2)|0;b=f[b>>2]&255}return b|0}function rnb(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1){a=wnb()|0;a=f[a+(b[c>>0]<<2)>>2]&255}b[c>>0]=a;c=c+1|0}return d|0}function snb(a,b){a=a|0;b=b|0;return b|0}function tnb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;b[e>>0]=b[c>>0]|0;e=e+1|0;c=c+1|0}return d|0}function unb(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function vnb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;b[f>>0]=a<<24>>24>-1?a:e;f=f+1|0;c=c+1|0}return d|0}function wnb(){var a=0;a=Adb()|0;return f[a>>2]|0}function xnb(){var a=0;a=Ddb()|0;return f[a>>2]|0}function ynb(){var a=0;a=Hdb()|0;return f[a>>2]|0}function znb(a){a=a|0;f[a>>2]=42052;eqb(a+12|0);ghb(a);return}function Anb(a){a=a|0;znb(a);Zpb(a);return}function Bnb(a){a=a|0;return b[a+8>>0]|0}function Cnb(a){a=a|0;return b[a+9>>0]|0}function Dnb(a,b){a=a|0;b=b|0;cqb(a,b+12|0);return}function Enb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=Vfb(207423)|0;if(e>>>0>4294967279)aqb(a);if(e>>>0<11){b[a+11>>0]=e;c=a}else{h=e+16&-16;c=Wpb(h)|0;f[a>>2]=c;f[a+8>>2]=h|-2147483648;f[a+4>>2]=e}hfb(c,207423,e)|0;b[d>>0]=0;Wfb(c+e|0,d);u=g;return}function Fnb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=Vfb(207417)|0;if(e>>>0>4294967279)aqb(a);if(e>>>0<11){b[a+11>>0]=e;c=a}else{h=e+16&-16;c=Wpb(h)|0;f[a>>2]=c;f[a+8>>2]=h|-2147483648;f[a+4>>2]=e}hfb(c,207417,e)|0;b[d>>0]=0;Wfb(c+e|0,d);u=g;return}function Gnb(a){a=a|0;f[a>>2]=42092;eqb(a+16|0);ghb(a);return}function Hnb(a){a=a|0;Gnb(a);Zpb(a);return}function Inb(a){a=a|0;return f[a+8>>2]|0}function Jnb(a){a=a|0;return f[a+12>>2]|0}function Knb(a,b){a=a|0;b=b|0;cqb(a,b+16|0);return}function Lnb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=lkb(42148)|0;if(e>>>0>1073741807)aqb(a);do if(e>>>0<2){b[a+8+3>>0]=e;h=a}else{c=e+4&-4;if(c>>>0>1073741823)ud();else{h=Wpb(c<<2)|0;f[a>>2]=h;f[a+8>>2]=c|-2147483648;f[a+4>>2]=e;break}}while(0);zfb(h,42148,e)|0;f[d>>2]=0;mhb(h+(e<<2)|0,d);u=g;return}function Mnb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=lkb(42124)|0;if(e>>>0>1073741807)aqb(a);do if(e>>>0<2){b[a+8+3>>0]=e;h=a}else{c=e+4&-4;if(c>>>0>1073741823)ud();else{h=Wpb(c<<2)|0;f[a>>2]=h;f[a+8>>2]=c|-2147483648;f[a+4>>2]=e;break}}while(0);zfb(h,42124,e)|0;f[d>>2]=0;mhb(h+(e<<2)|0,d);u=g;return}function Nnb(a){a=a|0;ghb(a);Zpb(a);return}function Onb(a){a=a|0;ghb(a);Zpb(a);return}function Pnb(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0<128){a=(ynb()|0)+(c<<1)|0;a=(d[a>>1]&b)<<16>>16!=0}else a=0;return a|0}function Qnb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((b|0)==(c|0))break;if((f[b>>2]|0)>>>0<128){a=ynb()|0;a=j[a+(f[b>>2]<<1)>>1]|0}else a=0;d[e>>1]=a;e=e+2|0;b=b+4|0}return c|0}function Rnb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}if((f[c>>2]|0)>>>0<128){a=ynb()|0;if((d[a+(f[c>>2]<<1)>>1]&b)<<16>>16)break}c=c+4|0}return c|0}function Snb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}if((f[c>>2]|0)>>>0>=128)break;a=ynb()|0;if(!((d[a+(f[c>>2]<<1)>>1]&b)<<16>>16))break;c=c+4|0}return c|0}function Tnb(a,b){a=a|0;b=b|0;if(b>>>0<128){b=(xnb()|0)+(b<<2)|0;b=f[b>>2]|0}return b|0}function Unb(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128){a=xnb()|0;a=f[a+(f[b>>2]<<2)>>2]|0}f[b>>2]=a;b=b+4|0}return c|0}function Vnb(a,b){a=a|0;b=b|0;if(b>>>0<128){b=(wnb()|0)+(b<<2)|0;b=f[b>>2]|0}return b|0}function Wnb(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128){a=wnb()|0;a=f[a+(f[b>>2]<<2)>>2]|0}f[b>>2]=a;b=b+4|0}return c|0}function Xnb(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Ynb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;f[e>>2]=b[c>>0];e=e+4|0;c=c+1|0}return d|0}function Znb(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function _nb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=(d-c|0)>>>2;a=g;g=c;while(1){if((g|0)==(d|0))break;i=f[g>>2]|0;b[a>>0]=i>>>0<128?i&255:e;a=a+1|0;g=g+4|0}return c+(h<<2)|0}function $nb(a){a=a|0;ghb(a);Zpb(a);return}function aob(a){a=a|0;ghb(a);Zpb(a);return}function bob(a){a=a|0;ghb(a);Zpb(a);return}function cob(a){a=a|0;f[a>>2]=42408;return}function dob(a){a=a|0;f[a>>2]=42444;return}function eob(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a+4>>2]=e+-1;f[a>>2]=42e3;e=a+8|0;f[e>>2]=c;b[a+12>>0]=d&1;if(!c){d=ynb()|0;f[e>>2]=d}return}function fob(a){a=a|0;ud()}function gob(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h;f[a+4>>2]=c+-1;f[a>>2]=41980;d=a+8|0;hob(d,28);c=a+144|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;e=Vfb(205362)|0;if(e>>>0>4294967279)aqb(c);if(e>>>0<11)b[c+11>>0]=e;else{j=e+16&-16;i=Wpb(j)|0;f[c>>2]=i;f[a+152>>2]=j|-2147483648;f[a+148>>2]=e;c=i}hfb(c,205362,e)|0;b[g>>0]=0;Wfb(c+e|0,g);c=f[d>>2]|0;d=a+12|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;j=e+-4|0;f[d>>2]=j;e=j}iob();job(a,210136);kob();lob(a,210144);mob();nob(a,210152);oob();pob(a,210168);qob();rob(a,210176);sob();tob(a,210184);uob();vob(a,210200);wob();xob(a,210208);yob();zob(a,210216);Aob();Bob(a,210240);Cob();Dob(a,210272);Eob();Fob(a,210280);Gob();Hob(a,210288);Iob();Job(a,210296);Kob();Lob(a,210304);Mob();Nob(a,210312);Oob();Pob(a,210320);Qob();Rob(a,210328);Sob();Tob(a,210336);Uob();Vob(a,210344);Wob();Xob(a,210352);Yob();Zob(a,210360);_ob();$ob(a,210368);apb();bpb(a,210384);cpb();dpb(a,210400);epb();fpb(a,210416);gpb();hpb(a,210432);ipb();jpb(a,210440);u=h;return}function hob(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+128>>0]=0;if(c|0){wpb(a,c);npb(a,c)}return}function iob(){f[52535]=0;f[52534]=39644;return}function job(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213200)|0);return}function kob(){f[52537]=0;f[52536]=39676;return}function lob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213208)|0);return}function mob(){eob(210152,0,0,1);return}function nob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213216)|0);return}function oob(){f[52543]=0;f[52542]=42196;return}function pob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213248)|0);return}function qob(){f[52545]=0;f[52544]=42264;return}function rob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(215008)|0);return}function sob(){vpb(210184,1);return}function tob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(215016)|0);return}function uob(){f[52551]=0;f[52550]=42312;return}function vob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(215024)|0);return}function wob(){f[52553]=0;f[52552]=42360;return}function xob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(215032)|0);return}function yob(){upb(210216,1);return}function zob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213232)|0);return}function Aob(){tpb(210240,1);return}function Bob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213256)|0);return}function Cob(){f[52569]=0;f[52568]=39708;return}function Dob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213240)|0);return}function Eob(){f[52571]=0;f[52570]=39772;return}function Fob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213264)|0);return}function Gob(){f[52573]=0;f[52572]=39836;return}function Hob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213272)|0);return}function Iob(){f[52575]=0;f[52574]=39888;return}function Job(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(213280)|0);return}function Kob(){f[52577]=0;f[52576]=41436;return}function Lob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214928)|0);return}function Mob(){f[52579]=0;f[52578]=41492;return}function Nob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214936)|0);return}function Oob(){f[52581]=0;f[52580]=41548;return}function Pob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214944)|0);return}function Qob(){f[52583]=0;f[52582]=41604;return}function Rob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214952)|0);return}function Sob(){f[52585]=0;f[52584]=41660;return}function Tob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214960)|0);return}function Uob(){f[52587]=0;f[52586]=41688;return}function Vob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214968)|0);return}function Wob(){f[52589]=0;f[52588]=41716;return}function Xob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214976)|0);return}function Yob(){f[52591]=0;f[52590]=41744;return}function Zob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214984)|0);return}function _ob(){f[52593]=0;f[52592]=42176;cob(210376);f[52592]=39940;f[52594]=39988;return}function $ob(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214092)|0);return}function apb(){f[52597]=0;f[52596]=42176;dob(210392);f[52596]=40024;f[52598]=40072;return}function bpb(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214904)|0);return}function cpb(){var a=0;f[52601]=0;f[52600]=42176;a=Fhb()|0;f[52602]=a;f[52600]=41388;return}function dpb(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214912)|0);return}function epb(){var a=0;f[52605]=0;f[52604]=42176;a=Fhb()|0;f[52606]=a;f[52604]=41412;return}function fpb(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214920)|0);return}function gpb(){f[52609]=0;f[52608]=41772;return}function hpb(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(214992)|0);return}function ipb(){f[52611]=0;f[52610]=41804;return}function jpb(a,b){a=a|0;b=b|0;kpb(a,b,Hhb(215e3)|0);return}function kpb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Jpb(b);e=a+8|0;d=f[e>>2]|0;if((f[a+12>>2]|0)-d>>2>>>0>c>>>0)a=e;else{lpb(e,c+1|0);a=e;d=f[e>>2]|0}d=f[d+(c<<2)>>2]|0;if(d|0)Lpb(d)|0;f[(f[a>>2]|0)+(c<<2)>>2]=b;return}function lpb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=c-e>>2;a:do if(d>>>0<b>>>0)mpb(a,b-d|0);else if(d>>>0>b>>>0){a=e+(b<<2)|0;while(1){if((c|0)==(a|0))break a;e=c+-4|0;f[g>>2]=e;c=e}}while(0);return}function mpb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;e=i;g=a+8|0;h=a+4|0;c=f[h>>2]|0;do if((f[g>>2]|0)-c>>2>>>0<b>>>0){c=(c-(f[a>>2]|0)>>2)+b|0;d=opb(a)|0;if(d>>>0<c>>>0)fob(a);else{j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;g=k>>1;ppb(e,k>>2>>>0<d>>>1>>>0?(g>>>0<c>>>0?c:g):d,(f[h>>2]|0)-j>>2,a+16|0);qpb(e,b);rpb(a,e);spb(e);break}}else npb(a,b);while(0);u=i;return}function npb(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function opb(a){a=a|0;return 1073741823}function ppb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;f[a+12>>2]=0;f[a+16>>2]=e;do if(!c)e=0;else{g=e+112|0;if(c>>>0<29&(b[g>>0]|0)==0){b[g>>0]=1;break}else{e=Wpb(c<<2)|0;break}}while(0);f[a>>2]=e;d=e+(d<<2)|0;f[a+8>>2]=d;f[a+4>>2]=d;f[a+12>>2]=e+(c<<2);return}function qpb(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function rpb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){Irb(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function spb(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;d=a+8|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}d=f[a>>2]|0;do if(d|0){c=f[a+16>>2]|0;if((d|0)==(c|0)){b[c+112>>0]=0;break}else{Zpb(d);break}}while(0);return}function tpb(a,b){a=a|0;b=b|0;f[a+4>>2]=b+-1;f[a>>2]=42092;f[a+8>>2]=46;f[a+12>>2]=44;b=a+16|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function upb(a,c){a=a|0;c=c|0;f[a+4>>2]=c+-1;f[a>>2]=42052;b[a+8>>0]=46;b[a+9>>0]=44;c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}return}function vpb(a,b){a=a|0;b=b|0;f[a+4>>2]=b+-1;f[a>>2]=41932;b=Fhb()|0;f[a+8>>2]=b;return}function wpb(a,c){a=a|0;c=c|0;var d=0;if((opb(a)|0)>>>0<c>>>0)fob(a);d=a+128|0;if(c>>>0<29&(b[d>>0]|0)==0){b[d>>0]=1;d=a+16|0}else d=Wpb(c<<2)|0;f[a+4>>2]=d;f[a>>2]=d;f[a+8>>2]=d+(c<<2);return}function xpb(){if(!(b[210448]|0))if(rrb(210448)|0){ypb()|0;f[53761]=215040}return f[53761]|0}function ypb(){zpb();f[53760]=210456;return 215040}function zpb(){gob(210456,1);return}function Apb(){Bpb(215048,xpb()|0);return 215048}function Bpb(a,b){a=a|0;b=b|0;b=f[b>>2]|0;f[a>>2]=b;Jpb(b);return}function Cpb(){if(!(b[210616]|0))if(rrb(210616)|0){Apb()|0;f[53763]=215048}return f[53763]|0}function Dpb(a){a=a|0;var b=0;b=Cpb()|0;b=f[b>>2]|0;f[a>>2]=b;Jpb(b);return}function Epb(a,b){a=a|0;b=b|0;a=f[a>>2]|0;return Fpb(a,Hhb(b)|0)|0}function Fpb(a,b){a=a|0;b=b|0;var c=0;c=f[a+8>>2]|0;if((f[a+12>>2]|0)-c>>2>>>0>b>>>0)a=(f[c+(b<<2)>>2]|0)!=0;else a=0;return a|0}function Gpb(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=idb(a,b,c)|0;return a|0}function Hpb(a){a=a|0;return}function Ipb(a,b){a=a|0;b=b|0;return 0}function Jpb(a){a=a|0;Kpb(a+4|0);return}function Kpb(a){a=a|0;f[a>>2]=(f[a>>2]|0)+1;return}function Lpb(a){a=a|0;if((Mpb(a+4|0)|0)==-1){fh[f[(f[a>>2]|0)+8>>2]&2047](a);a=1}else a=0;return a|0}function Mpb(a){a=a|0;var b=0;b=f[a>>2]|0;f[a>>2]=b+-1;return b+-1|0}function Npb(a){a=a|0;Jpb(a);return}function Opb(a){a=a|0;Kpb(a+8|0);return}function Ppb(a){a=a|0;if(Lpb(a)|0)Qpb(a);return}function Qpb(a){a=a|0;var b=0;b=a+8|0;if(!(f[b>>2]|0))fh[f[(f[a>>2]|0)+16>>2]&2047](a);else if((Mpb(b)|0)==-1)fh[f[(f[a>>2]|0)+16>>2]&2047](a);return}function Rpb(a){a=a|0;var b=0,c=0,d=0;c=a+4|0;b=f[c>>2]|0;while(1){if((b|0)==-1){a=0;break}d=f[c>>2]|0;if((d|0)==(b|0))f[c>>2]=b+1;if((d|0)==(b|0))break;b=d}return a|0}function Spb(a){a=a|0;Df(a|0)|0;return}function Tpb(a){a=a|0;a=Mrb(a|0)|0;if(!a)return;else Jqb(a,207525)}function Upb(a){a=a|0;if(!(Nrb(a|0)|0))return;else sc(207543,207551,48,207673)}function Vpb(a,b,c){a=a|0;b=b|0;c=c|0;Mrb(215056)|0;while(1){if((f[a>>2]|0)!=1)break;Cf(215084,215056)|0}if(!(f[a>>2]|0)){f[a>>2]=1;Nrb(215056)|0;fh[c&2047](b);Mrb(215056)|0;f[a>>2]=-1;Nrb(215056)|0;Lrb(215084)|0}else Nrb(215056)|0;return}function Wpb(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=Kbb(b)|0;if(a|0)break;a=trb()|0;if(!a){a=0;break}ah[a&63]()}return a|0}function Xpb(a){a=a|0;return Wpb(a)|0}function Ypb(a,b){a=a|0;b=b|0;return Xpb(a)|0}function Zpb(a){a=a|0;Lbb(a);return}function _pb(a){a=a|0;Zpb(a);return}function $pb(){ud()}function aqb(a){a=a|0;ud()}function bqb(a){a=a|0;ud()}function cqb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){e=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)aqb(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=Wpb(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}hfb(a,e,c)|0;b[d>>0]=0;Wfb(a+c|0,d)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function dqb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;j=u;u=u+16|0;i=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=b[c+11>>0]|0;g=h<<24>>24<0;h=g?f[c+4>>2]|0:h&255;if(h>>>0<d>>>0)bqb(a);c=(g?f[c>>2]|0:c)+d|0;g=h-d|0;g=g>>>0<e>>>0?g:e;if(g>>>0>4294967279)aqb(a);if(g>>>0<11)b[a+11>>0]=g;else{d=g+16&-16;e=Wpb(d)|0;f[a>>2]=e;f[a+8>>2]=d|-2147483648;f[a+4>>2]=g;a=e}hfb(a,c,g)|0;b[i>>0]=0;Wfb(a+g|0,i);u=j;return}function eqb(a){a=a|0;if((b[a+11>>0]|0)<0)Zpb(f[a>>2]|0);return}function fqb(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;gqb(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function gqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0<d>>>0){if(g)e=f[a+4>>2]|0;else e=e&255;iqb(a,h,d-h|0,e,0,e,d,c)}else{if(g)e=f[a>>2]|0;else e=a;hqb(e,c,d)|0;b[i>>0]=0;Wfb(e+d|0,i);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}while(0);u=k;return a|0}function hqb(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Jrb(a|0,b|0,c|0)|0;return a|0}function iqb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0<d>>>0)aqb(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0<l>>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=Wpb(k)|0;if(g|0)hfb(l,m,g)|0;if(i|0)hfb(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)hfb(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Zpb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;b[n>>0]=0;Wfb(l+i|0,n);u=o;return}function jqb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(c>>>0>4294967279)aqb(a);j=a+11|0;g=b[j>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{k=g&255;d=10}i=k>>>0>c>>>0?k:c;c=i>>>0<11;i=c?10:(i+16&-16)+-1|0;do if((i|0)!=(d|0)){do if(c){c=f[a>>2]|0;if(h){g=0;d=c;e=a;h=13}else{hfb(a,c,(g&255)+1|0)|0;Zpb(c);h=16}}else{d=i+1|0;e=Wpb(d)|0;if(h){g=1;d=f[a>>2]|0;h=13;break}else{hfb(e,a,(g&255)+1|0)|0;c=a+4|0;h=15;break}}while(0);if((h|0)==13){c=a+4|0;hfb(e,d,(f[c>>2]|0)+1|0)|0;Zpb(d);if(g){d=i+1|0;h=15}else h=16}if((h|0)==15){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==16){b[j>>0]=k;break}}while(0);return}function kqb(a,b){a=a|0;b=b|0;return gqb(a,b,Vfb(b)|0)|0}function lqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+11|0;e=b[h>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0<c>>>0)mqb(a,c-e|0,d)|0;else if(i){i=(f[a>>2]|0)+c|0;b[g>>0]=0;Wfb(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;Wfb(a+c|0,g);b[h>>0]=c;break}while(0);u=j;return}function mqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;if(c|0){j=a+11|0;e=b[j>>0]|0;if(e<<24>>24<0){h=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;g=10}if((g-h|0)>>>0<c>>>0){nqb(a,g,c-g+h|0,h,h,0,0);e=b[j>>0]|0}if(e<<24>>24<0)g=f[a>>2]|0;else g=a;blb(g+h|0,c,d)|0;e=h+c|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;b[i>>0]=0;Wfb(g+e|0,i)}u=k;return a|0}function nqb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0<d>>>0)aqb(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){j=d+c|0;k=c<<1;j=j>>>0<k>>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=Wpb(j)|0;if(g|0)hfb(k,l,g)|0;d=e-h-g|0;if(d|0)hfb(k+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)Zpb(l);f[a>>2]=k;f[a+8>>2]=j|-2147483648;return}function oqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g){h=f[a+4>>2]|0;e=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;e=10}if((e-h|0)>>>0<d>>>0)iqb(a,e,d-e+h|0,h,h,0,d,c);else if(d|0){if(g)g=f[a>>2]|0;else g=a;hfb(g+h|0,c,d)|0;e=h+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;b[i>>0]=0;Wfb(g+e|0,i)}u=k;return a|0}function pqb(a,b){a=a|0;b=b|0;return oqb(a,b,Vfb(b)|0)|0}function qqb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=j+1|0;b[h>>0]=c;g=a+11|0;c=b[g>>0]|0;d=c<<24>>24<0;if(d){e=f[a+4>>2]|0;c=(f[a+8>>2]&2147483647)+-1|0}else{e=c&255;c=10}if((e|0)==(c|0)){nqb(a,c,1,c,c,0,0);if((b[g>>0]|0)<0)d=8;else d=7}else if(d)d=8;else d=7;if((d|0)==7){b[g>>0]=e+1;c=a}else if((d|0)==8){c=f[a>>2]|0;f[a+4>>2]=e+1}a=c+e|0;Wfb(a,h);b[i>>0]=0;Wfb(a+1|0,i);u=j;return}function rqb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=b[a+11>>0]|0;i=h<<24>>24<0;if(i)h=f[a+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0<c>>>0)bqb(a);h=h-c|0;d=h>>>0<d>>>0?h:d;if(i)a=f[a>>2]|0;h=d>>>0>g>>>0;a=Gpb(a+c|0,e,h?g:d)|0;if(!a)return (d>>>0<g>>>0?-1:h&1)|0;else return a|0;return 0}function sqb(a){a=a|0;if((b[a+8+3>>0]|0)<0)Zpb(f[a>>2]|0);return}function tqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;e=a+8|0;k=e+3|0;h=b[k>>0]|0;i=h<<24>>24<0;if(i)g=(f[e>>2]&2147483647)+-1|0;else g=1;do if(g>>>0<d>>>0){if(i)e=f[a+4>>2]|0;else e=h&255;vqb(a,g,d-g|0,e,0,e,d,c)}else{if(i)e=f[a>>2]|0;else e=a;uqb(e,c,d)|0;f[j>>2]=0;mhb(e+(d<<2)|0,j);if((b[k>>0]|0)<0){f[a+4>>2]=d;break}else{b[k>>0]=d;break}}while(0);u=l;return a|0}function uqb(a,b,c){a=a|0;b=b|0;c=c|0;if(c)eeb(a,b,c)|0;return a|0}function vqb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p;if((1073741806-c|0)>>>0<d>>>0)aqb(a);l=a+8|0;if((b[l+3>>0]|0)<0)n=f[a>>2]|0;else n=a;if(c>>>0<536870887){d=d+c|0;k=c<<1;d=d>>>0<k>>>0?k:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823)ud();else m=d}else m=1073741807;k=Wpb(m<<2)|0;if(g|0)zfb(k,n,g)|0;if(i|0)zfb(k+(g<<2)|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)zfb(k+(g<<2)+(i<<2)|0,n+(g<<2)+(h<<2)|0,e)|0;if((c|0)!=1)Zpb(n);f[a>>2]=k;f[l>>2]=m|-2147483648;i=d+i|0;f[a+4>>2]=i;f[o>>2]=0;mhb(k+(i<<2)|0,o);u=p;return}function wqb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(c>>>0>1073741807)aqb(a);l=a+8|0;j=l+3|0;g=b[j>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;d=(f[l>>2]&2147483647)+-1|0}else{k=g&255;d=1}i=k>>>0>c>>>0?k:c;c=i>>>0<2;i=c?1:(i+4&-4)+-1|0;do if((i|0)!=(d|0)){do if(c){c=f[a>>2]|0;if(h){g=0;d=c;e=a;h=15}else{zfb(a,c,(g&255)+1|0)|0;Zpb(c);h=18}}else{d=i+1|0;if(d>>>0>1073741823)ud();e=Wpb(d<<2)|0;if(h){g=1;d=f[a>>2]|0;h=15;break}else{zfb(e,a,(g&255)+1|0)|0;c=a+4|0;h=17;break}}while(0);if((h|0)==15){c=a+4|0;zfb(e,d,(f[c>>2]|0)+1|0)|0;Zpb(d);if(g){d=i+1|0;h=17}else h=18}if((h|0)==17){f[l>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==18){b[j>>0]=k;break}}while(0);return}function xqb(a,b){a=a|0;b=b|0;return tqb(a,b,lkb(b)|0)|0}function yqb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;if((1073741807-c|0)>>>0<d>>>0)aqb(a);m=a+8|0;if((b[m+3>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<536870887){d=d+c|0;j=c<<1;d=d>>>0<j>>>0?j:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823)ud();else k=d}else k=1073741807;j=Wpb(k<<2)|0;if(g|0)zfb(j,l,g)|0;d=e-h-g|0;if(d|0)zfb(j+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,d)|0;if((c|0)!=1)Zpb(l);f[a>>2]=j;f[m>>2]=k|-2147483648;return}function zqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;g=a+8|0;k=g+3|0;e=b[k>>0]|0;i=e<<24>>24<0;if(i){h=f[a+4>>2]|0;e=(f[g>>2]&2147483647)+-1|0}else{h=e&255;e=1}if((e-h|0)>>>0<d>>>0)vqb(a,e,d-e+h|0,h,h,0,d,c);else if(d|0){if(i)g=f[a>>2]|0;else g=a;zfb(g+(h<<2)|0,c,d)|0;e=h+d|0;if((b[k>>0]|0)<0)f[a+4>>2]=e;else b[k>>0]=e;f[j>>2]=0;mhb(g+(e<<2)|0,j)}u=l;return a|0}function Aqb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=k+4|0;f[i>>2]=c;d=a+8|0;h=d+3|0;c=b[h>>0]|0;e=c<<24>>24<0;if(e){g=f[a+4>>2]|0;c=(f[d>>2]&2147483647)+-1|0}else{g=c&255;c=1}if((g|0)==(c|0)){yqb(a,c,1,c,c,0,0);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7){b[h>>0]=g+1;c=a}else if((d|0)==8){c=f[a>>2]|0;f[a+4>>2]=g+1}a=c+(g<<2)|0;mhb(a,i);f[j>>2]=0;mhb(a+4|0,j);u=k;return}function Bqb(a){a=a|0;var b=0;b=u;u=u+16|0;Dqb(b,a,207700);Fqb(b)}function Cqb(a){a=a|0;var b=0;b=u;u=u+16|0;Dqb(b,a,207680);Eqb(b)}function Dqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}e=c+11|0;g=b[e>>0]|0;g=g<<24>>24<0?f[c+4>>2]|0:g&255;h=Vfb(d)|0;c=(b[e>>0]|0)<0?f[c>>2]|0:c;e=g+h|0;if(e>>>0>4294967279)aqb(a);if(e>>>0<11){b[a+11>>0]=g;e=a}else{k=e+16&-16;e=Wpb(k)|0;f[a>>2]=e;f[a+8>>2]=k|-2147483648;f[a+4>>2]=g}hfb(e,c,g)|0;b[i>>0]=0;Wfb(e+g|0,i);oqb(a,d,h)|0;u=j;return}function Eqb(a){a=a|0;var c=0,d=0;c=u;u=u+16|0;d=f[8760]|0;f[c>>2]=(b[a+11>>0]|0)<0?f[a>>2]|0:a;odb(d,207696,c)|0;ud()}function Fqb(a){a=a|0;var c=0,d=0;c=u;u=u+16|0;d=f[8760]|0;f[c>>2]=(b[a+11>>0]|0)<0?f[a>>2]|0:a;odb(d,207696,c)|0;ud()}function Gqb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;h=j;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=Vfb(207715)|0;if(i>>>0>4294967279)aqb(h);if(i>>>0<11){b[h+11>>0]=i;e=h}else{k=i+16&-16;e=Wpb(k)|0;f[h>>2]=e;f[h+8>>2]=k|-2147483648;f[h+4>>2]=i}hfb(e,207715,i)|0;b[g>>0]=0;Wfb(e+i|0,g);k=Hqb(h,a,c,d)|0;eqb(h);u=j;return k|0}function Hqb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Iqb(a,b,c,d)|0}function Iqb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;g=i;f[g>>2]=0;h=(b[c+11>>0]|0)<0?f[c>>2]|0:c;k=Tbb()|0;k=f[k>>2]|0;j=Tbb()|0;f[j>>2]=0;e=hdb(h,g,e)|0;j=Tbb()|0;c=f[j>>2]|0;f[j>>2]=k;if((c|0)==34)Bqb(a);c=f[g>>2]|0;if((c|0)==(h|0))Cqb(a);if(d|0)f[d>>2]=c-h;u=i;return e|0}function Jqb(a,b){a=a|0;b=b|0;ud()}function Kqb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=u;u=u+16|0;c=d;b=a;a=f[b>>2]|0;b=f[b+4>>2]|0;if((b|0)>0|(b|0)==0&a>>>0>0){g=Crb(a|0,b|0,1e9,0)|0;e=b>>>0<499999999|(b|0)==499999999&a>>>0<3294967296;h=Brb(g|0,I|0,-1e9,-1)|0;b=vrb(a|0,b|0,h|0,I|0)|0;f[c>>2]=e?g:2147483647;f[c+4>>2]=e?b:999999999;do{if((xf(c|0,c|0)|0)!=-1)break;h=Tbb()|0}while((f[h>>2]|0)==4)}u=d;return}function Lqb(a){a=a|0;return}function Mqb(a){a=a|0;Lqb(a);Zpb(a);return}function Nqb(a){a=a|0;return}function Oqb(a){a=a|0;return}function Pqb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;if(Tqb(a,b,0)|0)b=1;else if(!b)b=0;else{b=Xqb(b,13376,13360,0)|0;if(!b)b=0;else{d=g+4|0;e=d+52|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[g>>2]=b;f[g+8>>2]=a;f[g+12>>2]=-1;f[g+48>>2]=1;Eh[f[(f[b>>2]|0)+28>>2]&255](b,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}}u=h;return b|0}function Qqb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(Tqb(a,f[b+8>>2]|0,g)|0)Wqb(0,b,c,d,e);return}function Rqb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;do if(Tqb(a,f[c+8>>2]|0,g)|0)Vqb(0,c,d,e);else if(Tqb(a,f[c>>2]|0,g)|0){if((f[c+16>>2]|0)!=(d|0)){a=c+20|0;if((f[a>>2]|0)!=(d|0)){f[c+32>>2]=e;f[a>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[c+24>>2]|0)==2)b[c+54>>0]=1;f[c+44>>2]=4;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function Sqb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Tqb(a,f[b+8>>2]|0,0)|0)Uqb(0,b,c,d);return}function Tqb(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Uqb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;a=c+16|0;g=f[a>>2]|0;do if(!g){f[a>>2]=d;f[c+24>>2]=e;f[c+36>>2]=1}else{if((g|0)!=(d|0)){e=c+36|0;f[e>>2]=(f[e>>2]|0)+1;f[c+24>>2]=2;b[c+54>>0]=1;break}a=c+24|0;if((f[a>>2]|0)==2)f[a>>2]=e}while(0);return}function Vqb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[b+4>>2]|0)==(c|0)){a=b+28|0;if((f[a>>2]|0)!=1)f[a>>2]=d}return}function Wqb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;a=c+16|0;e=f[a>>2]|0;if(!e){f[a>>2]=d;f[c+24>>2]=g;f[c+36>>2]=1;if(!((g|0)==1?(f[c+48>>2]|0)==1:0))break;b[c+54>>0]=1;break}if((e|0)!=(d|0)){g=c+36|0;f[g>>2]=(f[g>>2]|0)+1;b[c+54>>0]=1;break}e=c+24|0;a=f[e>>2]|0;if((a|0)==2){f[e>>2]=g;a=g}if((a|0)==1?(f[c+48>>2]|0)==1:0)b[c+54>>0]=1}while(0);return}function Xqb(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;n=p;m=f[a>>2]|0;o=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[n>>2]=e;f[n+4>>2]=a;f[n+8>>2]=c;f[n+12>>2]=g;a=n+16|0;c=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=a;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[a+36>>1]=0;b[a+38>>0]=0;a:do if(Tqb(m,e,0)|0){f[n+48>>2]=1;Sh[f[(f[m>>2]|0)+20>>2]&63](m,n,o,o,1,0);a=(f[g>>2]|0)==1?o:0}else{Kh[f[(f[m>>2]|0)+24>>2]&255](m,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[j>>2]|0)==1&(f[h>>2]|0)==1&(f[i>>2]|0)==1?f[c>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[g>>2]|0)!=1)if(!((f[j>>2]|0)==0&(f[h>>2]|0)==1&(f[i>>2]|0)==1)){a=0;break}a=f[a>>2]|0}while(0);u=p;return a|0}function Yqb(a){a=a|0;Lqb(a);Zpb(a);return}function Zqb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(Tqb(a,f[b+8>>2]|0,g)|0)Wqb(0,b,c,d,e);else{a=f[a+8>>2]|0;Sh[f[(f[a>>2]|0)+20>>2]&63](a,b,c,d,e,g)}return}function _qb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(Tqb(a,f[c+8>>2]|0,g)|0)Vqb(0,c,d,e);else{if(!(Tqb(a,f[c>>2]|0,g)|0)){j=f[a+8>>2]|0;Kh[f[(f[j>>2]|0)+24>>2]&255](j,c,d,e,g);break}if((f[c+16>>2]|0)!=(d|0)){h=c+20|0;if((f[h>>2]|0)!=(d|0)){f[c+32>>2]=e;i=c+44|0;if((f[i>>2]|0)==4)break;e=c+52|0;b[e>>0]=0;k=c+53|0;b[k>>0]=0;a=f[a+8>>2]|0;Sh[f[(f[a>>2]|0)+20>>2]&63](a,c,d,d,1,g);if(!(b[k>>0]|0)){e=4;j=11}else if(!(b[e>>0]|0)){e=3;j=11}else e=3;if((j|0)==11){f[h>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[c+24>>2]|0)==2)b[c+54>>0]=1}f[i>>2]=e;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function $qb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Tqb(a,f[b+8>>2]|0,0)|0)Uqb(0,b,c,d);else{a=f[a+8>>2]|0;Eh[f[(f[a>>2]|0)+28>>2]&255](a,b,c,d)}return}function arb(a){a=a|0;return}function brb(a){a=a|0;Lqb(a);Zpb(a);return}function crb(a,b,c){a=a|0;b=b|0;c=c|0;return Tqb(a,b,0)|0}function drb(a){a=a|0;Lqb(a);Zpb(a);return}function erb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;f[c>>2]=f[f[c>>2]>>2];if(frb(a,b,0)|0)b=1;else if(!b)b=0;else{d=Xqb(b,13376,13432,0)|0;if(!d)b=0;else if(!(f[d+8>>2]&~f[a+8>>2])){b=a+12|0;a=d+12|0;if(Tqb(f[b>>2]|0,f[a>>2]|0,0)|0)b=1;else if(Tqb(f[b>>2]|0,13464,0)|0)b=1;else{b=f[b>>2]|0;if(!b)b=0;else{e=Xqb(b,13376,13360,0)|0;if(!e)b=0;else{b=f[a>>2]|0;if(!b)b=0;else{b=Xqb(b,13376,13360,0)|0;if(!b)b=0;else{a=g+4|0;d=a+52|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(d|0));f[g>>2]=b;f[g+8>>2]=e;f[g+12>>2]=-1;f[g+48>>2]=1;Eh[f[(f[b>>2]|0)+28>>2]&255](b,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}}}}}}else b=0}u=h;return b|0}function frb(a,b,c){a=a|0;b=b|0;c=c|0;if(Tqb(a,b,0)|0)a=1;else a=Tqb(b,13472,0)|0;return a|0}function grb(a){a=a|0;Lqb(a);Zpb(a);return}function hrb(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function irb(a){a=a|0;Lqb(a);Zpb(a);return}function jrb(a,b,c){a=a|0;b=b|0;c=c|0;return Tqb(a,b,0)|0}function krb(a){a=a|0;Lqb(a);Zpb(a);return}function lrb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(Tqb(a,f[c+8>>2]|0,h)|0)Wqb(0,c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;prb(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=a+8|0;o=c+54|0;a=a+24|0;do{if(b[o>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0)if(!(f[n>>2]&1))break a}else{if((f[m>>2]|0)==1)break a;if(!(f[n>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;prb(a,c,d,e,g,h);a=a+8|0}while(a>>>0<l>>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function mrb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(Tqb(a,f[c+8>>2]|0,g)|0)Vqb(0,c,d,e);else{if(!(Tqb(a,f[c>>2]|0,g)|0)){q=f[a+12>>2]|0;k=a+16+(q<<3)|0;qrb(a+16|0,c,d,e,g);h=a+24|0;if((q|0)<=1)break;a=f[a+8>>2]|0;if(!(a&2)){j=c+36|0;if((f[j>>2]|0)!=1){if(!(a&1)){a=c+54|0;while(1){if(b[a>>0]|0)break a;if((f[j>>2]|0)==1)break a;qrb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+24|0;i=c+54|0;while(1){if(b[i>>0]|0)break a;if((f[j>>2]|0)==1)if((f[a>>2]|0)==1)break a;qrb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}}a=c+54|0;while(1){if(b[a>>0]|0)break a;qrb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((f[c+16>>2]|0)!=(d|0)){p=c+20|0;if((f[p>>2]|0)!=(d|0)){f[c+32>>2]=e;q=c+44|0;if((f[q>>2]|0)==4)break;k=a+16+(f[a+12>>2]<<3)|0;e=c+52|0;l=c+53|0;n=c+54|0;m=a+8|0;o=c+24|0;h=0;i=a+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){a=18;break}b[e>>0]=0;b[l>>0]=0;prb(i,c,d,d,1,g);if(b[n>>0]|0){a=18;break}do if(!(b[l>>0]|0))a=j;else{if(!(b[e>>0]|0))if(!(f[m>>2]&1)){h=1;a=18;break b}else{h=1;a=j;break}if((f[o>>2]|0)==1){a=23;break b}if(!(f[m>>2]&2)){a=23;break b}else{h=1;a=1}}while(0);i=i+8|0;j=a}do if((a|0)==18){if(!j){f[p>>2]=d;d=c+40|0;f[d>>2]=(f[d>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[o>>2]|0)==2){b[n>>0]=1;if(h){a=23;break}else{h=4;break}}}if(h)a=23;else h=4}while(0);if((a|0)==23)h=3;f[q>>2]=h;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function nrb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(Tqb(a,f[c+8>>2]|0,0)|0)Uqb(0,c,d,e);else{h=f[a+12>>2]|0;g=a+16+(h<<3)|0;orb(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{orb(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0<g>>>0)}}while(0);return}function orb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;Eh[f[(f[a>>2]|0)+28>>2]&255](a,b,c+e|0,g&2|0?d:2);return}function prb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;Sh[f[(f[a>>2]|0)+20>>2]&63](a,b,c,d+h|0,i&2|0?e:2,g);return}function qrb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;Kh[f[(f[a>>2]|0)+24>>2]&255](a,b,c+g|0,h&2|0?d:2,e);return}function rrb(a){a=a|0;if((b[a>>0]|0)==1)a=0;else{b[a>>0]=1;a=1}return a|0}function srb(a){a=a|0;return}function trb(){var a=0;a=f[53783]|0;f[53783]=a+0;return a|0}function urb(){}function vrb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function wrb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (I=d,a-c>>>0|0)|0}function xrb(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function yrb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(!h){if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(k>>>0)/(h>>>0)>>>0;return (I=n,e)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}n=0;e=(k>>>0)/(i>>>0)>>>0;return (I=n,e)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}n=0;e=k>>>((xrb(i|0)|0)>>>0);return (I=n,e)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!e){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}else{if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!e){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=xrb(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=vrb(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;wrb(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=wrb(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function zrb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=wrb(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return wrb((yrb(h,g,wrb(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function Arb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Brb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Arb(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function Crb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return yrb(a,b,c,d,0)|0}function Drb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;yrb(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function Erb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}I=0;return b>>>c-32|0}function Frb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}I=a<<c-32;return 0}function Grb(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Hrb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function Irb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Cd(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Jrb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Irb(a,c,d)|0;return a|0}function Krb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function Lrb(a){a=a|0;return 0}function Mrb(a){a=a|0;return 0}function Nrb(a){a=a|0;return 0}function Orb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function Prb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function Qrb(a){a=a|0;var b=0,c=0;c=f[r>>2]|0;b=c+a|0;if((a|0)>0&(b|0)<(c|0)|(b|0)<0){da()|0;xc(12);return -1}f[r>>2]=b;if((b|0)>(ca()|0))if(!(ba()|0)){f[r>>2]=c;xc(12);return -1}return c|0}function Rrb(a,b){a=a|0;b=b|0;return +Kg[a&63](b|0)}function Srb(a,b,c){a=a|0;b=b|0;c=c|0;return +Lg[a&31](b|0,c|0)}function Trb(a){a=a|0;return Mg[a&31]()|0}function Urb(a,b){a=a|0;b=b|0;return Ng[a&511](b|0)|0}function Vrb(a,b,c){a=a|0;b=b|0;c=+c;return Og[a&15](b|0,+c)|0}function Wrb(a,b,c){a=a|0;b=b|0;c=c|0;return Pg[a&255](b|0,c|0)|0}function Xrb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Qg[a&127](b|0,c|0,d|0)|0}function Yrb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Rg[a&15](b|0,c|0,d|0,e|0)|0}function Zrb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Sg[a&7](b|0,c|0,d|0,e|0,+f)|0}function _rb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return Tg[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function $rb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ug[a&31](b|0,c|0,d|0,e|0,f|0)|0}function asb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;return Vg[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function bsb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;return Wg[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)|0}function csb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Xg[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function dsb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return Yg[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function esb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return Zg[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function fsb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=+p;return _g[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,+p)|0}function gsb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=+q;return $g[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,+q)|0}function hsb(a){a=a|0;ah[a&63]()}function isb(a,b){a=a|0;b=+b;bh[a&63](+b)}function jsb(a,b,c){a=a|0;b=+b;c=+c;ch[a&3](+b,+c)}function ksb(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;dh[a&3](+b,+c,d|0)}function lsb(a,b,c){a=a|0;b=+b;c=c|0;eh[a&7](+b,c|0)}function msb(a,b){a=a|0;b=b|0;fh[a&2047](b|0)}function nsb(a,b,c){a=a|0;b=b|0;c=+c;gh[a&63](b|0,+c)}function osb(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;hh[a&7](b|0,+c,+d)}function psb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;ih[a&1](b|0,+c,+d,+e)}function qsb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;jh[a&3](b|0,+c,+d,+e,f|0,g|0,h|0)}function rsb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=e|0;kh[a&1](b|0,+c,+d,e|0)}function ssb(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;lh[a&7](b|0,+c,d|0)}function tsb(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;mh[a&3](b|0,+c,d|0,e|0,f|0)}function usb(a,b,c){a=a|0;b=b|0;c=c|0;nh[a&1023](b|0,c|0)}function vsb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oh[a&31](b|0,c|0,+d)}function wsb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;ph[a&7](b|0,c|0,+d,+e)}function xsb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;qh[a&1](b|0,c|0,+d,+e,+f)}function ysb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;rh[a&3](b|0,c|0,+d,+e,f|0)}function zsb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;sh[a&1](b|0,c|0,+d,e|0)}function Asb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;th[a&3](b|0,c|0,+d,e|0,+f,g|0,+h,i|0,+j,k|0)}function Bsb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;uh[a&3](b|0,c|0,+d,e|0,f|0)}function Csb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;vh[a&1](b|0,c|0,+d,e|0,f|0,g|0)}function Dsb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wh[a&127](b|0,c|0,d|0)}function Esb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;xh[a&1](b|0,c|0,d|0,+e)}function Fsb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;yh[a&3](b|0,c|0,d|0,+e,+f)}function Gsb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=+h;i=i|0;zh[a&3](b|0,c|0,d|0,+e,+f,+g,+h,i|0)}function Hsb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;Ah[a&1](b|0,c|0,d|0,+e,+f,g|0)}function Isb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;Bh[a&3](b|0,c|0,d|0,+e,f|0)}function Jsb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;h=h|0;i=+i;j=j|0;k=+k;l=l|0;Ch[a&1](b|0,c|0,d|0,+e,f|0,+g,h|0,+i,j|0,+k,l|0)}function Ksb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;Dh[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function Lsb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eh[a&255](b|0,c|0,d|0,e|0)}function Msb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Fh[a&3](b|0,c|0,d|0,e|0,+f)}function Nsb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=k|0;l=l|0;Gh[a&3](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,k|0,l|0)}function Osb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Hh[a&7](b|0,c|0,d|0,e|0,+f,g|0)}function Psb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;Ih[a&3](b|0,c|0,d|0,e|0,+f,g|0,h|0)}function Qsb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;j=j|0;Jh[a&1](b|0,c|0,d|0,e|0,+f,g|0,h|0,i|0,j|0)}function Rsb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Kh[a&255](b|0,c|0,d|0,e|0,f|0)}function Ssb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;Lh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h)}function Tsb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=+i;Mh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h,+i)}function Usb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;Nh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h,i|0)}function Vsb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Oh[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Wsb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;Ph[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0)}function Xsb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;Qh[a&3](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0,j|0)}function Ysb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;k=k|0;Rh[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0,j|0,k|0)}function Zsb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Sh[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function _sb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;Th[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,+i)}function $sb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=+j;Uh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,+i,+j)}function atb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;j=j|0;k=k|0;Vh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0,j|0,k|0)}function btb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Wh[a&63](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function ctb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Xh[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function dtb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Yh[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function etb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Zh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function ftb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;_h[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)}function gtb(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;$h[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)}function htb(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;ai[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0)}function itb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;bi[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0)}function jtb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;ci[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0)}function ktb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;di[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0)}function ltb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;ei[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0,r|0)}function mtb(a){a=a|0;$(0);return 0.0}function ntb(a,b){a=a|0;b=b|0;$(1);return 0.0}function otb(){$(2);return 0}function ptb(a){a=a|0;$(3);return 0}function qtb(a,b){a=a|0;b=+b;$(4);return 0}function rtb(a,b){a=a|0;b=b|0;$(5);return 0}function stb(a,b,c){a=a|0;b=b|0;c=c|0;$(6);return 0}function ttb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(7);return 0}function utb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(8);return 0}function vtb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;$(9);return 0}function wtb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(10);return 0}function xtb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;$(11);return 0}function ytb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;$(12);return 0}function ztb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(13);return 0}function Atb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$(14);return 0}function Btb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;$(15);return 0}function Ctb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=+o;$(16);return 0}function Dtb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=+p;$(17);return 0}function Etb(){$(18)}function Ftb(){uc()}function Gtb(a){a=+a;$(19)}function Htb(a,b){a=+a;b=+b;$(20)}function Itb(a,b,c){a=+a;b=+b;c=c|0;$(21)}function Jtb(a,b){a=+a;b=b|0;$(22)}function Ktb(a){a=a|0;$(23)}function Ltb(a,b){a=a|0;b=+b;$(24)}function Mtb(a,b,c){a=a|0;b=+b;c=+c;$(25)}function Ntb(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;$(26)}function Otb(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;$(27)}function Ptb(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;$(28)}function Qtb(a,b,c){a=a|0;b=+b;c=c|0;$(29)}function Rtb(a,b,c,d,e){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;$(30)}function Stb(a,b){a=a|0;b=b|0;$(31)}function Ttb(a,b,c){a=a|0;b=b|0;c=+c;$(32)}function Utb(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;$(33)}function Vtb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;$(34)}function Wtb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=e|0;$(35)}function Xtb(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$(36)}function Ytb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=+c;d=d|0;e=+e;f=f|0;g=+g;h=h|0;i=+i;j=j|0;$(37)}function Ztb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;$(38)}function _tb(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;$(39)}function $tb(a,b,c){a=a|0;b=b|0;c=c|0;$(40)}function aub(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;$(41)}function bub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;$(42)}function cub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=+g;h=h|0;$(43)}function dub(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;$(44)}function eub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;$(45)}function fub(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;$(46)}function gub(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;$(47)}function hub(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(48)}function iub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(49)}function jub(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=j|0;k=k|0;$(50)}function kub(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;$(51)}function lub(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;$(52)}function mub(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;$(53)}function nub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(54)}function oub(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;$(55)}function pub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;$(56)}function qub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;$(57)}function rub(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;$(58)}function sub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;$(59)}function tub(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;$(60)}function uub(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;j=j|0;$(61)}function vub(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(62)}function wub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;$(63)}function xub(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=+i;$(64)}function yub(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;$(65)}function zub(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$(66)}function Aub(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;$(67)}function Bub(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;$(68)}function Cub(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;$(69)}function Dub(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;$(70)}function Eub(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;$(71)}function Fub(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;$(72)}function Gub(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;$(73)}function Hub(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;$(74)}function Iub(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;$(75)}function Jub(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;$(76)}
// EMSCRIPTEN_END_FUNCS
var Kg=[mtb,hRa,iRa,jRa,SQa,UQa,oi,qi,si,ui,wi,yi,Ai,Ci,Ei,Gi,Ii,Ki,Mi,Oi,Qi,Si,Ui,Wi,Yi,_i,aj,cj,ej,gj,ij,kj,mj,oj,qj,sj,uj,wj,yj,Aj,Cj,Ej,hk,jk,kk,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb,mtb];var Lg=[ntb,MXa,NXa,eYa,fYa,NYa,$Ya,mZa,VN,ZN,bO,fO,jO,nO,rO,vO,VO,bP,fP,pP,tP,IP,ntb,ntb,ntb,ntb,ntb,ntb,ntb,ntb,ntb,ntb];var Mg=[otb,TN,XN,$N,dO,hO,lO,pO,tO,xO,BO,FO,HO,LO,PO,TO,XO,$O,dP,hP,lP,rP,xk,$2,u3,v3,W8,m$,R8,Qm,otb,otb];var Ng=[ptb,Iw,Ow,Tw,Xw,bx,fx,jx,px,tx,xx,Dx,Hx,Lx,Rx,Wx,Zx,cy,iy,ny,ty,Ay,Gy,Ly,Ty,Zy,cz,iz,nz,wz,Cz,Hz,Nz,Qz,Tz,Zz,dA,iA,nA,tA,zA,EA,JA,PA,VA,ZA,cB,hB,nB,sB,wB,BB,HB,MB,RB,YB,cC,hC,pC,vC,AC,FC,LC,RC,WC,dD,jD,oD,uD,zD,GD,MD,RD,WD,$D,fE,jE,nE,tE,yE,HE,NE,RE,VE,$E,eF,lF,rF,wF,EF,KF,PF,WF,$F,eG,jG,pG,vG,zG,DG,JG,NG,RG,XG,$G,dH,jH,nH,rH,xH,CH,JH,PH,TH,YH,cI,gI,kI,qI,vI,BI,FI,KI,NI,SI,YI,aJ,eJ,kJ,pJ,tJ,zJ,EJ,KJ,PJ,VJ,ZJ,bK,hK,lK,pK,vK,zK,DK,JK,NK,RK,XK,aL,gL,mL,sL,xL,EL,JL,ML,PL,WL,aM,jM,oM,tM,yM,GM,MM,QM,UM,_M,dN,jN,oN,uN,zN,FN,NN,eQ,lQ,yQ,EQ,KQ,aR,gR,mR,uR,GR,NR,UR,$R,yS,FS,ZS,eT,CU,IU,UU,jV,pV,CV,hW,rW,DW,KW,eX,lX,QX,oY,uY,AY,HY,NY,ZY,BZ,A_,H_,S2,Y2,J2,P2,A2,G2,s2,y2,k2,q2,c2,i2,W1,a2,O1,U1,G1,M1,x1,D1,p1,v1,g1,m1,_0,e1,S0,Y0,J0,P0,B0,H0,s0,y0,j0,p0,a0,g0,T$,Z$,K$,Q$,a4,V3,O3,c4,l4,k5,T5,b7,x8,faa,Oba,Wba,Wca,wda,Cda,lfa,rfa,ama,bma,cma,dma,ema,fma,gma,hma,ima,jma,kma,lma,mma,nma,oma,pma,qma,rma,sma,tma,uma,vma,Kma,Lma,Mma,Nma,Uma,Vma,Wma,Xma,cna,dna,ena,fna,gna,hna,pna,qna,rna,sna,tna,una,Bna,Cna,_qa,ara,bra,era,gra,hra,qra,ura,wra,uxa,GCa,vxa,yxa,Bxa,qya,rya,sya,jza,Hza,Jza,VAa,$Aa,nBa,oBa,IBa,xBa,DBa,Zeb,_eb,RIa,bfb,aJa,gJa,pJa,JKa,PKa,iKa,oKa,pLa,vLa,gLa,mLa,ZKa,dLa,MQa,NQa,gRa,QQa,_Ra,eSa,ESa,KSa,LYa,MYa,ZYa,_Ya,kZa,lZa,RZa,S8a,Z8a,Pbb,afb,pfb,qfb,sfb,tfb,Dgb,Kgb,Rgb,Sgb,Ygb,Zgb,pjb,wjb,xjb,yjb,zjb,Ajb,Bjb,Cjb,Zjb,ekb,fkb,gkb,hkb,ikb,jkb,kkb,Ukb,Vkb,_kb,elb,flb,klb,plb,qlb,vlb,Alb,Blb,Glb,Bmb,Cmb,Emb,Tmb,Umb,Wmb,Bnb,Cnb,Inb,Jnb,Mmb,Nmb,Pmb,anb,bnb,dnb,Gj,Ij,Kj,Mj,Oj,Qj,xP,Yj,Zj,_j,$j,bk,dk,fk,PP,yk,SP,Bk,VP,ZP,R_,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb,ptb];var Og=[qtb,yma,zma,Ama,Dma,Pma,Qma,Zma,kna,qtb,qtb,qtb,qtb,qtb,qtb,qtb];var Pg=[rtb,Nw,ax,ox,Cx,Qx,hy,Fy,Yy,Bz,cA,yA,UA,mB,GB,bC,uC,QC,iD,tD,LD,eE,sE,ME,_E,qF,JF,uG,IG,WG,iH,wH,OH,bI,pI,AI,XI,jJ,yJ,JJ,UJ,gK,uK,IK,WK,fL,rL,LM,ZM,iN,tN,EN,X2,O2,F2,x2,p2,h2,$1,T1,L1,C1,u1,l1,d1,X0,O0,G0,x0,o0,f0,Y$,P$,Bda,ufa,qfa,Ipb,xma,Bma,Cma,Ema,Fma,Gma,Hma,_ma,jna,lna,wna,xna,yna,Dna,wpa,fra,rra,yra,iua,_Aa,CBa,SIa,TIa,fJa,vJa,OKa,nKa,uLa,lLa,cLa,NMa,WQa,rRa,dSa,JSa,KXa,LXa,cYa,dYa,OYa,PYa,QYa,aZa,bZa,cZa,nZa,oZa,pZa,_8a,$8a,cfb,efb,ufb,wfb,Fgb,Mgb,Tgb,_gb,onb,qnb,snb,Tnb,Vnb,Xnb,zO,DO,JO,NO,RO,ZO,jP,nP,vP,DP,EP,GP,QP,UP,z_a,Z_a,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb,rtb];var Qg=[stb,Sw,ex,sx,Gx,Vx,Yx,my,qy,Ky,bz,hz,mz,Gz,Mz,Pz,Sz,hA,mA,DA,IA,YA,aB,rB,uB,LB,QB,gC,zC,EC,VC,yD,QD,VD,iE,xE,QE,dF,vF,OF,VF,_F,dG,iG,yG,MG,_G,mH,BH,SH,fI,EI,JI,MI,$I,oJ,YJ,kK,yK,MK,wL,DL,IL,LL,OL,VL,$L,iM,nM,sM,xM,PM,$qa,xra,cBa,iBa,Web,$eb,dfb,RYa,SYa,dZa,eZa,qZa,rZa,W8a,Qbb,Rbb,Vbb,Wbb,_cb,mfb,rfb,vfb,Egb,Lgb,fhb,lhb,pmb,umb,pnb,rnb,unb,Pnb,Unb,Wnb,Znb,Pqb,crb,erb,hrb,jrb,OP,Q8a,Wdb,stb,stb,stb,stb,stb,stb,stb,stb,stb,stb,stb,stb,stb];var Rg=[ttb,cSa,ISa,GZa,tnb,Qnb,Rnb,Snb,Ynb,YP,z8a,ttb,ttb,ttb,ttb,ttb];var Sg=[utb,Rib,Sib,gjb,hjb,utb,utb,utb];var Tg=[vtb,Dk];var Ug=[wtb,aza,CCa,IHa,dhb,jhb,Mib,Nib,Pib,Tib,bjb,cjb,ejb,ijb,Amb,Dmb,Smb,Vmb,vnb,_nb,Lmb,Omb,$mb,cnb,wtb,wtb,wtb,wtb,wtb,wtb,wtb,wtb];var Vg=[xtb,dmb,jmb,xtb];var Wg=[ytb,XP];var Xg=[ztb,phb,qhb,rhb,shb,thb,uhb,vhb,yhb,zhb,Ahb,Bhb,lib,mib,nib,oib,pib,qib,rib,sib,tib,uib,vib,Oib,Qib,djb,fjb,qjb,rjb,sjb,tjb,ujb,_jb,$jb,akb,bkb,ckb,emb,kmb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb,ztb];var Yg=[Atb,Ikb,Okb,Llb,Mlb,Wlb,Xlb,Atb];var Zg=[Btb,vjb,dkb,ymb,zmb,Qmb,Rmb,Jmb,Kmb,Zmb,_mb,Btb,Btb,Btb,Btb,Btb];var _g=[Ctb,j3];var $g=[Dtb,TP];var ah=[Etb,Ftb,t$,Z2,l3,Sm,Tm,jn,mn,nn,on,Fn,Gn,Hn,In,uo,zo,Co,Eo,Io,mp,is,ts,us,Ls,Os,Ps,Qs,et,ft,gt,ht,Ut,Zt,au,cu,gu,Mu,u$,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb,Etb];var bh=[Gtb,On,fo,go,ho,io,lo,mo,no,vo,wo,xo,Ho,Wo,Yo,_o,ap,ep,fp,gp,sp,vp,yp,zp,Bp,Dp,Ep,Np,Zp,_p,$p,aq,nt,Ft,Gt,Ht,It,Lt,Mt,Nt,Vt,Wt,Xt,fu,uu,wu,yu,Au,Eu,Fu,Gu,Su,Vu,Yu,Zu,$u,bv,cv,lv,xv,yv,zv,Av,Gtb];var ch=[Htb,En,dt,Htb];var dh=[Itb,Hp,fv,Itb];var eh=[Jtb,No,Gp,lu,ev,Jtb,Jtb,Jtb];var fh=[Ktb,bD,Hw,Kw,Lw,Qw,Rw,Ww,Zw,_w,dx,ix,lx,mx,rx,wx,zx,Ax,Fx,Kx,Nx,Ox,Tx,Ux,Xx,by,ey,fy,ky,ly,oy,py,sy,zy,Cy,Dy,Iy,Jy,My,Ny,Sy,Vy,Wy,$y,az,dz,ez,fz,gz,jz,kz,lz,vz,yz,zz,Ez,Fz,Iz,Jz,Kz,Lz,Oz,Rz,Yz,$z,aA,fA,gA,jA,kA,lA,sA,vA,wA,BA,CA,FA,GA,HA,OA,RA,SA,_A,XA,$A,bB,gB,jB,kB,pB,qB,tB,vB,AB,DB,EB,JB,KB,NB,OB,PB,XB,_B,$B,eC,fC,iC,jC,oC,rC,sC,xC,yC,BC,CC,DC,KC,NC,OC,TC,UC,XC,YC,cD,fD,gD,nD,qD,rD,wD,xD,AD,FD,ID,JD,OD,PD,SD,TD,UD,_D,bE,cE,hE,mE,pE,qE,vE,wE,zE,AE,GE,JE,KE,PE,UE,XE,YE,bF,cF,fF,gF,kF,nF,oF,tF,uF,xF,yF,DF,GF,HF,MF,NF,QF,RF,TF,UF,XF,YF,ZF,bG,cG,fG,gG,hG,oG,rG,sG,xG,CG,FG,GG,LG,QG,TG,UG,ZG,cH,fH,gH,lH,qH,tH,uH,zH,AH,DH,EH,IH,LH,MH,RH,XH,_H,$H,eI,jI,mI,nI,uI,xI,yI,DI,GI,II,LI,RI,UI,VI,_I,dJ,gJ,hJ,nJ,sJ,vJ,wJ,DJ,GJ,HJ,OJ,RJ,SJ,XJ,aK,dK,eK,jK,oK,rK,sK,xK,CK,FK,GK,LK,QK,TK,UK,$K,cL,dL,lL,oL,pL,uL,vL,yL,zL,BL,CL,FL,GL,HL,KL,NL,TL,UL,XL,YL,ZL,_L,bM,cM,gM,hM,kM,lM,mM,qM,rM,uM,vM,wM,FM,IM,JM,OM,TM,WM,XM,cN,fN,gN,nN,qN,rN,yN,BN,CN,IN,JN,ON,PN,SN,RN,$P,aQ,gQ,hQ,oQ,pQ,tQ,uQ,zQ,AQ,FQ,GQ,MQ,NQ,RQ,SQ,XQ,YQ,bR,cR,hR,iR,pR,qR,wR,xR,BR,CR,IR,JR,PR,QR,WR,XR,bS,cS,hS,iS,nS,oS,tS,uS,AS,BS,GS,HS,LS,MS,US,VS,$S,aT,gT,hT,lT,mT,qT,rT,vT,wT,AT,BT,FT,GT,KT,LT,PT,QT,UT,VT,ZT,_T,cU,dU,hU,iU,mU,nU,rU,sU,xU,yU,DU,EU,KU,LU,PU,QU,WU,XU,$U,aV,eV,fV,kV,lV,rV,sV,xV,yV,EV,FV,JV,KV,OV,PV,TV,UV,ZV,_V,cW,dW,mW,nW,sW,tW,yW,zW,FW,GW,LW,MW,SW,TW,$W,aX,gX,hX,mX,nX,sX,tX,xX,yX,LX,MX,SX,TX,YX,ZX,cY,dY,iY,jY,pY,qY,vY,wY,CY,DY,IY,JY,OY,PY,UY,VY,_Y,$Y,qZ,rZ,wZ,xZ,PZ,QZ,UZ,VZ,ZZ,_Z,d_,e_,j_,k_,o_,p_,v_,w_,C_,D_,J_,K_,Q2,R2,U2,V2,H2,I2,L2,M2,n1,z2,C2,D2,E2,r2,u2,v2,w2,j2,m2,n2,o2,b2,e2,f2,g2,E1,V1,Y1,Z1,N1,Q1,R1,F1,I1,J1,w1,z1,A1,B1,o1,r1,s1,t1,R$,f1,i1,j1,_$,Z0,a1,b1,Q0,R0,U0,V0,q0,I0,L0,M0,z0,A0,D0,E0,r0,u0,v0,h0,i0,l0,m0,$$,c0,d0,S$,V$,W$,I$,J$,M$,N$,G$,e3,f3,X3,Y3,Q3,R3,J3,K3,b4,e4,g4,h4,m4,R4,S4,Y4,_4,i5,O5,P5,Y6,Z6,T6,U6,d7,e7,k7,l7,p7,r7,s7,w7,x7,z7,A7,H7,N7,O7,T7,U7,Z7,$7,a8,f8,h8,k8,n8,y8,z8,s8,t8,F8,G8,L8,N8,Y8,Z8,d9,f9,g9,l9,n9,o9,s9,u9,v9,A9,C9,D9,H9,L9,M9,laa,maa,gaa,haa,aaa,baa,X9,Y9,R9,S9,naa,vaa,yaa,Baa,Faa,Jaa,Naa,Raa,Vaa,Zaa,bba,fba,jba,nba,rba,wba,xba,Cba,Eba,Fba,Jba,Kba,Pba,Qba,Sba,bca,cca,Yba,Zba,gca,hca,lca,mca,qca,rca,tca,uca,yca,Aca,Eca,Fca,Jca,Mca,Pca,Sca,Zca,qda,rda,lda,mda,vda,yda,zda,Ada,Dda,Eda,Qda,Rda,Vda,Xda,dea,eea,_da,$da,iea,Jea,Kea,Pea,Uea,Vea,_ea,efa,Hpb,sfa,tfa,vfa,jfa,kfa,nfa,ofa,pfa,jla,kla,lla,mla,hla,ila,qla,rla,sla,tla,ola,pla,Zla,_la,Ima,Rma,Sma,$ma,ana,mna,nna,Ana,Fna,Gna,Hna,Ina,noa,ooa,poa,qoa,Coa,Doa,Eoa,Foa,upa,vpa,xpa,Xqa,Yqa,cra,dra,jra,kra,lra,mra,ora,pra,sra,tra,Jra,Kra,Lra,Mra,Ora,Pra,Qra,Rra,Osa,Psa,Qsa,Rsa,_sa,$sa,ata,bta,_ta,$ta,aua,bua,gua,hua,jua,DCa,sxa,txa,FCa,OCa,xxa,QCa,zxa,Fxa,Nxa,jya,nya,oya,pya,tya,uya,Cza,Dza,Eza,Iza,Nza,Vza,sAa,aBa,bBa,UAa,XAa,YAa,gBa,hBa,kBa,lBa,mBa,rBa,sBa,EBa,FBa,GBa,MBa,UBa,qCa,wBa,zBa,ABa,$Ga,BCa,ECa,PCa,aHa,hIa,iIa,jIa,kIa,Lfb,Mfb,Nfb,Ofb,UIa,VIa,WIa,XIa,HIa,OIa,$Ia,cJa,dJa,eJa,lJa,mJa,oJa,sJa,tJa,uJa,gKa,IKa,LKa,MKa,hKa,kKa,lKa,RJa,fKa,dKa,eKa,eLa,oLa,rLa,sLa,fLa,iLa,jLa,XKa,YKa,$Ka,aLa,QMa,RMa,SMa,TMa,LQa,fRa,pRa,XQa,YQa,ZQa,_Qa,$Qa,aRa,bRa,YRa,ZRa,aSa,bSa,CSa,DSa,GSa,HSa,K2a,JXa,bYa,JYa,KYa,XYa,YYa,iZa,jZa,EZa,FZa,HZa,IZa,SZa,TZa,UZa,VZa,U$a,V$a,I1a,J1a,K1a,L1a,T1a,U1a,V1a,W1a,v2a,w2a,x2a,y2a,L2a,E5a,F5a,G5a,H5a,K5a,L5a,M5a,N5a,T5a,U5a,V5a,W5a,Bfb,Cfb,Dfb,Efb,l6a,m6a,n6a,o6a,J6a,K6a,L6a,M6a,k7a,l7a,m7a,n7a,F8a,G8a,H8a,I8a,a9a,b9a,c9a,d9a,T8a,U8a,e9a,f9a,l9a,m9a,Peb,Reb,Teb,Ueb,jfb,kfb,Gfb,Hfb,Ifb,Jfb,Qfb,Rfb,Sfb,Tfb,Agb,Bgb,Hgb,Igb,Ogb,Pgb,Vgb,Wgb,ahb,bhb,chb,hhb,ihb,nhb,ohb,jib,kib,Kib,Lib,$ib,ajb,njb,ojb,Xjb,Yjb,Gkb,Hkb,Mkb,Nkb,Skb,Tkb,clb,dlb,nlb,olb,ylb,zlb,Jlb,Klb,Ulb,Vlb,bmb,cmb,hmb,imb,nmb,omb,smb,tmb,ghb,Imb,xmb,Xmb,Ymb,jnb,knb,mnb,nnb,znb,Anb,Gnb,Hnb,Nnb,Onb,$nb,aob,bob,Lqb,Mqb,Nqb,Oqb,Yqb,brb,drb,grb,irb,krb,Uw,gx,ux,Ix,_x,wy,Py,rz,Vz,pA,LA,eB,yB,UB,lC,HC,_C,lD,CD,XD,kE,BE,SE,hF,zF,lG,AG,OG,aH,oH,FH,UH,hI,sI,OI,bJ,qJ,BJ,MJ,_J,mK,AK,OK,ZK,iL,CM,RM,aN,lN,wN,HN,UN,YN,aO,eO,iO,mO,qO,uO,yO,CO,GO,IO,MO,QO,UO,YO,aP,eP,iP,mP,sP,yP,zP,Sj,Vj,Ak,a5,_P,Dm,Pm,Um,Vm,Wm,dn,vn,xn,zn,Jn,Mn,Nn,Pn,Qn,Rn,Sn,Tn,Un,Vn,Wn,Xn,Yn,Zn,_n,$n,ao,eo,jo,ko,oo,po,qo,ro,so,to,yo,Ao,Bo,Mo,Oo,So,Uo,dp,hp,op,qp,rp,tp,up,wp,xp,Ap,Cp,Fp,Lp,Mp,Yp,bq,cq,dq,S_,es,rs,vs,ws,xs,Gs,Ws,Ys,_s,it,lt,mt,ot,pt,qt,rt,st,tt,ut,vt,wt,xt,yt,zt,At,Bt,Et,Jt,Kt,Ot,Pt,Qt,Rt,St,Tt,Yt,_t,$t,ku,mu,qu,su,Du,Hu,Ou,Qu,Ru,Tu,Uu,Wu,Xu,_u,av,dv,jv,kv,wv,Bv,Cv,Dv,wla,Jhb,Lhb,Nlb,Lbb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb,Ktb];var gh=[Ltb,Oxa,Qxa,Wza,Yza,VBa,XBa,lRa,mRa,nRa,oRa,TQa,pi,ri,ti,vi,xi,zi,Bi,Di,Fi,Hi,Ji,Li,Ni,Pi,Ri,Ti,Vi,Xi,Zi,$i,bj,dj,fj,hj,jj,lj,nj,pj,rj,tj,vj,xj,zj,Bj,Dj,Fj,ik,lk,nk,rk,sk,iZ,Lo,ip,P_,ju,Iu,Ltb,Ltb,Ltb,Ltb,Ltb];var hh=[Mtb,qRa,mk,ok,qk,tk,dZ,Mtb];var ih=[Ntb,pk];var jh=[Otb,zya,fHa,Otb];var kh=[Ptb,OZ];var lh=[Qtb,FZ,kp,NZ,Ku,Qtb,Qtb,Qtb];var mh=[Rtb,cn,Fs,Rtb];var nh=[Stb,Jw,Mw,Yw,$w,kx,nx,yx,Bx,Mx,Px,dy,gy,By,Ey,Uy,Xy,xz,Az,_z,bA,uA,xA,QA,TA,iB,lB,CB,FB,ZB,aC,qC,tC,MC,PC,eD,hD,pD,sD,HD,KD,aE,dE,oE,rE,IE,LE,WE,ZE,mF,pF,FF,IF,qG,tG,EG,HG,SG,VG,eH,hH,sH,vH,KH,NH,ZH,aI,lI,oI,wI,zI,TI,WI,fJ,iJ,uJ,xJ,FJ,IJ,QJ,TJ,cK,fK,qK,tK,EK,HK,SK,VK,bL,eL,nL,qL,HM,KM,VM,YM,eN,hN,pN,sN,AN,DN,KN,LN,MN,bQ,cQ,dQ,iQ,jQ,kQ,qQ,rQ,sQ,vQ,wQ,xQ,BQ,CQ,DQ,HQ,IQ,JQ,OQ,PQ,QQ,TQ,UQ,VQ,ZQ,_Q,$Q,dR,eR,fR,jR,kR,lR,rR,sR,tR,yR,zR,AR,DR,ER,FR,KR,LR,MR,RR,SR,TR,YR,ZR,_R,dS,eS,fS,jS,kS,lS,pS,qS,rS,vS,wS,xS,CS,DS,ES,IS,JS,KS,NS,OS,PS,WS,XS,YS,bT,cT,dT,iT,jT,kT,nT,oT,pT,sT,tT,uT,xT,yT,zT,CT,DT,ET,HT,IT,JT,MT,NT,OT,RT,ST,TT,WT,XT,YT,$T,aU,bU,eU,fU,gU,jU,kU,lU,oU,pU,qU,tU,uU,vU,zU,AU,BU,FU,GU,HU,MU,NU,OU,RU,SU,TU,YU,ZU,_U,bV,cV,dV,gV,hV,iV,mV,nV,oV,tV,uV,vV,zV,AV,BV,GV,HV,IV,LV,MV,NV,QV,RV,SV,VV,WV,XV,$V,aW,bW,eW,fW,gW,oW,pW,qW,uW,vW,wW,AW,BW,CW,HW,IW,JW,NW,OW,PW,UW,VW,WW,bX,cX,dX,iX,jX,kX,oX,pX,qX,uX,vX,wX,zX,AX,BX,NX,OX,PX,UX,VX,WX,_X,$X,aY,eY,fY,gY,lY,mY,nY,rY,sY,tY,xY,yY,zY,EY,FY,GY,KY,LY,MY,QY,RY,SY,WY,XY,YY,aZ,bZ,cZ,sZ,tZ,uZ,yZ,zZ,AZ,RZ,SZ,TZ,WZ,XZ,YZ,$Z,a_,b_,f_,g_,h_,l_,m_,n_,q_,r_,s_,x_,y_,z_,E_,F_,G_,L_,M_,N_,T2,W2,K2,N2,B2,t2,l2,d2,X1,_1,P1,S1,H1,K1,y1,q1,h1,k1,$0,T0,K0,C0,t0,k0,b0,U$,X$,L$,g3,h3,i3,Z3,_3,$3,S3,T3,U3,L3,M3,N3,i4,j4,k4,T4,U4,V4,$4,j5,Q5,R5,S5,_6,$6,a7,V6,W6,X6,f7,g7,h7,m7,n7,o7,t7,u7,v7,B7,C7,D7,I7,P7,Q7,R7,V7,W7,X7,b8,c8,d8,i8,l8,o8,A8,B8,C8,u8,v8,w8,H8,I8,J8,Q8,_8,$8,a9,h9,i9,j9,p9,q9,r9,w9,x9,y9,E9,F9,G9,N9,O9,P9,iaa,jaa,kaa,caa,daa,eaa,Z9,_9,$9,T9,U9,V9,waa,zaa,Caa,Gaa,Kaa,Oaa,Saa,Waa,_aa,cba,gba,kba,oba,sba,yba,zba,Aba,Gba,Hba,Iba,Lba,Mba,Nba,Tba,Uba,Vba,dca,eca,fca,_ba,$ba,aca,nca,oca,pca,vca,wca,xca,Bca,Gca,Hca,Ica,Nca,Qca,Tca,Uca,Vca,_ca,sda,tda,uda,nda,oda,pda,xda,Sda,Tda,Uda,Yda,fea,gea,hea,aea,bea,cea,Lea,Mea,Nea,Wea,Xea,Yea,ffa,mfa,$la,wma,Jma,Oma,Tma,Yma,bna,ina,ona,vna,Zqa,vra,RCa,Axa,Gxa,Jxa,Pxa,Rxa,Sxa,kya,lya,mya,wya,hza,iza,Fza,Oza,Rza,Xza,Zza,_za,tAa,uAa,vAa,WAa,ZAa,uBa,HBa,NBa,QBa,WBa,YBa,ZBa,rCa,sCa,tCa,yBa,BBa,cHa,PHa,QHa,Veb,bJa,nJa,qJa,wJa,KKa,NKa,jKa,mKa,qLa,hLa,_Ka,OMa,OQa,PQa,kRa,RQa,VQa,$Ra,FSa,V8a,lfb,Cgb,Jgb,Qgb,Xgb,Wkb,Xkb,Ykb,Zkb,$kb,alb,glb,hlb,ilb,jlb,llb,mlb,rlb,slb,tlb,ulb,wlb,xlb,Clb,Dlb,Elb,Flb,Hlb,Ilb,rmb,wmb,Dnb,Enb,Fnb,Knb,Lnb,Mnb,Hj,Jj,Lj,Nj,Pj,Rj,AP,ak,ck,ek,gk,Hk,Ok,Em,Gm,Jm,Km,Rm,DX,Xm,Ym,rn,sn,tn,un,wn,yn,An,Bn,Cn,Dn,eZ,Kn,Ln,gZ,hZ,jZ,bo,co,kZ,lZ,mZ,nZ,oZ,Fo,Ko,GZ,Po,Qo,Ro,To,Vo,Xo,Zo,$o,bp,jp,LZ,pp,Op,Xp,Q_,gq,nq,fs,hs,ls,ms,ss,ys,zs,Ss,Ts,Us,Vs,Xs,Zs,$s,at,bt,ct,jt,kt,Ct,Dt,du,iu,nu,ou,pu,ru,tu,vu,xu,zu,Bu,Ju,Pu,mv,vv,b3,c3,Fha,TAa,fBa,vBa,pFa,xJa,BJa,DJa,EJa,GJa,HJa,JJa,LJa,MJa,OJa,TJa,UJa,VJa,XJa,YJa,cRa,eRa,__a,c1a,C8a,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb,Stb];var oh=[Ttb,WN,_N,cO,gO,kO,oO,sO,wO,WO,cP,gP,qP,uP,JP,uk,EZ,IZ,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb,Ttb];var ph=[Utb,KP,vk,Wp,uv,Utb,Utb,Utb];var qh=[Vtb,LP];var rh=[Wtb,Rl,qr,Wtb];var sh=[Xtb,JZ];var th=[Ytb,Fm,gs,Ytb];var uh=[Ztb,ln,Ns,Ztb];var vh=[_tb,hY];var wh=[$tb,c1,W0,F0,e0,O$,SCa,Uxa,_xa,$xa,aya,bya,gya,iya,xya,Mya,eza,fza,Gza,aAa,gAa,iAa,jAa,kAa,pAa,rAa,$Ba,fCa,gCa,hCa,iCa,nCa,pCa,dHa,sHa,MHa,NHa,AO,EO,KO,OO,SO,_O,kP,oP,wP,FP,HP,wk,Ck,nQ,Pk,Yk,ml,Sl,qm,Cm,YW,_W,Hm,EX,fZ,Go,DZ,cp,np,MZ,Kp,Pp,Tp,oq,xq,Nq,rr,Tr,ds,js,eu,Cu,Nu,iv,nv,rv,R4a,A8a,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb,$tb];var xh=[aub,MP];var yh=[bub,NP,O_,bub];var zh=[cub,Wya,CHa,cub];var Ah=[dub,wU];var Bh=[eub,km,Nr,eub];var Ch=[fub,ZW];var Dh=[gub,TY];var Eh=[hub,iJa,N0,w0,Cxa,Dxa,Hxa,Ixa,Kxa,Mxa,Wxa,Yxa,Zxa,cya,hya,Cya,Fya,Gya,Pya,Rya,Sya,dza,Kza,Lza,Pza,Qza,Sza,Uza,cAa,eAa,fAa,lAa,qAa,tBa,JBa,KBa,OBa,PBa,RBa,TBa,bCa,dCa,eCa,jCa,oCa,iHa,lHa,mHa,vHa,xHa,yHa,LHa,QIa,tLa,kLa,bLa,Y8a,Yeb,ofb,ehb,khb,Sqb,$qb,nrb,WP,Ek,Gk,Ik,Jk,Kk,Mk,WQ,Qk,Rk,Vk,Wk,VR,cl,dl,el,fl,ll,TS,rl,tl,vl,xl,zl,Bl,Dl,Fl,Hl,Jl,Ll,Ml,Ol,Pl,Vl,_l,hm,im,jm,lm,tm,ym,fX,Im,Lm,Nm,Zm,en,fn,hn,kn,pn,qn,Do,vZ,HZ,lp,KZ,c_,Sp,B_,fq,hq,iq,jq,lq,pq,qq,uq,vq,Dq,Eq,Fq,Gq,Mq,Sq,Uq,Wq,Yq,_q,ar,cr,er,gr,ir,kr,lr,nr,or,ur,Br,Kr,Lr,Mr,Or,Wr,$r,ks,ns,ps,As,Hs,Is,Ks,Ms,Rs,bu,Lu,qv,mi,i9a,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub,hub];var Fh=[iub,Exa,Mza,LBa];var Gh=[jub,Tya,zHa,jub];var Hh=[kub,Txa,$za,_Ba,kW,pm,Sr,kub];var Ih=[lub,Bm,cs,lub];var Jh=[mub,zk];var Kh=[nub,QN,n0,H$,Lxa,Vxa,Xxa,fya,vya,Aya,Bya,Dya,Eya,Hya,Iya,Jya,Kya,Lya,Nya,Oya,$ya,gza,Tza,bAa,dAa,oAa,SBa,aCa,cCa,mCa,bHa,gHa,hHa,jHa,kHa,nHa,oHa,pHa,qHa,rHa,tHa,uHa,HHa,OHa,Rqb,_qb,mrb,mQ,Lk,Nk,Sk,HR,Xk,al,bl,zS,gl,hl,il,SS,ql,sl,ul,wl,yl,Al,Cl,El,Gl,Il,Kl,Nl,Ql,Tl,Wl,Xl,Yl,Zl,qV,am,bm,cm,dm,jW,rm,sm,IX,gn,pZ,Jo,Qp,Rp,Up,Vp,kq,mq,rq,wq,Bq,Cq,Hq,Iq,Jq,Rq,Tq,Vq,Xq,Zq,$q,br,dr,fr,hr,jr,mr,pr,sr,vr,wr,zr,Ar,Dr,Er,Fr,Gr,Ur,Vr,Js,hu,ov,pv,sv,tv,i$,bka,cka,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub,nub];var Lh=[oub,Uj,Wj,oub];var Mh=[pub,Tj,Xj,pub];var Nh=[qub,yya,eHa,qub];var Oh=[rub,xW];var Ph=[sub,XW];var Qh=[tub,Mm,os,tub];var Rh=[uub,RP];var Sh=[vub,eya,Yya,bza,RHa,SHa,nAa,lCa,EHa,JHa,PIa,X8a,Xeb,nfb,qmb,vmb,Qqb,Zqb,lrb,LQ,nR,OR,sS,nl,pl,Ul,VU,$l,DV,em,fm,mm,nm,om,EW,um,vm,xm,Om,an,bn,BY,CZ,Ip,Jp,i_,I_,Oq,Qq,tr,Cr,Hr,Ir,Pr,Qr,Rr,Xr,Yr,_r,qs,Ds,Es,gv,hv];var Th=[wub,CP];var Uh=[xub,BP];var Vh=[yub,rX];var Wh=[zub,dya,Qya,mAa,kCa,wHa,$k,jl,kl,_S,ol,JU,wV,YV,lW,wm,RW,zm,Am,CX,_m,$m,XX,bY,Aq,Kq,Lq,Pq,Zr,as,bs,Bs,Cs,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub,zub];var Xh=[Aub,_k,mS,QS,RS,fT,QW,JX,RX,zq,Aub,Aub,Aub,Aub,Aub,Aub];var Yh=[Bub,cza,KHa,Zk,gS,yq,Bub,Bub];var Zh=[Cub,aS];var _h=[Dub,M4,kha,F1a];var $h=[Eub,Vya,BHa,Fk,eq,Eub,Eub,Eub];var ai=[Fub,Xya,_ya,DHa,GHa,fQ,gm,Jr];var bi=[Gub,Tk,iW,sq];var ci=[Hub,oR];var di=[Iub,Uya,Zya,AHa,FHa,Uk,tq,Iub];var ei=[Jub,vR];return{__GLOBAL__I_000101:sgb,__GLOBAL__sub_I_bind_cpp:fab,__GLOBAL__sub_I_binding_cpp:m3,__GLOBAL__sub_I_capping_geom_cpp:Tga,__GLOBAL__sub_I_clip_cpp:iWa,__GLOBAL__sub_I_context_cpp:oXa,__GLOBAL__sub_I_create_cpp:Bja,__GLOBAL__sub_I_element_cpp:u5a,__GLOBAL__sub_I_embind_cpp:j$,__GLOBAL__sub_I_geom_query_cpp:Oja,__GLOBAL__sub_I_glbuffermanager_cpp:gSa,__GLOBAL__sub_I_group_cpp:Hka,__GLOBAL__sub_I_infos_cpp:fXa,__GLOBAL__sub_I_instance_cpp:AZa,__GLOBAL__sub_I_instance_cpp_3059:C4a,__GLOBAL__sub_I_iostream_cpp:tgb,__GLOBAL__sub_I_net_command_cpp:o9a,__GLOBAL__sub_I_scene_iterator_cpp:M2a,__GLOBAL__sub_I_state_cpp:B7a,__GLOBAL__sub_I_svg_common_cpp:X1a,__GLOBAL__sub_I_traverse_cpp:HXa,__GLOBAL__sub_I_web_client_cpp:k$,___divdi3:zrb,___errno_location:Tbb,___getTypeName:Jbb,___muldi3:Brb,___udivdi3:Crb,___uremdi3:Drb,_bitshift64Lshr:Erb,_bitshift64Shl:Frb,_emscripten_replace_memory:Jg,_free:Lbb,_i64Add:vrb,_i64Subtract:wrb,_llvm_bswap_i32:Grb,_llvm_round_f64:Hrb,_main:s$,_malloc:Kbb,_memcpy:Irb,_memmove:Jrb,_memset:Krb,_pthread_cond_broadcast:Lrb,_pthread_mutex_lock:Mrb,_pthread_mutex_unlock:Nrb,_round:Orb,_roundf:Prb,_sbrk:Qrb,dynCall_di:Rrb,dynCall_dii:Srb,dynCall_i:Trb,dynCall_ii:Urb,dynCall_iid:Vrb,dynCall_iii:Wrb,dynCall_iiii:Xrb,dynCall_iiiii:Yrb,dynCall_iiiiid:Zrb,dynCall_iiiiidi:_rb,dynCall_iiiiii:$rb,dynCall_iiiiiid:asb,dynCall_iiiiiidi:bsb,dynCall_iiiiiii:csb,dynCall_iiiiiiii:dsb,dynCall_iiiiiiiii:esb,dynCall_iiiiiiiiiiiiiiid:fsb,dynCall_iiiiiiiiiiiiiiiid:gsb,dynCall_v:hsb,dynCall_vd:isb,dynCall_vdd:jsb,dynCall_vddi:ksb,dynCall_vdi:lsb,dynCall_vi:msb,dynCall_vid:nsb,dynCall_vidd:osb,dynCall_viddd:psb,dynCall_vidddiii:qsb,dynCall_viddi:rsb,dynCall_vidi:ssb,dynCall_vidiii:tsb,dynCall_vii:usb,dynCall_viid:vsb,dynCall_viidd:wsb,dynCall_viiddd:xsb,dynCall_viiddi:ysb,dynCall_viidi:zsb,dynCall_viididididi:Asb,dynCall_viidii:Bsb,dynCall_viidiii:Csb,dynCall_viii:Dsb,dynCall_viiid:Esb,dynCall_viiidd:Fsb,dynCall_viiiddddi:Gsb,dynCall_viiiddi:Hsb,dynCall_viiidi:Isb,dynCall_viiididididi:Jsb,dynCall_viiidii:Ksb,dynCall_viiii:Lsb,dynCall_viiiid:Msb,dynCall_viiiidddiiii:Nsb,dynCall_viiiidi:Osb,dynCall_viiiidii:Psb,dynCall_viiiidiiii:Qsb,dynCall_viiiii:Rsb,dynCall_viiiiidd:Ssb,dynCall_viiiiiddd:Tsb,dynCall_viiiiiddi:Usb,dynCall_viiiiidi:Vsb,dynCall_viiiiidii:Wsb,dynCall_viiiiidiii:Xsb,dynCall_viiiiidiiii:Ysb,dynCall_viiiiii:Zsb,dynCall_viiiiiidd:_sb,dynCall_viiiiiiddd:$sb,dynCall_viiiiiidiii:atb,dynCall_viiiiiii:btb,dynCall_viiiiiiii:ctb,dynCall_viiiiiiiii:dtb,dynCall_viiiiiiiiii:etb,dynCall_viiiiiiiiiii:ftb,dynCall_viiiiiiiiiiii:gtb,dynCall_viiiiiiiiiiiii:htb,dynCall_viiiiiiiiiiiiii:itb,dynCall_viiiiiiiiiiiiiii:jtb,dynCall_viiiiiiiiiiiiiiii:ktb,dynCall_viiiiiiiiiiiiiiiii:ltb,establishStackSpace:ii,getTempRet0:li,runPostSets:urb,setTempRet0:ki,setThrew:ji,stackAlloc:fi,stackRestore:hi,stackSave:gi}})
// EMSCRIPTEN_END_ASM
(e.Nc,e.Oc,buffer),Fb=e.__GLOBAL__I_000101=Z.__GLOBAL__I_000101,Ib=e.__GLOBAL__sub_I_bind_cpp=Z.__GLOBAL__sub_I_bind_cpp,Zb=e.__GLOBAL__sub_I_binding_cpp=Z.__GLOBAL__sub_I_binding_cpp,Yb=e.__GLOBAL__sub_I_capping_geom_cpp=Z.__GLOBAL__sub_I_capping_geom_cpp,Tb=e.__GLOBAL__sub_I_clip_cpp=Z.__GLOBAL__sub_I_clip_cpp,Rb=e.__GLOBAL__sub_I_context_cpp=Z.__GLOBAL__sub_I_context_cpp,Xb=e.__GLOBAL__sub_I_create_cpp=Z.__GLOBAL__sub_I_create_cpp,Lb=e.__GLOBAL__sub_I_element_cpp=
Z.__GLOBAL__sub_I_element_cpp,Qb=e.__GLOBAL__sub_I_embind_cpp=Z.__GLOBAL__sub_I_embind_cpp,Wb=e.__GLOBAL__sub_I_geom_query_cpp=Z.__GLOBAL__sub_I_geom_query_cpp,Ub=e.__GLOBAL__sub_I_glbuffermanager_cpp=Z.__GLOBAL__sub_I_glbuffermanager_cpp,Vb=e.__GLOBAL__sub_I_group_cpp=Z.__GLOBAL__sub_I_group_cpp,Sb=e.__GLOBAL__sub_I_infos_cpp=Z.__GLOBAL__sub_I_infos_cpp,Pb=e.__GLOBAL__sub_I_instance_cpp=Z.__GLOBAL__sub_I_instance_cpp,Mb=e.__GLOBAL__sub_I_instance_cpp_3059=Z.__GLOBAL__sub_I_instance_cpp_3059,Hb=e.__GLOBAL__sub_I_iostream_cpp=
Z.__GLOBAL__sub_I_iostream_cpp,Jb=e.__GLOBAL__sub_I_net_command_cpp=Z.__GLOBAL__sub_I_net_command_cpp,Nb=e.__GLOBAL__sub_I_scene_iterator_cpp=Z.__GLOBAL__sub_I_scene_iterator_cpp,Kb=e.__GLOBAL__sub_I_state_cpp=Z.__GLOBAL__sub_I_state_cpp,Ob=e.__GLOBAL__sub_I_svg_common_cpp=Z.__GLOBAL__sub_I_svg_common_cpp,Gb=e.__GLOBAL__sub_I_traverse_cpp=Z.__GLOBAL__sub_I_traverse_cpp,$b=e.__GLOBAL__sub_I_web_client_cpp=Z.__GLOBAL__sub_I_web_client_cpp;e.___divdi3=Z.___divdi3;e.___errno_location=Z.___errno_location;
var Ne=e.___getTypeName=Z.___getTypeName;e.___muldi3=Z.___muldi3;e.___udivdi3=Z.___udivdi3;e.___uremdi3=Z.___uremdi3;e._bitshift64Lshr=Z._bitshift64Lshr;e._bitshift64Shl=Z._bitshift64Shl;var cb=e._emscripten_replace_memory=Z._emscripten_replace_memory,Oe=e._free=Z._free;e._i64Add=Z._i64Add;e._i64Subtract=Z._i64Subtract;e._llvm_bswap_i32=Z._llvm_bswap_i32;e._llvm_round_f64=Z._llvm_round_f64;e._main=Z._main;var Ka=e._malloc=Z._malloc;e._memcpy=Z._memcpy;e._memmove=Z._memmove;e._memset=Z._memset;
e._pthread_cond_broadcast=Z._pthread_cond_broadcast;e._pthread_mutex_lock=Z._pthread_mutex_lock;e._pthread_mutex_unlock=Z._pthread_mutex_unlock;e._round=Z._round;e._roundf=Z._roundf;e._sbrk=Z._sbrk;e.establishStackSpace=Z.establishStackSpace;e.getTempRet0=Z.getTempRet0;e.runPostSets=Z.runPostSets;e.setTempRet0=Z.setTempRet0;e.setThrew=Z.setThrew;var da=e.stackAlloc=Z.stackAlloc,ea=e.stackRestore=Z.stackRestore,ca=e.stackSave=Z.stackSave;e.dynCall_di=Z.dynCall_di;e.dynCall_dii=Z.dynCall_dii;
e.dynCall_i=Z.dynCall_i;e.dynCall_ii=Z.dynCall_ii;e.dynCall_iid=Z.dynCall_iid;e.dynCall_iii=Z.dynCall_iii;e.dynCall_iiii=Z.dynCall_iiii;e.dynCall_iiiii=Z.dynCall_iiiii;e.dynCall_iiiiid=Z.dynCall_iiiiid;e.dynCall_iiiiidi=Z.dynCall_iiiiidi;e.dynCall_iiiiii=Z.dynCall_iiiiii;e.dynCall_iiiiiid=Z.dynCall_iiiiiid;e.dynCall_iiiiiidi=Z.dynCall_iiiiiidi;e.dynCall_iiiiiii=Z.dynCall_iiiiiii;e.dynCall_iiiiiiii=Z.dynCall_iiiiiiii;e.dynCall_iiiiiiiii=Z.dynCall_iiiiiiiii;e.dynCall_iiiiiiiiiiiiiiid=Z.dynCall_iiiiiiiiiiiiiiid;
e.dynCall_iiiiiiiiiiiiiiiid=Z.dynCall_iiiiiiiiiiiiiiiid;e.dynCall_v=Z.dynCall_v;e.dynCall_vd=Z.dynCall_vd;e.dynCall_vdd=Z.dynCall_vdd;e.dynCall_vddi=Z.dynCall_vddi;e.dynCall_vdi=Z.dynCall_vdi;e.dynCall_vi=Z.dynCall_vi;e.dynCall_vid=Z.dynCall_vid;e.dynCall_vidd=Z.dynCall_vidd;e.dynCall_viddd=Z.dynCall_viddd;e.dynCall_vidddiii=Z.dynCall_vidddiii;e.dynCall_viddi=Z.dynCall_viddi;e.dynCall_vidi=Z.dynCall_vidi;e.dynCall_vidiii=Z.dynCall_vidiii;e.dynCall_vii=Z.dynCall_vii;e.dynCall_viid=Z.dynCall_viid;
e.dynCall_viidd=Z.dynCall_viidd;e.dynCall_viiddd=Z.dynCall_viiddd;e.dynCall_viiddi=Z.dynCall_viiddi;e.dynCall_viidi=Z.dynCall_viidi;e.dynCall_viididididi=Z.dynCall_viididididi;e.dynCall_viidii=Z.dynCall_viidii;e.dynCall_viidiii=Z.dynCall_viidiii;e.dynCall_viii=Z.dynCall_viii;e.dynCall_viiid=Z.dynCall_viiid;e.dynCall_viiidd=Z.dynCall_viiidd;e.dynCall_viiiddddi=Z.dynCall_viiiddddi;e.dynCall_viiiddi=Z.dynCall_viiiddi;e.dynCall_viiidi=Z.dynCall_viiidi;e.dynCall_viiididididi=Z.dynCall_viiididididi;
e.dynCall_viiidii=Z.dynCall_viiidii;e.dynCall_viiii=Z.dynCall_viiii;e.dynCall_viiiid=Z.dynCall_viiiid;e.dynCall_viiiidddiiii=Z.dynCall_viiiidddiiii;e.dynCall_viiiidi=Z.dynCall_viiiidi;e.dynCall_viiiidii=Z.dynCall_viiiidii;e.dynCall_viiiidiiii=Z.dynCall_viiiidiiii;e.dynCall_viiiii=Z.dynCall_viiiii;e.dynCall_viiiiidd=Z.dynCall_viiiiidd;e.dynCall_viiiiiddd=Z.dynCall_viiiiiddd;e.dynCall_viiiiiddi=Z.dynCall_viiiiiddi;e.dynCall_viiiiidi=Z.dynCall_viiiiidi;e.dynCall_viiiiidii=Z.dynCall_viiiiidii;
e.dynCall_viiiiidiii=Z.dynCall_viiiiidiii;e.dynCall_viiiiidiiii=Z.dynCall_viiiiidiiii;e.dynCall_viiiiii=Z.dynCall_viiiiii;e.dynCall_viiiiiidd=Z.dynCall_viiiiiidd;e.dynCall_viiiiiiddd=Z.dynCall_viiiiiiddd;e.dynCall_viiiiiidiii=Z.dynCall_viiiiiidiii;e.dynCall_viiiiiii=Z.dynCall_viiiiiii;e.dynCall_viiiiiiii=Z.dynCall_viiiiiiii;e.dynCall_viiiiiiiii=Z.dynCall_viiiiiiiii;e.dynCall_viiiiiiiiii=Z.dynCall_viiiiiiiiii;e.dynCall_viiiiiiiiiii=Z.dynCall_viiiiiiiiiii;e.dynCall_viiiiiiiiiiii=Z.dynCall_viiiiiiiiiiii;
e.dynCall_viiiiiiiiiiiii=Z.dynCall_viiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiii=Z.dynCall_viiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiii=Z.dynCall_viiiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiiii=Z.dynCall_viiiiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiiiii=Z.dynCall_viiiiiiiiiiiiiiiii;e.asm=Z;e.getMemory=function(a){return ua?mb?Ka(a):wa(a):ta(a)};e.addRunDependency=vb;e.removeRunDependency=wb;e.FS_createFolder=ld;e.FS_createPath=md;e.FS_createDataFile=od;e.FS_createPreloadedFile=td;e.FS_createLazyFile=sd;
e.FS_createLink=qd;e.FS_createDevice=pd;e.FS_unlink=bd;
if(xb)if((String.prototype.startsWith?xb.startsWith(Db):0===xb.indexOf(Db))||("function"===typeof e.locateFile?xb=e.locateFile(xb):e.memoryInitializerPrefixURL&&(xb=e.memoryInitializerPrefixURL+xb)),ma||na){var ch=e.readBinary(xb);r.set(ch,8)}else{var eh=function(){e.readAsync(xb,dh,function(){throw"could not load memory initializer "+xb;})};vb();var dh=function(a){a.byteLength&&(a=new Uint8Array(a));r.set(a,8);e.memoryInitializerRequest&&delete e.memoryInitializerRequest.response;wb()},fh=qa(xb);
if(fh)dh(fh.buffer);else if(e.memoryInitializerRequest){var gh=function(){var a=e.memoryInitializerRequest,b=a.response;if(200!==a.status&&0!==a.status)if(b=qa(e.memoryInitializerRequestURL))b=b.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+a.status+", retrying "+xb);eh();return}dh(b)};e.memoryInitializerRequest.response?setTimeout(gh,0):e.memoryInitializerRequest.addEventListener("load",gh)}else eh()}
function ra(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}ra.prototype=Error();ra.prototype.constructor=ra;ub=function hh(){e.calledRun||ih();e.calledRun||(ub=hh)};
e.callMain=function(a){a=a||[];mb||(mb=!0,fb(ib));var b=a.length+1,c=da(4*(b+1));v[c>>2]=Pa(e.thisProgram);for(var d=1;d<b;d++)v[(c>>2)+d]=Pa(a[d-1]);v[(c>>2)+b]=0;try{var f=e._main(b,c,0);jh(f,!0)}catch(g){g instanceof ra||("SimulateInfiniteLoop"==g?e.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),e.printErr("exception thrown: "+a),e.quit(1,g)))}finally{}};
function ih(a){function b(){if(!e.calledRun&&(e.calledRun=!0,!Ga)){mb||(mb=!0,fb(ib));fb(jb);if(e.onRuntimeInitialized)e.onRuntimeInitialized();e._main&&kh&&e.callMain(a);if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var b=e.postRun.shift();lb.unshift(b)}fb(lb)}}a=a||e.arguments;if(!(0<sb)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)nb();fb(hb);0<sb||e.calledRun||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},
1);b()},1)):b())}}e.run=ih;function jh(a,b){if(!b||!e.noExitRuntime||0!==a){if(!e.noExitRuntime&&(Ga=!0,$a=void 0,fb(kb),e.onExit))e.onExit(a);ma&&process.exit(a);e.quit(a,new ra(a))}}e.exit=jh;function Ha(a){if(e.onAbort)e.onAbort(a);void 0!==a?(e.print(a),e.printErr(a),a=JSON.stringify(a)):a="";Ga=!0;throw"abort("+a+"). Build with -s ASSERTIONS=1 for more info.";}e.abort=Ha;if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=[e.preInit]);0<e.preInit.length;)e.preInit.pop()();var kh=!0;
e.noInitialRun&&(kh=!1);e.noExitRuntime=!0;ih();
};
var catchExceptions = function (name, func) {
return function () {
try {
func.apply(this, arguments);
} catch (e) {
console.log("Unhandled exception in " + name + "():");
console.log(e);
}
};
};
var getElement = function (id) {
if (typeof id !== "string")
return id;
return document.getElementById (id);
};
var core_pool = [];
var getAvailableCore = function () {
for (var i = 0; i < core_pool.length; ++i) {
if (core_pool[i].$$available) {
return core_pool[i];
}
}
return null;
};
var enginePath;
if (_SC) {
enginePath = _SC._enginePath;
}
// used by Emscripten to find .wasm file
var locateFile = function (path) {
if (enginePath) {
return enginePath + "/" + path;
}
return path;
};
var createInstance = function (args) {
var facade;
if (args.isWrapper) {
// populate same instance object returned from engine-loader.js
facade = args.base;
args = args.args;
} else {
facade = {};
}
var container = getElement (args.container);
if (! container)
throw new TypeError ("'container' argument is missing or invalid");
facade.container = container;
var core = getAvailableCore ();
var core_is_new = ! core;
// provides reference point for absolute position
var sub_container = document.createElement ("div");
sub_container.setAttribute ("style", "position: relative; overflow: hidden; width: 100%; height: 100%; padding: 0; margin: 0; border: 0;");
if (core_is_new) {
core = {
$$available: false,
locateFile: locateFile,
};
core_pool.push (core);
core.callAfterMap = {
index: 0,
indexedWrappers: {},
};
// wraps canvas and SSR elements
var wrapper = document.createElement ("div");
wrapper.setAttribute ("style", "position: absolute; overflow: hidden; width: 100%; height: 100%; padding: 0; margin: 0; border: 0;");
var canvas = document.createElement ("canvas");
canvas.setAttribute ("style", "position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 0; margin: 0; border: 0;");
core.canvas = canvas;
core.$$wrapper = wrapper;
} else {
core.$$available = false;
}
core.canvas.style.display = "";
core.$$wrapper.appendChild (core.canvas);
// facade will only call core functions if it matches core.$$facade
core.$$facade = facade;
core.$$onReady = catchExceptions("onReady", function () {
var onReady = args.onReady ? args.onReady : args.on_ready;
if (typeof onReady === "function") {
onReady(facade);
}
});
if (typeof args.onError === "function") {
// XXX after abort() is called, this core cannot be reused
core.onAbort = catchExceptions("onError", function (message) {
// avoid presenting cryptic Emscripten errors as our own
args.onError("fatal error: see console");
});
}
// sits on top of wrapper, preventing wrapper and children from receiving input events
var event_blocker = document.createElement ("div");
event_blocker.setAttribute ("style", "position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 0; margin: 0; border: 0;");
event_blocker.onmousedown = function (e) { e.preventDefault (); }; // prevent cursor change on drag
event_blocker.oncontextmenu = function (e) { e.preventDefault (); };
sub_container.appendChild (core.$$wrapper);
sub_container.appendChild (event_blocker);
container.innerHTML = "";
container.appendChild (sub_container);
if (core_is_new) {
createInstanceImpl.call (core);
} else {
setTimeout (function () { core.$$setReady (); });
}
return facade;
};
// process deferred calls to createInstance() from engine-loader.js
(function () {
if (typeof _SC !== "undefined" && Array.isArray (_SC._deferredInstances))
for (var i = 0; i < _SC._deferredInstances.length; i++)
createInstance (_SC._deferredInstances[i]);
})();
return {
createInstance: createInstance
};
})();
(function(m,r,R,S,E,L){function Ka(a,b,c,d,e){return ha(a,a,c,d,b,a.defaultView.pageXOffset,a.defaultView.pageYOffset).then(function(f){q("Document cloned");var g="data-html2canvas-node"+e,h="["+g+"='"+e+"']";a.querySelector(h).removeAttribute(g);var g=f.contentWindow,k=g.document.querySelector(h);return("function"===typeof b.onclone?Promise.resolve(b.onclone(g.document)):Promise.resolve(!0)).then(function(){return ia(k,f,b,c,d)})})}function ia(a,b,c,d,e){var f=b.contentWindow,g=new T(f.document),
h=new u(c,g),k=U(a);d="view"===c.type?d:La(f.document);e="view"===c.type?e:Ma(f.document);var F=new c.renderer(d,e,h,c,r);return(new n(a,F,g,h,c)).ready.then(function(){q("Finished rendering");var d;d="view"===c.type?ja(F.canvas,{width:F.canvas.width,height:F.canvas.height,top:0,left:0,x:0,y:0}):a===f.document.body||a===f.document.documentElement||null!=c.canvas?F.canvas:ja(F.canvas,{width:null!=c.width?c.width:k.width,height:null!=c.height?c.height:k.height,top:k.top,left:k.left,x:f.pageXOffset,
y:f.pageYOffset});c.removeContainer&&(b.parentNode.removeChild(b),q("Cleaned up container"));return d})}function ja(a,b){var c=r.createElement("canvas"),d=Math.min(a.width-1,Math.max(0,b.left)),e=Math.min(a.width,Math.max(1,b.left+b.width)),f=Math.min(a.height-1,Math.max(0,b.top)),g=Math.min(a.height,Math.max(1,b.top+b.height));c.width=b.width;c.height=b.height;q("Cropping canvas at:","left:",b.left,"top:",b.top,"width:",e-d,"height:",g-f);q("Resulting crop with width",b.width,"and height",b.height,
" with x",d,"and y",f);c.getContext("2d").drawImage(a,d,f,e-d,g-f,b.x,b.y,e-d,g-f);return c}function La(a){return Math.max(Math.max(a.body.scrollWidth,a.documentElement.scrollWidth),Math.max(a.body.offsetWidth,a.documentElement.offsetWidth),Math.max(a.body.clientWidth,a.documentElement.clientWidth))}function Ma(a){return Math.max(Math.max(a.body.scrollHeight,a.documentElement.scrollHeight),Math.max(a.body.offsetHeight,a.documentElement.offsetHeight),Math.max(a.body.clientHeight,a.documentElement.clientHeight))}
function ka(){return"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"}function la(a,b){for(var c=3===a.nodeType?r.createTextNode(a.nodeValue):a.cloneNode(!1),d=a.firstChild;d;)!0!==b&&1===d.nodeType&&"SCRIPT"===d.nodeName||c.appendChild(la(d,b)),d=d.nextSibling;return c}function ha(a,b,c,d,e,f,g){Na(a);var h=r.documentMode&&9>=r.documentMode?la(a.documentElement,e.javascriptEnabled):a.documentElement.cloneNode(!0),k=b.createElement("iframe");k.className="html2canvas-container";
k.style.visibility="hidden";k.style.position="fixed";k.style.left="-10000px";k.style.top="0px";k.style.border="0";k.width=c;k.height=d;k.scrolling="no";b.body.appendChild(k);return new Promise(function(b){var c=k.contentWindow.document;ma(a.documentElement,h,"textarea");ma(a.documentElement,h,"select");k.contentWindow.onload=k.onload=function(){var d=setInterval(function(){0<c.body.childNodes.length&&(Oa(a,c),clearInterval(d),"view"===e.type&&k.contentWindow.scrollTo(f,g),b(k))},50)};c.open();c.write("<!DOCTYPE html><html></html>");
!a.defaultView||f===a.defaultView.pageXOffset&&g===a.defaultView.pageYOffset||a.defaultView.scrollTo(f,g);c.replaceChild(!0===e.javascriptEnabled?c.adoptNode(h):na(c.adoptNode(h)),c.documentElement);c.close()})}function ma(a,b,c){a=a.getElementsByTagName(c);b=b.getElementsByTagName(c);c=a.length;for(var d=0;d<c;d++)b[d].value=a[d].value}function oa(a,b,c,d,e,f){return(new Pa(a,b,m.document)).then(Qa(a)).then(function(a){return ha(a,c,d,e,f,0,0)})}function Qa(a){return function(b){var c=new DOMParser,
d;try{d=c.parseFromString(b,"text/html")}catch(e){q("DOMParser not supported, falling back to createHTMLDocument");d=r.implementation.createHTMLDocument("");try{d.open(),d.write(b),d.close()}catch(f){q("createHTMLDocument write not supported, falling back to document.body.innerHTML"),d.body.innerHTML=b}}b=d.querySelector("base");b&&b.href.host||(b=d.createElement("base"),b.href=a,d.head.insertBefore(b,d.head.firstChild));return d}}function Na(a){[].slice.call(a.querySelectorAll("canvas"),0).forEach(function(a){a.setAttribute("data-html2canvas-canvas-clone",
"canvas-"+Ra++)})}function Oa(a,b){[].slice.call(a.querySelectorAll("[data-html2canvas-canvas-clone]"),0).forEach(function(a){try{var d=b.querySelector('[data-html2canvas-canvas-clone="'+a.getAttribute("data-html2canvas-canvas-clone")+'"]');d&&(d.width=a.width,d.height=a.height,d.getContext("2d").putImageData(a.getContext("2d").getImageData(0,0,a.width,a.height),0,0))}catch(e){q("Unable to copy canvas content from",a,e)}a.removeAttribute("data-html2canvas-canvas-clone")})}function na(a){[].slice.call(a.childNodes,
0).filter(Sa).forEach(function(b){"SCRIPT"===b.tagName?a.removeChild(b):na(b)});return a}function Sa(a){return a.nodeType===Node.ELEMENT_NODE}function Ta(a){var b=r.createElement("a");b.href=a;b.href=b.href;return b}function t(a){this.b=this.g=this.r=0;this.a=null;this.fromArray(a)||this.namedColor(a)||this.rgb(a)||this.rgba(a)||this.hex6(a)||this.hex3(a)}function M(a){this.src=a;q("DummyImageContainer for",a);if(!this.promise||!this.image){q("Initiating DummyImageContainer");M.prototype.image=new Image;
var b=this.image;M.prototype.promise=new Promise(function(a,d){b.onload=a;b.onerror=d;b.src=ka();!0===b.complete&&a(b)})}}function Ua(a,b){var c=r.createElement("div"),d=r.createElement("img"),e=r.createElement("span"),f;c.style.visibility="hidden";c.style.fontFamily=a;c.style.fontSize=b;c.style.margin=0;c.style.padding=0;r.body.appendChild(c);d.src=ka();d.width=1;d.height=1;d.style.margin=0;d.style.padding=0;d.style.verticalAlign="baseline";e.style.fontFamily=a;e.style.fontSize=b;e.style.margin=
0;e.style.padding=0;e.appendChild(r.createTextNode("Hidden Text"));c.appendChild(e);c.appendChild(d);f=d.offsetTop-e.offsetTop+1;c.removeChild(e);c.appendChild(r.createTextNode("Hidden Text"));c.style.lineHeight="normal";d.style.verticalAlign="super";d=d.offsetTop-c.offsetTop+1;r.body.removeChild(c);this.baseline=f;this.lineWidth=1;this.middle=d}function pa(){this.data={}}function qa(a,b,c){this.image=null;this.src=a;var d=this,e=U(a);this.promise=(b?new Promise(function(b){"about:blank"===a.contentWindow.document.URL||
null==a.contentWindow.document.documentElement?a.contentWindow.onload=a.onload=function(){b(a)}:b(a)}):this.proxyLoad(c.proxy,e,c)).then(function(a){return html2canvas(a.contentWindow.document.documentElement,{type:"view",width:a.width,height:a.height,proxy:c.proxy,javascriptEnabled:c.javascriptEnabled,removeContainer:c.removeContainer,allowTaint:c.allowTaint,imageTimeout:c.imageTimeout/2})}).then(function(a){return d.image=a})}function N(a){this.src=a.value;this.colorStops=[];this.type=null;this.y1=
this.x1=this.y0=this.x0=.5;this.promise=Promise.resolve(!0)}function ba(a,b){this.src=a;this.image=new Image;var c=this;this.tainted=null;this.promise=new Promise(function(d,e){c.image.onload=d;c.image.onerror=e;b&&(c.image.crossOrigin="anonymous");c.image.src=a;!0===c.image.complete&&d(c.image)})}function u(a,b){this.link=null;this.options=a;this.support=b;this.origin=this.getOrigin(m.location.href)}function V(a){N.apply(this,arguments);this.type=this.TYPES.LINEAR;var b=null===a.args[0].match(this.stepRegExp);
b?a.args[0].split(" ").reverse().forEach(function(a){switch(a){case "left":this.x0=0;this.x1=1;break;case "top":this.y0=0;this.y1=1;break;case "right":this.x0=1;this.x1=0;break;case "bottom":this.y0=1;this.y1=0;break;case "to":a=this.y0;var b=this.x0;this.y0=this.y1;this.x0=this.x1;this.x1=b;this.y1=a}},this):(this.y0=0,this.y1=1);this.colorStops=a.args.slice(b?1:0).map(function(a){a=a.match(this.stepRegExp);return{color:new t(a[1]),stop:"%"===a[3]?a[2]/100:null}},this);null===this.colorStops[0].stop&&
(this.colorStops[0].stop=0);null===this.colorStops[this.colorStops.length-1].stop&&(this.colorStops[this.colorStops.length-1].stop=1);this.colorStops.forEach(function(a,b){null===a.stop&&this.colorStops.slice(b).some(function(e,f){return null!==e.stop?(a.stop=(e.stop-this.colorStops[b-1].stop)/(f+1)+this.colorStops[b-1].stop,!0):!1},this)},this)}function q(){m.html2canvas.logging&&m.console&&m.console.log&&Function.prototype.bind.call(m.console.log,m.console).apply(m.console,[Date.now()-m.html2canvas.start+
"ms","html2canvas:"].concat([].slice.call(arguments,0)))}function l(a,b){this.node=a;this.parent=b;this.borders=this.bounds=this.stack=null;this.clip=[];this.backgroundClip=[];this.computedStyles=this.visible=this.offsetBounds=null;this.colors={};this.styles={};this.transformMatrix=this.transformData=this.backgroundImages=null;this.isPseudoElement=!1;this.opacity=null}function Va(a){if(a&&"matrix"===a[1])return a[2].split(",").map(function(a){return parseFloat(a.trim())})}function W(a){return-1!==
a.toString().indexOf("%")}function ra(a){var b,c,d,e,f,g=[],h=0,k=0,l,m,q=function(){b&&('"'===c.substr(0,1)&&(c=c.substr(1,c.length-2)),c&&m.push(c),"-"===b.substr(0,1)&&0<(e=b.indexOf("-",1)+1)&&(d=b.substr(0,e),b=b.substr(e)),g.push({prefix:d,method:b.toLowerCase(),value:f,args:m,image:null}));m=[];b=d=c=f=""};m=[];b=d=c=f="";a.split("").forEach(function(a){if(!(0===h&&-1<" \r\n\t".indexOf(a))){switch(a){case '"':l?l===a&&(l=null):l=a;break;case "(":if(!l){if(0===h){h=1;f+=a;return}k++}break;case ")":if(!l&&
1===h){if(0===k){h=0;f+=a;q();return}k--}break;case ",":if(!l){if(0===h){q();return}if(1===h&&0===k&&!b.match(/^url$/i)){m.push(c);c="";f+=a;return}}}f+=a;0===h?b+=a:c+=a}});q();return g}function Wa(a){return a.replace("px","")}function Xa(a){return parseFloat(a)}function U(a){if(a.getBoundingClientRect){var b=a.getBoundingClientRect(),c=null==a.offsetWidth?b.width:a.offsetWidth;return{top:b.top,bottom:b.bottom||b.top+b.height,right:b.left+c,left:b.left,width:c,height:null==a.offsetHeight?b.height:
a.offsetHeight}}return{}}function ca(a){var b=a.offsetParent?ca(a.offsetParent):{top:0,left:0};return{top:a.offsetTop+b.top,bottom:a.offsetTop+a.offsetHeight+b.top,right:a.offsetLeft+b.left+a.offsetWidth,left:a.offsetLeft+b.left,width:a.offsetWidth,height:a.offsetHeight}}function n(a,b,c,d,e){q("Starting NodeParser");this.renderer=b;this.options=e;this.range=null;this.support=c;this.renderQueue=[];this.stack=new G(!0,1,a.ownerDocument,null);c=new l(a,null);e.background&&b.rectangle(0,0,b.width,b.height,
new t(e.background));if(a===a.ownerDocument.documentElement){var f=new l(c.color("backgroundColor").isTransparent()?a.ownerDocument.body:a.ownerDocument.documentElement,null);b.rectangle(0,0,b.width,b.height,f.color("backgroundColor"))}c.visibile=c.isElementVisible();this.createPseudoHideStyles(a.ownerDocument);this.disableAnimations(a.ownerDocument);this.nodes=[].concat.apply([],[c].concat(this.getChildren(c)).filter(function(a){return a.visible=a.isElementVisible()}).map(this.getPseudoElements,
this));this.fontMetrics=new pa;q("Fetched nodes, total:",this.nodes.length);q("Calculate overflow clips");this.calculateOverflowClips();q("Start fetching images");this.images=d.fetch(this.nodes.filter(O));this.ready=this.images.ready.then(X(function(){q("Images loaded, starting parsing");q("Creating stacking contexts");this.createStackingContexts();q("Sorting stacking contexts");this.sortStackingContexts(this.stack);this.parse(this.stack);q("Render queue created with "+this.renderQueue.length+" items");
return new Promise(X(function(a){e.async?"function"===typeof e.async?e.async.call(this,this.renderQueue,a):0<this.renderQueue.length?(this.renderIndex=0,this.asyncRenderer(this.renderQueue,a)):a():(this.renderQueue.forEach(this.paint,this),a())},this))},this))}function Ya(a){return a.replace(/(\-[a-z])/g,function(a){return a.toUpperCase().replace("-","")})}function sa(){}function ta(a,b,c,d){return a.map(function(e,f){if(0<e.width){var g=b.left,h=b.top,k=b.width,l=b.height-a[2].width;switch(f){case 0:l=
a[0].width;e.args=Y({c1:[g,h],c2:[g+k,h],c3:[g+k-a[1].width,h+l],c4:[g+a[3].width,h+l]},d[0],d[1],c.topLeftOuter,c.topLeftInner,c.topRightOuter,c.topRightInner);break;case 1:g=b.left+b.width-a[1].width;k=a[1].width;e.args=Y({c1:[g+k,h],c2:[g+k,h+l+a[2].width],c3:[g,h+l],c4:[g,h+a[0].width]},d[1],d[2],c.topRightOuter,c.topRightInner,c.bottomRightOuter,c.bottomRightInner);break;case 2:h=h+b.height-a[2].width;l=a[2].width;e.args=Y({c1:[g+k,h+l],c2:[g,h+l],c3:[g+a[3].width,h],c4:[g+k-a[3].width,h]},d[2],
d[3],c.bottomRightOuter,c.bottomRightInner,c.bottomLeftOuter,c.bottomLeftInner);break;case 3:k=a[3].width,e.args=Y({c1:[g,h+l+a[2].width],c2:[g,h],c3:[g+k,h+a[0].width],c4:[g+k,h+l]},d[3],d[0],c.bottomLeftOuter,c.bottomLeftInner,c.topLeftOuter,c.topLeftInner)}}return e})}function C(a,b,c,d){var e=(Math.sqrt(2)-1)/3*4,f=c*e,e=d*e;c=a+c;d=b+d;return{topLeft:H({x:a,y:d},{x:a,y:d-e},{x:c-f,y:b},{x:c,y:b}),topRight:H({x:a,y:b},{x:a+f,y:b},{x:c,y:d-e},{x:c,y:d}),bottomRight:H({x:c,y:b},{x:c,y:b+e},{x:a+
f,y:d},{x:a,y:d}),bottomLeft:H({x:c,y:d},{x:c-f,y:d},{x:a,y:b+e},{x:a,y:b})}}function ua(a,b,c){var d=a.left,e=a.top,f=a.width;a=a.height;var g=b[0][0],h=b[0][1],k=b[1][0],l=b[1][1],m=b[2][0],q=b[2][1],r=b[3][0];b=b[3][1];var n=f-k,t=a-q,p=f-m,u=a-b;return{topLeftOuter:C(d,e,g,h).topLeft.subdivide(.5),topLeftInner:C(d+c[3].width,e+c[0].width,Math.max(0,g-c[3].width),Math.max(0,h-c[0].width)).topLeft.subdivide(.5),topRightOuter:C(d+n,e,k,l).topRight.subdivide(.5),topRightInner:C(d+Math.min(n,f+c[3].width),
e+c[0].width,n>f+c[3].width?0:k-c[3].width,l-c[0].width).topRight.subdivide(.5),bottomRightOuter:C(d+p,e+t,m,q).bottomRight.subdivide(.5),bottomRightInner:C(d+Math.min(p,f-c[3].width),e+Math.min(t,a+c[0].width),Math.max(0,m-c[1].width),q-c[2].width).bottomRight.subdivide(.5),bottomLeftOuter:C(d,e+u,r,b).bottomLeft.subdivide(.5),bottomLeftInner:C(d+c[3].width,e+u,Math.max(0,r-c[3].width),b-c[2].width).bottomLeft.subdivide(.5)}}function H(a,b,c,d){var e=function(a,b,c){return{x:a.x+(b.x-a.x)*c,y:a.y+
(b.y-a.y)*c}};return{start:a,startControl:b,endControl:c,end:d,subdivide:function(f){var g=e(a,b,f),h=e(b,c,f),k=e(c,d,f),l=e(g,h,f),h=e(h,k,f);f=e(l,h,f);return[H(a,g,l,f),H(f,h,k,d)]},curveTo:function(a){a.push(["bezierCurve",b.x,b.y,c.x,c.y,d.x,d.y])},curveToReversed:function(d){d.push(["bezierCurve",c.x,c.y,b.x,b.y,a.x,a.y])}}}function Y(a,b,c,d,e,f,g){var h=[];0<b[0]||0<b[1]?(h.push(["line",d[1].start.x,d[1].start.y]),d[1].curveTo(h)):h.push(["line",a.c1[0],a.c1[1]]);0<c[0]||0<c[1]?(h.push(["line",
f[0].start.x,f[0].start.y]),f[0].curveTo(h),h.push(["line",g[0].end.x,g[0].end.y]),g[0].curveToReversed(h)):(h.push(["line",a.c2[0],a.c2[1]]),h.push(["line",a.c3[0],a.c3[1]]));0<b[0]||0<b[1]?(h.push(["line",e[1].end.x,e[1].end.y]),e[1].curveToReversed(h)):h.push(["line",a.c4[0],a.c4[1]]);return h}function D(a,b,c,d,e,f,g){0<b[0]||0<b[1]?(a.push(["line",d[0].start.x,d[0].start.y]),d[0].curveTo(a),d[1].curveTo(a)):a.push(["line",f,g]);(0<c[0]||0<c[1])&&a.push(["line",e[0].start.x,e[0].start.y])}function Za(a){return 0>
a.cssInt("zIndex")}function $a(a){return 0<a.cssInt("zIndex")}function va(a){return 0===a.cssInt("zIndex")}function wa(a){return-1!==["inline","inline-block","inline-table"].indexOf(a.css("display"))}function ab(a){return 0<a.node.data.trim().length}function bb(a){return["TopLeft","TopRight","BottomRight","BottomLeft"].map(function(b){b=a.css("border"+b+"Radius").split(" ");1>=b.length&&(b[1]=b[0]);return b.map(cb)})}function db(a){return a.nodeType===Node.TEXT_NODE||a.nodeType===Node.ELEMENT_NODE}
function P(a){return"static"!==a.css("position")}function da(a){return"none"!==a.css("float")}function Q(a){var b=this;return function(){return!a.apply(b,arguments)}}function O(a){return a.node.nodeType===Node.ELEMENT_NODE}function ea(a){return a.node.nodeType===Node.TEXT_NODE}function eb(a){return function(b,c){return b.cssInt("zIndex")+a.indexOf(b)/a.length-(c.cssInt("zIndex")+a.indexOf(c)/a.length)}}function X(a,b){return function(){return a.apply(b,arguments)}}function cb(a){return parseInt(a,
10)}function fb(a){return a.width}function gb(a){return a.node.nodeType!==Node.ELEMENT_NODE||-1==="SCRIPT HEAD TITLE OBJECT BR OPTION".split(" ").indexOf(a.node.nodeName)}function hb(a){for(var b=[],c=0,d=!1,e;a.length;)-1!==[32,13,10,9,45].indexOf(a[c])===d?(e=a.splice(0,c),e.length&&b.push(m.html2canvas.punycode.ucs2.encode(e)),d=!d,c=0):c++,c>=a.length&&(e=a.splice(0,c),e.length&&b.push(m.html2canvas.punycode.ucs2.encode(e)));return b}function Pa(a,b,c){if(!b)return Promise.reject("No proxy configured");
var d=xa(ya);a=za(b,a,d);return ya?Aa(a):Ba(c,a,d).then(function(a){return Ca(a.content)})}function ib(a,b,c){var d=xa(Da);a=za(b,a,d);return Da?Promise.resolve(a):Ba(c,a,d).then(function(a){return"data:"+a.type+";base64,"+a.content})}function Ba(a,b,c){return new Promise(function(d,e){var f=a.createElement("script"),g=function(){delete m.html2canvas.proxy[c];a.body.removeChild(f)};m.html2canvas.proxy[c]=function(a){g();d(a)};f.src=b;f.onerror=function(a){g();e(a)};a.body.appendChild(f)})}function xa(a){return a?
"":"html2canvas_"+Date.now()+"_"+ ++jb+"_"+Math.round(1E5*Math.random())}function za(a,b,c){return a+"?url="+encodeURIComponent(b)+(c.length?"&callback=html2canvas.proxy."+c:"")}function kb(a,b){r.createElement("script");var c=r.createElement("a");c.href=a;this.src=a=c.href;this.image=new Image;var d=this;this.promise=new Promise(function(c,f){d.image.crossOrigin="Anonymous";d.image.onload=c;d.image.onerror=f;(new ib(a,b,r)).then(function(a){d.image.src=a})["catch"](f)})}function v(a,b,c){l.call(this,
a,b);this.isPseudoElement=!0;this.before=":before"===c}function x(a,b,c,d,e){this.width=a;this.height=b;this.images=c;this.options=d;this.document=e}function G(a,b,c,d){l.call(this,c,d);this.ownStacking=a;this.contexts=[];this.children=[];this.opacity=(this.parent?this.parent.stack.opacity:1)*b}function T(a){this.rangeBounds=this.testRangeBounds(a);this.cors=this.testCORS();this.svg=this.testSVG()}function A(a){this.src=a;this.image=null;var b=this;this.promise=this.hasFabric().then(function(){return b.isInline(a)?
Promise.resolve(b.inlineFormatting(a)):Aa(a)}).then(function(a){return new Promise(function(d){html2canvas.fabric.loadSVGFromString(a,b.createCanvas.call(b,d))})})}function Ca(a){var b=a.length,c,d,e,f,g,h,k="";for(c=0;c<b;c+=4)d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[c]),e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[c+1]),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[c+2]),g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[c+
3]),d=d<<2|e>>4,e=(e&15)<<4|f>>2,h=(f&3)<<6|g,k=64===f?k+String.fromCharCode(d):64===g||-1===g?k+String.fromCharCode(d,e):k+String.fromCharCode(d,e,h);return k}function Ea(a,b){this.src=a;this.image=null;var c=this;this.promise=b?new Promise(function(b,e){c.image=new Image;c.image.onload=b;c.image.onerror=e;c.image.src="data:image/svg+xml,"+(new XMLSerializer).serializeToString(a);!0===c.image.complete&&b(c.image)}):this.hasFabric().then(function(){return new Promise(function(b){html2canvas.fabric.parseSVGDocument(a,
c.createCanvas.call(c,b))})})}function I(a,b){l.call(this,a,b)}function lb(a,b,c){if(0<a.length)return b+c.toUpperCase()}function Fa(a){N.apply(this,arguments);this.type="linear"===a.args[0]?this.TYPES.LINEAR:this.TYPES.RADIAL}function Aa(a){return new Promise(function(b,c){var d=new XMLHttpRequest;d.open("GET",a);d.onload=function(){200===d.status?b(d.responseText):c(Error(d.statusText))};d.onerror=function(){c(Error("Network Error"))};d.send()})}function p(a,b){x.apply(this,arguments);this.canvas=
this.options.canvas||this.document.createElement("canvas");this.options.canvas||(this.canvas.width=a,this.canvas.height=b);this.ctx=this.canvas.getContext("2d");this.taintCtx=this.document.createElement("canvas").getContext("2d");this.ctx.textBaseline="bottom";this.variables={};q("Initialized CanvasRenderer with size",a,"x",b)}function mb(a){return 0<a.length}(function(){function a(a,b){J[K]=a;J[K+1]=b;K+=2;2===K&&Ga()}function b(a){return"function"===typeof a}function c(){return function(){process.nextTick(g)}}
function d(){var a=0,b=new Ha(g),c=r.createTextNode("");b.observe(c,{characterData:!0});return function(){c.data=a=++a%2}}function e(){var a=new MessageChannel;a.port1.onmessage=g;return function(){a.port2.postMessage(0)}}function f(){return function(){setTimeout(g,1)}}function g(){for(var a=0;a<K;a+=2)(0,J[a])(J[a+1]),J[a]=void 0,J[a+1]=void 0;K=0}function h(){}function k(a,b,c,d){try{a.call(b,c,d)}catch(e){return e}}function l(b,c,d){a(function(a){var b=!1,e=k(d,c,function(d){b||(b=!0,c!==d?n(a,
d):p(a,d))},function(c){b||(b=!0,w(a,c))});!b&&e&&(b=!0,w(a,e))},b)}function q(a,b){1===b.a?p(a,b.b):2===a.a?w(a,b.b):u(b,void 0,function(b){n(a,b)},function(b){w(a,b)})}function n(a,c){if(a===c)w(a,new TypeError("You cannot resolve a promise with itself"));else if("function"===typeof c||"object"===typeof c&&null!==c)if(c.constructor===a.constructor)q(a,c);else{var d;try{d=c.then}catch(e){Z.error=e,d=Z}d===Z?w(a,Z.error):void 0===d?p(a,c):b(d)?l(a,c,d):p(a,c)}else p(a,c)}function t(a){a.f&&a.f(a.b);
v(a)}function p(b,c){void 0===b.a&&(b.b=c,b.a=1,0!==b.e.length&&a(v,b))}function w(b,c){void 0===b.a&&(b.a=2,b.b=c,a(t,b))}function u(b,c,d,e){var f=b.e,g=f.length;b.f=null;f[g]=c;f[g+1]=d;f[g+2]=e;0===g&&b.a&&a(v,b)}function v(a){var b=a.e,c=a.a;if(0!==b.length){for(var d,e,f=a.b,g=0;g<b.length;g+=3)d=b[g],e=b[g+c],d?z(c,d,e,f):e(f);a.e.length=0}}function x(){this.error=null}function z(a,c,d,e){var f=b(d),g,h,k,l;if(f){try{g=d(e)}catch(B){fa.error=B,g=fa}g===fa?(l=!0,h=g.error,g=null):k=!0;if(c===
g){w(c,new TypeError("A promises callback cannot return that same promise."));return}}else g=e,k=!0;void 0===c.a&&(f&&k?n(c,g):l?w(c,h):1===a?p(c,g):2===a&&w(c,g))}function A(a,b){try{b(function(b){n(a,b)},function(b){w(a,b)})}catch(c){w(a,c)}}function y(a,b,c,d){this.n=a;this.c=new a(h,d);this.i=c;this.o(b)?(this.m=b,this.d=this.length=b.length,this.l(),0===this.length?p(this.c,this.b):(this.length=this.length||0,this.k(),0===this.d&&p(this.c,this.b))):w(this.c,this.p())}function B(a){nb++;this.b=
this.a=void 0;this.e=[];if(h!==a){if(!b(a))throw new TypeError("You must pass a resolver function as the first argument to the promise constructor");if(!(this instanceof B))throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");A(this,a)}}var Ia=Array.isArray?Array.isArray:function(a){return"[object Array]"===Object.prototype.toString.call(a)},K=0,aa="undefined"!==typeof m?m:{},Ha=aa.MutationObserver||aa.WebKitMutationObserver,
aa="undefined"!==typeof Uint8ClampedArray&&"undefined"!==typeof importScripts&&"undefined"!==typeof MessageChannel,J=Array(1E3),Ga;Ga="undefined"!==typeof process&&"[object process]"==={}.toString.call(process)?c():Ha?d():aa?e():f();var Z=new x,fa=new x;y.prototype.o=function(a){return Ia(a)};y.prototype.p=function(){return Error("Array Methods must be provided an Array")};y.prototype.l=function(){this.b=Array(this.length)};y.prototype.k=function(){for(var a=this.length,b=this.c,c=this.m,d=0;void 0===
b.a&&d<a;d++)this.j(c[d],d)};y.prototype.j=function(a,b){var c=this.n;"object"===typeof a&&null!==a?a.constructor===c&&void 0!==a.a?(a.f=null,this.g(a.a,b,a.b)):this.q(c.resolve(a),b):(this.d--,this.b[b]=this.h(a))};y.prototype.g=function(a,b,c){var d=this.c;void 0===d.a&&(this.d--,this.i&&2===a?w(d,c):this.b[b]=this.h(c));0===this.d&&p(d,this.b)};y.prototype.h=function(a){return a};y.prototype.q=function(a,b){var c=this;u(a,void 0,function(a){c.g(1,b,a)},function(a){c.g(2,b,a)})};var nb=0;B.all=
function(a,b){return(new y(this,a,!0,b)).c};B.race=function(a,b){function c(a){n(e,a)}function d(a){w(e,a)}var e=new this(h,b);if(!Ia(a))return w(e,new TypeError("You must pass an array to race.")),e;for(var f=a.length,g=0;void 0===e.a&&g<f;g++)u(this.resolve(a[g]),void 0,c,d);return e};B.resolve=function(a,b){if(a&&"object"===typeof a&&a.constructor===this)return a;var c=new this(h,b);n(c,a);return c};B.reject=function(a,b){var c=new this(h,b);w(c,a);return c};B.prototype={constructor:B,then:function(b,
c){var d=this.a;if(1===d&&!b||2===d&&!c)return this;var e=new this.constructor(h),f=this.b;if(d){var g=arguments[d-1];a(function(){z(d,e,g,f)})}else u(this,e,b,c);return e},"catch":function(a){return this.then(null,a)}};var ga={Promise:B,polyfill:function(){var a;a="undefined"!==typeof S?S:"undefined"!==typeof m&&m.document?m:self;"Promise"in a&&"resolve"in a.Promise&&"reject"in a.Promise&&"all"in a.Promise&&"race"in a.Promise&&function(){var c;new a.Promise(function(a){c=a});return b(c)}()||(a.Promise=
B)}};"function"===typeof E&&E.amd?E(function(){return ga}):"undefined"!==typeof module&&module.exports?module.exports=ga:"undefined"!==typeof this&&(this.ES6Promise=ga)}).call(m);m&&m.ES6Promise.polyfill();if("undefined"===typeof r||"function"!==typeof Object.create||"function"!==typeof r.createElement("canvas").getContext)(m||module.exports).html2canvas=function(){return Promise.reject("No canvas support")};else{(function(a){function b(a){throw RangeError(v[a]);}function c(a,b){for(var c=a.length,
d=[];c--;)d[c]=b(a[c]);return d}function d(a,b){var d=a.split("@"),e="";1<d.length&&(e=d[0]+"@",a=d[1]);d=a.split(u);d=c(d,b).join(".");return e+d}function e(a){for(var b=[],c=0,d=a.length,e,f;c<d;)e=a.charCodeAt(c++),55296<=e&&56319>=e&&c<d?(f=a.charCodeAt(c++),56320==(f&64512)?b.push(((e&1023)<<10)+(f&1023)+65536):(b.push(e),c--)):b.push(e);return b}function f(a){return c(a,function(a){var b="";65535<a&&(a-=65536,b+=x(a>>>10&1023|55296),a=56320|a&1023);return b+=x(a)}).join("")}function g(a,b){return a+
22+75*(26>a)-((0!=b)<<5)}function h(a,b,c){var d=0;a=c?z(a/700):a>>1;for(a+=z(a/b);455<a;d+=36)a=z(a/35);return z(d+36*a/(a+38))}function k(a){var c=[],d=a.length,e,g=0,k=128,l=72,m,n,q,p,r;m=a.lastIndexOf("-");0>m&&(m=0);for(n=0;n<m;++n)128<=a.charCodeAt(n)&&b("not-basic"),c.push(a.charCodeAt(n));for(m=0<m?m+1:0;m<d;){n=g;e=1;for(q=36;;q+=36){m>=d&&b("invalid-input");p=a.charCodeAt(m++);p=10>p-48?p-22:26>p-65?p-65:26>p-97?p-97:36;(36<=p||p>z((2147483647-g)/e))&&b("overflow");g+=p*e;r=q<=l?1:q>=l+
26?26:q-l;if(p<r)break;p=36-r;e>z(2147483647/p)&&b("overflow");e*=p}e=c.length+1;l=h(g-n,e,0==n);z(g/e)>2147483647-k&&b("overflow");k+=z(g/e);g%=e;c.splice(g++,0,k)}return f(c)}function l(a){var c,d,f,k,p,m,n,q,r,t=[],u,v,w;a=e(a);u=a.length;c=128;d=0;p=72;for(m=0;m<u;++m)r=a[m],128>r&&t.push(x(r));for((f=k=t.length)&&t.push("-");f<u;){n=2147483647;for(m=0;m<u;++m)r=a[m],r>=c&&r<n&&(n=r);v=f+1;n-c>z((2147483647-d)/v)&&b("overflow");d+=(n-c)*v;c=n;for(m=0;m<u;++m)if(r=a[m],r<c&&2147483647<++d&&b("overflow"),
r==c){q=d;for(n=36;;n+=36){r=n<=p?1:n>=p+26?26:n-p;if(q<r)break;w=q-r;q=36-r;t.push(x(g(r+w%q,0)));q=z(w/q)}t.push(x(g(q,0)));p=h(d,v,f==k);d=0;++f}++d;++c}return t.join("")}var m="object"==typeof R&&R&&!R.nodeType&&R,q="object"==typeof module&&module&&!module.nodeType&&module,n="object"==typeof S&&S;if(n.global===n||n.window===n||n.self===n)a=n;var p,r=/^xn--/,t=/[^\x20-\x7E]/,u=/[\x2E\u3002\uFF0E\uFF61]/g,v={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)",
"invalid-input":"Invalid input"},z=Math.floor,x=String.fromCharCode,y;p={version:"1.3.1",ucs2:{decode:e,encode:f},decode:k,encode:l,toASCII:function(a){return d(a,function(a){return t.test(a)?"xn--"+l(a):a})},toUnicode:function(a){return d(a,function(a){return r.test(a)?k(a.slice(4).toLowerCase()):a})}};if("function"==typeof E&&"object"==typeof E.amd&&E.amd)E("punycode",function(){return p});else if(m&&q)if(module.exports==m)q.exports=p;else for(y in p)p.hasOwnProperty(y)&&(m[y]=p[y]);else a.punycode=
p})(this);var Ra=0,ob=0;m.html2canvas=function(a,b){var c=ob++;b=b||{};b.logging&&(m.html2canvas.logging=!0,m.html2canvas.start=Date.now());b.async="undefined"===typeof b.async?!0:b.async;b.allowTaint="undefined"===typeof b.allowTaint?!1:b.allowTaint;b.removeContainer="undefined"===typeof b.removeContainer?!0:b.removeContainer;b.javascriptEnabled="undefined"===typeof b.javascriptEnabled?!1:b.javascriptEnabled;b.imageTimeout="undefined"===typeof b.imageTimeout?1E4:b.imageTimeout;b.renderer="function"===
typeof b.renderer?b.renderer:p;b.strict=!!b.strict;if("string"===typeof a){if("string"!==typeof b.proxy)return Promise.reject("Proxy must be used when rendering url");var d=null!=b.width?b.width:m.innerWidth,e=null!=b.height?b.height:m.innerHeight;return oa(Ta(a),b.proxy,r,d,e,b).then(function(a){return ia(a.contentWindow.document.documentElement,a,b,d,e)})}var f=(a===L?[r.documentElement]:a.length?a:[a])[0];f.setAttribute("data-html2canvas-node"+c,c);return Ka(f.ownerDocument,b,f.ownerDocument.defaultView.innerWidth,
f.ownerDocument.defaultView.innerHeight,c).then(function(a){"function"===typeof b.onrendered&&(q("options.onrendered is deprecated, html2canvas returns a Promise containing the canvas"),b.onrendered(a));return a})};m.html2canvas.punycode=this.punycode;m.html2canvas.proxy={};t.prototype.darken=function(a){a=1-a;return new t([Math.round(this.r*a),Math.round(this.g*a),Math.round(this.b*a),this.a])};t.prototype.isTransparent=function(){return 0===this.a};t.prototype.isBlack=function(){return 0===this.r&&
0===this.g&&0===this.b};t.prototype.fromArray=function(a){Array.isArray(a)&&(this.r=Math.min(a[0],255),this.g=Math.min(a[1],255),this.b=Math.min(a[2],255),3<a.length&&(this.a=a[3]));return Array.isArray(a)};var pb=/^#([a-f0-9]{3})$/i;t.prototype.hex3=function(a){null!==(a=a.match(pb))&&(this.r=parseInt(a[1][0]+a[1][0],16),this.g=parseInt(a[1][1]+a[1][1],16),this.b=parseInt(a[1][2]+a[1][2],16));return null!==a};var qb=/^#([a-f0-9]{6})$/i;t.prototype.hex6=function(a){null!==(a=a.match(qb))&&(this.r=
parseInt(a[1].substring(0,2),16),this.g=parseInt(a[1].substring(2,4),16),this.b=parseInt(a[1].substring(4,6),16));return null!==a};var rb=/^rgb\((\d{1,3}) *, *(\d{1,3}) *, *(\d{1,3})\)$/;t.prototype.rgb=function(a){null!==(a=a.match(rb))&&(this.r=Number(a[1]),this.g=Number(a[2]),this.b=Number(a[3]));return null!==a};var sb=/^rgba\((\d{1,3}) *, *(\d{1,3}) *, *(\d{1,3}) *, *(\d+\.?\d*)\)$/;t.prototype.rgba=function(a){null!==(a=a.match(sb))&&(this.r=Number(a[1]),this.g=Number(a[2]),this.b=Number(a[3]),
this.a=Number(a[4]));return null!==a};t.prototype.toString=function(){return null!==this.a&&1!==this.a?"rgba("+[this.r,this.g,this.b,this.a].join()+")":"rgb("+[this.r,this.g,this.b].join()+")"};t.prototype.namedColor=function(a){var b=tb[a.toLowerCase()];if(b)this.r=b[0],this.g=b[1],this.b=b[2];else if("transparent"===a.toLowerCase())return this.r=this.g=this.b=this.a=0,!0;return!!b};t.prototype.isColor=!0;var tb={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,
255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],
darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],
fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,
250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,
179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,
239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,
255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};pa.prototype.getMetrics=function(a,b){this.data[a+"-"+b]===L&&(this.data[a+"-"+b]=new Ua(a,b));return this.data[a+"-"+b]};qa.prototype.proxyLoad=function(a,b,c){var d=this.src;return oa(d.src,a,d.ownerDocument,b.width,b.height,c)};N.prototype.TYPES=
{LINEAR:1,RADIAL:2};u.prototype.findImages=function(a){var b=[];a.reduce(function(a,b){switch(b.node.nodeName){case "IMG":return a.concat([{args:[b.node.src],method:"url"}]);case "svg":case "IFRAME":return a.concat([{args:[b.node],method:b.node.nodeName}])}return a},[]).forEach(this.addImage(b,this.loadImage),this);return b};u.prototype.findBackgroundImage=function(a,b){b.parseBackgroundImages().filter(this.hasImageBackground).forEach(this.addImage(a,this.loadImage),this);return a};u.prototype.addImage=
function(a,b){return function(c){c.args.forEach(function(d){this.imageExists(a,d)||(a.splice(0,0,b.call(this,c)),q("Added image #"+a.length,"string"===typeof d?d.substring(0,100):d))},this)}};u.prototype.hasImageBackground=function(a){return"none"!==a.method};u.prototype.loadImage=function(a){return"url"===a.method?(a=a.args[0],!this.isSVG(a)||this.support.svg||this.options.allowTaint?a.match(/data:image\/.*;base64,/i)?new ba(a.replace(/url\(['"]{0,}|['"]{0,}\)$/ig,""),!1):this.isSameOrigin(a)||!0===
this.options.allowTaint||this.isSVG(a)?new ba(a,!1):this.support.cors&&!this.options.allowTaint&&this.options.useCORS?new ba(a,!0):this.options.proxy?new kb(a,this.options.proxy):new M(a):new A(a)):"linear-gradient"===a.method?new V(a):"gradient"===a.method?new Fa(a):"svg"===a.method?new Ea(a.args[0],this.support.svg):"IFRAME"===a.method?new qa(a.args[0],this.isSameOrigin(a.args[0].src),this.options):new M(a)};u.prototype.isSVG=function(a){return"svg"===a.substring(a.length-3).toLowerCase()||A.prototype.isInline(a)};
u.prototype.imageExists=function(a,b){return a.some(function(a){return a.src===b})};u.prototype.isSameOrigin=function(a){return this.getOrigin(a)===this.origin};u.prototype.getOrigin=function(a){var b=this.link||(this.link=r.createElement("a"));b.href=a;b.href=b.href;return b.protocol+b.hostname+b.port};u.prototype.getPromise=function(a){return this.timeout(a,this.options.imageTimeout)["catch"](function(){return(new M(a.src)).promise.then(function(b){a.image=b})})};u.prototype.get=function(a){var b=
null;return this.images.some(function(c){return(b=c).src===a})?b:null};u.prototype.fetch=function(a){this.images=a.reduce(X(this.findBackgroundImage,this),this.findImages(a));this.images.forEach(function(a,c){a.promise.then(function(){q("Succesfully loaded image #"+(c+1),a)},function(d){q("Failed loading image #"+(c+1),a,d)})});this.ready=Promise.all(this.images.map(this.getPromise,this));q("Finished searching images");return this};u.prototype.timeout=function(a,b){var c,d=Promise.race([a.promise,
new Promise(function(d,f){c=setTimeout(function(){q("Timed out loading image",a);f(a)},b)})]).then(function(a){clearTimeout(c);return a});d["catch"](function(){clearTimeout(c)});return d};V.prototype=Object.create(N.prototype);V.prototype.stepRegExp=/((?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\))\s*(\d{1,3})?(%|px)?/;l.prototype.cloneTo=function(a){a.visible=this.visible;a.borders=this.borders;a.bounds=this.bounds;a.clip=this.clip;a.backgroundClip=this.backgroundClip;a.computedStyles=
this.computedStyles;a.styles=this.styles;a.backgroundImages=this.backgroundImages;a.opacity=this.opacity};l.prototype.getOpacity=function(){return null===this.opacity?this.opacity=this.cssFloat("opacity"):this.opacity};l.prototype.assignStack=function(a){this.stack=a;a.children.push(this)};l.prototype.isElementVisible=function(){return this.node.nodeType===Node.TEXT_NODE?this.parent.visible:"none"!==this.css("display")&&"hidden"!==this.css("visibility")&&!this.node.hasAttribute("data-html2canvas-ignore")&&
("INPUT"!==this.node.nodeName||"hidden"!==this.node.getAttribute("type"))};l.prototype.css=function(a){this.computedStyles||(this.computedStyles=this.isPseudoElement?this.parent.computedStyle(this.before?":before":":after"):this.computedStyle(null));return this.styles[a]||(this.styles[a]=this.computedStyles[a])};l.prototype.prefixedCss=function(a){var b=["webkit","moz","ms","o"],c=this.css(a);c===L&&b.some(function(b){c=this.css(b+a.substr(0,1).toUpperCase()+a.substr(1));return c!==L},this);return c===
L?null:c};l.prototype.computedStyle=function(a){return this.node.ownerDocument.defaultView.getComputedStyle(this.node,a)};l.prototype.cssInt=function(a){a=parseInt(this.css(a),10);return isNaN(a)?0:a};l.prototype.color=function(a){return this.colors[a]||(this.colors[a]=new t(this.css(a)))};l.prototype.cssFloat=function(a){a=parseFloat(this.css(a));return isNaN(a)?0:a};l.prototype.fontWeight=function(){var a=this.css("fontWeight");switch(parseInt(a,10)){case 401:a="bold";break;case 400:a="normal"}return a};
l.prototype.parseClip=function(){var a=this.css("clip").match(this.CLIP);return a?{top:parseInt(a[1],10),right:parseInt(a[2],10),bottom:parseInt(a[3],10),left:parseInt(a[4],10)}:null};l.prototype.parseBackgroundImages=function(){return this.backgroundImages||(this.backgroundImages=ra(this.css("backgroundImage")))};l.prototype.cssList=function(a,b){var c=(this.css(a)||"").split(","),c=c[b||0]||c[0]||"auto",c=c.trim().split(" ");1===c.length&&(c=[c[0],c[0]]);return c};l.prototype.parseBackgroundSize=
function(a,b,c){c=this.cssList("backgroundSize",c);var d;if(W(c[0]))d=a.width*parseFloat(c[0])/100;else{if(/contain|cover/.test(c[0]))return b=b.width/b.height,a.width/a.height<b^"contain"===c[0]?{width:a.height*b,height:a.height}:{width:a.width,height:a.width/b};d=parseInt(c[0],10)}a="auto"===c[0]&&"auto"===c[1]?b.height:"auto"===c[1]?d/b.width*b.height:W(c[1])?a.height*parseFloat(c[1])/100:parseInt(c[1],10);"auto"===c[0]&&(d=a/b.height*b.width);return{width:d,height:a}};l.prototype.parseBackgroundPosition=
function(a,b,c,d){c=this.cssList("backgroundPosition",c);var e;e=W(c[0])?(a.width-(d||b).width)*(parseFloat(c[0])/100):parseInt(c[0],10);a="auto"===c[1]?e/b.width*b.height:W(c[1])?(a.height-(d||b).height)*parseFloat(c[1])/100:parseInt(c[1],10);"auto"===c[0]&&(e=a/b.height*b.width);return{left:e,top:a}};l.prototype.parseBackgroundRepeat=function(a){return this.cssList("backgroundRepeat",a)[0]};l.prototype.parseTextShadows=function(){var a=this.css("textShadow"),b=[];if(a&&"none"!==a)for(var a=a.match(this.TEXT_SHADOW_PROPERTY),
c=0;a&&c<a.length;c++){var d=a[c].match(this.TEXT_SHADOW_VALUES);b.push({color:new t(d[0]),offsetX:d[1]?parseFloat(d[1].replace("px","")):0,offsetY:d[2]?parseFloat(d[2].replace("px","")):0,blur:d[3]?d[3].replace("px",""):0})}return b};l.prototype.parseTransform=function(){if(!this.transformData)if(this.hasTransform()){var a=this.parseBounds(),b=this.prefixedCss("transformOrigin").split(" ").map(Wa).map(Xa);b[0]+=a.left;b[1]+=a.top;this.transformData={origin:b,matrix:this.parseTransformMatrix()}}else this.transformData=
{origin:[0,0],matrix:[1,0,0,1,0,0]};return this.transformData};l.prototype.parseTransformMatrix=function(){if(!this.transformMatrix){var a=this.prefixedCss("transform");this.transformMatrix=(a=a?Va(a.match(this.MATRIX_PROPERTY)):null)?a:[1,0,0,1,0,0]}return this.transformMatrix};l.prototype.parseBounds=function(){return this.bounds||(this.bounds=this.hasTransform()?ca(this.node):U(this.node))};l.prototype.hasTransform=function(){return"1,0,0,1,0,0"!==this.parseTransformMatrix().join(",")||this.parent&&
this.parent.hasTransform()};l.prototype.getValue=function(){var a=this.node.value||"";"SELECT"===this.node.tagName?(a=this.node,a=(a=a.options[a.selectedIndex||0])?a.text||"":""):"password"===this.node.type&&(a=Array(a.length+1).join("\u2022"));return 0===a.length?this.node.placeholder||"":a};l.prototype.MATRIX_PROPERTY=/(matrix)\((.+)\)/;l.prototype.TEXT_SHADOW_PROPERTY=/((rgba|rgb)\([^\)]+\)(\s-?\d+px){0,})/g;l.prototype.TEXT_SHADOW_VALUES=/(-?\d+px)|(#.+)|(rgb\(.+\))|(rgba\(.+\))/g;l.prototype.CLIP=
/^rect\((\d+)px,? (\d+)px,? (\d+)px,? (\d+)px\)$/;n.prototype.calculateOverflowClips=function(){this.nodes.forEach(function(a){if(O(a)){!0===a.isPseudoElement&&a.appendToDOM();a.borders=this.parseBorders(a);var b="hidden"===a.css("overflow")?[a.borders.clip]:[],c=a.parseClip();c&&-1!==["absolute","fixed"].indexOf(a.css("position"))&&b.push([["rect",a.bounds.left+c.left,a.bounds.top+c.top,c.right-c.left,c.bottom-c.top]]);a.clip=a.parent&&a.parent.clip.length?a.parent.clip.concat(b):b;a.backgroundClip=
"hidden"!==a.css("overflow")?a.clip.concat([a.borders.clip]):a.clip;!0===a.isPseudoElement&&a.cleanDOM()}else ea(a)&&(a.clip=a.parent&&a.parent.clip.length?a.parent.clip:[]);!0!==a.isPseudoElement&&(a.bounds=null)},this)};n.prototype.asyncRenderer=function(a,b,c){c=c||Date.now();this.paint(a[this.renderIndex++]);a.length===this.renderIndex?b():c+20>Date.now()?this.asyncRenderer(a,b,c):setTimeout(X(function(){this.asyncRenderer(a,b)},this),0)};n.prototype.createPseudoHideStyles=function(a){this.createStyles(a,
"."+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+':before { content: "" !important; display: none !important; }.'+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER+':after { content: "" !important; display: none !important; }')};n.prototype.disableAnimations=function(a){this.createStyles(a,"* { -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; animation: none !important; -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important;}")};
n.prototype.createStyles=function(a,b){var c=a.createElement("style");c.innerHTML=b;a.body.appendChild(c)};n.prototype.getPseudoElements=function(a){var b=[[a]];if(a.node.nodeType===Node.ELEMENT_NODE){var c=this.getPseudoElement(a,":before");a=this.getPseudoElement(a,":after");c&&b.push(c);a&&b.push(a)}return[].concat.apply([],b)};n.prototype.getPseudoElement=function(a,b){var c=a.computedStyle(b);if(!c||!c.content||"none"===c.content||"-moz-alt-content"===c.content||"none"===c.display)return null;
var d,e=c.content,f=e.substr(0,1);d=f===e.substr(e.length-1)&&f.match(/'|"/)?e.substr(1,e.length-2):e;for(var g="url"===d.substr(0,3),e=r.createElement(g?"img":"html2canvaspseudoelement"),f=new v(e,a,b),h=c.length-1;0<=h;h--){var k=Ya(c.item(h));e.style[k]=c[k]}e.className=v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+" "+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER;if(g)return e.src=ra(d)[0].args[0],[f];c=r.createTextNode(d);e.appendChild(c);return[f,new I(c,f)]};n.prototype.getChildren=function(a){return[].concat.apply([],
[].filter.call(a.node.childNodes,db).map(function(b){var c=[b.nodeType===Node.TEXT_NODE?new I(b,a):new l(b,a)].filter(gb);return b.nodeType===Node.ELEMENT_NODE&&c.length&&"TEXTAREA"!==b.tagName?c[0].isElementVisible()?c.concat(this.getChildren(c[0])):[]:c},this))};n.prototype.newStackingContext=function(a,b){var c=new G(b,a.getOpacity(),a.node,a.parent);a.cloneTo(c);(b?c.getParentStack(this):c.parent.stack).contexts.push(c);a.stack=c};n.prototype.createStackingContexts=function(){this.nodes.forEach(function(a){var b;
if(b=O(a))(b=this.isRootElement(a)||1>a.getOpacity())||(b=a.css("position"),b="auto"!==(-1!==["absolute","relative","fixed"].indexOf(b)?a.css("zIndex"):"auto")),b=b||this.isBodyWithTransparentRoot(a)||a.hasTransform();b?this.newStackingContext(a,!0):O(a)&&(P(a)&&va(a)||-1!==["inline-block","inline-table"].indexOf(a.css("display"))||da(a))?this.newStackingContext(a,!1):a.assignStack(a.parent.stack)},this)};n.prototype.isBodyWithTransparentRoot=function(a){return"BODY"===a.node.nodeName&&a.parent.color("backgroundColor").isTransparent()};
n.prototype.isRootElement=function(a){return null===a.parent};n.prototype.sortStackingContexts=function(a){a.contexts.sort(eb(a.contexts.slice(0)));a.contexts.forEach(this.sortStackingContexts,this)};n.prototype.parseTextBounds=function(a){return function(b,c,d){if("none"!==a.parent.css("textDecoration").substr(0,4)||0!==b.trim().length){if(this.support.rangeBounds&&!a.parent.hasTransform())return c=d.slice(0,c).join("").length,this.getRangeBounds(a.node,c,b.length);if(a.node&&"string"===typeof a.node.data)return b=
a.node.splitText(b.length),c=this.getWrapperBounds(a.node,a.parent.hasTransform()),a.node=b,c}else if(!this.support.rangeBounds||a.parent.hasTransform())a.node=a.node.splitText(b.length);return{}}};n.prototype.getWrapperBounds=function(a,b){var c=a.ownerDocument.createElement("html2canvaswrapper"),d=a.parentNode,e=a.cloneNode(!0);c.appendChild(a.cloneNode(!0));d.replaceChild(c,a);var f=b?ca(c):U(c);d.replaceChild(e,c);return f};n.prototype.getRangeBounds=function(a,b,c){var d=this.range||(this.range=
a.ownerDocument.createRange());d.setStart(a,b);d.setEnd(a,b+c);return d.getBoundingClientRect()};n.prototype.parse=function(a){var b=a.contexts.filter(Za),c=a.children.filter(O),d=c.filter(Q(da)),e=d.filter(Q(P)).filter(Q(wa)),c=c.filter(Q(P)).filter(da),f=d.filter(Q(P)).filter(wa),d=a.contexts.concat(d.filter(P)).filter(va),g=a.children.filter(ea).filter(ab);a=a.contexts.filter($a);b.concat(e).concat(c).concat(f).concat(d).concat(g).concat(a).forEach(function(a){this.renderQueue.push(a);a instanceof
G&&(this.parse(a),this.renderQueue.push(new sa))},this)};n.prototype.paint=function(a){try{a instanceof sa?this.renderer.ctx.restore():ea(a)?(!0===a.parent.isPseudoElement&&a.parent.appendToDOM(),this.paintText(a),!0===a.parent.isPseudoElement&&a.parent.cleanDOM()):this.paintNode(a)}catch(b){if(q(b),this.options.strict)throw b;}};n.prototype.paintNode=function(a){a instanceof G&&(this.renderer.setOpacity(a.opacity),this.renderer.ctx.save(),a.hasTransform()&&this.renderer.setTransform(a.parseTransform()));
"INPUT"===a.node.nodeName&&"checkbox"===a.node.type?this.paintCheckbox(a):"INPUT"===a.node.nodeName&&"radio"===a.node.type?this.paintRadio(a):this.paintElement(a)};n.prototype.paintElement=function(a){var b=a.parseBounds();this.renderer.clip(a.backgroundClip,function(){this.renderer.renderBackground(a,b,a.borders.borders.map(fb))},this);this.renderer.clip(a.clip,function(){this.renderer.renderBorders(a.borders.borders)},this);this.renderer.clip(a.backgroundClip,function(){switch(a.node.nodeName){case "svg":case "IFRAME":var c=
this.images.get(a.node);c?this.renderer.renderImage(a,b,a.borders,c):q("Error loading <"+a.node.nodeName+">",a.node);break;case "IMG":(c=this.images.get(a.node.src))?this.renderer.renderImage(a,b,a.borders,c):q("Error loading <img>",a.node.src);break;case "CANVAS":this.renderer.renderImage(a,b,a.borders,{image:a.node});break;case "SELECT":case "INPUT":case "TEXTAREA":this.paintFormValue(a)}},this)};n.prototype.paintCheckbox=function(a){var b=a.parseBounds(),c=Math.min(b.width,b.height),d={width:c-
1,height:c-1,top:b.top,left:b.left},b=[3,3],e=[b,b,b,b],f=[1,1,1,1].map(function(a){return{color:new t("#A5A5A5"),width:a}}),g=ua(d,e,f);this.renderer.clip(a.backgroundClip,function(){this.renderer.rectangle(d.left+1,d.top+1,d.width-2,d.height-2,new t("#DEDEDE"));this.renderer.renderBorders(ta(f,d,g,e));a.node.checked&&(this.renderer.font(new t("#424242"),"normal","normal","bold",c-3+"px","arial"),this.renderer.text("\u2714",d.left+c/6,d.top+c-1))},this)};n.prototype.paintRadio=function(a){var b=
a.parseBounds(),c=Math.min(b.width,b.height)-2;this.renderer.clip(a.backgroundClip,function(){this.renderer.circleStroke(b.left+1,b.top+1,c,new t("#DEDEDE"),1,new t("#A5A5A5"));a.node.checked&&this.renderer.circle(Math.ceil(b.left+c/4)+1,Math.ceil(b.top+c/4)+1,Math.floor(c/2),new t("#424242"))},this)};n.prototype.paintFormValue=function(a){var b=a.getValue();if(0<b.length){var c=a.node.ownerDocument,d=c.createElement("html2canvaswrapper");"lineHeight textAlign fontFamily fontWeight fontSize color paddingLeft paddingTop paddingRight paddingBottom width height borderLeftStyle borderTopStyle borderLeftWidth borderTopWidth boxSizing whiteSpace wordWrap".split(" ").forEach(function(b){try{d.style[b]=
a.css(b)}catch(c){q("html2canvas: Parse: Exception caught in renderFormValue: "+c.message)}});var e=a.parseBounds();d.style.position="fixed";d.style.left=e.left+"px";d.style.top=e.top+"px";d.textContent=b;c.body.appendChild(d);this.paintText(new I(d.firstChild,a));c.body.removeChild(d)}};n.prototype.paintText=function(a){a.applyTextTransform();var b=m.html2canvas.punycode.ucs2.decode(a.node.data),c=this.options.letterRendering&&!/^(normal|none|0px)$/.test(a.parent.css("letterSpacing"))||/[^\u0000-\u00ff]/.test(a.node.data)?
b.map(function(a){return m.html2canvas.punycode.ucs2.encode([a])}):hb(b),b=a.parent.fontWeight(),d=a.parent.css("fontSize"),e=a.parent.css("fontFamily"),f=a.parent.parseTextShadows();this.renderer.font(a.parent.color("color"),a.parent.css("fontStyle"),a.parent.css("fontVariant"),b,d,e);f.length?this.renderer.fontShadow(f[0].color,f[0].offsetX,f[0].offsetY,f[0].blur):this.renderer.clearShadow();this.renderer.clip(a.parent.clip,function(){c.map(this.parseTextBounds(a),this).forEach(function(b,f){b&&
(this.renderer.text(c[f],b.left,b.bottom),this.renderTextDecoration(a.parent,b,this.fontMetrics.getMetrics(e,d)))},this)},this)};n.prototype.renderTextDecoration=function(a,b,c){switch(a.css("textDecoration").split(" ")[0]){case "underline":this.renderer.rectangle(b.left,Math.round(b.top+c.baseline+c.lineWidth),b.width,1,a.color("color"));break;case "overline":this.renderer.rectangle(b.left,Math.round(b.top),b.width,1,a.color("color"));break;case "line-through":this.renderer.rectangle(b.left,Math.ceil(b.top+
c.middle+c.lineWidth),b.width,1,a.color("color"))}};var Ja={inset:[["darken",.6],["darken",.1],["darken",.1],["darken",.6]]};n.prototype.parseBorders=function(a){var b=a.parseBounds(),c=bb(a),d=["Top","Right","Bottom","Left"].map(function(b,c){var d=a.css("border"+b+"Style"),e=a.color("border"+b+"Color");"inset"===d&&e.isBlack()&&(e=new t([255,255,255,e.a]));d=Ja[d]?Ja[d][c]:null;return{width:a.cssInt("border"+b+"Width"),color:d?e[d[0]](d[1]):e,args:null}}),e=ua(b,c,d);return{clip:this.parseBackgroundClip(a,
e,d,c,b),borders:ta(d,b,e,c)}};n.prototype.parseBackgroundClip=function(a,b,c,d,e){var f=[];switch(a.css("backgroundClip")){case "content-box":case "padding-box":D(f,d[0],d[1],b.topLeftInner,b.topRightInner,e.left+c[3].width,e.top+c[0].width);D(f,d[1],d[2],b.topRightInner,b.bottomRightInner,e.left+e.width-c[1].width,e.top+c[0].width);D(f,d[2],d[3],b.bottomRightInner,b.bottomLeftInner,e.left+e.width-c[1].width,e.top+e.height-c[2].width);D(f,d[3],d[0],b.bottomLeftInner,b.topLeftInner,e.left+c[3].width,
e.top+e.height-c[2].width);break;default:D(f,d[0],d[1],b.topLeftOuter,b.topRightOuter,e.left,e.top),D(f,d[1],d[2],b.topRightOuter,b.bottomRightOuter,e.left+e.width,e.top),D(f,d[2],d[3],b.bottomRightOuter,b.bottomLeftOuter,e.left+e.width,e.top+e.height),D(f,d[3],d[0],b.bottomLeftOuter,b.topLeftOuter,e.left,e.top+e.height)}return f};var jb=0,ya="withCredentials"in new XMLHttpRequest,Da="crossOrigin"in new Image;v.prototype.cloneTo=function(a){v.prototype.cloneTo.call(this,a);a.isPseudoElement=!0;a.before=
this.before};v.prototype=Object.create(l.prototype);v.prototype.appendToDOM=function(){this.before?this.parent.node.insertBefore(this.node,this.parent.node.firstChild):this.parent.node.appendChild(this.node);this.parent.node.className+=" "+this.getHideClass()};v.prototype.cleanDOM=function(){this.node.parentNode.removeChild(this.node);this.parent.node.className=this.parent.node.className.replace(this.getHideClass(),"")};v.prototype.getHideClass=function(){return this["PSEUDO_HIDE_ELEMENT_CLASS_"+
(this.before?"BEFORE":"AFTER")]};v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE="___html2canvas___pseudoelement_before";v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER="___html2canvas___pseudoelement_after";x.prototype.renderImage=function(a,b,c,d){var e=a.cssInt("paddingLeft"),f=a.cssInt("paddingTop"),g=a.cssInt("paddingRight");a=a.cssInt("paddingBottom");c=c.borders;g=b.width-(c[1].width+c[3].width+e+g);a=b.height-(c[0].width+c[2].width+f+a);this.drawImage(d,0,0,d.image.width||g,d.image.height||a,b.left+
e+c[3].width,b.top+f+c[0].width,g,a)};x.prototype.renderBackground=function(a,b,c){0<b.height&&0<b.width&&(this.renderBackgroundColor(a,b),this.renderBackgroundImage(a,b,c))};x.prototype.renderBackgroundColor=function(a,b){var c=a.color("backgroundColor");c.isTransparent()||this.rectangle(b.left,b.top,b.width,b.height,c)};x.prototype.renderBorders=function(a){a.forEach(this.renderBorder,this)};x.prototype.renderBorder=function(a){a.color.isTransparent()||null===a.args||this.drawShape(a.args,a.color)};
x.prototype.renderBackgroundImage=function(a,b,c){a.parseBackgroundImages().reverse().forEach(function(d,e,f){switch(d.method){case "url":var g=this.images.get(d.args[0]);g?this.renderBackgroundRepeating(a,b,g,f.length-(e+1),c):q("Error loading background-image",d.args[0]);break;case "linear-gradient":case "gradient":(e=this.images.get(d.value))?this.renderBackgroundGradient(e,b,c):q("Error loading background-image",d.args[0]);break;case "none":break;default:q("Unknown background-image type",d.args[0])}},
this)};x.prototype.renderBackgroundRepeating=function(a,b,c,d,e){var f=a.parseBackgroundSize(b,c.image,d),g=a.parseBackgroundPosition(b,c.image,d,f);switch(a.parseBackgroundRepeat(d)){case "repeat-x":case "repeat no-repeat":this.backgroundRepeatShape(c,g,f,b,b.left+e[3],b.top+g.top+e[0],99999,f.height,e);break;case "repeat-y":case "no-repeat repeat":this.backgroundRepeatShape(c,g,f,b,b.left+g.left+e[3],b.top+e[0],f.width,99999,e);break;case "no-repeat":this.backgroundRepeatShape(c,g,f,b,b.left+g.left+
e[3],b.top+g.top+e[0],f.width,f.height,e);break;default:this.renderBackgroundRepeat(c,g,f,{top:b.top,left:b.left},e[3],e[0])}};G.prototype=Object.create(l.prototype);G.prototype.getParentStack=function(a){var b=this.parent?this.parent.stack:null;return b?b.ownStacking?b:b.getParentStack(a):a.stack};T.prototype.testRangeBounds=function(a){var b,c,d=!1;a.createRange&&(b=a.createRange(),b.getBoundingClientRect&&(c=a.createElement("boundtest"),c.style.height="123px",c.style.display="block",a.body.appendChild(c),
b.selectNode(c),b=b.getBoundingClientRect(),b=b.height,123===b&&(d=!0),a.body.removeChild(c)));return d};T.prototype.testCORS=function(){return"undefined"!==typeof(new Image).crossOrigin};T.prototype.testSVG=function(){var a=new Image,b=r.createElement("canvas"),c=b.getContext("2d");a.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{c.drawImage(a,0,0),b.toDataURL()}catch(d){return!1}return!0};A.prototype.hasFabric=function(){return html2canvas.fabric?Promise.resolve():Promise.reject(Error("html2canvas.svg.js is not loaded, cannot render svg"))};
A.prototype.inlineFormatting=function(a){return/^data:image\/svg\+xml;base64,/.test(a)?this.decode64(this.removeContentType(a)):this.removeContentType(a)};A.prototype.removeContentType=function(a){return a.replace(/^data:image\/svg\+xml(;base64)?,/,"")};A.prototype.isInline=function(a){return/^data:image\/svg\+xml/i.test(a)};A.prototype.createCanvas=function(a){var b=this;return function(c,d){var e=new html2canvas.fabric.StaticCanvas("c");b.image=e.lowerCanvasEl;e.setWidth(d.width).setHeight(d.height).add(html2canvas.fabric.util.groupSVGElements(c,
d)).renderAll();a(e.lowerCanvasEl)}};A.prototype.decode64=function(a){return"function"===typeof m.atob?m.atob(a):Ca(a)};Ea.prototype=Object.create(A.prototype);I.prototype=Object.create(l.prototype);I.prototype.applyTextTransform=function(){this.node.data=this.transform(this.parent.css("textTransform"))};I.prototype.transform=function(a){var b=this.node.data;switch(a){case "lowercase":return b.toLowerCase();case "capitalize":return b.replace(/(^|\s|:|-|\(|\))([a-z])/g,lb);case "uppercase":return b.toUpperCase();
default:return b}};Fa.prototype=Object.create(N.prototype);p.prototype=Object.create(x.prototype);p.prototype.setFillStyle=function(a){this.ctx.fillStyle="object"===typeof a&&a.isColor?a.toString():a;return this.ctx};p.prototype.rectangle=function(a,b,c,d,e){this.setFillStyle(e).fillRect(a,b,c,d)};p.prototype.circle=function(a,b,c,d){this.setFillStyle(d);this.ctx.beginPath();this.ctx.arc(a+c/2,b+c/2,c/2,0,2*Math.PI,!0);this.ctx.closePath();this.ctx.fill()};p.prototype.circleStroke=function(a,b,c,
d,e,f){this.circle(a,b,c,d);this.ctx.strokeStyle=f.toString();this.ctx.stroke()};p.prototype.drawShape=function(a,b){this.shape(a);this.setFillStyle(b).fill()};p.prototype.taints=function(a){if(null===a.tainted){this.taintCtx.drawImage(a.image,0,0);try{this.taintCtx.getImageData(0,0,1,1),a.tainted=!1}catch(b){this.taintCtx=r.createElement("canvas").getContext("2d"),a.tainted=!0}}return a.tainted};p.prototype.drawImage=function(a,b,c,d,e,f,g,h,k){this.taints(a)&&!this.options.allowTaint||this.ctx.drawImage(a.image,
b,c,d,e,f,g,h,k)};p.prototype.clip=function(a,b,c){this.ctx.save();a.filter(mb).forEach(function(a){this.shape(a).clip()},this);b.call(c);this.ctx.restore()};p.prototype.shape=function(a){this.ctx.beginPath();a.forEach(function(a,c){"rect"===a[0]?this.ctx.rect.apply(this.ctx,a.slice(1)):this.ctx[0===c?"moveTo":a[0]+"To"].apply(this.ctx,a.slice(1))},this);this.ctx.closePath();return this.ctx};p.prototype.font=function(a,b,c,d,e,f){this.setFillStyle(a).font=[b,c,d,e,f].join(" ").split(",")[0]};p.prototype.fontShadow=
function(a,b,c,d){this.setVariable("shadowColor",a.toString()).setVariable("shadowOffsetY",b).setVariable("shadowOffsetX",c).setVariable("shadowBlur",d)};p.prototype.clearShadow=function(){this.setVariable("shadowColor","rgba(0,0,0,0)")};p.prototype.setOpacity=function(a){this.ctx.globalAlpha=a};p.prototype.setTransform=function(a){this.ctx.translate(a.origin[0],a.origin[1]);this.ctx.transform.apply(this.ctx,a.matrix);this.ctx.translate(-a.origin[0],-a.origin[1])};p.prototype.setVariable=function(a,
b){this.variables[a]!==b&&(this.variables[a]=this.ctx[a]=b);return this};p.prototype.text=function(a,b,c){this.ctx.fillText(a,b,c)};p.prototype.backgroundRepeatShape=function(a,b,c,d,e,f,g,h,k){this.clip([[["line",Math.round(e),Math.round(f)],["line",Math.round(e+g),Math.round(f)],["line",Math.round(e+g),Math.round(h+f)],["line",Math.round(e),Math.round(h+f)]]],function(){this.renderBackgroundRepeat(a,b,c,d,k[3],k[0])},this)};p.prototype.renderBackgroundRepeat=function(a,b,c,d,e,f){e=Math.round(d.left+
b.left+e);b=Math.round(d.top+b.top+f);this.setFillStyle(this.ctx.createPattern(this.resizeImage(a,c),"repeat"));this.ctx.translate(e,b);this.ctx.fill();this.ctx.translate(-e,-b)};p.prototype.renderBackgroundGradient=function(a,b){if(a instanceof V){var c=this.ctx.createLinearGradient(b.left+b.width*a.x0,b.top+b.height*a.y0,b.left+b.width*a.x1,b.top+b.height*a.y1);a.colorStops.forEach(function(a){c.addColorStop(a.stop,a.color.toString())});this.rectangle(b.left,b.top,b.width,b.height,c)}};p.prototype.resizeImage=
function(a,b){var c=a.image;if(c.width===b.width&&c.height===b.height)return c;var d=r.createElement("canvas");d.width=b.width;d.height=b.height;d.getContext("2d").drawImage(c,0,0,c.width,c.height,0,0,b.width,b.height);return d}}}).call({},"undefined"!==typeof window?window:void 0,"undefined"!==typeof document?document:void 0);
/*
Use it if you like it
*/
(function(A){function E(K){this.ok=!1;"#"==K.charAt(0)&&(K=K.substr(1,6));K=K.replace(/ /g,"");K=K.toLowerCase();var A={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",
darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",
gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",
lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",
oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",
slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},O;for(O in A)K==O&&(K=A[O]);var L=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(u){return[parseInt(u[1]),parseInt(u[2]),parseInt(u[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,
example:["#00ff00","336699"],process:function(u){return[parseInt(u[1],16),parseInt(u[2],16),parseInt(u[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(u){return[parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16),parseInt(u[3]+u[3],16)]}}];for(O=0;O<L.length;O++){var W=L[O].process,M=L[O].re.exec(K);M&&(channels=W(M),this.r=channels[0],this.g=channels[1],this.b=channels[2],this.ok=!0)}this.r=0>this.r||isNaN(this.r)?0:255<this.r?255:this.r;this.g=0>this.g||isNaN(this.g)?0:
255<this.g?255:this.g;this.b=0>this.b||isNaN(this.b)?0:255<this.b?255:this.b;this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"};this.toHex=function(){var u=this.r.toString(16),B=this.g.toString(16),p=this.b.toString(16);1==u.length&&(u="0"+u);1==B.length&&(B="0"+B);1==p.length&&(p="0"+p);return"#"+u+B+p};this.getHelpXML=function(){for(var u=[],B=0;B<L.length;B++)for(var p=L[B].example,C=0;C<p.length;C++)u[u.length]=p[C];for(var w in A)u[u.length]=w;p=document.createElement("ul");
p.setAttribute("id","rgbcolor-examples");for(B=0;B<u.length;B++)try{var h=document.createElement("li"),a=new E(u[B]),l=document.createElement("div");l.style.cssText="margin: 3px; border: 1px solid black; background:"+a.toHex()+"; color:"+a.toHex();l.appendChild(document.createTextNode("test"));var c=document.createTextNode(" "+u[B]+" -> "+a.toRGB()+" -> "+a.toHex());h.appendChild(l);h.appendChild(c);p.appendChild(h)}catch(b){}return p}}"undefined"!==typeof define&&define.amd?define(function(){return E}):
"undefined"!==typeof module&&module.exports&&(module.exports=E);A.RGBColor=E})("undefined"!==typeof window?window:this);
(function(A){function E(M,u,B,p,C,w){if(!(isNaN(w)||1>w)){w|=0;M=document.getElementById(M).getContext("2d");var h;try{try{h=M.getImageData(u,B,p,C)}catch(A){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),h=M.getImageData(u,B,p,C)}catch(K){throw alert("Cannot access local image"),Error("unable to access local image data: "+K);}}}catch(A){throw alert("Cannot access image"),Error("unable to access image data: "+A);}for(var a=h.data,l=h.width*h.height*4,c=0;c<l;c+=4){var b=
a[c+3]/255;a[c]*=b;a[c+1]*=b;a[c+2]*=b}var a=h.data,e,d,k,f,g,n,m,v,z,H,q,F,r,G,D,N,P,S,y,I,J,t,E;e=w+w+1;var R=p-1,l=C-1,c=w+1,b=c*(c+1)/2,Q=new X,x=Q;for(k=1;k<e;k++)if(x=x.next=new X,k==c)var T=x;x.next=Q;n=g=0;var U=O[w],V=L[w];for(d=0;d<C;d++){D=N=P=S=m=v=z=H=0;q=c*(y=a[g]);F=c*(I=a[g+1]);r=c*(J=a[g+2]);G=c*(t=a[g+3]);m+=b*y;v+=b*I;z+=b*J;H+=b*t;x=Q;for(k=0;k<c;k++)x.r=y,x.g=I,x.b=J,x.a=t,x=x.next;for(k=1;k<c;k++)f=g+((R<k?R:k)<<2),m+=(x.r=y=a[f])*(E=c-k),v+=(x.g=I=a[f+1])*E,z+=(x.b=J=a[f+2])*
E,H+=(x.a=t=a[f+3])*E,D+=y,N+=I,P+=J,S+=t,x=x.next;k=Q;x=T;for(e=0;e<p;e++)a[g]=m*U>>V,a[g+1]=v*U>>V,a[g+2]=z*U>>V,a[g+3]=H*U>>V,m-=q,v-=F,z-=r,H-=G,q-=k.r,F-=k.g,r-=k.b,G-=k.a,f=n+((f=e+w+1)<R?f:R)<<2,D+=k.r=a[f],N+=k.g=a[f+1],P+=k.b=a[f+2],S+=k.a=a[f+3],m+=D,v+=N,z+=P,H+=S,k=k.next,q+=y=x.r,F+=I=x.g,r+=J=x.b,G+=t=x.a,D-=y,N-=I,P-=J,S-=t,x=x.next,g+=4;n+=p}for(e=0;e<p;e++){N=P=S=D=v=z=H=m=0;g=e<<2;q=c*(y=a[g]);F=c*(I=a[g+1]);r=c*(J=a[g+2]);G=c*(t=a[g+3]);m+=b*y;v+=b*I;z+=b*J;H+=b*t;x=Q;for(k=0;k<
c;k++)x.r=y,x.g=I,x.b=J,x.a=t,x=x.next;f=p;for(k=1;k<=w;k++)g=f+e<<2,m+=(x.r=y=a[g])*(E=c-k),v+=(x.g=I=a[g+1])*E,z+=(x.b=J=a[g+2])*E,H+=(x.a=t=a[g+3])*E,D+=y,N+=I,P+=J,S+=t,x=x.next,k<l&&(f+=p);g=e;k=Q;x=T;for(d=0;d<C;d++)f=g<<2,a[f]=m*U>>V,a[f+1]=v*U>>V,a[f+2]=z*U>>V,a[f+3]=H*U>>V,m-=q,v-=F,z-=r,H-=G,q-=k.r,F-=k.g,r-=k.b,G-=k.a,f=e+((f=d+c)<l?f:l)*p<<2,m+=D+=k.r=a[f],v+=N+=k.g=a[f+1],z+=P+=k.b=a[f+2],H+=S+=k.a=a[f+3],k=k.next,q+=y=x.r,F+=I=x.g,r+=J=x.b,G+=t=x.a,D-=y,N-=I,P-=J,S-=t,x=x.next,g+=p}p=
h.data;C=h.width*h.height*4;for(w=0;w<C;w+=4)T=p[w+3],0!=T&&(T=255/T,p[w]*=T,p[w+1]*=T,p[w+2]*=T);M.putImageData(h,u,B)}}function K(M,u,B,p,C,w){if(!(isNaN(w)||1>w)){w|=0;M=document.getElementById(M).getContext("2d");var h;try{try{h=M.getImageData(u,B,p,C)}catch(x){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),h=M.getImageData(u,B,p,C)}catch(E){throw alert("Cannot access local image"),Error("unable to access local image data: "+E);}}}catch(x){throw alert("Cannot access image"),
Error("unable to access image data: "+x);}var a=h.data,l,c,b,e,d,k,f,g,n,m,v,z,H,q,F,r,G,D,N;l=w+w+1;var P=p-1,A=C-1,y=w+1,I=y*(y+1)/2,J=new X,t=J;for(b=1;b<l;b++)if(t=t.next=new X,b==y)var K=t;t.next=J;k=d=0;var R=O[w],Q=L[w];for(c=0;c<C;c++){H=q=F=f=g=n=0;m=y*(r=a[d]);v=y*(G=a[d+1]);z=y*(D=a[d+2]);f+=I*r;g+=I*G;n+=I*D;t=J;for(b=0;b<y;b++)t.r=r,t.g=G,t.b=D,t=t.next;for(b=1;b<y;b++)e=d+((P<b?P:b)<<2),f+=(t.r=r=a[e])*(N=y-b),g+=(t.g=G=a[e+1])*N,n+=(t.b=D=a[e+2])*N,H+=r,q+=G,F+=D,t=t.next;b=J;t=K;for(l=
0;l<p;l++)a[d]=f*R>>Q,a[d+1]=g*R>>Q,a[d+2]=n*R>>Q,f-=m,g-=v,n-=z,m-=b.r,v-=b.g,z-=b.b,e=k+((e=l+w+1)<P?e:P)<<2,H+=b.r=a[e],q+=b.g=a[e+1],F+=b.b=a[e+2],f+=H,g+=q,n+=F,b=b.next,m+=r=t.r,v+=G=t.g,z+=D=t.b,H-=r,q-=G,F-=D,t=t.next,d+=4;k+=p}for(l=0;l<p;l++){q=F=H=g=n=f=0;d=l<<2;m=y*(r=a[d]);v=y*(G=a[d+1]);z=y*(D=a[d+2]);f+=I*r;g+=I*G;n+=I*D;t=J;for(b=0;b<y;b++)t.r=r,t.g=G,t.b=D,t=t.next;e=p;for(b=1;b<=w;b++)d=e+l<<2,f+=(t.r=r=a[d])*(N=y-b),g+=(t.g=G=a[d+1])*N,n+=(t.b=D=a[d+2])*N,H+=r,q+=G,F+=D,t=t.next,
b<A&&(e+=p);d=l;b=J;t=K;for(c=0;c<C;c++)e=d<<2,a[e]=f*R>>Q,a[e+1]=g*R>>Q,a[e+2]=n*R>>Q,f-=m,g-=v,n-=z,m-=b.r,v-=b.g,z-=b.b,e=l+((e=c+y)<A?e:A)*p<<2,f+=H+=b.r=a[e],g+=q+=b.g=a[e+1],n+=F+=b.b=a[e+2],b=b.next,m+=r=t.r,v+=G=t.g,z+=D=t.b,H-=r,q-=G,F-=D,t=t.next,d+=p}M.putImageData(h,u,B)}}function X(){this.a=this.b=this.g=this.r=0;this.next=null}var O=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,
345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,
309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],L=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,
24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24],W={image:function(A,u,B,p){A=document.getElementById(A);var C=A.naturalWidth,w=A.naturalHeight,h=document.getElementById(u);h.style.width=C+"px";h.style.height=w+"px";h.width=C;h.height=w;h=h.getContext("2d");h.clearRect(0,0,C,w);h.drawImage(A,0,0);isNaN(B)||1>B||(p?E(u,0,0,C,w,B):K(u,0,0,C,w,B))},canvasRGBA:E,canvasRGB:K};"undefined"!==typeof define&&define.amd?define(function(){return W}):
"undefined"!==typeof module&&module.exports&&(module.exports=W);A.stackBlur=W})("undefined"!==typeof window?window:this);
(function(A,E){A.canvg=E(A.RGBColor,A.stackBlur)})("undefined"!==typeof window?window:this,function(A,E){function K(h){var a=[0,0,0],l=function(c,b){var e=h.match(c);null!=e&&(a[b]+=e.length,h=h.replace(c," "))};h=h.replace(/:not\(([^\)]*)\)/g," $1 ");h=h.replace(/{[\s\S]*/gm," ");l(W,1);l(M,0);l(u,1);l(B,2);l(p,1);l(C,1);h=h.replace(/[\*\s\+>~]/g," ");h=h.replace(/[#\.]/g," ");l(w,2);return a.join("")}function X(h){var a={opts:h,FRAMERATE:30,MAX_VIRTUAL_PIXELS:3E4,log:function(a){}};1==a.opts.log&&
"undefined"!=typeof console&&(a.log=function(a){console.log(a)});a.init=function(c){var b=0;a.UniqueId=function(){b++;return"canvg"+b};a.Definitions={};a.Styles={};a.StylesSpecificity={};a.Animations=[];a.Images=[];a.ctx=c;a.ViewPort=new function(){this.viewPorts=[];this.Clear=function(){this.viewPorts=[]};this.SetCurrent=function(a,b){this.viewPorts.push({width:a,height:b})};this.RemoveCurrent=function(){this.viewPorts.pop()};this.Current=function(){return this.viewPorts[this.viewPorts.length-1]};
this.width=function(){return this.Current().width};this.height=function(){return this.Current().height};this.ComputeSize=function(a){return null!=a&&"number"==typeof a?a:"x"==a?this.width():"y"==a?this.height():Math.sqrt(Math.pow(this.width(),2)+Math.pow(this.height(),2))/Math.sqrt(2)}}};a.init();a.ImagesLoaded=function(){for(var c=0;c<a.Images.length;c++)if(!a.Images[c].loaded)return!1;return!0};a.trim=function(a){return a.replace(/^\s+|\s+$/g,"")};a.compressSpaces=function(a){return a.replace(/[\s\r\t\n]+/gm,
" ")};a.ajax=function(a){var b;b=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");b.open("GET",a,!1);b.send(null);return b.responseText};a.parseXml=function(a){if("undefined"!=typeof Windows&&"undefined"!=typeof Windows.Data&&"undefined"!=typeof Windows.Data.Xml){var b=new Windows.Data.Xml.Dom.XmlDocument,e=new Windows.Data.Xml.Dom.XmlLoadSettings;e.prohibitDtd=!1;b.loadXml(a,e);return b}if(window.DOMParser)return(new DOMParser).parseFromString(a,"text/xml");a=a.replace(/<!DOCTYPE svg[^>]*>/,
"");b=new ActiveXObject("Microsoft.XMLDOM");b.async="false";b.loadXML(a);return b};a.Property=function(a,b){this.name=a;this.value=b};a.Property.prototype.getValue=function(){return this.value};a.Property.prototype.hasValue=function(){return null!=this.value&&""!==this.value};a.Property.prototype.numValue=function(){if(!this.hasValue())return 0;var a=parseFloat(this.value);(this.value+"").match(/%$/)&&(a/=100);return a};a.Property.prototype.valueOrDefault=function(a){return this.hasValue()?this.value:
a};a.Property.prototype.numValueOrDefault=function(a){return this.hasValue()?this.numValue():a};a.Property.prototype.addOpacity=function(c){var b=this.value;if(null!=c.value&&""!=c.value&&"string"==typeof this.value){var e=new A(this.value);e.ok&&(b="rgba("+e.r+", "+e.g+", "+e.b+", "+c.numValue()+")")}return new a.Property(this.name,b)};a.Property.prototype.getDefinition=function(){var c=this.value.match(/#([^\)'"]+)/);c&&(c=c[1]);c||(c=this.value);return a.Definitions[c]};a.Property.prototype.isUrlDefinition=
function(){return 0==this.value.indexOf("url(")};a.Property.prototype.getFillStyleDefinition=function(c,b){var e=this.getDefinition();if(null!=e&&e.createGradient)return e.createGradient(a.ctx,c,b);if(null!=e&&e.createPattern){if(e.getHrefAttribute().hasValue()){var d=e.attribute("patternTransform"),e=e.getHrefAttribute().getDefinition();d.hasValue()&&(e.attribute("patternTransform",!0).value=d.value)}return e.createPattern(a.ctx,c)}return null};a.Property.prototype.getDPI=function(a){return 96};
a.Property.prototype.getEM=function(c){var b=12,e=new a.Property("fontSize",a.Font.Parse(a.ctx.font).fontSize);e.hasValue()&&(b=e.toPixels(c));return b};a.Property.prototype.getUnits=function(){return(this.value+"").replace(/[0-9\.\-]/g,"")};a.Property.prototype.toPixels=function(c,b){if(!this.hasValue())return 0;var e=this.value+"";if(e.match(/em$/))return this.numValue()*this.getEM(c);if(e.match(/ex$/))return this.numValue()*this.getEM(c)/2;if(e.match(/px$/))return this.numValue();if(e.match(/pt$/))return this.numValue()*
this.getDPI(c)*(1/72);if(e.match(/pc$/))return 15*this.numValue();if(e.match(/cm$/))return this.numValue()*this.getDPI(c)/2.54;if(e.match(/mm$/))return this.numValue()*this.getDPI(c)/25.4;if(e.match(/in$/))return this.numValue()*this.getDPI(c);if(e.match(/%$/))return this.numValue()*a.ViewPort.ComputeSize(c);e=this.numValue();return b&&1>e?e*a.ViewPort.ComputeSize(c):e};a.Property.prototype.toMilliseconds=function(){if(!this.hasValue())return 0;var a=this.value+"";if(a.match(/s$/))return 1E3*this.numValue();
a.match(/ms$/);return this.numValue()};a.Property.prototype.toRadians=function(){if(!this.hasValue())return 0;var a=this.value+"";return a.match(/deg$/)?this.numValue()*(Math.PI/180):a.match(/grad$/)?this.numValue()*(Math.PI/200):a.match(/rad$/)?this.numValue():this.numValue()*(Math.PI/180)};var l={baseline:"alphabetic","before-edge":"top","text-before-edge":"top",middle:"middle",central:"middle","after-edge":"bottom","text-after-edge":"bottom",ideographic:"ideographic",alphabetic:"alphabetic",hanging:"hanging",
mathematical:"alphabetic"};a.Property.prototype.toTextBaseline=function(){return this.hasValue()?l[this.value]:null};a.Font=new function(){this.Styles="normal|italic|oblique|inherit";this.Variants="normal|small-caps|inherit";this.Weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";this.CreateFont=function(b,e,d,c,f,g){g=null!=g?this.Parse(g):this.CreateFont("","","","","",a.ctx.font);return{fontFamily:f||g.fontFamily,fontSize:c||g.fontSize,fontStyle:b||g.fontStyle,fontWeight:d||
g.fontWeight,fontVariant:e||g.fontVariant,toString:function(){return[this.fontStyle,this.fontVariant,this.fontWeight,this.fontSize,this.fontFamily].join(" ")}}};var c=this;this.Parse=function(b){var e={};b=a.trim(a.compressSpaces(b||"")).split(" ");for(var d=!1,k=!1,f=!1,g=!1,n="",m=0;m<b.length;m++)k||-1==c.Styles.indexOf(b[m])?g||-1==c.Variants.indexOf(b[m])?f||-1==c.Weights.indexOf(b[m])?d?"inherit"!=b[m]&&(n+=b[m]):("inherit"!=b[m]&&(e.fontSize=b[m].split("/")[0]),k=g=f=d=!0):("inherit"!=b[m]&&
(e.fontWeight=b[m]),k=g=f=!0):("inherit"!=b[m]&&(e.fontVariant=b[m]),k=g=!0):("inherit"!=b[m]&&(e.fontStyle=b[m]),k=!0);""!=n&&(e.fontFamily=n);return e}};a.ToNumberArray=function(c){c=a.trim(a.compressSpaces((c||"").replace(/,/g," "))).split(" ");for(var b=0;b<c.length;b++)c[b]=parseFloat(c[b]);return c};a.Point=function(a,b){this.x=a;this.y=b};a.Point.prototype.angleTo=function(a){return Math.atan2(a.y-this.y,a.x-this.x)};a.Point.prototype.applyTransform=function(a){var b=this.x*a[1]+this.y*a[3]+
a[5];this.x=this.x*a[0]+this.y*a[2]+a[4];this.y=b};a.CreatePoint=function(c){c=a.ToNumberArray(c);return new a.Point(c[0],c[1])};a.CreatePath=function(c){c=a.ToNumberArray(c);for(var b=[],e=0;e<c.length;e+=2)b.push(new a.Point(c[e],c[e+1]));return b};a.BoundingBox=function(a,b,e,d){this.y2=this.x2=this.y1=this.x1=Number.NaN;this.x=function(){return this.x1};this.y=function(){return this.y1};this.width=function(){return this.x2-this.x1};this.height=function(){return this.y2-this.y1};this.addPoint=
function(a,b){if(null!=a){if(isNaN(this.x1)||isNaN(this.x2))this.x2=this.x1=a;a<this.x1&&(this.x1=a);a>this.x2&&(this.x2=a)}if(null!=b){if(isNaN(this.y1)||isNaN(this.y2))this.y2=this.y1=b;b<this.y1&&(this.y1=b);b>this.y2&&(this.y2=b)}};this.addX=function(a){this.addPoint(a,null)};this.addY=function(a){this.addPoint(null,a)};this.addBoundingBox=function(a){this.addPoint(a.x1,a.y1);this.addPoint(a.x2,a.y2)};this.addQuadraticCurve=function(a,b,e,d,c,v){e=a+2/3*(e-a);d=b+2/3*(d-b);this.addBezierCurve(a,
b,e,e+1/3*(c-a),d,d+1/3*(v-b),c,v)};this.addBezierCurve=function(a,b,e,d,c,v,z,h){var q=[a,b],F=[e,d],r=[c,v],l=[z,h];this.addPoint(q[0],q[1]);this.addPoint(l[0],l[1]);for(i=0;1>=i;i++)a=function(a){return Math.pow(1-a,3)*q[i]+3*Math.pow(1-a,2)*a*F[i]+3*(1-a)*Math.pow(a,2)*r[i]+Math.pow(a,3)*l[i]},b=6*q[i]-12*F[i]+6*r[i],e=-3*q[i]+9*F[i]-9*r[i]+3*l[i],d=3*F[i]-3*q[i],0==e?0!=b&&(b=-d/b,0<b&&1>b&&(0==i&&this.addX(a(b)),1==i&&this.addY(a(b)))):(d=Math.pow(b,2)-4*d*e,0>d||(c=(-b+Math.sqrt(d))/(2*e),
0<c&&1>c&&(0==i&&this.addX(a(c)),1==i&&this.addY(a(c))),b=(-b-Math.sqrt(d))/(2*e),0<b&&1>b&&(0==i&&this.addX(a(b)),1==i&&this.addY(a(b)))))};this.isPointInBox=function(a,b){return this.x1<=a&&a<=this.x2&&this.y1<=b&&b<=this.y2};this.addPoint(a,b);this.addPoint(e,d)};a.Transform=function(c){var b=this;this.Type={};this.Type.translate=function(b){this.p=a.CreatePoint(b);this.apply=function(a){a.translate(this.p.x||0,this.p.y||0)};this.unapply=function(a){a.translate(-1*this.p.x||0,-1*this.p.y||0)};
this.applyToPoint=function(a){a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0])}};this.Type.rotate=function(b){b=a.ToNumberArray(b);this.angle=new a.Property("angle",b[0]);this.cx=b[1]||0;this.cy=b[2]||0;this.apply=function(a){a.translate(this.cx,this.cy);a.rotate(this.angle.toRadians());a.translate(-this.cx,-this.cy)};this.unapply=function(a){a.translate(this.cx,this.cy);a.rotate(-1*this.angle.toRadians());a.translate(-this.cx,-this.cy)};this.applyToPoint=function(a){var b=this.angle.toRadians();
a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0]);a.applyTransform([Math.cos(b),Math.sin(b),-Math.sin(b),Math.cos(b),0,0]);a.applyTransform([1,0,0,1,-this.p.x||0,-this.p.y||0])}};this.Type.scale=function(b){this.p=a.CreatePoint(b);this.apply=function(a){a.scale(this.p.x||1,this.p.y||this.p.x||1)};this.unapply=function(a){a.scale(1/this.p.x||1,1/this.p.y||this.p.x||1)};this.applyToPoint=function(a){a.applyTransform([this.p.x||0,0,0,this.p.y||0,0,0])}};this.Type.matrix=function(b){this.m=a.ToNumberArray(b);
this.apply=function(a){a.transform(this.m[0],this.m[1],this.m[2],this.m[3],this.m[4],this.m[5])};this.unapply=function(a){var b=this.m[0],e=this.m[2],d=this.m[4],c=this.m[1],f=this.m[3],g=this.m[5],k=1/(b*(1*f-0*g)-e*(1*c-0*g)+d*(0*c-0*f));a.transform(k*(1*f-0*g),k*(0*g-1*c),k*(0*d-1*e),k*(1*b-0*d),k*(e*g-d*f),k*(d*c-b*g))};this.applyToPoint=function(a){a.applyTransform(this.m)}};this.Type.SkewBase=function(e){this.base=b.Type.matrix;this.base(e);this.angle=new a.Property("angle",e)};this.Type.SkewBase.prototype=
new this.Type.matrix;this.Type.skewX=function(a){this.base=b.Type.SkewBase;this.base(a);this.m=[1,0,Math.tan(this.angle.toRadians()),1,0,0]};this.Type.skewX.prototype=new this.Type.SkewBase;this.Type.skewY=function(a){this.base=b.Type.SkewBase;this.base(a);this.m=[1,Math.tan(this.angle.toRadians()),0,1,0,0]};this.Type.skewY.prototype=new this.Type.SkewBase;this.transforms=[];this.apply=function(a){for(var b=0;b<this.transforms.length;b++)this.transforms[b].apply(a)};this.unapply=function(a){for(var b=
this.transforms.length-1;0<=b;b--)this.transforms[b].unapply(a)};this.applyToPoint=function(a){for(var b=0;b<this.transforms.length;b++)this.transforms[b].applyToPoint(a)};c=a.trim(a.compressSpaces(c)).replace(/\)([a-zA-Z])/g,") $1").replace(/\)(\s?,\s?)/g,") ").split(/\s(?=[a-z])/);for(var e=0;e<c.length;e++){var d=a.trim(c[e].split("(")[0]),k=c[e].split("(")[1].replace(")",""),f=this.Type[d];"undefined"!=typeof f&&(k=new f(k),k.type=d,this.transforms.push(k))}};a.AspectRatio=function(c,b,e,d,k,
f,g,n,m,v){b=a.compressSpaces(b);b=b.replace(/^defer\s/,"");var z=b.split(" ")[0]||"xMidYMid";b=b.split(" ")[1]||"meet";var h=e/d,q=k/f,l=Math.min(h,q),r=Math.max(h,q);"meet"==b&&(d*=l,f*=l);"slice"==b&&(d*=r,f*=r);m=new a.Property("refX",m);v=new a.Property("refY",v);m.hasValue()&&v.hasValue()?c.translate(-l*m.toPixels("x"),-l*v.toPixels("y")):(z.match(/^xMid/)&&("meet"==b&&l==q||"slice"==b&&r==q)&&c.translate(e/2-d/2,0),z.match(/YMid$/)&&("meet"==b&&l==h||"slice"==b&&r==h)&&c.translate(0,k/2-f/
2),z.match(/^xMax/)&&("meet"==b&&l==q||"slice"==b&&r==q)&&c.translate(e-d,0),z.match(/YMax$/)&&("meet"==b&&l==h||"slice"==b&&r==h)&&c.translate(0,k-f));"none"==z?c.scale(h,q):"meet"==b?c.scale(l,l):"slice"==b&&c.scale(r,r);c.translate(null==g?0:-g,null==n?0:-n)};a.Element={};a.EmptyProperty=new a.Property("EMPTY","");a.Element.ElementBase=function(c){this.attributes={};this.styles={};this.stylesSpecificity={};this.children=[];this.attribute=function(b,e){var d=this.attributes[b];if(null!=d)return d;
1==e&&(d=new a.Property(b,""),this.attributes[b]=d);return d||a.EmptyProperty};this.getHrefAttribute=function(){for(var b in this.attributes)if("href"==b||b.match(/:href$/))return this.attributes[b];return a.EmptyProperty};this.style=function(b,e,d){var c=this.styles[b];if(null!=c)return c;var f=this.attribute(b);if(null!=f&&f.hasValue())return this.styles[b]=f;if(1!=d&&(d=this.parent,null!=d&&(d=d.style(b),null!=d&&d.hasValue())))return d;1==e&&(c=new a.Property(b,""),this.styles[b]=c);return c||
a.EmptyProperty};this.render=function(a){if("none"!=this.style("display").value&&"hidden"!=this.style("visibility").value){a.save();if(this.style("mask").hasValue()){var b=this.style("mask").getDefinition();null!=b&&b.apply(a,this)}else this.style("filter").hasValue()?(b=this.style("filter").getDefinition(),null!=b&&b.apply(a,this)):(this.setContext(a),this.renderChildren(a),this.clearContext(a));a.restore()}};this.setContext=function(a){};this.clearContext=function(a){};this.renderChildren=function(a){for(var b=
0;b<this.children.length;b++)this.children[b].render(a)};this.addChild=function(b,e){var d=b;e&&(d=a.CreateElement(b));d.parent=this;"title"!=d.type&&this.children.push(d)};this.addStylesFromStyleDefinition=function(){for(var b in a.Styles)if("@"!=b[0]&&L(c,b)){var e=a.Styles[b],d=a.StylesSpecificity[b];if(null!=e)for(var f in e){var k=this.stylesSpecificity[f];"undefined"==typeof k&&(k="000");d>k&&(this.styles[f]=e[f],this.stylesSpecificity[f]=d)}}};var b=/^[A-Z-]+$/,e=function(a){return b.test(a)?
a.toLowerCase():a};if(null!=c&&1==c.nodeType){for(var d=0;d<c.attributes.length;d++){var k=c.attributes[d],f=e(k.nodeName);this.attributes[f]=new a.Property(f,k.value)}this.addStylesFromStyleDefinition();if(this.attribute("style").hasValue())for(e=this.attribute("style").value.split(";"),d=0;d<e.length;d++)""!=a.trim(e[d])&&(f=e[d].split(":"),k=a.trim(f[0]),f=a.trim(f[1]),this.styles[k]=new a.Property(k,f));this.attribute("id").hasValue()&&null==a.Definitions[this.attribute("id").value]&&(a.Definitions[this.attribute("id").value]=
this);for(d=0;d<c.childNodes.length;d++)e=c.childNodes[d],1==e.nodeType&&this.addChild(e,!0),!this.captureTextNodes||3!=e.nodeType&&4!=e.nodeType||""!=a.compressSpaces(e.value||e.text||e.textContent||"")&&this.addChild(new a.Element.tspan(e),!1)}};a.Element.RenderedElementBase=function(c){this.base=a.Element.ElementBase;this.base(c);this.setContext=function(b){if(this.style("fill").isUrlDefinition()){var e=this.style("fill").getFillStyleDefinition(this,this.style("fill-opacity"));null!=e&&(b.fillStyle=
e)}else this.style("fill").hasValue()&&(e=this.style("fill"),"currentColor"==e.value&&(e.value=this.style("color").value),"inherit"!=e.value&&(b.fillStyle="none"==e.value?"rgba(0,0,0,0)":e.value));this.style("fill-opacity").hasValue()&&(e=new a.Property("fill",b.fillStyle),e=e.addOpacity(this.style("fill-opacity")),b.fillStyle=e.value);this.style("stroke").isUrlDefinition()?(e=this.style("stroke").getFillStyleDefinition(this,this.style("stroke-opacity")),null!=e&&(b.strokeStyle=e)):this.style("stroke").hasValue()&&
(e=this.style("stroke"),"currentColor"==e.value&&(e.value=this.style("color").value),"inherit"!=e.value&&(b.strokeStyle="none"==e.value?"rgba(0,0,0,0)":e.value));this.style("stroke-opacity").hasValue()&&(e=new a.Property("stroke",b.strokeStyle),e=e.addOpacity(this.style("stroke-opacity")),b.strokeStyle=e.value);this.style("stroke-width").hasValue()&&(e=this.style("stroke-width").toPixels(),b.lineWidth=0==e?.001:e);this.style("stroke-linecap").hasValue()&&(b.lineCap=this.style("stroke-linecap").value);
this.style("stroke-linejoin").hasValue()&&(b.lineJoin=this.style("stroke-linejoin").value);this.style("stroke-miterlimit").hasValue()&&(b.miterLimit=this.style("stroke-miterlimit").value);this.style("stroke-dasharray").hasValue()&&"none"!=this.style("stroke-dasharray").value&&(e=a.ToNumberArray(this.style("stroke-dasharray").value),"undefined"!=typeof b.setLineDash?b.setLineDash(e):"undefined"!=typeof b.webkitLineDash?b.webkitLineDash=e:"undefined"==typeof b.mozDash||1==e.length&&0==e[0]||(b.mozDash=
e),e=this.style("stroke-dashoffset").numValueOrDefault(1),"undefined"!=typeof b.lineDashOffset?b.lineDashOffset=e:"undefined"!=typeof b.webkitLineDashOffset?b.webkitLineDashOffset=e:"undefined"!=typeof b.mozDashOffset&&(b.mozDashOffset=e));"undefined"!=typeof b.font&&(b.font=a.Font.CreateFont(this.style("font-style").value,this.style("font-variant").value,this.style("font-weight").value,this.style("font-size").hasValue()?this.style("font-size").toPixels()+"px":"",this.style("font-family").value).toString());
this.style("transform",!1,!0).hasValue()&&(new a.Transform(this.style("transform",!1,!0).value)).apply(b);this.style("clip-path",!1,!0).hasValue()&&(e=this.style("clip-path",!1,!0).getDefinition(),null!=e&&e.apply(b));this.style("opacity").hasValue()&&(b.globalAlpha=this.style("opacity").numValue())}};a.Element.RenderedElementBase.prototype=new a.Element.ElementBase;a.Element.PathElementBase=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.path=function(b){null!=b&&b.beginPath();
return new a.BoundingBox};this.renderChildren=function(b){this.path(b);a.Mouse.checkPath(this,b);""!=b.fillStyle&&("inherit"!=this.style("fill-rule").valueOrDefault("inherit")?b.fill(this.style("fill-rule").value):b.fill());""!=b.strokeStyle&&b.stroke();var e=this.getMarkers();if(null!=e){if(this.style("marker-start").isUrlDefinition()){var d=this.style("marker-start").getDefinition();d.render(b,e[0][0],e[0][1])}if(this.style("marker-mid").isUrlDefinition())for(var d=this.style("marker-mid").getDefinition(),
c=1;c<e.length-1;c++)d.render(b,e[c][0],e[c][1]);this.style("marker-end").isUrlDefinition()&&(d=this.style("marker-end").getDefinition(),d.render(b,e[e.length-1][0],e[e.length-1][1]))}};this.getBoundingBox=function(){return this.path()};this.getMarkers=function(){return null}};a.Element.PathElementBase.prototype=new a.Element.RenderedElementBase;a.Element.svg=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.baseClearContext=this.clearContext;this.clearContext=function(b){this.baseClearContext(b);
a.ViewPort.RemoveCurrent()};this.baseSetContext=this.setContext;this.setContext=function(b){b.strokeStyle="rgba(0,0,0,0)";b.lineCap="butt";b.lineJoin="miter";b.miterLimit=4;"undefined"!=typeof b.font&&"undefined"!=typeof window.getComputedStyle&&(b.font=window.getComputedStyle(b.canvas).getPropertyValue("font"));this.baseSetContext(b);this.attribute("x").hasValue()||(this.attribute("x",!0).value=0);this.attribute("y").hasValue()||(this.attribute("y",!0).value=0);b.translate(this.attribute("x").toPixels("x"),
this.attribute("y").toPixels("y"));var e=a.ViewPort.width(),d=a.ViewPort.height();this.attribute("width").hasValue()||(this.attribute("width",!0).value="100%");this.attribute("height").hasValue()||(this.attribute("height",!0).value="100%");if("undefined"==typeof this.root){var e=this.attribute("width").toPixels("x"),d=this.attribute("height").toPixels("y"),c=0,f=0;this.attribute("refX").hasValue()&&this.attribute("refY").hasValue()&&(c=-this.attribute("refX").toPixels("x"),f=-this.attribute("refY").toPixels("y"));
"visible"!=this.attribute("overflow").valueOrDefault("hidden")&&(b.beginPath(),b.moveTo(c,f),b.lineTo(e,f),b.lineTo(e,d),b.lineTo(c,d),b.closePath(),b.clip())}a.ViewPort.SetCurrent(e,d);if(this.attribute("viewBox").hasValue()){var c=a.ToNumberArray(this.attribute("viewBox").value),f=c[0],g=c[1],e=c[2],d=c[3];a.AspectRatio(b,this.attribute("preserveAspectRatio").value,a.ViewPort.width(),e,a.ViewPort.height(),d,f,g,this.attribute("refX").value,this.attribute("refY").value);a.ViewPort.RemoveCurrent();
a.ViewPort.SetCurrent(c[2],c[3])}}};a.Element.svg.prototype=new a.Element.RenderedElementBase;a.Element.rect=function(c){this.base=a.Element.PathElementBase;this.base(c);this.path=function(b){var e=this.attribute("x").toPixels("x"),d=this.attribute("y").toPixels("y"),c=this.attribute("width").toPixels("x"),f=this.attribute("height").toPixels("y"),g=this.attribute("rx").toPixels("x"),n=this.attribute("ry").toPixels("y");this.attribute("rx").hasValue()&&!this.attribute("ry").hasValue()&&(n=g);this.attribute("ry").hasValue()&&
!this.attribute("rx").hasValue()&&(g=n);g=Math.min(g,c/2);n=Math.min(n,f/2);null!=b&&(b.beginPath(),b.moveTo(e+g,d),b.lineTo(e+c-g,d),b.quadraticCurveTo(e+c,d,e+c,d+n),b.lineTo(e+c,d+f-n),b.quadraticCurveTo(e+c,d+f,e+c-g,d+f),b.lineTo(e+g,d+f),b.quadraticCurveTo(e,d+f,e,d+f-n),b.lineTo(e,d+n),b.quadraticCurveTo(e,d,e+g,d),b.closePath());return new a.BoundingBox(e,d,e+c,d+f)}};a.Element.rect.prototype=new a.Element.PathElementBase;a.Element.circle=function(c){this.base=a.Element.PathElementBase;this.base(c);
this.path=function(b){var e=this.attribute("cx").toPixels("x"),d=this.attribute("cy").toPixels("y"),c=this.attribute("r").toPixels();null!=b&&(b.beginPath(),b.arc(e,d,c,0,2*Math.PI,!0),b.closePath());return new a.BoundingBox(e-c,d-c,e+c,d+c)}};a.Element.circle.prototype=new a.Element.PathElementBase;a.Element.ellipse=function(c){this.base=a.Element.PathElementBase;this.base(c);this.path=function(b){var e=(Math.sqrt(2)-1)/3*4,d=this.attribute("rx").toPixels("x"),c=this.attribute("ry").toPixels("y"),
f=this.attribute("cx").toPixels("x"),g=this.attribute("cy").toPixels("y");null!=b&&(b.beginPath(),b.moveTo(f,g-c),b.bezierCurveTo(f+e*d,g-c,f+d,g-e*c,f+d,g),b.bezierCurveTo(f+d,g+e*c,f+e*d,g+c,f,g+c),b.bezierCurveTo(f-e*d,g+c,f-d,g+e*c,f-d,g),b.bezierCurveTo(f-d,g-e*c,f-e*d,g-c,f,g-c),b.closePath());return new a.BoundingBox(f-d,g-c,f+d,g+c)}};a.Element.ellipse.prototype=new a.Element.PathElementBase;a.Element.line=function(c){this.base=a.Element.PathElementBase;this.base(c);this.getPoints=function(){return[new a.Point(this.attribute("x1").toPixels("x"),
this.attribute("y1").toPixels("y")),new a.Point(this.attribute("x2").toPixels("x"),this.attribute("y2").toPixels("y"))]};this.path=function(b){var e=this.getPoints();null!=b&&(b.beginPath(),b.moveTo(e[0].x,e[0].y),b.lineTo(e[1].x,e[1].y));return new a.BoundingBox(e[0].x,e[0].y,e[1].x,e[1].y)};this.getMarkers=function(){var a=this.getPoints(),e=a[0].angleTo(a[1]);return[[a[0],e],[a[1],e]]}};a.Element.line.prototype=new a.Element.PathElementBase;a.Element.polyline=function(c){this.base=a.Element.PathElementBase;
this.base(c);this.points=a.CreatePath(this.attribute("points").value);this.path=function(b){var e=new a.BoundingBox(this.points[0].x,this.points[0].y);null!=b&&(b.beginPath(),b.moveTo(this.points[0].x,this.points[0].y));for(var d=1;d<this.points.length;d++)e.addPoint(this.points[d].x,this.points[d].y),null!=b&&b.lineTo(this.points[d].x,this.points[d].y);return e};this.getMarkers=function(){for(var a=[],e=0;e<this.points.length-1;e++)a.push([this.points[e],this.points[e].angleTo(this.points[e+1])]);
0<a.length&&a.push([this.points[this.points.length-1],a[a.length-1][1]]);return a}};a.Element.polyline.prototype=new a.Element.PathElementBase;a.Element.polygon=function(c){this.base=a.Element.polyline;this.base(c);this.basePath=this.path;this.path=function(a){var e=this.basePath(a);null!=a&&(a.lineTo(this.points[0].x,this.points[0].y),a.closePath());return e}};a.Element.polygon.prototype=new a.Element.polyline;a.Element.path=function(c){this.base=a.Element.PathElementBase;this.base(c);c=this.attribute("d").value;
c=c.replace(/,/gm," ");for(var b=0;2>b;b++)c=c.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2");c=c.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm,"$1 $2");c=c.replace(/([0-9])([+\-])/gm,"$1 $2");for(b=0;2>b;b++)c=c.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");c=c.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");c=a.compressSpaces(c);c=a.trim(c);this.PathParser=new function(b){this.tokens=b.split(" ");this.reset=function(){this.i=-1;this.previousCommand=this.command="";this.start=new a.Point(0,
0);this.control=new a.Point(0,0);this.current=new a.Point(0,0);this.points=[];this.angles=[]};this.isEnd=function(){return this.i>=this.tokens.length-1};this.isCommandOrEnd=function(){return this.isEnd()?!0:null!=this.tokens[this.i+1].match(/^[A-Za-z]$/)};this.isRelativeCommand=function(){switch(this.command){case "m":case "l":case "h":case "v":case "c":case "s":case "q":case "t":case "a":case "z":return!0}return!1};this.getToken=function(){this.i++;return this.tokens[this.i]};this.getScalar=function(){return parseFloat(this.getToken())};
this.nextCommand=function(){this.previousCommand=this.command;this.command=this.getToken()};this.getPoint=function(){var b=new a.Point(this.getScalar(),this.getScalar());return this.makeAbsolute(b)};this.getAsControlPoint=function(){var a=this.getPoint();return this.control=a};this.getAsCurrentPoint=function(){var a=this.getPoint();return this.current=a};this.getReflectedControlPoint=function(){return"c"!=this.previousCommand.toLowerCase()&&"s"!=this.previousCommand.toLowerCase()&&"q"!=this.previousCommand.toLowerCase()&&
"t"!=this.previousCommand.toLowerCase()?this.current:new a.Point(2*this.current.x-this.control.x,2*this.current.y-this.control.y)};this.makeAbsolute=function(a){this.isRelativeCommand()&&(a.x+=this.current.x,a.y+=this.current.y);return a};this.addMarker=function(a,b,e){null!=e&&0<this.angles.length&&null==this.angles[this.angles.length-1]&&(this.angles[this.angles.length-1]=this.points[this.points.length-1].angleTo(e));this.addMarkerAngle(a,null==b?null:b.angleTo(a))};this.addMarkerAngle=function(a,
b){this.points.push(a);this.angles.push(b)};this.getMarkerPoints=function(){return this.points};this.getMarkerAngles=function(){for(var a=0;a<this.angles.length;a++)if(null==this.angles[a])for(var b=a+1;b<this.angles.length;b++)if(null!=this.angles[b]){this.angles[a]=this.angles[b];break}return this.angles}}(c);this.path=function(b){var d=this.PathParser;d.reset();var c=new a.BoundingBox;for(null!=b&&b.beginPath();!d.isEnd();)switch(d.nextCommand(),d.command){case "M":case "m":var f=d.getAsCurrentPoint();
d.addMarker(f);c.addPoint(f.x,f.y);null!=b&&b.moveTo(f.x,f.y);for(d.start=d.current;!d.isCommandOrEnd();)f=d.getAsCurrentPoint(),d.addMarker(f,d.start),c.addPoint(f.x,f.y),null!=b&&b.lineTo(f.x,f.y);break;case "L":case "l":for(;!d.isCommandOrEnd();){var g=d.current,f=d.getAsCurrentPoint();d.addMarker(f,g);c.addPoint(f.x,f.y);null!=b&&b.lineTo(f.x,f.y)}break;case "H":case "h":for(;!d.isCommandOrEnd();)f=new a.Point((d.isRelativeCommand()?d.current.x:0)+d.getScalar(),d.current.y),d.addMarker(f,d.current),
d.current=f,c.addPoint(d.current.x,d.current.y),null!=b&&b.lineTo(d.current.x,d.current.y);break;case "V":case "v":for(;!d.isCommandOrEnd();)f=new a.Point(d.current.x,(d.isRelativeCommand()?d.current.y:0)+d.getScalar()),d.addMarker(f,d.current),d.current=f,c.addPoint(d.current.x,d.current.y),null!=b&&b.lineTo(d.current.x,d.current.y);break;case "C":case "c":for(;!d.isCommandOrEnd();){var n=d.current,g=d.getPoint(),m=d.getAsControlPoint(),f=d.getAsCurrentPoint();d.addMarker(f,m,g);c.addBezierCurve(n.x,
n.y,g.x,g.y,m.x,m.y,f.x,f.y);null!=b&&b.bezierCurveTo(g.x,g.y,m.x,m.y,f.x,f.y)}break;case "S":case "s":for(;!d.isCommandOrEnd();)n=d.current,g=d.getReflectedControlPoint(),m=d.getAsControlPoint(),f=d.getAsCurrentPoint(),d.addMarker(f,m,g),c.addBezierCurve(n.x,n.y,g.x,g.y,m.x,m.y,f.x,f.y),null!=b&&b.bezierCurveTo(g.x,g.y,m.x,m.y,f.x,f.y);break;case "Q":case "q":for(;!d.isCommandOrEnd();)n=d.current,m=d.getAsControlPoint(),f=d.getAsCurrentPoint(),d.addMarker(f,m,m),c.addQuadraticCurve(n.x,n.y,m.x,m.y,
f.x,f.y),null!=b&&b.quadraticCurveTo(m.x,m.y,f.x,f.y);break;case "T":case "t":for(;!d.isCommandOrEnd();)n=d.current,m=d.getReflectedControlPoint(),d.control=m,f=d.getAsCurrentPoint(),d.addMarker(f,m,m),c.addQuadraticCurve(n.x,n.y,m.x,m.y,f.x,f.y),null!=b&&b.quadraticCurveTo(m.x,m.y,f.x,f.y);break;case "A":case "a":for(;!d.isCommandOrEnd();){var n=d.current,v=d.getScalar(),h=d.getScalar(),g=d.getScalar()*(Math.PI/180),l=d.getScalar(),m=d.getScalar(),f=d.getAsCurrentPoint(),q=new a.Point(Math.cos(g)*
(n.x-f.x)/2+Math.sin(g)*(n.y-f.y)/2,-Math.sin(g)*(n.x-f.x)/2+Math.cos(g)*(n.y-f.y)/2),p=Math.pow(q.x,2)/Math.pow(v,2)+Math.pow(q.y,2)/Math.pow(h,2);1<p&&(v*=Math.sqrt(p),h*=Math.sqrt(p));l=(l==m?-1:1)*Math.sqrt((Math.pow(v,2)*Math.pow(h,2)-Math.pow(v,2)*Math.pow(q.y,2)-Math.pow(h,2)*Math.pow(q.x,2))/(Math.pow(v,2)*Math.pow(q.y,2)+Math.pow(h,2)*Math.pow(q.x,2)));isNaN(l)&&(l=0);var r=new a.Point(l*v*q.y/h,l*-h*q.x/v),n=new a.Point((n.x+f.x)/2+Math.cos(g)*r.x-Math.sin(g)*r.y,(n.y+f.y)/2+Math.sin(g)*
r.x+Math.cos(g)*r.y),u=function(a,b){return(a[0]*b[0]+a[1]*b[1])/(Math.sqrt(Math.pow(a[0],2)+Math.pow(a[1],2))*Math.sqrt(Math.pow(b[0],2)+Math.pow(b[1],2)))},w=function(a,b){return(a[0]*b[1]<a[1]*b[0]?-1:1)*Math.acos(u(a,b))},l=w([1,0],[(q.x-r.x)/v,(q.y-r.y)/h]),p=[(q.x-r.x)/v,(q.y-r.y)/h],r=[(-q.x-r.x)/v,(-q.y-r.y)/h],q=w(p,r);-1>=u(p,r)&&(q=Math.PI);1<=u(p,r)&&(q=0);p=1-m?1:-1;r=l+q/2*p;w=new a.Point(n.x+v*Math.cos(r),n.y+h*Math.sin(r));d.addMarkerAngle(w,r-p*Math.PI/2);d.addMarkerAngle(f,r-p*Math.PI);
c.addPoint(f.x,f.y);null!=b&&(u=v>h?v:h,f=v>h?1:v/h,v=v>h?h/v:1,b.translate(n.x,n.y),b.rotate(g),b.scale(f,v),b.arc(0,0,u,l,l+q,1-m),b.scale(1/f,1/v),b.rotate(-g),b.translate(-n.x,-n.y))}break;case "Z":case "z":null!=b&&b.closePath(),d.current=d.start}return c};this.getMarkers=function(){for(var a=this.PathParser.getMarkerPoints(),b=this.PathParser.getMarkerAngles(),c=[],f=0;f<a.length;f++)c.push([a[f],b[f]]);return c}};a.Element.path.prototype=new a.Element.PathElementBase;a.Element.pattern=function(c){this.base=
a.Element.ElementBase;this.base(c);this.createPattern=function(b,e){var d=this.attribute("width").toPixels("x",!0),c=this.attribute("height").toPixels("y",!0),f=new a.Element.svg;f.attributes.viewBox=new a.Property("viewBox",this.attribute("viewBox").value);f.attributes.width=new a.Property("width",d+"px");f.attributes.height=new a.Property("height",c+"px");f.attributes.transform=new a.Property("transform",this.attribute("patternTransform").value);f.children=this.children;var g=document.createElement("canvas");
g.width=d;g.height=c;d=g.getContext("2d");this.attribute("x").hasValue()&&this.attribute("y").hasValue()&&d.translate(this.attribute("x").toPixels("x",!0),this.attribute("y").toPixels("y",!0));for(c=-1;1>=c;c++)for(var n=-1;1>=n;n++)d.save(),f.attributes.x=new a.Property("x",c*g.width),f.attributes.y=new a.Property("y",n*g.height),f.render(d),d.restore();return b.createPattern(g,"repeat")}};a.Element.pattern.prototype=new a.Element.ElementBase;a.Element.marker=function(c){this.base=a.Element.ElementBase;
this.base(c);this.baseRender=this.render;this.render=function(b,e,d){b.translate(e.x,e.y);"auto"==this.attribute("orient").valueOrDefault("auto")&&b.rotate(d);"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&b.scale(b.lineWidth,b.lineWidth);b.save();var c=new a.Element.svg;c.attributes.viewBox=new a.Property("viewBox",this.attribute("viewBox").value);c.attributes.refX=new a.Property("refX",this.attribute("refX").value);c.attributes.refY=new a.Property("refY",this.attribute("refY").value);
c.attributes.width=new a.Property("width",this.attribute("markerWidth").value);c.attributes.height=new a.Property("height",this.attribute("markerHeight").value);c.attributes.fill=new a.Property("fill",this.attribute("fill").valueOrDefault("black"));c.attributes.stroke=new a.Property("stroke",this.attribute("stroke").valueOrDefault("none"));c.children=this.children;var f=0,g=0;this.attribute("refX").hasValue()&&(f=-parseFloat(this.attribute("refX").value));this.attribute("refY").hasValue()&&(g=-parseFloat(this.attribute("refY").value));
b.translate(f,g);c.render(b);b.restore();"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&b.scale(1/b.lineWidth,1/b.lineWidth);"auto"==this.attribute("orient").valueOrDefault("auto")&&b.rotate(-d);b.translate(-e.x,-e.y)}};a.Element.marker.prototype=new a.Element.ElementBase;a.Element.defs=function(c){this.base=a.Element.ElementBase;this.base(c);this.render=function(a){}};a.Element.defs.prototype=new a.Element.ElementBase;a.Element.GradientBase=function(c){this.base=a.Element.ElementBase;
this.base(c);this.stops=[];for(c=0;c<this.children.length;c++){var b=this.children[c];"stop"==b.type&&this.stops.push(b)}this.getGradient=function(){};this.gradientUnits=function(){return this.attribute("gradientUnits").valueOrDefault("objectBoundingBox")};this.attributesToInherit=["gradientUnits"];this.inheritStopContainer=function(a){for(var b=0;b<this.attributesToInherit.length;b++){var c=this.attributesToInherit[b];!this.attribute(c).hasValue()&&a.attribute(c).hasValue()&&(this.attribute(c,!0).value=
a.attribute(c).value)}};this.createGradient=function(b,d,c){var f=this;this.getHrefAttribute().hasValue()&&(f=this.getHrefAttribute().getDefinition(),this.inheritStopContainer(f));var g=function(b){return c.hasValue()?(new a.Property("color",b)).addOpacity(c).value:b};b=this.getGradient(b,d);if(null==b)return g(f.stops[f.stops.length-1].color);for(d=0;d<f.stops.length;d++)b.addColorStop(f.stops[d].offset,g(f.stops[d].color));return this.attribute("gradientTransform").hasValue()?(f=a.ViewPort.viewPorts[0],
g=new a.Element.rect,g.attributes.x=new a.Property("x",-a.MAX_VIRTUAL_PIXELS/3),g.attributes.y=new a.Property("y",-a.MAX_VIRTUAL_PIXELS/3),g.attributes.width=new a.Property("width",a.MAX_VIRTUAL_PIXELS),g.attributes.height=new a.Property("height",a.MAX_VIRTUAL_PIXELS),d=new a.Element.g,d.attributes.transform=new a.Property("transform",this.attribute("gradientTransform").value),d.children=[g],g=new a.Element.svg,g.attributes.x=new a.Property("x",0),g.attributes.y=new a.Property("y",0),g.attributes.width=
new a.Property("width",f.width),g.attributes.height=new a.Property("height",f.height),g.children=[d],d=document.createElement("canvas"),d.width=f.width,d.height=f.height,f=d.getContext("2d"),f.fillStyle=b,g.render(f),f.createPattern(d,"no-repeat")):b}};a.Element.GradientBase.prototype=new a.Element.ElementBase;a.Element.linearGradient=function(c){this.base=a.Element.GradientBase;this.base(c);this.attributesToInherit.push("x1");this.attributesToInherit.push("y1");this.attributesToInherit.push("x2");
this.attributesToInherit.push("y2");this.getGradient=function(a,e){var c="objectBoundingBox"==this.gradientUnits()?e.getBoundingBox():null;this.attribute("x1").hasValue()||this.attribute("y1").hasValue()||this.attribute("x2").hasValue()||this.attribute("y2").hasValue()||(this.attribute("x1",!0).value=0,this.attribute("y1",!0).value=0,this.attribute("x2",!0).value=1,this.attribute("y2",!0).value=0);var k="objectBoundingBox"==this.gradientUnits()?c.x()+c.width()*this.attribute("x1").numValue():this.attribute("x1").toPixels("x"),
f="objectBoundingBox"==this.gradientUnits()?c.y()+c.height()*this.attribute("y1").numValue():this.attribute("y1").toPixels("y"),g="objectBoundingBox"==this.gradientUnits()?c.x()+c.width()*this.attribute("x2").numValue():this.attribute("x2").toPixels("x"),c="objectBoundingBox"==this.gradientUnits()?c.y()+c.height()*this.attribute("y2").numValue():this.attribute("y2").toPixels("y");return k==g&&f==c?null:a.createLinearGradient(k,f,g,c)}};a.Element.linearGradient.prototype=new a.Element.GradientBase;
a.Element.radialGradient=function(c){this.base=a.Element.GradientBase;this.base(c);this.attributesToInherit.push("cx");this.attributesToInherit.push("cy");this.attributesToInherit.push("r");this.attributesToInherit.push("fx");this.attributesToInherit.push("fy");this.getGradient=function(a,c){var d=c.getBoundingBox();this.attribute("cx").hasValue()||(this.attribute("cx",!0).value="50%");this.attribute("cy").hasValue()||(this.attribute("cy",!0).value="50%");this.attribute("r").hasValue()||(this.attribute("r",
!0).value="50%");var k="objectBoundingBox"==this.gradientUnits()?d.x()+d.width()*this.attribute("cx").numValue():this.attribute("cx").toPixels("x"),f="objectBoundingBox"==this.gradientUnits()?d.y()+d.height()*this.attribute("cy").numValue():this.attribute("cy").toPixels("y"),g=k,n=f;this.attribute("fx").hasValue()&&(g="objectBoundingBox"==this.gradientUnits()?d.x()+d.width()*this.attribute("fx").numValue():this.attribute("fx").toPixels("x"));this.attribute("fy").hasValue()&&(n="objectBoundingBox"==
this.gradientUnits()?d.y()+d.height()*this.attribute("fy").numValue():this.attribute("fy").toPixels("y"));d="objectBoundingBox"==this.gradientUnits()?(d.width()+d.height())/2*this.attribute("r").numValue():this.attribute("r").toPixels();return a.createRadialGradient(g,n,0,k,f,d)}};a.Element.radialGradient.prototype=new a.Element.GradientBase;a.Element.stop=function(c){this.base=a.Element.ElementBase;this.base(c);this.offset=this.attribute("offset").numValue();0>this.offset&&(this.offset=0);1<this.offset&&
(this.offset=1);c=this.style("stop-color",!0);""===c.value&&(c.value="#000");this.style("stop-opacity").hasValue()&&(c=c.addOpacity(this.style("stop-opacity")));this.color=c.value};a.Element.stop.prototype=new a.Element.ElementBase;a.Element.AnimateBase=function(c){this.base=a.Element.ElementBase;this.base(c);a.Animations.push(this);this.duration=0;this.begin=this.attribute("begin").toMilliseconds();this.maxDuration=this.begin+this.attribute("dur").toMilliseconds();this.getProperty=function(){var a=
this.attribute("attributeType").value,c=this.attribute("attributeName").value;return"CSS"==a?this.parent.style(c,!0):this.parent.attribute(c,!0)};this.initialValue=null;this.initialUnits="";this.removed=!1;this.calcValue=function(){return""};this.update=function(a){null==this.initialValue&&(this.initialValue=this.getProperty().value,this.initialUnits=this.getProperty().getUnits());if(this.duration>this.maxDuration){if("indefinite"==this.attribute("repeatCount").value||"indefinite"==this.attribute("repeatDur").value)this.duration=
0;else if("freeze"==this.attribute("fill").valueOrDefault("remove")&&!this.frozen)this.frozen=!0,this.parent.animationFrozen=!0,this.parent.animationFrozenValue=this.getProperty().value;else if("remove"==this.attribute("fill").valueOrDefault("remove")&&!this.removed)return this.removed=!0,this.getProperty().value=this.parent.animationFrozen?this.parent.animationFrozenValue:this.initialValue,!0;return!1}this.duration+=a;a=!1;this.begin<this.duration&&(a=this.calcValue(),this.attribute("type").hasValue()&&
(a=this.attribute("type").value+"("+a+")"),this.getProperty().value=a,a=!0);return a};this.from=this.attribute("from");this.to=this.attribute("to");this.values=this.attribute("values");this.values.hasValue()&&(this.values.value=this.values.value.split(";"));this.progress=function(){var b={progress:(this.duration-this.begin)/(this.maxDuration-this.begin)};if(this.values.hasValue()){var c=b.progress*(this.values.value.length-1),d=Math.floor(c),k=Math.ceil(c);b.from=new a.Property("from",parseFloat(this.values.value[d]));
b.to=new a.Property("to",parseFloat(this.values.value[k]));b.progress=(c-d)/(k-d)}else b.from=this.from,b.to=this.to;return b}};a.Element.AnimateBase.prototype=new a.Element.ElementBase;a.Element.animate=function(c){this.base=a.Element.AnimateBase;this.base(c);this.calcValue=function(){var a=this.progress();return a.from.numValue()+(a.to.numValue()-a.from.numValue())*a.progress+this.initialUnits}};a.Element.animate.prototype=new a.Element.AnimateBase;a.Element.animateColor=function(c){this.base=a.Element.AnimateBase;
this.base(c);this.calcValue=function(){var a=this.progress(),c=new A(a.from.value),d=new A(a.to.value);if(c.ok&&d.ok){var k=c.g+(d.g-c.g)*a.progress,f=c.b+(d.b-c.b)*a.progress;return"rgb("+parseInt(c.r+(d.r-c.r)*a.progress,10)+","+parseInt(k,10)+","+parseInt(f,10)+")"}return this.attribute("from").value}};a.Element.animateColor.prototype=new a.Element.AnimateBase;a.Element.animateTransform=function(c){this.base=a.Element.AnimateBase;this.base(c);this.calcValue=function(){for(var b=this.progress(),
c=a.ToNumberArray(b.from.value),d=a.ToNumberArray(b.to.value),k="",f=0;f<c.length;f++)k+=c[f]+(d[f]-c[f])*b.progress+" ";return k}};a.Element.animateTransform.prototype=new a.Element.animate;a.Element.font=function(c){this.base=a.Element.ElementBase;this.base(c);this.horizAdvX=this.attribute("horiz-adv-x").numValue();this.isArabic=this.isRTL=!1;this.missingGlyph=this.fontFace=null;this.glyphs=[];for(c=0;c<this.children.length;c++){var b=this.children[c];"font-face"==b.type?(this.fontFace=b,b.style("font-family").hasValue()&&
(a.Definitions[b.style("font-family").value]=this)):"missing-glyph"==b.type?this.missingGlyph=b:"glyph"==b.type&&(""!=b.arabicForm?(this.isArabic=this.isRTL=!0,"undefined"==typeof this.glyphs[b.unicode]&&(this.glyphs[b.unicode]=[]),this.glyphs[b.unicode][b.arabicForm]=b):this.glyphs[b.unicode]=b)}};a.Element.font.prototype=new a.Element.ElementBase;a.Element.fontface=function(c){this.base=a.Element.ElementBase;this.base(c);this.ascent=this.attribute("ascent").value;this.descent=this.attribute("descent").value;
this.unitsPerEm=this.attribute("units-per-em").numValue()};a.Element.fontface.prototype=new a.Element.ElementBase;a.Element.missingglyph=function(c){this.base=a.Element.path;this.base(c);this.horizAdvX=0};a.Element.missingglyph.prototype=new a.Element.path;a.Element.glyph=function(c){this.base=a.Element.path;this.base(c);this.horizAdvX=this.attribute("horiz-adv-x").numValue();this.unicode=this.attribute("unicode").value;this.arabicForm=this.attribute("arabic-form").value};a.Element.glyph.prototype=
new a.Element.path;a.Element.text=function(c){this.captureTextNodes=!0;this.base=a.Element.RenderedElementBase;this.base(c);this.baseSetContext=this.setContext;this.setContext=function(a){this.baseSetContext(a);var c=this.style("dominant-baseline").toTextBaseline();null==c&&(c=this.style("alignment-baseline").toTextBaseline());null!=c&&(a.textBaseline=c)};this.getBoundingBox=function(){var b=this.attribute("x").toPixels("x"),c=this.attribute("y").toPixels("y"),d=this.parent.style("font-size").numValueOrDefault(a.Font.Parse(a.ctx.font).fontSize);
return new a.BoundingBox(b,c-d,b+Math.floor(2*d/3)*this.children[0].getText().length,c)};this.renderChildren=function(a){this.x=this.attribute("x").toPixels("x");this.y=this.attribute("y").toPixels("y");this.attribute("dx").hasValue()&&(this.x+=this.attribute("dx").toPixels("x"));this.attribute("dy").hasValue()&&(this.y+=this.attribute("dy").toPixels("y"));this.x+=this.getAnchorDelta(a,this,0);for(var c=0;c<this.children.length;c++)this.renderChild(a,this,this,c)};this.getAnchorDelta=function(a,c,
d){var k=this.style("text-anchor").valueOrDefault("start");if("start"!=k){for(var f=0,g=d;g<c.children.length;g++){var n=c.children[g];if(g>d&&n.attribute("x").hasValue())break;f+=n.measureTextRecursive(a)}return-1*("end"==k?f:f/2)}return 0};this.renderChild=function(a,c,d,k){var f=d.children[k];f.attribute("x").hasValue()?(f.x=f.attribute("x").toPixels("x")+c.getAnchorDelta(a,d,k),f.attribute("dx").hasValue()&&(f.x+=f.attribute("dx").toPixels("x"))):(f.attribute("dx").hasValue()&&(c.x+=f.attribute("dx").toPixels("x")),
f.x=c.x);c.x=f.x+f.measureText(a);f.attribute("y").hasValue()?(f.y=f.attribute("y").toPixels("y"),f.attribute("dy").hasValue()&&(f.y+=f.attribute("dy").toPixels("y"))):(f.attribute("dy").hasValue()&&(c.y+=f.attribute("dy").toPixels("y")),f.y=c.y);c.y=f.y;f.render(a);for(k=0;k<f.children.length;k++)c.renderChild(a,c,f,k)}};a.Element.text.prototype=new a.Element.RenderedElementBase;a.Element.TextElementBase=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.getGlyph=function(a,c,
d){var k=c[d],f=null;if(a.isArabic){var g="isolated";(0==d||" "==c[d-1])&&d<c.length-2&&" "!=c[d+1]&&(g="terminal");0<d&&" "!=c[d-1]&&d<c.length-2&&" "!=c[d+1]&&(g="medial");0<d&&" "!=c[d-1]&&(d==c.length-1||" "==c[d+1])&&(g="initial");"undefined"!=typeof a.glyphs[k]&&(f=a.glyphs[k][g],null==f&&"glyph"==a.glyphs[k].type&&(f=a.glyphs[k]))}else f=a.glyphs[k];null==f&&(f=a.missingGlyph);return f};this.renderChildren=function(b){var c=this.parent.style("font-family").getDefinition();if(null!=c){var d=
this.parent.style("font-size").numValueOrDefault(a.Font.Parse(a.ctx.font).fontSize),k=this.parent.style("font-style").valueOrDefault(a.Font.Parse(a.ctx.font).fontStyle),f=this.getText();c.isRTL&&(f=f.split("").reverse().join(""));for(var g=a.ToNumberArray(this.parent.attribute("dx").value),n=0;n<f.length;n++){var m=this.getGlyph(c,f,n),h=d/c.fontFace.unitsPerEm;b.translate(this.x,this.y);b.scale(h,-h);var l=b.lineWidth;b.lineWidth=b.lineWidth*c.fontFace.unitsPerEm/d;"italic"==k&&b.transform(1,0,.4,
1,0,0);m.render(b);"italic"==k&&b.transform(1,0,-.4,1,0,0);b.lineWidth=l;b.scale(1/h,-1/h);b.translate(-this.x,-this.y);this.x+=d*(m.horizAdvX||c.horizAdvX)/c.fontFace.unitsPerEm;"undefined"==typeof g[n]||isNaN(g[n])||(this.x+=g[n])}}else""!=b.fillStyle&&b.fillText(a.compressSpaces(this.getText()),this.x,this.y),""!=b.strokeStyle&&b.strokeText(a.compressSpaces(this.getText()),this.x,this.y)};this.getText=function(){};this.measureTextRecursive=function(a){for(var c=this.measureText(a),d=0;d<this.children.length;d++)c+=
this.children[d].measureTextRecursive(a);return c};this.measureText=function(b){var c=this.parent.style("font-family").getDefinition();if(null!=c){b=this.parent.style("font-size").numValueOrDefault(a.Font.Parse(a.ctx.font).fontSize);var d=0,k=this.getText();c.isRTL&&(k=k.split("").reverse().join(""));for(var f=a.ToNumberArray(this.parent.attribute("dx").value),g=0;g<k.length;g++){var n=this.getGlyph(c,k,g),d=d+(n.horizAdvX||c.horizAdvX)*b/c.fontFace.unitsPerEm;"undefined"==typeof f[g]||isNaN(f[g])||
(d+=f[g])}return d}c=a.compressSpaces(this.getText());if(!b.measureText)return 10*c.length;b.save();this.setContext(b);c=b.measureText(c).width;b.restore();return c}};a.Element.TextElementBase.prototype=new a.Element.RenderedElementBase;a.Element.tspan=function(c){this.captureTextNodes=!0;this.base=a.Element.TextElementBase;this.base(c);this.text=a.compressSpaces(c.value||c.text||c.textContent||"");this.getText=function(){return 0<this.children.length?"":this.text}};a.Element.tspan.prototype=new a.Element.TextElementBase;
a.Element.tref=function(c){this.base=a.Element.TextElementBase;this.base(c);this.getText=function(){var a=this.getHrefAttribute().getDefinition();if(null!=a)return a.children[0].getText()}};a.Element.tref.prototype=new a.Element.TextElementBase;a.Element.a=function(c){this.base=a.Element.TextElementBase;this.base(c);this.hasText=0<c.childNodes.length;for(var b=0;b<c.childNodes.length;b++)3!=c.childNodes[b].nodeType&&(this.hasText=!1);this.text=this.hasText?c.childNodes[0].value:"";this.getText=function(){return this.text};
this.baseRenderChildren=this.renderChildren;this.renderChildren=function(b){if(this.hasText){this.baseRenderChildren(b);var c=new a.Property("fontSize",a.Font.Parse(a.ctx.font).fontSize);a.Mouse.checkBoundingBox(this,new a.BoundingBox(this.x,this.y-c.toPixels("y"),this.x+this.measureText(b),this.y))}else 0<this.children.length&&(c=new a.Element.g,c.children=this.children,c.parent=this,c.render(b))};this.onclick=function(){window.open(this.getHrefAttribute().value)};this.onmousemove=function(){a.ctx.canvas.style.cursor=
"pointer"}};a.Element.a.prototype=new a.Element.TextElementBase;a.Element.image=function(c){this.base=a.Element.RenderedElementBase;this.base(c);var b=this.getHrefAttribute().value;if(""!=b){var e=b.match(/\.svg$/);a.Images.push(this);this.loaded=!1;if(e)this.img=a.ajax(b),this.loaded=!0;else{this.img=document.createElement("img");1==a.opts.useCORS&&(this.img.crossOrigin="Anonymous");var d=this;this.img.onload=function(){d.loaded=!0};this.img.onerror=function(){a.log('ERROR: image "'+b+'" not found');
d.loaded=!0};this.img.src=b}this.renderChildren=function(b){var c=this.attribute("x").toPixels("x"),d=this.attribute("y").toPixels("y"),n=this.attribute("width").toPixels("x"),m=this.attribute("height").toPixels("y");0!=n&&0!=m&&(b.save(),e?b.drawSvg(this.img,c,d,n,m):(b.translate(c,d),a.AspectRatio(b,this.attribute("preserveAspectRatio").value,n,this.img.width,m,this.img.height,0,0),b.drawImage(this.img,0,0)),b.restore())};this.getBoundingBox=function(){var b=this.attribute("x").toPixels("x"),c=
this.attribute("y").toPixels("y"),d=this.attribute("width").toPixels("x"),e=this.attribute("height").toPixels("y");return new a.BoundingBox(b,c,b+d,c+e)}}};a.Element.image.prototype=new a.Element.RenderedElementBase;a.Element.g=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.getBoundingBox=function(){for(var b=new a.BoundingBox,c=0;c<this.children.length;c++)b.addBoundingBox(this.children[c].getBoundingBox());return b}};a.Element.g.prototype=new a.Element.RenderedElementBase;
a.Element.symbol=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.render=function(a){}};a.Element.symbol.prototype=new a.Element.RenderedElementBase;a.Element.style=function(c){this.base=a.Element.ElementBase;this.base(c);for(var b="",e=0;e<c.childNodes.length;e++)b+=c.childNodes[e].data;b=b.replace(/(\/\*([^*]|[\r\n]|(\*+([^*\/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm,"");b=a.compressSpaces(b);c=b.split("}");for(e=0;e<c.length;e++)if(""!=a.trim(c[e]))for(var d=c[e].split("{"),b=d[0].split(","),
d=d[1].split(";"),k=0;k<b.length;k++){var f=a.trim(b[k]);if(""!=f){for(var g=a.Styles[f]||{},n=0;n<d.length;n++){var m=d[n].indexOf(":"),h=d[n].substr(0,m),m=d[n].substr(m+1,d[n].length-m);null!=h&&null!=m&&(g[a.trim(h)]=new a.Property(a.trim(h),a.trim(m)))}a.Styles[f]=g;a.StylesSpecificity[f]=K(f);if("@font-face"==f)for(f=g["font-family"].value.replace(/"/g,""),g=g.src.value.split(","),n=0;n<g.length;n++)if(0<g[n].indexOf('format("svg")'))for(h=g[n].indexOf("url"),m=g[n].indexOf(")",h),h=g[n].substr(h+
5,m-h-6),h=a.parseXml(a.ajax(h)).getElementsByTagName("font"),m=0;m<h.length;m++){var l=a.CreateElement(h[m]);a.Definitions[f]=l}}}};a.Element.style.prototype=new a.Element.ElementBase;a.Element.use=function(c){this.base=a.Element.RenderedElementBase;this.base(c);this.baseSetContext=this.setContext;this.setContext=function(a){this.baseSetContext(a);this.attribute("x").hasValue()&&a.translate(this.attribute("x").toPixels("x"),0);this.attribute("y").hasValue()&&a.translate(0,this.attribute("y").toPixels("y"))};
var b=this.getHrefAttribute().getDefinition();this.path=function(a){null!=b&&b.path(a)};this.getBoundingBox=function(){if(null!=b)return b.getBoundingBox()};this.renderChildren=function(c){if(null!=b){var d=b;"symbol"==b.type&&(d=new a.Element.svg,d.type="svg",d.attributes.viewBox=new a.Property("viewBox",b.attribute("viewBox").value),d.attributes.preserveAspectRatio=new a.Property("preserveAspectRatio",b.attribute("preserveAspectRatio").value),d.attributes.overflow=new a.Property("overflow",b.attribute("overflow").value),
d.children=b.children);"svg"==d.type&&(this.attribute("width").hasValue()&&(d.attributes.width=new a.Property("width",this.attribute("width").value)),this.attribute("height").hasValue()&&(d.attributes.height=new a.Property("height",this.attribute("height").value)));var k=d.parent;d.parent=null;d.render(c);d.parent=k}}};a.Element.use.prototype=new a.Element.RenderedElementBase;a.Element.mask=function(c){this.base=a.Element.ElementBase;this.base(c);this.apply=function(b,c){var d=this.attribute("x").toPixels("x"),
k=this.attribute("y").toPixels("y"),f=this.attribute("width").toPixels("x"),g=this.attribute("height").toPixels("y");if(0==f&&0==g){g=new a.BoundingBox;for(d=0;d<this.children.length;d++)g.addBoundingBox(this.children[d].getBoundingBox());d=Math.floor(g.x1);k=Math.floor(g.y1);f=Math.floor(g.width());g=Math.floor(g.height())}var n=c.attribute("mask").value;c.attribute("mask").value="";var m=document.createElement("canvas");m.width=d+f;m.height=k+g;var h=m.getContext("2d");this.renderChildren(h);var l=
document.createElement("canvas");l.width=d+f;l.height=k+g;var p=l.getContext("2d");c.render(p);p.globalCompositeOperation="destination-in";p.fillStyle=h.createPattern(m,"no-repeat");p.fillRect(0,0,d+f,k+g);b.fillStyle=p.createPattern(l,"no-repeat");b.fillRect(0,0,d+f,k+g);c.attribute("mask").value=n};this.render=function(a){}};a.Element.mask.prototype=new a.Element.ElementBase;a.Element.clipPath=function(c){this.base=a.Element.ElementBase;this.base(c);this.apply=function(b){var c=CanvasRenderingContext2D.prototype.beginPath;
CanvasRenderingContext2D.prototype.beginPath=function(){};var d=CanvasRenderingContext2D.prototype.closePath;CanvasRenderingContext2D.prototype.closePath=function(){};c.call(b);for(var k=0;k<this.children.length;k++){var f=this.children[k];if("undefined"!=typeof f.path){var g=null;f.style("transform",!1,!0).hasValue()&&(g=new a.Transform(f.style("transform",!1,!0).value),g.apply(b));f.path(b);CanvasRenderingContext2D.prototype.closePath=d;g&&g.unapply(b)}}d.call(b);b.clip();CanvasRenderingContext2D.prototype.beginPath=
c;CanvasRenderingContext2D.prototype.closePath=d};this.render=function(a){}};a.Element.clipPath.prototype=new a.Element.ElementBase;a.Element.filter=function(c){this.base=a.Element.ElementBase;this.base(c);this.apply=function(a,c){var d=c.getBoundingBox(),k=Math.floor(d.x1),f=Math.floor(d.y1),g=Math.floor(d.width()),d=Math.floor(d.height()),n=c.style("filter").value;c.style("filter").value="";for(var m=0,h=0,l=0;l<this.children.length;l++)var p=this.children[l].extraFilterDistance||0,m=Math.max(m,
p),h=Math.max(h,p);p=document.createElement("canvas");p.width=g+2*m;p.height=d+2*h;var q=p.getContext("2d");q.translate(-k+m,-f+h);c.render(q);for(l=0;l<this.children.length;l++)"function"==typeof this.children[l].apply&&this.children[l].apply(q,0,0,g+2*m,d+2*h);a.drawImage(p,0,0,g+2*m,d+2*h,k-m,f-h,g+2*m,d+2*h);c.style("filter",!0).value=n};this.render=function(a){}};a.Element.filter.prototype=new a.Element.ElementBase;a.Element.feMorphology=function(c){this.base=a.Element.ElementBase;this.base(c);
this.apply=function(a,c,d,k,f){}};a.Element.feMorphology.prototype=new a.Element.ElementBase;a.Element.feComposite=function(c){this.base=a.Element.ElementBase;this.base(c);this.apply=function(a,c,d,k,f){}};a.Element.feComposite.prototype=new a.Element.ElementBase;a.Element.feColorMatrix=function(c){function b(a,b){var c=e[a];return c*(0>c?b-255:b)}this.base=a.Element.ElementBase;this.base(c);var e=a.ToNumberArray(this.attribute("values").value);switch(this.attribute("type").valueOrDefault("matrix")){case "saturate":c=
e[0];e=[.213+.787*c,.715-.715*c,.072-.072*c,0,0,.213-.213*c,.715+.285*c,.072-.072*c,0,0,.213-.213*c,.715-.715*c,.072+.928*c,0,0,0,0,0,1,0,0,0,0,0,1];break;case "hueRotate":var d=e[0]*Math.PI/180;c=function(a,b,c){return a+Math.cos(d)*b+Math.sin(d)*c};e=[c(.213,.787,-.213),c(.715,-.715,-.715),c(.072,-.072,.928),0,0,c(.213,-.213,.143),c(.715,.285,.14),c(.072,-.072,-.283),0,0,c(.213,-.213,-.787),c(.715,-.715,.715),c(.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case "luminanceToAlpha":e=[0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1]}this.apply=function(a,c,d,e,h){var l=a.getImageData(0,0,e,h);for(d=0;d<h;d++)for(c=0;c<e;c++){var p=l.data[d*e*4+4*c+0],u=l.data[d*e*4+4*c+1],q=l.data[d*e*4+4*c+2],w=l.data[d*e*4+4*c+3],r=b(0,p)+b(1,u)+b(2,q)+b(3,w)+b(4,1);l.data[d*e*4+4*c+0]=r;r=b(5,p)+b(6,u)+b(7,q)+b(8,w)+b(9,1);l.data[d*e*4+4*c+1]=r;r=b(10,p)+b(11,u)+b(12,q)+b(13,w)+b(14,1);l.data[d*e*4+4*c+2]=r;p=b(15,p)+b(16,u)+b(17,q)+b(18,w)+b(19,1);l.data[d*e*4+4*c+3]=p}a.clearRect(0,0,
e,h);a.putImageData(l,0,0)}};a.Element.feColorMatrix.prototype=new a.Element.ElementBase;a.Element.feGaussianBlur=function(c){this.base=a.Element.ElementBase;this.base(c);this.extraFilterDistance=this.blurRadius=Math.floor(this.attribute("stdDeviation").numValue());this.apply=function(b,c,d,k,f){"undefined"==typeof E.canvasRGBA?a.log("ERROR: StackBlur.js must be included for blur to work"):(b.canvas.id=a.UniqueId(),b.canvas.style.display="none",document.body.appendChild(b.canvas),E.canvasRGBA(b.canvas.id,
c,d,k,f,this.blurRadius),document.body.removeChild(b.canvas))}};a.Element.feGaussianBlur.prototype=new a.Element.ElementBase;a.Element.title=function(a){};a.Element.title.prototype=new a.Element.ElementBase;a.Element.desc=function(a){};a.Element.desc.prototype=new a.Element.ElementBase;a.Element.MISSING=function(c){a.log("ERROR: Element '"+c.nodeName+"' not yet implemented.")};a.Element.MISSING.prototype=new a.Element.ElementBase;a.CreateElement=function(c){var b=c.nodeName.replace(/^[^:]+:/,""),
b=b.replace(/\-/g,""),b="undefined"!=typeof a.Element[b]?new a.Element[b](c):new a.Element.MISSING(c);b.type=c.nodeName;return b};a.load=function(c,b){a.loadXml(c,a.ajax(b))};a.loadXml=function(c,b){a.loadXmlDoc(c,a.parseXml(b))};a.loadXmlDoc=function(c,b){a.init(c);var e=function(a){for(var b=c.canvas;b;)a.x-=b.offsetLeft,a.y-=b.offsetTop,b=b.offsetParent;window.scrollX&&(a.x+=window.scrollX);window.scrollY&&(a.y+=window.scrollY);return a};1!=a.opts.ignoreMouse&&(c.canvas.onclick=function(b){b=e(new a.Point(null!=
b?b.clientX:event.clientX,null!=b?b.clientY:event.clientY));a.Mouse.onclick(b.x,b.y)},c.canvas.onmousemove=function(b){b=e(new a.Point(null!=b?b.clientX:event.clientX,null!=b?b.clientY:event.clientY));a.Mouse.onmousemove(b.x,b.y)});var d=a.CreateElement(b.documentElement);d.root=!0;d.addStylesFromStyleDefinition();var k=!0,f=function(){a.ViewPort.Clear();c.canvas.parentNode&&a.ViewPort.SetCurrent(c.canvas.parentNode.clientWidth,c.canvas.parentNode.clientHeight);1!=a.opts.ignoreDimensions&&(d.style("width").hasValue()&&
(c.canvas.width=d.style("width").toPixels("x"),c.canvas.style.width=c.canvas.width+"px"),d.style("height").hasValue()&&(c.canvas.height=d.style("height").toPixels("y"),c.canvas.style.height=c.canvas.height+"px"));var e=c.canvas.clientWidth||c.canvas.width,f=c.canvas.clientHeight||c.canvas.height;1==a.opts.ignoreDimensions&&d.style("width").hasValue()&&d.style("height").hasValue()&&(e=d.style("width").toPixels("x"),f=d.style("height").toPixels("y"));a.ViewPort.SetCurrent(e,f);null!=a.opts.offsetX&&
(d.attribute("x",!0).value=a.opts.offsetX);null!=a.opts.offsetY&&(d.attribute("y",!0).value=a.opts.offsetY);if(null!=a.opts.scaleWidth||null!=a.opts.scaleHeight){var g=null,h=null,l=a.ToNumberArray(d.attribute("viewBox").value);null!=a.opts.scaleWidth&&(d.attribute("width").hasValue()?g=d.attribute("width").toPixels("x")/a.opts.scaleWidth:isNaN(l[2])||(g=l[2]/a.opts.scaleWidth));null!=a.opts.scaleHeight&&(d.attribute("height").hasValue()?h=d.attribute("height").toPixels("y")/a.opts.scaleHeight:isNaN(l[3])||
(h=l[3]/a.opts.scaleHeight));null==g&&(g=h);null==h&&(h=g);d.attribute("width",!0).value=a.opts.scaleWidth;d.attribute("height",!0).value=a.opts.scaleHeight;d.style("transform",!0,!0).value+=" scale("+1/g+","+1/h+")"}1!=a.opts.ignoreClear&&c.clearRect(0,0,e,f);d.render(c);k&&(k=!1,"function"==typeof a.opts.renderCallback&&a.opts.renderCallback(b))},g=!0;a.ImagesLoaded()&&(g=!1,f());a.intervalID=setInterval(function(){var b=!1;g&&a.ImagesLoaded()&&(g=!1,b=!0);1!=a.opts.ignoreMouse&&(b|=a.Mouse.hasEvents());
if(1!=a.opts.ignoreAnimation)for(var c=0;c<a.Animations.length;c++)b|=a.Animations[c].update(1E3/a.FRAMERATE);"function"==typeof a.opts.forceRedraw&&1==a.opts.forceRedraw()&&(b=!0);b&&(f(),a.Mouse.runEvents())},1E3/a.FRAMERATE)};a.stop=function(){a.intervalID&&clearInterval(a.intervalID)};a.Mouse=new function(){this.events=[];this.hasEvents=function(){return 0!=this.events.length};this.onclick=function(a,b){this.events.push({type:"onclick",x:a,y:b,run:function(a){if(a.onclick)a.onclick()}})};this.onmousemove=
function(a,b){this.events.push({type:"onmousemove",x:a,y:b,run:function(a){if(a.onmousemove)a.onmousemove()}})};this.eventElements=[];this.checkPath=function(a,b){for(var e=0;e<this.events.length;e++){var d=this.events[e];b.isPointInPath&&b.isPointInPath(d.x,d.y)&&(this.eventElements[e]=a)}};this.checkBoundingBox=function(a,b){for(var e=0;e<this.events.length;e++){var d=this.events[e];b.isPointInBox(d.x,d.y)&&(this.eventElements[e]=a)}};this.runEvents=function(){a.ctx.canvas.style.cursor="";for(var c=
0;c<this.events.length;c++)for(var b=this.events[c],e=this.eventElements[c];e;)b.run(e),e=e.parent;this.events=[];this.eventElements=[]}};return a}var O=function(h,a,l){if(null==h&&null==a&&null==l)for(a=document.querySelectorAll("svg"),h=0;h<a.length;h++){l=a[h];var c=document.createElement("canvas");c.width=l.clientWidth;c.height=l.clientHeight;l.parentNode.insertBefore(c,l);l.parentNode.removeChild(l);var b=document.createElement("div");b.appendChild(l);O(c,b.innerHTML)}else{"string"==typeof h&&
(h=document.getElementById(h));null!=h.svg&&h.svg.stop();l=X(l||{});if(1!=h.childNodes.length||"OBJECT"!=h.childNodes[0].nodeName)h.svg=l;h=h.getContext("2d");"undefined"!=typeof a.documentElement?l.loadXmlDoc(h,a):"<"==a.substr(0,1)?l.loadXml(h,a):l.load(h,a)}},L;if("undefined"!=typeof Element.prototype.matches)L=function(h,a){return h.matches(a)};else if("undefined"!=typeof Element.prototype.webkitMatchesSelector)L=function(h,a){return h.webkitMatchesSelector(a)};else if("undefined"!=typeof Element.prototype.mozMatchesSelector)L=
function(h,a){return h.mozMatchesSelector(a)};else if("undefined"!=typeof Element.prototype.msMatchesSelector)L=function(h,a){return h.msMatchesSelector(a)};else if("undefined"!=typeof Element.prototype.oMatchesSelector)L=function(h,a){return h.oMatchesSelector(a)};else{if("function"===typeof jQuery||"function"===typeof Zepto)L=function(h,a){return $(h).is(a)};"undefined"===typeof L&&(L=Sizzle.matchesSelector)}var W=/(\[[^\]]+\])/g,M=/(#[^\s\+>~\.\[:]+)/g,u=/(\.[^\s\+>~\.\[:]+)/g,B=/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,
p=/(:[\w-]+\([^\)]*\))/gi,C=/(:[^\s\+>~\.\[:]+)/g,w=/([^\s\+>~\.\[:]+)/g;"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.drawSvg=function(h,a,l,c,b,e){a={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:a,offsetY:l,scaleWidth:c,scaleHeight:b};for(var d in e)e.hasOwnProperty(d)&&(a[d]=e[d]);O(this.canvas,h,a)});return O});
/*!
JSZip v3.1.5 - A JavaScript class for generating and reading zip files
<http://stuartk.com/jszip>
(c) 2009-2016 Stuart Knightley <stuart [at] stuartk.com>
Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown.
JSZip uses the library pako released under the MIT license :
https://github.com/nodeca/pako/blob/master/LICENSE
*/
!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.JSZip=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){"use strict";var d=a("./utils"),e=a("./support"),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";c.encode=function(a){for(var b,c,e,g,h,i,j,k=[],l=0,m=a.length,n=m,o="string"!==d.getTypeOf(a);l<a.length;)n=m-l,o?(b=a[l++],c=l<m?a[l++]:0,e=l<m?a[l++]:0):(b=a.charCodeAt(l++),c=l<m?a.charCodeAt(l++):0,e=l<m?a.charCodeAt(l++):0),g=b>>2,h=(3&b)<<4|c>>4,i=n>1?(15&c)<<2|e>>6:64,j=n>2?63&e:64,k.push(f.charAt(g)+f.charAt(h)+f.charAt(i)+f.charAt(j));return k.join("")},c.decode=function(a){var b,c,d,g,h,i,j,k=0,l=0,m="data:";if(a.substr(0,m.length)===m)throw new Error("Invalid base64 input, it looks like a data url.");a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");var n=3*a.length/4;if(a.charAt(a.length-1)===f.charAt(64)&&n--,a.charAt(a.length-2)===f.charAt(64)&&n--,n%1!==0)throw new Error("Invalid base64 input, bad content length.");var o;for(o=e.uint8array?new Uint8Array(0|n):new Array(0|n);k<a.length;)g=f.indexOf(a.charAt(k++)),h=f.indexOf(a.charAt(k++)),i=f.indexOf(a.charAt(k++)),j=f.indexOf(a.charAt(k++)),b=g<<2|h>>4,c=(15&h)<<4|i>>2,d=(3&i)<<6|j,o[l++]=b,64!==i&&(o[l++]=c),64!==j&&(o[l++]=d);return o}},{"./support":30,"./utils":32}],2:[function(a,b,c){"use strict";function d(a,b,c,d,e){this.compressedSize=a,this.uncompressedSize=b,this.crc32=c,this.compression=d,this.compressedContent=e}var e=a("./external"),f=a("./stream/DataWorker"),g=a("./stream/DataLengthProbe"),h=a("./stream/Crc32Probe"),g=a("./stream/DataLengthProbe");d.prototype={getContentWorker:function(){var a=new f(e.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new g("data_length")),b=this;return a.on("end",function(){if(this.streamInfo.data_length!==b.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),a},getCompressedWorker:function(){return new f(e.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},d.createWorkerFrom=function(a,b,c){return a.pipe(new h).pipe(new g("uncompressedSize")).pipe(b.compressWorker(c)).pipe(new g("compressedSize")).withStreamInfo("compression",b)},b.exports=d},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(a,b,c){"use strict";var d=a("./stream/GenericWorker");c.STORE={magic:"\0\0",compressWorker:function(a){return new d("STORE compression")},uncompressWorker:function(){return new d("STORE decompression")}},c.DEFLATE=a("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g<f;g++)a=a>>>8^e[255&(a^b[g])];return a^-1}function f(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g<f;g++)a=a>>>8^e[255&(a^b.charCodeAt(g))];return a^-1}var g=a("./utils"),h=d();b.exports=function(a,b){if("undefined"==typeof a||!a.length)return 0;var c="string"!==g.getTypeOf(a);return c?e(0|b,a,a.length,0):f(0|b,a,a.length,0)}},{"./utils":32}],5:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.createFolders=!0,c.date=null,c.compression=null,c.compressionOptions=null,c.comment=null,c.unixPermissions=null,c.dosPermissions=null},{}],6:[function(a,b,c){"use strict";var d=null;d="undefined"!=typeof Promise?Promise:a("lie"),b.exports={Promise:d}},{lie:58}],7:[function(a,b,c){"use strict";function d(a,b){h.call(this,"FlateWorker/"+a),this._pako=null,this._pakoAction=a,this._pakoOptions=b,this.meta={}}var e="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,f=a("pako"),g=a("./utils"),h=a("./stream/GenericWorker"),i=e?"uint8array":"array";c.magic="\b\0",g.inherits(d,h),d.prototype.processChunk=function(a){this.meta=a.meta,null===this._pako&&this._createPako(),this._pako.push(g.transformTo(i,a.data),!1)},d.prototype.flush=function(){h.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},d.prototype.cleanUp=function(){h.prototype.cleanUp.call(this),this._pako=null},d.prototype._createPako=function(){this._pako=new f[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var a=this;this._pako.onData=function(b){a.push({data:b,meta:a.meta})}},c.compressWorker=function(a){return new d("Deflate",a)},c.uncompressWorker=function(){return new d("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:59}],8:[function(a,b,c){"use strict";function d(a,b,c,d){f.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,this.zipPlatform=c,this.encodeFileName=d,this.streamFiles=a,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}var e=a("../utils"),f=a("../stream/GenericWorker"),g=a("../utf8"),h=a("../crc32"),i=a("../signature"),j=function(a,b){var c,d="";for(c=0;c<b;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},k=function(a,b){var c=a;return a||(c=b?16893:33204),(65535&c)<<16},l=function(a,b){return 63&(a||0)},m=function(a,b,c,d,f,m){var n,o,p=a.file,q=a.compression,r=m!==g.utf8encode,s=e.transformTo("string",m(p.name)),t=e.transformTo("string",g.utf8encode(p.name)),u=p.comment,v=e.transformTo("string",m(u)),w=e.transformTo("string",g.utf8encode(u)),x=t.length!==p.name.length,y=w.length!==u.length,z="",A="",B="",C=p.dir,D=p.date,E={crc32:0,compressedSize:0,uncompressedSize:0};b&&!c||(E.crc32=a.crc32,E.compressedSize=a.compressedSize,E.uncompressedSize=a.uncompressedSize);var F=0;b&&(F|=8),r||!x&&!y||(F|=2048);var G=0,H=0;C&&(G|=16),"UNIX"===f?(H=798,G|=k(p.unixPermissions,C)):(H=20,G|=l(p.dosPermissions,C)),n=D.getUTCHours(),n<<=6,n|=D.getUTCMinutes(),n<<=5,n|=D.getUTCSeconds()/2,o=D.getUTCFullYear()-1980,o<<=4,o|=D.getUTCMonth()+1,o<<=5,o|=D.getUTCDate(),x&&(A=j(1,1)+j(h(s),4)+t,z+="up"+j(A.length,2)+A),y&&(B=j(1,1)+j(h(v),4)+w,z+="uc"+j(B.length,2)+B);var I="";I+="\n\0",I+=j(F,2),I+=q.magic,I+=j(n,2),I+=j(o,2),I+=j(E.crc32,4),I+=j(E.compressedSize,4),I+=j(E.uncompressedSize,4),I+=j(s.length,2),I+=j(z.length,2);var J=i.LOCAL_FILE_HEADER+I+s+z,K=i.CENTRAL_FILE_HEADER+j(H,2)+I+j(v.length,2)+"\0\0\0\0"+j(G,4)+j(d,4)+s+z+v;return{fileRecord:J,dirRecord:K}},n=function(a,b,c,d,f){var g="",h=e.transformTo("string",f(d));return g=i.CENTRAL_DIRECTORY_END+"\0\0\0\0"+j(a,2)+j(a,2)+j(b,4)+j(c,4)+j(h.length,2)+h},o=function(a){var b="";return b=i.DATA_DESCRIPTOR+j(a.crc32,4)+j(a.compressedSize,4)+j(a.uncompressedSize,4)};e.inherits(d,f),d.prototype.push=function(a){var b=a.meta.percent||0,c=this.entriesCount,d=this._sources.length;this.accumulate?this.contentBuffer.push(a):(this.bytesWritten+=a.data.length,f.prototype.push.call(this,{data:a.data,meta:{currentFile:this.currentFile,percent:c?(b+100*(c-d-1))/c:100}}))},d.prototype.openedSource=function(a){this.currentSourceOffset=this.bytesWritten,this.currentFile=a.file.name;var b=this.streamFiles&&!a.file.dir;if(b){var c=m(a,b,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:c.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(a){this.accumulate=!1;var b=this.streamFiles&&!a.file.dir,c=m(a,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(c.dirRecord),b)this.push({data:o(a),meta:{percent:100}});else for(this.push({data:c.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var a=this.bytesWritten,b=0;b<this.dirRecords.length;b++)this.push({data:this.dirRecords[b],meta:{percent:100}});var c=this.bytesWritten-a,d=n(this.dirRecords.length,c,a,this.zipComment,this.encodeFileName);this.push({data:d,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(a){this._sources.push(a);var b=this;return a.on("data",function(a){b.processChunk(a)}),a.on("end",function(){b.closedSource(b.previous.streamInfo),b._sources.length?b.prepareNextSource():b.end()}),a.on("error",function(a){b.error(a)}),this},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(a){var b=this._sources;if(!f.prototype.error.call(this,a))return!1;for(var c=0;c<b.length;c++)try{b[c].error(a)}catch(a){}return!0},d.prototype.lock=function(){f.prototype.lock.call(this);for(var a=this._sources,b=0;b<a.length;b++)a[b].lock()},b.exports=d},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(a,b,c){"use strict";var d=a("../compressions"),e=a("./ZipFileWorker"),f=function(a,b){var c=a||b,e=d[c];if(!e)throw new Error(c+" is not a valid compression method !");return e};c.generateWorker=function(a,b,c){var d=new e(b.streamFiles,c,b.platform,b.encodeFileName),g=0;try{a.forEach(function(a,c){g++;var e=f(c.options.compression,b.compression),h=c.options.compressionOptions||b.compressionOptions||{},i=c.dir,j=c.date;c._compressWorker(e,h).withStreamInfo("file",{name:a,dir:i,date:j,comment:c.comment||"",unixPermissions:c.unixPermissions,dosPermissions:c.dosPermissions}).pipe(d)}),d.entriesCount=g}catch(h){d.error(h)}return d}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(a,b,c){"use strict";function d(){if(!(this instanceof d))return new d;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files={},this.comment=null,this.root="",this.clone=function(){var a=new d;for(var b in this)"function"!=typeof this[b]&&(a[b]=this[b]);return a}}d.prototype=a("./object"),d.prototype.loadAsync=a("./load"),d.support=a("./support"),d.defaults=a("./defaults"),d.version="3.1.5",d.loadAsync=function(a,b){return(new d).loadAsync(a,b)},d.external=a("./external"),b.exports=d},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(a,b,c){"use strict";function d(a){return new f.Promise(function(b,c){var d=a.decompressed.getContentWorker().pipe(new i);d.on("error",function(a){c(a)}).on("end",function(){d.streamInfo.crc32!==a.decompressed.crc32?c(new Error("Corrupted zip : CRC32 mismatch")):b()}).resume()})}var e=a("./utils"),f=a("./external"),g=a("./utf8"),e=a("./utils"),h=a("./zipEntries"),i=a("./stream/Crc32Probe"),j=a("./nodejsUtils");b.exports=function(a,b){var c=this;return b=e.extend(b||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:g.utf8decode}),j.isNode&&j.isStream(a)?f.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):e.prepareContent("the loaded zip file",a,!0,b.optimizedBinaryString,b.base64).then(function(a){var c=new h(b);return c.load(a),c}).then(function(a){var c=[f.Promise.resolve(a)],e=a.files;if(b.checkCRC32)for(var g=0;g<e.length;g++)c.push(d(e[g]));return f.Promise.all(c)}).then(function(a){for(var d=a.shift(),e=d.files,f=0;f<e.length;f++){var g=e[f];c.file(g.fileNameStr,g.decompressed,{binary:!0,optimizedBinaryString:!0,date:g.date,dir:g.dir,comment:g.fileCommentStr.length?g.fileCommentStr:null,unixPermissions:g.unixPermissions,dosPermissions:g.dosPermissions,createFolders:b.createFolders})}return d.zipComment.length&&(c.comment=d.zipComment),c})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(a,b,c){"use strict";function d(a,b){f.call(this,"Nodejs stream input adapter for "+a),this._upstreamEnded=!1,this._bindStream(b)}var e=a("../utils"),f=a("../stream/GenericWorker");e.inherits(d,f),d.prototype._bindStream=function(a){var b=this;this._stream=a,a.pause(),a.on("data",function(a){b.push({data:a,meta:{percent:0}})}).on("error",function(a){b.isPaused?this.generatedError=a:b.error(a)}).on("end",function(){b.isPaused?b._upstreamEnded=!0:b.end()})},d.prototype.pause=function(){return!!f.prototype.pause.call(this)&&(this._stream.pause(),!0)},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},b.exports=d},{"../stream/GenericWorker":28,"../utils":32}],13:[function(a,b,c){"use strict";function d(a,b,c){e.call(this,b),this._helper=a;var d=this;a.on("data",function(a,b){d.push(a)||d._helper.pause(),c&&c(b)}).on("error",function(a){d.emit("error",a)}).on("end",function(){d.push(null)})}var e=a("readable-stream").Readable,f=a("../utils");f.inherits(d,e),d.prototype._read=function(){this._helper.resume()},b.exports=d},{"../utils":32,"readable-stream":16}],14:[function(a,b,c){"use strict";b.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(a,b){return new Buffer(a,b)},allocBuffer:function(a){return Buffer.alloc?Buffer.alloc(a):new Buffer(a)},isBuffer:function(a){return Buffer.isBuffer(a)},isStream:function(a){return a&&"function"==typeof a.on&&"function"==typeof a.pause&&"function"==typeof a.resume}}},{}],15:[function(a,b,c){"use strict";function d(a){return"[object RegExp]"===Object.prototype.toString.call(a)}var e=a("./utf8"),f=a("./utils"),g=a("./stream/GenericWorker"),h=a("./stream/StreamHelper"),i=a("./defaults"),j=a("./compressedObject"),k=a("./zipObject"),l=a("./generate"),m=a("./nodejsUtils"),n=a("./nodejs/NodejsStreamInputAdapter"),o=function(a,b,c){var d,e=f.getTypeOf(b),h=f.extend(c||{},i);h.date=h.date||new Date,null!==h.compression&&(h.compression=h.compression.toUpperCase()),"string"==typeof h.unixPermissions&&(h.unixPermissions=parseInt(h.unixPermissions,8)),h.unixPermissions&&16384&h.unixPermissions&&(h.dir=!0),h.dosPermissions&&16&h.dosPermissions&&(h.dir=!0),h.dir&&(a=q(a)),h.createFolders&&(d=p(a))&&r.call(this,d,!0);var l="string"===e&&h.binary===!1&&h.base64===!1;c&&"undefined"!=typeof c.binary||(h.binary=!l);var o=b instanceof j&&0===b.uncompressedSize;(o||h.dir||!b||0===b.length)&&(h.base64=!1,h.binary=!0,b="",h.compression="STORE",e="string");var s=null;s=b instanceof j||b instanceof g?b:m.isNode&&m.isStream(b)?new n(a,b):f.prepareContent(a,b,h.binary,h.optimizedBinaryString,h.base64);var t=new k(a,s,h);this.files[a]=t},p=function(a){"/"===a.slice(-1)&&(a=a.substring(0,a.length-1));var b=a.lastIndexOf("/");return b>0?a.substring(0,b):""},q=function(a){return"/"!==a.slice(-1)&&(a+="/"),a},r=function(a,b){return b="undefined"!=typeof b?b:i.createFolders,a=q(a),this.files[a]||o.call(this,a,null,{dir:!0,createFolders:b}),this.files[a]},s={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(a){var b,c,d;for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],c=b.slice(this.root.length,b.length),c&&b.slice(0,this.root.length)===this.root&&a(c,d))},filter:function(a){var b=[];return this.forEach(function(c,d){a(c,d)&&b.push(d)}),b},file:function(a,b,c){if(1===arguments.length){if(d(a)){var e=a;return this.filter(function(a,b){return!b.dir&&e.test(a)})}var f=this.files[this.root+a];return f&&!f.dir?f:null}return a=this.root+a,o.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(d(a))return this.filter(function(b,c){return c.dir&&a.test(b)});var b=this.root+a,c=r.call(this,b),e=this.clone();return e.root=c.name,e},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!==a.slice(-1)&&(a+="/"),b=this.files[a]),b&&!b.dir)delete this.files[a];else for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d<c.length;d++)delete this.files[c[d].name];return this},generate:function(a){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(a){var b,c={};try{if(c=f.extend(a||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:e.utf8encode}),c.type=c.type.toLowerCase(),c.compression=c.compression.toUpperCase(),"binarystring"===c.type&&(c.type="string"),!c.type)throw new Error("No output type specified.");f.checkSupport(c.type),"darwin"!==c.platform&&"freebsd"!==c.platform&&"linux"!==c.platform&&"sunos"!==c.platform||(c.platform="UNIX"),"win32"===c.platform&&(c.platform="DOS");var d=c.comment||this.comment||"";b=l.generateWorker(this,c,d)}catch(i){b=new g("error"),b.error(i)}return new h(b,c.type||"string",c.mimeType)},generateAsync:function(a,b){return this.generateInternalStream(a).accumulate(b)},generateNodeStream:function(a,b){return a=a||{},a.type||(a.type="nodebuffer"),this.generateInternalStream(a).toNodejsStream(b)}};b.exports=s},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(a,b,c){b.exports=a("stream")},{stream:void 0}],17:[function(a,b,c){"use strict";function d(a){e.call(this,a);for(var b=0;b<this.data.length;b++)a[b]=255&a[b]}var e=a("./DataReader"),f=a("../utils");f.inherits(d,e),d.prototype.byteAt=function(a){return this.data[this.zero+a]},d.prototype.lastIndexOfSignature=function(a){for(var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.length-4;f>=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f-this.zero;return-1},d.prototype.readAndCheckSignature=function(a){var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.readData(4);return b===f[0]&&c===f[1]&&d===f[2]&&e===f[3]},d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return[];var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],18:[function(a,b,c){"use strict";function d(a){this.data=a,this.length=a.length,this.index=0,this.zero=0}var e=a("../utils");d.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.length<this.zero+a||a<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+a+"). Corrupted zip ?")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(a){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return e.transformTo("string",this.readData(a))},readData:function(a){},lastIndexOfSignature:function(a){},readAndCheckSignature:function(a){},readDate:function(){var a=this.readInt(4);return new Date(Date.UTC((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1))}},b.exports=d},{"../utils":32}],19:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./Uint8ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./DataReader"),f=a("../utils");f.inherits(d,e),d.prototype.byteAt=function(a){return this.data.charCodeAt(this.zero+a)},d.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)-this.zero},d.prototype.readAndCheckSignature=function(a){var b=this.readData(4);return a===b},d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],21:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return new Uint8Array(0);var b=this.data.subarray(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./ArrayReader":17}],22:[function(a,b,c){"use strict";var d=a("../utils"),e=a("../support"),f=a("./ArrayReader"),g=a("./StringReader"),h=a("./NodeBufferReader"),i=a("./Uint8ArrayReader");b.exports=function(a){var b=d.getTypeOf(a);return d.checkSupport(b),"string"!==b||e.uint8array?"nodebuffer"===b?new h(a):e.uint8array?new i(d.transformTo("uint8array",a)):new f(d.transformTo("array",a)):new g(a)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(a,b,c){"use strict";c.LOCAL_FILE_HEADER="PK",c.CENTRAL_FILE_HEADER="PK",c.CENTRAL_DIRECTORY_END="PK",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",c.ZIP64_CENTRAL_DIRECTORY_END="PK",c.DATA_DESCRIPTOR="PK\b"},{}],24:[function(a,b,c){"use strict";function d(a){e.call(this,"ConvertWorker to "+a),this.destType=a}var e=a("./GenericWorker"),f=a("../utils");f.inherits(d,e),d.prototype.processChunk=function(a){this.push({data:f.transformTo(this.destType,a.data),meta:a.meta})},b.exports=d},{"../utils":32,"./GenericWorker":28}],25:[function(a,b,c){"use strict";function d(){e.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}var e=a("./GenericWorker"),f=a("../crc32"),g=a("../utils");g.inherits(d,e),d.prototype.processChunk=function(a){this.streamInfo.crc32=f(a.data,this.streamInfo.crc32||0),this.push(a)},b.exports=d},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(a,b,c){"use strict";function d(a){f.call(this,"DataLengthProbe for "+a),this.propName=a,this.withStreamInfo(a,0)}var e=a("../utils"),f=a("./GenericWorker");e.inherits(d,f),d.prototype.processChunk=function(a){if(a){var b=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=b+a.data.length}f.prototype.processChunk.call(this,a)},b.exports=d},{"../utils":32,"./GenericWorker":28}],27:[function(a,b,c){"use strict";function d(a){f.call(this,"DataWorker");var b=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,a.then(function(a){b.dataIsReady=!0,b.data=a,b.max=a&&a.length||0,b.type=e.getTypeOf(a),b.isPaused||b._tickAndRepeat()},function(a){b.error(a)})}var e=a("../utils"),f=a("./GenericWorker"),g=16384;e.inherits(d,f),d.prototype.cleanUp=function(){f.prototype.cleanUp.call(this),this.data=null},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,e.delay(this._tickAndRepeat,[],this)),!0)},d.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(e.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},d.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var a=g,b=null,c=Math.min(this.max,this.index+a);if(this.index>=this.max)return this.end();switch(this.type){case"string":b=this.data.substring(this.index,c);break;case"uint8array":b=this.data.subarray(this.index,c);break;case"array":case"nodebuffer":b=this.data.slice(this.index,c)}return this.index=c,this.push({data:b,meta:{percent:this.max?this.index/this.max*100:0}})},b.exports=d},{"../utils":32,"./GenericWorker":28}],28:[function(a,b,c){"use strict";function d(a){this.name=a||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}d.prototype={push:function(a){this.emit("data",a)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(a){this.emit("error",a)}return!0},error:function(a){return!this.isFinished&&(this.isPaused?this.generatedError=a:(this.isFinished=!0,this.emit("error",a),this.previous&&this.previous.error(a),this.cleanUp()),!0)},on:function(a,b){return this._listeners[a].push(b),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(a,b){if(this._listeners[a])for(var c=0;c<this._listeners[a].length;c++)this._listeners[a][c].call(this,b)},pipe:function(a){return a.registerPrevious(this)},registerPrevious:function(a){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=a.streamInfo,this.mergeStreamInfo(),this.previous=a;var b=this;return a.on("data",function(a){b.processChunk(a)}),a.on("end",function(){b.end()}),a.on("error",function(a){b.error(a)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;this.isPaused=!1;var a=!1;return this.generatedError&&(this.error(this.generatedError),a=!0),this.previous&&this.previous.resume(),!a},flush:function(){},processChunk:function(a){this.push(a)},withStreamInfo:function(a,b){return this.extraStreamInfo[a]=b,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var a in this.extraStreamInfo)this.extraStreamInfo.hasOwnProperty(a)&&(this.streamInfo[a]=this.extraStreamInfo[a])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var a="Worker "+this.name;return this.previous?this.previous+" -> "+a:a}},b.exports=d},{}],29:[function(a,b,c){"use strict";function d(a,b,c){switch(a){case"blob":return h.newBlob(h.transformTo("arraybuffer",b),c);case"base64":return k.encode(b);default:return h.transformTo(a,b)}}function e(a,b){var c,d=0,e=null,f=0;for(c=0;c<b.length;c++)f+=b[c].length;switch(a){case"string":return b.join("");case"array":return Array.prototype.concat.apply([],b);case"uint8array":for(e=new Uint8Array(f),c=0;c<b.length;c++)e.set(b[c],d),d+=b[c].length;return e;case"nodebuffer":return Buffer.concat(b);default:throw new Error("concat : unsupported type '"+a+"'")}}function f(a,b){return new m.Promise(function(c,f){var g=[],h=a._internalType,i=a._outputType,j=a._mimeType;a.on("data",function(a,c){g.push(a),b&&b(c)}).on("error",function(a){g=[],f(a)}).on("end",function(){try{var a=d(i,e(h,g),j);c(a)}catch(b){f(b)}g=[]}).resume()})}function g(a,b,c){var d=b;switch(b){case"blob":case"arraybuffer":d="uint8array";break;case"base64":d="string"}try{this._internalType=d,this._outputType=b,this._mimeType=c,h.checkSupport(d),this._worker=a.pipe(new i(d)),a.lock()}catch(e){this._worker=new j("error"),this._worker.error(e)}}var h=a("../utils"),i=a("./ConvertWorker"),j=a("./GenericWorker"),k=a("../base64"),l=a("../support"),m=a("../external"),n=null;if(l.nodestream)try{n=a("../nodejs/NodejsStreamOutputAdapter")}catch(o){}g.prototype={accumulate:function(a){return f(this,a)},on:function(a,b){var c=this;return"data"===a?this._worker.on(a,function(a){b.call(c,a.data,a.meta)}):this._worker.on(a,function(){h.delay(b,arguments,c)}),this},resume:function(){return h.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(a){if(h.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new n(this,{objectMode:"nodebuffer"!==this._outputType},a)}},b.exports=g},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(a,b,c){"use strict";if(c.base64=!0,c.array=!0,c.string=!0,c.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,c.nodebuffer="undefined"!=typeof Buffer,c.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)c.blob=!1;else{var d=new ArrayBuffer(0);try{c.blob=0===new Blob([d],{type:"application/zip"}).size}catch(e){try{var f=self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder,g=new f;g.append(d),c.blob=0===g.getBlob("application/zip").size}catch(e){c.blob=!1}}}try{c.nodestream=!!a("readable-stream").Readable}catch(e){c.nodestream=!1}},{"readable-stream":16}],31:[function(a,b,c){"use strict";function d(){i.call(this,"utf-8 decode"),this.leftOver=null}function e(){i.call(this,"utf-8 encode")}for(var f=a("./utils"),g=a("./support"),h=a("./nodejsUtils"),i=a("./stream/GenericWorker"),j=new Array(256),k=0;k<256;k++)j[k]=k>=252?6:k>=248?5:k>=240?4:k>=224?3:k>=192?2:1;j[254]=j[254]=1;var l=function(a){var b,c,d,e,f,h=a.length,i=0;for(e=0;e<h;e++)c=a.charCodeAt(e),55296===(64512&c)&&e+1<h&&(d=a.charCodeAt(e+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),e++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=g.uint8array?new Uint8Array(i):new Array(i),f=0,e=0;f<i;e++)c=a.charCodeAt(e),55296===(64512&c)&&e+1<h&&(d=a.charCodeAt(e+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),e++)),c<128?b[f++]=c:c<2048?(b[f++]=192|c>>>6,b[f++]=128|63&c):c<65536?(b[f++]=224|c>>>12,b[f++]=128|c>>>6&63,b[f++]=128|63&c):(b[f++]=240|c>>>18,b[f++]=128|c>>>12&63,b[f++]=128|c>>>6&63,b[f++]=128|63&c);return b},m=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+j[a[c]]>b?c:b},n=function(a){var b,c,d,e,g=a.length,h=new Array(2*g);for(c=0,b=0;b<g;)if(d=a[b++],d<128)h[c++]=d;else if(e=j[d],e>4)h[c++]=65533,b+=e-1;else{for(d&=2===e?31:3===e?15:7;e>1&&b<g;)d=d<<6|63&a[b++],e--;e>1?h[c++]=65533:d<65536?h[c++]=d:(d-=65536,h[c++]=55296|d>>10&1023,h[c++]=56320|1023&d)}return h.length!==c&&(h.subarray?h=h.subarray(0,c):h.length=c),f.applyFromCharCode(h)};c.utf8encode=function(a){return g.nodebuffer?h.newBufferFrom(a,"utf-8"):l(a)},c.utf8decode=function(a){return g.nodebuffer?f.transformTo("nodebuffer",a).toString("utf-8"):(a=f.transformTo(g.uint8array?"uint8array":"array",a),n(a))},f.inherits(d,i),d.prototype.processChunk=function(a){var b=f.transformTo(g.uint8array?"uint8array":"array",a.data);if(this.leftOver&&this.leftOver.length){if(g.uint8array){var d=b;b=new Uint8Array(d.length+this.leftOver.length),b.set(this.leftOver,0),b.set(d,this.leftOver.length)}else b=this.leftOver.concat(b);this.leftOver=null}var e=m(b),h=b;e!==b.length&&(g.uint8array?(h=b.subarray(0,e),this.leftOver=b.subarray(e,b.length)):(h=b.slice(0,e),this.leftOver=b.slice(e,b.length))),this.push({data:c.utf8decode(h),meta:a.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:c.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},c.Utf8DecodeWorker=d,f.inherits(e,i),e.prototype.processChunk=function(a){this.push({data:c.utf8encode(a.data),meta:a.meta})},c.Utf8EncodeWorker=e},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(a,b,c){"use strict";function d(a){var b=null;return b=i.uint8array?new Uint8Array(a.length):new Array(a.length),f(a,b)}function e(a){return a}function f(a,b){for(var c=0;c<a.length;++c)b[c]=255&a.charCodeAt(c);return b}function g(a){var b=65536,d=c.getTypeOf(a),e=!0;if("uint8array"===d?e=n.applyCanBeUsed.uint8array:"nodebuffer"===d&&(e=n.applyCanBeUsed.nodebuffer),e)for(;b>1;)try{return n.stringifyByChunk(a,d,b)}catch(f){b=Math.floor(b/2)}return n.stringifyByChar(a)}function h(a,b){for(var c=0;c<a.length;c++)b[c]=a[c];
return b}var i=a("./support"),j=a("./base64"),k=a("./nodejsUtils"),l=a("core-js/library/fn/set-immediate"),m=a("./external");c.newBlob=function(a,b){c.checkSupport("blob");try{return new Blob([a],{type:b})}catch(d){try{var e=self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder,f=new e;return f.append(a),f.getBlob(b)}catch(d){throw new Error("Bug : can't construct the Blob.")}}};var n={stringifyByChunk:function(a,b,c){var d=[],e=0,f=a.length;if(f<=c)return String.fromCharCode.apply(null,a);for(;e<f;)"array"===b||"nodebuffer"===b?d.push(String.fromCharCode.apply(null,a.slice(e,Math.min(e+c,f)))):d.push(String.fromCharCode.apply(null,a.subarray(e,Math.min(e+c,f)))),e+=c;return d.join("")},stringifyByChar:function(a){for(var b="",c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return b},applyCanBeUsed:{uint8array:function(){try{return i.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(a){return!1}}(),nodebuffer:function(){try{return i.nodebuffer&&1===String.fromCharCode.apply(null,k.allocBuffer(1)).length}catch(a){return!1}}()}};c.applyFromCharCode=g;var o={};o.string={string:e,array:function(a){return f(a,new Array(a.length))},arraybuffer:function(a){return o.string.uint8array(a).buffer},uint8array:function(a){return f(a,new Uint8Array(a.length))},nodebuffer:function(a){return f(a,k.allocBuffer(a.length))}},o.array={string:g,array:e,arraybuffer:function(a){return new Uint8Array(a).buffer},uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return k.newBufferFrom(a)}},o.arraybuffer={string:function(a){return g(new Uint8Array(a))},array:function(a){return h(new Uint8Array(a),new Array(a.byteLength))},arraybuffer:e,uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return k.newBufferFrom(new Uint8Array(a))}},o.uint8array={string:g,array:function(a){return h(a,new Array(a.length))},arraybuffer:function(a){return a.buffer},uint8array:e,nodebuffer:function(a){return k.newBufferFrom(a)}},o.nodebuffer={string:g,array:function(a){return h(a,new Array(a.length))},arraybuffer:function(a){return o.nodebuffer.uint8array(a).buffer},uint8array:function(a){return h(a,new Uint8Array(a.length))},nodebuffer:e},c.transformTo=function(a,b){if(b||(b=""),!a)return b;c.checkSupport(a);var d=c.getTypeOf(b),e=o[d][a](b);return e},c.getTypeOf=function(a){return"string"==typeof a?"string":"[object Array]"===Object.prototype.toString.call(a)?"array":i.nodebuffer&&k.isBuffer(a)?"nodebuffer":i.uint8array&&a instanceof Uint8Array?"uint8array":i.arraybuffer&&a instanceof ArrayBuffer?"arraybuffer":void 0},c.checkSupport=function(a){var b=i[a.toLowerCase()];if(!b)throw new Error(a+" is not supported by this platform")},c.MAX_VALUE_16BITS=65535,c.MAX_VALUE_32BITS=-1,c.pretty=function(a){var b,c,d="";for(c=0;c<(a||"").length;c++)b=a.charCodeAt(c),d+="\\x"+(b<16?"0":"")+b.toString(16).toUpperCase();return d},c.delay=function(a,b,c){l(function(){a.apply(c||null,b||[])})},c.inherits=function(a,b){var c=function(){};c.prototype=b.prototype,a.prototype=new c},c.extend=function(){var a,b,c={};for(a=0;a<arguments.length;a++)for(b in arguments[a])arguments[a].hasOwnProperty(b)&&"undefined"==typeof c[b]&&(c[b]=arguments[a][b]);return c},c.prepareContent=function(a,b,e,f,g){var h=m.Promise.resolve(b).then(function(a){var b=i.blob&&(a instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(a))!==-1);return b&&"undefined"!=typeof FileReader?new m.Promise(function(b,c){var d=new FileReader;d.onload=function(a){b(a.target.result)},d.onerror=function(a){c(a.target.error)},d.readAsArrayBuffer(a)}):a});return h.then(function(b){var h=c.getTypeOf(b);return h?("arraybuffer"===h?b=c.transformTo("uint8array",b):"string"===h&&(g?b=j.decode(b):e&&f!==!0&&(b=d(b))),b):m.Promise.reject(new Error("Can't read the data of '"+a+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,"core-js/library/fn/set-immediate":36}],33:[function(a,b,c){"use strict";function d(a){this.files=[],this.loadOptions=a}var e=a("./reader/readerFor"),f=a("./utils"),g=a("./signature"),h=a("./zipEntry"),i=(a("./utf8"),a("./support"));d.prototype={checkSignature:function(a){if(!this.reader.readAndCheckSignature(a)){this.reader.index-=4;var b=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+f.pretty(b)+", expected "+f.pretty(a)+")")}},isSignature:function(a,b){var c=this.reader.index;this.reader.setIndex(a);var d=this.reader.readString(4),e=d===b;return this.reader.setIndex(c),e},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var a=this.reader.readData(this.zipCommentLength),b=i.uint8array?"uint8array":"array",c=f.transformTo(b,a);this.zipComment=this.loadOptions.decodeFileName(c)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;e<d;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readData(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a<this.files.length;a++)b=this.files[a],this.reader.setIndex(b.localHeaderOffset),this.checkSignature(g.LOCAL_FILE_HEADER),b.readLocalPart(this.reader),b.handleUTF8(),b.processAttributes()},readCentralDir:function(){var a;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(g.CENTRAL_FILE_HEADER);)a=new h({zip64:this.zip64},this.loadOptions),a.readCentralPart(this.reader),this.files.push(a);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var a=this.reader.lastIndexOfSignature(g.CENTRAL_DIRECTORY_END);if(a<0){var b=!this.isSignature(0,g.LOCAL_FILE_HEADER);throw b?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory")}this.reader.setIndex(a);var c=a;if(this.checkSignature(g.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===f.MAX_VALUE_16BITS||this.diskWithCentralDirStart===f.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===f.MAX_VALUE_16BITS||this.centralDirRecords===f.MAX_VALUE_16BITS||this.centralDirSize===f.MAX_VALUE_32BITS||this.centralDirOffset===f.MAX_VALUE_32BITS){if(this.zip64=!0,a=this.reader.lastIndexOfSignature(g.ZIP64_CENTRAL_DIRECTORY_LOCATOR),a<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(a),this.checkSignature(g.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,g.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(g.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(g.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var d=this.centralDirOffset+this.centralDirSize;this.zip64&&(d+=20,d+=12+this.zip64EndOfCentralSize);var e=c-d;if(e>0)this.isSignature(c,g.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error("Corrupted zip: missing "+Math.abs(e)+" bytes.")},prepareReader:function(a){this.reader=e(a)},load:function(a){this.prepareReader(a),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},b.exports=d},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utf8":31,"./utils":32,"./zipEntry":34}],34:[function(a,b,c){"use strict";function d(a,b){this.options=a,this.loadOptions=b}var e=a("./reader/readerFor"),f=a("./utils"),g=a("./compressedObject"),h=a("./crc32"),i=a("./utf8"),j=a("./compressions"),k=a("./support"),l=0,m=3,n=function(a){for(var b in j)if(j.hasOwnProperty(b)&&j[b].magic===a)return j[b];return null};d.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},readLocalPart:function(a){var b,c;if(a.skip(22),this.fileNameLength=a.readInt(2),c=a.readInt(2),this.fileName=a.readData(this.fileNameLength),a.skip(c),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(b=n(this.compressionMethod),null===b)throw new Error("Corrupted zip : compression "+f.pretty(this.compressionMethod)+" unknown (inner file : "+f.transformTo("string",this.fileName)+")");this.decompressed=new g(this.compressedSize,this.uncompressedSize,this.crc32,b,a.readData(this.compressedSize))},readCentralPart:function(a){this.versionMadeBy=a.readInt(2),a.skip(2),this.bitFlag=a.readInt(2),this.compressionMethod=a.readString(2),this.date=a.readDate(),this.crc32=a.readInt(4),this.compressedSize=a.readInt(4),this.uncompressedSize=a.readInt(4);var b=a.readInt(2);if(this.extraFieldsLength=a.readInt(2),this.fileCommentLength=a.readInt(2),this.diskNumberStart=a.readInt(2),this.internalFileAttributes=a.readInt(2),this.externalFileAttributes=a.readInt(4),this.localHeaderOffset=a.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");a.skip(b),this.readExtraFields(a),this.parseZIP64ExtraField(a),this.fileComment=a.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var a=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),a===l&&(this.dosPermissions=63&this.externalFileAttributes),a===m&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(a){if(this.extraFields[1]){var b=e(this.extraFields[1].value);this.uncompressedSize===f.MAX_VALUE_32BITS&&(this.uncompressedSize=b.readInt(8)),this.compressedSize===f.MAX_VALUE_32BITS&&(this.compressedSize=b.readInt(8)),this.localHeaderOffset===f.MAX_VALUE_32BITS&&(this.localHeaderOffset=b.readInt(8)),this.diskNumberStart===f.MAX_VALUE_32BITS&&(this.diskNumberStart=b.readInt(4))}},readExtraFields:function(a){var b,c,d,e=a.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});a.index<e;)b=a.readInt(2),c=a.readInt(2),d=a.readData(c),this.extraFields[b]={id:b,length:c,value:d}},handleUTF8:function(){var a=k.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=i.utf8decode(this.fileName),this.fileCommentStr=i.utf8decode(this.fileComment);else{var b=this.findExtraFieldUnicodePath();if(null!==b)this.fileNameStr=b;else{var c=f.transformTo(a,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(c)}var d=this.findExtraFieldUnicodeComment();if(null!==d)this.fileCommentStr=d;else{var e=f.transformTo(a,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(e)}}},findExtraFieldUnicodePath:function(){var a=this.extraFields[28789];if(a){var b=e(a.value);return 1!==b.readInt(1)?null:h(this.fileName)!==b.readInt(4)?null:i.utf8decode(b.readData(a.length-5))}return null},findExtraFieldUnicodeComment:function(){var a=this.extraFields[25461];if(a){var b=e(a.value);return 1!==b.readInt(1)?null:h(this.fileComment)!==b.readInt(4)?null:i.utf8decode(b.readData(a.length-5))}return null}},b.exports=d},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(a,b,c){"use strict";var d=a("./stream/StreamHelper"),e=a("./stream/DataWorker"),f=a("./utf8"),g=a("./compressedObject"),h=a("./stream/GenericWorker"),i=function(a,b,c){this.name=a,this.dir=c.dir,this.date=c.date,this.comment=c.comment,this.unixPermissions=c.unixPermissions,this.dosPermissions=c.dosPermissions,this._data=b,this._dataBinary=c.binary,this.options={compression:c.compression,compressionOptions:c.compressionOptions}};i.prototype={internalStream:function(a){var b=null,c="string";try{if(!a)throw new Error("No output type specified.");c=a.toLowerCase();var e="string"===c||"text"===c;"binarystring"!==c&&"text"!==c||(c="string"),b=this._decompressWorker();var g=!this._dataBinary;g&&!e&&(b=b.pipe(new f.Utf8EncodeWorker)),!g&&e&&(b=b.pipe(new f.Utf8DecodeWorker))}catch(i){b=new h("error"),b.error(i)}return new d(b,c,"")},async:function(a,b){return this.internalStream(a).accumulate(b)},nodeStream:function(a,b){return this.internalStream(a||"nodebuffer").toNodejsStream(b)},_compressWorker:function(a,b){if(this._data instanceof g&&this._data.compression.magic===a.magic)return this._data.getCompressedWorker();var c=this._decompressWorker();return this._dataBinary||(c=c.pipe(new f.Utf8EncodeWorker)),g.createWorkerFrom(c,a,b)},_decompressWorker:function(){return this._data instanceof g?this._data.getContentWorker():this._data instanceof h?this._data:new e(this._data)}};for(var j=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],k=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},l=0;l<j.length;l++)i.prototype[j[l]]=k;b.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(a,b,c){a("../modules/web.immediate"),b.exports=a("../modules/_core").setImmediate},{"../modules/_core":40,"../modules/web.immediate":56}],37:[function(a,b,c){b.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},{}],38:[function(a,b,c){var d=a("./_is-object");b.exports=function(a){if(!d(a))throw TypeError(a+" is not an object!");return a}},{"./_is-object":51}],39:[function(a,b,c){var d={}.toString;b.exports=function(a){return d.call(a).slice(8,-1)}},{}],40:[function(a,b,c){var d=b.exports={version:"2.3.0"};"number"==typeof __e&&(__e=d)},{}],41:[function(a,b,c){var d=a("./_a-function");b.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},{"./_a-function":37}],42:[function(a,b,c){b.exports=!a("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{"./_fails":45}],43:[function(a,b,c){var d=a("./_is-object"),e=a("./_global").document,f=d(e)&&d(e.createElement);b.exports=function(a){return f?e.createElement(a):{}}},{"./_global":46,"./_is-object":51}],44:[function(a,b,c){var d=a("./_global"),e=a("./_core"),f=a("./_ctx"),g=a("./_hide"),h="prototype",i=function(a,b,c){var j,k,l,m=a&i.F,n=a&i.G,o=a&i.S,p=a&i.P,q=a&i.B,r=a&i.W,s=n?e:e[b]||(e[b]={}),t=s[h],u=n?d:o?d[b]:(d[b]||{})[h];n&&(c=b);for(j in c)k=!m&&u&&void 0!==u[j],k&&j in s||(l=k?u[j]:c[j],s[j]=n&&"function"!=typeof u[j]?c[j]:q&&k?f(l,d):r&&u[j]==l?function(a){var b=function(b,c,d){if(this instanceof a){switch(arguments.length){case 0:return new a;case 1:return new a(b);case 2:return new a(b,c)}return new a(b,c,d)}return a.apply(this,arguments)};return b[h]=a[h],b}(l):p&&"function"==typeof l?f(Function.call,l):l,p&&((s.virtual||(s.virtual={}))[j]=l,a&i.R&&t&&!t[j]&&g(t,j,l)))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,i.U=64,i.R=128,b.exports=i},{"./_core":40,"./_ctx":41,"./_global":46,"./_hide":47}],45:[function(a,b,c){b.exports=function(a){try{return!!a()}catch(b){return!0}}},{}],46:[function(a,b,c){var d=b.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=d)},{}],47:[function(a,b,c){var d=a("./_object-dp"),e=a("./_property-desc");b.exports=a("./_descriptors")?function(a,b,c){return d.f(a,b,e(1,c))}:function(a,b,c){return a[b]=c,a}},{"./_descriptors":42,"./_object-dp":52,"./_property-desc":53}],48:[function(a,b,c){b.exports=a("./_global").document&&document.documentElement},{"./_global":46}],49:[function(a,b,c){b.exports=!a("./_descriptors")&&!a("./_fails")(function(){return 7!=Object.defineProperty(a("./_dom-create")("div"),"a",{get:function(){return 7}}).a})},{"./_descriptors":42,"./_dom-create":43,"./_fails":45}],50:[function(a,b,c){b.exports=function(a,b,c){var d=void 0===c;switch(b.length){case 0:return d?a():a.call(c);case 1:return d?a(b[0]):a.call(c,b[0]);case 2:return d?a(b[0],b[1]):a.call(c,b[0],b[1]);case 3:return d?a(b[0],b[1],b[2]):a.call(c,b[0],b[1],b[2]);case 4:return d?a(b[0],b[1],b[2],b[3]):a.call(c,b[0],b[1],b[2],b[3])}return a.apply(c,b)}},{}],51:[function(a,b,c){b.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},{}],52:[function(a,b,c){var d=a("./_an-object"),e=a("./_ie8-dom-define"),f=a("./_to-primitive"),g=Object.defineProperty;c.f=a("./_descriptors")?Object.defineProperty:function(a,b,c){if(d(a),b=f(b,!0),d(c),e)try{return g(a,b,c)}catch(h){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(a[b]=c.value),a}},{"./_an-object":38,"./_descriptors":42,"./_ie8-dom-define":49,"./_to-primitive":55}],53:[function(a,b,c){b.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},{}],54:[function(a,b,c){var d,e,f,g=a("./_ctx"),h=a("./_invoke"),i=a("./_html"),j=a("./_dom-create"),k=a("./_global"),l=k.process,m=k.setImmediate,n=k.clearImmediate,o=k.MessageChannel,p=0,q={},r="onreadystatechange",s=function(){var a=+this;if(q.hasOwnProperty(a)){var b=q[a];delete q[a],b()}},t=function(a){s.call(a.data)};m&&n||(m=function(a){for(var b=[],c=1;arguments.length>c;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==a("./_cof")(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(e=new o,f=e.port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),b.exports={set:m,clear:n}},{"./_cof":39,"./_ctx":41,"./_dom-create":43,"./_global":46,"./_html":48,"./_invoke":50}],55:[function(a,b,c){var d=a("./_is-object");b.exports=function(a,b){if(!d(a))return a;var c,e;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;if("function"==typeof(c=a.valueOf)&&!d(e=c.call(a)))return e;if(!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},{"./_is-object":51}],56:[function(a,b,c){var d=a("./_export"),e=a("./_task");d(d.G+d.B,{setImmediate:e.set,clearImmediate:e.clear})},{"./_export":44,"./_task":54}],57:[function(a,b,c){(function(a){"use strict";function c(){k=!0;for(var a,b,c=l.length;c;){for(b=l,l=[],a=-1;++a<c;)b[a]();c=l.length}k=!1}function d(a){1!==l.push(a)||k||e()}var e,f=a.MutationObserver||a.WebKitMutationObserver;if(f){var g=0,h=new f(c),i=a.document.createTextNode("");h.observe(i,{characterData:!0}),e=function(){i.data=g=++g%2}}else if(a.setImmediate||"undefined"==typeof a.MessageChannel)e="document"in a&&"onreadystatechange"in a.document.createElement("script")?function(){var b=a.document.createElement("script");b.onreadystatechange=function(){c(),b.onreadystatechange=null,b.parentNode.removeChild(b),b=null},a.document.documentElement.appendChild(b)}:function(){setTimeout(c,0)};else{var j=new a.MessageChannel;j.port1.onmessage=c,e=function(){j.port2.postMessage(0)}}var k,l=[];b.exports=d}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],58:[function(a,b,c){"use strict";function d(){}function e(a){if("function"!=typeof a)throw new TypeError("resolver must be a function");this.state=s,this.queue=[],this.outcome=void 0,a!==d&&i(this,a)}function f(a,b,c){this.promise=a,"function"==typeof b&&(this.onFulfilled=b,this.callFulfilled=this.otherCallFulfilled),"function"==typeof c&&(this.onRejected=c,this.callRejected=this.otherCallRejected)}function g(a,b,c){o(function(){var d;try{d=b(c)}catch(e){return p.reject(a,e)}d===a?p.reject(a,new TypeError("Cannot resolve promise with itself")):p.resolve(a,d)})}function h(a){var b=a&&a.then;if(a&&("object"==typeof a||"function"==typeof a)&&"function"==typeof b)return function(){b.apply(a,arguments)}}function i(a,b){function c(b){f||(f=!0,p.reject(a,b))}function d(b){f||(f=!0,p.resolve(a,b))}function e(){b(d,c)}var f=!1,g=j(e);"error"===g.status&&c(g.value)}function j(a,b){var c={};try{c.value=a(b),c.status="success"}catch(d){c.status="error",c.value=d}return c}function k(a){return a instanceof this?a:p.resolve(new this(d),a)}function l(a){var b=new this(d);return p.reject(b,a)}function m(a){function b(a,b){function d(a){g[b]=a,++h!==e||f||(f=!0,p.resolve(j,g))}c.resolve(a).then(d,function(a){f||(f=!0,p.reject(j,a))})}var c=this;if("[object Array]"!==Object.prototype.toString.call(a))return this.reject(new TypeError("must be an array"));var e=a.length,f=!1;if(!e)return this.resolve([]);for(var g=new Array(e),h=0,i=-1,j=new this(d);++i<e;)b(a[i],i);return j}function n(a){function b(a){c.resolve(a).then(function(a){f||(f=!0,p.resolve(h,a))},function(a){f||(f=!0,p.reject(h,a))})}var c=this;if("[object Array]"!==Object.prototype.toString.call(a))return this.reject(new TypeError("must be an array"));var e=a.length,f=!1;if(!e)return this.resolve([]);for(var g=-1,h=new this(d);++g<e;)b(a[g]);return h}var o=a("immediate"),p={},q=["REJECTED"],r=["FULFILLED"],s=["PENDING"];b.exports=e,e.prototype["catch"]=function(a){return this.then(null,a)},e.prototype.then=function(a,b){if("function"!=typeof a&&this.state===r||"function"!=typeof b&&this.state===q)return this;var c=new this.constructor(d);if(this.state!==s){var e=this.state===r?a:b;g(c,e,this.outcome)}else this.queue.push(new f(c,a,b));return c},f.prototype.callFulfilled=function(a){p.resolve(this.promise,a)},f.prototype.otherCallFulfilled=function(a){g(this.promise,this.onFulfilled,a)},f.prototype.callRejected=function(a){p.reject(this.promise,a)},f.prototype.otherCallRejected=function(a){g(this.promise,this.onRejected,a)},p.resolve=function(a,b){var c=j(h,b);if("error"===c.status)return p.reject(a,c.value);var d=c.value;if(d)i(a,d);else{a.state=r,a.outcome=b;for(var e=-1,f=a.queue.length;++e<f;)a.queue[e].callFulfilled(b)}return a},p.reject=function(a,b){a.state=q,a.outcome=b;for(var c=-1,d=a.queue.length;++c<d;)a.queue[c].callRejected(b);return a},e.resolve=k,e.reject=l,e.all=m,e.race=n},{immediate:57}],59:[function(a,b,c){"use strict";var d=a("./lib/utils/common").assign,e=a("./lib/deflate"),f=a("./lib/inflate"),g=a("./lib/zlib/constants"),h={};d(h,e,f,g),b.exports=h},{"./lib/deflate":60,"./lib/inflate":61,"./lib/utils/common":62,"./lib/zlib/constants":65}],60:[function(a,b,c){"use strict";function d(a){if(!(this instanceof d))return new d(a);this.options=i.assign({level:s,method:u,chunkSize:16384,windowBits:15,memLevel:8,strategy:t,to:""},a||{});var b=this.options;b.raw&&b.windowBits>0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=h.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==p)throw new Error(k[c]);if(b.header&&h.deflateSetHeader(this.strm,b.header),b.dictionary){var e;if(e="string"==typeof b.dictionary?j.string2buf(b.dictionary):"[object ArrayBuffer]"===m.call(b.dictionary)?new Uint8Array(b.dictionary):b.dictionary,c=h.deflateSetDictionary(this.strm,e),c!==p)throw new Error(k[c]);this._dict_set=!0}}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}function g(a,b){return b=b||{},b.gzip=!0,e(a,b)}var h=a("./zlib/deflate"),i=a("./utils/common"),j=a("./utils/strings"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=Object.prototype.toString,n=0,o=4,p=0,q=1,r=2,s=-1,t=0,u=8;d.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?o:n,"string"==typeof a?e.input=j.string2buf(a):"[object ArrayBuffer]"===m.call(a)?e.input=new Uint8Array(a):e.input=a,e.next_in=0,e.avail_in=e.input.length;do{if(0===e.avail_out&&(e.output=new i.Buf8(f),e.next_out=0,e.avail_out=f),c=h.deflate(e,d),c!==q&&c!==p)return this.onEnd(c),this.ended=!0,!1;0!==e.avail_out&&(0!==e.avail_in||d!==o&&d!==r)||("string"===this.options.to?this.onData(j.buf2binstring(i.shrinkBuf(e.output,e.next_out))):this.onData(i.shrinkBuf(e.output,e.next_out)))}while((e.avail_in>0||0===e.avail_out)&&c!==q);return d===o?(c=h.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===p):d!==r||(this.onEnd(p),e.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===p&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=d,c.deflate=e,c.deflateRaw=f,c.gzip=g},{"./utils/common":62,"./utils/strings":63,"./zlib/deflate":67,"./zlib/messages":72,"./zlib/zstream":74}],61:[function(a,b,c){"use strict";function d(a){if(!(this instanceof d))return new d(a);this.options=h.assign({chunkSize:16384,windowBits:0,to:""},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=g.inflateInit2(this.strm,b.windowBits);if(c!==j.Z_OK)throw new Error(k[c]);this.header=new m,g.inflateGetHeader(this.strm,this.header)}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}var g=a("./zlib/inflate"),h=a("./utils/common"),i=a("./utils/strings"),j=a("./zlib/constants"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=a("./zlib/gzheader"),n=Object.prototype.toString;d.prototype.push=function(a,b){var c,d,e,f,k,l,m=this.strm,o=this.options.chunkSize,p=this.options.dictionary,q=!1;if(this.ended)return!1;d=b===~~b?b:b===!0?j.Z_FINISH:j.Z_NO_FLUSH,"string"==typeof a?m.input=i.binstring2buf(a):"[object ArrayBuffer]"===n.call(a)?m.input=new Uint8Array(a):m.input=a,m.next_in=0,m.avail_in=m.input.length;do{if(0===m.avail_out&&(m.output=new h.Buf8(o),m.next_out=0,m.avail_out=o),c=g.inflate(m,j.Z_NO_FLUSH),c===j.Z_NEED_DICT&&p&&(l="string"==typeof p?i.string2buf(p):"[object ArrayBuffer]"===n.call(p)?new Uint8Array(p):p,c=g.inflateSetDictionary(this.strm,l)),c===j.Z_BUF_ERROR&&q===!0&&(c=j.Z_OK,q=!1),c!==j.Z_STREAM_END&&c!==j.Z_OK)return this.onEnd(c),this.ended=!0,!1;m.next_out&&(0!==m.avail_out&&c!==j.Z_STREAM_END&&(0!==m.avail_in||d!==j.Z_FINISH&&d!==j.Z_SYNC_FLUSH)||("string"===this.options.to?(e=i.utf8border(m.output,m.next_out),f=m.next_out-e,k=i.buf2string(m.output,e),m.next_out=f,m.avail_out=o-f,f&&h.arraySet(m.output,m.output,e,f,0),this.onData(k)):this.onData(h.shrinkBuf(m.output,m.next_out)))),0===m.avail_in&&0===m.avail_out&&(q=!0)}while((m.avail_in>0||0===m.avail_out)&&c!==j.Z_STREAM_END);return c===j.Z_STREAM_END&&(d=j.Z_FINISH),d===j.Z_FINISH?(c=g.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===j.Z_OK):d!==j.Z_SYNC_FLUSH||(this.onEnd(j.Z_OK),m.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===j.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=d,c.inflate=e,c.inflateRaw=f,c.ungzip=e},{"./utils/common":62,"./utils/strings":63,"./zlib/constants":65,"./zlib/gzheader":68,"./zlib/inflate":70,"./zlib/messages":72,"./zlib/zstream":74}],62:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray&&a.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;b<c;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;b<c;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],63:[function(a,b,c){"use strict";function d(a,b){if(b<65537&&(a.subarray&&g||!a.subarray&&f))return String.fromCharCode.apply(null,e.shrinkBuf(a,b));for(var c="",d=0;d<b;d++)c+=String.fromCharCode(a[d]);return c}var e=a("./common"),f=!0,g=!0;try{String.fromCharCode.apply(null,[0])}catch(h){f=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(h){g=!1}for(var i=new e.Buf8(256),j=0;j<256;j++)i[j]=j>=252?6:j>=248?5:j>=240?4:j>=224?3:j>=192?2:1;i[254]=i[254]=1,c.string2buf=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;f<h;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=new e.Buf8(i),g=0,f=0;g<i;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),c<128?b[g++]=c:c<2048?(b[g++]=192|c>>>6,b[g++]=128|63&c):c<65536?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},c.buf2binstring=function(a){return d(a,a.length)},c.binstring2buf=function(a){for(var b=new e.Buf8(a.length),c=0,d=b.length;c<d;c++)b[c]=a.charCodeAt(c);return b},c.buf2string=function(a,b){var c,e,f,g,h=b||a.length,j=new Array(2*h);for(e=0,c=0;c<h;)if(f=a[c++],f<128)j[e++]=f;else if(g=i[f],g>4)j[e++]=65533,c+=g-1;else{for(f&=2===g?31:3===g?15:7;g>1&&c<h;)f=f<<6|63&a[c++],g--;g>1?j[e++]=65533:f<65536?j[e++]=f:(f-=65536,j[e++]=55296|f>>10&1023,j[e++]=56320|1023&f)}return d(j,e)},c.utf8border=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+i[a[c]]>b?c:b}},{"./common":62}],64:[function(a,b,c){"use strict";function d(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0;
}b.exports=d},{}],65:[function(a,b,c){"use strict";b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],66:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=f,g=d+c;a^=-1;for(var h=d;h<g;h++)a=a>>>8^e[255&(a^b[h])];return a^-1}var f=d();b.exports=e},{}],67:[function(a,b,c){"use strict";function d(a,b){return a.msg=I[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b>=0;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(E.arraySet(a.output,b.pending_buf,b.pending_out,c,a.next_out),a.next_out+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){F._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,E.arraySet(b,a.input,a.next_in,e,c),1===a.state.wrap?a.adler=G(a.adler,b,e,c):2===a.state.wrap&&(a.adler=H(a.adler,b,e,c)),a.next_in+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-la?a.strstart-(a.w_size-la):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+ka,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&f<m);if(d=ka-(m-f),f=m-ka,d>g){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-la)){E.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=ja)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+1])&a.hash_mask;a.insert&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+ja-1])&a.hash_mask,a.prev[f&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=f,f++,a.insert--,!(a.lookahead+a.insert<ja)););}while(a.lookahead<la&&0!==a.strm.avail_in)}function n(a,b){var c=65535;for(c>a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===J)return ua;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return ua;if(a.strstart-a.block_start>=a.w_size-la&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?ua:ua}function o(a,b){for(var c,d;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),0!==c&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c)),a.match_length>=ja)if(d=F._tr_tally(a,a.strstart-a.match_start,a.match_length-ja),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=ja){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart;while(0!==--a.match_length);a.strstart++}else a.strstart+=a.match_length,a.match_length=0,a.ins_h=a.window[a.strstart],a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+1])&a.hash_mask;else d=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++;if(d&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function p(a,b){for(var c,d,e;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),a.prev_length=a.match_length,a.prev_match=a.match_start,a.match_length=ja-1,0!==c&&a.prev_length<a.max_lazy_match&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c),a.match_length<=5&&(a.strategy===U||a.match_length===ja&&a.strstart-a.match_start>4096)&&(a.match_length=ja-1)),a.prev_length>=ja&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-ja,d=F._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-ja),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart);while(0!==--a.prev_length);if(a.match_available=0,a.match_length=ja-1,a.strstart++,d&&(h(a,!1),0===a.strm.avail_out))return ua}else if(a.match_available){if(d=F._tr_tally(a,0,a.window[a.strstart-1]),d&&h(a,!1),a.strstart++,a.lookahead--,0===a.strm.avail_out)return ua}else a.match_available=1,a.strstart++,a.lookahead--}return a.match_available&&(d=F._tr_tally(a,0,a.window[a.strstart-1]),a.match_available=0),a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function q(a,b){for(var c,d,e,f,g=a.window;;){if(a.lookahead<=ka){if(m(a),a.lookahead<=ka&&b===J)return ua;if(0===a.lookahead)break}if(a.match_length=0,a.lookahead>=ja&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+ka;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&e<f);a.match_length=ka-(f-e),a.match_length>a.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=ja?(c=F._tr_tally(a,1,a.match_length-ja),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===J)return ua;break}if(a.match_length=0,c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function s(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e}function t(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=D[a.level].max_lazy,a.good_match=D[a.level].good_length,a.nice_match=D[a.level].nice_length,a.max_chain_length=D[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=ja-1,a.match_available=0,a.ins_h=0}function u(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new E.Buf16(2*ha),this.dyn_dtree=new E.Buf16(2*(2*fa+1)),this.bl_tree=new E.Buf16(2*(2*ga+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new E.Buf16(ia+1),this.heap=new E.Buf16(2*ea+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new E.Buf16(2*ea+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function v(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=Z,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?na:sa,a.adler=2===b.wrap?0:1,b.last_flush=J,F._tr_init(b),O):d(a,Q)}function w(a){var b=v(a);return b===O&&t(a.state),b}function x(a,b){return a&&a.state?2!==a.state.wrap?Q:(a.state.gzhead=b,O):Q}function y(a,b,c,e,f,g){if(!a)return Q;var h=1;if(b===T&&(b=6),e<0?(h=0,e=-e):e>15&&(h=2,e-=16),f<1||f>_||c!==$||e<8||e>15||b<0||b>9||g<0||g>X)return d(a,Q);8===e&&(e=9);var i=new u;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1<<i.w_bits,i.w_mask=i.w_size-1,i.hash_bits=f+7,i.hash_size=1<<i.hash_bits,i.hash_mask=i.hash_size-1,i.hash_shift=~~((i.hash_bits+ja-1)/ja),i.window=new E.Buf8(2*i.w_size),i.head=new E.Buf16(i.hash_size),i.prev=new E.Buf16(i.w_size),i.lit_bufsize=1<<f+6,i.pending_buf_size=4*i.lit_bufsize,i.pending_buf=new E.Buf8(i.pending_buf_size),i.d_buf=1*i.lit_bufsize,i.l_buf=3*i.lit_bufsize,i.level=b,i.strategy=g,i.method=c,w(a)}function z(a,b){return y(a,b,$,aa,ba,Y)}function A(a,b){var c,h,k,l;if(!a||!a.state||b>N||b<0)return a?d(a,Q):Q;if(h=a.state,!a.output||!a.input&&0!==a.avail_in||h.status===ta&&b!==M)return d(a,0===a.avail_out?S:Q);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===na)if(2===h.wrap)a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead?(i(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),i(h,255&h.gzhead.time),i(h,h.gzhead.time>>8&255),i(h,h.gzhead.time>>16&255),i(h,h.gzhead.time>>24&255),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(i(h,255&h.gzhead.extra.length),i(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(a.adler=H(a.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=oa):(i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,ya),h.status=sa);else{var m=$+(h.w_bits-8<<4)<<8,n=-1;n=h.strategy>=V||h.level<2?0:h.level<6?1:6===h.level?2:3,m|=n<<6,0!==h.strstart&&(m|=ma),m+=31-m%31,h.status=sa,j(h,m),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(h.status===oa)if(h.gzhead.extra){for(k=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending!==h.pending_buf_size));)i(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=pa)}else h.status=pa;if(h.status===pa)if(h.gzhead.name){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.name.length?255&h.gzhead.name.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.gzindex=0,h.status=qa)}else h.status=qa;if(h.status===qa)if(h.gzhead.comment){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.comment.length?255&h.gzhead.comment.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.status=ra)}else h.status=ra;if(h.status===ra&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&g(a),h.pending+2<=h.pending_buf_size&&(i(h,255&a.adler),i(h,a.adler>>8&255),a.adler=0,h.status=sa)):h.status=sa),0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,O}else if(0===a.avail_in&&e(b)<=e(c)&&b!==M)return d(a,S);if(h.status===ta&&0!==a.avail_in)return d(a,S);if(0!==a.avail_in||0!==h.lookahead||b!==J&&h.status!==ta){var o=h.strategy===V?r(h,b):h.strategy===W?q(h,b):D[h.level].func(h,b);if(o!==wa&&o!==xa||(h.status=ta),o===ua||o===wa)return 0===a.avail_out&&(h.last_flush=-1),O;if(o===va&&(b===K?F._tr_align(h):b!==N&&(F._tr_stored_block(h,0,0,!1),b===L&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,O}return b!==M?O:h.wrap<=0?P:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?O:P)}function B(a){var b;return a&&a.state?(b=a.state.status,b!==na&&b!==oa&&b!==pa&&b!==qa&&b!==ra&&b!==sa&&b!==ta?d(a,Q):(a.state=null,b===sa?d(a,R):O)):Q}function C(a,b){var c,d,e,g,h,i,j,k,l=b.length;if(!a||!a.state)return Q;if(c=a.state,g=c.wrap,2===g||1===g&&c.status!==na||c.lookahead)return Q;for(1===g&&(a.adler=G(a.adler,b,l,0)),c.wrap=0,l>=c.w_size&&(0===g&&(f(c.head),c.strstart=0,c.block_start=0,c.insert=0),k=new E.Buf8(c.w_size),E.arraySet(k,b,l-c.w_size,c.w_size,0),b=k,l=c.w_size),h=a.avail_in,i=a.next_in,j=a.input,a.avail_in=l,a.next_in=0,a.input=b,m(c);c.lookahead>=ja;){d=c.strstart,e=c.lookahead-(ja-1);do c.ins_h=(c.ins_h<<c.hash_shift^c.window[d+ja-1])&c.hash_mask,c.prev[d&c.w_mask]=c.head[c.ins_h],c.head[c.ins_h]=d,d++;while(--e);c.strstart=d,c.lookahead=ja-1,m(c)}return c.strstart+=c.lookahead,c.block_start=c.strstart,c.insert=c.lookahead,c.lookahead=0,c.match_length=c.prev_length=ja-1,c.match_available=0,a.next_in=i,a.input=j,a.avail_in=h,c.wrap=g,O}var D,E=a("../utils/common"),F=a("./trees"),G=a("./adler32"),H=a("./crc32"),I=a("./messages"),J=0,K=1,L=3,M=4,N=5,O=0,P=1,Q=-2,R=-3,S=-5,T=-1,U=1,V=2,W=3,X=4,Y=0,Z=2,$=8,_=9,aa=15,ba=8,ca=29,da=256,ea=da+1+ca,fa=30,ga=19,ha=2*ea+1,ia=15,ja=3,ka=258,la=ka+ja+1,ma=32,na=42,oa=69,pa=73,qa=91,ra=103,sa=113,ta=666,ua=1,va=2,wa=3,xa=4,ya=3;D=[new s(0,0,0,0,n),new s(4,4,8,4,o),new s(4,5,16,8,o),new s(4,6,32,32,o),new s(4,4,16,16,p),new s(8,16,32,32,p),new s(8,16,128,128,p),new s(8,32,128,256,p),new s(32,128,258,1024,p),new s(32,258,258,4096,p)],c.deflateInit=z,c.deflateInit2=y,c.deflateReset=w,c.deflateResetKeep=v,c.deflateSetHeader=x,c.deflate=A,c.deflateEnd=B,c.deflateSetDictionary=C,c.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":62,"./adler32":64,"./crc32":66,"./messages":72,"./trees":73}],68:[function(a,b,c){"use strict";function d(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}b.exports=d},{}],69:[function(a,b,c){"use strict";var d=30,e=12;b.exports=function(a,b){var c,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C;c=a.state,f=a.next_in,B=a.input,g=f+(a.avail_in-5),h=a.next_out,C=a.output,i=h-(b-a.avail_out),j=h+(a.avail_out-257),k=c.dmax,l=c.wsize,m=c.whave,n=c.wnext,o=c.window,p=c.hold,q=c.bits,r=c.lencode,s=c.distcode,t=(1<<c.lenbits)-1,u=(1<<c.distbits)-1;a:do{q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=r[p&t];b:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<<w)-1)];continue b}if(32&w){c.mode=e;break a}a.msg="invalid literal/length code",c.mode=d;break a}x=65535&v,w&=15,w&&(q<w&&(p+=B[f++]<<q,q+=8),x+=p&(1<<w)-1,p>>>=w,q-=w),q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=s[p&u];c:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<<w)-1)];continue c}a.msg="invalid distance code",c.mode=d;break a}if(y=65535&v,w&=15,q<w&&(p+=B[f++]<<q,q+=8,q<w&&(p+=B[f++]<<q,q+=8)),y+=p&(1<<w)-1,y>k){a.msg="invalid distance too far back",c.mode=d;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&c.sane){a.msg="invalid distance too far back",c.mode=d;break a}if(z=0,A=o,0===n){if(z+=l-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(n<w){if(z+=l+n-w,w-=n,w<x){x-=w;do C[h++]=o[z++];while(--w);if(z=0,n<x){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(f<g&&h<j);x=q>>3,f-=x,q-=x<<3,p&=(1<<q)-1,a.next_in=f,a.next_out=h,a.avail_in=f<g?5+(g-f):5-(f-g),a.avail_out=h<j?257+(j-h):257-(h-j),c.hold=p,c.bits=q}},{}],70:[function(a,b,c){"use strict";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,a.msg="",b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=b.lendyn=new s.Buf32(pa),b.distcode=b.distdyn=new s.Buf32(qa),b.sane=1,b.back=-1,D):G}function g(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,f(a)):G}function h(a,b){var c,d;return a&&a.state?(d=a.state,b<0?(c=0,b=-b):(c=(b>>4)+1,b<48&&(b&=15)),b&&(b<8||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,g(a))):G}function i(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=h(a,b),c!==D&&(a.state=null),c):G}function j(a){return i(a,sa)}function k(a){if(ta){var b;for(q=new s.Buf32(512),r=new s.Buf32(32),b=0;b<144;)a.lens[b++]=8;for(;b<256;)a.lens[b++]=9;for(;b<280;)a.lens[b++]=7;for(;b<288;)a.lens[b++]=8;for(w(y,a.lens,0,288,q,0,a.work,{bits:9}),b=0;b<32;)a.lens[b++]=5;w(z,a.lens,0,32,r,0,a.work,{bits:5}),ta=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function l(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<<f.wbits,f.wnext=0,f.whave=0,f.window=new s.Buf8(f.wsize)),d>=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave<f.wsize&&(f.whave+=e))),0}function m(a,b){var c,e,f,g,h,i,j,m,n,o,p,q,r,pa,qa,ra,sa,ta,ua,va,wa,xa,ya,za,Aa=0,Ba=new s.Buf8(4),Ca=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!a||!a.state||!a.output||!a.input&&0!==a.avail_in)return G;c=a.state,c.mode===W&&(c.mode=X),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,o=i,p=j,xa=D;a:for(;;)switch(c.mode){case L:if(0===c.wrap){c.mode=X;break}for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(2&c.wrap&&35615===m){c.check=0,Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0),m=0,n=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=!1),!(1&c.wrap)||(((255&m)<<8)+(m>>8))%31){a.msg="incorrect header check",c.mode=ma;break}if((15&m)!==K){a.msg="unknown compression method",c.mode=ma;break}if(m>>>=4,n-=4,wa=(15&m)+8,0===c.wbits)c.wbits=wa;else if(wa>c.wbits){a.msg="invalid window size",c.mode=ma;break}c.dmax=1<<wa,a.adler=c.check=1,c.mode=512&m?U:W,m=0,n=0;break;case M:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.flags=m,(255&c.flags)!==K){a.msg="unknown compression method",c.mode=ma;break}if(57344&c.flags){a.msg="unknown header flags set",c.mode=ma;break}c.head&&(c.head.text=m>>8&1),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=N;case N:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.head&&(c.head.time=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,Ba[2]=m>>>16&255,Ba[3]=m>>>24&255,c.check=u(c.check,Ba,4,0)),m=0,n=0,c.mode=O;case O:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.head&&(c.head.xflags=255&m,c.head.os=m>>8),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=P;case P:if(1024&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length=m,c.head&&(c.head.extra_len=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags&&(q=c.length,q>i&&(q=i),q&&(c.head&&(wa=c.head.extra_len-c.length,c.head.extra||(c.head.extra=new Array(c.head.extra_len)),s.arraySet(c.head.extra,e,g,q,wa)),512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,c.length-=q),c.length))break a;c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.name+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=S;case S:if(4096&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.comment+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.comment=null);c.mode=T;case T:if(512&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(65535&c.check)){a.msg="header crc mismatch",c.mode=ma;break}m=0,n=0}c.head&&(c.head.hcrc=c.flags>>9&1,c.head.done=!0),a.adler=c.check=0,c.mode=W;break;case U:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}a.adler=c.check=d(m),m=0,n=0,c.mode=V;case V:if(0===c.havedict)return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,F;a.adler=c.check=1,c.mode=W;case W:if(b===B||b===C)break a;case X:if(c.last){m>>>=7&n,n-=7&n,c.mode=ja;break}for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}switch(c.last=1&m,m>>>=1,n-=1,3&m){case 0:c.mode=Y;break;case 1:if(k(c),c.mode=ca,b===C){m>>>=2,n-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg="invalid block type",c.mode=ma}m>>>=2,n-=2;break;case Y:for(m>>>=7&n,n-=7&n;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if((65535&m)!==(m>>>16^65535)){a.msg="invalid stored block lengths",c.mode=ma;break}if(c.length=65535&m,m=0,n=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(q=c.length){if(q>i&&(q=i),q>j&&(q=j),0===q)break a;s.arraySet(f,e,g,q,h),i-=q,g+=q,j-=q,h+=q,c.length-=q;break}c.mode=W;break;case _:for(;n<14;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.nlen=(31&m)+257,m>>>=5,n-=5,c.ndist=(31&m)+1,m>>>=5,n-=5,c.ncode=(15&m)+4,m>>>=4,n-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=ma;break}c.have=0,c.mode=aa;case aa:for(;c.have<c.ncode;){for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.lens[Ca[c.have++]]=7&m,m>>>=3,n-=3}for(;c.have<19;)c.lens[Ca[c.have++]]=0;if(c.lencode=c.lendyn,c.lenbits=7,ya={bits:c.lenbits},xa=w(x,c.lens,0,19,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid code lengths set",c.mode=ma;break}c.have=0,c.mode=ba;case ba:for(;c.have<c.nlen+c.ndist;){for(;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(sa<16)m>>>=qa,n-=qa,c.lens[c.have++]=sa;else{if(16===sa){for(za=qa+2;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m>>>=qa,n-=qa,0===c.have){a.msg="invalid bit length repeat",c.mode=ma;break}wa=c.lens[c.have-1],q=3+(3&m),m>>>=2,n-=2}else if(17===sa){for(za=qa+3;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=3+(7&m),m>>>=3,n-=3}else{for(za=qa+7;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=11+(127&m),m>>>=7,n-=7}if(c.have+q>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=ma;break}for(;q--;)c.lens[c.have++]=wa}}if(c.mode===ma)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=ma;break}if(c.lenbits=9,ya={bits:c.lenbits},xa=w(y,c.lens,0,c.nlen,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid literal/lengths set",c.mode=ma;break}if(c.distbits=6,c.distcode=c.distdyn,ya={bits:c.distbits},xa=w(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.work,ya),c.distbits=ya.bits,xa){a.msg="invalid distances set",c.mode=ma;break}if(c.mode=ca,b===C)break a;case ca:c.mode=da;case da:if(i>=6&&j>=258){a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,v(a,p),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(ra&&0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.lencode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ia;break}if(32&ra){c.back=-1,c.mode=W;break}if(64&ra){a.msg="invalid literal/length code",c.mode=ma;break}c.extra=15&ra,c.mode=ea;case ea:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fa;case fa:for(;Aa=c.distcode[m&(1<<c.distbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.distcode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg="invalid distance code",c.mode=ma;break}c.offset=sa,c.extra=15&ra,c.mode=ga;case ga:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.offset+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=ma;break}c.mode=ha;case ha:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=ma;break}q>c.wnext?(q-=c.wnext,r=c.wsize-q):r=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,r=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[r++];while(--q);0===c.length&&(c.mode=da);break;case ia:if(0===j)break a;f[h++]=c.length,j--,c.mode=da;break;case ja:if(c.wrap){for(;n<32;){if(0===i)break a;i--,m|=e[g++]<<n,n+=8}if(p-=j,a.total_out+=p,c.total+=p,p&&(a.adler=c.check=c.flags?u(c.check,f,p,h-p):t(c.check,f,p,h-p)),p=j,(c.flags?m:d(m))!==c.check){a.msg="incorrect data check",c.mode=ma;break}m=0,n=0}c.mode=ka;case ka:if(c.wrap&&c.flags){for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(4294967295&c.total)){a.msg="incorrect length check",c.mode=ma;break}m=0,n=0}c.mode=la;case la:xa=E;break a;case ma:xa=H;break a;case na:return I;case oa:default:return G}return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,(c.wsize||p!==a.avail_out&&c.mode<ma&&(c.mode<ja||b!==A))&&l(a,a.output,a.next_out,p-a.avail_out)?(c.mode=na,I):(o-=a.avail_in,p-=a.avail_out,a.total_in+=o,a.total_out+=p,c.total+=p,c.wrap&&p&&(a.adler=c.check=c.flags?u(c.check,f,p,a.next_out-p):t(c.check,f,p,a.next_out-p)),a.data_type=c.bits+(c.last?64:0)+(c.mode===W?128:0)+(c.mode===ca||c.mode===Z?256:0),(0===o&&0===p||b===A)&&xa===D&&(xa=J),xa)}function n(a){if(!a||!a.state)return G;var b=a.state;return b.window&&(b.window=null),a.state=null,D}function o(a,b){var c;return a&&a.state?(c=a.state,0===(2&c.wrap)?G:(c.head=b,b.done=!1,D)):G}function p(a,b){var c,d,e,f=b.length;return a&&a.state?(c=a.state,0!==c.wrap&&c.mode!==V?G:c.mode===V&&(d=1,d=t(d,b,f,0),d!==c.check)?H:(e=l(a,b,f,f))?(c.mode=na,I):(c.havedict=1,D)):G}var q,r,s=a("../utils/common"),t=a("./adler32"),u=a("./crc32"),v=a("./inffast"),w=a("./inftrees"),x=0,y=1,z=2,A=4,B=5,C=6,D=0,E=1,F=2,G=-2,H=-3,I=-4,J=-5,K=8,L=1,M=2,N=3,O=4,P=5,Q=6,R=7,S=8,T=9,U=10,V=11,W=12,X=13,Y=14,Z=15,$=16,_=17,aa=18,ba=19,ca=20,da=21,ea=22,fa=23,ga=24,ha=25,ia=26,ja=27,ka=28,la=29,ma=30,na=31,oa=32,pa=852,qa=592,ra=15,sa=ra,ta=!0;c.inflateReset=g,c.inflateReset2=h,c.inflateResetKeep=f,c.inflateInit=j,c.inflateInit2=i,c.inflate=m,c.inflateEnd=n,c.inflateGetHeader=o,c.inflateSetDictionary=p,c.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":62,"./adler32":64,"./crc32":66,"./inffast":69,"./inftrees":71}],71:[function(a,b,c){"use strict";var d=a("../utils/common"),e=15,f=852,g=592,h=0,i=1,j=2,k=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],l=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],m=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],n=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];b.exports=function(a,b,c,o,p,q,r,s){var t,u,v,w,x,y,z,A,B,C=s.bits,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=null,O=0,P=new d.Buf16(e+1),Q=new d.Buf16(e+1),R=null,S=0;for(D=0;D<=e;D++)P[D]=0;for(E=0;E<o;E++)P[b[c+E]]++;for(H=C,G=e;G>=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;F<G&&0===P[F];F++);for(H<F&&(H=F),K=1,D=1;D<=e;D++)if(K<<=1,K-=P[D],K<0)return-1;if(K>0&&(a===h||1!==G))return-1;for(Q[1]=0,D=1;D<e;D++)Q[D+1]=Q[D]+P[D];for(E=0;E<o;E++)0!==b[c+E]&&(r[Q[b[c+E]]++]=E);if(a===h?(N=R=r,y=19):a===i?(N=k,O-=257,R=l,S-=257,y=256):(N=m,R=n,y=-1),M=0,E=0,D=F,x=q,I=H,J=0,v=-1,L=1<<H,w=L-1,a===i&&L>f||a===j&&L>g)return 1;for(;;){z=D-J,r[E]<y?(A=0,B=r[E]):r[E]>y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<<D-J,u=1<<I,F=u;do u-=t,p[x+(M>>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<<D-1;M&t;)t>>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[c+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<<I;I+J<G&&(K-=P[I+J],!(K<=0));)I++,K<<=1;if(L+=1<<I,a===i&&L>f||a===j&&L>g)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{"../utils/common":62}],72:[function(a,b,c){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],73:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length}function f(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b}function g(a){return a<256?ia[a]:ia[256+(a>>>7)]}function h(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function i(a,b,c){a.bi_valid>X-c?(a.bi_buf|=b<<a.bi_valid&65535,h(a,a.bi_buf),a.bi_buf=b>>X-a.bi_valid,a.bi_valid+=c-X):(a.bi_buf|=b<<a.bi_valid&65535,a.bi_valid+=c)}function j(a,b,c){i(a,c[2*b],c[2*b+1])}function k(a,b){var c=0;do c|=1&a,a>>>=1,c<<=1;while(--b>0);return c>>>1}function l(a){16===a.bi_valid?(h(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function m(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;f<=W;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,
c=a.heap_max+1;c<V;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function n(a,b,c){var d,e,f=new Array(W+1),g=0;for(d=1;d<=W;d++)f[d]=g=g+c[d-1]<<1;for(e=0;e<=b;e++){var h=a[2*e+1];0!==h&&(a[2*e]=k(f[h]++,h))}}function o(){var a,b,c,d,f,g=new Array(W+1);for(c=0,d=0;d<Q-1;d++)for(ka[d]=c,a=0;a<1<<ba[d];a++)ja[c++]=d;for(ja[c-1]=d,f=0,d=0;d<16;d++)for(la[d]=f,a=0;a<1<<ca[d];a++)ia[f++]=d;for(f>>=7;d<T;d++)for(la[d]=f<<7,a=0;a<1<<ca[d]-7;a++)ia[256+f++]=d;for(b=0;b<=W;b++)g[b]=0;for(a=0;a<=143;)ga[2*a+1]=8,a++,g[8]++;for(;a<=255;)ga[2*a+1]=9,a++,g[9]++;for(;a<=279;)ga[2*a+1]=7,a++,g[7]++;for(;a<=287;)ga[2*a+1]=8,a++,g[8]++;for(n(ga,S+1,g),a=0;a<T;a++)ha[2*a+1]=5,ha[2*a]=k(a,5);ma=new e(ga,ba,R+1,S,W),na=new e(ha,ca,0,T,W),oa=new e(new Array(0),da,0,U,Y)}function p(a){var b;for(b=0;b<S;b++)a.dyn_ltree[2*b]=0;for(b=0;b<T;b++)a.dyn_dtree[2*b]=0;for(b=0;b<U;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*Z]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function q(a){a.bi_valid>8?h(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function r(a,b,c,d){q(a),d&&(h(a,c),h(a,~c)),G.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function s(a,b,c,d){var e=2*b,f=2*c;return a[e]<a[f]||a[e]===a[f]&&d[b]<=d[c]}function t(a,b,c){for(var d=a.heap[c],e=c<<1;e<=a.heap_len&&(e<a.heap_len&&s(b,a.heap[e+1],a.heap[e],a.depth)&&e++,!s(b,d,a.heap[e],a.depth));)a.heap[c]=a.heap[e],c=e,e<<=1;a.heap[c]=d}function u(a,b,c){var d,e,f,h,k=0;if(0!==a.last_lit)do d=a.pending_buf[a.d_buf+2*k]<<8|a.pending_buf[a.d_buf+2*k+1],e=a.pending_buf[a.l_buf+k],k++,0===d?j(a,e,b):(f=ja[e],j(a,f+R+1,b),h=ba[f],0!==h&&(e-=ka[f],i(a,e,h)),d--,f=g(d),j(a,f,c),h=ca[f],0!==h&&(d-=la[f],i(a,d,h)));while(k<a.last_lit);j(a,Z,b)}function v(a,b){var c,d,e,f=b.dyn_tree,g=b.stat_desc.static_tree,h=b.stat_desc.has_stree,i=b.stat_desc.elems,j=-1;for(a.heap_len=0,a.heap_max=V,c=0;c<i;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=j<2?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)t(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],t(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,t(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],m(a,b),n(f,j,a.bl_count)}function w(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;d<=c;d++)e=g,g=b[2*(d+1)+1],++h<i&&e===g||(h<j?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*$]++):h<=10?a.bl_tree[2*_]++:a.bl_tree[2*aa]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4))}function x(a,b,c){var d,e,f=-1,g=b[1],h=0,k=7,l=4;for(0===g&&(k=138,l=3),d=0;d<=c;d++)if(e=g,g=b[2*(d+1)+1],!(++h<k&&e===g)){if(h<l){do j(a,e,a.bl_tree);while(0!==--h)}else 0!==e?(e!==f&&(j(a,e,a.bl_tree),h--),j(a,$,a.bl_tree),i(a,h-3,2)):h<=10?(j(a,_,a.bl_tree),i(a,h-3,3)):(j(a,aa,a.bl_tree),i(a,h-11,7));h=0,f=e,0===g?(k=138,l=3):e===g?(k=6,l=3):(k=7,l=4)}}function y(a){var b;for(w(a,a.dyn_ltree,a.l_desc.max_code),w(a,a.dyn_dtree,a.d_desc.max_code),v(a,a.bl_desc),b=U-1;b>=3&&0===a.bl_tree[2*ea[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function z(a,b,c,d){var e;for(i(a,b-257,5),i(a,c-1,5),i(a,d-4,4),e=0;e<d;e++)i(a,a.bl_tree[2*ea[e]+1],3);x(a,a.dyn_ltree,b-1),x(a,a.dyn_dtree,c-1)}function A(a){var b,c=4093624447;for(b=0;b<=31;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return I;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return J;for(b=32;b<R;b++)if(0!==a.dyn_ltree[2*b])return J;return I}function B(a){pa||(o(),pa=!0),a.l_desc=new f(a.dyn_ltree,ma),a.d_desc=new f(a.dyn_dtree,na),a.bl_desc=new f(a.bl_tree,oa),a.bi_buf=0,a.bi_valid=0,p(a)}function C(a,b,c,d){i(a,(L<<1)+(d?1:0),3),r(a,b,c,!0)}function D(a){i(a,M<<1,3),j(a,Z,ga),l(a)}function E(a,b,c,d){var e,f,g=0;a.level>0?(a.strm.data_type===K&&(a.strm.data_type=A(a)),v(a,a.l_desc),v(a,a.d_desc),g=y(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,f<=e&&(e=f)):e=f=c+5,c+4<=e&&b!==-1?C(a,b,c,d):a.strategy===H||f===e?(i(a,(M<<1)+(d?1:0),3),u(a,ga,ha)):(i(a,(N<<1)+(d?1:0),3),z(a,a.l_desc.max_code+1,a.d_desc.max_code+1,g+1),u(a,a.dyn_ltree,a.dyn_dtree)),p(a),d&&q(a)}function F(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ja[c]+R+1)]++,a.dyn_dtree[2*g(b)]++),a.last_lit===a.lit_bufsize-1}var G=a("../utils/common"),H=4,I=0,J=1,K=2,L=0,M=1,N=2,O=3,P=258,Q=29,R=256,S=R+1+Q,T=30,U=19,V=2*S+1,W=15,X=16,Y=7,Z=256,$=16,_=17,aa=18,ba=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ca=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],da=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ea=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],fa=512,ga=new Array(2*(S+2));d(ga);var ha=new Array(2*T);d(ha);var ia=new Array(fa);d(ia);var ja=new Array(P-O+1);d(ja);var ka=new Array(Q);d(ka);var la=new Array(T);d(la);var ma,na,oa,pa=!1;c._tr_init=B,c._tr_stored_block=C,c._tr_flush_block=E,c._tr_tally=F,c._tr_align=D},{"../utils/common":62}],74:[function(a,b,c){"use strict";function d(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=d},{}]},{},[10])(10)});
/*!
JSZipUtils - A collection of cross-browser utilities to go along with JSZip.
<http://stuk.github.io/jszip-utils>
(c) 2014 Stuart Knightley, David Duponchel
Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
*/
!function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.JSZipUtils=a():"undefined"!=typeof global?global.JSZipUtils=a():"undefined"!=typeof self&&(self.JSZipUtils=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b){"use strict";function c(){try{return new window.XMLHttpRequest}catch(a){}}function d(){try{return new window.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}}var e={};e._getBinaryFromXHR=function(a){return a.response||a.responseText};var f=window.ActiveXObject?function(){return c()||d()}:c;e.getBinaryContent=function(a,b){try{var c=f();c.open("GET",a,!0),"responseType"in c&&(c.responseType="arraybuffer"),c.overrideMimeType&&c.overrideMimeType("text/plain; charset=x-user-defined"),c.onreadystatechange=function(){var d,f;if(4===c.readyState)if(200===c.status||0===c.status){d=null,f=null;try{d=e._getBinaryFromXHR(c)}catch(g){f=new Error(g)}b(f,d)}else b(new Error("Ajax error for "+a+" : "+this.status+" "+this.statusText),null)},c.send()}catch(d){b(new Error(d),null)}},b.exports=e},{}]},{},[1])(1)});
/*! jQuery UI - v1.12.1 - 2019-03-20
* http://jqueryui.com
* Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-1-7.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/draggable.js, widgets/resizable.js, widgets/button.js, widgets/checkboxradio.js, widgets/controlgroup.js, widgets/dialog.js, widgets/menu.js, widgets/mouse.js, widgets/slider.js, widgets/tooltip.js, effect.js, effects/effect-slide.js
* Copyright jQuery Foundation and other contributors; Licensed MIT */
(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){function e(t){for(var e=t.css("visibility");"inherit"===e;)t=t.parent(),e=t.css("visibility");return"hidden"!==e}t.ui=t.ui||{},t.ui.version="1.12.1";var i=0,s=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},l=e.split(".")[0];e=e.split(".")[1];var h=l+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][h.toLowerCase()]=function(e){return!!t.data(e,h)},t[l]=t[l]||{},n=t[l][e],o=t[l][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:l,widgetName:e,widgetFullName:h}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var i,n,o=s.call(arguments,1),a=0,r=o.length;r>a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),l=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(l=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(l=i&&i.jquery?l.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):l=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var l=s.match(/^([\w:-]*)\s*(.*)$/),h=l[1]+o.eventNamespace,c=l[2];c?n.on(h,c,r):i.on(h,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,l=/top|center|bottom/,h=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,o="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:o?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType,o=!s&&!n;return{element:i,isWindow:s,isDocument:n,offset:o?t(e).offset():{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:i.outerWidth(),height:i.outerHeight()}}},t.fn.position=function(n){if(!n||!n.of)return d.apply(this,arguments);n=t.extend({},n);var u,p,f,g,m,_,v=t(n.of),b=t.position.getWithinInfo(n.within),y=t.position.getScrollInfo(b),w=(n.collision||"flip").split(" "),k={};return _=s(v),v[0].preventDefault&&(n.at="left top"),p=_.width,f=_.height,g=_.offset,m=t.extend({},g),t.each(["my","at"],function(){var t,e,i=(n[this]||"").split(" ");1===i.length&&(i=r.test(i[0])?i.concat(["center"]):l.test(i[0])?["center"].concat(i):["center","center"]),i[0]=r.test(i[0])?i[0]:"center",i[1]=l.test(i[1])?i[1]:"center",t=h.exec(i[0]),e=h.exec(i[1]),k[this]=[t?t[0]:0,e?e[0]:0],n[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===n.at[0]?m.left+=p:"center"===n.at[0]&&(m.left+=p/2),"bottom"===n.at[1]?m.top+=f:"center"===n.at[1]&&(m.top+=f/2),u=e(k.at,p,f),m.left+=u[0],m.top+=u[1],this.each(function(){var s,r,l=t(this),h=l.outerWidth(),c=l.outerHeight(),d=i(this,"marginLeft"),_=i(this,"marginTop"),x=h+d+i(this,"marginRight")+y.width,C=c+_+i(this,"marginBottom")+y.height,D=t.extend({},m),T=e(k.my,l.outerWidth(),l.outerHeight());"right"===n.my[0]?D.left-=h:"center"===n.my[0]&&(D.left-=h/2),"bottom"===n.my[1]?D.top-=c:"center"===n.my[1]&&(D.top-=c/2),D.left+=T[0],D.top+=T[1],s={marginLeft:d,marginTop:_},t.each(["left","top"],function(e,i){t.ui.position[w[e]]&&t.ui.position[w[e]][i](D,{targetWidth:p,targetHeight:f,elemWidth:h,elemHeight:c,collisionPosition:s,collisionWidth:x,collisionHeight:C,offset:[u[0]+T[0],u[1]+T[1]],my:n.my,at:n.at,within:b,elem:l})}),n.using&&(r=function(t){var e=g.left-D.left,i=e+p-h,s=g.top-D.top,r=s+f-c,u={target:{element:v,left:g.left,top:g.top,width:p,height:f},element:{element:l,left:D.left,top:D.top,width:h,height:c},horizontal:0>i?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};h>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),l.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-r-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-r-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,(i>0||u>a(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,l,h=i.nodeName.toLowerCase();return"area"===h?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(h)?(r=!i.disabled,r&&(l=t(i).closest("fieldset")[0],l&&(r=!l.disabled))):r="a"===h?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.ui.safeActiveElement=function(t){var e;try{e=t.activeElement}catch(i){e=t.body}return e||(e=t.body),e.nodeName||(e=t.body),e},t.ui.safeBlur=function(e){e&&"body"!==e.nodeName.toLowerCase()&&t(e).trigger("blur")},t.widget("ui.draggable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this._addClass("ui-draggable"),this._setHandleClassName(),this._mouseInit()},_setOption:function(t,e){this._super(t,e),"handle"===t&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(e){var i=this.options;return this.helper||i.disabled||t(e.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(e),this.handle?(this._blurActiveElement(e),this._blockFrames(i.iframeFix===!0?"iframe":i.iframeFix),!0):!1)},_blockFrames:function(e){this.iframeBlocks=this.document.find(e).map(function(){var e=t(this);return t("<div>").css("position","absolute").appendTo(e.parent()).outerWidth(e.outerWidth()).outerHeight(e.outerHeight()).offset(e.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(e){var i=t.ui.safeActiveElement(this.document[0]),s=t(e.target);s.closest(i).length||t.ui.safeBlur(i)},_mouseStart:function(e){var i=this.options;return this.helper=this._createHelper(e),this._addClass(this.helper,"ui-draggable-dragging"),this._cacheHelperProportions(),t.ui.ddmanager&&(t.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===t(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(e),this.originalPosition=this.position=this._generatePosition(e,!1),this.originalPageX=e.pageX,this.originalPageY=e.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",e)===!1?(this._clear(),!1):(this._cacheHelperProportions(),t.ui.ddmanager&&!i.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this._mouseDrag(e,!0),t.ui.ddmanager&&t.ui.ddmanager.dragStart(this,e),!0)},_refreshOffsets:function(t){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:t.pageX-this.offset.left,top:t.pageY-this.offset.top}},_mouseDrag:function(e,i){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(e,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",e,s)===!1)return this._mouseUp(new t.Event("mouseup",e)),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),!1},_mouseStop:function(e){var i=this,s=!1;return t.ui.ddmanager&&!this.options.dropBehaviour&&(s=t.ui.ddmanager.drop(this,e)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||t.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?t(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",e)!==!1&&i._clear()}):this._trigger("stop",e)!==!1&&this._clear(),!1},_mouseUp:function(e){return this._unblockFrames(),t.ui.ddmanager&&t.ui.ddmanager.dragStop(this,e),this.handleElement.is(e.target)&&this.element.trigger("focus"),t.ui.mouse.prototype._mouseUp.call(this,e)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp(new t.Event("mouseup",{target:this.element[0]})):this._clear(),this},_getHandle:function(e){return this.options.handle?!!t(e.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this._addClass(this.handleElement,"ui-draggable-handle")},_removeHandleClassName:function(){this._removeClass(this.handleElement,"ui-draggable-handle")},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper),n=s?t(i.helper.apply(this.element[0],[e])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return n.parents("body").length||n.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s&&n[0]===this.element[0]&&this._setPositionRelative(),n[0]===this.element[0]||/(fixed|absolute)/.test(n.css("position"))||n.css("position","absolute"),n},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_isRootNode:function(t){return/(html|body)/i.test(t.tagName)||t===this.document[0]},_getParentOffset:function(){var e=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var t=this.element.position(),e=this._isRootNode(this.scrollParent[0]);return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+(e?0:this.scrollParent.scrollTop()),left:t.left-(parseInt(this.helper.css("left"),10)||0)+(e?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options,o=this.document[0];return this.relativeContainer=null,n.containment?"window"===n.containment?(this.containment=[t(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,t(window).scrollLeft()+t(window).width()-this.helperProportions.width-this.margins.left,t(window).scrollTop()+(t(window).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===n.containment?(this.containment=[0,0,t(o).width()-this.helperProportions.width-this.margins.left,(t(o).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):n.containment.constructor===Array?(this.containment=n.containment,void 0):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=t(n.containment),s=i[0],s&&(e=/(scroll|auto)/.test(i.css("overflow")),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(e?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(t,e){e||(e=this.position);var i="absolute"===t?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:e.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:e.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(t,e){var i,s,n,o,a=this.options,r=this._isRootNode(this.scrollParent[0]),l=t.pageX,h=t.pageY;return r&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),e&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,t.pageX-this.offset.click.left<i[0]&&(l=i[0]+this.offset.click.left),t.pageY-this.offset.click.top<i[1]&&(h=i[1]+this.offset.click.top),t.pageX-this.offset.click.left>i[2]&&(l=i[2]+this.offset.click.left),t.pageY-this.offset.click.top>i[3]&&(h=i[3]+this.offset.click.top)),a.grid&&(n=a.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/a.grid[1])*a.grid[1]:this.originalPageY,h=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-a.grid[1]:n+a.grid[1]:n,o=a.grid[0]?this.originalPageX+Math.round((l-this.originalPageX)/a.grid[0])*a.grid[0]:this.originalPageX,l=i?o-this.offset.click.left>=i[0]||o-this.offset.click.left>i[2]?o:o-this.offset.click.left>=i[0]?o-a.grid[0]:o+a.grid[0]:o),"y"===a.axis&&(l=this.originalPageX),"x"===a.axis&&(h=this.originalPageY)),{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top),left:l-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)}
},_clear:function(){this._removeClass(this.helper,"ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_trigger:function(e,i,s){return s=s||this._uiHash(),t.ui.plugin.call(this,e,[i,s,this],!0),/^(drag|start|stop)/.test(e)&&(this.positionAbs=this._convertPositionTo("absolute"),s.offset=this.positionAbs),t.Widget.prototype._trigger.call(this,e,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),t.ui.plugin.add("draggable","connectToSortable",{start:function(e,i,s){var n=t.extend({},i,{item:s.element});s.sortables=[],t(s.options.connectToSortable).each(function(){var i=t(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push(i),i.refreshPositions(),i._trigger("activate",e,n))})},stop:function(e,i,s){var n=t.extend({},i,{item:s.element});s.cancelHelperRemoval=!1,t.each(s.sortables,function(){var t=this;t.isOver?(t.isOver=0,s.cancelHelperRemoval=!0,t.cancelHelperRemoval=!1,t._storedCSS={position:t.placeholder.css("position"),top:t.placeholder.css("top"),left:t.placeholder.css("left")},t._mouseStop(e),t.options.helper=t.options._helper):(t.cancelHelperRemoval=!0,t._trigger("deactivate",e,n))})},drag:function(e,i,s){t.each(s.sortables,function(){var n=!1,o=this;o.positionAbs=s.positionAbs,o.helperProportions=s.helperProportions,o.offset.click=s.offset.click,o._intersectsWith(o.containerCache)&&(n=!0,t.each(s.sortables,function(){return this.positionAbs=s.positionAbs,this.helperProportions=s.helperProportions,this.offset.click=s.offset.click,this!==o&&this._intersectsWith(this.containerCache)&&t.contains(o.element[0],this.element[0])&&(n=!1),n})),n?(o.isOver||(o.isOver=1,s._parent=i.helper.parent(),o.currentItem=i.helper.appendTo(o.element).data("ui-sortable-item",!0),o.options._helper=o.options.helper,o.options.helper=function(){return i.helper[0]},e.target=o.currentItem[0],o._mouseCapture(e,!0),o._mouseStart(e,!0,!0),o.offset.click.top=s.offset.click.top,o.offset.click.left=s.offset.click.left,o.offset.parent.left-=s.offset.parent.left-o.offset.parent.left,o.offset.parent.top-=s.offset.parent.top-o.offset.parent.top,s._trigger("toSortable",e),s.dropped=o.element,t.each(s.sortables,function(){this.refreshPositions()}),s.currentItem=s.element,o.fromOutside=s),o.currentItem&&(o._mouseDrag(e),i.position=o.position)):o.isOver&&(o.isOver=0,o.cancelHelperRemoval=!0,o.options._revert=o.options.revert,o.options.revert=!1,o._trigger("out",e,o._uiHash(o)),o._mouseStop(e,!0),o.options.revert=o.options._revert,o.options.helper=o.options._helper,o.placeholder&&o.placeholder.remove(),i.helper.appendTo(s._parent),s._refreshOffsets(e),i.position=s._generatePosition(e,!0),s._trigger("fromSortable",e),s.dropped=!1,t.each(s.sortables,function(){this.refreshPositions()}))})}}),t.ui.plugin.add("draggable","cursor",{start:function(e,i,s){var n=t("body"),o=s.options;n.css("cursor")&&(o._cursor=n.css("cursor")),n.css("cursor",o.cursor)},stop:function(e,i,s){var n=s.options;n._cursor&&t("body").css("cursor",n._cursor)}}),t.ui.plugin.add("draggable","opacity",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("opacity")&&(o._opacity=n.css("opacity")),n.css("opacity",o.opacity)},stop:function(e,i,s){var n=s.options;n._opacity&&t(i.helper).css("opacity",n._opacity)}}),t.ui.plugin.add("draggable","scroll",{start:function(t,e,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(e,i,s){var n=s.options,o=!1,a=s.scrollParentNotHidden[0],r=s.document[0];a!==r&&"HTML"!==a.tagName?(n.axis&&"x"===n.axis||(s.overflowOffset.top+a.offsetHeight-e.pageY<n.scrollSensitivity?a.scrollTop=o=a.scrollTop+n.scrollSpeed:e.pageY-s.overflowOffset.top<n.scrollSensitivity&&(a.scrollTop=o=a.scrollTop-n.scrollSpeed)),n.axis&&"y"===n.axis||(s.overflowOffset.left+a.offsetWidth-e.pageX<n.scrollSensitivity?a.scrollLeft=o=a.scrollLeft+n.scrollSpeed:e.pageX-s.overflowOffset.left<n.scrollSensitivity&&(a.scrollLeft=o=a.scrollLeft-n.scrollSpeed))):(n.axis&&"x"===n.axis||(e.pageY-t(r).scrollTop()<n.scrollSensitivity?o=t(r).scrollTop(t(r).scrollTop()-n.scrollSpeed):t(window).height()-(e.pageY-t(r).scrollTop())<n.scrollSensitivity&&(o=t(r).scrollTop(t(r).scrollTop()+n.scrollSpeed))),n.axis&&"y"===n.axis||(e.pageX-t(r).scrollLeft()<n.scrollSensitivity?o=t(r).scrollLeft(t(r).scrollLeft()-n.scrollSpeed):t(window).width()-(e.pageX-t(r).scrollLeft())<n.scrollSensitivity&&(o=t(r).scrollLeft(t(r).scrollLeft()+n.scrollSpeed)))),o!==!1&&t.ui.ddmanager&&!n.dropBehaviour&&t.ui.ddmanager.prepareOffsets(s,e)}}),t.ui.plugin.add("draggable","snap",{start:function(e,i,s){var n=s.options;s.snapElements=[],t(n.snap.constructor!==String?n.snap.items||":data(ui-draggable)":n.snap).each(function(){var e=t(this),i=e.offset();this!==s.element[0]&&s.snapElements.push({item:this,width:e.outerWidth(),height:e.outerHeight(),top:i.top,left:i.left})})},drag:function(e,i,s){var n,o,a,r,l,h,c,u,d,p,f=s.options,g=f.snapTolerance,m=i.offset.left,_=m+s.helperProportions.width,v=i.offset.top,b=v+s.helperProportions.height;for(d=s.snapElements.length-1;d>=0;d--)l=s.snapElements[d].left-s.margins.left,h=l+s.snapElements[d].width,c=s.snapElements[d].top-s.margins.top,u=c+s.snapElements[d].height,l-g>_||m>h+g||c-g>b||v>u+g||!t.contains(s.snapElements[d].item.ownerDocument,s.snapElements[d].item)?(s.snapElements[d].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=!1):("inner"!==f.snapMode&&(n=g>=Math.abs(c-b),o=g>=Math.abs(u-v),a=g>=Math.abs(l-_),r=g>=Math.abs(h-m),n&&(i.position.top=s._convertPositionTo("relative",{top:c-s.helperProportions.height,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left)),p=n||o||a||r,"outer"!==f.snapMode&&(n=g>=Math.abs(c-v),o=g>=Math.abs(u-b),a=g>=Math.abs(l-m),r=g>=Math.abs(h-_),n&&(i.position.top=s._convertPositionTo("relative",{top:c,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left)),!s.snapElements[d].snapping&&(n||o||a||r||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=n||o||a||r||p)}}),t.ui.plugin.add("draggable","stack",{start:function(e,i,s){var n,o=s.options,a=t.makeArray(t(o.stack)).sort(function(e,i){return(parseInt(t(e).css("zIndex"),10)||0)-(parseInt(t(i).css("zIndex"),10)||0)});a.length&&(n=parseInt(t(a[0]).css("zIndex"),10)||0,t(a).each(function(e){t(this).css("zIndex",n+e)}),this.css("zIndex",n+a.length))}}),t.ui.plugin.add("draggable","zIndex",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("zIndex")&&(o._zIndex=n.css("zIndex")),n.css("zIndex",o.zIndex)},stop:function(e,i,s){var n=s.options;n._zIndex&&t(i.helper).css("zIndex",n._zIndex)}}),t.ui.draggable,t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("<div>"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,l=this._change[o];return this._updatePrevProperties(),l?(i=l.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,l,h=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,l=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,h.animate||this.element.css(t.extend(a,{top:l,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!h.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,l=this.originalPosition.top+this.originalSize.height,h=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&h&&(t.left=r-e.minWidth),s&&h&&(t.left=r-e.maxWidth),a&&c&&(t.top=l-e.minHeight),n&&c&&(t.top=l-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,l={width:i.size.width-r,height:i.size.height-a},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(l,c&&h?{top:c,left:h}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,l=t(this).resizable("instance"),h=l.options,c=l.element,u=h.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(l.containerElement=t(d),/document/.test(u)||u===document?(l.containerOffset={left:0,top:0},l.containerPosition={left:0,top:0},l.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=l._num(e.css("padding"+s))}),l.containerOffset=e.offset(),l.containerPosition=e.position(),l.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=l.containerOffset,n=l.containerSize.height,o=l.containerSize.width,a=l._hasScroll(d,"left")?d.scrollWidth:o,r=l._hasScroll(d)?d.scrollHeight:n,l.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,l=a.containerOffset,h=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=l),h.left<(a._helper?l.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-l.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?l.left:0),h.top<(a._helper?l.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-l.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?l.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-l.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-l.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),l=a.outerWidth()-e.sizeDiff.width,h=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,l="number"==typeof s.grid?[s.grid,s.grid]:s.grid,h=l[0]||1,c=l[1]||1,u=Math.round((n.width-o.width)/h)*h,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,g=s.maxWidth&&p>s.maxWidth,m=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=l,_&&(p+=h),v&&(f+=c),g&&(p-=h),m&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-h)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-h>0?(i.size.width=p,i.position.left=a.left-u):(p=h-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable;var o=/ui-corner-([a-z]){2,6}/g;t.widget("ui.controlgroup",{version:"1.12.1",defaultElement:"<div>",options:{direction:"horizontal",disabled:null,onlyVisible:!0,items:{button:"input[type=button], input[type=submit], input[type=reset], button, a",controlgroupLabel:".ui-controlgroup-label",checkboxradio:"input[type='checkbox'], input[type='radio']",selectmenu:"select",spinner:".ui-spinner-input"}},_create:function(){this._enhance()},_enhance:function(){this.element.attr("role","toolbar"),this.refresh()},_destroy:function(){this._callChildMethod("destroy"),this.childWidgets.removeData("ui-controlgroup-data"),this.element.removeAttr("role"),this.options.items.controlgroupLabel&&this.element.find(this.options.items.controlgroupLabel).find(".ui-controlgroup-label-contents").contents().unwrap()},_initWidgets:function(){var e=this,i=[];t.each(this.options.items,function(s,n){var o,a={};return n?"controlgroupLabel"===s?(o=e.element.find(n),o.each(function(){var e=t(this);e.children(".ui-controlgroup-label-contents").length||e.contents().wrapAll("<span class='ui-controlgroup-label-contents'></span>")}),e._addClass(o,null,"ui-widget ui-widget-content ui-state-default"),i=i.concat(o.get()),void 0):(t.fn[s]&&(a=e["_"+s+"Options"]?e["_"+s+"Options"]("middle"):{classes:{}},e.element.find(n).each(function(){var n=t(this),o=n[s]("instance"),r=t.widget.extend({},a);if("button"!==s||!n.parent(".ui-spinner").length){o||(o=n[s]()[s]("instance")),o&&(r.classes=e._resolveClassesValues(r.classes,o)),n[s](r);var l=n[s]("widget");t.data(l[0],"ui-controlgroup-data",o?o:n[s]("instance")),i.push(l[0])}})),void 0):void 0}),this.childWidgets=t(t.unique(i)),this._addClass(this.childWidgets,"ui-controlgroup-item")},_callChildMethod:function(e){this.childWidgets.each(function(){var i=t(this),s=i.data("ui-controlgroup-data");s&&s[e]&&s[e]()})},_updateCornerClass:function(t,e){var i="ui-corner-top ui-corner-bottom ui-corner-left ui-corner-right ui-corner-all",s=this._buildSimpleOptions(e,"label").classes.label;this._removeClass(t,null,i),this._addClass(t,null,s)},_buildSimpleOptions:function(t,e){var i="vertical"===this.options.direction,s={classes:{}};return s.classes[e]={middle:"",first:"ui-corner-"+(i?"top":"left"),last:"ui-corner-"+(i?"bottom":"right"),only:"ui-corner-all"}[t],s},_spinnerOptions:function(t){var e=this._buildSimpleOptions(t,"ui-spinner");return e.classes["ui-spinner-up"]="",e.classes["ui-spinner-down"]="",e},_buttonOptions:function(t){return this._buildSimpleOptions(t,"ui-button")},_checkboxradioOptions:function(t){return this._buildSimpleOptions(t,"ui-checkboxradio-label")},_selectmenuOptions:function(t){var e="vertical"===this.options.direction;return{width:e?"auto":!1,classes:{middle:{"ui-selectmenu-button-open":"","ui-selectmenu-button-closed":""},first:{"ui-selectmenu-button-open":"ui-corner-"+(e?"top":"tl"),"ui-selectmenu-button-closed":"ui-corner-"+(e?"top":"left")},last:{"ui-selectmenu-button-open":e?"":"ui-corner-tr","ui-selectmenu-button-closed":"ui-corner-"+(e?"bottom":"right")},only:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"}}[t]}},_resolveClassesValues:function(e,i){var s={};return t.each(e,function(n){var a=i.options.classes[n]||"";a=t.trim(a.replace(o,"")),s[n]=(a+" "+e[n]).replace(/\s+/g," ")}),s},_setOption:function(t,e){return"direction"===t&&this._removeClass("ui-controlgroup-"+this.options.direction),this._super(t,e),"disabled"===t?(this._callChildMethod(e?"disable":"enable"),void 0):(this.refresh(),void 0)},refresh:function(){var e,i=this;this._addClass("ui-controlgroup ui-controlgroup-"+this.options.direction),"horizontal"===this.options.direction&&this._addClass(null,"ui-helper-clearfix"),this._initWidgets(),e=this.childWidgets,this.options.onlyVisible&&(e=e.filter(":visible")),e.length&&(t.each(["first","last"],function(t,s){var n=e[s]().data("ui-controlgroup-data");if(n&&i["_"+n.widgetName+"Options"]){var o=i["_"+n.widgetName+"Options"](1===e.length?"only":s);o.classes=i._resolveClassesValues(o.classes,n),n.element[n.widgetName](o)}else i._updateCornerClass(e[s](),s)}),this._callChildMethod("refresh"))}}),t.widget("ui.checkboxradio",[t.ui.formResetMixin,{version:"1.12.1",options:{disabled:null,label:null,icon:!0,classes:{"ui-checkboxradio-label":"ui-corner-all","ui-checkboxradio-icon":"ui-corner-all"}},_getCreateOptions:function(){var e,i,s=this,n=this._super()||{};return this._readType(),i=this.element.labels(),this.label=t(i[i.length-1]),this.label.length||t.error("No label found for checkboxradio widget"),this.originalLabel="",this.label.contents().not(this.element[0]).each(function(){s.originalLabel+=3===this.nodeType?t(this).text():this.outerHTML}),this.originalLabel&&(n.label=this.originalLabel),e=this.element[0].disabled,null!=e&&(n.disabled=e),n},_create:function(){var t=this.element[0].checked;this._bindFormResetHandler(),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled),this._setOption("disabled",this.options.disabled),this._addClass("ui-checkboxradio","ui-helper-hidden-accessible"),this._addClass(this.label,"ui-checkboxradio-label","ui-button ui-widget"),"radio"===this.type&&this._addClass(this.label,"ui-checkboxradio-radio-label"),this.options.label&&this.options.label!==this.originalLabel?this._updateLabel():this.originalLabel&&(this.options.label=this.originalLabel),this._enhance(),t&&(this._addClass(this.label,"ui-checkboxradio-checked","ui-state-active"),this.icon&&this._addClass(this.icon,null,"ui-state-hover")),this._on({change:"_toggleClasses",focus:function(){this._addClass(this.label,null,"ui-state-focus ui-visual-focus")},blur:function(){this._removeClass(this.label,null,"ui-state-focus ui-visual-focus")}})},_readType:function(){var e=this.element[0].nodeName.toLowerCase();this.type=this.element[0].type,"input"===e&&/radio|checkbox/.test(this.type)||t.error("Can't create checkboxradio on element.nodeName="+e+" and element.type="+this.type)},_enhance:function(){this._updateIcon(this.element[0].checked)},widget:function(){return this.label},_getRadioGroup:function(){var e,i=this.element[0].name,s="input[name='"+t.ui.escapeSelector(i)+"']";return i?(e=this.form.length?t(this.form[0].elements).filter(s):t(s).filter(function(){return 0===t(this).form().length
}),e.not(this.element)):t([])},_toggleClasses:function(){var e=this.element[0].checked;this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",e),this.options.icon&&"checkbox"===this.type&&this._toggleClass(this.icon,null,"ui-icon-check ui-state-checked",e)._toggleClass(this.icon,null,"ui-icon-blank",!e),"radio"===this.type&&this._getRadioGroup().each(function(){var e=t(this).checkboxradio("instance");e&&e._removeClass(e.label,"ui-checkboxradio-checked","ui-state-active")})},_destroy:function(){this._unbindFormResetHandler(),this.icon&&(this.icon.remove(),this.iconSpace.remove())},_setOption:function(t,e){return"label"!==t||e?(this._super(t,e),"disabled"===t?(this._toggleClass(this.label,null,"ui-state-disabled",e),this.element[0].disabled=e,void 0):(this.refresh(),void 0)):void 0},_updateIcon:function(e){var i="ui-icon ui-icon-background ";this.options.icon?(this.icon||(this.icon=t("<span>"),this.iconSpace=t("<span> </span>"),this._addClass(this.iconSpace,"ui-checkboxradio-icon-space")),"checkbox"===this.type?(i+=e?"ui-icon-check ui-state-checked":"ui-icon-blank",this._removeClass(this.icon,null,e?"ui-icon-blank":"ui-icon-check")):i+="ui-icon-blank",this._addClass(this.icon,"ui-checkboxradio-icon",i),e||this._removeClass(this.icon,null,"ui-icon-check ui-state-checked"),this.icon.prependTo(this.label).after(this.iconSpace)):void 0!==this.icon&&(this.icon.remove(),this.iconSpace.remove(),delete this.icon)},_updateLabel:function(){var t=this.label.contents().not(this.element[0]);this.icon&&(t=t.not(this.icon[0])),this.iconSpace&&(t=t.not(this.iconSpace[0])),t.remove(),this.label.append(this.options.label)},refresh:function(){var t=this.element[0].checked,e=this.element[0].disabled;this._updateIcon(t),this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),null!==this.options.label&&this._updateLabel(),e!==this.options.disabled&&this._setOptions({disabled:e})}}]),t.ui.checkboxradio,t.widget("ui.button",{version:"1.12.1",defaultElement:"<button>",options:{classes:{"ui-button":"ui-corner-all"},disabled:null,icon:null,iconPosition:"beginning",label:null,showLabel:!0},_getCreateOptions:function(){var t,e=this._super()||{};return this.isInput=this.element.is("input"),t=this.element[0].disabled,null!=t&&(e.disabled=t),this.originalLabel=this.isInput?this.element.val():this.element.html(),this.originalLabel&&(e.label=this.originalLabel),e},_create:function(){!this.option.showLabel&!this.options.icon&&(this.options.showLabel=!0),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled||!1),this.hasTitle=!!this.element.attr("title"),this.options.label&&this.options.label!==this.originalLabel&&(this.isInput?this.element.val(this.options.label):this.element.html(this.options.label)),this._addClass("ui-button","ui-widget"),this._setOption("disabled",this.options.disabled),this._enhance(),this.element.is("a")&&this._on({keyup:function(e){e.keyCode===t.ui.keyCode.SPACE&&(e.preventDefault(),this.element[0].click?this.element[0].click():this.element.trigger("click"))}})},_enhance:function(){this.element.is("button")||this.element.attr("role","button"),this.options.icon&&(this._updateIcon("icon",this.options.icon),this._updateTooltip())},_updateTooltip:function(){this.title=this.element.attr("title"),this.options.showLabel||this.title||this.element.attr("title",this.options.label)},_updateIcon:function(e,i){var s="iconPosition"!==e,n=s?this.options.iconPosition:i,o="top"===n||"bottom"===n;this.icon?s&&this._removeClass(this.icon,null,this.options.icon):(this.icon=t("<span>"),this._addClass(this.icon,"ui-button-icon","ui-icon"),this.options.showLabel||this._addClass("ui-button-icon-only")),s&&this._addClass(this.icon,null,i),this._attachIcon(n),o?(this._addClass(this.icon,null,"ui-widget-icon-block"),this.iconSpace&&this.iconSpace.remove()):(this.iconSpace||(this.iconSpace=t("<span> </span>"),this._addClass(this.iconSpace,"ui-button-icon-space")),this._removeClass(this.icon,null,"ui-wiget-icon-block"),this._attachIconSpace(n))},_destroy:function(){this.element.removeAttr("role"),this.icon&&this.icon.remove(),this.iconSpace&&this.iconSpace.remove(),this.hasTitle||this.element.removeAttr("title")},_attachIconSpace:function(t){this.icon[/^(?:end|bottom)/.test(t)?"before":"after"](this.iconSpace)},_attachIcon:function(t){this.element[/^(?:end|bottom)/.test(t)?"append":"prepend"](this.icon)},_setOptions:function(t){var e=void 0===t.showLabel?this.options.showLabel:t.showLabel,i=void 0===t.icon?this.options.icon:t.icon;e||i||(t.showLabel=!0),this._super(t)},_setOption:function(t,e){"icon"===t&&(e?this._updateIcon(t,e):this.icon&&(this.icon.remove(),this.iconSpace&&this.iconSpace.remove())),"iconPosition"===t&&this._updateIcon(t,e),"showLabel"===t&&(this._toggleClass("ui-button-icon-only",null,!e),this._updateTooltip()),"label"===t&&(this.isInput?this.element.val(e):(this.element.html(e),this.icon&&(this._attachIcon(this.options.iconPosition),this._attachIconSpace(this.options.iconPosition)))),this._super(t,e),"disabled"===t&&(this._toggleClass(null,"ui-state-disabled",e),this.element[0].disabled=e,e&&this.element.blur())},refresh:function(){var t=this.element.is("input, button")?this.element[0].disabled:this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOptions({disabled:t}),this._updateTooltip()}}),t.uiBackCompat!==!1&&(t.widget("ui.button",t.ui.button,{options:{text:!0,icons:{primary:null,secondary:null}},_create:function(){this.options.showLabel&&!this.options.text&&(this.options.showLabel=this.options.text),!this.options.showLabel&&this.options.text&&(this.options.text=this.options.showLabel),this.options.icon||!this.options.icons.primary&&!this.options.icons.secondary?this.options.icon&&(this.options.icons.primary=this.options.icon):this.options.icons.primary?this.options.icon=this.options.icons.primary:(this.options.icon=this.options.icons.secondary,this.options.iconPosition="end"),this._super()},_setOption:function(t,e){return"text"===t?(this._super("showLabel",e),void 0):("showLabel"===t&&(this.options.text=e),"icon"===t&&(this.options.icons.primary=e),"icons"===t&&(e.primary?(this._super("icon",e.primary),this._super("iconPosition","beginning")):e.secondary&&(this._super("icon",e.secondary),this._super("iconPosition","end"))),this._superApply(arguments),void 0)}}),t.fn.button=function(e){return function(){return!this.length||this.length&&"INPUT"!==this[0].tagName||this.length&&"INPUT"===this[0].tagName&&"checkbox"!==this.attr("type")&&"radio"!==this.attr("type")?e.apply(this,arguments):(t.ui.checkboxradio||t.error("Checkboxradio widget missing"),0===arguments.length?this.checkboxradio({icon:!1}):this.checkboxradio.apply(this,arguments))}}(t.fn.button),t.fn.buttonset=function(){return t.ui.controlgroup||t.error("Controlgroup widget missing"),"option"===arguments[0]&&"items"===arguments[1]&&arguments[2]?this.controlgroup.apply(this,[arguments[0],"items.button",arguments[2]]):"option"===arguments[0]&&"items"===arguments[1]?this.controlgroup.apply(this,[arguments[0],"items.button"]):("object"==typeof arguments[0]&&arguments[0].items&&(arguments[0].items={button:arguments[0].items}),this.controlgroup.apply(this,arguments))}),t.ui.button,t.widget("ui.dialog",{version:"1.12.1",options:{appendTo:"body",autoOpen:!0,buttons:[],classes:{"ui-dialog":"ui-corner-all","ui-dialog-titlebar":"ui-corner-all"},closeOnEscape:!0,closeText:"Close",draggable:!0,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",of:window,collision:"fit",using:function(e){var i=t(this).css(e).offset().top;0>i&&t(this).css("top",e.top-i)}},resizable:!0,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},sizeRelatedOptions:{buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},resizableRelatedOptions:{maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height},this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)},this.originalTitle=this.element.attr("title"),null==this.options.title&&null!=this.originalTitle&&(this.options.title=this.originalTitle),this.options.disabled&&(this.options.disabled=!1),this._createWrapper(),this.element.show().removeAttr("title").appendTo(this.uiDialog),this._addClass("ui-dialog-content","ui-widget-content"),this._createTitlebar(),this._createButtonPane(),this.options.draggable&&t.fn.draggable&&this._makeDraggable(),this.options.resizable&&t.fn.resizable&&this._makeResizable(),this._isOpen=!1,this._trackFocus()},_init:function(){this.options.autoOpen&&this.open()},_appendTo:function(){var e=this.options.appendTo;return e&&(e.jquery||e.nodeType)?t(e):this.document.find(e||"body").eq(0)},_destroy:function(){var t,e=this.originalPosition;this._untrackInstance(),this._destroyOverlay(),this.element.removeUniqueId().css(this.originalCss).detach(),this.uiDialog.remove(),this.originalTitle&&this.element.attr("title",this.originalTitle),t=e.parent.children().eq(e.index),t.length&&t[0]!==this.element[0]?t.before(this.element):e.parent.append(this.element)},widget:function(){return this.uiDialog},disable:t.noop,enable:t.noop,close:function(e){var i=this;this._isOpen&&this._trigger("beforeClose",e)!==!1&&(this._isOpen=!1,this._focusedElement=null,this._destroyOverlay(),this._untrackInstance(),this.opener.filter(":focusable").trigger("focus").length||t.ui.safeBlur(t.ui.safeActiveElement(this.document[0])),this._hide(this.uiDialog,this.options.hide,function(){i._trigger("close",e)}))},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(e,i){var s=!1,n=this.uiDialog.siblings(".ui-front:visible").map(function(){return+t(this).css("z-index")}).get(),o=Math.max.apply(null,n);return o>=+this.uiDialog.css("z-index")&&(this.uiDialog.css("z-index",o+1),s=!0),s&&!i&&this._trigger("focus",e),s},open:function(){var e=this;return this._isOpen?(this._moveToTop()&&this._focusTabbable(),void 0):(this._isOpen=!0,this.opener=t(t.ui.safeActiveElement(this.document[0])),this._size(),this._position(),this._createOverlay(),this._moveToTop(null,!0),this.overlay&&this.overlay.css("z-index",this.uiDialog.css("z-index")-1),this._show(this.uiDialog,this.options.show,function(){e._focusTabbable(),e._trigger("focus")}),this._makeFocusTarget(),this._trigger("open"),void 0)},_focusTabbable:function(){var t=this._focusedElement;t||(t=this.element.find("[autofocus]")),t.length||(t=this.element.find(":tabbable")),t.length||(t=this.uiDialogButtonPane.find(":tabbable")),t.length||(t=this.uiDialogTitlebarClose.filter(":tabbable")),t.length||(t=this.uiDialog),t.eq(0).trigger("focus")},_keepFocus:function(e){function i(){var e=t.ui.safeActiveElement(this.document[0]),i=this.uiDialog[0]===e||t.contains(this.uiDialog[0],e);i||this._focusTabbable()}e.preventDefault(),i.call(this),this._delay(i)},_createWrapper:function(){this.uiDialog=t("<div>").hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo()),this._addClass(this.uiDialog,"ui-dialog","ui-widget ui-widget-content ui-front"),this._on(this.uiDialog,{keydown:function(e){if(this.options.closeOnEscape&&!e.isDefaultPrevented()&&e.keyCode&&e.keyCode===t.ui.keyCode.ESCAPE)return e.preventDefault(),this.close(e),void 0;if(e.keyCode===t.ui.keyCode.TAB&&!e.isDefaultPrevented()){var i=this.uiDialog.find(":tabbable"),s=i.filter(":first"),n=i.filter(":last");e.target!==n[0]&&e.target!==this.uiDialog[0]||e.shiftKey?e.target!==s[0]&&e.target!==this.uiDialog[0]||!e.shiftKey||(this._delay(function(){n.trigger("focus")}),e.preventDefault()):(this._delay(function(){s.trigger("focus")}),e.preventDefault())}},mousedown:function(t){this._moveToTop(t)&&this._focusTabbable()}}),this.element.find("[aria-describedby]").length||this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})},_createTitlebar:function(){var e;this.uiDialogTitlebar=t("<div>"),this._addClass(this.uiDialogTitlebar,"ui-dialog-titlebar","ui-widget-header ui-helper-clearfix"),this._on(this.uiDialogTitlebar,{mousedown:function(e){t(e.target).closest(".ui-dialog-titlebar-close")||this.uiDialog.trigger("focus")}}),this.uiDialogTitlebarClose=t("<button type='button'></button>").button({label:t("<a>").text(this.options.closeText).html(),icon:"ui-icon-closethick",showLabel:!1}).appendTo(this.uiDialogTitlebar),this._addClass(this.uiDialogTitlebarClose,"ui-dialog-titlebar-close"),this._on(this.uiDialogTitlebarClose,{click:function(t){t.preventDefault(),this.close(t)}}),e=t("<span>").uniqueId().prependTo(this.uiDialogTitlebar),this._addClass(e,"ui-dialog-title"),this._title(e),this.uiDialogTitlebar.prependTo(this.uiDialog),this.uiDialog.attr({"aria-labelledby":e.attr("id")})},_title:function(t){this.options.title?t.text(this.options.title):t.html("&#160;")},_createButtonPane:function(){this.uiDialogButtonPane=t("<div>"),this._addClass(this.uiDialogButtonPane,"ui-dialog-buttonpane","ui-widget-content ui-helper-clearfix"),this.uiButtonSet=t("<div>").appendTo(this.uiDialogButtonPane),this._addClass(this.uiButtonSet,"ui-dialog-buttonset"),this._createButtons()},_createButtons:function(){var e=this,i=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),t.isEmptyObject(i)||t.isArray(i)&&!i.length?(this._removeClass(this.uiDialog,"ui-dialog-buttons"),void 0):(t.each(i,function(i,s){var n,o;s=t.isFunction(s)?{click:s,text:i}:s,s=t.extend({type:"button"},s),n=s.click,o={icon:s.icon,iconPosition:s.iconPosition,showLabel:s.showLabel,icons:s.icons,text:s.text},delete s.click,delete s.icon,delete s.iconPosition,delete s.showLabel,delete s.icons,"boolean"==typeof s.text&&delete s.text,t("<button></button>",s).button(o).appendTo(e.uiButtonSet).on("click",function(){n.apply(e.element[0],arguments)})}),this._addClass(this.uiDialog,"ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),void 0)},_makeDraggable:function(){function e(t){return{position:t.position,offset:t.offset}}var i=this,s=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(s,n){i._addClass(t(this),"ui-dialog-dragging"),i._blockFrames(),i._trigger("dragStart",s,e(n))},drag:function(t,s){i._trigger("drag",t,e(s))},stop:function(n,o){var a=o.offset.left-i.document.scrollLeft(),r=o.offset.top-i.document.scrollTop();s.position={my:"left top",at:"left"+(a>=0?"+":"")+a+" "+"top"+(r>=0?"+":"")+r,of:i.window},i._removeClass(t(this),"ui-dialog-dragging"),i._unblockFrames(),i._trigger("dragStop",n,e(o))}})},_makeResizable:function(){function e(t){return{originalPosition:t.originalPosition,originalSize:t.originalSize,position:t.position,size:t.size}}var i=this,s=this.options,n=s.resizable,o=this.uiDialog.css("position"),a="string"==typeof n?n:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:s.maxWidth,maxHeight:s.maxHeight,minWidth:s.minWidth,minHeight:this._minHeight(),handles:a,start:function(s,n){i._addClass(t(this),"ui-dialog-resizing"),i._blockFrames(),i._trigger("resizeStart",s,e(n))},resize:function(t,s){i._trigger("resize",t,e(s))},stop:function(n,o){var a=i.uiDialog.offset(),r=a.left-i.document.scrollLeft(),l=a.top-i.document.scrollTop();s.height=i.uiDialog.height(),s.width=i.uiDialog.width(),s.position={my:"left top",at:"left"+(r>=0?"+":"")+r+" "+"top"+(l>=0?"+":"")+l,of:i.window},i._removeClass(t(this),"ui-dialog-resizing"),i._unblockFrames(),i._trigger("resizeStop",n,e(o))}}).css("position",o)},_trackFocus:function(){this._on(this.widget(),{focusin:function(e){this._makeFocusTarget(),this._focusedElement=t(e.target)}})},_makeFocusTarget:function(){this._untrackInstance(),this._trackingInstances().unshift(this)},_untrackInstance:function(){var e=this._trackingInstances(),i=t.inArray(this,e);-1!==i&&e.splice(i,1)},_trackingInstances:function(){var t=this.document.data("ui-dialog-instances");return t||(t=[],this.document.data("ui-dialog-instances",t)),t},_minHeight:function(){var t=this.options;return"auto"===t.height?t.minHeight:Math.min(t.minHeight,t.height)},_position:function(){var t=this.uiDialog.is(":visible");t||this.uiDialog.show(),this.uiDialog.position(this.options.position),t||this.uiDialog.hide()},_setOptions:function(e){var i=this,s=!1,n={};t.each(e,function(t,e){i._setOption(t,e),t in i.sizeRelatedOptions&&(s=!0),t in i.resizableRelatedOptions&&(n[t]=e)}),s&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",n)},_setOption:function(e,i){var s,n,o=this.uiDialog;"disabled"!==e&&(this._super(e,i),"appendTo"===e&&this.uiDialog.appendTo(this._appendTo()),"buttons"===e&&this._createButtons(),"closeText"===e&&this.uiDialogTitlebarClose.button({label:t("<a>").text(""+this.options.closeText).html()}),"draggable"===e&&(s=o.is(":data(ui-draggable)"),s&&!i&&o.draggable("destroy"),!s&&i&&this._makeDraggable()),"position"===e&&this._position(),"resizable"===e&&(n=o.is(":data(ui-resizable)"),n&&!i&&o.resizable("destroy"),n&&"string"==typeof i&&o.resizable("option","handles",i),n||i===!1||this._makeResizable()),"title"===e&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var t,e,i,s=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),s.minWidth>s.width&&(s.width=s.minWidth),t=this.uiDialog.css({height:"auto",width:s.width}).outerHeight(),e=Math.max(0,s.minHeight-t),i="number"==typeof s.maxHeight?Math.max(0,s.maxHeight-t):"none","auto"===s.height?this.element.css({minHeight:e,maxHeight:i,height:"auto"}):this.element.height(Math.max(0,s.height-t)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var e=t(this);return t("<div>").css({position:"absolute",width:e.outerWidth(),height:e.outerHeight()}).appendTo(e.parent()).offset(e.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(e){return t(e.target).closest(".ui-dialog").length?!0:!!t(e.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var e=!0;this._delay(function(){e=!1}),this.document.data("ui-dialog-overlays")||this._on(this.document,{focusin:function(t){e||this._allowInteraction(t)||(t.preventDefault(),this._trackingInstances()[0]._focusTabbable())}}),this.overlay=t("<div>").appendTo(this._appendTo()),this._addClass(this.overlay,null,"ui-widget-overlay ui-front"),this._on(this.overlay,{mousedown:"_keepFocus"}),this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)}},_destroyOverlay:function(){if(this.options.modal&&this.overlay){var t=this.document.data("ui-dialog-overlays")-1;t?this.document.data("ui-dialog-overlays",t):(this._off(this.document,"focusin"),this.document.removeData("ui-dialog-overlays")),this.overlay.remove(),this.overlay=null}}}),t.uiBackCompat!==!1&&t.widget("ui.dialog",t.ui.dialog,{options:{dialogClass:""},_createWrapper:function(){this._super(),this.uiDialog.addClass(this.options.dialogClass)},_setOption:function(t,e){"dialogClass"===t&&this.uiDialog.removeClass(this.options.dialogClass).addClass(e),this._superApply(arguments)}}),t.ui.dialog,t.widget("ui.menu",{version:"1.12.1",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault()},"click .ui-menu-item":function(e){var i=t(e.target),s=t(t.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(e),e.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(e):!this.element.is(":focus")&&s.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(e){if(!this.previousFilter){var i=t(e.target).closest(".ui-menu-item"),s=t(e.currentTarget);i[0]===s[0]&&(this._removeClass(s.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(e,s))}},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this.element.find(this.options.items).eq(0);e||this.focus(t,i)},blur:function(e){this._delay(function(){var i=!t.contains(this.element[0],t.ui.safeActiveElement(this.document[0]));i&&this.collapseAll(e)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t),this.mouseHandled=!1}})},_destroy:function(){var e=this.element.find(".ui-menu-item").removeAttr("role aria-disabled"),i=e.children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),i.children().each(function(){var e=t(this);e.data("ui-menu-submenu-caret")&&e.remove()})},_keydown:function(e){var i,s,n,o,a=!0;switch(e.keyCode){case t.ui.keyCode.PAGE_UP:this.previousPage(e);break;case t.ui.keyCode.PAGE_DOWN:this.nextPage(e);break;case t.ui.keyCode.HOME:this._move("first","first",e);break;case t.ui.keyCode.END:this._move("last","last",e);break;case t.ui.keyCode.UP:this.previous(e);break;case t.ui.keyCode.DOWN:this.next(e);break;case t.ui.keyCode.LEFT:this.collapse(e);break;case t.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(e);break;case t.ui.keyCode.ENTER:case t.ui.keyCode.SPACE:this._activate(e);break;case t.ui.keyCode.ESCAPE:this.collapse(e);break;default:a=!1,s=this.previousFilter||"",o=!1,n=e.keyCode>=96&&105>=e.keyCode?""+(e.keyCode-96):String.fromCharCode(e.keyCode),clearTimeout(this.filterTimer),n===s?o=!0:n=s+n,i=this._filterMenuItems(n),i=o&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i,i.length||(n=String.fromCharCode(e.keyCode),i=this._filterMenuItems(n)),i.length?(this.focus(e,i),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}a&&e.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var e,i,s,n,o,a=this,r=this.options.icons.submenu,l=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),s=l.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var e=t(this),i=e.prev(),s=t("<span>").data("ui-menu-submenu-caret",!0);a._addClass(s,"ui-menu-icon","ui-icon "+r),i.attr("aria-haspopup","true").prepend(s),e.attr("aria-labelledby",i.attr("id"))}),this._addClass(s,"ui-menu","ui-widget ui-widget-content ui-front"),e=l.add(this.element),i=e.find(this.options.items),i.not(".ui-menu-item").each(function(){var e=t(this);a._isDivider(e)&&a._addClass(e,"ui-menu-divider","ui-widget-content")}),n=i.not(".ui-menu-item, .ui-menu-divider"),o=n.children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(n,"ui-menu-item")._addClass(o,"ui-menu-item-wrapper"),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!t.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){if("icons"===t){var i=this.element.find(".ui-menu-icon");this._removeClass(i,null,this.options.icons.submenu)._addClass(i,null,e.submenu)}this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",t+""),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var i,s,n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),s=this.active.children(".ui-menu-item-wrapper"),this._addClass(s,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),n=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=e.children(".ui-menu"),i.length&&t&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(e){var i,s,n,o,a,r;this._hasScroll()&&(i=parseFloat(t.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(t.css(this.activeMenu[0],"paddingTop"))||0,n=e.offset().top-this.activeMenu.offset().top-i-s,o=this.activeMenu.scrollTop(),a=this.activeMenu.height(),r=e.outerHeight(),0>n?this.activeMenu.scrollTop(o+n):n+r>a&&this.activeMenu.scrollTop(o+n-a+r))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this._removeClass(this.active.children(".ui-menu-item-wrapper"),null,"ui-state-active"),this._trigger("blur",t,{item:this.active}),this.active=null)},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(e){var i=t.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(e.parents(".ui-menu")).hide().attr("aria-hidden","true"),e.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(e,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:t(e&&e.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(e),this._removeClass(s.find(".ui-state-active"),null,"ui-state-active"),this.activeMenu=s},this.delay)},_close:function(t){t||(t=this.active?this.active.parent():this.element),t.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false")},_closeOnDocumentClick:function(e){return!t(e.target).closest(".ui-menu").length},_isDivider:function(t){return!/[^\-\u2014\u2013\s]/.test(t.text())},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,i){var s;this.active&&(s="first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[e]()),this.focus(i,s)},nextPage:function(e){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=t(this),0>i.offset().top-s-n}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(e),void 0)},previousPage:function(e){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-s+n>0}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items).first())),void 0):(this.next(e),void 0)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(e){this.active=this.active||t(e.target).closest(".ui-menu-item");var i={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(e,!0),this._trigger("select",e,i)},_filterMenuItems:function(e){var i=e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),s=RegExp("^"+i,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return s.test(t.trim(t(this).children(".ui-menu-item-wrapper").text()))})}}),t.widget("ui.slider",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"slide",options:{animate:!1,classes:{"ui-slider":"ui-corner-all","ui-slider-handle":"ui-corner-all","ui-slider-range":"ui-corner-all ui-widget-header"},distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this._calculateNewMax(),this._addClass("ui-slider ui-slider-"+this.orientation,"ui-widget ui-widget-content"),this._refresh(),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var e,i,s=this.options,n=this.element.find(".ui-slider-handle"),o="<span tabindex='0'></span>",a=[];for(i=s.values&&s.values.length||1,n.length>i&&(n.slice(i).remove(),n=n.slice(0,i)),e=n.length;i>e;e++)a.push(o);this.handles=n.add(t(a.join("")).appendTo(this.element)),this._addClass(this.handles,"ui-slider-handle","ui-state-default"),this.handle=this.handles.eq(0),this.handles.each(function(e){t(this).data("ui-slider-handle-index",e).attr("tabIndex",0)})},_createRange:function(){var e=this.options;e.range?(e.range===!0&&(e.values?e.values.length&&2!==e.values.length?e.values=[e.values[0],e.values[0]]:t.isArray(e.values)&&(e.values=e.values.slice(0)):e.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?(this._removeClass(this.range,"ui-slider-range-min ui-slider-range-max"),this.range.css({left:"",bottom:""})):(this.range=t("<div>").appendTo(this.element),this._addClass(this.range,"ui-slider-range")),("min"===e.range||"max"===e.range)&&this._addClass(this.range,"ui-slider-range-"+e.range)):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this._mouseDestroy()},_mouseCapture:function(e){var i,s,n,o,a,r,l,h,c=this,u=this.options;return u.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),i={x:e.pageX,y:e.pageY},s=this._normValueFromMouse(i),n=this._valueMax()-this._valueMin()+1,this.handles.each(function(e){var i=Math.abs(s-c.values(e));(n>i||n===i&&(e===c._lastChangedValue||c.values(e)===u.min))&&(n=i,o=t(this),a=e)}),r=this._start(e,a),r===!1?!1:(this._mouseSliding=!0,this._handleIndex=a,this._addClass(o,null,"ui-state-active"),o.trigger("focus"),l=o.offset(),h=!t(e.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=h?{left:0,top:0}:{left:e.pageX-l.left-o.width()/2,top:e.pageY-l.top-o.height()/2-(parseInt(o.css("borderTopWidth"),10)||0)-(parseInt(o.css("borderBottomWidth"),10)||0)+(parseInt(o.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(e,a,s),this._animateOff=!0,!0))
},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},i=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,i),!1},_mouseStop:function(t){return this._removeClass(this.handles,null,"ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,i,s,n,o;return"horizontal"===this.orientation?(e=this.elementSize.width,i=t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,i=t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),s=i/e,s>1&&(s=1),0>s&&(s=0),"vertical"===this.orientation&&(s=1-s),n=this._valueMax()-this._valueMin(),o=this._valueMin()+s*n,this._trimAlignValue(o)},_uiHash:function(t,e,i){var s={handle:this.handles[t],handleIndex:t,value:void 0!==e?e:this.value()};return this._hasMultipleValues()&&(s.value=void 0!==e?e:this.values(t),s.values=i||this.values()),s},_hasMultipleValues:function(){return this.options.values&&this.options.values.length},_start:function(t,e){return this._trigger("start",t,this._uiHash(e))},_slide:function(t,e,i){var s,n,o=this.value(),a=this.values();this._hasMultipleValues()&&(n=this.values(e?0:1),o=this.values(e),2===this.options.values.length&&this.options.range===!0&&(i=0===e?Math.min(n,i):Math.max(n,i)),a[e]=i),i!==o&&(s=this._trigger("slide",t,this._uiHash(e,i,a)),s!==!1&&(this._hasMultipleValues()?this.values(e,i):this.value(i)))},_stop:function(t,e){this._trigger("stop",t,this._uiHash(e))},_change:function(t,e){this._keySliding||this._mouseSliding||(this._lastChangedValue=e,this._trigger("change",t,this._uiHash(e)))},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),this._change(null,0),void 0):this._value()},values:function(e,i){var s,n,o;if(arguments.length>1)return this.options.values[e]=this._trimAlignValue(i),this._refreshValue(),this._change(null,e),void 0;if(!arguments.length)return this._values();if(!t.isArray(arguments[0]))return this._hasMultipleValues()?this._values(e):this.value();for(s=this.options.values,n=arguments[0],o=0;s.length>o;o+=1)s[o]=this._trimAlignValue(n[o]),this._change(null,o);this._refreshValue()},_setOption:function(e,i){var s,n=0;switch("range"===e&&this.options.range===!0&&("min"===i?(this.options.value=this._values(0),this.options.values=null):"max"===i&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),t.isArray(this.options.values)&&(n=this.options.values.length),this._super(e,i),e){case"orientation":this._detectOrientation(),this._removeClass("ui-slider-horizontal ui-slider-vertical")._addClass("ui-slider-"+this.orientation),this._refreshValue(),this.options.range&&this._refreshRange(i),this.handles.css("horizontal"===i?"bottom":"left","");break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),s=n-1;s>=0;s--)this._change(null,s);this._animateOff=!1;break;case"step":case"min":case"max":this._animateOff=!0,this._calculateNewMax(),this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_setOptionDisabled:function(t){this._super(t),this._toggleClass(null,"ui-state-disabled",!!t)},_value:function(){var t=this.options.value;return t=this._trimAlignValue(t)},_values:function(t){var e,i,s;if(arguments.length)return e=this.options.values[t],e=this._trimAlignValue(e);if(this._hasMultipleValues()){for(i=this.options.values.slice(),s=0;i.length>s;s+=1)i[s]=this._trimAlignValue(i[s]);return i}return[]},_trimAlignValue:function(t){if(this._valueMin()>=t)return this._valueMin();if(t>=this._valueMax())return this._valueMax();var e=this.options.step>0?this.options.step:1,i=(t-this._valueMin())%e,s=t-i;return 2*Math.abs(i)>=e&&(s+=i>0?e:-e),parseFloat(s.toFixed(5))},_calculateNewMax:function(){var t=this.options.max,e=this._valueMin(),i=this.options.step,s=Math.round((t-e)/i)*i;t=s+e,t>this.options.max&&(t-=i),this.max=parseFloat(t.toFixed(this._precision()))},_precision:function(){var t=this._precisionOf(this.options.step);return null!==this.options.min&&(t=Math.max(t,this._precisionOf(this.options.min))),t},_precisionOf:function(t){var e=""+t,i=e.indexOf(".");return-1===i?0:e.length-i-1},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshRange:function(t){"vertical"===t&&this.range.css({width:"",left:""}),"horizontal"===t&&this.range.css({height:"",bottom:""})},_refreshValue:function(){var e,i,s,n,o,a=this.options.range,r=this.options,l=this,h=this._animateOff?!1:r.animate,c={};this._hasMultipleValues()?this.handles.each(function(s){i=100*((l.values(s)-l._valueMin())/(l._valueMax()-l._valueMin())),c["horizontal"===l.orientation?"left":"bottom"]=i+"%",t(this).stop(1,1)[h?"animate":"css"](c,r.animate),l.options.range===!0&&("horizontal"===l.orientation?(0===s&&l.range.stop(1,1)[h?"animate":"css"]({left:i+"%"},r.animate),1===s&&l.range[h?"animate":"css"]({width:i-e+"%"},{queue:!1,duration:r.animate})):(0===s&&l.range.stop(1,1)[h?"animate":"css"]({bottom:i+"%"},r.animate),1===s&&l.range[h?"animate":"css"]({height:i-e+"%"},{queue:!1,duration:r.animate}))),e=i}):(s=this.value(),n=this._valueMin(),o=this._valueMax(),i=o!==n?100*((s-n)/(o-n)):0,c["horizontal"===this.orientation?"left":"bottom"]=i+"%",this.handle.stop(1,1)[h?"animate":"css"](c,r.animate),"min"===a&&"horizontal"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({width:i+"%"},r.animate),"max"===a&&"horizontal"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({width:100-i+"%"},r.animate),"min"===a&&"vertical"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({height:i+"%"},r.animate),"max"===a&&"vertical"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({height:100-i+"%"},r.animate))},_handleEvents:{keydown:function(e){var i,s,n,o,a=t(e.target).data("ui-slider-handle-index");switch(e.keyCode){case t.ui.keyCode.HOME:case t.ui.keyCode.END:case t.ui.keyCode.PAGE_UP:case t.ui.keyCode.PAGE_DOWN:case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(e.preventDefault(),!this._keySliding&&(this._keySliding=!0,this._addClass(t(e.target),null,"ui-state-active"),i=this._start(e,a),i===!1))return}switch(o=this.options.step,s=n=this._hasMultipleValues()?this.values(a):this.value(),e.keyCode){case t.ui.keyCode.HOME:n=this._valueMin();break;case t.ui.keyCode.END:n=this._valueMax();break;case t.ui.keyCode.PAGE_UP:n=this._trimAlignValue(s+(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.PAGE_DOWN:n=this._trimAlignValue(s-(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:if(s===this._valueMax())return;n=this._trimAlignValue(s+o);break;case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(s===this._valueMin())return;n=this._trimAlignValue(s-o)}this._slide(e,a,n)},keyup:function(e){var i=t(e.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(e,i),this._change(e,i),this._removeClass(t(e.target),null,"ui-state-active"))}}}),t.widget("ui.tooltip",{version:"1.12.1",options:{classes:{"ui-tooltip":"ui-corner-all ui-widget-shadow"},content:function(){var e=t(this).attr("title")||"";return t("<a>").text(e).html()},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,track:!1,close:null,open:null},_addDescribedBy:function(e,i){var s=(e.attr("aria-describedby")||"").split(/\s+/);s.push(i),e.data("ui-tooltip-id",i).attr("aria-describedby",t.trim(s.join(" ")))},_removeDescribedBy:function(e){var i=e.data("ui-tooltip-id"),s=(e.attr("aria-describedby")||"").split(/\s+/),n=t.inArray(i,s);-1!==n&&s.splice(n,1),e.removeData("ui-tooltip-id"),s=t.trim(s.join(" ")),s?e.attr("aria-describedby",s):e.removeAttr("aria-describedby")},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.liveRegion=t("<div>").attr({role:"log","aria-live":"assertive","aria-relevant":"additions"}).appendTo(this.document[0].body),this._addClass(this.liveRegion,null,"ui-helper-hidden-accessible"),this.disabledTitles=t([])},_setOption:function(e,i){var s=this;this._super(e,i),"content"===e&&t.each(this.tooltips,function(t,e){s._updateContent(e.element)})},_setOptionDisabled:function(t){this[t?"_disable":"_enable"]()},_disable:function(){var e=this;t.each(this.tooltips,function(i,s){var n=t.Event("blur");n.target=n.currentTarget=s.element[0],e.close(n,!0)}),this.disabledTitles=this.disabledTitles.add(this.element.find(this.options.items).addBack().filter(function(){var e=t(this);return e.is("[title]")?e.data("ui-tooltip-title",e.attr("title")).removeAttr("title"):void 0}))},_enable:function(){this.disabledTitles.each(function(){var e=t(this);e.data("ui-tooltip-title")&&e.attr("title",e.data("ui-tooltip-title"))}),this.disabledTitles=t([])},open:function(e){var i=this,s=t(e?e.target:this.element).closest(this.options.items);s.length&&!s.data("ui-tooltip-id")&&(s.attr("title")&&s.data("ui-tooltip-title",s.attr("title")),s.data("ui-tooltip-open",!0),e&&"mouseover"===e.type&&s.parents().each(function(){var e,s=t(this);s.data("ui-tooltip-open")&&(e=t.Event("blur"),e.target=e.currentTarget=this,i.close(e,!0)),s.attr("title")&&(s.uniqueId(),i.parents[this.id]={element:this,title:s.attr("title")},s.attr("title",""))}),this._registerCloseHandlers(e,s),this._updateContent(s,e))},_updateContent:function(t,e){var i,s=this.options.content,n=this,o=e?e.type:null;return"string"==typeof s||s.nodeType||s.jquery?this._open(e,t,s):(i=s.call(t[0],function(i){n._delay(function(){t.data("ui-tooltip-open")&&(e&&(e.type=o),this._open(e,t,i))})}),i&&this._open(e,t,i),void 0)},_open:function(e,i,s){function n(t){h.of=t,a.is(":hidden")||a.position(h)}var o,a,r,l,h=t.extend({},this.options.position);if(s){if(o=this._find(i))return o.tooltip.find(".ui-tooltip-content").html(s),void 0;i.is("[title]")&&(e&&"mouseover"===e.type?i.attr("title",""):i.removeAttr("title")),o=this._tooltip(i),a=o.tooltip,this._addDescribedBy(i,a.attr("id")),a.find(".ui-tooltip-content").html(s),this.liveRegion.children().hide(),l=t("<div>").html(a.find(".ui-tooltip-content").html()),l.removeAttr("name").find("[name]").removeAttr("name"),l.removeAttr("id").find("[id]").removeAttr("id"),l.appendTo(this.liveRegion),this.options.track&&e&&/^mouse/.test(e.type)?(this._on(this.document,{mousemove:n}),n(e)):a.position(t.extend({of:i},this.options.position)),a.hide(),this._show(a,this.options.show),this.options.track&&this.options.show&&this.options.show.delay&&(r=this.delayedShow=setInterval(function(){a.is(":visible")&&(n(h.of),clearInterval(r))},t.fx.interval)),this._trigger("open",e,{tooltip:a})}},_registerCloseHandlers:function(e,i){var s={keyup:function(e){if(e.keyCode===t.ui.keyCode.ESCAPE){var s=t.Event(e);s.currentTarget=i[0],this.close(s,!0)}}};i[0]!==this.element[0]&&(s.remove=function(){this._removeTooltip(this._find(i).tooltip)}),e&&"mouseover"!==e.type||(s.mouseleave="close"),e&&"focusin"!==e.type||(s.focusout="close"),this._on(!0,i,s)},close:function(e){var i,s=this,n=t(e?e.currentTarget:this.element),o=this._find(n);return o?(i=o.tooltip,o.closing||(clearInterval(this.delayedShow),n.data("ui-tooltip-title")&&!n.attr("title")&&n.attr("title",n.data("ui-tooltip-title")),this._removeDescribedBy(n),o.hiding=!0,i.stop(!0),this._hide(i,this.options.hide,function(){s._removeTooltip(t(this))}),n.removeData("ui-tooltip-open"),this._off(n,"mouseleave focusout keyup"),n[0]!==this.element[0]&&this._off(n,"remove"),this._off(this.document,"mousemove"),e&&"mouseleave"===e.type&&t.each(this.parents,function(e,i){t(i.element).attr("title",i.title),delete s.parents[e]}),o.closing=!0,this._trigger("close",e,{tooltip:i}),o.hiding||(o.closing=!1)),void 0):(n.removeData("ui-tooltip-open"),void 0)},_tooltip:function(e){var i=t("<div>").attr("role","tooltip"),s=t("<div>").appendTo(i),n=i.uniqueId().attr("id");return this._addClass(s,"ui-tooltip-content"),this._addClass(i,"ui-tooltip","ui-widget ui-widget-content"),i.appendTo(this._appendTo(e)),this.tooltips[n]={element:e,tooltip:i}},_find:function(t){var e=t.data("ui-tooltip-id");return e?this.tooltips[e]:null},_removeTooltip:function(t){t.remove(),delete this.tooltips[t.attr("id")]},_appendTo:function(t){var e=t.closest(".ui-front, dialog");return e.length||(e=this.document[0].body),e},_destroy:function(){var e=this;t.each(this.tooltips,function(i,s){var n=t.Event("blur"),o=s.element;n.target=n.currentTarget=o[0],e.close(n,!0),t("#"+i).remove(),o.data("ui-tooltip-title")&&(o.attr("title")||o.attr("title",o.data("ui-tooltip-title")),o.removeData("ui-tooltip-title"))}),this.liveRegion.remove()}}),t.uiBackCompat!==!1&&t.widget("ui.tooltip",t.ui.tooltip,{options:{tooltipClass:null},_tooltip:function(){var t=this._superApply(arguments);return this.options.tooltipClass&&t.tooltip.addClass(this.options.tooltipClass),t}}),t.ui.tooltip;var a="ui-effects-",r="ui-effects-style",l="ui-effects-animated",h=t;t.effects={effect:{}},function(t,e){function i(t,e,i){var s=u[e.type]||{};return null==t?i||!e.def?null:e.def:(t=s.floor?~~t:parseFloat(t),isNaN(t)?e.def:s.mod?(t+s.mod)%s.mod:0>t?0:t>s.max?s.max:t)}function s(i){var s=h(),n=s._rgba=[];return i=i.toLowerCase(),f(l,function(t,o){var a,r=o.re.exec(i),l=r&&o.parse(r),h=o.space||"rgba";return l?(a=s[h](l),s[c[h].cache]=a[c[h].cache],n=s._rgba=a._rgba,!1):e}),n.length?("0,0,0,0"===n.join()&&t.extend(n,o.transparent),s):o[i]}function n(t,e,i){return i=(i+1)%1,1>6*i?t+6*(e-t)*i:1>2*i?e:2>3*i?t+6*(e-t)*(2/3-i):t}var o,a="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",r=/^([\-+])=\s*(\d+\.?\d*)/,l=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(t){return[t[1],t[2],t[3],t[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(t){return[2.55*t[1],2.55*t[2],2.55*t[3],t[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(t){return[t[1],t[2]/100,t[3]/100,t[4]]}}],h=t.Color=function(e,i,s,n){return new t.Color.fn.parse(e,i,s,n)},c={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},u={"byte":{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},d=h.support={},p=t("<p>")[0],f=t.each;p.style.cssText="background-color:rgba(1,1,1,.5)",d.rgba=p.style.backgroundColor.indexOf("rgba")>-1,f(c,function(t,e){e.cache="_"+t,e.props.alpha={idx:3,type:"percent",def:1}}),h.fn=t.extend(h.prototype,{parse:function(n,a,r,l){if(n===e)return this._rgba=[null,null,null,null],this;(n.jquery||n.nodeType)&&(n=t(n).css(a),a=e);var u=this,d=t.type(n),p=this._rgba=[];return a!==e&&(n=[n,a,r,l],d="array"),"string"===d?this.parse(s(n)||o._default):"array"===d?(f(c.rgba.props,function(t,e){p[e.idx]=i(n[e.idx],e)}),this):"object"===d?(n instanceof h?f(c,function(t,e){n[e.cache]&&(u[e.cache]=n[e.cache].slice())}):f(c,function(e,s){var o=s.cache;f(s.props,function(t,e){if(!u[o]&&s.to){if("alpha"===t||null==n[t])return;u[o]=s.to(u._rgba)}u[o][e.idx]=i(n[t],e,!0)}),u[o]&&0>t.inArray(null,u[o].slice(0,3))&&(u[o][3]=1,s.from&&(u._rgba=s.from(u[o])))}),this):e},is:function(t){var i=h(t),s=!0,n=this;return f(c,function(t,o){var a,r=i[o.cache];return r&&(a=n[o.cache]||o.to&&o.to(n._rgba)||[],f(o.props,function(t,i){return null!=r[i.idx]?s=r[i.idx]===a[i.idx]:e})),s}),s},_space:function(){var t=[],e=this;return f(c,function(i,s){e[s.cache]&&t.push(i)}),t.pop()},transition:function(t,e){var s=h(t),n=s._space(),o=c[n],a=0===this.alpha()?h("transparent"):this,r=a[o.cache]||o.to(a._rgba),l=r.slice();return s=s[o.cache],f(o.props,function(t,n){var o=n.idx,a=r[o],h=s[o],c=u[n.type]||{};null!==h&&(null===a?l[o]=h:(c.mod&&(h-a>c.mod/2?a+=c.mod:a-h>c.mod/2&&(a-=c.mod)),l[o]=i((h-a)*e+a,n)))}),this[n](l)},blend:function(e){if(1===this._rgba[3])return this;var i=this._rgba.slice(),s=i.pop(),n=h(e)._rgba;return h(t.map(i,function(t,e){return(1-s)*n[e]+s*t}))},toRgbaString:function(){var e="rgba(",i=t.map(this._rgba,function(t,e){return null==t?e>2?1:0:t});return 1===i[3]&&(i.pop(),e="rgb("),e+i.join()+")"},toHslaString:function(){var e="hsla(",i=t.map(this.hsla(),function(t,e){return null==t&&(t=e>2?1:0),e&&3>e&&(t=Math.round(100*t)+"%"),t});return 1===i[3]&&(i.pop(),e="hsl("),e+i.join()+")"},toHexString:function(e){var i=this._rgba.slice(),s=i.pop();return e&&i.push(~~(255*s)),"#"+t.map(i,function(t){return t=(t||0).toString(16),1===t.length?"0"+t:t}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}}),h.fn.parse.prototype=h.fn,c.hsla.to=function(t){if(null==t[0]||null==t[1]||null==t[2])return[null,null,null,t[3]];var e,i,s=t[0]/255,n=t[1]/255,o=t[2]/255,a=t[3],r=Math.max(s,n,o),l=Math.min(s,n,o),h=r-l,c=r+l,u=.5*c;return e=l===r?0:s===r?60*(n-o)/h+360:n===r?60*(o-s)/h+120:60*(s-n)/h+240,i=0===h?0:.5>=u?h/c:h/(2-c),[Math.round(e)%360,i,u,null==a?1:a]},c.hsla.from=function(t){if(null==t[0]||null==t[1]||null==t[2])return[null,null,null,t[3]];var e=t[0]/360,i=t[1],s=t[2],o=t[3],a=.5>=s?s*(1+i):s+i-s*i,r=2*s-a;return[Math.round(255*n(r,a,e+1/3)),Math.round(255*n(r,a,e)),Math.round(255*n(r,a,e-1/3)),o]},f(c,function(s,n){var o=n.props,a=n.cache,l=n.to,c=n.from;h.fn[s]=function(s){if(l&&!this[a]&&(this[a]=l(this._rgba)),s===e)return this[a].slice();var n,r=t.type(s),u="array"===r||"object"===r?s:arguments,d=this[a].slice();return f(o,function(t,e){var s=u["object"===r?t:e.idx];null==s&&(s=d[e.idx]),d[e.idx]=i(s,e)}),c?(n=h(c(d)),n[a]=d,n):h(d)},f(o,function(e,i){h.fn[e]||(h.fn[e]=function(n){var o,a=t.type(n),l="alpha"===e?this._hsla?"hsla":"rgba":s,h=this[l](),c=h[i.idx];return"undefined"===a?c:("function"===a&&(n=n.call(this,c),a=t.type(n)),null==n&&i.empty?this:("string"===a&&(o=r.exec(n),o&&(n=c+parseFloat(o[2])*("+"===o[1]?1:-1))),h[i.idx]=n,this[l](h)))})})}),h.hook=function(e){var i=e.split(" ");f(i,function(e,i){t.cssHooks[i]={set:function(e,n){var o,a,r="";if("transparent"!==n&&("string"!==t.type(n)||(o=s(n)))){if(n=h(o||n),!d.rgba&&1!==n._rgba[3]){for(a="backgroundColor"===i?e.parentNode:e;(""===r||"transparent"===r)&&a&&a.style;)try{r=t.css(a,"backgroundColor"),a=a.parentNode}catch(l){}n=n.blend(r&&"transparent"!==r?r:"_default")}n=n.toRgbaString()}try{e.style[i]=n}catch(l){}}},t.fx.step[i]=function(e){e.colorInit||(e.start=h(e.elem,i),e.end=h(e.end),e.colorInit=!0),t.cssHooks[i].set(e.elem,e.start.transition(e.end,e.pos))}})},h.hook(a),t.cssHooks.borderColor={expand:function(t){var e={};return f(["Top","Right","Bottom","Left"],function(i,s){e["border"+s+"Color"]=t}),e}},o=t.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}}(h),function(){function e(e){var i,s,n=e.ownerDocument.defaultView?e.ownerDocument.defaultView.getComputedStyle(e,null):e.currentStyle,o={};if(n&&n.length&&n[0]&&n[n[0]])for(s=n.length;s--;)i=n[s],"string"==typeof n[i]&&(o[t.camelCase(i)]=n[i]);else for(i in n)"string"==typeof n[i]&&(o[i]=n[i]);return o}function i(e,i){var s,o,a={};for(s in i)o=i[s],e[s]!==o&&(n[s]||(t.fx.step[s]||!isNaN(parseFloat(o)))&&(a[s]=o));return a}var s=["add","remove","toggle"],n={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};t.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(e,i){t.fx.step[i]=function(t){("none"!==t.end&&!t.setAttr||1===t.pos&&!t.setAttr)&&(h.style(t.elem,i,t.end),t.setAttr=!0)}}),t.fn.addBack||(t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.effects.animateClass=function(n,o,a,r){var l=t.speed(o,a,r);return this.queue(function(){var o,a=t(this),r=a.attr("class")||"",h=l.children?a.find("*").addBack():a;h=h.map(function(){var i=t(this);return{el:i,start:e(this)}}),o=function(){t.each(s,function(t,e){n[e]&&a[e+"Class"](n[e])})},o(),h=h.map(function(){return this.end=e(this.el[0]),this.diff=i(this.start,this.end),this}),a.attr("class",r),h=h.map(function(){var e=this,i=t.Deferred(),s=t.extend({},l,{queue:!1,complete:function(){i.resolve(e)}});return this.el.animate(this.diff,s),i.promise()}),t.when.apply(t,h.get()).done(function(){o(),t.each(arguments,function(){var e=this.el;t.each(this.diff,function(t){e.css(t,"")})}),l.complete.call(a[0])})})},t.fn.extend({addClass:function(e){return function(i,s,n,o){return s?t.effects.animateClass.call(this,{add:i},s,n,o):e.apply(this,arguments)}}(t.fn.addClass),removeClass:function(e){return function(i,s,n,o){return arguments.length>1?t.effects.animateClass.call(this,{remove:i},s,n,o):e.apply(this,arguments)}}(t.fn.removeClass),toggleClass:function(e){return function(i,s,n,o,a){return"boolean"==typeof s||void 0===s?n?t.effects.animateClass.call(this,s?{add:i}:{remove:i},n,o,a):e.apply(this,arguments):t.effects.animateClass.call(this,{toggle:i},s,n,o)}}(t.fn.toggleClass),switchClass:function(e,i,s,n,o){return t.effects.animateClass.call(this,{add:i,remove:e},s,n,o)}})}(),function(){function e(e,i,s,n){return t.isPlainObject(e)&&(i=e,e=e.effect),e={effect:e},null==i&&(i={}),t.isFunction(i)&&(n=i,s=null,i={}),("number"==typeof i||t.fx.speeds[i])&&(n=s,s=i,i={}),t.isFunction(s)&&(n=s,s=null),i&&t.extend(e,i),s=s||i.duration,e.duration=t.fx.off?0:"number"==typeof s?s:s in t.fx.speeds?t.fx.speeds[s]:t.fx.speeds._default,e.complete=n||i.complete,e}function i(e){return!e||"number"==typeof e||t.fx.speeds[e]?!0:"string"!=typeof e||t.effects.effect[e]?t.isFunction(e)?!0:"object"!=typeof e||e.effect?!1:!0:!0}function s(t,e){var i=e.outerWidth(),s=e.outerHeight(),n=/^rect\((-?\d*\.?\d*px|-?\d+%|auto),?\s*(-?\d*\.?\d*px|-?\d+%|auto),?\s*(-?\d*\.?\d*px|-?\d+%|auto),?\s*(-?\d*\.?\d*px|-?\d+%|auto)\)$/,o=n.exec(t)||["",0,i,s,0];return{top:parseFloat(o[1])||0,right:"auto"===o[2]?i:parseFloat(o[2]),bottom:"auto"===o[3]?s:parseFloat(o[3]),left:parseFloat(o[4])||0}}t.expr&&t.expr.filters&&t.expr.filters.animated&&(t.expr.filters.animated=function(e){return function(i){return!!t(i).data(l)||e(i)}}(t.expr.filters.animated)),t.uiBackCompat!==!1&&t.extend(t.effects,{save:function(t,e){for(var i=0,s=e.length;s>i;i++)null!==e[i]&&t.data(a+e[i],t[0].style[e[i]])},restore:function(t,e){for(var i,s=0,n=e.length;n>s;s++)null!==e[s]&&(i=t.data(a+e[s]),t.css(e[s],i))},setMode:function(t,e){return"toggle"===e&&(e=t.is(":hidden")?"show":"hide"),e},createWrapper:function(e){if(e.parent().is(".ui-effects-wrapper"))return e.parent();var i={width:e.outerWidth(!0),height:e.outerHeight(!0),"float":e.css("float")},s=t("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),n={width:e.width(),height:e.height()},o=document.activeElement;try{o.id}catch(a){o=document.body}return e.wrap(s),(e[0]===o||t.contains(e[0],o))&&t(o).trigger("focus"),s=e.parent(),"static"===e.css("position")?(s.css({position:"relative"}),e.css({position:"relative"})):(t.extend(i,{position:e.css("position"),zIndex:e.css("z-index")}),t.each(["top","left","bottom","right"],function(t,s){i[s]=e.css(s),isNaN(parseInt(i[s],10))&&(i[s]="auto")}),e.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),e.css(n),s.css(i).show()},removeWrapper:function(e){var i=document.activeElement;return e.parent().is(".ui-effects-wrapper")&&(e.parent().replaceWith(e),(e[0]===i||t.contains(e[0],i))&&t(i).trigger("focus")),e}}),t.extend(t.effects,{version:"1.12.1",define:function(e,i,s){return s||(s=i,i="effect"),t.effects.effect[e]=s,t.effects.effect[e].mode=i,s},scaledDimensions:function(t,e,i){if(0===e)return{height:0,width:0,outerHeight:0,outerWidth:0};var s="horizontal"!==i?(e||100)/100:1,n="vertical"!==i?(e||100)/100:1;return{height:t.height()*n,width:t.width()*s,outerHeight:t.outerHeight()*n,outerWidth:t.outerWidth()*s}},clipToBox:function(t){return{width:t.clip.right-t.clip.left,height:t.clip.bottom-t.clip.top,left:t.clip.left,top:t.clip.top}},unshift:function(t,e,i){var s=t.queue();e>1&&s.splice.apply(s,[1,0].concat(s.splice(e,i))),t.dequeue()},saveStyle:function(t){t.data(r,t[0].style.cssText)},restoreStyle:function(t){t[0].style.cssText=t.data(r)||"",t.removeData(r)},mode:function(t,e){var i=t.is(":hidden");return"toggle"===e&&(e=i?"show":"hide"),(i?"hide"===e:"show"===e)&&(e="none"),e},getBaseline:function(t,e){var i,s;switch(t[0]){case"top":i=0;break;case"middle":i=.5;break;case"bottom":i=1;break;default:i=t[0]/e.height}switch(t[1]){case"left":s=0;break;case"center":s=.5;break;case"right":s=1;break;default:s=t[1]/e.width}return{x:s,y:i}},createPlaceholder:function(e){var i,s=e.css("position"),n=e.position();return e.css({marginTop:e.css("marginTop"),marginBottom:e.css("marginBottom"),marginLeft:e.css("marginLeft"),marginRight:e.css("marginRight")}).outerWidth(e.outerWidth()).outerHeight(e.outerHeight()),/^(static|relative)/.test(s)&&(s="absolute",i=t("<"+e[0].nodeName+">").insertAfter(e).css({display:/^(inline|ruby)/.test(e.css("display"))?"inline-block":"block",visibility:"hidden",marginTop:e.css("marginTop"),marginBottom:e.css("marginBottom"),marginLeft:e.css("marginLeft"),marginRight:e.css("marginRight"),"float":e.css("float")}).outerWidth(e.outerWidth()).outerHeight(e.outerHeight()).addClass("ui-effects-placeholder"),e.data(a+"placeholder",i)),e.css({position:s,left:n.left,top:n.top}),i},removePlaceholder:function(t){var e=a+"placeholder",i=t.data(e);i&&(i.remove(),t.removeData(e))},cleanUp:function(e){t.effects.restoreStyle(e),t.effects.removePlaceholder(e)},setTransition:function(e,i,s,n){return n=n||{},t.each(i,function(t,i){var o=e.cssUnit(i);o[0]>0&&(n[i]=o[0]*s+o[1])}),n}}),t.fn.extend({effect:function(){function i(e){function i(){r.removeData(l),t.effects.cleanUp(r),"hide"===s.mode&&r.hide(),a()}function a(){t.isFunction(h)&&h.call(r[0]),t.isFunction(e)&&e()}var r=t(this);s.mode=u.shift(),t.uiBackCompat===!1||o?"none"===s.mode?(r[c](),a()):n.call(r[0],s,i):(r.is(":hidden")?"hide"===c:"show"===c)?(r[c](),a()):n.call(r[0],s,a)}var s=e.apply(this,arguments),n=t.effects.effect[s.effect],o=n.mode,a=s.queue,r=a||"fx",h=s.complete,c=s.mode,u=[],d=function(e){var i=t(this),s=t.effects.mode(i,c)||o;i.data(l,!0),u.push(s),o&&("show"===s||s===o&&"hide"===s)&&i.show(),o&&"none"===s||t.effects.saveStyle(i),t.isFunction(e)&&e()};return t.fx.off||!n?c?this[c](s.duration,h):this.each(function(){h&&h.call(this)}):a===!1?this.each(d).each(i):this.queue(r,d).queue(r,i)},show:function(t){return function(s){if(i(s))return t.apply(this,arguments);var n=e.apply(this,arguments);return n.mode="show",this.effect.call(this,n)}}(t.fn.show),hide:function(t){return function(s){if(i(s))return t.apply(this,arguments);var n=e.apply(this,arguments);return n.mode="hide",this.effect.call(this,n)}}(t.fn.hide),toggle:function(t){return function(s){if(i(s)||"boolean"==typeof s)return t.apply(this,arguments);var n=e.apply(this,arguments);return n.mode="toggle",this.effect.call(this,n)}}(t.fn.toggle),cssUnit:function(e){var i=this.css(e),s=[];return t.each(["em","px","%","pt"],function(t,e){i.indexOf(e)>0&&(s=[parseFloat(i),e])}),s},cssClip:function(t){return t?this.css("clip","rect("+t.top+"px "+t.right+"px "+t.bottom+"px "+t.left+"px)"):s(this.css("clip"),this)},transfer:function(e,i){var s=t(this),n=t(e.to),o="fixed"===n.css("position"),a=t("body"),r=o?a.scrollTop():0,l=o?a.scrollLeft():0,h=n.offset(),c={top:h.top-r,left:h.left-l,height:n.innerHeight(),width:n.innerWidth()},u=s.offset(),d=t("<div class='ui-effects-transfer'></div>").appendTo("body").addClass(e.className).css({top:u.top-r,left:u.left-l,height:s.innerHeight(),width:s.innerWidth(),position:o?"fixed":"absolute"}).animate(c,e.duration,e.easing,function(){d.remove(),t.isFunction(i)&&i()})}}),t.fx.step.clip=function(e){e.clipInit||(e.start=t(e.elem).cssClip(),"string"==typeof e.end&&(e.end=s(e.end,e.elem)),e.clipInit=!0),t(e.elem).cssClip({top:e.pos*(e.end.top-e.start.top)+e.start.top,right:e.pos*(e.end.right-e.start.right)+e.start.right,bottom:e.pos*(e.end.bottom-e.start.bottom)+e.start.bottom,left:e.pos*(e.end.left-e.start.left)+e.start.left})}}(),function(){var e={};t.each(["Quad","Cubic","Quart","Quint","Expo"],function(t,i){e[i]=function(e){return Math.pow(e,t+2)}}),t.extend(e,{Sine:function(t){return 1-Math.cos(t*Math.PI/2)},Circ:function(t){return 1-Math.sqrt(1-t*t)},Elastic:function(t){return 0===t||1===t?t:-Math.pow(2,8*(t-1))*Math.sin((80*(t-1)-7.5)*Math.PI/15)},Back:function(t){return t*t*(3*t-2)},Bounce:function(t){for(var e,i=4;((e=Math.pow(2,--i))-1)/11>t;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*e-2)/22-t,2)}}),t.each(e,function(e,i){t.easing["easeIn"+e]=i,t.easing["easeOut"+e]=function(t){return 1-i(1-t)},t.easing["easeInOut"+e]=function(t){return.5>t?i(2*t)/2:1-i(-2*t+2)/2}})}(),t.effects,t.effects.define("slide","show",function(e,i){var s,n,o=t(this),a={up:["bottom","top"],down:["top","bottom"],left:["right","left"],right:["left","right"]},r=e.mode,l=e.direction||"left",h="up"===l||"down"===l?"top":"left",c="up"===l||"left"===l,u=e.distance||o["top"===h?"outerHeight":"outerWidth"](!0),d={};t.effects.createPlaceholder(o),s=o.cssClip(),n=o.position()[h],d[h]=(c?-1:1)*u+n,d.clip=o.cssClip(),d.clip[a[l][1]]=d.clip[a[l][0]],"show"===r&&(o.cssClip(d.clip),o.css(h,d[h]),d.clip=s,d[h]=n),o.animate(d,{queue:!1,duration:e.duration,easing:e.easing,complete:i})})});
/*
* jQuery.fullscreen v0.5.0
* https://github.com/private-face/jquery.fullscreen
*
* Copyright (c) 20122014 Vladimir Zhuravlev
* Released under the MIT license
* https://github.com/private-face/jquery.fullscreen/blob/master/LICENSE
*
* Date: 2014-12-20
**/
;!function($) {
function defined(a){return"undefined"!=typeof a}function extend(a,b,c){var d=function(){};d.prototype=b.prototype,a.prototype=new d,a.prototype.constructor=a,b.prototype.constructor=b,a._super=b.prototype,c&&$.extend(a.prototype,c)}function native(a,b){var c;"string"==typeof a&&(b=a,a=document);for(var d=0;d<SUBST.length;++d){b=b.replace(SUBST[d][0],SUBST[d][1]);for(var e=0;e<VENDOR_PREFIXES.length;++e)if(c=VENDOR_PREFIXES[e],c+=0===e?b:b.charAt(0).toUpperCase()+b.substr(1),defined(a[c]))return a[c]}return void 0}var SUBST=[["",""],["exit","cancel"],["screen","Screen"]],VENDOR_PREFIXES=["","o","ms","moz","webkit","webkitCurrent"],ua=navigator.userAgent,fsEnabled=native("fullscreenEnabled"),IS_ANDROID_CHROME=-1!==ua.indexOf("Android")&&-1!==ua.indexOf("Chrome"),IS_NATIVELY_SUPPORTED=!IS_ANDROID_CHROME&&defined(native("fullscreenElement"))&&(!defined(fsEnabled)||fsEnabled===!0),version=$.fn.jquery.split("."),JQ_LT_17=parseInt(version[0])<2&&parseInt(version[1])<7,FullScreenAbstract=function(){this.__options=null,this._fullScreenElement=null,this.__savedStyles={}};FullScreenAbstract.prototype={"native":native,_DEFAULT_OPTIONS:{styles:{boxSizing:"border-box",MozBoxSizing:"border-box",WebkitBoxSizing:"border-box"},toggleClass:null},__documentOverflow:"",__htmlOverflow:"",_preventDocumentScroll:function(){this.__documentOverflow=document.body.style.overflow,this.__htmlOverflow=document.documentElement.style.overflow,$(this._fullScreenElement).is("body, html")||$("body, html").css("overflow","hidden")},_allowDocumentScroll:function(){document.body.style.overflow=this.__documentOverflow,document.documentElement.style.overflow=this.__htmlOverflow},_fullScreenChange:function(){this.__options&&(this.isFullScreen()?(this._preventDocumentScroll(),this._triggerEvents()):(this._allowDocumentScroll(),this._revertStyles(),this._triggerEvents(),this._fullScreenElement=null))},_fullScreenError:function(a){this.__options&&(this._revertStyles(),this._fullScreenElement=null,a&&$(document).trigger("fscreenerror",[a]))},_triggerEvents:function(){$(this._fullScreenElement).trigger(this.isFullScreen()?"fscreenopen":"fscreenclose"),$(document).trigger("fscreenchange",[this.isFullScreen(),this._fullScreenElement])},_saveAndApplyStyles:function(){var a=$(this._fullScreenElement);this.__savedStyles={};for(var b in this.__options.styles)this.__savedStyles[b]=this._fullScreenElement.style[b],this._fullScreenElement.style[b]=this.__options.styles[b];a.is("body")&&(document.documentElement.style.overflow=this.__options.styles.overflow),this.__options.toggleClass&&a.addClass(this.__options.toggleClass)},_revertStyles:function(){var a=$(this._fullScreenElement);for(var b in this.__options.styles)this._fullScreenElement.style[b]=this.__savedStyles[b];a.is("body")&&(document.documentElement.style.overflow=this.__savedStyles.overflow),this.__options.toggleClass&&a.removeClass(this.__options.toggleClass)},open:function(a,b){a!==this._fullScreenElement&&(this.isFullScreen()&&this.exit(),this._fullScreenElement=a,this.__options=$.extend(!0,{},this._DEFAULT_OPTIONS,b),this._saveAndApplyStyles())},exit:null,isFullScreen:null,isNativelySupported:function(){return IS_NATIVELY_SUPPORTED}};var FullScreenNative=function(){FullScreenNative._super.constructor.apply(this,arguments),this.exit=$.proxy(native("exitFullscreen"),document),this._DEFAULT_OPTIONS=$.extend(!0,{},this._DEFAULT_OPTIONS,{styles:{width:"100%",height:"100%"}}),$(document).bind(this._prefixedString("fullscreenchange")+" MSFullscreenChange",$.proxy(this._fullScreenChange,this)).bind(this._prefixedString("fullscreenerror")+" MSFullscreenError",$.proxy(this._fullScreenError,this))};extend(FullScreenNative,FullScreenAbstract,{VENDOR_PREFIXES:["","o","moz","webkit"],_prefixedString:function(a){return $.map(this.VENDOR_PREFIXES,function(b){return b+a}).join(" ")},open:function(a){FullScreenNative._super.open.apply(this,arguments);var b=native(a,"requestFullscreen");b.call(a)},exit:$.noop,isFullScreen:function(){return null!==native("fullscreenElement")},element:function(){return native("fullscreenElement")}});var FullScreenFallback=function(){FullScreenFallback._super.constructor.apply(this,arguments),this._DEFAULT_OPTIONS=$.extend({},this._DEFAULT_OPTIONS,{styles:{position:"absolute",zIndex:"2147483647",left:0,top:0,bottom:0,right:0}}),this.__delegateKeydownHandler()};extend(FullScreenFallback,FullScreenAbstract,{__isFullScreen:!1,__delegateKeydownHandler:function(){var a=$(document);a.delegate("*","keydown.fullscreen",$.proxy(this.__keydownHandler,this));var b=JQ_LT_17?a.data("events"):$._data(document).events,c=b.keydown;JQ_LT_17?b.live.unshift(b.live.pop()):c.splice(0,0,c.splice(c.delegateCount-1,1)[0])},__keydownHandler:function(a){return this.isFullScreen()&&27===a.which?(this.exit(),!1):!0},_revertStyles:function(){FullScreenFallback._super._revertStyles.apply(this,arguments),this._fullScreenElement.offsetHeight},open:function(){FullScreenFallback._super.open.apply(this,arguments),this.__isFullScreen=!0,this._fullScreenChange()},exit:function(){this.__isFullScreen&&(this.__isFullScreen=!1,this._fullScreenChange())},isFullScreen:function(){return this.__isFullScreen},element:function(){return this.__isFullScreen?this._fullScreenElement:null}}),$.fullscreen=IS_NATIVELY_SUPPORTED?new FullScreenNative:new FullScreenFallback,$.fn.fullscreen=function(a){var b=this[0];return a=$.extend({toggleClass:null,overflow:"hidden"},a),a.styles={overflow:a.overflow},delete a.overflow,b&&$.fullscreen.open(b,a),this};
}(jQuery);
var requirejs,require,define;!function(global,setTimeout){var req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath,version="2.3.2",commentRegExp=/\/\*[\s\S]*?\*\/|([^:"'=]|^)\/\/.*$/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,op=Object.prototype,ostring=op.toString,hasOwn=op.hasOwnProperty,isBrowser=!("undefined"==typeof window||"undefined"==typeof navigator||!window.document),isWebWorker=!isBrowser&&"undefined"!=typeof importScripts,readyRegExp=isBrowser&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),contexts={},cfg={},globalDefQueue=[],useInteractive=!1;function commentReplace(e,t){return t||""}function isFunction(e){return"[object Function]"===ostring.call(e)}function isArray(e){return"[object Array]"===ostring.call(e)}function each(e,t){var i;if(e)for(i=0;i<e.length&&(!e[i]||!t(e[i],i,e));i+=1);}function eachReverse(e,t){var i;if(e)for(i=e.length-1;-1<i&&(!e[i]||!t(e[i],i,e));i-=1);}function hasProp(e,t){return hasOwn.call(e,t)}function getOwn(e,t){return hasProp(e,t)&&e[t]}function eachProp(e,t){var i;for(i in e)if(hasProp(e,i)&&t(e[i],i))break}function mixin(i,e,r,n){return e&&eachProp(e,function(e,t){!r&&hasProp(i,t)||(!n||"object"!=typeof e||!e||isArray(e)||isFunction(e)||e instanceof RegExp?i[t]=e:(i[t]||(i[t]={}),mixin(i[t],e,r,n)))}),i}function bind(e,t){return function(){return t.apply(e,arguments)}}function scripts(){return document.getElementsByTagName("script")}function defaultOnError(e){throw e}function getGlobal(e){if(!e)return e;var t=global;return each(e.split("."),function(e){t=t[e]}),t}function makeError(e,t,i,r){var n=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e);return n.requireType=e,n.requireModules=r,i&&(n.originalError=i),n}if(void 0===define){if(void 0!==requirejs){if(isFunction(requirejs))return;cfg=requirejs,requirejs=void 0}void 0===require||isFunction(require)||(cfg=require,require=void 0),req=requirejs=function(e,t,i,r){var n,o,a=defContextName;return isArray(e)||"string"==typeof e||(o=e,isArray(t)?(e=t,t=i,i=r):e=[]),o&&o.context&&(a=o.context),(n=getOwn(contexts,a))||(n=contexts[a]=req.s.newContext(a)),o&&n.configure(o),n.require(e,t,i)},req.config=function(e){return req(e)},req.nextTick=void 0!==setTimeout?function(e){setTimeout(e,4)}:function(e){e()},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),each(["toUrl","undef","defined","specified"],function(t){req[t]=function(){var e=contexts[defContextName];return e.require[t].apply(e,arguments)}}),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=defaultOnError,req.createNode=function(e,t,i){var r=e.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return r.type=e.scriptType||"text/javascript",r.charset="utf-8",r.async=!0,r},req.load=function(t,i,r){var e,n=t&&t.config||{};if(isBrowser)return(e=req.createNode(n,i,r)).setAttribute("data-requirecontext",t.contextName),e.setAttribute("data-requiremodule",i),!e.attachEvent||e.attachEvent.toString&&e.attachEvent.toString().indexOf("[native code")<0||isOpera?(e.addEventListener("load",t.onScriptLoad,!1),e.addEventListener("error",t.onScriptError,!1)):(useInteractive=!0,e.attachEvent("onreadystatechange",t.onScriptLoad)),e.src=r,n.onNodeCreated&&n.onNodeCreated(e,n,i,r),currentlyAddingScript=e,baseElement?head.insertBefore(e,baseElement):head.appendChild(e),currentlyAddingScript=null,e;if(isWebWorker)try{setTimeout(function(){},0),importScripts(r),t.completeLoad(i)}catch(e){t.onError(makeError("importscripts","importScripts failed for "+i+" at "+r,e,[i]))}},isBrowser&&!cfg.skipDataMain&&eachReverse(scripts(),function(e){if(head||(head=e.parentNode),dataMain=e.getAttribute("data-main"))return mainScript=dataMain,cfg.baseUrl||-1!==mainScript.indexOf("!")||(mainScript=(src=mainScript.split("/")).pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath),mainScript=mainScript.replace(jsSuffixRegExp,""),req.jsExtRegExp.test(mainScript)&&(mainScript=dataMain),cfg.deps=cfg.deps?cfg.deps.concat(mainScript):[mainScript],!0}),define=function(e,i,t){var r,n;"string"!=typeof e&&(t=i,i=e,e=null),isArray(i)||(t=i,i=null),!i&&isFunction(t)&&(i=[],t.length&&(t.toString().replace(commentRegExp,commentReplace).replace(cjsRequireRegExp,function(e,t){i.push(t)}),i=(1===t.length?["require"]:["require","exports","module"]).concat(i))),useInteractive&&(r=currentlyAddingScript||getInteractiveScript())&&(e||(e=r.getAttribute("data-requiremodule")),n=contexts[r.getAttribute("data-requirecontext")]),n?(n.defQueue.push([e,i,t]),n.defQueueMap[e]=!0):globalDefQueue.push([e,i,t])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)}function newContext(u){var i,e,l,c,d,g={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},p={},f={},r={},h=[],m={},n={},v={},x=1,b=1;function q(e,t,i){var r,n,o,a,s,u,c,d,p,f,l=t&&t.split("/"),h=g.map,m=h&&h["*"];if(e&&(u=(e=e.split("/")).length-1,g.nodeIdCompat&&jsSuffixRegExp.test(e[u])&&(e[u]=e[u].replace(jsSuffixRegExp,"")),"."===e[0].charAt(0)&&l&&(e=l.slice(0,l.length-1).concat(e)),function(e){var t,i;for(t=0;t<e.length;t++)if("."===(i=e[t]))e.splice(t,1),t-=1;else if(".."===i){if(0===t||1===t&&".."===e[2]||".."===e[t-1])continue;0<t&&(e.splice(t-1,2),t-=2)}}(e),e=e.join("/")),i&&h&&(l||m)){e:for(o=(n=e.split("/")).length;0<o;o-=1){if(s=n.slice(0,o).join("/"),l)for(a=l.length;0<a;a-=1)if((r=getOwn(h,l.slice(0,a).join("/")))&&(r=getOwn(r,s))){c=r,d=o;break e}!p&&m&&getOwn(m,s)&&(p=getOwn(m,s),f=o)}!c&&p&&(c=p,d=f),c&&(n.splice(0,d,c),e=n.join("/"))}return getOwn(g.pkgs,e)||e}function E(t){isBrowser&&each(scripts(),function(e){if(e.getAttribute("data-requiremodule")===t&&e.getAttribute("data-requirecontext")===l.contextName)return e.parentNode.removeChild(e),!0})}function w(e){var t=getOwn(g.paths,e);if(t&&isArray(t)&&1<t.length)return t.shift(),l.require.undef(e),l.makeRequire(null,{skipMap:!0})([e]),!0}function y(e){var t,i=e?e.indexOf("!"):-1;return-1<i&&(t=e.substring(0,i),e=e.substring(i+1,e.length)),[t,e]}function S(e,t,i,r){var n,o,a,s,u=null,c=t?t.name:null,d=e,p=!0,f="";return e||(p=!1,e="_@r"+(x+=1)),u=(s=y(e))[0],e=s[1],u&&(u=q(u,c,r),o=getOwn(m,u)),e&&(u?f=o&&o.normalize?o.normalize(e,function(e){return q(e,c,r)}):-1===e.indexOf("!")?q(e,c,r):e:(u=(s=y(f=q(e,c,r)))[0],f=s[1],i=!0,n=l.nameToUrl(f))),{prefix:u,name:f,parentMap:t,unnormalized:!!(a=!u||o||i?"":"_unnormalized"+(b+=1)),url:n,originalName:d,isDefine:p,id:(u?u+"!"+f:f)+a}}function k(e){var t=e.id,i=getOwn(p,t);return i||(i=p[t]=new l.Module(e)),i}function M(e,t,i){var r=e.id,n=getOwn(p,r);!hasProp(m,r)||n&&!n.defineEmitComplete?(n=k(e)).error&&"error"===t?i(n.error):n.on(t,i):"defined"===t&&i(m[r])}function O(i,e){var t=i.requireModules,r=!1;e?e(i):(each(t,function(e){var t=getOwn(p,e);t&&(t.error=i,t.events.error&&(r=!0,t.emit("error",i)))}),r||req.onError(i))}function j(){globalDefQueue.length&&(each(globalDefQueue,function(e){var t=e[0];"string"==typeof t&&(l.defQueueMap[t]=!0),h.push(e)}),globalDefQueue=[])}function P(e){delete p[e],delete f[e]}function R(){var e,r,t=1e3*g.waitSeconds,n=t&&l.startTime+t<(new Date).getTime(),o=[],a=[],s=!1,u=!0;if(!i){if(i=!0,eachProp(f,function(e){var t=e.map,i=t.id;if(e.enabled&&(t.isDefine||a.push(e),!e.error))if(!e.inited&&n)w(i)?s=r=!0:(o.push(i),E(i));else if(!e.inited&&e.fetched&&t.isDefine&&(s=!0,!t.prefix))return u=!1}),n&&o.length)return(e=makeError("timeout","Load timeout for modules: "+o,null,o)).contextName=l.contextName,O(e);u&&each(a,function(e){!function n(o,a,s){var e=o.map.id;o.error?o.emit("error",o.error):(a[e]=!0,each(o.depMaps,function(e,t){var i=e.id,r=getOwn(p,i);!r||o.depMatched[t]||s[i]||(getOwn(a,i)?(o.defineDep(t,m[i]),o.check()):n(r,a,s))}),s[e]=!0)}(e,{},{})}),n&&!r||!s||!isBrowser&&!isWebWorker||d||(d=setTimeout(function(){d=0,R()},50)),i=!1}}function a(e){hasProp(m,e[0])||k(S(e[0],null,!0)).init(e[1],e[2])}function o(e,t,i,r){e.detachEvent&&!isOpera?r&&e.detachEvent(r,t):e.removeEventListener(i,t,!1)}function s(e){var t=e.currentTarget||e.srcElement;return o(t,l.onScriptLoad,"load","onreadystatechange"),o(t,l.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}function T(){var e;for(j();h.length;){if(null===(e=h.shift())[0])return O(makeError("mismatch","Mismatched anonymous define() module: "+e[e.length-1]));a(e)}l.defQueueMap={}}return c={require:function(e){return e.require?e.require:e.require=l.makeRequire(e.map)},exports:function(e){if(e.usingExports=!0,e.map.isDefine)return e.exports?m[e.map.id]=e.exports:e.exports=m[e.map.id]={}},module:function(e){return e.module?e.module:e.module={id:e.map.id,uri:e.map.url,config:function(){return getOwn(g.config,e.map.id)||{}},exports:e.exports||(e.exports={})}}},(e=function(e){this.events=getOwn(r,e.id)||{},this.map=e,this.shim=getOwn(g.shim,e.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0}).prototype={init:function(e,t,i,r){r=r||{},this.inited||(this.factory=t,i?this.on("error",i):this.events.error&&(i=bind(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.errback=i,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check())},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(!this.fetched){this.fetched=!0,l.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();l.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],bind(this,function(){return e.prefix?this.callPlugin():this.load()}))}},load:function(){var e=this.map.url;n[e]||(n[e]=!0,l.load(this.map.id,e))},check:function(){if(this.enabled&&!this.enabling){var t,e,i=this.map.id,r=this.depExports,n=this.exports,o=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(isFunction(o)){if(this.events.error&&this.map.isDefine||req.onError!==defaultOnError)try{n=l.execCb(i,o,r,n)}catch(e){t=e}else n=l.execCb(i,o,r,n);if(this.map.isDefine&&void 0===n&&((e=this.module)?n=e.exports:this.usingExports&&(n=this.exports)),t)return t.requireMap=this.map,t.requireModules=this.map.isDefine?[this.map.id]:null,t.requireType=this.map.isDefine?"define":"require",O(this.error=t)}else n=o;if(this.exports=n,this.map.isDefine&&!this.ignore&&(m[i]=n,req.onResourceLoad)){var a=[];each(this.depMaps,function(e){a.push(e.normalizedMap||e)}),req.onResourceLoad(l,this.map,a)}P(i),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else hasProp(l.defQueueMap,i)||this.fetch()}},callPlugin:function(){var u=this.map,c=u.id,e=S(u.prefix);this.depMaps.push(e),M(e,"defined",bind(this,function(e){var o,t,i,r=getOwn(v,this.map.id),n=this.map.name,a=this.map.parentMap?this.map.parentMap.name:null,s=l.makeRequire(u.parentMap,{enableBuildCallback:!0});return this.map.unnormalized?(e.normalize&&(n=e.normalize(n,function(e){return q(e,a,!0)})||""),M(t=S(u.prefix+"!"+n,this.map.parentMap),"defined",bind(this,function(e){this.map.normalizedMap=t,this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),void((i=getOwn(p,t.id))&&(this.depMaps.push(t),this.events.error&&i.on("error",bind(this,function(e){this.emit("error",e)})),i.enable()))):r?(this.map.url=l.nameToUrl(r),void this.load()):((o=bind(this,function(e){this.init([],function(){return e},null,{enabled:!0})})).error=bind(this,function(e){this.inited=!0,(this.error=e).requireModules=[c],eachProp(p,function(e){0===e.map.id.indexOf(c+"_unnormalized")&&P(e.map.id)}),O(e)}),o.fromText=bind(this,function(e,t){var i=u.name,r=S(i),n=useInteractive;t&&(e=t),n&&(useInteractive=!1),k(r),hasProp(g.config,c)&&(g.config[i]=g.config[c]);try{req.exec(e)}catch(e){return O(makeError("fromtexteval","fromText eval for "+c+" failed: "+e,e,[c]))}n&&(useInteractive=!0),this.depMaps.push(r),l.completeLoad(i),s([i],o)}),void e.load(u.name,s,o,g))})),l.enable(e,this),this.pluginMaps[e.id]=e},enable:function(){(f[this.map.id]=this).enabled=!0,this.enabling=!0,each(this.depMaps,bind(this,function(e,t){var i,r,n;if("string"==typeof e){if(e=S(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[t]=e,n=getOwn(c,e.id))return void(this.depExports[t]=n(this));this.depCount+=1,M(e,"defined",bind(this,function(e){this.undefed||(this.defineDep(t,e),this.check())})),this.errback?M(e,"error",bind(this,this.errback)):this.events.error&&M(e,"error",bind(this,function(e){this.emit("error",e)}))}i=e.id,r=p[i],hasProp(c,i)||!r||r.enabled||l.enable(e,this)})),eachProp(this.pluginMaps,bind(this,function(e){var t=getOwn(p,e.id);t&&!t.enabled&&l.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var i=this.events[e];i||(i=this.events[e]=[]),i.push(t)},emit:function(e,t){each(this.events[e],function(e){e(t)}),"error"===e&&delete this.events[e]}},(l={config:g,contextName:u,registry:p,defined:m,urlFetched:n,defQueue:h,defQueueMap:{},Module:e,makeModuleMap:S,nextTick:req.nextTick,onError:O,configure:function(e){if(e.baseUrl&&"/"!==e.baseUrl.charAt(e.baseUrl.length-1)&&(e.baseUrl+="/"),"string"==typeof e.urlArgs){var i=e.urlArgs;e.urlArgs=function(e,t){return(-1===t.indexOf("?")?"?":"&")+i}}var r=g.shim,n={paths:!0,bundles:!0,config:!0,map:!0};eachProp(e,function(e,t){n[t]?(g[t]||(g[t]={}),mixin(g[t],e,!0,!0)):g[t]=e}),e.bundles&&eachProp(e.bundles,function(e,t){each(e,function(e){e!==t&&(v[e]=t)})}),e.shim&&(eachProp(e.shim,function(e,t){isArray(e)&&(e={deps:e}),!e.exports&&!e.init||e.exportsFn||(e.exportsFn=l.makeShimExports(e)),r[t]=e}),g.shim=r),e.packages&&each(e.packages,function(e){var t;t=(e="string"==typeof e?{name:e}:e).name,e.location&&(g.paths[t]=e.location),g.pkgs[t]=e.name+"/"+(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}),eachProp(p,function(e,t){e.inited||e.map.unnormalized||(e.map=S(t,null,!0))}),(e.deps||e.callback)&&l.require(e.deps||[],e.callback)},makeShimExports:function(t){return function(){var e;return t.init&&(e=t.init.apply(global,arguments)),e||t.exports&&getGlobal(t.exports)}},makeRequire:function(o,a){function s(e,t,i){var r,n;return a.enableBuildCallback&&t&&isFunction(t)&&(t.__requireJsBuild=!0),"string"==typeof e?isFunction(t)?O(makeError("requireargs","Invalid require call"),i):o&&hasProp(c,e)?c[e](p[o.id]):req.get?req.get(l,e,o,s):(r=S(e,o,!1,!0).id,hasProp(m,r)?m[r]:O(makeError("notloaded",'Module name "'+r+'" has not been loaded yet for context: '+u+(o?"":". Use require([])")))):(T(),l.nextTick(function(){T(),(n=k(S(null,o))).skipMap=a.skipMap,n.init(e,t,i,{enabled:!0}),R()}),s)}return a=a||{},mixin(s,{isBrowser:isBrowser,toUrl:function(e){var t,i=e.lastIndexOf("."),r=e.split("/")[0];return-1!==i&&(!("."===r||".."===r)||1<i)&&(t=e.substring(i,e.length),e=e.substring(0,i)),l.nameToUrl(q(e,o&&o.id,!0),t,!0)},defined:function(e){return hasProp(m,S(e,o,!1,!0).id)},specified:function(e){return e=S(e,o,!1,!0).id,hasProp(m,e)||hasProp(p,e)}}),o||(s.undef=function(i){j();var e=S(i,o,!0),t=getOwn(p,i);t.undefed=!0,E(i),delete m[i],delete n[e.url],delete r[i],eachReverse(h,function(e,t){e[0]===i&&h.splice(t,1)}),delete l.defQueueMap[i],t&&(t.events.defined&&(r[i]=t.events),P(i))}),s},enable:function(e){getOwn(p,e.id)&&k(e).enable()},completeLoad:function(e){var t,i,r,n=getOwn(g.shim,e)||{},o=n.exports;for(j();h.length;){if(null===(i=h.shift())[0]){if(i[0]=e,t)break;t=!0}else i[0]===e&&(t=!0);a(i)}if(l.defQueueMap={},r=getOwn(p,e),!t&&!hasProp(m,e)&&r&&!r.inited){if(!(!g.enforceDefine||o&&getGlobal(o)))return w(e)?void 0:O(makeError("nodefine","No define call for "+e,null,[e]));a([e,n.deps||[],n.exportsFn])}R()},nameToUrl:function(e,t,i){var r,n,o,a,s,u,c=getOwn(g.pkgs,e);if(c&&(e=c),u=getOwn(v,e))return l.nameToUrl(u,t,i);if(req.jsExtRegExp.test(e))a=e+(t||"");else{for(r=g.paths,o=(n=e.split("/")).length;0<o;o-=1)if(s=getOwn(r,n.slice(0,o).join("/"))){isArray(s)&&(s=s[0]),n.splice(0,o,s);break}a=n.join("/"),a=("/"===(a+=t||(/^data\:|^blob\:|\?/.test(a)||i?"":".js")).charAt(0)||a.match(/^[\w\+\.\-]+:/)?"":g.baseUrl)+a}return g.urlArgs&&!/^blob\:/.test(a)?a+g.urlArgs(e,a):a},load:function(e,t){req.load(l,e,t)},execCb:function(e,t,i,r){return t.apply(r,i)},onScriptLoad:function(e){if("load"===e.type||readyRegExp.test((e.currentTarget||e.srcElement).readyState)){interactiveScript=null;var t=s(e);l.completeLoad(t.id)}},onScriptError:function(e){var i=s(e);if(!w(i.id)){var r=[];return eachProp(p,function(e,t){0!==t.indexOf("_@r")&&each(e.depMaps,function(e){if(e.id===i.id)return r.push(t),!0})}),O(makeError("scripterror",'Script error for "'+i.id+(r.length?'", needed by: '+r.join(", "):'"'),e,[i.id]))}}}).require=l.makeRequire(),l}function getInteractiveScript(){return interactiveScript&&"interactive"===interactiveScript.readyState||eachReverse(scripts(),function(e){if("interactive"===e.readyState)return interactiveScript=e}),interactiveScript}}(this,"undefined"==typeof setTimeout?void 0:setTimeout);
var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};define("eDwUICompTreeHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUICompTreeHTMLGenerator=function(_super){__extends(eDwUICompTreeHTMLGenerator,_super);function eDwUICompTreeHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}return eDwUICompTreeHTMLGenerator}(eDwUIHTMLGenerator);return eDwUICompTreeHTMLGenerator});define("eDwUIComponentTreePlugin",["require","exports","eDwUICompTreeHTMLGenerator","eDwUIShortcutMenu","eDwUIUtils","eDwEvents","eDwUIBasePlugin"],function(require,exports,eDwUICompTreeHTMLGenerator,eDwUIShortcutMenu,eDwUIUtils,eDwEvents,eDwUIBasePlugin_1){"use strict";var eDwUIComponentTreePlugin=function(_super){__extends(eDwUIComponentTreePlugin,_super);function eDwUIComponentTreePlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-component-tree"};_this=_super.call(this,"ComponentTree",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();return _this}eDwUIComponentTreePlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){var panelsToLoad,model;return __generator(this,function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_compPanelID,HTML:"componentpanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();model=this.mViewer.getModel();eDwUIUtils.hide(this.PluginButtonID,!model.isAssembly());eDwUIUtils.setUIGenerator(c_compPanelID,new eDwUICompTreeHTMLGenerator(this.mViewer,c_compPanelID));this.sync(model.getActiveModelView());return[2]}})})};eDwUIComponentTreePlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_compPanelID)}};eDwUIComponentTreePlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;this.sync(this.mViewer.getModel().getActiveModelView());eDwUIUtils.addPanelResizeEvents(c_compPanelID,c_eventIDSuffix,"#"+iButtonJQ.attr("id"));eDwUIUtils.addSubTreeArrowEventHandler(this.mUIHTMLEventMgr,c_compPanelID);this.mUIHTMLEventMgr.addDelegatedEventHandler("#edrawings-component-tree-menu .edrawings-submenu-list-item","dblclick",function(iEvent){var id=eDwUIUtils.getHCID($(iEvent.target));if(isNaN(id))return;_this.zoomToFit(_this.mViewer)});this.mUIHTMLEventMgr.addEventHandler("#component-search-cancel","click",function(iEvent){$("#edrawings-component-tree-menu "+".edrawings-menu-search-input").val("");eDwUIUtils.searchPanelList(_this.mViewer,$(iEvent.target))});this.mUIHTMLEventMgr.addEventHandler("#edrawings-search-component-input","keyup",function(iEvent){eDwUIUtils.searchPanelList(_this.mViewer,$(iEvent.target))});eDwUIUtils.addCloseEventHandler(c_compPanelID,this.mUIHTMLEventMgr);this.setAppEvents(true);return true};eDwUIComponentTreePlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);this.mUIHTMLEventMgr.removeEventHandlers(c_compPanelID,"click");this.setAppEvents(false);return true};eDwUIComponentTreePlugin.prototype.onInitFullUI=function(iViewer){this.sync(iViewer.getModel().getActiveModelView())};eDwUIComponentTreePlugin.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){this.sync(iNewModelView)};eDwUIComponentTreePlugin.prototype.onSelect=function(iViewer,iSelObjs){var selFunc=function(iViewer,iSelHierNode){eDwUIUtils.expandSelected(iViewer,iSelHierNode);eDwUIUtils.scrollToTreeNode(iSelHierNode,true)};this.processSelections(iViewer,iSelObjs,selFunc)};eDwUIComponentTreePlugin.prototype.onUnselect=function(iViewer,iSelObjs){var unSelFunc=function(iViewer,iSelHierNode){eDwUIUtils.scrollToTreeNode(iSelHierNode,false)};this.processSelections(iViewer,iSelObjs,unSelFunc)};eDwUIComponentTreePlugin.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){eDwUIUtils.updateIcons(iHierNodesAndAttribs)};eDwUIComponentTreePlugin.prototype.setAppEvents=function(iEnable){this.addAppObjEvent(eDwEvents.InitFullUIEvent,"onInitFullUI",iEnable);this.addAppObjEvent(eDwEvents.ModelViewChangeEvent,"onModelViewChange",iEnable);this.addAppObjEvent(eDwEvents.SelectEvent,"onSelect",iEnable);this.addAppObjEvent(eDwEvents.UnselectEvent,"onUnselect",iEnable);this.addAppObjEvent(eDwEvents.NodeAttribChangeEvent,"onNodeAttribChanged",iEnable)};eDwUIComponentTreePlugin.prototype.sync=function(iNewModelView){var listJQ=$(c_compPanelID+" .edrawings-submenu-list");listJQ.empty();var gen=eDwUIUtils.getUIGenerator(c_compPanelID);listJQ.append(gen.generateHTMLForChildNodes(iNewModelView.Hierarchy,false));eDwUIUtils.updateModelViewTargets(iNewModelView,"[class~='item-tree-text']","edrawings-list-selected")};eDwUIComponentTreePlugin.prototype.zoomToFit=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu.get().hide()};eDwUIComponentTreePlugin.prototype.processSelections=function(iViewer,iSelObjs,iProcFunc){var model=iViewer.getModel();if(!model.isAssembly())return;var activeModelView=model.getActiveModelView();for(var _i=0,iSelObjs_1=iSelObjs;_i<iSelObjs_1.length;_i++){var selObj=iSelObjs_1[_i];var selHierNode=activeModelView.Nodes[selObj.getNodeId()];if(!selHierNode)continue;iProcFunc(iViewer,selHierNode)}};return eDwUIComponentTreePlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_compPanelID="#edrawings-component-tree-menu";var c_eventIDSuffix=".edw.tree";return eDwUIComponentTreePlugin});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};define("eDwUIConfigurationsPlugin",["require","exports","eDwUIModelViewHTMLGenerator","eDwUIUtils","eDwEvents","eDwUIBasePlugin"],function(require,exports,eDwUIModelViewHTMLGenerator,eDwUIUtils,eDwEvents,eDwUIBasePlugin_1){"use strict";var eDwUIConfigurationsPlugin=function(_super){__extends(eDwUIConfigurationsPlugin,_super);function eDwUIConfigurationsPlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-configurations"};_this=_super.call(this,"Configurations",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();return _this}eDwUIConfigurationsPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){var panelsToLoad,model,modelViews;return __generator(this,function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_configPanelID,HTML:"configpanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();model=this.mViewer.getModel();modelViews=model.getModelViews();eDwUIUtils.hide(this.PluginButtonID,model.isDrawing()||modelViews.length<2);eDwUIUtils.setUIGenerator(c_configPanelID,new eDwUIModelViewHTMLGenerator(this.mViewer,c_configPanelID));return[2]}})})};eDwUIConfigurationsPlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_configPanelID)}};eDwUIConfigurationsPlugin.prototype.addEventHandlers=function(){_super.prototype.addEventHandlers.call(this);this.setAppEvents(true)};eDwUIConfigurationsPlugin.prototype.removeEventHandlers=function(){_super.prototype.removeEventHandlers.call(this);this.setAppEvents(false)};eDwUIConfigurationsPlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;eDwUIUtils.addPanelResizeEvents(c_configPanelID,c_eventIDSuffix,"#"+iButtonJQ.attr("id"));var switchModelView=function(iEvent){eDwUIUtils.scrollToTarget($(iEvent.target));eDwUIUtils.switchModelView(iEvent,_this.mViewer)};this.mUIHTMLEventMgr.addDelegatedEventHandler(c_configPanelID+" .edrawings-root","click",switchModelView);eDwUIUtils.addCloseEventHandler(c_configPanelID,this.mUIHTMLEventMgr);return true};eDwUIConfigurationsPlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);this.mUIHTMLEventMgr.removeEventHandlers(c_configPanelID,"click");return true};eDwUIConfigurationsPlugin.prototype.onInitFullUI=function(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.populateModelViewPanel(this.mViewer,c_configPanelID,"config-tree-text")];case 1:_a.sent();this.updateModelViewLists(this.mViewer.getModel().getActiveModelView());return[2]}})})})()};eDwUIConfigurationsPlugin.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){this.updateModelViewLists(iNewModelView)};eDwUIConfigurationsPlugin.prototype.updateModelViewLists=function(iModelView){var elements=$(c_configPanelID).find(".edrawings-submenu-list-item");elements.removeClass("edrawings-list-selected");if(iModelView){eDwUIUtils.updateModelViewTargets(iModelView,"[class~='config-tree-text']","edrawings-list-selected")}};eDwUIConfigurationsPlugin.prototype.setAppEvents=function(iEnable){this.addAppObjEvent(eDwEvents.InitFullUIEvent,"onInitFullUI",iEnable);this.addAppObjEvent(eDwEvents.ModelViewChangeEvent,"onModelViewChange",iEnable)};return eDwUIConfigurationsPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_configPanelID="#edrawings-configurations-menu";var c_eventIDSuffix=".edw.config";return eDwUIConfigurationsPlugin});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};define("eDwUIExplodePlugin",["require","exports","eDwUIBasePlugin","eDwCommandMgr","eDwCompositeCmd","eDwExplodeCmd","eDwUIUtils","eDwEventMgr","eDwEvents"],function(require,exports,eDwUIBasePlugin_1,eDwCommandMgr,eDwCompositeCmd,eDwExplodeCmd,eDwUIUtils,eDwEventMgr,eDwEvents_1){"use strict";var eDwUIExplodePlugin=function(_super){__extends(eDwUIExplodePlugin,_super);function eDwUIExplodePlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-explode"};_this=_super.call(this,"Explode",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();return _this}eDwUIExplodePlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){var panelsToLoad;return __generator(this,function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_explodePanelID,HTML:"explodepanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();eDwUIUtils.hide(this.PluginButtonID,!this.mViewer.getModel().isAssembly());return[2]}})})};eDwUIExplodePlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_explodePanelID)}};eDwUIExplodePlugin.prototype.destroy=function(){_super.prototype.destroy.call(this);$("#edrawings-button-explode").off("click.edw");var explodeHandle=$("#edrawings-explode-slider .ui-slider-handle");explodeHandle.off("touchmove.edw");explodeHandle.off("touchstart.edw");explodeHandle.off("touchend.edw");this.mExplodeCmd=this.mCompositeExplodeCmd=null};eDwUIExplodePlugin.prototype.addEventHandlers=function(){_super.prototype.addEventHandlers.call(this);this.setAppEvents(true)};eDwUIExplodePlugin.prototype.removeEventHandlers=function(){_super.prototype.removeEventHandlers.call(this);this.setAppEvents(false)};eDwUIExplodePlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;eDwUIUtils.addPanelResizeEvents(c_explodePanelID,c_eventIDSuffix,"#"+iButtonJQ.attr("id"));this.mCompositeExplodeCmd=new eDwCompositeCmd(this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(this.mCompositeExplodeCmd);this.mCompositeExplodeCmd.initCmdActionImplementation({compositeInit:function(ioCmd){ioCmd.InitialState=_this.mViewer.getExplosionLevel()},compositeUndo:function(ioCmd){ioCmd.undoSubCmds();_this.mViewer.setExplosionLevel(ioCmd.InitialState);return true},compositeRedo:function(ioCmd){ioCmd.redoSubCmds();_this.mViewer.setExplosionLevel(ioCmd.FinalState);return true},compositeCommit:function(ioCmd){ioCmd.FinalState=_this.mViewer.getExplosionLevel()},compositeCancel:function(ioCmd){ioCmd.FinalState=ioCmd.InitialState=undefined}});var viewer=this.mViewer;var explodeSlider=$("#edrawings-explode-slider");try{explodeSlider.slider("option")}catch(iException){explodeSlider.slider({orientation:"vertical",range:"min",min:0,max:10,step:.1,value:viewer.getExplosionLevel(),slide:function(iEvent,iSliderParams){_this.mExplodeCmd.setLevel(iSliderParams.value)},start:function(iEvent,iUI){_this.start(cmdMgr)},stop:function(iEvent,iUI){_this.stop(cmdMgr)}});$("#edrawings-explode-up").on("click.edw",function(){_this.setLevel(cmdMgr,10)});$("#edrawings-explode-down").on("click.edw",function(){_this.setLevel(cmdMgr,0)});var explodeHandle=$("#edrawings-explode-slider .ui-slider-handle");explodeHandle.on("touchmove.edw",function(iEvent){var touchEvent=iEvent.originalEvent;if(!(touchEvent instanceof TouchEvent))return;var xPos=touchEvent.touches[0].clientX;var total=explodeSlider.width();var val=10*(xPos-60)/total;val=val>1?1:val;val=val<0?0:val;explodeSlider.slider("value",val);_this.mExplodeCmd.setLevel(val)});explodeHandle.on("touchstart.edw",function(iEvent){_this.start(cmdMgr)});explodeHandle.on("touchend.edw",function(iEvent){_this.stop(cmdMgr)})}return true};eDwUIExplodePlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);eDwCommandMgr.get().remove(this.mCompositeExplodeCmd,"commit");this.mCompositeExplodeCmd=null;return true};eDwUIExplodePlugin.prototype.onExplodeLevelChange=function(iViewer){var explodeSlider=$("#edrawings-explode-slider");try{explodeSlider.slider("value",iViewer.getExplosionLevel())}catch(iException){}};eDwUIExplodePlugin.prototype.onResetScene=function(iViewer){eDwEventMgr.get().fireEvent(eDwEvents_1.ExplodeLevelChangeEvent)};eDwUIExplodePlugin.prototype.start=function(ioCmdMgr){this.mExplodeCmd=new eDwExplodeCmd(this.mViewer);ioCmdMgr.add(this.mExplodeCmd)};eDwUIExplodePlugin.prototype.stop=function(ioCmdMgr){ioCmdMgr.remove(this.mExplodeCmd,"commit");this.mExplodeCmd=null};eDwUIExplodePlugin.prototype.setLevel=function(ioCmdMgr,iLevel){this.start(ioCmdMgr);this.mExplodeCmd.setLevel(iLevel);this.stop(ioCmdMgr)};eDwUIExplodePlugin.prototype.setAppEvents=function(iEnable){this.addAppObjEvent(eDwEvents_1.ResetSceneEvent,"onResetScene",iEnable);this.addAppObjEvent(eDwEvents_1.ExplodeLevelChangeEvent,"onExplodeLevelChange",iEnable)};return eDwUIExplodePlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_explodePanelID="#edrawings-explode-menu";var c_eventIDSuffix=".edw.explode";return eDwUIExplodePlugin});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};define("eDwUIModelViewTabHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUIModelViewTabHTMLGenerator=function(_super){__extends(eDwUIModelViewTabHTMLGenerator,_super);function eDwUIModelViewTabHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewTabHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){var generatedHTML="";var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_1=modelViews;_i<modelViews_1.length;_i++){var modelView=modelViews_1[_i];var modelViewNode=modelView.Hierarchy;generatedHTML+="<div class='edrawings-config-tab' "+"configname='"+modelView.Name+"'>"+"<span class='config-tab-text' "+this.forNodeGetDataAttributes(modelViewNode)+">"+modelView.Name+"</span></div>"}return generatedHTML};eDwUIModelViewTabHTMLGenerator.prototype.shouldIncludeNode=function(iHierNode){if(iHierNode.Category==="layer"||iHierNode.Category==="table"){return false}return _super.prototype.shouldIncludeNode.call(this,iHierNode)};return eDwUIModelViewTabHTMLGenerator}(eDwUIHTMLGenerator);return eDwUIModelViewTabHTMLGenerator});define("eDwUIModelViewTabsPlugin",["require","exports","eDwUIBasePlugin","eDwChangeModelViewCmd","eDwUIModelViewHTMLGenerator","eDwUIModelViewTabHTMLGenerator","eDwCommandMgr","eDwUIUtils","eDwEvents"],function(require,exports,eDwUIBasePlugin_1,eDwChangeModelViewCmd,eDwUIModelViewHTMLGenerator,eDwUIModelViewTabHTMLGenerator,eDwCommandMgr,eDwUIUtils,eDwEvents){"use strict";var eDwUIModelViewTabsPlugin=function(_super){__extends(eDwUIModelViewTabsPlugin,_super);function eDwUIModelViewTabsPlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-confignav"};_this=_super.call(this,"ModelViewTabs",iViewer,buttonInfo,iViewerFeatOpts)||this;return _this}eDwUIModelViewTabsPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){var panelsToLoad;return __generator(this,function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_modelViewTabPanelID,HTML:"modelviewtabspanel.html"},{ID:c_modelViewTabNavPanelID,HTML:"configpanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();if(!this.mViewer)return[2];eDwUIUtils.hide(c_modelViewTabPanelID,!this.shouldShowTabs());eDwUIUtils.hide(c_modelViewTabNavPanelID+".edrawings-menu-title",true);eDwUIUtils.setUIGenerator(c_modelViewTabNavPanelID,new eDwUIModelViewHTMLGenerator(this.mViewer,c_modelViewTabPanelID));eDwUIUtils.setUIGenerator(c_modelViewTabListID,new eDwUIModelViewTabHTMLGenerator(this.mViewer,c_modelViewTabListID));return[2]}})})};eDwUIModelViewTabsPlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_modelViewTabNavPanelID)}};eDwUIModelViewTabsPlugin.prototype.addEventHandlers=function(){var _this=this;_super.prototype.addEventHandlers.call(this);this.mUIHTMLEventMgr.addEventHandler("window","resize",function(iEvent){_this.adjustTabs()});$(document).on("click.mvtedw",c_modelViewTabPanelID+" .edrawings-config-tab",function(iEvent){var target=eDwUIUtils.getTarget($(iEvent.target));if(target.hasClass("active-modelview")){return}var modelViewName=eDwUIUtils.getSpanText($(iEvent.target));if(!modelViewName)return;l_activateModelView(_this.mViewer,modelViewName,_this.mViewer.getInitCamera())});this.mUIHTMLEventMgr.addEventHandler("#edrawings-config-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",function(iEvent){var contentJQ=$("#edrawings-config-tab-list");if(contentJQ&&contentJQ.length>0){eDwUIUtils.executeScrolling(-l_determineIncrement(contentJQ),0,contentJQ,$("#edrawings-config-bar"))}});this.mUIHTMLEventMgr.addEventHandler("#edrawings-config-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",function(iEvent){var contentJQ=$("#edrawings-config-tab-list");if(contentJQ&&contentJQ.length>0){eDwUIUtils.executeScrolling(l_determineIncrement(contentJQ,false),0,contentJQ,$("#edrawings-config-bar"))}});eDwUIUtils.enableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-config-tab-list","#edrawings-config-bar");this.setAppEvents(true)};eDwUIModelViewTabsPlugin.prototype.removeEventHandlers=function(){_super.prototype.removeEventHandlers.call(this);$(document).off("click.mvtedw");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-config-tab-list");this.setAppEvents(false)};eDwUIModelViewTabsPlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;eDwUIUtils.addPanelResizeEvents(c_modelViewTabNavPanelID,c_eventIDSuffix);$(document).on("click.mvtedw",c_modelViewTabNavPanelID+" .edrawings-submenu-list-item",function(iEvent){var modelViewName=eDwUIUtils.getSpanText($(iEvent.target));if(!modelViewName)return;var activeModelView=_this.mViewer.getModel().getActiveModelView();if(modelViewName===activeModelView.Name)return;l_activateModelView(_this.mViewer,modelViewName,_this.mViewer.getInitCamera())});return true};eDwUIModelViewTabsPlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);return true};eDwUIModelViewTabsPlugin.prototype.onInitFullUI=function(iViewer){var _this=this;var modelViewTabs=$(c_modelViewTabListID);modelViewTabs.empty();var genericGen=eDwUIUtils.getUIGenerator(c_modelViewTabListID);var gen=genericGen;modelViewTabs.append(gen.generateHTML(""));(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.populateModelViewPanel(this.mViewer,c_modelViewTabNavPanelID,"config-nav-text")];case 1:_a.sent();this.adjustTabs();return[2]}})})})()};eDwUIModelViewTabsPlugin.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){$("[class~='edrawings-config-tab']").removeClass("active-modelview");var elements=$(c_modelViewTabNavPanelID).find(".edrawings-submenu-list-item");elements.removeClass("edrawings-list-selected");eDwUIUtils.updateModelViewTargets(iNewModelView,"[class~='config-tab-text']","active-modelview");eDwUIUtils.updateModelViewTargets(iNewModelView,"[class~='config-nav-text']","edrawings-list-selected");l_adjustTabs()};eDwUIModelViewTabsPlugin.prototype.onDone=function(iViewer){$(c_modelViewTabListID).empty()};eDwUIModelViewTabsPlugin.prototype.adjustTabs=function(){eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu");if(this.shouldShowTabs()){var configTabBar=$(c_modelViewTabPanelID);var configTabList=$(c_modelViewTabListID);if(configTabList[0].scrollWidth-configTabBar.width()>1){configTabList.removeClass("edrawings-fullwidth").addClass("edrawings-compressed");configTabBar.addClass("edrawings-compressed-tab-list")}else{configTabList.removeClass("edrawings-compressed").addClass("edrawings-fullwidth");configTabBar.removeClass("edrawings-compressed-tab-list")}l_adjustTabs()}};eDwUIModelViewTabsPlugin.prototype.shouldShowTabs=function(){return this.mViewer?this.mViewer.getModel().getModelViews().length>1:false};eDwUIModelViewTabsPlugin.prototype.setAppEvents=function(iEnable){this.addAppObjEvent(eDwEvents.InitFullUIEvent,"onInitFullUI",iEnable);this.addAppObjEvent(eDwEvents.DoneEvent,"onDone",iEnable);this.addAppObjEvent(eDwEvents.ModelViewChangeEvent,"onModelViewChange",iEnable)};return eDwUIModelViewTabsPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_modelViewTabPanelID="#edrawings-config-bar";var c_modelViewTabNavPanelID="#edrawings-config-navigation";var c_modelViewTabListID="#edrawings-config-tab-list";var c_eventIDSuffix=".edw.config.navigation";function l_activateModelView(iViewer,iModelViewName,iCamera){var changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,iModelViewName,iCamera,true);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(changeModelViewCmd);cmdMgr.remove(changeModelViewCmd,"commit")}function l_adjustTabs(){var bottomBarJQ=$("#edrawings-config-bar.bottom-bar");var configTablistJQ=bottomBarJQ.find("#edrawings-config-tab-list");if(configTablistJQ.hasClass("edrawings-compressed")){var leftButtonWrapperJQ=bottomBarJQ.find(".edrawings-arrow-left").parent(".edrawings-arrow-wrapper");var rightButtonWrapperJQ=bottomBarJQ.find(".edrawings-arrow-right").parent(".edrawings-arrow-wrapper");if(configTablistJQ[0].scrollLeft===0){leftButtonWrapperJQ.addClass("edrawings-disabled-button");bottomBarJQ.addClass("edrawings-removed-arrow-left")}else{leftButtonWrapperJQ.removeClass("edrawings-disabled-button");bottomBarJQ.removeClass("edrawings-removed-arrow-left")}if(configTablistJQ[0].scrollWidth-configTablistJQ[0].scrollLeft<=configTablistJQ.children(":last-child").width()){rightButtonWrapperJQ.addClass("edrawings-disabled-button");bottomBarJQ.addClass("edrawings-removed-arrow-right")}else{rightButtonWrapperJQ.removeClass("edrawings-disabled-button");bottomBarJQ.removeClass("edrawings-removed-arrow-right")}var activeButtonsJQ=configTablistJQ.find(".edrawings-config-tab.active-modelview");if(activeButtonsJQ.length){eDwUIUtils.scrollToTarget(activeButtonsJQ)}}}function l_determineIncrement(iContentJQ,iUseFirstVisible){if(iUseFirstVisible===void 0){iUseFirstVisible=true}var children=iContentJQ.children();var result=children.length>0?children[0].offsetWidth:0;if(iUseFirstVisible){if(iContentJQ[0].scrollLeft>0){var sumOfWidth=0;for(var i=0;i<children.length;i++){sumOfWidth+=children[i].offsetWidth;if(sumOfWidth>=iContentJQ[0].scrollLeft){result=children[i].offsetWidth-(sumOfWidth-iContentJQ[0].scrollLeft);result+=i>0?children[i-1].offsetWidth:0;break}}}}else{var sumOfWidth=0;var contentScrollRight=iContentJQ[0].scrollLeft+iContentJQ.width();for(var i=0;i<children.length;i++){sumOfWidth+=children[i].offsetWidth;if(sumOfWidth>=contentScrollRight){result=sumOfWidth-contentScrollRight;result+=i+1<children.length?children[i+1].offsetWidth:0;break}}}return result}return eDwUIModelViewTabsPlugin});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();define("eDwCompXformMgr",["require","exports","eDwMoveOperator","eDwEventMgr","eDwCommandMgr","eDwCompositeCmd","eDwEvents","utils"],function(require,exports,eDwMoveOperator,eDwEventMgr,eDwCommandMgr,eDwCompositeCmd,eDwEvents_1,Utils){"use strict";var eDwCompXformMgr=function(){function eDwCompXformMgr(iViewer){this.mViewer=iViewer;this.mMoveOp=new eDwMoveOperator(iViewer,iViewer.SelectionMgr);iViewer.OperatorMgr.registerCustomOperator(this.mMoveOp);var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents_1.ModelXformChangeStartEvent,this,c_eventCallbackName);this.mOrigModelXforms={};this.mChangedModelXforms={}}eDwCompXformMgr.prototype.unregister=function(){eDwEventMgr.get().removeEventHandlerObj(eDwEvents_1.ModelXformChangeStartEvent,this,c_eventCallbackName);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mMoveOp.OperatorID)};eDwCompXformMgr.prototype.activateMoveOp=function(){var _this=this;if(!this.mMoveOp)return null;this.mCompositeMoveCmd=new eDwCompositeCmd(this.mViewer);eDwCommandMgr.get().add(this.mCompositeMoveCmd);this.mCompositeMoveCmd.initCmdActionImplementation({compositeInit:function(ioCmd){ioCmd.InitialState=true},compositeUndo:function(ioCmd){ioCmd.undoSubCmds();_this.resetModelNodeXforms(ioCmd.InitialState);return true},compositeRedo:function(ioCmd){ioCmd.redoSubCmds();_this.resetModelNodeXforms(ioCmd.FinalState);return true},compositeCommit:function(ioCmd){ioCmd.FinalState=false},compositeCancel:function(ioCmd){ioCmd.FinalState=ioCmd.InitialState=undefined}});var ret=this.mViewer.OperatorMgr.push(this.mMoveOp.OperatorID);return ret?this.mMoveOp:null};eDwCompXformMgr.prototype.deactivateMoveOp=function(){eDwCommandMgr.get().remove(this.mCompositeMoveCmd,"commit");this.mCompositeMoveCmd=null;return this.mViewer.OperatorMgr.pop()};eDwCompXformMgr.prototype.getModelNodeXform=function(iID){return this.mOrigModelXforms?this.mOrigModelXforms[iID]:null};eDwCompXformMgr.prototype.resetModelNodeXforms=function(iRestoreOrigs){var _this=this;if(iRestoreOrigs===void 0){iRestoreOrigs=true}var modelHC=this.mViewer.getModel().getHCModel();var modelXforms=iRestoreOrigs?this.mOrigModelXforms:this.mChangedModelXforms;Utils.forAll(function(iCompNodeID,iCompXform){if(!_this.mChangedModelXforms[iCompNodeID]){_this.mChangedModelXforms[iCompNodeID]=modelHC.getNodeMatrix(iCompNodeID).copy()}(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,modelHC.setNodeMatrix(iCompNodeID,iCompXform.copy())];case 1:_a.sent();return[2]}})})})()},modelXforms)};eDwCompXformMgr.prototype.onModelXformChangeStart=function(iModelNodeID,iModelXform){if(!this.mOrigModelXforms)this.mOrigModelXforms={};if(!this.mOrigModelXforms[iModelNodeID]){this.mOrigModelXforms[iModelNodeID]=iModelXform}};return eDwCompXformMgr}();var c_eventCallbackName="onModelXformChangeStart";return eDwCompXformMgr});define("eDwMoveComponentCmd",["require","exports","eDwSupportsHistoryCmd","utils"],function(require,exports,eDwSupportsHistoryCmd,Utils){"use strict";var eDwMoveComponentCmd=function(_super){__extends(eDwMoveComponentCmd,_super);function eDwMoveComponentCmd(iViewer,iComponentData){var _this=_super.call(this,iViewer)||this;_this.mInitialComponentXforms=_this.assignModelXforms(iComponentData);return _this}eDwMoveComponentCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.setModelXforms(this.mInitialComponentXforms);return true};eDwMoveComponentCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.setModelXforms(this.mFinalComponentXforms);return true};eDwMoveComponentCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.setModelXforms(this.mFinalComponentXforms)};Object.defineProperty(eDwMoveComponentCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});eDwMoveComponentCmd.prototype.setFinalComponentXforms=function(iComponentData){this.mFinalComponentXforms=this.assignModelXforms(iComponentData)};eDwMoveComponentCmd.prototype.setModelXforms=function(iComponentXforms){if(!iComponentXforms)return;var modelHC=this.mViewer.getModel().getHCModel();for(var _i=0,iComponentXforms_1=iComponentXforms;_i<iComponentXforms_1.length;_i++){var compXform=iComponentXforms_1[_i];modelHC.setNodeMatrix(compXform.NodeID,compXform.Xform.copy())}};eDwMoveComponentCmd.prototype.assignModelXforms=function(iComponentData){var componentXforms=[];if(!iComponentData)return componentXforms;Utils.forAll(function(iCompNodeID,iCompData){componentXforms.push({NodeID:iCompNodeID,Xform:iCompData.Xform.copy()})},iComponentData);return componentXforms};return eDwMoveComponentCmd}(eDwSupportsHistoryCmd);return eDwMoveComponentCmd});define("eDwMoveOperator",["require","exports","eDwBaseSelOperator","eDwEventMgr","eDwCommandMgr","eDwMoveComponentCmd","eDwKeyMgr","eDwTypes","eDwEvents","eDwGeomUtils","utils"],function(require,exports,eDwBaseSelOperator,eDwEventMgr,eDwCommandMgr,eDwMoveComponentCmd,eDwKeyMgr_1,eDwTypes_1,eDwEvents_2,eDwGeomUtils,utils){"use strict";var eDwMoveOperator=function(_super){__extends(eDwMoveOperator,_super);function eDwMoveOperator(iViewer,iSelMgr){var _this=_super.call(this,iViewer,iSelMgr)||this;_this.mCompDataLocal=null;_this.mLastMousePt=null;_this.mSelectingTouch=null;_this.mMoveComponentCmd=null;return _this}eDwMoveOperator.prototype.onActivate=function(){_super.prototype.onActivate.call(this);this.mSelMgr.unSelectAllObjects()};eDwMoveOperator.prototype.onDeactivate=function(){_super.prototype.onDeactivate.call(this);this.mSelMgr.unSelectAllObjects();this.mLastDragPt=null};eDwMoveOperator.prototype.onMouseDown=function(ioMouseEvent){var _this=this;_super.prototype.onMouseDown.call(this,ioMouseEvent);if(!ioMouseEvent)return;ioMouseEvent.setHandled(false);var eventMgr=eDwEventMgr.get();if(eDwKeyMgr_1.eDwKeyMgr.isLMBPressed(ioMouseEvent)||eDwKeyMgr_1.eDwKeyMgr.isRMBPressed(ioMouseEvent)){if(this.mCompDataLocal){console.warn("Component transform already exists")}var newlySelObj=_super.prototype.getSelObjFromEvent.call(this,ioMouseEvent);if(!newlySelObj||!ioMouseEvent.controlDown()){this.mSelMgr.unSelectAllObjects()}if(!newlySelObj)return;ioMouseEvent.setHandled(true);this.mSelMgr.append(newlySelObj);if(this.mDragPt)console.warn("Still have last drag point");this.mDragPt=this.mFirstPt;this.mLastDragPt=this.mFirstPt;this.mLastMousePt=ioMouseEvent.getPosition();this.mCompDataLocal={};var selObjIDs=this.mSelMgr.getSelectableHCIDs();selObjIDs.forEach(function(iSelObjID){var modelHC=_this.mViewer.getModel().getHCModel();var modelXform=modelHC.getNodeMatrix(iSelObjID);if(!_this.mCompDataLocal[iSelObjID]){_this.mCompDataLocal[iSelObjID]={Xform:null,Bbox:null}}_this.mCompDataLocal[iSelObjID].Xform=modelXform;eventMgr.fireEvent(eDwEvents_2.ModelXformChangeStartEvent,iSelObjID,modelXform.copy());(function(){return __awaiter(_this,void 0,void 0,function(){var bbox,worldXform,invWorldXform,localBBox;return __generator(this,function(_a){switch(_a.label){case 0:return[4,modelHC.getNodesBounding([iSelObjID])];case 1:bbox=_a.sent();worldXform=modelHC.getNodeNetMatrix(iSelObjID);invWorldXform=eDwTypes_1.HC.Matrix.inverse(worldXform);localBBox=bbox.copy();transformBox(invWorldXform,localBBox);this.mCompDataLocal[iSelObjID].Bbox=localBBox;return[2]}})})})()});this.mMoveComponentCmd=new eDwMoveComponentCmd(this.mViewer,this.mCompDataLocal);eDwCommandMgr.get().add(this.mMoveComponentCmd)}};eDwMoveOperator.prototype.onMouseMove=function(ioMouseEvent){_super.prototype.onMouseMove.call(this,ioMouseEvent);if(!ioMouseEvent)return;ioMouseEvent.setHandled(false);if(this.mSelMgr.getLastSelHCID()instanceof RangeError)return;if(!this.mCurrInputInfo)return;var mousePt=ioMouseEvent.getPosition();if(this.mActiveMouseButton==="left"){var dragVec=eDwTypes_1.HC.Point3.subtract(this.mDragPt,this.mLastDragPt);ioMouseEvent.setHandled(this.dragFree(dragVec))}if(this.mActiveMouseButton==="right"){var deltaPt=this.mLastMousePt.subtract(mousePt).scale(-1);ioMouseEvent.setHandled(this.dragOrbit(deltaPt))}this.mLastDragPt=this.mDragPt;this.mLastMousePt=mousePt};eDwMoveOperator.prototype.onMouseUp=function(ioMouseEvent){_super.prototype.onMouseUp.call(this,ioMouseEvent);if(ioMouseEvent&&this.mMoveComponentCmd){this.mMoveComponentCmd.setFinalComponentXforms(this.mCompDataLocal);eDwCommandMgr.get().remove(this.mMoveComponentCmd,"commit")}ioMouseEvent.setHandled(false);this.mCompDataLocal=null;this.mDragPt=null;this.mLastDragPt=null;this.mMoveComponentCmd=null};eDwMoveOperator.prototype.onTouchStart=function(ioTouchEvent){var _this=this;if(!ioTouchEvent)return;this.addTouch(ioTouchEvent);ioTouchEvent.setHandled(false);if(this.mSelectingTouch){ioTouchEvent.setHandled(true);return}this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_1.HC.MouseInputType.Down,function(ioMouseEvent){_this.onMouseDown(ioMouseEvent)});this.mCurrInputInfo=null;var selID=this.mSelMgr.getLastSelHCID();if(!(selID instanceof RangeError)){this.mSelectingTouch={touch:ioTouchEvent,selID:selID}}};eDwMoveOperator.prototype.onTouchMove=function(ioTouchEvent){if(!ioTouchEvent||!this.hasTouchMoved(ioTouchEvent))return;if(this.mCurTouches.length>2||!this.mSelectingTouch){ioTouchEvent.setHandled(false);return}var masterOrigTouch=this.mSelectingTouch.touch;var curTouchComplex=this.getTouchById(ioTouchEvent.getId());if(ioTouchEvent.getId()===masterOrigTouch.getId()){var curDragPt=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.mViewer.getHCView());var dragVec=eDwTypes_1.HC.Point3.subtract(curDragPt,curTouchComplex.DragPt);this.dragFree(dragVec)}else{var deltaPt=eDwTypes_1.HC.Point2.subtract(ioTouchEvent.getPosition(),curTouchComplex.Pos);this.dragOrbit(deltaPt)}this.updateTouch(ioTouchEvent);ioTouchEvent.setHandled(true)};eDwMoveOperator.prototype.onTouchEnd=function(ioTouchEvent){if(!ioTouchEvent)return;this.removeTouchById(ioTouchEvent.getId());var curTouchID=ioTouchEvent.getId();if(this.mSelectingTouch&&curTouchID===this.mSelectingTouch.touch.getId()){this.mSelectingTouch=null}ioTouchEvent.setHandled(false)};eDwMoveOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_1.HC.EventType.MouseDown||iEventType===eDwTypes_1.HC.EventType.TouchStart};eDwMoveOperator.prototype.dragFree=function(vec){if(!this.mCurrInputInfo&&0===this.mCurTouches.length)return false;var modelHC=this.mViewer.getModel().getHCModel();var transMat=new eDwTypes_1.HC.Matrix;transMat.setTranslationComponent(vec.x,vec.y,vec.z);utils.forAll(function(iModelNodeID,ioNodeData){ioNodeData.Xform=eDwTypes_1.HC.Matrix.multiply(ioNodeData.Xform,transMat);modelHC.setNodeMatrix(iModelNodeID,ioNodeData.Xform)},this.mCompDataLocal);return true};eDwMoveOperator.prototype.dragOrbit=function(deltaScrPt){if(!this.mCurrInputInfo&&0===this.mCurTouches.length)return false;var view=this.mViewer.getHCView();var model=this.mViewer.getModel();var modelHC=model.getHCModel();var camera=view.getCamera();var projVec=eDwTypes_1.HC.Point3.subtract(camera.getTarget(),camera.getPosition()).normalize();var upVec=camera.getUp().copy().normalize();var dirVec=eDwTypes_1.HC.Point3.cross(upVec,projVec).normalize();utils.forAll(function(iModelNodeID,ioNodeData){if(!ioNodeData.Bbox)return;var xformedCenter=new eDwTypes_1.HC.Point3(0,0,0);ioNodeData.Xform.transform(ioNodeData.Bbox.center(),xformedCenter);var transMat=new eDwTypes_1.HC.Matrix;var revTransMat=new eDwTypes_1.HC.Matrix;revTransMat.setTranslationComponent(-xformedCenter.x,-xformedCenter.y,-xformedCenter.z);transMat.setTranslationComponent(xformedCenter.x,xformedCenter.y,xformedCenter.z);var upAxisRotMat=eDwTypes_1.HC.Matrix.createFromOffAxisRotation(upVec,deltaScrPt.x);var dirAxisRotMat=eDwTypes_1.HC.Matrix.createFromOffAxisRotation(dirVec,-deltaScrPt.y);var rotMatrix=eDwTypes_1.HC.Matrix.multiply(revTransMat,upAxisRotMat);rotMatrix=eDwTypes_1.HC.Matrix.multiply(rotMatrix,dirAxisRotMat);rotMatrix=eDwTypes_1.HC.Matrix.multiply(rotMatrix,transMat);ioNodeData.Xform=eDwTypes_1.HC.Matrix.multiply(ioNodeData.Xform,rotMatrix);modelHC.setNodeMatrix(iModelNodeID,ioNodeData.Xform)},this.mCompDataLocal);return true};return eDwMoveOperator}(eDwBaseSelOperator);function transformBox(iXform,ioBox){iXform.transform(ioBox.min,ioBox.min);iXform.transform(ioBox.max,ioBox.max)}return eDwMoveOperator});define("eDwUIMoveComponentPlugin",["require","exports","eDwUIBasePlugin","eDwCompXformMgr","eDwEvents","eDwUIUtils"],function(require,exports,eDwUIBasePlugin_1,eDwCompXformMgr,eDwEvents_3,eDwUIUtils){"use strict";var eDwUIMoveComponentPlugin=function(_super){__extends(eDwUIMoveComponentPlugin,_super);function eDwUIMoveComponentPlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-move"};_this=_super.call(this,"MoveComponent",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();_this.mCompXformMgr=new eDwCompXformMgr(iViewer);var model=iViewer.getModel();eDwUIUtils.hide(_this.PluginButtonID,!model.isAssembly());return _this}eDwUIMoveComponentPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,_super.prototype.init.call(this)];case 1:_a.sent();return[2]}})})};eDwUIMoveComponentPlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,null)}};eDwUIMoveComponentPlugin.prototype.addEventHandlers=function(){_super.prototype.addEventHandlers.call(this);_super.prototype.addAppObjEvent.call(this,eDwEvents_3.ResetSceneEvent,"onResetScene",true)};eDwUIMoveComponentPlugin.prototype.removeEventHandlers=function(){_super.prototype.removeEventHandlers.call(this);_super.prototype.addAppObjEvent.call(this,eDwEvents_3.ResetSceneEvent,"onResetScene",false)};eDwUIMoveComponentPlugin.prototype.onActivate=function(iButtonJQ){if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;this.mCompXformMgr.activateMoveOp();$("#edrawings-canvas")[0].style.cursor="pointer";return true};eDwUIMoveComponentPlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;this.mCompXformMgr.deactivateMoveOp();$("#edrawings-canvas")[0].style.cursor="default";return true};eDwUIMoveComponentPlugin.prototype.onResetScene=function(iDoReset){this.mCompXformMgr.resetModelNodeXforms(iDoReset)};return eDwUIMoveComponentPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIMoveComponentPlugin});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):new P(function(resolve){resolve(result.value)}).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();console.assert(!console.debugLog);console.debugLog=function(iCategory,iMsg){var iParams=[];for(var _i=2;_i<arguments.length;_i++){iParams[_i-2]=arguments[_i]}if(!console.debugLogCategories){console.debugLogCategories=[]}if(!console.excludeDebugLogCategories){console.excludeDebugLogCategories=[]}if(console.excludeDebugLogCategories.indexOf(iCategory)>-1){return}var augmentedMsg=iMsg;var stack=(new Error).stack;if(stack){var stackLine=stack.split("\n")[2];if(!stackLine)return;var callerLine=stackLine.slice(stackLine.lastIndexOf("("),stackLine.lastIndexOf(")")+1);if(!callerLine){callerLine=stackLine.slice(stackLine.lastIndexOf("@")+1);callerLine="("+callerLine+")"}augmentedMsg=callerLine+" "+iMsg}if(console.debugLogCategories.indexOf(iCategory)>-1||console.debugLogCategories.indexOf("*")>-1){if(iParams&&iParams.length)console.log(augmentedMsg,iParams);else console.log(augmentedMsg)}};define("eDrawingsWebViewer",["require","exports","eDwUI","eDwServiceMgr","eDwUIMessageReporter","eDrawingsWebViewerUtils","utils","eDwUIUtils"],function(require,exports,eDwUI_1,eDwServiceMgr,eDwUIMessageReporter,eDrawingsWebViewerUtils,Utils,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function start(iViewerOpts,iServerURL){eDrawingsWebViewerUtils.startViewer(iServerURL||c_server,"edrawings-canvas",iViewerOpts,l_init,eDwUIMessageReporter.showResultPanel)}exports.start=start;function l_init(ioViewerOpts,iContainerElemID){c_eDrawingsUI.initUIEvents(ioViewerOpts);var modelContents="VgAAAEMAAABDAAAA/v///wAAAABlAAAA/v///wIAAAAJAAAEAAAAAP3////9////MwAAAP7////9////AAAAAAMAAABjAAAAAAAAAAIAAAAAAAAAAAAAYL68ikAAAAAA1I2KQAAAAGC+vIpAAAAAAAAAAAAAAACAxuYWwAAAAAAAAAAAAAAA4AMg2r8AAABAGiHqPwAAAOADINq/AAAAAEVhg0AAAAAgDg55QE4AAAD+////WAAAAP7///8AAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAABpAAAA/v////3////+////MwAAAP3/////////AAAAAAIAAABOAAAA/f///28AAABAAAAAAQAAADYAAABPAAAAAgAAADYAAAAAAAAA//////////9+0VDDjc31wX7RUMN+0VBDczKaQX7RUENlAAAA/v///wIAAAAJAAAEAAAAAP3////9////ZQAAAP3///8CAAAACwAABAAAAAD+////AQAAAE4AAAD+////QgAAAH7RUMONzfXBftFQw37RUENzMppBftFQQzYAAABEAAAAlAEAAGQAAAD9////AQAAABYAAAAAAIBAAwAAAAAAAAACAAAAAAEAAAAAAABkAAAA/f///wIAAAAyAAAAF0FgQAAAAAAHAAAAAAAAAAAAAABURU1GOTlBAAIDAAAAAgEAAAAEAAAAAAAAAAAA8D8AAGQAAAD9////BAAAACIAAAAXAEBAAAAAAAEAAABtb2RlbF8xAAACAgAAAAUAAAAMAAAAAABkAAAA/f///wwAAAAvAAAApwBAQAAAAAANAAAAMmRtb2RlbAAAAg0AAAABAAAABQAEQAAAAAAQAAAAAAMAAAAAZAAAAP3///8FAAAAJAAAABcAQEAAAAAAAgAAAGluc3RhbmNlMAAAAgIAAAAGAAAACQAAAGQAAAD9////BgAAADAAAACnAEBAAAAAAAMAAABpbnN0YW5jZQAAAgcAAAABAAAABQAEQAAAAAAGAAAAAAEAAABkAAAA/f///wkAAAAwAAAApwBAQAAAAAAIAAAAaW5zdGFuY2UAAAIKAAAAAQAAAAUABEAAAAAACwAAAAACAAAAWgAAAAEAAADQAAAA1AYAACi1L/1g1AU1BgDUBVUAAAAbPFBSSU9SSVRZX0tFWUVEX0RBVEFfU0VOVD4AAE79////UwCAP00BAH7RUMONzZHBQ3MymkECBMvKSj/S0VE/7+5uP0GfWAFJ/v8BAgL1Nja3wAMCiVgCAiwALgguwUwWQHeYKCQGAAGxKzjKHsjYWlEFeAS0AyAPFoR9FSx2c1PIDJdlpzDOBdhM0gAQG8VxAGA8u7KjludAGAAGAgpAdgYAAICK94UIbqA7CCsBxzkcKuMdsCsFv0RpKMABrhZEAAAAlA0AAFoAAAABAAAAgw0AABAzAAAotS/9YBAyzWsAulBoE0AwolZjTESGQ87RGrrK56Db5LfSeVCE/qCJYXSXV9CWQ0PbBZsRRYkftkh7q+LkTwUP2vQbZifNVEypzMiexE8/KAEkASUBdG1bmI1kIbQA+q040WIryJpdM1Gqf86m/6pfZuwkKx+q1S8lRhLXKJcYBpOhEkGlr7S2lF7Kl6BLRf1lvJ1N5b6MKalhV1pcUF4qKlTa/Jrzed544zcrapfpFw91aWD8c/PUoQp+2JpK0O+PEbibruldWbrG6tUR0n+pBP+kXfT0xYcgEp9c+AnCdPAPkUpfJXcCxcp/bdf/X6/+6tRmjnP4Tm34ql6vZgHZB2O2Y7oiCQLPV33gonEnOGJ6WX1mX2p4tet/NVSKKJOD69yra/hOcK/+81Wn2b01Lxj94j5NrXp3dfyWoJViqaqCXwlKnt6m1jc/XON7dgcB7wKdES6VSjmP35DeuMYeQ0ggZFWo9yK4HwVg8gG8JeIwd32UiO77VuScMwMt/CJPqYXN5HFqvdt9/xRhDD9X93F2gSxo7CAI2g99aqAPWAVoikrmfbzvhKIZVTqa7QX04EEei5kalV4Fxjng2NBbVMRMAMzjXuzeiLftx2KWI+YcqE+dwfdt7cpWyv8XnLeiTce3FmvtyNTGSEgvbWzASBZZGzeZ4ILBUPfauAfnZFVLenxEAWnsWEDsZwu/EY21Md3eWnulLobjvMd5cAlf1HLetv0a+7P+xfo72e+x3zXeyf4gNWQkaFtc499g/y9ToL4V6N7nImSxz29ahfuz3cSQmOKm+unGhBALk22KkicH9dPj0flzQolUusFi5IZANfgAmoC9NER5u8EzHw0OYvXNz88tYODHxlOh8PhkI7TKKJO8msRH2+5IjKg3lfQDWaPSb3kaBTSJwdiFAuqkfuFvY6/1r6Klxh7Ql8V9MNtHZz/f7m7ppP3rT8epw7eT6rPyXGb4uUYYYTARI6NXmstzO8yfKYeO/0uIW3bmOlBDlB+6ptEePF4GAGGeitoTaQSwGL+FDhHu2X23kSAz5L5GyiNkIZw2os94WlxMoh+D0xN6hu8UC03/9TESKRqLvcYdXSTpj1BQUF5W8fu0Luzxv4RTeAIJ2Ol4SV2vUCmCT5+j+D/ik8Wi4l39W+jU9R+ga5PI/9o69oCfrNW9WnlRp9No2M0tiJ3KLcJWGFZGE2HB4x4hslAJCwgL/rgdzwE6N7GS/wmc3TbOHS/xpx7DTMeWCTZyI9oNpmFSFsgKY3quumqJT6HXm+o6l83c/dseFjyccx6EBWUFlZTF5mjyCmwpz2L0Ui6Tm9FZhj5nKA0FtYx+yWAyHXXKtHM5R5ekouQv5zJKO5tlzKdX2YuveTnLzRdRYF5NujmWvGI2l5ISusBk5lOGjKVziXY+m9HlLOai2cL5/LJaCsJKQuUonbxyNl005+dSMjovockrGVoWXZKd8hdt5fJldIkBRAgUtAtnk2w5Y5CZAPjxOX7rnLirGAId/YlfcdiJaKxofQ1hnqQuhYvTlRjBbDxAR0Mo50z7ZPfoW+eDgED3Su4brh/G6YpZGoiwkDtNoCFcYzAOZuNCPYYAZuL1/DCpzfo9B9AcTu21hUpxiu8eKSqbrabGhhamZts+2NBa3+aJzK0/QrXB1vokgb+F6TRh9etrb8y+PoU/qGNZRWXdIAwAACgAw6UBIBqSqepc2QeDkjQpPBjlMJIJmGIOGAYGQEBgBgMICACFeoaLAAznVzUg+Fh2jQSV1ogZpNKPh7/Z3KYEQh+i9Y8U5wug0LZKOtXir2GXRwCbJHAHvRC+FVKxIZpQR/nxr+eLXSRbIi/L/qEPxo40tZ0JF6vnivAQfDuPnCUELTGeZ9JMkDtle/DJK2NJeNGSSq2+A++mJeT7qc+m/xb6blaHIwQWYe9yr6B1BbxZyWjZEEzqhcurMMokuuGLose6tEYRUCllu12VhY9gCbG5GpwQ80NT5jDpWQRY04xK+9gWnGYs8CAxXmngtJSUfCo0geIYoXRE8Vb1yCIPrM8kbT2mwnkgvD2ZV0v26iO4seMYqmEfIPi0NTB8ynVTuoUYPMYFsom5aSX0lvOLEQNZAR7i1jAfC6z1m+mLcWiwqMKAm1v1U1VaT0oMdqv4frEEe2w+xyVQOxdkIwTcp/xz2NghUBfW9yV+apja92HnqSqYs3iNiQ/8pYaD+a1raSy9stLLSjwZogNiIgxYoXXivZy/IPY7D+vJgtFze5sP0ipC1U119t3miKV8Z7vZPLHlfq8JbrswQlg8dSaDqMoRdiPWA12jyQkF5l/BHB+SeSbvIlAwb0ouAVFqbekYjxUGeW4Lqw5nxYrM+gvUIeGp8q1JnZ5IkFLMjDEPcNG2FHztjQZ1NFT6fTYPBkeh7oRgIROYlb9FpkkQ+lupa+EsxXN5SvTzXEk2Zi1V+rK8ylg3SWK87LAY7aq15qbmARKfv3sMqZbO96ZF9ypxcG7Z+Qw9TSZfkPBIAL8sZxxzcbCjyVthMTn8JUJDkO7+A/WaLmOwGxeSSQk6dWpyKPVpoaDnwmfGY7CMrRfDIg9pIbKEAs/Uu21KdFCB4X5GLn2yr72JLK1GT92B6swfnHAKyoO5PFw9vPtlZjG+08V6WA4DEF18OKFxWtwO12P+K19EjY6sXgCagkTAovtnvESo87WVOricEWmyEnE3whxyoFPIHgX6q0thI5Z70lGO8srzOVoCtVJYCdt6nSORRvjM0VUy+L83SaDdF9UbXhMN5RdP+6To0CcqKftWL9HM4u0/hDjnLw1lUu0sNy9Fd3EybaNOdTUgBxbKaWbGujY5pTTmJmWRgxqWjyPwHLRNb1SbOz459JLad3zQn6zn5BWrO3RNWQKFClahYmzSTApi5NlZPFhmWxLZVPUsTghjqtzPLLordhlSIdUpjOQR5oJ9VWRZhWTElUwM6fEda0PjuLpsoBfDhb/QRvbnO7ONapikW3c+sqs9AAmJWudSIX1PomcQjQaPntgKnpNhOBwDjsRLnYxWtgmFCe/FYz8mDD7yjL+p8lacL8emFqAq8RKnlezeJX3TxHho0IYiRYUGGhVZyygDRVPLEUFnsasIWkd6jtKB7JoxDY4tMBUcYIvNdRmit8+aP4RgGCdQeLdetRrYdBAMtjVklv9NiLqH5l2R3/xC5ibOEll9XeMc7kVuJlg5T9VDMjnHGazQa1cLYI2p1EU5Yogtj613beMu+/aBk5ZnHA19x/mFYsgj7pqgAQ3NSPbWQUu/OiqJISpnLN4u7/gIJg162WX8m6Z76x3vVeuC7ZmOb/OjiMmCsNJv/MDM+jT0qualcYeRIl2wjtc/JcEbJaeFmW+G5XGBTwdhxXip1Gw7CG5GBzI8iIeR6PGq62mOmandSCP/HnrZlrNuwpMRsXNeI0BwkxyIrv8Cw1GY845NXzh1ca3QPeKZ/yd+Q9elhgsOnv0Qy97EV+bD55LJt+FblK7XLVM8VMwk2xWk+ximg6Nt2b9mPOpdBnqV0NS7D9vZiSFAJmzoXN7Q3834s1RcY/V8EQKCnMgLGXVnwoiVFYvnOTX6Bu/9QT9X1IOrEmXNJR6XdrA9qSxDodSdPaswxpTS3D1nBWiNKVcj5WqydP7GH3W1PBMZiu2kQNbxB1IRaGwRjEy9Cr1wg9l3CLaB/GgC4VFAaeFx2Vj9BnhYXX1DL7baDBCZIiToaSNFRYhwCKAs00KpusDVf3mo1xaf3YlHa08VRU0VKdWgJJXQGRstRBvUqcp9oDBCAd3u7wss+apd7MUkUgQyF3TLMdIHAYWcDsWDRtxgZYD7GD3WjLAVogCFfg2Eic4IGIVx+HTpTXDAXgoDoK6FlIO6jIqONib14iHkvoGtGqF6maozq3U4d8DzpsT3VnSB/NgnpRqN18B0/Co8Fhh7JuErDiFlemdnJTuSRoCqDe6OQwkpkigdk3g/HnAhiT2z/9QDKS+IuYIKfStAu7UhFiGkkHu3O9Z3afT+OhGtQH7K2UUAwgTdzWcnv7U1izVgUAS2ZWvMKpiat7qZ8V3SOb2Fy/1GVZDVuvscypU6yclziPDzpwos3tknXRk5mMQK1WI7RS5GUVy7tcbX6SAbZFOtFDt8GIPgfn/jUd1l2RkC4KKIPINGqmSilH1f0e/+WioqRKLgIfJEAgQRBQm5U25jlnyIOaJ6jgL1jDcKky5g4i9hSquWMW4fOsdgCU05HSMaxO268ZxQDyX5yq46Xj7ecoijZa3n8NgYJahp2sA6G1RLG+t36j8lkGHSNFHUCMYFlVBQTAQbm0fI0e1Elu7dyPMTNUgKXh+toUZ7a861fgpPIhCeaAYumHBqwM19gSgt2AMJqWpBpeRFKxD0h43BmZJUWa1s9Thp5JmH3WTqSPTvm/QVbdks86NXJCUg45dpJ4F6307SNpLVOXWQukX1vWEWmwDQFgHGpiYFfB0ndFxYCS7Mw1JvWrhOVIOwj9WQz09b/Ag4wDLj14gq2SHjHAFrm5B1fC8MkNDyFgkoksbhjioywJADS67eniO29dABxzoO1Yx1/DIuMGDapynjWO71E/Oyn7x6WuDtBNwCrPX3+8kGDbo9E6jRrvQYDPI0AVUgoSv/VAAAAAAAAAAAAAAAAAAAAE4AAAD9////WgAAAAEAAAApdQAAEAQCACi1L/2gEAQCAMymA76VhHUQKxDAhgAvy5vH9Ctyjd0NyxuywUzKzIu2ISMq5jbRrexoKaWUUkrJe++77wHgECoPHRBC7txlcoVcIZfJXXJl3Bj3xY1xYcC4My6Oa+O+uC+ujSvj7rg6bo6r4/K4OW6Oy+PiuDzujYvj4rg3ro1b5JK4NS6JS+PWuDUujdvj0rg3bo/b4964Ue6Ny+NGuVEujyvlWrlTrpQ75d5dKVfKvbtRLpM7d6HcufvkQrlQ7pOLd59cKhfv4l0qt8qtcqlcLBfLpXKz3CaXyXVymVwo18l1cqHcvFvimrgjron7dkfcEfftst23a7xsl+0a79o13ra7dtdu291wl1wl1+4quXXX7trdupvkut32frjtDXE/3A83xFW7IW6Gq3bVboZ74aJdDXfD1XBF3A13wxVx167b/XA53A/Xw+VwOVwPt8ONu3IXyAVy5a6Rq+KuuCzuitvisrgsbovr4tpdIXfJvbtT7pWLdjfctHvhgrhqF8O9cDNcFxfusrharo/74/q4bffH/XHbbtxtu8Ybd+Ou8cpdC7fCPbtnt8KlcCdcCdfsml0JN4Kv8lReykt5KkflqbyVo3JU3spdeSvH5a7clePyW/7F+/ie93E/vud77sf/uB8H5H/8jwPyQQ7ICTkhD3QNXLGL4IrdBBfBRXAT+C8X9ERH5Ig80R95ojvyR/7IHXkjd+R7vJE38j3Ox/e4HufjfFyPn3I9bspP+Sk35aTclJdyUk7KSzkqH+SBPNADOaAHeqADuiBf5aI8lItyUB7KQzko/+SgfJR/8k8+yj35KO/kntyTd3JOfsgN+SA35IM+yAf5oP+55Q275w277D3vedkL4AK47A1w2TvgBrgB7oArwCf50Qv96IRe6IVO6IYeylX5KlflrHyVr3JWnso3ORzX5HCcz/l8jvM5HZ/jc5zOheB7/M/1uB7/8zz+53U8j+fxOt7nddyO93mf23E8fvRITuiRXJITOqFLckouyS25Ja/ktVyWz/JZLstp+S/v5b68l/NyXr7ovNyWL/qi23JZbst3uSyX5btc1xVwB9z1rnfARe+Ay+CiF70M7gKX5br8luvyXH7Lb3kud3X31Ze8+uZLXvLme2+++OLr97z4lre8+Gbnc//69fv3+hpv42q8jbNxNa7G2bgbX+SQnJFD8knOyBn5JC90RZ7IF3kiR+SLfJEj8kcexsc4GSfjY7yMu3E2jsfxOBvvc0/OyTW5Jufkm1yMg/EwDsa/eBgP4198z7u4FzfjZtyLn3Ev7ufnd1yOp3EtnsazuBbX4llcz2P5J3/ln9yTv/JX7slheSVXdEpOyRU9kys6Js/kmRyTX/I0/saz+Btf41k8i69xNY7F8byLd3E89+Jo3IpjcSxuxfHciuc5nuN5nle5D26DW3YbXAO37JZdA9eBF3JBLuiCLsgTvdJVXfGqN3VFV7zpRR2Ox3E+j+NynM/5XI5rcWAezH15sIvAfbmvi8B/+R2342f8jNvxOo7GxbgVt+JiPIwbOqEjOqIT+qHreRbn4lw8i29xPn7qvhfyQBd007te1Gv5osu6+5LXdEauyBf5no/xMJ7nVvyKB7sKLoI74JJdBpe8B655D9yxa17zjt0Gd+wWuA1ug1vgGrgFLoFr4Bq4BK6YQ/E7j+JR/M6n+J1L8Sk+xaU4FVfiTHyJL3Em7sSZeBN34k68iT/xOk/idn7E6RyJ03kSR+JIPInXeRAf4kJciA/xIj7EiXgRL+JE3IjPuZwDcSAu53Eu5z88zuP8h/twHK7Dc3gO1+E8XIfvcB7Ow3d4D5fhNHyGz3AabsNpeA234Ta8ht/wGA7DX/gLh+FwDsNdOJzDuQtv4Sj8hKfwE77CU/gKV+EpPIWrcBZOwku4CX/z1kd46yV8hI/wEk7C2bzN3XzNRbjRRXibG93obc7mIVzNQTgIV/MPruYe/IN/cA/ewTl4mm/wDZ7maJ7mGhzN0VyDZ/Azr+AUnIJX8AtewS34Bb/gFhyDP3Azh+AQ3MwluJlHcAkuwSP4BHfgZd7AG3iZk3mZM3AyJ3MGvsAReAJX4GMu5gdczBP4AT/gCRyBD3ABHsADuAAn4ALcgBNwAm7AC/jqqqeeuuqsqw7AWWcdgId56aRv30666aSjbrrpqJ/+fv069uvasWPXnnnUaFXIDgaPGq38qDk4kvEytK8UsoPRtskb3BM8AoZ5OyaKvaB0PGy1p/2I7EGFoEkbuSSLIo66/ur0whukaE8QMMzb4WHbHKZXb2IvKB222muPTDLS7kGFoC0S3azDLX5E2iSLItx0/dXBWta0vfAGIfYaLNU2aSNneKvB0e2YyMZ34XhU4WtLgCMFQ74Lio5sfBcSD6+sZ3GnRrW3Gri5tZornCu0gNHh2eGVlULYni02vguKxHS1cadGtV1Zz8SAGfJdOIrpOsadGnWrgRdEQ1szcCCGcgXljSTEJ/kI4p9Zx2Ob6xYcN12pJuWacMTt1qBVha+2LQHwRthyazVXuIZVO1dowZQ9Z9xgpanCxujwTDUchHgD7UMwgFkSj8fDwD87vzsJ2jayNrnVZUpMkjy5JhLAIOoyJeaYJE/OzRff3rGJBDAtzlV37EWITvvWvrVty4CsTQ78s/O7k+AY+Gd3bMHAQSJZmyxKUYtlMS/QT5Fb21JxM8R2EC4WYot4bFvEtl10wOetFTRL5Rbop6itTO7KmB5WRjQ4ix6aBisyzA7L5LDYynW4FqLBebBI1Dksk7uCSMXNAv0UIWLhocDNigyzQjQ4y3FMD6tBuFhuemga2sJJqxunJxuOs8YIub2SteNoK9dhW5kcFklmp46wSNRxdRQ0S4VIKs56XHTABw3OQxRj60GiADhZDA7b5A22bWrkSIyUubZNjSDdUTWgZSHixQv7HrR+O/zEdIozYHg8SribiyMBxxxfhL8kQIIHGlhBdGKT4UmDlAGHhSYSIcJD55GICFmIeDHLVQGWnTAa0FyGJw1sK4hORhOJELFJGXAYdnb29wd3PB6Px7O7DH42hazGHRmXcngpPRkFpYmRP7tZf0uMh0oozWIy6syOzBkSSoiuthghlMZEkZO3A3CJY4xOwDyCiL1yGCIGi/OJYm9ojofefBxKSqBJzeBzywACwyLsD8+H/+EZz/DO8LzwDg7R1ZYjoTQmR0VO3g7Asb2NMTrb3sTe0BwB8wgexhnOAaXErVcOw7YruxTdgsX5Q28+DiUlaJu0Pbqz12pSM46kqdLyuWWW+MUABIYFhBiNHh3bIKga0AoY3QjhU6DAvMJEWQbc1wgLCY1rZ2d5bXlkPqXu789FoWKOFmwP5MaOx6PxeDwej8fj8Xg8Ho/H4/F4PB6PR6MWTXChjsfj8Xg8Ho/HY2FiYWJiYmJiYmJiYuLxGHa88Ot4PB6Px+PxmGgH54lIRnliYqJh4fH4V9d2TDQelfzxMyR1R8NjjaPdLD8ej3Wz/FjjSLgh2JmPMMUY6hranCZjWCgiZ12vtQ2+BIQp7ioME7USosUd/6a4/z2pMxrbs7w2b9u2MI/Mp9S58Qxv1j2jAleY+FeDrVAxhwvDB3IHJjTxsbYh2NlbUcMUY7RjZJ+hCRmrCid06UOINqepUIumEYV/l8pQyosJhWGhiLRiR02GgZfm2rHd6RA7cNMGoDsLh/iRwhYAm0XDQD5/rUonZ82QFDdsfBcADQ2FqZzaFI2OYeAao2EboMiEQ7M6PoWGrUpX41DNDaBhG7aH6/DKarZmNBrXWsJMQ1ocdRcKjYTGwfYQGUQtjsBfRrbCWQBawtZQilstjjpexkG2Q2VytD9AlTKyGe7RaoOgHBA/QRo0xHaoDKBWCAm0QrbBDGDaH6qewlZwTFobBKVSCKQl9IahjTsVyjihyZ3hlA8bCDf4EvB5dwylvDAWhinuuvMpDp8TbwLuLpsJGauMf2dmDBO1TujCyHDKBylraHFHY58VDG8CvqSxBV6aYxubkuONANkq4xA/YtS7A8nwyOFq1KJpRBwji94E3KW1YQdujLuiXLayGeobgRlI2AL5/LG5UGF8K+DjSGhIihtDvguAbHQgwlQRE6NHBAmFvFTFChGmcnor4KdlC1xjZBtr8eONQAMfbWZ1fIy7ohjZXDTQ81bAB6Y2NTeAbHT3xgO4ukJFlM4bATUW2q6sZoQbgp2GUz6gFU5oAiRMsc5Qyou2wrdyCX+RXAztzgoVxuFzohVEhw5xzA0eRxx1F9bQ5noZTvlwVzihyx4tml4YHjk0C/XufDKGhcIzlPJCQuHfjVIrgXgaKiEAWNhnJQxxzJQKRxyBv9aAESI0tLtQVxjHyKK2UAVRiGNuGDniqONVmMcgmGH75pPh2JQcbeCWRMQtMPLxB+qocBcPOkMQYgIU7opy1XZxcGJIotYAw7IZajsoVRTELVUKjz9AlSoUdGNVoSy9PIYuVBjbQKdOITZBoo9BUA6A3JSFiXZDCG+syTCkAxFGze4BHUK7BUgMq4iJESJM3VTISxUswx4RIrSDUjlAbDLm1FEICTSjFQpMDNszqQzHWsS1giZOIG6BgeD4Q9Vj3MXjjyGIMKoKd0UxEsKFqTCWgRaGLhroaQVXyUFscmTPMQhKxZj4qY1QChkQhnT3BpAHZf4UKqJ1DB/A1bWH0u4gNhk7cIw7FartRCFcxja1VYmaUFJyliTM3wy0hRmAglgIR44AtrcCtXYQHrpzMyxVIoOhHzUHh6BcYiMkgdvBG16Mgq7Msyu6iHA5ckZllhtpdMtJ2bENdMrOkBlx/nj5OwKi0elYpWwzM2C/FRCb1ab34hekKBQE8+hvihw30ujWH5WwW6UPAxEuRw4vYBEjGmCd0WWQaw3NZGiHzIjDdiTjNQitUhskS4tBwW4r5wrWoZkB+/BEIVyGei++8FBtVaJR3pJ8RFXpw/AHpc5bU9YQM61jhCNHQFpL7/ACnRG2UiUyGNJlkDMm/tlo0TIOa4fu3AzTEtkR0uChxpaWyK5dv6hCrOFokc2PmgPDw7e2bXtr27Zt27Zta9u2to3N8CyUpA5t27Zvb23bnh268b29tW3btm3btm3b9jcIQsgbXCW8t7c3RX4wECLQ17a5tYB1kdoxiR60tceTRtu2bQsmgqi2bdu2zQ2R1xgiIrAmW8qs1RiT6MExDB2jo05ChQgQP8M8ZH4dirsAJoKoNGZnAB3B28PoDiJJKvKDAbAuEpKyBiECfW1tb7IIiPlAJ6W1GIMF4jBLKsHEA1AAnRSxdTyeNJisATiOepuFiomiY6cHTxbhaTliysAUlRg8SsIk4SgJkxklPGQRyO4cQjh0X+N+p81OXt8fs0LuGdoi5NwG+h1bwEYU2kG4Vn1y2nZMj6i2kB2MdsARXBFSPGWENDxp7aExwNrCSQHawz558IBpB6lSbAXNWvXB+Xh7EwC32BraV94GyKFrI4twBs9eBvcjBDcbNcrdjEsfF/e+DG2HeHI2BvodD42AjSgYB+FayXE3PDLwY1R4HNMjqi1kB4PtOOAILjxp2VY253jS0tzbQ2OAGdvCSQHaeNRoZWwP++SJAMb9GGNSehykSvF449Gto6BZKzM4Mx/ubIJyLcQykcIkAqhUyPCIorZCPQmDxjPB1iCKscUgUQDc4rGHGepoaF8BAeigcFcHbAhBRSdEvUosEgfIoUtsEeWOoFwrEY4Dm8M3WQTyPBGuEt5fp0M3LGwjGFGhouWQbYmRMkeHxQeYOoH8MkCBYpjn/gVYGBuHbKsVI2WuTd4gGx0WH8ZEWQVaMHUCHRLq0OGoppARW16eu7dfgIW5tUFbcjyDF3YN3T2Oe3bgvv/cAZxxZ0mFXS/g7tfdXwRZUU6UF+VEGTEvyosyYi7MiPkwF+bCfJgNM2E+lAfzYD6UDWU3uU1mk9tkPJlNZpPxZL+MJ+fJftkv58l/OU/ek//yX96T9eQ9uU/Wk/XkPplP7pP/ZD6ZT/6T/eQ/GVD2k/1kQLlQVpPTZDQZTU6Tz+Q02Uw+k89kM3kvm8lr8l7ey2vym7wmu8lv8pvsJrPJhTKgTCgDyoKZUCaUBfOgLJgB86A8KAPmQBkwB+ZAOVAOzIJyYO7LgrKg3Jfv5Du5L9vJaDJfVpP5MpysJqvJcLKcDCfHyXKynBwnz8lxcp08J8/JdTKdXCffyXQynXwn28llMpksJovJZPKYnCXrZS1ZS9bLXLJe7pK5ZC65S/aS9XKWvCV3yWGylxwmg8lespcMJn/JWPKVnJfz8pVsJd/lKVlKlpKnZCpZSqaS8TJeppKr5CgZSnaSnWQo+Ummy0jykXwkI8l1GUm2y3W5LttlJRlJpstJsl1ukpXkJplJVpKVZCZ5SY7LchlIBpLlcpAsl4XkIDlIFpKHZLkcl+eykGwkD8lGcpE8JA/JRTKR/CPzyD1yj8wj+8g68o6cI9/INjKObCPryDgyjqwj58g0co08I8fIMLKMDCPTyDKyjEwjz8grcovMIrPILbKL3CK/yC6yi/wiw+UUWUVGkU3kEvlELpFT5BP5RE6RUWQM+ULOkC9kDTlDzpA1ZA5ZQ07LHDKHnJY75LQMInfIHTKI7CF7yCByiAwii8ghcogsIr9lEbnNb/ktt3lEvpDRsoaMljdkDVlD3pDT8oasltNyWlbLIDKIrJZFZBFZLbe5Q/aQP+Q2GzOJ3JbZ8lpey27ZmNFyW96Q2/Ja3pA35LWslteyMatltWzMbTaQC2SxXCCPZbEslseygjyWE2QFWUFOkBfkBLlBXpAX5AaZQWaQG2QHuUF+kB1kB/lBppAf5LNMIVPIZ7lCLpAP5LF8ICPIY3ksI8gJMoJclhPkBLksN8gNcll+kB/ksnyWF2QGmSyfZbNsIUvIETKEDCFPyGb5QJaQEWQJGUJGkBFkCLksQ8hmuSyXZbN8hoNhYNkxsHyzZ88363xzzjrrnPPOOZt5553NTGYymxnNZl4zmtG8ZgF5zQGygCwgB8gDMLD8+ebPON98M84543zmM5vZzGde85rPHCCnWc0A8s5kLnOAzGYCOSyzOc2f1YyzmtOMM85pPnOa2XzmM7M5AFaFU+FVOBVmhVfhVZgVhoVZ4VcYFoaFX+FY+BWmhWPhWJgWloVlYVq4FqaFceFauBbGhXthXJgX7oV7YV7YF06FW2FWuBV2hVlhVtgVfoVd4UX8Cr/Ci5gWpoUXMS6MCy9iXtgWvoV34VhYFp6FeeFc+BfWhXNhW7gVvoVd4VvYFnaFXWFbeBHbwrnwIl7EuTAvfAqjwqawKPwJg8KfcCgMCoPCofAoHAqTwqPwKEwKl8Kk8ClcCpfCp7Ap7AlvwpwwJ7wJd8KTsCRMCWvCijgTVsSYcCacCWPClzAmbAlfwpewJVwJW8KTcCVcCU/ClHAkDAk7wo4wJPwIN8KMsCKsCDPCi3AijAgf8REjwon4ECNiQ1wID2JBPIgNYUEsiA3hQ9gQJsSH8CFMiAsxIT7EhbgQH2JDTAgPwoE4EA/CgvAf3oP1YD14D+6D92A/uA/ug/3gP3gP/sN8sB8cCP/BgTAg/oP/YEAMCPvhPBgPvoPt4D5sB/vhPtyH/TAeTAfXwXNwHMyH5WA+TAfLwXIwHTwHv8FwsBvMBq/BbfAa/Aa3wW3wG+wGm8F7+AxWg9PgMzgNRoPP4DMYDTaDpeA7PAXfYSp4Cp6CqWArmArOw1awFZyHr+A8rAVfwVewFowFY8Fa8BasBXPBW/AWzAWPwVywGDwGj8FiMBl8h/EwFYyHq2AqmAqugvNwFayH83Ae1sNasBash7lgLlgPi8FXMBacBYvBXnAZDAZ/wV1wFxwGe8F4GAyugsHgLrgKroK7YD3cBXvBelgPe8FiMBAch+VwHJ7DclgOz2EieA4PwUQwETwEF8FD8BFcBBfBR7ARbAQfwUnwEawEJ8FJsBL8BCvBTvAT/AQ7wVBwHA6C53AQLATP4TksBA/BQjASPAQPwUjwEXwEI8FKsBKMBDvBddgON8FFsBFMh53gJTgKZoKX4DocBNthIdgO12EhWAiuw0hwHV6CkWAkeAl2glXgFHgFToFZ4BV4BWaBX2AWGA6/wC8wHIaB4fAMDAPDwDNwDBwDz8A18AyMA9fANTAO3APjwDxwD9wD88A+cArcArPALbALzAKzwC4wHHaBaWA4DIdp4Bl4BqaBcWAcmAbmgW3gG3gHhoFjYBmYB86Bf2AdOAe2gVvgG9gFvoFtYBfYBbaBaWAbOAemgWngHJgH3oDRcBpGwxxwGk7DHDAIzAF/wCAwCPwBq+EPeA2rYTW8hkPgEHgNs+E13GI2zIZbbAK3uAQ2gU3gEvgERsMdMAfcAXvAHDAH7AF/wB6wEX/AH7ARr+E1bMQtbrERl8Bt2A2TwGo4BBaBS+A3jAKPwG+4DXfAbtgDdsNt2AP2gNuwEbfhN2zERvyGS+AzLAFTwBowBpwBY8AXcAacAV/AFvAFXAFbwBZwBXyGK+AJ+Ayf4QlYAo6AzfAD/ACbYQg4AUaAD2AEWAE+gA9gBXgBdoAb4DLcAJPhMlyGyXACTIYZ4AQ4AWaAEeAxXAAbwAZwASyGCeAAWAAWgAPgARgADsMrXnEYZnGKVYzijDfWeGMSa6wxiUtMYhOXuMQmPrGJU3ziE6cYxRg7vvhix/+5Htfrely/63W9rt/1vN7X5/pe3+tzva7v9cHe1wd7YO/rfT2w//W2/tbXelo/6xd/1tv6xV98W1/rY72sh/WuvtW/+lYf61/9q4/1sP7Up3pUj+pTvapP9axe1at6Vr/qS72pJ/WiPtSP+lBf6kf9qC/1pH7RK3pGr+gbPaNn9I0+0jd6SB/pIz2kl/SQvtJLeklf6Sf9pK/0l77SY/pLf+kxvafH9J3e03v6Tv/pFb2jb/SO/tE3+kb/6CH9o7f0kB7SW/pKX+ktPabH9Ja+00v6SU/pO73ig/pNr+kzfabn9Irv6Df9o9/0mf7RP/pMb+kzveJbekuv+J3ez/f5P9/nAf2f//OAXtAD+sAX9II+8Ad94Av+oB/0gk/oCb3gG3rBP/SG3tAf+sQ/9MdP/MQ/PqLv84AP6AE/0AN6QB/oAz/QD37gB/7gC77gD/6hP/SDf/xBT+gL/fELP9EfvuETPuEjfuED/uEH+sMn/EAf6Al/8Am/8Ad/8Av/+Go+za/5NM/m1/yaZ/Nwns2/eTgP598837/5Oc/3fD/n43ycn/N1fs73fZ2v832v5/v+7/W8nv/7PZ/m2zybb/Nuns2zeTf/5t08nX/zb57Oz/k5T+f7vu/p/N/b+Tuf5/k+zsv5v8fzfN7v8bydb/N33s3feTvv5t28nafzdh7P03k6j+f/vsrjfd7jvZXP+7y38lreymd5La/ls7zeZ/kur/d63+W3/Jbv8l++y4v5L//lxbyZF/N7b+bN/N6feby/8lb+ymN5K2/lsXyWx/JePstneS/f5bu8lxfzYt7L7z2YD/NlXu+3PJff+zGP5sn8mAfzVz7MY/kwD+axPJYH814ezI95L+/lx/zeT3kqL+WfPJNv8kzeyTf5Ju/kobyTj/JQHspH+buP8lP+7u9+ykv5JV/3dm/3da/khXyQH/JJHskfeSRP90f+yNO9kaf7Im/kjXyRJ/JFXsgTeSIv5If83Mt93Me93AP5H+/jeTyP9/E9fsfreByP43V8jrfxN77Gwz2Mf/EwPsa/+Bcf42V8jJ/xMl7Gz3gaP+NtPI2n8Ta+xrv4Fr/iV3yLZ/Htj/i3f/sRX+JHvIkv8SXexJ/4Ed8+iTfxKv7Eq/gUf+JPfIpH8W3v9my/9iLe+CK+7Y1v/LZne7UP8SDew3f4D9/h1f7Df3i1B/EZHu01vIZH+w2P9hx+w294Dp/2Z1/hKTyFr/AWvsJjeAtv4TH8hRfwAX7AB3gCP+AHPIEfewIv9mM/9mJ/4MVewR/4A6/gETyCV/AMXsGTPYNn8GQf4cne7CN8hDd7CR/gCzyBL/AGnsATeAMv9gZ+wYu92C94Ba/gFzzZk/2CN/sDj+ATvNmX/YR/8A6+wTd4CF/2Bf7BG/gH3+ANvIFv8Au+wZf9gl/wZW92e11e19fldX9dX9fX/fX3/nr/+/f9//3168ePXz/5+s8nn/zz2T9/ffbZXz/s8rrA7q8L7Aa7v+6vG+z9Bvv9/v779evff/75+9cv33z1//HnXx99AJ8++uUF9uYN9uaXN9gN9uXvLx/9/fvRX6+pW+qeuqUuqnvqnrqoLquL6q66rC6ru+q2uqsurNvqtrqwrqvr6sK6si6su3hlXVl38ea6ixfXzXVzXVxX1y11U11UN9VVdVFdVFfVXXVV3Vh31V11Y11YF9aNdRfv4o11cd1Zl9a9dVtdV/fVxXVr3V3X1q11Z91Ul9ZVdWndWVfVVXVn3Vh31q11Y91Yt9bFdR9dRxfSdXQjXUgX0o10K91Il9KtdCtdStfSpXQzXUvX0s10L91LN9PVdDPdTVfT1XQ3XVF30w11RV1RN9QddR1dSTfSlXQn3Ug30p10Kd1JV/FSupSu4s10M13Fu+luuoo31LV0L11MN9TtdEndT9fT5XQ5XVC305V0P91J99PldCfdSZfTVbycbqereBVvpxvqMrqN7qKbeA8v4j28x4t4Ee/xIrrHm+giuohuoqvoJrqMrqKr6DK6i67hLbyH7qFbeAmvoVvoDt7BW+gK3kKX0BW8gpfQHXQJ3UB30B10A93AG+gC3sAbeAGvoAvo9rl+rp/b5/65fO6e+3f/7p6r5+a5frfv9l2/i+fCuW8u371z7dw6186lc+vcOpfOnXPpXDl3zp1z5dw4V86Fc+PcOBfO5btubpu75q65bS6bm+aquWiumEvmjrlkbpk75o65Ze7eLXPN3L27d83cM9fMTXPP3DM3zUVzw1ww18v1csHcL7fL5XL1rt7lcrfcIxfIpbtArpFLd+mukYvkrrgqrtt1uypue1XcE7e97T1xUdwTN8VFcVHcFLfETXFJ3BK3xCVxTVwSt8g1cU3cIpfILXKHXCKXyB1yg9whd+4GuUHu3A2oBjQDmgHFgFpAK6Bn6AQ0AmqGPkAdoGVoA7QBSoaSoQxQBugCVAGaAE2AIkARoAfQA+gYagAtgA5ABaAC0ABoGMqiLLqiKXqiJUqiJLrRjGIUo4/6GewMdgI7fZ29zl4nr1PXmevMdeI6b522TltnrbPWuXgunrTOWaesU9YZ64x1wjphna/OVierU9WZ6jx1mjpLnaROUueoc9Qp6hR1hjo/nZ7OTienk9O56dx0ajo1nYonpvPSWemkdEo6I52PTkcno3PRmehEdCaex/N4Ip6I5+F5eBqehOeh09A5eA6egqfgWegsdBI6BZ2BJ+AJ6PRz9jn3nHrOvzPPmef0O/1OPCees++0c9Y56ZxzzjmnnFPOGeeMc/Kdb043p5uzzbnmVHOqOdOcZ04zp5lz7yRzjjnHnGJOMOeX88vp5eRybjm3nHpnlhPLieW8cuadVc4qJ95J5ZxyTjmlnFLOu/PujHJCOZ+cT04np5OzydnkZHIqOe3OJCeSk+40chI5h5xCziBnkHPunDvlTrkTyBl3/jh/nD5OH2ePs8fJ49Rx5jhvnDZOGueMM8YJ44Q7XZwszhWnijPFmeJEcaI4T5wnThMniXPE+Xa2Z3u6nW5n29l2sp1rp4hT7QRxejg7nBzOtDPt3HBuONFOtFPDieG8cFo4K5wVTgonhfPsPDsnnBFOs/PB6eBscJKdC04FJ4LzwDl2ip1ip4HTwFngLHASOAWcAU4AZ9gZdrIne67neqonep6neZZneZInee5zn/rE559uBjODmcBMX2Yvk5e5y9xl6jJ1mbnMXCYu05ZZy1w0aZm0zFnmLFOWKcuMZb4yXZmtTFYmK3OVucpUZaoyU5mnTFNmKZOUScocZY4yRZmizFDmJ9OT2cnkZHIyN5mbTE2mJlPRxGReMi2ZlcxKJiWTkjnJnGRKMiGZj0xHZiOzkcnIZGQuMheZikxEZqJ5NBFNRPPQPDQNTUOz0CQ0D5mHTEOmIXPQHDQFTULmIFOQGWgGmoHMQCagCWgCMv2YfUw+5h5zj6nH1GP+mX9mHhOP2WfeMe2Ydsw6Zh2TjknHnGPGMfnMN6Ybk425xkxjojHNmHsmGXOMGcYEY34xvZhezC5mF5OLycXcYmoxs5hYzCvmFdOKacXMM/PMKiYVc4opxbwz78woZhQTignFfGI2MZmYS0wlphLTzrQz68w6M4l5xKQzjZhFzCImEZOIOcQcYgox50w5E4gZZ8aZP8wfpg/Th9nD3GHqMHOYOEwc5g3zhmnDtGHWMGeYMswYJgwThvnCfGHCmXCmC5OFucJUYaYwU5goTBTmCfOEacIkYY4w38zWbE03081sM9tMNnPNFGGGMNVMNROECcL8YH4wPZgczDRzg4lmopkaTA1mBjODicG0YFYwKZhn5pk5wZxgSjAlmBFMCOYD04FZZpaZDcwGJplJZjIwFZgJTATmAfOAOWaOmWKmmGnAJGAOMAWYAcwAJgATgBlmhpmsqZqpiZqneZqlWZqkqc1sYvPNL4OVv0pfZa+SV8mr3FXuKnWVuspc5a3SVlmrXCwXS1olrXJWOauUVcIqX5WuylZlq5JVyapcVa4qVZWoylOlqbJUWaokVZIqR5WjSlElqPJT6ansVHYqOZWcyk3lplJTmanEVF4qLZWWykplpZJSSamcVEYqIZWPSkelo7JR2ahkVDIqF5WJSkRlYnksjyViiVgeloelYUlYHioNlYPlYClYCpaFykIloVJQGVgCloBKQOWfsk/Jp9xT6in1lH/lX5mnzFP6lX3lndJOWaesU9Ip6ZRzyjmlnJKvhFO+Kd2Ubso2ZZuSTcmmXFOmKdGUZ0ozpZlyr9wry5RlSjKlmDJM+aX0Unopu5RbSr0yS4mlxFJeKfPKKmWVEq+cUkopo5RQSijlk7JJyaRkUi4p7cq6sq5MUh4p6Uq60khJpBxSBinnSiBlXBlX/ih7lDxKHuWOMkeJo8RR3ihrlDRKGuWMMkYJo4RRvihdlC3KFiWLUkWZokxRoihNlCXKEiWJ8q1sy7aSrWQrjaWIMkQZolQrP5QeSg9lhzKt3FBuKNHKDCWG0kJZoTwrJ5QTSgmlWQmhhFA+KMvKBmWDkqxcUCooFZQJygPlWDlWipUFSgKlgDJAGVayJVuuZVqipVmSpS5z+aWTwMhf5C/SF8mL3EXmInGRuMhbZC1ykVwkaZGyyFhkLBIW6YpsRbYiWZGqyFTkKdIUSYocRY4iRZGgyE/kJ9ITyYncRG4iNZGZSEwkJvISWYmkRFIiJ5GRSEgkJPIR2YhkRDIiF5GJSEQkIjKRRCQPyUKSkDREDpKDpCBJiBxEDiIFkYFIQBKQBET6IfuQfUg+pB7yj/wj85B4yD6yj7xD1iHpkHTIOWQcko/kI+GQbsg25BpSDamGTEOeIc2QZsg9kgw5hhxDiiHBkF/IL6QXkgu5hdRCZiGvkFZIK2QeiUdSIaWQd+QdGYV8QjohmZBLyCWkErKOTEImIZGQdKQRkgg5hBxCCiHnSDlSjgRC/iB9kD7IHuQOUgepg8xB3iBtkDTIGeQMUgYJg3xBuiBbkC1IFqQKMgWZgkRBmiBLkCVIEuQb2ZIt6UaykUZSBBmCBEF+ID+QHkgOZBqZRm4gNZAZyAwkBtICWYGsQFIgJ5ASSAlkBBIC+YB8QDogG5BkJBnJgFRAJiATkAjIMVKMLEASIAmQA8gAJAASABlGrqRKqmRKnqRJmmRJblKTmHzSd7AdbAPbvnavvWvr2rp2rn1r29qLm9amtWftWBvWdrVb7Vab1Va1U+1T29Q2tUvtUVvUBrU/7U/b0+a0N23FnWln2pi2pV1pT9qStqQdaT/ajjajvWgv2oo2op24E/dxH27DTbgP7cEtuAV3oT1oC9qCduAG3IC2n91n79l6tp79t/12no1ny9l09pxNZ9fZc/acXWfb2XX2nW1n29l3dt++s/123+7bfhvPjrPfbDgbzn6z+TabzWan2W22mp1mr9lptpvdZrvZaHab3Waj2XsbzT6z9/bePrPN7DKbzBazxWwye8wOs71sMBvM9rK/bC+7y/6yv+wum8vusrVsLpvL1rL1tpadZettvZ1lb9lXNpZtZd/tKVvKnrKpbClbyqay8TaVXWXjbbxdZeftKvvKztt5+8q2sqNsJ/vJfrKdbChL9pJdt5lsu123ley63WQz2U12ks1kM9lJNt1OspFsuk23kewj28gusofsIbvIJrKDbCF7bvPYPnaP7WP/2D12j/1jx+0fG8iO23EbyJbbQHaQLbfldpA9t3XsHTvHlrFp7Bmbxq6xZ+wZu8a2sWvsG9vGtrFvbBz7xtaxcWwcW8fOsWNsuP1iv9hwGwaLzWKn2C22ip1ir9gptovdYrvYKHaL3WKj2CU2in1il9gl9oltYpPYI3a72z1iv+0PW22D2CC22hax1fbaFrFF7LVt3Gr7ww6x17bbNm633baN27jbNtvusD1sDvvCzrAx7Axbw8awMWwNG21r2Bs22kbbG3ba3rA77LSdtjtsDtvCPtsVdoV9tinssz1hU9gU9oQtYU/YELaELWFD2GYbwn6wzbbZfrAjbAe7bJNtsl22GyjYCvaBvWAj2Ad2gn1gM9gLNoM9thfsBXtsF9hjW2wX2AW22DawCewAW8AWsAPsARvAXje72b3usK133nuf29zlNre6y11udadb3ehOd7rRTW50701ucu+dN96+777b9+tfOpjmpYNpX5qX5qV96V46l8aldWlcepfWpXXpXfqX3qWB6V/6lwamg+lbepampWnpWXpRz9K3dC0NS7/SsfQrLUvH0rG0LF1Ly9K2dC1dS9vSs7QrvUqz0qz0Kt1Km9Kl9Cl9SpfSqXQpjUqn0qk0Kq1Ko9KktCqtSpPSoTQpPUqH0qH0KC1Kg9KfdCfdSX/SnrQhPagF9aBepAW1oF6kGelFupFmpBnpRtqRbqQhaUfakYakH2lIWpJ+pB9pSTqSlqQp6Ug6kqakJ2lKupKepCfpSnqTJqQHaUFakB6kA/UgHUgH6kAdSAPqQLqQBtSAupA+pAtpQ/qQPqQNaUG9SVfSmnQlzUlr0po0J62oOWlLWlErakv6krakMelL+pLGpDNpTFqRzqQzaUU6kU6kFWlEWpAu1IR0oSbUhDQhTagPNaE21If6UBtqRG2oEzWiRtSJ+qgTdSJ91EedSCPSgHQf7Uf70X30H31H29F9+k/n0X46j+aj/bSf5qP3aD5aj96j92g9Go/Wo/s0Ho1H92k7uo6mo+VoOZqOnqPd6Db6jVaj0+g1Oo1mo9foNZqNhqPZaD4NR8PRfLqN5tNxdBvdRsfRb3QZTUbv6T1NRp/RZLQZfUaf0WY0Gm1Gj9FoNBo9RoPRY7QYDUaD0WJ0GP1Fc9FddBfNRXvRVnSextN4Ok9X0Vj0FZ1FY9Fb9BW9RWvRV/QVrUXraS06T+tpPZ2nrWgq+k5L0VL0nZ6iZ+geuobuoXnoGrqG5qF/aB7ah/6hf2gfOk770HI6TsdpOQ1Ey+kgGogGooPoOR1EC9Fzek4L0U00Dn1D59A3tA6dQ+fQOrQNrUPD0Da0DQ1Dx9AwtAwdQ8fQMjQNLUPP0DQ0DT1D19BNtBDNRAvRSzQTzUQv0Ur0Eu1EK9FKtBMdRTvRT3QUHUU/0Xb6iYai7TQUnUTbaTudRNfpJPqIrtN1+ohGoo9oIxqJRqKNaDptRBfRdJpOF9FEdBE9RBPRRPQQvUMP0Tf0Dr1D39A49AvdQrvQLnQLDadJ6BG6hE6hUegTGoVmoU/oE5qFXqFZaBV6hV6hVWgTWoUuoU1oE7qEHqHfdKvbdJtutZte02xaTbNpEVpNq2kROoT2oDvoD7qDBqE/6A8ahF7TILRRr+k1bdRseoPmoDNoDhpNZ9AZNJrWoC3oCvqCrqAx6Av6gsagN2gMOk1v0Bt0muagKegzLUFL0Gd6gnagy/QD/UCXaTNdpiFoM22mIegIGoJuoCPoCLqBXqAbaDK9QC/QZJqBVqAPaAQagT6gE+RbOVjOlYNlYDlXzpWB6ZuBaddXX+36teuss8Y666231jlXxpVv5VsZV7aVceVa2Va2lWvlxVwr68qLeTHryr6yrtwr+8q+cq+8S4tpANqABqDHtAFtQI/pAnpMB9AFdAEdQAvQAfQALUAL0AM0AT1Ak5qAJqBJvfXWpNa5V+aVd2Ve+VfelXflX7rMv7SpS11qU5/a1Kk+9alTjepUrxrVqF61qlcdplWt6jDN6jANQLOa1QC0WKaVY2VZWVaOlWdlVPlUTpVbZVZ5VWaVYeVVeVWGlV9lWNlVfpVfZVdZVXaVT2VVWVU+lVFlU3lUJpVJ5VG5VAaVReVOWVT+lDvlTvlT9pQ1ZcW8KStmTnlT3pQ5ZVCZUw6VQWVQOVQWlTNlSrlSrpQpZUuZUs6UL+VIGVKWlCHlSVlSlpQn5Ut5UsaUL+VLGVOmlB9lRrlRbpQZZUc5MR8zoowoH7OifMyJsqLuGNIjR40YLVKUCFHiEfHQsJDwkKFBwUKEBgkKDAQI6I+fPnz26PnL44en746dOnTmyInDB+eNmzZs1qhJg+aMmb0yZMaICQPmi5cuXLboacmC5YqVvCp4VKZIuYsC5YmTJkyWKLGrS4LkCJ2RIkSGCAkyJwck7oePHjx26MiB44aNGjRmyIgB4wWcixYsVqhIgeKEiRIkRry1bm1sxjURIdRAfPDQgUPaBjQNGTBcsFCBwtkECRHMIDxwUNaAjMECBQkQHBgTM1CAwAABAQCEsauaoqdZkltn/Bd7MGC/fPXitUtXLly3bNVapDVLVixYr1y1YrVKVSpUp0yVIjVKVChQnzx14rRJk2ImTJcsVaI0SVIkSI8cNWK0SFEiRIlHxEPDQsJDhgYFCxEaJCgwECCgP3768Nmj5y+PH56+O3bq0JkjJw4fnDdu2rBZoyYNmjNm9sqQGSMmDJgvXrpw2aKnJQuWK1byquBRmSLlLgqUJ06aMFmixK4uCZIjdEaKEBkiJMicHJC4Hz568NihIweOGzZq0JghIwaMF3AuWrBYoSIFihMmSpAY8da6tbEZ10SEUAPxwUMHDmkb0DRkwHDBQgUKZxMkRDCD8MBBWQMyBgsUJEBwYEzMQAECAwQEABDGrmqKnmZJbp3x3/dgwH756sVrl65cuG7ZqrVIa5asWLBeuWrFapWqVKhOmSpFapSoUKA+eerEaZMmxUyYLlmqRGmSpEiQHjlqxGiRokSIEo+Ih4aFhIcMDQoWIjRIUGAgQEB//PThs0fPXx4/PH137NShM0dOHD44b9y0YbNGTRo0Z8zslSEzRkwYMF+8dOGyRU9LFixXrORVwaMyRcpdFChPnDRhskSJXV0SJEfojBQhMkRIkDk5IHE/fPTgsUNHDhw3bNSgMUNGDBgv4Fy0YLFCRQoUJ0yUIDHirXVrYzOuiQihBuKDhw4c0jagaciA4YKFChTOJkiIYAbhgYOyBmQMFihIgODAmJiBAgQGCAgAIIxd1RQ9zZLcOuO/wYD98tWL1y5duXDdslVrkdYsWbFgvXLVitUqValQnTJVitQoUaFAffLUidMmTYqZMF2yVInSJEmRID1y1IjRIkWJECUeEQ8NCwkPGRoULERokKDAQICA/vjpw2ePnr88fnj67tipQ2eOnDh8cN64acNmjZo0aM6Y2StDZoyYMGC+eOnCZYuelixYrljJq4JHZYqUuyhQnjhpwmSJEru6JEiO0BkpQmSIkCBzckDifvjowWOHjhw4btioQWOGjBgwXsC5aMFihYoUKE6YKEFixFvr1sZmXBMRQg3EBw8dOKRtQNOQAcMFCxUonE2QEMEMwgMHZQ3IGCxQkADBgTExAwUIDBAQAEAYu6opepoluTW+7tdnh44cvjdt1qQ5s0dGDBgvXPSyXMmD4gQJnVwcDhs0ZMCAa7EixYk2Y4e0CmdlZAsSHBArMGCXewPzZWux1apUp0qN0lprrbUG/NNnz5+f1lprrbXWWvPQWrdprbXWWuecKlTOeVDOduS8WXOGDBguWaYwUZJzzjpw2KAhI+ecjSLUPnS4kCvkB2QJxAaEpWXOvmwtzor16tSnTpsUMVmixEhR4aHBQn/62KEjh+/NmT0uefgOSh2SIHI6cMCAO1HCKCIN7ayMTKzAmuL82IH54qULV6xXp0p12kRJkiJEhwYB//j18b05s+eFSx6eEyZ0ReJ82KDRYsWIVu1DhgtmDxIcCBD25W9gvmwttlp1qlSnTZQkKUJ0Dw3ac9vcNHtivOhdwbtzwqSObohcnA8dNmTArUhxYkRrFPEhDe3CmVkZ2V1woECA9dwXmC9euBZjtUpVKlSnTZgoQWKkCNFh4WChwD99/vro8L1Zk2ZPjBe9LFfw7pwoQVIkSJwPHTZkwLVYcaJE2yZCrUNahgtnEh6ULUggNiBAWFru9ylOeNhok1AG4ASQX2GSNOjPmrwhcSlGGM3CyMLKWa0sQWJltOjAZhBjnVepT6scjxJtEtaw9Vx8pTJBoqrqAfXTLHhBfLRIF6RiqS101Rm07Vxzd9KA+3CinQfW83GZrdKYbdnmyhQ5HjZgqJVpZYKwMusiX60hR8zab7LgBfGBQ4aI3WEvCLB56VhtdInFzKeXNyROBw3jh0x2IA+4744DbHe8/3R3X7NObYJ0GOj3hkwWKHQ+ZJwQkeGB2HX31N09WDB2lLqAFcWGUhGwoNhPqhjrie2kEmA5sZvUAKwmVlFl2UwsJjVlL7GWVJOtxFJSNzuJlaRiNhILSXX2Eeso/cU2YhmlvNhFrKI0F5uIRZTaYhPZY0qLRWQP01isIVuYumIJ2UPpKtYQO5iiYgXZQmkplhA7KO3ECmIDU0tsIBYwdcQCYv+kR9YP2yc1ZPmwe9JDrB72LxVk87B+6SAWD9uXBmLvsHbSP2wdlk7Kh53Dykn/2DgsX0qHhcO+Sduwbtg26R7Lhl2TemHVsGnSLSwa9kyahTXD7qVW2DIsmRSPHcOKSaWwYVgwKRT2C+slbcJ2YbmkStgtrF5ahNXCZknjWCzslRQHa4XNS2GwVVi81AVLhZ2SrmClsHcpCjYKCyUtwT5hnaRvbBOWSdrGLmGVpGusHVuXqrFJWCQpGnuEpUvPWCNskbSMJcIOSQ+wQtggqQF2jpVLB7BA2LgUAPuD9ZGubA+WR4qyO1gdacnmYHGkmr3B2kgvW4Olgf5iZ7Ay0F1sDBYGeot9wcKhtFgXbAsUFsuCXYGyYlWwKVBPLAr2BLqJNcGWQDOxJNgRKCP2jW3RRKwb24YeWTbWiBqya6wI9BAbglVDBVkQ7Ad0EOuB7YDmYTmwaWgfu4FFQ+uwGtgMqBwWA3sBhcNaYCugZFgK7Bkahp3ASkC7sBFYM1QLC4F9gFphHbBlKBW2AUuGRmEZsAvQJqwCNgFqxyJgD6BA2DFWDPXBGmALoDtYAuwAFI4VwAZAWbAA2DA0BcuyK2qCVdkUHcGi7Im6sSZbokaWZDfagdVsRi+wmH2UAntZRyWswVZgKIT11+oLFVt7rbxQAuuuVRcKYM214kLV9dZqCzXXWusiqlda6yz0rrLWWOevFdb66ty1ulpbna5WVuuqc9Wqak11olpRradOUKuptdSZaSW1jjotraLWUOekFdT66YS0elo7nY1WTuumU9GqaVU8C9dMK6Zz0HpptXQGWiutlM4/66RV0slnjbRCOu+sj1ZHJ5y10croZLMuWhWdaNZEK6KzzJq4Hs8wK+J6eHZZDdfCU8tKuB46rayG1sFzySq4FjrrVkLroPPIKmgNPIusgVbAc8cKaP1z4lj9rH3OGiufdc8pY9Wz/p0v1jyr39lixbP2nSXWO6ud07jWWemcIdY5q5zzwxpn5TszrHDWN6eE1c3a5oSwslnXnGWrmjXNyWBFs545E6xm1r1zwFpmJXOm65hVzJnXMCuY865fVi/mr7XLysW8tW5Z9UxYq5Y1i4lqxbJeMUGtVtY8M9NaZcUzI61U1ilmolXKemcWWqOsUMw/65PViem3NlmZmHLWJasSE85qt9aZbdYkKxJTzXpkpTPPrEbWImaZlcg6xBSzClmDmHrr3Cpn4q1A1jjTyfpj9WEiWXusPMwg645Vh8ljzbHiMGmsN1YbZou1xkrDLLHOWGWYxjXGCsPssL5Y4cwLq4u1hWm2slhXmAtWFWsKs8CKYj1hrquJtYS5VxLriBLY+ra2Ja7VbW0rY61sq7FMta6tIspQa4hVrVRcQawfSkmrh7VDqWjlsKaVheuGFa0ctGpYM5SBVgzrhdLPamGtUOJZKaxnZZx1wiqhVLNGWM3KMSuE9UEJZnWwlpVc1gYrWallZbAuKK2sCtYEJZUVwXqgvFvHVrHSyWpgLVAqWQmsA0okq4A1QFlkBbCGlUJWdl1LuVVd09LHiq5nqWM117K0sZLrLmWses0l3IrXL1esd/XyhBpMBVaOUH+pvko3tZfKq1xTd6m6ShBqLhVXyUG9pdoqNai11MXygkpLnVVSUGWpscoIKiz1VelAdaW2KhmorNRVJQJVlZqqNKCiUk+VA1RTaqkSgEpKHVWqqig1VHmqoNRP5VY9qZ1KrHJSN5HBVE2qItlLzaRiInWpl1RLpC21kkqJnKVOUiWRr9RIKiRylfpIdUSiUhupjMhS6iJVERlKTaQiIjupieqRVFQR1UPSkmqoFpKSVEL1EOlINaQOkopUQbUQeVQJqYNIQ1WQGkgeUgOpgGQhFZD6hwxU/ah9yD8qH3UPuUfVo/6Rfmoe1Y+0o+JR+0g56h3VDvlGraPSIdmoc1Q5JBo1jspHllHhqG/IMKobtQ3ZRWWjriH1VDVqGhKLikY9Q1ZRzah75BS1jEqGhKKOUcWQTdQwKhjSTv2ieiGPqF1ULmQRdYuqRwZRtahZyDgVi3qF5KFaUfNIHGoVFY+soVJRp5AxVCnqHQmnRlGhkCvUJ6oT8oTaRGVCjlCXqErINtVOrSPX1CQqElJNPaLSkR1UI2oREk0log4hL6hC1CDkmTqnypFmKhA1jixTf6g+yAVqD5UHeUDdoeogDag5VBykAPWGaoNk1RoqDRJVZ6gySFKNocIgs/pChSOv6kJtsX+pLNQVm5eqQk2xcako1BO7lmpCLbFlqSTUEfuV+qa2e5XqprZtVCqbatyk1DVVxA6lhlDVdicVhPpha1I9qB32JZWDmrYpqRtUtA1J1aBm2I1UDOqFnUi1oFbYiCoF9WwXqhNUCduQGkE124RUCOqDHUh1oJbtP2oDlWzzURmoCtQE6gF1TDWgFlAHqAJUAGqYuqqqiqqnWqqkqtWsvnrTYCmw1FfaK92V6kpxpbfSWuliOiuVlcJKX6WtUlapqjRVeio1lZJKR6Wi0lBpqBRUCir9lH5KPaWc0k2pplQxVUwzpZlSTCmm9FJaKaWUTkolpZLSSGmkFFIKKX2UNkoZpYtSRamiNFGaKEWUIkoTU8T0MC1MCVND6WBaKCWUCkoDU8AUUOon7ZPuSfWkeVK/FE/al/ald9I7qZ3UTlonnZPKSeOkfClfCieFk75J36RuUjbpmlRNmiZNk6JJ0aRn0jOpmbRMSiYdk4pJxaRh0jApmBRM+iXtknJJ9VItKZb0SpqXVkmppFPSuzRK+iR1kjJJl6R2aV2aJEWSIkmPpEdSupQuNZISSYekQtIgaZB0Lp1L5VK5FEj6I/WR9kh5pDzSHemOVEeqI82R3khtpDVSGimNdEY6I5WRykhjpC9SuLRFyiJVkaZIT6QmUhLpiLRN3VK21JiKSEOkINIPqYe0Q9oh5ZBySNPStHRDqiHNkGJIL6QXUguphbRCWiGlkE5IJaQRUrPULIWQQkgfpA9SB2mDlCxlkC5IF6QKUgVpgjRBiiAdS8XSAimBVEAaIA1L2VRN0/RMzZRMd5pTnOL0U0eDocFQYKgvtBfaC+WF6kJzoblQXKgttBZaC11EZ6GyUFloLPQV6gp1hbZCV6GqUFVoKhQVego9hZpCTaGl0FIoKXQUKgoVhYZCQ6GgUFDoJ7QTygnVhCqimNBLqCW0EloJpYRSQiehk1BJaCQUEgoJfYQ+Qh2hjtBG6CJUEYoITUQR0UO0ECVEDaGDaCGUECoIDUQDoYAoIAoIBYT+Qf+gftA+KB+UD7oH3YPqQfWgf6gfige9g9pB6aBz0DgoH/oGdYO2QdmgbNA16BpUDaoGTYOiQc+gZ1AzqBl0D91Dy6BjUDEoGPQL+gX1gnJBt6BbUD00C4oFxYJeQfPQKmgVFA+dgkpBpaB3KBT0CfoEdYIyQZegS1AlaB2aBE2CIkGPoHQoHWoENYIWQYugRNAhqBBUCBoEDYLOoXOoHBqH/kB7oDxQHWgOFAd6A72B2kBtoDXQGigNdAYqA5WBxkBjoDBQGOgL1AXaAl2BqkBRoCfQEigJ9A1t0TaUDV1DRaAhUDVUDQWBgkA/oB9QDygHNA3dgKKhaKiGns6olLUOMScAEgFEAAAABAAA04YBBIlEQRJnYZaqDxQAQAUDDw8EBm5rB4FIAECyAQBDKQQAIABAKM0BcVAwLPyIQYDXVmADJmBFU4FLuBA2fcUmwwRYdA2ZCZNR1XfMBGxATVdCl7EZdJoCTcIlsGk6shmfgaItyCXMiLq2Ay9gImi6BrqAT7DrO2AiJqGmWZGP+IAVTQUu4UJU9A36jBdA1TTkQmzCVV8wE7ABNV2JTMZF3PUKsAGXUKlt2GZMBoq2IJcwE+i6in2GjUtG1ItHHLBwTToRk6HKd9kBbIAaV4oPsxnomCIexCVgY7p0MZ8BhS3SQ8wIdbYLH2Ai0LgmfIBPYOc74UAmQY1ZpQ/5ACtMFR7iQqjwTfyYF4DKNOmBbIIrX2QHsAFqXCkdzEW484pwAZegkm3yxUwGFLZIDzET0Lkqf4wJYOGadEIug53phAOZBDVmEz5iM9wxRTyIS8DKdfEDXgAq06QHcgFubJc/wESgcU14ER/hwiti+ETspmzmiA1CDbOBL7UYd5gCj9QhsOI6/EIPgIpp6Ak7gBu2409oIGi4Bl6ph7jgFXCFDqESV/ATe4wVTAVP6kDY8BUfWQNgwTV0Sg1GFd+xI7QANVwJn9xi0GEKPFKHwIbp6Mo9Bgq2oCc1IerYDj6hgaDhGviEHsGO78ARG4QaZkVf7AFWMBU8qQNRwTf45R4AFdPQE7YIV3zBjtAC1HAlOnIHcccr4AodQiW24Ss3GGjZzYxLUab8LUVHNfAzPoM1n5FGDQ51wMh6NRusASLptGSiBk601zMDWiCxThkdbuHANUo0qINC1ujJ4h4WSKskh5pg4q0ePNCAgXVa6EAPRd7rgoENlFhTTR72QEYaNTjUARPptehxDwi00ZIDWyjTXskMaIHEOmUyuAMz7ynBgg5KZKtlixtYIK2SHGpCgXdq9lgDRNJpyYQdHHmjCwY2UGJNLXjUwplrlGhQB4W006Pfk+GV2BP+k8sqLDxDqMRVXMgafcQa6zOwtBBITmqGibfFCTyBicHbdtL2oAt9AjmSv0Yn9Lcu7X17r193F2pxxWLvlsJrnt3hjdE3gpXJdNResRu4JJUsy2y2xV68YEbHCLbcsQGi2wXajC9hFbV5n5fhDMr0TI9JPH1dHk3K+hnoUyqbpfMjHdgAxnwX3tiW1MHzo/AYyYwmt8oGQmmYgLCn7uXC/wlL22GPPBR5LBRXsJ5bJzEy+Gxk3706fPOVyNWVTWmefvgpD51v/qcbhR8XKzaEV5S3yedZdWOdNxnJbxrfH7RtMov7zagMxZXxg54QKNOgJ9hcQbi1PPMbGBdbxrwzBv5faUxmKJkjLpKoJ6wcj3zgBaEyLHEhF+TG8swLTBQaxwb6Ux+dsF6pWuz2HvYh47BZFqAJSVK0+KDlS4ZXB4wb9JI/sFdIM9a0JV/k98VZ1M7UPAC9yZK6hpZdlKnGK1mbL7Shicy7C6gUZFJpmBfbXED5W5oWsG5j8fYj4GWemRGiS47aQSajjsxRb2Y5hwcyREauvcwW5KVtxsJ9pjg+TToE0lyHX+gBUDHdFvU4NOeA4ENz7cj0p+GXxn/NPQpMeJhtzmOq0A7pNTlvOo+quFCWp8G9GPsLemgtYetPNVqX35DTdO2jZk+5hv07G/5FejnuXdlRkzfijs6DKP6wXxen6pkyjEbC8OYyp0bP8zgzxujthtW/4K9zUz9ziAEtQTIzh1SI+/S17+n1jsUd1mZElX1Ofm3Fw7kC9MIGGgEGLvDgW8LT1jty7Mv8a+SvgX27fhzjK5K/CgYKVCGsXT9B5SpVtPbUp/nG1L4lP470FVgOhdi5CvMkSJMRDxPBjkkNJqd9ICtukg5QZpwITluPWC3C7xYu6I1n54YN2O0pVGIKXiCtr55GhDdu7Rmx3DtiWih2CDRPf+/59XJlG+49aTb+KCP+NEjiJzQh9+og9yJMY+CeYRu0F8t/7X34U/D9q3R8JSgg3yaMfa4Yk49xYvGHVpN7jx+0JOjXmDBu2hM6USaFrFsV2GpYMG9bSH3zAn8tDHaNDEm1M3DW1OCrtSFLgwOL2xz8mx3SaXlgqvHBWftDXk0QXFohLGqXyN9SwW7bhWlrRmYaNPhu03Bp1khRywb/xg277RtJmzg428rh2+6RRUsIi9tG/FtL0m0wYdpm4myzSd6WEy4bTyy2n+TXhMJuK4ppu0pmWlr4tr24bI1JsUGG/zYZu80ySVtmONM449s+k2UTDYutNP7abdK15DDdtuNMa0/eBh8u1c3HEzH7ZH0tPzwx44/r1/6T6QsOySvQYEtdW9B8b7HGXdzQ07pWKzj9wzDe1855BlJsc/UXcGtQUt6mNLpmpf52p3Sbnpi2PjnTAJV3GxSXZiiLWqLyt0qx21pl2mCV2TYrvs1WLkW7VqZdEC2LvklytzgtBfomTL9bgaxosNBLLIyVId4OPC5gudneD5bjG8q4tJVZ3FyWv+mMnSY1U61qmTWs8dW25tK8lqIWNv5tbnZb4ZI2xHGmLc53c1yWpjkWosnONE5ru19Lj0NaYuv6r8hbsr1/gBPyQ/ppW+DSftv0CUdK0gBo2waYXDMg6xsG/ZsK02ktZNpg6GybYd5mQy5bDi22JebXushOA6NpG2Nmmhn5NjxaYYs1+S3agW9p9qqV+Dpm5rVPam4RbEA+jokI8bTV9I86+N3S4A2b+bdtjmveLNXCmVkTKF+toC4NoSluC+XfHGqnRTTpNlLOWk19NZxmaTtlcWuqf/tquk2sTK+V1RNlaM1aWyvb1ldz7bGpt9DyDxr2+ZJtqsW48Zav5lyXDbwpNvny1whs1yycdEMxZy3JvtuWs2xtZrH92R80QefErNBcb4i2lbbonChzNNct0rbbqJNrtWa9Hdt/y3a6tm6mWr+dtYfn3ULOpc3c4lb0/NrV2bW0m257z6w1nq/2eZcW+xS14fNv1bfTzp9Uyz/P2gLc1TpAl/YCXdSC4H6bAu22Muj02h3cxNjsOQ/a3xsgFKtJwvFGClrfbKH/hgzXzdbel1mLBokMXNsRomz/ZVlo4CDcNCbIRicxWduH4jZ/OL0GkIxLI1vNYJ05rUwkl2K2DBHTAxpiaao0JQnAGlO4054iUjMBwo7UOGpMSoMGgazBhXDaXHRqdnGuDZk3vuixVdfq1Arj8Xkh45iigznG/WXeKEOU0pggTQpisu01imuycXoaQD4djN/qH42ZZdOGynpQTCsP7TT0KL2GLpmrINvLgGZaLTG2KPEhYovStLK9ANNsRLiWI5221SzHyDchcbG35t9l2pKgaCpeT0K6tMi4sSyalgg3GxNK5qFIttUJdYYnTruh+QlauTGtNFLOYFqmCNc4pfQ2dPlYALe9P+q0k9VwsyzGvaA1DLl9SrMl08Ac09RFuNYunTZ4OXZB55q9rNgqpLhS0v7lrEOgxq6GMHFiKxh2ZlvE9FLOYdoPwU1jbqJdjDaxbWREqQYybUZpLFMmtpRpH6vVzJUymdFebGTnxjAjGlFrR9Otbmduu/Psd2qJMqsR9bWs6Yl2RWuLYg6syQ6BC9ak7F3M8p8+xqJpX2jDqOj2jSQ2EDtO80h7ti2wZf2Q9m3amFVFd+ho7/7igfGqBpzy8MQyDfW1zzB7OzbOj6M7xXTgFw8ZWmVNmmhxv5O4br3U4DQx10DaRzeTDC1rexK2xXwbnU0jvz1dd5Fg57iUpW4bKS7i9/JGulTQ8hnl5uIUizMXzMiFAY0wx5Y4AdzTC9MZYwa2fd3iVjxvfKVLGq3LJe/pu7sZkx63bluKNKsSqqkN47bL8J9F1QrA56tbS4Lj4jDMBCIv0zdtT8hgZVPG9edxh4/u5oHrpEi8PvsjYUyQfsLmaPr7IwZZBjF8UaLL58YfNiLYUKY85nkpP1sQYa1yposuNdflx7T83tA0Cg33eG1I+2bpn4YIcqe0qN2XcBrirkP9onItZ5ylpjG3Z26Eri3p1hv1YS8zVNA06638WO65g2uQzM9dfyM3ScMOa6hPylZowdIqzqaJhPZNzjHJ4a03FHjfdKuXuDWQlRNzLp50M+GHg3Go9eKJVja4kFrtSEqEV1G4p5ycuclaED9zWSg3ickuNrEGQfaZsfmwM+LdSauWsbrwcBbLR4Hy2P/i34kGuQ13EZoAJ5o8xgTRJTaY846wOsw1zNK2VQDdZyrxLdS6ty7TkPfuWEzcGgsByyyXr+nuPfJ0mYXaVlhyfWbARZbTrU9Muko/z3LuUZArrQKtHoT4b68QuMNyOZrmtkdqaRvghKkUMmyjlLyTEiZeS60AF4q382ZbIN6MVNMCqTwjZE9us4a3QFffDQhGOm5jwljuKKUUEQmPh4A76knBktip7y5IDAuy6n6V/M/TFjk/LAwEHqw7jR8WuyybWoMyBk7JOGxi5p5OsvSgXViNOeNud2HMmYYp2RbMLHZhi5o5SOTbt2lOt8Z5qxWn3db9tvP3kbRvHGVvveUhSy4J3XORYuv/fngnCcjChd/U1A8jzVpt7HTeiwTSBpbh/Sgnk9rdWtRKzbnJtuC2xrlqJRMnW5TMah18UbGsiJ7GYN+W+eO4q2zK7xETbYtwC3rbx9ly/jVxjJhQ2NbFDs5ikTbgEey0ZaZWuHQra7G4jFtznmktfNe2Sq7Zo4zY5Gx49MbYr/VtvJJjcRJhTvtazdZl28Sj9JkpWnFJhn4nGWKfQUJjPV2Y5gl7lLeiKxA7t9yPFGI5YgyDkc0cK9zefg0uLatRLW/cneVeTtU254YKZp2lkUiPh2YXdOSz3RPGUu8mNno032HHGtPiTwa3JByYijjTJMG2wo4U7I7A1g+6MzFPscK7ECdOGhxZjDEwi2Hh8zYkp6lxGcU7pt9ZfY7I6r6csVIHV5fjqm6Tu43QUzBqGgbsew19zcrN2T4/Xkua2ZqzM6ss1ASDMocYC3in1FYzrPVYfs15bXFmMZqDw6aVDr1FqLDbCRhM9S2/d8fgUy8Q3lY42oeC7uAt4Net2F/EbIJhTFuMnM0xykxZaRqLTWcaRkGjMIRvuHyuSsGALr25mLklV42KglbVdQxIbmTzfcQ+dpZg0DPd8S1hC6mT0KNz29Ks9lrY/Syys/lGzyrzIH+dd7vF1jGKNpdUa+4WDwNvgIk+IybbTljd3GlvBexsOiJnJZOd5rmwsSEzFd8oaW1Re1Xn9wBozAWmSdih/p0TjnZI6JrzIY3s7harZxFDgSGMD/Y2Bk0HC1wYwXHvsWXLjZkdj9/j1hzV2g6r45eEM44TaU3CXuYTk5lqXMQ4I1oNGhiObk6oQkNCx9gOJ0vUiXZ4OLpk7+Y0LVuutm4w3EZzetnGGsO28QtVTdV8aWniigdx+80ULNvnrpbokTowv1sKv2tzzKTMV6GP1XeKUiZDva1tD5o+f3CnsKmdk8xJlClnvIYem/vrvyjJ1K6kZHtp0MqwId/X9rdTlm04Q9E6Cm9kv2OCMR3DeZoWbUYE2JHcFcovVMtKx2UzOf/Uuq1wd23CSFaXhiSbWZQQ06gk5nOSQ2+4tBx+3ehs5oORIvtcjlPbwfV4PheuH4Oxvq2CjiScw8PbbcGTkWpOYtvY3lAtLyE8jlTOUa0l5qJQS+5i7j/ycmPxbgZXn2/ujisxCWnBtxnE7QySypE2R7OFuwqsPFpmylH4zuxmB/IV4SkG2rJA4CjSpRNIshg/rm9he1fg9iyfWLKI/YCloXt5pgFXJo6wZqqXBMa6wvVK8T5nuUZgZ1LZ9K1hCDBrbPD+Im7qgowly8rMvBe2hxX/S5YLLW+v5+wtZJ4sH5m5eeyiiZZrO4PL+fAqKDOOH9ymjVZ6lnO6pbqqDOz4BH0pdE5SGtz7j1BC61HIFGq0xROiE76iTOmqOGZCUsahJq1tZ4OpHwmSoHmg+ybxFrydoXtwJ2ZbDde3BJHQPYgrwWQCdobptZYvx8SwsxrZ1gnzhBzOo9hZJuYe/XWhmMdODg1T3rTbqg7xd3kYFnlm3+ItfM3sfc55fcDRXKyv1+D9NP3o2Q3IzmYgfTQAOafjF21osqYsotiMqz06bVc6x5I0tAWp2X1EpTUKXET2zIwxUp/ZvD2pd5E9OBgXhaNjjD83j4LbsIgIcmbZsI3cNvo9p22q75HrW8ixZCzK/bsK85qEN/fIs0eNWQQZI38253owz4udPO3JotyOuOVmQO00mb3QXIIxYXSLLditYU86eGarDghfxSvczF4ua+juEFc9L5SXKxeqYGUmh3Gac8bBePMPZ5vXW5VYO3mDpnIClnCH2cOdDNeN7NUKMMJk5z3RxiD3MWZ1LpubDVw6VofoIXHDtAKkM4UelO3w3XPqssnX2WAhdmkMrclPHXc6bDydSaNrg5PcgnskiJwNme8szDLfmQnETey3GYnTLWoW/nQPWO5l7hOzwflZh2Z7zTEwZJY5oUiGhGKacGzDfV386Wvfl5sfDMtYWZgLHJmZaGqy57A8k5VfqbbZoDVwQwqZ1AoWAz7m7PoWHI0c55IGmWG1fRiGq150i3uBKSn7WKlmsTCYsBtL+PZVjeXjTO4bV2TnrINOW0QLj3kfv1t1SGilcvD7i2EKAdsUq03yB1W/SjG0pfgCD/vJtK+En5lyqMv04BaW6+NQ5+bla9vIOxuJzUkP561qZLBCnMwY4qSyuQ24v3FZTgzLEGAnMcXWmnFsNEugDNomMl972s7QP45BsP76KCFsbmA2K4N+5rzsE/Yqti8LqLWhmWtYJd1AyKgVuC2LlUnvvc1d8werUOyPLxvLMKWnDWqNPaqLDSSz+/JZaC0eedv3jjQ+p2sSUINSmE3GIOwmwAVlsfiY78r4n4DBn8Gdn4UjjNDh6Jjk51nmnUEmeM0EGM6FcXXh1crepmHWlSoNKbuMKrkYu0fkdf7q1pGpfS45pSTMjguvVSRsnFBgQd5D+Ggl8bEwJr2oIzyk4+DJ/Wzb/quoJCd5fGFYK2K6sVVnw7anux/9yTG06PDXWFEgyMG0n7WEVT0J3P6cdvXcedQbcBIh1qrNBm0ROI37tJi75be2CpTTZSPj/3NhWTnGsN82mXl/2u7fOekfSN1ujln4GdYZdWsz54Yw3kplwi3wSEuBlkEcHDg9DU6XH9+wKt1Awsj2/NTWsEkaZFgD8T3NKLa+HD+D2MwTme7L2JZzTgaLOFCTt/URTJvtD7xNai4Ma9AzD4NhMBA+tuK8Ro6zWyyh3ta+HdmqfCka777ltFY24EbeVbv7nhDLNCTWz8yudqtwPJTdxubEzixx7FGxO9NiysmMxu79zInVvOQYyEp272v0K2j6Y6cx5bLj5b43LRtOeZmPeAWc7Bxc6iB4mnMgzEGg59lqxqH5tjOrMaeCkw55Pqebg/WZcYa08hFGT/NLTGNLmSaX+ukz4olzCnt2mlBMPJ4gMJXgeiEJjzgZdQ1hA8eQzceWARy7qNx/WqnWbmWPu5PFcn1Zx9u51XtZpM5kcE14WE34NF7g/iVv9vbczhtYze4wpV0yD24FOPN5BbvK5bVn8QHnf23QrF6BScpVx6f0HfZxT9JuZYDdd4YNgidEHMo7vbJgV3kc/S4fsNmRYaqvyiT/8PZ5roHZuLwtSbnfM3C528CcX8kk3JCWCa+DlUrjf392M+qT4rRHlWemDAHn/C321cY6fsLnU967BQA3D7SQlazD6ahWMuOFbdGvesWT1PEO3OQCbKv/g53sY60bC+7G3ifZ0ofF+X+NCR54rPjvegpZdjibx1qX12Z3305MHhxz+6o/1Skks++IqY6T5z8z6iLbQTzDKiobWCA/u6tBj1CVb08QN5NAd92yN7VtuK2y1wgHaQdOURrYp8swpg/ZNmlcNgFln7rQnzFUrwKebN1jotLWcjdi42e/DZK2EM5tBhzp0nA7mJORf7Np/3nmDBgFSPsmfFsyczCHuxjtRRP2HAK3MHc69jlj+dVPH7BLBYZcJzZRmCcrB+nBVI9c4jTPpiqjyqUy45pVF8nuNDM2SqwHcxqwaMaaHGuWPXxwG+3ntDplrBZS06jDA5N+XrXcx+xvShmRrpxx86KtPeqvgujhP81SXNCg0bsRzY46zId6o5VSm/MVmtvwPSuVxhS9IRC63VEX0QzGgHb4S2w7lz2POM7ggvH3srBptJu7egiaJKydM0XvKwT1npr4p4OprndrmSfhYI6e2pojZaW3uJAtj7iSy6ZmxC1DTqMJowTasJ+1pwlpuLGrZ+bXbRG2I7B39VBP7rEu7VM+Rex3semQ3BBg9w4TiJUTB3P7Re+mjLtGurL9rO785kxzWxslPLPX/9o7Ofxz3iUy7a6UMXZFG9v2RzRW+7C9v95skJYyxuwv8tjuZKX30fIMyc6h9iRpPPdhgZ99RaSIwZjSLps5BRwqY/V681Gx5avpfGbZJioj73A15tmpMRuScyFM8ypIWzXfpy8ANpVCY6nOR2YIjX5J1GZuMTca98pn0QVarL2mY/cWPCwZwxlT2zW4D4amG+4SYGnSZY1H1Yg8fTUNJowy6Bujq1GB8JHXr8ZUjdy5FO9vtBr9Xtz6gHZmkqtmVE08BE2R7i5nZsU9khzW0jtzyCkjNYw9dcXvUPbG3a+yarYsYz+Ih77arIW1stl10SGN+wnBaw6vTZmRZJKuTsEoemXnPdjoIeqq09KeJNxWIzpmD7u2xVr1ondxzCCOFJ0dJRoo6L5d7Ods3ZQyll65GnJ2gj5u6LU2PAaPXRONDxK4QSPv56ZfDkfTxJjsOUo4bRHvuImfTHfBGnCf5VPsOlKzhoUjAEBOBOHgSFRMrF5pPXrMdgk52pg/set9BbTMLU/TNBG2RWJvPDUvGNkVs6u3qdFr0ZUfN6ZK0AbwMpZZAHZwMnvKp2orI+G0pqVtWdaJ7uX+SZqSjhQLIRXngkZrkRrbEFlB+7OBERV0aXfCbgdQ1WmxQIrdLV6imemj+/LfUByB076yk7Z/eKHD0cvJWEatvZqpPWWR01045gl02Aa5GZnehoiEdYE6TMLgHO7MLET2p128VYP4mrbj2K0fUyym/m9E2PHdbICEGRWGwxFlBhIsZP8NJxtK5EctBoKpSEuRO+Bpi21G9w9iwbbtPmXI0zFLZEJ2s7z6eIwaRMDlpktUmPD0dsVzH3enHEq99s+OFZB998alyYcSjhr6FIOCGsVlKUQV5UoruHb6wlYqWN+RGVghXneDDORl4PwtGQKmkR2s2xQgL+VmjoOyYAgmcFKHF1zsH5CX7+q/ZauLEBxxph/UOMvubH/SYdNRtx7aOYA9Hvbi48VdGYxocHt42sU3eUJsZI75N7p0oXDRBsWCpk5Li8Pf5nfHbkgL19sdLv0Pr2tzEdrYQuwddf0g9ys2F7PjlcY5tcdp7rOHtowFoCVTGMQ0yG9mb4iZs+PhdvFUH2w2+XlepmfHStSH93GacqInrsz/QXI5nvMTvW1IsEk2+mP+neX9tmBjIuws/8oLGBiw3Evty0oM3TwUjAeT/r0hFiCR7EL89Qrexgdq8+2HC9dvu2mfJ/qSlSg7o9WOHCBb5i8rtPdY4P2AknhPxhmAMRrvHmpLuecBWQH1xd8SlhlZPkMxDpY1mHC6hsHIObEXDmxeaCLeFzBLMwok0CtO4G3CpqAxchkhnspZpLcm+KtESy+eYX4WuLDHxctOnVFrztHKpsPKsaHWO4KKmFsMWN7wDRWv0CMIF5BmLVT2XjwtCC5/2z9bbNsNX4sU7AXWvr1QeIuCb0Mkedif+WpiAUlhAydSJC4F/NJsGjA+E1ooVtygjT4Kh9waGnZrLD0zRegY23d2eAIOZSZ4riFBBOPdq9qkH+oZxzDb3vv2vLUfsDty7CQxHJPiUBvyffRdY6MDAkGdMLDw1PtRR09wivGzFf1ut6I2vznLMcCjbDmHgihk2ivbzdK8Dqz7zH64/cImvrt6LxuL0HIwhQnZhGbH5i38dbTwyNvuRvLMWePKWC8znq7ah52fnFe6cOv7NtmP1kWy5w9XMu/bh13ee+85spT6qy1lL+LOfd5LtqvK3QPGgqzvmR27P0UQzi9HOce5qHDB4wPLsRBd2/F8G/WOzu28243m5XYc4/NNWpuNf6sr3S69nopmLy1kZLJGuLlCjq7FohwJ+c5rRdp96t89SYZYYTbTEzzgwWhMm27XnIc0SQ3l+P1bUUbzBQSyVeR3zwNaBedthanLMQbWts5QbQi2pUi6sTXy786tuFj3XTyXjs40W73MS2FtkgFrxC13GeoeoyNtHeOPeQgrww5Hzblvw07hr3IFwKFfEEFwMlhG1zqVMx/hUMvtYFZiO0ZZzmGBGZAUtk/QhjZy9x91wk3wOUieaD3FlTeBvb34qkuEFcTvKix/mkapzTZ1I/s8B7BAZ5TFDoomaHL35edy1OHrO23e53ckE/t9Rmv0Tq1wsoUxH+5wI6yZyzn2IbNtcF/3+j3h/gaNtd0k6v3l2/wuiMWf/7vYGsfVUKXbmj+4gW6TQs3NY4rpCuqW5W4tbPKq3L9yR9jeBbclE7O1yUszvHXMWSZTG75gDsCRzYqp93DOJ2CScA6ENT4yVTuUcvl9ZxNS9iaGDWtqPqTsQ6guSBMfdvrDkcWmPvpzFubJ/UzanVmaqw52++yehN3YgWt5QxWZazFqyXWYQmNPcmZ75LU7Ny9j7Fu/c7l8dqBnZIOt2Ko3Kmkc5uwahr64y5x3tC/DSjDS57St9Ist8A5MiL1cppWPFjvRZuxjs1VfzJVOY1mGXOVxRQdb49YN1V1ZYEo1xij8nPbOG0Fz2+objud/1ZEPv0l9hZollzOsxMY2ClZtz7wkK193jUlXRr3HFJGx8LbbIm2tfmP5njVuY/1bZkDN3s+qZDvX2AR49sagSrL0+RRqXdfU6RSwvcW1D5cyP5xOyt6z3UOoj2Eb4cbmtofGvArstsw/Ug/DWDSUDQK6Co963Ia44znidW5e9u1jkWkGZl8YD/F3GUiRd7F/mrXCQOMQ3FQwuMtsoQlUbgzenpKc6xsjETS3VgmJ51V39/0eFHpvuwGvP4yCGgDDsyvBgE8c9j76ZpdDE/Mk2zFmJk6toDdgwQpTL3NMn50uMwOtrdwTTPcNtR2bHzNR6OjtOAukBBpkDc41QlP8wUdF4pW4VTDKMCpadrhhDdN6GSrcV2jhTKMOieMfai/GaAfnnDiRkX93w/Fv7+ZC11gMkka2OlTfPCODoTg3w/f1bWVmeMUhrvZHGXP4Z3vIGdbiQG34BFm2fAa0m3mnzuSFVh/sZiPhfImjX/VS1z/cvkKjJrieybrAPLfpG88nYY3RGH8ZB+VnTbtlzFRfGbcjmybcxArLbwrLehYb+d7Mdn2WdsDqQNkLsXQow15TiEGsaG4f6ShuA2MZTTZyfEdx/ULe4olFvIRmzr9dHGcBG2x1C0pvx7M0Vjc0tVE79Sb9wPr7KztL+9HlHlZhGadsecMCX0ojY2cFg9Y1kneq13H0T+7OKlgtO4TVaavKbfY6j2vUmRGHpj80Ksv2JAf0SDDrMdpn7tAXLlCB2wm3ZWyLzepE6M7QfhePxccx8l5pS4owltLaXewuzKxDJ52MHp35Ba0geFdEG/ElpFQGtVSdgljBEobAbhhbhgZLM4vutxZKb8VefEUpe+kCv8rQ3jPRnm+60FI6tcOYdPhsJjX3pfGxu5hD0r1OfvNFs6IaOh3a7gthO49PF57ELsrZPby30nodO+U6d7ilswymNh/FnV/Mldgx1B3jlHx4X7HIxFJx+7ZRbI/NSEIZmv3Bh9E2oj27Ecsm7HovoghbjJ/oMEJMsj9Ia5QLkOls0DLDDnJ/4E8WVjND38yfWIWeP1aWH8NimdVWOaf9Epi2IXwj8bOQc58Ya2RWOySfZ3tIwNvNEGLnQGwoAC6N3W6MIVCTPCogxBt4ZAtkXBGzsh/upKQ3O4hvjQqzQ+ZUjsOBADpzWDQB1BwOVsUIK8bl2zKpdsKwBrnGtF2dJW6dYA6ILewNeFdqJfDhLg4dO2Tc2wDfltHN2S+a3UiUnzA3YMW4DQO8W0ZzHsYmTPcqDOKyHcKf2YXWiOaCzPKeBvZi0xOHjANdZJq3U1EhZDE71A+0uQi5mwwHxrePrf6oc03Z7rP/X+np/VcBO7mucc6vLN9L4C80PcAtTsxqz+voQ33x51oyrLT9a6uDZq4xwj7H3pXODp5ik+O/mfPvyPJ/gHdFO26DITD+srhDrVhuzIHIezKI0vAsVMg6zW3gDIfDlx8ro0+8XZZAYKnBORM/UPnMltrRfKSA9iXatGQF5y0eK+A9+LxjIjNEvzv6w/Cp9h1Mb9U/FsHWvBfOfIyE2ozenh7u88ViKc9F7R8UekswNE3N85ixRahz1tO6l6vsx6s9J8NiLnUGAtJ2k30+yCzsWyelGJ9bu/x1USz0rqe/7yi/FrMK23BR62c2+xBjA16h8QhrVn22fq9vgbeA8fV4RmQPxzdW2rLuM43AA5KFQ3hsA8SHg2aihzOs32qYEasDmwHZDsky0a/pOVbiZ2wD95g+6YmVW/BmwWZ5N6xJrDuSORnXw1QdgjcYo2cfoi9FPNiIjDxnn5mfq8OQXwaJFWVcgabuP3Wanock+O3GbObArIFl54y28HDItuMMYs2X2kryryVryNAFwXA47NtQOu3W7zMzDqi3aNqKIQC0uHv2ESE3dzDot8HaecbaixnfsEskYNrQKYJF3JeYVyyvGDNxXzFeMRjEv6Wg3tMMiiGj03DYb0NpztzZ14pBn0nqrksrnQd+037HcNDjhZjKhN07DL1FkxE5DCsCoFxPDBn9hsN2G8p8Fy/b9hQwUlkSUlJgpLKkDMMBkIcM4jnUNYQNRv1lMOVI5Lub4UBvQ+sFASamDXXfmKkkd1sMDYf4bdBWHXvXz1COmraQ4dC9DZ8t5xYVg4t+bDhob0Pit7P11OXG4SApOIKHbeXX9ojs/ZpMgCYVJOU4HJAS05L/qALLkfQNvq5ZzPKX5YaDqumye6Fm99jjLjAfwqvfuorAgKyGzarwUsVzqLMZDrttKN17EbZDU4nKrzPbnEuw+mziviLMhgMQhzpvfO9rW4w6sVkrLdcCA/PTbEU34kHAFnMGxOGAvli9RFryWuzaY5eZsMyWIZlv3fWeB+obC+V4ddmvOFIWWNFYBQgt0WSUu8K6HYDDI84DpSx3B7HHv6Xni01rZlTRhPttq+viiCkbwrYL50ty7C+YDJoZGJVRBm4vBdDug3rl2a7RSuMNYdIEEREoD+SFJwO/M2TEsuBh17dbW/O7LeA0tG5tisYh0h1efjto9qIaTltMpd3x7OevJHX5h+2GtEwfXndNGw6HS2OwGE6DyCQlzRLy2exfeWG+LpamRlhQcoegJuZdBNStuxGthl5p52v/BW1qi/dEjzAcOscY7svIZ7S5HvekvdPOBPInuhFd3zTxrkGvnVZklNLdnGeGqUk9sX4Ef0S5vDGWfqw2vp72u2HahvDNxJ+FnH3CsOJ73e/3PNshMW8jQ4S34m+oGyz0pd7mpp2pHzUt4A/8xBaSsb6pxt3dZxxvbYCPnthSXUh3oovkJrqtFeeAcshDMVQto3HM41p/HCaQE1Q+VacIzcGSjBB3ijPJQtcILgjFtUr1tgFGLlEYVJmhOlmJ2VesJaPvRIOWaazVI7YBhAcYsb2cjZ6utBY63AcVnzZsAT8XW5kAqWNmGz5k0Kyjxs/kXXMKt1XQJSB1bxyGYHg1D2qEhlXIGNW8Q7s0rtUOsA3SsguwYgr7inPRVLqRBRm9oQq2ieZaDboNKJxDGwzhYNTZLUUQEGTnFzZoHETbMDBexAqj3q4xE244EtzdjQN3G77mLfwg37cNI6P2bjLU2IbkCDeHIDsadq5lpxhDhSxDW0FsA+eo32sUD7Hahnmt8e0VnWxLdNsB2ltgk5FGcyb0gnXXCNttyK9pd41SO2qoYy0QXOPGiB7boLj7GplGhN2Gt8lNqhn15jfZho81JmOsWIjMyta4t6DHMCg2eQLnzwOU1rjYhaDvYr1Hzw9DXGTWirXIuMZYeRuAZqaCLrfDNbxrHZIvsiczzrFGcCapxTUG5jbgb3xPR/ajzm86PF1/uRsM5NvM7Sb3iXY2BuBmSiJLXJX4bWh0QwSbo9GMlXEnRne5WTRL8GWCJJPgxUA9nNlrJ3B77GnfQjCciRVCs/VemfYgvmkc6s2Qpl1G0TbQZey8fbOnuJVAvDLCWUywL9TKHBl3HuDGqOzaZJuvVMvfeNGhw/ExUHK/TjmPhm6hhxm4/8W33C2jj9yE9j0IRJalllm3S8BkLPh6AmAHKVZz8LmzmwfLFvSE7+hrgAHsmjdmTqwscxsymaLXQh8ybjZ7PlvMNujHF8va+oUBaZgf48a+0cZRNkJ0a4s90Nb/zNsULmQubaJ2qRjRHKZPETsrHcEIq9hH9C18WhnWWreWqPbrd3tSZhuK7VqfQwMuxRmubpBSGfFrsNIdWmEtwcfzTI6hts/T+SmbZLPELHuUnd2J/WHwN0OW78YVFuv+0tNxbUybIXyTsK/uA+gLaw22FZGbVaFia4eg++/VHWoQrqeb7yYkmd5NnrcSc9i3wJJz5r6MENnfRNGhWLcMC4ZcglQqIiwj0Azi6x2zUkPAvgUzDHiZC7fhs1hZ2Uw3YoKuQBhcplxzS/OyhpUFSjcT7jDIcAfaDuIRJnWMsCwOzI6DDmn4S9RQhMC2NeMkPAstVUIEq9R6vJedCH3iQxIido2xLY/dlGXHqwyQQ8prJuxkdWKXAu1aGNpLSxdhBg6RQZZjx4F+SCzKLG7vIsgaxtaRzSZDsANxMyRQxtOYZaH556u+LxeCayxjzcoQ8uw7flg0gC5TmmUNTDqYXezjz21KOtL3AkgDeiOX5ZkY5hsjBgvXmC0UsG/KTSWDUHcA5uBb2Vbwa/XUGJM/mBH9u3P9JBVx1bVCq7cDozek8z9npnr30c/L1DoF+rCF4bQm48Yc1NGXCFlvROVmhVTC89sEV+Mrn5J2HG5IQ2x/4lD7sk0TCNTffl1IamNv9vufxE3T8PFbA2UDK1umHadp/Q6ZF4SOgvs7LFas1UH/grteqCu4F6b0//1nxZL/IMP+xVKEfFgHRDjTJtQHtiD812H8eU4z52816BoveW1eXtv/gRmnbdHE2o1rkXzv8kwNLrBMJRU5ZQ5pmoDytsyfvsDy6f4k2mX5tE+H1hXqvvq8LVDhGMBe7gd7LJB2jzjaocSFvcHEsxtrsvhtSuUstLLgWQh7FPcZ7YWmQiaSFQYy0ZB5jZW7HGTuHp/OtXLhL2TiRVqwy/9mc4MR3/QS+yhlqH4Xrm53lfggq9zh++Ruqs5WRvu01hJbceTV/lcPjtxhsBX2vKsX/NZwWBd5DF7P/m7m16sjUKBs9i1i45/4Lg7ULu4UmOBLB0G7mbu/9YK0aYUgW0Bjaohum8di43z1etgE2A2iL26BA8nx2BCuwjAOYKXDeGUd5/PCl9kkPH3f62sQTAzNRyRSa6GNqP17rBvhGuUrA/dgusXIikO+2bRb0Ucbus7I4q4BwcPdIvFWa/BchrnGeTDThqrPbs1q7lEQQaoagX72z9EKOwHioO2u/gdxMHlmawdhYPeVGkivNVbzLJFl1AFZ37V7XS58jtUqHRagZWuL7E5bu8HGXJ3fG9XD2FsnOEbfwKw9uttf7G6YbWPZDvftV/O529XUYa1Ez1YXe+FsHrARqiWP4/GsdsK4KQGB5ELo8bC0QbpOiEG79YFCx5LbeKuNnn6Pw7txhTNKIRYbT3irS9wabMDFJst3JmwMDJ9voy+qCUyrhqe70SHHLu6qWHCS1lWsG1tsHy4KWR+CA9hHpNr3aG6XBA14WYHWdOwzIYqBrM+dQvzen021UN4XUigrt0B4UZscx/HYdh250odWup1RaTDeJ7O4iAdNQ5hT9c5tn9lv3+b+1v2MFPvGTMZ7ZRv73/Fq9uv3v45k2XHPFO4n8GjS4X10/XzzEiY0bFJoRmINlmzOt69WP90gx3FOHronGzOX0W/BULOfqAZXriMLFnxZXucjfmOiHQUZZ2A4/1ZqPi+/p3Ra4VXusiZsPC+bX68QxhX4Z7x6ljPzvye4Y2EP3nSK54IAv6QOW+q98ntTe/BZPWZQolGWf0p24uPVZKKx1E3k/icgbrKyMxqtlpg2Vf028iZLDGdcQDNn9wCuwGOmuy1sDdTdXJfTxIy2tOS8/z31pgFN8Hy5vkUhFIVT0n1jTYPcE/DGhvd1p95AJbdwwG5pK52JY7YnZZ05otvYdsFleiK5+zhSwGYZopX6O0h5ePMUIDbRw4M56C3Q35vnj9NB9vzSDhRFCKcIsA5pvwlwysLbYw1U3Me2PtlRxVZLArg9dBsy10LIGuqyW6Q5Sb2YOgE81OAu3pxnm9yw8T0+kxru7F10Y2Kvah61iWxOMtdqPrVEFD57UgYeFR5xDY8bZ0fkmwkC0RF+bZ2nYxTGwloIyMjHKwbgPMycChtnNxnv6Utekgegd01waBXN4fDnbGt3iXy6flbl4OuwLkcdsWGAIVho9Wnv534dDkA6G/E/KbRcmbm3ZxYMz7YKjAorQ5C2Z/d3nofEwTGrtXuGth6ZJK7dF2FXFWB0VlBfEGy1pihwfTEcE3qZ12WWEN310IpBwLI2tExgshgVpf+RxMH+4uoz1ZNV2dctFe498hKX5ZmbYvOwt5WQZTMKTUdiMujbOppjySTipqkswHxSAzO0C4OGzuHOkSC3hL7OHY1lK0lPM153i5nMyeqbefXUd4xJS5VqokejX3JaGluzaBtUzzBATM6RMcummGYydQn0G623xqo2D41NH9Kl7WBdmS2tsrv1k/Dh3FnACpqScXhi0e0jbqPV/VeFVVVD3eyYgTKOf5Vq6GiFybofNzF8rCrnh8cb4jKWsYXdIuZNnvrZY6WztZnAUx9sL47j38p02bICbSWXuCSnTSxTSC1r825lDqXF6MyqsNjZoMajeBFLcrHCiXl0sxO2chMzMFNqhuueBDuXcFcOmBiYaK/Bt/Yre2GhLyHciZT7CCMRyi05nMR6SIOqedZc3B0plC6xXQVnj747GtyITh6yNjNmZDsPmSlEojVYeSUZqV7h7/zNkKnx+Yc94mWeIns7ft9kIBYvyfqRO7/ZMWkjL3fb906IoYc/s5TcDz1y1N2X1QoO2SXfjQ6LhH7Cjf++IP0QB9j1VnK7UrvfNBani6XtcN2N9s5fq3CAR56z8enKVQOyWwt+nfWebVaTRiZzpVypbhuDA3uyvYZoE7e42NeC3PIDWvkY3AmaqK6SGxh4MrpGpS5nCDIMBk5gS/mLH5JwqQzL/SLmqX20NXyrj8ECu67Y7NZ/NCyZs83Mc7OIlF+RKv16lTT6AQ0CAAIEA4MAAf//vwEAAAAAAWyo0D7g9wMQOOGB4AOhqRGvsydcwAW0gAt4FclHMFoc0nC4EelNEQwthzQcrkUD/N8F////TgAAAP3///9aAAAAAQAAAC5mAAAAywEAKLUv/aAAywEAFTED+tY2qzEQsKwASyo0tltF00lK9Yj4eUMPYeCp1QWvDMZKwkRKqT1o2fsTbIIl/08ppZTS////0ApOCpMKGoBWVaVW+kxI1WqW1F+vk3lS8xwoT7KUHzOkHCmD0gtyKa111lsL0FO6QM6UITMn/aBKZ2kszUBP0BQ0WBaU/+RBWZqnOTFTypGRlrKlDApUqBwql8qi8qGcLCfHyXDyG8NsmN3kwtyGMBNmNnlNVpMmp8lo8plsRjAL5sFcJpMJzIEZMI/JYv7yXw6TwWS+vtyXsWDpkrtkLly8ZC/5yxctWUvOkmVL3pL9/KxkK/nKlSq5St7b08t6mUqekvOkZCk5SsbLR+JyXDZiRC7LZSRI5vJcrqujy3S5SZMleUlmwgRKhpKfPHGSneS7O7tsl5XkJLkIXIbLRPKQzKNH7pF37AiSg2Q3t7f8loUI+ZF/ZB8+gGQgua0tR86RdejAkXFkNja1rJbX8o1sg0amkWfkGvlEiVwimzCBIqPIZmYpcoq8YoWKrCLHiPEiv8gwYMjIMnJa2lk+y2hoLDKL7CK3GJFJZBD5w4cQOUQekUWMYchjYxlyhsxkimWxsKwsLQcOuLa2HnRd5WZzAxkZh8xBQ/bQIXcgyxMkZAmZKz9QsKDBhox1lbFygqoDCDKFr64Lz/zMzFyWtRhkBgryAqtslb1yVdaQl3ksQ8gNcoR8ITudYTksg4FVyBWyhfyVpwbkAZkAgQK5QDaQqbLSZ5//B5ABZAE5QG7XvGaWdbOb4fzmrTXPPKu568Xx8xnHec8p4xsL7pg6n85mjy1SwR1C8kjjOE6ME+M4jgnzyuI4juM4juM4jhPjxGkcN4Fs4nDmkZUz1KCYp5TSXlOqpw0yBR/exI8UneHiXpzYx54ehHllU1JyGg3RsoYDkKVpFsEdQOzWnKEc6XFQbk9Sb8JMI71UGdKF58xBJAsKyfOMlCR90kFbNH2bmMqqosR5DWhyDiA8vSVC2D7TWHWK1xhonj6wuuJMqk03bKlyipLS9yhtOp3PZ1nZ8/l0Op3Ox2diniAg7qEIL9OntSkizB5/0y1mw7AWs34hSj1Rxs47h2woxM/n8xlbxXrPvOZTryzv+XxaWW2xkj6fz+czMU6ME+P46XwqaJY5n9OvImP2rBQ8J+8QTafTqVTqdDqdzmYzbj6fZc/n8/kUBLwqHAwSS/P0EuNEvfh5QoGDBVr6IAd3DoXMYLNsNhGlbCg0m2xMilGXTWQADtUsGuTgUMgMsikUESRnJDYUEAHMAWTA6XDuDRyngxpO6CUNCtjoyVPARo8el8kuM8+GyXRmcAKYHDDtm8Tk14hgk/SQ6dfY59tMNSQTKRuL8gJpUch0Op1OpdIqVfToLQXJCukIShqIuzTg8BKTWRJGxwDX/kOgq/DMwDNQSoRLz64fWtTyckswytW1XOZATDEMdSWpUmOS6TuiCOrlgRlgLqVLsigTkclkMpdLqiWZHCgUGoVGERGj0AxaYzl0IEahUWcUijiNTqNRaJRDFDG6nEan0cEgTR2dRqfRHIwvoxZvAfKbm1cQLx9mmkgTDjJDB9+kejCIlxsVL7cFcH9aiJ2GDr5BajsqGToYZzY4JEActwawyBfTS87LSDQ6iKTGIJLMhBrhk5lLrzmz7CVHRUeX0ehyGZ0TJYtCoVFo1CsKjUKjUOhy6jX1ejGNj8RxPJg4mJgYx3Ecx3GcmDidTuM4juPYK84RxzF0cDAxMY6fg3G8jKfQKgtNJHFBrfhaJI58UEieHq2BKAUthKpof+YAi3CQlCCrLo4gIhQGieqajcvGr4CHl91yEJytHKMAl2kuRbrtIDI4tybX/Sm1BOCma25EqKVdA6wiaBAsCUk5k8NOGrQJHaRzI4UWHZyDzC+WUefkl92EzimrYeQvPwePMNHoKmzwTESf0sYrJaIELb3oMuCcm2aCQfSGgPGNSvEA7pUdKMOyfBMGt6wz08y6QApecjV0PMSOp0UiZcy2rzVo4iCMWIjgimmlu2jsg6+OsEwcMhczNDDD6ASRqn34mgKqjFrErwtCNz1vCgTGi2ooSKVVcYTMMgSXxsoO1IClO24ISqNlqJQahWDqnPTGxhFatMkEUhyn5JC75p6wEyqQuTlqE6Ys+6N9cYYRkAiPTk84MgFsfNA5oVMk1Nnp6OBcUz+ZgolCok81zbonHT+WQ0rGcBBHoRddArM3LyTNHK3SYeMq70p0yiYallWpjVkWSiKzFMyx3eOouj+RXnYLoncKbdBB5RQxtGC2nRnCgSbqYYuJDDh8pumxhYzKwBtm2CNAeaPuWHg+n0+ns/l8Pp/PZ/x8Op3O5vP5bDITy8qczufz+XQ+n02potKRJECF6Ji5k0IfrQlmaaWhFEIKFdUHzwo1hXtusWIeXmxHQS3B1EC0qUXBeeUpUIqmqiqxipCEYSRBUw/dmoYqQWrOFMkkix7Q5DFRJIWLqNPpnDKZzCczEFSES1uMf6agVQK3tpZbJH4eoIFoVBrHcZxYxsyiODExMXFQUIU9iV6JGsXixMREr0SCuRk/n0+uUSGkg/FYjqb0+XyWHUhgh8l8xnEcx/E0jgcLF7NIp9NpPJUmDhpyVEtMTIzjOI7jeDqdSuNpHEvjQDKDPZ5P59PrccgdaV4b4xQ6WdIqZC/4tq7gcSlqdi0qgwTUJRc/yHk6ZhWpQ9ckURonRuMm8xk3Ano+glucQqfM6TQ6bU6ny2kzOm0yp8ypdDqVTqORZtELv8/ZXCoWuIu2yelwNvEIeQNV1MBscyO0VAzhxgz7tJkXCDwuFbEUMNuM/E0X3TlcMqVTpnTKnEM2XUancaBTZhTKnEaj0+lWWpvCabQ5pbPUB/FQzonUGelLniUj1QhmjzFAonwBDKd+QiCno7Q/5gWqL8wwTiDumG1zjktFN46TeQHGFDOMzRlpuwFMNSMz56O7P2N7HBxi1k1OynEuFWdEYLa1tYjycWDC9WHWkXqCCKCPyxTA5AMnoy6ZnJHiPWbbCLYlHR1CCoZBj/QRkswZicQSqpgVZbbFNZlOaNSGJNNHkBzMKVDqpr5JmXOR4pmohUSZKeb1rpDqppurkXPRoVf0wluIGTb5yUTbKnwt6QwxoSVG+kiVdC4C1STaVmTCUvGBpUuBDkqUcC5yJKXshBFAN51TmdmFLNKyTAXQtljlMrM+dF7TtBx1Rp3QJrSJ+Ah10uHQ1GT5gJrqS12mff4uSoejFNmjnD3OPq831ZgWSNnGSlBn1BmdK/s6G+Hko/EofaQTKAVDyxB1OqPOqDPqhDahBdI8UTXBZtyQPk79BII24Sj5A0LDlrNHWivs3OGSq/tDjIO97uQwrXwAM/UszPjIisR/zLonOWrFSm/qXeBN++BIyR7VrG1JWUYHfsgwkfAppNGmfFdaygTrwkRih9KSgZquKZ8BR1JpztImHVsV2SOh47TPf5nqTCik7B2wZQEY0KUULIaa9LHOoUsuPDFirnlJSX9807schtNXAQwmC0NgyjHHKRJFEtOuxzbMuTKtAmg8pnw0EkkfFV0pWJreFO+HVJKZSdnZpa7LLFp3FyhTobMPTuCDqBWxFUy5KekSBB3FKZapFFIfGgQx6+4gkRVJtJz2wVkz9S0Io1YgeJJjAn6wClO/nLm4Bns8o9D4GY2f0ecTynw+uXqQIMF8PpkXeqdYi50cPTkcy8RMVG1LasR9UMapJz15MZ6YNoJfcXE5apdzfIUugPSNmFgsRTKArgIlZ24l5xUrZwDKsQA6U+2cc4oW1LCwCmoF9YIKhuCAigCBgSsGqgMHDbIGTKlTBdSrBioCtUq1Ug0IULEUqANUAQIIqARUKqoEagJ1gapAfVXXZVVWbVvVe1iFVQAAvvpVpRpAXbnKVXUUKXWrWvdJdXJSskv2UqVG9VE9sovqoT71T91TB9U7beqbuiZNnDqnDgmZqWfqmDBZ6pZ6pX6pU4rUI/VJXVKH9NgfuyNHj/qj3qgRo86oI0KUqCfqivqifqhQL9QNdcfExLjHfTqFdmiXSqM92hERDec06smTB0/H0+/csdPtdEbGxTqG3Y2bwl7Y2bAh7IS9TZs3/U0/PITT4cTpcbqcvtj19D17Gntj58NHUBfUBw0i1An1QIH+9D/dj58+vU8HBIhOp9MTu2Jfg6aj6Wp6mn5msA/2MmXMdDNdUJBMJ9MDA8f0MV1MB+xh/vpf/9LBYOl93Uvv0oVL59K3bNHStfQsWfg6X/frWPqVKr1Kt9L3qFDB63hdipQn/Um/u+tROpROJa/n9SldrztZ0pf0Jp2JnNwQODg3IXE9SJA3tyNIhhDpRrpbkrdepMd1JXSdrtfVzfW5bteR9Lb+44cPIDJodBo1ZszoMta6DxydrevY0XHc6Df62ppaV+s2bKT1tN6jR46eo/PoOzpajB6jw4Bx1s/6ixcuuoveosWKvqKr6Cx6ihP9RDfrKDr0DyY6gOggugcPIXqILkIEiU6ij+glepmzO3uzP/uYWGf25ZKsk3UOHDb0DV2DBgwdQxfrGfqFCr1CD+sWOhiFTqFPmPDVv7oECRF6hA4BwoP+oHd1r86l1bV6Vt/qALpS+fvv3rvd7TD89re3LdvZrvUkn+yZR3YEBwwYoOpUU73AVJ8S0AkIGNA7nyzFI7lkqc0ld999XbvaBfQDvaoKQUfQrawYdAa9QQMH3UFfsACrY/UECa76VVegIEAP0JUdACcViofio7goDomJY+KZMmnimvimTZw4J1AcVCfeiX/invilSrwSp8QtPXr06MgRI86IL+KN+OMkPgkSh8Ql8Uhc0SF+iCfiiHggP9wQd3QsxAtxQoQG8UFckKA//A/3wwHxPo28kfPhexYXpdHoITSRz5mDeEinjnTKFflhHkQe80Suxw63w+/cYeSMHA+voyYNV6MGDeEbHicOHDmCg3zQDEdDhhPC4Wr4Gs6GF7rhgmU4mTK8TBt+pg1vww25my78C2DgGD6GixEThofhYMB44V74H+/CuWThWfgWrsXP7wq/wq1YocKp8ClT+B6vwv2wcCy8j/NxPSlcCs/jeHxJEp6EK1HChDPhTpw04U34kyd3/I5H4VC43Ryf43WcjiM5wo9wI0bkuByPiyvCi3AiROA4HBfCh/A3N+7GgfAgMWLA4DD4ixcsOAvuwkUL3oKvWFFCxdoNNTUb3AavUYMGp8FnzEiTUYKTIDGCj+AgQITgIbgIESa4CZ4ixQl+AgVHwc14Gr/BceBY42ucja2Nt3EfPn7wH7xHjx18B9ehIwfPwXnwQONoPAY/4x/KeBn3wDtw2MA1aBjjY5yMbMmX3OlkciZv8ifPcIFf4Bi4mIUJXIIECBwCjxCBAqfAv77AOBivwMO4Fxfn4g94F1+QgG9xLa0snsUdOGjAG3AGDLA4Fk/AFfCrKl7FEXArAQLg911dJWfZdg0wgA/gsOcA+Gqg5Z8r+QFeYIoAL8CpCHAqPmCUqFClQoHqnatc5eRpe/q0Q23apfYozveoTWpH7sm8Oe1NmzrtThsUKK635JbMkjYlSE2ZdqaNCdOlfWlbsjRpT9qVtqQd6XE/bkj7kSNHirainSiRoW1oOzpuRPvQdrRoL9qNNqNdSNAWtAntQbsxz86z9ejZs/fsPn34bD77zx8/288OtAFtPIybcd/ZdnYdOpvOVlRc3Is7MTHe8Z5Oozu6oVu6EQ/34Zaz54wZI2aL2WHCfNlfNhgwf/tve/HS10VNGjRozuwz24yZwT24y5QhI9i3+fiwbCx7b8/KtrKvXPHbfpsLlyw7i5atZW/ZZHaavWaNmq1ms2HzZr/ZcODE2XG2oWHhLtxt2hBuwu3GTeAO3GM24K6it/U2lT3lzslu0oTJZrKfPIGyoWw8vCg7ypay8/YSu223lewkdEZ2XByRTWQXKXJkH9lyckg2kj236/aQt/224baQ3UPHDrLd3IBsIPvHDx/bx25r27F3bB2bx86BY+PYa5uNycSwXDrd3bavcqoAy1K5+91cWl1aGjho2Bw2jG0Om2xsk33YZR087LINwkOIEiFIjCCxR2wRBKbYLWPPmNHczU2DRloNFNuGjRQ7xW7RAsQGUWIX2FRUBraBjWAf2FlPTupSpSJpSSjMUuhQn/Qn7cmTJVCgFkVGitKiNCk9igULEyawFOwEemvN1xcwNowdI8bZPttpG22X2C5cvLix1Tp1YsSJk96kN2VtMbELFyqAaXHtsG2Ba1vYFfbXnkBBwp6wuyRE2F17KwKEvbW9IGyv/aCBg91gZ2FdJdCS9KNHkDQk/fhYSVEmnUljwuRIO9KXIBvpRpqRdrSfGXaGjWGPWbKUSCdSpCcZ0ob0oUOEKGFVcXazW93uXrAZaE1a02awG+hCiDQi7agTbb27ltSSu++8UZzYJ/aKrWK/2Go7hlakF2lMupAmpB33gC1gE9hWO0AAABvAhmG//f771YMAaUBakA6k//TRfTQf7UfvyaPz6EatR+Oxo+1oRn1H11HUinpR09GJUi3VsZ7qKFRDNaKeow/haDhajo7zJo0avUaNVkOo2RBqwkLdplAXakPtxoyZQT2oz2g0egygDtRkAAU1GV1GUJfRZrQY/RcGjP7TX8B40V/0Fi9c9BathYvWortcwaKvaD7dp7H4aSw6i7aiq+zpKpqKnqL18LSeztNSNJQoGop+ou90Eye6iWail+gkSnQSbafr9BydntNIdBC3H25CfAh5g3srYqTIkTYeuk330G3ah/6h4XScNqLlNBAgQ/QQHUQT0Tu0DBlpOg2NTeegoW9oHZqNbU2vaRw4augaGg0tho6hYcA402eaBo0ZeoZW0zZa6BEtVqDQLvQL3UKEZqFNaBQoTugTWoUKEpqEHjGihC6hzcxS6BRahIgP+oMOoUFoD7pDh6d+lomJYQjTGfTYUi+ZekzDBt1BY+CgOTj1BR2mxbQG7XSO6TFNppsOHDBokKUTJMC6utIKFmgFnnKnTp82beKUOWVNOZP+0hQodE3wJCqLyp9yKB1AwIABUwQIwLABLy8IGoIEHUGClqAraAt6i5TWIpVJRWZIj/Kj/PjoKDvKjRoxyowyHjyKWTEvLtLJdLIdO9AMzYh5Ts6UMWGCzJBZkSI8GU++kxfzpVypkqQsaVKhQnocHQflQRlRFqS9NAxXufpBTpT79PGT/WQ+fAjt2fp9tathluWaZ91zq3eWzHv2BAKUJ7OhPFlPnpwn38mKDh36k/9kQHmPNkClrag0lUagD2RGjFmRMTPmOnlR3tOY+TTmxmieRnM01l2jNNeoPCoy7JaP4WGwDvwL74Jd4Ft4FmwCv8KrYKt8Cm/GGvAo/Al2ypvwJVgBnoQfwSq9CB+ChT0I/4FtvQffgVV9mX+y2zt9c530TL9cIz2Z57CK8hu8hpWTH/MZ1kkegxdbIfkLPmx15C34CusiD+a/VkSegp+wDvISfIQVkIfgvdY7/oHvWut4Lr+1Knotn7VOvQPfYIV6Bn7BWugVeKyVjU/gr9Y03spXrWY8An9gFfQGPNXqxRfwU+sWT8APWKt4AT7AqucBeOUaxX/v1zsP+3dd0q52nvXrOudV39cinvu9AvHa57UNnoQlVzW4FBy5nsGk4FHrC1gUHGpNAYOCP61ksCe406oB5gRvWsVgTTDkagHOBGNaKcCXYEsrBLgSTGntgifBklYtOBIMaWUAP4IfVyzYEdxorYIZwYtWA7AiONFKAEYEH1oBwIZgx9XDhWBCqwsPggPBgGA/cB94D9wI54HxwHZgRngRpgMnwjEshaMwIjwHlgPHgd/AhnAh3AYmZLNGDZwGPgObgcvAgnAgDAiPERMGDPwHe4G7wFtgLbAf3AfzYbliBd6DqcBT4DwYD44CQ4Gf3DlpAjOBlcBJ4DqYDkYCy8FG4Di4CJEhcLAQOAjsBgP54aMN7gHvgHXAOdhwrME3YBtwDZjGDBlpMBp8FgPGC9gFzAJeAaeAzeATsAm4BIkRIuAQ8AfYA1wGP+EmzISXZBw2wBrgDDAG+AIcBleAweAvChMkwBFgL/gBzAVvwVmwA7gBgwUKYCz4CraCEcAHYCq4ADxFYIAAOACshD8Mwy/cwiy8qp3De/It9Ua+o15RbyhQnzy9nd5Nr6Y304vptfRWeie9kt5IkB49vo5eRu+iV1EiRIdeQ2+hl9A7SFAgQO+ft8/L593TqCfPi+e9Y4exzrv4Kr6J7/SVvtAX8Z1zKCfOC+c1fN28bV7Cd82r5k2D5oyZd/AVfMm8gO+YN8wL5v374qXLy+XV8mZ5+16+98pr5d2rQmXKq/fivVJeKO+T18nb5GWyREmS1+6le+deuffIG/cWeYkMgRPyvr1uL5DXx9v28nh3vDpysOF4116118ZL453xpr1ob4wXxvvCRQsW74o3xWv2ojhhosRL4hXxhnhBfPDQ4S17nW/zZS7JOLwbXg1jGTC8Ym/Ya+EFe7/eCa+ENwIErwdv17v1ar0O3gbvglfBi5Xgyuqteg+8Bt4C79Q74BXwBgCg/K9/39d92Xfl79bvpCvpRrqkXFFuKPeT68ntxGmTJhfSxeReciu5lFxJbiQX0qNHR24jd5GryEXkHnId3UIuoUGCArmAXD9uH3eP2+jmcfG4dlxGt84iHUU30Z26UjcKRZzjHrpxXDjuG0M3hW4bl427xlWTBs0Z14w7WEaQjBvojnHFuGDcP9eL28XlskVLFtfP5XOxuFbcPZeKO8XVy8OT4kZxn7h3bhOXiavETeLa1dHNuUjcI64Rt4hLxIVzhbhBXDcXyA8fbW4Pd4erw2Vzcbg31FwbLg13hisjDe3MjeG+cF24LVisUOGmcFG4J1wTJUiMcEW4INwPbge3zH06m0x36XLY4GpwM7gYXLELYRbcCu6XS8GdICECBNfL7XK53C2tLAduA3eBq8BN4F65VlUIDrgG3AJTLgFXgBvABaD83oVdl13V7nJXu7mdlCwV2ZJqRbWh2k+tp5bTplZTm6nF1F6yVIlSO6mN1EJqHz06atQyahW1iVpEhww5toXaQa2gFlD7p/XTh8+etrHN0+Jp7bSMbZ1FOoptYjttpS20RWznHMqJ08JpDVs3bZuWsF3TqmnRtGfawbZMS6YNbMe0Ylow7V/rpe3Sbmm1tH5tX4ulvdLutVXaKa1ei9dKaaG0T1onbZN2SauktWvr2rkWSXukNdIWaYm0cK2QNkjr1v5ofbQ9Wh6tjjZHi6Nda9VaGy2Ndkab1qK1MVoYrYu2RbuiVdGatShaE22JdkQrogXRfmg7tGWts222y5as3dBqaMcyYBBrL7QW2got2BeFCa2EFkLr1Xa1XK1Wm9U2aBm0CxRgJWivWqsqBAdaA22Bdqod0ApoAbTK1rdw+7psu7Zq57vV7CQryUaypFhRbCj2E+uJ7cRpkyYWksV0ibXEVqI0SRIbiX3EPrKOGjFaxCpiEyE6ZIh1ZAmxg9hALCDWD9uH3cM2snry4LnD2mEZ6yzSUUyMp9IoFHHOoZw4LBz2jaGbQrYNy4Zdw6pJg+YMa4YtwwqyZAIBx7BiWDB/7BfWSxcuW1gtrB/bx/JhuWKF3WOpsFNYvTw8KWwUFsqTOydsE3YJq4RNYldHx86xcuwR1khcESLsEFYI+8YGcQPyg/XB9mB5sDt05GBjcbBrN9RssDXYGawMNg3tLAYLg3XBtmBZrFCRgjVjUZwwUYIlwYpgQ7AfWA9sGftkmyyTJWM5sBrYMRYDK8aGsRZYMPaLncBKYCGwXmwXy8VqsVlsA5YBq4DFYq9YKxYBe4ClYguwBNgBbAAWAPtZz76sy7Kd5axm8yq5llpJraPWUKA+eVo7rZs0QWbCdMlSpZXSKmmNtD5aH9dGK6NV0ZpoPWTIsdBKaBW0Blr/+OnDZ0+jnjwrntXOyrgurnTWxDVepWt0RZxzKCcOnDeGq5u1zUq4rlnVrGjWM+vgWmYlEwg4RkwYMH/rl7XLymXVksWvjw/LFSvr3kplnbLm4a1SVijrk9VJk5XJqmRNstatdCsSuSNG1riVyDpkhRPyFmR1W3+sPtYePHboyMGGY229sdpYa6w0ZshIW9HWGCuM1UULFitWFavZimI9YaIEiREiQoD44KFD2dPZZK7LlcO6YR3LsGJYL6xhawWw9WudIGGNsHqtD1audWvNcrA2WBesCtYEV6vVimA9sFIVWKfWAQLWAKty/Su8vmvLruuq9rWve2utllJLlZJUJdVIdVIdpYoSBUoFpYZSSXXypG7ipGpSP33ypHpSISEvqZfUTCom1ZJaqdIkdZIqSaWUSGWkRlIfPYKkQlIfHx2pjtRGjRapi1RFaiIV0SH1kOroaEg1pBYqREglpAYKJEgVpAJSB6l+1D599qh7VD7qnzx61Dt4VDtqY6MeVY/KyEhHpaPWURdVRTUxcapOVakaG6px1KiKiAhVoeqcOYfqoSpHDhwVjvpGNVTdFKqFKiFhG7WNyobNGnWNigZNGjWNekZVow6qZcqQUcmogqqZMYBqGDEqGDUwEFAFVP/+uqhd1C+qF5WLumVLFjWL6qdq0VOrqH0qFix8Kp965YoV1Yq6t0dFpaJOUfXUPDwVT40SRYoqRYUC5Yn6RG3SxInqRGWi3h1R59QlapIkSlQlqp1dnVqn0tEhUZGocuoR1YgaF0dEJaIOUYu8CVHdgqhAVDg4IaoQ9cePHmoP1Yfapu5QdehgU9nUHCqPECE+ePAAYgSONXVNPTtLgyFjhjoDTaWBpqKpNdQ0FURZh7Lms6k+UZxQT6gdVBFLDiUyjGlQoXZDhRHjzKk+n0yVSaZy2KBuUEmoGdQPZmoJdamaUGO8UF+oLlysUFeoKlSkUFOoLFi0UFuoNlSzry+vBw+0uiSoW1tcWhTAvCCoE1QtMS41gipBxWBBDXtVqEzRy8OTEgXKkzsnTZgsUZLEro5uDoncESNxRYgMgRPyFsQNyA8fbT147NCRgw3H2g01GzVozJCRhnYWA8YLFy1YrFCRwgzFCRMlSIwQEQLEBw8dyp7OJnNJxmGDhrEMGMQuhFmoAPZFYYKECBC8HnRxbWllOWjAYIECrARXVlUIDhigKjBFYICAAACU38Ov27Kr2vnWPE9KlookNUpUKFCfPHXitEkTZCZMlyxVojRJUiRIjx4dNWK0SFEiRIcMORYiNEhQIEB//PThs6dRTx48d+ww1lmko5gYT6VRKOKcQzlx4LwxdFPYhpDNGjVp0JwxM1hGkEwg4BgxYcD8ffHShcsWLVn8+viwXLGyV4XKFL08PClRoDy5c9KEyRIlSezq6OaQyB0xEleEyBA4IW9B3ID88NHWg8cOHTnYcKzdULNRg8YMGWloZzFgvHDRgsUKFSnMUJwwUYLECBEhQHzw0KHs6Wwyl2QcNmgYy4BB7EKYhQpgXxQmSIgAwetBF9eWVpaDBgwWKMBKcGVVheCAAaoCUwQGCAgAQPk9/Lotu6qdb73zpGSpSFKjRIUC9clTJ06bNEFmwnTJUiVKkyRFgvTo0VEjRosUJUJ0yJBjIUKDBAUC9MdPHz57GvXkwXPHDmOdRTqKifFUGoUizjmUEwfOG0M3hW0I2axRkwbNGTODZQTJBAKOERMGzN8XL124bNGSxa+PD8sVK3tVqEzRy8OTEgXKkzsnTZgsUZLEro5uDoncESNxRYgMgRPyFsQNyA8fbT147NCRgw3H2g01GzVozJCRhnYWA8YLFy1YrFCRwgzFCRMlSIwQEQLEBw8dyp7OJnNJxmGDhrEMGMQuhFmoAPZFYYKECBC8HnRxbWllOWjAYIECrARXVlUIDhigKjBFYICAAACU38Ov27Kr2vnWk5KlIkmNEhUK1CdPnTht0gSZCdMlS5UoTZIUCdKjR0eNGC1SlAjRIUOOhQgNEhQI0B8/ffjsadSTB88dO4x1FukoJsZTaRSKOOdQThw4bwzdFLYhZLNGTRo0Z8wMlhEkEwg4RkwYMH9fvHThskVLFr8+PixXrOxVoTJFLw9PShQoT+6cNGGyREkSuzq6OSRyR4zEFSEyBE7IWxA3ID98tPXgsUNHDjYcazfUbNSgMUNGGtpZDBgvXLRgsUJFCjMUJ0yUIDFCRAgQHzx0KHs6m8wlGYcNGsYyYBC7EGahAtgXhQkSIkDwetDFtaWV5aABgwUKsBJcWVUhOGCAqsAUgQECAgBQfg+/bsuuKtf5quoA1dSAAEr/tusqGTkqFCQmS5QaLUp0CJAfPo15FGM5cNakCfTCRYsfFT28KErs6JDAvbn9YFtTqwHDBQsVI0J86MBBQwaxsAheDRYcoFKufas51KdOmyhJgvR4yJGQoMY8dxil0DlyCNekOTMmzJ8XLlf2ojyxoyPyo42Hjhoz0s5UmJ0o0eHZXIqFVfjq2spqUHWAasq/7dp75KhNkJIgJRIEyA8fxkXFWA4cw8Izg4KBY7ho8buyF+WJHR0RuDcebGtpZyrMQnzowCGD2IQIWQ2qBgTgLV8lIzttgpQE6fGQIyE+jXnuMC4qxlLoHDlwDAsJ16Q5MygYOCbMnxcuWvz4ruxR0cOL8sQJEyV2dEjg3njoYFtTO1NhdqLEiGdYBa++hXU11fq3XXePXHAIkJ87jNI+p5BwUPDPj08Pj4mSI3FuOthmpLEoMSLEhw7P5pKDhgxiYRW+JkTw6trKarAA66rqAJVWSkaOCvUJk6VDjoQEAVKMpdA5Zwa1+F3Z08OLosQujgjbWtqZCrOvCV5dWQuwrg5QDQjg27XvLklRHWigXhMfayXCIBBQvpsc4zhgXL8/xciMlbwhQF6kGPMWDt106aszYgMN7trkCGiOoRc/uyPvjnxMtCgVDANkjIGVy0s9UlRnKqIMgtZv2UyTLBiK2elQG9EhwpaSbeOoRHlrY3FCbP3Cc2J3BO6HDrW0DhEOTPm278hPkJQeC5mw4Fk65hiuGRzjxW9PLS3C1qcVUlrI5CvrgNc+T04qM8CClBiUYvAf5QVlGMxHaUFZAdajBFN+wXeUFJQT4DpKCcoIsKISgtILniofKLtgqJJLuQUfKrWUWTAcpQNlA9iNkoFyAYxGqUCJBQ8qEyivYDJKK2UV/EWJQHkA5qI0oKSCsygLKKfgKkoCygGwnlKAMgAsRQlAqYSXKL/Sw3ZKWPnCcy18RMkqV/hNqSo7zEPJlRtWy3CLP/klYRW/1I+EUXxSfxQM4ov6oeAOH9T/BDu/p98JHvuc/iZY7Gv6kLCFn+ljgiH8S98S3PUrfUqw1p/0JcEJfqQPCa76j/4jbOA7+o1gAJ/RXwT7r+gngt2P6B+C9Tf0HV/JX+gTekn9QV/Qy+kH+oBeyP/n+3kv/T6fz0vp7/mNb6Ov5+d5HT+ef+f18+18xpfOr/MX3/jT+Ypv9Cf++H3zp1/6Fv7oh75sPuKf85b5h1/OG/jjfDivmP/mG75bvptf+Pr9Np/wxfLZ/DVv3lfz07xRPpp/5r37Zv7gW/fLfMEXySfzA18jH/CPeYN8MT/M++OD+X9vj//le3lv/C6fy1vjb/laXhk/y/d7z37f53tVfCz/yjviW/l77/NX+VTeC3/K13sr/LyP91L4Un6Ul+tD+U/erH/3nbwMfpPP5EXwl3wlL9VP8u1eAr/u073wn/tI3vbL/SOv+o38OLfUL/KJuKP+kA/ngvpC/pub6Qf5bq6lD+T/cCd9H7/NZfR7fB5uor/j63AN/Ryfzf3zcfw1l8+/8dVcPd/Gr+He+TT+DDf+Mn6aK+ej/TOX8Mf4MFzA/+K7cMP8Fp+F++Wv+Crcvp/im7lXPop/wq3yTfwSLpRP4o9wnXwRP4S75IP4H1y57+F3cON+2X+6Q77zN923z/xLl8cn+xzcHH/D1+Cu/bGfwa3xMXwxF8a/8MNcs2/hV3BDfLD/5Xr4FP4El+xL+BHcsQ/he7lg/8Hvch98rr/lMvhaP8vF+g5+A5fqM/gL3AFfwcdy35/gX7n7W/2qdtRH8A+0oL6BT9V2+gX+VAv5CfwBraQv4AdoF30AX9kS+v/7NtCH/9vqads7n/1rG/c2+vnf7Zuvf24L/aSXbNn4Uj6yTeNJ+VGtGS/Kh2oFPSj/qQX0nnynNozn5De1X7wmD9ly8Zk8pjaLv+QttXy+kqfUWvGTvKSWio/kIbV5/pF/bKN4R75Re+cZ+UUtE6/IJ2qTeET+UEvnDXnHVs4X8oTaOD/IC2qH+EAeUPvm/3g/LRDfx/Np2/we39ju8Hp8npbN4/F32hvejmdsa/g6frGV4el4xfbMJ/q4feGnXtqy8FEPbVN4RD+nPeEPvZyWhI/j4bQh/Btv2Hrwbnxh+/RtPGHL9Gz8mpaDV+PTtGEejT/TRvBm/GD7wJfxgu2WJ+MDWwce0I9pqbwYH6Yl4MH4vzaA/+K9tN938Vza7Ld4LWwpn8X7saN8n+djQXks/gqbyVvxeywkX8VTYQv5KV6PFeTzPB77x0vxUVg+Hop/whL6O++EHfRNPBM2jF/ilbBZfBJvx1bxdZ6OZeLnPBIWiZfzR1g4b8THsW2+iCfC0vBDPBz7wgvxb+wIH8S7sSA8EP+D7eB9+DbW6Xt4HuzS7/A62A0+h2djM3gcfo294G94NbaCt+FrsBQ8DT+DjeBl+DT2gUfzZwGjXqhUEbd4EAQKJBgAMAgBCgLzdhEIimVZFKZ52HkHxMcIQcBhYWAgy0YADAgIwaAUAUs3ABgAABEdAFpqIMCL0khM9+xnYHTawTuLR+/sT3gousF76ofs6c9wLqSDe9afWNnP8OxEgXfWn17Cn/DcdAH21D/dg5vh3GkHzKw/vbMz4NnpBo+hP72nP4C56Q7uQX66Zz8Do9MO3lk8Mjd16ofM6286PyKTveaYGNtvev5CkLvmkR7GX3r+ciB65TGdh9t0/mUmVM0xPbcz9PzlJJfCIz2vP6j85Uz2gmI6b78p8ctM7poEem5/6eHJSe6VB2Ref9P5EZnsNcfE2H7T8xeC3DWP9DD+0vOXA9Erj+k83KbzLzOhao7puZ2h5y8nuRQe6Xn9QeUvZ7IXFNN5+02JX2Zy1yTQc/tLD09Ocq88IPP6m86PyGSXVZGWs4N+xBL+hOemC7Cn/uke3AznTjtgZv3pnZ0Bz043eAz96T39AcxNd3AP8tM9+xkYnXbwzuLRO/sTHopu8J76IXv6M5wL6eCe9SdW9jM8O1HgnfWnl/AnPDddgD31T/fgZjh32gEz60/v7Ax4drrBY+hP7+kPYG66g3uQn+7Zz8DotIN3Fo/e2Z/wUHSD99QP2dOf4VxIB/esP7Gyn+HZiQLvrD+9hD/huYtXlm7/QFH7ZZ1vgo1klPLB7rYZ7AMLaZjkx9zqKdRjE8gYpcefZTPYRR+QMMWH/8VS2EYeEyHKi/vdJLCHLtJBiI992yegjTaicRAXv5vnQAs9pGIWDvury3ATbCSjlA92t81gH1hIwyQ/5lZPoR6bQMYoPf4sm8Eu+oCEKT78L5bCNvKYCFFe3O8mgT10kQ5CfOzbPgFttBGNg7j43TwHWughFbNw2F9dBl+jxDBC51p4aO0GQsGPQXoGiZ7H3eT4MHd4JMgFbUofhKC6TxWFnzBIQtFYBOEPDXwxCEywCVMbA86/S2g3h0CYbgghS/sfwZPg1bmdIe+vN/wMPPG64cFR/xsd9qdAzE1zhrs7kF/p2cvg4JTDVxZO39iX+GCa9I5fYl0MxsdYWdYXqzf0J4KAaob1zKk9o6N+y7BzCRM83rL6QsX/5B3TXE4xJT6w/ewd/auXYH9n57+0M9DkN5Jg912mIi/Pq+XhQY498BwwoMAKHoawnLXwI4RJKhSPMPixwU+EgQssbLEhh52yUg5kMKiYAiFkyovL85e/F5I8kPwMjHmeJglZDgQamVHiA2MtQ8s0Zj2UGQwc14GpHtzZPHM/UzuAssut4J/aOztFnrzG8RCb3zv+hJi5xoeWNcaB8uK+5Mt37/yLr+jhrPBT4LUXd2DEQah+SN186tmPMGBOxk1TWHIg3hkYNyz0AhUADg9v23pbR4aQ8c033gZmWLhFMwTVzmzYsxwy7mvFdvnsi/X8+vLbjgL450kZquSSnZuXBwGdePkvjrSY9rp79JEMdXY4daafCKSo4nV/dhjo41ncbuJD7WQwirKD/Rf6CYA++GbT0BVvx450X7Pb0bqzjV3HCQKYDRinWe1HUr2DqRluqonSDnjZjk9kl6gl5w0AKEFo7inCVZ66u9DwlPaDAyJG+FUa357LfBXmz8QWguUpM7giLuHcl9roj5kDf3CvGWISgZnfjYte5ZBZLMuljD6eJ8Xyj3bubK9mpM879bnRf/rsBHuO+OOhtaYEbuHKfcb1n/3y57/+/Ow/N91+GQE+lCzVuITEaoy4+8G5k3u5kFV8nlKfVe5ntv7srz+79edv+SlTQ0AhRC8OzJ0+64Vu/7Nbfuar+fShssHgrHiZZd7az9/6s9v/1JkJuxDRCMOlSoruQrf+7K8/u/WnH5Go7mDWJErdQlbr3WvX5tw9RpUqgwAradWHwa48s3PWnzvl78Zzohs6IFJ7K2rh7rV4Zy0t//kyx243BYLEcejyFzDuJJqbmTiYz7g7j4fptAZDlBCxiTP3unHz1RINZcYkSv02JRvm92TO/XcnjN0TkQZ1lXJ2/q0pc98ZsyKL66Lzoc8jLtk5iXn7x52ZsI9ZpjdbBEJuRSaZPeadmeec0VUXfPigL2nC2D1mrX9mzblbSFUIjlTJtjdmv3Vmzvz3cSeqKA5Ms6czI9nGzgWZ8XYfgpAwb4x3oxLgfx8TcTgYpr+1nO1xz9usA7Fkbom2sMzoRuoxCdA/r6k8PBzTx1rCtrDX08SJWTLXSHt4ZnQjxZgE2F/PRBw+num3KtoFfVYjJ2QXnYNp9EbxN//e/pCZzFdGzVEJ0L8ec3F4OKafqTyjHnrY9LnuPvv8Mo/5/1T0GFvka1IxmpY5wzsRK6DrPFX40Rtups+a/j9u93yaE08W1fH5OyNyOp1aBmuJb4Ig+26uD+1M94c2HW6XwI6hGisEmBOYvIgzElrCe0pb/4f/BCbHzHb5FKfozavSl8AE5yHGVMhcVr52orSY2Zh9tRbuYUbHiRn6lyqmI+T15BwKHYrvI06AM18+xEGn3/v+kYujDHta0rDPPFn4pTJLv3njczj3Br3MxtWpiThC5/gEGXv49tbH/DHTFikWZRhNb3BoP2gpjNe2ufU/eO/D78Y6La3bYsIvqGkzuwe2DmNbH+BN4PMuznvoD38zbXWHNaDKAk28LPPawYAybWweztLDu/C/ibQKMEyrqYYRPULmV/51873tNC7axTPL+jbMQOjQla94zk9/HGb/wXc/y9jTV9meTog6bZiuSNMYpnne7+5tfmPYbnVPHiLbnB1auOIMOiIqlnE3du0eW7Pz/63/+CqVTWdhI1YUQit1Pfbif9tpXgz9PJ4+iVzqEgQZIx104B2SzpM4JaEXfmd6uv/w/zDZzPfLHaEtZL3yex5mP69/zFpoPKA7VdEQ7NVFbVv25r/1u/C7249fKSJstarPqkt32N6dO83ly/cupEsYhGsbl/Qlbbll23eZ79pLS/33504rLw2NzGZLz1Q858d8h9l/8Hu2p+gJoJf4Zfc1n24uu880Li2PYjO492HW2UBdinvg7Myp0mwJ+rx8fcn71w8ajD8TXNiQdOQxwsTY2cno8vQyPlYrbP4Mu/HOvyCZ574A1vM25sXHTF1o8vf3UbloNA2+IIPq0muC7+4//tJ1+G5dv3XXrqBdcWg0lSubu5ieMzjXPm75W9tTi1ZfZKZrLSXV2527bd4bepndl7+5fEqP8gVgu0Hn0Z7jc0xv8cvv6z7/fHSb0qC0MIrMoNoDWXcDu3T3zNu7c6f5EuRLtV1Bo9wluQpvm70e6zcPV0H3Ps3n/We8Otl6sfODL2GloqxAVQkAx0i3Rp2e5tkqnZn5Q7t4u+e9+Ph2V/bYsq6FsCJkOGQhZhqqZ+znHR41WP/J2BeuhDxcnmWx/GFe6YrfKoh86ghWnuPKZvGHOviwcBPnElY+AxbbrF9NT3ZJUxR8Te8FjBtiS79zkvLEvPxddxIqBiCoDjmx2QYyVq0pic3F29+9+Lhy0ZKDcsxCO1vs+lSMkNJe8eP58zN3YOildhlJyF7Za6wK3bESZUouW7bUcpVSHtPM1j4IUp62iLMdAr/czGH+LMPuvPfYGIikugissUHlZ5s7ty7du+xu99vZBi6+/oXVN7aoI23GAKyjSYMk7FMFKZKzvJ/zfDs5eLfm/XPrDnoVTx6zQjwmU2dx1qBoD/fv5h6+PRycqx3ouDlaTIAqTVULKbNymMLVt7P+L93+skb/+XnuBYKhqySu2hQeaZO1N5G61q122x1eXAbvce+BOZ93dUP3S1PB1yw8wN1EAcE/eXue9hgfa3rObM74hxuab9tRnKBPmgQp2JKyJ2Ycx/ulW92f6eEReYYlyVAqDWQSKBvdnFJIhW+0SJe0cCDndA5e9KnP5MbmoTqF/2C9SQGY+7Y2jYepkQvklqHn+u26uj9cvuTy5UuWLWnJ2TJKjHW25+Hv7Q8uX753IV3C8BrdsPSVj5cv/pudHrOPrXfAeHLHSpWO+07NGf/2Hp59vQe8jUTDPEbrUEzMdHGfdcKl7k3czOGVDZ5uareacndS/HaNSjat4dX0lLcwfwOoxVVP4yF+vzOOVuDK6m7x3nW0ahVuHCXrWNnc+9mdC3OG7VN91raUN95Srk5jWaLay/66ybzdVjOO3uFc68N2lr3ms/+BC3rXjxGN99rR9WtKS1Hj2i/b1/trYmM5wVWbdrevb3rvOlu2dHscL5vk9SdJwTHM0QDeVJfl1rr/td+32KLHS238euuE6Hk7gP1NASVHyStb+0DpmghUHSLCU+0GW246gH980J+3J8DfpGBy2hs37Qymb2oodbbsVPuDlk0Q8GuUMFG7RJWaJtSfl5pzoKgcbrLYUqsF/NsxTNSyUaW2Dv1rjda8PYT+JhGVkXZX205CuqYSLTeewL/9xMRNKFVqVNHfrgJFTStWRhU43d5i5SaX+kMkOLfD1NcUo+SIq5v2GahvorFyo0397TYqbrqBZeuN/e05JW7h0VKbD/yLS23eLjRf01DK0Li+aS8qXZORqmOSlm5HmlJTUv7GpS9qX+pyExO/IRKftzvV3/Sk4sYoWG6Pst8kVeTgu5t2KtUzVcHS45U3C4PVP40mrNK1YmmpXQv+LV0mbvuqugCi0vYxKjWR6d9oBkXtZlZqOqs/Vorz9rT6m9SUDMTN+7BG0WVTW92tbarnGnhEaYJb0Z5itlZtcY1uneN1e93ih3wH0xrxjlsDz11N4944zX2JbgD8ewQryt1WQSQbFe+VtrVwde2HsNyiaP+gE2pnzYz0a2bInll7o30tkCVuk9RyKyX8GypN1HRZZeulfu2ZUNykaaVGznrbJc15U2f9rZ1KDp3rbZvn6n32hLeWT1u542f12z/VXwyxEVlBp9cQmt9SEHzEOVSP5Yvo2KL9LopWjKKjvxjnAB18IK36G6mu7EwK68dSan1jaf3tpSpuMoWlVlP7G05L3Haq6qrChF1QO+fjiLr2bUeFfUWaBF9TOeBzUD32YVPtXocrJ4uW1Y43rjK9fXVvvLhC+7dH/Ih/hh16X2Kz9hT59wRFz20pRaI22y5bCPkbqDj87mm3bnzd1TojIdwDBmJjPL4dGK6Fgb7TkglFzcVWbmOsvxVaxe3SsK5sZBlLN1/DcoO2fS3eJW4D13KrOPzbyU3UkF5l07p6qxJzxPDeff4s8NuPvFUQHDHC8z1f1njrpUG+6u+iong5s7z1W+brN86ruH0elpvo7WulL3J3qe1s9dNrrs/fYv/F/nhb2e1/v+m+/9Z7Fjfgbyk3fO7Xernr/TP+2W9GzC1eTvdUJAZ/7bf5ww/P/na/y3/1er54bwjgVloB2J963I3A7TcT6F9LAV1sGnBWlpgsAm6oHUH3I2frDQQQb/pQkK5QybQUCajtCBtBymYIsa7ID/cINYYzRqBovZxhQvfBsxIwv9uzddFUwaMhiM2m/sVtlbJdQ1TKpYPfn805trts+ECjFTvNtxJF82430d2OJtTvq5/GPfcLy4zi9tqSoutvlRsSt6rxgj1Fg2ZtK+7KYUWHw+a6e89M4Uwtol5aW3j90ZWDuXU5ABZhMIq8b0SH/5ow9KBxY9kinBZXLjJPNTFb4wQDzlF+zRx60AayvPQ0VE6R6SntVvxn+2QnnGJE6DVwuLGEHG+2zifESduOwuCRh9BKo9eHTSjwEYR77BUcbphrVlZIGkhNGpNdHZWccByBwQ32VFhM+oqnG82ey90dgZtG+ky+7vA4AgRrIpP5GJNPWdj+DnebSH5s7XDsF88Jn/6y4xathTWNZeLwWFg6IwDqMOfqEvWQxQjQD2JYVnV02lIL1n1NU3aNX7pYlpTMcYnZgSGa0p22GNfUlU1nXAChDvb52mTn3FEzWMdOwe3oxpVhLKOlLWw+Kdsga6YH6xqcXYx2POfkuBBfyhy2JTJwHgerMo2+WwD3Fo5As1kidGUXggmx2GwPfPVg82xktNNuvyMxahLaIIETPiUME2zv25UGe3B52d9Ob1lz+CamP37KDpao9DynfjNY7TIemyr/+xpXc9UQTgHwhR26rANnKTdTg1gTfcOGrnl2Ti5QjuPiHeyGYVim6z6xU8LRNNgczc5QD0aAxmans1rcGuze2HNdrHj8HF3YTtcgYp4T57Lg0G/7sA9VH/f8cTmd5SaWsbDRr2Klym1rmljnsl5Sgo9LnH2KZczxTlGPq3069SwIeUkZOtgvwxrNUuy02e+ROljEJnOo8uPiYRTj0hZgD1bPLdZoFSGL0qNc2LnjOmgmc2gTbSDjxyVw+qHLAq1/HGNTiYpcDF3LhQ0bDZ1dIg2Sste82w6ymVusVrzXrQt4+RXiZi7WbocMJiUCe7TSUcd4E6HD7Wkw1xwT+yaIllrMxWadfO9ywV5Kfg4Pa7OsvUZWOyAnCwAL83vldKCTK8Ho1KbNvdpLLHp0rgPztzy63hxPF2m1h/vh2GQnmAc08mI900Q5R+dmxzwsbMcM952DZC15pVkZ3cOcxm3RmTMN8W2bo0st5IXtOtnepYMVyfqLzYr3ut/OcDRWd04Hgr3OsNQwp1NaPi2/eu++wbRLd8e4NJiIuw8NlvfBWwWGP1rBHC+ThtplsL70oWQrDAw5Y+9lEEHr7eyD802BbtZEXmZZ7xKcNvw5sjWP0bs5uksPtbz63zkf3VArs7TM6r3LUGxi08l2MW71I3WrHP0uN3cW2W9wzE/TG41WjM/SvTYHly+LxwqG8Bq774DbK6IthTKbiIudb6W9ap1PM0oOzS+DO6xxIGC2Xb9G0mIRNbkPhUQ6E6HLsUSL5THZ3qXTdsHmO5uHNTN4X3d/DaRnoXDhfq+5zQEcN3xjO9POXuWcL+yyZmwBf9t4x+vM73RHt/ZwFYyA/GTzgDItoGeqqPG/eTd0URb2nUNCjz9zWmD36C12mfnhAMf+2uDIInxhEy6dXUK2+QRvD02F61K0Zprh6OQHP3FYybxmGuQa42RIzkwODYIjFnphQNy6bUF3i8sRSDgffUO/Jkcj8DDYkauXWC1+GcywPFgUphOxFRzb03M8WEQjwL6b0/k7sCFwv4Bt7NpyEyw29MzccKdx6OwG/C5gjUCMod+hKt26x+htLTb/k+A4/JtfYo+Ld5gKV1A9Jx8XgremlQVLD6YAgxVj9pwlc4S4TrTBzhmX2OadWaW3/EX3hucGm4z1I/02b7uDLcs49aYagPhkEN+WLQV7qofpYOcDlzBNgD3GmLR4OlljEahmG/jAe0EeEOi9T++RxmARTm73wQOXxWW8NzgRNdhauh243evJ8el7erHCIohmSfAB9gDu9ytaTmikOVgEk8eNqwMcGKzkwK/OeiJzfjGr71OQPlktDnwpT5o/hzm8/Qh+jwDHfHqWfNDZegSyg21o9aOr+1+6HuINVn/A79oQjmGGWRxs7hHoOKsx529nUnB3CWrsXMvVtNuXz0kTO5XixnrgzhLJCAwN/8x1oqtjaF/GhhODnAXXlL76L82q4dhvfol1XLzDVLD6rLPzceV7C7oIWEAwNRgsHzNX55I5QlwTfbBzxiXb+J1ZNd/sjewB5sY/GfUj+Dcu3xtsWccpm2ocng2ejHieh7fcbilTy32NPA5f6OUftoeqTZxEdejiFgBG4Qzi4zJybaJGjyrNbaCOlxiDhYZTkLPHHJdDtVjmfKJ+LlyjruIOoxdPNr4jxjoQRmd5IhWw2UAOjzJxCqE/Cm8YynA3fkXH5UXHDpMlOl8dq7FSgXCmdN3uEj3hGJTYW5xskhOtISZLHS/OwVDumWDu6uPFZtzu/AzDFosjFGpvY+zyqLsdFz/0RKJ1WP5KLFcYGSmMIx3Qc3bUB4v0OLPbBu1M02IPGNdbsqDnaF1OBC7LBi9gcKN0Ck50+iDH9EbJ/V7icZnz0e2aqc1NhjPz9Hy+pINh5gn52iudurUZhzMzXKZsiubM0zN1KzEeNDmxcH5cMXK+RKVe+eC7wNh9SUTh3WrltRCmQxvPxRBFuHKeWSefZXc9LO2Nz5Vnz1GIg3iZj2ObIuujnOM7HR0L7eDCzdVk3hXH2c5EcEKFfzdKCyejGkAR0u8Z64oZG9ETfMDmmNgIb6so10uLUdRDThv5Jqukd9QYlM+ZmW6UNuY0ico6L7YzCfA01Hzmc/zqcoIU0bK4GvpeBBwrtRHkThs2MugTmxTtzoHnhZFL3AIyT5YPwVPpl+Dj5kiboOZkbGYvjZXcxPie7laSPcke7AFXGSN21Z+HIwPoZLjVi20WJHo389xWZk+SV2I3fNDRMNloMCAyZjzMmqb2O5KkLf3zCMXGdsf9hpliCsyYOfvONBBZClzZquPwf872RAU4JeBv6Ie5Z0eYzvjtwE3a2sHYF80RTJey2dnHpht/R+Bq5pb8PfUbv1vKbNqApXxncgZTg+heeLbW026rZizzdHBy4oL5IQY5RqNZQe4WDfeQ8emTa7atfwF0Md7+UKgz46267X5LHzdjmanRn/38fhb08a+BaJslt4LsrpTgYHE4xgagVZz5tWhCaavEaOqzZC76/Gb2ZpclHE1xpYRBl/tBja8jela2wSQYDc6jKM9+9BnoGtX82Tm3Bk1s0bsHhtgs92jdiYm4l57XUrpYnvydw1CIQX1w7sJ4bzXdPabUL2hEpRG30/kWz8x4dbvGUrVs1QuqUEbayvoXn1Uhju9+DrSqq0fUWXJbwUdvaxL6ELrgLpMpWhreS/aY7Y2omV3QDdDY3y9buEUTo7+DeFAvIG5MODku+Lh3oNJWvJQtNfZH8HlnceMIn34TsfGcQlBYft7hOWr1LwuTznw0OGL8dePv6wbB3i4+2xZ6LEADA/eET2cmJ0YRy9nMjpHd27Awt13g+/mLQDImxPwWkA5EOZIVX17i3Oz1b0T48tUu5K2pd0l544cJrfjaPn2UmvD4ssnTi4fCh3+NJcpAgzPf05llchE8dx9mstYlmV0fmJs5+KKi2rVUF0c7yTWkcLaRzhnwHt41zEtN6/CkfuyY8RieufQf+2fJZvCzlvVafWDJsD+j8MG4jHJjHnO1jokYW3Vz46wrNWzNzm838b8pKrXgdeYYH+2lU+PWbJwNjVAI4NYTR9mSLY3+ROyM3a9Jix0+9YY1PikyBJRO/k5dN2tnhXmm1yqRXl5+sYzxexzpJypvFYm52OAVjw+OV+pb6/FaR6twzSd2J7D+zd8n1LSCDdxdP0tAyCqcmW0FfsHw8mMw3vFxB0U6Aa1vc883WbJxLGhDOZfPl4Mpvrw1ngTrsUDq3qp3cvvgMYw+P7ZEbBRwu3fNeeNF1G6EZqZIsGINBCzw9YzwDJre8aHOLIdLe72/S+Mnj7k+hDnpz2Sb4NqDtCVxL2sRyM3JnxndrmP5AqSEXY2Sa0C2zisrZvtE9gbkNcqDchODbp6xXdy02+NDQckYZ45VS7riepvC/JMrLgt6VrBP+5i1g/zJnXyToyXCvIXS28NtGuhzZnB60lTH81Nz023zn+uy3rEES4i8FTJlsdYvK2KT42gk1yDmdkYn+7/FHufkuR89LVtGT8HNjgAOdN8eczLTQ8xuXloqjvViOABbaQi3Bk9dJm6FjFynmM6yZXZdpq5ba34WmdTLtu4t6phvOJkPWLWQbzhqHMa5R+diaN7ib/5unKvZZyFpK9sRaJ32C1wzjpC/uRcniIETd7dbNB6zGbyX6R2oa806h+XiLd8ehBni4p3FF9D1vs4KjglvrajBJp6GKvRpFra5yMvE9AXQcbq1d6bpdQHA28QLrq+e22rvj76cncxOSDDIRlhuUqotjT3TPd85q65CC3A+Ez5HeUwBI5B7vE2L2Tk4mCmK63jTaTkZBwe4qRnd7C17hn8G9/qaLZrtrcyHZWD+rQfH0jjenFLqC/WepS+92WQItdyJdDEc39iz1xZWGdnYiupOyy92A1vDQ0/NxEgbmnt1iLGTvTF2PW2sczurNGzjCYZqLFZzo/h5imL2q140bC+/pYiJ7sa75UYfo8Ll26SmmyTS89D0HdPlsVO/FmUyS90ELGHgrNkYg+7w7c092tieyaDZGNaK9daYGxTIfGdKi/pqiVOP0btNU8sOTxvKc5nZ2ovMYgr/yqh800PutvLHmthMKgDAqSVNZol9yLeD1AlxtZW7OVlrzbjzc3lFMMBiZ6J3Fpe9s+3+ovlQI3Yu3vPK3rVZjGP61nAc3LbDbFZdCLfDo6Hj/cxkL34XdrLjZePj6Y5Oe05pElqkYeDMBJwXYuHJSNpXNuFmzjvYQzb5x36ugb+Tz4TZZuF8uYRjLvNkgb2DYWd3Hrh82RWzf1P6+XpiMI4maB8Val3fx85dS9b/NsLVYB3sgtlYcpi7eYEtsD77nWXtY64Gz1Y3yljwv48ISWaz0LnlnE4Pr8l73nGTMRPwvybOzZsioOXG55bYXtG9k1c9hbBSHEFcHdhhU1mVK+esZ7Em4d3o+CtnzFwxzb5H2lhxJtLMGRtROo2m2UIfb9GmNZdizvTkGVuZW7F07j+VH3278+dowslID2nNfrIbUbbBrnafzGrsSfNso107mIZyyR4Bvcv9YnKjx2AaGr0IZHCwlTphZzS64jx7+7neHhc99Ece+ZcbFq15Em5LD88St7isdp6Aychnl+DdvsvOMnkPOO493r+x9E5LVap7vfWnijicGqhspVqxP7uMMd4B4yFyB2cMs8liPf5lLTmX9o5rwBagYe88I3cL7VYffwFSmPtkH7V6Qnb29/YvXfbb7riKjwqYjASkTT5P6pIzOCpfe9i+aHC3654wEmLmGtnrXGTh4ZjjvqTmN1+8qpgA9hTXR327idGaS8ONOPEeqO43UgbbE7gMbp60ALvayJr7jXdOukZUUNvlzx4XVMI9vprj+XhPsp1iIPP+0lForpV8Z9cE05j6nub/hcu3EdtwgiodWasWF4AtrHEF4rtY/nIRC3DpsXwB/cFb3ZOBPJbpBrZtSw9uguylgQmB0/NWUDVTZGZi+w1fisNnHkXK1IROecFo6LhUqHsCY/MePQbxcwdTIv2ssWevGRVmZ55w6V0tXfSkYe7JuCXLpF5rnGk+0E7CS9zJ+8kYbVvfvAmHabCAZ/fZjfAh9CvW8HZWXLQce8s64ae1WR0HU1U+syr6SncDjlbP4gQtMJRFGbncwBhzs99xuKnX3RqD8Z6v55f52643zcnt5K7XjiMjjDYrN/HsGXFM+7ByZZQjrteXbcUo9axNbzedsEU7N++Z92ePvMlPuvVa4+uGVL/y4ZMZqXXPuO366ENIb/rRcA9AaIhZjV3U8++37ZnacoMV1mduEMZlljAyOyB7Zrna8TePmMY9DGkMwp82IGbwo48FzdwjwLbswFTuOwaGxQft2mfhMODuXrLgcFeXaCw1AGfSvZbRLZ/XSNbgKG4Kfi420hkDScZUC+4vKaqZA4oI3WLi+kQ+6vuZy9Zze2jQuGefst6RS5iH4XBXJhVr9M2EOytomLcDdIpTgo97MmDGr3s4cEKwF/i4lwVmgj0c727su3pGYNkmqluFH4J+fpwzmcUXVEnZtfBtrxti+5jrYes2ToXA/zyAw8qU2d60iEZz977SK7m6AFp7a6WabY42KIUc/yH23OB4Jfu16ZH7rfnrVuGHpDeXzZlmsQVVUnYtLMsLl/K8nx24H/Pfofwdyn1BOOztRF6Oum/DIbZr3lXafICn1W9/7g2M3tDFObrrm9KtzyufN3up4o+jfbW7gSTF5G/NdaHdv+fDbhGbj6vVTBiuC274ijX2sw68k14vUbfvcHAvO2jtlrmQjboiQp9pOE/wFAdiC+g2HY7MOuhsAs1yGPtQF79CMtLMIqIN6SqYsctGl0RjWx9fNaLy4i3xel6X4upuZH1OEwZ5P41ygSPyHJYMsPxH+GUTaLrY48uOrrXnd30jOQ/NObEll6od6DQEA50LsWx38eeJv83uHuHh+6I0AYfLRw/aGszv0DxuGpx/el8LS1hV6LPuKW7vhKXwbt2a5g0oIo0+tZH4ArolhSM7pqDbLERbllTiXcLU6ogBzqdxZzZDmbfsfxSjatRfvzpgmndjx6Z02nKBdXN+Vt4nBp2KDVeyM38eWsmM50pMKux6YJweV1Oczd8pYefe+A48qiWF2G/vpuswsXD+cNHzZrPd2y/L8mLORJivGW/dqzs2lvve86uU5VuG3rFi0G10f1Y4pnDPjx8+RCOTgbI4vV/oyIRB27D5o5NuuEuJrhilPoG95VmXJVwWMcyK9qMJ0UJbH40jpxBfh3JDqTktJp8NhvSGPs2dE071W7I6HyiJeZMxY/XSNtQSfxx8C14sP52pe8IFS+HRZD3qx2edM91Cywfv9hw6gbjOpcfPr+x+rb2ULJn809zS/gmTrU8B5Jmlm4TimNa7tvGkSXClVSyOnNJ5Q4E9sOuIxzipba6dvN3XysESOGe+y8tCTJw5j+j048UMwuLRVrbi8JiuSmcTwd0e1exZuQH1MrhdwKXTgN59fncyAhsEX6733IhkvOrXmDEVl3xom6c1xyj9LvGiwmL2X5XBH4K9DmGZDjkwI19SfFyRJdzmRG4PF7uLHtiPGZPDfEv+1oAM+aRvv8b8uLFf14mvykoGIsySzKP0mHSa5lCvlP+L3O+TAjZ8mYS9+VvccMqmDk2UnF/XVxbsaetetmx8olyaMlxs9qZ+6PZJa9b12g5BDt29+Ek3DpzVYecmkdccQyDm4w2ZXWhjt1uSh14W9Txz9/5r6wf2PqM3h/fzlZNhzZ5eObCDr6bOfQIbgG6bv9t+njFrf95sm10EWj+6B3ymqXP5as0dlDtYBh3GYQzyyHm4e3jDKM6dOncjuEgH8Dv04V1m6iRfO6rX78PqG8Cho7ilnbPgrq6sF3V2tmmdeBzWn6ts6zDEJl0ZSKjU+6B/XGJtLJ//GHVHnb4s1SI+3kpN9RMunB272frkIAbeJTr8cE0hhtT1lOqL3WAeESyOtr2cSv2WH94H6riUNArlycB5D2MefikWJq0OGzI7Jipk27HR0G5Ij5nZbvCOg3gS7C8/FFLfrVDZZ/iSuBbny5DOT9krmgCyWYDup6DLdvsIcK2jfBzG759bgCcIRja7TP5/COqlZyc7x0mw2YmtlePeYdutOTaxERmxCtZ7bU5PXhjd1hgcu28zIDmYtPrNGVmA3ewoZbv2nLVtQ6j51g7Vvq07OL0PgE2ffNYmtTWmbB9A23jUYEOUzvtuFHhe2HRZf9ex+x1sTviYm+7B6cKMeRBN6wcnysqTLQnAhb3oSi3vNPOlhIWp7L00m9rr6PhGrOaOezba4Ja17qVoIZWeA3zIRwPNwCTTzhnRzWytcUVoLBgcMhq/ydzE2LGH9h3WkU5m+H2VtpjSGMWtHbGEa3vQ9LgNWdWkow2xrjfkzpyRT4qOFOHIsl9cavDxrjZHgJcdfE/XffJZocdLYJPRYdXnNofqGJA/MsQzGjA1/MW/bGFGbv9NTdqq9KrkT/cE4Eg+I103PZor3CADOVP0d5p2N3qMgD8EtExG0xzE2SP6Q8G/kp8bwmLKFVYYzkK0xcgaXBzJ70DXeY3mLGaEmbdPw/CR7ynPvWfOaD8zV03t2ZZ5DW7mcK3tu+EObJPEuGvLH1c1do1iVflOOHMSUl8AWq7AqfNrTdnZbi6Rvy5Aqmt7BWnbwMf5vrPDehiE/YqlhTsDt7/YP+OxL09sDt3wQb3NojP7sZ/uTIKQN2f8KkD3BnH2yGmlLQTMl2dgahfC4PRe/AhPz4KRJnDu8RI+CbfOdQ74mgjamF2ivb5a9wL2LwIe+PDKTQC03pVs6C4IX+dxJwu6y+GQ9w7nmwyDIkMW2GLjx+c4ZL2yTH4YostarAJYmHTL1FYGYJ7oHHKLNcBq67Hu4/th5W45d087do/6E85s2hMAw7HClkLxnBGfBzUmLLm85l6fjltlciC69+A86N28uOyH0q06D9GbQD77oclyHpht3lg6xhK33tKykNkPtVt5HqIbYE77oXYrzUP07pfXfije2vMQ2P3y3g899uaBbetjtMNHHwhmSzwPd3donf0gd4Xnodeg12o/BN7QG8UdUbb9gHtOzUPHTa/Zfgi40Oeh/3zXfj8EbIB54DTZ8cOBo51odkvJnnSQU6Mx4xt/OgONGEYbehw4gvhEskPXMsWe46OTTa74cG9/l87LVJU1WG4Osg9Ir+dtgrAGp0VpFytNgLFnZ2y4Iehb+dqxoeePJsRX7DeA2rZpN54NPirdIzNyuEuXxNQk2KcLy5oIt403CNsl0TsDGPDKVwjgxOD4d50jlIbO8+1uzasaub8k9+2ZtYDNW09k316zqsZdovG89Y+CclzYAp/36JPUNkS7+8Xrfuoe07BVOx1B8909LFr5znt6xINHcp353lXTiWeUEDaEfGxyGkOaXISosxm5DsaC2L3hb1K74hwdLcaNNj5DRDogPGdS2FmF5wC1y4F+ATtKNIcVjZzPf1usu9W3oQ/x2Gwa6rwznwvlOrJQhqV7ftjSkx7iSy6kC0W3tmzzy5gCux2qNif4i/2YvrMhiJf0JGB6evt7NR+OecF/gzNoRbACDHeAPTE8G8XMwtTbHVdXpTOPAcTeep61JAm6+PJn0G23BJNtbkVkFm88WQhHuzUwz6Zrehc2WdF3fHeqfhbr8GTovddy9hzBep9NhzumE76Td1KKC6jVcYx+Gzo/82rImbkjN1px42zfPTTtct5TN3ku2nbnHpxawsx74sEtB6xxt3fYgWaMG/zFR3ObbYLlrWo/G02RP8kGxyOHA8rd3VMwZzTYWdb5dyvXquUVvsG0HTWJz7a1zzflfRTUngyGATq4C0rEisBVJ24x+XczEn/49Pnc4c3S4yhIzkkQgAn7JaG8CqQsxie+3BPA6hKYQkHN2fULD0Osix931gade7dYKAPaVqSLbD4nZId1ds8wCZlkRubG2pq+iWCeORP63UdzbGlJFNa54zgeYgMjoHHmYNM5k/UhfN9icBuaWoOHxO7YWjizpLN7FyYsd1NkgATbYEtjXhK8F4Hvo2Pr7rMvms5y5j9Jubh7ir3mgtQiqL4yNNLhGLE45x0ix4hAb2gUb93lnccrKWaVwpUVhqBcA3YC8oDBPtxkc9UZo/DIG7Ys0WA3AcU7sEOQz2RefhCaDWAm2nn4XcezIZPvkY9C/qcxogjLyODD1nJWIHFj34eE5luply6dbiNLUXUBTop5TLpviPnJY7rnNoRgNGN2gzX/z4X2GiMMRfwIe27FOHc6hn0YnAXti5NBSDhlfhO6zmw7wD0PPBHxVu7H4em6+yyOcbUnP5zQ4eRaBrp0sSGCjl3BDviFvLcb1uomt2EaVxz3fWhZLXzbdX1bCQYxfnM4M891hFGHJVhgw0kJH2GT7c6ruuPTe1Ucm9O5cRXDkOcLynAfLjlY7uzZGhy9dt7xViVq1d2S6/7+5nB3nXBqeobFe1s656xoHujCHGMyuhiDEU7mVfcW2sSJvWtFZJH24cWWx8b2mlx7n/S7TpMNJtwy0snPDtC1yueIs1P1ADM3fD+i+pZ3dg2LmLCHmYszsAOhhizcB5OcofIRaKMWuf0FGFrDWx6uSdRaT3ds2ixyTU3OeWJIv8G6J6SsuGlfg6zSBw/W7h+BZDftew67QvFm0SPo0hVuzo1V84zMaew8TE1wyQ0XJrRoi4dl3PbnzqRY1dmT8DAjwEdK7GKz0K0H4SDG7gZ7p5kWo28E2vlkpENx3CNXGxKxz9c5leEsRFs5XYOHZbkdIB2jOQfzQUA4o6vhO24b8t7PvTR65vOZCHP+mNLtGdTZ9s412CYJO7y37HDcueufqzoTRq4mLJ7IXi6/hQNjas61cu5IYVguLZA7KfdHyLkNYbXRHXOz00ji0OvmjPJjIsLXi3QfxthmpMmmOg/iySdTmxP/Xb2w5RvYXdHI97YqwWlbNWdx6HhP3i205iOX5wFHwPE6rcnO0xAH80r/0mjB0d0HgCsyuJamDaR2kvYL9mSTz+tDN2T6vTq3Opa5j5uAVQTGeGtrPw0rn79cUHnIZ8mWJbYHPUs7KNsHihEDMttyoxf+YM3h8PjdOd9LZvNfLVI2K5rY0Tm375vynaJYNn5XnLf7SqscGQpH2+YMZO0iX+9nIujZ6dIxqrnivJ0Lb1khHCrkklCI8gtyE5f2tx4QdCgsBs328BN2dOdxi+BaQT4LLBNJfyOKzKEhl4F26AIsjAAdI1cO/wJLF9Y2TyNueSkDL/GTvvuMjJsQTGdZjhZiTYHj8QezhnQ+izKdvPKK/D6ExTKY5iCeqTPtD5g9D7xHVmSnE5jZ56Vj3FSesO4pvmx/10MW3yrkzkELMG+TjMscFWeSsq/rwQnIHnc5blGeXrqwtfq0uS22QRYDcC1HBZ8RDLDqeYlG3+bfCLVteRad9Vt1VpVc+RniOd8c07B2UZ5i0KL167z5uK+aWYMWU7xkvfbhx/MMC5+SfXOAfGGEqsUqjLQy98tmaT0Jv4zJsezgbtcyAfCxmVE79rXdi7nzR+P8994regU5wvEyzgjeS0/YiUXOAY927loBWY3c24DV4xjaw7EMbtonufvzji1LYkfS4a18VxreSGp/6l30O/02Ti8EwZDVi2dShUSL7u7VdnCh1R7tzX5PJGc8s9/kdsenu6taZPsNWytq+yVxm96Ej7is7Jb8IEKtkga5j1WmsSWWB5nXCwz90SwkbedDEiHrbjlt+2ig1A1DWz1GeMItVhjBFXOWXd+ll7s+7GUrJHJXl2uPzAt1tX157aMJ7k6EOjh3pLh6ZyzzestkThDhtVHbMH0KDLavW/ot1bwejmMTbgTTth2m2plwc0Zw9V2HEhuBh2Izw2I+kZPtXLR6n1C7c6JAbOwyeLBj9UwIWmaCtHsf55fCxqbyc5J2WD/CwCNzzNmrGUkmeIZmNPdblYH4Z86LC4BnzHeBbrWPwGZpWMC705a0G5PxwtD8K+bIYQVw0OocBja3Jv8Ql/letmDbJkxirPcqG6oIyhdI+aYYbGTO7uAeNl+U4eLYOwnEZAh5MznL23pw81VbxGfL7pXuwAQH3MhoF0NU6yffRc4kMGDx3D6oaPKND9muOnd/QaA02wN7wzGV0OqyPDhEcw7B7cRhEzhwxw8bGqqd5PGZoYM6uPTn4U7rH4TH/L3Hdz7qeWBz+oeZxr6kDNYzDf7LVBswvzYJroSZDCj8zgE0uI8qtAnXXvrjwDA728h/PwWpR0BcZEGer+Of0dS9bedMO3a2GmDKmQENWhprFzR7aDGGlo9vxdLNBysbY5/Ha0472Ag6GyflKHKXoZv70D3ZzYvOF8nw/M+PzX1ja9fthqlxLN0euN+zXKmdtHMR0A3FNvuEGnHY3rB20+5TjO7Ox5jpLgDiLsfjQ00KCQExj5I0sbv9+4yvk/JY7U2t8Uk981JGLQ2zJU8GSilLncfyz9RVzY9lM38PvHONzXLTCobqtcuxJIFFzqaYp5Y6jr2etmLT3EdwHf4e8tOtWaFz7thtmyIgC3G0ximQNx5hDfQV7XOX69BgZduXjRF4gugeFoSBBZuDm3j7L9K7lFOKR2yd2Yw5XmGEwE65Qt7hX/14NcAlZ/ntFFeo2S4mp3BCfCJL2sD/pctGinmLSLU5f3/VvBXD8dMk+X+x9tTNGM7XI/HsHZ75y6v6mZS0MwxnbJjuhK8yYGt3qDAvKrs5Be78BEPIxEUTy/CxKxixjbj+TWXtcuecfnpPsqecL4rnlGUF2RTftTFjbHnlXdV60Yu9jGOJbuTTclyr02RO9uMtS3eZUB/ZdA6M0LgKaz05wRZ2gfj4qnWhSHTt5WK2C6dJsuMZFJjfqAZsOnQO7Nm9PCLkf2nKptg8GnCOI7DZaL8f2OqO311NrfVOvfrMhnoOmYUxGc94IDeTsspVqx9Srd3BK7rSis3VupdicpKvuENLzbEyFjbKBBUYwNmkDM8Cj2aR72n6GjJORO97RkAg29JYGvRSiOPK7qQRI1W8dJyizKOwDu3anB1wV9EQjVu01hIfvmMGUVZvOjLjZcc+QXCtJXRmedYiGj87CD5PUTdP1azdnQpQjRrg2jDskm3IzSCO70Dn9xG+WuB3g7yewOhDRb7d3JZYl4rQTQMO1mzsM2uS48W69nUqwxYItl6iqT/Lz2Z27P1rnVTwLkbdm1pTybhwKtth5oxOSqSWL5YMsNRMGe+eKyqfDIDfe7YBxDFElxP92TcCTFlv626IdbYs9Jhdom5luEhxbJXuN1nG2dtzch4Asy2gG+BWhWeLrmwI4OLqrjU2Pa11vpPeG+z2blsW5sUOOJxpzTHqgNU3h66dP2PdsZO18TSXsDQGK1YRhI0z7pLt/byVWEVijV0xrmbFg4GRSbqn+Ji9KVb07b3GED65f1LdXf3wlVXi7xKH70ZmVmoV4zR0X+IZuEU9JnSnkT2Yr9s87eR92NDtGExWVhpbt3HS8EnqMP+rajPHhiHXm03qdoH6BKw53vw5rJiU6mbuTm81YjGyL1XbrK6a6fx39z72BOM2yEzDsAA5leFI+9H1w7/Ny3aCqC3bM0ATSrIREwwdsNx5lzh9zLLGMf4QA8fdehrTfW5sPVNninAfi23lwSZmlKE91UCm9SM3w36NYk/3G7QYlcQyrLmZj/VZPHYc2W5isg3fBNKMZAjvmpzRAtxVB32721gd9fIGBiXGlTftZIdjqrQ5Dk006tkxbF7eNeasOxu98w9vS7q/cZrLi/TIGGA4dSTnZbNaX8R0G23adNA10nM+zYNkeky/gWLLCIJpb6ux69dL5tk7mWapb/4gNG9ZTyPITUTzT4cZdab7lFC7ug2gOgmBpYWOFd9qStNhrBNY7LECc4ALddUvbrqmdUiBbdrEcDEch03paCbyVZg7mBjVmaZ1vc2lMNBijmoN15wH2It8UIbNF1ns3urwlZ0vQrnEp9GtBBwlenuGXeAnD9tkz/kC2BBFvmVSGjEfbu/bZvjAmSSx9Jlh3YvNHHKdMn3gG+QEn07uAF83c31mT0JcccwOKzudhNaNVDNyA+wGb9tNEY03C2WNySU/FmKp9gk5Toyk252Znw0xMw6JuPb5ugpbpOvI3hyDOb0YTa8XdbcY+jsCSmbxHVmsXuXcLufpo2HFeovdZEp6VZRiDg+T0XXyiEWnYuzPFKbxr7spjrlOK3iVnXsMqbEk34tlcImolmoVEPoBhz+/2oB7X4dlxrfpkkudRL7ZG8Rmc1yl2vndIjD/TH0XCOcJ5ysMXh6cY8wDPVS334g3szZHKGfqWBohtSrygR5V6ofEbamBBcpROncF7gOMXB1XP71uvHPJC0I41IN2VFEbgT4fh3UrzeUuNIdZN7RvL/yPVNs3eALa+8hLivpTCtfaVRh25zLQgq3b3gYYdsxcnjhqyFmMoRWiZwpc6QzsZxJrGkfC42I152RaCStU2QgyUfS34xp+xHAUgbUDliO8YT5FcEmBrSA8nms7wB7uX8UnM5dHBkChWZbhadfLtBdIWMqzWZ8840GOew7DcolALdgaOCo1NFqeQ5DJFQLNf9dIm4OJlQtktFEoxs/MrpBqr+oXwAS3Rp7Msarl2YHwLMlj/zbi4AwzOwci3dDKwB2yPgeNqg/nSh8HXcwIq3pd7LykHVX4gLKRzFfrCgXzvmCT/3PfwsLkEyjgtPani66dyn4Z3ITWAvwyt4lj9WL5Y6obLEJXI3I94S70T2whJn+ihk6K1VG0P7fn7cH2w5UGFHG48GdIg0B0afvX7FUe1N9YoPZwFpsH/RN29iKuJWfDdizKPXg1hTHdoDTH6dme3hg9p2Z2fH40fldVmKuMwi7hlZg+ySvYMxcow9uiBx5j318vG/gvVUOqwR6lTFSM6661NvBD2lKCTA4cp/Xua0XLUFMbNJ1+/GQesR6ZOcFLCBJEJZ6TidtCOWj0iwd40kCzG2c4qLSAqTSIDCFN3nkmE122zbI9/L8v/dP1AUU8kzFsyqcHSGwIz8aMyYwkrYH0OTUbgJJqPeOlHKmmKe4uW+0ekTaGWJO0bZQKXkUdw0qvf4DuXv8G8kFMUStLWcAPL1uZOY0Q+Wf8E9Gb+V/I38F2mPBmfJPyj1SwzvW3qcWQBxU3EcUR83QkOHICy7HfYcBCdUCqLX8oz2xzbRITcNYf0IQffYUE5DWSW3IfEvfY8G+4T1Hgb44hwqbxYOIef9DAEk7n+4R80woZtdBSw3eKu8tVCz9eY+r/kCaB8Of/851zIP//VAAAAAAAAAAAAAAAAAAAAA==";if(modelContents!=="<!-- SC_MODEL_DATA"+" -->"){eDwServiceMgr.get().disableAdvancedServices();ioViewerOpts.URL="";eDwUIUtils.viewFile("Bottom",null,ioViewerOpts,iContainerElemID,Utils.getUint8Array(modelContents))}}var c_eDrawingsUI=new eDwUI_1.eDwUI;var c_server=location.origin+location.pathname.slice(0,location.pathname.lastIndexOf("/")+1)});define("eDrawingsWebViewerUtils",["require","exports","eDwEventMgr","eDwServiceMgr","eDwResultError","eDwAJAXError","eDwUIPluginMgr","eDwTypes","eDwEvents","eDwUIUtils","utils"],function(require,exports,eDwEventMgr,eDwServiceMgr,eDwResultError,eDwAJAXError,eDwUIPluginMgr,eDwTypes_1,eDwEvents_1,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function getViewerVersion(){return"28.0.0.5018-190912.041001"}exports.getViewerVersion=getViewerVersion;function startViewer(iServerURL,iCanvasID,iViewerOpts,iInit,iOnError){var _this=this;l_ModelLoadEvents=function(iState){var viewerCanvasID="#"+iCanvasID;if(iState==="init"){var viewerJQ=$(viewerCanvasID);viewerJQ.on("edw:ModelLoaded",function(iEvent,iViewer){iViewer.getHCView().setPointSize(0,eDwTypes_1.HC.PointSizeUnit.ScreenPixels);(function(){return __awaiter(_this,void 0,void 0,function(){var iExcp_1;return __generator(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,l_processProductStructure(iViewer,iServerURL)];case 1:_a.sent();return[3,3];case 2:iExcp_1=_a.sent();l_displayError(iExcp_1,iOnError);return[3,3];case 3:return[2]}})})})()});viewerJQ.on("edw:ModelLoadFailed",function(iEvent,iViewer,iModelName,iReason){if(iOnError){iOnError({ErrorCode:"ModelLoadInViewerFailed",ErrorData:[iReason,iModelName]})}})}else{var viewerJQ=$(viewerCanvasID);viewerJQ.off("edw:ModelLoaded");viewerJQ.off("edw:ModelLoadFailed")}};var viewerFeatOpts={};$.extend(viewerFeatOpts,c_featOps);if(iViewerOpts){$.extend(viewerFeatOpts,iViewerOpts)}else{eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts)}if(viewerFeatOpts.Debug){if(!console.debugLogCategories||console.debugLogCategories.length===0){console.debugLogCategories=[];console.debugLogCategories.push("*")}}eDwServiceMgr.create(iServerURL);(function(){return __awaiter(_this,void 0,void 0,function(){var iExcp_2;return __generator(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);l_ModelLoadEvents("init");return[4,l_init(iCanvasID,viewerFeatOpts,iInit)];case 1:_a.sent();return[3,3];case 2:iExcp_2=_a.sent();l_displayError(iExcp_2,iOnError);return[3,3];case 3:return[2]}})})})()}exports.startViewer=startViewer;function shutdownViewer(iViewer){l_ModelLoadEvents("shutdown");iViewer.unregister()}exports.shutdownViewer=shutdownViewer;function removeModelStreamCache(iViewer,iServer){return __awaiter(this,void 0,void 0,function(){var modelKey,serviceMgr,iExcp_3;return __generator(this,function(_a){switch(_a.label){case 0:modelKey=iViewer.getCurrModelKey();if(!modelKey||!iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone){return[2]}console.debugLog("ModelLoad","Attempting to remove cached model: "+modelKey);serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,serviceMgr.removeNamedCache(modelKey,iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone)];case 2:_a.sent();console.debugLog("ModelLoad","Removed cached model: "+modelKey);return[3,4];case 3:iExcp_3=_a.sent();console.debugLog("ModelLoad","Failed to remove cached model: "+modelKey);console.debugLog("ModelLoad",iExcp_3.message);throw iExcp_3;case 4:return[2]}})})}exports.removeModelStreamCache=removeModelStreamCache;function l_init(iContainerElemID,ioViewerOpts,iInit){return __awaiter(this,void 0,void 0,function(){var serviceMgr;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();serviceMgr.disableAdvancedServices(utils.getFileExtension(ioViewerOpts.URL)==="scs");(function(){return __awaiter(_this,void 0,void 0,function(){var pluginFiles,_i,pluginFiles_1,pluginFile,pluginClassName;return __generator(this,function(_a){switch(_a.label){case 0:return[4,serviceMgr.getPluginFiles()];case 1:pluginFiles=_a.sent();_i=0,pluginFiles_1=pluginFiles;_a.label=2;case 2:if(!(_i<pluginFiles_1.length))return[3,5];pluginFile=pluginFiles_1[_i];if(!pluginFile.match(/.*EarlyLoad.*Plugin.*\.js/i))return[3,4];return[4,serviceMgr.importPlugin(pluginFile)];case 3:pluginClassName=_a.sent();eDwUIPluginMgr.get().loadPlugins([pluginClassName],null,ioViewerOpts);_a.label=4;case 4:_i++;return[3,2];case 5:return[2]}})})})();if(iInit)iInit(ioViewerOpts,iContainerElemID);if(!ioViewerOpts.URL)return[3,2];return[4,l_processInputURL(iContainerElemID,ioViewerOpts)];case 1:_a.sent();_a.label=2;case 2:return[2]}})})}function l_processProductStructure(iViewer,iServerURL){return __awaiter(this,void 0,void 0,function(){var model,modelHC,rootId,onDone,iException_1,msg,_i,_a,msg_1;return __generator(this,function(_b){switch(_b.label){case 0:model=iViewer.getModel();modelHC=model.getHCModel();_b.label=1;case 1:_b.trys.push([1,3,,4]);rootId=modelHC.getAbsoluteRootNode();modelHC._getModelStructure().resetPmiColor(rootId);return[4,model.initModelData()];case 2:_b.sent();onDone=function(){removeModelStreamCache(iViewer,iServerURL)};eDwEventMgr.get().addEventHandlerFunc(eDwEvents_1.DoneEvent,onDone);iViewer.processProductStructure();return[3,4];case 3:iException_1=_b.sent();msg=iException_1.message?iException_1.message:"No product structure XML?";console.debugLog("ModelLoad",msg);if(iException_1 instanceof eDwResultError){for(_i=0,_a=iException_1.Result.ErrorData;_i<_a.length;_i++){msg_1=_a[_i];console.debugLog("ModelLoad",msg_1)}if(iException_1.Result.ErrorCode==="NoNodeWithName"){iException_1.Result.ErrorCode="IncompleteFileProcessing"}throw iException_1}else if(!(iException_1 instanceof TypeError)){throw new eDwAJAXError(msg,"AJAXFailure")}return[3,4];case 4:return[2]}})})}function l_processInputURL(iContainerElemID,ioParams){return __awaiter(this,void 0,void 0,function(){var ext,pos2,fileName;return __generator(this,function(_a){switch(_a.label){case 0:ext=utils.getFileExtension(ioParams.URL);if(!ext)throw new Error("The file has no extension");if(!(ext==="scs"))return[3,2];pos2=ioParams.URL.lastIndexOf("/");fileName=ioParams.URL.substring(pos2+1);fileName=fileName.slice(0,-(ext.length+1));return[4,l_viewSCSFile(fileName,iContainerElemID,ioParams)];case 1:_a.sent();return[3,6];case 2:if(!(ioParams.URL.indexOf("http")===0))return[3,4];return[4,l_convert(iContainerElemID,ioParams)];case 3:_a.sent();return[3,6];case 4:return[4,eDwUIUtils.viewFile(ioParams.URL,ioParams.URL,ioParams,iContainerElemID)];case 5:_a.sent();_a.label=6;case 6:return[2]}})})}function l_viewSCSFile(iFileName,iContainerElemID,ioParams){return __awaiter(this,void 0,void 0,function(){var modelContents,_a;return __generator(this,function(_b){switch(_b.label){case 0:_a=Uint8Array.bind;return[4,eDwServiceMgr.get().getFileFromServer(ioParams.URL,true)];case 1:modelContents=new(_a.apply(Uint8Array,[void 0,_b.sent()]));return[4,eDwUIUtils.viewFile(iFileName,null,ioParams,iContainerElemID,modelContents)];case 2:_b.sent();return[2]}})})}function l_convert(iContainerID,ioParams){return __awaiter(this,void 0,void 0,function(){var serviceMgr,result,viewer,iExcp_4;return __generator(this,function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,4,,5]);return[4,serviceMgr.convert(ioParams)];case 2:result=_a.sent();if(result.ErrorCode!=="Success"){throw new eDwResultError(result)}return[4,eDwUIUtils.viewFile(result.FileName,result.ModelCacheName,ioParams,iContainerID)];case 3:viewer=_a.sent();if(viewer){eDwEventMgr.get().fireEvent(eDwEvents_1.LicenseKeyEvent,viewer,result.LicenseKey)}return[3,5];case 4:iExcp_4=_a.sent();if(iExcp_4 instanceof eDwResultError)throw iExcp_4;console.debugLog("ModelLoad","Model loading failed: "+iExcp_4.message);throw new eDwAJAXError(iExcp_4.message,"AJAXFailure");case 5:return[2]}})})}function l_displayError(iExcp,iOnError){if(iOnError){iOnError(eDwUIUtils.makeResult(iExcp))}}var c_featOps={URL:"",ValidateClientIP:false,RenderType:"ShadedWithEdges",Debug:false,DeleteModelCacheFileWhenDone:true,StreamAlwaysConnected:false,WebSocketEndpoint:""};var l_ModelLoadEvents});define("eDwAJAXError",["require","exports","eDwBaseError"],function(require,exports,eDwBaseError){"use strict";var eDwAJAXError=function(_super){__extends(eDwAJAXError,_super);function eDwAJAXError(iMsg,iErrorCode){var _this=_super.call(this,"AJAX Error",iMsg)||this;_this.ErrorCode=iErrorCode;return _this}return eDwAJAXError}(eDwBaseError);return eDwAJAXError});define("eDwAmbientOcclusionCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwAmbientOcclusionCmd=function(_super){__extends(eDwAmbientOcclusionCmd,_super);function eDwAmbientOcclusionCmd(iViewer,iActivate){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=!iActivate;_this.mFinallyActive=iActivate;return _this}eDwAmbientOcclusionCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.ViewMgr.enableAmbientOcclusion(this.mInitiallyActive);return true};eDwAmbientOcclusionCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.ViewMgr.enableAmbientOcclusion(this.mFinallyActive);return true};eDwAmbientOcclusionCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mFinallyActive)};Object.defineProperty(eDwAmbientOcclusionCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwAmbientOcclusionCmd}(eDwSupportsHistoryCmd);return eDwAmbientOcclusionCmd});define("eDwAnimateCmd",["require","exports","eDwCmd"],function(require,exports,eDwCmd){"use strict";var eDwAnimateCmd=function(_super){__extends(eDwAnimateCmd,_super);function eDwAnimateCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mExclusive=false;return _this}eDwAnimateCmd.prototype.commit=function(){_super.prototype.commit.call(this);if(!this.mViewer.getModel().isDrawing()){var viewMgr=this.mViewer.ViewMgr;if(viewMgr.isActive()){viewMgr.stop()}else{viewMgr.start()}}};eDwAnimateCmd.prototype.cancel=function(){_super.prototype.cancel.call(this);var viewMgr=this.mViewer.ViewMgr;viewMgr.stop()};return eDwAnimateCmd}(eDwCmd);return eDwAnimateCmd});define("eDwBaseError",["require","exports"],function(require,exports){"use strict";var eDwBaseError=function(_super){__extends(eDwBaseError,_super);function eDwBaseError(iName,iMessage){var _newTarget=this.constructor;var _this=this;var trueProto=_newTarget.prototype;_this=_super.call(this,iMessage)||this;var setPrototypeOf=Object["setPrototypeOf"];if(setPrototypeOf)setPrototypeOf(_this,trueProto);else _this.__proto__=trueProto;_this.name=iName?iName:"eDwBaseError";return _this}return eDwBaseError}(Error);return eDwBaseError});define("eDwBaseMarkupItem",["require","exports","eDwTypes"],function(require,exports,eDwTypes_2){"use strict";var eDwBaseMarkupItem=function(_super){__extends(eDwBaseMarkupItem,_super);function eDwBaseMarkupItem(){var _this=_super.call(this)||this;_this.mPosHC=new eDwTypes_2.HC.Point2(0,0);return _this}eDwBaseMarkupItem.prototype.getClassName=function(){return"eDwBaseMarkupItem"};Object.defineProperty(eDwBaseMarkupItem.prototype,"Position",{get:function(){return this.mPosHC},set:function(iPosHC){this.mPosHC=iPosHC},enumerable:true,configurable:true});return eDwBaseMarkupItem}(eDwTypes_2.HC.Markup.MarkupItem);return eDwBaseMarkupItem});define("eDwBaseSelOperator",["require","exports","eDwOperatorBaseDeps","eDwGeomUtils"],function(require,exports,eDwOperatorBaseDeps_1,eDwGeomUtils){"use strict";var eDwBaseSelOperator=function(_super){__extends(eDwBaseSelOperator,_super);function eDwBaseSelOperator(iViewer,iSelMgr){var _this=_super.call(this,iViewer)||this;_this.mSelMgr=iSelMgr;_this.mPrevHighlightStates={};return _this}eDwBaseSelOperator.prototype.onDeactivate=function(){_super.prototype.onDeactivate.call(this);this.popHighlightSelectionState("NODE");this.popHighlightSelectionState("FACE");this.popHighlightSelectionState("EDGE");this.popHighlightSelectionState("VERTEX");this.popNodeSelectionColor();this.popNodeSelectionOutlineColor();this.popNodeSelectionHighlightMode();this.popElementSelectionColor();this.popElementSelectionOutlineColor();this.popElementSelectionHighlightMode()};eDwBaseSelOperator.prototype.onMouseDown=function(ioMouseEvent){_super.prototype.onMouseDown.call(this,ioMouseEvent);if(ioMouseEvent){this.actionStart(ioMouseEvent.getPosition())}};eDwBaseSelOperator.prototype.onMouseUp=function(ioMouseEvent){_super.prototype.onMouseUp.call(this,ioMouseEvent);if(ioMouseEvent){this.actionEnd(ioMouseEvent.getPosition())}};eDwBaseSelOperator.prototype.onTouchStart=function(ioTouchEvent){_super.prototype.onTouchStart.call(this,ioTouchEvent);if(ioTouchEvent){this.actionStart(ioTouchEvent.getPosition())}};eDwBaseSelOperator.prototype.onTouchMove=function(ioTouchEvent){_super.prototype.onTouchMove.call(this,ioTouchEvent)};eDwBaseSelOperator.prototype.onTouchEnd=function(ioTouchEvent){_super.prototype.onTouchEnd.call(this,ioTouchEvent);if(ioTouchEvent){this.actionEnd(ioTouchEvent.getPosition())}};eDwBaseSelOperator.prototype.pushHighlightSelectionState=function(iSelType,iNewState){return this.mPrevHighlightStates[iSelType]=this.mSelMgr.setHighlightSelection(iSelType,iNewState)};eDwBaseSelOperator.prototype.pushNodeSelectionColor=function(iColor){return this.mPrevNodeColor=this.mSelMgr.setNodeSelectionColor(iColor)};eDwBaseSelOperator.prototype.pushNodeSelectionOutlineColor=function(iColor){return this.mPrevNodeOutlineColor=this.mSelMgr.setNodeSelectionOutlineColor(iColor)};eDwBaseSelOperator.prototype.pushNodeSelectionHighlightMode=function(iSelHighlightMode){return this.mPrevNodeHighlightMode=this.mSelMgr.setNodeSelectionHighlightMode(iSelHighlightMode)};eDwBaseSelOperator.prototype.pushElementSelectionColor=function(iColor){return this.mPrevElementColor=this.mSelMgr.setElementSelectionColor(iColor)};eDwBaseSelOperator.prototype.pushElementSelectionOutlineColor=function(iColor){return this.mPrevElementOutlineColor=this.mSelMgr.setElementSelectionOutlineColor(iColor)};eDwBaseSelOperator.prototype.pushElementSelectionHighlightMode=function(iSelHighlightMode){return this.mPrevElementHighlightMode=this.mSelMgr.setElementSelectionHighlightMode(iSelHighlightMode)};eDwBaseSelOperator.prototype.popHighlightSelectionState=function(iSelType){if(this.mPrevHighlightStates&&this.mPrevHighlightStates.hasOwnProperty(iSelType)){this.mSelMgr.setHighlightSelection(iSelType,this.mPrevHighlightStates[iSelType]);delete this.mPrevHighlightStates[iSelType]}};eDwBaseSelOperator.prototype.popNodeSelectionColor=function(){if(this.mPrevNodeColor){this.mSelMgr.setNodeSelectionColor(this.mPrevNodeColor);this.mPrevNodeColor=null}};eDwBaseSelOperator.prototype.popNodeSelectionOutlineColor=function(){if(this.mPrevNodeOutlineColor){this.mSelMgr.setNodeSelectionOutlineColor(this.mPrevNodeOutlineColor);this.mPrevNodeOutlineColor=null}};eDwBaseSelOperator.prototype.popNodeSelectionHighlightMode=function(){if(this.mPrevNodeHighlightMode){this.mSelMgr.setNodeSelectionHighlightMode(this.mPrevNodeHighlightMode);this.mPrevNodeHighlightMode=null}};eDwBaseSelOperator.prototype.popElementSelectionColor=function(){if(this.mPrevElementColor){this.mSelMgr.setElementSelectionColor(this.mPrevElementColor);this.mPrevElementColor=null}};eDwBaseSelOperator.prototype.popElementSelectionOutlineColor=function(){if(this.mPrevElementOutlineColor){this.mSelMgr.setElementSelectionOutlineColor(this.mPrevElementOutlineColor);this.mPrevElementOutlineColor=null}};eDwBaseSelOperator.prototype.popElementSelectionHighlightMode=function(){if(this.mPrevElementHighlightMode){this.mSelMgr.setElementSelectionHighlightMode(this.mPrevElementHighlightMode);this.mPrevElementHighlightMode=null}};eDwBaseSelOperator.prototype.getSelObjFromEvent=function(iInputEvent){return eDwOperatorBaseDeps_1.eDwBaseOperator.getPickResult(iInputEvent)};eDwBaseSelOperator.prototype.actionStart=function(iPoint){this.mFirstPt=eDwGeomUtils.screenToWorld(iPoint,this.mViewer.getHCView());console.debugLog("BaseSelOp","down screen pt = "+JSON.stringify(iPoint))};eDwBaseSelOperator.prototype.actionEnd=function(iPoint){this.mFirstPt=null;console.debugLog("BaseSelOp","up screen pt = "+JSON.stringify(iPoint))};return eDwBaseSelOperator}(eDwOperatorBaseDeps_1.eDwBaseOperator);return eDwBaseSelOperator});define("eDwChangeModelViewCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwChangeModelViewCmd=function(_super){__extends(eDwChangeModelViewCmd,_super);function eDwChangeModelViewCmd(iViewer,iModelViewName,iCamera,iUseCurrCameraProjection){if(iUseCurrCameraProjection===void 0){iUseCurrCameraProjection=false}var _this=_super.call(this,iViewer)||this;_this.mInitialModelViewName=iViewer.getModel().getActiveModelView().Name;_this.mInitialCamera=iViewer.getHCView().getCamera().copy();_this.mFinalModelViewName=iModelViewName;_this.mFinalCamera=iCamera;_this.mUseCurrCameraProjection=iUseCurrCameraProjection;return _this}eDwChangeModelViewCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.activateModelView(this.mInitialModelViewName,this.mInitialCamera);return true};eDwChangeModelViewCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.activateModelView(this.mFinalModelViewName,this.mFinalCamera);return true};eDwChangeModelViewCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.activateModelView(this.mFinalModelViewName,this.mFinalCamera)};Object.defineProperty(eDwChangeModelViewCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});eDwChangeModelViewCmd.prototype.activateModelView=function(iModelView,iCamera){this.mViewer.SelectionMgr.unSelectAllObjects();this.mViewer.getModel().activateModelView(iModelView,iCamera,iCamera===this.mFinalCamera?this.mUseCurrCameraProjection:false)};return eDwChangeModelViewCmd}(eDwSupportsHistoryCmd);return eDwChangeModelViewCmd});define("eDwChangeSectionPlaneCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwChangeSectionPlaneCmd=function(_super){__extends(eDwChangeSectionPlaneCmd,_super);function eDwChangeSectionPlaneCmd(iViewer,iInitialPlane,iFinalPlane){var _this=_super.call(this,iViewer)||this;_this.mInitialPlane=iInitialPlane;_this.mFinalPlane=iFinalPlane;return _this}eDwChangeSectionPlaneCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.XSectionMgr.setSectionPlane(this.mInitialPlane);return true};eDwChangeSectionPlaneCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.XSectionMgr.setSectionPlane(this.mFinalPlane);return true};eDwChangeSectionPlaneCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.XSectionMgr.setSectionPlane(this.mFinalPlane)};eDwChangeSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPlane&&!!this.mFinalPlane};Object.defineProperty(eDwChangeSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwChangeSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwChangeSectionPlaneCmd});define("eDwCmd",["require","exports","eDwOperationMixin"],function(require,exports,eDwOperationMixin){"use strict";var eDwCmd=function(_super){__extends(eDwCmd,_super);function eDwCmd(iViewer){var _this=_super.call(this)||this;_this.mViewer=iViewer;return _this}eDwCmd.prototype.commit=function(){};eDwCmd.prototype.cancel=function(){};eDwCmd.prototype.setHierarchyNodeIDsAttribs=function(iNodesWithAttribs){if(!iNodesWithAttribs)return;var model=this.mViewer.getModel();model.setAttribs(iNodesWithAttribs)};eDwCmd.prototype.getHierarchyNodesAttribs=function(iExcludeModelViewNode){if(iExcludeModelViewNode===void 0){iExcludeModelViewNode=true}var nodeWithAttrib=[];var modelView=this.mViewer.getModel().getActiveModelView();var hierNodes=modelView.Nodes;for(var hierNodeName in hierNodes){var hierNode=hierNodes[hierNodeName];if(iExcludeModelViewNode&&modelView.Hierarchy===hierNode){continue}var attrib=$.extend(true,{},hierNode.getAttribs());nodeWithAttrib.push({HierNode:hierNode,Attribs:attrib})}return nodeWithAttrib};return eDwCmd}(eDwOperationMixin);return eDwCmd});define("eDwCommandMgr",["require","exports","utils"],function(require,exports,Utils){"use strict";var eDwCommandMgr=function(){function eDwCommandMgr(){this.mActiveCmds=[]}eDwCommandMgr.get=function(){if(!eDwCommandMgr.sCommandMgr){eDwCommandMgr.sCommandMgr=new eDwCommandMgr}return eDwCommandMgr.sCommandMgr};eDwCommandMgr.prototype.add=function(iCmd){if(!iCmd)return;this.popCmds(iCmd);this.mActiveCmds.push(iCmd);console.debugLog("CommandMgr","Added "+Utils.getObjectTypeName(iCmd)+" as an active command.")};eDwCommandMgr.prototype.remove=function(iCmd,iCmdAction){var ret=this.detach(iCmd);if(ret&&iCmdAction)iCmd[iCmdAction]();console.debugLog("CommandMgr",(ret?"Removed ":"Not Found ")+Utils.getObjectTypeName(iCmd)+" as an active command. "+(ret&&iCmdAction?" Also, "+iCmdAction+"ed it.":""));return ret};eDwCommandMgr.prototype.clear=function(){for(var cmd=this.mActiveCmds.pop();cmd;cmd=this.mActiveCmds.pop()){cmd.cancel()}console.debugLog("CommandMgr","All active commands cleared.")};eDwCommandMgr.prototype.popCmds=function(iCmd){if(iCmd.Aggregable&&(!this.mActiveCmds.length||this.mActiveCmds[this.mActiveCmds.length-1].AllowsAggregation)){return}if(iCmd.Exclusive){var exclusiveCmds=this.mActiveCmds.filter(function(iCmd){return iCmd.Exclusive});for(var i=exclusiveCmds.length-1;i>-1;--i){exclusiveCmds[i].commit()}this.mActiveCmds=this.mActiveCmds.filter(function(iCmd){return!iCmd.Exclusive})}};eDwCommandMgr.prototype.detach=function(iCmd){var cmdPos=this.mActiveCmds.indexOf(iCmd);if(cmdPos===-1)return false;var removedCmds=this.mActiveCmds.splice(cmdPos,1);return removedCmds.length===1?true:false};return eDwCommandMgr}();return eDwCommandMgr});define("eDwCompositeCmd",["require","exports","eDwSupportsHistoryCmd","eDwHistoryMgr","eDwCommandMgr","utils"],function(require,exports,eDwSupportsHistoryCmd,eDwHistoryMgr,eDwCommandMgr,Utils){"use strict";var eDwCompositeCmd=function(_super){__extends(eDwCompositeCmd,_super);function eDwCompositeCmd(iViewer){var _this=_super.call(this,iViewer)||this;eDwHistoryMgr.get().pushStack();return _this}eDwCompositeCmd.prototype.initCmdActionImplementation=function(iHistoryActions){this.mCmdHistoryActions=iHistoryActions;if(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeInit){this.mCmdHistoryActions.compositeInit(this)}};eDwCompositeCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;var actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeUndo;return actionExists?this.mCmdHistoryActions.compositeUndo(this):this.undoSubCmds()};eDwCompositeCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;var actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeRedo;return actionExists?this.mCmdHistoryActions.compositeRedo(this):this.redoSubCmds()};eDwCompositeCmd.prototype.commit=function(){this.mSubCmds=eDwHistoryMgr.get().popStack();_super.prototype.commit.call(this);if(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCommit){this.mCmdHistoryActions.compositeCommit(this)}};eDwCompositeCmd.prototype.cancel=function(){this.mSubCmds=eDwHistoryMgr.get().popStack();_super.prototype.cancel.call(this);if(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCancel){this.mCmdHistoryActions.compositeCancel(this)}else{this.cancelSubCmds()}this.clearSubCmds()};eDwCompositeCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!(this.InitialState===undefined||this.InitialState===null)&&!(this.FinalState===undefined||this.FinalState===null)};Object.defineProperty(eDwCompositeCmd.prototype,"AllowsAggregation",{get:function(){return true},enumerable:true,configurable:true});eDwCompositeCmd.prototype.undoSubCmds=function(){var isSuccessful=true;var lastCmdIndex=this.mSubCmds.length-1;for(var i=lastCmdIndex;i>-1;i--){var cmd=this.mSubCmds[i];var ret=cmd.undo();console.debugLog("History","Undo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}}return isSuccessful};eDwCompositeCmd.prototype.cancelSubCmds=function(){var cmdMgr=eDwCommandMgr.get();var lastCmdIndex=this.mSubCmds.length-1;for(var i=lastCmdIndex;i>-1;i--){cmdMgr.remove(this.mSubCmds[i],"cancel")}};eDwCompositeCmd.prototype.redoSubCmds=function(){var isSuccessful=true;var numCmds=this.mSubCmds.length;for(var i=0;i<numCmds;i++){var cmd=this.mSubCmds[i];var ret=cmd.redo();console.debugLog("History","Redo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}}return isSuccessful};eDwCompositeCmd.prototype.clearSubCmds=function(){this.mSubCmds=null};return eDwCompositeCmd}(eDwSupportsHistoryCmd);return eDwCompositeCmd});define("eDwConvTypes",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true})});define("eDwDrawModeCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwDrawModeCmd=function(_super){__extends(eDwDrawModeCmd,_super);function eDwDrawModeCmd(iViewer,iDrawMode){var _this=_super.call(this,iViewer)||this;_this.mInitialDrawMode=iViewer.getDrawMode();_this.mFinalDrawMode=iDrawMode;return _this}eDwDrawModeCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.setDrawMode(this.mInitialDrawMode);return true};eDwDrawModeCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.setDrawMode(this.mFinalDrawMode);return true};eDwDrawModeCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.setDrawMode(this.mFinalDrawMode)};Object.defineProperty(eDwDrawModeCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwDrawModeCmd}(eDwSupportsHistoryCmd);return eDwDrawModeCmd});define("eDwEventMgr",["require","exports","utils"],function(require,exports,utils){"use strict";var eDwEventMgr=function(){function eDwEventMgr(){this.mEventHandlers=new Map}eDwEventMgr.get=function(){if(!eDwEventMgr.sMgr)eDwEventMgr.sMgr=new eDwEventMgr;return eDwEventMgr.sMgr};eDwEventMgr.prototype.addEventHandlerObj=function(iEvent,iEventHandlerObj,iEventHandlerFuncName){if(!iEventHandlerFuncName){throw new Error("Eventhandler object has no function name")}this.initHandlersMapForEvent(iEvent);var handlerMap={};handlerMap[iEventHandlerFuncName]=iEventHandlerObj;var handlers=this.mEventHandlers.get(iEvent);handlers.push(handlerMap)};eDwEventMgr.prototype.addEventHandlerFunc=function(iEvent,ioEventHandlerFunc){this.initHandlersMapForEvent(iEvent);ioEventHandlerFunc.funcName=ioEventHandlerFunc.name;if(!ioEventHandlerFunc.funcName){var eventTypeName=this.constructor.toString().match(/\w+/g)[1];ioEventHandlerFunc.funcName=eventTypeName+this.mEventHandlers.get(iEvent).length}var handlerMap={};handlerMap[ioEventHandlerFunc.funcName]=ioEventHandlerFunc;var handlers=this.mEventHandlers.get(iEvent);handlers.push(handlerMap)};eDwEventMgr.prototype.removeEventHandlerFunc=function(iEvent,iEventHandlerFuncName){var numRemoved=0;var eventHandlerMaps=this.mEventHandlers.get(iEvent);if(!eventHandlerMaps)return numRemoved;for(var key in eventHandlerMaps){var handlerMap=eventHandlerMaps[key];if(handlerMap[iEventHandlerFuncName]){eventHandlerMaps.splice(parseInt(key,10),1);++numRemoved}}return numRemoved};eDwEventMgr.prototype.removeEventHandlerObj=function(iEvent,iEventHandlerObj,iEventHandlerFuncName){var numRemoved=0;var eventHandlerMaps=this.mEventHandlers.get(iEvent);if(!eventHandlerMaps)return numRemoved;for(var _i=0,eventHandlerMaps_1=eventHandlerMaps;_i<eventHandlerMaps_1.length;_i++){var handlerMap=eventHandlerMaps_1[_i];var handlerObj=handlerMap[iEventHandlerFuncName];if(handlerObj===iEventHandlerObj){var index=eventHandlerMaps.indexOf(handlerMap);if(index>-1){eventHandlerMaps.splice(index,1);++numRemoved}}}return numRemoved};eDwEventMgr.prototype.removeAllEventHandlers=function(){this.mEventHandlers.clear()};eDwEventMgr.prototype.removeEventHandlers=function(iEvent){this.mEventHandlers.delete(iEvent)};eDwEventMgr.prototype.fireEvent=function(iEvent){var iArgs=[];for(var _i=1;_i<arguments.length;_i++){iArgs[_i-1]=arguments[_i]}var retValues=[];var handlerMaps=this.mEventHandlers.get(iEvent);if(!handlerMaps)return retValues;for(var _a=0,handlerMaps_1=handlerMaps;_a<handlerMaps_1.length;_a++){var handlerMap=handlerMaps_1[_a];var keys=Object.keys(handlerMap);console.assert(keys.length===1);var funcName=keys[0];var handlerItem=handlerMap[funcName];if("funcName"in handlerItem){var ret=handlerItem.apply(void 0,iArgs);utils.appendToArray(ret,retValues)}else{var handlerFunc=eDwEventMgr.getHandler(handlerItem,funcName);if(handlerFunc){var ret=handlerFunc.call.apply(handlerFunc,[handlerItem].concat(iArgs));utils.appendToArray(ret,retValues)}}}return retValues};eDwEventMgr.getHandler=function(iHandlerObj,iHandlerName){var handler;var handlerObj=iHandlerObj;var parentClass=Object.getPrototypeOf(iHandlerObj);while(handlerObj&&!handler){handler=handlerObj[iHandlerName];if(!handler){handlerObj=parentClass;parentClass=handlerObj?Object.getPrototypeOf(handlerObj):null}}return handler instanceof Function?handler:null};eDwEventMgr.prototype.initHandlersMapForEvent=function(iEvent){if(!this.mEventHandlers.has(iEvent)){this.mEventHandlers.set(iEvent,[])}};return eDwEventMgr}();return eDwEventMgr});define("eDwEvents",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var AppEvent=function(){function AppEvent(){this.doNotUse}return AppEvent}();exports.AppEvent=AppEvent;exports.InitEvent=new AppEvent;exports.InitFullUIEvent=new AppEvent;exports.DoneEvent=new AppEvent;exports.NodeAttribChangeEvent=new AppEvent;exports.SelectEvent=new AppEvent;exports.UnselectEvent=new AppEvent;exports.ModelViewChangeEvent=new AppEvent;exports.ProdStructLoadedEvent=new AppEvent;exports.StartAnimationEvent=new AppEvent;exports.StopAnimationEvent=new AppEvent;exports.LeftClickEvent=new AppEvent;exports.MiddleClickEvent=new AppEvent;exports.RightClickEvent=new AppEvent;exports.LeftDoubleClickEvent=new AppEvent;exports.TimeoutEvent=new AppEvent;exports.DrawModeChangeEvent=new AppEvent;exports.ProjModeChangeEvent=new AppEvent;exports.ModelXformChangeStartEvent=new AppEvent;exports.CameraChangeEvent=new AppEvent;exports.ResetSceneEvent=new AppEvent;exports.AmbientOcclChangeEvent=new AppEvent;exports.ExplodeLevelChangeEvent=new AppEvent;exports.ActivateUIOpEvent=new AppEvent;exports.DeactivateUIOpEvent=new AppEvent;exports.UserUnitsChangeEvent=new AppEvent;exports.GLContextLostEvent=new AppEvent;exports.LicenseKeyEvent=new AppEvent;exports.ViewCreatedEvent=new AppEvent;exports.ViewLoadedEvent=new AppEvent;exports.ViewDeletedEvent=new AppEvent});define("eDwExplodeCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwExplodeCmd=function(_super){__extends(eDwExplodeCmd,_super);function eDwExplodeCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialLevel=_this.mViewer.getExplosionLevel();return _this}eDwExplodeCmd.prototype.setLevel=function(iLevel){this.setExplosionLevel(iLevel);this.mFinalLevel=iLevel};eDwExplodeCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.setExplosionLevel(this.mInitialLevel);return true};eDwExplodeCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.setExplosionLevel(this.mFinalLevel);return true};eDwExplodeCmd.prototype.cancel=function(){_super.prototype.cancel.call(this);this.setExplosionLevel(this.mInitialLevel);this.mViewer.HCViewer.explodeManager.stop()};Object.defineProperty(eDwExplodeCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});eDwExplodeCmd.prototype.setExplosionLevel=function(iLevel){var explodeMgrHC=this.mViewer.HCViewer.explodeManager;if(!explodeMgrHC.getActive())explodeMgrHC.start();this.mViewer.setExplosionLevel(iLevel)};return eDwExplodeCmd}(eDwSupportsHistoryCmd);return eDwExplodeCmd});define("eDwGenericError",["require","exports","eDwBaseError"],function(require,exports,eDwBaseError){"use strict";var eDwGenericError=function(_super){__extends(eDwGenericError,_super);function eDwGenericError(iMessage){return _super.call(this,"Generic Error",iMessage)||this}return eDwGenericError}(eDwBaseError);return eDwGenericError});define("eDwGeomUtils",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function dropPointOnPlane(iPtHC,iPlnHC){var dist=iPlnHC.distanceToPoint(iPtHC);var vec=iPlnHC.normal.copy();return vec.normalize().scale(-dist).add(iPtHC)}exports.dropPointOnPlane=dropPointOnPlane;function screenToWorld(iScreenPtHC,iViewHC){var camera=iViewHC.getCamera();var pt=camera.getCameraPlaneIntersectionPoint(iScreenPtHC,iViewHC);console.debugLog("GeomUtils","Screen pt = "+JSON.stringify(iScreenPtHC)+" 3D pt = "+JSON.stringify(pt));return pt}exports.screenToWorld=screenToWorld;function isPoint3DInBox(iPt3HC,iBboxHC){var pntArr=[];iPt3HC.toArray(pntArr);var minPt=[];iBboxHC.min.toArray(minPt);var maxPt=[];iBboxHC.max.toArray(maxPt);console.debugLog("GeomUtils","3D pt = "+JSON.stringify(iPt3HC)+" Bounding box = "+JSON.stringify(iBboxHC));for(var i=0;i<3;++i){if(pntArr[i]<minPt[i]||pntArr[i]>maxPt[i])return false}return true}exports.isPoint3DInBox=isPoint3DInBox});define("eDwHierNodeAttribArray",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true})});define("eDwHierarchyNode",["require","exports","eDwNodeAttributes","eDwTypes"],function(require,exports,eDwNodeAttributes_1,eDwTypes_3){"use strict";var eDwHierarchyNode=function(){function eDwHierarchyNode(iName,iCategory,iAttributes,iNodeHCID,iParentNode,iModeView,iModel,ioModelData){this.Category=iCategory;this.HOOPSID=iNodeHCID;this.mModelView=iModeView;this.mModel=iModel;this.mChildren={};this.mBoundingBoxNodeInfo={IDs:[],VisState:false};this.mParentNode=iParentNode;this.mToModelData=ioModelData||[];this.Name=iName;if("`"===iName.charAt(0)&&"`"===iName.charAt(iName.length-1)){this.Name=iName.slice(1,-1)}this.mAttribs={};$.extend(this.mAttribs,iAttributes);if(this.mAttribs.Visible!==true)this.mAttribs.Visible=false;this.mReadOnlyAttribs={};$.extend(this.mReadOnlyAttribs,this.mAttribs);this.mReadOnlyOverrideAttribs={};if(this.mModelView){this.mModelView.Nodes[iNodeHCID]=this}}eDwHierarchyNode.prototype.addChild=function(iName,iCategory,iAttribs,iNodeHCID,iParentNode,iToModelData){var node=new eDwHierarchyNode(iName,iCategory,iAttribs,iNodeHCID,iParentNode,this.mModelView,this.mModel,iToModelData);this.mChildren[iName]=node;return node};eDwHierarchyNode.prototype.getChildren=function(){return this.mChildren};Object.defineProperty(eDwHierarchyNode.prototype,"ParentNode",{get:function(){return this.mParentNode},enumerable:true,configurable:true});Object.defineProperty(eDwHierarchyNode.prototype,"ToModel",{get:function(){return this.mToModelData.slice()},enumerable:true,configurable:true});eDwHierarchyNode.prototype.getAttribs=function(){var attribs={};$.extend(attribs,this.mAttribs);$.extend(attribs,this.mReadOnlyOverrideAttribs);return attribs};eDwHierarchyNode.prototype.getInitialAttribs=function(){var attribs={};$.extend(attribs,this.mReadOnlyAttribs);return attribs};eDwHierarchyNode.prototype.setAttribs=function(iAttribs){var changedAttribs=eDwNodeAttributes_1.eDwNodeAttributes.setAttribs(this.mAttribs,iAttribs);return changedAttribs};eDwHierarchyNode.prototype.setOverrideAttribs=function(iAttribs){this.mReadOnlyOverrideAttribs={};$.extend(this.mReadOnlyOverrideAttribs,iAttribs)};eDwHierarchyNode.prototype.mergeAttribs=function(iAttribs){return eDwNodeAttributes_1.eDwNodeAttributes.mergeAttribs(this.mAttribs,iAttribs)};eDwHierarchyNode.prototype.getMergedChildrenAttribs=function(iTraverseOption,ioAccumAttrib){var attrib={};var childHierNodes=this.mChildren;var childNodeKeys=Object.keys(childHierNodes);if(childNodeKeys.length){attrib=ioAccumAttrib||attrib;for(var i=0;i<childNodeKeys.length;i++){var childHierNode=childHierNodes[childNodeKeys[i]];var childAttrib=childHierNode.getAttribs();eDwNodeAttributes_1.eDwNodeAttributes.mergeAttribs(attrib,childAttrib);if(iTraverseOption==="All"){childHierNode.getMergedChildrenAttribs(iTraverseOption,attrib)}}}return attrib};eDwHierarchyNode.prototype.syncAttribsWithChildren=function(iTraverseOption){if(iTraverseOption===void 0){iTraverseOption="DirectDescendantsOnly"}this.setAttribs(this.getMergedChildrenAttribs(iTraverseOption))};eDwHierarchyNode.prototype.propagateAttribsToChildren=function(iPropagatingAttribNames,iTraverseOption){if(iTraverseOption===void 0){iTraverseOption="All"}var changedHierNodes=[];var childHierNodes=this.mChildren;var childNodeKeys=Object.keys(childHierNodes);if(childNodeKeys.length){for(var i=0;i<childNodeKeys.length;i++){if(iPropagatingAttribNames&&iPropagatingAttribNames.length){for(var _i=0,iPropagatingAttribNames_1=iPropagatingAttribNames;_i<iPropagatingAttribNames_1.length;_i++){var attribName=iPropagatingAttribNames_1[_i];var attrib={};attrib[attribName]=this.mAttribs[attribName];var childHierNode=childHierNodes[childNodeKeys[i]];var changedAttribNames=childHierNode.setAttribs(attrib);if(changedAttribNames.length){changedHierNodes.push(childHierNode)}if(iTraverseOption==="All"){var childrenChangedHierNodes=childHierNode.propagateAttribsToChildren(iPropagatingAttribNames,iTraverseOption);Array.prototype.push.apply(changedHierNodes,childrenChangedHierNodes)}}}}}return changedHierNodes};eDwHierarchyNode.prototype.invertAttrib=function(iAttribName){this.mAttribs[iAttribName]=!this.mAttribs[iAttribName];return this.mAttribs};eDwHierarchyNode.prototype.getDisplayState=function(iOtherAttribs){var state=eDwNodeAttributes_1.NodeDisplayState.Invisible;if(this.mAttribs.Visible){state=this.mAttribs.Opaque?eDwNodeAttributes_1.NodeDisplayState.Visible:eDwNodeAttributes_1.NodeDisplayState.Transparent;state=this.mAttribs.Opaque===undefined?eDwNodeAttributes_1.NodeDisplayState.Visible:state;if(iOtherAttribs){state=iOtherAttribs.Opaque===false&&iOtherAttribs.Visible===false?eDwNodeAttributes_1.NodeDisplayState.Transparent:state}}return state};eDwHierarchyNode.prototype.findNodes=function(iPropName,iPropValue,iRecurse){if(iRecurse===void 0){iRecurse=true}var nodes=[];this.getAllNodesWithPropNameAndValue(iPropName,iPropValue,nodes,iRecurse);return nodes};eDwHierarchyNode.prototype.showBoundingBox=function(iViewer,iState){return __awaiter(this,void 0,void 0,function(){var model,modelHC,isVisible,beautifulGreen,bbox,width,height,length_1,scale,vmin,vmax,p0,p1,p2,p3,polylineData,rgba,i,tmp,boxMesh,key,meshInstance,nodeID;return __generator(this,function(_a){switch(_a.label){case 0:model=iViewer.getModel();modelHC=model.getHCModel();isVisible=!this.mBoundingBoxNodeInfo||!this.mBoundingBoxNodeInfo.IDs.length||!this.mBoundingBoxNodeInfo.VisState?false:true;if(iState==="on"&&isVisible)return[2,true];if(iState==="off"||iState==="toggle"&&isVisible){this.mBoundingBoxNodeInfo.VisState=false;modelHC.setNodesVisibility(this.mBoundingBoxNodeInfo.IDs,false);return[2,false]}return[4,model.activateModelView(this.mModelView.Name,iViewer.getInitCamera())];case 1:_a.sent();this.mBoundingBoxNodeInfo.VisState=true;if(!this.mBoundingBoxNodeInfo.IDs.length)return[3,2];modelHC.setNodesVisibility(this.mBoundingBoxNodeInfo.IDs,true);return[3,6];case 2:beautifulGreen=new eDwTypes_3.HC.Color(0,255,0);return[4,modelHC.getNodesBounding([this.HOOPSID])];case 3:bbox=_a.sent();width=bbox.max.x-bbox.min.x;height=bbox.max.y-bbox.min.y;length_1=Math.max(width,height);scale=.05/2;vmin=new eDwTypes_3.HC.Point3(bbox.min.x-length_1*scale,bbox.min.y-length_1*scale,bbox.min.z);vmax=new eDwTypes_3.HC.Point3(bbox.max.x+length_1*scale,bbox.max.y+length_1*scale,bbox.max.z);p0=new eDwTypes_3.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_3.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_3.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_3.HC.Point3(vmax.x,vmin.y,vmax.z);polylineData=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_3.HC.MeshData;boxMesh.addPolyline(polylineData,rgba);return[4,modelHC.createMesh(boxMesh)];case 4:key=_a.sent();meshInstance=new eDwTypes_3.HC.MeshInstanceData(key);return[4,modelHC.createMeshInstance(meshInstance,0)];case 5:nodeID=_a.sent();this.mBoundingBoxNodeInfo.IDs.push(nodeID);_a.label=6;case 6:return[2,true]}})})};eDwHierarchyNode.prototype.isSelectable=function(){return this.mAttribs.Selectable};eDwHierarchyNode.prototype.isActive=function(){return this.mModelView===this.mModel.getActiveModelView()?true:false};eDwHierarchyNode.create=function(iAttribs){return new eDwHierarchyNode("","",iAttribs?iAttribs:{},Number.NaN,null,null,null)};eDwHierarchyNode.findPropagatingAttribNames=function(iChangedAttribNames){var propagatingAttribNames=eDwHierarchyNode.sPropagatingAttribNames;var changedPropAttribNames=[];for(var _i=0,iChangedAttribNames_1=iChangedAttribNames;_i<iChangedAttribNames_1.length;_i++){var attribName=iChangedAttribNames_1[_i];if(propagatingAttribNames.indexOf(attribName)>-1){changedPropAttribNames.push(attribName)}}return changedPropAttribNames};eDwHierarchyNode.isHierarchyNode=function(iNode){return iNode.Name};eDwHierarchyNode.prototype.getAllNodesWithPropNameAndValue=function(iPropName,iPropValue,ioNodes,iRecurse){for(var childNodeName in this.mChildren){var childNode=this.mChildren[childNodeName];var propValue=childNode[iPropName];if(propValue&&propValue===iPropValue)ioNodes.push(childNode);if(iRecurse){childNode.getAllNodesWithPropNameAndValue(iPropName,iPropValue,ioNodes)}}};eDwHierarchyNode.sPropagatingAttribNames=["Visible","Opaque"];return eDwHierarchyNode}();return eDwHierarchyNode});define("eDwHistoryMgr",["require","exports","utils"],function(require,exports,Utils){"use strict";var eDwHistoryMgr=function(){function eDwHistoryMgr(){this.clear()}eDwHistoryMgr.get=function(){if(!eDwHistoryMgr.sHistoryMgr){eDwHistoryMgr.sHistoryMgr=new eDwHistoryMgr}return eDwHistoryMgr.sHistoryMgr};eDwHistoryMgr.prototype.undo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex<0||currStack.length===0){console.debugLog("History","Already before first command.");return null}currStacksElem.incrementCurrCmdIndex(-1);var cmd=currStack[currStackCmdIndex];cmd.undo();console.debugLog("History","Undoing command at index "+currStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.redo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var nextStackCmdIndex=currStacksElem.getCurrCmdIndex()+1;if(nextStackCmdIndex>=currStack.length){console.debugLog("History","Already after last command.");return null}currStacksElem.incrementCurrCmdIndex(1);var cmd=currStack[nextStackCmdIndex];cmd.redo();console.debugLog("History","Redoing command at index "+nextStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.push=function(iCmd){if(!iCmd)return;var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackSize=currStack.length;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex!==currStackSize-1){currStack.splice(currStackCmdIndex+1);console.debugLog("History","Truncated history to "+(currStackCmdIndex+1)+" elements.")}currStack.push(iCmd);currStacksElem.incrementCurrCmdIndex(1);console.debugLog("History","Adding command to history at index "+(currStackCmdIndex+1)+" Object Type = "+Utils.getObjectTypeName(iCmd)+".")};eDwHistoryMgr.prototype.clear=function(){console.debugLog("History","Clear all history.");this.mCmdStacksStack=[];this.pushStack()};eDwHistoryMgr.prototype.pushStack=function(){console.debugLog("History","Add a new history stack at index "+this.mCmdStacksStack.length+".");this.mCmdStacksStack.push(new eDwCmdStacksElem)};eDwHistoryMgr.prototype.popStack=function(){console.debugLog("History","Remove history stack at index "+(this.mCmdStacksStack.length-1)+".");var activeCmds=[];var currStackElem=this.mCmdStacksStack.pop();var currCmdIndex=currStackElem.getCurrCmdIndex();for(var i=0;i<currCmdIndex;i++){activeCmds.push(currStackElem.Stack[i])}return activeCmds};eDwHistoryMgr.prototype.getCurrStackElem=function(){return this.mCmdStacksStack[this.mCmdStacksStack.length-1]};return eDwHistoryMgr}();var eDwCmdStacksElem=function(){function eDwCmdStacksElem(){this.mCmdStack=[];this.mCurrCmdIndex=-1}Object.defineProperty(eDwCmdStacksElem.prototype,"Stack",{get:function(){return this.mCmdStack},enumerable:true,configurable:true});eDwCmdStacksElem.prototype.getCurrCmdIndex=function(){return this.mCurrCmdIndex};eDwCmdStacksElem.prototype.incrementCurrCmdIndex=function(iIndex){if(typeof iIndex!=="number")return;this.mCurrCmdIndex+=iIndex};return eDwCmdStacksElem}();return eDwHistoryMgr});define("eDwKeyMgr",["require","exports","eDwUIHTMLEventMgr","eDwTypes","utils"],function(require,exports,eDwUIHTMLEventMgr,eDwTypes_4,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var eDwKeyMgr=function(){function eDwKeyMgr(){var _this=this;window.frames.focus();this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;var processKeyEventFunc=function(iEvent){var keyEventJQ=iEvent;if(iEvent.type==="keydown"){_this.mDownKeys[keyEventJQ.key]=true}else if(iEvent.type=="keyup"){delete _this.mDownKeys[keyEventJQ.key]}else{return}var eventHandlers=_this.mKeyEventHandlers[iEvent.type][keyEventJQ.key];for(var i in eventHandlers){var eventHandler=eventHandlers[i];if(l_isEqual(keyEventJQ,eventHandler.Modifiers)){eventHandler.KeyFunc(keyEventJQ)}}};this.mUIHTMLEventMgr.addEventHandler("document","keydown",processKeyEventFunc);this.mUIHTMLEventMgr.addEventHandler("document","keyup",processKeyEventFunc);this.mUIHTMLEventMgr.addEventHandler("document","keypress",processKeyEventFunc);this.mKeyEventHandlers={};this.mKeyEventHandlers["keydown"]={};this.mKeyEventHandlers["keyup"]={};this.mKeyEventHandlers["keypress"]={};this.mDownKeys={}}eDwKeyMgr.get=function(){if(!eDwKeyMgr.sKeyMgr){eDwKeyMgr.sKeyMgr=new eDwKeyMgr}return eDwKeyMgr.sKeyMgr};eDwKeyMgr.prototype.add=function(iKeyInfo,iEventName,iFunc){var eventHandlers=this.mKeyEventHandlers[iEventName][iKeyInfo.key];if(!eventHandlers){eventHandlers=this.mKeyEventHandlers[iEventName][iKeyInfo.key]={}}var keyModifiers=l_getKeyModifiers(iKeyInfo);this.mKeyEventHandlers[iEventName][iKeyInfo.key][keyModifiers]={Modifiers:iKeyInfo,KeyFunc:iFunc}};eDwKeyMgr.prototype.remove=function(iKeyInfo,iEventName){var keyModifiers=l_getKeyModifiers(iKeyInfo);delete this.mKeyEventHandlers[iEventName][iKeyInfo.key][keyModifiers]};eDwKeyMgr.prototype.isDown=function(iKey){return this.mDownKeys[iKey]?true:false};eDwKeyMgr.isLMBPressed=function(iEvent){return eDwKeyMgr.getMouseButtonPressed(iEvent)==="left"?true:false};eDwKeyMgr.isMMBPressed=function(iEvent){return eDwKeyMgr.getMouseButtonPressed(iEvent)==="middle"?true:false};eDwKeyMgr.isRMBPressed=function(iEvent){return eDwKeyMgr.getMouseButtonPressed(iEvent)==="right"?true:false};eDwKeyMgr.isAnyPressed=function(iEvent){return eDwKeyMgr.getMouseButtonPressed(iEvent)==="none"?false:true};eDwKeyMgr.getMouseButtonPressed=function(iEvent){var buttonPressed="none";if(utils.isOfType(iEvent,"which")){if(utils.isNumber(iEvent.which)){switch(iEvent.which){case 0:buttonPressed="none";break;case 1:buttonPressed="left";break;case 2:buttonPressed="middle";break;case 3:buttonPressed="right";break;default:break}}else{switch(iEvent.button){case 0:return buttonPressed="none";break;case 1:return buttonPressed="left";break;case 4:return buttonPressed="middle";break;case 2:return buttonPressed="right";break;default:break}}return buttonPressed}else{if(iEvent.getButtons()===eDwTypes_4.HC.Buttons.None){switch(iEvent.getButton()){case eDwTypes_4.HC.Button.None:buttonPressed="none";break;case eDwTypes_4.HC.Button.Left:buttonPressed="left";break;case eDwTypes_4.HC.Button.Middle:buttonPressed="middle";break;case eDwTypes_4.HC.Button.Right:buttonPressed="right";break;default:break}return buttonPressed}}switch(iEvent.getButtons()){case eDwTypes_4.HC.Buttons.None:buttonPressed="none";break;case eDwTypes_4.HC.Buttons.Left:buttonPressed="left";break;case eDwTypes_4.HC.Buttons.Middle:buttonPressed="middle";break;case eDwTypes_4.HC.Buttons.Right:buttonPressed="right";break;default:break}return buttonPressed};return eDwKeyMgr}();exports.eDwKeyMgr=eDwKeyMgr;function l_isEqual(iKey1,iKey2){var numMatch=0;var compareFields=["altKey","ctrlKey","metaKey","shiftKey"];for(var _i=0,compareFields_1=compareFields;_i<compareFields_1.length;_i++){var i=compareFields_1[_i];if(iKey1[i]===iKey2[i])++numMatch}return numMatch===Object.keys(iKey2).length-1?true:false}function l_getKeyModifiers(iKeyInfo){var keyModifiers="";for(var key in iKeyInfo){if(key.indexOf("Key")>-1&&iKeyInfo[key]){keyModifiers+=key+"-"}}return keyModifiers?keyModifiers.substring(0,keyModifiers.length-1):"none"}});define("eDwMBDNoteMgr",["require","exports","eDwTypes","eDwGeomUtils"],function(require,exports,eDwTypes_5,eDwGeomUtils){"use strict";var MBDNote=function(){function MBDNote(iViewer,refPos,curPos,nodeId){var modelHC=iViewer.getModel().getHCModel();var viewHC=iViewer.getHCView();this.mViewer=iViewer;this.mRefPos=refPos.copy();this.mNodeId=nodeId;var rPos2=eDwTypes_5.HC.Point2.fromPoint3(iViewer.getHCView().projectPoint(this.mRefPos));var cPos2=eDwTypes_5.HC.Point2.fromPoint3(iViewer.getHCView().projectPoint(curPos));this.mOffset=eDwTypes_5.HC.Point2.subtract(cPos2,rPos2);var rPos3=eDwGeomUtils.screenToWorld(rPos2,viewHC);var cPos3=eDwGeomUtils.screenToWorld(cPos2,viewHC);this.mOffsetLen=eDwTypes_5.HC.Point3.subtract(cPos3,rPos3).length();var cDelta=eDwTypes_5.HC.Point3.subtract(cPos3,curPos);var matrix=new eDwTypes_5.HC.Matrix;matrix.loadIdentity();matrix.setTranslationComponent(cDelta.x,cDelta.y,cDelta.z);var nodeMatrix=modelHC.getNodeMatrix(nodeId);nodeMatrix=eDwTypes_5.HC.Matrix.multiply(nodeMatrix,matrix);modelHC.setNodeMatrix(nodeId,nodeMatrix);this.mOrigPos=cPos3.copy();var camera=this.mViewer.getHCView().getCamera();this.mOrigCamMatrix=camera.getMatrixFromCamera().copy();this.mOrigModMatrix=modelHC.getNodeMatrix(nodeId)}MBDNote.prototype.updatePos=function(){var viewHC=this.mViewer.getHCView();var modelHC=this.mViewer.getModel().getHCModel();var rPos2=eDwTypes_5.HC.Point2.fromPoint3(this.mViewer.getHCView().projectPoint(this.mRefPos));var cPos2=eDwTypes_5.HC.Point2.add(rPos2,this.mOffset);var rPos3=eDwGeomUtils.screenToWorld(rPos2,viewHC);var cPos3=eDwGeomUtils.screenToWorld(cPos2,viewHC);var crDelta=eDwTypes_5.HC.Point3.subtract(cPos3,rPos3);crDelta.normalize();crDelta.scale(this.mOffsetLen);cPos3=eDwTypes_5.HC.Point3.add(rPos3,crDelta);var posDelta=eDwTypes_5.HC.Point3.subtract(cPos3,this.mOrigPos);var revTransMat=new eDwTypes_5.HC.Matrix,transMat=new eDwTypes_5.HC.Matrix,extraTransMat=new eDwTypes_5.HC.Matrix;revTransMat.setTranslationComponent(-this.mOrigPos.x,-this.mOrigPos.y,-this.mOrigPos.z);transMat.setTranslationComponent(this.mOrigPos.x,this.mOrigPos.y,this.mOrigPos.z);extraTransMat.setTranslationComponent(posDelta.x,posDelta.y,posDelta.z);this.mOrigPos=cPos3.copy();var nodeMatrix=this.mOrigModMatrix.copy();var camera=viewHC.getCamera();var curCamMatrix=camera.getMatrixFromCamera().copy();var oriCamMatrix=this.mOrigCamMatrix.copy();var oriCamMatrixR=oriCamMatrix.inverseAndDeterminant()[0];this.mOrigCamMatrix=curCamMatrix.copy();var rotMatrix=eDwTypes_5.HC.Matrix.multiply(revTransMat,oriCamMatrixR);rotMatrix=eDwTypes_5.HC.Matrix.multiply(rotMatrix,curCamMatrix);rotMatrix=eDwTypes_5.HC.Matrix.multiply(rotMatrix,transMat);rotMatrix=eDwTypes_5.HC.Matrix.multiply(rotMatrix,extraTransMat);nodeMatrix=modelHC.getNodeMatrix(this.mNodeId);nodeMatrix=eDwTypes_5.HC.Matrix.multiply(nodeMatrix,rotMatrix);modelHC.setNodeMatrix(this.mNodeId,nodeMatrix,false)};return MBDNote}();var eDwMBDNoteMgr=function(){function eDwMBDNoteMgr(iViewer){this.mNotes=[];this.mViewer=iViewer}eDwMBDNoteMgr.prototype.addNote=function(nodeId,refBox){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){var modelHC,box;return __generator(this,function(_a){switch(_a.label){case 0:modelHC=this.mViewer.getModel().getHCModel();return[4,modelHC.getNodesBounding([nodeId])];case 1:box=_a.sent();this.mNotes.push(new MBDNote(this.mViewer,refBox.center(),box.center(),nodeId));return[2]}})})})();return true};eDwMBDNoteMgr.prototype.updateNote=function(){var len=this.mNotes.length;for(var i=0;i<len;++i){this.mNotes[i].updatePos()}};return eDwMBDNoteMgr}();return eDwMBDNoteMgr});define("eDwModel",["require","exports","eDwEventMgr","eDwHierarchyNode","eDwModelView","eDwSelSubEntityUtils","eDwServiceMgr","eDwNodeAttributes","eDwEvents","eDwTypes","utils"],function(require,exports,eDwEventMgr,eDwHierarchyNode,eDwModelView,eDwSelSubEntityUtils,eDwServiceMgr,eDwNodeAttributes_2,eDwEvents_2,eDwTypes_6,utils_1){"use strict";var eDwModel=function(){function eDwModel(iViewer){this.mViewer=iViewer;this.mModelHC=iViewer.HCViewer.model;this.mModelViews={};this.mInitialModelView=this.mActiveModelView=null;this.mCategory="UNKNOWN";this.mOrigin="";this.mBox=new eDwTypes_6.HC.Box;this.mProperties=null;this.setUserUnits({Length:eDwTypes_6.DefaultLengthUnit,Angle:eDwTypes_6.DefaultAngleUnit});this.mModelHC.setEnableAutomaticUnitScaling(false);this.mModelHC.setBehaviorInitiallyHidden(false);this.calculateBoundingBox()}eDwModel.prototype.initModelData=function(){return __awaiter(this,void 0,void 0,function(){var bbox,nodeProps,modelViews,_i,modelViews_1,modelView,attribs;return __generator(this,function(_a){switch(_a.label){case 0:if(!this.mViewer)return[2];bbox=this.getBoundingBox();if(!bbox.extents().equals(eDwTypes_6.HC.Point3.zero()))return[3,2];return[4,this.calculateBoundingBox()];case 1:_a.sent();_a.label=2;case 2:this.mViewer.initializeManagers();return[4,this.mModelHC.getNodeProperties(this.getModelHCID())];case 3:nodeProps=_a.sent();if(nodeProps)this.loadProperty(nodeProps.eDrawingsXMLData);modelViews=this.getModelViews();for(_i=0,modelViews_1=modelViews;_i<modelViews_1.length;_i++){modelView=modelViews_1[_i];attribs=modelView.Hierarchy.getAttribs();if(attribs.Visible){this.mActiveModelView=modelView;this.mInitialModelView=this.mActiveModelView;return[2]}}if(modelViews.length){console.warn("There is no active model view."+" Defaulting to first.");this.mActiveModelView=this.mInitialModelView=modelViews[0];return[2]}console.warn("There are no model views in this model.");return[2]}})})};eDwModel.prototype.getBoundingBox=function(){return this.mBox};eDwModel.prototype.calculateBoundingBox=function(iIgnoreInvisible,iIncludeExcluded){if(iIgnoreInvisible===void 0){iIgnoreInvisible=true}if(iIncludeExcluded===void 0){iIncludeExcluded=false}return __awaiter(this,void 0,void 0,function(){var _a;return __generator(this,function(_b){switch(_b.label){case 0:_a=this;return[4,this.mModelHC.getModelBounding(iIgnoreInvisible,iIncludeExcluded)];case 1:_a.mBox=_b.sent();return[2,this.mBox]}})})};eDwModel.prototype.getModelHCID=function(){return 0};eDwModel.prototype.getUserUnits=function(){return $.extend({},this.mUserUnits)};eDwModel.prototype.setUserUnits=function(iUserUnits){if(utils_1.isEqual(this.mUserUnits,iUserUnits))return;this.mUserUnits=$.extend({},iUserUnits);eDwEventMgr.get().fireEvent(eDwEvents_2.UserUnitsChangeEvent,this)};eDwModel.prototype.getValueWithUnit=function(iValue,iUnitType){var unitLabel="";var unitScale=this.getUserUnitScales()[iUnitType+"Scale"];var scaledVal=unitScale?unitScale*iValue:iValue;switch(iUnitType){case"Length":case"Angle":unitLabel=eDwTypes_6.UnitToLabel[this.mUserUnits[iUnitType]];break;case"Area":unitLabel=eDwTypes_6.UnitToLabel[this.mUserUnits["Length"]]+"^2";break;case"Volume":unitLabel=eDwTypes_6.UnitToLabel[this.mUserUnits["Length"]]+"^3";break;default:break}return scaledVal.toFixed(2)+unitLabel};eDwModel.prototype.getSelObjProperty=function(iSelObjHC){return __awaiter(this,void 0,void 0,function(){var subEntityProperty,subEntityInfo,subEntityTypeName,subEntityID,modelHC,_a;return __generator(this,function(_b){switch(_b.label){case 0:subEntityProperty=null;subEntityInfo=eDwSelSubEntityUtils.getSubEntityInfo(iSelObjHC);subEntityTypeName="Unknown";if(!subEntityInfo)return[3,6];subEntityTypeName=subEntityInfo.SubEntityTypeName;subEntityID=eDwSelSubEntityUtils.getSubEntityID(subEntityInfo.SubEntity);modelHC=this.mModelHC;_a=subEntityTypeName;switch(_a){case"Line":return[3,1];case"Face":return[3,3];case"Point":return[3,5]}return[3,5];case 1:return[4,modelHC.getEdgeProperty(iSelObjHC.getNodeId(),subEntityID)];case 2:subEntityProperty=_b.sent();return[3,6];case 3:return[4,modelHC.getFaceProperty(iSelObjHC.getNodeId(),subEntityID)];case 4:subEntityProperty=_b.sent();return[3,6];case 5:return[3,6];case 6:return[2,{Property:subEntityProperty,Name:subEntityTypeName}]}})})};eDwModel.prototype.setSelObjSubEntityColor=function(iSelObjsHC,iColor){return this.setSelObjSubEntity(iSelObjsHC,iColor)};eDwModel.prototype.setSelObjSubEntityHighlight=function(iSelObjsHC,iHighlight){return this.setSelObjSubEntity(iSelObjsHC,iHighlight)};eDwModel.prototype.setAttribOnHierNodes=function(iHierNodes,iAttribs){return __awaiter(this,void 0,void 0,function(){var changedHierNodes,changedAncestorHierNodeMap,_i,iHierNodes_1,hierNode,changedAttribNames,propagatingAttribNames,changedChildHierNodes,_a,propagatingAttribNames_1,attribName,attrib,parentHierNode,parentAttrib,value,mergedAttrib,changedHierNodesAndAttribs,_b,changedHierNodes_1,hierNode,changedHCNodeID,ancHierNode;return __generator(this,function(_c){switch(_c.label){case 0:changedHierNodes=[];changedAncestorHierNodeMap={};for(_i=0,iHierNodes_1=iHierNodes;_i<iHierNodes_1.length;_i++){hierNode=iHierNodes_1[_i];if(hierNode&&!isNaN(hierNode.HOOPSID)){changedAttribNames=hierNode.setAttribs(iAttribs);propagatingAttribNames=eDwHierarchyNode.findPropagatingAttribNames(changedAttribNames);if(propagatingAttribNames.length){changedHierNodes.push(hierNode);changedChildHierNodes=hierNode.propagateAttribsToChildren(propagatingAttribNames);Array.prototype.push.apply(changedHierNodes,changedChildHierNodes);for(_a=0,propagatingAttribNames_1=propagatingAttribNames;_a<propagatingAttribNames_1.length;_a++){attribName=propagatingAttribNames_1[_a];attrib={};attrib[attribName]=iAttribs[attribName];parentHierNode=hierNode.ParentNode;while(parentHierNode){parentAttrib=parentHierNode.getAttribs();value=parentAttrib[attribName];if(value){if(value!==attrib[attribName]){mergedAttrib=parentHierNode.getMergedChildrenAttribs("DirectDescendantsOnly");if(!mergedAttrib[attribName]){parentHierNode.setAttribs(attrib);changedAncestorHierNodeMap[parentHierNode.HOOPSID]=parentHierNode;parentHierNode=parentHierNode.ParentNode}else{parentHierNode=null}}else{parentHierNode=null}}else{if(value!==attrib[attribName]){parentHierNode.setAttribs(attrib);changedAncestorHierNodeMap[parentHierNode.HOOPSID]=parentHierNode;parentHierNode=parentHierNode.ParentNode}else{parentHierNode=null}}if(parentHierNode&&!parentHierNode.ParentNode){parentHierNode=null}}}}}}changedHierNodesAndAttribs=[];for(_b=0,changedHierNodes_1=changedHierNodes;_b<changedHierNodes_1.length;_b++){hierNode=changedHierNodes_1[_b];changedHierNodesAndAttribs.push({HierNode:hierNode,Attribs:iAttribs})}return[4,this.syncHCNodesState(changedHierNodesAndAttribs)];case 1:_c.sent();for(changedHCNodeID in changedAncestorHierNodeMap){ancHierNode=changedAncestorHierNodeMap[changedHCNodeID];changedHierNodes.push(ancHierNode);changedHierNodesAndAttribs.push({HierNode:ancHierNode,Attribs:iAttribs})}if(changedHierNodes.length){eDwEventMgr.get().fireEvent(eDwEvents_2.NodeAttribChangeEvent,this.mViewer,changedHierNodesAndAttribs)}return[2]}})})};eDwModel.prototype.setAttribs=function(iNodesWithAttribs){return __awaiter(this,void 0,void 0,function(){var nodesWithAttribs,_i,nodesWithAttribs_1,nodeWithAttrib;return __generator(this,function(_a){switch(_a.label){case 0:nodesWithAttribs=iNodesWithAttribs;_i=0,nodesWithAttribs_1=nodesWithAttribs;_a.label=1;case 1:if(!(_i<nodesWithAttribs_1.length))return[3,4];nodeWithAttrib=nodesWithAttribs_1[_i];return[4,this.setAttribOnHierNodes([nodeWithAttrib.HierNode],nodeWithAttrib.Attribs)];case 2:_a.sent();_a.label=3;case 3:_i++;return[3,1];case 4:return[2]}})})};eDwModel.prototype.setOverrideAttribOnHierNodes=function(iHierNodesAndAttribs){return __awaiter(this,void 0,void 0,function(){var overriddenHierNodesAndAttribs,_i,iHierNodesAndAttribs_1,hierNodeAndAttribs,hierNode,attribs,childHierNodesAndAttribs,children,key;return __generator(this,function(_a){switch(_a.label){case 0:overriddenHierNodesAndAttribs=[];_i=0,iHierNodesAndAttribs_1=iHierNodesAndAttribs;_a.label=1;case 1:if(!(_i<iHierNodesAndAttribs_1.length))return[3,4];hierNodeAndAttribs=iHierNodesAndAttribs_1[_i];hierNode=hierNodeAndAttribs.HierNode;attribs=hierNodeAndAttribs.Attribs;hierNode.setOverrideAttribs(attribs);overriddenHierNodesAndAttribs.push({HierNode:hierNode,Attribs:hierNode.getAttribs()});childHierNodesAndAttribs=[];children=hierNode.getChildren();for(key in children){childHierNodesAndAttribs.push({HierNode:children[key],Attribs:attribs})}return[4,this.setOverrideAttribOnHierNodes(childHierNodesAndAttribs)];case 2:_a.sent();_a.label=3;case 3:_i++;return[3,1];case 4:return[4,this.syncHCNodesState(overriddenHierNodesAndAttribs)];case 5:_a.sent();if(overriddenHierNodesAndAttribs.length){eDwEventMgr.get().fireEvent(eDwEvents_2.NodeAttribChangeEvent,this.mViewer,overriddenHierNodesAndAttribs)}return[2]}})})};eDwModel.prototype.isAssembly=function(){return this.mCategory==="ASSEMBLY"?true:false};eDwModel.prototype.isPart=function(){return this.mCategory==="PART"?true:false};eDwModel.prototype.isDrawing=function(){return this.mCategory==="DRAWING"?true:false};eDwModel.prototype.getNodeType=function(iNodeID){if(iNodeID===null||iNodeID===undefined){return eDwTypes_6.HC.NodeType.Unknown}return this.mModelHC.getNodeType(iNodeID)};eDwModel.prototype.getHierarchyNode=function(iIDHC){var modelHC=this.getHCModel();var modelViews=this.getModelViews();var i=0;var modelView;var hierNode;while(i<modelViews.length&&(modelView=modelViews[i++])&&!hierNode){var nodeType=this.getNodeType(iIDHC);var nodeIDHC=iIDHC;hierNode=modelView.Nodes[nodeIDHC];while(hierNode&&(!hierNode.isSelectable()&&hierNode!==modelView.Hierarchy)||!hierNode&&nodeType!==eDwTypes_6.HC.NodeType.Unknown){nodeIDHC=modelHC.getNodeParent(nodeIDHC);nodeType=this.getNodeType(nodeIDHC);hierNode=modelView.Nodes[nodeIDHC]}}return hierNode};eDwModel.prototype.getModelViews=function(){var modelViews=[];for(var modelViewName in this.mModelViews){modelViews.push(this.mModelViews[modelViewName])}return modelViews};eDwModel.prototype.getModelView=function(iName){return this.mModelViews[iName]};eDwModel.prototype.getActiveModelView=function(){return this.mActiveModelView};eDwModel.prototype.activateModelView=function(iModelViewName,iCamera,iUseCurrCameraProjection){if(iUseCurrCameraProjection===void 0){iUseCurrCameraProjection=false}return __awaiter(this,void 0,void 0,function(){var camera;return __generator(this,function(_a){switch(_a.label){case 0:if(iModelViewName===this.mActiveModelView.Name)return[2];camera=iCamera;if(iUseCurrCameraProjection){camera=iCamera.copy();camera.setProjection(this.mViewer.getHCView().getCamera().getProjection())}return[4,this.setActiveModelView(iModelViewName,camera)];case 1:_a.sent();return[2]}})})};eDwModel.prototype.getFileOriginType=function(){return this.mOrigin};eDwModel.prototype.resetToDefault=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.setActiveModelView(this.mInitialModelView.Name,this.mViewer.getInitCamera())];case 1:_a.sent();return[2]}})})};eDwModel.prototype.notifyDataChange=function(iModelView){if(!iModelView)return;var eventMgr=eDwEventMgr.get();eventMgr.fireEvent(eDwEvents_2.ModelViewChangeEvent,this.mViewer,iModelView,!this.isPart())};eDwModel.prototype.getProperty=function(iPropName){for(var i=0;i<this.mProperties.length;i++){var property=$(this.mProperties[i]);var propName=property.attr("name");if(propName===iPropName)return property.attr("val")}return""};eDwModel.prototype.parseHierarchy=function(iConfig,iParentNode,iXMLNode,iParseDepth){if(iParseDepth!==undefined&&iParseDepth===0||this.isPart()){return}var children=$(iXMLNode).children("body,assembly,view");for(var i=0;i<children.length;i++){var childJQ=$(children[i]);var elemTag=childJQ.prop("tagName");var nodeProps=l_getNodeProperties(childJQ);var attribs=l_getNodePropsAsAttribs(nodeProps);var newChild=iParentNode.addChild(nodeProps.Name,elemTag,attribs,nodeProps.HOOPSID,iParentNode,nodeProps.ToModelData);this.parseHierarchy(iConfig,newChild,childJQ,iParseDepth-1)}};eDwModel.prototype.loadProperty=function(iPropsToParse){console.debugLog("ViewerLoad","extra model data = "+iPropsToParse);var doc=$.parseXML(iPropsToParse);var data=$(doc).find("sceneData");if(data.length>0){var sceneData=$(data[0]);this.mOrigin=sceneData.attr("origin");switch(sceneData.attr("type")){case"drawing":this.mCategory="DRAWING";break;case"part":this.mCategory="PART";break;case"assembly":this.mCategory="ASSEMBLY";break;default:break}}this.mProperties=$(doc).find("property");if(this.mCategory==="ASSEMBLY"||this.mCategory==="PART"){var configurations=$(doc).find("configuration");for(var i=0;i<configurations.length;i++){var modelViewJQ=$(configurations[i]);var nodeProps=l_getNodeProperties(modelViewJQ);if(!nodeProps.Name){nodeProps.Name="Unnamed Config"+(i+1)}var attribs=l_getNodePropsAsAttribs(nodeProps);var modelView=this.mModelViews[nodeProps.Name]=new eDwModelView(nodeProps.Name,"config",attribs,nodeProps.HOOPSID,this);this.readModelViewPreviewImage(modelView,i);var hierarchyNode=modelView.Hierarchy;this.parseHierarchy(modelView,hierarchyNode,modelViewJQ.find("hierarchy"));l_addTables(this.mViewer,$(doc),this,hierarchyNode,modelView)}}else{var sheets=$(doc).find("sheet");for(var i=0;i<sheets.length;i++){var modelViewJQ=$(sheets[i]);var nodeProps=l_getNodeProperties(modelViewJQ);if(!nodeProps.Name){nodeProps.Name="Unnamed Sheet"+(i+1)}var attribs=l_getNodePropsAsAttribs(nodeProps);var modelView=this.mModelViews[nodeProps.Name]=new eDwModelView(nodeProps.Name,"sheet",attribs,nodeProps.HOOPSID,this);var hierarchyNode=modelView.Hierarchy;this.parseHierarchy(modelView,hierarchyNode,modelViewJQ.find("views"));this.processLayers(modelView,hierarchyNode,hierarchyNode.HOOPSID);l_addTables(this.mViewer,$(doc),this,hierarchyNode,modelView)}}if(this.getModelViews().length===0){var attrib={Visible:true};this.mModelViews["eDrawingsDefault"]=new eDwModelView("eDrawingsDefault","config",attrib,this.getModelHCID(),this)}};eDwModel.prototype.processLayers=function(ioModelView,iSheetHierNode,iNodeHCID){var layerMark="(layername)";var childName=this.mModelHC.getNodeName(iNodeHCID);if(childName&&-1!==childName.indexOf(layerMark)){childName=childName.replace(layerMark,"");if(childName.length){var attribs={Visible:true};iSheetHierNode.addChild(childName,"layer",attribs,iNodeHCID,iSheetHierNode)}}var childHCIDs=this.mModelHC.getNodeChildren(iNodeHCID);for(var i=0;i<childHCIDs.length;i++){this.processLayers(ioModelView,iSheetHierNode,childHCIDs[i])}};eDwModel.prototype.readModelViewPreviewImage=function(iModelView,iIndex){return __awaiter(this,void 0,void 0,function(){var imageFileName,modelKey,fileInfo,iExcp_5;return __generator(this,function(_a){switch(_a.label){case 0:imageFileName="config_"+iIndex+".jpg";modelKey=this.mViewer.getCurrModelKey();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().getFileFromServerModelCache(modelKey,imageFileName)];case 2:fileInfo=_a.sent();if(fileInfo.Data){iModelView.setPreviewImagePath(fileInfo.Path)}return[3,4];case 3:iExcp_5=_a.sent();return[3,4];case 4:return[2]}})})};eDwModel.prototype.setActiveModelView=function(iModelViewName,iCamera){return __awaiter(this,void 0,void 0,function(){var newModelView,oldModelView,debug,camera,hierNodeHCID,iError_1;return __generator(this,function(_a){switch(_a.label){case 0:newModelView=this.mModelViews[iModelViewName];if(!newModelView)return[3,10];oldModelView=this.mActiveModelView;this.mActiveModelView=newModelView;debug=this.mViewer.ViewerFeatureOpts.Debug;_a.label=1;case 1:_a.trys.push([1,8,,9]);if(!oldModelView)return[3,3];if(debug){l_dumpModelViewStateInfo("Before set oldModelView = false",this.mModelViews,this.mModelHC)}return[4,this.setAttribOnHierNodes([oldModelView.Hierarchy],{Visible:false})];case 2:_a.sent();if(debug){l_dumpModelViewStateInfo("After set oldModelView = false",this.mModelViews,this.mModelHC)}_a.label=3;case 3:if(debug){l_dumpModelViewStateInfo("Before set active view = true",this.mModelViews,this.mModelHC)}return[4,this.setAttribOnHierNodes([this.mActiveModelView.Hierarchy],{Visible:true})];case 4:_a.sent();if(debug){l_dumpModelViewStateInfo("After set active view = true",this.mModelViews,this.mModelHC);l_dumpModelViewVisibilityTree(this.mActiveModelView,this.mModelHC)}if(!this.isDrawing())return[3,6];camera=iCamera.copy();hierNodeHCID=this.mActiveModelView.Hierarchy.HOOPSID;return[4,this.mViewer.ViewMgr.fitScreenToNodes([hierNodeHCID],camera)];case 5:_a.sent();return[3,7];case 6:this.mViewer.ViewMgr.setCamera(iCamera,400);_a.label=7;case 7:return[3,9];case 8:iError_1=_a.sent();console.debugLog("NodeVisibility","activateModelView failed to set node visibilities.");console.error(iError_1);return[3,9];case 9:this.notifyDataChange(newModelView);_a.label=10;case 10:return[2]}})})};eDwModel.prototype.setHCToAttrib=function(iNodeHCIDsAndAttribs){return __awaiter(this,void 0,void 0,function(){var _i,iNodeHCIDsAndAttribs_1,nodeHCIDAndAttribs,nodeHCID,attribs,oldVisibility,oldOpacity,nodeHCName,opacities,iErrorMsg_1,opacity,newVisibility;return __generator(this,function(_a){switch(_a.label){case 0:if(!iNodeHCIDsAndAttribs.length)return[2];_i=0,iNodeHCIDsAndAttribs_1=iNodeHCIDsAndAttribs;_a.label=1;case 1:if(!(_i<iNodeHCIDsAndAttribs_1.length))return[3,13];nodeHCIDAndAttribs=iNodeHCIDsAndAttribs_1[_i];nodeHCID=nodeHCIDAndAttribs.ID;attribs=nodeHCIDAndAttribs.Attribs;oldVisibility=void 0;oldOpacity=void 0;nodeHCName=void 0;if(!this.mViewer.ViewerFeatureOpts.Debug)return[3,6];_a.label=2;case 2:_a.trys.push([2,4,,5]);return[4,this.mModelHC.getNodesOpacity([nodeHCID])];case 3:opacities=_a.sent();oldOpacity=opacities[0];return[3,5];case 4:iErrorMsg_1=_a.sent();oldOpacity=undefined;return[3,5];case 5:oldVisibility=this.mModelHC.getNodeVisibility(nodeHCID);nodeHCName=this.mModelHC.getNodeName(nodeHCID);_a.label=6;case 6:opacity=void 0;if(!(attribs.Opaque!==undefined))return[3,9];return[4,this.mModelHC.setNodesVisibility([nodeHCID],true)];case 7:_a.sent();opacity=attribs.Opaque?1:.5;return[4,this.mModelHC.setNodesTransparency([nodeHCID],opacity)];case 8:_a.sent();return[3,11];case 9:return[4,this.mModelHC.setNodesVisibility([nodeHCID],attribs.Visible)];case 10:_a.sent();_a.label=11;case 11:if(this.mViewer.ViewerFeatureOpts.Debug){newVisibility=this.mModelHC.getNodeVisibility(nodeHCID);console.debugLog("NodeVisibility","HC Node name = "+nodeHCName+" | old visibility = "+oldVisibility+" | new visibility = "+newVisibility+" | intended visibility = "+attribs.Visible+" | old opacity = "+oldOpacity+" | intended opacity = "+opacity)}_a.label=12;case 12:_i++;return[3,1];case 13:return[2]}})})};eDwModel.prototype.syncHCNodesState=function(iHierNodesAndAttribs){return __awaiter(this,void 0,void 0,function(){var nodeHCIDsAndAttribs,_i,iHierNodesAndAttribs_2,hierNodeAndAttribs,hierNode;return __generator(this,function(_a){switch(_a.label){case 0:nodeHCIDsAndAttribs=[];for(_i=0,iHierNodesAndAttribs_2=iHierNodesAndAttribs;_i<iHierNodesAndAttribs_2.length;_i++){hierNodeAndAttribs=iHierNodesAndAttribs_2[_i];hierNode=hierNodeAndAttribs.HierNode;if(hierNode.HOOPSID&&!isNaN(hierNode.HOOPSID)){nodeHCIDsAndAttribs.push({ID:hierNode.HOOPSID,Attribs:hierNodeAndAttribs.Attribs})}}return[4,this.setHCToAttrib(nodeHCIDsAndAttribs)];case 1:_a.sent();return[2]}})})};eDwModel.prototype.setSelObjSubEntity=function(iSelObjsHC,iSetting){if(!iSelObjsHC||!iSelObjsHC.length)return[];var subEntityIDs=[];for(var _i=0,iSelObjsHC_1=iSelObjsHC;_i<iSelObjsHC_1.length;_i++){var selObjHC=iSelObjsHC_1[_i];var nodeID=selObjHC.getNodeId();var subEntityInfo=eDwSelSubEntityUtils.getSubEntityInfo(selObjHC);var subEntityID=eDwSelSubEntityUtils.getSubEntityID(subEntityInfo.SubEntity);var isColor=typeof iSetting==="object"?true:false;var action="setNode"+subEntityInfo.SubEntityTypeName+(isColor?"Color":"Highlighted");action=!iSetting&&isColor?"un"+action:action;try{this.mModelHC[action](nodeID,subEntityID,iSetting);subEntityIDs.push(subEntityID)}catch(iExcp){}}return subEntityIDs};eDwModel.prototype.getUserUnitScales=function(){var lengthScales={millimeter:c_lengthUnitToMMFactor/1,centimeter:c_lengthUnitToMMFactor/10,meter:c_lengthUnitToMMFactor/1e3,inch:c_lengthUnitToMMFactor/25.4,foot:c_lengthUnitToMMFactor/304.8};var angleScales={degree:1,radian:Math.PI/180};var lenScale=lengthScales[this.mUserUnits.Length];return{LengthScale:lenScale,AngleScale:angleScales[this.mUserUnits.Angle],AreaScale:lenScale*lenScale}};eDwModel.prototype.getHCModel=function(){return this.mModelHC};return eDwModel}();var c_lengthUnitToMMFactor=1e3;function l_addTables(iViewer,iDoc,iModel,ioHierachyNode,ioModelView){var tables=$(iDoc).find("table");var numTables=tables.length;if(numTables>0&&ioHierachyNode){for(var i=0;i<numTables;i++){var tableJQ=$(tables[i]);var nodeProps=l_getNodeProperties(tableJQ);if(!nodeProps.Name){nodeProps.Name="Unnamed Table"+(i+1)}nodeProps.NotesArea=tableJQ.attr("notesarea")==="1"?true:false;var attribs=l_getNodePropsAsAttribs(nodeProps);var hierarchyNode=ioHierachyNode.addChild(nodeProps.Name,"table",attribs,nodeProps.HOOPSID,ioHierachyNode);iViewer.TableMgr.add(hierarchyNode)}}}function l_dumpModelViewStateInfo(iPrefixMsg,iModelViews,iModelHC){var msg=iPrefixMsg+" -> | ";for(var mvName in iModelViews){var nodeHCID=iModelViews[mvName].Hierarchy.HOOPSID;msg+=mvName+" - "+iModelHC.getNodeVisibility(nodeHCID)+" | "}console.debugLog("NodeVisibility",msg)}function l_dumpModelViewVisibilityTree(iModelView,iModelHC){var hierNodes=iModelView.getNodes();for(var _i=0,hierNodes_1=hierNodes;_i<hierNodes_1.length;_i++){var hierNode=hierNodes_1[_i];console.debugLog("NodeVisibility",hierNode.Name+" Visibility = "+iModelHC.getNodeVisibility(hierNode.HOOPSID))}}function l_getNodeProperties(iElemJQ){var props={};if(iElemJQ){props.Name=iElemJQ.attr("name");if(props.Name.charAt(0)=="<"&&props.Name.charAt(props.Name.length-1)==">"){props.Name=props.Name.replace("<","&lt;");props.Name=props.Name.replace(">","&gt;")}props.Visible=iElemJQ.attr("visible")==="1"?true:false;props.Opaque=iElemJQ.attr("transparent")==="1"?false:true;props.Selectable=iElemJQ.attr("selectable")==="1"?true:false;props.HOOPSID=parseInt(iElemJQ.attr("id"),10);var toModelDataStr=iElemJQ.attr("to-model-data");var toModelData=[1,0,0,0,1,0,0,0,1,0,0,0,1];props.ToModelData=toModelDataStr?JSON.parse(toModelDataStr):toModelData}return props}function l_getNodePropsAsAttribs(iNodeProps){var nodeAttribs={};eDwNodeAttributes_2.eDwNodeAttributes.setAttribs(nodeAttribs,iNodeProps);return nodeAttribs}return eDwModel});define("eDwModelView",["require","exports","eDwHierarchyNode"],function(require,exports,eDwHierarchyNode){"use strict";var eDwModelView=function(){function eDwModelView(Name,Category,iAttribs,iNodeHCID,iModel){this.Name=Name;this.Category=Category;this.Nodes={};this.Hierarchy=new eDwHierarchyNode(this.Name,this.Category,iAttribs,iNodeHCID,null,this,iModel);this.mPreviewImage=""}eDwModelView.prototype.getNodes=function(){var hierNodes=[];for(var hierNodeName in this.Nodes){hierNodes.push(this.Nodes[hierNodeName])}return hierNodes};eDwModelView.prototype.setPreviewImagePath=function(iImagePath){this.mPreviewImage=iImagePath};eDwModelView.prototype.getPreviewImagePath=function(){return this.mPreviewImage};return eDwModelView}();return eDwModelView});define("eDwMoveSectionPlaneCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],function(require,exports,eDwTypes_7,eDwSupportsHistoryCmd){"use strict";var eDwMoveSectionPlaneCmd=function(_super){__extends(eDwMoveSectionPlaneCmd,_super);function eDwMoveSectionPlaneCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialPntOnPlane=_this.mViewer.XSectionMgr.projectPoint(new eDwTypes_7.HC.Point3(0,0,0));return _this}eDwMoveSectionPlaneCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;var altDir=this.mDir.copy().negate();this.mViewer.XSectionMgr.moveCurrentAlongNormal(altDir);return true};eDwMoveSectionPlaneCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.XSectionMgr.moveCurrentAlongNormal(this.mDir);return true};eDwMoveSectionPlaneCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mFinalPntOnPlane=this.mViewer.XSectionMgr.projectPoint(new eDwTypes_7.HC.Point3(0,0,0));this.mDir=this.mFinalPntOnPlane.subtract(this.mInitialPntOnPlane)};eDwMoveSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPntOnPlane&&!!this.mFinalPntOnPlane};Object.defineProperty(eDwMoveSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwMoveSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwMoveSectionPlaneCmd});define("eDwNodeAttributes",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var eDwNodeAttributes=function(){function eDwNodeAttributes(){}eDwNodeAttributes.setAttribs=function(ioTargetAttribs,iSourceAttribs){var changedAttributes=[];for(var attribKey in iSourceAttribs){if(ioTargetAttribs[attribKey]!==iSourceAttribs[attribKey]){ioTargetAttribs[attribKey]=iSourceAttribs[attribKey];changedAttributes.push(attribKey)}}return changedAttributes};eDwNodeAttributes.mergeAttribs=function(ioTargetAttribs,iSourceAttribs){if(ioTargetAttribs&&iSourceAttribs){syncAttributeKeys(ioTargetAttribs,iSourceAttribs);for(var attribKey in ioTargetAttribs){ioTargetAttribs[attribKey]=ioTargetAttribs[attribKey]||iSourceAttribs[attribKey]}}return ioTargetAttribs};return eDwNodeAttributes}();exports.eDwNodeAttributes=eDwNodeAttributes;var NodeDisplayState;(function(NodeDisplayState){NodeDisplayState["Visible"]="Visible";NodeDisplayState["Invisible"]="Invisible";NodeDisplayState["Opaque"]="Opaque";NodeDisplayState["Transparent"]="Transparent"})(NodeDisplayState=exports.NodeDisplayState||(exports.NodeDisplayState={}));function syncAttributeKeys(ioTargetAttribs,iSourceAttribs){for(var attribKey in iSourceAttribs){if(!ioTargetAttribs[attribKey]){ioTargetAttribs[attribKey]=undefined}}}});define("eDwNodeColorInfo",["require","exports","eDwTypes"],function(require,exports,eDwTypes_8){"use strict";var eDwNodeColorInfo=function(){function eDwNodeColorInfo(iNodeID,iSecondaryID,iColor,iType){this.mNodeID=iNodeID;this.mSecondID=iSecondaryID;this.mType=iType}eDwNodeColorInfo.prototype.reset=function(iModelHC){switch(this.mType){case eDwTypes_8.EntityMode.EDGE:iModelHC.unsetNodeLineColor(this.mNodeID,this.mSecondID);break;case eDwTypes_8.EntityMode.FACE:iModelHC.unsetNodeFaceColor(this.mNodeID,this.mSecondID);break;case eDwTypes_8.EntityMode.VERTEX:default:break}};return eDwNodeColorInfo}();return eDwNodeColorInfo});define("eDwOperationMixin",["require","exports"],function(require,exports){"use strict";var eDwOperationMixin=function(){function eDwOperationMixin(){this.mExclusive=true}Object.defineProperty(eDwOperationMixin.prototype,"Exclusive",{get:function(){return this.mExclusive},enumerable:true,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"AllowsAggregation",{get:function(){return false},enumerable:true,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"Aggregable",{get:function(){return false},enumerable:true,configurable:true});return eDwOperationMixin}();return eDwOperationMixin});define("eDwOperatorBaseDeps",["require","exports","eDwKeyMgr","eDwTypes","utils","eDwGeomUtils","eDwSelSubEntityUtils"],function(require,exports,eDwKeyMgr_1,eDwTypes_9,utils,eDwGeomUtils,eDwSelSubEntityUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var eDwOperatorMgr=function(){function eDwOperatorMgr(iViewer){this.mOpsData={};this.mOperatorMgrHC=iViewer.HCViewer.getOperatorManager();this.resetToDefault();var cameraZoomOp=this.mOperatorMgrHC.getOperator(eDwTypes_9.HC.OperatorId.Zoom);cameraZoomOp.setMouseWheelZoomInverted(false)}eDwOperatorMgr.prototype.registerCustomOperator=function(ioOp,iActivate){if(iActivate===void 0){iActivate=false}ioOp.OperatorID=this.mOperatorMgrHC.registerCustomOperator(ioOp);this.mOpsData[ioOp.OperatorID]={Op:ioOp,ActivatedByDefault:iActivate};if(iActivate)this.push(ioOp.OperatorID);return ioOp.OperatorID};eDwOperatorMgr.prototype.unregisterCustomOperator=function(iOp){this.unregisterCustomOperatorByID(this.getOperatorID(iOp))};eDwOperatorMgr.prototype.unregisterCustomOperatorByID=function(iOpID){if(this.popToOp(iOpID)===iOpID){this.pop()}this.mOperatorMgrHC.unregisterCustomOperator(iOpID);delete this.mOpsData[iOpID]};eDwOperatorMgr.prototype.unregisterAll=function(){var _this=this;utils.forAll(function(iOpID,iOpData){_this.unregisterCustomOperatorByID(iOpID)},this.mOpsData)};eDwOperatorMgr.prototype.push=function(iOpID){var activeOpID=this.getActiveOperatorID();if(activeOpID!==iOpID){return this.mOperatorMgrHC.push(iOpID)}return false};eDwOperatorMgr.prototype.pop=function(iOpID){var retOpID=eDwTypes_9.HC.OperatorId.None;if(!iOpID||iOpID&&this.getActiveOperatorID()===iOpID){retOpID=this.mOperatorMgrHC.pop()}return retOpID};eDwOperatorMgr.prototype.popToOp=function(iOpID){var retOpID=eDwTypes_9.HC.OperatorId.None;var opStackPos=this.mOperatorMgrHC.indexOf(iOpID);if(opStackPos>-1){while(this.getActiveOperatorID()!==iOpID){this.pop()}retOpID=iOpID}return retOpID};eDwOperatorMgr.prototype.getOperator=function(iOpID){return this.mOperatorMgrHC.getOperator(iOpID)};eDwOperatorMgr.prototype.getOperatorID=function(iOp){return iOp.OperatorID};eDwOperatorMgr.prototype.getActiveOperatorID=function(){return this.mOperatorMgrHC.peek()};eDwOperatorMgr.prototype.getOperatorIndex=function(iOp){var opsStack=[];var numOps=this.mOperatorMgrHC.size();var index=-1;for(var i=0;i<numOps;i++){if(this.getOperator(this.getActiveOperatorID())===iOp){index=i;break}opsStack.push(this.mOperatorMgrHC.pop())}var lastOpPos=opsStack.length-1;for(var i=lastOpPos;i>=0;i++){this.mOperatorMgrHC.push(opsStack[i])}return index};eDwOperatorMgr.prototype.setOpID=function(iOpID,iIndex){return this.mOperatorMgrHC.set(iOpID,iIndex)};eDwOperatorMgr.prototype.set=function(iOp,iIndex){return this.setOpID(this.getOperatorID(iOp),iIndex)};eDwOperatorMgr.prototype.resetToDefault=function(){var _this=this;for(var opID=eDwTypes_9.HC.OperatorId.NavCube;opID>eDwTypes_9.HC.OperatorId.Navigate;opID--){this.pop(opID)}utils.forAll(function(iOpID,iOpData){if(iOpData.ActivatedByDefault){_this.push(iOpData.Op.OperatorID)}},this.mOpsData)};return eDwOperatorMgr}();exports.eDwOperatorMgr=eDwOperatorMgr;var eDwBaseOperator=function(_super){__extends(eDwBaseOperator,_super);function eDwBaseOperator(iViewer){var _this=_super.call(this)||this;_this.mViewer=iViewer;_this.mCurTouches=[];_this.mDragPt=null;_this.mCurrInputInfo=null;_this.mActiveMouseButton="none";return _this}eDwBaseOperator.prototype.onMouseDown=function(ioMouseEvent){_super.prototype.onMouseDown.call(this,ioMouseEvent);if(ioMouseEvent&&eDwKeyMgr_1.eDwKeyMgr.isAnyPressed(ioMouseEvent)){this.setMouse(ioMouseEvent);this.mActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(ioMouseEvent)}};eDwBaseOperator.prototype.onMouseMove=function(ioMouseEvent){_super.prototype.onMouseMove.call(this,ioMouseEvent);if(ioMouseEvent){var pos=ioMouseEvent.getPosition();if(this.mCurrInputInfo){var oldInputInfo=this.mCurrInputInfo;this.setMouse(ioMouseEvent);if(!oldInputInfo.DragPt.equals(this.mCurrInputInfo.DragPt)){this.mDragPt=this.mCurrInputInfo.DragPt}}console.debugLog("Operator","move screen pt = "+JSON.stringify(pos))}};eDwBaseOperator.prototype.onMouseUp=function(ioMouseEvent){_super.prototype.onMouseUp.call(this,ioMouseEvent);if(ioMouseEvent){this.mDragPt=null;this.mCurrInputInfo=null}this.mActiveMouseButton="none"};eDwBaseOperator.prototype.onTouchStart=function(ioTouchEvent){var _this=this;console.debugLog("TouchOp","Start - touch ID = "+ioTouchEvent.getId());_super.prototype.onTouchStart.call(this,ioTouchEvent);this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_9.HC.MouseInputType.Down,function(ioMouseEvent){_this.onMouseDown(ioMouseEvent)});this.addTouch(ioTouchEvent)};eDwBaseOperator.prototype.onTouchMove=function(ioTouchEvent){var _this=this;console.debugLog("TouchOp","Move - touch ID = "+ioTouchEvent.getId());_super.prototype.onTouchMove.call(this,ioTouchEvent);if(!this.hasTouchMoved(ioTouchEvent)){ioTouchEvent.setHandled(true);return}this.updateTouch(ioTouchEvent);this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_9.HC.MouseInputType.Move,function(ioMouseEvent){_this.onMouseMove(ioMouseEvent)})};eDwBaseOperator.prototype.onTouchEnd=function(ioTouchEvent){var _this=this;console.debugLog("TouchOp","End - touch ID = "+ioTouchEvent.getId());this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_9.HC.MouseInputType.Up,function(ioMouseEvent){_this.onMouseUp(ioMouseEvent)});ioTouchEvent.setHandled(false);_super.prototype.onTouchEnd.call(this,ioTouchEvent);this.removeTouchById(ioTouchEvent.getId())};eDwBaseOperator.prototype.onDeactivate=function(){_super.prototype.onDeactivate.call(this);this.mDragPt=null};eDwBaseOperator.getAsMouseEvent=function(iTouchEvent,iMouseInputType,iButton){if(iButton===void 0){iButton=eDwTypes_9.HC.Buttons.Left}if(iTouchEvent){var pos=iTouchEvent.getPosition();var mouseEvent=new eDwTypes_9.HC.Event.MouseInputEvent(pos.x,pos.y,eDwTypes_9.HC.Button.None,iButton,eDwTypes_9.HC.KeyModifiers.None,iMouseInputType);eDwBaseOperator.setPickResult(mouseEvent,eDwBaseOperator.getPickResult(iTouchEvent));mouseEvent.setHandled(iTouchEvent.getHandled());return mouseEvent}return null};eDwBaseOperator.getPickResult=function(iEvent){var selObjHC=null;var compPickResult=iEvent._getCompositePickResult();if(compPickResult){selObjHC=compPickResult.faceItem||compPickResult.lineItem||compPickResult.pointItem;if(selObjHC&&!eDwSelSubEntityUtils.getSubEntityInfo(selObjHC).SubEntity){selObjHC=null}}return selObjHC};eDwBaseOperator.setPickResult=function(iEvent,iSelObj){iEvent._setCompositePickResult(new eDwTypes_9.HC.Selection.Internal.CompositeSelectionItem(iSelObj,iSelObj,iSelObj))};eDwBaseOperator.prototype.wrapAndCallAsMouseEvent=function(ioTouchEvent,iInputType,iMouseFunc,iButton){if(iButton===void 0){iButton=eDwTypes_9.HC.Buttons.Left}var mouseEvent=eDwBaseOperator.getAsMouseEvent(ioTouchEvent,iInputType,iButton);if(mouseEvent){iMouseFunc(mouseEvent);ioTouchEvent.setHandled(mouseEvent.getHandled())}};eDwBaseOperator.prototype.addTouch=function(ioTouchEvent){if(!this.getTouchById(ioTouchEvent.getId())){this.mCurTouches.push({Event:ioTouchEvent,DragPt:eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.mViewer.getHCView()),Pos:ioTouchEvent.getPosition()})}};eDwBaseOperator.prototype.getTouchById=function(iTouchID){for(var i=0;i<this.mCurTouches.length;++i){if(iTouchID===this.mCurTouches[i].Event.getId()){return this.mCurTouches[i]}}return null};eDwBaseOperator.prototype.removeTouchById=function(iTouchID){var _this=this;var dumpTouch=function(){var touchIDs=[];for(var _i=0,_a=_this.mCurTouches;_i<_a.length;_i++){var touch=_a[_i];touchIDs.push(touch.Event.getId())}console.debugLog("TouchOp","touch IDs: "+JSON.stringify(touchIDs))};console.debugLog("TouchOp","Touch IDs before remove:");dumpTouch();for(var i=0;i<this.mCurTouches.length;++i){if(iTouchID===this.mCurTouches[i].Event.getId()){this.mCurTouches.splice(i,1);break}}console.debugLog("TouchOp","Touch IDs after remove:");dumpTouch()};eDwBaseOperator.prototype.hasTouchMoved=function(ioTouchEvent){if(!ioTouchEvent)return false;var touch=this.getTouchById(ioTouchEvent.getId());if(!touch)return false;var curPos=ioTouchEvent.getPosition();if(curPos.x!==Math.round(curPos.x)||curPos.y!==Math.round(curPos.y)){return false}var origPos=touch.Event.getPosition();var epsX=1,epsY=1;var delta=eDwTypes_9.HC.Point2.subtract(curPos,origPos);return Math.abs(delta.x)>epsX&&Math.abs(delta.y)>epsY};eDwBaseOperator.prototype.updateTouch=function(ioTouchEvent){var touch=this.getTouchById(ioTouchEvent.getId());if(touch){touch.Pos=ioTouchEvent.getPosition();touch.DragPt=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.mViewer.getHCView())}};eDwBaseOperator.prototype.isDragging=function(){return!!this.mDragPt};eDwBaseOperator.prototype.setMouse=function(ioMouseEvent){this.mCurrInputInfo={Event:ioMouseEvent,DragPt:eDwGeomUtils.screenToWorld(ioMouseEvent.getPosition(),this.mViewer.getHCView()),Pos:ioMouseEvent.getPosition()}};return eDwBaseOperator}(eDwTypes_9.HC.Operator.Operator);exports.eDwBaseOperator=eDwBaseOperator});define("eDwPerspectiveCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwPerspectiveCmd=function(_super){__extends(eDwPerspectiveCmd,_super);function eDwPerspectiveCmd(iViewer,iNewState){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=iViewer.getPerspectiveMode();_this.mFinallyActive=iNewState;return _this}eDwPerspectiveCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.setPerspectiveMode(this.mInitiallyActive);return true};eDwPerspectiveCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.setPerspectiveMode(this.mFinallyActive);return true};eDwPerspectiveCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.setPerspectiveMode(this.mFinallyActive)};Object.defineProperty(eDwPerspectiveCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwPerspectiveCmd}(eDwSupportsHistoryCmd);return eDwPerspectiveCmd});define("eDwResetCmd",["require","exports","eDwSupportsHistoryCmd","eDwEventMgr","eDwEvents"],function(require,exports,eDwSupportsHistoryCmd,eDwEventMgr,eDwEvents_3){"use strict";var eDwResetCmd=function(_super){__extends(eDwResetCmd,_super);function eDwResetCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mPerspective=iViewer.getPerspectiveMode();_this.mExplosionLevel=iViewer.getExplosionLevel();_this.mDrawMode=iViewer.getDrawMode();_this.mAmbientOcclusion=iViewer.getHCView().getAmbientOcclusionEnabled();_this.mCamera=iViewer.getHCView().getCamera();_this.resetToHome();return _this}eDwResetCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.resetToPrevious();return true};eDwResetCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.resetToHome();return true};eDwResetCmd.prototype.resetToHome=function(){return __awaiter(this,void 0,void 0,function(){var viewMgr;return __generator(this,function(_a){switch(_a.label){case 0:viewMgr=this.mViewer.ViewMgr;viewMgr.reset();this.mViewer.SelectionMgr.unSelectAllObjects();this.mViewer.OperatorMgr.resetToDefault();this.mViewer.setPerspectiveMode(false);return[4,this.mViewer.getModel().resetToDefault()];case 1:_a.sent();this.mViewer.setExplosionLevel(0);this.mViewer.resetDrawMode();this.mViewer.ViewMgr.enableAmbientOcclusion(false);eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,true);return[2]}})})};eDwResetCmd.prototype.resetToPrevious=function(){this.mViewer.setPerspectiveMode(this.mPerspective);this.mViewer.ViewMgr.setCamera(this.mCamera);this.mViewer.setExplosionLevel(this.mExplosionLevel);this.mViewer.setDrawMode(this.mDrawMode);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mAmbientOcclusion);eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,false)};return eDwResetCmd}(eDwSupportsHistoryCmd);return eDwResetCmd});define("eDwResultError",["require","exports","eDwBaseError"],function(require,exports,eDwBaseError){"use strict";var eDwResultError=function(_super){__extends(eDwResultError,_super);function eDwResultError(iResult){var _this=_super.call(this,"Result Error")||this;_this.Result=iResult;return _this}return eDwResultError}(eDwBaseError);return eDwResultError});define("eDwSectionFlipCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionFlipCmd=function(_super){__extends(eDwSectionFlipCmd,_super);function eDwSectionFlipCmd(iViewer){return _super.call(this,iViewer)||this}eDwSectionFlipCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.XSectionMgr.flipSectionPlane();return true};eDwSectionFlipCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.XSectionMgr.flipSectionPlane();return true};eDwSectionFlipCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.XSectionMgr.flipSectionPlane()};Object.defineProperty(eDwSectionFlipCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSectionFlipCmd}(eDwSupportsHistoryCmd);return eDwSectionFlipCmd});define("eDwSectionShowCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionShowCmd=function(_super){__extends(eDwSectionShowCmd,_super);function eDwSectionShowCmd(iViewer,iShow){var _this=_super.call(this,iViewer)||this;_this.mInitialShow=true;_this.mFinalShow=iShow;return _this}eDwSectionShowCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.XSectionMgr.SectionVisibility=this.mInitialShow;return true};eDwSectionShowCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return true};eDwSectionShowCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow};Object.defineProperty(eDwSectionShowCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSectionShowCmd}(eDwSupportsHistoryCmd);return eDwSectionShowCmd});define("eDwSelIsolateCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],function(require,exports,eDwTypes_10,eDwSupportsHistoryCmd){"use strict";var eDwSelIsolateCmd=function(_super){__extends(eDwSelIsolateCmd,_super);function eDwSelIsolateCmd(iViewer){return _super.call(this,iViewer)||this}eDwSelIsolateCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.setHierarchyNodeIDsAttribs(this.mInitialNodeIDsAttribs);this.mViewer.ViewMgr.setCamera(this.mInitialViewCamera);return true};eDwSelIsolateCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.setHierarchyNodeIDsAttribs(this.mFinalNodeIDsAttribs);this.mViewer.ViewMgr.setCamera(this.mFinalViewCamera);return true};eDwSelIsolateCmd.prototype.commit=function(){var _this=this;_super.prototype.commit.call(this);this.mInitialNodeIDsAttribs=this.getHierarchyNodesAttribs();var viewHC=this.mViewer.getHCView();this.mInitialViewCamera=viewHC.getCamera().copy();(function(){return __awaiter(_this,void 0,void 0,function(){var selMgr,selHierNodes,model,modelView,hierNodes,invisHierNodes,selHCIDs,modelHC,bbox;return __generator(this,function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;selHierNodes=selMgr.getSelHierarchyNodes();model=this.mViewer.getModel();modelView=model.getActiveModelView();hierNodes=modelView.getNodes();hierNodes.shift();invisHierNodes=hierNodes.filter(function(hierNode){return selHierNodes.indexOf(hierNode)===-1});return[4,model.setAttribOnHierNodes(invisHierNodes,{Visible:false})];case 1:_a.sent();selHCIDs=selMgr.getSelectableHCIDs();modelHC=this.mViewer.getModel().getHCModel();return[4,modelHC.getNodesBounding(selHCIDs)];case 2:bbox=_a.sent();if(!(bbox&&eDwTypes_10.HC.Point3.distance(bbox.max,bbox.min)>.001))return[3,4];return[4,this.mViewer.getHCView().isolateNodes(selHCIDs)];case 3:_a.sent();_a.label=4;case 4:this.mFinalNodeIDsAttribs=this.getHierarchyNodesAttribs();this.mFinalViewCamera=viewHC.getCamera().copy();return[2]}})})})()};eDwSelIsolateCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialViewCamera&&!!this.mFinalNodeIDsAttribs};Object.defineProperty(eDwSelIsolateCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSelIsolateCmd}(eDwSupportsHistoryCmd);return eDwSelIsolateCmd});define("eDwSelMgr",["require","exports","eDwSelectionOperator","eDwEventMgr","eDwKeyMgr","eDwTypes","eDwEvents","eDwSelSubEntityUtils","utils"],function(require,exports,eDwSelectionOperator,eDwEventMgr,eDwKeyMgr_2,eDwTypes_11,eDwEvents_4,eDwSelSubEntityUtils,utils){"use strict";var eDwSelMgr=function(){function eDwSelMgr(iViewer){iViewer.SelectionMgr=this;this.mViewer=iViewer;this.mHCSelMgr=iViewer.HCViewer.selectionManager;this.mSelectableHCObjs=[];var selectOp=new eDwSelectionOperator(iViewer,this);var opMgr=this.mViewer.OperatorMgr;this.mSelectOperatorID=opMgr.registerCustomOperator(selectOp,true);this.mSelectOverlayNotifiers={}}eDwSelMgr.prototype.setColorForViewMode=function(mode){var _this=this;var nodeSelColor;var nodeSelOutlineColor=new eDwTypes_11.HC.Color(0,255,0);var nodeElmtSelColor;var nodeElmtSelOutlineColor=new eDwTypes_11.HC.Color(255,255,0);var beautifulGreen=new eDwTypes_11.HC.Color(4,200,5);switch(mode){case eDwTypes_11.HC.DrawMode.WireframeOnShaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Shaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Wireframe:case eDwTypes_11.HC.DrawMode.HiddenLine:nodeSelColor=eDwTypes_11.HC.Color.white();nodeElmtSelColor=eDwTypes_11.HC.Color.white();break;default:var msg="Unknown draw mode: "+mode;console.debugLog("Selection",msg);throw new Error(msg)}this.mHCSelMgr.setNodeSelectionColor(nodeSelColor);this.mHCSelMgr.setNodeSelectionOutlineColor(nodeSelOutlineColor);this.mHCSelMgr.setNodeElementSelectionColor(nodeElmtSelColor);this.mHCSelMgr.setNodeElementSelectionOutlineColor(nodeElmtSelOutlineColor);if(this.mViewer.getModel().isDrawing()&&!this.mViewer.ViewerFeatureOpts.Debug){this.mHCSelMgr.setNodeSelectionHighlightMode(eDwTypes_11.HC.SelectionHighlightMode.OutlineOnly);(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.mHCSelMgr.setHighlightNodeSelection(false)];case 1:_a.sent();return[2]}})})})()}};eDwSelMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mSelectOperatorID);this.mViewer.SelectionMgr=null};eDwSelMgr.prototype.addSelectOverlayNotifier=function(iTypeIndex,iNotifier){if(!this.mSelectOverlayNotifiers[iTypeIndex]){this.mSelectOverlayNotifiers[iTypeIndex]=[]}this.mSelectOverlayNotifiers[iTypeIndex].push(iNotifier)};eDwSelMgr.prototype.removeSelectOverlayNotifier=function(iTypeIndex,iNotifier){var typeNotifiers=this.mSelectOverlayNotifiers[iTypeIndex];var pos=typeNotifiers.indexOf(iNotifier);if(pos>-1){typeNotifiers.splice(pos,1)}return false};eDwSelMgr.prototype.getSelectedNodeIDIndex=function(iHCNodeID){return this.getSelectableHCIDs().indexOf(iHCNodeID)};eDwSelMgr.prototype.onSelection=function(iPartSelectionEvent){var ctrlKeyDown=eDwKeyMgr_2.eDwKeyMgr.get().isDown("Control");var shiftKeyDown=eDwKeyMgr_2.eDwKeyMgr.get().isDown("Shift");var existingIdx=-1;var selObj=this.getHCSelectionObj(iPartSelectionEvent.getSelection());if(selObj){existingIdx=this.getSelectedNodeIDIndex(selObj.getNodeId())}if(this.mSelectableHCObjs.length>0&&!ctrlKeyDown&&!shiftKeyDown){this.unSelectAllObjects(false)}else if(ctrlKeyDown&&!shiftKeyDown&&existingIdx>-1&&selObj){this.mSelectableHCObjs.splice(existingIdx,1);this.unSelectObjs([selObj],this.mViewer.getModel().isDrawing());return}else if(!ctrlKeyDown&&shiftKeyDown&&existingIdx>-1&&selObj){return}if(selObj){this.addUniqueToSelectableHCObjs(selObj);eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[selObj]);l_debugDumpSelection(selObj.getNodeId(),selObj.getSelectionType())}};eDwSelMgr.prototype.selectByID=function(iID){return utils.isNumber(iID)?this.executeSelection(iID):false};eDwSelMgr.prototype.select=function(iCoords,iPickConfig){return __awaiter(this,void 0,void 0,function(){var pickCfg,viewHC,selObj,selectableObj;return __generator(this,function(_a){switch(_a.label){case 0:pickCfg=iPickConfig?iPickConfig:new eDwTypes_11.HC.PickConfig(eDwTypes_11.HC.SelectionMask.Face);viewHC=this.mViewer.getHCView();return[4,viewHC.pickFromPoint(iCoords,pickCfg)];case 1:selObj=_a.sent();selectableObj=this.getHCSelectionObj(selObj);if(this.isSelectionHandled(selObj)){return[2]}if(selectableObj){this.executeSelection(selectableObj)}else{this.mHCSelMgr.set(null)}return[2]}})})};eDwSelMgr.prototype.isSelected=function(iHCNodeID){return this.getSelectableHCIDs().indexOf(iHCNodeID)<0?false:true};eDwSelMgr.prototype.append=function(iSelObj){this.mHCSelMgr.add(iSelObj)};eDwSelMgr.prototype.unSelectAllObjects=function(iClearHCSelList){if(iClearHCSelList===void 0){iClearHCSelList=true}var unselectedHCObjs=this.mSelectableHCObjs;this.mSelectableHCObjs=[];this.unSelectObjs(unselectedHCObjs,this.mViewer.getModel().isDrawing());if(unselectedHCObjs.length>0&&iClearHCSelList){this.mHCSelMgr.selectNode(null)}};eDwSelMgr.prototype.setViewToSelectedFace=function(){var camera=null;var selObjs=this.mHCSelMgr.getResults();for(var _i=0,selObjs_1=selObjs;_i<selObjs_1.length;_i++){var selObj=selObjs_1[_i];var faceObj=selObj.getFaceEntity();if(faceObj){camera=this.mViewer.ViewMgr.setViewOrientationToDirection(faceObj.getNormal());break}}return camera};eDwSelMgr.prototype.getLastSelHCID=function(){var selHCIDs=this.getSelectableHCIDs();if(selHCIDs.length>0){return selHCIDs[selHCIDs.length-1]}return new RangeError("nothing selected")};eDwSelMgr.prototype.getSelHierarchyNodes=function(){var selHierNodes=[];var modelView=this.mViewer.getModel().getActiveModelView();var selHCIDs=this.getSelectableHCIDs();for(var _i=0,selHCIDs_1=selHCIDs;_i<selHCIDs_1.length;_i++){var selNodeID=selHCIDs_1[_i];selHierNodes.push(modelView.Nodes[selNodeID])}return selHierNodes};eDwSelMgr.prototype.getSelectableHCIDs=function(){return this.mSelectableHCObjs.map(function(selectionItem){return selectionItem.getNodeId()})};Object.defineProperty(eDwSelMgr.prototype,"length",{get:function(){return this.mSelectableHCObjs.length},enumerable:true,configurable:true});eDwSelMgr.prototype.isIDSelectable=function(iNodeIDHC){var modelView=this.mViewer.getModel().getActiveModelView();var hierNode=modelView?modelView.Nodes[iNodeIDHC]:null;return hierNode?hierNode.isSelectable():false};eDwSelMgr.prototype.setHighlightSelection=function(iType,iEnable){var _this=this;var highlighted;var selMgr=this.mHCSelMgr;if(iType==="NODE"){highlighted=selMgr.getHighlightNodeSelection();(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,selMgr.setHighlightNodeSelection(iEnable)];case 1:_a.sent();return[2]}})})})()}else if(iType==="FACE"){highlighted=selMgr.getHighlightFaceElementSelection();(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,selMgr.setHighlightFaceElementSelection(iEnable)];case 1:_a.sent();return[2]}})})})()}else if(iType==="EDGE"){highlighted=selMgr.getHighlightLineElementSelection();(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,selMgr.setHighlightLineElementSelection(iEnable)];case 1:_a.sent();return[2]}})})})()}else if(iType==="VERTEX"){highlighted=selMgr.getHighlightPointElementSelection();(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,selMgr.setHighlightPointElementSelection(iEnable)];case 1:_a.sent();return[2]}})})})()}else{console.debugLog("Selection","Unknown selection type: "+iType)}return highlighted};eDwSelMgr.prototype.setNodeSelectionHighlightMode=function(iSelHighlightMode){var mapping={};var revMapping={};this.initMappings(mapping,revMapping);this.mHCSelMgr.setNodeSelectionHighlightMode(mapping[iSelHighlightMode]);return revMapping[this.mHCSelMgr.getNodeSelectionHighlightMode()]};eDwSelMgr.prototype.setNodeSelectionColor=function(iColor){var oldColor=this.mHCSelMgr.getNodeSelectionColor();this.mHCSelMgr.setNodeSelectionColor(iColor);return oldColor};eDwSelMgr.prototype.setNodeSelectionOutlineColor=function(iColor){var oldColor=this.mHCSelMgr.getNodeSelectionOutlineColor();this.mHCSelMgr.setNodeSelectionOutlineColor(iColor);return oldColor};eDwSelMgr.prototype.setElementSelectionHighlightMode=function(iSelHighlightMode){var mapping={};var revMapping={};this.initMappings(mapping,revMapping);this.mHCSelMgr.setNodeElementSelectionHighlightMode(mapping[iSelHighlightMode]);return revMapping[this.mHCSelMgr.getNodeElementSelectionHighlightMode()]};eDwSelMgr.prototype.setElementSelectionColor=function(iColor){var oldColor=this.mHCSelMgr.getNodeElementSelectionColor();this.mHCSelMgr.setNodeElementSelectionColor(iColor);return oldColor};eDwSelMgr.prototype.setElementSelectionOutlineColor=function(iColor){var oldColor=this.mHCSelMgr.getNodeElementSelectionOutlineColor();this.mHCSelMgr.setNodeElementSelectionOutlineColor(iColor);return oldColor};eDwSelMgr.getSelObjFromPos=function(iPos,iPickConfig,iViewer){return __awaiter(this,void 0,void 0,function(){var selObj,subEntityInfo;return __generator(this,function(_a){switch(_a.label){case 0:return[4,iViewer.getHCView().pickFromPoint(iPos,iPickConfig)];case 1:selObj=_a.sent();subEntityInfo=eDwSelSubEntityUtils.getSubEntityInfo(selObj);return[2,subEntityInfo.SubEntity?selObj:null]}})})};eDwSelMgr.prototype.initMappings=function(ioMapping,ioRevMapping){var HCM=eDwTypes_11.HC.SelectionHighlightMode;ioRevMapping[ioMapping["Highlight"]=HCM.HighlightOnly]="Highlight";ioMapping["HighlightAndOutline"]=HCM.HighlightAndOutline;ioRevMapping[HCM.HighlightAndOutline]="HighlightAndOutline";ioRevMapping[ioMapping["Outline"]=HCM.OutlineOnly]="Outline"};eDwSelMgr.prototype.getHCSelectionObj=function(iSelObj){var hierNode=this.mViewer.getModel().getHierarchyNode(iSelObj.getNodeId());var selection=null;if(hierNode){selection=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID,iSelObj.getIncludeId(),iSelObj.getFaceEntity(),iSelObj.getLineEntity(),iSelObj.getPointEntity())}return selection};eDwSelMgr.prototype.isSelectionHandled=function(iSelObj){var notifiers=this.mSelectOverlayNotifiers[iSelObj.overlayIndex()];if(!notifiers)return false;for(var _i=0,notifiers_1=notifiers;_i<notifiers_1.length;_i++){var notifier=notifiers_1[_i];if(notifier.onSelect(iSelObj))return true}return false};eDwSelMgr.prototype.unSelectObjs=function(iSelObjs,iIs2D){var _this=this;eDwEventMgr.get().fireEvent(eDwEvents_4.UnselectEvent,this.mViewer,iSelObjs);if(iIs2D){var modelView=this.mViewer.getModel().getActiveModelView();var _loop_1=function(selObj){var node=modelView.Nodes[selObj.getNodeId()];if(node){(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,node.showBoundingBox(this.mViewer,"off")];case 1:_a.sent();return[2]}})})})()}};for(var _i=0,iSelObjs_1=iSelObjs;_i<iSelObjs_1.length;_i++){var selObj=iSelObjs_1[_i];_loop_1(selObj)}}};eDwSelMgr.prototype.addUniqueToSelectableHCObjs=function(iSelObj){if(this.mSelectableHCObjs.indexOf(iSelObj)<0){this.mSelectableHCObjs.push(iSelObj)}};eDwSelMgr.prototype.executeSelection=function(iSelection){var nodeIDHC;var selObjHC;if(utils.isNumber(iSelection)){nodeIDHC=iSelection}else{nodeIDHC=iSelection.getNodeId();if(!utils.isNumber(nodeIDHC))return false;selObjHC=iSelection}function selectHCNode(iSelModeHC){var _this=this;var model=this.mViewer.getModel();var modelView=model.getActiveModelView();var hierNode=modelView.Nodes[nodeIDHC];if(hierNode){if(this.mViewer.getModel().isDrawing()){var shown=false;var index=this.getSelectedNodeIDIndex(nodeIDHC);var setState=iSelModeHC===eDwTypes_11.HC.SelectionMode.Set;if(setState){if(index>-1)this.mSelectableHCObjs.splice(index,1);this.unSelectObjs(this.mSelectableHCObjs,true);this.mSelectableHCObjs=[];(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(this.mViewer,"on")];case 1:_a.sent();return[2]}})})})();shown=true}else{(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(this.mViewer,"toggle")];case 1:_a.sent();return[2]}})})})();shown=index>-1?false:true}if(shown){var selObjDupHC=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID);this.addUniqueToSelectableHCObjs(selObjDupHC);eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[selObjDupHC]);l_debugDumpSelection(selObjDupHC.getNodeId(),selObjDupHC.getSelectionType())}}else{if(!selObjHC){this.mHCSelMgr.selectNode(nodeIDHC,iSelModeHC)}else{if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Add){this.mHCSelMgr.add(selObjHC)}else if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Set){this.mHCSelMgr.set(selObjHC)}else{this.mHCSelMgr.toggle(selObjHC)}}}return eDwTypes_11.HC.SelectionType.Part}return eDwTypes_11.HC.SelectionType.None}var ret=false;try{var selType=eDwTypes_11.HC.SelectionType.None;if(!eDwKeyMgr_2.eDwKeyMgr.get().isDown("Control")&&!eDwKeyMgr_2.eDwKeyMgr.get().isDown("Shift")){selType=selectHCNode.call(this,eDwTypes_11.HC.SelectionMode.Set);ret=true}else{var existingIdx=this.getSelectedNodeIDIndex(nodeIDHC);if(existingIdx>-1){if(eDwKeyMgr_2.eDwKeyMgr.get().isDown("Control")){var toBeUnselected=this.mSelectableHCObjs[existingIdx];this.mHCSelMgr.remove(toBeUnselected)}else if(eDwKeyMgr_2.eDwKeyMgr.get().isDown("Shift")){ret=true}}else{selType=selectHCNode.call(this,eDwTypes_11.HC.SelectionMode.Add);if(this.getSelectedNodeIDIndex(nodeIDHC)>-1){ret=true}}}if(selType!==eDwTypes_11.HC.SelectionType.None){l_debugDumpSelection(nodeIDHC,selType)}}catch(iErr){console.log("eDwSelMgr.selectByID failed")}return ret};return eDwSelMgr}();function l_debugDumpSelection(iID,iSelType){console.debugLog("Selection","Selected Obj ID: "+iID+" - type: "+eDwTypes_11.HC.SelectionType[iSelType])}return eDwSelMgr});define("eDwSelSubEntityUtils",["require","exports","utils"],function(require,exports,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function getSubEntityInfo(iSelObjHC){if(!iSelObjHC)return undefined;var subEntity=null;var typeName="";var isSelectable=false;if(subEntity=iSelObjHC.getPointEntity()){typeName="Point";isSelectable=true}else if(subEntity=iSelObjHC.getLineEntity()){typeName="Line";var HCEdgeSelMeasure=4;if(getSubEntityBits(subEntity)&HCEdgeSelMeasure)isSelectable=true}else if(subEntity=iSelObjHC.getFaceEntity()){typeName="Face";var HCFaceSelMeasure=1;if(getSubEntityBits(subEntity)&HCFaceSelMeasure)isSelectable=true}var subEntityInfo={SubEntity:subEntity,SubEntityTypeName:typeName,IsSelectable:isSelectable};return subEntity?subEntityInfo:null}exports.getSubEntityInfo=getSubEntityInfo;function getSubEntityTypeName(iSubEntityType){if(!iSubEntityType)return"";return utils.getObjectTypeName(iSubEntityType).slice(0,-6)}exports.getSubEntityTypeName=getSubEntityTypeName;function getSubEntityID(iSubEntity){return iSubEntity?iSubEntity._elementIndex:NaN}exports.getSubEntityID=getSubEntityID;function getSubEntityBits(iSubEntity){return iSubEntity?iSubEntity._elementBits:NaN}exports.getSubEntityBits=getSubEntityBits});define("eDwSelectionOperator",["require","exports","eDwOperatorBaseDeps","eDwBaseSelOperator","eDwEventMgr","eDwEvents","eDwTypes","eDwGeomUtils","utils"],function(require,exports,eDwOperatorBaseDeps_2,eDwBaseSelOperator,eDwEventMgr,eDwEvents_5,eDwTypes_12,eDwGeomUtils,utils){"use strict";var eDwSelectionOperator=function(_super){__extends(eDwSelectionOperator,_super);function eDwSelectionOperator(iViewer,iSelMgr){var _this=_super.call(this,iViewer,iSelMgr)||this;_this.mDoPickTimeOutHandle=cUnselectableItem;_this.mCalloutTimeoutHandle=cUnselectableItem;_this.mNameCallout=null;_this.mSelObjIDHC=NaN;_this.mMousePosCopy=null;_super.prototype.pushHighlightSelectionState.call(_this,"NODE",true);_super.prototype.pushHighlightSelectionState.call(_this,"FACE",true);_super.prototype.pushHighlightSelectionState.call(_this,"EDGE",false);_super.prototype.pushHighlightSelectionState.call(_this,"VERTEX",false);_super.prototype.pushElementSelectionHighlightMode.call(_this,"HighlightAndOutline");return _this}eDwSelectionOperator.prototype.onMouseUp=function(ioMouseEvent){var selObjHC=eDwOperatorBaseDeps_2.eDwBaseOperator.getPickResult(ioMouseEvent);if(ioMouseEvent&&this.mCurrInputInfo&&!selObjHC){var handled=false;if(!ioMouseEvent.getHandled()&&!this.isDragging()){handled=this.onUp(ioMouseEvent.getPosition())}ioMouseEvent.setHandled(handled);_super.prototype.onMouseUp.call(this,ioMouseEvent)}};eDwSelectionOperator.prototype.onMouseDown=function(ioMouseEvent){if(ioMouseEvent){_super.prototype.onMouseDown.call(this,ioMouseEvent);ioMouseEvent.setHandled(this.onDown(ioMouseEvent.getPosition()))}};eDwSelectionOperator.prototype.onMouseMove=function(ioMouseEvent){var _this=this;if(ioMouseEvent){var pos=ioMouseEvent.getPosition();var activeOpID=this.mViewer.OperatorMgr.getActiveOperatorID();if(!this.mCurrInputInfo&&this.mViewer.getModel().isAssembly()&&activeOpID===this.OperatorID){this.mMousePosCopy=pos.copy();(function(){return __awaiter(_this,void 0,void 0,function(){var selItem,op;return __generator(this,function(_a){switch(_a.label){case 0:if(!this.mMousePosCopy)return[2];return[4,this.mViewer.getHCView().pickFromPoint(this.mMousePosCopy,new eDwTypes_12.HC.PickConfig(eDwTypes_12.HC.SelectionMask.Face))];case 1:selItem=_a.sent();this.mSelObjIDHC=selItem&&selItem.getNodeId()||cUnselectableItem;op=this;this.mCalloutTimeoutHandle=setTimeout(function(){op.updateCallout()},1e3);return[2]}})})})()}_super.prototype.onMouseMove.call(this,ioMouseEvent);ioMouseEvent.setHandled(this.onMove(pos))}};eDwSelectionOperator.prototype.onTouchStart=function(ioTouchEvent){if(!ioTouchEvent)return;_super.prototype.onTouchStart.call(this,ioTouchEvent);this.onDown(ioTouchEvent.getPosition())};eDwSelectionOperator.prototype.onTouchMove=function(ioTouchEvent){if(!ioTouchEvent)return;var pos=ioTouchEvent.getPosition();if(pos.x===Math.round(pos.x)&&pos.y===Math.round(pos.y)){_super.prototype.onTouchMove.call(this,ioTouchEvent)}};eDwSelectionOperator.prototype.onTouchEnd=function(ioTouchEvent){if(!ioTouchEvent)return;if(!this.hasTouchMoved(ioTouchEvent)){if(this.mCurTouches.length===1){var curTime=new Date;var startTime=new Date;var touchStart=this.getTouchById(ioTouchEvent.getId());if(touchStart){startTime=touchStart.Event.getDate()}this.mActiveMouseButton="left";if(curTime.getTime()-startTime.getTime()>1e3){this.mActiveMouseButton="right"}this.onUp(ioTouchEvent.getPosition());ioTouchEvent.setHandled(true)}else{ioTouchEvent.setHandled(false)}}_super.prototype.onTouchEnd.call(this,ioTouchEvent)};eDwSelectionOperator.prototype.updateCallout=function(){if(this.mCurrInputInfo||!this.mMousePosCopy){return}var isSameID=this.mNameCallout?this.mNameCallout.isSameID(this.mSelObjIDHC):false;if(isSameID)return;var markupMgrHC=this.mViewer.getHCMarkupManager();try{if(this.mNameCallout){markupMgrHC.unregisterMarkup(this.mNameCallout.MarkupID);this.mNameCallout=null;if(utils.isNumber(this.mCalloutTimeoutHandle)){clearTimeout(this.mCalloutTimeoutHandle);this.mCalloutTimeoutHandle=NaN}}if(utils.isNumber(this.mSelObjIDHC)){var model=this.mViewer.getModel();var hierNode=model.getHierarchyNode(this.mSelObjIDHC);if(!hierNode)return;var name_1=hierNode.Name?hierNode.Name:cDefaultModelName;var pos=eDwTypes_12.HC.Point2.add(this.mMousePosCopy.copy(),new eDwTypes_12.HC.Point2(0,20));this.mNameCallout=new NameCallout(this.mViewer,this.mSelObjIDHC,name_1,pos);this.mNameCallout.MarkupID=markupMgrHC.registerMarkup(this.mNameCallout)}}catch(iExcp){this.mNameCallout=null}markupMgrHC.refreshMarkup()};eDwSelectionOperator.prototype.doPick=function(iCoords){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(!this.mViewer.getModel().isDrawing())return[3,2];return[4,this.doPickInDrawing(iCoords)];case 1:_a.sent();return[3,4];case 2:return[4,this.doPickIn3D(iCoords)];case 3:_a.sent();_a.label=4;case 4:return[2]}})})};eDwSelectionOperator.prototype.doPickIn3D=function(iCoords){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.mViewer.SelectionMgr.select(iCoords)];case 1:_a.sent();return[2]}})})};eDwSelectionOperator.prototype.doPickInDrawing=function(iCoords){return __awaiter(this,void 0,void 0,function(){var model,modelHC,pickConfig,activeSheetHierNode,childHierarchyMap,children,viewHCIDs,i,currentNode,selItem,hierNode,_i,viewHCIDs_1,viewHCID,bbox,selPt3D,_a;return __generator(this,function(_b){switch(_b.label){case 0:model=this.mViewer.getModel();modelHC=model.getHCModel();pickConfig=new eDwTypes_12.HC.PickConfig(eDwTypes_12.HC.SelectionMask.All);activeSheetHierNode=model.getActiveModelView();childHierarchyMap=activeSheetHierNode.Hierarchy.getChildren();children=Object.keys(childHierarchyMap);viewHCIDs=[];for(i=children.length-1;i>-1;--i){currentNode=childHierarchyMap[children[i]];viewHCIDs.push(currentNode.HOOPSID)}return[4,this.mViewer.getHCView().pickFromPoint(iCoords,pickConfig)];case 1:selItem=_b.sent();if(!("undefined"===typeof selItem||!selItem.getNodeId()))return[3,3];return[4,this.doPickIn3D(iCoords)];case 2:_b.sent();_b.label=3;case 3:hierNode=model.getHierarchyNode(selItem.getNodeId());if(!hierNode)return[3,4];if(viewHCIDs.indexOf(hierNode.HOOPSID)>-1){this.mViewer.SelectionMgr.selectByID(hierNode.HOOPSID)}return[3,10];case 4:_i=0,viewHCIDs_1=viewHCIDs;_b.label=5;case 5:if(!(_i<viewHCIDs_1.length))return[3,10];viewHCID=viewHCIDs_1[_i];_b.label=6;case 6:_b.trys.push([6,8,,9]);return[4,modelHC.getNodesBounding([viewHCID])];case 7:bbox=_b.sent();selPt3D=this.mViewer.getHCView().unprojectPoint(iCoords,0);selPt3D.z=bbox.center().z;if(eDwGeomUtils.isPoint3DInBox(selPt3D,bbox)){this.mViewer.SelectionMgr.selectByID(viewHCID);return[3,10]}return[3,9];case 8:_a=_b.sent();return[3,9];case 9:_i++;return[3,5];case 10:return[2]}})})};eDwSelectionOperator.prototype.clearPickTimeOut=function(){if(this.mDoPickTimeOutHandle){clearTimeout(this.mDoPickTimeOutHandle);this.mDoPickTimeOutHandle=null}};eDwSelectionOperator.prototype.onUp=function(iCoord){var _this=this;var eventMgr=eDwEventMgr.get();if(this.mActiveMouseButton==="left"){(function(){return __awaiter(_this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.doPick(iCoord)];case 1:_a.sent();if(!this.mDoPickTimeOutHandle){this.mDoPickTimeOutHandle=setTimeout(function(){_this.clearPickTimeOut();eventMgr.fireEvent(eDwEvents_5.LeftClickEvent,_this.mViewer,iCoord)},500)}else{this.clearPickTimeOut();eventMgr.fireEvent(eDwEvents_5.LeftDoubleClickEvent,this.mViewer,iCoord)}return[2]}})})})();return true}else if(this.mActiveMouseButton==="middle"){this.clearPickTimeOut();eventMgr.fireEvent(eDwEvents_5.MiddleClickEvent,this.mViewer,iCoord);return true}else if(this.mActiveMouseButton==="right"){(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:this.clearPickTimeOut();return[4,this.doPick(iCoord)];case 1:_a.sent();eventMgr.fireEvent(eDwEvents_5.RightClickEvent,this.mViewer,iCoord);return[2]}})})})();return true}return false};eDwSelectionOperator.prototype.onDown=function(iCoord){var handled=false;var isDrawing=this.mViewer.getModel().isDrawing();if(isDrawing&&!(isDrawing&&this.mActiveMouseButton==="right")){handled=true}return handled};eDwSelectionOperator.prototype.onMove=function(iCoord){return!this.mCurrInputInfo};return eDwSelectionOperator}(eDwBaseSelOperator);var NameCallout=function(_super){__extends(NameCallout,_super);function NameCallout(iVewer,iSelObjIDHC,iText,iPos){var _this=_super.call(this)||this;_this.mViewer=iVewer;_this.mTextBox=new eDwTypes_12.HC.Markup.Shape.TextBox;_this.mTextBox.getBoxPortion().setFillColor(eDwTypes_12.HC.Color.white());_this.mTextBox.getBoxPortion().setFillOpacity(1);_this.mMarkupID="";_this.mSelObjIDHC=iSelObjIDHC;_this.mTextBox.setPosition(iPos);_this.mTextBox.setTextString(iText);return _this}NameCallout.prototype.draw=function(){var str=this.mTextBox.getTextString();if(str==="")return;var renderer=this.mViewer.getHCMarkupManager().getRenderer();renderer.drawTextBox(this.mTextBox)};NameCallout.prototype.isSameID=function(iSelObjIDHC){return this.mSelObjIDHC===iSelObjIDHC||isNaN(iSelObjIDHC)&&isNaN(this.mSelObjIDHC)?true:false};Object.defineProperty(NameCallout.prototype,"MarkupID",{get:function(){return this.mMarkupID},set:function(iMarkupID){this.mMarkupID=iMarkupID},enumerable:true,configurable:true});return NameCallout}(eDwTypes_12.HC.Markup.MarkupItem);var cUnselectableItem=NaN;var cDefaultModelName="???";return eDwSelectionOperator});define("eDwServiceMgr",["require","exports"],function(require,exports){"use strict";var eDwServiceMgr=function(){function eDwServiceMgr(iServerURL,iDisable){this.mServerURL=iServerURL.replace(/(\/*)$/,"");this.mAdvancedServicesDisabled=iDisable;this.mPluginFiles=[];this.mBaseCacheDirs=null}eDwServiceMgr.create=function(iServerURL,iDisable){if(iDisable===void 0){iDisable=false}if(!eDwServiceMgr.sServiceMgr){eDwServiceMgr.sServiceMgr=new eDwServiceMgr(iServerURL,iDisable)}};eDwServiceMgr.get=function(){return eDwServiceMgr.sServiceMgr};eDwServiceMgr.usesWebServices=function(){return location.protocol.indexOf("http")<0?false:true};eDwServiceMgr.prototype.disableAdvancedServices=function(iDisable){if(iDisable===void 0){iDisable=true}this.mAdvancedServicesDisabled=iDisable};eDwServiceMgr.prototype.getFileFromServer=function(iFileURL,iLoadAsNativeType){if(iLoadAsNativeType===void 0){iLoadAsNativeType=false}return __awaiter(this,void 0,void 0,function(){var jqNativePlugin,_a,iExcp_6;return __generator(this,function(_b){switch(_b.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,null];_b.label=1;case 1:_b.trys.push([1,6,,7]);jqNativePlugin=$;if(!iLoadAsNativeType)return[3,3];return[4,jqNativePlugin.getNative(iFileURL)];case 2:_a=_b.sent();return[3,5];case 3:return[4,$.get(iFileURL)];case 4:_a=_b.sent();_b.label=5;case 5:return[2,_a];case 6:iExcp_6=_b.sent();return[3,7];case 7:return[2,null]}})})};eDwServiceMgr.prototype.getFileFromServerModelCache=function(iModelKey,iFileName){return __awaiter(this,void 0,void 0,function(){var fileInfo,baseCacheDirs,_i,baseCacheDirs_1,dir,fileURL,_a,iExcp_7;return __generator(this,function(_b){switch(_b.label){case 0:fileInfo={Path:""};if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2,fileInfo]}return[4,this.getBaseCacheDirs()];case 1:baseCacheDirs=_b.sent();_i=0,baseCacheDirs_1=baseCacheDirs;_b.label=2;case 2:if(!(_i<baseCacheDirs_1.length))return[3,7];dir=baseCacheDirs_1[_i];fileURL=dir+"/"+iModelKey+"/"+iFileName;_b.label=3;case 3:_b.trys.push([3,5,,6]);_a=fileInfo;return[4,this.getFileFromServer(fileURL)];case 4:_a.Data=_b.sent();fileInfo.Path=this.mServerURL+"/"+fileURL;return[2,fileInfo];case 5:iExcp_7=_b.sent();return[3,6];case 6:_i++;return[3,2];case 7:return[2,fileInfo]}})})};eDwServiceMgr.prototype.getClientPublicIP=function(iGetClientPublicIP){return __awaiter(this,void 0,void 0,function(){var ret,iExcp_8;return __generator(this,function(_a){switch(_a.label){case 0:if(!iGetClientPublicIP||this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2,"0.0.0.0"]}if(!iGetClientPublicIP||this.mAdvancedServicesDisabled)return[2,""];ret="";_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.get("https://api.ipify.org","",$.noop(),"text")];case 2:ret=_a.sent();return[3,4];case 3:iExcp_8=_a.sent();console.warn("Failed to get client public IP: "+iExcp_8.name+" - "+iExcp_8.message);if(!iExcp_8.message){iExcp_8.message="Possible CORS failure. See the browser "+"console output for more details."}throw iExcp_8;case 4:return[2,ret]}})})};eDwServiceMgr.prototype.convert=function(ioParams){return __awaiter(this,void 0,void 0,function(){var result,clientIP,params;return __generator(this,function(_a){switch(_a.label){case 0:result={FileName:ioParams.URL,ModelCacheName:"",ErrorCode:"",ErrorData:[],ServerID:"",LicenseKey:""};if(!(ioParams.URL.indexOf("http")===0&&!this.mAdvancedServicesDisabled&&eDwServiceMgr.usesWebServices()))return[3,3];return[4,this.getClientPublicIP(ioParams.ValidateClientIP)];case 1:clientIP=_a.sent();params={data:{iFileURL:ioParams.URL},headers:{"X-Forwarded-For":clientIP},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/Conversion",params)];case 2:result=_a.sent();return[3,4];case 3:ioParams.URL="";_a.label=4;case 4:return[2,result]}})})};eDwServiceMgr.prototype.removeNamedCache=function(iModelKey,iAllowRemove){return __awaiter(this,void 0,void 0,function(){var iExcp_9;return __generator(this,function(_a){switch(_a.label){case 0:if(!iAllowRemove||this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,this.ajax("GET","EDrawingsService.svc/RemoveNamedCache",{data:{iModelKey:iModelKey}})];case 2:_a.sent();return[3,4];case 3:iExcp_9=_a.sent();console.warn("Could not remove the cache: "+iModelKey);console.warn(iExcp_9.message);throw iExcp_9;case 4:return[2]}})})};eDwServiceMgr.prototype.getWebSocketEndpoint=function(iModelKey,iWSEndPt){return __awaiter(this,void 0,void 0,function(){var params,ws,iExpc_1;return __generator(this,function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2,""]}if(iWSEndPt){this.disableAdvancedServices();return[2,iWSEndPt]}params={data:{iModelCacheName:iModelKey},cache:false};ws="";_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,this.ajax("GET","EDrawingsService.svc/GetWSEndpoint",params)];case 2:ws=_a.sent();return[3,4];case 3:iExpc_1=_a.sent();console.warn("Cannot get WebSocket.");return[3,4];case 4:return[2,ws]}})})};eDwServiceMgr.prototype.load=function(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,function(){var loadedHTML;return __generator(this,function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2];return[4,this.ajax("GET",iPanelHTML,{dataType:"html"})];case 1:loadedHTML=_a.sent();$(iElemOrClassID).html(loadedHTML);return[2]}})})};eDwServiceMgr.prototype.fileUpload=function(iJQObj,iParams){if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return}var paramsObj={url:this.mServerURL+"/EDrawingsService.svc/FileUploadConversion"};if(iParams)$.extend(paramsObj,iParams);iJQObj.fileupload(paramsObj)};eDwServiceMgr.prototype.importDependencies=function(iPluginKeyNames){return __awaiter(this,void 0,void 0,function(){var pluginFiles,_i,iPluginKeyNames_1,pluginKeyName,pluginFileName;return __generator(this,function(_a){switch(_a.label){case 0:pluginFiles=[];_i=0,iPluginKeyNames_1=iPluginKeyNames;_a.label=1;case 1:if(!(_i<iPluginKeyNames_1.length))return[3,4];pluginKeyName=iPluginKeyNames_1[_i];return[4,this.getValidPluginFileName(pluginKeyName)];case 2:pluginFileName=_a.sent();if(pluginFileName)pluginFiles.push(pluginFileName);_a.label=3;case 3:_i++;return[3,1];case 4:return[2,pluginFiles.length?this.importPlugins(pluginFiles):[]]}})})};eDwServiceMgr.prototype.importPlugins=function(iPluginNames){return __awaiter(this,void 0,void 0,function(){var pluginNames,importedPluginPromises,pluginFiles,_a,_i,pluginFiles_2,pluginFile,pluginName,iExcp_10;return __generator(this,function(_b){switch(_b.label){case 0:pluginNames=[];importedPluginPromises=[];_b.label=1;case 1:_b.trys.push([1,5,,6]);_a=iPluginNames;if(_a)return[3,3];return[4,this.getPluginFiles()];case 2:_a=_b.sent();_b.label=3;case 3:pluginFiles=_a;for(_i=0,pluginFiles_2=pluginFiles;_i<pluginFiles_2.length;_i++){pluginFile=pluginFiles_2[_i];try{pluginName=this.importPlugin(pluginFile);if(pluginName){importedPluginPromises.push(pluginName)}}catch(iExcp){console.warn("Plugin failed to load: "+iExcp.message)}}return[4,Promise.all(importedPluginPromises).then(function(iPluginClassNames){pluginNames=iPluginClassNames})];case 4:_b.sent();return[3,6];case 5:iExcp_10=_b.sent();console.warn("Failed to find any external plugins - "+iExcp_10.message);return[3,6];case 6:return[2,pluginNames]}})})};eDwServiceMgr.prototype.importPlugin=function(iPluginFile){return __awaiter(this,void 0,void 0,function(){var pluginName,script,matches,iExcp_11;return __generator(this,function(_a){switch(_a.label){case 0:pluginName="";if(!eDwServiceMgr.usesWebServices())return[2,pluginName];_a.label=1;case 1:_a.trys.push([1,4,,5]);return[4,new Promise(function(resolve_1,reject_1){require([iPluginFile],resolve_1,reject_1)})];case 2:_a.sent();return[4,$.getScript(iPluginFile)];case 3:script=_a.sent();matches=script.match(/return ([a-z,A-Z,0-9,-,_,.]*Plugin)/);if(matches&&matches.length>0){pluginName=matches[1]}else{console.warn("Could not locate external plugin name in file "+iPluginFile)}return[3,5];case 4:iExcp_11=_a.sent();console.warn("Failed to load external plugin - "+iExcp_11.message);return[3,5];case 5:return[2,pluginName]}})})};eDwServiceMgr.prototype.getPluginFiles=function(){return __awaiter(this,void 0,void 0,function(){var _a,_b,iExcp_12;return __generator(this,function(_c){switch(_c.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,this.mPluginFiles];if(!!this.mPluginFiles.length)return[3,7];_c.label=1;case 1:_c.trys.push([1,6,,7]);if(!this.mAdvancedServicesDisabled)return[3,3];console.debugLog("ServiceMgr","Loading static plugin list");_a=this;return[4,this.ajax("GET","js/staticPluginList.json",{})];case 2:_a.mPluginFiles=_c.sent();return[3,5];case 3:console.debugLog("ServiceMgr","Finding plugins...");_b=this;return[4,this.ajax("GET","EDrawingsService.svc/GetPlugins",{})];case 4:_b.mPluginFiles=_c.sent();_c.label=5;case 5:return[3,7];case 6:iExcp_12=_c.sent();console.warn("No plugins available.");return[3,7];case 7:return[2,this.mPluginFiles]}})})};eDwServiceMgr.prototype.extendLicense=function(iKey){return __awaiter(this,void 0,void 0,function(){var params;return __generator(this,function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}params={data:{iKey:iKey},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/ExtendLicense",params)];case 1:_a.sent();return[2]}})})};eDwServiceMgr.prototype.getBaseCacheDirs=function(){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:if(!(this.mBaseCacheDirs===null))return[3,2];this.mBaseCacheDirs=[];this.mGetBaseCacheDirsPromise=$.get("cacheDirs.xml",function(iDoc){var cacheDirs=iDoc.getElementsByTagName("modelSearchDirectory");var numDirs=cacheDirs.length;for(var i=0;i<numDirs;++i){var cacheDir=cacheDirs[i].textContent.split("/").pop();_this.mBaseCacheDirs.push(cacheDir);console.debugLog("ServiceMgr","Added cache dir: "+cacheDir)}},"xml").fail(function(iJQXHR,iStatus,iError){console.warn("Could not get model cache directories: "+iStatus+": "+iError)});return[4,this.mGetBaseCacheDirsPromise];case 1:_a.sent();return[3,4];case 2:return[4,this.mGetBaseCacheDirsPromise];case 3:_a.sent();_a.label=4;case 4:return[2,this.mBaseCacheDirs]}})})};eDwServiceMgr.prototype.getValidPluginFileName=function(iPluginKey){return __awaiter(this,void 0,void 0,function(){var allPluginFileNames,foundPluginFileName,_i,allPluginFileNames_1,pluginFileName;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.getPluginFiles()];case 1:allPluginFileNames=_a.sent();foundPluginFileName="";for(_i=0,allPluginFileNames_1=allPluginFileNames;_i<allPluginFileNames_1.length;_i++){pluginFileName=allPluginFileNames_1[_i];if(pluginFileName.indexOf("/"+iPluginKey+".")>-1){foundPluginFileName=pluginFileName}}return[2,foundPluginFileName]}})})};eDwServiceMgr.prototype.ajax=function(iMethod,iService,iParams){return __awaiter(this,void 0,void 0,function(){var paramsObj,retAJAX,iExcp_13;return __generator(this,function(_a){switch(_a.label){case 0:paramsObj={type:iMethod,url:this.mServerURL+"/"+iService,async:true};if(iParams)$.extend(paramsObj,iParams);_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.ajax(paramsObj)];case 2:retAJAX=_a.sent();return[3,4];case 3:iExcp_13=_a.sent();console.warn("AJAX "+iMethod+" failed for "+iService+": "+iExcp_13.message);throw iExcp_13;case 4:return[2,retAJAX]}})})};return eDwServiceMgr}();return eDwServiceMgr});define("eDwSetHierNodeAttribsCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetHierNodeAttribsCmd=function(_super){__extends(eDwSetHierNodeAttribsCmd,_super);function eDwSetHierNodeAttribsCmd(iViewer,iHierNodes,iAttrib){var _this=_super.call(this,iViewer)||this;_this.mInitialHierNodeAttribs=[];_this.mFinalHierNodeAttribs=[];var finalAttrib=$.extend(true,{},iAttrib);for(var _i=0,iHierNodes_2=iHierNodes;_i<iHierNodes_2.length;_i++){var hierNode=iHierNodes_2[_i];var initialAttrib=$.extend(true,{},hierNode.getAttribs());_this.mInitialHierNodeAttribs.push({HierNode:hierNode,Attribs:initialAttrib});_this.mFinalHierNodeAttribs.push({HierNode:hierNode,Attribs:finalAttrib})}return _this}eDwSetHierNodeAttribsCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.getModel().setAttribs(this.mInitialHierNodeAttribs);return true};eDwSetHierNodeAttribsCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.getModel().setAttribs(this.mFinalHierNodeAttribs);return true};eDwSetHierNodeAttribsCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.getModel().setAttribs(this.mFinalHierNodeAttribs)};Object.defineProperty(eDwSetHierNodeAttribsCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSetHierNodeAttribsCmd}(eDwSupportsHistoryCmd);return eDwSetHierNodeAttribsCmd});define("eDwSetNodeVisibilityCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetNodeVisibilityCmd=function(_super){__extends(eDwSetNodeVisibilityCmd,_super);function eDwSetNodeVisibilityCmd(iViewer,iNodeIDs,iVisible){var _this=_super.call(this,iViewer)||this;_this.mNodeIDs=iNodeIDs;_this.mVisible=iVisible;var modelHC=_this.mViewer.getModel().getHCModel();_this.mNodeIDVisMap={};for(var _i=0,iNodeIDs_1=iNodeIDs;_i<iNodeIDs_1.length;_i++){var nodeID=iNodeIDs_1[_i];_this.mNodeIDVisMap[nodeID]=modelHC.getNodeVisibility(nodeID)}return _this}eDwSetNodeVisibilityCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;var modelHC=this.mViewer.getModel().getHCModel();modelHC.setNodesVisibilities(this.mNodeIDVisMap);return true};eDwSetNodeVisibilityCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;var modelHC=this.mViewer.getModel().getHCModel();modelHC.setNodesVisibility(this.mNodeIDs,this.mVisible);return true};eDwSetNodeVisibilityCmd.prototype.commit=function(){_super.prototype.commit.call(this);var modelHC=this.mViewer.getModel().getHCModel();modelHC.setNodesVisibility(this.mNodeIDs,this.mVisible)};Object.defineProperty(eDwSetNodeVisibilityCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSetNodeVisibilityCmd}(eDwSupportsHistoryCmd);return eDwSetNodeVisibilityCmd});define("eDwSetViewCameraCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetViewCameraCmd=function(_super){__extends(eDwSetViewCameraCmd,_super);function eDwSetViewCameraCmd(iViewer){return _super.call(this,iViewer)||this}eDwSetViewCameraCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mInitialViewCamera);return true};eDwSetViewCameraCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mFinalViewCamera);return true};eDwSetViewCameraCmd.prototype.commit=function(){if(this.mViewer.getModel().isDrawing())return;_super.prototype.commit.call(this);var viewHC=this.mViewer.getHCView();this.mInitialViewCamera=viewHC.getCamera();this.mFinalViewCamera=this.setView()};eDwSetViewCameraCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialViewCamera&&!!this.mFinalViewCamera};Object.defineProperty(eDwSetViewCameraCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});eDwSetViewCameraCmd.prototype.setView=function(){return this.mViewer.SelectionMgr.setViewToSelectedFace()};return eDwSetViewCameraCmd}(eDwSupportsHistoryCmd);return eDwSetViewCameraCmd});define("eDwSetViewCmd",["require","exports","eDwSetViewCameraCmd"],function(require,exports,eDwSetViewCameraCmd){"use strict";var eDwSetViewCmd=function(_super){__extends(eDwSetViewCmd,_super);function eDwSetViewCmd(iViewer,iOrientation){var _this=_super.call(this,iViewer)||this;_this.mViewOrientation=iOrientation;return _this}eDwSetViewCmd.prototype.setView=function(){return this.mViewer.ViewMgr.setViewOrientation(this.mViewOrientation)};return eDwSetViewCmd}(eDwSetViewCameraCmd);return eDwSetViewCmd});define("eDwSetViewNormalToSectionCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetViewNormalToSectionCmd=function(_super){__extends(eDwSetViewNormalToSectionCmd,_super);function eDwSetViewNormalToSectionCmd(iViewer){return _super.call(this,iViewer)||this}eDwSetViewNormalToSectionCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return true};eDwSetViewNormalToSectionCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return true};eDwSetViewNormalToSectionCmd.prototype.commit=function(){_super.prototype.commit.call(this);var viewHC=this.mViewer.getHCView();this.mInitialCamera=viewHC.getCamera();this.mFinalCamera=this.mViewer.XSectionMgr.setViewToSectionPlane()};Object.defineProperty(eDwSetViewNormalToSectionCmd.prototype,"Committed",{get:function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialCamera&&!!this.mFinalCamera},enumerable:true,configurable:true});Object.defineProperty(eDwSetViewNormalToSectionCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwSetViewNormalToSectionCmd}(eDwSupportsHistoryCmd);return eDwSetViewNormalToSectionCmd});define("eDwShowSectionCapCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwShowSectionCapCmd=function(_super){__extends(eDwShowSectionCapCmd,_super);function eDwShowSectionCapCmd(iViewer,iVisible){var _this=_super.call(this,iViewer)||this;_this.mInitialVisibility=_this.mViewer.XSectionMgr.SectionCapVisibility;_this.mFinalVisibility=iVisible;return _this}eDwShowSectionCapCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.XSectionMgr.SectionCapVisibility=this.mInitialVisibility;return true};eDwShowSectionCapCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.XSectionMgr.SectionCapVisibility=this.mFinalVisibility;return true};eDwShowSectionCapCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.XSectionMgr.SectionCapVisibility=this.mFinalVisibility};Object.defineProperty(eDwShowSectionCapCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwShowSectionCapCmd}(eDwSupportsHistoryCmd);return eDwShowSectionCapCmd});define("eDwSupportsHistoryCmd",["require","exports","eDwHistoryMgr","eDwCmd"],function(require,exports,eDwHistoryMgr,eDwCmd){"use strict";var eDwSupportsHistoryCmd=function(_super){__extends(eDwSupportsHistoryCmd,_super);function eDwSupportsHistoryCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mAddedToHistory=false;_this.mUndone=false;return _this}eDwSupportsHistoryCmd.prototype.undo=function(){var ret=this.isCommitted()&&!this.isUndone();this.mUndone=true;return ret};eDwSupportsHistoryCmd.prototype.redo=function(){var ret=this.isCommitted()&&this.isUndone();this.mUndone=false;return ret};eDwSupportsHistoryCmd.prototype.commit=function(){_super.prototype.commit.call(this);eDwHistoryMgr.get().push(this);this.mAddedToHistory=true};eDwSupportsHistoryCmd.prototype.cancel=function(){_super.prototype.cancel.call(this)};eDwSupportsHistoryCmd.prototype.isCommitted=function(){return this.mAddedToHistory};eDwSupportsHistoryCmd.prototype.isUndone=function(){return this.mUndone};return eDwSupportsHistoryCmd}(eDwCmd);return eDwSupportsHistoryCmd});define("eDwTableMgr",["require","exports","eDwTypes"],function(require,exports,eDwTypes_13){"use strict";var eDwTableMgr=function(){function eDwTableMgr(iViewer){this.mViewer=iViewer;this.mTables=[]}eDwTableMgr.prototype.numTables=function(){return this.mTables.length};eDwTableMgr.prototype.getTables=function(){return this.mTables};eDwTableMgr.prototype.add=function(iHierNode){if(!iHierNode&&iHierNode.Category!=="table")return;this.mTables.push(iHierNode);var attribs=iHierNode.getAttribs();if(attribs.NotesArea===true){this.mViewer.getModel().getHCModel().setInstanceModifier(eDwTypes_13.HC.InstanceModifier.ScreenOriented,[iHierNode.HOOPSID],true)}};return eDwTableMgr}();return eDwTableMgr});define("eDwTimer",["require","exports"],function(require,exports){"use strict";var eDwTimer=function(){function eDwTimer(){this.start()}eDwTimer.prototype.start=function(){this.mMilliSeconds=0;this.mSeconds=0;this.mMinutes=0;this.mHours=0;this.mDays=0;this.mStart=new Date};eDwTimer.prototype.ellapsed=function(){var endDate=new Date;var timeDiff=endDate.valueOf()-this.mStart.valueOf();this.mMilliSeconds=Math.round(timeDiff%1e3);timeDiff=Math.floor(timeDiff/1e3);this.mSeconds=Math.round(timeDiff%60);timeDiff=Math.floor(timeDiff/60);this.mMinutes=Math.round(timeDiff%60);timeDiff=Math.floor(timeDiff/60);this.mHours=Math.round(timeDiff%24);this.mDays=Math.floor(timeDiff/24)};eDwTimer.prototype.dumpToConsole=function(){console.debugLog("Timer","Elapsed time = "+this.mDays+" days - "+this.mHours+":"+this.mMinutes+":"+this.mSeconds+" and "+this.mMilliSeconds+" milliseconds")};Object.defineProperty(eDwTimer.prototype,"Days",{get:function(){return this.mDays},enumerable:true,configurable:true});Object.defineProperty(eDwTimer.prototype,"Hours",{get:function(){return this.mHours},enumerable:true,configurable:true});Object.defineProperty(eDwTimer.prototype,"Minutes",{get:function(){return this.mMinutes},enumerable:true,configurable:true});Object.defineProperty(eDwTimer.prototype,"Seconds",{get:function(){return this.mSeconds},enumerable:true,configurable:true});Object.defineProperty(eDwTimer.prototype,"MilliSeconds",{get:function(){return this.mMilliSeconds},enumerable:true,configurable:true});return eDwTimer}();return eDwTimer});define("eDwTouchOpsMgr",["require","exports","utils"],function(require,exports,utils){"use strict";var eDwTouchOpsMgr=function(){function eDwTouchOpsMgr(iViewer){iViewer.TouchOpsMgr=this;this.mViewer=iViewer}eDwTouchOpsMgr.prototype.unregister=function(){if(!eDwTouchOpsMgr.isTouchEnabled())return;for(var _i=0,_a=this.mTouchOpIDs;_i<_a.length;_i++){var touchOpID=_a[_i];this.mViewer.OperatorMgr.unregisterCustomOperatorByID(touchOpID)}this.mViewer.TouchOpsMgr=null};eDwTouchOpsMgr.prototype.addOp=function(iOp){if(!eDwTouchOpsMgr.isTouchEnabled())return-1;var opID=this.mViewer.OperatorMgr.registerCustomOperator(iOp,true);this.mTouchOpIDs.push(opID);return opID};eDwTouchOpsMgr.prototype.removeOp=function(iOpID){if(!eDwTouchOpsMgr.isTouchEnabled()||iOpID<0)return;var opIndex=this.mTouchOpIDs.indexOf(iOpID);if(opIndex>-1){this.mTouchOpIDs.splice(opIndex,1);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(iOpID)}};eDwTouchOpsMgr.isTouchEnabled=function(){function matchMedia(iFeature){return window.matchMedia&&window.matchMedia(iFeature).matches?true:false}var enabled=false;if("PointerEvent"in window&&"maxTouchPoints"in navigator){var maxTouchPoints=navigator.maxTouchPoints;if(utils.isNumber(maxTouchPoints)){if(navigator.maxTouchPoints>0){enabled=true}else if(navigator.maxTouchPoints===0&&matchMedia("(any-pointer:coarse)")){enabled=true}}}else{if(matchMedia("(any-pointer:coarse)")){enabled=true}else if("TouchEvent"in window||"ontouchstart"in window){enabled=true}}console.debugLog("TouchOps","Touch enabled = "+enabled);return enabled};return eDwTouchOpsMgr}();return eDwTouchOpsMgr});define("eDwTypes",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var HC=Communicator;exports.HC=HC;var HCI=Communicator.Internal;exports.HCI=HCI;exports.SectionPlaneOrientation={XY:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,0,1)),Index:0},YZ:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(1,0,0)),Index:1},ZX:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,1,0)),Index:2}};exports.UnitToLabel={degree:"deg",radian:"rad",millimeter:"mm",centimeter:"cm",meter:"m",inch:"in",foot:"ft"};exports.DefaultLengthUnit="millimeter";exports.DefaultAngleUnit="degree";exports.EntityMode={FACE:1,EDGE:2,VERTEX:4,HOLE:8,ALL:4294967295}});define("eDwUI",["require","exports","eDwTypes","eDwKeyMgr","eDwUIBaseEventHandlers","eDwCommandMgr","eDwZoomToFitCmd","eDwDrawModeCmd","eDwAnimateCmd","eDwAmbientOcclusionCmd","eDwPerspectiveCmd","eDwSetViewCmd","eDwSetViewCameraCmd","eDwCompositeCmd","eDwSectionFlipCmd","eDwSetViewNormalToSectionCmd","eDwShowSectionCapCmd","eDwSectionShowCmd","eDwChangeSectionPlaneCmd","eDwUIShortcutMenu","eDwUIPluginMgr","eDwUIUtils","eDrawingsWebViewerUtils","eDwEventMgr","eDwEvents"],function(require,exports,eDwTypes_14,eDwKeyMgr_3,eDwUIBaseEventHandlers,eDwCommandMgr,eDwZoomToFitCmd,eDwDrawModeCmd,eDwAnimateCmd,eDwAmbientOcclusionCmd,eDwPerspectiveCmd,eDwSetViewCmd,eDwSetViewCameraCmd,eDwCompositeCmd,eDwSectionFlipCmd,eDwSetViewNormalToSectionCmd,eDwShowSectionCapCmd,eDwSectionShowCmd,eDwChangeSectionPlaneCmd,eDwUIShortcutMenu,eDwUIPluginMgr,eDwUIUtils,eDrawingsWVUtils,eDwEventMgr,eDwEvents){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var eDwUI=function(){function eDwUI(){this.mUIEventHandlers=new UIEventHandlers(this,eDwUIUtils.getViewerElementName(),l_CanvasID);this.mItemActiveCallbacks={};this.mItemDeactiveCallbacks={};solidworks.web.touch.support();this.awfulUIHacks()}eDwUI.prototype.initUIEvents=function(iViewerFeatOpts){this.mViewerFeatureOpts=iViewerFeatOpts;this.registerHTMLEvents()};eDwUI.prototype.init=function(iViewer){this.mViewer=iViewer;this.centerBottomBar();this.mViewer.XSectionMgr.SectionCapVisibility=true;$("#edrawings-section-capping-button").addClass("state-on-button");$("#edrawings-section-show-button").addClass("state-on-button");eDwUIUtils.hide(".edrawings-ui-main",false)};eDwUI.prototype.toggleFullScreen=function(){var viewElement=$("#edrawings-viewer")[0];var isFullScreen=document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement;if(isFullScreen){if(document.fullscreenElement){document.exitFullscreen()}else if(document.webkitFullscreenElement){document.webkitExitFullscreen()}else if(document.mozFullScreenElement){document.mozCancelFullScreen()}else if(document.msFullscreenElement){document.msExitFullscreen()}}else{if(viewElement.requestFullscreen){viewElement.requestFullscreen()}else if(viewElement.webkitRequestFullscreen){viewElement.webkitRequestFullscreen()}else if(viewElement.mozRequestFullScreen){viewElement.mozRequestFullScreen()}else if(viewElement.msRequestFullscreen){viewElement.msRequestFullscreen()}}};eDwUI.prototype.unregister=function(){this.unregisterHTMLEvents();UIEventHandlers.doModelDataUnloadActions(this.mViewer)};eDwUI.prototype.setDrawMode=function(iValue){var drawModeCmd=new eDwDrawModeCmd(this.mViewer,iValue);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(drawModeCmd);cmdMgr.remove(drawModeCmd,"commit")};eDwUI.prototype.setInitialDrawMode=function(){this.setDrawMode(this.mViewer.ViewerFeatureOpts.RenderType)};eDwUI.prototype.setPerspectiveMode=function(iValue){var perspectiveCmd=new eDwPerspectiveCmd(this.mViewer,iValue);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(perspectiveCmd);cmdMgr.remove(perspectiveCmd,"commit")};eDwUI.prototype.hideAllOtherPanels=function(iPanelCSSClassName){if(iPanelCSSClassName!==".edrawings-hud-menu"){this.hideActiveHUDMenu()}if(iPanelCSSClassName!==".edrawings-submenu"){this.hideActiveSubmenu()}eDwUIShortcutMenu.get().hide()};eDwUI.prototype.onClick=function(iID,iActivate){var activateCallback=this.mItemActiveCallbacks[iID];var deactivateCallback=this.mItemDeactiveCallbacks[iID];if(iActivate){if(activateCallback)activateCallback()}else{if(deactivateCallback)deactivateCallback()}return activateCallback||deactivateCallback?true:false};eDwUI.prototype.registerHTMLEvents=function(){var _this=this;this.mUIEventHandlers.addHTMLEventHandlers(this.mViewerFeatureOpts);this.mModelDataLoadCompleteHandler=function(iEvent,iViewer){_this.mViewer=iViewer;eDwUIBaseEventHandlers.doModelDataLoadCompleteActions(_this.mUIEventHandlers,iViewer)};$(eDwUIUtils.getViewerElementID()).on("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);var self=this;this.registerButtonForClickEffect("edrawings-section-flip-button",function(){var sectionFlipCmd=new eDwSectionFlipCmd(_this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(sectionFlipCmd);cmdMgr.remove(sectionFlipCmd,"commit")});this.registerButtonForClickEffect("edrawings-section-normal-button",function(){var setViewNormalToSectionCmd=new eDwSetViewNormalToSectionCmd(_this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(setViewNormalToSectionCmd);cmdMgr.remove(setViewNormalToSectionCmd,"commit")});$("#edrawings-section-xz-button").on("click.edw",function(iEvent){_this.setXSectionOrientation(eDwTypes_14.SectionPlaneOrientation.ZX);eDwUIUtils.scrollToTarget($(iEvent.currentTarget))});$("#edrawings-section-yz-button").on("click.edw",function(iEvent){_this.setXSectionOrientation(eDwTypes_14.SectionPlaneOrientation.YZ);eDwUIUtils.scrollToTarget($(iEvent.currentTarget))});$("#edrawings-section-xy-button").on("click.edw",function(iEvent){_this.setXSectionOrientation(eDwTypes_14.SectionPlaneOrientation.XY);eDwUIUtils.scrollToTarget($(iEvent.currentTarget))});$("#edrawings-section-capping-button").on("click.edw",function(iEvent){var buttonJQ=$(iEvent.currentTarget);var visibility=!buttonJQ.hasClass("state-on-button");var showCapsCmd=new eDwShowSectionCapCmd(_this.mViewer,visibility);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(showCapsCmd);cmdMgr.remove(showCapsCmd,"commit");buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)});$("#edrawings-section-show-button").on("click.edw",function(iEvent){var buttonJQ=$(iEvent.currentTarget);var showSection=!buttonJQ.hasClass("state-on-button");var showSectionCmd=new eDwSectionShowCmd(_this.mViewer,showSection);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(showSectionCmd);cmdMgr.remove(showSectionCmd,"commit");buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)});this.mItemActiveCallbacks["#edrawings-button-section"]=function(){eDwUIUtils.addPanelResizeEvents("#edrawings-section-menu",".edw.section","#edrawings-button-section");_this.mCompositeXSectionCmd=new eDwCompositeCmd(_this.mViewer);eDwCommandMgr.get().add(_this.mCompositeXSectionCmd);_this.mCompositeXSectionCmd.initCmdActionImplementation({compositeInit:function(ioCmd){_this.mViewer.XSectionMgr.turnOnSectionPlane(true);_this.setXSectionOrientation()},compositeUndo:function(ioCmd){return true},compositeRedo:function(ioCmd){return true},compositeCommit:function(ioCmd){compositeSectionDone(ioCmd)},compositeCancel:function(ioCmd){compositeSectionDone(ioCmd)}});var self=_this;function compositeSectionDone(ioCmd){ioCmd.clearSubCmds();self.mViewer.XSectionMgr.deactivateCurrent();self.mViewer.XSectionMgr.turnOnSectionPlane(false)}if(!_this.mViewer.getModel().isDrawing()){_this.setActiveSubmenu("#edrawings-button-section","#edrawings-section-menu")}};this.mItemDeactiveCallbacks["#edrawings-button-section"]=function(){eDwUIUtils.deactivateMoveInput(".edw.section");var cmdMgr=eDwCommandMgr.get();cmdMgr.remove(_this.mCompositeXSectionCmd,"cancel")};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,function(iActiveButtonsJQ){if(iActiveButtonsJQ[0].id==="edrawings-button-section"){_this.mItemDeactiveCallbacks["#edrawings-button-section"]()}});function activateDebugPanel(iActivate,iHandlers){togglePanel(iActivate,"#edrawings-button-debug","#edrawings-debug-menu",".edw.debug",iHandlers)}this.mItemActiveCallbacks["#edrawings-button-debug"]=function(){activateDebugPanel(true,_this.mUIEventHandlers)};this.mItemDeactiveCallbacks["#edrawings-button-debug"]=function(){activateDebugPanel(false,_this.mUIEventHandlers)};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,function(iActiveButtonsJQ){if(iActiveButtonsJQ[0].id==="edrawings-button-debug"){_this.mItemDeactiveCallbacks["#edrawings-button-debug"]()}});this.mItemActiveCallbacks["#edrawings-button-reset"]=function(){eDwUIUtils.resetToHomeView(_this.mViewer);window.setTimeout(function(){eDwUIUtils.deactivateUI()},1e3)};$(document).on(l_fullScreenChange,function(iEvent){_this.mUIEventHandlers.onToggleFullScreenUI(iEvent,_this.mViewer)});$("#edrawings-button-fs").on("click.edw",function(){_this.toggleFullScreen()});function clickDrawMode(iUI,iMode){iUI.setDrawMode(iMode);iUI.hideActiveHUDMenu()}$("#edrawings-button-shaded-hlrr").on("click.edw",function(){clickDrawMode(_this,"HiddenLinesRemoved")});$("#edrawings-button-shaded-hlrv").on("click.edw",function(){clickDrawMode(_this,"HiddenLinesVisible")});$("#edrawings-button-shaded-wireframe").on("click.edw",function(){clickDrawMode(_this,"Wireframe")});$("#edrawings-button-shaded-full").on("click.edw",function(){clickDrawMode(_this,"ShadedWithEdges")});$("#edrawings-button-shaded-noedges").on("click.edw",function(){clickDrawMode(_this,"Shaded")});this.mItemActiveCallbacks["#edrawings-button-animate"]=function(){var animateCmd=new eDwAnimateCmd(_this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(animateCmd);cmdMgr.remove(animateCmd,"commit")};this.mItemDeactiveCallbacks["#edrawings-button-animate"]=function(){_this.mItemActiveCallbacks["#edrawings-button-animate"]()};$("#edrawings-button-frame-file-open").on("click.edw",function(){_this.hideActiveHUDMenu()});this.mItemActiveCallbacks["#edrawings-button-view"]=function(){_this.setActiveHUDMenu("#edrawings-button-view","#edrawings-hud-view-menu")};this.mItemActiveCallbacks["#edrawings-button-help"]=function(){var version=eDrawingsWVUtils.getViewerVersion();if(_this.mViewerFeatureOpts.Debug){version+=" HC Version:"+_this.mViewer.HCViewer.getViewerVersionString()}$("#edrawings-version").text("Version #: "+version);_this.setActiveHUDMenu("#edrawings-button-help","#edrawings-hud-help-menu")};$("#edrawings-hud-help-close").on("click.edw",function(){_this.hideActiveHUDMenu()});this.mItemActiveCallbacks["#edrawings-button-zoomtofit"]=function(){var viewHC=_this.mViewer.getHCView();var curModelView=_this.mViewer.getModel().getActiveModelView();var nodeID=curModelView.Hierarchy.HOOPSID;var zoomToFitCmd=new eDwZoomToFitCmd(_this.mViewer,nodeID,viewHC.getCamera());var cmdMgr=eDwCommandMgr.get();cmdMgr.add(zoomToFitCmd);cmdMgr.remove(zoomToFitCmd,"commit")};this.mItemActiveCallbacks["#edrawings-button-shaded"]=function(){_this.setActiveHUDMenu("#edrawings-button-shaded","#edrawings-hud-shaded-menu")};function togglePanel(iActivate,iButtonID,iPanelID,iInputEventIDSuffix,iHandlers){if(iActivate){self.setActiveSubmenu(iButtonID,iPanelID);eDwUIUtils.addPanelResizeEvents(iPanelID,iInputEventIDSuffix,iButtonID)}else{eDwUIUtils.deactivateMoveInput(iInputEventIDSuffix)}}function activateSheetPanel(iActivate,iHandlers){togglePanel(iActivate,"#edrawings-button-sheet-tree","#edrawings-sheet-tree-menu",".edw.sheet",iHandlers)}this.mItemActiveCallbacks["#edrawings-button-sheet-tree"]=function(){activateSheetPanel(true,_this.mUIEventHandlers)};this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]=function(){activateSheetPanel(false,_this.mUIEventHandlers)};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,function(iActiveButtonsJQ){if(iActiveButtonsJQ[0].id==="edrawings-button-sheet-tree"){_this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]()}});function activateLayerPanel(iActivate,iHandlers){togglePanel(iActivate,"#edrawings-button-layer-control","#edrawings-layer-control-menu",".edw.layer",iHandlers)}this.mItemActiveCallbacks["#edrawings-button-layer-control"]=function(){activateLayerPanel(true,_this.mUIEventHandlers)};this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]=function(){activateLayerPanel(false,_this.mUIEventHandlers)};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,function(iActiveButtonsJQ){if(iActiveButtonsJQ[0].id==="edrawings-button-layer-control"){_this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]()}});eDwKeyMgr_3.eDwKeyMgr.get().add({key:"F11"},"keydown",function(iEvent){iEvent.preventDefault();_this.toggleFullScreen();iEvent.stopPropagation()});this.mItemActiveCallbacks["#edrawings-button-view-settings"]=function(){_this.setActiveHUDMenu("#edrawings-button-view-settings","#edrawings-hud-view-settings-menu")};var ambientOcc=$("#edrawings-button-view-ambient-occlusion");ambientOcc.on("click.edw",function(){var buttonActive=ambientOcc.hasClass("state-on-button");_this.hideActiveHUDMenu();if(buttonActive)ambientOcc.removeClass("state-on-button");else ambientOcc.addClass("state-on-button");var ambientOcclCmd=new eDwAmbientOcclusionCmd(_this.mViewer,!buttonActive);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(ambientOcclCmd);cmdMgr.remove(ambientOcclCmd,"commit")});$("#edrawings-button-view-perspective").on("click.edw",function(){_this.hideActiveHUDMenu();var perspectiveMode=!_this.mViewer.getPerspectiveMode();_this.setPerspectiveMode(perspectiveMode)});this.registerButtonForClickEffect("edrawings-button-view-top",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Top)});this.registerButtonForClickEffect("edrawings-button-view-bottom",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Bottom)});this.registerButtonForClickEffect("edrawings-button-view-left",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Left)});this.registerButtonForClickEffect("edrawings-button-view-right",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Right)});this.registerButtonForClickEffect("edrawings-button-view-front",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Front)});this.registerButtonForClickEffect("edrawings-button-view-back",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Back)});this.registerButtonForClickEffect("edrawings-button-view-iso",function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Iso)})};eDwUI.prototype.unregisterHTMLEvents=function(){this.mUIEventHandlers.removeHTMLEventHandlers();$(eDwUIUtils.getViewerElementID()).off("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);$("#edrawings-section-xz-button").off("click.edw");$("#edrawings-section-yz-button").off("click.edw");$("#edrawings-section-xy-button").off("click.edw");$("#edrawings-section-capping-button").off("click.edw");$("#edrawings-section-show-button").off("click.edw");$("#edrawings-button-fs").off("click.edw");$("#edrawings-button-shaded-hlrr").off("click.edw");$("#edrawings-button-shaded-hlrv").off("click.edw");$("#edrawings-button-shaded-wireframe").off("click.edw");$("#edrawings-button-shaded-full").off("click.edw");$("#edrawings-button-shaded-noedges").off("click.edw");$("#edrawings-button-sheets").off("click.edw");$("#edrawings-button-frame-file-open").off("click.edw");$("#edrawings-button-view-ambient-occlusion").off("click.edw");$("#edrawings-button-view-perspective").off("click.edw");$("#edrawings-hud-help-close").off("click.edw");$(document).off(l_fullScreenChange);$(document).off("click.edw");$(document).off("mousedown.edw");$(document).off("dblclick.edw");this.unregisterButtonForClickEffect("edrawings-section-flip-button");this.unregisterButtonForClickEffect("edrawings-section-normal-button");this.unregisterButtonForClickEffect("edrawings-face-normal-button");this.unregisterButtonForClickEffect("edrawings-button-view-top");this.unregisterButtonForClickEffect("edrawings-button-view-bottom");this.unregisterButtonForClickEffect("edrawings-button-view-left");this.unregisterButtonForClickEffect("edrawings-button-view-right");this.unregisterButtonForClickEffect("edrawings-button-view-front");this.unregisterButtonForClickEffect("edrawings-button-view-back");this.unregisterButtonForClickEffect("edrawings-button-view-iso")};eDwUI.prototype.setActiveSubmenu=function(iButtonID,iPanelID){eDwUIUtils.activateUI(iButtonID,iPanelID)};eDwUI.prototype.hideActiveSubmenu=function(){eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")};eDwUI.prototype.centerBottomBar=function(iWidth,iHeight){var edwbar=$(".tool-bar");var b=52;edwbar.css({height:"auto"});var bar=$(".tool-bar");var viewerElem=$(eDwUIUtils.getViewerElementID());var leftbuttons=$(".edrawings-icon-set.left");var rightbuttons=$(".edrawings-icon-set.right");var centerbuttons=$(".edrawings-icon-set.center");var x=(iWidth?iWidth:viewerElem.width())-1;if(navigator.userAgent.indexOf("Trident")>=0){x=viewerElem[0].clientWidth-1}bar.css({position:"absolute"});leftbuttons.css({left:1+"px",position:"absolute"});rightbuttons.css({right:1+"px",position:"absolute"});centerbuttons.css({left:x/2-b/2+"px",position:"absolute"})};eDwUI.prototype.setActiveHUDMenu=function(iButtonID,iPanelID){this.hideActiveHUDMenu();eDwUIUtils.activateUI(iButtonID,iPanelID);if(iButtonID!=="#edrawings-button-help"){var buttonJQ=$(iButtonID);var buttonOffset=buttonJQ.offset();var posx=buttonOffset.left;var posy=buttonOffset.top+parseInt(buttonJQ.css("marginTop"))+parseInt(buttonJQ.css("borderTopWidth"))+buttonJQ.height();var canvasWidth=$("#edrawings-canvas").width();var panelJQ=$(iPanelID);var panelWidth=panelJQ[0].offsetWidth;if(posx+panelWidth>canvasWidth){posx=canvasWidth-panelWidth-10}panelJQ.css({top:posy+"px",left:posx+"px"})}};eDwUI.prototype.hideActiveHUDMenu=function(){eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")};eDwUI.prototype.registerButtonForClickEffect=function(iButtonID,iHandler){var butJQ=$("#"+iButtonID);butJQ.on("mousedown.edw",function(){butJQ.addClass("edrawings-on-state");eDwUIUtils.scrollToTarget(butJQ)});butJQ.on("mouseup.edw",function(){butJQ.removeClass("edrawings-on-state");iHandler()})};eDwUI.prototype.unregisterButtonForClickEffect=function(iButtonID){var butJQ=$("#"+iButtonID);butJQ.off("mousedown.edw");butJQ.off("mouseup.edw")};eDwUI.prototype.setViewOrientation=function(iOrientation){var setViewCmd=new eDwSetViewCmd(this.mViewer,iOrientation);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(setViewCmd);cmdMgr.remove(setViewCmd,"commit");this.hideActiveHUDMenu()};eDwUI.prototype.setXSectionOrientation=function(iNewSection){function setActive(iButtonID,iIsActive){$(iButtonID)[iIsActive?"addClass":"removeClass"]("state-on-button")}var sectionMgr=this.mViewer.XSectionMgr;var sectionIndex=iNewSection?iNewSection.Index:sectionMgr.SectionIndex;var planeFromEnum=null;switch(sectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",true);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",true);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:eDwUIUtils.hide("#edrawings-section-xy-button",false);eDwUIUtils.hide("#edrawings-section-yz-button",false);eDwUIUtils.hide("#edrawings-section-xz-button",false);setActive("#edrawings-section-xy-button",true);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported section plane orientation");break}var origPlaneEnum=null;if(sectionIndex!==sectionMgr.SectionIndex){switch(sectionMgr.SectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported initial section plane orientation");break}if(planeFromEnum){var changeSectionPlaneCmd=new eDwChangeSectionPlaneCmd(this.mViewer,origPlaneEnum,planeFromEnum);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(changeSectionPlaneCmd);cmdMgr.remove(changeSectionPlaneCmd,"commit")}}};eDwUI.prototype.awfulUIHacks=function(){var _this=this;l_init=function(){$("#edrawings-face-normal-button").css("pointer-events","auto");_this.registerButtonForClickEffect("edrawings-face-normal-button",function(){var setViewCameraCmd=new eDwSetViewCameraCmd(_this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(setViewCameraCmd);cmdMgr.remove(setViewCameraCmd,"commit");_this.hideActiveHUDMenu()})};l_uninit=function(){$("#edrawings-face-normal-button").css("pointer-events","none");_this.unregisterButtonForClickEffect("edrawings-face-normal-button")}};return eDwUI}();exports.eDwUI=eDwUI;var UIEventHandlers=function(_super){__extends(UIEventHandlers,_super);function UIEventHandlers(iUI,iViewerHTMLID,iViewerHTMLCanvasID){var _this=_super.call(this,iViewerHTMLID,iViewerHTMLCanvasID)||this;_this.mUI=iUI;return _this}UIEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;_super.prototype.addHTMLEventHandlers.call(this,iViewerFeatOpts);$("#edrawings-viewer").on("click.edw",".edrawings-tool-button",function(iEvent){_this.onClick(iEvent,".edrawings-tool-button")});$("#edrawings-viewer").on("click.edw",".edrawings-hud-button",function(iEvent){_this.onClick(iEvent,".edrawings-hud-button",".edrawings-submenu")});this.mUIHTMLEventMgr.addEventHandler("window","beforeunload",function(iEvent){_this.mUI.unregister()});this.mUIHTMLEventMgr.addEventHandler("window","Timeout",function(iEvent){_this.mUI.unregister()});$(".edrawings-menu-close").on("click.edw",function(iEvent){_this.deactivateActiveButton(".edrawings-tool-button")});var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.on("edw:ChangeViewerStyling",function(iEvent,iStyleClassName){viewerJQ.removeClass("edrawings-viewer-regular");viewerJQ.removeClass("edrawings-viewer-timeout");if(iStyleClassName)viewerJQ.addClass(iStyleClassName)});viewerJQ.on("edw:HidePanels",function(iEvent,iSkipPanelsWithClass){_this.mUI.hideAllOtherPanels(iSkipPanelsWithClass)});viewerJQ.on("edw:ReInitViewer",function(iEvent,iViewerFeatOpts){_this.mUI.unregister();_this.mUI.initUIEvents(iViewerFeatOpts)})};UIEventHandlers.prototype.removeHTMLEventHandlers=function(){_super.prototype.removeHTMLEventHandlers.call(this);$(".edrawings-menu-close").off("click.edw");$("#edrawings-viewer").off("click.edw",".edrawings-tool-button");$("#edrawings-viewer").off("click.edw",".edrawings-hud-button");var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.off("edw:ChangeViewerStyling");viewerJQ.off("edw:HidePanels");viewerJQ.off("edw:ReInitViewer")};UIEventHandlers.doModelDataUnloadActions=function(iViewer){eDwUIBaseEventHandlers.doModelDataUnloadActions(iViewer)};UIEventHandlers.prototype.onToggleFullScreenUI=function(iEvent,iViewer){var fullScreenState=document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement;if(fullScreenState){$("#edrawings-button-fs").addClass("edrawings-button-fs-restore")}else{$("#edrawings-button-fs").removeClass("edrawings-button-fs-restore");$("#edrawings-canvas-canvas-container").css({"background-color":""})}};UIEventHandlers.prototype.onInit=function(iViewer){var viewerFeatureOpts=iViewer.ViewerFeatureOpts;var model=iViewer.getModel();var isDrawing=model.isDrawing();eDwUIUtils.hide("#edrawings-button-reset",false);eDwUIUtils.hide("#edrawings-button-shaded",isDrawing);eDwUIUtils.hide("#edrawings-button-view-settings",isDrawing);eDwUIUtils.hide("#edrawings-button-animate",isDrawing);eDwUIUtils.hide("#edrawings-button-section",isDrawing);eDwUIUtils.hide("#edrawings-button-view",isDrawing);eDwUIUtils.hide("#edrawings-button-debug",!viewerFeatureOpts.Debug);eDwUIUtils.hide("#edrawings-button-tables-control",isDrawing||iViewer.TableMgr.numTables()===0);eDwUIUtils.hide("#edrawings-button-sheet-tree",!isDrawing);eDwUIUtils.hide("#edrawings-button-layer-control",!isDrawing);eDwUIUtils.hide(".edrawings-icon-set.center",isDrawing);this.removeHTMLEventHandlers()};UIEventHandlers.prototype.onInitFullUI=function(iViewer){_super.prototype.onInitFullUI.call(this,iViewer);this.addHTMLEventHandlers(iViewer.ViewerFeatureOpts);this.mUI.init(iViewer);eDwUIUtils.hide("#WaitBanner",true)};UIEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){_super.prototype.onSelect.call(this,iViewer,iSelObjs);if(l_init)l_init()};UIEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){_super.prototype.onUnselect.call(this,iViewer,iSelObjs);if(l_uninit)l_uninit()};UIEventHandlers.prototype.onTimeout=function(iViewer){eDwUIUtils.hide("#TimeoutBanner",false);$(eDwUIUtils.getViewerElementID()).trigger("edw:ChangeViewerStyling","edrawings-viewer-timeout")};UIEventHandlers.prototype.onStartAnimation=function(iViewer){var eDwViewer=iViewer;$("#edrawings-canvas").on("click.edw",function(){eDwViewer.ViewMgr.stop()});var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.removeClass("edrawings-animate-play-icon");animateBtnJQ.addClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onStopAnimation=function(iViewer){var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.addClass("edrawings-animate-play-icon");animateBtnJQ.removeClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onAmbientOcclusionChange=function(iViewer,iAmbientOcclusionOn){var ambientOccButton=$("#edrawings-button-view-ambient-occlusion");if(iAmbientOcclusionOn){if(!ambientOccButton.hasClass("state-on-button")){ambientOccButton.addClass("state-on-button")}}else{if(ambientOccButton.hasClass("state-on-button")){ambientOccButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onProjectionModeChange=function(iViewer,iPerspectiveOn){var perspectiveButton=$("#edrawings-button-view-perspective");if(iPerspectiveOn){if(!perspectiveButton.hasClass("state-on-button")){perspectiveButton.addClass("state-on-button")}}else{if(perspectiveButton.hasClass("state-on-button")){perspectiveButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onDrawModeChange=function(iViewer,iDrawMode){function setActive(iButtonID,iIsActive){if(iIsActive&&!$(iButtonID).hasClass("state-on-button")){$(iButtonID).addClass("state-on-button")}else if(!iIsActive&&$(iButtonID).hasClass("state-on-button")){$(iButtonID).removeClass("state-on-button")}}function setActiveInGroup(iButtonID){setActive("#edrawings-button-shaded-full",false);setActive("#edrawings-button-shaded-noedges",false);setActive("#edrawings-button-shaded-wireframe",false);setActive("#edrawings-button-shaded-hlrr",false);setActive("#edrawings-button-shaded-hlrv",false);setActive(iButtonID,true)}switch(iDrawMode){case"ShadedWithEdges":setActiveInGroup("#edrawings-button-shaded-full");break;case"Shaded":setActiveInGroup("#edrawings-button-shaded-noedges");break;case"HiddenLinesRemoved":setActiveInGroup("#edrawings-button-shaded-hlrr");break;case"HiddenLinesVisible":setActiveInGroup("#edrawings-button-shaded-hlrv");break;case"Wireframe":setActiveInGroup("#edrawings-button-shaded-wireframe");break;default:throw new Error("Unknown draw mode in UI:"+iDrawMode)}};UIEventHandlers.prototype.onClick=function(iEvent,iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}var targetJQ=$(iEvent.target);var buttonClickedID=targetJQ.closest(iButtonCSSClassName).attr("id");var deactivatedButtonID=this.deactivateActiveButton(iButtonCSSClassName,iPanelCSSClassName);if(deactivatedButtonID===buttonClickedID)return;this.handleClick("#"+buttonClickedID,true)};UIEventHandlers.prototype.deactivateActiveButton=function(iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}var activeButtonID="";var activeButtonJQ=$(iButtonCSSClassName+".active-button");this.mUI.hideAllOtherPanels(iPanelCSSClassName);if(activeButtonJQ.length){activeButtonID=activeButtonJQ[0].id;this.handleClick("#"+activeButtonID,false)}return activeButtonID};UIEventHandlers.prototype.handleClick=function(iButtonID,iActivate){eDwUIUtils.scrollToTarget($(iButtonID));if(!this.mUI.onClick(iButtonID,iActivate)){var pluginMgr=eDwUIPluginMgr.get();pluginMgr.onClick(iButtonID,iActivate)}};return UIEventHandlers}(eDwUIBaseEventHandlers);var l_fullScreenChange="fullscreenchange.edw MSFullscreenChange.edw "+"mozfullscreenchange.edw webkitfullscreenchange.edw";var l_CanvasID="edrawings-canvas";var l_init;var l_uninit});define("eDwUIBaseEventHandlers",["require","exports","eDwUIShortcutMenu","eDwEventMgr","eDwUIHTMLEventMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwCompositeCmd","eDwSetNodeVisibilityCmd","eDwUIPluginMgr","eDwEvents","eDwUIUtils"],function(require,exports,eDwUIShortcutMenu,eDwEventMgr,eDwUIHTMLEventMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwCompositeCmd,eDwSetNodeVisibilityCmd,eDwUIPluginMgr,eDwEvents,eDwUIUtils){"use strict";var eDwUIBaseEventHandlers=function(){function eDwUIBaseEventHandlers(iViewerHTMLID,iViewerHTMLCanvasID){this.mViewerHTMLID=iViewerHTMLID;this.mViewerHTMLCanvasID=iViewerHTMLCanvasID;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr}eDwUIBaseEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;this.mViewerFeatureOpts=iViewerFeatOpts;var eventMgrHTML=this.mUIHTMLEventMgr;eventMgrHTML.addEventHandler("window","resize",function(iEvent){_this.onResize(iEvent,_this.mViewer)});eDwEventMgr.get().addEventHandlerFunc(eDwEvents.ResetSceneEvent,l_onResize);eDwUIUtils.addSubTreeArrowEventHandler(eventMgrHTML,"#edrawings-sheet-tree-menu");eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-submenu-list-item","dblclick",function(iEvent){var targetJQ=$(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(targetJQ.hasClass("edrawings-root")){return}var selObjHCID=eDwUIUtils.getHCID(targetJQ);if(isNaN(selObjHCID)||selObjHCID<0){return}var cmdMgr=eDwCommandMgr.get();var zoomToViewCmd=new eDwCompositeCmd(_this.mViewer);zoomToViewCmd.initCmdActionImplementation();cmdMgr.add(zoomToViewCmd);var targetModelView=null;var model=_this.mViewer.getModel();var modelHC=model.getHCModel();var modelViews=model.getModelViews();for(var _i=0,modelViews_2=modelViews;_i<modelViews_2.length;_i++){var modelView=modelViews_2[_i];var configHCID=modelView.Hierarchy.HOOPSID;var configChildren=modelHC.getNodeChildren(configHCID);if(-1!==configChildren.indexOf(selObjHCID)){targetModelView=modelView;break}}var activeModelView=_this.mViewer.getModel().getActiveModelView();if(targetModelView&&targetModelView!==activeModelView){_this.mViewer.SelectionMgr.selectByID(selObjHCID);var changeModelViewCmd=new eDwChangeModelViewCmd(_this.mViewer,targetModelView.Name,_this.mViewer.getInitCamera());cmdMgr.add(changeModelViewCmd);cmdMgr.remove(changeModelViewCmd,"commit")}_this.onLeftDoubleClick(_this.mViewer);cmdMgr.remove(zoomToViewCmd,"commit")});var switchModelView=function(iEvent){eDwUIUtils.switchModelView(iEvent,_this.mViewer)};eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-root","click",switchModelView);eDwUIUtils.addSubTreeArrowEventHandler(this.mUIHTMLEventMgr,"#edrawings-debug-menu");var inputSelectorName="#edrawings-console-debug-categories "+".edrawings-menu-search-input";eventMgrHTML.addDelegatedEventHandler(inputSelectorName,"blur",function(iEvent){var targetJQ=$(iEvent.target);if(!targetJQ||!targetJQ.length)return;var inputElem=targetJQ[0];var categories=inputElem.value.split(",");if(categories.length===0)return;for(var _i=0,categories_1=categories;_i<categories_1.length;_i++){var category=categories_1[_i];category=category.trim();if(!category)continue;console.debugLogCategories.push(category);var pos=console.excludeDebugLogCategories.indexOf(category);if(pos>-1){console.excludeDebugLogCategories.slice(pos,1)}}});var selectorName="#edrawings-debug-menu .edrawings-submenu-list-item";eventMgrHTML.addDelegatedEventHandler(selectorName,"click",function(iEvent){var targetJQ=$(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getHCID(targetJQ);if(isNaN(id))return;$(selectorName).removeClass("edrawings-list-selected");$(targetJQ).addClass("edrawings-list-selected");_this.mViewer.SelectionMgr.selectByID(id)});eventMgrHTML.addDelegatedEventHandler("#edrawings-debug-menu .edrawings-submenu-list-item","dblclick",function(iEvent){var targetJQ=$(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getHCID(targetJQ);if(isNaN(id))return;_this.onLeftDoubleClick(_this.mViewer)});eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-cancel","click",function(iEvent){$("#edrawings-debug-menu "+".edrawings-menu-search-input").val("");eDwUIUtils.searchPanelList(_this.mViewer,$(iEvent.target))});eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-input","keyup",function(iEvent){eDwUIUtils.searchPanelList(_this.mViewer,$(iEvent.target))});eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .item-layer-checkbox","click",function(iEvent){var targetJQ=eDwUIUtils.getTarget($(iEvent.target));var layerName=eDwUIUtils.getSpanText(targetJQ.next("span.item-tree-text"));var isVisible=targetJQ.prop("checked");_this.setOneLayerVisibility(layerName,isVisible)});eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .layer-all","click",function(iEvent){var isVisible=$(iEvent.target).prop("checked");_this.setAllLayerVisibility(isVisible)});eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseover",function(iEvent){var filenameJQ=$(iEvent.target);if(filenameJQ.length===1&&filenameJQ[0].scrollWidth>filenameJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,filenameJQ,$("#edrawings-filename-text").text())}});eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseout",function(iEvent){l_hideTicker()});eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseover",function(iEvent){var itemTreeTextJQ=$(iEvent.target).find(".item-tree-text");var edrawingsSubmenuListJQ=$(iEvent.target).closest(".edrawings-submenu-list");if(edrawingsSubmenuListJQ.length===1&&itemTreeTextJQ.length===1&&itemTreeTextJQ[0].scrollWidth>itemTreeTextJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,itemTreeTextJQ,itemTreeTextJQ.text())}});eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseout",function(iEvent){l_hideTicker()});eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",function(iEvent){var contentJQ=$("#edrawings-hud-bar .edrawings-hud-bar-content");if(contentJQ&&contentJQ.length>0){eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu");eDwUIUtils.executeScrolling(-c_hudBarIconWidth,0,contentJQ)}});eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",function(iEvent){var contentJQ=$("#edrawings-hud-bar .edrawings-hud-bar-content");if(contentJQ&&contentJQ.length>0){eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu");eDwUIUtils.executeScrolling(c_hudBarIconWidth,0,contentJQ)}});eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-hud-bar .edrawings-hud-bar-content","#edrawings-hud-bar",function(){eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")});eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-up)","click",function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");if(contentJQ&&contentJQ.length>0){eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu");eDwUIUtils.executeScrolling(0,-c_toolBarIconWidth,contentJQ,barJQ)}});eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-down)","click",function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");if(contentJQ&&contentJQ.length>0){eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu");eDwUIUtils.executeScrolling(0,c_toolBarIconWidth,contentJQ,barJQ)}});eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-left-bar .edrawings-tool-bar-content","#edrawings-left-bar",function(){eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")})};eDwUIBaseEventHandlers.prototype.addDefaultHTMLPanelCloseEventHandlers=function(){if(this.mViewerFeatureOpts.Debug){eDwUIUtils.addCloseEventHandler("#edrawings-debug-menu",this.mUIHTMLEventMgr)}eDwUIUtils.addCloseEventHandler("#edrawings-sheet-tree-menu",this.mUIHTMLEventMgr);eDwUIUtils.addCloseEventHandler("#edrawings-layer-control-menu",this.mUIHTMLEventMgr)};eDwUIBaseEventHandlers.doModelDataLoadCompleteActions=function(ioEventHandlerObj,iViewer){ioEventHandlerObj.mViewer=iViewer;l_loadUIPlugins(iViewer);var handlerObj=ioEventHandlerObj;var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents.InitEvent,handlerObj,"onInit");eventMgr.addEventHandlerObj(eDwEvents.InitFullUIEvent,handlerObj,"onInitFullUI");eventMgr.addEventHandlerObj(eDwEvents.SelectEvent,handlerObj,"onSelect");eventMgr.addEventHandlerObj(eDwEvents.UnselectEvent,handlerObj,"onUnselect");eventMgr.addEventHandlerObj(eDwEvents.StartAnimationEvent,handlerObj,"onStartAnimation");eventMgr.addEventHandlerObj(eDwEvents.StopAnimationEvent,handlerObj,"onStopAnimation");eventMgr.addEventHandlerObj(eDwEvents.LeftDoubleClickEvent,handlerObj,"onLeftDoubleClick");eventMgr.addEventHandlerObj(eDwEvents.TimeoutEvent,handlerObj,"onTimeout");eventMgr.addEventHandlerObj(eDwEvents.DrawModeChangeEvent,handlerObj,"onDrawModeChange");eventMgr.addEventHandlerObj(eDwEvents.ProjModeChangeEvent,handlerObj,"onProjectionModeChange");eventMgr.addEventHandlerObj(eDwEvents.NodeAttribChangeEvent,handlerObj,"onNodeAttribChanged");eventMgr.addEventHandlerObj(eDwEvents.ResetSceneEvent,handlerObj,"onResetScene");eventMgr.addEventHandlerObj(eDwEvents.AmbientOcclChangeEvent,handlerObj,"onAmbientOcclusionChange");eventMgr.addEventHandlerObj(eDwEvents.DoneEvent,handlerObj,"onDone");eventMgr.addEventHandlerObj(eDwEvents.ModelViewChangeEvent,handlerObj,"onModelViewChange")};eDwUIBaseEventHandlers.prototype.removeHTMLEventHandlers=function(){eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-hud-bar .edrawings-hud-bar-content");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-left-bar .edrawings-tool-bar-content");this.mUIHTMLEventMgr.removeAllEventHandlers();eDwUIShortcutMenu.get().destroy()};eDwUIBaseEventHandlers.doModelDataUnloadActions=function(iViewer){l_unloadUIPlugins();if(iViewer)iViewer.unregister();eDwEventMgr.get().removeAllEventHandlers()};eDwUIBaseEventHandlers.prototype.onInit=function(iViewer){this.mViewer=iViewer};eDwUIBaseEventHandlers.prototype.onInitFullUI=function(iViewer){};eDwUIBaseEventHandlers.prototype.onDone=function(iViewer){iViewer.destroy()};eDwUIBaseEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,true)};eDwUIBaseEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,false)};eDwUIBaseEventHandlers.prototype.onLeftDoubleClick=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu.get().hide()};eDwUIBaseEventHandlers.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iNewModelView)];case 1:_a.sent();return[2]}})})})()};eDwUIBaseEventHandlers.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){if(iViewer.ViewerFeatureOpts.Debug){for(var _i=0,iHierNodesAndAttribs_3=iHierNodesAndAttribs;_i<iHierNodesAndAttribs_3.length;_i++){var hierNodeAndAttribs=iHierNodesAndAttribs_3[_i];console.debugLog("NodeAttribChanged","Node name = "+hierNodeAndAttribs.HierNode.Name+" attributes = "+JSON.stringify(hierNodeAndAttribs.Attribs))}}this.handleNodeAttribChange(iViewer,iHierNodesAndAttribs)};eDwUIBaseEventHandlers.prototype.onResize=function(iEvent,iViewer){if(iViewer)iViewer.HCViewer.resizeCanvas();l_onResize()};eDwUIBaseEventHandlers.prototype.setOneLayerVisibility=function(layerName,isVisible){var viewer=this.mViewer;var activeModelView=viewer.getModel().getActiveModelView();var layerNodes=activeModelView.Hierarchy.findNodes("Name",layerName);var layerNodeIDs=[];var numNodes=layerNodes.length;for(var i=0;i<numNodes;i++){layerNodeIDs.push(layerNodes[i].HOOPSID)}this.setLayerVisibility(layerNodeIDs,isVisible);var eachLayer=$("#edrawings-layer-control-menu .item-layer-checkbox");var isAnyShow=false,isAnyHidden=false;$.each(eachLayer,function(iIdx,iTarget){if($(iTarget).prop("checked")){isAnyShow=true}else{isAnyHidden=true}});var allLayerBox=$("#edrawings-layer-control-menu .layer-all");if(isAnyShow&&isAnyHidden){allLayerBox.prop("indeterminate",true)}if(isAnyShow&&!isAnyHidden){allLayerBox.prop("indeterminate",false);allLayerBox.prop("checked",true)}if(!isAnyShow&&isAnyHidden){allLayerBox.prop("indeterminate",false);allLayerBox.prop("checked",false)}};eDwUIBaseEventHandlers.prototype.setAllLayerVisibility=function(isVisible){var activeModelView=this.mViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return;var layerNodes=activeModelView.Hierarchy.findNodes("Category","layer");var layerNodeIDs=[];var numLayers=layerNodes.length;for(var i=0;i<numLayers;i++){layerNodeIDs=layerNodeIDs.concat(layerNodes[i].HOOPSID)}this.setLayerVisibility(layerNodeIDs,isVisible);var eachLayer=$("#edrawings-layer-control-menu .item-layer-checkbox");if(isVisible){eachLayer.prop("checked",true)}else{eachLayer.prop("checked",false)}};eDwUIBaseEventHandlers.prototype.setLayerVisibility=function(layerNodeIDs,isVisible){var setNodeVisCmd=new eDwSetNodeVisibilityCmd(this.mViewer,layerNodeIDs,isVisible);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(setNodeVisCmd);cmdMgr.remove(setNodeVisCmd,"commit")};eDwUIBaseEventHandlers.prototype.handleSelectionChange=function(iViewer,iSelObjs,iIsObjSelected){var model=iViewer.getModel();if(!model.isDrawing())return;var activeModelView=model.getActiveModelView();for(var _i=0,iSelObjs_2=iSelObjs;_i<iSelObjs_2.length;_i++){var selObj=iSelObjs_2[_i];var selHierNode=activeModelView.Nodes[selObj.getNodeId()];eDwUIUtils.scrollToTreeNode(selHierNode,iIsObjSelected)}};eDwUIBaseEventHandlers.prototype.handleNodeAttribChange=function(iViewer,iHierNodesAndAttribs){var model=iViewer.getModel();if(!model.isDrawing())return;eDwUIUtils.updateIcons(iHierNodesAndAttribs)};return eDwUIBaseEventHandlers}();var c_hudBarIconWidth=2+44;var c_toolBarIconWidth=5+2+44;var c_hudBarContentThresholdWidth=2+2*46;var c_filenameBlockThresholdWidth=50;var c_toolBarContentThresholdHeight=2*46;function l_loadUIPlugins(iViewer){var _this=this;if(!iViewer)return;try{(function(){return __awaiter(_this,void 0,void 0,function(){var pluginMgr,model;return __generator(this,function(_a){switch(_a.label){case 0:pluginMgr=eDwUIPluginMgr.get();return[4,pluginMgr.loadPlugins(["eDwUIHierNodeVisMenuItemsPlugin","eDwUIMoveComponentPlugin","eDwUIModelViewTabsPlugin", "eDwUIExplodePlugin","eDwUIConfigurationsPlugin", "eDwUIComponentTreePlugin"],iViewer)];case 1:_a.sent();return[4,pluginMgr.loadDynamicPlugins(iViewer)];case 2:_a.sent();return[4,eDwUIUtils.loadComponentHTML()];case 3:_a.sent();eDwUIUtils.createUIGenerators(iViewer);model=iViewer.getModel();return[4,eDwUIUtils.updateUI(iViewer,model.getActiveModelView())];case 4:_a.sent();eDwEventMgr.get().fireEvent(eDwEvents.InitFullUIEvent,iViewer);eDwUIUtils.resetToHomeView(iViewer);return[2]}})})})()}catch(iExcp){console.warn("Plugin loading did not complete.")}}function l_unloadUIPlugins(){eDwUIPluginMgr.get().destroy()}function l_resizeTopBar(){var topBarJQ=$("#edrawings-top-bar");var filenameBlockJQ=$("#edrawings-filename-block");var hudBarJQ=$("#edrawings-hud-bar");var hudBarContentJQ=hudBarJQ.find(".edrawings-hud-bar-content");var filenameBlockOffset=filenameBlockJQ.offset();var hudBarOffset=hudBarJQ.offset();var leftButtonWrapperJQ=hudBarJQ.find(".edrawings-arrow-left").parent(".edrawings-arrow-wrapper");var rightButtonWrapperJQ=hudBarJQ.find(".edrawings-arrow-right").parent(".edrawings-arrow-wrapper");if(topBarJQ.hasClass("edrawings-collided-hud-bar")){var filenameBlockRight=filenameBlockOffset.left+filenameBlockJQ.innerWidth();if(filenameBlockOffset.left!==hudBarOffset.left&&Math.abs(filenameBlockRight-hudBarOffset.left)>1){hudBarJQ.offset({left:Math.ceil(filenameBlockOffset.left+filenameBlockJQ.innerWidth()),top:hudBarOffset.top});l_resizeTopBar()}else if(hudBarContentJQ[0].scrollWidth===0||hudBarContentJQ.width()>=hudBarContentJQ[0].scrollWidth){topBarJQ.removeClass("edrawings-collided-hud-bar");hudBarJQ.removeClass("edrawings-collided");hudBarJQ.css({left:""})}}else{if(filenameBlockOffset.left!==hudBarOffset.left&&filenameBlockOffset.left+filenameBlockJQ.innerWidth()>hudBarOffset.left){hudBarJQ.offset({left:Math.ceil(filenameBlockOffset.left+filenameBlockJQ.innerWidth()),top:hudBarOffset.top});topBarJQ.addClass("edrawings-collided-hud-bar");hudBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(hudBarContentJQ[0].scrollLeft,hudBarContentJQ[0].scrollWidth,hudBarContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,hudBarJQ);if(topBarJQ.hasClass("edrawings-collided-hud-bar")){if(hudBarContentJQ.innerWidth()<c_hudBarContentThresholdWidth){if(filenameBlockJQ.width()>c_filenameBlockThresholdWidth){if(topBarJQ.hasClass("edrawings-out-of-view")){topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.addClass("edrawings-out-of-view")}}else{if(filenameBlockJQ[0].scrollWidth-filenameBlockJQ.innerWidth()>1){if(filenameBlockJQ.width()<c_filenameBlockThresholdWidth){topBarJQ.addClass("edrawings-out-of-view")}else{topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.removeClass("edrawings-out-of-view")}}}else{topBarJQ.removeClass("edrawings-out-of-view")}}function l_resizeToolBar(){var leftBarJQ=$("#edrawings-left-bar.edrawings-tool-bar");var leftBarContentJQ=leftBarJQ.find(".edrawings-bottom-centered-icons");var toolBarContentJQ=leftBarContentJQ.find(".edrawings-tool-bar-content");var upButtonWrapperJQ=leftBarContentJQ.find(".edrawings-arrow-up").parent(".edrawings-arrow-wrapper");var downButtonWrapperJQ=leftBarContentJQ.find(".edrawings-arrow-down").parent(".edrawings-arrow-wrapper");if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ[0].scrollHeight>0&&toolBarContentJQ[0].scrollHeight<=leftBarContentJQ.innerHeight()){leftBarJQ.removeClass("edrawings-collided")}}else{if(leftBarContentJQ[0].scrollHeight>0&&leftBarContentJQ[0].scrollHeight>Math.round(leftBarContentJQ.innerHeight())){leftBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(toolBarContentJQ[0].scrollTop,toolBarContentJQ[0].scrollHeight,toolBarContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,leftBarJQ);if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ.innerHeight()<c_toolBarContentThresholdHeight){leftBarJQ.addClass("edrawings-out-of-view")}else{leftBarJQ.removeClass("edrawings-out-of-view")}}else{leftBarJQ.removeClass("edrawings-out-of-view")}}function l_onResize(){l_resizeTopBar();l_resizeToolBar();l_positionMenuPanelCollapseButton();l_fixMenuPanelInwardToolbar()}function l_positionTicker(iMouseEvent,iItemJQ,iText){var tickerMinWidth=100;var tickerMinHeight=34;var scrollWidthPadding=2;var tickerJQ=$(".edrawings-ticker");var itemOffset=iItemJQ.offset();var tickerLeft=iMouseEvent.clientX;var tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding;var tickerTop=itemOffset.top-tickerMinHeight;var tickerAnimation=false;tickerJQ.text(iText);if(iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding>=window.innerWidth){var diff=iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding-window.innerWidth;if(iMouseEvent.clientX>=diff){tickerLeft=iMouseEvent.clientX-diff;tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding}else{tickerLeft=0;tickerAnimation=true;if(window.innerWidth>tickerMinWidth){tickerWidth=window.innerWidth}else{tickerWidth=tickerMinWidth}var threeTimes=[iText,iText,iText].join(" ");tickerJQ.text(threeTimes)}}if(itemOffset.top-tickerMinHeight<=0){if(itemOffset.top+iItemJQ[0].clientHeight+tickerMinHeight<=window.innerHeight){tickerTop=itemOffset.top+iItemJQ[0].clientHeight}else{var diff=iMouseEvent.clientY+tickerMinHeight-window.innerHeight;if(iMouseEvent.clientY>diff){tickerTop=iMouseEvent.clientY-diff}else{tickerTop=0}}}var tickerwrapJQ=tickerJQ.closest(".edrawings-ticker-wrapper");tickerwrapJQ.offset({left:tickerLeft,top:tickerTop}).css("width",tickerWidth).removeClass("edrawings-ui-hide");if(tickerAnimation){tickerwrapJQ.addClass("edrawings-animation")}}function l_hideTicker(){var tickerwrapJQ=$(".edrawings-ticker-wrapper");if(!tickerwrapJQ.hasClass("edrawings-ui-hide")){var tickerJQ=tickerwrapJQ.find(".edrawings-ticker");tickerJQ.text("");tickerwrapJQ.addClass("edrawings-ui-hide").removeClass("edrawings-animation").css("left","").css("top","").css("width","")}}function l_positionMenuPanelCollapseButton(){var activeButtonsJQ=$(".edrawings-tool-button.active-button");if(activeButtonsJQ.length){if(eDwUIUtils.scrollToTarget(activeButtonsJQ)){l_resizeToolBar()}var collapsedPanelsJQ=$(".edrawings-submenu.active.edrawings-collapsed");if(collapsedPanelsJQ.length){var attrStyle=collapsedPanelsJQ.find(".edrawings-menu-panel-arrow-collapse").attr("style");if(!!attrStyle){eDwUIUtils.positionMenuPanelArrowCollapseButton(collapsedPanelsJQ,activeButtonsJQ)}}}}function l_fixMenuPanelInwardToolbar(){var panelsJQ=$(".edrawings-submenu.active:not(.edrawings-collapsed), .edrawings-hud-menu.active");panelsJQ.each(function(iIndex,iPanel){var panelJQ=$(iPanel);eDwUIUtils.fixMenuPanelInwardToolbar(panelJQ)})}return eDwUIBaseEventHandlers});define("eDwUIBasePlugin",["require","exports","eDwUIHTMLEventMgr","eDwUIShortcutMenu","eDwEventMgr","eDwEvents","eDwUIUtils"],function(require,exports,eDwUIHTMLEventMgr,eDwUIShortcutMenu,eDwEventMgr,eDwEvents_6,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var eDwUIBasePlugin=function(){function eDwUIBasePlugin(iPluginGroupName,iViewer,iButtonInfo,iViewerFeatOpts){if(iViewer===void 0){iViewer=null}if(iButtonInfo===void 0){iButtonInfo=null}if(iViewerFeatOpts===void 0){iViewerFeatOpts=null}var _this=this;console.debugLog("UIPlugin","Constructed "+iPluginGroupName+" plugin.");this.mPluginGroupName=iPluginGroupName;this.mViewer=iViewer;this.mViewerFeatOpts=iViewerFeatOpts||iViewer&&iViewer.ViewerFeatureOpts;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mPluginDependencies=[];this.mPluginButtonInfo=iButtonInfo;eDwUIShortcutMenu.get().setPluginCheck(iPluginGroupName,function(iPluginName){return _this.check(iPluginName)})}eDwUIBasePlugin.prototype.init=function(iPanelsToLoad){return __awaiter(this,void 0,void 0,function(){var promises,_i,iPanelsToLoad_1,panelToLoad;return __generator(this,function(_a){switch(_a.label){case 0:this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",true);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",true);if(!iPanelsToLoad)return[3,2];promises=[];for(_i=0,iPanelsToLoad_1=iPanelsToLoad;_i<iPanelsToLoad_1.length;_i++){panelToLoad=iPanelsToLoad_1[_i];promises.push(this.loadPanel(panelToLoad.ID,panelToLoad.HTML))}return[4,Promise.all(promises)];case 1:_a.sent();_a.label=2;case 2:this.addEventHandlers();return[2]}})})};eDwUIBasePlugin.prototype.onClick=function(iActivate){};eDwUIBasePlugin.prototype.destroy=function(){this.removeEventHandlers();this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",false);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",false);console.debugLog("UIPlugin","Destroyed "+this.mPluginGroupName+" plugin.")};eDwUIBasePlugin.prototype.initPluginButton=function(){if(this.mPluginButtonInfo){var buttonJQ=$(this.mPluginButtonInfo.ID);if(buttonJQ){buttonJQ.removeClass("edrawings-icon-plugin");eDwUIUtils.hide(this.mPluginButtonInfo.ID,false)}}};eDwUIBasePlugin.prototype.check=function(iPluginName){return iPluginName===this.PluginGroupName};eDwUIBasePlugin.prototype.isButtonForThisPlugin=function(iButtonJQ){return iButtonJQ&&iButtonJQ.length&&this.mPluginButtonInfo&&this.mPluginButtonInfo.ID&&this.mPluginButtonInfo.ID.indexOf(iButtonJQ[0].id)>-1?true:false};eDwUIBasePlugin.prototype.addEventHandlers=function(){};eDwUIBasePlugin.prototype.removeEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers()};eDwUIBasePlugin.prototype.onActivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.onDeactivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.addAppObjEvent=function(iAppEvent,iEventObjMethod,iAdd){var eventMgr=eDwEventMgr.get();var eventMgrMethod=iAdd?"addEventHandlerObj":"removeEventHandlerObj";eventMgr[eventMgrMethod](iAppEvent,this,iEventObjMethod)};eDwUIBasePlugin.prototype.loadPanel=function(iPanelID,iHTMLFileName){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.loadPanel(iPanelID,iHTMLFileName)];case 1:return[2,_a.sent()]}})})};Object.defineProperty(eDwUIBasePlugin.prototype,"PluginGroupName",{get:function(){return this.mPluginGroupName},enumerable:true,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"PluginButtonID",{get:function(){return this.mPluginButtonInfo?this.mPluginButtonInfo.ID:""},enumerable:true,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"Dependencies",{get:function(){return this.mPluginDependencies},enumerable:true,configurable:true});return eDwUIBasePlugin}();exports.eDwUIBasePlugin=eDwUIBasePlugin;function isActiveSelection(iViewer){return iViewer.SelectionMgr.length?true:false}exports.isActiveSelection=isActiveSelection});define("eDwUIDebugHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwTypes"],function(require,exports,eDwUIHTMLGenerator,eDwTypes_15){"use strict";var _a;var eDwUIDebugHTMLGenerator=function(_super){__extends(eDwUIDebugHTMLGenerator,_super);function eDwUIDebugHTMLGenerator(iViewer,iPanelUIID){var _this=_super.call(this,iViewer,iPanelUIID)||this;_this.mHCModel=iViewer.getModel().getHCModel();return _this}eDwUIDebugHTMLGenerator.prototype.getNodeFromID=function(iNodeID){return l_getHCNode(iNodeID)};eDwUIDebugHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUIDebugHTMLGenerator.prototype.forNodeGetName=function(iNode){return this.mHCModel.getNodeName(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHCNode(iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return this.mHCModel.getNodeParent(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeGetChildren=function(iNode){return this.mHCModel.getNodeChildren(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIDebugHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return _super.prototype.forNodeGetDataAttributes.call(this,iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){var nodeHCID=this.forNodeGetID(iNode);return this.forNodeGetName(iNode)+" ID: "+nodeHCID+" TYPE: "+c_nodeTypes[this.mHCModel.getNodeType(nodeHCID)]+" VISIBLE: "+this.mHCModel.getNodeVisibility(nodeHCID)};eDwUIDebugHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return"edrawings-body-visible"};return eDwUIDebugHTMLGenerator}(eDwUIHTMLGenerator);var c_nodeTypes=(_a={},_a[eDwTypes_15.HC.NodeType.AssemblyNode]="Assembly",_a[eDwTypes_15.HC.NodeType.Body]="Body",_a[eDwTypes_15.HC.NodeType.BodyInstance]="Body Instance",_a[eDwTypes_15.HC.NodeType.BrepBody]="BRep Body",_a[eDwTypes_15.HC.NodeType.CadView]="CAD View",_a[eDwTypes_15.HC.NodeType.DrawingSheet]="Drawing Sheet",_a[eDwTypes_15.HC.NodeType.Part]="Part",_a[eDwTypes_15.HC.NodeType.PartInstance]="Part Instance",_a[eDwTypes_15.HC.NodeType.Pmi]="PMI",_a[eDwTypes_15.HC.NodeType.PmiBody]="PMI Body",_a[eDwTypes_15.HC.NodeType.PointsBody]="Points Body",_a[eDwTypes_15.HC.NodeType.TessBody]="Tessellation Body",_a[eDwTypes_15.HC.NodeType.Unknown]="Unknown",_a[eDwTypes_15.HC.NodeType.ViewFrame]="View Frame",_a[eDwTypes_15.HC.NodeType.WireBody]="Wire Body",_a);function l_isHCNode(iNode){return!isNaN(iNode)}function l_getHCNode(iNode){if(!l_isHCNode(iNode)){throw new Error("Not an HC node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIDebugHTMLGenerator});define("eDwUIHTMLEventMgr",["require","exports"],function(require,exports){"use strict";var eDwUIHTMLEventMgr=function(){function eDwUIHTMLEventMgr(){this.mEventHandlerData={}}eDwUIHTMLEventMgr.prototype.addDelegatedEventHandler=function(iElemSelector,iEventName,iEventHandler){if(!iElemSelector||!iEventName||!iEventHandler)return false;var selectors=iElemSelector.split(" ");if(selectors.length<2)return false;var ancestorElementID=selectors.shift();return this.commonAddEventHandler(ancestorElementID,iEventName,iEventHandler,selectors.join().replace(".",""))};eDwUIHTMLEventMgr.prototype.addEventHandler=function(iElemID,iEventName,iEventHandler){if(!iElemID||!iEventName||!iEventHandler)return false;return this.commonAddEventHandler(iElemID,iEventName,iEventHandler)};eDwUIHTMLEventMgr.prototype.removeAllEventHandlers=function(){for(var eventName in this.mEventHandlerData){if(this.mEventHandlerData.hasOwnProperty(eventName)){var handlersOfEvent=this.mEventHandlerData[eventName];for(var elemID in handlersOfEvent){if(handlersOfEvent.hasOwnProperty(elemID)){this.removeEventHandlersByID(elemID,eventName,handlersOfEvent)}}delete this.mEventHandlerData[eventName]}}this.mEventHandlerData={}};eDwUIHTMLEventMgr.prototype.removeEventHandlers=function(iElemID,iEventName){var handlersRemoved=false;if(this.mEventHandlerData.hasOwnProperty(iEventName)){var handlersOfEvent=this.mEventHandlerData[iEventName];if(handlersOfEvent.hasOwnProperty(iElemID)){handlersRemoved=this.removeEventHandlersByID(iElemID,iEventName,handlersOfEvent)}}return handlersRemoved};eDwUIHTMLEventMgr.prototype.commonAddEventHandler=function(iElemID,iEventName,iEventHandler,iElemClasses){if(iElemClasses===void 0){iElemClasses=""}var elements=[];if(iElemID==="window")elements.push(window);else if(iElemID==="document")elements.push(document);else elements=$(iElemID).toArray();if(!elements.length)return false;var handlersOfEvent=this.mEventHandlerData[iEventName];if(!handlersOfEvent){handlersOfEvent=this.mEventHandlerData[iEventName]={}}var elemHandlers=handlersOfEvent[iElemID];if(!elemHandlers){elemHandlers=handlersOfEvent[iElemID]={MainDispatcher:null,Handlers:[]}}if(elemHandlers.MainDispatcher){for(var _i=0,elements_1=elements;_i<elements_1.length;_i++){var element=elements_1[_i];element.removeEventListener(iEventName,elemHandlers.MainDispatcher,true)}}elemHandlers.MainDispatcher=function(ioEvent){eventDispatcher(ioEvent,elemHandlers.Handlers)};for(var _a=0,elements_2=elements;_a<elements_2.length;_a++){var element=elements_2[_a];element.addEventListener(iEventName,elemHandlers.MainDispatcher,true);elemHandlers.Handlers.push({EventTarget:element,ElementID:iElemID,TargetElemClasses:iElemClasses,Handler:iEventHandler})}console.debugLog("UIEventMgr","Added event - name = "+iEventName+", id = "+iElemID+", classes = "+iElemClasses+", Num handlers = "+elemHandlers.Handlers.length);return true};eDwUIHTMLEventMgr.prototype.removeEventHandlersByID=function(iElemID,iEventName,ioHandlersOfEvent){var handlersRemoved=false;var elemHandlers=ioHandlersOfEvent[iElemID];if(elemHandlers&&elemHandlers.Handlers.length){console.debugLog("UIEventMgr","Removed "+elemHandlers.Handlers.length+" handlers for event "+iEventName+" on element ID "+iElemID);for(var _i=0,_a=elemHandlers.Handlers;_i<_a.length;_i++){var handler=_a[_i];handler.EventTarget.removeEventListener(iEventName,elemHandlers.MainDispatcher,true)}elemHandlers.Handlers=[];handlersRemoved=true}else{console.debugLog("UIEventMgr","Tried to remove handlers for event "+iEventName+" on element ID "+iElemID+" but they were removed already.")}return handlersRemoved};return eDwUIHTMLEventMgr}();function eventDispatcher(ioEvent,iHandlerObjs){if(!iHandlerObjs||!iHandlerObjs.length)return;console.debugLog("UIEvents","Event = "+ioEvent.type+", Num handlers = "+iHandlerObjs.length);var runHandler=false;var targetJQ=$(ioEvent.target);while(targetJQ&&targetJQ.length&&!runHandler){for(var _i=0,iHandlerObjs_1=iHandlerObjs;_i<iHandlerObjs_1.length;_i++){var handlerObj=iHandlerObjs_1[_i];var targetClassName=targetJQ.className;console.debugLog("UIEvents"," element ID = "+handlerObj.ElementID+", target classes = "+handlerObj.TargetElemClasses+(targetClassName?", event target classes = "+targetClassName:""));var targetElemClasses=handlerObj.TargetElemClasses;var classes=targetElemClasses?targetElemClasses.split(" "):[];var numMatches=0;for(var j=0;j<classes.length;j++){numMatches+=$(targetJQ).hasClass(classes[j])?1:0}if(numMatches!==classes.length)continue;handlerObj.Handler(ioEvent);runHandler=true;var eventJQ=$(ioEvent);if(ioEvent.cancelable&&ioEvent.cancelBubble||eventJQ.isPropagationStopped&&eventJQ.isPropagationStopped()){return}}var parentJQ=targetJQ.parent();targetJQ=null;if(!runHandler&&parentJQ&&parentJQ.length){targetJQ=parentJQ;console.debugLog("UIEvents","Events not found on target, checking parent "+"id="+targetJQ.id+", class="+targetJQ.className)}else if(!runHandler){console.debugLog("UIEvents","No matching events found on target.")}else{console.debugLog("UIEvents","Done processing event handlers.")}}}return eDwUIHTMLEventMgr});define("eDwUIHTMLGenerator",["require","exports","eDwHierarchyNode"],function(require,exports,eDwHierarchyNode){"use strict";var cDefaultInitialLeftPaddingInPX=4;var cDefaultLeftPaddingInPX=27;var eDwUIHTMLGenerator=function(){function eDwUIHTMLGenerator(iViewer,iPanelUIID,iInitialLeftPaddingInPX,iLeftPaddingInPX){if(iInitialLeftPaddingInPX===void 0){iInitialLeftPaddingInPX=cDefaultInitialLeftPaddingInPX}if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=cDefaultLeftPaddingInPX}this.mViewer=iViewer;this.mPanelUIID=iPanelUIID;this.mLeftPaddingInPX=iLeftPaddingInPX;this.mInitialLeftPaddingInPX=iInitialLeftPaddingInPX}eDwUIHTMLGenerator.prototype.generateHTMLForChildNodes=function(iParentNode,iIncludeAllDescendents,iLeftPaddingInPX){if(iIncludeAllDescendents===void 0){iIncludeAllDescendents=false}if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=undefined}var generatedHTML="";var offset=iLeftPaddingInPX===undefined?this.mInitialLeftPaddingInPX:iLeftPaddingInPX+this.mLeftPaddingInPX;var childrenNodes=this.forNodeGetChildren(iParentNode);for(var _i=0,childrenNodes_1=childrenNodes;_i<childrenNodes_1.length;_i++){var childNode=childrenNodes_1[_i];var descendentsHTML=iIncludeAllDescendents?this.generateHTMLForChildNodes(childNode,iIncludeAllDescendents,offset):"";if(!this.shouldIncludeNode(childNode)&&descendentsHTML.length===0){continue}var moreClasses=descendentsHTML?" edrawings-tree-expanded ":"";var nodeHTML=this.generateHTMLForNode(childNode,offset,moreClasses);generatedHTML+=nodeHTML+descendentsHTML}return generatedHTML};eDwUIHTMLGenerator.prototype.generateHTMLForNode=function(iNode,iLeftPaddingInPX,iAdditionalClasses,iIgnoreChildren){if(iAdditionalClasses===void 0){iAdditionalClasses=""}if(iIgnoreChildren===void 0){iIgnoreChildren=false}var additionalClasses=iAdditionalClasses.replace("edrawings-tree-expanded","");var expanded=iAdditionalClasses.length!==additionalClasses.length;var nonRootClass=additionalClasses.indexOf("edrawings-root")>-1?"":" edrawings-list-option ";var highlight=this.getHighlightClass(iNode);var currOffset=iLeftPaddingInPX===undefined?this.mInitialLeftPaddingInPX+"px":iLeftPaddingInPX+"px";var generatedHTML="<div class='edrawings-submenu-list-item"+highlight+" "+additionalClasses+"' style='padding-left: "+currOffset+"; width:calc(100% - "+currOffset+");' "+this.forNodeGetDataAttributes(iNode)+">";generatedHTML+=this.getPreSpanHTML(iNode,additionalClasses,expanded,iIgnoreChildren);generatedHTML+="<span class='item-tree-text"+highlight+" "+additionalClasses+"' "+this.forNodeGetDataAttributes(iNode)+"style='margin-left: 0px;'>"+this.forNodeGetElementContent(iNode)+"</span>";generatedHTML+=this.getPostSpanHTML(nonRootClass+" "+additionalClasses);generatedHTML+="</div>";return generatedHTML};eDwUIHTMLGenerator.prototype.getNodeFromID=function(iNodeID){var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_3=modelViews;_i<modelViews_3.length;_i++){var modelView=modelViews_3[_i];var hierNode=modelView.Nodes[iNodeID];if(hierNode)return hierNode}return undefined};eDwUIHTMLGenerator.getDisplayStateCSSClass=function(iHierNode,iNewAttrib){var classCSS="edrawings-"+iHierNode.Category;classCSS+=iHierNode.isActive()?"":"-inactive";var dummyNode=eDwHierarchyNode.create(iNewAttrib);var displayState=iNewAttrib?dummyNode.getDisplayState(iHierNode.getAttribs()):iHierNode.getDisplayState();switch(displayState){case"Invisible":classCSS+="-invisible";break;case"Visible":classCSS+="-visible";break;case"Transparent":classCSS+="-transparent";break;default:console.debugLog("UI","Invalid node display type: "+displayState)}return classCSS};eDwUIHTMLGenerator.prototype.shouldIncludeNode=function(iNode){var searchField=$(this.mPanelUIID+" .edrawings-menu-search-input");if(searchField&&searchField.val()){var regex=new RegExp(searchField.val(),"i");if(this.forNodeGetName(iNode).search(regex)<0)return false}return true};eDwUIHTMLGenerator.prototype.getHighlightClass=function(iNode){var isSelected=this.mViewer.SelectionMgr.isSelected(this.forNodeGetID(iNode));return isSelected?" edrawings-list-selected ":""};eDwUIHTMLGenerator.prototype.getPreSpanIconHTML=function(iNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren){var generatedHTML="";if(!iIgnoreChildren&&this.forNodeHasChildren(iNode)){generatedHTML+="edrawings-tree-arrow "+"edrawings-tree-arrow-space-common ";if(iNodeExpanded)generatedHTML+="edrawings-tree-expanded "}else{generatedHTML+="edrawings-tree-space "+"edrawings-tree-arrow-space-common "}return generatedHTML};eDwUIHTMLGenerator.prototype.getPreSpanHTML=function(iNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren){var generatedHTML="<div class='"+this.getPreSpanIconHTML(iNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren);var nodeIconClass=this.forNodeGetDisplayStateCSSClass(iNode);generatedHTML+=iAdditionalClasses+"' data-hoopsid='"+this.forNodeGetID(iNode)+"'> </div> <div class='"+nodeIconClass+" "+iAdditionalClasses+" edrawings-tree-icon'> </div>";return generatedHTML};eDwUIHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return"<div class='edrawings-submenu-list-item-button "+iAdditionalClasses+"'> </div>"};eDwUIHTMLGenerator.prototype.forNodeGetName=function(iNode){return getHierarchyNode(iNode).Name};eDwUIHTMLGenerator.prototype.forNodeGetID=function(iNode){return getHierarchyNode(iNode).HOOPSID};eDwUIHTMLGenerator.prototype.forNodeGetParentID=function(iNode){var parentHierNode=getHierarchyNode(iNode).ParentNode;return parentHierNode?parentHierNode.HOOPSID:undefined};eDwUIHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childrenObj=getHierarchyNode(iNode).getChildren();return Object.keys(childrenObj).map(function(key){return childrenObj[key]})};eDwUIHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){var parentNodeID=this.forNodeGetParentID(iNode);return" data-hoopsid='"+this.forNodeGetID(iNode)+"' "+(parentNodeID!==undefined?"data-hoopsparentid='"+parentNodeID+"' ":"")};eDwUIHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){return this.forNodeGetName(iNode)};eDwUIHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return eDwUIHTMLGenerator.getDisplayStateCSSClass(getHierarchyNode(iNode))};return eDwUIHTMLGenerator}();function getHierarchyNode(iNode){if(!eDwHierarchyNode.isHierarchyNode(iNode)){throw new Error("Not a hierarchy node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIHTMLGenerator});define("eDwUIHierNodeVisMenuItemsPlugin",["require","exports","eDwCommandMgr","eDwSetHierNodeAttribsCmd","eDwSelIsolateCmd","eDwUIShortcutMenu","eDwUIUtils","eDwEventMgr","eDwKeyMgr","eDwEvents","eDwTypes","eDwUIBasePlugin","utils"],function(require,exports,eDwCommandMgr,eDwSetHierNodeAttribsCmd,eDwSelIsolateCmd,eDwUIShortcutMenu,eDwUIUtils,eDwEventMgr,eDwKeyMgr_4,eDwEvents_7,eDwTypes_16,eDwUIBasePlugin_1,utils){"use strict";var eDwUIHierNodeVisMenuItemPlugin=function(_super){__extends(eDwUIHierNodeVisMenuItemPlugin,_super);function eDwUIHierNodeVisMenuItemPlugin(iViewer,iViewerFeatOpts){return _super.call(this,"HideShow",iViewer)||this}eDwUIHierNodeVisMenuItemPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,function(){function isNotPartModel(iViewer){return!iViewer.getModel().isPart()}function isActiveSelectionForASMAndDRW(iViewer){return eDwUIBasePlugin_1.isActiveSelection(iViewer)&&isNotPartModel(iViewer)}function isActiveSelectionForASM(iViewer){return eDwUIBasePlugin_1.isActiveSelection(iViewer)&&iViewer.getModel().isAssembly()}var shortcutMenu;var _this=this;return __generator(this,function(_a){_super.prototype.init.call(this);shortcutMenu=eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-hide-show",function(iEvent,iUIItemJQ){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){var attrib={Visible:!selHierNodes[0].getAttribs().Visible};var selHideShowCmd=new eDwSetHierNodeAttribsCmd(_this.mViewer,selHierNodes,attrib);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(selHideShowCmd);cmdMgr.remove(selHideShowCmd,"commit")}shortcutMenu.hide()},isActiveSelectionForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-transp-solid",function(iEvent,iUIItemJQ){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){var attrib={Visible:true,Opaque:!selHierNodes[0].getAttribs().Opaque};var selTransSolidCmd=new eDwSetHierNodeAttribsCmd(_this.mViewer,selHierNodes,attrib);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(selTransSolidCmd);cmdMgr.remove(selTransSolidCmd,"commit")}shortcutMenu.hide()},isActiveSelectionForASM);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-isolate",function(iEvent,iUIItemJQ){var selIsolateCmd=new eDwSelIsolateCmd(_this.mViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(selIsolateCmd);cmdMgr.remove(selIsolateCmd,"commit");shortcutMenu.hide()},isActiveSelectionForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-show-all",function(iEvent,iUIItemJQ){var modelView=_this.mViewer.getModel().getActiveModelView();var attrib={Visible:true};var showAllCmd=new eDwSetHierNodeAttribsCmd(_this.mViewer,modelView.getNodes(),attrib);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(showAllCmd);cmdMgr.remove(showAllCmd,"commit");shortcutMenu.hide()},isNotPartModel);this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item-button","click",function(iEvent){console.debugLog("UIPlugin","HideShow menu button click");var selected=false;var targetJQ=$(iEvent.target);var parentJQ=targetJQ.parent();eDwUIUtils.scrollToTarget(parentJQ);var selHCID=eDwUIUtils.getHCID(parentJQ);if(!isNaN(selHCID)){var existingIdx=_this.mViewer.SelectionMgr.getSelectedNodeIDIndex(selHCID);selected=existingIdx>-1?true:_this.mViewer.SelectionMgr.selectByID(selHCID)}if(selected){_this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)}});console.debugLog("UIPlugin","Added HideShow click event handler");this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item","mousedown",function(iEvent){console.debugLog("UIPlugin","HideShow menu mousedown");var eventJQ=$(iEvent);var targetJQ=$(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(!targetJQ||!targetJQ.length||!eventJQ||!eventJQ.length||targetJQ.hasClass("edrawings-root")||targetJQ.hasClass("edrawings-tree-arrow")||targetJQ.hasClass("edrawings-tree-expanded")||targetJQ.hasClass("edrawings-tree-icon")){return}if(!targetJQ.hasClass("edrawings-submenu-list-item"))return;var mouseEvent=iEvent;var pressedRMB=eDwKeyMgr_4.eDwKeyMgr.isRMBPressed(mouseEvent);var selected=false;var selHCID=eDwUIUtils.getHCID(targetJQ);if(!isNaN(selHCID)){if(!eDwKeyMgr_4.eDwKeyMgr.get().isDown("Shift")){selected=_this.mViewer.SelectionMgr.selectByID(selHCID)}else{var selector=".edrawings-submenu-list-item"+".edrawings-list-selected:has([data-hoopsid])";var filter=".edrawings-submenu-list-item:has([data-hoopsid])";var collectionPrevJQ=targetJQ.prevUntil(selector,filter);if(collectionPrevJQ.length===0||collectionPrevJQ.last().prev(selector).length===0){collectionPrevJQ=$([])}var collectionNextJQ=targetJQ.nextUntil(selector,filter);if(collectionNextJQ.length===0||collectionNextJQ.last().next(selector).length===0){collectionNextJQ=$([])}var collectionJQ=$([]).add(collectionPrevJQ).add(targetJQ).add(collectionNextJQ);collectionJQ.each(function(iIdx,iElement){var elementJQ=$(iElement);var selHCID=eDwUIUtils.getHCID(elementJQ);_this.mViewer.SelectionMgr.selectByID(selHCID)});selected=true;iEvent.preventDefault()}}else{selected=!targetJQ.hasClass("edrawings-list-selected");targetJQ[selected?"addClass":"removeClass"]("edrawings-list-selected")}var appEvent=selected&&pressedRMB?eDwEvents_7.RightClickEvent:eDwEvents_7.UnselectEvent;_this.fireEvent(iEvent,appEvent)});console.debugLog("UIPlugin","Added HideShow mousedown event handler");return[2]})})};eDwUIHierNodeVisMenuItemPlugin.prototype.check=function(iPluginName){return _super.prototype.check.call(this,iPluginName)||iPluginName===undefined};eDwUIHierNodeVisMenuItemPlugin.prototype.fireEvent=function(iEvent,iAppEvent){if(!iEvent||!iAppEvent||!this.mViewer)return;if(iAppEvent===eDwEvents_7.RightClickEvent){if(utils.isOfType(iEvent,"clientX")){var screenPos=new eDwTypes_16.HC.Point2(iEvent.clientX,iEvent.clientY);eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,screenPos,this.PluginGroupName)}}else if(iAppEvent===eDwEvents_7.UnselectEvent){eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,[])}};return eDwUIHierNodeVisMenuItemPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIHierNodeVisMenuItemPlugin});define("eDwUILayerHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUILayerHTMLGenerator=function(_super){__extends(eDwUILayerHTMLGenerator,_super);function eDwUILayerHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUILayerHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,function(){var generatedHTML,activeModelView,layerNodes,_i,layerNodes_1,layerNode;return __generator(this,function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){layerNodes=activeModelView.Hierarchy.findNodes("Category","layer");if(layerNodes.length){generatedHTML+="<div class='edrawings-submenu-list-item' "+"style='padding-left: "+this.mInitialLeftPaddingInPX+"px; "+"width:calc(100% - "+this.mInitialLeftPaddingInPX+"px);'> "+"<input id='layer-all' class='layer-all "+" edrawings-layer-checkbox-style' "+" type='checkbox' checked> "+"<span class='item-tree-text'>"+"Select all</span></div>"}for(_i=0,layerNodes_1=layerNodes;_i<layerNodes_1.length;_i++){layerNode=layerNodes_1[_i];if(!this.shouldIncludeNode(layerNode))continue;generatedHTML+=this.generateHTMLForNode(layerNode,undefined,"edrawings-root "+iAdditionalClasses,true)}}return[2,generatedHTML]})})};eDwUILayerHTMLGenerator.prototype.getPreSpanHTML=function(iHierNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren){return"<input class='item-layer-checkbox"+" edrawings-layer-checkbox-style' type='checkbox' "+(iHierNode.getAttribs().Visible?"checked":"unchecked")+">"};eDwUILayerHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};return eDwUILayerHTMLGenerator}(eDwUIHTMLGenerator);return eDwUILayerHTMLGenerator});define("eDwUIMessageReporter",["require","exports","eDwUIUtils","utils"],function(require,exports,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function showServerLoadErrorPanel(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({},"edrawings-server-load-failure-1")];case 1:_a.sent();return[4,l_showServerError(iServerID,iModelCacheName)];case 2:_a.sent();return[2]}})})}exports.showServerLoadErrorPanel=showServerLoadErrorPanel;function showResultPanel(iResult){return __awaiter(this,void 0,void 0,function(){var showButtons,_a;return __generator(this,function(_b){switch(_b.label){case 0:showButtons=false;if(!utils.isOfType(iResult,"ServerID"))return[3,2];return[4,l_showConversionResultPanel(iResult)];case 1:showButtons=_b.sent();return[3,5];case 2:_a=iResult.ErrorCode;return[3,3];case 3:return[4,l_showPanelGeneric(iResult)];case 4:showButtons=_b.sent();return[3,5];case 5:return[2,showButtons]}})})}exports.showResultPanel=showResultPanel;function showMessagePanelFromCSScontent(iTextClass,iOptions){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText(!!iOptions?iOptions:{},iTextClass)];case 1:_a.sent();return[4,l_showMessagePanel()];case 2:_a.sent();return[2]}})})}exports.showMessagePanelFromCSScontent=showMessagePanelFromCSScontent;function l_showConversionResultPanel(iResult){return __awaiter(this,void 0,void 0,function(){var showButtons,_a;return __generator(this,function(_b){switch(_b.label){case 0:showButtons=l_shouldShowButtons();_a=iResult.ErrorCode;switch(_a){case"URLNotAccessible":return[3,1];case"UnsupportedFileType":return[3,4];case"UnknownLicenseError":return[3,7];case"LicenseVersionMismatch":return[3,10];case"NoMoreLicenses":return[3,13];case"CannotConnectToLicenseServer":return[3,16];case"LicenseExpired":return[3,19];case"UnknownError":return[3,22]}return[3,25];case 1:return[4,l_addParagraphToPanelText({"data-file-url":iResult.ErrorData[0]},"edrawings-server-url-inaccessible")];case 2:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_b.sent();return[3,29];case 4:return[4,l_addParagraphToPanelText({"data-file":iResult.FileName},"edrawings-server-unsupported-file-type")];case 5:_b.sent();return[4,l_showMessagePanel("",true,showButtons,"edrawings-error-title edrawings-dialog-no-close")];case 6:_b.sent();return[3,29];case 7:return[4,l_addParagraphToPanelText({},"edrawings-unknown-license-error")];case 8:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 9:_b.sent();return[3,29];case 10:return[4,l_addParagraphToPanelText({},"edrawings-license-version-mismatch-error")];case 11:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 12:_b.sent();return[3,29];case 13:return[4,l_addParagraphToPanelText({},"edrawings-no-licenses-error")];case 14:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 15:_b.sent();return[3,29];case 16:return[4,l_addParagraphToPanelText({},"edrawings-license-server-connection-error")];case 17:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 18:_b.sent();return[3,29];case 19:return[4,l_addParagraphToPanelText({},"edrawings-license-expired-error")];case 20:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 21:_b.sent();return[3,29];case 22:return[4,l_addParagraphToPanelText({},"edrawings-unknown-error")];case 23:_b.sent();return[4,l_showServerError(iResult.ServerID,iResult.ModelCacheName)];case 24:_b.sent();return[3,29];case 25:if(!l_isDebug())return[3,27];return[4,l_showPanelGeneric(iResult)];case 26:_b.sent();return[3,28];case 27:showServerLoadErrorPanel(iResult.ServerID,iResult.ModelCacheName);_b.label=28;case 28:return[3,29];case 29:return[2,showButtons]}})})}function l_showPanelGeneric(iResult){return __awaiter(this,void 0,void 0,function(){var _a,msg,classes,_i,_b,data;return __generator(this,function(_c){switch(_c.label){case 0:_a=iResult.ErrorCode;switch(_a){case"AJAXFailure":return[3,1];case"IncompleteFileProcessing":return[3,4];case"ModelLoadInViewerFailed":return[3,7]}return[3,11];case 1:return[4,l_addParagraphToPanelText({},"edrawings-server-ajax-failure")];case 2:_c.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_c.sent();return[3,13];case 4:return[4,l_addParagraphToPanelText({},"edrawings-unable-process-file")];case 5:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 6:_c.sent();return[3,13];case 7:return[4,l_addParagraphToPanelText({"data-error-message":iResult.ErrorData[0]},"edrawings-viewer-load-failure")];case 8:_c.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iResult.ErrorData[1]},"edrawings-server-load-failure-3")];case 9:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 10:_c.sent();return[3,13];case 11:msg="";classes="edrawings-dialog-no-close";switch(iResult.ErrorCode){case"Error":classes+=" edrawings-error-title";break;case"Warn":classes+=" edrawings-warn-title";break;default:classes+=" edrawings-info-title";msg+="<div>"+iResult.ErrorCode+"</div>";break}for(_i=0,_b=iResult.ErrorData;_i<_b.length;_i++){data=_b[_i];msg+="<div style='white-space: nowrap'>"+data+"</div>"}return[4,l_showMessagePanel(msg,true,false,classes)];case 12:_c.sent();return[3,13];case 13:return[2,l_shouldShowButtons()]}})})}function l_addParagraphToPanelText(iOptions,iTextClass){return __awaiter(this,void 0,void 0,function(){function getValue(iValue){return typeof iValue==="string"?"'"+iValue+"'":iValue.toString()}var msgPanelText,div,optionKeys,_i,optionKeys_1,optionKey;return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_getDailogPanelTextElem()];case 1:msgPanelText=_a.sent();div="<div class='"+iTextClass+" edrawings-dialog-content'";optionKeys=Object.keys(iOptions);for(_i=0,optionKeys_1=optionKeys;_i<optionKeys_1.length;_i++){optionKey=optionKeys_1[_i];div+=" "+optionKey+"="+getValue(iOptions[optionKey])}div+="></div>";msgPanelText.append(div);return[2]}})})}function l_showMessagePanel(iMsg,iModal,iShowButtons,iDlgClasses){if(iMsg===void 0){iMsg=""}if(iModal===void 0){iModal=true}if(iShowButtons===void 0){iShowButtons=false}if(iDlgClasses===void 0){iDlgClasses="edrawings-info-title edrawings-dialog-no-close"}return __awaiter(this,void 0,void 0,function(){var msgPanelText,opts,msgPanel,msgPanelTitleJQ,text;return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_getDailogPanelTextElem()];case 1:msgPanelText=_a.sent();if(iMsg)msgPanelText.html(iMsg);opts={modal:iModal,width:window.innerWidth*.6,minWidth:200,dialogClass:iDlgClasses,closeOnEscape:iShowButtons};msgPanel=$("#edrawings-dialog-panel");if(iShowButtons){$.extend(opts,{buttons:{Ok:function(){msgPanel.dialog("close")}},close:function(iEvent){$(".edrawings-dialog-content").remove()}})}$.extend(opts,{beforeClose:function(iEvent){$(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().off("drop")},open:function(iEvent){$(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().on("drop",function(iEvent2){iEvent2.preventDefault();iEvent2.stopPropagation()})}});eDwUIUtils.hide("#WaitBanner",true);msgPanel.dialog(opts);if(iDlgClasses.indexOf("edrawings")>-1&&iDlgClasses.indexOf("title")>-1){msgPanelTitleJQ=msgPanel.prev().find(".ui-dialog-title");text="";if(msgPanelTitleJQ){text=msgPanelTitleJQ.css("content").replace(/^['"]+|\\|(;\s?})+|['"]$/g,"")}msgPanelTitleJQ.text(text)}return[2]}})})}function l_shouldShowButtons(){var viewerHTMLElem=$(eDwUIUtils.getViewerElementID()).get(0);return $._data(viewerHTMLElem,"events").dragover}function l_isDebug(){var viewerFeatOpts={Debug:false};eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts,false);return viewerFeatOpts.Debug}function l_getDailogPanelTextElem(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(!!lDialogTextJQ)return[3,2];return[4,eDwUIUtils.loadPanel("#edrawings-dialog-panel","dialogpanel.html")];case 1:_a.sent();lDialogTextJQ=$("#edrawings-dialog-panel-text");_a.label=2;case 2:return[2,lDialogTextJQ]}})})}function l_showServerError(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({"data-server-id":iServerID},"edrawings-server-load-failure-2")];case 1:_a.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iModelCacheName},"edrawings-server-load-failure-3")];case 2:_a.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_a.sent();return[2]}})})}var lDialogTextJQ=null});define("eDwUIModelViewHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUIModelViewHTMLGenerator=function(_super){__extends(eDwUIModelViewHTMLGenerator,_super);function eDwUIModelViewHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,function(){var generatedHTML,modelViews,_i,modelViews_4,modelView,modelViewHierNode;return __generator(this,function(_a){generatedHTML="";modelViews=this.mViewer.getModel().getModelViews();for(_i=0,modelViews_4=modelViews;_i<modelViews_4.length;_i++){modelView=modelViews_4[_i];modelViewHierNode=modelView.Hierarchy;if(!this.shouldIncludeNode(modelViewHierNode)){continue}generatedHTML+=this.generateHTMLForNode(modelViewHierNode,undefined,"edrawings-root "+iAdditionalClasses,true)}return[2,generatedHTML]})})};eDwUIModelViewHTMLGenerator.prototype.shouldIncludeNode=function(iHierNode){if(iHierNode.Category==="layer"||iHierNode.Category==="table"){return false}return _super.prototype.shouldIncludeNode.call(this,iHierNode)};eDwUIModelViewHTMLGenerator.prototype.getPreSpanIconHTML=function(iNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren){return""};return eDwUIModelViewHTMLGenerator}(eDwUIHTMLGenerator);return eDwUIModelViewHTMLGenerator});define("eDwUIPluginMgr",["require","exports","eDwServiceMgr","eDwGenericError"],function(require,exports,eDwServiceMgr,eDwGenericError){"use strict";var eDwUIPluginMgr=function(){function eDwUIPluginMgr(){this.clearPluginData()}eDwUIPluginMgr.prototype.loadPlugins=function(iPluginClassNames,iViewer,iViewerFeatOpts){return __awaiter(this,void 0,void 0,function(){var promises,_i,iPluginClassNames_1,pluginClassName;return __generator(this,function(_a){switch(_a.label){case 0:if(!iPluginClassNames.length)return[2];promises=[];for(_i=0,iPluginClassNames_1=iPluginClassNames;_i<iPluginClassNames_1.length;_i++){pluginClassName=iPluginClassNames_1[_i];if(!pluginClassName)continue;promises.push(this.loadPlugin(pluginClassName,iViewer,iViewerFeatOpts))}return[4,Promise.all(promises)];case 1:_a.sent();return[2]}})})};eDwUIPluginMgr.prototype.loadDynamicPlugins=function(iViewer){return __awaiter(this,void 0,void 0,function(){var pluginClassNames;return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwServiceMgr.get().importPlugins()];case 1:pluginClassNames=_a.sent();return[4,this.loadPlugins(pluginClassNames,iViewer)];case 2:_a.sent();return[2]}})})};eDwUIPluginMgr.prototype.onClick=function(iID,iActivate){var plugin=this.mIDToPluginMap[iID];if(plugin){plugin.onClick(iActivate);return true}return false};eDwUIPluginMgr.prototype.destroy=function(){for(var _i=0,_a=this.mUIPlugins;_i<_a.length;_i++){var plugin=_a[_i];plugin.destroy()}this.clearPluginData();eDwUIPluginMgr.sMgr=null};eDwUIPluginMgr.get=function(){if(!eDwUIPluginMgr.sMgr){eDwUIPluginMgr.sMgr=new eDwUIPluginMgr}return eDwUIPluginMgr.sMgr};eDwUIPluginMgr.prototype.clearPluginData=function(){this.mUIPlugins=[];this.mIDToPluginMap={};this.mPluginClassNameProcessed={}};eDwUIPluginMgr.prototype.loadPlugin=function(iPluginClassName,iViewer,iViewerFeatOpts){var _this=this;var onPluginLoaded=function(iGenericPluginClassConstructor){return __awaiter(_this,void 0,void 0,function(){var plugin,pluginButtonID,pluginClassNames,loadedPluginPromises,_i,pluginClassNames_1,pluginClassName,iExcp_14;return __generator(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,6,,7]);plugin=new iGenericPluginClassConstructor(iViewer,iViewerFeatOpts);this.mUIPlugins.push(plugin);pluginButtonID=plugin.PluginButtonID;if(pluginButtonID){this.mIDToPluginMap[pluginButtonID]=plugin}console.debugLog("UIPlugin","Dynamically loaded "+iPluginClassName);if(!plugin.Dependencies.length)return[3,4];return[4,eDwServiceMgr.get().importDependencies(plugin.Dependencies)];case 1:pluginClassNames=_a.sent();return[4,this.loadPlugins(pluginClassNames,iViewer,iViewerFeatOpts)];case 2:_a.sent();loadedPluginPromises=[];for(_i=0,pluginClassNames_1=pluginClassNames;_i<pluginClassNames_1.length;_i++){pluginClassName=pluginClassNames_1[_i];if(!pluginClassName)continue;try{loadedPluginPromises.push(this.loadPlugin(pluginClassName,iViewer,iViewerFeatOpts))}catch(iExcp){console.warn("Importing dependencies for "+iPluginClassName+" failed - "+iExcp.message)}}return[4,Promise.all(loadedPluginPromises)];case 3:_a.sent();_a.label=4;case 4:return[4,plugin.init()];case 5:_a.sent();console.debugLog("UIPlugin","Initialized "+iPluginClassName);return[3,7];case 6:iExcp_14=_a.sent();console.warn("Constructing "+iPluginClassName+" failed - "+iExcp_14.message);return[3,7];case 7:return[2]}})})};try{console.debugLog("UIPlugin","Attempting dynamic load of "+iPluginClassName);return new Promise(function(iResolveFunc,iRejectFunc){if(_this.mPluginClassNameProcessed[iPluginClassName]){iResolveFunc()}else{_this.mPluginClassNameProcessed[iPluginClassName]=true;require([iPluginClassName],function(iClassConstructor){(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,onPluginLoaded(iClassConstructor).then(iResolveFunc,function(iReason){if(iRejectFunc)iRejectFunc(iReason);else{var msg=JSON.stringify(iReason);console.debugLog("UIPlugin",msg);throw new eDwGenericError("")}})];case 1:_a.sent();return[2]}})})})()})}})}catch(iExcp){console.warn("Dynamic load failed for "+iPluginClassName+" - "+iExcp.message);return Promise.reject()}};return eDwUIPluginMgr}();return eDwUIPluginMgr});define("eDwUISheetTreeHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUISheetTreeHTMLGenerator=function(_super){__extends(eDwUISheetTreeHTMLGenerator,_super);function eDwUISheetTreeHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUISheetTreeHTMLGenerator.prototype.shouldIncludeNode=function(iHierNode){if(iHierNode.Category==="layer")return false;return _super.prototype.shouldIncludeNode.call(this,iHierNode)};return eDwUISheetTreeHTMLGenerator}(eDwUIHTMLGenerator);return eDwUISheetTreeHTMLGenerator});define("eDwUIShortcutMenu",["require","exports","eDwUIHTMLEventMgr","eDwGenericError","eDwEventMgr","eDwEvents","eDwUIUtils"],function(require,exports,eDwUIHTMLEventMgr,eDwGenericError,eDwEventMgr,eDwEvents_8,eDwUIUtils){"use strict";var eDwUIShortcutMenu=function(){function eDwUIShortcutMenu(){var _this=this;this.mMenuHandlers={};this.mMenuVisibilityHandlerObjs={};this.mCheckPluginHandlers={};$(c_menuID).menu({select:function(iEventObjJQ,iUIItemJQ){var itemJQ=iUIItemJQ.item;if(itemJQ.hasClass(".ui-state-disabled"))return;var handler=_this.mMenuHandlers[itemJQ.attr("id")];if(handler){handler(iEventObjJQ,iUIItemJQ)}else{console.debugLog("shortcutmenu","Missing shortcut menu handler: "+iUIItemJQ.item.attr("class"))}}});this.hide();this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mUIHTMLEventMgr.addEventHandler("document","contextmenu",eDwUIUtils.inhibitEventBehavior);var showHideShortcutMenu=function(iViewer,iScreenPos,iPluginName){for(var menuItemID in _this.mMenuVisibilityHandlerObjs){var visibilityHandlerObj=_this.mMenuVisibilityHandlerObjs[menuItemID];var pluginHandler=_this.mCheckPluginHandlers[visibilityHandlerObj.PluginName];var visState=pluginHandler?!pluginHandler(iPluginName):false;visState=visState||(visibilityHandlerObj.Handler?!visibilityHandlerObj.Handler(iViewer):false);eDwUIUtils.hide("#"+menuItemID,visState)}_this.show(iScreenPos.x,iScreenPos.y)};var hideShortcutMenu=function(iViewer){eDwUIUtils.hide(c_menuID,true)};var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerFunc(eDwEvents_8.RightClickEvent,showHideShortcutMenu);eventMgr.addEventHandlerFunc(eDwEvents_8.UnselectEvent,hideShortcutMenu)}eDwUIShortcutMenu.prototype.show=function(iX,iY,iParentRect){var numVisMenuItems=l_getNumVisMenuItems();if(!numVisMenuItems)return;var menuJQ=$(c_menuID);var viewerElemJQ=$("#edrawings-canvas");var parentRect=iParentRect?iParentRect:{Width:viewerElemJQ.width(),Height:viewerElemJQ.height()};var posx=iX;var posy=iY;var menuHeight=menuJQ.height();var menuWidth=menuJQ.width();if(posx+menuWidth>parentRect.Width){posx=parentRect.Width-menuWidth-5}if(posy+menuHeight>parentRect.Height){posy=parentRect.Height-menuHeight-5}menuJQ.css({top:posy+"px",left:posx+"px"});eDwUIUtils.hide(c_menuID,false)};eDwUIShortcutMenu.prototype.hide=function(){eDwUIUtils.hide(c_menuID,true);eDwUIUtils.hide(c_menuID+" ul",true);eDwUIUtils.hide(c_menuID+" li",true)};eDwUIShortcutMenu.prototype.isEmpty=function(){return!$(c_menuID+" ul").length&&!$(c_menuID+" li").length};eDwUIShortcutMenu.prototype.removeAllEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers();var eventMgr=eDwEventMgr.get();eventMgr.removeEventHandlerFunc(eDwEvents_8.RightClickEvent,"showHideShortcutMenu");eventMgr.removeEventHandlerFunc(eDwEvents_8.UnselectEvent,"hideShortcutMenu");this.mMenuHandlers={};this.mCheckPluginHandlers={}};eDwUIShortcutMenu.prototype.destroy=function(){this.hide();this.removeAllEventHandlers();$(c_menuID+" ul").remove();$(c_menuID+" li").remove();eDwUIShortcutMenu.sMenu=null};eDwUIShortcutMenu.prototype.addMenuItem=function(iPluginName,iMenuItemCSSClassName,iHandlerFunc,iIsVisibleFunc,iHideMenuItems,iParentMenuSelector){if(iHandlerFunc===void 0){iHandlerFunc=null}if(iIsVisibleFunc===void 0){iIsVisibleFunc=null}if(iHideMenuItems===void 0){iHideMenuItems=false}if(iParentMenuSelector===void 0){iParentMenuSelector=c_menuID}if(!iMenuItemCSSClassName){console.debugLog("shortcutmenu","Missing selector.");throw new eDwGenericError("Missing selector.")}var menuJQ=$(iParentMenuSelector);var menuItemJQ=l_insertInMenu("li",iPluginName,iMenuItemCSSClassName,menuJQ);var menuItemID=menuItemJQ.attr("id");if(iHandlerFunc){this.mMenuHandlers[menuItemID]=iHandlerFunc}var handlerObj=this.mMenuVisibilityHandlerObjs[menuItemID];if(!handlerObj){handlerObj=this.mMenuVisibilityHandlerObjs[menuItemID]={Handler:iIsVisibleFunc,PluginName:iPluginName}}else{handlerObj.Handler=iIsVisibleFunc;handlerObj.PluginName=iPluginName}if(iHideMenuItems)this.hide()};eDwUIShortcutMenu.prototype.addSubMenu=function(iPluginName,iSubMenuCSSClassName,iHideSubMenu,iParentMenuSelector){if(iHideSubMenu===void 0){iHideSubMenu=false}if(iParentMenuSelector===void 0){iParentMenuSelector=c_menuID}var subMenuJQ=$(iParentMenuSelector);l_insertInMenu("ul",iPluginName,iSubMenuCSSClassName,subMenuJQ);if(iHideSubMenu)this.hide()};eDwUIShortcutMenu.prototype.addMenuSeparator=function(iPluginName){this.addMenuItem(iPluginName,"edrawings-shortcut-divider",null,function(iViewer){return l_getNumVisMenuItems(iPluginName)?true:false})};eDwUIShortcutMenu.prototype.setPluginCheck=function(iPluginNameKey,iCheckFunc){if(iPluginNameKey){this.mCheckPluginHandlers[iPluginNameKey]=iCheckFunc;return true}return false};eDwUIShortcutMenu.prototype.removeMenuItem=function(iPluginName,iMenuItemCSSClassName,iParentMenuSelector){if(iParentMenuSelector===void 0){iParentMenuSelector=c_menuID}var menuItemJQ=l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName);var menuItemID=menuItemJQ.attr("id");delete this.mMenuHandlers[menuItemID];delete this.mMenuVisibilityHandlerObjs[menuItemID];$(iParentMenuSelector).menu("refresh")};eDwUIShortcutMenu.prototype.removeSubMenu=function(iPluginName,iSubMenuCSSClassName,iParentMenuSelector){if(iParentMenuSelector===void 0){iParentMenuSelector=c_menuID}l_removeFromMenu(iParentMenuSelector,iPluginName,iSubMenuCSSClassName)};eDwUIShortcutMenu.get=function(){if(!eDwUIShortcutMenu.sMenu){eDwUIShortcutMenu.sMenu=new eDwUIShortcutMenu}return eDwUIShortcutMenu.sMenu};return eDwUIShortcutMenu}();var c_menuID="#edrawings-shortcut-menu";var c_divider="-";var c_dummyText="dummy";function l_validatePlugin(iPluginName){if(!iPluginName){console.debugLog("shortcutmenu","Missing menu group name.");throw new eDwGenericError("Missing menu group name.")}}function l_insertInMenu(iElementStyle,iPluginName,iCSSClassName,iParentMenuJQ){l_validatePlugin(iPluginName);var text=iCSSClassName==="edrawings-shortcut-divider"?c_divider:c_dummyText;var menuElemJQ=$("<"+iElementStyle+" class ='"+iCSSClassName+" edrawings-shortcut-menu-text'>"+text+"</"+iElementStyle+">");menuElemJQ.attr("plugin-name",iPluginName);if(!menuElemJQ.attr("id")){menuElemJQ.attr("id",iCSSClassName+"-id")}iParentMenuJQ.append(menuElemJQ);iParentMenuJQ.menu("refresh");if(text===c_dummyText)menuElemJQ.text("");return menuElemJQ}function l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName){return $(iParentMenuSelector).find("[plugin-name='"+iPluginName+"']"+iMenuItemCSSClassName).remove()}function l_getNumVisMenuItems(iPluginName){var menuItems=$(c_menuID+" li");var hiddenMenuItems=$(c_menuID+" li.edrawings-ui-hide");if(iPluginName){menuItems=menuItems.find("[plugin-name='"+iPluginName+"']");hiddenMenuItems=hiddenMenuItems.find("[plugin-name='"+iPluginName+"']")}return menuItems.length-hiddenMenuItems.length}return eDwUIShortcutMenu});define("eDwUITableHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],function(require,exports,eDwUIHTMLGenerator){"use strict";var eDwUITableHTMLGenerator=function(_super){__extends(eDwUITableHTMLGenerator,_super);function eDwUITableHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUITableHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,function(){var generatedHTML,activeModelView,tableNodes,_i,tableNodes_1,tableNode;return __generator(this,function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){tableNodes=activeModelView.Hierarchy.findNodes("Category","table");for(_i=0,tableNodes_1=tableNodes;_i<tableNodes_1.length;_i++){tableNode=tableNodes_1[_i];if(!this.shouldIncludeNode(tableNode))continue;generatedHTML+=this.generateHTMLForNode(tableNode,undefined,"edrawings-root "+iAdditionalClasses,true)}}return[2,generatedHTML]})})};eDwUITableHTMLGenerator.prototype.getPreSpanIconHTML=function(iNode,iAdditionalClasses,iNodeExpanded,iIgnoreChildren){return""};return eDwUITableHTMLGenerator}(eDwUIHTMLGenerator);return eDwUITableHTMLGenerator});define("eDwUIUtils",["require","exports","eDwView","eDwServiceMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwZoomToFitCmd","eDwResetCmd","eDwUIHTMLGenerator","eDwUISheetTreeHTMLGenerator","eDwUILayerHTMLGenerator","eDwUIDebugHTMLGenerator","eDwEventMgr","eDwAJAXError","eDwResultError","eDwNodeAttributes","eDwTypes","eDwEvents","eDwUIMessageReporter","eDwKeyMgr"],function(require,exports,eDwView,eDwServiceMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwZoomToFitCmd,eDwResetCmd,eDwUIHTMLGenerator,eDwUISheetTreeHTMLGenerator,eDwUILayerHTMLGenerator,eDwUIDebugHTMLGenerator,eDwEventMgr,eDwAJAXError,eDwResultError,eDwNodeAttributes_3,eDwTypes_17,eDwEvents_9,eDwUIMessageReporter,eDwKeyMgr_5){"use strict";var _this=this;Object.defineProperty(exports,"__esModule",{value:true});function updateIcons(iHierNodesAndAttribs){for(var _i=0,iHierNodesAndAttribs_4=iHierNodesAndAttribs;_i<iHierNodesAndAttribs_4.length;_i++){var hierNodeAndAttribs=iHierNodesAndAttribs_4[_i];var hierNode=hierNodeAndAttribs.HierNode;var attribs=hierNodeAndAttribs.Attribs;var listItemDiv=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-submenu-list-item"]');var iconDiv=listItemDiv.children("div.edrawings-tree-icon");iconDiv.removeClass(l_getAllDisplayStateCSSClasses(hierNode));var newCSSClass=eDwUIHTMLGenerator.getDisplayStateCSSClass(hierNode,attribs);iconDiv.addClass(newCSSClass)}}exports.updateIcons=updateIcons;function createUIGenerators(iViewer){var panelID="#edrawings-sheet-tree-menu";l_generators[panelID]=new eDwUISheetTreeHTMLGenerator(iViewer,panelID);panelID="#edrawings-layer-control-menu";l_generators[panelID]=new eDwUILayerHTMLGenerator(iViewer,panelID);panelID="#edrawings-debug-menu";l_generators[panelID]=new eDwUIDebugHTMLGenerator(iViewer,panelID)}exports.createUIGenerators=createUIGenerators;function getUIGenerator(iName){return l_generators[iName]}exports.getUIGenerator=getUIGenerator;function setUIGenerator(iName,iGen){l_generators[iName]=iGen}exports.setUIGenerator=setUIGenerator;function getUIPanelID(iTargetJQ){var panelJQ=iTargetJQ.closest(".edrawings-submenu");return panelJQ?"#"+panelJQ[0].id:""}exports.getUIPanelID=getUIPanelID;function updateUI(iViewer,iModelView){return __awaiter(this,void 0,void 0,function(){var model,listHTML,listJQ,gen,modelViews,_i,modelViews_5,modelView;return __generator(this,function(_a){switch(_a.label){case 0:if(!iViewer)return[3,2];if(iViewer.ViewerFeatureOpts.Debug)l_populateDebugPanel(iViewer);model=iViewer.getModel();if(!(iModelView&&model.isDrawing()))return[3,2];if(iModelView===model.getActiveModelView()){listHTML="";listJQ=$("#edrawings-sheet-tree-menu .edrawings-submenu-list");gen=getUIGenerator("#edrawings-sheet-tree-menu");modelViews=iViewer.getModel().getModelViews();for(_i=0,modelViews_5=modelViews;_i<modelViews_5.length;_i++){modelView=modelViews_5[_i];listHTML+=gen.generateHTMLForNode(modelView.Hierarchy,undefined,"edrawings-root")}listJQ.empty();listJQ.append(listHTML)}updateModelViewTargets(iModelView,"[class~='config-tree-text']","edrawings-list-selected");return[4,l_populateLayerPanel(iViewer)];case 1:_a.sent();_a.label=2;case 2:return[2]}})})}exports.updateUI=updateUI;function addSubTreeArrowEventHandler(ioUIHTMLEventMgr,iTreeNodeID){ioUIHTMLEventMgr.addDelegatedEventHandler(iTreeNodeID+" .edrawings-tree-arrow","click",function(iEvent){var targetJQ=$(iEvent.target);function collapseListNode(iTargetJQ){var parentElem=iTargetJQ[0].parentElement.parentElement;var childElems=$(parentElem).children("[data-hoopsparentid='"+iTargetJQ.data("hoopsid")+"']");$.each(childElems,function(iArg,iElem){collapseListNode($(iElem));parentElem.removeChild(iElem)})}if(targetJQ.hasClass("edrawings-tree-expanded")){collapseListNode(targetJQ);targetJQ.removeClass("edrawings-tree-expanded")}else{var appendJQ=targetJQ.closest(".edrawings-submenu-list-item");var panelID=getUIPanelID(appendJQ);var gen=getUIGenerator(panelID);var nodeToExpand=parseInt(targetJQ.data("hoopsid"),10);var node=gen.getNodeFromID(nodeToExpand);if(node===undefined){console.debugLog("ListUI","There is no node for the ID");return}var offset=parseInt($(appendJQ).css("padding-left"),10);appendJQ.after(gen.generateHTMLForChildNodes(node,false,offset));targetJQ.addClass("edrawings-tree-expanded")}})}exports.addSubTreeArrowEventHandler=addSubTreeArrowEventHandler;function zoomToFit(iViewer){var nodeHCID;var result=iViewer.SelectionMgr.getLastSelHCID();if(result instanceof RangeError){var activeModelView=iViewer.getModel().getActiveModelView();if(activeModelView)nodeHCID=activeModelView.Hierarchy.HOOPSID}else{nodeHCID=result}var zoomToFitCmd=new eDwZoomToFitCmd(iViewer,nodeHCID,iViewer.getHCView().getCamera());var cmdMgr=eDwCommandMgr.get();cmdMgr.add(zoomToFitCmd);cmdMgr.remove(zoomToFitCmd,"commit")}exports.zoomToFit=zoomToFit;function searchPanelList(iViewer,iElemJQ){var panelID=getUIPanelID(iElemJQ);var listJQ=$(panelID+" .edrawings-submenu-list");var activeModelView=iViewer.getModel().getActiveModelView();var activeModelViewNode=activeModelView.Hierarchy;if(activeModelViewNode){listJQ.empty();iViewer.SelectionMgr.unSelectAllObjects();var gen=getUIGenerator(panelID);var inputVal=$(panelID+" .edrawings-menu-search-input").val();listJQ.append(gen.generateHTMLForChildNodes(activeModelViewNode,inputVal.length>0));hide(".edrawings-menu-search-cancel",true)}}exports.searchPanelList=searchPanelList;function updateModelViewTargets(iModelView,iFilter,iTargetClass){var targetSpans=$("span[data-hoopsid='"+iModelView.Hierarchy.HOOPSID+"']");if(targetSpans.length>0){var viewTab=targetSpans.filter(iFilter);if(viewTab.length>0){var parentJQ=viewTab.parent();parentJQ.addClass(iTargetClass);scrollToTarget(parentJQ)}}}exports.updateModelViewTargets=updateModelViewTargets;function switchModelView(iEvent,iViewer){var targetJQ=$(iEvent.target);if(!targetJQ||!targetJQ.length)return;var modelViewName=getText(targetJQ[0]);var changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,modelViewName,iViewer.getInitCamera());var cmdMgr=eDwCommandMgr.get();cmdMgr.add(changeModelViewCmd);cmdMgr.remove(changeModelViewCmd,"commit")}exports.switchModelView=switchModelView;function expandSelected(iViewer,iSelHierNode){var activeModelView=iViewer.getModel().getActiveModelView();function expandNode(iTargetJQ){if(!iTargetJQ.length)return;if(!iTargetJQ.hasClass("edrawings-tree-expanded")){var panelUIID=getUIPanelID(iTargetJQ);if(!$(panelUIID).is(":visible"))return;var gen=getUIGenerator(panelUIID);var offset=parseInt($(iTargetJQ).css("padding-left"),10);var nodeToExpand=parseInt(iTargetJQ.data("hoopsid"),10);var hierarchyNode=activeModelView.Nodes[nodeToExpand];var appendNode=iTargetJQ.closest(".edrawings-submenu-list-item");appendNode.after(gen.generateHTMLForChildNodes(hierarchyNode,false,offset));iTargetJQ.addClass("edrawings-tree-expanded")}}var hierNode=iSelHierNode.ParentNode;while(hierNode&&hierNode!==activeModelView.Hierarchy){var expandNodes=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-tree-arrow"]');$.each(expandNodes,function(iIdx,iTarget){expandNode($(iTarget))});hierNode=hierNode.ParentNode}}exports.expandSelected=expandSelected;function scrollToTreeNode(iSelHierNode,iSetSelected){var treeItem={node:$("span[data-hoopsid='"+iSelHierNode.HOOPSID+"']:not(.config-tab-text)"),ownerNode:$("div[data-hoopsid='"+iSelHierNode.HOOPSID+"']")};if(treeItem.ownerNode.length){var classAction_1=iSetSelected?"addClass":"removeClass";$.each(treeItem.node,function(iIdx,iTarget){$(iTarget)[classAction_1]("edrawings-list-selected")});$.each(treeItem.ownerNode,function(iIdx,iTarget){var targetJQ=$(iTarget);targetJQ[classAction_1]("edrawings-list-selected");if(!targetJQ.hasClass("edrawings-submenu-list-item")){return}var panel=targetJQ.closest(".edrawings-menu");var panelHiddenState=panel.is(":hidden");hide(panel.attr("id"),false);if(iSetSelected){scrollToTarget(targetJQ,panelHiddenState?"none":"slow")}hide(panel.attr("id"),panelHiddenState)})}}exports.scrollToTreeNode=scrollToTreeNode;function addCloseEventHandler(iPanelID,iUIHTMLEventMgr){iUIHTMLEventMgr.addDelegatedEventHandler(iPanelID+" .edrawings-menu-close","click",function(iEvent){hide(iPanelID,true)})}exports.addCloseEventHandler=addCloseEventHandler;function deactivateMoveInput(iInputEventIDSuffix){$(document).off("mousemove"+iInputEventIDSuffix);$(document).off("mousedown"+iInputEventIDSuffix);$(document).off("mouseup"+iInputEventIDSuffix);$(document).off("click"+iInputEventIDSuffix)}exports.deactivateMoveInput=deactivateMoveInput;function loadComponentHTML(){return __awaiter(this,void 0,void 0,function(){var loadPromises;return __generator(this,function(_a){switch(_a.label){case 0:loadPromises=[];loadPromises.push(loadPanel("#edrawings-sheet-tree-menu","sheetspanel.html"));loadPromises.push(loadPanel("#edrawings-layer-control-menu","layerspanel.html"));loadPromises.push(loadPanel("#edrawings-debug-menu","debugpanel.html"));return[4,Promise.all(loadPromises)];case 1:_a.sent();return[2]}})})}exports.loadComponentHTML=loadComponentHTML;function inhibitEventBehavior(iEvent){iEvent.preventDefault();iEvent.stopPropagation()}exports.inhibitEventBehavior=inhibitEventBehavior;function populateModelViewPanel(iViewer,iPanelUIID,iTextClass){return __awaiter(this,void 0,void 0,function(){var listModelViewMenu,gen,_a,_b;return __generator(this,function(_c){switch(_c.label){case 0:listModelViewMenu=$(iPanelUIID+" .edrawings-submenu-list");listModelViewMenu.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=listModelViewMenu).append;return[4,gen.generateHTML(iTextClass)];case 1:_b.apply(_a,[_c.sent()]);return[2]}})})}exports.populateModelViewPanel=populateModelViewPanel;function addPanelResizeEvents(iPanelID,iInputEventIDSuffix,iButtonID){var click="click"+iInputEventIDSuffix;$(document).on(click,iPanelID+" .edrawings-menu-panel-arrow-collapse",function(iJQEvent){var msg="Panel resize: "+click;console.debugLog("UIPanelResize",msg);iJQEvent.preventDefault();var panelJQ=$(iPanelID);panelJQ.toggleClass("edrawings-collapsed");var activeButtonJQ=iButtonID?$(iButtonID):undefined;positionMenuPanelArrowCollapseButton(panelJQ,activeButtonJQ);iJQEvent.stopImmediatePropagation()});var panelJQ=$(iPanelID);panelJQ.removeClass("edrawings-collapsed");l_setMenuPanelArrowCollapseButtonPosition(panelJQ);fixMenuPanelInwardToolbar(panelJQ)}exports.addPanelResizeEvents=addPanelResizeEvents;function getText(iElement){return $(iElement).text().trim()}exports.getText=getText;function getTarget(iTargetJQ){return iTargetJQ.hasClass("config-tab-text")?iTargetJQ.parent():iTargetJQ}exports.getTarget=getTarget;function getSpanText(iTargetJQ){var target=getTarget(iTargetJQ);if(!target.is("span")){target=target.find("span")}if(!target||!target.length)return"";return target[0].innerText}exports.getSpanText=getSpanText;function loadPanel(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,function(){var loaded,iExcp_15;return __generator(this,function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,false];loaded=false;_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().load(iElemOrClassID,iPanelHTML)];case 2:_a.sent();loaded=true;console.debugLog("PanelLoad","Loaded panel id = "+iElemOrClassID+" HTML file = "+iPanelHTML);return[3,4];case 3:iExcp_15=_a.sent();console.debugLog("PanelLoad","Failed to load "+iPanelHTML+": "+iExcp_15.message);return[3,4];case 4:return[2,loaded]}})})}exports.loadPanel=loadPanel;function hide(iSelector,iOff){var selJQ=$(iSelector);selJQ[iOff?"addClass":"removeClass"]("edrawings-ui-hide");return selJQ}exports.hide=hide;function getRequestedQueryStringParams(iURL,ioViewerFeatOpts,iWarnOfOtherParams){if(iWarnOfOtherParams===void 0){iWarnOfOtherParams=true}var hashes=iURL.slice(iURL.indexOf("?")+1).split("&");for(var i=0;i<hashes.length;i++){var hash=hashes[i].split("=");if(hash.length>1){var strVal=hash[1];var val=strVal==="true"?true:strVal==="false"?false:strVal;if(ioViewerFeatOpts.hasOwnProperty(hash[0])){ioViewerFeatOpts[hash[0]]=val}else if(iWarnOfOtherParams){console.warn(hash[0]+" is not a valid query parameter.")}}}}exports.getRequestedQueryStringParams=getRequestedQueryStringParams;function getScrollParent(iTargetJQ){return iTargetJQ&&iTargetJQ.scrollParent?iTargetJQ.scrollParent():null}exports.getScrollParent=getScrollParent;function getPosition(iTargetJQ){var ret={top:0,left:0};if(iTargetJQ)ret=iTargetJQ.position();return ret}exports.getPosition=getPosition;function scrollToTarget(iTargetJQ,iAnimationSpeed){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}var animationSpeed=iAnimationSpeed;if(!iTargetJQ)return false;var targetOffset=iTargetJQ.offset();var targetParentJQ=iTargetJQ.parent();if(targetParentJQ.length&&targetParentJQ[0]===$(document)[0]){return false}var targetParentOffset=targetParentJQ.offset();var updated=false;if(targetParentJQ[0].scrollWidth>targetParentJQ.width()){var targetParentPaddingLeft=parseInt(targetParentJQ.css("paddingLeft"));var diff=l_computeTargetMinimalAdjustment(targetOffset.left,parseInt(iTargetJQ.css("marginLeft"))+parseInt(iTargetJQ.css("borderLeftWidth"))+iTargetJQ[0].scrollWidth+parseInt(iTargetJQ.css("borderRightWidth"))+parseInt(iTargetJQ.css("marginRight")),targetParentOffset.left+parseInt(targetParentJQ.css("marginLeft"))+parseInt(targetParentJQ.css("borderLeftWidth"))+targetParentPaddingLeft,targetParentJQ[0].clientWidth-targetParentPaddingLeft-parseInt(targetParentJQ.css("paddingRight")));if(diff!==0){var pos=targetParentJQ.scrollLeft()+diff;if(Math.abs(diff)>targetParentJQ.width()){var targetJQpostionLeft=iTargetJQ.position().left;pos=targetParentJQ.scrollLeft()+targetJQpostionLeft}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollLeft");updated=true}}if(targetParentJQ[0].scrollHeight>targetParentJQ.height()){var targetParentPaddingTop=parseInt(targetParentJQ.css("paddingTop"));var diff=l_computeTargetMinimalAdjustment(targetOffset.top,parseInt(iTargetJQ.css("marginTop"))+parseInt(iTargetJQ.css("borderTopWidth"))+iTargetJQ[0].scrollHeight+parseInt(iTargetJQ.css("borderBottomWidth"))+parseInt(iTargetJQ.css("marginBottom")),targetParentOffset.top+parseInt(targetParentJQ.css("marginTop"))+parseInt(targetParentJQ.css("borderTopWidth"))+targetParentPaddingTop,targetParentJQ[0].clientHeight-targetParentPaddingTop-parseInt(targetParentJQ.css("paddingBottom")));if(diff!==0){var pos=targetParentJQ.scrollTop()+diff;if(Math.abs(diff)>targetParentJQ.height()){var targetJQpostionTop=iTargetJQ.position().top;pos=targetParentJQ.scrollTop()+targetJQpostionTop}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollTop");updated=true}}return updated}exports.scrollToTarget=scrollToTarget;function getHCID(iTarget){if(!iTarget)return Number.NaN;return parseInt(iTarget.data("hoopsid"),10)}exports.getHCID=getHCID;function activateUI(iButtonID,iPanelID){if(iPanelID){var panelJQ=hide(iPanelID,false).addClass("active");fixMenuPanelInwardToolbar(panelJQ)}if(iButtonID){var buttonJQ=$(iButtonID);buttonJQ.addClass("active-button");scrollToTarget(buttonJQ,"none");eDwEventMgr.get().fireEvent(eDwEvents_9.ActivateUIOpEvent,buttonJQ)}}exports.activateUI=activateUI;function deactivateUI(iButtonCSSClassName,iPanelCSSClassName){if(iButtonCSSClassName===void 0){iButtonCSSClassName=""}if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}var activeButtonsJQ=$(iButtonCSSClassName+".active-button");if(activeButtonsJQ.length){eDwEventMgr.get().fireEvent(eDwEvents_9.DeactivateUIOpEvent,activeButtonsJQ);activeButtonsJQ.removeClass("active-button")}var panelsJQ=hide(iPanelCSSClassName+".active",true).removeClass("active");panelsJQ.each(function(iIdx,iPanel){fixMenuPanelInwardToolbar($(iPanel),true)});return activeButtonsJQ}exports.deactivateUI=deactivateUI;function isIDInJQuery(iListJQ,iID){var inJQList=false;for(var key in iListJQ){if(iListJQ[key].id===iID){inJQList=true;break}}return inJQList}exports.isIDInJQuery=isIDInJQuery;function isStateOn(iID){return $(iID).hasClass("state-on-button")}exports.isStateOn=isStateOn;function resetToHomeView(iViewer){var resetCmd=new eDwResetCmd(iViewer);var cmdMgr=eDwCommandMgr.get();cmdMgr.add(resetCmd);cmdMgr.remove(resetCmd,"commit")}exports.resetToHomeView=resetToHomeView;function getViewerElementName(){return"edrawings-viewer"}exports.getViewerElementName=getViewerElementName;function getViewerElementID(){return"#"+getViewerElementName()}exports.getViewerElementID=getViewerElementID;function makeResult(iExcp){var result={ErrorCode:"UnknownError",ErrorData:[]};if(iExcp instanceof eDwResultError){result=iExcp.Result}else if(iExcp instanceof eDwAJAXError){result.ErrorCode=iExcp.ErrorCode;result.ErrorData=[iExcp.message]}else{result.ErrorCode=iExcp.name;result.ErrorData=[iExcp.message]}return result}exports.makeResult=makeResult;function viewFile(iModelName,iModelKey,iParams,iContainerName,iModelData){return __awaiter(this,void 0,void 0,function(){function createViewer(iWebSocketEndpoint){if(iWebSocketEndpoint===""){return null}var streamAlways=iParams.StreamAlwaysConnected;var streamModes=eDwTypes_17.HC.StreamingMode;var webViewerInfo={};webViewerInfo.containerId=iContainerName;webViewerInfo.model=iModelKey;webViewerInfo.endpointUri=iWebSocketEndpoint;webViewerInfo.streamingMode=streamAlways?streamModes.Interactive:streamModes.All;webViewerInfo.streamingMode=iModelData?null:webViewerInfo.streamingMode;webViewerInfo.buffer=iModelData;webViewerInfo.boundingPreviewMode=eDwTypes_17.HC.BoundingPreviewMode.None;eDwEventMgr.get().addEventHandlerFunc(eDwEvents_9.GLContextLostEvent,c_onContextLost);var viewer=new eDwView(webViewerInfo,iParams);hide("#"+iContainerName,false);var modelName=iModelName;if(!iModelName){modelName=iModelKey}$("#edrawings-filename-text").html(decodeURIComponent(modelName));console.debugLog("ModelLoad","Created new edw viewer");return viewer}var wsEndPt,_a;return __generator(this,function(_b){switch(_b.label){case 0:if(!iModelData)return[3,1];_a=null;return[3,3];case 1:return[4,eDwServiceMgr.get().getWebSocketEndpoint(iModelKey,iParams.WebSocketEndpoint)];case 2:_a=_b.sent();_b.label=3;case 3:wsEndPt=_a;return[2,createViewer(wsEndPt)]}})})}exports.viewFile=viewFile;function fixMenuPanelInwardToolbar(iPanelJQ,iToClear){if(iToClear===void 0){iToClear=false}if(iToClear){iPanelJQ.removeClass("edrawings-collided");return}if(iPanelJQ.hasClass("edrawings-hud-menu")){var panel=iPanelJQ[0];if(panel.scrollHeight>panel.clientHeight){iPanelJQ.addClass("edrawings-collided")}else{iPanelJQ.removeClass("edrawings-collided")}}else if(iPanelJQ.hasClass("edrawings-submenu")){var wrapperJQ=iPanelJQ.find(".edrawings-menu-panel-wrapper");var wasCollided=iPanelJQ.hasClass("edrawings-collided");if(iPanelJQ[0].scrollHeight>iPanelJQ[0].clientHeight&&iPanelJQ[0].scrollHeight-iPanelJQ[0].clientHeight>1||wrapperJQ[0].scrollHeight>wrapperJQ[0].clientHeight&&wrapperJQ[0].scrollHeight-wrapperJQ[0].clientHeight>1){if(!wasCollided){iPanelJQ.addClass("edrawings-collided")}iPanelJQ.addClass("edrawings-wiggle");setTimeout(function(){iPanelJQ.removeClass("edrawings-wiggle")},0)}else{iPanelJQ.removeClass("edrawings-collided");if(wasCollided){fixMenuPanelInwardToolbar(iPanelJQ)}}}}exports.fixMenuPanelInwardToolbar=fixMenuPanelInwardToolbar;function positionMenuPanelArrowCollapseButton(iPanelJQ,iButtonJQ){if(!iPanelJQ.hasClass("edrawings-collapsed")){l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ);fixMenuPanelInwardToolbar(iPanelJQ)}else{if(iButtonJQ){var arrowCollapseButtonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse");var activeButtonRect=iButtonJQ[0].getBoundingClientRect();var arrowCollapseButtonRect=arrowCollapseButtonJQ[0].getBoundingClientRect();var diffTop=activeButtonRect.top-arrowCollapseButtonRect.top;l_setMenuPanelArrowCollapseButtonPosition(arrowCollapseButtonJQ,arrowCollapseButtonJQ.position().top+diffTop)}fixMenuPanelInwardToolbar(iPanelJQ,true)}}exports.positionMenuPanelArrowCollapseButton=positionMenuPanelArrowCollapseButton;function executeScrolling(iDiffX,iDiffY,iContentJQ,iBarJQ){var contentParentJQ=iContentJQ.parent();var leftButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-left)");var rightButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-right)");var upButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-up)");var downButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-down)");if(iContentJQ[0].scrollWidth>iContentJQ.width()){var scrollLeft=iContentJQ.scrollLeft();var newScrollLeft=scrollLeft+iDiffX;iContentJQ.scrollLeft(newScrollLeft);adjustScrollArrows(iContentJQ.scrollLeft(),iContentJQ[0].scrollWidth,iContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,iBarJQ)}if(iContentJQ[0].scrollHeight>iContentJQ.height()){var scrollTop=iContentJQ.scrollTop();var newScrollTop=scrollTop+iDiffY;iContentJQ.scrollTop(newScrollTop);adjustScrollArrows(iContentJQ.scrollTop(),iContentJQ[0].scrollHeight,iContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,iBarJQ)}return iDiffX!==0||iDiffY!==0}exports.executeScrolling=executeScrolling;function enableScrollOnTouch(ioUIHTMLEventMgr,iContentJqSel,iBarJqSel,iHandlerOnScroll){var contentJQ=$(iContentJqSel);var barJQ=iBarJqSel?$(iBarJqSel):undefined;var hasScrolled=false;var stopClickTarget;var stopClickPropagation=false;ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchstart",function(iEventStart){hasScrolled=false;stopClickPropagation=false;stopClickTarget=undefined;var touchEventStart=iEventStart;var lastScreenX=touchEventStart.changedTouches[0].screenX;var lastScreenY=touchEventStart.changedTouches[0].screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchmove",function(iEventMove){var touchEventMove=iEventMove;var xDiff=touchEventMove.changedTouches[0].screenX-lastScreenX;lastScreenX=touchEventMove.changedTouches[0].screenX;var yDiff=touchEventMove.changedTouches[0].screenY-lastScreenY;lastScreenY=touchEventMove.changedTouches[0].screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated})});ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchend",function(iEvent){var touchEvent=iEvent;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");if(hasScrolled){touchEvent.preventDefault();touchEvent.stopPropagation();stopClickPropagation=true;stopClickTarget=touchEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false});ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchcancel",function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");hasScrolled=false;stopClickPropagation=false});ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousedown",function(iEvent){hasScrolled=false;stopClickPropagation=false;if(!eDwKeyMgr_5.eDwKeyMgr.isLMBPressed(iEvent)){return}var eventDown=iEvent;var lastScreenX=eventDown.screenX;var lastScreenY=eventDown.screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousemove",function(iEventMove){var eventMove=iEventMove;var xDiff=eventMove.screenX-lastScreenX;var yDiff=eventMove.screenY-lastScreenY;lastScreenX=eventMove.screenX;lastScreenY=eventMove.screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated})});ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mouseup",function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");if(hasScrolled){iEvent.stopImmediatePropagation();iEvent.preventDefault();stopClickPropagation=true;stopClickTarget=iEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false});var propagationHandler=function(iEvent2){if(stopClickPropagation&&iEvent2.target===stopClickTarget){iEvent2.stopImmediatePropagation();iEvent2.preventDefault()}stopClickPropagation=false;stopClickTarget=undefined};var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*");contentJQ.on(dataKey,"*",propagationHandler)}exports.enableScrollOnTouch=enableScrollOnTouch;function disableScrollOnTouch(iUIHTMLEventMgr,iContentJqSel){iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchstart");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchend");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchcancel");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousedown");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mouseup");var contentJQ=$(iContentJqSel);var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*")}exports.disableScrollOnTouch=disableScrollOnTouch;function adjustScrollArrows(iOffset,iRange,iVisibleRange,isHorizonatalScrolling,iDecreaseWrapperJQ,iIncreaseWrapperJQ,iBarJQ){if(iOffset<=0){iDecreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}else{iDecreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}if(iOffset+iVisibleRange>=iRange){iIncreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}else{iIncreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}}exports.adjustScrollArrows=adjustScrollArrows;var l_generators={};function l_getAllDisplayStateCSSClasses(iHierNode){var classes="";for(var displayState in eDwNodeAttributes_3.NodeDisplayState){classes+="edrawings-"+iHierNode.Category+"-"+displayState.toLowerCase()+" "}return classes}function l_populatePanel(iViewer,iCategoryName,iListID,iPanelUIID,iAdditionalClasses){if(iAdditionalClasses===void 0){iAdditionalClasses=""}return __awaiter(this,void 0,void 0,function(){var activeModelView,list,gen,_a,_b;return __generator(this,function(_c){switch(_c.label){case 0:activeModelView=iViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return[2];list=$(iListID);list.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=list).append;return[4,gen.generateHTML(iAdditionalClasses)];case 1:_b.apply(_a,[_c.sent()]);return[2]}})})}function l_populateLayerPanel(iViewer){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,l_populatePanel(iViewer,"layer","#edrawings-layer-control-list","#edrawings-layer-control-menu")];case 1:_a.sent();return[2]}})})}function l_populateDebugPanel(iViewer){var list=$("#edrawings-debug-menu .edrawings-submenu-list");list.empty();var gen=getUIGenerator("#edrawings-debug-menu");var modelView=iViewer.getModel().getActiveModelView();if(modelView&&modelView.Hierarchy){list.append(gen.generateHTMLForNode(modelView.Hierarchy.HOOPSID,0," edrawings-tree-expanded ",true));list.append(gen.generateHTMLForChildNodes(modelView.Hierarchy.HOOPSID,false,4))}}var c_onContextLost=function(){(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,eDwUIMessageReporter.showMessagePanelFromCSScontent("edrawings-glcontextlost")];case 1:_a.sent();return[2]}})})})()};function l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ,iTop){var buttonJQ=iPanelJQ;if(!iPanelJQ.hasClass("edrawings-menu-panel-arrow-collapse")){buttonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse")}buttonJQ.css("top",typeof iTop==="undefined"?"":iTop)}function l_computeTargetMinimalAdjustment(iTargetSide,iTargetOffset,iReferenceSide,iReferenceOffset){var diff=0;if(iTargetSide<iReferenceSide){diff=iTargetSide-iReferenceSide}else if(iTargetSide+iTargetOffset>iReferenceSide+iReferenceOffset){diff=iTargetSide+iTargetOffset-(iReferenceSide+iReferenceOffset)}return diff}function l_scrollToTarget(iTargetJQ,iPos,iAnimationSpeed,iStartPos){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}if(iStartPos===void 0){iStartPos="scrollTop"}var _a;if(!iTargetJQ)return;if(iAnimationSpeed==="none"){iTargetJQ[iStartPos](iPos)}else{iTargetJQ.animate((_a={},_a[iStartPos]=iPos,_a),iAnimationSpeed)}}});define("eDwView",["require","exports","eDwSelMgr","eDwXSectionMgr","eDwViewMgr","eDwTimer","eDwOperatorBaseDeps","eDwEventMgr","eDwHistoryMgr","eDwModel","eDwTypes","eDwEvents","eDwTouchOpsMgr","eDwTableMgr"],function(require,exports,eDwSelMgr,eDwXSectionMgr,eDwViewMgr,eDwTimer,eDwOperatorBaseDeps_3,eDwEventMgr,eDwHistoryMgr,eDwModel,eDwTypes_18,eDwEvents_10,eDwTouchOpsMgr,eDwTableMgr){"use strict";var eDwView=function(){function eDwView(iViewerInfo,iFeatureOptions){this.mElemID=iViewerInfo.containerId;this.HCViewer=new eDwTypes_18.HC.WebViewer(iViewerInfo);this.mTimer=new eDwTimer;this.ViewerFeatureOpts=iFeatureOptions;this.mDrawMode=iFeatureOptions.RenderType;this.OperatorMgr=new eDwOperatorBaseDeps_3.eDwOperatorMgr(this);this.TableMgr=new eDwTableMgr(this);var streamAll=this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All;var timeBeforeTimeout=streamAll?14400:120;var timeBeforeWarnTimeout=timeBeforeTimeout-10;this.HCViewer.setClientTimeout(timeBeforeTimeout,timeBeforeWarnTimeout);this.mFitCamera=null;this.mModelKey=iViewerInfo.model;this.setupWebViewer()}eDwView.prototype.getHCView=function(){return this.HCViewer.view};eDwView.prototype.getHCMarkupManager=function(){return this.HCViewer.markupManager};eDwView.prototype.getModel=function(){if(!this.mModel){this.mModel=new eDwModel(this)}return this.mModel};eDwView.prototype.processProductStructure=function(){var _this=this;this.mFitCamera=this.getHCView().getCamera();$("#"+this.mElemID).trigger("edw:ModelDataLoadComplete",this);this.finishInit();if(this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All){this.HCViewer.waitForIdle().then(function(){l_closeHCConnection(_this)})}};eDwView.prototype.setupWebViewer=function(){var _this=this;var processingSelection=false;var eventMgr=eDwEventMgr.get();function deprecatedCallback(iDeprecatedFuncName){var argArray=[];for(var key in arguments){argArray.push(arguments[key])}console.debugLog("Deprecated","Deprecated call: "+argArray.join("."))}this.mHCCallbacksObj={sceneReady:function(){console.debugLog("ViewerLoad","Scene ready");_this.HCViewer.resizeCanvas()},streamingActivated:function(){console.debugLog("Viewer","Streaming activated")},streamingDeactivated:function(){console.debugLog("Viewer","Streaming deactivated")},selection:function(iSelEvent){if(!processingSelection){processingSelection=true;try{_this.SelectionMgr.onSelection(iSelEvent)}catch(iException){}processingSelection=false}},timeoutWarning:function(iRemainingMinutes){console.debugLog("Viewer","Inactivity timeout pending in "+iRemainingMinutes+" minutes.");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole()},timeout:function(){console.debugLog("Viewer","Inactivity timeout");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole();eventMgr.fireEvent(eDwEvents_10.TimeoutEvent,_this);l_closeHCConnection(_this)},modelLoadFailure:function(iModelName,iReason){console.warn("Model "+iModelName+" load failed: "+iReason);$("#"+_this.mElemID).trigger("edw:ModelLoadFailed",[_this,iModelName,iReason]);l_closeHCConnection(_this)},deprecated:deprecatedCallback,info:function(iInfoType,iMsg){console.debugLog("Debug",iInfoType.toString()+" "+iMsg)},missingModel:function(iModelPath){console.debugLog("Debug","Missing model: "+iModelPath);l_closeHCConnection(_this)},webGlContextLost:function(){console.debugLog("Debug","Browser lost GL context! Render incomplete!!");eventMgr.fireEvent(eDwEvents_10.GLContextLostEvent,_this);l_closeHCConnection(_this)},click:function(iMousePos,iEvent){console.debugLog("Debug","Mouse clicked")},modelStructureReady:function(){console.debugLog("ViewerLoad","Model structure ready.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},modelSwitched:function(){console.debugLog("ViewerLoad","Model switch done.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},viewCreated:function(iHCView){eventMgr.fireEvent(eDwEvents_10.ViewCreatedEvent,iHCView)},viewLoaded:function(iHCView){eventMgr.fireEvent(eDwEvents_10.ViewLoadedEvent,iHCView)},viewDeleted:function(iHCView){eventMgr.fireEvent(eDwEvents_10.ViewDeletedEvent,iHCView)},camera:function(iCamera){eventMgr.fireEvent(eDwEvents_10.CameraChangeEvent,iCamera)}};this.HCViewer.setCallbacks(this.mHCCallbacksObj);this.HCViewer.start()};eDwView.prototype.getInitCamera=function(){return this.mFitCamera};eDwView.prototype.getCurrModelKey=function(){return this.mModelKey};eDwView.prototype.unregister=function(){if(this.HCViewer)this.HCViewer.unsetCallbacks(this.mHCCallbacksObj);this.OperatorMgr.unregisterAll();eDwEventMgr.get().fireEvent(eDwEvents_10.DoneEvent,this)};eDwView.prototype.destroy=function(){this.HCViewer.shutdown()};eDwView.prototype.setExplosionLevel=function(iLevel){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.HCViewer.explodeManager.setMagnitude(iLevel)];case 1:_a.sent();eDwEventMgr.get().fireEvent(eDwEvents_10.ExplodeLevelChangeEvent,this,iLevel);return[2]}})})})()};eDwView.prototype.getExplosionLevel=function(){return this.HCViewer.explodeManager.getMagnitude()};eDwView.prototype.getDrawMode=function(){return this.mDrawMode};eDwView.prototype.setDrawMode=function(iValue){var view=this.getHCView();var settings=view.getHiddenLineSettings();switch(iValue){case"ShadedWithEdges":view.setDrawMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);break;case"Shaded":view.setDrawMode(eDwTypes_18.HC.DrawMode.Shaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.Shaded);break;case"HiddenLinesRemoved":settings.setObscuredLineTransparency(0);view.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"HiddenLinesVisible":settings.setObscuredLineTransparency(.5);view.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"Wireframe":settings.setObscuredLineTransparency(1);view.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;default:throw new Error("Unknown draw mode: "+iValue)}this.mDrawMode=iValue;eDwEventMgr.get().fireEvent(eDwEvents_10.DrawModeChangeEvent,this,iValue)};eDwView.prototype.getPerspectiveMode=function(){return this.getHCView().getProjectionMode()===eDwTypes_18.HC.Projection.Perspective};eDwView.prototype.setPerspectiveMode=function(iValue){if(!iValue){this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Orthographic)}else{this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Perspective)}eDwEventMgr.get().fireEvent(eDwEvents_10.ProjModeChangeEvent,this,iValue);return iValue};eDwView.prototype.resetDrawMode=function(){this.setDrawMode(this.ViewerFeatureOpts.RenderType)};eDwView.prototype.initializeManagers=function(){new eDwSelMgr(this);new eDwXSectionMgr(this);new eDwViewMgr(this);new eDwTouchOpsMgr(this)};eDwView.prototype.drawDebugBoundingBox=function(iBBox){return __awaiter(this,void 0,void 0,function(){var modelHC,beautifulGreen,vmin,vmax,p0,p1,p2,p3,p4,p5,p6,p7,polylineData0,polylineData1,polylineData2,polylineData3,rgba,i,tmp,boxMesh,key,meshInstance;return __generator(this,function(_a){switch(_a.label){case 0:modelHC=this.getModel().getHCModel();beautifulGreen=new eDwTypes_18.HC.Color(0,255,0);vmin=iBBox.min;vmax=iBBox.max;p0=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmax.z);p4=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmin.z);p5=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmin.z);p6=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmin.z);p7=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmin.z);polylineData0=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];polylineData1=[p4.x,p4.y,p4.z,p5.x,p5.y,p5.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z,p4.x,p4.y,p4.z];polylineData2=[p4.x,p4.y,p4.z,p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p5.x,p5.y,p5.z,p4.x,p4.y,p4.z];polylineData3=[p7.x,p7.y,p7.z,p3.x,p3.y,p3.z,p2.x,p2.y,p2.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_18.HC.MeshData;boxMesh.addPolyline(polylineData0,rgba);boxMesh.addPolyline(polylineData1,rgba);boxMesh.addPolyline(polylineData2,rgba);boxMesh.addPolyline(polylineData3,rgba);return[4,modelHC.createMesh(boxMesh)];case 1:key=_a.sent();meshInstance=new eDwTypes_18.HC.MeshInstanceData(key);return[2,modelHC.createMeshInstance(meshInstance)]}})})};eDwView.prototype.finishInit=function(){eDwEventMgr.get().fireEvent(eDwEvents_10.InitEvent,this);this.HCViewer.enableBackgroundSheet(false);eDwHistoryMgr.get().clear()};return eDwView}();function l_closeHCConnection(iViewer){if(!iViewer)return;var viewHC=iViewer.getHCView();viewHC.setCamera(viewHC.getCamera());console.debugLog("Viewer","Closing viewer connection...");iViewer.HCViewer.closeConnection()}return eDwView});define("eDwViewMgr",["require","exports","eDwEventMgr","eDwEvents","eDwTypes"],function(require,exports,eDwEventMgr,eDwEvents_11,eDwTypes_19){"use strict";var eDwViewMgr=function(){function eDwViewMgr(iViewer){if(!iViewer)throw new Error("Must have viewer object");iViewer.ViewMgr=this;this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.mAnimationTimeOutID=-1;this.mViewer=iViewer}eDwViewMgr.prototype.start=function(){if(this.mViewer.getModel().isDrawing())return;eDwEventMgr.get().fireEvent(eDwEvents_11.StartAnimationEvent,this.mViewer);this.mViewAnimationActive=true;this.animateNextView()};eDwViewMgr.prototype.stop=function(){this.mViewAnimationActive=false;if(this.mAnimationTimeOutID>-1){window.clearTimeout(this.mAnimationTimeOutID);this.mAnimationTimeOutID=-1}eDwEventMgr.get().fireEvent(eDwEvents_11.StopAnimationEvent,this.mViewer)};eDwViewMgr.prototype.reset=function(){this.stop();this.mViewAnimationIndex=0};eDwViewMgr.prototype.isActive=function(){return this.mViewAnimationActive};eDwViewMgr.prototype.setViewOrientation=function(iEyeDir,iDuration){var _this=this;if(iDuration===void 0){iDuration=400}var center=this.mViewer.getModel().getBoundingBox().center();var viewHC=this.mViewer.getHCView();var camera=viewHC.getCamera().copy();var pos=camera.getPosition().copy();var target=camera.getTarget();var up=camera.getUp();pos=pos.subtract(target);var dist=pos.length();switch(iEyeDir){case Communicator.ViewOrientation.Front:pos.set(0,0,1).scale(dist).add(center);up.set(0,1,0);break;case Communicator.ViewOrientation.Back:pos.set(0,0,-1).scale(dist).add(center);up.set(0,1,0);break;case Communicator.ViewOrientation.Left:pos.set(-1,0,0).scale(dist).add(center);up.set(0,1,0);break;case Communicator.ViewOrientation.Right:pos.set(1,0,0).scale(dist).add(center);up.set(0,1,0);break;case Communicator.ViewOrientation.Top:pos.set(0,1,0).scale(dist).add(center);up.set(0,0,-1);break;case Communicator.ViewOrientation.Bottom:pos.set(0,-1,0).scale(dist).add(center);up.set(0,0,1);break;case Communicator.ViewOrientation.Iso:pos.set(1,1,1).normalize().scale(dist).add(center);up.set(-.408204,.816541,-.408204);break;default:throw new Error("Unsupported orientation: "+iEyeDir)}camera.setPosition(pos);camera.setTarget(center);camera.setUp(up);(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,viewHC.fitWorld(iDuration,camera)];case 1:_a.sent();return[2]}})})})();return camera};eDwViewMgr.prototype.setViewOrientationToDirection=function(normal){var camera=this.mViewer.getHCView().getCamera();var position=camera.getPosition();var target=camera.getTarget();var up=camera.getUp();var delta=target.subtract(position);var distance=delta.length();var bbox=this.mViewer.getModel().getBoundingBox();var bbox_min=bbox.min;var bbox_max=bbox.max;target=Communicator.Point3.add(bbox_max,bbox_min).scale(.5);var eyeVec=Communicator.Point3.scale(normal,distance);position=Communicator.Point3.add(target,eyeVec);var vTest=new Communicator.Point3(1,0,0);var isParallel=Communicator.Point3.dot(vTest,normal);if(Math.abs(Math.abs(isParallel)-1)<.001){vTest.set(0,1,0);var vec=Communicator.Point3.cross(normal,vTest);vec=vec.normalize();up=Communicator.Point3.cross(vec,normal);up=up.normalize()}else{up=Communicator.Point3.cross(normal,vTest);up=up.normalize()}var dotProd=Communicator.Point3.dot(up,new Communicator.Point3(1,0,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=Communicator.Point3.dot(up,new Communicator.Point3(0,1,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=Communicator.Point3.dot(up,new Communicator.Point3(0,0,1));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}camera.setPosition(position);camera.setTarget(target);camera.setUp(up);this.setCamera(camera,500);return camera};eDwViewMgr.prototype.setCamera=function(iCamera,iTimeInMS){if(iTimeInMS===void 0){iTimeInMS=400}this.mViewer.getHCView().setCamera(iCamera,iTimeInMS)};eDwViewMgr.prototype.enableAmbientOcclusion=function(iEnable){this.mViewer.getHCView().setAmbientOcclusionEnabled(iEnable);eDwEventMgr.get().fireEvent(eDwEvents_11.AmbientOcclChangeEvent,this,iEnable)};eDwViewMgr.prototype.fitScreenToNodes=function(iNodeHCIDs,ioCamera){return __awaiter(this,void 0,void 0,function(){var modelHC,bbox,subtract,viewVec,center,add,ratio,boxMaxLen;return __generator(this,function(_a){switch(_a.label){case 0:if(!ioCamera)return[2];modelHC=this.mViewer.getModel().getHCModel();return[4,modelHC.getNodesBounding(iNodeHCIDs)];case 1:bbox=_a.sent();subtract=eDwTypes_19.HC.Point3.subtract;viewVec=subtract(ioCamera.getPosition(),ioCamera.getTarget());center=bbox.center().copy();ioCamera.setTarget(center);add=eDwTypes_19.HC.Point3.add;ioCamera.setPosition(add(center,viewVec));ratio=ioCamera.getWidth()/ioCamera.getHeight();if(this.mViewer.getModel().isDrawing()){bbox.min.z=bbox.max.z=0}boxMaxLen=bbox.extents().length();ioCamera.setHeight(boxMaxLen);ioCamera.setWidth(boxMaxLen*ratio);this.setCamera(ioCamera,400);return[2]}})})};eDwViewMgr.prototype.onCameraUpdate=function(){this.mViewAnimationIndex+=1;if(this.mViewAnimationIndex>=eDwViewMgr.viewAnimations.length){this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.stop()}if(this.mViewAnimationActive){this.animateNextView()}};eDwViewMgr.prototype.animateNextView=function(){var _this=this;if(this.mViewAnimationActive){this.setViewOrientation(eDwViewMgr.viewAnimations[this.mViewAnimationIndex],2e3);this.mAnimationTimeOutID=window.setTimeout(function(){_this.onCameraUpdate()},2e3)}};eDwViewMgr.viewAnimations=[Communicator.ViewOrientation.Front,Communicator.ViewOrientation.Back,Communicator.ViewOrientation.Left,Communicator.ViewOrientation.Right,Communicator.ViewOrientation.Bottom,Communicator.ViewOrientation.Top,Communicator.ViewOrientation.Iso];return eDwViewMgr}();return eDwViewMgr});define("eDwXSectionMgr",["require","exports","eDwXSectionOperator","eDwGeomUtils","eDwTypes","eDwTypes"],function(require,exports,eDwXSectionOperator,eDwGeomUtils,eDwTypes_20,eDwTypes_21){"use strict";var eDwXSectionMgr=function(){function eDwXSectionMgr(iViewer){iViewer.XSectionMgr=this;this.mViewer=iViewer;var xSectionOp=new eDwXSectionOperator(iViewer);this.mXSectionOpID=iViewer.OperatorMgr.registerCustomOperator(xSectionOp);this.HCXSectionMgr=iViewer.HCViewer.cuttingManager;this.SectionCapVisibility=false;this.mXSectionIndex=eDwTypes_20.SectionPlaneOrientation.XY.Index;this.mSectionVisibility=true;this.mSectionsVisibilityState=[false,false,false]}eDwXSectionMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mXSectionOpID);this.mViewer.XSectionMgr=null};eDwXSectionMgr.prototype.turnOnSectionPlane=function(iOn){var _this=this;if(this.getHCXSection()){if(iOn){(function(){return __awaiter(_this,void 0,void 0,function(){var ret;return __generator(this,function(_a){switch(_a.label){case 0:ret=this.mViewer.OperatorMgr.push(this.mXSectionOpID);console.debugLog("Section","Section plane operator push ret = "+ret);return[4,this.HCXSectionMgr.setCappingGeometryVisibility(true)];case 1:_a.sent();return[2]}})})})()}else{var opID=this.mViewer.OperatorMgr.pop();console.debugLog("Section","Popped op ID = "+opID+" xSection op ID = "+this.mXSectionOpID)}}};eDwXSectionMgr.prototype.activateCurrent=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.getHCXSection().activate()];case 1:_a.sent();return[4,this.setToCurrentSectionPlane()];case 2:_a.sent();if(!!this.mSectionVisibility)return[3,4];return[4,this.updateSectionVisibility(false)];case 3:_a.sent();_a.label=4;case 4:return[2]}})})})()};eDwXSectionMgr.prototype.deactivateCurrent=function(){var _this=this;this.mSectionsVisibilityState=[false,false,false];(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.getHCXSection().deactivate()];case 1:_a.sent();return[2]}})})})()};eDwXSectionMgr.prototype.isCurrentActive=function(){return this.getHCXSection().isActive()};Object.defineProperty(eDwXSectionMgr.prototype,"SectionIndex",{get:function(){return this.mXSectionIndex},enumerable:true,configurable:true});eDwXSectionMgr.prototype.setSectionPlane=function(ioSection,iAllowActivation){if(iAllowActivation===void 0){iAllowActivation=true}return __awaiter(this,void 0,void 0,function(){var bbox,bboxExtents,sectionHC,boxCenter,sectionPlane,minPlanePt,maxPlanePt,vec,centerPt,dir,mirrorPlaneNormal,mirrorPlane,maxOnPlnPt,minOnPlnPt,mirrorPlaneDist,distDir,revDistDir,pts;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.mViewer.getModel().calculateBoundingBox()];case 1:bbox=_a.sent();bboxExtents=bbox.extents();if(!ioSection||bboxExtents.equals(eDwTypes_21.HC.Point3.zero()))return[2];sectionHC=this.getHCXSection();if(!(ioSection.Index!==this.mXSectionIndex))return[3,6];if(!sectionHC)return[3,5];if(!sectionHC.isActive())return[3,3];return[4,sectionHC.deactivate()];case 2:_a.sent();_a.label=3;case 3:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 4:_a.sent();_a.label=5;case 5:this.mXSectionIndex=ioSection.Index;sectionHC=this.getHCXSection();_a.label=6;case 6:boxCenter=bbox.center();if(!(sectionHC.getCount()<1))return[3,9];sectionPlane=ioSection.Plane.copy();sectionPlane.d=-sectionPlane.distanceToPoint(boxCenter);minPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.min,sectionPlane);maxPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.max,sectionPlane);vec=maxPlanePt.copy().subtract(minPlanePt);vec=vec.scale(.55);centerPt=eDwGeomUtils.dropPointOnPlane(boxCenter,sectionPlane);dir=sectionPlane.normal.copy();centerPt=centerPt.add(dir.scale(sectionPlane.d));mirrorPlaneNormal=eDwTypes_21.HC.Point3.zero();eDwTypes_21.HC.MeasureUtils.oneVectorCross(sectionPlane.normal.copy(),mirrorPlaneNormal);mirrorPlane=eDwTypes_21.HC.Plane.createFromPointAndNormal(centerPt,mirrorPlaneNormal);maxOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec);minOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec.scale(-1));mirrorPlaneDist=mirrorPlane.distanceToPoint(maxOnPlnPt);distDir=mirrorPlaneNormal.copy().scale(2*mirrorPlaneDist);revDistDir=distDir.copy().scale(-1);pts=[];pts.push(minOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(maxOnPlnPt,revDistDir));pts.push(maxOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(minOnPlnPt,distDir));sectionHC=this.getHCXSection();return[4,sectionHC.addPlane(sectionPlane,pts)];case 7:_a.sent();return[4,sectionHC.setColor(eDwTypes_21.HC.Color.createFromFloat(0,1,0))];case 8:_a.sent();_a.label=9;case 9:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 10:_a.sent();return[4,this.HCXSectionMgr.setStandinGeometryPickable(true)];case 11:_a.sent();return[2]}})})};eDwXSectionMgr.prototype.flipSectionPlane=function(){var _this=this;var sectionHC=this.getHCXSection();if(!sectionHC)return;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return;sectionPlane.normal.negate();sectionPlane.d=-sectionPlane.d;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane)];case 1:_a.sent();return[2]}})})})()};eDwXSectionMgr.prototype.setViewToSectionPlane=function(){var sectionHC=this.getHCXSection();if(!sectionHC)return null;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return null;return this.mViewer.ViewMgr.setViewOrientationToDirection(sectionPlane.normal.copy())};eDwXSectionMgr.prototype.moveCurrentAlongNormal=function(iDistVec){var _this=this;var camera=this.mViewer.getHCView().getCamera();var camPosition=camera.getPosition();var camTarget=camera.getTarget();var camUp=camera.getUp();var camZ=camTarget.subtract(camPosition);camZ=camZ.normalize();var camY=camUp.normalize();var camX=eDwTypes_21.HC.Point3.cross(camZ,camY);var realVec=camX.scale(iDistVec.x).add(camY.scale(iDistVec.y));realVec.add(camZ.scale(iDistVec.z));var sectionHC=this.getHCXSection();var sectionPlane=sectionHC.getPlane(0);var normal=sectionPlane.normal.copy();normal=normal.normalize();var distance=eDwTypes_21.HC.Point3.dot(realVec,normal);if(Math.abs(distance)<1e-6)return;sectionPlane.d-=distance;var lenVec=normal.scale(distance);var newPosMat=new eDwTypes_21.HC.Matrix;newPosMat=newPosMat.setTranslationComponent(lenVec.x,lenVec.y,lenVec.z);(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane,newPosMat,true,false)];case 1:_a.sent();return[2]}})})})()};eDwXSectionMgr.prototype.disableSectionCapVisibility=function(iDisable){this.setSectionCapVisibility(iDisable?false:this.mEnableSectionCaps)};eDwXSectionMgr.prototype.projectPoint=function(iPnt){var sectionHC=this.getHCXSection();var sectionPlane=sectionHC.getPlane(0);return eDwGeomUtils.dropPointOnPlane(iPnt,sectionPlane)};eDwXSectionMgr.prototype.getHCXSection=function(){return this.HCXSectionMgr.getCuttingSection(this.mXSectionIndex)};eDwXSectionMgr.prototype.setSectionCapVisibility=function(iEnable){var _this=this;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.HCXSectionMgr.setCappingFaceColor(iEnable?cSectionCapFaceColor:null)];case 1:_a.sent();return[4,this.HCXSectionMgr.setCappingLineColor(iEnable?null:cSectionCapOutlineColor)];case 2:_a.sent();return[2]}})})})()};eDwXSectionMgr.prototype.updateSectionVisibility=function(iVisible){return __awaiter(this,void 0,void 0,function(){var activePlaneX,isSectionVisible,iExcp_16;return __generator(this,function(_a){switch(_a.label){case 0:activePlaneX=this.getHCXSection();activePlaneX.setOpacity(iVisible?cSectionPlaneOpacity:0);isSectionVisible=this.mSectionsVisibilityState[this.mXSectionIndex];this.mSectionsVisibilityState[this.mXSectionIndex]=iVisible;if(!iVisible)return[3,7];if(!(activePlaneX.isActive()&&isSectionVisible))return[3,4];_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,activePlaneX.deactivate()];case 2:_a.sent();return[3,4];case 3:iExcp_16=_a.sent();return[3,4];case 4:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 5:_a.sent();return[4,activePlaneX.activate()];case 6:_a.sent();_a.label=7;case 7:return[2]}})})};eDwXSectionMgr.prototype.setToCurrentSectionPlane=function(){return __awaiter(this,void 0,void 0,function(){var orientation,orientations,_a,_b,_i,orientationName;return __generator(this,function(_c){switch(_c.label){case 0:orientations=eDwTypes_20.SectionPlaneOrientation;_a=[];for(_b in orientations)_a.push(_b);_i=0;_c.label=1;case 1:if(!(_i<_a.length))return[3,4];orientationName=_a[_i];orientation=orientations[orientationName];if(!(orientation.Index===this.mXSectionIndex))return[3,3];return[4,this.setSectionPlane(orientation)];case 2:_c.sent();return[2];case 3:_i++;return[3,1];case 4:return[2]}})})};Object.defineProperty(eDwXSectionMgr.prototype,"SectionCapVisibility",{get:function(){return this.mEnableSectionCaps},set:function(iEnable){this.mEnableSectionCaps=iEnable;this.setSectionCapVisibility(iEnable)},enumerable:true,configurable:true});Object.defineProperty(eDwXSectionMgr.prototype,"SectionVisibility",{set:function(iVisible){var _this=this;this.mSectionVisibility=iVisible;(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 1:_a.sent();return[2]}})})})()},enumerable:true,configurable:true});return eDwXSectionMgr}();var cSectionPlaneOpacity=.3;var cSectionCapFaceColor=new eDwTypes_21.HC.Color(128,128,128);var cSectionCapOutlineColor=new eDwTypes_21.HC.Color(255,0,0);return eDwXSectionMgr});define("eDwXSectionOperator",["require","exports","eDwTypes","eDwOperatorBaseDeps","eDwCommandMgr","eDwMoveSectionPlaneCmd"],function(require,exports,eDwTypes_22,eDwOperatorBaseDeps_4,eDwCommandMgr,eDwMoveSectionPlaneCmd){"use strict";var eDwXSectionOperator=function(_super){__extends(eDwXSectionOperator,_super);function eDwXSectionOperator(iViewer){return _super.call(this,iViewer)||this}eDwXSectionOperator.prototype.onActivate=function(){_super.prototype.onActivate.call(this);this.mViewer.XSectionMgr.activateCurrent()};eDwXSectionOperator.prototype.onDeactivate=function(){this.mViewer.XSectionMgr.deactivateCurrent();_super.prototype.onDeactivate.call(this)};eDwXSectionOperator.prototype.onMouseDown=function(ioMouseEvent){if(!ioMouseEvent||!this.mViewer.XSectionMgr.isCurrentActive()){ioMouseEvent.setHandled(true);return}var selObj=eDwOperatorBaseDeps_4.eDwBaseOperator.getPickResult(ioMouseEvent);if(!selObj||selObj.getNodeId()>=0){ioMouseEvent.setHandled(false);return}_super.prototype.onMouseDown.call(this,ioMouseEvent);var sectionMgr=this.mViewer.XSectionMgr;sectionMgr.disableSectionCapVisibility(true);if(selObj){var typeOfSel=selObj.getSelectionType();selObj=typeOfSel===eDwTypes_22.HC.SelectionType.None?null:selObj}ioMouseEvent.setHandled(true);var selNodeID=selObj.getNodeId();if(selNodeID){console.debugLog("Section","sel obj = "+JSON.stringify(selObj));var sectionMgrHC=this.mViewer.XSectionMgr.HCXSectionMgr;if(sectionMgrHC.getCuttingSectionFromNodeId(selNodeID)){this.mSectionDragPt=this.screenToWorld(ioMouseEvent.getPosition())}}if(this.mMoveSectionCmd)this.mMoveSectionCmd.cancel();this.mMoveSectionCmd=new eDwMoveSectionPlaneCmd(this.mViewer)};eDwXSectionOperator.prototype.onMouseMove=function(ioMouseEvent){ioMouseEvent.setHandled(false);var crossSectionMgr=this.mViewer.XSectionMgr;if(!crossSectionMgr.isCurrentActive()){return}if(this.mCurrInputInfo&&this.mSectionDragPt){var coords=ioMouseEvent.getPosition();var current=this.screenToWorld(coords);var delta=eDwTypes_22.HC.Point3.subtract(current,this.mSectionDragPt);this.mViewer.XSectionMgr.moveCurrentAlongNormal(delta);this.mSectionDragPt=current;ioMouseEvent.setHandled(true)}};eDwXSectionOperator.prototype.onMouseUp=function(ioMouseEvent){_super.prototype.onMouseUp.call(this,ioMouseEvent);this.mViewer.XSectionMgr.disableSectionCapVisibility(false);ioMouseEvent.setHandled(false);this.mSectionDragPt=null;var cmdMgr=eDwCommandMgr.get();cmdMgr.add(this.mMoveSectionCmd);cmdMgr.remove(this.mMoveSectionCmd,"commit");this.mMoveSectionCmd=null};eDwXSectionOperator.prototype.onTouchStart=function(ioTouchEvent){var _this=this;this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_22.HC.MouseInputType.Down,function(ioMouseEvent){_this.onMouseDown(ioMouseEvent)})};eDwXSectionOperator.prototype.onTouchMove=function(ioTouchEvent){var _this=this;this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_22.HC.MouseInputType.Move,function(ioMouseEvent){_this.onMouseMove(ioMouseEvent)})};eDwXSectionOperator.prototype.onTouchEnd=function(ioTouchEvent){var _this=this;this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_22.HC.MouseInputType.Up,function(ioMouseEvent){_this.onMouseUp(ioMouseEvent)})};eDwXSectionOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_22.HC.EventType.MouseDown||iEventType===eDwTypes_22.HC.EventType.TouchStart};eDwXSectionOperator.prototype.screenToWorld=function(iScrPt){var view=this.mViewer.getHCView();var normScrPt=view.pointToWindowPosition(iScrPt);var input=new Communicator.Point3(normScrPt.x,normScrPt.y,0);var projMatrix=view.getProjectionMatrix();projMatrix.m[15]=1;var invMat=Communicator.Matrix.inverse(projMatrix).transpose();var worldPt=new Communicator.Point3(0,0,0);var div=input.x*invMat.m[3]+input.y*invMat.m[7]+input.z*invMat.m[11]+invMat.m[15];worldPt.x=(input.x*invMat.m[0]+input.y*invMat.m[1]+input.z*invMat.m[2]+invMat.m[3])/div;worldPt.y=(input.x*invMat.m[4]+input.y*invMat.m[5]+input.z*invMat.m[6]+invMat.m[7])/div;worldPt.z=(input.x*invMat.m[8]+input.y*invMat.m[9]+input.z*invMat.m[10]+invMat.m[11])/div;return worldPt};return eDwXSectionOperator}(eDwOperatorBaseDeps_4.eDwBaseOperator);return eDwXSectionOperator});define("eDwZoomToFitCmd",["require","exports","eDwSupportsHistoryCmd"],function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwZoomToFitCmd=function(_super){__extends(eDwZoomToFitCmd,_super);function eDwZoomToFitCmd(iViewer,iNodeID,iCamera){var _this=_super.call(this,iViewer)||this;_this.mInitialCamera=iCamera.copy();_this.mFinalCamera=iCamera.copy();_this.mNodeHCID=iNodeID;return _this}eDwZoomToFitCmd.prototype.undo=function(){if(!_super.prototype.undo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return true};eDwZoomToFitCmd.prototype.redo=function(){if(!_super.prototype.redo.call(this))return false;this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return true};eDwZoomToFitCmd.prototype.commit=function(){_super.prototype.commit.call(this);this.mViewer.ViewMgr.fitScreenToNodes([this.mNodeHCID],this.mFinalCamera)};Object.defineProperty(eDwZoomToFitCmd.prototype,"Aggregable",{get:function(){return true},enumerable:true,configurable:true});return eDwZoomToFitCmd}(eDwSupportsHistoryCmd);return eDwZoomToFitCmd});requirejs.config({baseUrl:"./js/3rdParty",paths:{jquery:"jquery.min","jquery-ui":"jquery-ui.min","jquery.fullscreen":"jquery.fullscreen.min","jquery.iframe-transport":"jquery.iframe-transport","jquery.fileupload":"jquery.fileupload","solidworks.web":"solidworks.web"},map:{"jquery.fileupload":{"jquery-ui/ui/widget":"jquery-ui"}},shim:{eDrawingsBase:{deps:["jquery"]},"jquery-ui":{deps:["jquery"]},"jquery.fullscreen":{deps:["jquery"]},"jquery.iframe-transport":{deps:["jquery"]},"jquery-ajax-native":{deps:["jquery"]}}});requirejs(["eDrawingsWebViewer"],function(eDwWebViewer){console.excludeDebugLogCategories=["UIEvents","BaseSelOp","Operator"];eDwWebViewer.start()});define("utils",["require","exports"],function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});function forAll(iFunc,iDictionary){if(!iDictionary)return;Object.keys(iDictionary).forEach(function(iKeyString){var key=parseInt(iKeyString,10);iFunc(key,iDictionary[key])})}exports.forAll=forAll;function getUint8Array(iBase64EncodedString){var binString=window.atob(iBase64EncodedString);var len=binString.length;var bytes=new Uint8Array(len);for(var i=0;i<len;i++){bytes[i]=binString.charCodeAt(i)}return bytes}exports.getUint8Array=getUint8Array;function applyMixins(iDerivedConstructor,iBaseConstructors){for(var _i=0,iBaseConstructors_1=iBaseConstructors;_i<iBaseConstructors_1.length;_i++){var baseConstructor=iBaseConstructors_1[_i];var baseProps=Object.getOwnPropertyNames(baseConstructor.prototype);for(var _a=0,baseProps_1=baseProps;_a<baseProps_1.length;_a++){var baseProp=baseProps_1[_a];iDerivedConstructor[baseProp]=baseConstructor.prototype[baseProp]}}}exports.applyMixins=applyMixins;function getObjectTypeName(iObj){if(!iObj)return"";return iObj.constructor.toString().split(" ")[1].split("(")[0]}exports.getObjectTypeName=getObjectTypeName;function isOfType(iArg,iDiscriminator){return iArg&&typeof iArg==="object"?iDiscriminator in iArg:false}exports.isOfType=isOfType;function appendToArray(iElemForArray,ioArray){if(!iElemForArray||!ioArray)return;if(iElemForArray instanceof Promise){ioArray.push(iElemForArray.catch(function(iExcp){return iExcp}))}else{ioArray.push(iElemForArray)}}exports.appendToArray=appendToArray;function isNaN(iInput){return!isNumber(iInput)}exports.isNaN=isNaN;var cOrigNaN=window.isNaN;window.isNaN=isNaN;function isNumber(iInput){return typeof iInput==="number"&&(iInput===0||!cOrigNaN(iInput))?true:false}exports.isNumber=isNumber;function isEqual(iFirstObj,iSecondObj){if(iFirstObj===iSecondObj)return true;if(!iFirstObj||!iSecondObj)return false;var numKeys=Object.keys(iFirstObj).length;var matchKeys=0;for(var key in iFirstObj){if(iFirstObj[key]===iSecondObj[key])++matchKeys}return numKeys===matchKeys?true:false}exports.isEqual=isEqual;function getFileExtension(iFileName){if(!iFileName)return"";var pos=iFileName.lastIndexOf(".");return pos===-1?"":iFileName.substr(pos+1).toLowerCase()}exports.getFileExtension=getFileExtension;function deepCopyArray(iArray){return JSON.parse(JSON.stringify(iArray))}exports.deepCopyArray=deepCopyArray;var ReversibleStringEnum=function(){function ReversibleStringEnum(iReversibleMapData){this.mMapping=iReversibleMapData;this.mReverseMapping={};for(var key in iReversibleMapData){this.mReverseMapping[iReversibleMapData[key]]=key}}ReversibleStringEnum.prototype.getValue=function(iKey){var value=this.mMapping[iKey];return value?value:this.mReverseMapping[iKey]};return ReversibleStringEnum}();exports.ReversibleStringEnum=ReversibleStringEnum});
// Copyright 2018-2019 Dassault Systemes SolidWorks Corporation. All rights reserved.
</script>
</body>
</html>